diff options
author | Alexander Barkov <bar@mariadb.com> | 2023-04-26 13:10:57 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.com> | 2023-04-26 13:10:57 +0400 |
commit | b0ecf4693dae307bbe700f340c8565a96c14715b (patch) | |
tree | c8db0d87a1e9793c27f48d622c52a2a30bf55a29 | |
parent | d6c8696724c3a803d85f0b4738237bbce8e90f64 (diff) | |
parent | c21745dbe4b8e1489b1f2f27de094df04143830a (diff) | |
download | mariadb-git-b0ecf4693dae307bbe700f340c8565a96c14715b.tar.gz |
Merge remote-tracking branch 'origin/10.10' into 10.11
41 files changed, 15978 insertions, 5534 deletions
diff --git a/THIRDPARTY b/THIRDPARTY index 35bb238ed1e..87f9bb7a3b5 100644 --- a/THIRDPARTY +++ b/THIRDPARTY @@ -930,180 +930,202 @@ archived older versions of code and data; there is also a smaller HTTP mirror. *************************************************************************** %%The following software may be included in this product: -UnicodeData.txt - -Use of any of this software is governed by the terms of the license below: - -Unicode Terms of Use - - For the general privacy policy governing access to this site, see the - Unicode Privacy Policy. For trademark usage, see the Unicode - Consortium (R) Trademarks and Logo Policy. - Notice to End User: Terms of Use - Carefully read the following legal agreement ("Agreement"). Use or - copying of the software and/or codes provided with this agreement (The - "Software") constitutes your acceptance of these terms - - 1. Unicode Copyright. - 1. Copyright (c) 1991-2008 Unicode, Inc. All rights reserved. - 2. Certain documents and files on this website contain a - legend indicating that "Modification is permitted." Any person - is hereby authorized, without fee, to modify such documents - and files to create derivative works conforming to the - Unicode (R) Standard, subject to Terms and Conditions herein. - 3. Any person is hereby authorized, without fee, to view, use, - reproduce, and distribute all documents and files solely for - informational purposes in the creation of products supporting - the Unicode Standard, subject to the Terms and Conditions - herein. - 4. Further specifications of rights and restrictions - pertaining to the use of the particular set of data files - known as the "Unicode Character Database" can be found in - Exhibit 1. - 5. Each version of the Unicode Standard has further - specifications of rights and restrictions of use. For the book - editions, these are found on the back of the title page. For - the online edition, certain files (such as the PDF files for - book chapters and code charts) carry specific restrictions. - All other files are covered under these general Terms of Use. - To request a permission to reproduce any part of the Unicode - Standard, please contact the Unicode Consortium. - 6. No license is granted to "mirror" the Unicode website where - a fee is charged for access to the "mirror" site. - 7. Modification is not permitted with respect to this - document. All copies of this document must be verbatim. - 2. Restricted Rights Legend. Any technical data or software which is - licensed to the United States of America, its agencies and/or - instrumentalities under this Agreement is commercial technical data - or commercial computer software developed exclusively at private - expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995), - as applicable. For technical data, use, duplication, or disclosure - by the Government is subject to restrictions as set forth in DFARS - 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and - this Agreement. For Software, in accordance with FAR 12-212 or DFARS - 227-7202, as applicable, use, duplication or disclosure by the - Government is subject to the restrictions set forth in this - Agreement. - 3. Warranties and Disclaimers. - 1. This publication and/or website may include technical or - typographical errors or other inaccuracies . Changes are - periodically added to the information herein; these changes - will be incorporated in new editions of the publication and/or - website. Unicode may make improvements and/or changes in the - product(s) and/or program(s) described in this publication - and/or website at any time. - 2. If this file has been purchased on magnetic or optical - media from Unicode, Inc. the sole and exclusive remedy for any - claim will be exchange of the defective media within ninety - (90) days of original purchase. - 3. EXCEPT AS PROVIDED IN SECTION C.2, THIS PUBLICATION AND/OR - SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND - EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT - LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A - PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE AND ITS - LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN - THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE - REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE - WEBSITE. - 4. Waiver of Damages. In no event shall Unicode or its licensors be - liable for any special, incidental, indirect or consequential - damages of any kind, or any damages whatsoever, whether or not - Unicode was advised of the possibility of the damage, including, - without limitation, those resulting from the following: loss of use, - data or profits, in connection with the use, modification or - distribution of this information or its derivatives. - 5. Trademarks. - 1. Unicode and the Unicode logo are registered trademarks of - Unicode, Inc. - 2. This site contains product names and corporate names of - other companies. All product names and company names and logos - mentioned herein are the trademarks or registered trademarks - of their respective owners. Other products and corporate names - mentioned herein which are trademarks of a third party are - used only for explanation and for the owners' benefit and with - no intent to infringe. - 3. Use of third party products or information referred to - herein is at the user's risk. - 6. Miscellaneous. - 1. Jurisdiction and Venue. This server is operated from a - location in the State of California, United States of America. - Unicode makes no representation that the materials are - appropriate for use in other locations. If you access this - server from other locations, you are responsible for - compliance with local laws. This Agreement, all use of this - site and any claims and damages resulting from use of this - site are governed solely by the laws of the State of - California without regard to any principles which would apply - the laws of a different jurisdiction. The user agrees that any - disputes regarding this site shall be resolved solely in the - courts located in Santa Clara County, California. The user - agrees said courts have personal jurisdiction and agree to - waive any right to transfer the dispute to any other forum. - 2. Modification by Unicode Unicode shall have the right to - modify this Agreement at any time by posting it to this site. - The user may not assign any part of this Agreement without - Unicode's prior written consent. - 3. Taxes. The user agrees to pay any taxes arising from access - to this website or use of the information herein, except for - those based on Unicode's net income. - 4. Severability. If any provision of this Agreement is - declared invalid or unenforceable, the remaining provisions of - this Agreement shall remain in effect. - 5. Entire Agreement. This Agreement constitutes the entire - agreement between the parties. +http://www.unicode.org/copyright.html + + Unicode® Copyright and Terms of Use + + For the general privacy policy governing access to this site, see the Unicode Privacy Policy. + + Unicode Copyright + Copyright © 1991-2023 Unicode, Inc. All rights reserved. + Definitions + + Unicode Data Files ("DATA FILES") include all data files under the directories: + https://www.unicode.org/Public/ + https://www.unicode.org/reports/ + https://www.unicode.org/ivd/data/ + + Unicode Data Files do not include PDF online code charts under the directory: + https://www.unicode.org/Public/ + + Unicode Software ("SOFTWARE") includes any source code published in the Unicode Standard + or any source code or compiled code under the directories: + https://www.unicode.org/Public/PROGRAMS/ + https://www.unicode.org/Public/cldr/ + http://site.icu-project.org/download/ + + Terms of Use + Certain documents and files on this website contain a legend + indicating that "Modification is permitted." Any person is hereby + authorized, without fee, to modify such documents and files to + create derivative works conforming to the Unicode® Standard, subject + to Terms and Conditions herein. + + Any person is hereby authorized, without fee, to view, use, + reproduce, and distribute all documents and files, subject to the + Terms and Conditions herein. + + Further specifications of rights and restrictions pertaining to the + use of the Unicode DATA FILES and SOFTWARE can be found in the + Unicode Data Files and Software License. + + Each version of the Unicode Standard has further specifications of + rights and restrictions of use. For the book editions (Unicode 5.0 + and earlier), these are found on the back of the title page. + + The Unicode PDF online code charts carry specific restrictions. + Those restrictions are incorporated as the first page of each PDF + code chart. + + All other files, including online documentation of the core + specification for Unicode 6.0 and later, are covered under these + general Terms of Use. + + No license is granted to "mirror" the Unicode website where a fee is + charged for access to the "mirror" site. + + Modification is not permitted with respect to this document. All + copies of this document must be verbatim. + + Restricted Rights Legend + + Any technical data or software which is licensed to the United + States of America, its agencies and/or instrumentalities under this + Agreement is commercial technical data or commercial computer + software developed exclusively at private expense as defined in FAR + 2.101, or DFARS 252.227-7014 (June 1995), as applicable. For + technical data, use, duplication, or disclosure by the Government is + subject to restrictions as set forth in DFARS 202.227-7015 Technical + Data, Commercial and Items (Nov 1995) and this Agreement. For + Software, in accordance with FAR 12-212 or DFARS 227-7202, as + applicable, use, duplication or disclosure by the Government is + subject to the restrictions set forth in this Agreement. + + Warranties and Disclaimers + This publication and/or website may include technical or + typographical errors or other inaccuracies. Changes are periodically + added to the information herein; these changes will be incorporated + in new editions of the publication and/or website. Unicode, Inc. may + make improvements and/or changes in the product(s) and/or program(s) + described in this publication and/or website at any time. + + If this file has been purchased on magnetic or optical media from + Unicode, Inc. the sole and exclusive remedy for any claim will be + exchange of the defective media within ninety (90) days of original + purchase. + + EXCEPT AS PROVIDED IN SECTION E.2, THIS PUBLICATION AND/OR SOFTWARE + IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, + IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR + NON-INFRINGEMENT. UNICODE, INC. AND ITS LICENSORS ASSUME NO + RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS PUBLICATION AND/OR + SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED TO + THIS PUBLICATION OR THE UNICODE WEBSITE. + + Waiver of Damages + In no event shall Unicode, Inc. or its licensors be liable for any + special, incidental, indirect or consequential damages of any kind, + or any damages whatsoever, whether or not Unicode, Inc. was advised + of the possibility of the damage, including, without limitation, + those resulting from the following: loss of use, data or profits, in + connection with the use, modification or distribution of this + information or its derivatives. + + Trademarks & Logos + The Unicode Word Mark and the Unicode Logo are trademarks of + Unicode, Inc. “The Unicode Consortium” and “Unicode, Inc.” are trade + names of Unicode, Inc. Use of the information and materials found on + this website indicates your acknowledgement of Unicode, Inc.’s + exclusive worldwide rights in the Unicode Word Mark, the Unicode + Logo, and the Unicode trade names. + + The Unicode Consortium Name and Trademark Usage Policy (“Trademark + Policy”) are incorporated herein by reference and you agree to abide + by the provisions of the Trademark Policy, which may be changed from + time to time in the sole discretion of Unicode, Inc. + + All third party trademarks referenced herein are the property of + their respective owners. + + Miscellaneous + Jurisdiction and Venue. This website is operated from a location in + the State of California, United States of America. Unicode, Inc. + makes no representation that the materials are appropriate for use + in other locations. If you access this website from other locations, + you are responsible for compliance with local laws. This Agreement, + all use of this website and any claims and damages resulting from + use of this website are governed solely by the laws of the State of + California without regard to any principles which would apply the + laws of a different jurisdiction. The user agrees that any disputes + regarding this website shall be resolved solely in the courts + located in Santa Clara County, California. The user agrees said + courts have personal jurisdiction and agree to waive any right to + transfer the dispute to any other forum. + + Modification by Unicode, Inc. Unicode, Inc. shall have the right to + modify this Agreement at any time by posting it to this website. The + user may not assign any part of this Agreement without Unicode, + Inc.’s prior written consent. + + Taxes. The user agrees to pay any taxes arising from access to this + website or use of the information herein, except for those based on + Unicode’s net income. + + Severability. If any provision of this Agreement is declared + invalid or unenforceable, the remaining provisions of this Agreement + shall remain in effect. + + Entire Agreement. This Agreement constitutes the entire agreement + between the parties. EXHIBIT 1 UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE - Unicode Data Files include all data files under the directories -http://www.unicode.org/Public/, http://www.unicode.org/reports/, and -http://www.unicode.org/cldr/data/ . Unicode Software includes any source code -published in the Unicode Standard or under the directories -http://www.unicode.org/Public/, http://www.unicode.org/reports/, and -http://www.unicode.org/cldr/data/. - - NOTICE TO USER: Carefully read the following legal agreement. BY -DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES -("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND -AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU -DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES -OR SOFTWARE. - - COPYRIGHT AND PERMISSION NOTICE - - Copyright (c) 1991-2008 Unicode, Inc. All rights reserved. Distributed under -the Terms of Use in http://www.unicode.org/copyright.html. - - Permission is hereby granted, free of charge, to any person obtaining a copy -of the Unicode data files and any associated documentation (the "Data Files") or -Unicode software and any associated documentation (the "Software") to deal in -the Data Files or Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, and/or sell copies of -the Data Files or Software, and to permit persons to whom the Data Files or -Software are furnished to do so, provided that (a) the above copyright notice(s) -and this permission notice appear with all copies of the Data Files or Software, -(b) both the above copyright notice(s) and this permission notice appear in -associated documentation, and (c) there is clear notice in each modified Data -File or in the Software as well as in the documentation associated with the Data -File(s) or Software that the data or software has been modified. - - THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD -PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +See Terms of Use <https://www.unicode.org/copyright.html> +for definitions of Unicode Inc.’s Data Files and Software. + +NOTICE TO USER: Carefully read the following legal agreement. +BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S +DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), +YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE +TERMS AND CONDITIONS OF THIS AGREEMENT. +IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE +THE DATA FILES OR SOFTWARE. + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2023 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL -DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, -WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING -OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. - - Except as contained in this notice, the name of a copyright holder shall not -be used in advertising or otherwise to promote the sale, use or other dealings -in these Data Files or Software without prior written authorization of the -copyright holder. - - Unicode and the Unicode logo are trademarks of Unicode, Inc., and may be -registered in some jurisdictions. All other trademarks and registered trademarks -mentioned herein are the property of their respective owners. +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. *************************************************************************** diff --git a/include/m_ctype.h b/include/m_ctype.h index 2f1767433ad..6812445c6d5 100644 --- a/include/m_ctype.h +++ b/include/m_ctype.h @@ -79,7 +79,6 @@ extern "C" { typedef const struct my_charset_handler_st MY_CHARSET_HANDLER; typedef const struct my_collation_handler_st MY_COLLATION_HANDLER; -typedef const struct unicase_info_st MY_UNICASE_INFO; typedef const struct casefold_info_st MY_CASEFOLD_INFO; typedef const struct uni_ctype_st MY_UNI_CTYPE; typedef const struct my_uni_idx_st MY_UNI_IDX; @@ -97,29 +96,10 @@ struct casefold_info_st { my_wc_t maxchar; const MY_CASEFOLD_CHARACTER * const *page; + const uint16 * const *simple_weight; /* For general_ci-alike collations */ }; -typedef struct unicase_info_char_st -{ - uint32 toupper; - uint32 tolower; - uint32 sort; -} MY_UNICASE_CHARACTER; - - -struct unicase_info_st -{ - my_wc_t maxchar; - MY_UNICASE_CHARACTER **page; -}; - - -extern MY_UNICASE_INFO my_unicase_default; -extern MY_UNICASE_INFO my_unicase_turkish; -extern MY_UNICASE_INFO my_unicase_mysql500; -extern MY_UNICASE_INFO my_unicase_unicode520; - #define MY_UCA_MAX_CONTRACTION 6 /* The DUCET tables in ctype-uca.c are dumped with a limit of 8 weights @@ -795,7 +775,6 @@ struct charset_info_st const uint16 *tab_to_uni; MY_UNI_IDX *tab_from_uni; MY_CASEFOLD_INFO *casefold; - MY_UNICASE_INFO *caseinfo; const uchar *state_map; const uchar *ident_map; uint strxfrm_multiply; @@ -1691,7 +1670,7 @@ int my_wildcmp_unicode(CHARSET_INFO *cs, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many, - MY_UNICASE_INFO *weights); + MY_CASEFOLD_INFO *weights); extern my_bool my_parse_charset_xml(MY_CHARSET_LOADER *loader, const char *buf, size_t buflen); diff --git a/mysql-test/include/ctype_casefolding.inc b/mysql-test/include/ctype_casefolding.inc index 74b2ab7650a..fc77b396f68 100644 --- a/mysql-test/include/ctype_casefolding.inc +++ b/mysql-test/include/ctype_casefolding.inc @@ -21,6 +21,12 @@ INSERT INTO case_folding (code) VALUES (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; + UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; DROP TABLE case_folding; diff --git a/mysql-test/include/ctype_casefolding_supplementary.inc b/mysql-test/include/ctype_casefolding_supplementary.inc new file mode 100644 index 00000000000..7646ab5682e --- /dev/null +++ b/mysql-test/include/ctype_casefolding_supplementary.inc @@ -0,0 +1,16 @@ +CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c, SPACE(64) AS comment LIMIT 0; +SHOW CREATE TABLE case_folding; + +INSERT INTO case_folding (code, comment) VALUES (0x10595, 'VITHKUQI CAPITAL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x105BC, 'VITHKUQI SMALL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E921, 'ADLAM CAPITAL LETTER SHA (Unicode-9.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E943, 'ADLAM SMALL LETTER SHA (Unicode-9.0)'); + +UPDATE case_folding SET c=CHAR(code USING utf32); +SELECT + HEX(CONVERT(c USING utf32)) AS ch, + HEX(CONVERT(LOWER(c) USING utf32)) AS cl, + HEX(CONVERT(UPPER(c) USING utf32)) AS cu, + comment +FROM case_folding ORDER BY BINARY(c); +DROP TABLE case_folding; diff --git a/mysql-test/main/ctype_ldml.result b/mysql-test/main/ctype_ldml.result index a23e835d1fa..31508fcd1b1 100644 --- a/mysql-test/main/ctype_ldml.result +++ b/mysql-test/main/ctype_ldml.result @@ -3074,6 +3074,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -3091,6 +3096,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; # # End of 10.3 tests @@ -3267,6 +3276,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -3284,6 +3298,39 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B19F E2B0AF Ⱟ +2C5F E2B19F E2B0AF ⱟ +A7C0 EA9F81 EA9F80 Ꟁ +A7C1 EA9F81 EA9F80 ꟁ +DROP TABLE case_folding; +# +# MDEV-30577 Case folding for uca1400 collations is not up to date +# +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_test01_as_ci; +CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c, SPACE(64) AS comment LIMIT 0; +SHOW CREATE TABLE case_folding; +Table Create Table +case_folding CREATE TABLE `case_folding` ( + `code` int(1) NOT NULL, + `c` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_test01_as_ci DEFAULT NULL, + `comment` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_test01_as_ci DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci +INSERT INTO case_folding (code, comment) VALUES (0x10595, 'VITHKUQI CAPITAL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x105BC, 'VITHKUQI SMALL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E921, 'ADLAM CAPITAL LETTER SHA (Unicode-9.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E943, 'ADLAM SMALL LETTER SHA (Unicode-9.0)'); +UPDATE case_folding SET c=CHAR(code USING utf32); +SELECT +HEX(CONVERT(c USING utf32)) AS ch, +HEX(CONVERT(LOWER(c) USING utf32)) AS cl, +HEX(CONVERT(UPPER(c) USING utf32)) AS cu, +comment +FROM case_folding ORDER BY BINARY(c); +ch cl cu comment +00010595 000105BC 00010595 VITHKUQI CAPITAL LETTER ZE (Unicode-14.0) +000105BC 000105BC 00010595 VITHKUQI SMALL LETTER ZE (Unicode-14.0) +0001E921 0001E943 0001E921 ADLAM CAPITAL LETTER SHA (Unicode-9.0) +0001E943 0001E943 0001E921 ADLAM SMALL LETTER SHA (Unicode-9.0) DROP TABLE case_folding; # # End of 10.10 tests diff --git a/mysql-test/main/ctype_ldml.test b/mysql-test/main/ctype_ldml.test index 6336a1d0f5f..9189630e5a3 100644 --- a/mysql-test/main/ctype_ldml.test +++ b/mysql-test/main/ctype_ldml.test @@ -705,5 +705,12 @@ SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_test01_as_ci; --source include/ctype_casefolding.inc --echo # +--echo # MDEV-30577 Case folding for uca1400 collations is not up to date +--echo # + +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_test01_as_ci; +--source include/ctype_casefolding_supplementary.inc + +--echo # --echo # End of 10.10 tests --echo # diff --git a/mysql-test/main/ctype_utf8_uca.result b/mysql-test/main/ctype_utf8_uca.result index bacdd81cbd9..97bdadbb97b 100644 --- a/mysql-test/main/ctype_utf8_uca.result +++ b/mysql-test/main/ctype_utf8_uca.result @@ -618,6 +618,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -635,6 +640,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb3 COLLATE utf8mb3_turkish_ci /*Unicode-4.0 folding, with Turkish mapping for I */; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -661,6 +670,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -678,6 +692,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 C4B0 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb3 COLLATE utf8mb3_unicode_520_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -704,6 +722,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -721,6 +744,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb3 COLLATE utf8mb3_unicode_520_nopad_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -747,6 +774,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -764,6 +796,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb3 COLLATE utf8mb3_myanmar_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -790,6 +826,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -807,6 +848,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb3 COLLATE utf8mb3_thai_520_w2; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -833,6 +878,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -850,6 +900,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; # # End of 10.3 tests @@ -1805,6 +1859,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -1822,6 +1881,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B19F E2B0AF Ⱟ +2C5F E2B19F E2B0AF ⱟ +A7C0 EA9F81 EA9F80 Ꟁ +A7C1 EA9F81 EA9F80 ꟁ DROP TABLE case_folding; # # End of 10.10 tests diff --git a/mysql-test/main/ctype_utf8mb4_uca.result b/mysql-test/main/ctype_utf8mb4_uca.result index 42de45c98a3..3cd25891119 100644 --- a/mysql-test/main/ctype_utf8mb4_uca.result +++ b/mysql-test/main/ctype_utf8mb4_uca.result @@ -6636,6 +6636,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6653,6 +6658,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb4 COLLATE utf8mb4_turkish_ci /*Unicode-4.0 folding with Turkish mapping for I */; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -6679,6 +6688,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6696,6 +6710,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 C4B0 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb4 COLLATE utf8mb4_unicode_520_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -6722,6 +6740,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6739,6 +6762,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb4 COLLATE utf8mb4_unicode_520_nopad_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -6765,6 +6792,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6782,6 +6814,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb4 COLLATE utf8mb4_myanmar_ci; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -6808,6 +6844,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6825,6 +6866,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; SET NAMES utf8mb4 COLLATE utf8mb4_thai_520_w2; CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; @@ -6851,6 +6896,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -6868,6 +6918,10 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B0AF E2B0AF Ⱟ +2C5F E2B19F E2B19F ⱟ +A7C0 EA9F80 EA9F80 Ꟁ +A7C1 EA9F81 EA9F81 ꟁ DROP TABLE case_folding; # # End of 10.3 tests @@ -11499,6 +11553,11 @@ INSERT INTO case_folding (code) VALUES (0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, (0x0131) /* LATIN SMALL LETTER DOTLESS I */ ; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; UPDATE case_folding SET c=CHAR(code USING ucs2); SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c @@ -11516,6 +11575,112 @@ HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c 69 69 49 i 130 69 C4B0 İ 131 C4B1 49 ı +2C2F E2B19F E2B0AF Ⱟ +2C5F E2B19F E2B0AF ⱟ +A7C0 EA9F81 EA9F80 Ꟁ +A7C1 EA9F81 EA9F80 ꟁ +DROP TABLE case_folding; +CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c, SPACE(64) AS comment LIMIT 0; +SHOW CREATE TABLE case_folding; +Table Create Table +case_folding CREATE TABLE `case_folding` ( + `code` int(1) NOT NULL, + `c` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci DEFAULT NULL, + `comment` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci +INSERT INTO case_folding (code, comment) VALUES (0x10595, 'VITHKUQI CAPITAL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x105BC, 'VITHKUQI SMALL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E921, 'ADLAM CAPITAL LETTER SHA (Unicode-9.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E943, 'ADLAM SMALL LETTER SHA (Unicode-9.0)'); +UPDATE case_folding SET c=CHAR(code USING utf32); +SELECT +HEX(CONVERT(c USING utf32)) AS ch, +HEX(CONVERT(LOWER(c) USING utf32)) AS cl, +HEX(CONVERT(UPPER(c) USING utf32)) AS cu, +comment +FROM case_folding ORDER BY BINARY(c); +ch cl cu comment +00010595 000105BC 00010595 VITHKUQI CAPITAL LETTER ZE (Unicode-14.0) +000105BC 000105BC 00010595 VITHKUQI SMALL LETTER ZE (Unicode-14.0) +0001E921 0001E943 0001E921 ADLAM CAPITAL LETTER SHA (Unicode-9.0) +0001E943 0001E943 0001E921 ADLAM SMALL LETTER SHA (Unicode-9.0) +DROP TABLE case_folding; +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_turkish_ai_ci; +CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c LIMIT 0; +SHOW CREATE TABLE case_folding; +Table Create Table +case_folding CREATE TABLE `case_folding` ( + `code` int(1) NOT NULL, + `c` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_turkish_ai_ci DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci +INSERT INTO case_folding (code) VALUES +(0x23A), +(0x23E), +(0x23F), +(0x240), +(0x250), +(0x251), +(0x252), +(0x26B), +(0x271), +(0x27D); +INSERT INTO case_folding (code) VALUES +(0x0049) /* LATIN CAPITAL LETTER I */, +(0x0069) /* LATIN SMALL LETTER I */, +(0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */, +(0x0131) /* LATIN SMALL LETTER DOTLESS I */ +; +INSERT INTO case_folding (code) VALUES +(0x2C2F) /* GLAGOLITIC CAPITAL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0x2C5F) /* GLAGOLITIC SMALL LETTER CAUDATE CHRIVI (Unicode-14.0) */, +(0xA7C0) /* LATIN CAPITAL LETTER OLD POLISH O (Unicode-14.0) */, +(0xA7C1) /* LATIN SMALL LETTER OLD POLISH O (Unicode-14.0) */; +UPDATE case_folding SET c=CHAR(code USING ucs2); +SELECT HEX(code), HEX(LOWER(c)), HEX(UPPER(c)), c FROM case_folding; +HEX(code) HEX(LOWER(c)) HEX(UPPER(c)) c +23A E2B1A5 C8BA Ⱥ +23E E2B1A6 C8BE Ⱦ +23F C8BF E2B1BE ȿ +240 C980 E2B1BF ɀ +250 C990 E2B1AF ɐ +251 C991 E2B1AD ɑ +252 C992 E2B1B0 ɒ +26B C9AB E2B1A2 ɫ +271 C9B1 E2B1AE ɱ +27D C9BD E2B1A4 ɽ +49 C4B1 49 I +69 69 C4B0 i +130 69 C4B0 İ +131 C4B1 49 ı +2C2F E2B19F E2B0AF Ⱟ +2C5F E2B19F E2B0AF ⱟ +A7C0 EA9F81 EA9F80 Ꟁ +A7C1 EA9F81 EA9F80 ꟁ +DROP TABLE case_folding; +CREATE OR REPLACE TABLE case_folding AS SELECT 0 AS code, SPACE(32) AS c, SPACE(64) AS comment LIMIT 0; +SHOW CREATE TABLE case_folding; +Table Create Table +case_folding CREATE TABLE `case_folding` ( + `code` int(1) NOT NULL, + `c` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_turkish_ai_ci DEFAULT NULL, + `comment` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_turkish_ai_ci DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci +INSERT INTO case_folding (code, comment) VALUES (0x10595, 'VITHKUQI CAPITAL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x105BC, 'VITHKUQI SMALL LETTER ZE (Unicode-14.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E921, 'ADLAM CAPITAL LETTER SHA (Unicode-9.0)'); +INSERT INTO case_folding (code, comment) VALUES (0x1E943, 'ADLAM SMALL LETTER SHA (Unicode-9.0)'); +UPDATE case_folding SET c=CHAR(code USING utf32); +SELECT +HEX(CONVERT(c USING utf32)) AS ch, +HEX(CONVERT(LOWER(c) USING utf32)) AS cl, +HEX(CONVERT(UPPER(c) USING utf32)) AS cu, +comment +FROM case_folding ORDER BY BINARY(c); +ch cl cu comment +00010595 000105BC 00010595 VITHKUQI CAPITAL LETTER ZE (Unicode-14.0) +000105BC 000105BC 00010595 VITHKUQI SMALL LETTER ZE (Unicode-14.0) +0001E921 0001E943 0001E921 ADLAM CAPITAL LETTER SHA (Unicode-9.0) +0001E943 0001E943 0001E921 ADLAM SMALL LETTER SHA (Unicode-9.0) DROP TABLE case_folding; # # End of 10.10 tests diff --git a/mysql-test/main/ctype_utf8mb4_uca.test b/mysql-test/main/ctype_utf8mb4_uca.test index 3f428447cc9..1b709ebba69 100644 --- a/mysql-test/main/ctype_utf8mb4_uca.test +++ b/mysql-test/main/ctype_utf8mb4_uca.test @@ -435,6 +435,11 @@ DROP PROCEDURE test_styles; SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_ai_ci; --source include/ctype_casefolding.inc +--source include/ctype_casefolding_supplementary.inc + +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_turkish_ai_ci; +--source include/ctype_casefolding.inc +--source include/ctype_casefolding_supplementary.inc --echo # --echo # End of 10.10 tests diff --git a/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.result b/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.result new file mode 100644 index 00000000000..85e87f217cc --- /dev/null +++ b/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.result @@ -0,0 +1,2927 @@ +# +# Start of 10.10 tests +# +# +# MDEV-30577 Case folding for uca1400 collations is not up to date +# +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_ai_ci; +EXECUTE IMMEDIATE SFORMAT(' +CREATE VIEW v_bmp AS +SELECT + seq AS codepoint, + LPAD(HEX(seq),4,''0'') AS codepoint_hex4, + CONVERT(CHAR(seq USING utf32) USING {}) COLLATE {} AS c +FROM + seq_0_to_65535', @@character_set_connection, @@collation_connection); +SELECT COLLATION(c) FROM v_bmp LIMIT 1; +COLLATION(c) +utf8mb4_uca1400_ai_ci +SELECT +codepoint_hex4, +HEX(CAST(LOWER(c) AS CHAR CHARACTER SET ucs2)), +HEX(CAST(UPPER(c) AS CHAR CHARACTER SET ucs2)) +FROM v_bmp +WHERE BINARY(c)<>BINARY(LOWER(c)) OR BINARY(c)<>BINARY(UPPER(c)); +codepoint_hex4 HEX(CAST(LOWER(c) AS CHAR CHARACTER SET ucs2)) HEX(CAST(UPPER(c) AS CHAR CHARACTER SET ucs2)) +0041 0061 0041 +0042 0062 0042 +0043 0063 0043 +0044 0064 0044 +0045 0065 0045 +0046 0066 0046 +0047 0067 0047 +0048 0068 0048 +0049 0069 0049 +004A 006A 004A +004B 006B 004B +004C 006C 004C +004D 006D 004D +004E 006E 004E +004F 006F 004F +0050 0070 0050 +0051 0071 0051 +0052 0072 0052 +0053 0073 0053 +0054 0074 0054 +0055 0075 0055 +0056 0076 0056 +0057 0077 0057 +0058 0078 0058 +0059 0079 0059 +005A 007A 005A +0061 0061 0041 +0062 0062 0042 +0063 0063 0043 +0064 0064 0044 +0065 0065 0045 +0066 0066 0046 +0067 0067 0047 +0068 0068 0048 +0069 0069 0049 +006A 006A 004A +006B 006B 004B +006C 006C 004C +006D 006D 004D +006E 006E 004E +006F 006F 004F +0070 0070 0050 +0071 0071 0051 +0072 0072 0052 +0073 0073 0053 +0074 0074 0054 +0075 0075 0055 +0076 0076 0056 +0077 0077 0057 +0078 0078 0058 +0079 0079 0059 +007A 007A 005A +00B5 00B5 039C +00C0 00E0 00C0 +00C1 00E1 00C1 +00C2 00E2 00C2 +00C3 00E3 00C3 +00C4 00E4 00C4 +00C5 00E5 00C5 +00C6 00E6 00C6 +00C7 00E7 00C7 +00C8 00E8 00C8 +00C9 00E9 00C9 +00CA 00EA 00CA +00CB 00EB 00CB +00CC 00EC 00CC +00CD 00ED 00CD +00CE 00EE 00CE +00CF 00EF 00CF +00D0 00F0 00D0 +00D1 00F1 00D1 +00D2 00F2 00D2 +00D3 00F3 00D3 +00D4 00F4 00D4 +00D5 00F5 00D5 +00D6 00F6 00D6 +00D8 00F8 00D8 +00D9 00F9 00D9 +00DA 00FA 00DA +00DB 00FB 00DB +00DC 00FC 00DC +00DD 00FD 00DD +00DE 00FE 00DE +00E0 00E0 00C0 +00E1 00E1 00C1 +00E2 00E2 00C2 +00E3 00E3 00C3 +00E4 00E4 00C4 +00E5 00E5 00C5 +00E6 00E6 00C6 +00E7 00E7 00C7 +00E8 00E8 00C8 +00E9 00E9 00C9 +00EA 00EA 00CA +00EB 00EB 00CB +00EC 00EC 00CC +00ED 00ED 00CD +00EE 00EE 00CE +00EF 00EF 00CF +00F0 00F0 00D0 +00F1 00F1 00D1 +00F2 00F2 00D2 +00F3 00F3 00D3 +00F4 00F4 00D4 +00F5 00F5 00D5 +00F6 00F6 00D6 +00F8 00F8 00D8 +00F9 00F9 00D9 +00FA 00FA 00DA +00FB 00FB 00DB +00FC 00FC 00DC +00FD 00FD 00DD +00FE 00FE 00DE +00FF 00FF 0178 +0100 0101 0100 +0101 0101 0100 +0102 0103 0102 +0103 0103 0102 +0104 0105 0104 +0105 0105 0104 +0106 0107 0106 +0107 0107 0106 +0108 0109 0108 +0109 0109 0108 +010A 010B 010A +010B 010B 010A +010C 010D 010C +010D 010D 010C +010E 010F 010E +010F 010F 010E +0110 0111 0110 +0111 0111 0110 +0112 0113 0112 +0113 0113 0112 +0114 0115 0114 +0115 0115 0114 +0116 0117 0116 +0117 0117 0116 +0118 0119 0118 +0119 0119 0118 +011A 011B 011A +011B 011B 011A +011C 011D 011C +011D 011D 011C +011E 011F 011E +011F 011F 011E +0120 0121 0120 +0121 0121 0120 +0122 0123 0122 +0123 0123 0122 +0124 0125 0124 +0125 0125 0124 +0126 0127 0126 +0127 0127 0126 +0128 0129 0128 +0129 0129 0128 +012A 012B 012A +012B 012B 012A +012C 012D 012C +012D 012D 012C +012E 012F 012E +012F 012F 012E +0130 0069 0130 +0131 0131 0049 +0132 0133 0132 +0133 0133 0132 +0134 0135 0134 +0135 0135 0134 +0136 0137 0136 +0137 0137 0136 +0139 013A 0139 +013A 013A 0139 +013B 013C 013B +013C 013C 013B +013D 013E 013D +013E 013E 013D +013F 0140 013F +0140 0140 013F +0141 0142 0141 +0142 0142 0141 +0143 0144 0143 +0144 0144 0143 +0145 0146 0145 +0146 0146 0145 +0147 0148 0147 +0148 0148 0147 +014A 014B 014A +014B 014B 014A +014C 014D 014C +014D 014D 014C +014E 014F 014E +014F 014F 014E +0150 0151 0150 +0151 0151 0150 +0152 0153 0152 +0153 0153 0152 +0154 0155 0154 +0155 0155 0154 +0156 0157 0156 +0157 0157 0156 +0158 0159 0158 +0159 0159 0158 +015A 015B 015A +015B 015B 015A +015C 015D 015C +015D 015D 015C +015E 015F 015E +015F 015F 015E +0160 0161 0160 +0161 0161 0160 +0162 0163 0162 +0163 0163 0162 +0164 0165 0164 +0165 0165 0164 +0166 0167 0166 +0167 0167 0166 +0168 0169 0168 +0169 0169 0168 +016A 016B 016A +016B 016B 016A +016C 016D 016C +016D 016D 016C +016E 016F 016E +016F 016F 016E +0170 0171 0170 +0171 0171 0170 +0172 0173 0172 +0173 0173 0172 +0174 0175 0174 +0175 0175 0174 +0176 0177 0176 +0177 0177 0176 +0178 00FF 0178 +0179 017A 0179 +017A 017A 0179 +017B 017C 017B +017C 017C 017B +017D 017E 017D +017E 017E 017D +017F 017F 0053 +0180 0180 0243 +0181 0253 0181 +0182 0183 0182 +0183 0183 0182 +0184 0185 0184 +0185 0185 0184 +0186 0254 0186 +0187 0188 0187 +0188 0188 0187 +0189 0256 0189 +018A 0257 018A +018B 018C 018B +018C 018C 018B +018E 01DD 018E +018F 0259 018F +0190 025B 0190 +0191 0192 0191 +0192 0192 0191 +0193 0260 0193 +0194 0263 0194 +0195 0195 01F6 +0196 0269 0196 +0197 0268 0197 +0198 0199 0198 +0199 0199 0198 +019A 019A 023D +019C 026F 019C +019D 0272 019D +019E 019E 0220 +019F 0275 019F +01A0 01A1 01A0 +01A1 01A1 01A0 +01A2 01A3 01A2 +01A3 01A3 01A2 +01A4 01A5 01A4 +01A5 01A5 01A4 +01A6 0280 01A6 +01A7 01A8 01A7 +01A8 01A8 01A7 +01A9 0283 01A9 +01AC 01AD 01AC +01AD 01AD 01AC +01AE 0288 01AE +01AF 01B0 01AF +01B0 01B0 01AF +01B1 028A 01B1 +01B2 028B 01B2 +01B3 01B4 01B3 +01B4 01B4 01B3 +01B5 01B6 01B5 +01B6 01B6 01B5 +01B7 0292 01B7 +01B8 01B9 01B8 +01B9 01B9 01B8 +01BC 01BD 01BC +01BD 01BD 01BC +01BF 01BF 01F7 +01C4 01C6 01C4 +01C5 01C6 01C4 +01C6 01C6 01C4 +01C7 01C9 01C7 +01C8 01C9 01C7 +01C9 01C9 01C7 +01CA 01CC 01CA +01CB 01CC 01CA +01CC 01CC 01CA +01CD 01CE 01CD +01CE 01CE 01CD +01CF 01D0 01CF +01D0 01D0 01CF +01D1 01D2 01D1 +01D2 01D2 01D1 +01D3 01D4 01D3 +01D4 01D4 01D3 +01D5 01D6 01D5 +01D6 01D6 01D5 +01D7 01D8 01D7 +01D8 01D8 01D7 +01D9 01DA 01D9 +01DA 01DA 01D9 +01DB 01DC 01DB +01DC 01DC 01DB +01DD 01DD 018E +01DE 01DF 01DE +01DF 01DF 01DE +01E0 01E1 01E0 +01E1 01E1 01E0 +01E2 01E3 01E2 +01E3 01E3 01E2 +01E4 01E5 01E4 +01E5 01E5 01E4 +01E6 01E7 01E6 +01E7 01E7 01E6 +01E8 01E9 01E8 +01E9 01E9 01E8 +01EA 01EB 01EA +01EB 01EB 01EA +01EC 01ED 01EC +01ED 01ED 01EC +01EE 01EF 01EE +01EF 01EF 01EE +01F1 01F3 01F1 +01F2 01F3 01F1 +01F3 01F3 01F1 +01F4 01F5 01F4 +01F5 01F5 01F4 +01F6 0195 01F6 +01F7 01BF 01F7 +01F8 01F9 01F8 +01F9 01F9 01F8 +01FA 01FB 01FA +01FB 01FB 01FA +01FC 01FD 01FC +01FD 01FD 01FC +01FE 01FF 01FE +01FF 01FF 01FE +0200 0201 0200 +0201 0201 0200 +0202 0203 0202 +0203 0203 0202 +0204 0205 0204 +0205 0205 0204 +0206 0207 0206 +0207 0207 0206 +0208 0209 0208 +0209 0209 0208 +020A 020B 020A +020B 020B 020A +020C 020D 020C +020D 020D 020C +020E 020F 020E +020F 020F 020E +0210 0211 0210 +0211 0211 0210 +0212 0213 0212 +0213 0213 0212 +0214 0215 0214 +0215 0215 0214 +0216 0217 0216 +0217 0217 0216 +0218 0219 0218 +0219 0219 0218 +021A 021B 021A +021B 021B 021A +021C 021D 021C +021D 021D 021C +021E 021F 021E +021F 021F 021E +0220 019E 0220 +0222 0223 0222 +0223 0223 0222 +0224 0225 0224 +0225 0225 0224 +0226 0227 0226 +0227 0227 0226 +0228 0229 0228 +0229 0229 0228 +022A 022B 022A +022B 022B 022A +022C 022D 022C +022D 022D 022C +022E 022F 022E +022F 022F 022E +0230 0231 0230 +0231 0231 0230 +0232 0233 0232 +0233 0233 0232 +023A 2C65 023A +023B 023C 023B +023C 023C 023B +023D 019A 023D +023E 2C66 023E +023F 023F 2C7E +0240 0240 2C7F +0241 0242 0241 +0242 0242 0241 +0243 0180 0243 +0244 0289 0244 +0245 028C 0245 +0246 0247 0246 +0247 0247 0246 +0248 0249 0248 +0249 0249 0248 +024A 024B 024A +024B 024B 024A +024C 024D 024C +024D 024D 024C +024E 024F 024E +024F 024F 024E +0250 0250 2C6F +0251 0251 2C6D +0252 0252 2C70 +0253 0253 0181 +0254 0254 0186 +0256 0256 0189 +0257 0257 018A +0259 0259 018F +025B 025B 0190 +025C 025C A7AB +0260 0260 0193 +0261 0261 A7AC +0263 0263 0194 +0265 0265 A78D +0266 0266 A7AA +0268 0268 0197 +0269 0269 0196 +026A 026A A7AE +026B 026B 2C62 +026C 026C A7AD +026F 026F 019C +0271 0271 2C6E +0272 0272 019D +0275 0275 019F +027D 027D 2C64 +0280 0280 01A6 +0282 0282 A7C5 +0283 0283 01A9 +0287 0287 A7B1 +0288 0288 01AE +0289 0289 0244 +028A 028A 01B1 +028B 028B 01B2 +028C 028C 0245 +0292 0292 01B7 +029D 029D A7B2 +029E 029E A7B0 +0345 0345 0399 +0370 0371 0370 +0371 0371 0370 +0372 0373 0372 +0373 0373 0372 +0376 0377 0376 +0377 0377 0376 +037B 037B 03FD +037C 037C 03FE +037D 037D 03FF +037F 03F3 037F +0386 03AC 0386 +0388 03AD 0388 +0389 03AE 0389 +038A 03AF 038A +038C 03CC 038C +038E 03CD 038E +038F 03CE 038F +0391 03B1 0391 +0392 03B2 0392 +0393 03B3 0393 +0394 03B4 0394 +0395 03B5 0395 +0396 03B6 0396 +0397 03B7 0397 +0398 03B8 0398 +0399 03B9 0399 +039A 03BA 039A +039B 03BB 039B +039C 03BC 039C +039D 03BD 039D +039E 03BE 039E +039F 03BF 039F +03A0 03C0 03A0 +03A1 03C1 03A1 +03A3 03C3 03A3 +03A4 03C4 03A4 +03A5 03C5 03A5 +03A6 03C6 03A6 +03A7 03C7 03A7 +03A8 03C8 03A8 +03A9 03C9 03A9 +03AA 03CA 03AA +03AB 03CB 03AB +03AC 03AC 0386 +03AD 03AD 0388 +03AE 03AE 0389 +03AF 03AF 038A +03B1 03B1 0391 +03B2 03B2 0392 +03B3 03B3 0393 +03B4 03B4 0394 +03B5 03B5 0395 +03B6 03B6 0396 +03B7 03B7 0397 +03B8 03B8 0398 +03B9 03B9 0399 +03BA 03BA 039A +03BB 03BB 039B +03BC 03BC 039C +03BD 03BD 039D +03BE 03BE 039E +03BF 03BF 039F +03C0 03C0 03A0 +03C1 03C1 03A1 +03C2 03C2 03A3 +03C3 03C3 03A3 +03C4 03C4 03A4 +03C5 03C5 03A5 +03C6 03C6 03A6 +03C7 03C7 03A7 +03C8 03C8 03A8 +03C9 03C9 03A9 +03CA 03CA 03AA +03CB 03CB 03AB +03CC 03CC 038C +03CD 03CD 038E +03CE 03CE 038F +03CF 03D7 03CF +03D0 03D0 0392 +03D1 03D1 0398 +03D5 03D5 03A6 +03D6 03D6 03A0 +03D7 03D7 03CF +03D8 03D9 03D8 +03D9 03D9 03D8 +03DA 03DB 03DA +03DB 03DB 03DA +03DC 03DD 03DC +03DD 03DD 03DC +03DE 03DF 03DE +03DF 03DF 03DE +03E0 03E1 03E0 +03E1 03E1 03E0 +03E2 03E3 03E2 +03E3 03E3 03E2 +03E4 03E5 03E4 +03E5 03E5 03E4 +03E6 03E7 03E6 +03E7 03E7 03E6 +03E8 03E9 03E8 +03E9 03E9 03E8 +03EA 03EB 03EA +03EB 03EB 03EA +03EC 03ED 03EC +03ED 03ED 03EC +03EE 03EF 03EE +03EF 03EF 03EE +03F0 03F0 039A +03F1 03F1 03A1 +03F2 03F2 03F9 +03F3 03F3 037F +03F4 03B8 03F4 +03F5 03F5 0395 +03F7 03F8 03F7 +03F8 03F8 03F7 +03F9 03F2 03F9 +03FA 03FB 03FA +03FB 03FB 03FA +03FD 037B 03FD +03FE 037C 03FE +03FF 037D 03FF +0400 0450 0400 +0401 0451 0401 +0402 0452 0402 +0403 0453 0403 +0404 0454 0404 +0405 0455 0405 +0406 0456 0406 +0407 0457 0407 +0408 0458 0408 +0409 0459 0409 +040A 045A 040A +040B 045B 040B +040C 045C 040C +040D 045D 040D +040E 045E 040E +040F 045F 040F +0410 0430 0410 +0411 0431 0411 +0412 0432 0412 +0413 0433 0413 +0414 0434 0414 +0415 0435 0415 +0416 0436 0416 +0417 0437 0417 +0418 0438 0418 +0419 0439 0419 +041A 043A 041A +041B 043B 041B +041C 043C 041C +041D 043D 041D +041E 043E 041E +041F 043F 041F +0420 0440 0420 +0421 0441 0421 +0422 0442 0422 +0423 0443 0423 +0424 0444 0424 +0425 0445 0425 +0426 0446 0426 +0427 0447 0427 +0428 0448 0428 +0429 0449 0429 +042A 044A 042A +042B 044B 042B +042C 044C 042C +042D 044D 042D +042E 044E 042E +042F 044F 042F +0430 0430 0410 +0431 0431 0411 +0432 0432 0412 +0433 0433 0413 +0434 0434 0414 +0435 0435 0415 +0436 0436 0416 +0437 0437 0417 +0438 0438 0418 +0439 0439 0419 +043A 043A 041A +043B 043B 041B +043C 043C 041C +043D 043D 041D +043E 043E 041E +043F 043F 041F +0440 0440 0420 +0441 0441 0421 +0442 0442 0422 +0443 0443 0423 +0444 0444 0424 +0445 0445 0425 +0446 0446 0426 +0447 0447 0427 +0448 0448 0428 +0449 0449 0429 +044A 044A 042A +044B 044B 042B +044C 044C 042C +044D 044D 042D +044E 044E 042E +044F 044F 042F +0450 0450 0400 +0451 0451 0401 +0452 0452 0402 +0453 0453 0403 +0454 0454 0404 +0455 0455 0405 +0456 0456 0406 +0457 0457 0407 +0458 0458 0408 +0459 0459 0409 +045A 045A 040A +045B 045B 040B +045C 045C 040C +045D 045D 040D +045E 045E 040E +045F 045F 040F +0460 0461 0460 +0461 0461 0460 +0462 0463 0462 +0463 0463 0462 +0464 0465 0464 +0465 0465 0464 +0466 0467 0466 +0467 0467 0466 +0468 0469 0468 +0469 0469 0468 +046A 046B 046A +046B 046B 046A +046C 046D 046C +046D 046D 046C +046E 046F 046E +046F 046F 046E +0470 0471 0470 +0471 0471 0470 +0472 0473 0472 +0473 0473 0472 +0474 0475 0474 +0475 0475 0474 +0476 0477 0476 +0477 0477 0476 +0478 0479 0478 +0479 0479 0478 +047A 047B 047A +047B 047B 047A +047C 047D 047C +047D 047D 047C +047E 047F 047E +047F 047F 047E +0480 0481 0480 +0481 0481 0480 +048A 048B 048A +048B 048B 048A +048C 048D 048C +048D 048D 048C +048E 048F 048E +048F 048F 048E +0490 0491 0490 +0491 0491 0490 +0492 0493 0492 +0493 0493 0492 +0494 0495 0494 +0495 0495 0494 +0496 0497 0496 +0497 0497 0496 +0498 0499 0498 +0499 0499 0498 +049A 049B 049A +049B 049B 049A +049C 049D 049C +049D 049D 049C +049E 049F 049E +049F 049F 049E +04A0 04A1 04A0 +04A1 04A1 04A0 +04A2 04A3 04A2 +04A3 04A3 04A2 +04A4 04A5 04A4 +04A5 04A5 04A4 +04A6 04A7 04A6 +04A7 04A7 04A6 +04A8 04A9 04A8 +04A9 04A9 04A8 +04AA 04AB 04AA +04AB 04AB 04AA +04AC 04AD 04AC +04AD 04AD 04AC +04AE 04AF 04AE +04AF 04AF 04AE +04B0 04B1 04B0 +04B1 04B1 04B0 +04B2 04B3 04B2 +04B3 04B3 04B2 +04B4 04B5 04B4 +04B5 04B5 04B4 +04B6 04B7 04B6 +04B7 04B7 04B6 +04B8 04B9 04B8 +04B9 04B9 04B8 +04BA 04BB 04BA +04BB 04BB 04BA +04BC 04BD 04BC +04BD 04BD 04BC +04BE 04BF 04BE +04BF 04BF 04BE +04C0 04CF 04C0 +04C1 04C2 04C1 +04C2 04C2 04C1 +04C3 04C4 04C3 +04C4 04C4 04C3 +04C5 04C6 04C5 +04C6 04C6 04C5 +04C7 04C8 04C7 +04C8 04C8 04C7 +04C9 04CA 04C9 +04CA 04CA 04C9 +04CB 04CC 04CB +04CC 04CC 04CB +04CD 04CE 04CD +04CE 04CE 04CD +04CF 04CF 04C0 +04D0 04D1 04D0 +04D1 04D1 04D0 +04D2 04D3 04D2 +04D3 04D3 04D2 +04D4 04D5 04D4 +04D5 04D5 04D4 +04D6 04D7 04D6 +04D7 04D7 04D6 +04D8 04D9 04D8 +04D9 04D9 04D8 +04DA 04DB 04DA +04DB 04DB 04DA +04DC 04DD 04DC +04DD 04DD 04DC +04DE 04DF 04DE +04DF 04DF 04DE +04E0 04E1 04E0 +04E1 04E1 04E0 +04E2 04E3 04E2 +04E3 04E3 04E2 +04E4 04E5 04E4 +04E5 04E5 04E4 +04E6 04E7 04E6 +04E7 04E7 04E6 +04E8 04E9 04E8 +04E9 04E9 04E8 +04EA 04EB 04EA +04EB 04EB 04EA +04EC 04ED 04EC +04ED 04ED 04EC +04EE 04EF 04EE +04EF 04EF 04EE +04F0 04F1 04F0 +04F1 04F1 04F0 +04F2 04F3 04F2 +04F3 04F3 04F2 +04F4 04F5 04F4 +04F5 04F5 04F4 +04F6 04F7 04F6 +04F7 04F7 04F6 +04F8 04F9 04F8 +04F9 04F9 04F8 +04FA 04FB 04FA +04FB 04FB 04FA +04FC 04FD 04FC +04FD 04FD 04FC +04FE 04FF 04FE +04FF 04FF 04FE +0500 0501 0500 +0501 0501 0500 +0502 0503 0502 +0503 0503 0502 +0504 0505 0504 +0505 0505 0504 +0506 0507 0506 +0507 0507 0506 +0508 0509 0508 +0509 0509 0508 +050A 050B 050A +050B 050B 050A +050C 050D 050C +050D 050D 050C +050E 050F 050E +050F 050F 050E +0510 0511 0510 +0511 0511 0510 +0512 0513 0512 +0513 0513 0512 +0514 0515 0514 +0515 0515 0514 +0516 0517 0516 +0517 0517 0516 +0518 0519 0518 +0519 0519 0518 +051A 051B 051A +051B 051B 051A +051C 051D 051C +051D 051D 051C +051E 051F 051E +051F 051F 051E +0520 0521 0520 +0521 0521 0520 +0522 0523 0522 +0523 0523 0522 +0524 0525 0524 +0525 0525 0524 +0526 0527 0526 +0527 0527 0526 +0528 0529 0528 +0529 0529 0528 +052A 052B 052A +052B 052B 052A +052C 052D 052C +052D 052D 052C +052E 052F 052E +052F 052F 052E +0531 0561 0531 +0532 0562 0532 +0533 0563 0533 +0534 0564 0534 +0535 0565 0535 +0536 0566 0536 +0537 0567 0537 +0538 0568 0538 +0539 0569 0539 +053A 056A 053A +053B 056B 053B +053C 056C 053C +053D 056D 053D +053E 056E 053E +053F 056F 053F +0540 0570 0540 +0541 0571 0541 +0542 0572 0542 +0543 0573 0543 +0544 0574 0544 +0545 0575 0545 +0546 0576 0546 +0547 0577 0547 +0548 0578 0548 +0549 0579 0549 +054A 057A 054A +054B 057B 054B +054C 057C 054C +054D 057D 054D +054E 057E 054E +054F 057F 054F +0550 0580 0550 +0551 0581 0551 +0552 0582 0552 +0553 0583 0553 +0554 0584 0554 +0555 0585 0555 +0556 0586 0556 +0561 0561 0531 +0562 0562 0532 +0563 0563 0533 +0564 0564 0534 +0565 0565 0535 +0566 0566 0536 +0567 0567 0537 +0568 0568 0538 +0569 0569 0539 +056A 056A 053A +056B 056B 053B +056C 056C 053C +056D 056D 053D +056E 056E 053E +056F 056F 053F +0570 0570 0540 +0571 0571 0541 +0572 0572 0542 +0573 0573 0543 +0574 0574 0544 +0575 0575 0545 +0576 0576 0546 +0577 0577 0547 +0578 0578 0548 +0579 0579 0549 +057A 057A 054A +057B 057B 054B +057C 057C 054C +057D 057D 054D +057E 057E 054E +057F 057F 054F +0580 0580 0550 +0581 0581 0551 +0582 0582 0552 +0583 0583 0553 +0584 0584 0554 +0585 0585 0555 +0586 0586 0556 +10A0 2D00 10A0 +10A1 2D01 10A1 +10A2 2D02 10A2 +10A3 2D03 10A3 +10A4 2D04 10A4 +10A5 2D05 10A5 +10A6 2D06 10A6 +10A7 2D07 10A7 +10A8 2D08 10A8 +10A9 2D09 10A9 +10AA 2D0A 10AA +10AB 2D0B 10AB +10AC 2D0C 10AC +10AD 2D0D 10AD +10AE 2D0E 10AE +10AF 2D0F 10AF +10B0 2D10 10B0 +10B1 2D11 10B1 +10B2 2D12 10B2 +10B3 2D13 10B3 +10B4 2D14 10B4 +10B5 2D15 10B5 +10B6 2D16 10B6 +10B7 2D17 10B7 +10B8 2D18 10B8 +10B9 2D19 10B9 +10BA 2D1A 10BA +10BB 2D1B 10BB +10BC 2D1C 10BC +10BD 2D1D 10BD +10BE 2D1E 10BE +10BF 2D1F 10BF +10C0 2D20 10C0 +10C1 2D21 10C1 +10C2 2D22 10C2 +10C3 2D23 10C3 +10C4 2D24 10C4 +10C5 2D25 10C5 +10C7 2D27 10C7 +10CD 2D2D 10CD +10D0 10D0 1C90 +10D1 10D1 1C91 +10D2 10D2 1C92 +10D3 10D3 1C93 +10D4 10D4 1C94 +10D5 10D5 1C95 +10D6 10D6 1C96 +10D7 10D7 1C97 +10D8 10D8 1C98 +10D9 10D9 1C99 +10DA 10DA 1C9A +10DB 10DB 1C9B +10DC 10DC 1C9C +10DD 10DD 1C9D +10DE 10DE 1C9E +10DF 10DF 1C9F +10E0 10E0 1CA0 +10E1 10E1 1CA1 +10E2 10E2 1CA2 +10E3 10E3 1CA3 +10E4 10E4 1CA4 +10E5 10E5 1CA5 +10E6 10E6 1CA6 +10E7 10E7 1CA7 +10E8 10E8 1CA8 +10E9 10E9 1CA9 +10EA 10EA 1CAA +10EB 10EB 1CAB +10EC 10EC 1CAC +10ED 10ED 1CAD +10EE 10EE 1CAE +10EF 10EF 1CAF +10F0 10F0 1CB0 +10F1 10F1 1CB1 +10F2 10F2 1CB2 +10F3 10F3 1CB3 +10F4 10F4 1CB4 +10F5 10F5 1CB5 +10F6 10F6 1CB6 +10F7 10F7 1CB7 +10F8 10F8 1CB8 +10F9 10F9 1CB9 +10FA 10FA 1CBA +10FD 10FD 1CBD +10FE 10FE 1CBE +10FF 10FF 1CBF +13A0 AB70 13A0 +13A1 AB71 13A1 +13A2 AB72 13A2 +13A3 AB73 13A3 +13A4 AB74 13A4 +13A5 AB75 13A5 +13A6 AB76 13A6 +13A7 AB77 13A7 +13A8 AB78 13A8 +13A9 AB79 13A9 +13AA AB7A 13AA +13AB AB7B 13AB +13AC AB7C 13AC +13AD AB7D 13AD +13AE AB7E 13AE +13AF AB7F 13AF +13B0 AB80 13B0 +13B1 AB81 13B1 +13B2 AB82 13B2 +13B3 AB83 13B3 +13B4 AB84 13B4 +13B5 AB85 13B5 +13B6 AB86 13B6 +13B7 AB87 13B7 +13B8 AB88 13B8 +13B9 AB89 13B9 +13BA AB8A 13BA +13BB AB8B 13BB +13BC AB8C 13BC +13BD AB8D 13BD +13BE AB8E 13BE +13BF AB8F 13BF +13C0 AB90 13C0 +13C1 AB91 13C1 +13C2 AB92 13C2 +13C3 AB93 13C3 +13C4 AB94 13C4 +13C5 AB95 13C5 +13C6 AB96 13C6 +13C7 AB97 13C7 +13C8 AB98 13C8 +13C9 AB99 13C9 +13CA AB9A 13CA +13CB AB9B 13CB +13CC AB9C 13CC +13CD AB9D 13CD +13CE AB9E 13CE +13CF AB9F 13CF +13D0 ABA0 13D0 +13D1 ABA1 13D1 +13D2 ABA2 13D2 +13D3 ABA3 13D3 +13D4 ABA4 13D4 +13D5 ABA5 13D5 +13D6 ABA6 13D6 +13D7 ABA7 13D7 +13D8 ABA8 13D8 +13D9 ABA9 13D9 +13DA ABAA 13DA +13DB ABAB 13DB +13DC ABAC 13DC +13DD ABAD 13DD +13DE ABAE 13DE +13DF ABAF 13DF +13E0 ABB0 13E0 +13E1 ABB1 13E1 +13E2 ABB2 13E2 +13E3 ABB3 13E3 +13E4 ABB4 13E4 +13E5 ABB5 13E5 +13E6 ABB6 13E6 +13E7 ABB7 13E7 +13E8 ABB8 13E8 +13E9 ABB9 13E9 +13EA ABBA 13EA +13EB ABBB 13EB +13EC ABBC 13EC +13ED ABBD 13ED +13EE ABBE 13EE +13EF ABBF 13EF +13F0 13F8 13F0 +13F1 13F9 13F1 +13F2 13FA 13F2 +13F3 13FB 13F3 +13F4 13FC 13F4 +13F5 13FD 13F5 +13F8 13F8 13F0 +13F9 13F9 13F1 +13FA 13FA 13F2 +13FB 13FB 13F3 +13FC 13FC 13F4 +13FD 13FD 13F5 +1C80 1C80 0412 +1C81 1C81 0414 +1C82 1C82 041E +1C83 1C83 0421 +1C84 1C84 0422 +1C85 1C85 0422 +1C86 1C86 042A +1C87 1C87 0462 +1C88 1C88 A64A +1C90 10D0 1C90 +1C91 10D1 1C91 +1C92 10D2 1C92 +1C93 10D3 1C93 +1C94 10D4 1C94 +1C95 10D5 1C95 +1C96 10D6 1C96 +1C97 10D7 1C97 +1C98 10D8 1C98 +1C99 10D9 1C99 +1C9A 10DA 1C9A +1C9B 10DB 1C9B +1C9C 10DC 1C9C +1C9D 10DD 1C9D +1C9E 10DE 1C9E +1C9F 10DF 1C9F +1CA0 10E0 1CA0 +1CA1 10E1 1CA1 +1CA2 10E2 1CA2 +1CA3 10E3 1CA3 +1CA4 10E4 1CA4 +1CA5 10E5 1CA5 +1CA6 10E6 1CA6 +1CA7 10E7 1CA7 +1CA8 10E8 1CA8 +1CA9 10E9 1CA9 +1CAA 10EA 1CAA +1CAB 10EB 1CAB +1CAC 10EC 1CAC +1CAD 10ED 1CAD +1CAE 10EE 1CAE +1CAF 10EF 1CAF +1CB0 10F0 1CB0 +1CB1 10F1 1CB1 +1CB2 10F2 1CB2 +1CB3 10F3 1CB3 +1CB4 10F4 1CB4 +1CB5 10F5 1CB5 +1CB6 10F6 1CB6 +1CB7 10F7 1CB7 +1CB8 10F8 1CB8 +1CB9 10F9 1CB9 +1CBA 10FA 1CBA +1CBD 10FD 1CBD +1CBE 10FE 1CBE +1CBF 10FF 1CBF +1D79 1D79 A77D +1D7D 1D7D 2C63 +1D8E 1D8E A7C6 +1E00 1E01 1E00 +1E01 1E01 1E00 +1E02 1E03 1E02 +1E03 1E03 1E02 +1E04 1E05 1E04 +1E05 1E05 1E04 +1E06 1E07 1E06 +1E07 1E07 1E06 +1E08 1E09 1E08 +1E09 1E09 1E08 +1E0A 1E0B 1E0A +1E0B 1E0B 1E0A +1E0C 1E0D 1E0C +1E0D 1E0D 1E0C +1E0E 1E0F 1E0E +1E0F 1E0F 1E0E +1E10 1E11 1E10 +1E11 1E11 1E10 +1E12 1E13 1E12 +1E13 1E13 1E12 +1E14 1E15 1E14 +1E15 1E15 1E14 +1E16 1E17 1E16 +1E17 1E17 1E16 +1E18 1E19 1E18 +1E19 1E19 1E18 +1E1A 1E1B 1E1A +1E1B 1E1B 1E1A +1E1C 1E1D 1E1C +1E1D 1E1D 1E1C +1E1E 1E1F 1E1E +1E1F 1E1F 1E1E +1E20 1E21 1E20 +1E21 1E21 1E20 +1E22 1E23 1E22 +1E23 1E23 1E22 +1E24 1E25 1E24 +1E25 1E25 1E24 +1E26 1E27 1E26 +1E27 1E27 1E26 +1E28 1E29 1E28 +1E29 1E29 1E28 +1E2A 1E2B 1E2A +1E2B 1E2B 1E2A +1E2C 1E2D 1E2C +1E2D 1E2D 1E2C +1E2E 1E2F 1E2E +1E2F 1E2F 1E2E +1E30 1E31 1E30 +1E31 1E31 1E30 +1E32 1E33 1E32 +1E33 1E33 1E32 +1E34 1E35 1E34 +1E35 1E35 1E34 +1E36 1E37 1E36 +1E37 1E37 1E36 +1E38 1E39 1E38 +1E39 1E39 1E38 +1E3A 1E3B 1E3A +1E3B 1E3B 1E3A +1E3C 1E3D 1E3C +1E3D 1E3D 1E3C +1E3E 1E3F 1E3E +1E3F 1E3F 1E3E +1E40 1E41 1E40 +1E41 1E41 1E40 +1E42 1E43 1E42 +1E43 1E43 1E42 +1E44 1E45 1E44 +1E45 1E45 1E44 +1E46 1E47 1E46 +1E47 1E47 1E46 +1E48 1E49 1E48 +1E49 1E49 1E48 +1E4A 1E4B 1E4A +1E4B 1E4B 1E4A +1E4C 1E4D 1E4C +1E4D 1E4D 1E4C +1E4E 1E4F 1E4E +1E4F 1E4F 1E4E +1E50 1E51 1E50 +1E51 1E51 1E50 +1E52 1E53 1E52 +1E53 1E53 1E52 +1E54 1E55 1E54 +1E55 1E55 1E54 +1E56 1E57 1E56 +1E57 1E57 1E56 +1E58 1E59 1E58 +1E59 1E59 1E58 +1E5A 1E5B 1E5A +1E5B 1E5B 1E5A +1E5C 1E5D 1E5C +1E5D 1E5D 1E5C +1E5E 1E5F 1E5E +1E5F 1E5F 1E5E +1E60 1E61 1E60 +1E61 1E61 1E60 +1E62 1E63 1E62 +1E63 1E63 1E62 +1E64 1E65 1E64 +1E65 1E65 1E64 +1E66 1E67 1E66 +1E67 1E67 1E66 +1E68 1E69 1E68 +1E69 1E69 1E68 +1E6A 1E6B 1E6A +1E6B 1E6B 1E6A +1E6C 1E6D 1E6C +1E6D 1E6D 1E6C +1E6E 1E6F 1E6E +1E6F 1E6F 1E6E +1E70 1E71 1E70 +1E71 1E71 1E70 +1E72 1E73 1E72 +1E73 1E73 1E72 +1E74 1E75 1E74 +1E75 1E75 1E74 +1E76 1E77 1E76 +1E77 1E77 1E76 +1E78 1E79 1E78 +1E79 1E79 1E78 +1E7A 1E7B 1E7A +1E7B 1E7B 1E7A +1E7C 1E7D 1E7C +1E7D 1E7D 1E7C +1E7E 1E7F 1E7E +1E7F 1E7F 1E7E +1E80 1E81 1E80 +1E81 1E81 1E80 +1E82 1E83 1E82 +1E83 1E83 1E82 +1E84 1E85 1E84 +1E85 1E85 1E84 +1E86 1E87 1E86 +1E87 1E87 1E86 +1E88 1E89 1E88 +1E89 1E89 1E88 +1E8A 1E8B 1E8A +1E8B 1E8B 1E8A +1E8C 1E8D 1E8C +1E8D 1E8D 1E8C +1E8E 1E8F 1E8E +1E8F 1E8F 1E8E +1E90 1E91 1E90 +1E91 1E91 1E90 +1E92 1E93 1E92 +1E93 1E93 1E92 +1E94 1E95 1E94 +1E95 1E95 1E94 +1E9B 1E9B 1E60 +1E9E 00DF 1E9E +1EA0 1EA1 1EA0 +1EA1 1EA1 1EA0 +1EA2 1EA3 1EA2 +1EA3 1EA3 1EA2 +1EA4 1EA5 1EA4 +1EA5 1EA5 1EA4 +1EA6 1EA7 1EA6 +1EA7 1EA7 1EA6 +1EA8 1EA9 1EA8 +1EA9 1EA9 1EA8 +1EAA 1EAB 1EAA +1EAB 1EAB 1EAA +1EAC 1EAD 1EAC +1EAD 1EAD 1EAC +1EAE 1EAF 1EAE +1EAF 1EAF 1EAE +1EB0 1EB1 1EB0 +1EB1 1EB1 1EB0 +1EB2 1EB3 1EB2 +1EB3 1EB3 1EB2 +1EB4 1EB5 1EB4 +1EB5 1EB5 1EB4 +1EB6 1EB7 1EB6 +1EB7 1EB7 1EB6 +1EB8 1EB9 1EB8 +1EB9 1EB9 1EB8 +1EBA 1EBB 1EBA +1EBB 1EBB 1EBA +1EBC 1EBD 1EBC +1EBD 1EBD 1EBC +1EBE 1EBF 1EBE +1EBF 1EBF 1EBE +1EC0 1EC1 1EC0 +1EC1 1EC1 1EC0 +1EC2 1EC3 1EC2 +1EC3 1EC3 1EC2 +1EC4 1EC5 1EC4 +1EC5 1EC5 1EC4 +1EC6 1EC7 1EC6 +1EC7 1EC7 1EC6 +1EC8 1EC9 1EC8 +1EC9 1EC9 1EC8 +1ECA 1ECB 1ECA +1ECB 1ECB 1ECA +1ECC 1ECD 1ECC +1ECD 1ECD 1ECC +1ECE 1ECF 1ECE +1ECF 1ECF 1ECE +1ED0 1ED1 1ED0 +1ED1 1ED1 1ED0 +1ED2 1ED3 1ED2 +1ED3 1ED3 1ED2 +1ED4 1ED5 1ED4 +1ED5 1ED5 1ED4 +1ED6 1ED7 1ED6 +1ED7 1ED7 1ED6 +1ED8 1ED9 1ED8 +1ED9 1ED9 1ED8 +1EDA 1EDB 1EDA +1EDB 1EDB 1EDA +1EDC 1EDD 1EDC +1EDD 1EDD 1EDC +1EDE 1EDF 1EDE +1EDF 1EDF 1EDE +1EE0 1EE1 1EE0 +1EE1 1EE1 1EE0 +1EE2 1EE3 1EE2 +1EE3 1EE3 1EE2 +1EE4 1EE5 1EE4 +1EE5 1EE5 1EE4 +1EE6 1EE7 1EE6 +1EE7 1EE7 1EE6 +1EE8 1EE9 1EE8 +1EE9 1EE9 1EE8 +1EEA 1EEB 1EEA +1EEB 1EEB 1EEA +1EEC 1EED 1EEC +1EED 1EED 1EEC +1EEE 1EEF 1EEE +1EEF 1EEF 1EEE +1EF0 1EF1 1EF0 +1EF1 1EF1 1EF0 +1EF2 1EF3 1EF2 +1EF3 1EF3 1EF2 +1EF4 1EF5 1EF4 +1EF5 1EF5 1EF4 +1EF6 1EF7 1EF6 +1EF7 1EF7 1EF6 +1EF8 1EF9 1EF8 +1EF9 1EF9 1EF8 +1EFA 1EFB 1EFA +1EFB 1EFB 1EFA +1EFC 1EFD 1EFC +1EFD 1EFD 1EFC +1EFE 1EFF 1EFE +1EFF 1EFF 1EFE +1F00 1F00 1F08 +1F01 1F01 1F09 +1F02 1F02 1F0A +1F03 1F03 1F0B +1F04 1F04 1F0C +1F05 1F05 1F0D +1F06 1F06 1F0E +1F07 1F07 1F0F +1F08 1F00 1F08 +1F09 1F01 1F09 +1F0A 1F02 1F0A +1F0B 1F03 1F0B +1F0C 1F04 1F0C +1F0D 1F05 1F0D +1F0E 1F06 1F0E +1F0F 1F07 1F0F +1F10 1F10 1F18 +1F11 1F11 1F19 +1F12 1F12 1F1A +1F13 1F13 1F1B +1F14 1F14 1F1C +1F15 1F15 1F1D +1F18 1F10 1F18 +1F19 1F11 1F19 +1F1A 1F12 1F1A +1F1B 1F13 1F1B +1F1C 1F14 1F1C +1F1D 1F15 1F1D +1F20 1F20 1F28 +1F21 1F21 1F29 +1F22 1F22 1F2A +1F23 1F23 1F2B +1F24 1F24 1F2C +1F25 1F25 1F2D +1F26 1F26 1F2E +1F27 1F27 1F2F +1F28 1F20 1F28 +1F29 1F21 1F29 +1F2A 1F22 1F2A +1F2B 1F23 1F2B +1F2C 1F24 1F2C +1F2D 1F25 1F2D +1F2E 1F26 1F2E +1F2F 1F27 1F2F +1F30 1F30 1F38 +1F31 1F31 1F39 +1F32 1F32 1F3A +1F33 1F33 1F3B +1F34 1F34 1F3C +1F35 1F35 1F3D +1F36 1F36 1F3E +1F37 1F37 1F3F +1F38 1F30 1F38 +1F39 1F31 1F39 +1F3A 1F32 1F3A +1F3B 1F33 1F3B +1F3C 1F34 1F3C +1F3D 1F35 1F3D +1F3E 1F36 1F3E +1F3F 1F37 1F3F +1F40 1F40 1F48 +1F41 1F41 1F49 +1F42 1F42 1F4A +1F43 1F43 1F4B +1F44 1F44 1F4C +1F45 1F45 1F4D +1F48 1F40 1F48 +1F49 1F41 1F49 +1F4A 1F42 1F4A +1F4B 1F43 1F4B +1F4C 1F44 1F4C +1F4D 1F45 1F4D +1F51 1F51 1F59 +1F53 1F53 1F5B +1F55 1F55 1F5D +1F57 1F57 1F5F +1F59 1F51 1F59 +1F5B 1F53 1F5B +1F5D 1F55 1F5D +1F5F 1F57 1F5F +1F60 1F60 1F68 +1F61 1F61 1F69 +1F62 1F62 1F6A +1F63 1F63 1F6B +1F64 1F64 1F6C +1F65 1F65 1F6D +1F66 1F66 1F6E +1F67 1F67 1F6F +1F68 1F60 1F68 +1F69 1F61 1F69 +1F6A 1F62 1F6A +1F6B 1F63 1F6B +1F6C 1F64 1F6C +1F6D 1F65 1F6D +1F6E 1F66 1F6E +1F6F 1F67 1F6F +1F70 1F70 1FBA +1F71 1F71 1FBB +1F72 1F72 1FC8 +1F73 1F73 1FC9 +1F74 1F74 1FCA +1F75 1F75 1FCB +1F76 1F76 1FDA +1F77 1F77 1FDB +1F78 1F78 1FF8 +1F79 1F79 1FF9 +1F7A 1F7A 1FEA +1F7B 1F7B 1FEB +1F7C 1F7C 1FFA +1F7D 1F7D 1FFB +1F80 1F80 1F88 +1F81 1F81 1F89 +1F82 1F82 1F8A +1F83 1F83 1F8B +1F84 1F84 1F8C +1F85 1F85 1F8D +1F86 1F86 1F8E +1F87 1F87 1F8F +1F88 1F80 1F88 +1F89 1F81 1F89 +1F8A 1F82 1F8A +1F8B 1F83 1F8B +1F8C 1F84 1F8C +1F8D 1F85 1F8D +1F8E 1F86 1F8E +1F8F 1F87 1F8F +1F90 1F90 1F98 +1F91 1F91 1F99 +1F92 1F92 1F9A +1F93 1F93 1F9B +1F94 1F94 1F9C +1F95 1F95 1F9D +1F96 1F96 1F9E +1F97 1F97 1F9F +1F98 1F90 1F98 +1F99 1F91 1F99 +1F9A 1F92 1F9A +1F9B 1F93 1F9B +1F9C 1F94 1F9C +1F9D 1F95 1F9D +1F9E 1F96 1F9E +1F9F 1F97 1F9F +1FA0 1FA0 1FA8 +1FA1 1FA1 1FA9 +1FA2 1FA2 1FAA +1FA3 1FA3 1FAB +1FA4 1FA4 1FAC +1FA5 1FA5 1FAD +1FA6 1FA6 1FAE +1FA7 1FA7 1FAF +1FA8 1FA0 1FA8 +1FA9 1FA1 1FA9 +1FAA 1FA2 1FAA +1FAB 1FA3 1FAB +1FAC 1FA4 1FAC +1FAD 1FA5 1FAD +1FAE 1FA6 1FAE +1FAF 1FA7 1FAF +1FB0 1FB0 1FB8 +1FB1 1FB1 1FB9 +1FB3 1FB3 1FBC +1FB8 1FB0 1FB8 +1FB9 1FB1 1FB9 +1FBA 1F70 1FBA +1FBB 1F71 1FBB +1FBC 1FB3 1FBC +1FBE 1FBE 0399 +1FC3 1FC3 1FCC +1FC8 1F72 1FC8 +1FC9 1F73 1FC9 +1FCA 1F74 1FCA +1FCB 1F75 1FCB +1FCC 1FC3 1FCC +1FD0 1FD0 1FD8 +1FD1 1FD1 1FD9 +1FD8 1FD0 1FD8 +1FD9 1FD1 1FD9 +1FDA 1F76 1FDA +1FDB 1F77 1FDB +1FE0 1FE0 1FE8 +1FE1 1FE1 1FE9 +1FE5 1FE5 1FEC +1FE8 1FE0 1FE8 +1FE9 1FE1 1FE9 +1FEA 1F7A 1FEA +1FEB 1F7B 1FEB +1FEC 1FE5 1FEC +1FF3 1FF3 1FFC +1FF8 1F78 1FF8 +1FF9 1F79 1FF9 +1FFA 1F7C 1FFA +1FFB 1F7D 1FFB +1FFC 1FF3 1FFC +2126 03C9 2126 +212A 006B 212A +212B 00E5 212B +2132 214E 2132 +214E 214E 2132 +2160 2170 2160 +2161 2171 2161 +2162 2172 2162 +2163 2173 2163 +2164 2174 2164 +2165 2175 2165 +2166 2176 2166 +2167 2177 2167 +2168 2178 2168 +2169 2179 2169 +216A 217A 216A +216B 217B 216B +216C 217C 216C +216D 217D 216D +216E 217E 216E +216F 217F 216F +2170 2170 2160 +2171 2171 2161 +2172 2172 2162 +2173 2173 2163 +2174 2174 2164 +2175 2175 2165 +2176 2176 2166 +2177 2177 2167 +2178 2178 2168 +2179 2179 2169 +217A 217A 216A +217B 217B 216B +217C 217C 216C +217D 217D 216D +217E 217E 216E +217F 217F 216F +2183 2184 2183 +2184 2184 2183 +24B6 24D0 24B6 +24B7 24D1 24B7 +24B8 24D2 24B8 +24B9 24D3 24B9 +24BA 24D4 24BA +24BB 24D5 24BB +24BC 24D6 24BC +24BD 24D7 24BD +24BE 24D8 24BE +24BF 24D9 24BF +24C0 24DA 24C0 +24C1 24DB 24C1 +24C2 24DC 24C2 +24C3 24DD 24C3 +24C4 24DE 24C4 +24C5 24DF 24C5 +24C6 24E0 24C6 +24C7 24E1 24C7 +24C8 24E2 24C8 +24C9 24E3 24C9 +24CA 24E4 24CA +24CB 24E5 24CB +24CC 24E6 24CC +24CD 24E7 24CD +24CE 24E8 24CE +24CF 24E9 24CF +24D0 24D0 24B6 +24D1 24D1 24B7 +24D2 24D2 24B8 +24D3 24D3 24B9 +24D4 24D4 24BA +24D5 24D5 24BB +24D6 24D6 24BC +24D7 24D7 24BD +24D8 24D8 24BE +24D9 24D9 24BF +24DA 24DA 24C0 +24DB 24DB 24C1 +24DC 24DC 24C2 +24DD 24DD 24C3 +24DE 24DE 24C4 +24DF 24DF 24C5 +24E0 24E0 24C6 +24E1 24E1 24C7 +24E2 24E2 24C8 +24E3 24E3 24C9 +24E4 24E4 24CA +24E5 24E5 24CB +24E6 24E6 24CC +24E7 24E7 24CD +24E8 24E8 24CE +24E9 24E9 24CF +2C00 2C30 2C00 +2C01 2C31 2C01 +2C02 2C32 2C02 +2C03 2C33 2C03 +2C04 2C34 2C04 +2C05 2C35 2C05 +2C06 2C36 2C06 +2C07 2C37 2C07 +2C08 2C38 2C08 +2C09 2C39 2C09 +2C0A 2C3A 2C0A +2C0B 2C3B 2C0B +2C0C 2C3C 2C0C +2C0D 2C3D 2C0D +2C0E 2C3E 2C0E +2C0F 2C3F 2C0F +2C10 2C40 2C10 +2C11 2C41 2C11 +2C12 2C42 2C12 +2C13 2C43 2C13 +2C14 2C44 2C14 +2C15 2C45 2C15 +2C16 2C46 2C16 +2C17 2C47 2C17 +2C18 2C48 2C18 +2C19 2C49 2C19 +2C1A 2C4A 2C1A +2C1B 2C4B 2C1B +2C1C 2C4C 2C1C +2C1D 2C4D 2C1D +2C1E 2C4E 2C1E +2C1F 2C4F 2C1F +2C20 2C50 2C20 +2C21 2C51 2C21 +2C22 2C52 2C22 +2C23 2C53 2C23 +2C24 2C54 2C24 +2C25 2C55 2C25 +2C26 2C56 2C26 +2C27 2C57 2C27 +2C28 2C58 2C28 +2C29 2C59 2C29 +2C2A 2C5A 2C2A +2C2B 2C5B 2C2B +2C2C 2C5C 2C2C +2C2D 2C5D 2C2D +2C2E 2C5E 2C2E +2C2F 2C5F 2C2F +2C30 2C30 2C00 +2C31 2C31 2C01 +2C32 2C32 2C02 +2C33 2C33 2C03 +2C34 2C34 2C04 +2C35 2C35 2C05 +2C36 2C36 2C06 +2C37 2C37 2C07 +2C38 2C38 2C08 +2C39 2C39 2C09 +2C3A 2C3A 2C0A +2C3B 2C3B 2C0B +2C3C 2C3C 2C0C +2C3D 2C3D 2C0D +2C3E 2C3E 2C0E +2C3F 2C3F 2C0F +2C40 2C40 2C10 +2C41 2C41 2C11 +2C42 2C42 2C12 +2C43 2C43 2C13 +2C44 2C44 2C14 +2C45 2C45 2C15 +2C46 2C46 2C16 +2C47 2C47 2C17 +2C48 2C48 2C18 +2C49 2C49 2C19 +2C4A 2C4A 2C1A +2C4B 2C4B 2C1B +2C4C 2C4C 2C1C +2C4D 2C4D 2C1D +2C4E 2C4E 2C1E +2C4F 2C4F 2C1F +2C50 2C50 2C20 +2C51 2C51 2C21 +2C52 2C52 2C22 +2C53 2C53 2C23 +2C54 2C54 2C24 +2C55 2C55 2C25 +2C56 2C56 2C26 +2C57 2C57 2C27 +2C58 2C58 2C28 +2C59 2C59 2C29 +2C5A 2C5A 2C2A +2C5B 2C5B 2C2B +2C5C 2C5C 2C2C +2C5D 2C5D 2C2D +2C5E 2C5E 2C2E +2C5F 2C5F 2C2F +2C60 2C61 2C60 +2C61 2C61 2C60 +2C62 026B 2C62 +2C63 1D7D 2C63 +2C64 027D 2C64 +2C65 2C65 023A +2C66 2C66 023E +2C67 2C68 2C67 +2C68 2C68 2C67 +2C69 2C6A 2C69 +2C6A 2C6A 2C69 +2C6B 2C6C 2C6B +2C6C 2C6C 2C6B +2C6D 0251 2C6D +2C6E 0271 2C6E +2C6F 0250 2C6F +2C70 0252 2C70 +2C72 2C73 2C72 +2C73 2C73 2C72 +2C75 2C76 2C75 +2C76 2C76 2C75 +2C7E 023F 2C7E +2C7F 0240 2C7F +2C80 2C81 2C80 +2C81 2C81 2C80 +2C82 2C83 2C82 +2C83 2C83 2C82 +2C84 2C85 2C84 +2C85 2C85 2C84 +2C86 2C87 2C86 +2C87 2C87 2C86 +2C88 2C89 2C88 +2C89 2C89 2C88 +2C8A 2C8B 2C8A +2C8B 2C8B 2C8A +2C8C 2C8D 2C8C +2C8D 2C8D 2C8C +2C8E 2C8F 2C8E +2C8F 2C8F 2C8E +2C90 2C91 2C90 +2C91 2C91 2C90 +2C92 2C93 2C92 +2C93 2C93 2C92 +2C94 2C95 2C94 +2C95 2C95 2C94 +2C96 2C97 2C96 +2C97 2C97 2C96 +2C98 2C99 2C98 +2C99 2C99 2C98 +2C9A 2C9B 2C9A +2C9B 2C9B 2C9A +2C9C 2C9D 2C9C +2C9D 2C9D 2C9C +2C9E 2C9F 2C9E +2C9F 2C9F 2C9E +2CA0 2CA1 2CA0 +2CA1 2CA1 2CA0 +2CA2 2CA3 2CA2 +2CA3 2CA3 2CA2 +2CA4 2CA5 2CA4 +2CA5 2CA5 2CA4 +2CA6 2CA7 2CA6 +2CA7 2CA7 2CA6 +2CA8 2CA9 2CA8 +2CA9 2CA9 2CA8 +2CAA 2CAB 2CAA +2CAB 2CAB 2CAA +2CAC 2CAD 2CAC +2CAD 2CAD 2CAC +2CAE 2CAF 2CAE +2CAF 2CAF 2CAE +2CB0 2CB1 2CB0 +2CB1 2CB1 2CB0 +2CB2 2CB3 2CB2 +2CB3 2CB3 2CB2 +2CB4 2CB5 2CB4 +2CB5 2CB5 2CB4 +2CB6 2CB7 2CB6 +2CB7 2CB7 2CB6 +2CB8 2CB9 2CB8 +2CB9 2CB9 2CB8 +2CBA 2CBB 2CBA +2CBB 2CBB 2CBA +2CBC 2CBD 2CBC +2CBD 2CBD 2CBC +2CBE 2CBF 2CBE +2CBF 2CBF 2CBE +2CC0 2CC1 2CC0 +2CC1 2CC1 2CC0 +2CC2 2CC3 2CC2 +2CC3 2CC3 2CC2 +2CC4 2CC5 2CC4 +2CC5 2CC5 2CC4 +2CC6 2CC7 2CC6 +2CC7 2CC7 2CC6 +2CC8 2CC9 2CC8 +2CC9 2CC9 2CC8 +2CCA 2CCB 2CCA +2CCB 2CCB 2CCA +2CCC 2CCD 2CCC +2CCD 2CCD 2CCC +2CCE 2CCF 2CCE +2CCF 2CCF 2CCE +2CD0 2CD1 2CD0 +2CD1 2CD1 2CD0 +2CD2 2CD3 2CD2 +2CD3 2CD3 2CD2 +2CD4 2CD5 2CD4 +2CD5 2CD5 2CD4 +2CD6 2CD7 2CD6 +2CD7 2CD7 2CD6 +2CD8 2CD9 2CD8 +2CD9 2CD9 2CD8 +2CDA 2CDB 2CDA +2CDB 2CDB 2CDA +2CDC 2CDD 2CDC +2CDD 2CDD 2CDC +2CDE 2CDF 2CDE +2CDF 2CDF 2CDE +2CE0 2CE1 2CE0 +2CE1 2CE1 2CE0 +2CE2 2CE3 2CE2 +2CE3 2CE3 2CE2 +2CEB 2CEC 2CEB +2CEC 2CEC 2CEB +2CED 2CEE 2CED +2CEE 2CEE 2CED +2CF2 2CF3 2CF2 +2CF3 2CF3 2CF2 +2D00 2D00 10A0 +2D01 2D01 10A1 +2D02 2D02 10A2 +2D03 2D03 10A3 +2D04 2D04 10A4 +2D05 2D05 10A5 +2D06 2D06 10A6 +2D07 2D07 10A7 +2D08 2D08 10A8 +2D09 2D09 10A9 +2D0A 2D0A 10AA +2D0B 2D0B 10AB +2D0C 2D0C 10AC +2D0D 2D0D 10AD +2D0E 2D0E 10AE +2D0F 2D0F 10AF +2D10 2D10 10B0 +2D11 2D11 10B1 +2D12 2D12 10B2 +2D13 2D13 10B3 +2D14 2D14 10B4 +2D15 2D15 10B5 +2D16 2D16 10B6 +2D17 2D17 10B7 +2D18 2D18 10B8 +2D19 2D19 10B9 +2D1A 2D1A 10BA +2D1B 2D1B 10BB +2D1C 2D1C 10BC +2D1D 2D1D 10BD +2D1E 2D1E 10BE +2D1F 2D1F 10BF +2D20 2D20 10C0 +2D21 2D21 10C1 +2D22 2D22 10C2 +2D23 2D23 10C3 +2D24 2D24 10C4 +2D25 2D25 10C5 +2D27 2D27 10C7 +2D2D 2D2D 10CD +A640 A641 A640 +A641 A641 A640 +A642 A643 A642 +A643 A643 A642 +A644 A645 A644 +A645 A645 A644 +A646 A647 A646 +A647 A647 A646 +A648 A649 A648 +A649 A649 A648 +A64A A64B A64A +A64B A64B A64A +A64C A64D A64C +A64D A64D A64C +A64E A64F A64E +A64F A64F A64E +A650 A651 A650 +A651 A651 A650 +A652 A653 A652 +A653 A653 A652 +A654 A655 A654 +A655 A655 A654 +A656 A657 A656 +A657 A657 A656 +A658 A659 A658 +A659 A659 A658 +A65A A65B A65A +A65B A65B A65A +A65C A65D A65C +A65D A65D A65C +A65E A65F A65E +A65F A65F A65E +A660 A661 A660 +A661 A661 A660 +A662 A663 A662 +A663 A663 A662 +A664 A665 A664 +A665 A665 A664 +A666 A667 A666 +A667 A667 A666 +A668 A669 A668 +A669 A669 A668 +A66A A66B A66A +A66B A66B A66A +A66C A66D A66C +A66D A66D A66C +A680 A681 A680 +A681 A681 A680 +A682 A683 A682 +A683 A683 A682 +A684 A685 A684 +A685 A685 A684 +A686 A687 A686 +A687 A687 A686 +A688 A689 A688 +A689 A689 A688 +A68A A68B A68A +A68B A68B A68A +A68C A68D A68C +A68D A68D A68C +A68E A68F A68E +A68F A68F A68E +A690 A691 A690 +A691 A691 A690 +A692 A693 A692 +A693 A693 A692 +A694 A695 A694 +A695 A695 A694 +A696 A697 A696 +A697 A697 A696 +A698 A699 A698 +A699 A699 A698 +A69A A69B A69A +A69B A69B A69A +A722 A723 A722 +A723 A723 A722 +A724 A725 A724 +A725 A725 A724 +A726 A727 A726 +A727 A727 A726 +A728 A729 A728 +A729 A729 A728 +A72A A72B A72A +A72B A72B A72A +A72C A72D A72C +A72D A72D A72C +A72E A72F A72E +A72F A72F A72E +A732 A733 A732 +A733 A733 A732 +A734 A735 A734 +A735 A735 A734 +A736 A737 A736 +A737 A737 A736 +A738 A739 A738 +A739 A739 A738 +A73A A73B A73A +A73B A73B A73A +A73C A73D A73C +A73D A73D A73C +A73E A73F A73E +A73F A73F A73E +A740 A741 A740 +A741 A741 A740 +A742 A743 A742 +A743 A743 A742 +A744 A745 A744 +A745 A745 A744 +A746 A747 A746 +A747 A747 A746 +A748 A749 A748 +A749 A749 A748 +A74A A74B A74A +A74B A74B A74A +A74C A74D A74C +A74D A74D A74C +A74E A74F A74E +A74F A74F A74E +A750 A751 A750 +A751 A751 A750 +A752 A753 A752 +A753 A753 A752 +A754 A755 A754 +A755 A755 A754 +A756 A757 A756 +A757 A757 A756 +A758 A759 A758 +A759 A759 A758 +A75A A75B A75A +A75B A75B A75A +A75C A75D A75C +A75D A75D A75C +A75E A75F A75E +A75F A75F A75E +A760 A761 A760 +A761 A761 A760 +A762 A763 A762 +A763 A763 A762 +A764 A765 A764 +A765 A765 A764 +A766 A767 A766 +A767 A767 A766 +A768 A769 A768 +A769 A769 A768 +A76A A76B A76A +A76B A76B A76A +A76C A76D A76C +A76D A76D A76C +A76E A76F A76E +A76F A76F A76E +A779 A77A A779 +A77A A77A A779 +A77B A77C A77B +A77C A77C A77B +A77D 1D79 A77D +A77E A77F A77E +A77F A77F A77E +A780 A781 A780 +A781 A781 A780 +A782 A783 A782 +A783 A783 A782 +A784 A785 A784 +A785 A785 A784 +A786 A787 A786 +A787 A787 A786 +A78B A78C A78B +A78C A78C A78B +A78D 0265 A78D +A790 A791 A790 +A791 A791 A790 +A792 A793 A792 +A793 A793 A792 +A794 A794 A7C4 +A796 A797 A796 +A797 A797 A796 +A798 A799 A798 +A799 A799 A798 +A79A A79B A79A +A79B A79B A79A +A79C A79D A79C +A79D A79D A79C +A79E A79F A79E +A79F A79F A79E +A7A0 A7A1 A7A0 +A7A1 A7A1 A7A0 +A7A2 A7A3 A7A2 +A7A3 A7A3 A7A2 +A7A4 A7A5 A7A4 +A7A5 A7A5 A7A4 +A7A6 A7A7 A7A6 +A7A7 A7A7 A7A6 +A7A8 A7A9 A7A8 +A7A9 A7A9 A7A8 +A7AA 0266 A7AA +A7AB 025C A7AB +A7AC 0261 A7AC +A7AD 026C A7AD +A7AE 026A A7AE +A7B0 029E A7B0 +A7B1 0287 A7B1 +A7B2 029D A7B2 +A7B3 AB53 A7B3 +A7B4 A7B5 A7B4 +A7B5 A7B5 A7B4 +A7B6 A7B7 A7B6 +A7B7 A7B7 A7B6 +A7B8 A7B9 A7B8 +A7B9 A7B9 A7B8 +A7BA A7BB A7BA +A7BB A7BB A7BA +A7BC A7BD A7BC +A7BD A7BD A7BC +A7BE A7BF A7BE +A7BF A7BF A7BE +A7C0 A7C1 A7C0 +A7C1 A7C1 A7C0 +A7C2 A7C3 A7C2 +A7C3 A7C3 A7C2 +A7C4 A794 A7C4 +A7C5 0282 A7C5 +A7C6 1D8E A7C6 +A7C7 A7C8 A7C7 +A7C8 A7C8 A7C7 +A7C9 A7CA A7C9 +A7CA A7CA A7C9 +A7D0 A7D1 A7D0 +A7D1 A7D1 A7D0 +A7D6 A7D7 A7D6 +A7D7 A7D7 A7D6 +A7D8 A7D9 A7D8 +A7D9 A7D9 A7D8 +A7F5 A7F6 A7F5 +A7F6 A7F6 A7F5 +AB53 AB53 A7B3 +AB70 AB70 13A0 +AB71 AB71 13A1 +AB72 AB72 13A2 +AB73 AB73 13A3 +AB74 AB74 13A4 +AB75 AB75 13A5 +AB76 AB76 13A6 +AB77 AB77 13A7 +AB78 AB78 13A8 +AB79 AB79 13A9 +AB7A AB7A 13AA +AB7B AB7B 13AB +AB7C AB7C 13AC +AB7D AB7D 13AD +AB7E AB7E 13AE +AB7F AB7F 13AF +AB80 AB80 13B0 +AB81 AB81 13B1 +AB82 AB82 13B2 +AB83 AB83 13B3 +AB84 AB84 13B4 +AB85 AB85 13B5 +AB86 AB86 13B6 +AB87 AB87 13B7 +AB88 AB88 13B8 +AB89 AB89 13B9 +AB8A AB8A 13BA +AB8B AB8B 13BB +AB8C AB8C 13BC +AB8D AB8D 13BD +AB8E AB8E 13BE +AB8F AB8F 13BF +AB90 AB90 13C0 +AB91 AB91 13C1 +AB92 AB92 13C2 +AB93 AB93 13C3 +AB94 AB94 13C4 +AB95 AB95 13C5 +AB96 AB96 13C6 +AB97 AB97 13C7 +AB98 AB98 13C8 +AB99 AB99 13C9 +AB9A AB9A 13CA +AB9B AB9B 13CB +AB9C AB9C 13CC +AB9D AB9D 13CD +AB9E AB9E 13CE +AB9F AB9F 13CF +ABA0 ABA0 13D0 +ABA1 ABA1 13D1 +ABA2 ABA2 13D2 +ABA3 ABA3 13D3 +ABA4 ABA4 13D4 +ABA5 ABA5 13D5 +ABA6 ABA6 13D6 +ABA7 ABA7 13D7 +ABA8 ABA8 13D8 +ABA9 ABA9 13D9 +ABAA ABAA 13DA +ABAB ABAB 13DB +ABAC ABAC 13DC +ABAD ABAD 13DD +ABAE ABAE 13DE +ABAF ABAF 13DF +ABB0 ABB0 13E0 +ABB1 ABB1 13E1 +ABB2 ABB2 13E2 +ABB3 ABB3 13E3 +ABB4 ABB4 13E4 +ABB5 ABB5 13E5 +ABB6 ABB6 13E6 +ABB7 ABB7 13E7 +ABB8 ABB8 13E8 +ABB9 ABB9 13E9 +ABBA ABBA 13EA +ABBB ABBB 13EB +ABBC ABBC 13EC +ABBD ABBD 13ED +ABBE ABBE 13EE +ABBF ABBF 13EF +FF21 FF41 FF21 +FF22 FF42 FF22 +FF23 FF43 FF23 +FF24 FF44 FF24 +FF25 FF45 FF25 +FF26 FF46 FF26 +FF27 FF47 FF27 +FF28 FF48 FF28 +FF29 FF49 FF29 +FF2A FF4A FF2A +FF2B FF4B FF2B +FF2C FF4C FF2C +FF2D FF4D FF2D +FF2E FF4E FF2E +FF2F FF4F FF2F +FF30 FF50 FF30 +FF31 FF51 FF31 +FF32 FF52 FF32 +FF33 FF53 FF33 +FF34 FF54 FF34 +FF35 FF55 FF35 +FF36 FF56 FF36 +FF37 FF57 FF37 +FF38 FF58 FF38 +FF39 FF59 FF39 +FF3A FF5A FF3A +FF41 FF41 FF21 +FF42 FF42 FF22 +FF43 FF43 FF23 +FF44 FF44 FF24 +FF45 FF45 FF25 +FF46 FF46 FF26 +FF47 FF47 FF27 +FF48 FF48 FF28 +FF49 FF49 FF29 +FF4A FF4A FF2A +FF4B FF4B FF2B +FF4C FF4C FF2C +FF4D FF4D FF2D +FF4E FF4E FF2E +FF4F FF4F FF2F +FF50 FF50 FF30 +FF51 FF51 FF31 +FF52 FF52 FF32 +FF53 FF53 FF33 +FF54 FF54 FF34 +FF55 FF55 FF35 +FF56 FF56 FF36 +FF57 FF57 FF37 +FF58 FF58 FF38 +FF59 FF59 FF39 +FF5A FF5A FF3A +DROP VIEW v_bmp; +EXECUTE IMMEDIATE SFORMAT(' +CREATE VIEW v_supplementary AS +SELECT + seq AS codepoint, + LPAD(HEX(seq),8,''0'') AS codepoint_hex8, + CONVERT(CHAR(seq USING utf32) USING {}) COLLATE {} AS c +FROM + seq_65536_to_1114111', @@character_set_connection, @@collation_connection); +SELECT COLLATION(c) FROM v_supplementary LIMIT 1; +COLLATION(c) +utf8mb4_uca1400_ai_ci +SELECT +codepoint_hex8, +HEX(CAST(LOWER(c) AS CHAR CHARACTER SET utf32)), +HEX(CAST(UPPER(c) AS CHAR CHARACTER SET utf32)) +FROM v_supplementary +WHERE BINARY(c)<>BINARY(LOWER(c)) OR BINARY(c)<>BINARY(UPPER(c)); +codepoint_hex8 HEX(CAST(LOWER(c) AS CHAR CHARACTER SET utf32)) HEX(CAST(UPPER(c) AS CHAR CHARACTER SET utf32)) +00010400 00010428 00010400 +00010401 00010429 00010401 +00010402 0001042A 00010402 +00010403 0001042B 00010403 +00010404 0001042C 00010404 +00010405 0001042D 00010405 +00010406 0001042E 00010406 +00010407 0001042F 00010407 +00010408 00010430 00010408 +00010409 00010431 00010409 +0001040A 00010432 0001040A +0001040B 00010433 0001040B +0001040C 00010434 0001040C +0001040D 00010435 0001040D +0001040E 00010436 0001040E +0001040F 00010437 0001040F +00010410 00010438 00010410 +00010411 00010439 00010411 +00010412 0001043A 00010412 +00010413 0001043B 00010413 +00010414 0001043C 00010414 +00010415 0001043D 00010415 +00010416 0001043E 00010416 +00010417 0001043F 00010417 +00010418 00010440 00010418 +00010419 00010441 00010419 +0001041A 00010442 0001041A +0001041B 00010443 0001041B +0001041C 00010444 0001041C +0001041D 00010445 0001041D +0001041E 00010446 0001041E +0001041F 00010447 0001041F +00010420 00010448 00010420 +00010421 00010449 00010421 +00010422 0001044A 00010422 +00010423 0001044B 00010423 +00010424 0001044C 00010424 +00010425 0001044D 00010425 +00010426 0001044E 00010426 +00010427 0001044F 00010427 +00010428 00010428 00010400 +00010429 00010429 00010401 +0001042A 0001042A 00010402 +0001042B 0001042B 00010403 +0001042C 0001042C 00010404 +0001042D 0001042D 00010405 +0001042E 0001042E 00010406 +0001042F 0001042F 00010407 +00010430 00010430 00010408 +00010431 00010431 00010409 +00010432 00010432 0001040A +00010433 00010433 0001040B +00010434 00010434 0001040C +00010435 00010435 0001040D +00010436 00010436 0001040E +00010437 00010437 0001040F +00010438 00010438 00010410 +00010439 00010439 00010411 +0001043A 0001043A 00010412 +0001043B 0001043B 00010413 +0001043C 0001043C 00010414 +0001043D 0001043D 00010415 +0001043E 0001043E 00010416 +0001043F 0001043F 00010417 +00010440 00010440 00010418 +00010441 00010441 00010419 +00010442 00010442 0001041A +00010443 00010443 0001041B +00010444 00010444 0001041C +00010445 00010445 0001041D +00010446 00010446 0001041E +00010447 00010447 0001041F +00010448 00010448 00010420 +00010449 00010449 00010421 +0001044A 0001044A 00010422 +0001044B 0001044B 00010423 +0001044C 0001044C 00010424 +0001044D 0001044D 00010425 +0001044E 0001044E 00010426 +0001044F 0001044F 00010427 +000104B0 000104D8 000104B0 +000104B1 000104D9 000104B1 +000104B2 000104DA 000104B2 +000104B3 000104DB 000104B3 +000104B4 000104DC 000104B4 +000104B5 000104DD 000104B5 +000104B6 000104DE 000104B6 +000104B7 000104DF 000104B7 +000104B8 000104E0 000104B8 +000104B9 000104E1 000104B9 +000104BA 000104E2 000104BA +000104BB 000104E3 000104BB +000104BC 000104E4 000104BC +000104BD 000104E5 000104BD +000104BE 000104E6 000104BE +000104BF 000104E7 000104BF +000104C0 000104E8 000104C0 +000104C1 000104E9 000104C1 +000104C2 000104EA 000104C2 +000104C3 000104EB 000104C3 +000104C4 000104EC 000104C4 +000104C5 000104ED 000104C5 +000104C6 000104EE 000104C6 +000104C7 000104EF 000104C7 +000104C8 000104F0 000104C8 +000104C9 000104F1 000104C9 +000104CA 000104F2 000104CA +000104CB 000104F3 000104CB +000104CC 000104F4 000104CC +000104CD 000104F5 000104CD +000104CE 000104F6 000104CE +000104CF 000104F7 000104CF +000104D0 000104F8 000104D0 +000104D1 000104F9 000104D1 +000104D2 000104FA 000104D2 +000104D3 000104FB 000104D3 +000104D8 000104D8 000104B0 +000104D9 000104D9 000104B1 +000104DA 000104DA 000104B2 +000104DB 000104DB 000104B3 +000104DC 000104DC 000104B4 +000104DD 000104DD 000104B5 +000104DE 000104DE 000104B6 +000104DF 000104DF 000104B7 +000104E0 000104E0 000104B8 +000104E1 000104E1 000104B9 +000104E2 000104E2 000104BA +000104E3 000104E3 000104BB +000104E4 000104E4 000104BC +000104E5 000104E5 000104BD +000104E6 000104E6 000104BE +000104E7 000104E7 000104BF +000104E8 000104E8 000104C0 +000104E9 000104E9 000104C1 +000104EA 000104EA 000104C2 +000104EB 000104EB 000104C3 +000104EC 000104EC 000104C4 +000104ED 000104ED 000104C5 +000104EE 000104EE 000104C6 +000104EF 000104EF 000104C7 +000104F0 000104F0 000104C8 +000104F1 000104F1 000104C9 +000104F2 000104F2 000104CA +000104F3 000104F3 000104CB +000104F4 000104F4 000104CC +000104F5 000104F5 000104CD +000104F6 000104F6 000104CE +000104F7 000104F7 000104CF +000104F8 000104F8 000104D0 +000104F9 000104F9 000104D1 +000104FA 000104FA 000104D2 +000104FB 000104FB 000104D3 +00010570 00010597 00010570 +00010571 00010598 00010571 +00010572 00010599 00010572 +00010573 0001059A 00010573 +00010574 0001059B 00010574 +00010575 0001059C 00010575 +00010576 0001059D 00010576 +00010577 0001059E 00010577 +00010578 0001059F 00010578 +00010579 000105A0 00010579 +0001057A 000105A1 0001057A +0001057C 000105A3 0001057C +0001057D 000105A4 0001057D +0001057E 000105A5 0001057E +0001057F 000105A6 0001057F +00010580 000105A7 00010580 +00010581 000105A8 00010581 +00010582 000105A9 00010582 +00010583 000105AA 00010583 +00010584 000105AB 00010584 +00010585 000105AC 00010585 +00010586 000105AD 00010586 +00010587 000105AE 00010587 +00010588 000105AF 00010588 +00010589 000105B0 00010589 +0001058A 000105B1 0001058A +0001058C 000105B3 0001058C +0001058D 000105B4 0001058D +0001058E 000105B5 0001058E +0001058F 000105B6 0001058F +00010590 000105B7 00010590 +00010591 000105B8 00010591 +00010592 000105B9 00010592 +00010594 000105BB 00010594 +00010595 000105BC 00010595 +00010597 00010597 00010570 +00010598 00010598 00010571 +00010599 00010599 00010572 +0001059A 0001059A 00010573 +0001059B 0001059B 00010574 +0001059C 0001059C 00010575 +0001059D 0001059D 00010576 +0001059E 0001059E 00010577 +0001059F 0001059F 00010578 +000105A0 000105A0 00010579 +000105A1 000105A1 0001057A +000105A3 000105A3 0001057C +000105A4 000105A4 0001057D +000105A5 000105A5 0001057E +000105A6 000105A6 0001057F +000105A7 000105A7 00010580 +000105A8 000105A8 00010581 +000105A9 000105A9 00010582 +000105AA 000105AA 00010583 +000105AB 000105AB 00010584 +000105AC 000105AC 00010585 +000105AD 000105AD 00010586 +000105AE 000105AE 00010587 +000105AF 000105AF 00010588 +000105B0 000105B0 00010589 +000105B1 000105B1 0001058A +000105B3 000105B3 0001058C +000105B4 000105B4 0001058D +000105B5 000105B5 0001058E +000105B6 000105B6 0001058F +000105B7 000105B7 00010590 +000105B8 000105B8 00010591 +000105B9 000105B9 00010592 +000105BB 000105BB 00010594 +000105BC 000105BC 00010595 +00010C80 00010CC0 00010C80 +00010C81 00010CC1 00010C81 +00010C82 00010CC2 00010C82 +00010C83 00010CC3 00010C83 +00010C84 00010CC4 00010C84 +00010C85 00010CC5 00010C85 +00010C86 00010CC6 00010C86 +00010C87 00010CC7 00010C87 +00010C88 00010CC8 00010C88 +00010C89 00010CC9 00010C89 +00010C8A 00010CCA 00010C8A +00010C8B 00010CCB 00010C8B +00010C8C 00010CCC 00010C8C +00010C8D 00010CCD 00010C8D +00010C8E 00010CCE 00010C8E +00010C8F 00010CCF 00010C8F +00010C90 00010CD0 00010C90 +00010C91 00010CD1 00010C91 +00010C92 00010CD2 00010C92 +00010C93 00010CD3 00010C93 +00010C94 00010CD4 00010C94 +00010C95 00010CD5 00010C95 +00010C96 00010CD6 00010C96 +00010C97 00010CD7 00010C97 +00010C98 00010CD8 00010C98 +00010C99 00010CD9 00010C99 +00010C9A 00010CDA 00010C9A +00010C9B 00010CDB 00010C9B +00010C9C 00010CDC 00010C9C +00010C9D 00010CDD 00010C9D +00010C9E 00010CDE 00010C9E +00010C9F 00010CDF 00010C9F +00010CA0 00010CE0 00010CA0 +00010CA1 00010CE1 00010CA1 +00010CA2 00010CE2 00010CA2 +00010CA3 00010CE3 00010CA3 +00010CA4 00010CE4 00010CA4 +00010CA5 00010CE5 00010CA5 +00010CA6 00010CE6 00010CA6 +00010CA7 00010CE7 00010CA7 +00010CA8 00010CE8 00010CA8 +00010CA9 00010CE9 00010CA9 +00010CAA 00010CEA 00010CAA +00010CAB 00010CEB 00010CAB +00010CAC 00010CEC 00010CAC +00010CAD 00010CED 00010CAD +00010CAE 00010CEE 00010CAE +00010CAF 00010CEF 00010CAF +00010CB0 00010CF0 00010CB0 +00010CB1 00010CF1 00010CB1 +00010CB2 00010CF2 00010CB2 +00010CC0 00010CC0 00010C80 +00010CC1 00010CC1 00010C81 +00010CC2 00010CC2 00010C82 +00010CC3 00010CC3 00010C83 +00010CC4 00010CC4 00010C84 +00010CC5 00010CC5 00010C85 +00010CC6 00010CC6 00010C86 +00010CC7 00010CC7 00010C87 +00010CC8 00010CC8 00010C88 +00010CC9 00010CC9 00010C89 +00010CCA 00010CCA 00010C8A +00010CCB 00010CCB 00010C8B +00010CCC 00010CCC 00010C8C +00010CCD 00010CCD 00010C8D +00010CCE 00010CCE 00010C8E +00010CCF 00010CCF 00010C8F +00010CD0 00010CD0 00010C90 +00010CD1 00010CD1 00010C91 +00010CD2 00010CD2 00010C92 +00010CD3 00010CD3 00010C93 +00010CD4 00010CD4 00010C94 +00010CD5 00010CD5 00010C95 +00010CD6 00010CD6 00010C96 +00010CD7 00010CD7 00010C97 +00010CD8 00010CD8 00010C98 +00010CD9 00010CD9 00010C99 +00010CDA 00010CDA 00010C9A +00010CDB 00010CDB 00010C9B +00010CDC 00010CDC 00010C9C +00010CDD 00010CDD 00010C9D +00010CDE 00010CDE 00010C9E +00010CDF 00010CDF 00010C9F +00010CE0 00010CE0 00010CA0 +00010CE1 00010CE1 00010CA1 +00010CE2 00010CE2 00010CA2 +00010CE3 00010CE3 00010CA3 +00010CE4 00010CE4 00010CA4 +00010CE5 00010CE5 00010CA5 +00010CE6 00010CE6 00010CA6 +00010CE7 00010CE7 00010CA7 +00010CE8 00010CE8 00010CA8 +00010CE9 00010CE9 00010CA9 +00010CEA 00010CEA 00010CAA +00010CEB 00010CEB 00010CAB +00010CEC 00010CEC 00010CAC +00010CED 00010CED 00010CAD +00010CEE 00010CEE 00010CAE +00010CEF 00010CEF 00010CAF +00010CF0 00010CF0 00010CB0 +00010CF1 00010CF1 00010CB1 +00010CF2 00010CF2 00010CB2 +000118A0 000118C0 000118A0 +000118A1 000118C1 000118A1 +000118A2 000118C2 000118A2 +000118A3 000118C3 000118A3 +000118A4 000118C4 000118A4 +000118A5 000118C5 000118A5 +000118A6 000118C6 000118A6 +000118A7 000118C7 000118A7 +000118A8 000118C8 000118A8 +000118A9 000118C9 000118A9 +000118AA 000118CA 000118AA +000118AB 000118CB 000118AB +000118AC 000118CC 000118AC +000118AD 000118CD 000118AD +000118AE 000118CE 000118AE +000118AF 000118CF 000118AF +000118B0 000118D0 000118B0 +000118B1 000118D1 000118B1 +000118B2 000118D2 000118B2 +000118B3 000118D3 000118B3 +000118B4 000118D4 000118B4 +000118B5 000118D5 000118B5 +000118B6 000118D6 000118B6 +000118B7 000118D7 000118B7 +000118B8 000118D8 000118B8 +000118B9 000118D9 000118B9 +000118BA 000118DA 000118BA +000118BB 000118DB 000118BB +000118BC 000118DC 000118BC +000118BD 000118DD 000118BD +000118BE 000118DE 000118BE +000118BF 000118DF 000118BF +000118C0 000118C0 000118A0 +000118C1 000118C1 000118A1 +000118C2 000118C2 000118A2 +000118C3 000118C3 000118A3 +000118C4 000118C4 000118A4 +000118C5 000118C5 000118A5 +000118C6 000118C6 000118A6 +000118C7 000118C7 000118A7 +000118C8 000118C8 000118A8 +000118C9 000118C9 000118A9 +000118CA 000118CA 000118AA +000118CB 000118CB 000118AB +000118CC 000118CC 000118AC +000118CD 000118CD 000118AD +000118CE 000118CE 000118AE +000118CF 000118CF 000118AF +000118D0 000118D0 000118B0 +000118D1 000118D1 000118B1 +000118D2 000118D2 000118B2 +000118D3 000118D3 000118B3 +000118D4 000118D4 000118B4 +000118D5 000118D5 000118B5 +000118D6 000118D6 000118B6 +000118D7 000118D7 000118B7 +000118D8 000118D8 000118B8 +000118D9 000118D9 000118B9 +000118DA 000118DA 000118BA +000118DB 000118DB 000118BB +000118DC 000118DC 000118BC +000118DD 000118DD 000118BD +000118DE 000118DE 000118BE +000118DF 000118DF 000118BF +00016E40 00016E60 00016E40 +00016E41 00016E61 00016E41 +00016E42 00016E62 00016E42 +00016E43 00016E63 00016E43 +00016E44 00016E64 00016E44 +00016E45 00016E65 00016E45 +00016E46 00016E66 00016E46 +00016E47 00016E67 00016E47 +00016E48 00016E68 00016E48 +00016E49 00016E69 00016E49 +00016E4A 00016E6A 00016E4A +00016E4B 00016E6B 00016E4B +00016E4C 00016E6C 00016E4C +00016E4D 00016E6D 00016E4D +00016E4E 00016E6E 00016E4E +00016E4F 00016E6F 00016E4F +00016E50 00016E70 00016E50 +00016E51 00016E71 00016E51 +00016E52 00016E72 00016E52 +00016E53 00016E73 00016E53 +00016E54 00016E74 00016E54 +00016E55 00016E75 00016E55 +00016E56 00016E76 00016E56 +00016E57 00016E77 00016E57 +00016E58 00016E78 00016E58 +00016E59 00016E79 00016E59 +00016E5A 00016E7A 00016E5A +00016E5B 00016E7B 00016E5B +00016E5C 00016E7C 00016E5C +00016E5D 00016E7D 00016E5D +00016E5E 00016E7E 00016E5E +00016E5F 00016E7F 00016E5F +00016E60 00016E60 00016E40 +00016E61 00016E61 00016E41 +00016E62 00016E62 00016E42 +00016E63 00016E63 00016E43 +00016E64 00016E64 00016E44 +00016E65 00016E65 00016E45 +00016E66 00016E66 00016E46 +00016E67 00016E67 00016E47 +00016E68 00016E68 00016E48 +00016E69 00016E69 00016E49 +00016E6A 00016E6A 00016E4A +00016E6B 00016E6B 00016E4B +00016E6C 00016E6C 00016E4C +00016E6D 00016E6D 00016E4D +00016E6E 00016E6E 00016E4E +00016E6F 00016E6F 00016E4F +00016E70 00016E70 00016E50 +00016E71 00016E71 00016E51 +00016E72 00016E72 00016E52 +00016E73 00016E73 00016E53 +00016E74 00016E74 00016E54 +00016E75 00016E75 00016E55 +00016E76 00016E76 00016E56 +00016E77 00016E77 00016E57 +00016E78 00016E78 00016E58 +00016E79 00016E79 00016E59 +00016E7A 00016E7A 00016E5A +00016E7B 00016E7B 00016E5B +00016E7C 00016E7C 00016E5C +00016E7D 00016E7D 00016E5D +00016E7E 00016E7E 00016E5E +00016E7F 00016E7F 00016E5F +0001E900 0001E922 0001E900 +0001E901 0001E923 0001E901 +0001E902 0001E924 0001E902 +0001E903 0001E925 0001E903 +0001E904 0001E926 0001E904 +0001E905 0001E927 0001E905 +0001E906 0001E928 0001E906 +0001E907 0001E929 0001E907 +0001E908 0001E92A 0001E908 +0001E909 0001E92B 0001E909 +0001E90A 0001E92C 0001E90A +0001E90B 0001E92D 0001E90B +0001E90C 0001E92E 0001E90C +0001E90D 0001E92F 0001E90D +0001E90E 0001E930 0001E90E +0001E90F 0001E931 0001E90F +0001E910 0001E932 0001E910 +0001E911 0001E933 0001E911 +0001E912 0001E934 0001E912 +0001E913 0001E935 0001E913 +0001E914 0001E936 0001E914 +0001E915 0001E937 0001E915 +0001E916 0001E938 0001E916 +0001E917 0001E939 0001E917 +0001E918 0001E93A 0001E918 +0001E919 0001E93B 0001E919 +0001E91A 0001E93C 0001E91A +0001E91B 0001E93D 0001E91B +0001E91C 0001E93E 0001E91C +0001E91D 0001E93F 0001E91D +0001E91E 0001E940 0001E91E +0001E91F 0001E941 0001E91F +0001E920 0001E942 0001E920 +0001E921 0001E943 0001E921 +0001E922 0001E922 0001E900 +0001E923 0001E923 0001E901 +0001E924 0001E924 0001E902 +0001E925 0001E925 0001E903 +0001E926 0001E926 0001E904 +0001E927 0001E927 0001E905 +0001E928 0001E928 0001E906 +0001E929 0001E929 0001E907 +0001E92A 0001E92A 0001E908 +0001E92B 0001E92B 0001E909 +0001E92C 0001E92C 0001E90A +0001E92D 0001E92D 0001E90B +0001E92E 0001E92E 0001E90C +0001E92F 0001E92F 0001E90D +0001E930 0001E930 0001E90E +0001E931 0001E931 0001E90F +0001E932 0001E932 0001E910 +0001E933 0001E933 0001E911 +0001E934 0001E934 0001E912 +0001E935 0001E935 0001E913 +0001E936 0001E936 0001E914 +0001E937 0001E937 0001E915 +0001E938 0001E938 0001E916 +0001E939 0001E939 0001E917 +0001E93A 0001E93A 0001E918 +0001E93B 0001E93B 0001E919 +0001E93C 0001E93C 0001E91A +0001E93D 0001E93D 0001E91B +0001E93E 0001E93E 0001E91C +0001E93F 0001E93F 0001E91D +0001E940 0001E940 0001E91E +0001E941 0001E941 0001E91F +0001E942 0001E942 0001E920 +0001E943 0001E943 0001E921 +DROP VIEW v_supplementary; +# +# End of 10.10 tests +# diff --git a/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.test b/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.test new file mode 100644 index 00000000000..288f86155e2 --- /dev/null +++ b/mysql-test/main/ctype_utf8mb4_uca1400_ai_ci_casefold.test @@ -0,0 +1,15 @@ +--echo # +--echo # Start of 10.10 tests +--echo # + +--echo # +--echo # MDEV-30577 Case folding for uca1400 collations is not up to date +--echo # + +SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_ai_ci; +--source include/ctype_unicode_casefold_bmp.inc +--source include/ctype_unicode_casefold_supplementary.inc + +--echo # +--echo # End of 10.10 tests +--echo # diff --git a/strings/CMakeLists.txt b/strings/CMakeLists.txt index 85e8cd05816..099f3c67660 100644 --- a/strings/CMakeLists.txt +++ b/strings/CMakeLists.txt @@ -22,6 +22,7 @@ SET(STRINGS_SOURCES bchange.c bmove_upp.c ctype-big5.c ctype-bin.c ctype-cp932.c ctype-czech.c ctype-euc_kr.c ctype-eucjpms.c ctype-extra.c ctype-gb2312.c ctype-gbk.c ctype-latin1.c ctype-mb.c ctype-simple.c ctype-sjis.c ctype-tis620.c ctype-uca.c ctype-ucs2.c ctype-ujis.c ctype-utf8.c ctype-win1250ch.c ctype.c decimal.c dtoa.c int2str.c + ctype-unidata.c is_prefix.c llstr.c longlong2str.c my_strtoll10.c my_vsnprintf.c str2int.c strcend.c strend.c strfill.c strmake.c strmov.c strnmov.c strxmov.c strxnmov.c xml.c diff --git a/strings/conf_to_src.c b/strings/conf_to_src.c index 692effbd3f4..fce763b4fc7 100644 --- a/strings/conf_to_src.c +++ b/strings/conf_to_src.c @@ -409,7 +409,6 @@ void dispcset(FILE *f,CHARSET_INFO *cs) fprintf(f," NULL, /* from_uni */\n"); fprintf(f," NULL, /* casefold */\n"); - fprintf(f," &my_unicase_default, /* caseinfo */\n"); fprintf(f," NULL, /* state map */\n"); fprintf(f," NULL, /* ident map */\n"); fprintf(f," 1, /* strxfrm_multiply*/\n"); diff --git a/strings/ctype-big5.c b/strings/ctype-big5.c index ef01b45aec0..aaf6769989b 100644 --- a/strings/ctype-big5.c +++ b/strings/ctype-big5.c @@ -806,7 +806,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_big5[256]= static MY_CASEFOLD_INFO my_casefold_big5= { 0xFFFF, - my_casefold_pages_big5 + my_casefold_pages_big5, + NULL /* ws */ }; @@ -6847,7 +6848,6 @@ struct charset_info_st my_charset_big5_chinese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_big5, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6879,7 +6879,6 @@ struct charset_info_st my_charset_big5_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_big5, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6911,7 +6910,6 @@ struct charset_info_st my_charset_big5_chinese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_big5, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6943,7 +6941,6 @@ struct charset_info_st my_charset_big5_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_big5, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-bin.c b/strings/ctype-bin.c index a6c3fb6d0ea..f11fe611482 100644 --- a/strings/ctype-bin.c +++ b/strings/ctype-bin.c @@ -625,7 +625,6 @@ struct charset_info_st my_charset_bin = NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-cp932.c b/strings/ctype-cp932.c index 0f1e8457072..f01909d4f65 100644 --- a/strings/ctype-cp932.c +++ b/strings/ctype-cp932.c @@ -1706,7 +1706,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_cp932[256]= MY_CASEFOLD_INFO my_casefold_cp932= { 0xFFFF, - my_casefold_pages_cp932 + my_casefold_pages_cp932, + NULL /* ws */ }; @@ -34805,7 +34806,6 @@ struct charset_info_st my_charset_cp932_japanese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_cp932, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34836,7 +34836,6 @@ struct charset_info_st my_charset_cp932_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_cp932, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34868,7 +34867,6 @@ struct charset_info_st my_charset_cp932_japanese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_cp932, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34899,7 +34897,6 @@ struct charset_info_st my_charset_cp932_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_cp932, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-czech.c b/strings/ctype-czech.c index 109731abaaf..64aff2e7be0 100644 --- a/strings/ctype-czech.c +++ b/strings/ctype-czech.c @@ -618,7 +618,6 @@ struct charset_info_st my_charset_latin2_czech_cs = tab_8859_2_uni, /* tab_to_uni */ idx_uni_8859_2, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ diff --git a/strings/ctype-euc_kr.c b/strings/ctype-euc_kr.c index ab27074f20d..dd6ab60bd3a 100644 --- a/strings/ctype-euc_kr.c +++ b/strings/ctype-euc_kr.c @@ -1483,7 +1483,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_euckr[256]= static MY_CASEFOLD_INFO my_casefold_euckr= { 0xFFFF, - my_casefold_pages_euckr + my_casefold_pages_euckr, + NULL /* ws */ }; @@ -10095,7 +10096,6 @@ struct charset_info_st my_charset_euckr_korean_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_euckr, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10127,7 +10127,6 @@ struct charset_info_st my_charset_euckr_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_euckr, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10159,7 +10158,6 @@ struct charset_info_st my_charset_euckr_korean_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_euckr, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10191,7 +10189,6 @@ struct charset_info_st my_charset_euckr_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_euckr, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-eucjpms.c b/strings/ctype-eucjpms.c index 1812c74d465..a5f727551aa 100644 --- a/strings/ctype-eucjpms.c +++ b/strings/ctype-eucjpms.c @@ -1779,7 +1779,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_eucjpms[512]= static MY_CASEFOLD_INFO my_casefold_eucjpms= { 0x0FFFF, - my_casefold_pages_eucjpms + my_casefold_pages_eucjpms, + NULL /* ws */ }; @@ -67634,7 +67635,6 @@ struct charset_info_st my_charset_eucjpms_japanese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_eucjpms,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67666,7 +67666,6 @@ struct charset_info_st my_charset_eucjpms_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_eucjpms,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67698,7 +67697,6 @@ struct charset_info_st my_charset_eucjpms_japanese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_eucjpms,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67730,7 +67728,6 @@ struct charset_info_st my_charset_eucjpms_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_eucjpms,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-extra.c b/strings/ctype-extra.c index 82df1088a62..8a25a9c6a61 100644 --- a/strings/ctype-extra.c +++ b/strings/ctype-extra.c @@ -3690,7 +3690,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_dec8_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3722,7 +3721,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp850_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3754,7 +3752,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin1_german1_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3786,7 +3783,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hp8_english_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3818,7 +3814,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8r_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3850,7 +3845,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3882,7 +3876,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_swe7_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3914,7 +3907,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_ascii_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3946,7 +3938,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -3978,7 +3969,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin1_danish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4010,7 +4000,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hebrew_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4042,7 +4031,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4074,7 +4062,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4106,7 +4093,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8u_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4138,7 +4124,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4170,7 +4155,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_greek_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4202,7 +4186,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4234,7 +4217,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4266,7 +4248,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1257_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4298,7 +4279,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin5_turkish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4330,7 +4310,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_armscii8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4362,7 +4341,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp866_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4394,7 +4372,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_keybcs2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4426,7 +4403,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macce_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4458,7 +4434,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macroman_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4490,7 +4465,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp852_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4522,7 +4496,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4554,7 +4527,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4586,7 +4558,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macce_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4618,7 +4589,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4650,7 +4620,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin1_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4682,7 +4651,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin1_general_cs, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4714,7 +4682,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4746,7 +4713,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4778,7 +4744,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4810,7 +4775,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macroman_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4842,7 +4806,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1256_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4874,7 +4837,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1257_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4906,7 +4868,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1257_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4938,7 +4899,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_armscii8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -4970,7 +4930,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_ascii_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5002,7 +4961,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5034,7 +4992,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1256_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5066,7 +5023,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp866_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5098,7 +5054,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_dec8_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5130,7 +5085,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_greek_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5162,7 +5116,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hebrew_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5194,7 +5147,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hp8_english_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5226,7 +5178,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_keybcs2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5258,7 +5209,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8r_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5290,7 +5240,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8u_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5322,7 +5271,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5354,7 +5302,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin5_turkish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5386,7 +5333,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5418,7 +5364,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp850_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5450,7 +5395,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp852_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5482,7 +5426,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_swe7_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5514,7 +5457,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_geostd8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5546,7 +5488,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_geostd8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5578,7 +5519,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin1_spanish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5610,7 +5550,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5642,7 +5581,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_dec8_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5674,7 +5612,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp850_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5706,7 +5643,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hp8_english_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5738,7 +5674,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8r_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5770,7 +5705,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5802,7 +5736,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_swe7_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5834,7 +5767,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_ascii_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5866,7 +5798,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hebrew_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5898,7 +5829,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8u_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5930,7 +5860,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_greek_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5962,7 +5891,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -5994,7 +5922,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin5_turkish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6026,7 +5953,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_armscii8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6058,7 +5984,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp866_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6090,7 +6015,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_keybcs2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6122,7 +6046,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macce_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6154,7 +6077,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macroman_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6186,7 +6108,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp852_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6218,7 +6139,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6250,7 +6170,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macce_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6282,7 +6201,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6314,7 +6232,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1251_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6346,7 +6263,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_macroman_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6378,7 +6294,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1256_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6410,7 +6325,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1257_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6442,7 +6356,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1257_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6474,7 +6387,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_armscii8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6506,7 +6418,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_ascii_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6538,7 +6449,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1250_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6570,7 +6480,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp1256_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6602,7 +6511,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp866_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6634,7 +6542,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_dec8_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6666,7 +6573,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_greek_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6698,7 +6604,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hebrew_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6730,7 +6635,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_hp8_english_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6762,7 +6666,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_keybcs2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6794,7 +6697,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8r_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6826,7 +6728,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_koi8u_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6858,7 +6759,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin2_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6890,7 +6790,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin5_turkish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6922,7 +6821,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_latin7_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6954,7 +6852,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp850_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -6986,7 +6883,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_cp852_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -7018,7 +6914,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_swe7_swedish_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -7050,7 +6945,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_geostd8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -7082,7 +6976,6 @@ struct charset_info_st compiled_charsets[] = { to_uni_geostd8_general_ci, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ @@ -7113,7 +7006,6 @@ struct charset_info_st compiled_charsets[] = { NULL, /* to_uni */ NULL, /* from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state map */ NULL, /* ident map */ 1, /* strxfrm_multiply*/ diff --git a/strings/ctype-gb2312.c b/strings/ctype-gb2312.c index 9e6ed3cfabe..f3e9c902389 100644 --- a/strings/ctype-gb2312.c +++ b/strings/ctype-gb2312.c @@ -822,7 +822,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_gb2312[256]= static MY_CASEFOLD_INFO my_casefold_gb2312= { 0xFFFF, - my_casefold_pages_gb2312 + my_casefold_pages_gb2312, + NULL /* ws */ }; @@ -6499,7 +6500,6 @@ struct charset_info_st my_charset_gb2312_chinese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gb2312,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6531,7 +6531,6 @@ struct charset_info_st my_charset_gb2312_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gb2312,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6563,7 +6562,6 @@ struct charset_info_st my_charset_gb2312_chinese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gb2312,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -6595,7 +6593,6 @@ struct charset_info_st my_charset_gb2312_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gb2312,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-gbk.c b/strings/ctype-gbk.c index a81e2465157..a22e6aa8d84 100644 --- a/strings/ctype-gbk.c +++ b/strings/ctype-gbk.c @@ -1006,7 +1006,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_gbk[256]= static MY_CASEFOLD_INFO my_casefold_gbk= { 0xFFFF, - my_casefold_pages_gbk + my_casefold_pages_gbk, + NULL /* ws */ }; @@ -10780,7 +10781,6 @@ struct charset_info_st my_charset_gbk_chinese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gbk, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10811,7 +10811,6 @@ struct charset_info_st my_charset_gbk_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gbk, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10843,7 +10842,6 @@ struct charset_info_st my_charset_gbk_chinese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gbk, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -10874,7 +10872,6 @@ struct charset_info_st my_charset_gbk_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_gbk, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-latin1.c b/strings/ctype-latin1.c index a0bee911af5..5d763c6a561 100644 --- a/strings/ctype-latin1.c +++ b/strings/ctype-latin1.c @@ -449,7 +449,6 @@ struct charset_info_st my_charset_latin1= cs_to_uni, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -481,7 +480,6 @@ struct charset_info_st my_charset_latin1_nopad= cs_to_uni, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -763,7 +761,6 @@ struct charset_info_st my_charset_latin1_german2_ci= cs_to_uni, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 2, /* strxfrm_multiply */ @@ -795,7 +792,6 @@ struct charset_info_st my_charset_latin1_bin= cs_to_uni, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -827,7 +823,6 @@ struct charset_info_st my_charset_latin1_nopad_bin= cs_to_uni, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-sjis.c b/strings/ctype-sjis.c index 1e3ef16bdb5..a5fed41b964 100644 --- a/strings/ctype-sjis.c +++ b/strings/ctype-sjis.c @@ -1076,7 +1076,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_sjis[256]= static MY_CASEFOLD_INFO my_casefold_sjis= { 0xFFFF, - my_casefold_pages_sjis + my_casefold_pages_sjis, + NULL /* ws */ }; @@ -34193,7 +34194,6 @@ struct charset_info_st my_charset_sjis_japanese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_sjis, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34224,7 +34224,6 @@ struct charset_info_st my_charset_sjis_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_sjis, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34256,7 +34255,6 @@ struct charset_info_st my_charset_sjis_japanese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_sjis, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -34287,7 +34285,6 @@ struct charset_info_st my_charset_sjis_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_sjis, /* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-tis620.c b/strings/ctype-tis620.c index 7ca33807fe4..0b728346f6a 100644 --- a/strings/ctype-tis620.c +++ b/strings/ctype-tis620.c @@ -957,7 +957,6 @@ struct charset_info_st my_charset_tis620_thai_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -988,7 +987,6 @@ struct charset_info_st my_charset_tis620_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -1020,7 +1018,6 @@ struct charset_info_st my_charset_tis620_thai_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -1052,7 +1049,6 @@ struct charset_info_st my_charset_tis620_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-uca.c b/strings/ctype-uca.c index 8e94a18a478..aa4d366208f 100644 --- a/strings/ctype-uca.c +++ b/strings/ctype-uca.c @@ -35,6 +35,7 @@ #include "strings_def.h" #include <m_ctype.h> #include "ctype-uca.h" +#include "ctype-unidata.h" #include "my_bit.h" typedef struct @@ -34611,8 +34612,8 @@ my_coll_init_uca(struct charset_info_st *cs, MY_CHARSET_LOADER *loader) { cs->pad_char= ' '; cs->m_ctype= my_charset_utf8mb3_unicode_ci.m_ctype; - if (!cs->caseinfo) - cs->caseinfo= &my_unicase_default; + if (!cs->casefold) + cs->casefold= &my_casefold_default; return create_tailoring(cs, loader); } @@ -34762,23 +34763,23 @@ create_tailoring(struct charset_info_st *cs, if (rules.version == 520) /* Unicode-5.2.0 requested */ { src_uca= &my_uca_v520; - cs->caseinfo= &my_unicase_unicode520; + cs->casefold= &my_casefold_unicode520; } else if (rules.version == 1400) /* Unicode-14.0.0 */ { src_uca= &my_uca_v1400; - cs->caseinfo= &my_unicase_unicode520; + cs->casefold= &my_casefold_unicode1400; } else if (rules.version == 400) /* Unicode-4.0.0 requested */ { src_uca= &my_uca_v400; - cs->caseinfo= &my_unicase_default; + cs->casefold= &my_casefold_default; } else /* No Unicode version specified */ { src_uca= cs->uca ? cs->uca : &my_uca_v400; - if (!cs->caseinfo) - cs->caseinfo= &my_unicase_default; + if (!cs->casefold) + cs->casefold= &my_casefold_default; } if (rules.strength) my_ci_set_strength(cs, rules.strength); @@ -34855,8 +34856,7 @@ struct charset_info_st my_charset_ucs2_unicode_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -34886,8 +34886,7 @@ struct charset_info_st my_charset_ucs2_icelandic_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -34917,8 +34916,7 @@ struct charset_info_st my_charset_ucs2_latvian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -34948,8 +34946,7 @@ struct charset_info_st my_charset_ucs2_romanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -34979,8 +34976,7 @@ struct charset_info_st my_charset_ucs2_slovenian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35010,8 +35006,7 @@ struct charset_info_st my_charset_ucs2_polish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35041,8 +35036,7 @@ struct charset_info_st my_charset_ucs2_estonian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35072,8 +35066,7 @@ struct charset_info_st my_charset_ucs2_spanish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35103,8 +35096,7 @@ struct charset_info_st my_charset_ucs2_swedish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35134,8 +35126,7 @@ struct charset_info_st my_charset_ucs2_turkish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_turkish,/* caseinfo */ + &my_casefold_turkish,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35165,8 +35156,7 @@ struct charset_info_st my_charset_ucs2_czech_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35197,8 +35187,7 @@ struct charset_info_st my_charset_ucs2_danish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35228,8 +35217,7 @@ struct charset_info_st my_charset_ucs2_lithuanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35259,8 +35247,7 @@ struct charset_info_st my_charset_ucs2_slovak_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35290,8 +35277,7 @@ struct charset_info_st my_charset_ucs2_spanish2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35322,8 +35308,7 @@ struct charset_info_st my_charset_ucs2_roman_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35354,8 +35339,7 @@ struct charset_info_st my_charset_ucs2_persian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35386,8 +35370,7 @@ struct charset_info_st my_charset_ucs2_esperanto_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35418,8 +35401,7 @@ struct charset_info_st my_charset_ucs2_hungarian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35449,8 +35431,7 @@ struct charset_info_st my_charset_ucs2_sinhala_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35482,8 +35463,7 @@ struct charset_info_st my_charset_ucs2_german2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35513,8 +35493,7 @@ struct charset_info_st my_charset_ucs2_croatian_mysql561_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35545,8 +35524,7 @@ struct charset_info_st my_charset_ucs2_croatian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35577,8 +35555,7 @@ struct charset_info_st my_charset_ucs2_myanmar_uca_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35609,8 +35586,7 @@ struct charset_info_st my_charset_ucs2_thai_520_w2= &my_uca_v520_th, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -35640,8 +35616,7 @@ struct charset_info_st my_charset_ucs2_unicode_520_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35672,8 +35647,7 @@ struct charset_info_st my_charset_ucs2_vietnamese_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35704,8 +35678,7 @@ struct charset_info_st my_charset_ucs2_unicode_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35736,8 +35709,7 @@ struct charset_info_st my_charset_ucs2_unicode_520_nopad_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520, /* caseinfo */ + &my_casefold_unicode520, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35837,8 +35809,7 @@ struct charset_info_st my_charset_utf8mb3_unicode_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35869,8 +35840,7 @@ struct charset_info_st my_charset_utf8mb3_icelandic_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35900,8 +35870,7 @@ struct charset_info_st my_charset_utf8mb3_latvian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35931,8 +35900,7 @@ struct charset_info_st my_charset_utf8mb3_romanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35962,8 +35930,7 @@ struct charset_info_st my_charset_utf8mb3_slovenian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -35993,8 +35960,7 @@ struct charset_info_st my_charset_utf8mb3_polish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36024,8 +35990,7 @@ struct charset_info_st my_charset_utf8mb3_estonian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36055,8 +36020,7 @@ struct charset_info_st my_charset_utf8mb3_spanish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36086,8 +36050,7 @@ struct charset_info_st my_charset_utf8mb3_swedish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36117,8 +36080,7 @@ struct charset_info_st my_charset_utf8mb3_turkish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_turkish,/* caseinfo */ + &my_casefold_turkish,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36148,8 +36110,7 @@ struct charset_info_st my_charset_utf8mb3_czech_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36180,8 +36141,7 @@ struct charset_info_st my_charset_utf8mb3_danish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36211,8 +36171,7 @@ struct charset_info_st my_charset_utf8mb3_lithuanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36242,8 +36201,7 @@ struct charset_info_st my_charset_utf8mb3_slovak_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36273,8 +36231,7 @@ struct charset_info_st my_charset_utf8mb3_spanish2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36304,8 +36261,7 @@ struct charset_info_st my_charset_utf8mb3_roman_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36335,8 +36291,7 @@ struct charset_info_st my_charset_utf8mb3_persian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36366,8 +36321,7 @@ struct charset_info_st my_charset_utf8mb3_esperanto_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36397,8 +36351,7 @@ struct charset_info_st my_charset_utf8mb3_hungarian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36428,8 +36381,7 @@ struct charset_info_st my_charset_utf8mb3_sinhala_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36460,8 +36412,7 @@ struct charset_info_st my_charset_utf8mb3_german2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36491,8 +36442,7 @@ struct charset_info_st my_charset_utf8mb3_croatian_mysql561_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36523,8 +36473,7 @@ struct charset_info_st my_charset_utf8mb3_croatian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36555,8 +36504,7 @@ struct charset_info_st my_charset_utf8mb3_myanmar_uca_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36587,8 +36535,7 @@ struct charset_info_st my_charset_utf8mb3_unicode_520_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36618,8 +36565,7 @@ struct charset_info_st my_charset_utf8mb3_thai_520_w2= &my_uca_v520_th, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -36649,8 +36595,7 @@ struct charset_info_st my_charset_utf8mb3_vietnamese_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36681,8 +36626,7 @@ struct charset_info_st my_charset_utf8mb3_unicode_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36713,8 +36657,7 @@ struct charset_info_st my_charset_utf8mb3_unicode_520_nopad_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520, /* caseinfo */ + &my_casefold_unicode520, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36787,8 +36730,7 @@ struct charset_info_st my_charset_utf8mb4_unicode_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36819,8 +36761,7 @@ struct charset_info_st my_charset_utf8mb4_icelandic_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36850,8 +36791,7 @@ struct charset_info_st my_charset_utf8mb4_latvian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36881,8 +36821,7 @@ struct charset_info_st my_charset_utf8mb4_romanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36912,8 +36851,7 @@ struct charset_info_st my_charset_utf8mb4_slovenian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36943,8 +36881,7 @@ struct charset_info_st my_charset_utf8mb4_polish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -36974,8 +36911,7 @@ struct charset_info_st my_charset_utf8mb4_estonian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37005,8 +36941,7 @@ struct charset_info_st my_charset_utf8mb4_spanish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37036,8 +36971,7 @@ struct charset_info_st my_charset_utf8mb4_swedish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37067,8 +37001,7 @@ struct charset_info_st my_charset_utf8mb4_turkish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_turkish, /* caseinfo */ + &my_casefold_turkish,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37098,8 +37031,7 @@ struct charset_info_st my_charset_utf8mb4_czech_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37130,8 +37062,7 @@ struct charset_info_st my_charset_utf8mb4_danish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37161,8 +37092,7 @@ struct charset_info_st my_charset_utf8mb4_lithuanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37192,8 +37122,7 @@ struct charset_info_st my_charset_utf8mb4_slovak_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37223,8 +37152,7 @@ struct charset_info_st my_charset_utf8mb4_spanish2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37254,8 +37182,7 @@ struct charset_info_st my_charset_utf8mb4_roman_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37285,8 +37212,7 @@ struct charset_info_st my_charset_utf8mb4_persian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37316,8 +37242,7 @@ struct charset_info_st my_charset_utf8mb4_esperanto_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37347,8 +37272,7 @@ struct charset_info_st my_charset_utf8mb4_hungarian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37378,8 +37302,7 @@ struct charset_info_st my_charset_utf8mb4_sinhala_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37409,8 +37332,7 @@ struct charset_info_st my_charset_utf8mb4_german2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37440,8 +37362,7 @@ struct charset_info_st my_charset_utf8mb4_croatian_mysql561_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37472,8 +37393,7 @@ struct charset_info_st my_charset_utf8mb4_croatian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37504,8 +37424,7 @@ struct charset_info_st my_charset_utf8mb4_myanmar_uca_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37535,8 +37454,7 @@ struct charset_info_st my_charset_utf8mb4_thai_520_w2= &my_uca_v520_th, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -37566,8 +37484,7 @@ struct charset_info_st my_charset_utf8mb4_unicode_520_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37598,8 +37515,7 @@ struct charset_info_st my_charset_utf8mb4_vietnamese_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37630,8 +37546,7 @@ struct charset_info_st my_charset_utf8mb4_unicode_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37662,8 +37577,7 @@ struct charset_info_st my_charset_utf8mb4_unicode_520_nopad_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520, /* caseinfo */ + &my_casefold_unicode520, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37713,8 +37627,7 @@ struct charset_info_st my_charset_utf32_unicode_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37745,8 +37658,7 @@ struct charset_info_st my_charset_utf32_icelandic_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37776,8 +37688,7 @@ struct charset_info_st my_charset_utf32_latvian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37807,8 +37718,7 @@ struct charset_info_st my_charset_utf32_romanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37838,8 +37748,7 @@ struct charset_info_st my_charset_utf32_slovenian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37869,8 +37778,7 @@ struct charset_info_st my_charset_utf32_polish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37900,8 +37808,7 @@ struct charset_info_st my_charset_utf32_estonian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37931,8 +37838,7 @@ struct charset_info_st my_charset_utf32_spanish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37962,8 +37868,7 @@ struct charset_info_st my_charset_utf32_swedish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -37993,8 +37898,7 @@ struct charset_info_st my_charset_utf32_turkish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_turkish, /* caseinfo */ + &my_casefold_turkish,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38024,8 +37928,7 @@ struct charset_info_st my_charset_utf32_czech_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38056,8 +37959,7 @@ struct charset_info_st my_charset_utf32_danish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38087,8 +37989,7 @@ struct charset_info_st my_charset_utf32_lithuanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38118,8 +38019,7 @@ struct charset_info_st my_charset_utf32_slovak_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38149,8 +38049,7 @@ struct charset_info_st my_charset_utf32_spanish2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38180,8 +38079,7 @@ struct charset_info_st my_charset_utf32_roman_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38211,8 +38109,7 @@ struct charset_info_st my_charset_utf32_persian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38242,8 +38139,7 @@ struct charset_info_st my_charset_utf32_esperanto_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38273,8 +38169,7 @@ struct charset_info_st my_charset_utf32_hungarian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38304,8 +38199,7 @@ struct charset_info_st my_charset_utf32_sinhala_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38335,8 +38229,7 @@ struct charset_info_st my_charset_utf32_german2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38366,8 +38259,7 @@ struct charset_info_st my_charset_utf32_croatian_mysql561_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38397,8 +38289,7 @@ struct charset_info_st my_charset_utf32_croatian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38429,8 +38320,7 @@ struct charset_info_st my_charset_utf32_myanmar_uca_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38461,8 +38351,7 @@ struct charset_info_st my_charset_utf32_thai_520_w2= &my_uca_v520_th, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -38493,8 +38382,7 @@ struct charset_info_st my_charset_utf32_unicode_520_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38525,8 +38413,7 @@ struct charset_info_st my_charset_utf32_vietnamese_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38557,8 +38444,7 @@ struct charset_info_st my_charset_utf32_unicode_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38589,8 +38475,7 @@ struct charset_info_st my_charset_utf32_unicode_520_nopad_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520, /* caseinfo */ + &my_casefold_unicode520, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38641,8 +38526,7 @@ struct charset_info_st my_charset_utf16_unicode_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38673,8 +38557,7 @@ struct charset_info_st my_charset_utf16_icelandic_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38704,8 +38587,7 @@ struct charset_info_st my_charset_utf16_latvian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38735,8 +38617,7 @@ struct charset_info_st my_charset_utf16_romanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38766,8 +38647,7 @@ struct charset_info_st my_charset_utf16_slovenian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38797,8 +38677,7 @@ struct charset_info_st my_charset_utf16_polish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38828,8 +38707,7 @@ struct charset_info_st my_charset_utf16_estonian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38859,8 +38737,7 @@ struct charset_info_st my_charset_utf16_spanish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38890,8 +38767,7 @@ struct charset_info_st my_charset_utf16_swedish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38921,8 +38797,7 @@ struct charset_info_st my_charset_utf16_turkish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_turkish, /* caseinfo */ + &my_casefold_turkish,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38952,8 +38827,7 @@ struct charset_info_st my_charset_utf16_czech_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -38984,8 +38858,7 @@ struct charset_info_st my_charset_utf16_danish_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39015,8 +38888,7 @@ struct charset_info_st my_charset_utf16_lithuanian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39046,8 +38918,7 @@ struct charset_info_st my_charset_utf16_slovak_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39077,8 +38948,7 @@ struct charset_info_st my_charset_utf16_spanish2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39108,8 +38978,7 @@ struct charset_info_st my_charset_utf16_roman_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39139,8 +39008,7 @@ struct charset_info_st my_charset_utf16_persian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39170,8 +39038,7 @@ struct charset_info_st my_charset_utf16_esperanto_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39201,8 +39068,7 @@ struct charset_info_st my_charset_utf16_hungarian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39232,8 +39098,7 @@ struct charset_info_st my_charset_utf16_sinhala_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39263,8 +39128,7 @@ struct charset_info_st my_charset_utf16_german2_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39295,8 +39159,7 @@ struct charset_info_st my_charset_utf16_croatian_mysql561_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39327,8 +39190,7 @@ struct charset_info_st my_charset_utf16_croatian_uca_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39359,8 +39221,7 @@ struct charset_info_st my_charset_utf16_myanmar_uca_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold*/ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39391,8 +39252,7 @@ struct charset_info_st my_charset_utf16_thai_520_w2= &my_uca_v520_th, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold*/ NULL, /* state_map */ NULL, /* ident_map */ 4, /* strxfrm_multiply */ @@ -39423,8 +39283,7 @@ struct charset_info_st my_charset_utf16_unicode_520_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520,/* caseinfo */ + &my_casefold_unicode520,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39455,8 +39314,7 @@ struct charset_info_st my_charset_utf16_vietnamese_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39487,8 +39345,7 @@ struct charset_info_st my_charset_utf16_unicode_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39519,8 +39376,7 @@ struct charset_info_st my_charset_utf16_unicode_520_nopad_ci= &my_uca_v520, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_unicode520, /* caseinfo */ + &my_casefold_unicode520, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 8, /* strxfrm_multiply */ @@ -39599,9 +39455,9 @@ my_uca1400_collation_definition_init(MY_CHARSET_LOADER *loader, dst->uca= &my_uca_v1400; dst->tailoring= def->tailoring; if (def->tailoring == turkish) - dst->caseinfo= &my_unicase_turkish; /*TODO: unicase_1400_turkish */ + dst->casefold= &my_casefold_unicode1400tr; else - dst->caseinfo= &my_unicase_unicode520; /*TODO: unicase_1400*/ + dst->casefold= &my_casefold_unicode1400; if (nopad) dst->state|= MY_CS_NOPAD; my_ci_set_level_flags(dst, (1 << MY_CS_LEVEL_BIT_PRIMARY) | diff --git a/strings/ctype-ucs2.c b/strings/ctype-ucs2.c index 4b29d656731..5d67762ac2f 100644 --- a/strings/ctype-ucs2.c +++ b/strings/ctype-ucs2.c @@ -1197,17 +1197,14 @@ my_lengthsp_mb2(CHARSET_INFO *cs __attribute__((unused)), static inline int my_weight_mb2_utf16mb2_general_ci(uchar b0, uchar b1) { my_wc_t wc= MY_UTF16_WC2(b0, b1); - MY_UNICASE_CHARACTER *page= my_unicase_default_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); + return my_general_ci_bmp_char_to_weight((uint16) wc); } #define MY_FUNCTION_NAME(x) my_ ## x ## _utf16_general_ci #define DEFINE_STRNXFRM_UNICODE #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_utf16_quick(pwc, s, e) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB2(b0,b1) my_weight_mb2_utf16mb2_general_ci(b0,b1) #define WEIGHT_MB4(b0,b1,b2,b3) MY_CS_REPLACEMENT_CHARACTER @@ -1284,40 +1281,6 @@ my_uni_utf16(CHARSET_INFO *cs __attribute__((unused)), const char charset_name_utf16le[]= "utf16le"; #define charset_name_utf16le_length (sizeof(charset_name_utf16le)-1) -static inline void -my_tolower_utf16(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((*wc <= uni_plane->maxchar) && (page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].tolower; -} - - -static inline void -my_toupper_utf16(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((*wc <= uni_plane->maxchar) && (page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].toupper; -} - - -static inline void -my_tosort_utf16(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - if (*wc <= uni_plane->maxchar) - { - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].sort; - } - else - { - *wc= MY_CS_REPLACEMENT_CHARACTER; - } -} - - static size_t my_caseup_utf16(CHARSET_INFO *cs, const char *src, size_t srclen, @@ -1329,13 +1292,13 @@ my_caseup_utf16(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((src < srcend) && (res= mb_wc(cs, &wc, (uchar *) src, (uchar *) srcend)) > 0) { - my_toupper_utf16(uni_plane, &wc); + my_toupper_unicode(uni_plane, &wc); if (res != wc_mb(cs, wc, (uchar *) dst, (uchar *) dstend)) break; src+= res; @@ -1354,12 +1317,12 @@ my_hash_sort_utf16_nopad(CHARSET_INFO *cs, my_charset_conv_mb_wc mb_wc= cs->cset->mb_wc; int res; const uchar *e= s + slen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; register ulong m1= *nr1, m2= *nr2; while ((s < e) && (res= mb_wc(cs, &wc, (uchar *) s, (uchar *) e)) > 0) { - my_tosort_utf16(uni_plane, &wc); + my_tosort_unicode(uni_plane, &wc); MY_HASH_ADD_16(m1, m2, wc); s+= res; } @@ -1387,13 +1350,13 @@ my_casedn_utf16(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((src < srcend) && (res= mb_wc(cs, &wc, (uchar *) src, (uchar *) srcend)) > 0) { - my_tolower_utf16(uni_plane, &wc); + my_tolower_unicode(uni_plane, &wc); if (res != wc_mb(cs, wc, (uchar *) dst, (uchar *) dstend)) break; src+= res; @@ -1459,7 +1422,7 @@ my_wildcmp_utf16_ci(CHARSET_INFO *cs, const char *wildstr,const char *wildend, int escape, int w_one, int w_many) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; return my_wildcmp_unicode(cs, str, str_end, wildstr, wildend, escape, w_one, w_many, uni_plane); } @@ -1637,8 +1600,7 @@ struct charset_info_st my_charset_utf16_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -1669,8 +1631,7 @@ struct charset_info_st my_charset_utf16_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -1701,8 +1662,7 @@ struct charset_info_st my_charset_utf16_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -1734,8 +1694,7 @@ struct charset_info_st my_charset_utf16_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -1759,9 +1718,7 @@ struct charset_info_st my_charset_utf16_nopad_bin= #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) (my_ci_mb_wc(cs, pwc, s, e)) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB2(b0,b1) my_weight_mb2_utf16mb2_general_ci(b1,b0) #define WEIGHT_MB4(b0,b1,b2,b3) MY_CS_REPLACEMENT_CHARACTER @@ -1996,8 +1953,7 @@ struct charset_info_st my_charset_utf16le_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2028,8 +1984,7 @@ struct charset_info_st my_charset_utf16le_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2060,8 +2015,7 @@ struct charset_info_st my_charset_utf16le_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2093,8 +2047,7 @@ struct charset_info_st my_charset_utf16le_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2130,21 +2083,14 @@ static inline int my_weight_utf32_general_ci(uchar b0, uchar b1, uchar b2, uchar b3) { my_wc_t wc= MY_UTF32_WC4(b0, b1, b2, b3); - if (wc <= 0xFFFF) - { - MY_UNICASE_CHARACTER *page= my_unicase_default_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); - } - return MY_CS_REPLACEMENT_CHARACTER; + return my_general_ci_char_to_weight(wc); } #define MY_FUNCTION_NAME(x) my_ ## x ## _utf32_general_ci #define DEFINE_STRNXFRM_UNICODE #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_utf32_quick(pwc, s, e) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB4(b0,b1,b2,b3) my_weight_utf32_general_ci(b0, b1, b2, b3) #include "strcoll.inl" @@ -2196,40 +2142,6 @@ my_uni_utf32(CHARSET_INFO *cs __attribute__((unused)), } -static inline void -my_tolower_utf32(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((*wc <= uni_plane->maxchar) && (page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].tolower; -} - - -static inline void -my_toupper_utf32(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((*wc <= uni_plane->maxchar) && (page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].toupper; -} - - -static inline void -my_tosort_utf32(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - if (*wc <= uni_plane->maxchar) - { - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[*wc >> 8])) - *wc= page[*wc & 0xFF].sort; - } - else - { - *wc= MY_CS_REPLACEMENT_CHARACTER; - } -} - - static size_t my_lengthsp_utf32(CHARSET_INFO *cs __attribute__((unused)), const char *ptr, size_t length) @@ -2250,13 +2162,13 @@ my_caseup_utf32(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((src < srcend) && (res= my_utf32_uni(cs, &wc, (uchar *)src, (uchar*) srcend)) > 0) { - my_toupper_utf32(uni_plane, &wc); + my_toupper_unicode(uni_plane, &wc); if (res != my_uni_utf32(cs, wc, (uchar*) dst, (uchar*) dstend)) break; src+= res; @@ -2273,12 +2185,12 @@ my_hash_sort_utf32_nopad(CHARSET_INFO *cs, const uchar *s, size_t slen, my_wc_t wc; int res; const uchar *e= s + slen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; register ulong m1= *nr1, m2= *nr2; while ((res= my_utf32_uni(cs, &wc, (uchar*) s, (uchar*) e)) > 0) { - my_tosort_utf32(uni_plane, &wc); + my_tosort_unicode(uni_plane, &wc); MY_HASH_ADD(m1, m2, (uint) (wc >> 24)); MY_HASH_ADD(m1, m2, (uint) (wc >> 16) & 0xFF); MY_HASH_ADD(m1, m2, (uint) (wc >> 8) & 0xFF); @@ -2307,12 +2219,12 @@ my_casedn_utf32(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((res= my_utf32_uni(cs, &wc, (uchar*) src, (uchar*) srcend)) > 0) { - my_tolower_utf32(uni_plane,&wc); + my_tolower_unicode(uni_plane,&wc); if (res != my_uni_utf32(cs, wc, (uchar*) dst, (uchar*) dstend)) break; src+= res; @@ -2661,7 +2573,7 @@ my_wildcmp_utf32_ci(CHARSET_INFO *cs, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; return my_wildcmp_unicode(cs, str, str_end, wildstr, wildend, escape, w_one, w_many, uni_plane); } @@ -2840,8 +2752,7 @@ struct charset_info_st my_charset_utf32_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2872,8 +2783,7 @@ struct charset_info_st my_charset_utf32_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2904,8 +2814,7 @@ struct charset_info_st my_charset_utf32_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -2937,8 +2846,7 @@ struct charset_info_st my_charset_utf32_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -3028,16 +2936,14 @@ static const uchar to_upper_ucs2[] = { static inline int my_weight_mb2_ucs2_general_ci(uchar b0, uchar b1) { my_wc_t wc= UCS2_CODE(b0, b1); - MY_UNICASE_CHARACTER *page= my_unicase_default_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); + return my_general_ci_bmp_char_to_weight((uint16) wc); } static inline int my_weight_mb2_ucs2_general_mysql500_ci(uchar b0, uchar b1) { my_wc_t wc= UCS2_CODE(b0, b1); - MY_UNICASE_CHARACTER *page= my_unicase_mysql500_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); + return my_general_mysql500_ci_bmp_char_to_weight((uint16) wc); } @@ -3046,21 +2952,18 @@ static inline int my_weight_mb2_ucs2_general_mysql500_ci(uchar b0, uchar b1) #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_ucs2_quick(pwc, s, e) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_bmp_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB2(b0,b1) my_weight_mb2_ucs2_general_ci(b0,b1) #include "strcoll.inl" + #define MY_FUNCTION_NAME(x) my_ ## x ## _ucs2_general_mysql500_ci #define DEFINE_STRNXFRM_UNICODE #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_ucs2_quick(pwc, s, e) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_mysql500_page00 -#define UNICASE_PAGES my_unicase_mysql500_pages +#define MY_WC_WEIGHT(x) my_general_mysql500_ci_bmp_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB2(b0,b1) my_weight_mb2_ucs2_general_mysql500_ci(b0,b1) #include "strcoll.inl" @@ -3118,32 +3021,6 @@ static int my_uni_ucs2(CHARSET_INFO *cs __attribute__((unused)) , } -static inline void -my_tolower_ucs2(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8) & 0xFF])) - *wc= page[*wc & 0xFF].tolower; -} - - -static inline void -my_toupper_ucs2(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8) & 0xFF])) - *wc= page[*wc & 0xFF].toupper; -} - - -static inline void -my_tosort_ucs2(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8) & 0xFF])) - *wc= page[*wc & 0xFF].sort; -} - static size_t my_caseup_ucs2(CHARSET_INFO *cs, const char *src, size_t srclen, char *dst, size_t dstlen) { @@ -3151,13 +3028,13 @@ static size_t my_caseup_ucs2(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((src < srcend) && (res= my_ucs2_uni(cs, &wc, (uchar *)src, (uchar*) srcend)) > 0) { - my_toupper_ucs2(uni_plane, &wc); + my_toupper_unicode_bmp(uni_plane, &wc); if (res != my_uni_ucs2(cs, wc, (uchar*) dst, (uchar*) dstend)) break; src+= res; @@ -3174,12 +3051,12 @@ my_hash_sort_ucs2_nopad(CHARSET_INFO *cs, const uchar *s, size_t slen, my_wc_t wc; int res; const uchar *e=s+slen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; register ulong m1= *nr1, m2= *nr2; while ((s < e) && (res=my_ucs2_uni(cs,&wc, (uchar *)s, (uchar*)e)) >0) { - my_tosort_ucs2(uni_plane, &wc); + my_tosort_unicode_bmp(uni_plane, &wc); MY_HASH_ADD_16(m1, m2, wc); s+=res; } @@ -3202,13 +3079,13 @@ static size_t my_casedn_ucs2(CHARSET_INFO *cs, const char *src, size_t srclen, int res; const char *srcend= src + srclen; char *dstend= dst + dstlen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(srclen <= dstlen); while ((src < srcend) && (res= my_ucs2_uni(cs, &wc, (uchar*) src, (uchar*) srcend)) > 0) { - my_tolower_ucs2(uni_plane, &wc); + my_tolower_unicode_bmp(uni_plane, &wc); if (res != my_uni_ucs2(cs, wc, (uchar*) dst, (uchar*) dstend)) break; src+= res; @@ -3292,7 +3169,7 @@ int my_wildcmp_ucs2_ci(CHARSET_INFO *cs, const char *wildstr,const char *wildend, int escape, int w_one, int w_many) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; return my_wildcmp_unicode(cs,str,str_end,wildstr,wildend, escape,w_one,w_many,uni_plane); } @@ -3490,8 +3367,7 @@ struct charset_info_st my_charset_ucs2_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -3522,8 +3398,7 @@ struct charset_info_st my_charset_ucs2_general_mysql500_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_mysql500, /* caseinfo */ + &my_casefold_mysql500, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -3554,8 +3429,7 @@ struct charset_info_st my_charset_ucs2_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -3586,8 +3460,7 @@ struct charset_info_st my_charset_ucs2_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -3618,8 +3491,7 @@ struct charset_info_st my_charset_ucs2_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-ujis.c b/strings/ctype-ujis.c index 76f000e9ed6..a5624a8c341 100644 --- a/strings/ctype-ujis.c +++ b/strings/ctype-ujis.c @@ -67140,7 +67140,8 @@ static const MY_CASEFOLD_CHARACTER *my_casefold_pages_ujis[512]= static MY_CASEFOLD_INFO my_casefold_info_ujis= { 0x0FFFF, - my_casefold_pages_ujis + my_casefold_pages_ujis, + NULL /* ws */ }; @@ -67378,7 +67379,6 @@ struct charset_info_st my_charset_ujis_japanese_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_info_ujis,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67410,7 +67410,6 @@ struct charset_info_st my_charset_ujis_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_info_ujis,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67442,7 +67441,6 @@ struct charset_info_st my_charset_ujis_japanese_nopad_ci= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_info_ujis,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -67474,7 +67472,6 @@ struct charset_info_st my_charset_ujis_nopad_bin= NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ &my_casefold_info_ujis,/* casefold */ - NULL, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-unicode1400-casefold-tr.h b/strings/ctype-unicode1400-casefold-tr.h new file mode 100644 index 00000000000..25e1b5d3d59 --- /dev/null +++ b/strings/ctype-unicode1400-casefold-tr.h @@ -0,0 +1,704 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=casefold-tr \ + --page-name=u1400tr_casefold_page \ + --page-name-derived=u1400_casefold_page \ + --index-name=my_u1400tr_casefold_index \ + UnicodeData-14.0.0.txt + +*/ +const MY_CASEFOLD_CHARACTER u1400tr_casefold_page00[256]={ + {0x0000,0x0000},{0x0001,0x0001}, /* 0000 */ + {0x0002,0x0002},{0x0003,0x0003}, /* 0002 */ + {0x0004,0x0004},{0x0005,0x0005}, /* 0004 */ + {0x0006,0x0006},{0x0007,0x0007}, /* 0006 */ + {0x0008,0x0008},{0x0009,0x0009}, /* 0008 */ + {0x000A,0x000A},{0x000B,0x000B}, /* 000A */ + {0x000C,0x000C},{0x000D,0x000D}, /* 000C */ + {0x000E,0x000E},{0x000F,0x000F}, /* 000E */ + {0x0010,0x0010},{0x0011,0x0011}, /* 0010 */ + {0x0012,0x0012},{0x0013,0x0013}, /* 0012 */ + {0x0014,0x0014},{0x0015,0x0015}, /* 0014 */ + {0x0016,0x0016},{0x0017,0x0017}, /* 0016 */ + {0x0018,0x0018},{0x0019,0x0019}, /* 0018 */ + {0x001A,0x001A},{0x001B,0x001B}, /* 001A */ + {0x001C,0x001C},{0x001D,0x001D}, /* 001C */ + {0x001E,0x001E},{0x001F,0x001F}, /* 001E */ + {0x0020,0x0020},{0x0021,0x0021}, /* 0020 */ + {0x0022,0x0022},{0x0023,0x0023}, /* 0022 */ + {0x0024,0x0024},{0x0025,0x0025}, /* 0024 */ + {0x0026,0x0026},{0x0027,0x0027}, /* 0026 */ + {0x0028,0x0028},{0x0029,0x0029}, /* 0028 */ + {0x002A,0x002A},{0x002B,0x002B}, /* 002A */ + {0x002C,0x002C},{0x002D,0x002D}, /* 002C */ + {0x002E,0x002E},{0x002F,0x002F}, /* 002E */ + {0x0030,0x0030},{0x0031,0x0031}, /* 0030 */ + {0x0032,0x0032},{0x0033,0x0033}, /* 0032 */ + {0x0034,0x0034},{0x0035,0x0035}, /* 0034 */ + {0x0036,0x0036},{0x0037,0x0037}, /* 0036 */ + {0x0038,0x0038},{0x0039,0x0039}, /* 0038 */ + {0x003A,0x003A},{0x003B,0x003B}, /* 003A */ + {0x003C,0x003C},{0x003D,0x003D}, /* 003C */ + {0x003E,0x003E},{0x003F,0x003F}, /* 003E */ + {0x0040,0x0040},{0x0041,0x0061}, /* 0040 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0042 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0044 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0046 */ + {0x0048,0x0068},{0x0049,0x0131}, /* 0048 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 004A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 004C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 004E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0050 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0052 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0054 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0056 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0058 */ + {0x005A,0x007A},{0x005B,0x005B}, /* 005A */ + {0x005C,0x005C},{0x005D,0x005D}, /* 005C */ + {0x005E,0x005E},{0x005F,0x005F}, /* 005E */ + {0x0060,0x0060},{0x0041,0x0061}, /* 0060 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0062 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0064 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0066 */ + {0x0048,0x0068},{0x0130,0x0069}, /* 0068 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 006A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 006C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 006E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0070 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0072 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0074 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0076 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0078 */ + {0x005A,0x007A},{0x007B,0x007B}, /* 007A */ + {0x007C,0x007C},{0x007D,0x007D}, /* 007C */ + {0x007E,0x007E},{0x007F,0x007F}, /* 007E */ + {0x0080,0x0080},{0x0081,0x0081}, /* 0080 */ + {0x0082,0x0082},{0x0083,0x0083}, /* 0082 */ + {0x0084,0x0084},{0x0085,0x0085}, /* 0084 */ + {0x0086,0x0086},{0x0087,0x0087}, /* 0086 */ + {0x0088,0x0088},{0x0089,0x0089}, /* 0088 */ + {0x008A,0x008A},{0x008B,0x008B}, /* 008A */ + {0x008C,0x008C},{0x008D,0x008D}, /* 008C */ + {0x008E,0x008E},{0x008F,0x008F}, /* 008E */ + {0x0090,0x0090},{0x0091,0x0091}, /* 0090 */ + {0x0092,0x0092},{0x0093,0x0093}, /* 0092 */ + {0x0094,0x0094},{0x0095,0x0095}, /* 0094 */ + {0x0096,0x0096},{0x0097,0x0097}, /* 0096 */ + {0x0098,0x0098},{0x0099,0x0099}, /* 0098 */ + {0x009A,0x009A},{0x009B,0x009B}, /* 009A */ + {0x009C,0x009C},{0x009D,0x009D}, /* 009C */ + {0x009E,0x009E},{0x009F,0x009F}, /* 009E */ + {0x00A0,0x00A0},{0x00A1,0x00A1}, /* 00A0 */ + {0x00A2,0x00A2},{0x00A3,0x00A3}, /* 00A2 */ + {0x00A4,0x00A4},{0x00A5,0x00A5}, /* 00A4 */ + {0x00A6,0x00A6},{0x00A7,0x00A7}, /* 00A6 */ + {0x00A8,0x00A8},{0x00A9,0x00A9}, /* 00A8 */ + {0x00AA,0x00AA},{0x00AB,0x00AB}, /* 00AA */ + {0x00AC,0x00AC},{0x00AD,0x00AD}, /* 00AC */ + {0x00AE,0x00AE},{0x00AF,0x00AF}, /* 00AE */ + {0x00B0,0x00B0},{0x00B1,0x00B1}, /* 00B0 */ + {0x00B2,0x00B2},{0x00B3,0x00B3}, /* 00B2 */ + {0x00B4,0x00B4},{0x039C,0x00B5}, /* 00B4 */ + {0x00B6,0x00B6},{0x00B7,0x00B7}, /* 00B6 */ + {0x00B8,0x00B8},{0x00B9,0x00B9}, /* 00B8 */ + {0x00BA,0x00BA},{0x00BB,0x00BB}, /* 00BA */ + {0x00BC,0x00BC},{0x00BD,0x00BD}, /* 00BC */ + {0x00BE,0x00BE},{0x00BF,0x00BF}, /* 00BE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00C0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00C2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00C4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00C6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00C8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00CA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00CC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00CE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00D0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00D2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00D4 */ + {0x00D6,0x00F6},{0x00D7,0x00D7}, /* 00D6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00D8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00DA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00DC */ + {0x00DE,0x00FE},{0x00DF,0x00DF}, /* 00DE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00E0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00E2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00E4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00E6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00E8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00EA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00EC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00EE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00F0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00F2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00F4 */ + {0x00D6,0x00F6},{0x00F7,0x00F7}, /* 00F6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00F8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00FA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00FC */ + {0x00DE,0x00FE},{0x0178,0x00FF} /* 00FE */ +}; + +const MY_CASEFOLD_CHARACTER * my_u1400tr_casefold_index[4352]={ + u1400tr_casefold_page00, u1400_casefold_page01, u1400_casefold_page02, u1400_casefold_page03, u1400_casefold_page04, u1400_casefold_page05, u1400_casefold_page06, u1400_casefold_page07, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + u1400_casefold_page10, NULL, NULL, u1400_casefold_page13, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page1C, u1400_casefold_page1D, u1400_casefold_page1E, u1400_casefold_page1F, + NULL, u1400_casefold_page21, NULL, NULL, u1400_casefold_page24, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page2C, u1400_casefold_page2D, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_pageA6, u1400_casefold_pageA7, + NULL, NULL, NULL, u1400_casefold_pageAB, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_pageFF, + NULL, NULL, NULL, NULL, u1400_casefold_page104, u1400_casefold_page105, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page10C, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + u1400_casefold_page118, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_page16E, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, u1400_casefold_page1E9, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL +}; diff --git a/strings/ctype-unicode1400-casefold.h b/strings/ctype-unicode1400-casefold.h new file mode 100644 index 00000000000..dae180d0157 --- /dev/null +++ b/strings/ctype-unicode1400-casefold.h @@ -0,0 +1,4240 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=casefold \ + --page-name=u1400_casefold_page \ + --index-name=my_u1400_casefold_index \ + UnicodeData-14.0.0.txt + +*/ +const MY_CASEFOLD_CHARACTER u1400_casefold_page00[256]={ + {0x0000,0x0000},{0x0001,0x0001}, /* 0000 */ + {0x0002,0x0002},{0x0003,0x0003}, /* 0002 */ + {0x0004,0x0004},{0x0005,0x0005}, /* 0004 */ + {0x0006,0x0006},{0x0007,0x0007}, /* 0006 */ + {0x0008,0x0008},{0x0009,0x0009}, /* 0008 */ + {0x000A,0x000A},{0x000B,0x000B}, /* 000A */ + {0x000C,0x000C},{0x000D,0x000D}, /* 000C */ + {0x000E,0x000E},{0x000F,0x000F}, /* 000E */ + {0x0010,0x0010},{0x0011,0x0011}, /* 0010 */ + {0x0012,0x0012},{0x0013,0x0013}, /* 0012 */ + {0x0014,0x0014},{0x0015,0x0015}, /* 0014 */ + {0x0016,0x0016},{0x0017,0x0017}, /* 0016 */ + {0x0018,0x0018},{0x0019,0x0019}, /* 0018 */ + {0x001A,0x001A},{0x001B,0x001B}, /* 001A */ + {0x001C,0x001C},{0x001D,0x001D}, /* 001C */ + {0x001E,0x001E},{0x001F,0x001F}, /* 001E */ + {0x0020,0x0020},{0x0021,0x0021}, /* 0020 */ + {0x0022,0x0022},{0x0023,0x0023}, /* 0022 */ + {0x0024,0x0024},{0x0025,0x0025}, /* 0024 */ + {0x0026,0x0026},{0x0027,0x0027}, /* 0026 */ + {0x0028,0x0028},{0x0029,0x0029}, /* 0028 */ + {0x002A,0x002A},{0x002B,0x002B}, /* 002A */ + {0x002C,0x002C},{0x002D,0x002D}, /* 002C */ + {0x002E,0x002E},{0x002F,0x002F}, /* 002E */ + {0x0030,0x0030},{0x0031,0x0031}, /* 0030 */ + {0x0032,0x0032},{0x0033,0x0033}, /* 0032 */ + {0x0034,0x0034},{0x0035,0x0035}, /* 0034 */ + {0x0036,0x0036},{0x0037,0x0037}, /* 0036 */ + {0x0038,0x0038},{0x0039,0x0039}, /* 0038 */ + {0x003A,0x003A},{0x003B,0x003B}, /* 003A */ + {0x003C,0x003C},{0x003D,0x003D}, /* 003C */ + {0x003E,0x003E},{0x003F,0x003F}, /* 003E */ + {0x0040,0x0040},{0x0041,0x0061}, /* 0040 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0042 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0044 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0046 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0048 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 004A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 004C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 004E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0050 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0052 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0054 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0056 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0058 */ + {0x005A,0x007A},{0x005B,0x005B}, /* 005A */ + {0x005C,0x005C},{0x005D,0x005D}, /* 005C */ + {0x005E,0x005E},{0x005F,0x005F}, /* 005E */ + {0x0060,0x0060},{0x0041,0x0061}, /* 0060 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0062 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0064 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0066 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0068 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 006A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 006C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 006E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0070 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0072 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0074 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0076 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0078 */ + {0x005A,0x007A},{0x007B,0x007B}, /* 007A */ + {0x007C,0x007C},{0x007D,0x007D}, /* 007C */ + {0x007E,0x007E},{0x007F,0x007F}, /* 007E */ + {0x0080,0x0080},{0x0081,0x0081}, /* 0080 */ + {0x0082,0x0082},{0x0083,0x0083}, /* 0082 */ + {0x0084,0x0084},{0x0085,0x0085}, /* 0084 */ + {0x0086,0x0086},{0x0087,0x0087}, /* 0086 */ + {0x0088,0x0088},{0x0089,0x0089}, /* 0088 */ + {0x008A,0x008A},{0x008B,0x008B}, /* 008A */ + {0x008C,0x008C},{0x008D,0x008D}, /* 008C */ + {0x008E,0x008E},{0x008F,0x008F}, /* 008E */ + {0x0090,0x0090},{0x0091,0x0091}, /* 0090 */ + {0x0092,0x0092},{0x0093,0x0093}, /* 0092 */ + {0x0094,0x0094},{0x0095,0x0095}, /* 0094 */ + {0x0096,0x0096},{0x0097,0x0097}, /* 0096 */ + {0x0098,0x0098},{0x0099,0x0099}, /* 0098 */ + {0x009A,0x009A},{0x009B,0x009B}, /* 009A */ + {0x009C,0x009C},{0x009D,0x009D}, /* 009C */ + {0x009E,0x009E},{0x009F,0x009F}, /* 009E */ + {0x00A0,0x00A0},{0x00A1,0x00A1}, /* 00A0 */ + {0x00A2,0x00A2},{0x00A3,0x00A3}, /* 00A2 */ + {0x00A4,0x00A4},{0x00A5,0x00A5}, /* 00A4 */ + {0x00A6,0x00A6},{0x00A7,0x00A7}, /* 00A6 */ + {0x00A8,0x00A8},{0x00A9,0x00A9}, /* 00A8 */ + {0x00AA,0x00AA},{0x00AB,0x00AB}, /* 00AA */ + {0x00AC,0x00AC},{0x00AD,0x00AD}, /* 00AC */ + {0x00AE,0x00AE},{0x00AF,0x00AF}, /* 00AE */ + {0x00B0,0x00B0},{0x00B1,0x00B1}, /* 00B0 */ + {0x00B2,0x00B2},{0x00B3,0x00B3}, /* 00B2 */ + {0x00B4,0x00B4},{0x039C,0x00B5}, /* 00B4 */ + {0x00B6,0x00B6},{0x00B7,0x00B7}, /* 00B6 */ + {0x00B8,0x00B8},{0x00B9,0x00B9}, /* 00B8 */ + {0x00BA,0x00BA},{0x00BB,0x00BB}, /* 00BA */ + {0x00BC,0x00BC},{0x00BD,0x00BD}, /* 00BC */ + {0x00BE,0x00BE},{0x00BF,0x00BF}, /* 00BE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00C0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00C2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00C4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00C6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00C8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00CA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00CC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00CE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00D0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00D2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00D4 */ + {0x00D6,0x00F6},{0x00D7,0x00D7}, /* 00D6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00D8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00DA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00DC */ + {0x00DE,0x00FE},{0x00DF,0x00DF}, /* 00DE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00E0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00E2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00E4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00E6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00E8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00EA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00EC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00EE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00F0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00F2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00F4 */ + {0x00D6,0x00F6},{0x00F7,0x00F7}, /* 00F6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00F8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00FA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00FC */ + {0x00DE,0x00FE},{0x0178,0x00FF} /* 00FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page01[256]={ + {0x0100,0x0101},{0x0100,0x0101}, /* 0100 */ + {0x0102,0x0103},{0x0102,0x0103}, /* 0102 */ + {0x0104,0x0105},{0x0104,0x0105}, /* 0104 */ + {0x0106,0x0107},{0x0106,0x0107}, /* 0106 */ + {0x0108,0x0109},{0x0108,0x0109}, /* 0108 */ + {0x010A,0x010B},{0x010A,0x010B}, /* 010A */ + {0x010C,0x010D},{0x010C,0x010D}, /* 010C */ + {0x010E,0x010F},{0x010E,0x010F}, /* 010E */ + {0x0110,0x0111},{0x0110,0x0111}, /* 0110 */ + {0x0112,0x0113},{0x0112,0x0113}, /* 0112 */ + {0x0114,0x0115},{0x0114,0x0115}, /* 0114 */ + {0x0116,0x0117},{0x0116,0x0117}, /* 0116 */ + {0x0118,0x0119},{0x0118,0x0119}, /* 0118 */ + {0x011A,0x011B},{0x011A,0x011B}, /* 011A */ + {0x011C,0x011D},{0x011C,0x011D}, /* 011C */ + {0x011E,0x011F},{0x011E,0x011F}, /* 011E */ + {0x0120,0x0121},{0x0120,0x0121}, /* 0120 */ + {0x0122,0x0123},{0x0122,0x0123}, /* 0122 */ + {0x0124,0x0125},{0x0124,0x0125}, /* 0124 */ + {0x0126,0x0127},{0x0126,0x0127}, /* 0126 */ + {0x0128,0x0129},{0x0128,0x0129}, /* 0128 */ + {0x012A,0x012B},{0x012A,0x012B}, /* 012A */ + {0x012C,0x012D},{0x012C,0x012D}, /* 012C */ + {0x012E,0x012F},{0x012E,0x012F}, /* 012E */ + {0x0130,0x0069},{0x0049,0x0131}, /* 0130 */ + {0x0132,0x0133},{0x0132,0x0133}, /* 0132 */ + {0x0134,0x0135},{0x0134,0x0135}, /* 0134 */ + {0x0136,0x0137},{0x0136,0x0137}, /* 0136 */ + {0x0138,0x0138},{0x0139,0x013A}, /* 0138 */ + {0x0139,0x013A},{0x013B,0x013C}, /* 013A */ + {0x013B,0x013C},{0x013D,0x013E}, /* 013C */ + {0x013D,0x013E},{0x013F,0x0140}, /* 013E */ + {0x013F,0x0140},{0x0141,0x0142}, /* 0140 */ + {0x0141,0x0142},{0x0143,0x0144}, /* 0142 */ + {0x0143,0x0144},{0x0145,0x0146}, /* 0144 */ + {0x0145,0x0146},{0x0147,0x0148}, /* 0146 */ + {0x0147,0x0148},{0x0149,0x0149}, /* 0148 */ + {0x014A,0x014B},{0x014A,0x014B}, /* 014A */ + {0x014C,0x014D},{0x014C,0x014D}, /* 014C */ + {0x014E,0x014F},{0x014E,0x014F}, /* 014E */ + {0x0150,0x0151},{0x0150,0x0151}, /* 0150 */ + {0x0152,0x0153},{0x0152,0x0153}, /* 0152 */ + {0x0154,0x0155},{0x0154,0x0155}, /* 0154 */ + {0x0156,0x0157},{0x0156,0x0157}, /* 0156 */ + {0x0158,0x0159},{0x0158,0x0159}, /* 0158 */ + {0x015A,0x015B},{0x015A,0x015B}, /* 015A */ + {0x015C,0x015D},{0x015C,0x015D}, /* 015C */ + {0x015E,0x015F},{0x015E,0x015F}, /* 015E */ + {0x0160,0x0161},{0x0160,0x0161}, /* 0160 */ + {0x0162,0x0163},{0x0162,0x0163}, /* 0162 */ + {0x0164,0x0165},{0x0164,0x0165}, /* 0164 */ + {0x0166,0x0167},{0x0166,0x0167}, /* 0166 */ + {0x0168,0x0169},{0x0168,0x0169}, /* 0168 */ + {0x016A,0x016B},{0x016A,0x016B}, /* 016A */ + {0x016C,0x016D},{0x016C,0x016D}, /* 016C */ + {0x016E,0x016F},{0x016E,0x016F}, /* 016E */ + {0x0170,0x0171},{0x0170,0x0171}, /* 0170 */ + {0x0172,0x0173},{0x0172,0x0173}, /* 0172 */ + {0x0174,0x0175},{0x0174,0x0175}, /* 0174 */ + {0x0176,0x0177},{0x0176,0x0177}, /* 0176 */ + {0x0178,0x00FF},{0x0179,0x017A}, /* 0178 */ + {0x0179,0x017A},{0x017B,0x017C}, /* 017A */ + {0x017B,0x017C},{0x017D,0x017E}, /* 017C */ + {0x017D,0x017E},{0x0053,0x017F}, /* 017E */ + {0x0243,0x0180},{0x0181,0x0253}, /* 0180 */ + {0x0182,0x0183},{0x0182,0x0183}, /* 0182 */ + {0x0184,0x0185},{0x0184,0x0185}, /* 0184 */ + {0x0186,0x0254},{0x0187,0x0188}, /* 0186 */ + {0x0187,0x0188},{0x0189,0x0256}, /* 0188 */ + {0x018A,0x0257},{0x018B,0x018C}, /* 018A */ + {0x018B,0x018C},{0x018D,0x018D}, /* 018C */ + {0x018E,0x01DD},{0x018F,0x0259}, /* 018E */ + {0x0190,0x025B},{0x0191,0x0192}, /* 0190 */ + {0x0191,0x0192},{0x0193,0x0260}, /* 0192 */ + {0x0194,0x0263},{0x01F6,0x0195}, /* 0194 */ + {0x0196,0x0269},{0x0197,0x0268}, /* 0196 */ + {0x0198,0x0199},{0x0198,0x0199}, /* 0198 */ + {0x023D,0x019A},{0x019B,0x019B}, /* 019A */ + {0x019C,0x026F},{0x019D,0x0272}, /* 019C */ + {0x0220,0x019E},{0x019F,0x0275}, /* 019E */ + {0x01A0,0x01A1},{0x01A0,0x01A1}, /* 01A0 */ + {0x01A2,0x01A3},{0x01A2,0x01A3}, /* 01A2 */ + {0x01A4,0x01A5},{0x01A4,0x01A5}, /* 01A4 */ + {0x01A6,0x0280},{0x01A7,0x01A8}, /* 01A6 */ + {0x01A7,0x01A8},{0x01A9,0x0283}, /* 01A8 */ + {0x01AA,0x01AA},{0x01AB,0x01AB}, /* 01AA */ + {0x01AC,0x01AD},{0x01AC,0x01AD}, /* 01AC */ + {0x01AE,0x0288},{0x01AF,0x01B0}, /* 01AE */ + {0x01AF,0x01B0},{0x01B1,0x028A}, /* 01B0 */ + {0x01B2,0x028B},{0x01B3,0x01B4}, /* 01B2 */ + {0x01B3,0x01B4},{0x01B5,0x01B6}, /* 01B4 */ + {0x01B5,0x01B6},{0x01B7,0x0292}, /* 01B6 */ + {0x01B8,0x01B9},{0x01B8,0x01B9}, /* 01B8 */ + {0x01BA,0x01BA},{0x01BB,0x01BB}, /* 01BA */ + {0x01BC,0x01BD},{0x01BC,0x01BD}, /* 01BC */ + {0x01BE,0x01BE},{0x01F7,0x01BF}, /* 01BE */ + {0x01C0,0x01C0},{0x01C1,0x01C1}, /* 01C0 */ + {0x01C2,0x01C2},{0x01C3,0x01C3}, /* 01C2 */ + {0x01C4,0x01C6},{0x01C4,0x01C6}, /* 01C4 */ + {0x01C4,0x01C6},{0x01C7,0x01C9}, /* 01C6 */ + {0x01C7,0x01C9},{0x01C7,0x01C9}, /* 01C8 */ + {0x01CA,0x01CC},{0x01CA,0x01CC}, /* 01CA */ + {0x01CA,0x01CC},{0x01CD,0x01CE}, /* 01CC */ + {0x01CD,0x01CE},{0x01CF,0x01D0}, /* 01CE */ + {0x01CF,0x01D0},{0x01D1,0x01D2}, /* 01D0 */ + {0x01D1,0x01D2},{0x01D3,0x01D4}, /* 01D2 */ + {0x01D3,0x01D4},{0x01D5,0x01D6}, /* 01D4 */ + {0x01D5,0x01D6},{0x01D7,0x01D8}, /* 01D6 */ + {0x01D7,0x01D8},{0x01D9,0x01DA}, /* 01D8 */ + {0x01D9,0x01DA},{0x01DB,0x01DC}, /* 01DA */ + {0x01DB,0x01DC},{0x018E,0x01DD}, /* 01DC */ + {0x01DE,0x01DF},{0x01DE,0x01DF}, /* 01DE */ + {0x01E0,0x01E1},{0x01E0,0x01E1}, /* 01E0 */ + {0x01E2,0x01E3},{0x01E2,0x01E3}, /* 01E2 */ + {0x01E4,0x01E5},{0x01E4,0x01E5}, /* 01E4 */ + {0x01E6,0x01E7},{0x01E6,0x01E7}, /* 01E6 */ + {0x01E8,0x01E9},{0x01E8,0x01E9}, /* 01E8 */ + {0x01EA,0x01EB},{0x01EA,0x01EB}, /* 01EA */ + {0x01EC,0x01ED},{0x01EC,0x01ED}, /* 01EC */ + {0x01EE,0x01EF},{0x01EE,0x01EF}, /* 01EE */ + {0x01F0,0x01F0},{0x01F1,0x01F3}, /* 01F0 */ + {0x01F1,0x01F3},{0x01F1,0x01F3}, /* 01F2 */ + {0x01F4,0x01F5},{0x01F4,0x01F5}, /* 01F4 */ + {0x01F6,0x0195},{0x01F7,0x01BF}, /* 01F6 */ + {0x01F8,0x01F9},{0x01F8,0x01F9}, /* 01F8 */ + {0x01FA,0x01FB},{0x01FA,0x01FB}, /* 01FA */ + {0x01FC,0x01FD},{0x01FC,0x01FD}, /* 01FC */ + {0x01FE,0x01FF},{0x01FE,0x01FF} /* 01FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page02[256]={ + {0x0200,0x0201},{0x0200,0x0201}, /* 0200 */ + {0x0202,0x0203},{0x0202,0x0203}, /* 0202 */ + {0x0204,0x0205},{0x0204,0x0205}, /* 0204 */ + {0x0206,0x0207},{0x0206,0x0207}, /* 0206 */ + {0x0208,0x0209},{0x0208,0x0209}, /* 0208 */ + {0x020A,0x020B},{0x020A,0x020B}, /* 020A */ + {0x020C,0x020D},{0x020C,0x020D}, /* 020C */ + {0x020E,0x020F},{0x020E,0x020F}, /* 020E */ + {0x0210,0x0211},{0x0210,0x0211}, /* 0210 */ + {0x0212,0x0213},{0x0212,0x0213}, /* 0212 */ + {0x0214,0x0215},{0x0214,0x0215}, /* 0214 */ + {0x0216,0x0217},{0x0216,0x0217}, /* 0216 */ + {0x0218,0x0219},{0x0218,0x0219}, /* 0218 */ + {0x021A,0x021B},{0x021A,0x021B}, /* 021A */ + {0x021C,0x021D},{0x021C,0x021D}, /* 021C */ + {0x021E,0x021F},{0x021E,0x021F}, /* 021E */ + {0x0220,0x019E},{0x0221,0x0221}, /* 0220 */ + {0x0222,0x0223},{0x0222,0x0223}, /* 0222 */ + {0x0224,0x0225},{0x0224,0x0225}, /* 0224 */ + {0x0226,0x0227},{0x0226,0x0227}, /* 0226 */ + {0x0228,0x0229},{0x0228,0x0229}, /* 0228 */ + {0x022A,0x022B},{0x022A,0x022B}, /* 022A */ + {0x022C,0x022D},{0x022C,0x022D}, /* 022C */ + {0x022E,0x022F},{0x022E,0x022F}, /* 022E */ + {0x0230,0x0231},{0x0230,0x0231}, /* 0230 */ + {0x0232,0x0233},{0x0232,0x0233}, /* 0232 */ + {0x0234,0x0234},{0x0235,0x0235}, /* 0234 */ + {0x0236,0x0236},{0x0237,0x0237}, /* 0236 */ + {0x0238,0x0238},{0x0239,0x0239}, /* 0238 */ + {0x023A,0x2C65},{0x023B,0x023C}, /* 023A */ + {0x023B,0x023C},{0x023D,0x019A}, /* 023C */ + {0x023E,0x2C66},{0x2C7E,0x023F}, /* 023E */ + {0x2C7F,0x0240},{0x0241,0x0242}, /* 0240 */ + {0x0241,0x0242},{0x0243,0x0180}, /* 0242 */ + {0x0244,0x0289},{0x0245,0x028C}, /* 0244 */ + {0x0246,0x0247},{0x0246,0x0247}, /* 0246 */ + {0x0248,0x0249},{0x0248,0x0249}, /* 0248 */ + {0x024A,0x024B},{0x024A,0x024B}, /* 024A */ + {0x024C,0x024D},{0x024C,0x024D}, /* 024C */ + {0x024E,0x024F},{0x024E,0x024F}, /* 024E */ + {0x2C6F,0x0250},{0x2C6D,0x0251}, /* 0250 */ + {0x2C70,0x0252},{0x0181,0x0253}, /* 0252 */ + {0x0186,0x0254},{0x0255,0x0255}, /* 0254 */ + {0x0189,0x0256},{0x018A,0x0257}, /* 0256 */ + {0x0258,0x0258},{0x018F,0x0259}, /* 0258 */ + {0x025A,0x025A},{0x0190,0x025B}, /* 025A */ + {0xA7AB,0x025C},{0x025D,0x025D}, /* 025C */ + {0x025E,0x025E},{0x025F,0x025F}, /* 025E */ + {0x0193,0x0260},{0xA7AC,0x0261}, /* 0260 */ + {0x0262,0x0262},{0x0194,0x0263}, /* 0262 */ + {0x0264,0x0264},{0xA78D,0x0265}, /* 0264 */ + {0xA7AA,0x0266},{0x0267,0x0267}, /* 0266 */ + {0x0197,0x0268},{0x0196,0x0269}, /* 0268 */ + {0xA7AE,0x026A},{0x2C62,0x026B}, /* 026A */ + {0xA7AD,0x026C},{0x026D,0x026D}, /* 026C */ + {0x026E,0x026E},{0x019C,0x026F}, /* 026E */ + {0x0270,0x0270},{0x2C6E,0x0271}, /* 0270 */ + {0x019D,0x0272},{0x0273,0x0273}, /* 0272 */ + {0x0274,0x0274},{0x019F,0x0275}, /* 0274 */ + {0x0276,0x0276},{0x0277,0x0277}, /* 0276 */ + {0x0278,0x0278},{0x0279,0x0279}, /* 0278 */ + {0x027A,0x027A},{0x027B,0x027B}, /* 027A */ + {0x027C,0x027C},{0x2C64,0x027D}, /* 027C */ + {0x027E,0x027E},{0x027F,0x027F}, /* 027E */ + {0x01A6,0x0280},{0x0281,0x0281}, /* 0280 */ + {0xA7C5,0x0282},{0x01A9,0x0283}, /* 0282 */ + {0x0284,0x0284},{0x0285,0x0285}, /* 0284 */ + {0x0286,0x0286},{0xA7B1,0x0287}, /* 0286 */ + {0x01AE,0x0288},{0x0244,0x0289}, /* 0288 */ + {0x01B1,0x028A},{0x01B2,0x028B}, /* 028A */ + {0x0245,0x028C},{0x028D,0x028D}, /* 028C */ + {0x028E,0x028E},{0x028F,0x028F}, /* 028E */ + {0x0290,0x0290},{0x0291,0x0291}, /* 0290 */ + {0x01B7,0x0292},{0x0293,0x0293}, /* 0292 */ + {0x0294,0x0294},{0x0295,0x0295}, /* 0294 */ + {0x0296,0x0296},{0x0297,0x0297}, /* 0296 */ + {0x0298,0x0298},{0x0299,0x0299}, /* 0298 */ + {0x029A,0x029A},{0x029B,0x029B}, /* 029A */ + {0x029C,0x029C},{0xA7B2,0x029D}, /* 029C */ + {0xA7B0,0x029E},{0x029F,0x029F}, /* 029E */ + {0x02A0,0x02A0},{0x02A1,0x02A1}, /* 02A0 */ + {0x02A2,0x02A2},{0x02A3,0x02A3}, /* 02A2 */ + {0x02A4,0x02A4},{0x02A5,0x02A5}, /* 02A4 */ + {0x02A6,0x02A6},{0x02A7,0x02A7}, /* 02A6 */ + {0x02A8,0x02A8},{0x02A9,0x02A9}, /* 02A8 */ + {0x02AA,0x02AA},{0x02AB,0x02AB}, /* 02AA */ + {0x02AC,0x02AC},{0x02AD,0x02AD}, /* 02AC */ + {0x02AE,0x02AE},{0x02AF,0x02AF}, /* 02AE */ + {0x02B0,0x02B0},{0x02B1,0x02B1}, /* 02B0 */ + {0x02B2,0x02B2},{0x02B3,0x02B3}, /* 02B2 */ + {0x02B4,0x02B4},{0x02B5,0x02B5}, /* 02B4 */ + {0x02B6,0x02B6},{0x02B7,0x02B7}, /* 02B6 */ + {0x02B8,0x02B8},{0x02B9,0x02B9}, /* 02B8 */ + {0x02BA,0x02BA},{0x02BB,0x02BB}, /* 02BA */ + {0x02BC,0x02BC},{0x02BD,0x02BD}, /* 02BC */ + {0x02BE,0x02BE},{0x02BF,0x02BF}, /* 02BE */ + {0x02C0,0x02C0},{0x02C1,0x02C1}, /* 02C0 */ + {0x02C2,0x02C2},{0x02C3,0x02C3}, /* 02C2 */ + {0x02C4,0x02C4},{0x02C5,0x02C5}, /* 02C4 */ + {0x02C6,0x02C6},{0x02C7,0x02C7}, /* 02C6 */ + {0x02C8,0x02C8},{0x02C9,0x02C9}, /* 02C8 */ + {0x02CA,0x02CA},{0x02CB,0x02CB}, /* 02CA */ + {0x02CC,0x02CC},{0x02CD,0x02CD}, /* 02CC */ + {0x02CE,0x02CE},{0x02CF,0x02CF}, /* 02CE */ + {0x02D0,0x02D0},{0x02D1,0x02D1}, /* 02D0 */ + {0x02D2,0x02D2},{0x02D3,0x02D3}, /* 02D2 */ + {0x02D4,0x02D4},{0x02D5,0x02D5}, /* 02D4 */ + {0x02D6,0x02D6},{0x02D7,0x02D7}, /* 02D6 */ + {0x02D8,0x02D8},{0x02D9,0x02D9}, /* 02D8 */ + {0x02DA,0x02DA},{0x02DB,0x02DB}, /* 02DA */ + {0x02DC,0x02DC},{0x02DD,0x02DD}, /* 02DC */ + {0x02DE,0x02DE},{0x02DF,0x02DF}, /* 02DE */ + {0x02E0,0x02E0},{0x02E1,0x02E1}, /* 02E0 */ + {0x02E2,0x02E2},{0x02E3,0x02E3}, /* 02E2 */ + {0x02E4,0x02E4},{0x02E5,0x02E5}, /* 02E4 */ + {0x02E6,0x02E6},{0x02E7,0x02E7}, /* 02E6 */ + {0x02E8,0x02E8},{0x02E9,0x02E9}, /* 02E8 */ + {0x02EA,0x02EA},{0x02EB,0x02EB}, /* 02EA */ + {0x02EC,0x02EC},{0x02ED,0x02ED}, /* 02EC */ + {0x02EE,0x02EE},{0x02EF,0x02EF}, /* 02EE */ + {0x02F0,0x02F0},{0x02F1,0x02F1}, /* 02F0 */ + {0x02F2,0x02F2},{0x02F3,0x02F3}, /* 02F2 */ + {0x02F4,0x02F4},{0x02F5,0x02F5}, /* 02F4 */ + {0x02F6,0x02F6},{0x02F7,0x02F7}, /* 02F6 */ + {0x02F8,0x02F8},{0x02F9,0x02F9}, /* 02F8 */ + {0x02FA,0x02FA},{0x02FB,0x02FB}, /* 02FA */ + {0x02FC,0x02FC},{0x02FD,0x02FD}, /* 02FC */ + {0x02FE,0x02FE},{0x02FF,0x02FF} /* 02FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page03[256]={ + {0x0300,0x0300},{0x0301,0x0301}, /* 0300 */ + {0x0302,0x0302},{0x0303,0x0303}, /* 0302 */ + {0x0304,0x0304},{0x0305,0x0305}, /* 0304 */ + {0x0306,0x0306},{0x0307,0x0307}, /* 0306 */ + {0x0308,0x0308},{0x0309,0x0309}, /* 0308 */ + {0x030A,0x030A},{0x030B,0x030B}, /* 030A */ + {0x030C,0x030C},{0x030D,0x030D}, /* 030C */ + {0x030E,0x030E},{0x030F,0x030F}, /* 030E */ + {0x0310,0x0310},{0x0311,0x0311}, /* 0310 */ + {0x0312,0x0312},{0x0313,0x0313}, /* 0312 */ + {0x0314,0x0314},{0x0315,0x0315}, /* 0314 */ + {0x0316,0x0316},{0x0317,0x0317}, /* 0316 */ + {0x0318,0x0318},{0x0319,0x0319}, /* 0318 */ + {0x031A,0x031A},{0x031B,0x031B}, /* 031A */ + {0x031C,0x031C},{0x031D,0x031D}, /* 031C */ + {0x031E,0x031E},{0x031F,0x031F}, /* 031E */ + {0x0320,0x0320},{0x0321,0x0321}, /* 0320 */ + {0x0322,0x0322},{0x0323,0x0323}, /* 0322 */ + {0x0324,0x0324},{0x0325,0x0325}, /* 0324 */ + {0x0326,0x0326},{0x0327,0x0327}, /* 0326 */ + {0x0328,0x0328},{0x0329,0x0329}, /* 0328 */ + {0x032A,0x032A},{0x032B,0x032B}, /* 032A */ + {0x032C,0x032C},{0x032D,0x032D}, /* 032C */ + {0x032E,0x032E},{0x032F,0x032F}, /* 032E */ + {0x0330,0x0330},{0x0331,0x0331}, /* 0330 */ + {0x0332,0x0332},{0x0333,0x0333}, /* 0332 */ + {0x0334,0x0334},{0x0335,0x0335}, /* 0334 */ + {0x0336,0x0336},{0x0337,0x0337}, /* 0336 */ + {0x0338,0x0338},{0x0339,0x0339}, /* 0338 */ + {0x033A,0x033A},{0x033B,0x033B}, /* 033A */ + {0x033C,0x033C},{0x033D,0x033D}, /* 033C */ + {0x033E,0x033E},{0x033F,0x033F}, /* 033E */ + {0x0340,0x0340},{0x0341,0x0341}, /* 0340 */ + {0x0342,0x0342},{0x0343,0x0343}, /* 0342 */ + {0x0344,0x0344},{0x0399,0x0345}, /* 0344 */ + {0x0346,0x0346},{0x0347,0x0347}, /* 0346 */ + {0x0348,0x0348},{0x0349,0x0349}, /* 0348 */ + {0x034A,0x034A},{0x034B,0x034B}, /* 034A */ + {0x034C,0x034C},{0x034D,0x034D}, /* 034C */ + {0x034E,0x034E},{0x034F,0x034F}, /* 034E */ + {0x0350,0x0350},{0x0351,0x0351}, /* 0350 */ + {0x0352,0x0352},{0x0353,0x0353}, /* 0352 */ + {0x0354,0x0354},{0x0355,0x0355}, /* 0354 */ + {0x0356,0x0356},{0x0357,0x0357}, /* 0356 */ + {0x0358,0x0358},{0x0359,0x0359}, /* 0358 */ + {0x035A,0x035A},{0x035B,0x035B}, /* 035A */ + {0x035C,0x035C},{0x035D,0x035D}, /* 035C */ + {0x035E,0x035E},{0x035F,0x035F}, /* 035E */ + {0x0360,0x0360},{0x0361,0x0361}, /* 0360 */ + {0x0362,0x0362},{0x0363,0x0363}, /* 0362 */ + {0x0364,0x0364},{0x0365,0x0365}, /* 0364 */ + {0x0366,0x0366},{0x0367,0x0367}, /* 0366 */ + {0x0368,0x0368},{0x0369,0x0369}, /* 0368 */ + {0x036A,0x036A},{0x036B,0x036B}, /* 036A */ + {0x036C,0x036C},{0x036D,0x036D}, /* 036C */ + {0x036E,0x036E},{0x036F,0x036F}, /* 036E */ + {0x0370,0x0371},{0x0370,0x0371}, /* 0370 */ + {0x0372,0x0373},{0x0372,0x0373}, /* 0372 */ + {0x0374,0x0374},{0x0375,0x0375}, /* 0374 */ + {0x0376,0x0377},{0x0376,0x0377}, /* 0376 */ + {0x0378,0x0378},{0x0379,0x0379}, /* 0378 */ + {0x037A,0x037A},{0x03FD,0x037B}, /* 037A */ + {0x03FE,0x037C},{0x03FF,0x037D}, /* 037C */ + {0x037E,0x037E},{0x037F,0x03F3}, /* 037E */ + {0x0380,0x0380},{0x0381,0x0381}, /* 0380 */ + {0x0382,0x0382},{0x0383,0x0383}, /* 0382 */ + {0x0384,0x0384},{0x0385,0x0385}, /* 0384 */ + {0x0386,0x03AC},{0x0387,0x0387}, /* 0386 */ + {0x0388,0x03AD},{0x0389,0x03AE}, /* 0388 */ + {0x038A,0x03AF},{0x038B,0x038B}, /* 038A */ + {0x038C,0x03CC},{0x038D,0x038D}, /* 038C */ + {0x038E,0x03CD},{0x038F,0x03CE}, /* 038E */ + {0x0390,0x0390},{0x0391,0x03B1}, /* 0390 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 0392 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 0394 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 0396 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 0398 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 039A */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 039C */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 039E */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03A0 */ + {0x03A2,0x03A2},{0x03A3,0x03C3}, /* 03A2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03A4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03A6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03A8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03AA */ + {0x0386,0x03AC},{0x0388,0x03AD}, /* 03AC */ + {0x0389,0x03AE},{0x038A,0x03AF}, /* 03AE */ + {0x03B0,0x03B0},{0x0391,0x03B1}, /* 03B0 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 03B2 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 03B4 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 03B6 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 03B8 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 03BA */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 03BC */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 03BE */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03C0 */ + {0x03A3,0x03C2},{0x03A3,0x03C3}, /* 03C2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03C4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03C6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03C8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03CA */ + {0x038C,0x03CC},{0x038E,0x03CD}, /* 03CC */ + {0x038F,0x03CE},{0x03CF,0x03D7}, /* 03CE */ + {0x0392,0x03D0},{0x0398,0x03D1}, /* 03D0 */ + {0x03D2,0x03D2},{0x03D3,0x03D3}, /* 03D2 */ + {0x03D4,0x03D4},{0x03A6,0x03D5}, /* 03D4 */ + {0x03A0,0x03D6},{0x03CF,0x03D7}, /* 03D6 */ + {0x03D8,0x03D9},{0x03D8,0x03D9}, /* 03D8 */ + {0x03DA,0x03DB},{0x03DA,0x03DB}, /* 03DA */ + {0x03DC,0x03DD},{0x03DC,0x03DD}, /* 03DC */ + {0x03DE,0x03DF},{0x03DE,0x03DF}, /* 03DE */ + {0x03E0,0x03E1},{0x03E0,0x03E1}, /* 03E0 */ + {0x03E2,0x03E3},{0x03E2,0x03E3}, /* 03E2 */ + {0x03E4,0x03E5},{0x03E4,0x03E5}, /* 03E4 */ + {0x03E6,0x03E7},{0x03E6,0x03E7}, /* 03E6 */ + {0x03E8,0x03E9},{0x03E8,0x03E9}, /* 03E8 */ + {0x03EA,0x03EB},{0x03EA,0x03EB}, /* 03EA */ + {0x03EC,0x03ED},{0x03EC,0x03ED}, /* 03EC */ + {0x03EE,0x03EF},{0x03EE,0x03EF}, /* 03EE */ + {0x039A,0x03F0},{0x03A1,0x03F1}, /* 03F0 */ + {0x03F9,0x03F2},{0x037F,0x03F3}, /* 03F2 */ + {0x03F4,0x03B8},{0x0395,0x03F5}, /* 03F4 */ + {0x03F6,0x03F6},{0x03F7,0x03F8}, /* 03F6 */ + {0x03F7,0x03F8},{0x03F9,0x03F2}, /* 03F8 */ + {0x03FA,0x03FB},{0x03FA,0x03FB}, /* 03FA */ + {0x03FC,0x03FC},{0x03FD,0x037B}, /* 03FC */ + {0x03FE,0x037C},{0x03FF,0x037D} /* 03FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page04[256]={ + {0x0400,0x0450},{0x0401,0x0451}, /* 0400 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0402 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0404 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0406 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0408 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 040A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 040C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 040E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0410 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0412 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0414 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0416 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0418 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 041A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 041C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 041E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0420 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0422 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0424 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0426 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0428 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 042A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 042C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 042E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0430 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0432 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0434 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0436 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0438 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 043A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 043C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 043E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0440 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0442 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0444 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0446 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0448 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 044A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 044C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 044E */ + {0x0400,0x0450},{0x0401,0x0451}, /* 0450 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0452 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0454 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0456 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0458 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 045A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 045C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 045E */ + {0x0460,0x0461},{0x0460,0x0461}, /* 0460 */ + {0x0462,0x0463},{0x0462,0x0463}, /* 0462 */ + {0x0464,0x0465},{0x0464,0x0465}, /* 0464 */ + {0x0466,0x0467},{0x0466,0x0467}, /* 0466 */ + {0x0468,0x0469},{0x0468,0x0469}, /* 0468 */ + {0x046A,0x046B},{0x046A,0x046B}, /* 046A */ + {0x046C,0x046D},{0x046C,0x046D}, /* 046C */ + {0x046E,0x046F},{0x046E,0x046F}, /* 046E */ + {0x0470,0x0471},{0x0470,0x0471}, /* 0470 */ + {0x0472,0x0473},{0x0472,0x0473}, /* 0472 */ + {0x0474,0x0475},{0x0474,0x0475}, /* 0474 */ + {0x0476,0x0477},{0x0476,0x0477}, /* 0476 */ + {0x0478,0x0479},{0x0478,0x0479}, /* 0478 */ + {0x047A,0x047B},{0x047A,0x047B}, /* 047A */ + {0x047C,0x047D},{0x047C,0x047D}, /* 047C */ + {0x047E,0x047F},{0x047E,0x047F}, /* 047E */ + {0x0480,0x0481},{0x0480,0x0481}, /* 0480 */ + {0x0482,0x0482},{0x0483,0x0483}, /* 0482 */ + {0x0484,0x0484},{0x0485,0x0485}, /* 0484 */ + {0x0486,0x0486},{0x0487,0x0487}, /* 0486 */ + {0x0488,0x0488},{0x0489,0x0489}, /* 0488 */ + {0x048A,0x048B},{0x048A,0x048B}, /* 048A */ + {0x048C,0x048D},{0x048C,0x048D}, /* 048C */ + {0x048E,0x048F},{0x048E,0x048F}, /* 048E */ + {0x0490,0x0491},{0x0490,0x0491}, /* 0490 */ + {0x0492,0x0493},{0x0492,0x0493}, /* 0492 */ + {0x0494,0x0495},{0x0494,0x0495}, /* 0494 */ + {0x0496,0x0497},{0x0496,0x0497}, /* 0496 */ + {0x0498,0x0499},{0x0498,0x0499}, /* 0498 */ + {0x049A,0x049B},{0x049A,0x049B}, /* 049A */ + {0x049C,0x049D},{0x049C,0x049D}, /* 049C */ + {0x049E,0x049F},{0x049E,0x049F}, /* 049E */ + {0x04A0,0x04A1},{0x04A0,0x04A1}, /* 04A0 */ + {0x04A2,0x04A3},{0x04A2,0x04A3}, /* 04A2 */ + {0x04A4,0x04A5},{0x04A4,0x04A5}, /* 04A4 */ + {0x04A6,0x04A7},{0x04A6,0x04A7}, /* 04A6 */ + {0x04A8,0x04A9},{0x04A8,0x04A9}, /* 04A8 */ + {0x04AA,0x04AB},{0x04AA,0x04AB}, /* 04AA */ + {0x04AC,0x04AD},{0x04AC,0x04AD}, /* 04AC */ + {0x04AE,0x04AF},{0x04AE,0x04AF}, /* 04AE */ + {0x04B0,0x04B1},{0x04B0,0x04B1}, /* 04B0 */ + {0x04B2,0x04B3},{0x04B2,0x04B3}, /* 04B2 */ + {0x04B4,0x04B5},{0x04B4,0x04B5}, /* 04B4 */ + {0x04B6,0x04B7},{0x04B6,0x04B7}, /* 04B6 */ + {0x04B8,0x04B9},{0x04B8,0x04B9}, /* 04B8 */ + {0x04BA,0x04BB},{0x04BA,0x04BB}, /* 04BA */ + {0x04BC,0x04BD},{0x04BC,0x04BD}, /* 04BC */ + {0x04BE,0x04BF},{0x04BE,0x04BF}, /* 04BE */ + {0x04C0,0x04CF},{0x04C1,0x04C2}, /* 04C0 */ + {0x04C1,0x04C2},{0x04C3,0x04C4}, /* 04C2 */ + {0x04C3,0x04C4},{0x04C5,0x04C6}, /* 04C4 */ + {0x04C5,0x04C6},{0x04C7,0x04C8}, /* 04C6 */ + {0x04C7,0x04C8},{0x04C9,0x04CA}, /* 04C8 */ + {0x04C9,0x04CA},{0x04CB,0x04CC}, /* 04CA */ + {0x04CB,0x04CC},{0x04CD,0x04CE}, /* 04CC */ + {0x04CD,0x04CE},{0x04C0,0x04CF}, /* 04CE */ + {0x04D0,0x04D1},{0x04D0,0x04D1}, /* 04D0 */ + {0x04D2,0x04D3},{0x04D2,0x04D3}, /* 04D2 */ + {0x04D4,0x04D5},{0x04D4,0x04D5}, /* 04D4 */ + {0x04D6,0x04D7},{0x04D6,0x04D7}, /* 04D6 */ + {0x04D8,0x04D9},{0x04D8,0x04D9}, /* 04D8 */ + {0x04DA,0x04DB},{0x04DA,0x04DB}, /* 04DA */ + {0x04DC,0x04DD},{0x04DC,0x04DD}, /* 04DC */ + {0x04DE,0x04DF},{0x04DE,0x04DF}, /* 04DE */ + {0x04E0,0x04E1},{0x04E0,0x04E1}, /* 04E0 */ + {0x04E2,0x04E3},{0x04E2,0x04E3}, /* 04E2 */ + {0x04E4,0x04E5},{0x04E4,0x04E5}, /* 04E4 */ + {0x04E6,0x04E7},{0x04E6,0x04E7}, /* 04E6 */ + {0x04E8,0x04E9},{0x04E8,0x04E9}, /* 04E8 */ + {0x04EA,0x04EB},{0x04EA,0x04EB}, /* 04EA */ + {0x04EC,0x04ED},{0x04EC,0x04ED}, /* 04EC */ + {0x04EE,0x04EF},{0x04EE,0x04EF}, /* 04EE */ + {0x04F0,0x04F1},{0x04F0,0x04F1}, /* 04F0 */ + {0x04F2,0x04F3},{0x04F2,0x04F3}, /* 04F2 */ + {0x04F4,0x04F5},{0x04F4,0x04F5}, /* 04F4 */ + {0x04F6,0x04F7},{0x04F6,0x04F7}, /* 04F6 */ + {0x04F8,0x04F9},{0x04F8,0x04F9}, /* 04F8 */ + {0x04FA,0x04FB},{0x04FA,0x04FB}, /* 04FA */ + {0x04FC,0x04FD},{0x04FC,0x04FD}, /* 04FC */ + {0x04FE,0x04FF},{0x04FE,0x04FF} /* 04FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page05[256]={ + {0x0500,0x0501},{0x0500,0x0501}, /* 0500 */ + {0x0502,0x0503},{0x0502,0x0503}, /* 0502 */ + {0x0504,0x0505},{0x0504,0x0505}, /* 0504 */ + {0x0506,0x0507},{0x0506,0x0507}, /* 0506 */ + {0x0508,0x0509},{0x0508,0x0509}, /* 0508 */ + {0x050A,0x050B},{0x050A,0x050B}, /* 050A */ + {0x050C,0x050D},{0x050C,0x050D}, /* 050C */ + {0x050E,0x050F},{0x050E,0x050F}, /* 050E */ + {0x0510,0x0511},{0x0510,0x0511}, /* 0510 */ + {0x0512,0x0513},{0x0512,0x0513}, /* 0512 */ + {0x0514,0x0515},{0x0514,0x0515}, /* 0514 */ + {0x0516,0x0517},{0x0516,0x0517}, /* 0516 */ + {0x0518,0x0519},{0x0518,0x0519}, /* 0518 */ + {0x051A,0x051B},{0x051A,0x051B}, /* 051A */ + {0x051C,0x051D},{0x051C,0x051D}, /* 051C */ + {0x051E,0x051F},{0x051E,0x051F}, /* 051E */ + {0x0520,0x0521},{0x0520,0x0521}, /* 0520 */ + {0x0522,0x0523},{0x0522,0x0523}, /* 0522 */ + {0x0524,0x0525},{0x0524,0x0525}, /* 0524 */ + {0x0526,0x0527},{0x0526,0x0527}, /* 0526 */ + {0x0528,0x0529},{0x0528,0x0529}, /* 0528 */ + {0x052A,0x052B},{0x052A,0x052B}, /* 052A */ + {0x052C,0x052D},{0x052C,0x052D}, /* 052C */ + {0x052E,0x052F},{0x052E,0x052F}, /* 052E */ + {0x0530,0x0530},{0x0531,0x0561}, /* 0530 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0532 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0534 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0536 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0538 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 053A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 053C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 053E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0540 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0542 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0544 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0546 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0548 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 054A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 054C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 054E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0550 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0552 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0554 */ + {0x0556,0x0586},{0x0557,0x0557}, /* 0556 */ + {0x0558,0x0558},{0x0559,0x0559}, /* 0558 */ + {0x055A,0x055A},{0x055B,0x055B}, /* 055A */ + {0x055C,0x055C},{0x055D,0x055D}, /* 055C */ + {0x055E,0x055E},{0x055F,0x055F}, /* 055E */ + {0x0560,0x0560},{0x0531,0x0561}, /* 0560 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0562 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0564 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0566 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0568 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 056A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 056C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 056E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0570 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0572 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0574 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0576 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0578 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 057A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 057C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 057E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0580 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0582 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0584 */ + {0x0556,0x0586},{0x0587,0x0587}, /* 0586 */ + {0x0588,0x0588},{0x0589,0x0589}, /* 0588 */ + {0x058A,0x058A},{0x058B,0x058B}, /* 058A */ + {0x058C,0x058C},{0x058D,0x058D}, /* 058C */ + {0x058E,0x058E},{0x058F,0x058F}, /* 058E */ + {0x0590,0x0590},{0x0591,0x0591}, /* 0590 */ + {0x0592,0x0592},{0x0593,0x0593}, /* 0592 */ + {0x0594,0x0594},{0x0595,0x0595}, /* 0594 */ + {0x0596,0x0596},{0x0597,0x0597}, /* 0596 */ + {0x0598,0x0598},{0x0599,0x0599}, /* 0598 */ + {0x059A,0x059A},{0x059B,0x059B}, /* 059A */ + {0x059C,0x059C},{0x059D,0x059D}, /* 059C */ + {0x059E,0x059E},{0x059F,0x059F}, /* 059E */ + {0x05A0,0x05A0},{0x05A1,0x05A1}, /* 05A0 */ + {0x05A2,0x05A2},{0x05A3,0x05A3}, /* 05A2 */ + {0x05A4,0x05A4},{0x05A5,0x05A5}, /* 05A4 */ + {0x05A6,0x05A6},{0x05A7,0x05A7}, /* 05A6 */ + {0x05A8,0x05A8},{0x05A9,0x05A9}, /* 05A8 */ + {0x05AA,0x05AA},{0x05AB,0x05AB}, /* 05AA */ + {0x05AC,0x05AC},{0x05AD,0x05AD}, /* 05AC */ + {0x05AE,0x05AE},{0x05AF,0x05AF}, /* 05AE */ + {0x05B0,0x05B0},{0x05B1,0x05B1}, /* 05B0 */ + {0x05B2,0x05B2},{0x05B3,0x05B3}, /* 05B2 */ + {0x05B4,0x05B4},{0x05B5,0x05B5}, /* 05B4 */ + {0x05B6,0x05B6},{0x05B7,0x05B7}, /* 05B6 */ + {0x05B8,0x05B8},{0x05B9,0x05B9}, /* 05B8 */ + {0x05BA,0x05BA},{0x05BB,0x05BB}, /* 05BA */ + {0x05BC,0x05BC},{0x05BD,0x05BD}, /* 05BC */ + {0x05BE,0x05BE},{0x05BF,0x05BF}, /* 05BE */ + {0x05C0,0x05C0},{0x05C1,0x05C1}, /* 05C0 */ + {0x05C2,0x05C2},{0x05C3,0x05C3}, /* 05C2 */ + {0x05C4,0x05C4},{0x05C5,0x05C5}, /* 05C4 */ + {0x05C6,0x05C6},{0x05C7,0x05C7}, /* 05C6 */ + {0x05C8,0x05C8},{0x05C9,0x05C9}, /* 05C8 */ + {0x05CA,0x05CA},{0x05CB,0x05CB}, /* 05CA */ + {0x05CC,0x05CC},{0x05CD,0x05CD}, /* 05CC */ + {0x05CE,0x05CE},{0x05CF,0x05CF}, /* 05CE */ + {0x05D0,0x05D0},{0x05D1,0x05D1}, /* 05D0 */ + {0x05D2,0x05D2},{0x05D3,0x05D3}, /* 05D2 */ + {0x05D4,0x05D4},{0x05D5,0x05D5}, /* 05D4 */ + {0x05D6,0x05D6},{0x05D7,0x05D7}, /* 05D6 */ + {0x05D8,0x05D8},{0x05D9,0x05D9}, /* 05D8 */ + {0x05DA,0x05DA},{0x05DB,0x05DB}, /* 05DA */ + {0x05DC,0x05DC},{0x05DD,0x05DD}, /* 05DC */ + {0x05DE,0x05DE},{0x05DF,0x05DF}, /* 05DE */ + {0x05E0,0x05E0},{0x05E1,0x05E1}, /* 05E0 */ + {0x05E2,0x05E2},{0x05E3,0x05E3}, /* 05E2 */ + {0x05E4,0x05E4},{0x05E5,0x05E5}, /* 05E4 */ + {0x05E6,0x05E6},{0x05E7,0x05E7}, /* 05E6 */ + {0x05E8,0x05E8},{0x05E9,0x05E9}, /* 05E8 */ + {0x05EA,0x05EA},{0x05EB,0x05EB}, /* 05EA */ + {0x05EC,0x05EC},{0x05ED,0x05ED}, /* 05EC */ + {0x05EE,0x05EE},{0x05EF,0x05EF}, /* 05EE */ + {0x05F0,0x05F0},{0x05F1,0x05F1}, /* 05F0 */ + {0x05F2,0x05F2},{0x05F3,0x05F3}, /* 05F2 */ + {0x05F4,0x05F4},{0x05F5,0x05F5}, /* 05F4 */ + {0x05F6,0x05F6},{0x05F7,0x05F7}, /* 05F6 */ + {0x05F8,0x05F8},{0x05F9,0x05F9}, /* 05F8 */ + {0x05FA,0x05FA},{0x05FB,0x05FB}, /* 05FA */ + {0x05FC,0x05FC},{0x05FD,0x05FD}, /* 05FC */ + {0x05FE,0x05FE},{0x05FF,0x05FF} /* 05FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page06[256]={ /* This page is dummy */ + {0x0600,0x0600},{0x0601,0x0601}, /* 0600 */ + {0x0602,0x0602},{0x0603,0x0603}, /* 0602 */ + {0x0604,0x0604},{0x0605,0x0605}, /* 0604 */ + {0x0606,0x0606},{0x0607,0x0607}, /* 0606 */ + {0x0608,0x0608},{0x0609,0x0609}, /* 0608 */ + {0x060A,0x060A},{0x060B,0x060B}, /* 060A */ + {0x060C,0x060C},{0x060D,0x060D}, /* 060C */ + {0x060E,0x060E},{0x060F,0x060F}, /* 060E */ + {0x0610,0x0610},{0x0611,0x0611}, /* 0610 */ + {0x0612,0x0612},{0x0613,0x0613}, /* 0612 */ + {0x0614,0x0614},{0x0615,0x0615}, /* 0614 */ + {0x0616,0x0616},{0x0617,0x0617}, /* 0616 */ + {0x0618,0x0618},{0x0619,0x0619}, /* 0618 */ + {0x061A,0x061A},{0x061B,0x061B}, /* 061A */ + {0x061C,0x061C},{0x061D,0x061D}, /* 061C */ + {0x061E,0x061E},{0x061F,0x061F}, /* 061E */ + {0x0620,0x0620},{0x0621,0x0621}, /* 0620 */ + {0x0622,0x0622},{0x0623,0x0623}, /* 0622 */ + {0x0624,0x0624},{0x0625,0x0625}, /* 0624 */ + {0x0626,0x0626},{0x0627,0x0627}, /* 0626 */ + {0x0628,0x0628},{0x0629,0x0629}, /* 0628 */ + {0x062A,0x062A},{0x062B,0x062B}, /* 062A */ + {0x062C,0x062C},{0x062D,0x062D}, /* 062C */ + {0x062E,0x062E},{0x062F,0x062F}, /* 062E */ + {0x0630,0x0630},{0x0631,0x0631}, /* 0630 */ + {0x0632,0x0632},{0x0633,0x0633}, /* 0632 */ + {0x0634,0x0634},{0x0635,0x0635}, /* 0634 */ + {0x0636,0x0636},{0x0637,0x0637}, /* 0636 */ + {0x0638,0x0638},{0x0639,0x0639}, /* 0638 */ + {0x063A,0x063A},{0x063B,0x063B}, /* 063A */ + {0x063C,0x063C},{0x063D,0x063D}, /* 063C */ + {0x063E,0x063E},{0x063F,0x063F}, /* 063E */ + {0x0640,0x0640},{0x0641,0x0641}, /* 0640 */ + {0x0642,0x0642},{0x0643,0x0643}, /* 0642 */ + {0x0644,0x0644},{0x0645,0x0645}, /* 0644 */ + {0x0646,0x0646},{0x0647,0x0647}, /* 0646 */ + {0x0648,0x0648},{0x0649,0x0649}, /* 0648 */ + {0x064A,0x064A},{0x064B,0x064B}, /* 064A */ + {0x064C,0x064C},{0x064D,0x064D}, /* 064C */ + {0x064E,0x064E},{0x064F,0x064F}, /* 064E */ + {0x0650,0x0650},{0x0651,0x0651}, /* 0650 */ + {0x0652,0x0652},{0x0653,0x0653}, /* 0652 */ + {0x0654,0x0654},{0x0655,0x0655}, /* 0654 */ + {0x0656,0x0656},{0x0657,0x0657}, /* 0656 */ + {0x0658,0x0658},{0x0659,0x0659}, /* 0658 */ + {0x065A,0x065A},{0x065B,0x065B}, /* 065A */ + {0x065C,0x065C},{0x065D,0x065D}, /* 065C */ + {0x065E,0x065E},{0x065F,0x065F}, /* 065E */ + {0x0660,0x0660},{0x0661,0x0661}, /* 0660 */ + {0x0662,0x0662},{0x0663,0x0663}, /* 0662 */ + {0x0664,0x0664},{0x0665,0x0665}, /* 0664 */ + {0x0666,0x0666},{0x0667,0x0667}, /* 0666 */ + {0x0668,0x0668},{0x0669,0x0669}, /* 0668 */ + {0x066A,0x066A},{0x066B,0x066B}, /* 066A */ + {0x066C,0x066C},{0x066D,0x066D}, /* 066C */ + {0x066E,0x066E},{0x066F,0x066F}, /* 066E */ + {0x0670,0x0670},{0x0671,0x0671}, /* 0670 */ + {0x0672,0x0672},{0x0673,0x0673}, /* 0672 */ + {0x0674,0x0674},{0x0675,0x0675}, /* 0674 */ + {0x0676,0x0676},{0x0677,0x0677}, /* 0676 */ + {0x0678,0x0678},{0x0679,0x0679}, /* 0678 */ + {0x067A,0x067A},{0x067B,0x067B}, /* 067A */ + {0x067C,0x067C},{0x067D,0x067D}, /* 067C */ + {0x067E,0x067E},{0x067F,0x067F}, /* 067E */ + {0x0680,0x0680},{0x0681,0x0681}, /* 0680 */ + {0x0682,0x0682},{0x0683,0x0683}, /* 0682 */ + {0x0684,0x0684},{0x0685,0x0685}, /* 0684 */ + {0x0686,0x0686},{0x0687,0x0687}, /* 0686 */ + {0x0688,0x0688},{0x0689,0x0689}, /* 0688 */ + {0x068A,0x068A},{0x068B,0x068B}, /* 068A */ + {0x068C,0x068C},{0x068D,0x068D}, /* 068C */ + {0x068E,0x068E},{0x068F,0x068F}, /* 068E */ + {0x0690,0x0690},{0x0691,0x0691}, /* 0690 */ + {0x0692,0x0692},{0x0693,0x0693}, /* 0692 */ + {0x0694,0x0694},{0x0695,0x0695}, /* 0694 */ + {0x0696,0x0696},{0x0697,0x0697}, /* 0696 */ + {0x0698,0x0698},{0x0699,0x0699}, /* 0698 */ + {0x069A,0x069A},{0x069B,0x069B}, /* 069A */ + {0x069C,0x069C},{0x069D,0x069D}, /* 069C */ + {0x069E,0x069E},{0x069F,0x069F}, /* 069E */ + {0x06A0,0x06A0},{0x06A1,0x06A1}, /* 06A0 */ + {0x06A2,0x06A2},{0x06A3,0x06A3}, /* 06A2 */ + {0x06A4,0x06A4},{0x06A5,0x06A5}, /* 06A4 */ + {0x06A6,0x06A6},{0x06A7,0x06A7}, /* 06A6 */ + {0x06A8,0x06A8},{0x06A9,0x06A9}, /* 06A8 */ + {0x06AA,0x06AA},{0x06AB,0x06AB}, /* 06AA */ + {0x06AC,0x06AC},{0x06AD,0x06AD}, /* 06AC */ + {0x06AE,0x06AE},{0x06AF,0x06AF}, /* 06AE */ + {0x06B0,0x06B0},{0x06B1,0x06B1}, /* 06B0 */ + {0x06B2,0x06B2},{0x06B3,0x06B3}, /* 06B2 */ + {0x06B4,0x06B4},{0x06B5,0x06B5}, /* 06B4 */ + {0x06B6,0x06B6},{0x06B7,0x06B7}, /* 06B6 */ + {0x06B8,0x06B8},{0x06B9,0x06B9}, /* 06B8 */ + {0x06BA,0x06BA},{0x06BB,0x06BB}, /* 06BA */ + {0x06BC,0x06BC},{0x06BD,0x06BD}, /* 06BC */ + {0x06BE,0x06BE},{0x06BF,0x06BF}, /* 06BE */ + {0x06C0,0x06C0},{0x06C1,0x06C1}, /* 06C0 */ + {0x06C2,0x06C2},{0x06C3,0x06C3}, /* 06C2 */ + {0x06C4,0x06C4},{0x06C5,0x06C5}, /* 06C4 */ + {0x06C6,0x06C6},{0x06C7,0x06C7}, /* 06C6 */ + {0x06C8,0x06C8},{0x06C9,0x06C9}, /* 06C8 */ + {0x06CA,0x06CA},{0x06CB,0x06CB}, /* 06CA */ + {0x06CC,0x06CC},{0x06CD,0x06CD}, /* 06CC */ + {0x06CE,0x06CE},{0x06CF,0x06CF}, /* 06CE */ + {0x06D0,0x06D0},{0x06D1,0x06D1}, /* 06D0 */ + {0x06D2,0x06D2},{0x06D3,0x06D3}, /* 06D2 */ + {0x06D4,0x06D4},{0x06D5,0x06D5}, /* 06D4 */ + {0x06D6,0x06D6},{0x06D7,0x06D7}, /* 06D6 */ + {0x06D8,0x06D8},{0x06D9,0x06D9}, /* 06D8 */ + {0x06DA,0x06DA},{0x06DB,0x06DB}, /* 06DA */ + {0x06DC,0x06DC},{0x06DD,0x06DD}, /* 06DC */ + {0x06DE,0x06DE},{0x06DF,0x06DF}, /* 06DE */ + {0x06E0,0x06E0},{0x06E1,0x06E1}, /* 06E0 */ + {0x06E2,0x06E2},{0x06E3,0x06E3}, /* 06E2 */ + {0x06E4,0x06E4},{0x06E5,0x06E5}, /* 06E4 */ + {0x06E6,0x06E6},{0x06E7,0x06E7}, /* 06E6 */ + {0x06E8,0x06E8},{0x06E9,0x06E9}, /* 06E8 */ + {0x06EA,0x06EA},{0x06EB,0x06EB}, /* 06EA */ + {0x06EC,0x06EC},{0x06ED,0x06ED}, /* 06EC */ + {0x06EE,0x06EE},{0x06EF,0x06EF}, /* 06EE */ + {0x06F0,0x06F0},{0x06F1,0x06F1}, /* 06F0 */ + {0x06F2,0x06F2},{0x06F3,0x06F3}, /* 06F2 */ + {0x06F4,0x06F4},{0x06F5,0x06F5}, /* 06F4 */ + {0x06F6,0x06F6},{0x06F7,0x06F7}, /* 06F6 */ + {0x06F8,0x06F8},{0x06F9,0x06F9}, /* 06F8 */ + {0x06FA,0x06FA},{0x06FB,0x06FB}, /* 06FA */ + {0x06FC,0x06FC},{0x06FD,0x06FD}, /* 06FC */ + {0x06FE,0x06FE},{0x06FF,0x06FF} /* 06FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page07[256]={ /* This page is dummy */ + {0x0700,0x0700},{0x0701,0x0701}, /* 0700 */ + {0x0702,0x0702},{0x0703,0x0703}, /* 0702 */ + {0x0704,0x0704},{0x0705,0x0705}, /* 0704 */ + {0x0706,0x0706},{0x0707,0x0707}, /* 0706 */ + {0x0708,0x0708},{0x0709,0x0709}, /* 0708 */ + {0x070A,0x070A},{0x070B,0x070B}, /* 070A */ + {0x070C,0x070C},{0x070D,0x070D}, /* 070C */ + {0x070E,0x070E},{0x070F,0x070F}, /* 070E */ + {0x0710,0x0710},{0x0711,0x0711}, /* 0710 */ + {0x0712,0x0712},{0x0713,0x0713}, /* 0712 */ + {0x0714,0x0714},{0x0715,0x0715}, /* 0714 */ + {0x0716,0x0716},{0x0717,0x0717}, /* 0716 */ + {0x0718,0x0718},{0x0719,0x0719}, /* 0718 */ + {0x071A,0x071A},{0x071B,0x071B}, /* 071A */ + {0x071C,0x071C},{0x071D,0x071D}, /* 071C */ + {0x071E,0x071E},{0x071F,0x071F}, /* 071E */ + {0x0720,0x0720},{0x0721,0x0721}, /* 0720 */ + {0x0722,0x0722},{0x0723,0x0723}, /* 0722 */ + {0x0724,0x0724},{0x0725,0x0725}, /* 0724 */ + {0x0726,0x0726},{0x0727,0x0727}, /* 0726 */ + {0x0728,0x0728},{0x0729,0x0729}, /* 0728 */ + {0x072A,0x072A},{0x072B,0x072B}, /* 072A */ + {0x072C,0x072C},{0x072D,0x072D}, /* 072C */ + {0x072E,0x072E},{0x072F,0x072F}, /* 072E */ + {0x0730,0x0730},{0x0731,0x0731}, /* 0730 */ + {0x0732,0x0732},{0x0733,0x0733}, /* 0732 */ + {0x0734,0x0734},{0x0735,0x0735}, /* 0734 */ + {0x0736,0x0736},{0x0737,0x0737}, /* 0736 */ + {0x0738,0x0738},{0x0739,0x0739}, /* 0738 */ + {0x073A,0x073A},{0x073B,0x073B}, /* 073A */ + {0x073C,0x073C},{0x073D,0x073D}, /* 073C */ + {0x073E,0x073E},{0x073F,0x073F}, /* 073E */ + {0x0740,0x0740},{0x0741,0x0741}, /* 0740 */ + {0x0742,0x0742},{0x0743,0x0743}, /* 0742 */ + {0x0744,0x0744},{0x0745,0x0745}, /* 0744 */ + {0x0746,0x0746},{0x0747,0x0747}, /* 0746 */ + {0x0748,0x0748},{0x0749,0x0749}, /* 0748 */ + {0x074A,0x074A},{0x074B,0x074B}, /* 074A */ + {0x074C,0x074C},{0x074D,0x074D}, /* 074C */ + {0x074E,0x074E},{0x074F,0x074F}, /* 074E */ + {0x0750,0x0750},{0x0751,0x0751}, /* 0750 */ + {0x0752,0x0752},{0x0753,0x0753}, /* 0752 */ + {0x0754,0x0754},{0x0755,0x0755}, /* 0754 */ + {0x0756,0x0756},{0x0757,0x0757}, /* 0756 */ + {0x0758,0x0758},{0x0759,0x0759}, /* 0758 */ + {0x075A,0x075A},{0x075B,0x075B}, /* 075A */ + {0x075C,0x075C},{0x075D,0x075D}, /* 075C */ + {0x075E,0x075E},{0x075F,0x075F}, /* 075E */ + {0x0760,0x0760},{0x0761,0x0761}, /* 0760 */ + {0x0762,0x0762},{0x0763,0x0763}, /* 0762 */ + {0x0764,0x0764},{0x0765,0x0765}, /* 0764 */ + {0x0766,0x0766},{0x0767,0x0767}, /* 0766 */ + {0x0768,0x0768},{0x0769,0x0769}, /* 0768 */ + {0x076A,0x076A},{0x076B,0x076B}, /* 076A */ + {0x076C,0x076C},{0x076D,0x076D}, /* 076C */ + {0x076E,0x076E},{0x076F,0x076F}, /* 076E */ + {0x0770,0x0770},{0x0771,0x0771}, /* 0770 */ + {0x0772,0x0772},{0x0773,0x0773}, /* 0772 */ + {0x0774,0x0774},{0x0775,0x0775}, /* 0774 */ + {0x0776,0x0776},{0x0777,0x0777}, /* 0776 */ + {0x0778,0x0778},{0x0779,0x0779}, /* 0778 */ + {0x077A,0x077A},{0x077B,0x077B}, /* 077A */ + {0x077C,0x077C},{0x077D,0x077D}, /* 077C */ + {0x077E,0x077E},{0x077F,0x077F}, /* 077E */ + {0x0780,0x0780},{0x0781,0x0781}, /* 0780 */ + {0x0782,0x0782},{0x0783,0x0783}, /* 0782 */ + {0x0784,0x0784},{0x0785,0x0785}, /* 0784 */ + {0x0786,0x0786},{0x0787,0x0787}, /* 0786 */ + {0x0788,0x0788},{0x0789,0x0789}, /* 0788 */ + {0x078A,0x078A},{0x078B,0x078B}, /* 078A */ + {0x078C,0x078C},{0x078D,0x078D}, /* 078C */ + {0x078E,0x078E},{0x078F,0x078F}, /* 078E */ + {0x0790,0x0790},{0x0791,0x0791}, /* 0790 */ + {0x0792,0x0792},{0x0793,0x0793}, /* 0792 */ + {0x0794,0x0794},{0x0795,0x0795}, /* 0794 */ + {0x0796,0x0796},{0x0797,0x0797}, /* 0796 */ + {0x0798,0x0798},{0x0799,0x0799}, /* 0798 */ + {0x079A,0x079A},{0x079B,0x079B}, /* 079A */ + {0x079C,0x079C},{0x079D,0x079D}, /* 079C */ + {0x079E,0x079E},{0x079F,0x079F}, /* 079E */ + {0x07A0,0x07A0},{0x07A1,0x07A1}, /* 07A0 */ + {0x07A2,0x07A2},{0x07A3,0x07A3}, /* 07A2 */ + {0x07A4,0x07A4},{0x07A5,0x07A5}, /* 07A4 */ + {0x07A6,0x07A6},{0x07A7,0x07A7}, /* 07A6 */ + {0x07A8,0x07A8},{0x07A9,0x07A9}, /* 07A8 */ + {0x07AA,0x07AA},{0x07AB,0x07AB}, /* 07AA */ + {0x07AC,0x07AC},{0x07AD,0x07AD}, /* 07AC */ + {0x07AE,0x07AE},{0x07AF,0x07AF}, /* 07AE */ + {0x07B0,0x07B0},{0x07B1,0x07B1}, /* 07B0 */ + {0x07B2,0x07B2},{0x07B3,0x07B3}, /* 07B2 */ + {0x07B4,0x07B4},{0x07B5,0x07B5}, /* 07B4 */ + {0x07B6,0x07B6},{0x07B7,0x07B7}, /* 07B6 */ + {0x07B8,0x07B8},{0x07B9,0x07B9}, /* 07B8 */ + {0x07BA,0x07BA},{0x07BB,0x07BB}, /* 07BA */ + {0x07BC,0x07BC},{0x07BD,0x07BD}, /* 07BC */ + {0x07BE,0x07BE},{0x07BF,0x07BF}, /* 07BE */ + {0x07C0,0x07C0},{0x07C1,0x07C1}, /* 07C0 */ + {0x07C2,0x07C2},{0x07C3,0x07C3}, /* 07C2 */ + {0x07C4,0x07C4},{0x07C5,0x07C5}, /* 07C4 */ + {0x07C6,0x07C6},{0x07C7,0x07C7}, /* 07C6 */ + {0x07C8,0x07C8},{0x07C9,0x07C9}, /* 07C8 */ + {0x07CA,0x07CA},{0x07CB,0x07CB}, /* 07CA */ + {0x07CC,0x07CC},{0x07CD,0x07CD}, /* 07CC */ + {0x07CE,0x07CE},{0x07CF,0x07CF}, /* 07CE */ + {0x07D0,0x07D0},{0x07D1,0x07D1}, /* 07D0 */ + {0x07D2,0x07D2},{0x07D3,0x07D3}, /* 07D2 */ + {0x07D4,0x07D4},{0x07D5,0x07D5}, /* 07D4 */ + {0x07D6,0x07D6},{0x07D7,0x07D7}, /* 07D6 */ + {0x07D8,0x07D8},{0x07D9,0x07D9}, /* 07D8 */ + {0x07DA,0x07DA},{0x07DB,0x07DB}, /* 07DA */ + {0x07DC,0x07DC},{0x07DD,0x07DD}, /* 07DC */ + {0x07DE,0x07DE},{0x07DF,0x07DF}, /* 07DE */ + {0x07E0,0x07E0},{0x07E1,0x07E1}, /* 07E0 */ + {0x07E2,0x07E2},{0x07E3,0x07E3}, /* 07E2 */ + {0x07E4,0x07E4},{0x07E5,0x07E5}, /* 07E4 */ + {0x07E6,0x07E6},{0x07E7,0x07E7}, /* 07E6 */ + {0x07E8,0x07E8},{0x07E9,0x07E9}, /* 07E8 */ + {0x07EA,0x07EA},{0x07EB,0x07EB}, /* 07EA */ + {0x07EC,0x07EC},{0x07ED,0x07ED}, /* 07EC */ + {0x07EE,0x07EE},{0x07EF,0x07EF}, /* 07EE */ + {0x07F0,0x07F0},{0x07F1,0x07F1}, /* 07F0 */ + {0x07F2,0x07F2},{0x07F3,0x07F3}, /* 07F2 */ + {0x07F4,0x07F4},{0x07F5,0x07F5}, /* 07F4 */ + {0x07F6,0x07F6},{0x07F7,0x07F7}, /* 07F6 */ + {0x07F8,0x07F8},{0x07F9,0x07F9}, /* 07F8 */ + {0x07FA,0x07FA},{0x07FB,0x07FB}, /* 07FA */ + {0x07FC,0x07FC},{0x07FD,0x07FD}, /* 07FC */ + {0x07FE,0x07FE},{0x07FF,0x07FF} /* 07FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page10[256]={ + {0x1000,0x1000},{0x1001,0x1001}, /* 1000 */ + {0x1002,0x1002},{0x1003,0x1003}, /* 1002 */ + {0x1004,0x1004},{0x1005,0x1005}, /* 1004 */ + {0x1006,0x1006},{0x1007,0x1007}, /* 1006 */ + {0x1008,0x1008},{0x1009,0x1009}, /* 1008 */ + {0x100A,0x100A},{0x100B,0x100B}, /* 100A */ + {0x100C,0x100C},{0x100D,0x100D}, /* 100C */ + {0x100E,0x100E},{0x100F,0x100F}, /* 100E */ + {0x1010,0x1010},{0x1011,0x1011}, /* 1010 */ + {0x1012,0x1012},{0x1013,0x1013}, /* 1012 */ + {0x1014,0x1014},{0x1015,0x1015}, /* 1014 */ + {0x1016,0x1016},{0x1017,0x1017}, /* 1016 */ + {0x1018,0x1018},{0x1019,0x1019}, /* 1018 */ + {0x101A,0x101A},{0x101B,0x101B}, /* 101A */ + {0x101C,0x101C},{0x101D,0x101D}, /* 101C */ + {0x101E,0x101E},{0x101F,0x101F}, /* 101E */ + {0x1020,0x1020},{0x1021,0x1021}, /* 1020 */ + {0x1022,0x1022},{0x1023,0x1023}, /* 1022 */ + {0x1024,0x1024},{0x1025,0x1025}, /* 1024 */ + {0x1026,0x1026},{0x1027,0x1027}, /* 1026 */ + {0x1028,0x1028},{0x1029,0x1029}, /* 1028 */ + {0x102A,0x102A},{0x102B,0x102B}, /* 102A */ + {0x102C,0x102C},{0x102D,0x102D}, /* 102C */ + {0x102E,0x102E},{0x102F,0x102F}, /* 102E */ + {0x1030,0x1030},{0x1031,0x1031}, /* 1030 */ + {0x1032,0x1032},{0x1033,0x1033}, /* 1032 */ + {0x1034,0x1034},{0x1035,0x1035}, /* 1034 */ + {0x1036,0x1036},{0x1037,0x1037}, /* 1036 */ + {0x1038,0x1038},{0x1039,0x1039}, /* 1038 */ + {0x103A,0x103A},{0x103B,0x103B}, /* 103A */ + {0x103C,0x103C},{0x103D,0x103D}, /* 103C */ + {0x103E,0x103E},{0x103F,0x103F}, /* 103E */ + {0x1040,0x1040},{0x1041,0x1041}, /* 1040 */ + {0x1042,0x1042},{0x1043,0x1043}, /* 1042 */ + {0x1044,0x1044},{0x1045,0x1045}, /* 1044 */ + {0x1046,0x1046},{0x1047,0x1047}, /* 1046 */ + {0x1048,0x1048},{0x1049,0x1049}, /* 1048 */ + {0x104A,0x104A},{0x104B,0x104B}, /* 104A */ + {0x104C,0x104C},{0x104D,0x104D}, /* 104C */ + {0x104E,0x104E},{0x104F,0x104F}, /* 104E */ + {0x1050,0x1050},{0x1051,0x1051}, /* 1050 */ + {0x1052,0x1052},{0x1053,0x1053}, /* 1052 */ + {0x1054,0x1054},{0x1055,0x1055}, /* 1054 */ + {0x1056,0x1056},{0x1057,0x1057}, /* 1056 */ + {0x1058,0x1058},{0x1059,0x1059}, /* 1058 */ + {0x105A,0x105A},{0x105B,0x105B}, /* 105A */ + {0x105C,0x105C},{0x105D,0x105D}, /* 105C */ + {0x105E,0x105E},{0x105F,0x105F}, /* 105E */ + {0x1060,0x1060},{0x1061,0x1061}, /* 1060 */ + {0x1062,0x1062},{0x1063,0x1063}, /* 1062 */ + {0x1064,0x1064},{0x1065,0x1065}, /* 1064 */ + {0x1066,0x1066},{0x1067,0x1067}, /* 1066 */ + {0x1068,0x1068},{0x1069,0x1069}, /* 1068 */ + {0x106A,0x106A},{0x106B,0x106B}, /* 106A */ + {0x106C,0x106C},{0x106D,0x106D}, /* 106C */ + {0x106E,0x106E},{0x106F,0x106F}, /* 106E */ + {0x1070,0x1070},{0x1071,0x1071}, /* 1070 */ + {0x1072,0x1072},{0x1073,0x1073}, /* 1072 */ + {0x1074,0x1074},{0x1075,0x1075}, /* 1074 */ + {0x1076,0x1076},{0x1077,0x1077}, /* 1076 */ + {0x1078,0x1078},{0x1079,0x1079}, /* 1078 */ + {0x107A,0x107A},{0x107B,0x107B}, /* 107A */ + {0x107C,0x107C},{0x107D,0x107D}, /* 107C */ + {0x107E,0x107E},{0x107F,0x107F}, /* 107E */ + {0x1080,0x1080},{0x1081,0x1081}, /* 1080 */ + {0x1082,0x1082},{0x1083,0x1083}, /* 1082 */ + {0x1084,0x1084},{0x1085,0x1085}, /* 1084 */ + {0x1086,0x1086},{0x1087,0x1087}, /* 1086 */ + {0x1088,0x1088},{0x1089,0x1089}, /* 1088 */ + {0x108A,0x108A},{0x108B,0x108B}, /* 108A */ + {0x108C,0x108C},{0x108D,0x108D}, /* 108C */ + {0x108E,0x108E},{0x108F,0x108F}, /* 108E */ + {0x1090,0x1090},{0x1091,0x1091}, /* 1090 */ + {0x1092,0x1092},{0x1093,0x1093}, /* 1092 */ + {0x1094,0x1094},{0x1095,0x1095}, /* 1094 */ + {0x1096,0x1096},{0x1097,0x1097}, /* 1096 */ + {0x1098,0x1098},{0x1099,0x1099}, /* 1098 */ + {0x109A,0x109A},{0x109B,0x109B}, /* 109A */ + {0x109C,0x109C},{0x109D,0x109D}, /* 109C */ + {0x109E,0x109E},{0x109F,0x109F}, /* 109E */ + {0x10A0,0x2D00},{0x10A1,0x2D01}, /* 10A0 */ + {0x10A2,0x2D02},{0x10A3,0x2D03}, /* 10A2 */ + {0x10A4,0x2D04},{0x10A5,0x2D05}, /* 10A4 */ + {0x10A6,0x2D06},{0x10A7,0x2D07}, /* 10A6 */ + {0x10A8,0x2D08},{0x10A9,0x2D09}, /* 10A8 */ + {0x10AA,0x2D0A},{0x10AB,0x2D0B}, /* 10AA */ + {0x10AC,0x2D0C},{0x10AD,0x2D0D}, /* 10AC */ + {0x10AE,0x2D0E},{0x10AF,0x2D0F}, /* 10AE */ + {0x10B0,0x2D10},{0x10B1,0x2D11}, /* 10B0 */ + {0x10B2,0x2D12},{0x10B3,0x2D13}, /* 10B2 */ + {0x10B4,0x2D14},{0x10B5,0x2D15}, /* 10B4 */ + {0x10B6,0x2D16},{0x10B7,0x2D17}, /* 10B6 */ + {0x10B8,0x2D18},{0x10B9,0x2D19}, /* 10B8 */ + {0x10BA,0x2D1A},{0x10BB,0x2D1B}, /* 10BA */ + {0x10BC,0x2D1C},{0x10BD,0x2D1D}, /* 10BC */ + {0x10BE,0x2D1E},{0x10BF,0x2D1F}, /* 10BE */ + {0x10C0,0x2D20},{0x10C1,0x2D21}, /* 10C0 */ + {0x10C2,0x2D22},{0x10C3,0x2D23}, /* 10C2 */ + {0x10C4,0x2D24},{0x10C5,0x2D25}, /* 10C4 */ + {0x10C6,0x10C6},{0x10C7,0x2D27}, /* 10C6 */ + {0x10C8,0x10C8},{0x10C9,0x10C9}, /* 10C8 */ + {0x10CA,0x10CA},{0x10CB,0x10CB}, /* 10CA */ + {0x10CC,0x10CC},{0x10CD,0x2D2D}, /* 10CC */ + {0x10CE,0x10CE},{0x10CF,0x10CF}, /* 10CE */ + {0x1C90,0x10D0},{0x1C91,0x10D1}, /* 10D0 */ + {0x1C92,0x10D2},{0x1C93,0x10D3}, /* 10D2 */ + {0x1C94,0x10D4},{0x1C95,0x10D5}, /* 10D4 */ + {0x1C96,0x10D6},{0x1C97,0x10D7}, /* 10D6 */ + {0x1C98,0x10D8},{0x1C99,0x10D9}, /* 10D8 */ + {0x1C9A,0x10DA},{0x1C9B,0x10DB}, /* 10DA */ + {0x1C9C,0x10DC},{0x1C9D,0x10DD}, /* 10DC */ + {0x1C9E,0x10DE},{0x1C9F,0x10DF}, /* 10DE */ + {0x1CA0,0x10E0},{0x1CA1,0x10E1}, /* 10E0 */ + {0x1CA2,0x10E2},{0x1CA3,0x10E3}, /* 10E2 */ + {0x1CA4,0x10E4},{0x1CA5,0x10E5}, /* 10E4 */ + {0x1CA6,0x10E6},{0x1CA7,0x10E7}, /* 10E6 */ + {0x1CA8,0x10E8},{0x1CA9,0x10E9}, /* 10E8 */ + {0x1CAA,0x10EA},{0x1CAB,0x10EB}, /* 10EA */ + {0x1CAC,0x10EC},{0x1CAD,0x10ED}, /* 10EC */ + {0x1CAE,0x10EE},{0x1CAF,0x10EF}, /* 10EE */ + {0x1CB0,0x10F0},{0x1CB1,0x10F1}, /* 10F0 */ + {0x1CB2,0x10F2},{0x1CB3,0x10F3}, /* 10F2 */ + {0x1CB4,0x10F4},{0x1CB5,0x10F5}, /* 10F4 */ + {0x1CB6,0x10F6},{0x1CB7,0x10F7}, /* 10F6 */ + {0x1CB8,0x10F8},{0x1CB9,0x10F9}, /* 10F8 */ + {0x1CBA,0x10FA},{0x10FB,0x10FB}, /* 10FA */ + {0x10FC,0x10FC},{0x1CBD,0x10FD}, /* 10FC */ + {0x1CBE,0x10FE},{0x1CBF,0x10FF} /* 10FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page13[256]={ + {0x1300,0x1300},{0x1301,0x1301}, /* 1300 */ + {0x1302,0x1302},{0x1303,0x1303}, /* 1302 */ + {0x1304,0x1304},{0x1305,0x1305}, /* 1304 */ + {0x1306,0x1306},{0x1307,0x1307}, /* 1306 */ + {0x1308,0x1308},{0x1309,0x1309}, /* 1308 */ + {0x130A,0x130A},{0x130B,0x130B}, /* 130A */ + {0x130C,0x130C},{0x130D,0x130D}, /* 130C */ + {0x130E,0x130E},{0x130F,0x130F}, /* 130E */ + {0x1310,0x1310},{0x1311,0x1311}, /* 1310 */ + {0x1312,0x1312},{0x1313,0x1313}, /* 1312 */ + {0x1314,0x1314},{0x1315,0x1315}, /* 1314 */ + {0x1316,0x1316},{0x1317,0x1317}, /* 1316 */ + {0x1318,0x1318},{0x1319,0x1319}, /* 1318 */ + {0x131A,0x131A},{0x131B,0x131B}, /* 131A */ + {0x131C,0x131C},{0x131D,0x131D}, /* 131C */ + {0x131E,0x131E},{0x131F,0x131F}, /* 131E */ + {0x1320,0x1320},{0x1321,0x1321}, /* 1320 */ + {0x1322,0x1322},{0x1323,0x1323}, /* 1322 */ + {0x1324,0x1324},{0x1325,0x1325}, /* 1324 */ + {0x1326,0x1326},{0x1327,0x1327}, /* 1326 */ + {0x1328,0x1328},{0x1329,0x1329}, /* 1328 */ + {0x132A,0x132A},{0x132B,0x132B}, /* 132A */ + {0x132C,0x132C},{0x132D,0x132D}, /* 132C */ + {0x132E,0x132E},{0x132F,0x132F}, /* 132E */ + {0x1330,0x1330},{0x1331,0x1331}, /* 1330 */ + {0x1332,0x1332},{0x1333,0x1333}, /* 1332 */ + {0x1334,0x1334},{0x1335,0x1335}, /* 1334 */ + {0x1336,0x1336},{0x1337,0x1337}, /* 1336 */ + {0x1338,0x1338},{0x1339,0x1339}, /* 1338 */ + {0x133A,0x133A},{0x133B,0x133B}, /* 133A */ + {0x133C,0x133C},{0x133D,0x133D}, /* 133C */ + {0x133E,0x133E},{0x133F,0x133F}, /* 133E */ + {0x1340,0x1340},{0x1341,0x1341}, /* 1340 */ + {0x1342,0x1342},{0x1343,0x1343}, /* 1342 */ + {0x1344,0x1344},{0x1345,0x1345}, /* 1344 */ + {0x1346,0x1346},{0x1347,0x1347}, /* 1346 */ + {0x1348,0x1348},{0x1349,0x1349}, /* 1348 */ + {0x134A,0x134A},{0x134B,0x134B}, /* 134A */ + {0x134C,0x134C},{0x134D,0x134D}, /* 134C */ + {0x134E,0x134E},{0x134F,0x134F}, /* 134E */ + {0x1350,0x1350},{0x1351,0x1351}, /* 1350 */ + {0x1352,0x1352},{0x1353,0x1353}, /* 1352 */ + {0x1354,0x1354},{0x1355,0x1355}, /* 1354 */ + {0x1356,0x1356},{0x1357,0x1357}, /* 1356 */ + {0x1358,0x1358},{0x1359,0x1359}, /* 1358 */ + {0x135A,0x135A},{0x135B,0x135B}, /* 135A */ + {0x135C,0x135C},{0x135D,0x135D}, /* 135C */ + {0x135E,0x135E},{0x135F,0x135F}, /* 135E */ + {0x1360,0x1360},{0x1361,0x1361}, /* 1360 */ + {0x1362,0x1362},{0x1363,0x1363}, /* 1362 */ + {0x1364,0x1364},{0x1365,0x1365}, /* 1364 */ + {0x1366,0x1366},{0x1367,0x1367}, /* 1366 */ + {0x1368,0x1368},{0x1369,0x1369}, /* 1368 */ + {0x136A,0x136A},{0x136B,0x136B}, /* 136A */ + {0x136C,0x136C},{0x136D,0x136D}, /* 136C */ + {0x136E,0x136E},{0x136F,0x136F}, /* 136E */ + {0x1370,0x1370},{0x1371,0x1371}, /* 1370 */ + {0x1372,0x1372},{0x1373,0x1373}, /* 1372 */ + {0x1374,0x1374},{0x1375,0x1375}, /* 1374 */ + {0x1376,0x1376},{0x1377,0x1377}, /* 1376 */ + {0x1378,0x1378},{0x1379,0x1379}, /* 1378 */ + {0x137A,0x137A},{0x137B,0x137B}, /* 137A */ + {0x137C,0x137C},{0x137D,0x137D}, /* 137C */ + {0x137E,0x137E},{0x137F,0x137F}, /* 137E */ + {0x1380,0x1380},{0x1381,0x1381}, /* 1380 */ + {0x1382,0x1382},{0x1383,0x1383}, /* 1382 */ + {0x1384,0x1384},{0x1385,0x1385}, /* 1384 */ + {0x1386,0x1386},{0x1387,0x1387}, /* 1386 */ + {0x1388,0x1388},{0x1389,0x1389}, /* 1388 */ + {0x138A,0x138A},{0x138B,0x138B}, /* 138A */ + {0x138C,0x138C},{0x138D,0x138D}, /* 138C */ + {0x138E,0x138E},{0x138F,0x138F}, /* 138E */ + {0x1390,0x1390},{0x1391,0x1391}, /* 1390 */ + {0x1392,0x1392},{0x1393,0x1393}, /* 1392 */ + {0x1394,0x1394},{0x1395,0x1395}, /* 1394 */ + {0x1396,0x1396},{0x1397,0x1397}, /* 1396 */ + {0x1398,0x1398},{0x1399,0x1399}, /* 1398 */ + {0x139A,0x139A},{0x139B,0x139B}, /* 139A */ + {0x139C,0x139C},{0x139D,0x139D}, /* 139C */ + {0x139E,0x139E},{0x139F,0x139F}, /* 139E */ + {0x13A0,0xAB70},{0x13A1,0xAB71}, /* 13A0 */ + {0x13A2,0xAB72},{0x13A3,0xAB73}, /* 13A2 */ + {0x13A4,0xAB74},{0x13A5,0xAB75}, /* 13A4 */ + {0x13A6,0xAB76},{0x13A7,0xAB77}, /* 13A6 */ + {0x13A8,0xAB78},{0x13A9,0xAB79}, /* 13A8 */ + {0x13AA,0xAB7A},{0x13AB,0xAB7B}, /* 13AA */ + {0x13AC,0xAB7C},{0x13AD,0xAB7D}, /* 13AC */ + {0x13AE,0xAB7E},{0x13AF,0xAB7F}, /* 13AE */ + {0x13B0,0xAB80},{0x13B1,0xAB81}, /* 13B0 */ + {0x13B2,0xAB82},{0x13B3,0xAB83}, /* 13B2 */ + {0x13B4,0xAB84},{0x13B5,0xAB85}, /* 13B4 */ + {0x13B6,0xAB86},{0x13B7,0xAB87}, /* 13B6 */ + {0x13B8,0xAB88},{0x13B9,0xAB89}, /* 13B8 */ + {0x13BA,0xAB8A},{0x13BB,0xAB8B}, /* 13BA */ + {0x13BC,0xAB8C},{0x13BD,0xAB8D}, /* 13BC */ + {0x13BE,0xAB8E},{0x13BF,0xAB8F}, /* 13BE */ + {0x13C0,0xAB90},{0x13C1,0xAB91}, /* 13C0 */ + {0x13C2,0xAB92},{0x13C3,0xAB93}, /* 13C2 */ + {0x13C4,0xAB94},{0x13C5,0xAB95}, /* 13C4 */ + {0x13C6,0xAB96},{0x13C7,0xAB97}, /* 13C6 */ + {0x13C8,0xAB98},{0x13C9,0xAB99}, /* 13C8 */ + {0x13CA,0xAB9A},{0x13CB,0xAB9B}, /* 13CA */ + {0x13CC,0xAB9C},{0x13CD,0xAB9D}, /* 13CC */ + {0x13CE,0xAB9E},{0x13CF,0xAB9F}, /* 13CE */ + {0x13D0,0xABA0},{0x13D1,0xABA1}, /* 13D0 */ + {0x13D2,0xABA2},{0x13D3,0xABA3}, /* 13D2 */ + {0x13D4,0xABA4},{0x13D5,0xABA5}, /* 13D4 */ + {0x13D6,0xABA6},{0x13D7,0xABA7}, /* 13D6 */ + {0x13D8,0xABA8},{0x13D9,0xABA9}, /* 13D8 */ + {0x13DA,0xABAA},{0x13DB,0xABAB}, /* 13DA */ + {0x13DC,0xABAC},{0x13DD,0xABAD}, /* 13DC */ + {0x13DE,0xABAE},{0x13DF,0xABAF}, /* 13DE */ + {0x13E0,0xABB0},{0x13E1,0xABB1}, /* 13E0 */ + {0x13E2,0xABB2},{0x13E3,0xABB3}, /* 13E2 */ + {0x13E4,0xABB4},{0x13E5,0xABB5}, /* 13E4 */ + {0x13E6,0xABB6},{0x13E7,0xABB7}, /* 13E6 */ + {0x13E8,0xABB8},{0x13E9,0xABB9}, /* 13E8 */ + {0x13EA,0xABBA},{0x13EB,0xABBB}, /* 13EA */ + {0x13EC,0xABBC},{0x13ED,0xABBD}, /* 13EC */ + {0x13EE,0xABBE},{0x13EF,0xABBF}, /* 13EE */ + {0x13F0,0x13F8},{0x13F1,0x13F9}, /* 13F0 */ + {0x13F2,0x13FA},{0x13F3,0x13FB}, /* 13F2 */ + {0x13F4,0x13FC},{0x13F5,0x13FD}, /* 13F4 */ + {0x13F6,0x13F6},{0x13F7,0x13F7}, /* 13F6 */ + {0x13F0,0x13F8},{0x13F1,0x13F9}, /* 13F8 */ + {0x13F2,0x13FA},{0x13F3,0x13FB}, /* 13FA */ + {0x13F4,0x13FC},{0x13F5,0x13FD}, /* 13FC */ + {0x13FE,0x13FE},{0x13FF,0x13FF} /* 13FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page1C[256]={ + {0x1C00,0x1C00},{0x1C01,0x1C01}, /* 1C00 */ + {0x1C02,0x1C02},{0x1C03,0x1C03}, /* 1C02 */ + {0x1C04,0x1C04},{0x1C05,0x1C05}, /* 1C04 */ + {0x1C06,0x1C06},{0x1C07,0x1C07}, /* 1C06 */ + {0x1C08,0x1C08},{0x1C09,0x1C09}, /* 1C08 */ + {0x1C0A,0x1C0A},{0x1C0B,0x1C0B}, /* 1C0A */ + {0x1C0C,0x1C0C},{0x1C0D,0x1C0D}, /* 1C0C */ + {0x1C0E,0x1C0E},{0x1C0F,0x1C0F}, /* 1C0E */ + {0x1C10,0x1C10},{0x1C11,0x1C11}, /* 1C10 */ + {0x1C12,0x1C12},{0x1C13,0x1C13}, /* 1C12 */ + {0x1C14,0x1C14},{0x1C15,0x1C15}, /* 1C14 */ + {0x1C16,0x1C16},{0x1C17,0x1C17}, /* 1C16 */ + {0x1C18,0x1C18},{0x1C19,0x1C19}, /* 1C18 */ + {0x1C1A,0x1C1A},{0x1C1B,0x1C1B}, /* 1C1A */ + {0x1C1C,0x1C1C},{0x1C1D,0x1C1D}, /* 1C1C */ + {0x1C1E,0x1C1E},{0x1C1F,0x1C1F}, /* 1C1E */ + {0x1C20,0x1C20},{0x1C21,0x1C21}, /* 1C20 */ + {0x1C22,0x1C22},{0x1C23,0x1C23}, /* 1C22 */ + {0x1C24,0x1C24},{0x1C25,0x1C25}, /* 1C24 */ + {0x1C26,0x1C26},{0x1C27,0x1C27}, /* 1C26 */ + {0x1C28,0x1C28},{0x1C29,0x1C29}, /* 1C28 */ + {0x1C2A,0x1C2A},{0x1C2B,0x1C2B}, /* 1C2A */ + {0x1C2C,0x1C2C},{0x1C2D,0x1C2D}, /* 1C2C */ + {0x1C2E,0x1C2E},{0x1C2F,0x1C2F}, /* 1C2E */ + {0x1C30,0x1C30},{0x1C31,0x1C31}, /* 1C30 */ + {0x1C32,0x1C32},{0x1C33,0x1C33}, /* 1C32 */ + {0x1C34,0x1C34},{0x1C35,0x1C35}, /* 1C34 */ + {0x1C36,0x1C36},{0x1C37,0x1C37}, /* 1C36 */ + {0x1C38,0x1C38},{0x1C39,0x1C39}, /* 1C38 */ + {0x1C3A,0x1C3A},{0x1C3B,0x1C3B}, /* 1C3A */ + {0x1C3C,0x1C3C},{0x1C3D,0x1C3D}, /* 1C3C */ + {0x1C3E,0x1C3E},{0x1C3F,0x1C3F}, /* 1C3E */ + {0x1C40,0x1C40},{0x1C41,0x1C41}, /* 1C40 */ + {0x1C42,0x1C42},{0x1C43,0x1C43}, /* 1C42 */ + {0x1C44,0x1C44},{0x1C45,0x1C45}, /* 1C44 */ + {0x1C46,0x1C46},{0x1C47,0x1C47}, /* 1C46 */ + {0x1C48,0x1C48},{0x1C49,0x1C49}, /* 1C48 */ + {0x1C4A,0x1C4A},{0x1C4B,0x1C4B}, /* 1C4A */ + {0x1C4C,0x1C4C},{0x1C4D,0x1C4D}, /* 1C4C */ + {0x1C4E,0x1C4E},{0x1C4F,0x1C4F}, /* 1C4E */ + {0x1C50,0x1C50},{0x1C51,0x1C51}, /* 1C50 */ + {0x1C52,0x1C52},{0x1C53,0x1C53}, /* 1C52 */ + {0x1C54,0x1C54},{0x1C55,0x1C55}, /* 1C54 */ + {0x1C56,0x1C56},{0x1C57,0x1C57}, /* 1C56 */ + {0x1C58,0x1C58},{0x1C59,0x1C59}, /* 1C58 */ + {0x1C5A,0x1C5A},{0x1C5B,0x1C5B}, /* 1C5A */ + {0x1C5C,0x1C5C},{0x1C5D,0x1C5D}, /* 1C5C */ + {0x1C5E,0x1C5E},{0x1C5F,0x1C5F}, /* 1C5E */ + {0x1C60,0x1C60},{0x1C61,0x1C61}, /* 1C60 */ + {0x1C62,0x1C62},{0x1C63,0x1C63}, /* 1C62 */ + {0x1C64,0x1C64},{0x1C65,0x1C65}, /* 1C64 */ + {0x1C66,0x1C66},{0x1C67,0x1C67}, /* 1C66 */ + {0x1C68,0x1C68},{0x1C69,0x1C69}, /* 1C68 */ + {0x1C6A,0x1C6A},{0x1C6B,0x1C6B}, /* 1C6A */ + {0x1C6C,0x1C6C},{0x1C6D,0x1C6D}, /* 1C6C */ + {0x1C6E,0x1C6E},{0x1C6F,0x1C6F}, /* 1C6E */ + {0x1C70,0x1C70},{0x1C71,0x1C71}, /* 1C70 */ + {0x1C72,0x1C72},{0x1C73,0x1C73}, /* 1C72 */ + {0x1C74,0x1C74},{0x1C75,0x1C75}, /* 1C74 */ + {0x1C76,0x1C76},{0x1C77,0x1C77}, /* 1C76 */ + {0x1C78,0x1C78},{0x1C79,0x1C79}, /* 1C78 */ + {0x1C7A,0x1C7A},{0x1C7B,0x1C7B}, /* 1C7A */ + {0x1C7C,0x1C7C},{0x1C7D,0x1C7D}, /* 1C7C */ + {0x1C7E,0x1C7E},{0x1C7F,0x1C7F}, /* 1C7E */ + {0x0412,0x1C80},{0x0414,0x1C81}, /* 1C80 */ + {0x041E,0x1C82},{0x0421,0x1C83}, /* 1C82 */ + {0x0422,0x1C84},{0x0422,0x1C85}, /* 1C84 */ + {0x042A,0x1C86},{0x0462,0x1C87}, /* 1C86 */ + {0xA64A,0x1C88},{0x1C89,0x1C89}, /* 1C88 */ + {0x1C8A,0x1C8A},{0x1C8B,0x1C8B}, /* 1C8A */ + {0x1C8C,0x1C8C},{0x1C8D,0x1C8D}, /* 1C8C */ + {0x1C8E,0x1C8E},{0x1C8F,0x1C8F}, /* 1C8E */ + {0x1C90,0x10D0},{0x1C91,0x10D1}, /* 1C90 */ + {0x1C92,0x10D2},{0x1C93,0x10D3}, /* 1C92 */ + {0x1C94,0x10D4},{0x1C95,0x10D5}, /* 1C94 */ + {0x1C96,0x10D6},{0x1C97,0x10D7}, /* 1C96 */ + {0x1C98,0x10D8},{0x1C99,0x10D9}, /* 1C98 */ + {0x1C9A,0x10DA},{0x1C9B,0x10DB}, /* 1C9A */ + {0x1C9C,0x10DC},{0x1C9D,0x10DD}, /* 1C9C */ + {0x1C9E,0x10DE},{0x1C9F,0x10DF}, /* 1C9E */ + {0x1CA0,0x10E0},{0x1CA1,0x10E1}, /* 1CA0 */ + {0x1CA2,0x10E2},{0x1CA3,0x10E3}, /* 1CA2 */ + {0x1CA4,0x10E4},{0x1CA5,0x10E5}, /* 1CA4 */ + {0x1CA6,0x10E6},{0x1CA7,0x10E7}, /* 1CA6 */ + {0x1CA8,0x10E8},{0x1CA9,0x10E9}, /* 1CA8 */ + {0x1CAA,0x10EA},{0x1CAB,0x10EB}, /* 1CAA */ + {0x1CAC,0x10EC},{0x1CAD,0x10ED}, /* 1CAC */ + {0x1CAE,0x10EE},{0x1CAF,0x10EF}, /* 1CAE */ + {0x1CB0,0x10F0},{0x1CB1,0x10F1}, /* 1CB0 */ + {0x1CB2,0x10F2},{0x1CB3,0x10F3}, /* 1CB2 */ + {0x1CB4,0x10F4},{0x1CB5,0x10F5}, /* 1CB4 */ + {0x1CB6,0x10F6},{0x1CB7,0x10F7}, /* 1CB6 */ + {0x1CB8,0x10F8},{0x1CB9,0x10F9}, /* 1CB8 */ + {0x1CBA,0x10FA},{0x1CBB,0x1CBB}, /* 1CBA */ + {0x1CBC,0x1CBC},{0x1CBD,0x10FD}, /* 1CBC */ + {0x1CBE,0x10FE},{0x1CBF,0x10FF}, /* 1CBE */ + {0x1CC0,0x1CC0},{0x1CC1,0x1CC1}, /* 1CC0 */ + {0x1CC2,0x1CC2},{0x1CC3,0x1CC3}, /* 1CC2 */ + {0x1CC4,0x1CC4},{0x1CC5,0x1CC5}, /* 1CC4 */ + {0x1CC6,0x1CC6},{0x1CC7,0x1CC7}, /* 1CC6 */ + {0x1CC8,0x1CC8},{0x1CC9,0x1CC9}, /* 1CC8 */ + {0x1CCA,0x1CCA},{0x1CCB,0x1CCB}, /* 1CCA */ + {0x1CCC,0x1CCC},{0x1CCD,0x1CCD}, /* 1CCC */ + {0x1CCE,0x1CCE},{0x1CCF,0x1CCF}, /* 1CCE */ + {0x1CD0,0x1CD0},{0x1CD1,0x1CD1}, /* 1CD0 */ + {0x1CD2,0x1CD2},{0x1CD3,0x1CD3}, /* 1CD2 */ + {0x1CD4,0x1CD4},{0x1CD5,0x1CD5}, /* 1CD4 */ + {0x1CD6,0x1CD6},{0x1CD7,0x1CD7}, /* 1CD6 */ + {0x1CD8,0x1CD8},{0x1CD9,0x1CD9}, /* 1CD8 */ + {0x1CDA,0x1CDA},{0x1CDB,0x1CDB}, /* 1CDA */ + {0x1CDC,0x1CDC},{0x1CDD,0x1CDD}, /* 1CDC */ + {0x1CDE,0x1CDE},{0x1CDF,0x1CDF}, /* 1CDE */ + {0x1CE0,0x1CE0},{0x1CE1,0x1CE1}, /* 1CE0 */ + {0x1CE2,0x1CE2},{0x1CE3,0x1CE3}, /* 1CE2 */ + {0x1CE4,0x1CE4},{0x1CE5,0x1CE5}, /* 1CE4 */ + {0x1CE6,0x1CE6},{0x1CE7,0x1CE7}, /* 1CE6 */ + {0x1CE8,0x1CE8},{0x1CE9,0x1CE9}, /* 1CE8 */ + {0x1CEA,0x1CEA},{0x1CEB,0x1CEB}, /* 1CEA */ + {0x1CEC,0x1CEC},{0x1CED,0x1CED}, /* 1CEC */ + {0x1CEE,0x1CEE},{0x1CEF,0x1CEF}, /* 1CEE */ + {0x1CF0,0x1CF0},{0x1CF1,0x1CF1}, /* 1CF0 */ + {0x1CF2,0x1CF2},{0x1CF3,0x1CF3}, /* 1CF2 */ + {0x1CF4,0x1CF4},{0x1CF5,0x1CF5}, /* 1CF4 */ + {0x1CF6,0x1CF6},{0x1CF7,0x1CF7}, /* 1CF6 */ + {0x1CF8,0x1CF8},{0x1CF9,0x1CF9}, /* 1CF8 */ + {0x1CFA,0x1CFA},{0x1CFB,0x1CFB}, /* 1CFA */ + {0x1CFC,0x1CFC},{0x1CFD,0x1CFD}, /* 1CFC */ + {0x1CFE,0x1CFE},{0x1CFF,0x1CFF} /* 1CFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page1D[256]={ + {0x1D00,0x1D00},{0x1D01,0x1D01}, /* 1D00 */ + {0x1D02,0x1D02},{0x1D03,0x1D03}, /* 1D02 */ + {0x1D04,0x1D04},{0x1D05,0x1D05}, /* 1D04 */ + {0x1D06,0x1D06},{0x1D07,0x1D07}, /* 1D06 */ + {0x1D08,0x1D08},{0x1D09,0x1D09}, /* 1D08 */ + {0x1D0A,0x1D0A},{0x1D0B,0x1D0B}, /* 1D0A */ + {0x1D0C,0x1D0C},{0x1D0D,0x1D0D}, /* 1D0C */ + {0x1D0E,0x1D0E},{0x1D0F,0x1D0F}, /* 1D0E */ + {0x1D10,0x1D10},{0x1D11,0x1D11}, /* 1D10 */ + {0x1D12,0x1D12},{0x1D13,0x1D13}, /* 1D12 */ + {0x1D14,0x1D14},{0x1D15,0x1D15}, /* 1D14 */ + {0x1D16,0x1D16},{0x1D17,0x1D17}, /* 1D16 */ + {0x1D18,0x1D18},{0x1D19,0x1D19}, /* 1D18 */ + {0x1D1A,0x1D1A},{0x1D1B,0x1D1B}, /* 1D1A */ + {0x1D1C,0x1D1C},{0x1D1D,0x1D1D}, /* 1D1C */ + {0x1D1E,0x1D1E},{0x1D1F,0x1D1F}, /* 1D1E */ + {0x1D20,0x1D20},{0x1D21,0x1D21}, /* 1D20 */ + {0x1D22,0x1D22},{0x1D23,0x1D23}, /* 1D22 */ + {0x1D24,0x1D24},{0x1D25,0x1D25}, /* 1D24 */ + {0x1D26,0x1D26},{0x1D27,0x1D27}, /* 1D26 */ + {0x1D28,0x1D28},{0x1D29,0x1D29}, /* 1D28 */ + {0x1D2A,0x1D2A},{0x1D2B,0x1D2B}, /* 1D2A */ + {0x1D2C,0x1D2C},{0x1D2D,0x1D2D}, /* 1D2C */ + {0x1D2E,0x1D2E},{0x1D2F,0x1D2F}, /* 1D2E */ + {0x1D30,0x1D30},{0x1D31,0x1D31}, /* 1D30 */ + {0x1D32,0x1D32},{0x1D33,0x1D33}, /* 1D32 */ + {0x1D34,0x1D34},{0x1D35,0x1D35}, /* 1D34 */ + {0x1D36,0x1D36},{0x1D37,0x1D37}, /* 1D36 */ + {0x1D38,0x1D38},{0x1D39,0x1D39}, /* 1D38 */ + {0x1D3A,0x1D3A},{0x1D3B,0x1D3B}, /* 1D3A */ + {0x1D3C,0x1D3C},{0x1D3D,0x1D3D}, /* 1D3C */ + {0x1D3E,0x1D3E},{0x1D3F,0x1D3F}, /* 1D3E */ + {0x1D40,0x1D40},{0x1D41,0x1D41}, /* 1D40 */ + {0x1D42,0x1D42},{0x1D43,0x1D43}, /* 1D42 */ + {0x1D44,0x1D44},{0x1D45,0x1D45}, /* 1D44 */ + {0x1D46,0x1D46},{0x1D47,0x1D47}, /* 1D46 */ + {0x1D48,0x1D48},{0x1D49,0x1D49}, /* 1D48 */ + {0x1D4A,0x1D4A},{0x1D4B,0x1D4B}, /* 1D4A */ + {0x1D4C,0x1D4C},{0x1D4D,0x1D4D}, /* 1D4C */ + {0x1D4E,0x1D4E},{0x1D4F,0x1D4F}, /* 1D4E */ + {0x1D50,0x1D50},{0x1D51,0x1D51}, /* 1D50 */ + {0x1D52,0x1D52},{0x1D53,0x1D53}, /* 1D52 */ + {0x1D54,0x1D54},{0x1D55,0x1D55}, /* 1D54 */ + {0x1D56,0x1D56},{0x1D57,0x1D57}, /* 1D56 */ + {0x1D58,0x1D58},{0x1D59,0x1D59}, /* 1D58 */ + {0x1D5A,0x1D5A},{0x1D5B,0x1D5B}, /* 1D5A */ + {0x1D5C,0x1D5C},{0x1D5D,0x1D5D}, /* 1D5C */ + {0x1D5E,0x1D5E},{0x1D5F,0x1D5F}, /* 1D5E */ + {0x1D60,0x1D60},{0x1D61,0x1D61}, /* 1D60 */ + {0x1D62,0x1D62},{0x1D63,0x1D63}, /* 1D62 */ + {0x1D64,0x1D64},{0x1D65,0x1D65}, /* 1D64 */ + {0x1D66,0x1D66},{0x1D67,0x1D67}, /* 1D66 */ + {0x1D68,0x1D68},{0x1D69,0x1D69}, /* 1D68 */ + {0x1D6A,0x1D6A},{0x1D6B,0x1D6B}, /* 1D6A */ + {0x1D6C,0x1D6C},{0x1D6D,0x1D6D}, /* 1D6C */ + {0x1D6E,0x1D6E},{0x1D6F,0x1D6F}, /* 1D6E */ + {0x1D70,0x1D70},{0x1D71,0x1D71}, /* 1D70 */ + {0x1D72,0x1D72},{0x1D73,0x1D73}, /* 1D72 */ + {0x1D74,0x1D74},{0x1D75,0x1D75}, /* 1D74 */ + {0x1D76,0x1D76},{0x1D77,0x1D77}, /* 1D76 */ + {0x1D78,0x1D78},{0xA77D,0x1D79}, /* 1D78 */ + {0x1D7A,0x1D7A},{0x1D7B,0x1D7B}, /* 1D7A */ + {0x1D7C,0x1D7C},{0x2C63,0x1D7D}, /* 1D7C */ + {0x1D7E,0x1D7E},{0x1D7F,0x1D7F}, /* 1D7E */ + {0x1D80,0x1D80},{0x1D81,0x1D81}, /* 1D80 */ + {0x1D82,0x1D82},{0x1D83,0x1D83}, /* 1D82 */ + {0x1D84,0x1D84},{0x1D85,0x1D85}, /* 1D84 */ + {0x1D86,0x1D86},{0x1D87,0x1D87}, /* 1D86 */ + {0x1D88,0x1D88},{0x1D89,0x1D89}, /* 1D88 */ + {0x1D8A,0x1D8A},{0x1D8B,0x1D8B}, /* 1D8A */ + {0x1D8C,0x1D8C},{0x1D8D,0x1D8D}, /* 1D8C */ + {0xA7C6,0x1D8E},{0x1D8F,0x1D8F}, /* 1D8E */ + {0x1D90,0x1D90},{0x1D91,0x1D91}, /* 1D90 */ + {0x1D92,0x1D92},{0x1D93,0x1D93}, /* 1D92 */ + {0x1D94,0x1D94},{0x1D95,0x1D95}, /* 1D94 */ + {0x1D96,0x1D96},{0x1D97,0x1D97}, /* 1D96 */ + {0x1D98,0x1D98},{0x1D99,0x1D99}, /* 1D98 */ + {0x1D9A,0x1D9A},{0x1D9B,0x1D9B}, /* 1D9A */ + {0x1D9C,0x1D9C},{0x1D9D,0x1D9D}, /* 1D9C */ + {0x1D9E,0x1D9E},{0x1D9F,0x1D9F}, /* 1D9E */ + {0x1DA0,0x1DA0},{0x1DA1,0x1DA1}, /* 1DA0 */ + {0x1DA2,0x1DA2},{0x1DA3,0x1DA3}, /* 1DA2 */ + {0x1DA4,0x1DA4},{0x1DA5,0x1DA5}, /* 1DA4 */ + {0x1DA6,0x1DA6},{0x1DA7,0x1DA7}, /* 1DA6 */ + {0x1DA8,0x1DA8},{0x1DA9,0x1DA9}, /* 1DA8 */ + {0x1DAA,0x1DAA},{0x1DAB,0x1DAB}, /* 1DAA */ + {0x1DAC,0x1DAC},{0x1DAD,0x1DAD}, /* 1DAC */ + {0x1DAE,0x1DAE},{0x1DAF,0x1DAF}, /* 1DAE */ + {0x1DB0,0x1DB0},{0x1DB1,0x1DB1}, /* 1DB0 */ + {0x1DB2,0x1DB2},{0x1DB3,0x1DB3}, /* 1DB2 */ + {0x1DB4,0x1DB4},{0x1DB5,0x1DB5}, /* 1DB4 */ + {0x1DB6,0x1DB6},{0x1DB7,0x1DB7}, /* 1DB6 */ + {0x1DB8,0x1DB8},{0x1DB9,0x1DB9}, /* 1DB8 */ + {0x1DBA,0x1DBA},{0x1DBB,0x1DBB}, /* 1DBA */ + {0x1DBC,0x1DBC},{0x1DBD,0x1DBD}, /* 1DBC */ + {0x1DBE,0x1DBE},{0x1DBF,0x1DBF}, /* 1DBE */ + {0x1DC0,0x1DC0},{0x1DC1,0x1DC1}, /* 1DC0 */ + {0x1DC2,0x1DC2},{0x1DC3,0x1DC3}, /* 1DC2 */ + {0x1DC4,0x1DC4},{0x1DC5,0x1DC5}, /* 1DC4 */ + {0x1DC6,0x1DC6},{0x1DC7,0x1DC7}, /* 1DC6 */ + {0x1DC8,0x1DC8},{0x1DC9,0x1DC9}, /* 1DC8 */ + {0x1DCA,0x1DCA},{0x1DCB,0x1DCB}, /* 1DCA */ + {0x1DCC,0x1DCC},{0x1DCD,0x1DCD}, /* 1DCC */ + {0x1DCE,0x1DCE},{0x1DCF,0x1DCF}, /* 1DCE */ + {0x1DD0,0x1DD0},{0x1DD1,0x1DD1}, /* 1DD0 */ + {0x1DD2,0x1DD2},{0x1DD3,0x1DD3}, /* 1DD2 */ + {0x1DD4,0x1DD4},{0x1DD5,0x1DD5}, /* 1DD4 */ + {0x1DD6,0x1DD6},{0x1DD7,0x1DD7}, /* 1DD6 */ + {0x1DD8,0x1DD8},{0x1DD9,0x1DD9}, /* 1DD8 */ + {0x1DDA,0x1DDA},{0x1DDB,0x1DDB}, /* 1DDA */ + {0x1DDC,0x1DDC},{0x1DDD,0x1DDD}, /* 1DDC */ + {0x1DDE,0x1DDE},{0x1DDF,0x1DDF}, /* 1DDE */ + {0x1DE0,0x1DE0},{0x1DE1,0x1DE1}, /* 1DE0 */ + {0x1DE2,0x1DE2},{0x1DE3,0x1DE3}, /* 1DE2 */ + {0x1DE4,0x1DE4},{0x1DE5,0x1DE5}, /* 1DE4 */ + {0x1DE6,0x1DE6},{0x1DE7,0x1DE7}, /* 1DE6 */ + {0x1DE8,0x1DE8},{0x1DE9,0x1DE9}, /* 1DE8 */ + {0x1DEA,0x1DEA},{0x1DEB,0x1DEB}, /* 1DEA */ + {0x1DEC,0x1DEC},{0x1DED,0x1DED}, /* 1DEC */ + {0x1DEE,0x1DEE},{0x1DEF,0x1DEF}, /* 1DEE */ + {0x1DF0,0x1DF0},{0x1DF1,0x1DF1}, /* 1DF0 */ + {0x1DF2,0x1DF2},{0x1DF3,0x1DF3}, /* 1DF2 */ + {0x1DF4,0x1DF4},{0x1DF5,0x1DF5}, /* 1DF4 */ + {0x1DF6,0x1DF6},{0x1DF7,0x1DF7}, /* 1DF6 */ + {0x1DF8,0x1DF8},{0x1DF9,0x1DF9}, /* 1DF8 */ + {0x1DFA,0x1DFA},{0x1DFB,0x1DFB}, /* 1DFA */ + {0x1DFC,0x1DFC},{0x1DFD,0x1DFD}, /* 1DFC */ + {0x1DFE,0x1DFE},{0x1DFF,0x1DFF} /* 1DFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page1E[256]={ + {0x1E00,0x1E01},{0x1E00,0x1E01}, /* 1E00 */ + {0x1E02,0x1E03},{0x1E02,0x1E03}, /* 1E02 */ + {0x1E04,0x1E05},{0x1E04,0x1E05}, /* 1E04 */ + {0x1E06,0x1E07},{0x1E06,0x1E07}, /* 1E06 */ + {0x1E08,0x1E09},{0x1E08,0x1E09}, /* 1E08 */ + {0x1E0A,0x1E0B},{0x1E0A,0x1E0B}, /* 1E0A */ + {0x1E0C,0x1E0D},{0x1E0C,0x1E0D}, /* 1E0C */ + {0x1E0E,0x1E0F},{0x1E0E,0x1E0F}, /* 1E0E */ + {0x1E10,0x1E11},{0x1E10,0x1E11}, /* 1E10 */ + {0x1E12,0x1E13},{0x1E12,0x1E13}, /* 1E12 */ + {0x1E14,0x1E15},{0x1E14,0x1E15}, /* 1E14 */ + {0x1E16,0x1E17},{0x1E16,0x1E17}, /* 1E16 */ + {0x1E18,0x1E19},{0x1E18,0x1E19}, /* 1E18 */ + {0x1E1A,0x1E1B},{0x1E1A,0x1E1B}, /* 1E1A */ + {0x1E1C,0x1E1D},{0x1E1C,0x1E1D}, /* 1E1C */ + {0x1E1E,0x1E1F},{0x1E1E,0x1E1F}, /* 1E1E */ + {0x1E20,0x1E21},{0x1E20,0x1E21}, /* 1E20 */ + {0x1E22,0x1E23},{0x1E22,0x1E23}, /* 1E22 */ + {0x1E24,0x1E25},{0x1E24,0x1E25}, /* 1E24 */ + {0x1E26,0x1E27},{0x1E26,0x1E27}, /* 1E26 */ + {0x1E28,0x1E29},{0x1E28,0x1E29}, /* 1E28 */ + {0x1E2A,0x1E2B},{0x1E2A,0x1E2B}, /* 1E2A */ + {0x1E2C,0x1E2D},{0x1E2C,0x1E2D}, /* 1E2C */ + {0x1E2E,0x1E2F},{0x1E2E,0x1E2F}, /* 1E2E */ + {0x1E30,0x1E31},{0x1E30,0x1E31}, /* 1E30 */ + {0x1E32,0x1E33},{0x1E32,0x1E33}, /* 1E32 */ + {0x1E34,0x1E35},{0x1E34,0x1E35}, /* 1E34 */ + {0x1E36,0x1E37},{0x1E36,0x1E37}, /* 1E36 */ + {0x1E38,0x1E39},{0x1E38,0x1E39}, /* 1E38 */ + {0x1E3A,0x1E3B},{0x1E3A,0x1E3B}, /* 1E3A */ + {0x1E3C,0x1E3D},{0x1E3C,0x1E3D}, /* 1E3C */ + {0x1E3E,0x1E3F},{0x1E3E,0x1E3F}, /* 1E3E */ + {0x1E40,0x1E41},{0x1E40,0x1E41}, /* 1E40 */ + {0x1E42,0x1E43},{0x1E42,0x1E43}, /* 1E42 */ + {0x1E44,0x1E45},{0x1E44,0x1E45}, /* 1E44 */ + {0x1E46,0x1E47},{0x1E46,0x1E47}, /* 1E46 */ + {0x1E48,0x1E49},{0x1E48,0x1E49}, /* 1E48 */ + {0x1E4A,0x1E4B},{0x1E4A,0x1E4B}, /* 1E4A */ + {0x1E4C,0x1E4D},{0x1E4C,0x1E4D}, /* 1E4C */ + {0x1E4E,0x1E4F},{0x1E4E,0x1E4F}, /* 1E4E */ + {0x1E50,0x1E51},{0x1E50,0x1E51}, /* 1E50 */ + {0x1E52,0x1E53},{0x1E52,0x1E53}, /* 1E52 */ + {0x1E54,0x1E55},{0x1E54,0x1E55}, /* 1E54 */ + {0x1E56,0x1E57},{0x1E56,0x1E57}, /* 1E56 */ + {0x1E58,0x1E59},{0x1E58,0x1E59}, /* 1E58 */ + {0x1E5A,0x1E5B},{0x1E5A,0x1E5B}, /* 1E5A */ + {0x1E5C,0x1E5D},{0x1E5C,0x1E5D}, /* 1E5C */ + {0x1E5E,0x1E5F},{0x1E5E,0x1E5F}, /* 1E5E */ + {0x1E60,0x1E61},{0x1E60,0x1E61}, /* 1E60 */ + {0x1E62,0x1E63},{0x1E62,0x1E63}, /* 1E62 */ + {0x1E64,0x1E65},{0x1E64,0x1E65}, /* 1E64 */ + {0x1E66,0x1E67},{0x1E66,0x1E67}, /* 1E66 */ + {0x1E68,0x1E69},{0x1E68,0x1E69}, /* 1E68 */ + {0x1E6A,0x1E6B},{0x1E6A,0x1E6B}, /* 1E6A */ + {0x1E6C,0x1E6D},{0x1E6C,0x1E6D}, /* 1E6C */ + {0x1E6E,0x1E6F},{0x1E6E,0x1E6F}, /* 1E6E */ + {0x1E70,0x1E71},{0x1E70,0x1E71}, /* 1E70 */ + {0x1E72,0x1E73},{0x1E72,0x1E73}, /* 1E72 */ + {0x1E74,0x1E75},{0x1E74,0x1E75}, /* 1E74 */ + {0x1E76,0x1E77},{0x1E76,0x1E77}, /* 1E76 */ + {0x1E78,0x1E79},{0x1E78,0x1E79}, /* 1E78 */ + {0x1E7A,0x1E7B},{0x1E7A,0x1E7B}, /* 1E7A */ + {0x1E7C,0x1E7D},{0x1E7C,0x1E7D}, /* 1E7C */ + {0x1E7E,0x1E7F},{0x1E7E,0x1E7F}, /* 1E7E */ + {0x1E80,0x1E81},{0x1E80,0x1E81}, /* 1E80 */ + {0x1E82,0x1E83},{0x1E82,0x1E83}, /* 1E82 */ + {0x1E84,0x1E85},{0x1E84,0x1E85}, /* 1E84 */ + {0x1E86,0x1E87},{0x1E86,0x1E87}, /* 1E86 */ + {0x1E88,0x1E89},{0x1E88,0x1E89}, /* 1E88 */ + {0x1E8A,0x1E8B},{0x1E8A,0x1E8B}, /* 1E8A */ + {0x1E8C,0x1E8D},{0x1E8C,0x1E8D}, /* 1E8C */ + {0x1E8E,0x1E8F},{0x1E8E,0x1E8F}, /* 1E8E */ + {0x1E90,0x1E91},{0x1E90,0x1E91}, /* 1E90 */ + {0x1E92,0x1E93},{0x1E92,0x1E93}, /* 1E92 */ + {0x1E94,0x1E95},{0x1E94,0x1E95}, /* 1E94 */ + {0x1E96,0x1E96},{0x1E97,0x1E97}, /* 1E96 */ + {0x1E98,0x1E98},{0x1E99,0x1E99}, /* 1E98 */ + {0x1E9A,0x1E9A},{0x1E60,0x1E9B}, /* 1E9A */ + {0x1E9C,0x1E9C},{0x1E9D,0x1E9D}, /* 1E9C */ + {0x1E9E,0x00DF},{0x1E9F,0x1E9F}, /* 1E9E */ + {0x1EA0,0x1EA1},{0x1EA0,0x1EA1}, /* 1EA0 */ + {0x1EA2,0x1EA3},{0x1EA2,0x1EA3}, /* 1EA2 */ + {0x1EA4,0x1EA5},{0x1EA4,0x1EA5}, /* 1EA4 */ + {0x1EA6,0x1EA7},{0x1EA6,0x1EA7}, /* 1EA6 */ + {0x1EA8,0x1EA9},{0x1EA8,0x1EA9}, /* 1EA8 */ + {0x1EAA,0x1EAB},{0x1EAA,0x1EAB}, /* 1EAA */ + {0x1EAC,0x1EAD},{0x1EAC,0x1EAD}, /* 1EAC */ + {0x1EAE,0x1EAF},{0x1EAE,0x1EAF}, /* 1EAE */ + {0x1EB0,0x1EB1},{0x1EB0,0x1EB1}, /* 1EB0 */ + {0x1EB2,0x1EB3},{0x1EB2,0x1EB3}, /* 1EB2 */ + {0x1EB4,0x1EB5},{0x1EB4,0x1EB5}, /* 1EB4 */ + {0x1EB6,0x1EB7},{0x1EB6,0x1EB7}, /* 1EB6 */ + {0x1EB8,0x1EB9},{0x1EB8,0x1EB9}, /* 1EB8 */ + {0x1EBA,0x1EBB},{0x1EBA,0x1EBB}, /* 1EBA */ + {0x1EBC,0x1EBD},{0x1EBC,0x1EBD}, /* 1EBC */ + {0x1EBE,0x1EBF},{0x1EBE,0x1EBF}, /* 1EBE */ + {0x1EC0,0x1EC1},{0x1EC0,0x1EC1}, /* 1EC0 */ + {0x1EC2,0x1EC3},{0x1EC2,0x1EC3}, /* 1EC2 */ + {0x1EC4,0x1EC5},{0x1EC4,0x1EC5}, /* 1EC4 */ + {0x1EC6,0x1EC7},{0x1EC6,0x1EC7}, /* 1EC6 */ + {0x1EC8,0x1EC9},{0x1EC8,0x1EC9}, /* 1EC8 */ + {0x1ECA,0x1ECB},{0x1ECA,0x1ECB}, /* 1ECA */ + {0x1ECC,0x1ECD},{0x1ECC,0x1ECD}, /* 1ECC */ + {0x1ECE,0x1ECF},{0x1ECE,0x1ECF}, /* 1ECE */ + {0x1ED0,0x1ED1},{0x1ED0,0x1ED1}, /* 1ED0 */ + {0x1ED2,0x1ED3},{0x1ED2,0x1ED3}, /* 1ED2 */ + {0x1ED4,0x1ED5},{0x1ED4,0x1ED5}, /* 1ED4 */ + {0x1ED6,0x1ED7},{0x1ED6,0x1ED7}, /* 1ED6 */ + {0x1ED8,0x1ED9},{0x1ED8,0x1ED9}, /* 1ED8 */ + {0x1EDA,0x1EDB},{0x1EDA,0x1EDB}, /* 1EDA */ + {0x1EDC,0x1EDD},{0x1EDC,0x1EDD}, /* 1EDC */ + {0x1EDE,0x1EDF},{0x1EDE,0x1EDF}, /* 1EDE */ + {0x1EE0,0x1EE1},{0x1EE0,0x1EE1}, /* 1EE0 */ + {0x1EE2,0x1EE3},{0x1EE2,0x1EE3}, /* 1EE2 */ + {0x1EE4,0x1EE5},{0x1EE4,0x1EE5}, /* 1EE4 */ + {0x1EE6,0x1EE7},{0x1EE6,0x1EE7}, /* 1EE6 */ + {0x1EE8,0x1EE9},{0x1EE8,0x1EE9}, /* 1EE8 */ + {0x1EEA,0x1EEB},{0x1EEA,0x1EEB}, /* 1EEA */ + {0x1EEC,0x1EED},{0x1EEC,0x1EED}, /* 1EEC */ + {0x1EEE,0x1EEF},{0x1EEE,0x1EEF}, /* 1EEE */ + {0x1EF0,0x1EF1},{0x1EF0,0x1EF1}, /* 1EF0 */ + {0x1EF2,0x1EF3},{0x1EF2,0x1EF3}, /* 1EF2 */ + {0x1EF4,0x1EF5},{0x1EF4,0x1EF5}, /* 1EF4 */ + {0x1EF6,0x1EF7},{0x1EF6,0x1EF7}, /* 1EF6 */ + {0x1EF8,0x1EF9},{0x1EF8,0x1EF9}, /* 1EF8 */ + {0x1EFA,0x1EFB},{0x1EFA,0x1EFB}, /* 1EFA */ + {0x1EFC,0x1EFD},{0x1EFC,0x1EFD}, /* 1EFC */ + {0x1EFE,0x1EFF},{0x1EFE,0x1EFF} /* 1EFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page1F[256]={ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F00 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F02 */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F04 */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F06 */ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F08 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F0A */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F0C */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F0E */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F10 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F12 */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F14 */ + {0x1F16,0x1F16},{0x1F17,0x1F17}, /* 1F16 */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F18 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F1A */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F1C */ + {0x1F1E,0x1F1E},{0x1F1F,0x1F1F}, /* 1F1E */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F20 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F22 */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F24 */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F26 */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F28 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F2A */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F2C */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F2E */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F30 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F32 */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F34 */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F36 */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F38 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F3A */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F3C */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F3E */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F40 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F42 */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F44 */ + {0x1F46,0x1F46},{0x1F47,0x1F47}, /* 1F46 */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F48 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F4A */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F4C */ + {0x1F4E,0x1F4E},{0x1F4F,0x1F4F}, /* 1F4E */ + {0x1F50,0x1F50},{0x1F59,0x1F51}, /* 1F50 */ + {0x1F52,0x1F52},{0x1F5B,0x1F53}, /* 1F52 */ + {0x1F54,0x1F54},{0x1F5D,0x1F55}, /* 1F54 */ + {0x1F56,0x1F56},{0x1F5F,0x1F57}, /* 1F56 */ + {0x1F58,0x1F58},{0x1F59,0x1F51}, /* 1F58 */ + {0x1F5A,0x1F5A},{0x1F5B,0x1F53}, /* 1F5A */ + {0x1F5C,0x1F5C},{0x1F5D,0x1F55}, /* 1F5C */ + {0x1F5E,0x1F5E},{0x1F5F,0x1F57}, /* 1F5E */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F60 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F62 */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F64 */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F66 */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F68 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F6A */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F6C */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F6E */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1F70 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1F72 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1F74 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1F76 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1F78 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1F7A */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1F7C */ + {0x1F7E,0x1F7E},{0x1F7F,0x1F7F}, /* 1F7E */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F80 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F82 */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F84 */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F86 */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F88 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F8A */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F8C */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F8E */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F90 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F92 */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F94 */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F96 */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F98 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F9A */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F9C */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F9E */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA0 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FA2 */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FA4 */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FA6 */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA8 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FAA */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FAC */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FAE */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB0 */ + {0x1FB2,0x1FB2},{0x1FBC,0x1FB3}, /* 1FB2 */ + {0x1FB4,0x1FB4},{0x1FB5,0x1FB5}, /* 1FB4 */ + {0x1FB6,0x1FB6},{0x1FB7,0x1FB7}, /* 1FB6 */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB8 */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1FBA */ + {0x1FBC,0x1FB3},{0x1FBD,0x1FBD}, /* 1FBC */ + {0x0399,0x1FBE},{0x1FBF,0x1FBF}, /* 1FBE */ + {0x1FC0,0x1FC0},{0x1FC1,0x1FC1}, /* 1FC0 */ + {0x1FC2,0x1FC2},{0x1FCC,0x1FC3}, /* 1FC2 */ + {0x1FC4,0x1FC4},{0x1FC5,0x1FC5}, /* 1FC4 */ + {0x1FC6,0x1FC6},{0x1FC7,0x1FC7}, /* 1FC6 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1FC8 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1FCA */ + {0x1FCC,0x1FC3},{0x1FCD,0x1FCD}, /* 1FCC */ + {0x1FCE,0x1FCE},{0x1FCF,0x1FCF}, /* 1FCE */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD0 */ + {0x1FD2,0x1FD2},{0x1FD3,0x1FD3}, /* 1FD2 */ + {0x1FD4,0x1FD4},{0x1FD5,0x1FD5}, /* 1FD4 */ + {0x1FD6,0x1FD6},{0x1FD7,0x1FD7}, /* 1FD6 */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD8 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1FDA */ + {0x1FDC,0x1FDC},{0x1FDD,0x1FDD}, /* 1FDC */ + {0x1FDE,0x1FDE},{0x1FDF,0x1FDF}, /* 1FDE */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE0 */ + {0x1FE2,0x1FE2},{0x1FE3,0x1FE3}, /* 1FE2 */ + {0x1FE4,0x1FE4},{0x1FEC,0x1FE5}, /* 1FE4 */ + {0x1FE6,0x1FE6},{0x1FE7,0x1FE7}, /* 1FE6 */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE8 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1FEA */ + {0x1FEC,0x1FE5},{0x1FED,0x1FED}, /* 1FEC */ + {0x1FEE,0x1FEE},{0x1FEF,0x1FEF}, /* 1FEE */ + {0x1FF0,0x1FF0},{0x1FF1,0x1FF1}, /* 1FF0 */ + {0x1FF2,0x1FF2},{0x1FFC,0x1FF3}, /* 1FF2 */ + {0x1FF4,0x1FF4},{0x1FF5,0x1FF5}, /* 1FF4 */ + {0x1FF6,0x1FF6},{0x1FF7,0x1FF7}, /* 1FF6 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1FF8 */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1FFA */ + {0x1FFC,0x1FF3},{0x1FFD,0x1FFD}, /* 1FFC */ + {0x1FFE,0x1FFE},{0x1FFF,0x1FFF} /* 1FFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page21[256]={ + {0x2100,0x2100},{0x2101,0x2101}, /* 2100 */ + {0x2102,0x2102},{0x2103,0x2103}, /* 2102 */ + {0x2104,0x2104},{0x2105,0x2105}, /* 2104 */ + {0x2106,0x2106},{0x2107,0x2107}, /* 2106 */ + {0x2108,0x2108},{0x2109,0x2109}, /* 2108 */ + {0x210A,0x210A},{0x210B,0x210B}, /* 210A */ + {0x210C,0x210C},{0x210D,0x210D}, /* 210C */ + {0x210E,0x210E},{0x210F,0x210F}, /* 210E */ + {0x2110,0x2110},{0x2111,0x2111}, /* 2110 */ + {0x2112,0x2112},{0x2113,0x2113}, /* 2112 */ + {0x2114,0x2114},{0x2115,0x2115}, /* 2114 */ + {0x2116,0x2116},{0x2117,0x2117}, /* 2116 */ + {0x2118,0x2118},{0x2119,0x2119}, /* 2118 */ + {0x211A,0x211A},{0x211B,0x211B}, /* 211A */ + {0x211C,0x211C},{0x211D,0x211D}, /* 211C */ + {0x211E,0x211E},{0x211F,0x211F}, /* 211E */ + {0x2120,0x2120},{0x2121,0x2121}, /* 2120 */ + {0x2122,0x2122},{0x2123,0x2123}, /* 2122 */ + {0x2124,0x2124},{0x2125,0x2125}, /* 2124 */ + {0x2126,0x03C9},{0x2127,0x2127}, /* 2126 */ + {0x2128,0x2128},{0x2129,0x2129}, /* 2128 */ + {0x212A,0x006B},{0x212B,0x00E5}, /* 212A */ + {0x212C,0x212C},{0x212D,0x212D}, /* 212C */ + {0x212E,0x212E},{0x212F,0x212F}, /* 212E */ + {0x2130,0x2130},{0x2131,0x2131}, /* 2130 */ + {0x2132,0x214E},{0x2133,0x2133}, /* 2132 */ + {0x2134,0x2134},{0x2135,0x2135}, /* 2134 */ + {0x2136,0x2136},{0x2137,0x2137}, /* 2136 */ + {0x2138,0x2138},{0x2139,0x2139}, /* 2138 */ + {0x213A,0x213A},{0x213B,0x213B}, /* 213A */ + {0x213C,0x213C},{0x213D,0x213D}, /* 213C */ + {0x213E,0x213E},{0x213F,0x213F}, /* 213E */ + {0x2140,0x2140},{0x2141,0x2141}, /* 2140 */ + {0x2142,0x2142},{0x2143,0x2143}, /* 2142 */ + {0x2144,0x2144},{0x2145,0x2145}, /* 2144 */ + {0x2146,0x2146},{0x2147,0x2147}, /* 2146 */ + {0x2148,0x2148},{0x2149,0x2149}, /* 2148 */ + {0x214A,0x214A},{0x214B,0x214B}, /* 214A */ + {0x214C,0x214C},{0x214D,0x214D}, /* 214C */ + {0x2132,0x214E},{0x214F,0x214F}, /* 214E */ + {0x2150,0x2150},{0x2151,0x2151}, /* 2150 */ + {0x2152,0x2152},{0x2153,0x2153}, /* 2152 */ + {0x2154,0x2154},{0x2155,0x2155}, /* 2154 */ + {0x2156,0x2156},{0x2157,0x2157}, /* 2156 */ + {0x2158,0x2158},{0x2159,0x2159}, /* 2158 */ + {0x215A,0x215A},{0x215B,0x215B}, /* 215A */ + {0x215C,0x215C},{0x215D,0x215D}, /* 215C */ + {0x215E,0x215E},{0x215F,0x215F}, /* 215E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2160 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2162 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2164 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2166 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2168 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 216A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 216C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 216E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2170 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2172 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2174 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2176 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2178 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 217A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 217C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 217E */ + {0x2180,0x2180},{0x2181,0x2181}, /* 2180 */ + {0x2182,0x2182},{0x2183,0x2184}, /* 2182 */ + {0x2183,0x2184},{0x2185,0x2185}, /* 2184 */ + {0x2186,0x2186},{0x2187,0x2187}, /* 2186 */ + {0x2188,0x2188},{0x2189,0x2189}, /* 2188 */ + {0x218A,0x218A},{0x218B,0x218B}, /* 218A */ + {0x218C,0x218C},{0x218D,0x218D}, /* 218C */ + {0x218E,0x218E},{0x218F,0x218F}, /* 218E */ + {0x2190,0x2190},{0x2191,0x2191}, /* 2190 */ + {0x2192,0x2192},{0x2193,0x2193}, /* 2192 */ + {0x2194,0x2194},{0x2195,0x2195}, /* 2194 */ + {0x2196,0x2196},{0x2197,0x2197}, /* 2196 */ + {0x2198,0x2198},{0x2199,0x2199}, /* 2198 */ + {0x219A,0x219A},{0x219B,0x219B}, /* 219A */ + {0x219C,0x219C},{0x219D,0x219D}, /* 219C */ + {0x219E,0x219E},{0x219F,0x219F}, /* 219E */ + {0x21A0,0x21A0},{0x21A1,0x21A1}, /* 21A0 */ + {0x21A2,0x21A2},{0x21A3,0x21A3}, /* 21A2 */ + {0x21A4,0x21A4},{0x21A5,0x21A5}, /* 21A4 */ + {0x21A6,0x21A6},{0x21A7,0x21A7}, /* 21A6 */ + {0x21A8,0x21A8},{0x21A9,0x21A9}, /* 21A8 */ + {0x21AA,0x21AA},{0x21AB,0x21AB}, /* 21AA */ + {0x21AC,0x21AC},{0x21AD,0x21AD}, /* 21AC */ + {0x21AE,0x21AE},{0x21AF,0x21AF}, /* 21AE */ + {0x21B0,0x21B0},{0x21B1,0x21B1}, /* 21B0 */ + {0x21B2,0x21B2},{0x21B3,0x21B3}, /* 21B2 */ + {0x21B4,0x21B4},{0x21B5,0x21B5}, /* 21B4 */ + {0x21B6,0x21B6},{0x21B7,0x21B7}, /* 21B6 */ + {0x21B8,0x21B8},{0x21B9,0x21B9}, /* 21B8 */ + {0x21BA,0x21BA},{0x21BB,0x21BB}, /* 21BA */ + {0x21BC,0x21BC},{0x21BD,0x21BD}, /* 21BC */ + {0x21BE,0x21BE},{0x21BF,0x21BF}, /* 21BE */ + {0x21C0,0x21C0},{0x21C1,0x21C1}, /* 21C0 */ + {0x21C2,0x21C2},{0x21C3,0x21C3}, /* 21C2 */ + {0x21C4,0x21C4},{0x21C5,0x21C5}, /* 21C4 */ + {0x21C6,0x21C6},{0x21C7,0x21C7}, /* 21C6 */ + {0x21C8,0x21C8},{0x21C9,0x21C9}, /* 21C8 */ + {0x21CA,0x21CA},{0x21CB,0x21CB}, /* 21CA */ + {0x21CC,0x21CC},{0x21CD,0x21CD}, /* 21CC */ + {0x21CE,0x21CE},{0x21CF,0x21CF}, /* 21CE */ + {0x21D0,0x21D0},{0x21D1,0x21D1}, /* 21D0 */ + {0x21D2,0x21D2},{0x21D3,0x21D3}, /* 21D2 */ + {0x21D4,0x21D4},{0x21D5,0x21D5}, /* 21D4 */ + {0x21D6,0x21D6},{0x21D7,0x21D7}, /* 21D6 */ + {0x21D8,0x21D8},{0x21D9,0x21D9}, /* 21D8 */ + {0x21DA,0x21DA},{0x21DB,0x21DB}, /* 21DA */ + {0x21DC,0x21DC},{0x21DD,0x21DD}, /* 21DC */ + {0x21DE,0x21DE},{0x21DF,0x21DF}, /* 21DE */ + {0x21E0,0x21E0},{0x21E1,0x21E1}, /* 21E0 */ + {0x21E2,0x21E2},{0x21E3,0x21E3}, /* 21E2 */ + {0x21E4,0x21E4},{0x21E5,0x21E5}, /* 21E4 */ + {0x21E6,0x21E6},{0x21E7,0x21E7}, /* 21E6 */ + {0x21E8,0x21E8},{0x21E9,0x21E9}, /* 21E8 */ + {0x21EA,0x21EA},{0x21EB,0x21EB}, /* 21EA */ + {0x21EC,0x21EC},{0x21ED,0x21ED}, /* 21EC */ + {0x21EE,0x21EE},{0x21EF,0x21EF}, /* 21EE */ + {0x21F0,0x21F0},{0x21F1,0x21F1}, /* 21F0 */ + {0x21F2,0x21F2},{0x21F3,0x21F3}, /* 21F2 */ + {0x21F4,0x21F4},{0x21F5,0x21F5}, /* 21F4 */ + {0x21F6,0x21F6},{0x21F7,0x21F7}, /* 21F6 */ + {0x21F8,0x21F8},{0x21F9,0x21F9}, /* 21F8 */ + {0x21FA,0x21FA},{0x21FB,0x21FB}, /* 21FA */ + {0x21FC,0x21FC},{0x21FD,0x21FD}, /* 21FC */ + {0x21FE,0x21FE},{0x21FF,0x21FF} /* 21FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page24[256]={ + {0x2400,0x2400},{0x2401,0x2401}, /* 2400 */ + {0x2402,0x2402},{0x2403,0x2403}, /* 2402 */ + {0x2404,0x2404},{0x2405,0x2405}, /* 2404 */ + {0x2406,0x2406},{0x2407,0x2407}, /* 2406 */ + {0x2408,0x2408},{0x2409,0x2409}, /* 2408 */ + {0x240A,0x240A},{0x240B,0x240B}, /* 240A */ + {0x240C,0x240C},{0x240D,0x240D}, /* 240C */ + {0x240E,0x240E},{0x240F,0x240F}, /* 240E */ + {0x2410,0x2410},{0x2411,0x2411}, /* 2410 */ + {0x2412,0x2412},{0x2413,0x2413}, /* 2412 */ + {0x2414,0x2414},{0x2415,0x2415}, /* 2414 */ + {0x2416,0x2416},{0x2417,0x2417}, /* 2416 */ + {0x2418,0x2418},{0x2419,0x2419}, /* 2418 */ + {0x241A,0x241A},{0x241B,0x241B}, /* 241A */ + {0x241C,0x241C},{0x241D,0x241D}, /* 241C */ + {0x241E,0x241E},{0x241F,0x241F}, /* 241E */ + {0x2420,0x2420},{0x2421,0x2421}, /* 2420 */ + {0x2422,0x2422},{0x2423,0x2423}, /* 2422 */ + {0x2424,0x2424},{0x2425,0x2425}, /* 2424 */ + {0x2426,0x2426},{0x2427,0x2427}, /* 2426 */ + {0x2428,0x2428},{0x2429,0x2429}, /* 2428 */ + {0x242A,0x242A},{0x242B,0x242B}, /* 242A */ + {0x242C,0x242C},{0x242D,0x242D}, /* 242C */ + {0x242E,0x242E},{0x242F,0x242F}, /* 242E */ + {0x2430,0x2430},{0x2431,0x2431}, /* 2430 */ + {0x2432,0x2432},{0x2433,0x2433}, /* 2432 */ + {0x2434,0x2434},{0x2435,0x2435}, /* 2434 */ + {0x2436,0x2436},{0x2437,0x2437}, /* 2436 */ + {0x2438,0x2438},{0x2439,0x2439}, /* 2438 */ + {0x243A,0x243A},{0x243B,0x243B}, /* 243A */ + {0x243C,0x243C},{0x243D,0x243D}, /* 243C */ + {0x243E,0x243E},{0x243F,0x243F}, /* 243E */ + {0x2440,0x2440},{0x2441,0x2441}, /* 2440 */ + {0x2442,0x2442},{0x2443,0x2443}, /* 2442 */ + {0x2444,0x2444},{0x2445,0x2445}, /* 2444 */ + {0x2446,0x2446},{0x2447,0x2447}, /* 2446 */ + {0x2448,0x2448},{0x2449,0x2449}, /* 2448 */ + {0x244A,0x244A},{0x244B,0x244B}, /* 244A */ + {0x244C,0x244C},{0x244D,0x244D}, /* 244C */ + {0x244E,0x244E},{0x244F,0x244F}, /* 244E */ + {0x2450,0x2450},{0x2451,0x2451}, /* 2450 */ + {0x2452,0x2452},{0x2453,0x2453}, /* 2452 */ + {0x2454,0x2454},{0x2455,0x2455}, /* 2454 */ + {0x2456,0x2456},{0x2457,0x2457}, /* 2456 */ + {0x2458,0x2458},{0x2459,0x2459}, /* 2458 */ + {0x245A,0x245A},{0x245B,0x245B}, /* 245A */ + {0x245C,0x245C},{0x245D,0x245D}, /* 245C */ + {0x245E,0x245E},{0x245F,0x245F}, /* 245E */ + {0x2460,0x2460},{0x2461,0x2461}, /* 2460 */ + {0x2462,0x2462},{0x2463,0x2463}, /* 2462 */ + {0x2464,0x2464},{0x2465,0x2465}, /* 2464 */ + {0x2466,0x2466},{0x2467,0x2467}, /* 2466 */ + {0x2468,0x2468},{0x2469,0x2469}, /* 2468 */ + {0x246A,0x246A},{0x246B,0x246B}, /* 246A */ + {0x246C,0x246C},{0x246D,0x246D}, /* 246C */ + {0x246E,0x246E},{0x246F,0x246F}, /* 246E */ + {0x2470,0x2470},{0x2471,0x2471}, /* 2470 */ + {0x2472,0x2472},{0x2473,0x2473}, /* 2472 */ + {0x2474,0x2474},{0x2475,0x2475}, /* 2474 */ + {0x2476,0x2476},{0x2477,0x2477}, /* 2476 */ + {0x2478,0x2478},{0x2479,0x2479}, /* 2478 */ + {0x247A,0x247A},{0x247B,0x247B}, /* 247A */ + {0x247C,0x247C},{0x247D,0x247D}, /* 247C */ + {0x247E,0x247E},{0x247F,0x247F}, /* 247E */ + {0x2480,0x2480},{0x2481,0x2481}, /* 2480 */ + {0x2482,0x2482},{0x2483,0x2483}, /* 2482 */ + {0x2484,0x2484},{0x2485,0x2485}, /* 2484 */ + {0x2486,0x2486},{0x2487,0x2487}, /* 2486 */ + {0x2488,0x2488},{0x2489,0x2489}, /* 2488 */ + {0x248A,0x248A},{0x248B,0x248B}, /* 248A */ + {0x248C,0x248C},{0x248D,0x248D}, /* 248C */ + {0x248E,0x248E},{0x248F,0x248F}, /* 248E */ + {0x2490,0x2490},{0x2491,0x2491}, /* 2490 */ + {0x2492,0x2492},{0x2493,0x2493}, /* 2492 */ + {0x2494,0x2494},{0x2495,0x2495}, /* 2494 */ + {0x2496,0x2496},{0x2497,0x2497}, /* 2496 */ + {0x2498,0x2498},{0x2499,0x2499}, /* 2498 */ + {0x249A,0x249A},{0x249B,0x249B}, /* 249A */ + {0x249C,0x249C},{0x249D,0x249D}, /* 249C */ + {0x249E,0x249E},{0x249F,0x249F}, /* 249E */ + {0x24A0,0x24A0},{0x24A1,0x24A1}, /* 24A0 */ + {0x24A2,0x24A2},{0x24A3,0x24A3}, /* 24A2 */ + {0x24A4,0x24A4},{0x24A5,0x24A5}, /* 24A4 */ + {0x24A6,0x24A6},{0x24A7,0x24A7}, /* 24A6 */ + {0x24A8,0x24A8},{0x24A9,0x24A9}, /* 24A8 */ + {0x24AA,0x24AA},{0x24AB,0x24AB}, /* 24AA */ + {0x24AC,0x24AC},{0x24AD,0x24AD}, /* 24AC */ + {0x24AE,0x24AE},{0x24AF,0x24AF}, /* 24AE */ + {0x24B0,0x24B0},{0x24B1,0x24B1}, /* 24B0 */ + {0x24B2,0x24B2},{0x24B3,0x24B3}, /* 24B2 */ + {0x24B4,0x24B4},{0x24B5,0x24B5}, /* 24B4 */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24B6 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24B8 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24BA */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24BC */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24BE */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24C0 */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24C2 */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24C4 */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24C6 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24C8 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24CA */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24CC */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24CE */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24D0 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24D2 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24D4 */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24D6 */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24D8 */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24DA */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24DC */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24DE */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24E0 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24E2 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24E4 */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24E6 */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24E8 */ + {0x24EA,0x24EA},{0x24EB,0x24EB}, /* 24EA */ + {0x24EC,0x24EC},{0x24ED,0x24ED}, /* 24EC */ + {0x24EE,0x24EE},{0x24EF,0x24EF}, /* 24EE */ + {0x24F0,0x24F0},{0x24F1,0x24F1}, /* 24F0 */ + {0x24F2,0x24F2},{0x24F3,0x24F3}, /* 24F2 */ + {0x24F4,0x24F4},{0x24F5,0x24F5}, /* 24F4 */ + {0x24F6,0x24F6},{0x24F7,0x24F7}, /* 24F6 */ + {0x24F8,0x24F8},{0x24F9,0x24F9}, /* 24F8 */ + {0x24FA,0x24FA},{0x24FB,0x24FB}, /* 24FA */ + {0x24FC,0x24FC},{0x24FD,0x24FD}, /* 24FC */ + {0x24FE,0x24FE},{0x24FF,0x24FF} /* 24FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page2C[256]={ + {0x2C00,0x2C30},{0x2C01,0x2C31}, /* 2C00 */ + {0x2C02,0x2C32},{0x2C03,0x2C33}, /* 2C02 */ + {0x2C04,0x2C34},{0x2C05,0x2C35}, /* 2C04 */ + {0x2C06,0x2C36},{0x2C07,0x2C37}, /* 2C06 */ + {0x2C08,0x2C38},{0x2C09,0x2C39}, /* 2C08 */ + {0x2C0A,0x2C3A},{0x2C0B,0x2C3B}, /* 2C0A */ + {0x2C0C,0x2C3C},{0x2C0D,0x2C3D}, /* 2C0C */ + {0x2C0E,0x2C3E},{0x2C0F,0x2C3F}, /* 2C0E */ + {0x2C10,0x2C40},{0x2C11,0x2C41}, /* 2C10 */ + {0x2C12,0x2C42},{0x2C13,0x2C43}, /* 2C12 */ + {0x2C14,0x2C44},{0x2C15,0x2C45}, /* 2C14 */ + {0x2C16,0x2C46},{0x2C17,0x2C47}, /* 2C16 */ + {0x2C18,0x2C48},{0x2C19,0x2C49}, /* 2C18 */ + {0x2C1A,0x2C4A},{0x2C1B,0x2C4B}, /* 2C1A */ + {0x2C1C,0x2C4C},{0x2C1D,0x2C4D}, /* 2C1C */ + {0x2C1E,0x2C4E},{0x2C1F,0x2C4F}, /* 2C1E */ + {0x2C20,0x2C50},{0x2C21,0x2C51}, /* 2C20 */ + {0x2C22,0x2C52},{0x2C23,0x2C53}, /* 2C22 */ + {0x2C24,0x2C54},{0x2C25,0x2C55}, /* 2C24 */ + {0x2C26,0x2C56},{0x2C27,0x2C57}, /* 2C26 */ + {0x2C28,0x2C58},{0x2C29,0x2C59}, /* 2C28 */ + {0x2C2A,0x2C5A},{0x2C2B,0x2C5B}, /* 2C2A */ + {0x2C2C,0x2C5C},{0x2C2D,0x2C5D}, /* 2C2C */ + {0x2C2E,0x2C5E},{0x2C2F,0x2C5F}, /* 2C2E */ + {0x2C00,0x2C30},{0x2C01,0x2C31}, /* 2C30 */ + {0x2C02,0x2C32},{0x2C03,0x2C33}, /* 2C32 */ + {0x2C04,0x2C34},{0x2C05,0x2C35}, /* 2C34 */ + {0x2C06,0x2C36},{0x2C07,0x2C37}, /* 2C36 */ + {0x2C08,0x2C38},{0x2C09,0x2C39}, /* 2C38 */ + {0x2C0A,0x2C3A},{0x2C0B,0x2C3B}, /* 2C3A */ + {0x2C0C,0x2C3C},{0x2C0D,0x2C3D}, /* 2C3C */ + {0x2C0E,0x2C3E},{0x2C0F,0x2C3F}, /* 2C3E */ + {0x2C10,0x2C40},{0x2C11,0x2C41}, /* 2C40 */ + {0x2C12,0x2C42},{0x2C13,0x2C43}, /* 2C42 */ + {0x2C14,0x2C44},{0x2C15,0x2C45}, /* 2C44 */ + {0x2C16,0x2C46},{0x2C17,0x2C47}, /* 2C46 */ + {0x2C18,0x2C48},{0x2C19,0x2C49}, /* 2C48 */ + {0x2C1A,0x2C4A},{0x2C1B,0x2C4B}, /* 2C4A */ + {0x2C1C,0x2C4C},{0x2C1D,0x2C4D}, /* 2C4C */ + {0x2C1E,0x2C4E},{0x2C1F,0x2C4F}, /* 2C4E */ + {0x2C20,0x2C50},{0x2C21,0x2C51}, /* 2C50 */ + {0x2C22,0x2C52},{0x2C23,0x2C53}, /* 2C52 */ + {0x2C24,0x2C54},{0x2C25,0x2C55}, /* 2C54 */ + {0x2C26,0x2C56},{0x2C27,0x2C57}, /* 2C56 */ + {0x2C28,0x2C58},{0x2C29,0x2C59}, /* 2C58 */ + {0x2C2A,0x2C5A},{0x2C2B,0x2C5B}, /* 2C5A */ + {0x2C2C,0x2C5C},{0x2C2D,0x2C5D}, /* 2C5C */ + {0x2C2E,0x2C5E},{0x2C2F,0x2C5F}, /* 2C5E */ + {0x2C60,0x2C61},{0x2C60,0x2C61}, /* 2C60 */ + {0x2C62,0x026B},{0x2C63,0x1D7D}, /* 2C62 */ + {0x2C64,0x027D},{0x023A,0x2C65}, /* 2C64 */ + {0x023E,0x2C66},{0x2C67,0x2C68}, /* 2C66 */ + {0x2C67,0x2C68},{0x2C69,0x2C6A}, /* 2C68 */ + {0x2C69,0x2C6A},{0x2C6B,0x2C6C}, /* 2C6A */ + {0x2C6B,0x2C6C},{0x2C6D,0x0251}, /* 2C6C */ + {0x2C6E,0x0271},{0x2C6F,0x0250}, /* 2C6E */ + {0x2C70,0x0252},{0x2C71,0x2C71}, /* 2C70 */ + {0x2C72,0x2C73},{0x2C72,0x2C73}, /* 2C72 */ + {0x2C74,0x2C74},{0x2C75,0x2C76}, /* 2C74 */ + {0x2C75,0x2C76},{0x2C77,0x2C77}, /* 2C76 */ + {0x2C78,0x2C78},{0x2C79,0x2C79}, /* 2C78 */ + {0x2C7A,0x2C7A},{0x2C7B,0x2C7B}, /* 2C7A */ + {0x2C7C,0x2C7C},{0x2C7D,0x2C7D}, /* 2C7C */ + {0x2C7E,0x023F},{0x2C7F,0x0240}, /* 2C7E */ + {0x2C80,0x2C81},{0x2C80,0x2C81}, /* 2C80 */ + {0x2C82,0x2C83},{0x2C82,0x2C83}, /* 2C82 */ + {0x2C84,0x2C85},{0x2C84,0x2C85}, /* 2C84 */ + {0x2C86,0x2C87},{0x2C86,0x2C87}, /* 2C86 */ + {0x2C88,0x2C89},{0x2C88,0x2C89}, /* 2C88 */ + {0x2C8A,0x2C8B},{0x2C8A,0x2C8B}, /* 2C8A */ + {0x2C8C,0x2C8D},{0x2C8C,0x2C8D}, /* 2C8C */ + {0x2C8E,0x2C8F},{0x2C8E,0x2C8F}, /* 2C8E */ + {0x2C90,0x2C91},{0x2C90,0x2C91}, /* 2C90 */ + {0x2C92,0x2C93},{0x2C92,0x2C93}, /* 2C92 */ + {0x2C94,0x2C95},{0x2C94,0x2C95}, /* 2C94 */ + {0x2C96,0x2C97},{0x2C96,0x2C97}, /* 2C96 */ + {0x2C98,0x2C99},{0x2C98,0x2C99}, /* 2C98 */ + {0x2C9A,0x2C9B},{0x2C9A,0x2C9B}, /* 2C9A */ + {0x2C9C,0x2C9D},{0x2C9C,0x2C9D}, /* 2C9C */ + {0x2C9E,0x2C9F},{0x2C9E,0x2C9F}, /* 2C9E */ + {0x2CA0,0x2CA1},{0x2CA0,0x2CA1}, /* 2CA0 */ + {0x2CA2,0x2CA3},{0x2CA2,0x2CA3}, /* 2CA2 */ + {0x2CA4,0x2CA5},{0x2CA4,0x2CA5}, /* 2CA4 */ + {0x2CA6,0x2CA7},{0x2CA6,0x2CA7}, /* 2CA6 */ + {0x2CA8,0x2CA9},{0x2CA8,0x2CA9}, /* 2CA8 */ + {0x2CAA,0x2CAB},{0x2CAA,0x2CAB}, /* 2CAA */ + {0x2CAC,0x2CAD},{0x2CAC,0x2CAD}, /* 2CAC */ + {0x2CAE,0x2CAF},{0x2CAE,0x2CAF}, /* 2CAE */ + {0x2CB0,0x2CB1},{0x2CB0,0x2CB1}, /* 2CB0 */ + {0x2CB2,0x2CB3},{0x2CB2,0x2CB3}, /* 2CB2 */ + {0x2CB4,0x2CB5},{0x2CB4,0x2CB5}, /* 2CB4 */ + {0x2CB6,0x2CB7},{0x2CB6,0x2CB7}, /* 2CB6 */ + {0x2CB8,0x2CB9},{0x2CB8,0x2CB9}, /* 2CB8 */ + {0x2CBA,0x2CBB},{0x2CBA,0x2CBB}, /* 2CBA */ + {0x2CBC,0x2CBD},{0x2CBC,0x2CBD}, /* 2CBC */ + {0x2CBE,0x2CBF},{0x2CBE,0x2CBF}, /* 2CBE */ + {0x2CC0,0x2CC1},{0x2CC0,0x2CC1}, /* 2CC0 */ + {0x2CC2,0x2CC3},{0x2CC2,0x2CC3}, /* 2CC2 */ + {0x2CC4,0x2CC5},{0x2CC4,0x2CC5}, /* 2CC4 */ + {0x2CC6,0x2CC7},{0x2CC6,0x2CC7}, /* 2CC6 */ + {0x2CC8,0x2CC9},{0x2CC8,0x2CC9}, /* 2CC8 */ + {0x2CCA,0x2CCB},{0x2CCA,0x2CCB}, /* 2CCA */ + {0x2CCC,0x2CCD},{0x2CCC,0x2CCD}, /* 2CCC */ + {0x2CCE,0x2CCF},{0x2CCE,0x2CCF}, /* 2CCE */ + {0x2CD0,0x2CD1},{0x2CD0,0x2CD1}, /* 2CD0 */ + {0x2CD2,0x2CD3},{0x2CD2,0x2CD3}, /* 2CD2 */ + {0x2CD4,0x2CD5},{0x2CD4,0x2CD5}, /* 2CD4 */ + {0x2CD6,0x2CD7},{0x2CD6,0x2CD7}, /* 2CD6 */ + {0x2CD8,0x2CD9},{0x2CD8,0x2CD9}, /* 2CD8 */ + {0x2CDA,0x2CDB},{0x2CDA,0x2CDB}, /* 2CDA */ + {0x2CDC,0x2CDD},{0x2CDC,0x2CDD}, /* 2CDC */ + {0x2CDE,0x2CDF},{0x2CDE,0x2CDF}, /* 2CDE */ + {0x2CE0,0x2CE1},{0x2CE0,0x2CE1}, /* 2CE0 */ + {0x2CE2,0x2CE3},{0x2CE2,0x2CE3}, /* 2CE2 */ + {0x2CE4,0x2CE4},{0x2CE5,0x2CE5}, /* 2CE4 */ + {0x2CE6,0x2CE6},{0x2CE7,0x2CE7}, /* 2CE6 */ + {0x2CE8,0x2CE8},{0x2CE9,0x2CE9}, /* 2CE8 */ + {0x2CEA,0x2CEA},{0x2CEB,0x2CEC}, /* 2CEA */ + {0x2CEB,0x2CEC},{0x2CED,0x2CEE}, /* 2CEC */ + {0x2CED,0x2CEE},{0x2CEF,0x2CEF}, /* 2CEE */ + {0x2CF0,0x2CF0},{0x2CF1,0x2CF1}, /* 2CF0 */ + {0x2CF2,0x2CF3},{0x2CF2,0x2CF3}, /* 2CF2 */ + {0x2CF4,0x2CF4},{0x2CF5,0x2CF5}, /* 2CF4 */ + {0x2CF6,0x2CF6},{0x2CF7,0x2CF7}, /* 2CF6 */ + {0x2CF8,0x2CF8},{0x2CF9,0x2CF9}, /* 2CF8 */ + {0x2CFA,0x2CFA},{0x2CFB,0x2CFB}, /* 2CFA */ + {0x2CFC,0x2CFC},{0x2CFD,0x2CFD}, /* 2CFC */ + {0x2CFE,0x2CFE},{0x2CFF,0x2CFF} /* 2CFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page2D[256]={ + {0x10A0,0x2D00},{0x10A1,0x2D01}, /* 2D00 */ + {0x10A2,0x2D02},{0x10A3,0x2D03}, /* 2D02 */ + {0x10A4,0x2D04},{0x10A5,0x2D05}, /* 2D04 */ + {0x10A6,0x2D06},{0x10A7,0x2D07}, /* 2D06 */ + {0x10A8,0x2D08},{0x10A9,0x2D09}, /* 2D08 */ + {0x10AA,0x2D0A},{0x10AB,0x2D0B}, /* 2D0A */ + {0x10AC,0x2D0C},{0x10AD,0x2D0D}, /* 2D0C */ + {0x10AE,0x2D0E},{0x10AF,0x2D0F}, /* 2D0E */ + {0x10B0,0x2D10},{0x10B1,0x2D11}, /* 2D10 */ + {0x10B2,0x2D12},{0x10B3,0x2D13}, /* 2D12 */ + {0x10B4,0x2D14},{0x10B5,0x2D15}, /* 2D14 */ + {0x10B6,0x2D16},{0x10B7,0x2D17}, /* 2D16 */ + {0x10B8,0x2D18},{0x10B9,0x2D19}, /* 2D18 */ + {0x10BA,0x2D1A},{0x10BB,0x2D1B}, /* 2D1A */ + {0x10BC,0x2D1C},{0x10BD,0x2D1D}, /* 2D1C */ + {0x10BE,0x2D1E},{0x10BF,0x2D1F}, /* 2D1E */ + {0x10C0,0x2D20},{0x10C1,0x2D21}, /* 2D20 */ + {0x10C2,0x2D22},{0x10C3,0x2D23}, /* 2D22 */ + {0x10C4,0x2D24},{0x10C5,0x2D25}, /* 2D24 */ + {0x2D26,0x2D26},{0x10C7,0x2D27}, /* 2D26 */ + {0x2D28,0x2D28},{0x2D29,0x2D29}, /* 2D28 */ + {0x2D2A,0x2D2A},{0x2D2B,0x2D2B}, /* 2D2A */ + {0x2D2C,0x2D2C},{0x10CD,0x2D2D}, /* 2D2C */ + {0x2D2E,0x2D2E},{0x2D2F,0x2D2F}, /* 2D2E */ + {0x2D30,0x2D30},{0x2D31,0x2D31}, /* 2D30 */ + {0x2D32,0x2D32},{0x2D33,0x2D33}, /* 2D32 */ + {0x2D34,0x2D34},{0x2D35,0x2D35}, /* 2D34 */ + {0x2D36,0x2D36},{0x2D37,0x2D37}, /* 2D36 */ + {0x2D38,0x2D38},{0x2D39,0x2D39}, /* 2D38 */ + {0x2D3A,0x2D3A},{0x2D3B,0x2D3B}, /* 2D3A */ + {0x2D3C,0x2D3C},{0x2D3D,0x2D3D}, /* 2D3C */ + {0x2D3E,0x2D3E},{0x2D3F,0x2D3F}, /* 2D3E */ + {0x2D40,0x2D40},{0x2D41,0x2D41}, /* 2D40 */ + {0x2D42,0x2D42},{0x2D43,0x2D43}, /* 2D42 */ + {0x2D44,0x2D44},{0x2D45,0x2D45}, /* 2D44 */ + {0x2D46,0x2D46},{0x2D47,0x2D47}, /* 2D46 */ + {0x2D48,0x2D48},{0x2D49,0x2D49}, /* 2D48 */ + {0x2D4A,0x2D4A},{0x2D4B,0x2D4B}, /* 2D4A */ + {0x2D4C,0x2D4C},{0x2D4D,0x2D4D}, /* 2D4C */ + {0x2D4E,0x2D4E},{0x2D4F,0x2D4F}, /* 2D4E */ + {0x2D50,0x2D50},{0x2D51,0x2D51}, /* 2D50 */ + {0x2D52,0x2D52},{0x2D53,0x2D53}, /* 2D52 */ + {0x2D54,0x2D54},{0x2D55,0x2D55}, /* 2D54 */ + {0x2D56,0x2D56},{0x2D57,0x2D57}, /* 2D56 */ + {0x2D58,0x2D58},{0x2D59,0x2D59}, /* 2D58 */ + {0x2D5A,0x2D5A},{0x2D5B,0x2D5B}, /* 2D5A */ + {0x2D5C,0x2D5C},{0x2D5D,0x2D5D}, /* 2D5C */ + {0x2D5E,0x2D5E},{0x2D5F,0x2D5F}, /* 2D5E */ + {0x2D60,0x2D60},{0x2D61,0x2D61}, /* 2D60 */ + {0x2D62,0x2D62},{0x2D63,0x2D63}, /* 2D62 */ + {0x2D64,0x2D64},{0x2D65,0x2D65}, /* 2D64 */ + {0x2D66,0x2D66},{0x2D67,0x2D67}, /* 2D66 */ + {0x2D68,0x2D68},{0x2D69,0x2D69}, /* 2D68 */ + {0x2D6A,0x2D6A},{0x2D6B,0x2D6B}, /* 2D6A */ + {0x2D6C,0x2D6C},{0x2D6D,0x2D6D}, /* 2D6C */ + {0x2D6E,0x2D6E},{0x2D6F,0x2D6F}, /* 2D6E */ + {0x2D70,0x2D70},{0x2D71,0x2D71}, /* 2D70 */ + {0x2D72,0x2D72},{0x2D73,0x2D73}, /* 2D72 */ + {0x2D74,0x2D74},{0x2D75,0x2D75}, /* 2D74 */ + {0x2D76,0x2D76},{0x2D77,0x2D77}, /* 2D76 */ + {0x2D78,0x2D78},{0x2D79,0x2D79}, /* 2D78 */ + {0x2D7A,0x2D7A},{0x2D7B,0x2D7B}, /* 2D7A */ + {0x2D7C,0x2D7C},{0x2D7D,0x2D7D}, /* 2D7C */ + {0x2D7E,0x2D7E},{0x2D7F,0x2D7F}, /* 2D7E */ + {0x2D80,0x2D80},{0x2D81,0x2D81}, /* 2D80 */ + {0x2D82,0x2D82},{0x2D83,0x2D83}, /* 2D82 */ + {0x2D84,0x2D84},{0x2D85,0x2D85}, /* 2D84 */ + {0x2D86,0x2D86},{0x2D87,0x2D87}, /* 2D86 */ + {0x2D88,0x2D88},{0x2D89,0x2D89}, /* 2D88 */ + {0x2D8A,0x2D8A},{0x2D8B,0x2D8B}, /* 2D8A */ + {0x2D8C,0x2D8C},{0x2D8D,0x2D8D}, /* 2D8C */ + {0x2D8E,0x2D8E},{0x2D8F,0x2D8F}, /* 2D8E */ + {0x2D90,0x2D90},{0x2D91,0x2D91}, /* 2D90 */ + {0x2D92,0x2D92},{0x2D93,0x2D93}, /* 2D92 */ + {0x2D94,0x2D94},{0x2D95,0x2D95}, /* 2D94 */ + {0x2D96,0x2D96},{0x2D97,0x2D97}, /* 2D96 */ + {0x2D98,0x2D98},{0x2D99,0x2D99}, /* 2D98 */ + {0x2D9A,0x2D9A},{0x2D9B,0x2D9B}, /* 2D9A */ + {0x2D9C,0x2D9C},{0x2D9D,0x2D9D}, /* 2D9C */ + {0x2D9E,0x2D9E},{0x2D9F,0x2D9F}, /* 2D9E */ + {0x2DA0,0x2DA0},{0x2DA1,0x2DA1}, /* 2DA0 */ + {0x2DA2,0x2DA2},{0x2DA3,0x2DA3}, /* 2DA2 */ + {0x2DA4,0x2DA4},{0x2DA5,0x2DA5}, /* 2DA4 */ + {0x2DA6,0x2DA6},{0x2DA7,0x2DA7}, /* 2DA6 */ + {0x2DA8,0x2DA8},{0x2DA9,0x2DA9}, /* 2DA8 */ + {0x2DAA,0x2DAA},{0x2DAB,0x2DAB}, /* 2DAA */ + {0x2DAC,0x2DAC},{0x2DAD,0x2DAD}, /* 2DAC */ + {0x2DAE,0x2DAE},{0x2DAF,0x2DAF}, /* 2DAE */ + {0x2DB0,0x2DB0},{0x2DB1,0x2DB1}, /* 2DB0 */ + {0x2DB2,0x2DB2},{0x2DB3,0x2DB3}, /* 2DB2 */ + {0x2DB4,0x2DB4},{0x2DB5,0x2DB5}, /* 2DB4 */ + {0x2DB6,0x2DB6},{0x2DB7,0x2DB7}, /* 2DB6 */ + {0x2DB8,0x2DB8},{0x2DB9,0x2DB9}, /* 2DB8 */ + {0x2DBA,0x2DBA},{0x2DBB,0x2DBB}, /* 2DBA */ + {0x2DBC,0x2DBC},{0x2DBD,0x2DBD}, /* 2DBC */ + {0x2DBE,0x2DBE},{0x2DBF,0x2DBF}, /* 2DBE */ + {0x2DC0,0x2DC0},{0x2DC1,0x2DC1}, /* 2DC0 */ + {0x2DC2,0x2DC2},{0x2DC3,0x2DC3}, /* 2DC2 */ + {0x2DC4,0x2DC4},{0x2DC5,0x2DC5}, /* 2DC4 */ + {0x2DC6,0x2DC6},{0x2DC7,0x2DC7}, /* 2DC6 */ + {0x2DC8,0x2DC8},{0x2DC9,0x2DC9}, /* 2DC8 */ + {0x2DCA,0x2DCA},{0x2DCB,0x2DCB}, /* 2DCA */ + {0x2DCC,0x2DCC},{0x2DCD,0x2DCD}, /* 2DCC */ + {0x2DCE,0x2DCE},{0x2DCF,0x2DCF}, /* 2DCE */ + {0x2DD0,0x2DD0},{0x2DD1,0x2DD1}, /* 2DD0 */ + {0x2DD2,0x2DD2},{0x2DD3,0x2DD3}, /* 2DD2 */ + {0x2DD4,0x2DD4},{0x2DD5,0x2DD5}, /* 2DD4 */ + {0x2DD6,0x2DD6},{0x2DD7,0x2DD7}, /* 2DD6 */ + {0x2DD8,0x2DD8},{0x2DD9,0x2DD9}, /* 2DD8 */ + {0x2DDA,0x2DDA},{0x2DDB,0x2DDB}, /* 2DDA */ + {0x2DDC,0x2DDC},{0x2DDD,0x2DDD}, /* 2DDC */ + {0x2DDE,0x2DDE},{0x2DDF,0x2DDF}, /* 2DDE */ + {0x2DE0,0x2DE0},{0x2DE1,0x2DE1}, /* 2DE0 */ + {0x2DE2,0x2DE2},{0x2DE3,0x2DE3}, /* 2DE2 */ + {0x2DE4,0x2DE4},{0x2DE5,0x2DE5}, /* 2DE4 */ + {0x2DE6,0x2DE6},{0x2DE7,0x2DE7}, /* 2DE6 */ + {0x2DE8,0x2DE8},{0x2DE9,0x2DE9}, /* 2DE8 */ + {0x2DEA,0x2DEA},{0x2DEB,0x2DEB}, /* 2DEA */ + {0x2DEC,0x2DEC},{0x2DED,0x2DED}, /* 2DEC */ + {0x2DEE,0x2DEE},{0x2DEF,0x2DEF}, /* 2DEE */ + {0x2DF0,0x2DF0},{0x2DF1,0x2DF1}, /* 2DF0 */ + {0x2DF2,0x2DF2},{0x2DF3,0x2DF3}, /* 2DF2 */ + {0x2DF4,0x2DF4},{0x2DF5,0x2DF5}, /* 2DF4 */ + {0x2DF6,0x2DF6},{0x2DF7,0x2DF7}, /* 2DF6 */ + {0x2DF8,0x2DF8},{0x2DF9,0x2DF9}, /* 2DF8 */ + {0x2DFA,0x2DFA},{0x2DFB,0x2DFB}, /* 2DFA */ + {0x2DFC,0x2DFC},{0x2DFD,0x2DFD}, /* 2DFC */ + {0x2DFE,0x2DFE},{0x2DFF,0x2DFF} /* 2DFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_pageA6[256]={ + {0xA600,0xA600},{0xA601,0xA601}, /* A600 */ + {0xA602,0xA602},{0xA603,0xA603}, /* A602 */ + {0xA604,0xA604},{0xA605,0xA605}, /* A604 */ + {0xA606,0xA606},{0xA607,0xA607}, /* A606 */ + {0xA608,0xA608},{0xA609,0xA609}, /* A608 */ + {0xA60A,0xA60A},{0xA60B,0xA60B}, /* A60A */ + {0xA60C,0xA60C},{0xA60D,0xA60D}, /* A60C */ + {0xA60E,0xA60E},{0xA60F,0xA60F}, /* A60E */ + {0xA610,0xA610},{0xA611,0xA611}, /* A610 */ + {0xA612,0xA612},{0xA613,0xA613}, /* A612 */ + {0xA614,0xA614},{0xA615,0xA615}, /* A614 */ + {0xA616,0xA616},{0xA617,0xA617}, /* A616 */ + {0xA618,0xA618},{0xA619,0xA619}, /* A618 */ + {0xA61A,0xA61A},{0xA61B,0xA61B}, /* A61A */ + {0xA61C,0xA61C},{0xA61D,0xA61D}, /* A61C */ + {0xA61E,0xA61E},{0xA61F,0xA61F}, /* A61E */ + {0xA620,0xA620},{0xA621,0xA621}, /* A620 */ + {0xA622,0xA622},{0xA623,0xA623}, /* A622 */ + {0xA624,0xA624},{0xA625,0xA625}, /* A624 */ + {0xA626,0xA626},{0xA627,0xA627}, /* A626 */ + {0xA628,0xA628},{0xA629,0xA629}, /* A628 */ + {0xA62A,0xA62A},{0xA62B,0xA62B}, /* A62A */ + {0xA62C,0xA62C},{0xA62D,0xA62D}, /* A62C */ + {0xA62E,0xA62E},{0xA62F,0xA62F}, /* A62E */ + {0xA630,0xA630},{0xA631,0xA631}, /* A630 */ + {0xA632,0xA632},{0xA633,0xA633}, /* A632 */ + {0xA634,0xA634},{0xA635,0xA635}, /* A634 */ + {0xA636,0xA636},{0xA637,0xA637}, /* A636 */ + {0xA638,0xA638},{0xA639,0xA639}, /* A638 */ + {0xA63A,0xA63A},{0xA63B,0xA63B}, /* A63A */ + {0xA63C,0xA63C},{0xA63D,0xA63D}, /* A63C */ + {0xA63E,0xA63E},{0xA63F,0xA63F}, /* A63E */ + {0xA640,0xA641},{0xA640,0xA641}, /* A640 */ + {0xA642,0xA643},{0xA642,0xA643}, /* A642 */ + {0xA644,0xA645},{0xA644,0xA645}, /* A644 */ + {0xA646,0xA647},{0xA646,0xA647}, /* A646 */ + {0xA648,0xA649},{0xA648,0xA649}, /* A648 */ + {0xA64A,0xA64B},{0xA64A,0xA64B}, /* A64A */ + {0xA64C,0xA64D},{0xA64C,0xA64D}, /* A64C */ + {0xA64E,0xA64F},{0xA64E,0xA64F}, /* A64E */ + {0xA650,0xA651},{0xA650,0xA651}, /* A650 */ + {0xA652,0xA653},{0xA652,0xA653}, /* A652 */ + {0xA654,0xA655},{0xA654,0xA655}, /* A654 */ + {0xA656,0xA657},{0xA656,0xA657}, /* A656 */ + {0xA658,0xA659},{0xA658,0xA659}, /* A658 */ + {0xA65A,0xA65B},{0xA65A,0xA65B}, /* A65A */ + {0xA65C,0xA65D},{0xA65C,0xA65D}, /* A65C */ + {0xA65E,0xA65F},{0xA65E,0xA65F}, /* A65E */ + {0xA660,0xA661},{0xA660,0xA661}, /* A660 */ + {0xA662,0xA663},{0xA662,0xA663}, /* A662 */ + {0xA664,0xA665},{0xA664,0xA665}, /* A664 */ + {0xA666,0xA667},{0xA666,0xA667}, /* A666 */ + {0xA668,0xA669},{0xA668,0xA669}, /* A668 */ + {0xA66A,0xA66B},{0xA66A,0xA66B}, /* A66A */ + {0xA66C,0xA66D},{0xA66C,0xA66D}, /* A66C */ + {0xA66E,0xA66E},{0xA66F,0xA66F}, /* A66E */ + {0xA670,0xA670},{0xA671,0xA671}, /* A670 */ + {0xA672,0xA672},{0xA673,0xA673}, /* A672 */ + {0xA674,0xA674},{0xA675,0xA675}, /* A674 */ + {0xA676,0xA676},{0xA677,0xA677}, /* A676 */ + {0xA678,0xA678},{0xA679,0xA679}, /* A678 */ + {0xA67A,0xA67A},{0xA67B,0xA67B}, /* A67A */ + {0xA67C,0xA67C},{0xA67D,0xA67D}, /* A67C */ + {0xA67E,0xA67E},{0xA67F,0xA67F}, /* A67E */ + {0xA680,0xA681},{0xA680,0xA681}, /* A680 */ + {0xA682,0xA683},{0xA682,0xA683}, /* A682 */ + {0xA684,0xA685},{0xA684,0xA685}, /* A684 */ + {0xA686,0xA687},{0xA686,0xA687}, /* A686 */ + {0xA688,0xA689},{0xA688,0xA689}, /* A688 */ + {0xA68A,0xA68B},{0xA68A,0xA68B}, /* A68A */ + {0xA68C,0xA68D},{0xA68C,0xA68D}, /* A68C */ + {0xA68E,0xA68F},{0xA68E,0xA68F}, /* A68E */ + {0xA690,0xA691},{0xA690,0xA691}, /* A690 */ + {0xA692,0xA693},{0xA692,0xA693}, /* A692 */ + {0xA694,0xA695},{0xA694,0xA695}, /* A694 */ + {0xA696,0xA697},{0xA696,0xA697}, /* A696 */ + {0xA698,0xA699},{0xA698,0xA699}, /* A698 */ + {0xA69A,0xA69B},{0xA69A,0xA69B}, /* A69A */ + {0xA69C,0xA69C},{0xA69D,0xA69D}, /* A69C */ + {0xA69E,0xA69E},{0xA69F,0xA69F}, /* A69E */ + {0xA6A0,0xA6A0},{0xA6A1,0xA6A1}, /* A6A0 */ + {0xA6A2,0xA6A2},{0xA6A3,0xA6A3}, /* A6A2 */ + {0xA6A4,0xA6A4},{0xA6A5,0xA6A5}, /* A6A4 */ + {0xA6A6,0xA6A6},{0xA6A7,0xA6A7}, /* A6A6 */ + {0xA6A8,0xA6A8},{0xA6A9,0xA6A9}, /* A6A8 */ + {0xA6AA,0xA6AA},{0xA6AB,0xA6AB}, /* A6AA */ + {0xA6AC,0xA6AC},{0xA6AD,0xA6AD}, /* A6AC */ + {0xA6AE,0xA6AE},{0xA6AF,0xA6AF}, /* A6AE */ + {0xA6B0,0xA6B0},{0xA6B1,0xA6B1}, /* A6B0 */ + {0xA6B2,0xA6B2},{0xA6B3,0xA6B3}, /* A6B2 */ + {0xA6B4,0xA6B4},{0xA6B5,0xA6B5}, /* A6B4 */ + {0xA6B6,0xA6B6},{0xA6B7,0xA6B7}, /* A6B6 */ + {0xA6B8,0xA6B8},{0xA6B9,0xA6B9}, /* A6B8 */ + {0xA6BA,0xA6BA},{0xA6BB,0xA6BB}, /* A6BA */ + {0xA6BC,0xA6BC},{0xA6BD,0xA6BD}, /* A6BC */ + {0xA6BE,0xA6BE},{0xA6BF,0xA6BF}, /* A6BE */ + {0xA6C0,0xA6C0},{0xA6C1,0xA6C1}, /* A6C0 */ + {0xA6C2,0xA6C2},{0xA6C3,0xA6C3}, /* A6C2 */ + {0xA6C4,0xA6C4},{0xA6C5,0xA6C5}, /* A6C4 */ + {0xA6C6,0xA6C6},{0xA6C7,0xA6C7}, /* A6C6 */ + {0xA6C8,0xA6C8},{0xA6C9,0xA6C9}, /* A6C8 */ + {0xA6CA,0xA6CA},{0xA6CB,0xA6CB}, /* A6CA */ + {0xA6CC,0xA6CC},{0xA6CD,0xA6CD}, /* A6CC */ + {0xA6CE,0xA6CE},{0xA6CF,0xA6CF}, /* A6CE */ + {0xA6D0,0xA6D0},{0xA6D1,0xA6D1}, /* A6D0 */ + {0xA6D2,0xA6D2},{0xA6D3,0xA6D3}, /* A6D2 */ + {0xA6D4,0xA6D4},{0xA6D5,0xA6D5}, /* A6D4 */ + {0xA6D6,0xA6D6},{0xA6D7,0xA6D7}, /* A6D6 */ + {0xA6D8,0xA6D8},{0xA6D9,0xA6D9}, /* A6D8 */ + {0xA6DA,0xA6DA},{0xA6DB,0xA6DB}, /* A6DA */ + {0xA6DC,0xA6DC},{0xA6DD,0xA6DD}, /* A6DC */ + {0xA6DE,0xA6DE},{0xA6DF,0xA6DF}, /* A6DE */ + {0xA6E0,0xA6E0},{0xA6E1,0xA6E1}, /* A6E0 */ + {0xA6E2,0xA6E2},{0xA6E3,0xA6E3}, /* A6E2 */ + {0xA6E4,0xA6E4},{0xA6E5,0xA6E5}, /* A6E4 */ + {0xA6E6,0xA6E6},{0xA6E7,0xA6E7}, /* A6E6 */ + {0xA6E8,0xA6E8},{0xA6E9,0xA6E9}, /* A6E8 */ + {0xA6EA,0xA6EA},{0xA6EB,0xA6EB}, /* A6EA */ + {0xA6EC,0xA6EC},{0xA6ED,0xA6ED}, /* A6EC */ + {0xA6EE,0xA6EE},{0xA6EF,0xA6EF}, /* A6EE */ + {0xA6F0,0xA6F0},{0xA6F1,0xA6F1}, /* A6F0 */ + {0xA6F2,0xA6F2},{0xA6F3,0xA6F3}, /* A6F2 */ + {0xA6F4,0xA6F4},{0xA6F5,0xA6F5}, /* A6F4 */ + {0xA6F6,0xA6F6},{0xA6F7,0xA6F7}, /* A6F6 */ + {0xA6F8,0xA6F8},{0xA6F9,0xA6F9}, /* A6F8 */ + {0xA6FA,0xA6FA},{0xA6FB,0xA6FB}, /* A6FA */ + {0xA6FC,0xA6FC},{0xA6FD,0xA6FD}, /* A6FC */ + {0xA6FE,0xA6FE},{0xA6FF,0xA6FF} /* A6FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_pageA7[256]={ + {0xA700,0xA700},{0xA701,0xA701}, /* A700 */ + {0xA702,0xA702},{0xA703,0xA703}, /* A702 */ + {0xA704,0xA704},{0xA705,0xA705}, /* A704 */ + {0xA706,0xA706},{0xA707,0xA707}, /* A706 */ + {0xA708,0xA708},{0xA709,0xA709}, /* A708 */ + {0xA70A,0xA70A},{0xA70B,0xA70B}, /* A70A */ + {0xA70C,0xA70C},{0xA70D,0xA70D}, /* A70C */ + {0xA70E,0xA70E},{0xA70F,0xA70F}, /* A70E */ + {0xA710,0xA710},{0xA711,0xA711}, /* A710 */ + {0xA712,0xA712},{0xA713,0xA713}, /* A712 */ + {0xA714,0xA714},{0xA715,0xA715}, /* A714 */ + {0xA716,0xA716},{0xA717,0xA717}, /* A716 */ + {0xA718,0xA718},{0xA719,0xA719}, /* A718 */ + {0xA71A,0xA71A},{0xA71B,0xA71B}, /* A71A */ + {0xA71C,0xA71C},{0xA71D,0xA71D}, /* A71C */ + {0xA71E,0xA71E},{0xA71F,0xA71F}, /* A71E */ + {0xA720,0xA720},{0xA721,0xA721}, /* A720 */ + {0xA722,0xA723},{0xA722,0xA723}, /* A722 */ + {0xA724,0xA725},{0xA724,0xA725}, /* A724 */ + {0xA726,0xA727},{0xA726,0xA727}, /* A726 */ + {0xA728,0xA729},{0xA728,0xA729}, /* A728 */ + {0xA72A,0xA72B},{0xA72A,0xA72B}, /* A72A */ + {0xA72C,0xA72D},{0xA72C,0xA72D}, /* A72C */ + {0xA72E,0xA72F},{0xA72E,0xA72F}, /* A72E */ + {0xA730,0xA730},{0xA731,0xA731}, /* A730 */ + {0xA732,0xA733},{0xA732,0xA733}, /* A732 */ + {0xA734,0xA735},{0xA734,0xA735}, /* A734 */ + {0xA736,0xA737},{0xA736,0xA737}, /* A736 */ + {0xA738,0xA739},{0xA738,0xA739}, /* A738 */ + {0xA73A,0xA73B},{0xA73A,0xA73B}, /* A73A */ + {0xA73C,0xA73D},{0xA73C,0xA73D}, /* A73C */ + {0xA73E,0xA73F},{0xA73E,0xA73F}, /* A73E */ + {0xA740,0xA741},{0xA740,0xA741}, /* A740 */ + {0xA742,0xA743},{0xA742,0xA743}, /* A742 */ + {0xA744,0xA745},{0xA744,0xA745}, /* A744 */ + {0xA746,0xA747},{0xA746,0xA747}, /* A746 */ + {0xA748,0xA749},{0xA748,0xA749}, /* A748 */ + {0xA74A,0xA74B},{0xA74A,0xA74B}, /* A74A */ + {0xA74C,0xA74D},{0xA74C,0xA74D}, /* A74C */ + {0xA74E,0xA74F},{0xA74E,0xA74F}, /* A74E */ + {0xA750,0xA751},{0xA750,0xA751}, /* A750 */ + {0xA752,0xA753},{0xA752,0xA753}, /* A752 */ + {0xA754,0xA755},{0xA754,0xA755}, /* A754 */ + {0xA756,0xA757},{0xA756,0xA757}, /* A756 */ + {0xA758,0xA759},{0xA758,0xA759}, /* A758 */ + {0xA75A,0xA75B},{0xA75A,0xA75B}, /* A75A */ + {0xA75C,0xA75D},{0xA75C,0xA75D}, /* A75C */ + {0xA75E,0xA75F},{0xA75E,0xA75F}, /* A75E */ + {0xA760,0xA761},{0xA760,0xA761}, /* A760 */ + {0xA762,0xA763},{0xA762,0xA763}, /* A762 */ + {0xA764,0xA765},{0xA764,0xA765}, /* A764 */ + {0xA766,0xA767},{0xA766,0xA767}, /* A766 */ + {0xA768,0xA769},{0xA768,0xA769}, /* A768 */ + {0xA76A,0xA76B},{0xA76A,0xA76B}, /* A76A */ + {0xA76C,0xA76D},{0xA76C,0xA76D}, /* A76C */ + {0xA76E,0xA76F},{0xA76E,0xA76F}, /* A76E */ + {0xA770,0xA770},{0xA771,0xA771}, /* A770 */ + {0xA772,0xA772},{0xA773,0xA773}, /* A772 */ + {0xA774,0xA774},{0xA775,0xA775}, /* A774 */ + {0xA776,0xA776},{0xA777,0xA777}, /* A776 */ + {0xA778,0xA778},{0xA779,0xA77A}, /* A778 */ + {0xA779,0xA77A},{0xA77B,0xA77C}, /* A77A */ + {0xA77B,0xA77C},{0xA77D,0x1D79}, /* A77C */ + {0xA77E,0xA77F},{0xA77E,0xA77F}, /* A77E */ + {0xA780,0xA781},{0xA780,0xA781}, /* A780 */ + {0xA782,0xA783},{0xA782,0xA783}, /* A782 */ + {0xA784,0xA785},{0xA784,0xA785}, /* A784 */ + {0xA786,0xA787},{0xA786,0xA787}, /* A786 */ + {0xA788,0xA788},{0xA789,0xA789}, /* A788 */ + {0xA78A,0xA78A},{0xA78B,0xA78C}, /* A78A */ + {0xA78B,0xA78C},{0xA78D,0x0265}, /* A78C */ + {0xA78E,0xA78E},{0xA78F,0xA78F}, /* A78E */ + {0xA790,0xA791},{0xA790,0xA791}, /* A790 */ + {0xA792,0xA793},{0xA792,0xA793}, /* A792 */ + {0xA7C4,0xA794},{0xA795,0xA795}, /* A794 */ + {0xA796,0xA797},{0xA796,0xA797}, /* A796 */ + {0xA798,0xA799},{0xA798,0xA799}, /* A798 */ + {0xA79A,0xA79B},{0xA79A,0xA79B}, /* A79A */ + {0xA79C,0xA79D},{0xA79C,0xA79D}, /* A79C */ + {0xA79E,0xA79F},{0xA79E,0xA79F}, /* A79E */ + {0xA7A0,0xA7A1},{0xA7A0,0xA7A1}, /* A7A0 */ + {0xA7A2,0xA7A3},{0xA7A2,0xA7A3}, /* A7A2 */ + {0xA7A4,0xA7A5},{0xA7A4,0xA7A5}, /* A7A4 */ + {0xA7A6,0xA7A7},{0xA7A6,0xA7A7}, /* A7A6 */ + {0xA7A8,0xA7A9},{0xA7A8,0xA7A9}, /* A7A8 */ + {0xA7AA,0x0266},{0xA7AB,0x025C}, /* A7AA */ + {0xA7AC,0x0261},{0xA7AD,0x026C}, /* A7AC */ + {0xA7AE,0x026A},{0xA7AF,0xA7AF}, /* A7AE */ + {0xA7B0,0x029E},{0xA7B1,0x0287}, /* A7B0 */ + {0xA7B2,0x029D},{0xA7B3,0xAB53}, /* A7B2 */ + {0xA7B4,0xA7B5},{0xA7B4,0xA7B5}, /* A7B4 */ + {0xA7B6,0xA7B7},{0xA7B6,0xA7B7}, /* A7B6 */ + {0xA7B8,0xA7B9},{0xA7B8,0xA7B9}, /* A7B8 */ + {0xA7BA,0xA7BB},{0xA7BA,0xA7BB}, /* A7BA */ + {0xA7BC,0xA7BD},{0xA7BC,0xA7BD}, /* A7BC */ + {0xA7BE,0xA7BF},{0xA7BE,0xA7BF}, /* A7BE */ + {0xA7C0,0xA7C1},{0xA7C0,0xA7C1}, /* A7C0 */ + {0xA7C2,0xA7C3},{0xA7C2,0xA7C3}, /* A7C2 */ + {0xA7C4,0xA794},{0xA7C5,0x0282}, /* A7C4 */ + {0xA7C6,0x1D8E},{0xA7C7,0xA7C8}, /* A7C6 */ + {0xA7C7,0xA7C8},{0xA7C9,0xA7CA}, /* A7C8 */ + {0xA7C9,0xA7CA},{0xA7CB,0xA7CB}, /* A7CA */ + {0xA7CC,0xA7CC},{0xA7CD,0xA7CD}, /* A7CC */ + {0xA7CE,0xA7CE},{0xA7CF,0xA7CF}, /* A7CE */ + {0xA7D0,0xA7D1},{0xA7D0,0xA7D1}, /* A7D0 */ + {0xA7D2,0xA7D2},{0xA7D3,0xA7D3}, /* A7D2 */ + {0xA7D4,0xA7D4},{0xA7D5,0xA7D5}, /* A7D4 */ + {0xA7D6,0xA7D7},{0xA7D6,0xA7D7}, /* A7D6 */ + {0xA7D8,0xA7D9},{0xA7D8,0xA7D9}, /* A7D8 */ + {0xA7DA,0xA7DA},{0xA7DB,0xA7DB}, /* A7DA */ + {0xA7DC,0xA7DC},{0xA7DD,0xA7DD}, /* A7DC */ + {0xA7DE,0xA7DE},{0xA7DF,0xA7DF}, /* A7DE */ + {0xA7E0,0xA7E0},{0xA7E1,0xA7E1}, /* A7E0 */ + {0xA7E2,0xA7E2},{0xA7E3,0xA7E3}, /* A7E2 */ + {0xA7E4,0xA7E4},{0xA7E5,0xA7E5}, /* A7E4 */ + {0xA7E6,0xA7E6},{0xA7E7,0xA7E7}, /* A7E6 */ + {0xA7E8,0xA7E8},{0xA7E9,0xA7E9}, /* A7E8 */ + {0xA7EA,0xA7EA},{0xA7EB,0xA7EB}, /* A7EA */ + {0xA7EC,0xA7EC},{0xA7ED,0xA7ED}, /* A7EC */ + {0xA7EE,0xA7EE},{0xA7EF,0xA7EF}, /* A7EE */ + {0xA7F0,0xA7F0},{0xA7F1,0xA7F1}, /* A7F0 */ + {0xA7F2,0xA7F2},{0xA7F3,0xA7F3}, /* A7F2 */ + {0xA7F4,0xA7F4},{0xA7F5,0xA7F6}, /* A7F4 */ + {0xA7F5,0xA7F6},{0xA7F7,0xA7F7}, /* A7F6 */ + {0xA7F8,0xA7F8},{0xA7F9,0xA7F9}, /* A7F8 */ + {0xA7FA,0xA7FA},{0xA7FB,0xA7FB}, /* A7FA */ + {0xA7FC,0xA7FC},{0xA7FD,0xA7FD}, /* A7FC */ + {0xA7FE,0xA7FE},{0xA7FF,0xA7FF} /* A7FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_pageAB[256]={ + {0xAB00,0xAB00},{0xAB01,0xAB01}, /* AB00 */ + {0xAB02,0xAB02},{0xAB03,0xAB03}, /* AB02 */ + {0xAB04,0xAB04},{0xAB05,0xAB05}, /* AB04 */ + {0xAB06,0xAB06},{0xAB07,0xAB07}, /* AB06 */ + {0xAB08,0xAB08},{0xAB09,0xAB09}, /* AB08 */ + {0xAB0A,0xAB0A},{0xAB0B,0xAB0B}, /* AB0A */ + {0xAB0C,0xAB0C},{0xAB0D,0xAB0D}, /* AB0C */ + {0xAB0E,0xAB0E},{0xAB0F,0xAB0F}, /* AB0E */ + {0xAB10,0xAB10},{0xAB11,0xAB11}, /* AB10 */ + {0xAB12,0xAB12},{0xAB13,0xAB13}, /* AB12 */ + {0xAB14,0xAB14},{0xAB15,0xAB15}, /* AB14 */ + {0xAB16,0xAB16},{0xAB17,0xAB17}, /* AB16 */ + {0xAB18,0xAB18},{0xAB19,0xAB19}, /* AB18 */ + {0xAB1A,0xAB1A},{0xAB1B,0xAB1B}, /* AB1A */ + {0xAB1C,0xAB1C},{0xAB1D,0xAB1D}, /* AB1C */ + {0xAB1E,0xAB1E},{0xAB1F,0xAB1F}, /* AB1E */ + {0xAB20,0xAB20},{0xAB21,0xAB21}, /* AB20 */ + {0xAB22,0xAB22},{0xAB23,0xAB23}, /* AB22 */ + {0xAB24,0xAB24},{0xAB25,0xAB25}, /* AB24 */ + {0xAB26,0xAB26},{0xAB27,0xAB27}, /* AB26 */ + {0xAB28,0xAB28},{0xAB29,0xAB29}, /* AB28 */ + {0xAB2A,0xAB2A},{0xAB2B,0xAB2B}, /* AB2A */ + {0xAB2C,0xAB2C},{0xAB2D,0xAB2D}, /* AB2C */ + {0xAB2E,0xAB2E},{0xAB2F,0xAB2F}, /* AB2E */ + {0xAB30,0xAB30},{0xAB31,0xAB31}, /* AB30 */ + {0xAB32,0xAB32},{0xAB33,0xAB33}, /* AB32 */ + {0xAB34,0xAB34},{0xAB35,0xAB35}, /* AB34 */ + {0xAB36,0xAB36},{0xAB37,0xAB37}, /* AB36 */ + {0xAB38,0xAB38},{0xAB39,0xAB39}, /* AB38 */ + {0xAB3A,0xAB3A},{0xAB3B,0xAB3B}, /* AB3A */ + {0xAB3C,0xAB3C},{0xAB3D,0xAB3D}, /* AB3C */ + {0xAB3E,0xAB3E},{0xAB3F,0xAB3F}, /* AB3E */ + {0xAB40,0xAB40},{0xAB41,0xAB41}, /* AB40 */ + {0xAB42,0xAB42},{0xAB43,0xAB43}, /* AB42 */ + {0xAB44,0xAB44},{0xAB45,0xAB45}, /* AB44 */ + {0xAB46,0xAB46},{0xAB47,0xAB47}, /* AB46 */ + {0xAB48,0xAB48},{0xAB49,0xAB49}, /* AB48 */ + {0xAB4A,0xAB4A},{0xAB4B,0xAB4B}, /* AB4A */ + {0xAB4C,0xAB4C},{0xAB4D,0xAB4D}, /* AB4C */ + {0xAB4E,0xAB4E},{0xAB4F,0xAB4F}, /* AB4E */ + {0xAB50,0xAB50},{0xAB51,0xAB51}, /* AB50 */ + {0xAB52,0xAB52},{0xA7B3,0xAB53}, /* AB52 */ + {0xAB54,0xAB54},{0xAB55,0xAB55}, /* AB54 */ + {0xAB56,0xAB56},{0xAB57,0xAB57}, /* AB56 */ + {0xAB58,0xAB58},{0xAB59,0xAB59}, /* AB58 */ + {0xAB5A,0xAB5A},{0xAB5B,0xAB5B}, /* AB5A */ + {0xAB5C,0xAB5C},{0xAB5D,0xAB5D}, /* AB5C */ + {0xAB5E,0xAB5E},{0xAB5F,0xAB5F}, /* AB5E */ + {0xAB60,0xAB60},{0xAB61,0xAB61}, /* AB60 */ + {0xAB62,0xAB62},{0xAB63,0xAB63}, /* AB62 */ + {0xAB64,0xAB64},{0xAB65,0xAB65}, /* AB64 */ + {0xAB66,0xAB66},{0xAB67,0xAB67}, /* AB66 */ + {0xAB68,0xAB68},{0xAB69,0xAB69}, /* AB68 */ + {0xAB6A,0xAB6A},{0xAB6B,0xAB6B}, /* AB6A */ + {0xAB6C,0xAB6C},{0xAB6D,0xAB6D}, /* AB6C */ + {0xAB6E,0xAB6E},{0xAB6F,0xAB6F}, /* AB6E */ + {0x13A0,0xAB70},{0x13A1,0xAB71}, /* AB70 */ + {0x13A2,0xAB72},{0x13A3,0xAB73}, /* AB72 */ + {0x13A4,0xAB74},{0x13A5,0xAB75}, /* AB74 */ + {0x13A6,0xAB76},{0x13A7,0xAB77}, /* AB76 */ + {0x13A8,0xAB78},{0x13A9,0xAB79}, /* AB78 */ + {0x13AA,0xAB7A},{0x13AB,0xAB7B}, /* AB7A */ + {0x13AC,0xAB7C},{0x13AD,0xAB7D}, /* AB7C */ + {0x13AE,0xAB7E},{0x13AF,0xAB7F}, /* AB7E */ + {0x13B0,0xAB80},{0x13B1,0xAB81}, /* AB80 */ + {0x13B2,0xAB82},{0x13B3,0xAB83}, /* AB82 */ + {0x13B4,0xAB84},{0x13B5,0xAB85}, /* AB84 */ + {0x13B6,0xAB86},{0x13B7,0xAB87}, /* AB86 */ + {0x13B8,0xAB88},{0x13B9,0xAB89}, /* AB88 */ + {0x13BA,0xAB8A},{0x13BB,0xAB8B}, /* AB8A */ + {0x13BC,0xAB8C},{0x13BD,0xAB8D}, /* AB8C */ + {0x13BE,0xAB8E},{0x13BF,0xAB8F}, /* AB8E */ + {0x13C0,0xAB90},{0x13C1,0xAB91}, /* AB90 */ + {0x13C2,0xAB92},{0x13C3,0xAB93}, /* AB92 */ + {0x13C4,0xAB94},{0x13C5,0xAB95}, /* AB94 */ + {0x13C6,0xAB96},{0x13C7,0xAB97}, /* AB96 */ + {0x13C8,0xAB98},{0x13C9,0xAB99}, /* AB98 */ + {0x13CA,0xAB9A},{0x13CB,0xAB9B}, /* AB9A */ + {0x13CC,0xAB9C},{0x13CD,0xAB9D}, /* AB9C */ + {0x13CE,0xAB9E},{0x13CF,0xAB9F}, /* AB9E */ + {0x13D0,0xABA0},{0x13D1,0xABA1}, /* ABA0 */ + {0x13D2,0xABA2},{0x13D3,0xABA3}, /* ABA2 */ + {0x13D4,0xABA4},{0x13D5,0xABA5}, /* ABA4 */ + {0x13D6,0xABA6},{0x13D7,0xABA7}, /* ABA6 */ + {0x13D8,0xABA8},{0x13D9,0xABA9}, /* ABA8 */ + {0x13DA,0xABAA},{0x13DB,0xABAB}, /* ABAA */ + {0x13DC,0xABAC},{0x13DD,0xABAD}, /* ABAC */ + {0x13DE,0xABAE},{0x13DF,0xABAF}, /* ABAE */ + {0x13E0,0xABB0},{0x13E1,0xABB1}, /* ABB0 */ + {0x13E2,0xABB2},{0x13E3,0xABB3}, /* ABB2 */ + {0x13E4,0xABB4},{0x13E5,0xABB5}, /* ABB4 */ + {0x13E6,0xABB6},{0x13E7,0xABB7}, /* ABB6 */ + {0x13E8,0xABB8},{0x13E9,0xABB9}, /* ABB8 */ + {0x13EA,0xABBA},{0x13EB,0xABBB}, /* ABBA */ + {0x13EC,0xABBC},{0x13ED,0xABBD}, /* ABBC */ + {0x13EE,0xABBE},{0x13EF,0xABBF}, /* ABBE */ + {0xABC0,0xABC0},{0xABC1,0xABC1}, /* ABC0 */ + {0xABC2,0xABC2},{0xABC3,0xABC3}, /* ABC2 */ + {0xABC4,0xABC4},{0xABC5,0xABC5}, /* ABC4 */ + {0xABC6,0xABC6},{0xABC7,0xABC7}, /* ABC6 */ + {0xABC8,0xABC8},{0xABC9,0xABC9}, /* ABC8 */ + {0xABCA,0xABCA},{0xABCB,0xABCB}, /* ABCA */ + {0xABCC,0xABCC},{0xABCD,0xABCD}, /* ABCC */ + {0xABCE,0xABCE},{0xABCF,0xABCF}, /* ABCE */ + {0xABD0,0xABD0},{0xABD1,0xABD1}, /* ABD0 */ + {0xABD2,0xABD2},{0xABD3,0xABD3}, /* ABD2 */ + {0xABD4,0xABD4},{0xABD5,0xABD5}, /* ABD4 */ + {0xABD6,0xABD6},{0xABD7,0xABD7}, /* ABD6 */ + {0xABD8,0xABD8},{0xABD9,0xABD9}, /* ABD8 */ + {0xABDA,0xABDA},{0xABDB,0xABDB}, /* ABDA */ + {0xABDC,0xABDC},{0xABDD,0xABDD}, /* ABDC */ + {0xABDE,0xABDE},{0xABDF,0xABDF}, /* ABDE */ + {0xABE0,0xABE0},{0xABE1,0xABE1}, /* ABE0 */ + {0xABE2,0xABE2},{0xABE3,0xABE3}, /* ABE2 */ + {0xABE4,0xABE4},{0xABE5,0xABE5}, /* ABE4 */ + {0xABE6,0xABE6},{0xABE7,0xABE7}, /* ABE6 */ + {0xABE8,0xABE8},{0xABE9,0xABE9}, /* ABE8 */ + {0xABEA,0xABEA},{0xABEB,0xABEB}, /* ABEA */ + {0xABEC,0xABEC},{0xABED,0xABED}, /* ABEC */ + {0xABEE,0xABEE},{0xABEF,0xABEF}, /* ABEE */ + {0xABF0,0xABF0},{0xABF1,0xABF1}, /* ABF0 */ + {0xABF2,0xABF2},{0xABF3,0xABF3}, /* ABF2 */ + {0xABF4,0xABF4},{0xABF5,0xABF5}, /* ABF4 */ + {0xABF6,0xABF6},{0xABF7,0xABF7}, /* ABF6 */ + {0xABF8,0xABF8},{0xABF9,0xABF9}, /* ABF8 */ + {0xABFA,0xABFA},{0xABFB,0xABFB}, /* ABFA */ + {0xABFC,0xABFC},{0xABFD,0xABFD}, /* ABFC */ + {0xABFE,0xABFE},{0xABFF,0xABFF} /* ABFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_pageFF[256]={ + {0xFF00,0xFF00},{0xFF01,0xFF01}, /* FF00 */ + {0xFF02,0xFF02},{0xFF03,0xFF03}, /* FF02 */ + {0xFF04,0xFF04},{0xFF05,0xFF05}, /* FF04 */ + {0xFF06,0xFF06},{0xFF07,0xFF07}, /* FF06 */ + {0xFF08,0xFF08},{0xFF09,0xFF09}, /* FF08 */ + {0xFF0A,0xFF0A},{0xFF0B,0xFF0B}, /* FF0A */ + {0xFF0C,0xFF0C},{0xFF0D,0xFF0D}, /* FF0C */ + {0xFF0E,0xFF0E},{0xFF0F,0xFF0F}, /* FF0E */ + {0xFF10,0xFF10},{0xFF11,0xFF11}, /* FF10 */ + {0xFF12,0xFF12},{0xFF13,0xFF13}, /* FF12 */ + {0xFF14,0xFF14},{0xFF15,0xFF15}, /* FF14 */ + {0xFF16,0xFF16},{0xFF17,0xFF17}, /* FF16 */ + {0xFF18,0xFF18},{0xFF19,0xFF19}, /* FF18 */ + {0xFF1A,0xFF1A},{0xFF1B,0xFF1B}, /* FF1A */ + {0xFF1C,0xFF1C},{0xFF1D,0xFF1D}, /* FF1C */ + {0xFF1E,0xFF1E},{0xFF1F,0xFF1F}, /* FF1E */ + {0xFF20,0xFF20},{0xFF21,0xFF41}, /* FF20 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF22 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF24 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF26 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF28 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF2A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF2C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF2E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF30 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF32 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF34 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF36 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF38 */ + {0xFF3A,0xFF5A},{0xFF3B,0xFF3B}, /* FF3A */ + {0xFF3C,0xFF3C},{0xFF3D,0xFF3D}, /* FF3C */ + {0xFF3E,0xFF3E},{0xFF3F,0xFF3F}, /* FF3E */ + {0xFF40,0xFF40},{0xFF21,0xFF41}, /* FF40 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF42 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF44 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF46 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF48 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF4A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF4C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF4E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF50 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF52 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF54 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF56 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF58 */ + {0xFF3A,0xFF5A},{0xFF5B,0xFF5B}, /* FF5A */ + {0xFF5C,0xFF5C},{0xFF5D,0xFF5D}, /* FF5C */ + {0xFF5E,0xFF5E},{0xFF5F,0xFF5F}, /* FF5E */ + {0xFF60,0xFF60},{0xFF61,0xFF61}, /* FF60 */ + {0xFF62,0xFF62},{0xFF63,0xFF63}, /* FF62 */ + {0xFF64,0xFF64},{0xFF65,0xFF65}, /* FF64 */ + {0xFF66,0xFF66},{0xFF67,0xFF67}, /* FF66 */ + {0xFF68,0xFF68},{0xFF69,0xFF69}, /* FF68 */ + {0xFF6A,0xFF6A},{0xFF6B,0xFF6B}, /* FF6A */ + {0xFF6C,0xFF6C},{0xFF6D,0xFF6D}, /* FF6C */ + {0xFF6E,0xFF6E},{0xFF6F,0xFF6F}, /* FF6E */ + {0xFF70,0xFF70},{0xFF71,0xFF71}, /* FF70 */ + {0xFF72,0xFF72},{0xFF73,0xFF73}, /* FF72 */ + {0xFF74,0xFF74},{0xFF75,0xFF75}, /* FF74 */ + {0xFF76,0xFF76},{0xFF77,0xFF77}, /* FF76 */ + {0xFF78,0xFF78},{0xFF79,0xFF79}, /* FF78 */ + {0xFF7A,0xFF7A},{0xFF7B,0xFF7B}, /* FF7A */ + {0xFF7C,0xFF7C},{0xFF7D,0xFF7D}, /* FF7C */ + {0xFF7E,0xFF7E},{0xFF7F,0xFF7F}, /* FF7E */ + {0xFF80,0xFF80},{0xFF81,0xFF81}, /* FF80 */ + {0xFF82,0xFF82},{0xFF83,0xFF83}, /* FF82 */ + {0xFF84,0xFF84},{0xFF85,0xFF85}, /* FF84 */ + {0xFF86,0xFF86},{0xFF87,0xFF87}, /* FF86 */ + {0xFF88,0xFF88},{0xFF89,0xFF89}, /* FF88 */ + {0xFF8A,0xFF8A},{0xFF8B,0xFF8B}, /* FF8A */ + {0xFF8C,0xFF8C},{0xFF8D,0xFF8D}, /* FF8C */ + {0xFF8E,0xFF8E},{0xFF8F,0xFF8F}, /* FF8E */ + {0xFF90,0xFF90},{0xFF91,0xFF91}, /* FF90 */ + {0xFF92,0xFF92},{0xFF93,0xFF93}, /* FF92 */ + {0xFF94,0xFF94},{0xFF95,0xFF95}, /* FF94 */ + {0xFF96,0xFF96},{0xFF97,0xFF97}, /* FF96 */ + {0xFF98,0xFF98},{0xFF99,0xFF99}, /* FF98 */ + {0xFF9A,0xFF9A},{0xFF9B,0xFF9B}, /* FF9A */ + {0xFF9C,0xFF9C},{0xFF9D,0xFF9D}, /* FF9C */ + {0xFF9E,0xFF9E},{0xFF9F,0xFF9F}, /* FF9E */ + {0xFFA0,0xFFA0},{0xFFA1,0xFFA1}, /* FFA0 */ + {0xFFA2,0xFFA2},{0xFFA3,0xFFA3}, /* FFA2 */ + {0xFFA4,0xFFA4},{0xFFA5,0xFFA5}, /* FFA4 */ + {0xFFA6,0xFFA6},{0xFFA7,0xFFA7}, /* FFA6 */ + {0xFFA8,0xFFA8},{0xFFA9,0xFFA9}, /* FFA8 */ + {0xFFAA,0xFFAA},{0xFFAB,0xFFAB}, /* FFAA */ + {0xFFAC,0xFFAC},{0xFFAD,0xFFAD}, /* FFAC */ + {0xFFAE,0xFFAE},{0xFFAF,0xFFAF}, /* FFAE */ + {0xFFB0,0xFFB0},{0xFFB1,0xFFB1}, /* FFB0 */ + {0xFFB2,0xFFB2},{0xFFB3,0xFFB3}, /* FFB2 */ + {0xFFB4,0xFFB4},{0xFFB5,0xFFB5}, /* FFB4 */ + {0xFFB6,0xFFB6},{0xFFB7,0xFFB7}, /* FFB6 */ + {0xFFB8,0xFFB8},{0xFFB9,0xFFB9}, /* FFB8 */ + {0xFFBA,0xFFBA},{0xFFBB,0xFFBB}, /* FFBA */ + {0xFFBC,0xFFBC},{0xFFBD,0xFFBD}, /* FFBC */ + {0xFFBE,0xFFBE},{0xFFBF,0xFFBF}, /* FFBE */ + {0xFFC0,0xFFC0},{0xFFC1,0xFFC1}, /* FFC0 */ + {0xFFC2,0xFFC2},{0xFFC3,0xFFC3}, /* FFC2 */ + {0xFFC4,0xFFC4},{0xFFC5,0xFFC5}, /* FFC4 */ + {0xFFC6,0xFFC6},{0xFFC7,0xFFC7}, /* FFC6 */ + {0xFFC8,0xFFC8},{0xFFC9,0xFFC9}, /* FFC8 */ + {0xFFCA,0xFFCA},{0xFFCB,0xFFCB}, /* FFCA */ + {0xFFCC,0xFFCC},{0xFFCD,0xFFCD}, /* FFCC */ + {0xFFCE,0xFFCE},{0xFFCF,0xFFCF}, /* FFCE */ + {0xFFD0,0xFFD0},{0xFFD1,0xFFD1}, /* FFD0 */ + {0xFFD2,0xFFD2},{0xFFD3,0xFFD3}, /* FFD2 */ + {0xFFD4,0xFFD4},{0xFFD5,0xFFD5}, /* FFD4 */ + {0xFFD6,0xFFD6},{0xFFD7,0xFFD7}, /* FFD6 */ + {0xFFD8,0xFFD8},{0xFFD9,0xFFD9}, /* FFD8 */ + {0xFFDA,0xFFDA},{0xFFDB,0xFFDB}, /* FFDA */ + {0xFFDC,0xFFDC},{0xFFDD,0xFFDD}, /* FFDC */ + {0xFFDE,0xFFDE},{0xFFDF,0xFFDF}, /* FFDE */ + {0xFFE0,0xFFE0},{0xFFE1,0xFFE1}, /* FFE0 */ + {0xFFE2,0xFFE2},{0xFFE3,0xFFE3}, /* FFE2 */ + {0xFFE4,0xFFE4},{0xFFE5,0xFFE5}, /* FFE4 */ + {0xFFE6,0xFFE6},{0xFFE7,0xFFE7}, /* FFE6 */ + {0xFFE8,0xFFE8},{0xFFE9,0xFFE9}, /* FFE8 */ + {0xFFEA,0xFFEA},{0xFFEB,0xFFEB}, /* FFEA */ + {0xFFEC,0xFFEC},{0xFFED,0xFFED}, /* FFEC */ + {0xFFEE,0xFFEE},{0xFFEF,0xFFEF}, /* FFEE */ + {0xFFF0,0xFFF0},{0xFFF1,0xFFF1}, /* FFF0 */ + {0xFFF2,0xFFF2},{0xFFF3,0xFFF3}, /* FFF2 */ + {0xFFF4,0xFFF4},{0xFFF5,0xFFF5}, /* FFF4 */ + {0xFFF6,0xFFF6},{0xFFF7,0xFFF7}, /* FFF6 */ + {0xFFF8,0xFFF8},{0xFFF9,0xFFF9}, /* FFF8 */ + {0xFFFA,0xFFFA},{0xFFFB,0xFFFB}, /* FFFA */ + {0xFFFC,0xFFFC},{0xFFFD,0xFFFD}, /* FFFC */ + {0xFFFE,0xFFFE},{0xFFFF,0xFFFF} /* FFFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page104[256]={ + {0x10400,0x10428},{0x10401,0x10429}, /* 10400 */ + {0x10402,0x1042A},{0x10403,0x1042B}, /* 10402 */ + {0x10404,0x1042C},{0x10405,0x1042D}, /* 10404 */ + {0x10406,0x1042E},{0x10407,0x1042F}, /* 10406 */ + {0x10408,0x10430},{0x10409,0x10431}, /* 10408 */ + {0x1040A,0x10432},{0x1040B,0x10433}, /* 1040A */ + {0x1040C,0x10434},{0x1040D,0x10435}, /* 1040C */ + {0x1040E,0x10436},{0x1040F,0x10437}, /* 1040E */ + {0x10410,0x10438},{0x10411,0x10439}, /* 10410 */ + {0x10412,0x1043A},{0x10413,0x1043B}, /* 10412 */ + {0x10414,0x1043C},{0x10415,0x1043D}, /* 10414 */ + {0x10416,0x1043E},{0x10417,0x1043F}, /* 10416 */ + {0x10418,0x10440},{0x10419,0x10441}, /* 10418 */ + {0x1041A,0x10442},{0x1041B,0x10443}, /* 1041A */ + {0x1041C,0x10444},{0x1041D,0x10445}, /* 1041C */ + {0x1041E,0x10446},{0x1041F,0x10447}, /* 1041E */ + {0x10420,0x10448},{0x10421,0x10449}, /* 10420 */ + {0x10422,0x1044A},{0x10423,0x1044B}, /* 10422 */ + {0x10424,0x1044C},{0x10425,0x1044D}, /* 10424 */ + {0x10426,0x1044E},{0x10427,0x1044F}, /* 10426 */ + {0x10400,0x10428},{0x10401,0x10429}, /* 10428 */ + {0x10402,0x1042A},{0x10403,0x1042B}, /* 1042A */ + {0x10404,0x1042C},{0x10405,0x1042D}, /* 1042C */ + {0x10406,0x1042E},{0x10407,0x1042F}, /* 1042E */ + {0x10408,0x10430},{0x10409,0x10431}, /* 10430 */ + {0x1040A,0x10432},{0x1040B,0x10433}, /* 10432 */ + {0x1040C,0x10434},{0x1040D,0x10435}, /* 10434 */ + {0x1040E,0x10436},{0x1040F,0x10437}, /* 10436 */ + {0x10410,0x10438},{0x10411,0x10439}, /* 10438 */ + {0x10412,0x1043A},{0x10413,0x1043B}, /* 1043A */ + {0x10414,0x1043C},{0x10415,0x1043D}, /* 1043C */ + {0x10416,0x1043E},{0x10417,0x1043F}, /* 1043E */ + {0x10418,0x10440},{0x10419,0x10441}, /* 10440 */ + {0x1041A,0x10442},{0x1041B,0x10443}, /* 10442 */ + {0x1041C,0x10444},{0x1041D,0x10445}, /* 10444 */ + {0x1041E,0x10446},{0x1041F,0x10447}, /* 10446 */ + {0x10420,0x10448},{0x10421,0x10449}, /* 10448 */ + {0x10422,0x1044A},{0x10423,0x1044B}, /* 1044A */ + {0x10424,0x1044C},{0x10425,0x1044D}, /* 1044C */ + {0x10426,0x1044E},{0x10427,0x1044F}, /* 1044E */ + {0x10450,0x10450},{0x10451,0x10451}, /* 10450 */ + {0x10452,0x10452},{0x10453,0x10453}, /* 10452 */ + {0x10454,0x10454},{0x10455,0x10455}, /* 10454 */ + {0x10456,0x10456},{0x10457,0x10457}, /* 10456 */ + {0x10458,0x10458},{0x10459,0x10459}, /* 10458 */ + {0x1045A,0x1045A},{0x1045B,0x1045B}, /* 1045A */ + {0x1045C,0x1045C},{0x1045D,0x1045D}, /* 1045C */ + {0x1045E,0x1045E},{0x1045F,0x1045F}, /* 1045E */ + {0x10460,0x10460},{0x10461,0x10461}, /* 10460 */ + {0x10462,0x10462},{0x10463,0x10463}, /* 10462 */ + {0x10464,0x10464},{0x10465,0x10465}, /* 10464 */ + {0x10466,0x10466},{0x10467,0x10467}, /* 10466 */ + {0x10468,0x10468},{0x10469,0x10469}, /* 10468 */ + {0x1046A,0x1046A},{0x1046B,0x1046B}, /* 1046A */ + {0x1046C,0x1046C},{0x1046D,0x1046D}, /* 1046C */ + {0x1046E,0x1046E},{0x1046F,0x1046F}, /* 1046E */ + {0x10470,0x10470},{0x10471,0x10471}, /* 10470 */ + {0x10472,0x10472},{0x10473,0x10473}, /* 10472 */ + {0x10474,0x10474},{0x10475,0x10475}, /* 10474 */ + {0x10476,0x10476},{0x10477,0x10477}, /* 10476 */ + {0x10478,0x10478},{0x10479,0x10479}, /* 10478 */ + {0x1047A,0x1047A},{0x1047B,0x1047B}, /* 1047A */ + {0x1047C,0x1047C},{0x1047D,0x1047D}, /* 1047C */ + {0x1047E,0x1047E},{0x1047F,0x1047F}, /* 1047E */ + {0x10480,0x10480},{0x10481,0x10481}, /* 10480 */ + {0x10482,0x10482},{0x10483,0x10483}, /* 10482 */ + {0x10484,0x10484},{0x10485,0x10485}, /* 10484 */ + {0x10486,0x10486},{0x10487,0x10487}, /* 10486 */ + {0x10488,0x10488},{0x10489,0x10489}, /* 10488 */ + {0x1048A,0x1048A},{0x1048B,0x1048B}, /* 1048A */ + {0x1048C,0x1048C},{0x1048D,0x1048D}, /* 1048C */ + {0x1048E,0x1048E},{0x1048F,0x1048F}, /* 1048E */ + {0x10490,0x10490},{0x10491,0x10491}, /* 10490 */ + {0x10492,0x10492},{0x10493,0x10493}, /* 10492 */ + {0x10494,0x10494},{0x10495,0x10495}, /* 10494 */ + {0x10496,0x10496},{0x10497,0x10497}, /* 10496 */ + {0x10498,0x10498},{0x10499,0x10499}, /* 10498 */ + {0x1049A,0x1049A},{0x1049B,0x1049B}, /* 1049A */ + {0x1049C,0x1049C},{0x1049D,0x1049D}, /* 1049C */ + {0x1049E,0x1049E},{0x1049F,0x1049F}, /* 1049E */ + {0x104A0,0x104A0},{0x104A1,0x104A1}, /* 104A0 */ + {0x104A2,0x104A2},{0x104A3,0x104A3}, /* 104A2 */ + {0x104A4,0x104A4},{0x104A5,0x104A5}, /* 104A4 */ + {0x104A6,0x104A6},{0x104A7,0x104A7}, /* 104A6 */ + {0x104A8,0x104A8},{0x104A9,0x104A9}, /* 104A8 */ + {0x104AA,0x104AA},{0x104AB,0x104AB}, /* 104AA */ + {0x104AC,0x104AC},{0x104AD,0x104AD}, /* 104AC */ + {0x104AE,0x104AE},{0x104AF,0x104AF}, /* 104AE */ + {0x104B0,0x104D8},{0x104B1,0x104D9}, /* 104B0 */ + {0x104B2,0x104DA},{0x104B3,0x104DB}, /* 104B2 */ + {0x104B4,0x104DC},{0x104B5,0x104DD}, /* 104B4 */ + {0x104B6,0x104DE},{0x104B7,0x104DF}, /* 104B6 */ + {0x104B8,0x104E0},{0x104B9,0x104E1}, /* 104B8 */ + {0x104BA,0x104E2},{0x104BB,0x104E3}, /* 104BA */ + {0x104BC,0x104E4},{0x104BD,0x104E5}, /* 104BC */ + {0x104BE,0x104E6},{0x104BF,0x104E7}, /* 104BE */ + {0x104C0,0x104E8},{0x104C1,0x104E9}, /* 104C0 */ + {0x104C2,0x104EA},{0x104C3,0x104EB}, /* 104C2 */ + {0x104C4,0x104EC},{0x104C5,0x104ED}, /* 104C4 */ + {0x104C6,0x104EE},{0x104C7,0x104EF}, /* 104C6 */ + {0x104C8,0x104F0},{0x104C9,0x104F1}, /* 104C8 */ + {0x104CA,0x104F2},{0x104CB,0x104F3}, /* 104CA */ + {0x104CC,0x104F4},{0x104CD,0x104F5}, /* 104CC */ + {0x104CE,0x104F6},{0x104CF,0x104F7}, /* 104CE */ + {0x104D0,0x104F8},{0x104D1,0x104F9}, /* 104D0 */ + {0x104D2,0x104FA},{0x104D3,0x104FB}, /* 104D2 */ + {0x104D4,0x104D4},{0x104D5,0x104D5}, /* 104D4 */ + {0x104D6,0x104D6},{0x104D7,0x104D7}, /* 104D6 */ + {0x104B0,0x104D8},{0x104B1,0x104D9}, /* 104D8 */ + {0x104B2,0x104DA},{0x104B3,0x104DB}, /* 104DA */ + {0x104B4,0x104DC},{0x104B5,0x104DD}, /* 104DC */ + {0x104B6,0x104DE},{0x104B7,0x104DF}, /* 104DE */ + {0x104B8,0x104E0},{0x104B9,0x104E1}, /* 104E0 */ + {0x104BA,0x104E2},{0x104BB,0x104E3}, /* 104E2 */ + {0x104BC,0x104E4},{0x104BD,0x104E5}, /* 104E4 */ + {0x104BE,0x104E6},{0x104BF,0x104E7}, /* 104E6 */ + {0x104C0,0x104E8},{0x104C1,0x104E9}, /* 104E8 */ + {0x104C2,0x104EA},{0x104C3,0x104EB}, /* 104EA */ + {0x104C4,0x104EC},{0x104C5,0x104ED}, /* 104EC */ + {0x104C6,0x104EE},{0x104C7,0x104EF}, /* 104EE */ + {0x104C8,0x104F0},{0x104C9,0x104F1}, /* 104F0 */ + {0x104CA,0x104F2},{0x104CB,0x104F3}, /* 104F2 */ + {0x104CC,0x104F4},{0x104CD,0x104F5}, /* 104F4 */ + {0x104CE,0x104F6},{0x104CF,0x104F7}, /* 104F6 */ + {0x104D0,0x104F8},{0x104D1,0x104F9}, /* 104F8 */ + {0x104D2,0x104FA},{0x104D3,0x104FB}, /* 104FA */ + {0x104FC,0x104FC},{0x104FD,0x104FD}, /* 104FC */ + {0x104FE,0x104FE},{0x104FF,0x104FF} /* 104FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page105[256]={ + {0x10500,0x10500},{0x10501,0x10501}, /* 10500 */ + {0x10502,0x10502},{0x10503,0x10503}, /* 10502 */ + {0x10504,0x10504},{0x10505,0x10505}, /* 10504 */ + {0x10506,0x10506},{0x10507,0x10507}, /* 10506 */ + {0x10508,0x10508},{0x10509,0x10509}, /* 10508 */ + {0x1050A,0x1050A},{0x1050B,0x1050B}, /* 1050A */ + {0x1050C,0x1050C},{0x1050D,0x1050D}, /* 1050C */ + {0x1050E,0x1050E},{0x1050F,0x1050F}, /* 1050E */ + {0x10510,0x10510},{0x10511,0x10511}, /* 10510 */ + {0x10512,0x10512},{0x10513,0x10513}, /* 10512 */ + {0x10514,0x10514},{0x10515,0x10515}, /* 10514 */ + {0x10516,0x10516},{0x10517,0x10517}, /* 10516 */ + {0x10518,0x10518},{0x10519,0x10519}, /* 10518 */ + {0x1051A,0x1051A},{0x1051B,0x1051B}, /* 1051A */ + {0x1051C,0x1051C},{0x1051D,0x1051D}, /* 1051C */ + {0x1051E,0x1051E},{0x1051F,0x1051F}, /* 1051E */ + {0x10520,0x10520},{0x10521,0x10521}, /* 10520 */ + {0x10522,0x10522},{0x10523,0x10523}, /* 10522 */ + {0x10524,0x10524},{0x10525,0x10525}, /* 10524 */ + {0x10526,0x10526},{0x10527,0x10527}, /* 10526 */ + {0x10528,0x10528},{0x10529,0x10529}, /* 10528 */ + {0x1052A,0x1052A},{0x1052B,0x1052B}, /* 1052A */ + {0x1052C,0x1052C},{0x1052D,0x1052D}, /* 1052C */ + {0x1052E,0x1052E},{0x1052F,0x1052F}, /* 1052E */ + {0x10530,0x10530},{0x10531,0x10531}, /* 10530 */ + {0x10532,0x10532},{0x10533,0x10533}, /* 10532 */ + {0x10534,0x10534},{0x10535,0x10535}, /* 10534 */ + {0x10536,0x10536},{0x10537,0x10537}, /* 10536 */ + {0x10538,0x10538},{0x10539,0x10539}, /* 10538 */ + {0x1053A,0x1053A},{0x1053B,0x1053B}, /* 1053A */ + {0x1053C,0x1053C},{0x1053D,0x1053D}, /* 1053C */ + {0x1053E,0x1053E},{0x1053F,0x1053F}, /* 1053E */ + {0x10540,0x10540},{0x10541,0x10541}, /* 10540 */ + {0x10542,0x10542},{0x10543,0x10543}, /* 10542 */ + {0x10544,0x10544},{0x10545,0x10545}, /* 10544 */ + {0x10546,0x10546},{0x10547,0x10547}, /* 10546 */ + {0x10548,0x10548},{0x10549,0x10549}, /* 10548 */ + {0x1054A,0x1054A},{0x1054B,0x1054B}, /* 1054A */ + {0x1054C,0x1054C},{0x1054D,0x1054D}, /* 1054C */ + {0x1054E,0x1054E},{0x1054F,0x1054F}, /* 1054E */ + {0x10550,0x10550},{0x10551,0x10551}, /* 10550 */ + {0x10552,0x10552},{0x10553,0x10553}, /* 10552 */ + {0x10554,0x10554},{0x10555,0x10555}, /* 10554 */ + {0x10556,0x10556},{0x10557,0x10557}, /* 10556 */ + {0x10558,0x10558},{0x10559,0x10559}, /* 10558 */ + {0x1055A,0x1055A},{0x1055B,0x1055B}, /* 1055A */ + {0x1055C,0x1055C},{0x1055D,0x1055D}, /* 1055C */ + {0x1055E,0x1055E},{0x1055F,0x1055F}, /* 1055E */ + {0x10560,0x10560},{0x10561,0x10561}, /* 10560 */ + {0x10562,0x10562},{0x10563,0x10563}, /* 10562 */ + {0x10564,0x10564},{0x10565,0x10565}, /* 10564 */ + {0x10566,0x10566},{0x10567,0x10567}, /* 10566 */ + {0x10568,0x10568},{0x10569,0x10569}, /* 10568 */ + {0x1056A,0x1056A},{0x1056B,0x1056B}, /* 1056A */ + {0x1056C,0x1056C},{0x1056D,0x1056D}, /* 1056C */ + {0x1056E,0x1056E},{0x1056F,0x1056F}, /* 1056E */ + {0x10570,0x10597},{0x10571,0x10598}, /* 10570 */ + {0x10572,0x10599},{0x10573,0x1059A}, /* 10572 */ + {0x10574,0x1059B},{0x10575,0x1059C}, /* 10574 */ + {0x10576,0x1059D},{0x10577,0x1059E}, /* 10576 */ + {0x10578,0x1059F},{0x10579,0x105A0}, /* 10578 */ + {0x1057A,0x105A1},{0x1057B,0x1057B}, /* 1057A */ + {0x1057C,0x105A3},{0x1057D,0x105A4}, /* 1057C */ + {0x1057E,0x105A5},{0x1057F,0x105A6}, /* 1057E */ + {0x10580,0x105A7},{0x10581,0x105A8}, /* 10580 */ + {0x10582,0x105A9},{0x10583,0x105AA}, /* 10582 */ + {0x10584,0x105AB},{0x10585,0x105AC}, /* 10584 */ + {0x10586,0x105AD},{0x10587,0x105AE}, /* 10586 */ + {0x10588,0x105AF},{0x10589,0x105B0}, /* 10588 */ + {0x1058A,0x105B1},{0x1058B,0x1058B}, /* 1058A */ + {0x1058C,0x105B3},{0x1058D,0x105B4}, /* 1058C */ + {0x1058E,0x105B5},{0x1058F,0x105B6}, /* 1058E */ + {0x10590,0x105B7},{0x10591,0x105B8}, /* 10590 */ + {0x10592,0x105B9},{0x10593,0x10593}, /* 10592 */ + {0x10594,0x105BB},{0x10595,0x105BC}, /* 10594 */ + {0x10596,0x10596},{0x10570,0x10597}, /* 10596 */ + {0x10571,0x10598},{0x10572,0x10599}, /* 10598 */ + {0x10573,0x1059A},{0x10574,0x1059B}, /* 1059A */ + {0x10575,0x1059C},{0x10576,0x1059D}, /* 1059C */ + {0x10577,0x1059E},{0x10578,0x1059F}, /* 1059E */ + {0x10579,0x105A0},{0x1057A,0x105A1}, /* 105A0 */ + {0x105A2,0x105A2},{0x1057C,0x105A3}, /* 105A2 */ + {0x1057D,0x105A4},{0x1057E,0x105A5}, /* 105A4 */ + {0x1057F,0x105A6},{0x10580,0x105A7}, /* 105A6 */ + {0x10581,0x105A8},{0x10582,0x105A9}, /* 105A8 */ + {0x10583,0x105AA},{0x10584,0x105AB}, /* 105AA */ + {0x10585,0x105AC},{0x10586,0x105AD}, /* 105AC */ + {0x10587,0x105AE},{0x10588,0x105AF}, /* 105AE */ + {0x10589,0x105B0},{0x1058A,0x105B1}, /* 105B0 */ + {0x105B2,0x105B2},{0x1058C,0x105B3}, /* 105B2 */ + {0x1058D,0x105B4},{0x1058E,0x105B5}, /* 105B4 */ + {0x1058F,0x105B6},{0x10590,0x105B7}, /* 105B6 */ + {0x10591,0x105B8},{0x10592,0x105B9}, /* 105B8 */ + {0x105BA,0x105BA},{0x10594,0x105BB}, /* 105BA */ + {0x10595,0x105BC},{0x105BD,0x105BD}, /* 105BC */ + {0x105BE,0x105BE},{0x105BF,0x105BF}, /* 105BE */ + {0x105C0,0x105C0},{0x105C1,0x105C1}, /* 105C0 */ + {0x105C2,0x105C2},{0x105C3,0x105C3}, /* 105C2 */ + {0x105C4,0x105C4},{0x105C5,0x105C5}, /* 105C4 */ + {0x105C6,0x105C6},{0x105C7,0x105C7}, /* 105C6 */ + {0x105C8,0x105C8},{0x105C9,0x105C9}, /* 105C8 */ + {0x105CA,0x105CA},{0x105CB,0x105CB}, /* 105CA */ + {0x105CC,0x105CC},{0x105CD,0x105CD}, /* 105CC */ + {0x105CE,0x105CE},{0x105CF,0x105CF}, /* 105CE */ + {0x105D0,0x105D0},{0x105D1,0x105D1}, /* 105D0 */ + {0x105D2,0x105D2},{0x105D3,0x105D3}, /* 105D2 */ + {0x105D4,0x105D4},{0x105D5,0x105D5}, /* 105D4 */ + {0x105D6,0x105D6},{0x105D7,0x105D7}, /* 105D6 */ + {0x105D8,0x105D8},{0x105D9,0x105D9}, /* 105D8 */ + {0x105DA,0x105DA},{0x105DB,0x105DB}, /* 105DA */ + {0x105DC,0x105DC},{0x105DD,0x105DD}, /* 105DC */ + {0x105DE,0x105DE},{0x105DF,0x105DF}, /* 105DE */ + {0x105E0,0x105E0},{0x105E1,0x105E1}, /* 105E0 */ + {0x105E2,0x105E2},{0x105E3,0x105E3}, /* 105E2 */ + {0x105E4,0x105E4},{0x105E5,0x105E5}, /* 105E4 */ + {0x105E6,0x105E6},{0x105E7,0x105E7}, /* 105E6 */ + {0x105E8,0x105E8},{0x105E9,0x105E9}, /* 105E8 */ + {0x105EA,0x105EA},{0x105EB,0x105EB}, /* 105EA */ + {0x105EC,0x105EC},{0x105ED,0x105ED}, /* 105EC */ + {0x105EE,0x105EE},{0x105EF,0x105EF}, /* 105EE */ + {0x105F0,0x105F0},{0x105F1,0x105F1}, /* 105F0 */ + {0x105F2,0x105F2},{0x105F3,0x105F3}, /* 105F2 */ + {0x105F4,0x105F4},{0x105F5,0x105F5}, /* 105F4 */ + {0x105F6,0x105F6},{0x105F7,0x105F7}, /* 105F6 */ + {0x105F8,0x105F8},{0x105F9,0x105F9}, /* 105F8 */ + {0x105FA,0x105FA},{0x105FB,0x105FB}, /* 105FA */ + {0x105FC,0x105FC},{0x105FD,0x105FD}, /* 105FC */ + {0x105FE,0x105FE},{0x105FF,0x105FF} /* 105FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page10C[256]={ + {0x10C00,0x10C00},{0x10C01,0x10C01}, /* 10C00 */ + {0x10C02,0x10C02},{0x10C03,0x10C03}, /* 10C02 */ + {0x10C04,0x10C04},{0x10C05,0x10C05}, /* 10C04 */ + {0x10C06,0x10C06},{0x10C07,0x10C07}, /* 10C06 */ + {0x10C08,0x10C08},{0x10C09,0x10C09}, /* 10C08 */ + {0x10C0A,0x10C0A},{0x10C0B,0x10C0B}, /* 10C0A */ + {0x10C0C,0x10C0C},{0x10C0D,0x10C0D}, /* 10C0C */ + {0x10C0E,0x10C0E},{0x10C0F,0x10C0F}, /* 10C0E */ + {0x10C10,0x10C10},{0x10C11,0x10C11}, /* 10C10 */ + {0x10C12,0x10C12},{0x10C13,0x10C13}, /* 10C12 */ + {0x10C14,0x10C14},{0x10C15,0x10C15}, /* 10C14 */ + {0x10C16,0x10C16},{0x10C17,0x10C17}, /* 10C16 */ + {0x10C18,0x10C18},{0x10C19,0x10C19}, /* 10C18 */ + {0x10C1A,0x10C1A},{0x10C1B,0x10C1B}, /* 10C1A */ + {0x10C1C,0x10C1C},{0x10C1D,0x10C1D}, /* 10C1C */ + {0x10C1E,0x10C1E},{0x10C1F,0x10C1F}, /* 10C1E */ + {0x10C20,0x10C20},{0x10C21,0x10C21}, /* 10C20 */ + {0x10C22,0x10C22},{0x10C23,0x10C23}, /* 10C22 */ + {0x10C24,0x10C24},{0x10C25,0x10C25}, /* 10C24 */ + {0x10C26,0x10C26},{0x10C27,0x10C27}, /* 10C26 */ + {0x10C28,0x10C28},{0x10C29,0x10C29}, /* 10C28 */ + {0x10C2A,0x10C2A},{0x10C2B,0x10C2B}, /* 10C2A */ + {0x10C2C,0x10C2C},{0x10C2D,0x10C2D}, /* 10C2C */ + {0x10C2E,0x10C2E},{0x10C2F,0x10C2F}, /* 10C2E */ + {0x10C30,0x10C30},{0x10C31,0x10C31}, /* 10C30 */ + {0x10C32,0x10C32},{0x10C33,0x10C33}, /* 10C32 */ + {0x10C34,0x10C34},{0x10C35,0x10C35}, /* 10C34 */ + {0x10C36,0x10C36},{0x10C37,0x10C37}, /* 10C36 */ + {0x10C38,0x10C38},{0x10C39,0x10C39}, /* 10C38 */ + {0x10C3A,0x10C3A},{0x10C3B,0x10C3B}, /* 10C3A */ + {0x10C3C,0x10C3C},{0x10C3D,0x10C3D}, /* 10C3C */ + {0x10C3E,0x10C3E},{0x10C3F,0x10C3F}, /* 10C3E */ + {0x10C40,0x10C40},{0x10C41,0x10C41}, /* 10C40 */ + {0x10C42,0x10C42},{0x10C43,0x10C43}, /* 10C42 */ + {0x10C44,0x10C44},{0x10C45,0x10C45}, /* 10C44 */ + {0x10C46,0x10C46},{0x10C47,0x10C47}, /* 10C46 */ + {0x10C48,0x10C48},{0x10C49,0x10C49}, /* 10C48 */ + {0x10C4A,0x10C4A},{0x10C4B,0x10C4B}, /* 10C4A */ + {0x10C4C,0x10C4C},{0x10C4D,0x10C4D}, /* 10C4C */ + {0x10C4E,0x10C4E},{0x10C4F,0x10C4F}, /* 10C4E */ + {0x10C50,0x10C50},{0x10C51,0x10C51}, /* 10C50 */ + {0x10C52,0x10C52},{0x10C53,0x10C53}, /* 10C52 */ + {0x10C54,0x10C54},{0x10C55,0x10C55}, /* 10C54 */ + {0x10C56,0x10C56},{0x10C57,0x10C57}, /* 10C56 */ + {0x10C58,0x10C58},{0x10C59,0x10C59}, /* 10C58 */ + {0x10C5A,0x10C5A},{0x10C5B,0x10C5B}, /* 10C5A */ + {0x10C5C,0x10C5C},{0x10C5D,0x10C5D}, /* 10C5C */ + {0x10C5E,0x10C5E},{0x10C5F,0x10C5F}, /* 10C5E */ + {0x10C60,0x10C60},{0x10C61,0x10C61}, /* 10C60 */ + {0x10C62,0x10C62},{0x10C63,0x10C63}, /* 10C62 */ + {0x10C64,0x10C64},{0x10C65,0x10C65}, /* 10C64 */ + {0x10C66,0x10C66},{0x10C67,0x10C67}, /* 10C66 */ + {0x10C68,0x10C68},{0x10C69,0x10C69}, /* 10C68 */ + {0x10C6A,0x10C6A},{0x10C6B,0x10C6B}, /* 10C6A */ + {0x10C6C,0x10C6C},{0x10C6D,0x10C6D}, /* 10C6C */ + {0x10C6E,0x10C6E},{0x10C6F,0x10C6F}, /* 10C6E */ + {0x10C70,0x10C70},{0x10C71,0x10C71}, /* 10C70 */ + {0x10C72,0x10C72},{0x10C73,0x10C73}, /* 10C72 */ + {0x10C74,0x10C74},{0x10C75,0x10C75}, /* 10C74 */ + {0x10C76,0x10C76},{0x10C77,0x10C77}, /* 10C76 */ + {0x10C78,0x10C78},{0x10C79,0x10C79}, /* 10C78 */ + {0x10C7A,0x10C7A},{0x10C7B,0x10C7B}, /* 10C7A */ + {0x10C7C,0x10C7C},{0x10C7D,0x10C7D}, /* 10C7C */ + {0x10C7E,0x10C7E},{0x10C7F,0x10C7F}, /* 10C7E */ + {0x10C80,0x10CC0},{0x10C81,0x10CC1}, /* 10C80 */ + {0x10C82,0x10CC2},{0x10C83,0x10CC3}, /* 10C82 */ + {0x10C84,0x10CC4},{0x10C85,0x10CC5}, /* 10C84 */ + {0x10C86,0x10CC6},{0x10C87,0x10CC7}, /* 10C86 */ + {0x10C88,0x10CC8},{0x10C89,0x10CC9}, /* 10C88 */ + {0x10C8A,0x10CCA},{0x10C8B,0x10CCB}, /* 10C8A */ + {0x10C8C,0x10CCC},{0x10C8D,0x10CCD}, /* 10C8C */ + {0x10C8E,0x10CCE},{0x10C8F,0x10CCF}, /* 10C8E */ + {0x10C90,0x10CD0},{0x10C91,0x10CD1}, /* 10C90 */ + {0x10C92,0x10CD2},{0x10C93,0x10CD3}, /* 10C92 */ + {0x10C94,0x10CD4},{0x10C95,0x10CD5}, /* 10C94 */ + {0x10C96,0x10CD6},{0x10C97,0x10CD7}, /* 10C96 */ + {0x10C98,0x10CD8},{0x10C99,0x10CD9}, /* 10C98 */ + {0x10C9A,0x10CDA},{0x10C9B,0x10CDB}, /* 10C9A */ + {0x10C9C,0x10CDC},{0x10C9D,0x10CDD}, /* 10C9C */ + {0x10C9E,0x10CDE},{0x10C9F,0x10CDF}, /* 10C9E */ + {0x10CA0,0x10CE0},{0x10CA1,0x10CE1}, /* 10CA0 */ + {0x10CA2,0x10CE2},{0x10CA3,0x10CE3}, /* 10CA2 */ + {0x10CA4,0x10CE4},{0x10CA5,0x10CE5}, /* 10CA4 */ + {0x10CA6,0x10CE6},{0x10CA7,0x10CE7}, /* 10CA6 */ + {0x10CA8,0x10CE8},{0x10CA9,0x10CE9}, /* 10CA8 */ + {0x10CAA,0x10CEA},{0x10CAB,0x10CEB}, /* 10CAA */ + {0x10CAC,0x10CEC},{0x10CAD,0x10CED}, /* 10CAC */ + {0x10CAE,0x10CEE},{0x10CAF,0x10CEF}, /* 10CAE */ + {0x10CB0,0x10CF0},{0x10CB1,0x10CF1}, /* 10CB0 */ + {0x10CB2,0x10CF2},{0x10CB3,0x10CB3}, /* 10CB2 */ + {0x10CB4,0x10CB4},{0x10CB5,0x10CB5}, /* 10CB4 */ + {0x10CB6,0x10CB6},{0x10CB7,0x10CB7}, /* 10CB6 */ + {0x10CB8,0x10CB8},{0x10CB9,0x10CB9}, /* 10CB8 */ + {0x10CBA,0x10CBA},{0x10CBB,0x10CBB}, /* 10CBA */ + {0x10CBC,0x10CBC},{0x10CBD,0x10CBD}, /* 10CBC */ + {0x10CBE,0x10CBE},{0x10CBF,0x10CBF}, /* 10CBE */ + {0x10C80,0x10CC0},{0x10C81,0x10CC1}, /* 10CC0 */ + {0x10C82,0x10CC2},{0x10C83,0x10CC3}, /* 10CC2 */ + {0x10C84,0x10CC4},{0x10C85,0x10CC5}, /* 10CC4 */ + {0x10C86,0x10CC6},{0x10C87,0x10CC7}, /* 10CC6 */ + {0x10C88,0x10CC8},{0x10C89,0x10CC9}, /* 10CC8 */ + {0x10C8A,0x10CCA},{0x10C8B,0x10CCB}, /* 10CCA */ + {0x10C8C,0x10CCC},{0x10C8D,0x10CCD}, /* 10CCC */ + {0x10C8E,0x10CCE},{0x10C8F,0x10CCF}, /* 10CCE */ + {0x10C90,0x10CD0},{0x10C91,0x10CD1}, /* 10CD0 */ + {0x10C92,0x10CD2},{0x10C93,0x10CD3}, /* 10CD2 */ + {0x10C94,0x10CD4},{0x10C95,0x10CD5}, /* 10CD4 */ + {0x10C96,0x10CD6},{0x10C97,0x10CD7}, /* 10CD6 */ + {0x10C98,0x10CD8},{0x10C99,0x10CD9}, /* 10CD8 */ + {0x10C9A,0x10CDA},{0x10C9B,0x10CDB}, /* 10CDA */ + {0x10C9C,0x10CDC},{0x10C9D,0x10CDD}, /* 10CDC */ + {0x10C9E,0x10CDE},{0x10C9F,0x10CDF}, /* 10CDE */ + {0x10CA0,0x10CE0},{0x10CA1,0x10CE1}, /* 10CE0 */ + {0x10CA2,0x10CE2},{0x10CA3,0x10CE3}, /* 10CE2 */ + {0x10CA4,0x10CE4},{0x10CA5,0x10CE5}, /* 10CE4 */ + {0x10CA6,0x10CE6},{0x10CA7,0x10CE7}, /* 10CE6 */ + {0x10CA8,0x10CE8},{0x10CA9,0x10CE9}, /* 10CE8 */ + {0x10CAA,0x10CEA},{0x10CAB,0x10CEB}, /* 10CEA */ + {0x10CAC,0x10CEC},{0x10CAD,0x10CED}, /* 10CEC */ + {0x10CAE,0x10CEE},{0x10CAF,0x10CEF}, /* 10CEE */ + {0x10CB0,0x10CF0},{0x10CB1,0x10CF1}, /* 10CF0 */ + {0x10CB2,0x10CF2},{0x10CF3,0x10CF3}, /* 10CF2 */ + {0x10CF4,0x10CF4},{0x10CF5,0x10CF5}, /* 10CF4 */ + {0x10CF6,0x10CF6},{0x10CF7,0x10CF7}, /* 10CF6 */ + {0x10CF8,0x10CF8},{0x10CF9,0x10CF9}, /* 10CF8 */ + {0x10CFA,0x10CFA},{0x10CFB,0x10CFB}, /* 10CFA */ + {0x10CFC,0x10CFC},{0x10CFD,0x10CFD}, /* 10CFC */ + {0x10CFE,0x10CFE},{0x10CFF,0x10CFF} /* 10CFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page118[256]={ + {0x11800,0x11800},{0x11801,0x11801}, /* 11800 */ + {0x11802,0x11802},{0x11803,0x11803}, /* 11802 */ + {0x11804,0x11804},{0x11805,0x11805}, /* 11804 */ + {0x11806,0x11806},{0x11807,0x11807}, /* 11806 */ + {0x11808,0x11808},{0x11809,0x11809}, /* 11808 */ + {0x1180A,0x1180A},{0x1180B,0x1180B}, /* 1180A */ + {0x1180C,0x1180C},{0x1180D,0x1180D}, /* 1180C */ + {0x1180E,0x1180E},{0x1180F,0x1180F}, /* 1180E */ + {0x11810,0x11810},{0x11811,0x11811}, /* 11810 */ + {0x11812,0x11812},{0x11813,0x11813}, /* 11812 */ + {0x11814,0x11814},{0x11815,0x11815}, /* 11814 */ + {0x11816,0x11816},{0x11817,0x11817}, /* 11816 */ + {0x11818,0x11818},{0x11819,0x11819}, /* 11818 */ + {0x1181A,0x1181A},{0x1181B,0x1181B}, /* 1181A */ + {0x1181C,0x1181C},{0x1181D,0x1181D}, /* 1181C */ + {0x1181E,0x1181E},{0x1181F,0x1181F}, /* 1181E */ + {0x11820,0x11820},{0x11821,0x11821}, /* 11820 */ + {0x11822,0x11822},{0x11823,0x11823}, /* 11822 */ + {0x11824,0x11824},{0x11825,0x11825}, /* 11824 */ + {0x11826,0x11826},{0x11827,0x11827}, /* 11826 */ + {0x11828,0x11828},{0x11829,0x11829}, /* 11828 */ + {0x1182A,0x1182A},{0x1182B,0x1182B}, /* 1182A */ + {0x1182C,0x1182C},{0x1182D,0x1182D}, /* 1182C */ + {0x1182E,0x1182E},{0x1182F,0x1182F}, /* 1182E */ + {0x11830,0x11830},{0x11831,0x11831}, /* 11830 */ + {0x11832,0x11832},{0x11833,0x11833}, /* 11832 */ + {0x11834,0x11834},{0x11835,0x11835}, /* 11834 */ + {0x11836,0x11836},{0x11837,0x11837}, /* 11836 */ + {0x11838,0x11838},{0x11839,0x11839}, /* 11838 */ + {0x1183A,0x1183A},{0x1183B,0x1183B}, /* 1183A */ + {0x1183C,0x1183C},{0x1183D,0x1183D}, /* 1183C */ + {0x1183E,0x1183E},{0x1183F,0x1183F}, /* 1183E */ + {0x11840,0x11840},{0x11841,0x11841}, /* 11840 */ + {0x11842,0x11842},{0x11843,0x11843}, /* 11842 */ + {0x11844,0x11844},{0x11845,0x11845}, /* 11844 */ + {0x11846,0x11846},{0x11847,0x11847}, /* 11846 */ + {0x11848,0x11848},{0x11849,0x11849}, /* 11848 */ + {0x1184A,0x1184A},{0x1184B,0x1184B}, /* 1184A */ + {0x1184C,0x1184C},{0x1184D,0x1184D}, /* 1184C */ + {0x1184E,0x1184E},{0x1184F,0x1184F}, /* 1184E */ + {0x11850,0x11850},{0x11851,0x11851}, /* 11850 */ + {0x11852,0x11852},{0x11853,0x11853}, /* 11852 */ + {0x11854,0x11854},{0x11855,0x11855}, /* 11854 */ + {0x11856,0x11856},{0x11857,0x11857}, /* 11856 */ + {0x11858,0x11858},{0x11859,0x11859}, /* 11858 */ + {0x1185A,0x1185A},{0x1185B,0x1185B}, /* 1185A */ + {0x1185C,0x1185C},{0x1185D,0x1185D}, /* 1185C */ + {0x1185E,0x1185E},{0x1185F,0x1185F}, /* 1185E */ + {0x11860,0x11860},{0x11861,0x11861}, /* 11860 */ + {0x11862,0x11862},{0x11863,0x11863}, /* 11862 */ + {0x11864,0x11864},{0x11865,0x11865}, /* 11864 */ + {0x11866,0x11866},{0x11867,0x11867}, /* 11866 */ + {0x11868,0x11868},{0x11869,0x11869}, /* 11868 */ + {0x1186A,0x1186A},{0x1186B,0x1186B}, /* 1186A */ + {0x1186C,0x1186C},{0x1186D,0x1186D}, /* 1186C */ + {0x1186E,0x1186E},{0x1186F,0x1186F}, /* 1186E */ + {0x11870,0x11870},{0x11871,0x11871}, /* 11870 */ + {0x11872,0x11872},{0x11873,0x11873}, /* 11872 */ + {0x11874,0x11874},{0x11875,0x11875}, /* 11874 */ + {0x11876,0x11876},{0x11877,0x11877}, /* 11876 */ + {0x11878,0x11878},{0x11879,0x11879}, /* 11878 */ + {0x1187A,0x1187A},{0x1187B,0x1187B}, /* 1187A */ + {0x1187C,0x1187C},{0x1187D,0x1187D}, /* 1187C */ + {0x1187E,0x1187E},{0x1187F,0x1187F}, /* 1187E */ + {0x11880,0x11880},{0x11881,0x11881}, /* 11880 */ + {0x11882,0x11882},{0x11883,0x11883}, /* 11882 */ + {0x11884,0x11884},{0x11885,0x11885}, /* 11884 */ + {0x11886,0x11886},{0x11887,0x11887}, /* 11886 */ + {0x11888,0x11888},{0x11889,0x11889}, /* 11888 */ + {0x1188A,0x1188A},{0x1188B,0x1188B}, /* 1188A */ + {0x1188C,0x1188C},{0x1188D,0x1188D}, /* 1188C */ + {0x1188E,0x1188E},{0x1188F,0x1188F}, /* 1188E */ + {0x11890,0x11890},{0x11891,0x11891}, /* 11890 */ + {0x11892,0x11892},{0x11893,0x11893}, /* 11892 */ + {0x11894,0x11894},{0x11895,0x11895}, /* 11894 */ + {0x11896,0x11896},{0x11897,0x11897}, /* 11896 */ + {0x11898,0x11898},{0x11899,0x11899}, /* 11898 */ + {0x1189A,0x1189A},{0x1189B,0x1189B}, /* 1189A */ + {0x1189C,0x1189C},{0x1189D,0x1189D}, /* 1189C */ + {0x1189E,0x1189E},{0x1189F,0x1189F}, /* 1189E */ + {0x118A0,0x118C0},{0x118A1,0x118C1}, /* 118A0 */ + {0x118A2,0x118C2},{0x118A3,0x118C3}, /* 118A2 */ + {0x118A4,0x118C4},{0x118A5,0x118C5}, /* 118A4 */ + {0x118A6,0x118C6},{0x118A7,0x118C7}, /* 118A6 */ + {0x118A8,0x118C8},{0x118A9,0x118C9}, /* 118A8 */ + {0x118AA,0x118CA},{0x118AB,0x118CB}, /* 118AA */ + {0x118AC,0x118CC},{0x118AD,0x118CD}, /* 118AC */ + {0x118AE,0x118CE},{0x118AF,0x118CF}, /* 118AE */ + {0x118B0,0x118D0},{0x118B1,0x118D1}, /* 118B0 */ + {0x118B2,0x118D2},{0x118B3,0x118D3}, /* 118B2 */ + {0x118B4,0x118D4},{0x118B5,0x118D5}, /* 118B4 */ + {0x118B6,0x118D6},{0x118B7,0x118D7}, /* 118B6 */ + {0x118B8,0x118D8},{0x118B9,0x118D9}, /* 118B8 */ + {0x118BA,0x118DA},{0x118BB,0x118DB}, /* 118BA */ + {0x118BC,0x118DC},{0x118BD,0x118DD}, /* 118BC */ + {0x118BE,0x118DE},{0x118BF,0x118DF}, /* 118BE */ + {0x118A0,0x118C0},{0x118A1,0x118C1}, /* 118C0 */ + {0x118A2,0x118C2},{0x118A3,0x118C3}, /* 118C2 */ + {0x118A4,0x118C4},{0x118A5,0x118C5}, /* 118C4 */ + {0x118A6,0x118C6},{0x118A7,0x118C7}, /* 118C6 */ + {0x118A8,0x118C8},{0x118A9,0x118C9}, /* 118C8 */ + {0x118AA,0x118CA},{0x118AB,0x118CB}, /* 118CA */ + {0x118AC,0x118CC},{0x118AD,0x118CD}, /* 118CC */ + {0x118AE,0x118CE},{0x118AF,0x118CF}, /* 118CE */ + {0x118B0,0x118D0},{0x118B1,0x118D1}, /* 118D0 */ + {0x118B2,0x118D2},{0x118B3,0x118D3}, /* 118D2 */ + {0x118B4,0x118D4},{0x118B5,0x118D5}, /* 118D4 */ + {0x118B6,0x118D6},{0x118B7,0x118D7}, /* 118D6 */ + {0x118B8,0x118D8},{0x118B9,0x118D9}, /* 118D8 */ + {0x118BA,0x118DA},{0x118BB,0x118DB}, /* 118DA */ + {0x118BC,0x118DC},{0x118BD,0x118DD}, /* 118DC */ + {0x118BE,0x118DE},{0x118BF,0x118DF}, /* 118DE */ + {0x118E0,0x118E0},{0x118E1,0x118E1}, /* 118E0 */ + {0x118E2,0x118E2},{0x118E3,0x118E3}, /* 118E2 */ + {0x118E4,0x118E4},{0x118E5,0x118E5}, /* 118E4 */ + {0x118E6,0x118E6},{0x118E7,0x118E7}, /* 118E6 */ + {0x118E8,0x118E8},{0x118E9,0x118E9}, /* 118E8 */ + {0x118EA,0x118EA},{0x118EB,0x118EB}, /* 118EA */ + {0x118EC,0x118EC},{0x118ED,0x118ED}, /* 118EC */ + {0x118EE,0x118EE},{0x118EF,0x118EF}, /* 118EE */ + {0x118F0,0x118F0},{0x118F1,0x118F1}, /* 118F0 */ + {0x118F2,0x118F2},{0x118F3,0x118F3}, /* 118F2 */ + {0x118F4,0x118F4},{0x118F5,0x118F5}, /* 118F4 */ + {0x118F6,0x118F6},{0x118F7,0x118F7}, /* 118F6 */ + {0x118F8,0x118F8},{0x118F9,0x118F9}, /* 118F8 */ + {0x118FA,0x118FA},{0x118FB,0x118FB}, /* 118FA */ + {0x118FC,0x118FC},{0x118FD,0x118FD}, /* 118FC */ + {0x118FE,0x118FE},{0x118FF,0x118FF} /* 118FE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page16E[256]={ + {0x16E00,0x16E00},{0x16E01,0x16E01}, /* 16E00 */ + {0x16E02,0x16E02},{0x16E03,0x16E03}, /* 16E02 */ + {0x16E04,0x16E04},{0x16E05,0x16E05}, /* 16E04 */ + {0x16E06,0x16E06},{0x16E07,0x16E07}, /* 16E06 */ + {0x16E08,0x16E08},{0x16E09,0x16E09}, /* 16E08 */ + {0x16E0A,0x16E0A},{0x16E0B,0x16E0B}, /* 16E0A */ + {0x16E0C,0x16E0C},{0x16E0D,0x16E0D}, /* 16E0C */ + {0x16E0E,0x16E0E},{0x16E0F,0x16E0F}, /* 16E0E */ + {0x16E10,0x16E10},{0x16E11,0x16E11}, /* 16E10 */ + {0x16E12,0x16E12},{0x16E13,0x16E13}, /* 16E12 */ + {0x16E14,0x16E14},{0x16E15,0x16E15}, /* 16E14 */ + {0x16E16,0x16E16},{0x16E17,0x16E17}, /* 16E16 */ + {0x16E18,0x16E18},{0x16E19,0x16E19}, /* 16E18 */ + {0x16E1A,0x16E1A},{0x16E1B,0x16E1B}, /* 16E1A */ + {0x16E1C,0x16E1C},{0x16E1D,0x16E1D}, /* 16E1C */ + {0x16E1E,0x16E1E},{0x16E1F,0x16E1F}, /* 16E1E */ + {0x16E20,0x16E20},{0x16E21,0x16E21}, /* 16E20 */ + {0x16E22,0x16E22},{0x16E23,0x16E23}, /* 16E22 */ + {0x16E24,0x16E24},{0x16E25,0x16E25}, /* 16E24 */ + {0x16E26,0x16E26},{0x16E27,0x16E27}, /* 16E26 */ + {0x16E28,0x16E28},{0x16E29,0x16E29}, /* 16E28 */ + {0x16E2A,0x16E2A},{0x16E2B,0x16E2B}, /* 16E2A */ + {0x16E2C,0x16E2C},{0x16E2D,0x16E2D}, /* 16E2C */ + {0x16E2E,0x16E2E},{0x16E2F,0x16E2F}, /* 16E2E */ + {0x16E30,0x16E30},{0x16E31,0x16E31}, /* 16E30 */ + {0x16E32,0x16E32},{0x16E33,0x16E33}, /* 16E32 */ + {0x16E34,0x16E34},{0x16E35,0x16E35}, /* 16E34 */ + {0x16E36,0x16E36},{0x16E37,0x16E37}, /* 16E36 */ + {0x16E38,0x16E38},{0x16E39,0x16E39}, /* 16E38 */ + {0x16E3A,0x16E3A},{0x16E3B,0x16E3B}, /* 16E3A */ + {0x16E3C,0x16E3C},{0x16E3D,0x16E3D}, /* 16E3C */ + {0x16E3E,0x16E3E},{0x16E3F,0x16E3F}, /* 16E3E */ + {0x16E40,0x16E60},{0x16E41,0x16E61}, /* 16E40 */ + {0x16E42,0x16E62},{0x16E43,0x16E63}, /* 16E42 */ + {0x16E44,0x16E64},{0x16E45,0x16E65}, /* 16E44 */ + {0x16E46,0x16E66},{0x16E47,0x16E67}, /* 16E46 */ + {0x16E48,0x16E68},{0x16E49,0x16E69}, /* 16E48 */ + {0x16E4A,0x16E6A},{0x16E4B,0x16E6B}, /* 16E4A */ + {0x16E4C,0x16E6C},{0x16E4D,0x16E6D}, /* 16E4C */ + {0x16E4E,0x16E6E},{0x16E4F,0x16E6F}, /* 16E4E */ + {0x16E50,0x16E70},{0x16E51,0x16E71}, /* 16E50 */ + {0x16E52,0x16E72},{0x16E53,0x16E73}, /* 16E52 */ + {0x16E54,0x16E74},{0x16E55,0x16E75}, /* 16E54 */ + {0x16E56,0x16E76},{0x16E57,0x16E77}, /* 16E56 */ + {0x16E58,0x16E78},{0x16E59,0x16E79}, /* 16E58 */ + {0x16E5A,0x16E7A},{0x16E5B,0x16E7B}, /* 16E5A */ + {0x16E5C,0x16E7C},{0x16E5D,0x16E7D}, /* 16E5C */ + {0x16E5E,0x16E7E},{0x16E5F,0x16E7F}, /* 16E5E */ + {0x16E40,0x16E60},{0x16E41,0x16E61}, /* 16E60 */ + {0x16E42,0x16E62},{0x16E43,0x16E63}, /* 16E62 */ + {0x16E44,0x16E64},{0x16E45,0x16E65}, /* 16E64 */ + {0x16E46,0x16E66},{0x16E47,0x16E67}, /* 16E66 */ + {0x16E48,0x16E68},{0x16E49,0x16E69}, /* 16E68 */ + {0x16E4A,0x16E6A},{0x16E4B,0x16E6B}, /* 16E6A */ + {0x16E4C,0x16E6C},{0x16E4D,0x16E6D}, /* 16E6C */ + {0x16E4E,0x16E6E},{0x16E4F,0x16E6F}, /* 16E6E */ + {0x16E50,0x16E70},{0x16E51,0x16E71}, /* 16E70 */ + {0x16E52,0x16E72},{0x16E53,0x16E73}, /* 16E72 */ + {0x16E54,0x16E74},{0x16E55,0x16E75}, /* 16E74 */ + {0x16E56,0x16E76},{0x16E57,0x16E77}, /* 16E76 */ + {0x16E58,0x16E78},{0x16E59,0x16E79}, /* 16E78 */ + {0x16E5A,0x16E7A},{0x16E5B,0x16E7B}, /* 16E7A */ + {0x16E5C,0x16E7C},{0x16E5D,0x16E7D}, /* 16E7C */ + {0x16E5E,0x16E7E},{0x16E5F,0x16E7F}, /* 16E7E */ + {0x16E80,0x16E80},{0x16E81,0x16E81}, /* 16E80 */ + {0x16E82,0x16E82},{0x16E83,0x16E83}, /* 16E82 */ + {0x16E84,0x16E84},{0x16E85,0x16E85}, /* 16E84 */ + {0x16E86,0x16E86},{0x16E87,0x16E87}, /* 16E86 */ + {0x16E88,0x16E88},{0x16E89,0x16E89}, /* 16E88 */ + {0x16E8A,0x16E8A},{0x16E8B,0x16E8B}, /* 16E8A */ + {0x16E8C,0x16E8C},{0x16E8D,0x16E8D}, /* 16E8C */ + {0x16E8E,0x16E8E},{0x16E8F,0x16E8F}, /* 16E8E */ + {0x16E90,0x16E90},{0x16E91,0x16E91}, /* 16E90 */ + {0x16E92,0x16E92},{0x16E93,0x16E93}, /* 16E92 */ + {0x16E94,0x16E94},{0x16E95,0x16E95}, /* 16E94 */ + {0x16E96,0x16E96},{0x16E97,0x16E97}, /* 16E96 */ + {0x16E98,0x16E98},{0x16E99,0x16E99}, /* 16E98 */ + {0x16E9A,0x16E9A},{0x16E9B,0x16E9B}, /* 16E9A */ + {0x16E9C,0x16E9C},{0x16E9D,0x16E9D}, /* 16E9C */ + {0x16E9E,0x16E9E},{0x16E9F,0x16E9F}, /* 16E9E */ + {0x16EA0,0x16EA0},{0x16EA1,0x16EA1}, /* 16EA0 */ + {0x16EA2,0x16EA2},{0x16EA3,0x16EA3}, /* 16EA2 */ + {0x16EA4,0x16EA4},{0x16EA5,0x16EA5}, /* 16EA4 */ + {0x16EA6,0x16EA6},{0x16EA7,0x16EA7}, /* 16EA6 */ + {0x16EA8,0x16EA8},{0x16EA9,0x16EA9}, /* 16EA8 */ + {0x16EAA,0x16EAA},{0x16EAB,0x16EAB}, /* 16EAA */ + {0x16EAC,0x16EAC},{0x16EAD,0x16EAD}, /* 16EAC */ + {0x16EAE,0x16EAE},{0x16EAF,0x16EAF}, /* 16EAE */ + {0x16EB0,0x16EB0},{0x16EB1,0x16EB1}, /* 16EB0 */ + {0x16EB2,0x16EB2},{0x16EB3,0x16EB3}, /* 16EB2 */ + {0x16EB4,0x16EB4},{0x16EB5,0x16EB5}, /* 16EB4 */ + {0x16EB6,0x16EB6},{0x16EB7,0x16EB7}, /* 16EB6 */ + {0x16EB8,0x16EB8},{0x16EB9,0x16EB9}, /* 16EB8 */ + {0x16EBA,0x16EBA},{0x16EBB,0x16EBB}, /* 16EBA */ + {0x16EBC,0x16EBC},{0x16EBD,0x16EBD}, /* 16EBC */ + {0x16EBE,0x16EBE},{0x16EBF,0x16EBF}, /* 16EBE */ + {0x16EC0,0x16EC0},{0x16EC1,0x16EC1}, /* 16EC0 */ + {0x16EC2,0x16EC2},{0x16EC3,0x16EC3}, /* 16EC2 */ + {0x16EC4,0x16EC4},{0x16EC5,0x16EC5}, /* 16EC4 */ + {0x16EC6,0x16EC6},{0x16EC7,0x16EC7}, /* 16EC6 */ + {0x16EC8,0x16EC8},{0x16EC9,0x16EC9}, /* 16EC8 */ + {0x16ECA,0x16ECA},{0x16ECB,0x16ECB}, /* 16ECA */ + {0x16ECC,0x16ECC},{0x16ECD,0x16ECD}, /* 16ECC */ + {0x16ECE,0x16ECE},{0x16ECF,0x16ECF}, /* 16ECE */ + {0x16ED0,0x16ED0},{0x16ED1,0x16ED1}, /* 16ED0 */ + {0x16ED2,0x16ED2},{0x16ED3,0x16ED3}, /* 16ED2 */ + {0x16ED4,0x16ED4},{0x16ED5,0x16ED5}, /* 16ED4 */ + {0x16ED6,0x16ED6},{0x16ED7,0x16ED7}, /* 16ED6 */ + {0x16ED8,0x16ED8},{0x16ED9,0x16ED9}, /* 16ED8 */ + {0x16EDA,0x16EDA},{0x16EDB,0x16EDB}, /* 16EDA */ + {0x16EDC,0x16EDC},{0x16EDD,0x16EDD}, /* 16EDC */ + {0x16EDE,0x16EDE},{0x16EDF,0x16EDF}, /* 16EDE */ + {0x16EE0,0x16EE0},{0x16EE1,0x16EE1}, /* 16EE0 */ + {0x16EE2,0x16EE2},{0x16EE3,0x16EE3}, /* 16EE2 */ + {0x16EE4,0x16EE4},{0x16EE5,0x16EE5}, /* 16EE4 */ + {0x16EE6,0x16EE6},{0x16EE7,0x16EE7}, /* 16EE6 */ + {0x16EE8,0x16EE8},{0x16EE9,0x16EE9}, /* 16EE8 */ + {0x16EEA,0x16EEA},{0x16EEB,0x16EEB}, /* 16EEA */ + {0x16EEC,0x16EEC},{0x16EED,0x16EED}, /* 16EEC */ + {0x16EEE,0x16EEE},{0x16EEF,0x16EEF}, /* 16EEE */ + {0x16EF0,0x16EF0},{0x16EF1,0x16EF1}, /* 16EF0 */ + {0x16EF2,0x16EF2},{0x16EF3,0x16EF3}, /* 16EF2 */ + {0x16EF4,0x16EF4},{0x16EF5,0x16EF5}, /* 16EF4 */ + {0x16EF6,0x16EF6},{0x16EF7,0x16EF7}, /* 16EF6 */ + {0x16EF8,0x16EF8},{0x16EF9,0x16EF9}, /* 16EF8 */ + {0x16EFA,0x16EFA},{0x16EFB,0x16EFB}, /* 16EFA */ + {0x16EFC,0x16EFC},{0x16EFD,0x16EFD}, /* 16EFC */ + {0x16EFE,0x16EFE},{0x16EFF,0x16EFF} /* 16EFE */ +}; + +static const MY_CASEFOLD_CHARACTER u1400_casefold_page1E9[256]={ + {0x1E900,0x1E922},{0x1E901,0x1E923}, /* 1E900 */ + {0x1E902,0x1E924},{0x1E903,0x1E925}, /* 1E902 */ + {0x1E904,0x1E926},{0x1E905,0x1E927}, /* 1E904 */ + {0x1E906,0x1E928},{0x1E907,0x1E929}, /* 1E906 */ + {0x1E908,0x1E92A},{0x1E909,0x1E92B}, /* 1E908 */ + {0x1E90A,0x1E92C},{0x1E90B,0x1E92D}, /* 1E90A */ + {0x1E90C,0x1E92E},{0x1E90D,0x1E92F}, /* 1E90C */ + {0x1E90E,0x1E930},{0x1E90F,0x1E931}, /* 1E90E */ + {0x1E910,0x1E932},{0x1E911,0x1E933}, /* 1E910 */ + {0x1E912,0x1E934},{0x1E913,0x1E935}, /* 1E912 */ + {0x1E914,0x1E936},{0x1E915,0x1E937}, /* 1E914 */ + {0x1E916,0x1E938},{0x1E917,0x1E939}, /* 1E916 */ + {0x1E918,0x1E93A},{0x1E919,0x1E93B}, /* 1E918 */ + {0x1E91A,0x1E93C},{0x1E91B,0x1E93D}, /* 1E91A */ + {0x1E91C,0x1E93E},{0x1E91D,0x1E93F}, /* 1E91C */ + {0x1E91E,0x1E940},{0x1E91F,0x1E941}, /* 1E91E */ + {0x1E920,0x1E942},{0x1E921,0x1E943}, /* 1E920 */ + {0x1E900,0x1E922},{0x1E901,0x1E923}, /* 1E922 */ + {0x1E902,0x1E924},{0x1E903,0x1E925}, /* 1E924 */ + {0x1E904,0x1E926},{0x1E905,0x1E927}, /* 1E926 */ + {0x1E906,0x1E928},{0x1E907,0x1E929}, /* 1E928 */ + {0x1E908,0x1E92A},{0x1E909,0x1E92B}, /* 1E92A */ + {0x1E90A,0x1E92C},{0x1E90B,0x1E92D}, /* 1E92C */ + {0x1E90C,0x1E92E},{0x1E90D,0x1E92F}, /* 1E92E */ + {0x1E90E,0x1E930},{0x1E90F,0x1E931}, /* 1E930 */ + {0x1E910,0x1E932},{0x1E911,0x1E933}, /* 1E932 */ + {0x1E912,0x1E934},{0x1E913,0x1E935}, /* 1E934 */ + {0x1E914,0x1E936},{0x1E915,0x1E937}, /* 1E936 */ + {0x1E916,0x1E938},{0x1E917,0x1E939}, /* 1E938 */ + {0x1E918,0x1E93A},{0x1E919,0x1E93B}, /* 1E93A */ + {0x1E91A,0x1E93C},{0x1E91B,0x1E93D}, /* 1E93C */ + {0x1E91C,0x1E93E},{0x1E91D,0x1E93F}, /* 1E93E */ + {0x1E91E,0x1E940},{0x1E91F,0x1E941}, /* 1E940 */ + {0x1E920,0x1E942},{0x1E921,0x1E943}, /* 1E942 */ + {0x1E944,0x1E944},{0x1E945,0x1E945}, /* 1E944 */ + {0x1E946,0x1E946},{0x1E947,0x1E947}, /* 1E946 */ + {0x1E948,0x1E948},{0x1E949,0x1E949}, /* 1E948 */ + {0x1E94A,0x1E94A},{0x1E94B,0x1E94B}, /* 1E94A */ + {0x1E94C,0x1E94C},{0x1E94D,0x1E94D}, /* 1E94C */ + {0x1E94E,0x1E94E},{0x1E94F,0x1E94F}, /* 1E94E */ + {0x1E950,0x1E950},{0x1E951,0x1E951}, /* 1E950 */ + {0x1E952,0x1E952},{0x1E953,0x1E953}, /* 1E952 */ + {0x1E954,0x1E954},{0x1E955,0x1E955}, /* 1E954 */ + {0x1E956,0x1E956},{0x1E957,0x1E957}, /* 1E956 */ + {0x1E958,0x1E958},{0x1E959,0x1E959}, /* 1E958 */ + {0x1E95A,0x1E95A},{0x1E95B,0x1E95B}, /* 1E95A */ + {0x1E95C,0x1E95C},{0x1E95D,0x1E95D}, /* 1E95C */ + {0x1E95E,0x1E95E},{0x1E95F,0x1E95F}, /* 1E95E */ + {0x1E960,0x1E960},{0x1E961,0x1E961}, /* 1E960 */ + {0x1E962,0x1E962},{0x1E963,0x1E963}, /* 1E962 */ + {0x1E964,0x1E964},{0x1E965,0x1E965}, /* 1E964 */ + {0x1E966,0x1E966},{0x1E967,0x1E967}, /* 1E966 */ + {0x1E968,0x1E968},{0x1E969,0x1E969}, /* 1E968 */ + {0x1E96A,0x1E96A},{0x1E96B,0x1E96B}, /* 1E96A */ + {0x1E96C,0x1E96C},{0x1E96D,0x1E96D}, /* 1E96C */ + {0x1E96E,0x1E96E},{0x1E96F,0x1E96F}, /* 1E96E */ + {0x1E970,0x1E970},{0x1E971,0x1E971}, /* 1E970 */ + {0x1E972,0x1E972},{0x1E973,0x1E973}, /* 1E972 */ + {0x1E974,0x1E974},{0x1E975,0x1E975}, /* 1E974 */ + {0x1E976,0x1E976},{0x1E977,0x1E977}, /* 1E976 */ + {0x1E978,0x1E978},{0x1E979,0x1E979}, /* 1E978 */ + {0x1E97A,0x1E97A},{0x1E97B,0x1E97B}, /* 1E97A */ + {0x1E97C,0x1E97C},{0x1E97D,0x1E97D}, /* 1E97C */ + {0x1E97E,0x1E97E},{0x1E97F,0x1E97F}, /* 1E97E */ + {0x1E980,0x1E980},{0x1E981,0x1E981}, /* 1E980 */ + {0x1E982,0x1E982},{0x1E983,0x1E983}, /* 1E982 */ + {0x1E984,0x1E984},{0x1E985,0x1E985}, /* 1E984 */ + {0x1E986,0x1E986},{0x1E987,0x1E987}, /* 1E986 */ + {0x1E988,0x1E988},{0x1E989,0x1E989}, /* 1E988 */ + {0x1E98A,0x1E98A},{0x1E98B,0x1E98B}, /* 1E98A */ + {0x1E98C,0x1E98C},{0x1E98D,0x1E98D}, /* 1E98C */ + {0x1E98E,0x1E98E},{0x1E98F,0x1E98F}, /* 1E98E */ + {0x1E990,0x1E990},{0x1E991,0x1E991}, /* 1E990 */ + {0x1E992,0x1E992},{0x1E993,0x1E993}, /* 1E992 */ + {0x1E994,0x1E994},{0x1E995,0x1E995}, /* 1E994 */ + {0x1E996,0x1E996},{0x1E997,0x1E997}, /* 1E996 */ + {0x1E998,0x1E998},{0x1E999,0x1E999}, /* 1E998 */ + {0x1E99A,0x1E99A},{0x1E99B,0x1E99B}, /* 1E99A */ + {0x1E99C,0x1E99C},{0x1E99D,0x1E99D}, /* 1E99C */ + {0x1E99E,0x1E99E},{0x1E99F,0x1E99F}, /* 1E99E */ + {0x1E9A0,0x1E9A0},{0x1E9A1,0x1E9A1}, /* 1E9A0 */ + {0x1E9A2,0x1E9A2},{0x1E9A3,0x1E9A3}, /* 1E9A2 */ + {0x1E9A4,0x1E9A4},{0x1E9A5,0x1E9A5}, /* 1E9A4 */ + {0x1E9A6,0x1E9A6},{0x1E9A7,0x1E9A7}, /* 1E9A6 */ + {0x1E9A8,0x1E9A8},{0x1E9A9,0x1E9A9}, /* 1E9A8 */ + {0x1E9AA,0x1E9AA},{0x1E9AB,0x1E9AB}, /* 1E9AA */ + {0x1E9AC,0x1E9AC},{0x1E9AD,0x1E9AD}, /* 1E9AC */ + {0x1E9AE,0x1E9AE},{0x1E9AF,0x1E9AF}, /* 1E9AE */ + {0x1E9B0,0x1E9B0},{0x1E9B1,0x1E9B1}, /* 1E9B0 */ + {0x1E9B2,0x1E9B2},{0x1E9B3,0x1E9B3}, /* 1E9B2 */ + {0x1E9B4,0x1E9B4},{0x1E9B5,0x1E9B5}, /* 1E9B4 */ + {0x1E9B6,0x1E9B6},{0x1E9B7,0x1E9B7}, /* 1E9B6 */ + {0x1E9B8,0x1E9B8},{0x1E9B9,0x1E9B9}, /* 1E9B8 */ + {0x1E9BA,0x1E9BA},{0x1E9BB,0x1E9BB}, /* 1E9BA */ + {0x1E9BC,0x1E9BC},{0x1E9BD,0x1E9BD}, /* 1E9BC */ + {0x1E9BE,0x1E9BE},{0x1E9BF,0x1E9BF}, /* 1E9BE */ + {0x1E9C0,0x1E9C0},{0x1E9C1,0x1E9C1}, /* 1E9C0 */ + {0x1E9C2,0x1E9C2},{0x1E9C3,0x1E9C3}, /* 1E9C2 */ + {0x1E9C4,0x1E9C4},{0x1E9C5,0x1E9C5}, /* 1E9C4 */ + {0x1E9C6,0x1E9C6},{0x1E9C7,0x1E9C7}, /* 1E9C6 */ + {0x1E9C8,0x1E9C8},{0x1E9C9,0x1E9C9}, /* 1E9C8 */ + {0x1E9CA,0x1E9CA},{0x1E9CB,0x1E9CB}, /* 1E9CA */ + {0x1E9CC,0x1E9CC},{0x1E9CD,0x1E9CD}, /* 1E9CC */ + {0x1E9CE,0x1E9CE},{0x1E9CF,0x1E9CF}, /* 1E9CE */ + {0x1E9D0,0x1E9D0},{0x1E9D1,0x1E9D1}, /* 1E9D0 */ + {0x1E9D2,0x1E9D2},{0x1E9D3,0x1E9D3}, /* 1E9D2 */ + {0x1E9D4,0x1E9D4},{0x1E9D5,0x1E9D5}, /* 1E9D4 */ + {0x1E9D6,0x1E9D6},{0x1E9D7,0x1E9D7}, /* 1E9D6 */ + {0x1E9D8,0x1E9D8},{0x1E9D9,0x1E9D9}, /* 1E9D8 */ + {0x1E9DA,0x1E9DA},{0x1E9DB,0x1E9DB}, /* 1E9DA */ + {0x1E9DC,0x1E9DC},{0x1E9DD,0x1E9DD}, /* 1E9DC */ + {0x1E9DE,0x1E9DE},{0x1E9DF,0x1E9DF}, /* 1E9DE */ + {0x1E9E0,0x1E9E0},{0x1E9E1,0x1E9E1}, /* 1E9E0 */ + {0x1E9E2,0x1E9E2},{0x1E9E3,0x1E9E3}, /* 1E9E2 */ + {0x1E9E4,0x1E9E4},{0x1E9E5,0x1E9E5}, /* 1E9E4 */ + {0x1E9E6,0x1E9E6},{0x1E9E7,0x1E9E7}, /* 1E9E6 */ + {0x1E9E8,0x1E9E8},{0x1E9E9,0x1E9E9}, /* 1E9E8 */ + {0x1E9EA,0x1E9EA},{0x1E9EB,0x1E9EB}, /* 1E9EA */ + {0x1E9EC,0x1E9EC},{0x1E9ED,0x1E9ED}, /* 1E9EC */ + {0x1E9EE,0x1E9EE},{0x1E9EF,0x1E9EF}, /* 1E9EE */ + {0x1E9F0,0x1E9F0},{0x1E9F1,0x1E9F1}, /* 1E9F0 */ + {0x1E9F2,0x1E9F2},{0x1E9F3,0x1E9F3}, /* 1E9F2 */ + {0x1E9F4,0x1E9F4},{0x1E9F5,0x1E9F5}, /* 1E9F4 */ + {0x1E9F6,0x1E9F6},{0x1E9F7,0x1E9F7}, /* 1E9F6 */ + {0x1E9F8,0x1E9F8},{0x1E9F9,0x1E9F9}, /* 1E9F8 */ + {0x1E9FA,0x1E9FA},{0x1E9FB,0x1E9FB}, /* 1E9FA */ + {0x1E9FC,0x1E9FC},{0x1E9FD,0x1E9FD}, /* 1E9FC */ + {0x1E9FE,0x1E9FE},{0x1E9FF,0x1E9FF} /* 1E9FE */ +}; + +const MY_CASEFOLD_CHARACTER * my_u1400_casefold_index[4352]={ + u1400_casefold_page00, u1400_casefold_page01, u1400_casefold_page02, u1400_casefold_page03, u1400_casefold_page04, u1400_casefold_page05, u1400_casefold_page06, u1400_casefold_page07, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + u1400_casefold_page10, NULL, NULL, u1400_casefold_page13, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page1C, u1400_casefold_page1D, u1400_casefold_page1E, u1400_casefold_page1F, + NULL, u1400_casefold_page21, NULL, NULL, u1400_casefold_page24, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page2C, u1400_casefold_page2D, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_pageA6, u1400_casefold_pageA7, + NULL, NULL, NULL, u1400_casefold_pageAB, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_pageFF, + NULL, NULL, NULL, NULL, u1400_casefold_page104, u1400_casefold_page105, NULL, NULL, + NULL, NULL, NULL, NULL, u1400_casefold_page10C, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + u1400_casefold_page118, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u1400_casefold_page16E, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, u1400_casefold_page1E9, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL +}; diff --git a/strings/ctype-unicode300-casefold-tr.h b/strings/ctype-unicode300-casefold-tr.h new file mode 100644 index 00000000000..ff428112382 --- /dev/null +++ b/strings/ctype-unicode300-casefold-tr.h @@ -0,0 +1,193 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=casefold-tr \ + --page-name=u300tr_casefold_page \ + --page-name-derived=u300_casefold_page \ + --index-name=my_u300tr_casefold_index \ + --max-char=0xFFFF \ + UnicodeData-3.0.0.txt + +*/ +const MY_CASEFOLD_CHARACTER u300tr_casefold_page00[256]={ + {0x0000,0x0000},{0x0001,0x0001}, /* 0000 */ + {0x0002,0x0002},{0x0003,0x0003}, /* 0002 */ + {0x0004,0x0004},{0x0005,0x0005}, /* 0004 */ + {0x0006,0x0006},{0x0007,0x0007}, /* 0006 */ + {0x0008,0x0008},{0x0009,0x0009}, /* 0008 */ + {0x000A,0x000A},{0x000B,0x000B}, /* 000A */ + {0x000C,0x000C},{0x000D,0x000D}, /* 000C */ + {0x000E,0x000E},{0x000F,0x000F}, /* 000E */ + {0x0010,0x0010},{0x0011,0x0011}, /* 0010 */ + {0x0012,0x0012},{0x0013,0x0013}, /* 0012 */ + {0x0014,0x0014},{0x0015,0x0015}, /* 0014 */ + {0x0016,0x0016},{0x0017,0x0017}, /* 0016 */ + {0x0018,0x0018},{0x0019,0x0019}, /* 0018 */ + {0x001A,0x001A},{0x001B,0x001B}, /* 001A */ + {0x001C,0x001C},{0x001D,0x001D}, /* 001C */ + {0x001E,0x001E},{0x001F,0x001F}, /* 001E */ + {0x0020,0x0020},{0x0021,0x0021}, /* 0020 */ + {0x0022,0x0022},{0x0023,0x0023}, /* 0022 */ + {0x0024,0x0024},{0x0025,0x0025}, /* 0024 */ + {0x0026,0x0026},{0x0027,0x0027}, /* 0026 */ + {0x0028,0x0028},{0x0029,0x0029}, /* 0028 */ + {0x002A,0x002A},{0x002B,0x002B}, /* 002A */ + {0x002C,0x002C},{0x002D,0x002D}, /* 002C */ + {0x002E,0x002E},{0x002F,0x002F}, /* 002E */ + {0x0030,0x0030},{0x0031,0x0031}, /* 0030 */ + {0x0032,0x0032},{0x0033,0x0033}, /* 0032 */ + {0x0034,0x0034},{0x0035,0x0035}, /* 0034 */ + {0x0036,0x0036},{0x0037,0x0037}, /* 0036 */ + {0x0038,0x0038},{0x0039,0x0039}, /* 0038 */ + {0x003A,0x003A},{0x003B,0x003B}, /* 003A */ + {0x003C,0x003C},{0x003D,0x003D}, /* 003C */ + {0x003E,0x003E},{0x003F,0x003F}, /* 003E */ + {0x0040,0x0040},{0x0041,0x0061}, /* 0040 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0042 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0044 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0046 */ + {0x0048,0x0068},{0x0049,0x0131}, /* 0048 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 004A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 004C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 004E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0050 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0052 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0054 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0056 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0058 */ + {0x005A,0x007A},{0x005B,0x005B}, /* 005A */ + {0x005C,0x005C},{0x005D,0x005D}, /* 005C */ + {0x005E,0x005E},{0x005F,0x005F}, /* 005E */ + {0x0060,0x0060},{0x0041,0x0061}, /* 0060 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0062 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0064 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0066 */ + {0x0048,0x0068},{0x0130,0x0069}, /* 0068 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 006A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 006C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 006E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0070 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0072 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0074 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0076 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0078 */ + {0x005A,0x007A},{0x007B,0x007B}, /* 007A */ + {0x007C,0x007C},{0x007D,0x007D}, /* 007C */ + {0x007E,0x007E},{0x007F,0x007F}, /* 007E */ + {0x0080,0x0080},{0x0081,0x0081}, /* 0080 */ + {0x0082,0x0082},{0x0083,0x0083}, /* 0082 */ + {0x0084,0x0084},{0x0085,0x0085}, /* 0084 */ + {0x0086,0x0086},{0x0087,0x0087}, /* 0086 */ + {0x0088,0x0088},{0x0089,0x0089}, /* 0088 */ + {0x008A,0x008A},{0x008B,0x008B}, /* 008A */ + {0x008C,0x008C},{0x008D,0x008D}, /* 008C */ + {0x008E,0x008E},{0x008F,0x008F}, /* 008E */ + {0x0090,0x0090},{0x0091,0x0091}, /* 0090 */ + {0x0092,0x0092},{0x0093,0x0093}, /* 0092 */ + {0x0094,0x0094},{0x0095,0x0095}, /* 0094 */ + {0x0096,0x0096},{0x0097,0x0097}, /* 0096 */ + {0x0098,0x0098},{0x0099,0x0099}, /* 0098 */ + {0x009A,0x009A},{0x009B,0x009B}, /* 009A */ + {0x009C,0x009C},{0x009D,0x009D}, /* 009C */ + {0x009E,0x009E},{0x009F,0x009F}, /* 009E */ + {0x00A0,0x00A0},{0x00A1,0x00A1}, /* 00A0 */ + {0x00A2,0x00A2},{0x00A3,0x00A3}, /* 00A2 */ + {0x00A4,0x00A4},{0x00A5,0x00A5}, /* 00A4 */ + {0x00A6,0x00A6},{0x00A7,0x00A7}, /* 00A6 */ + {0x00A8,0x00A8},{0x00A9,0x00A9}, /* 00A8 */ + {0x00AA,0x00AA},{0x00AB,0x00AB}, /* 00AA */ + {0x00AC,0x00AC},{0x00AD,0x00AD}, /* 00AC */ + {0x00AE,0x00AE},{0x00AF,0x00AF}, /* 00AE */ + {0x00B0,0x00B0},{0x00B1,0x00B1}, /* 00B0 */ + {0x00B2,0x00B2},{0x00B3,0x00B3}, /* 00B2 */ + {0x00B4,0x00B4},{0x039C,0x00B5}, /* 00B4 */ + {0x00B6,0x00B6},{0x00B7,0x00B7}, /* 00B6 */ + {0x00B8,0x00B8},{0x00B9,0x00B9}, /* 00B8 */ + {0x00BA,0x00BA},{0x00BB,0x00BB}, /* 00BA */ + {0x00BC,0x00BC},{0x00BD,0x00BD}, /* 00BC */ + {0x00BE,0x00BE},{0x00BF,0x00BF}, /* 00BE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00C0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00C2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00C4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00C6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00C8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00CA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00CC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00CE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00D0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00D2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00D4 */ + {0x00D6,0x00F6},{0x00D7,0x00D7}, /* 00D6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00D8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00DA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00DC */ + {0x00DE,0x00FE},{0x00DF,0x00DF}, /* 00DE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00E0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00E2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00E4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00E6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00E8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00EA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00EC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00EE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00F0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00F2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00F4 */ + {0x00D6,0x00F6},{0x00F7,0x00F7}, /* 00F6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00F8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00FA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00FC */ + {0x00DE,0x00FE},{0x0178,0x00FF} /* 00FE */ +}; + +const MY_CASEFOLD_CHARACTER * my_u300tr_casefold_index[256]={ + u300tr_casefold_page00, u300_casefold_page01, u300_casefold_page02, u300_casefold_page03, u300_casefold_page04, u300_casefold_page05, u300_casefold_page06, u300_casefold_page07, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u300_casefold_page1E, u300_casefold_page1F, + NULL, u300_casefold_page21, NULL, NULL, u300_casefold_page24, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, u300_casefold_pageFF +}; diff --git a/strings/ctype-unicode300-casefold.h b/strings/ctype-unicode300-casefold.h new file mode 100644 index 00000000000..353cba0846a --- /dev/null +++ b/strings/ctype-unicode300-casefold.h @@ -0,0 +1,1764 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=casefold \ + --page-name=u300_casefold_page \ + --index-name=my_u300_casefold_index \ + --max-char=0xFFFF \ + UnicodeData-3.0.0.txt + +*/ +const MY_CASEFOLD_CHARACTER u300_casefold_page00[256]={ + {0x0000,0x0000},{0x0001,0x0001}, /* 0000 */ + {0x0002,0x0002},{0x0003,0x0003}, /* 0002 */ + {0x0004,0x0004},{0x0005,0x0005}, /* 0004 */ + {0x0006,0x0006},{0x0007,0x0007}, /* 0006 */ + {0x0008,0x0008},{0x0009,0x0009}, /* 0008 */ + {0x000A,0x000A},{0x000B,0x000B}, /* 000A */ + {0x000C,0x000C},{0x000D,0x000D}, /* 000C */ + {0x000E,0x000E},{0x000F,0x000F}, /* 000E */ + {0x0010,0x0010},{0x0011,0x0011}, /* 0010 */ + {0x0012,0x0012},{0x0013,0x0013}, /* 0012 */ + {0x0014,0x0014},{0x0015,0x0015}, /* 0014 */ + {0x0016,0x0016},{0x0017,0x0017}, /* 0016 */ + {0x0018,0x0018},{0x0019,0x0019}, /* 0018 */ + {0x001A,0x001A},{0x001B,0x001B}, /* 001A */ + {0x001C,0x001C},{0x001D,0x001D}, /* 001C */ + {0x001E,0x001E},{0x001F,0x001F}, /* 001E */ + {0x0020,0x0020},{0x0021,0x0021}, /* 0020 */ + {0x0022,0x0022},{0x0023,0x0023}, /* 0022 */ + {0x0024,0x0024},{0x0025,0x0025}, /* 0024 */ + {0x0026,0x0026},{0x0027,0x0027}, /* 0026 */ + {0x0028,0x0028},{0x0029,0x0029}, /* 0028 */ + {0x002A,0x002A},{0x002B,0x002B}, /* 002A */ + {0x002C,0x002C},{0x002D,0x002D}, /* 002C */ + {0x002E,0x002E},{0x002F,0x002F}, /* 002E */ + {0x0030,0x0030},{0x0031,0x0031}, /* 0030 */ + {0x0032,0x0032},{0x0033,0x0033}, /* 0032 */ + {0x0034,0x0034},{0x0035,0x0035}, /* 0034 */ + {0x0036,0x0036},{0x0037,0x0037}, /* 0036 */ + {0x0038,0x0038},{0x0039,0x0039}, /* 0038 */ + {0x003A,0x003A},{0x003B,0x003B}, /* 003A */ + {0x003C,0x003C},{0x003D,0x003D}, /* 003C */ + {0x003E,0x003E},{0x003F,0x003F}, /* 003E */ + {0x0040,0x0040},{0x0041,0x0061}, /* 0040 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0042 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0044 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0046 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0048 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 004A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 004C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 004E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0050 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0052 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0054 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0056 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0058 */ + {0x005A,0x007A},{0x005B,0x005B}, /* 005A */ + {0x005C,0x005C},{0x005D,0x005D}, /* 005C */ + {0x005E,0x005E},{0x005F,0x005F}, /* 005E */ + {0x0060,0x0060},{0x0041,0x0061}, /* 0060 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0062 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0064 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0066 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0068 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 006A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 006C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 006E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0070 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0072 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0074 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0076 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0078 */ + {0x005A,0x007A},{0x007B,0x007B}, /* 007A */ + {0x007C,0x007C},{0x007D,0x007D}, /* 007C */ + {0x007E,0x007E},{0x007F,0x007F}, /* 007E */ + {0x0080,0x0080},{0x0081,0x0081}, /* 0080 */ + {0x0082,0x0082},{0x0083,0x0083}, /* 0082 */ + {0x0084,0x0084},{0x0085,0x0085}, /* 0084 */ + {0x0086,0x0086},{0x0087,0x0087}, /* 0086 */ + {0x0088,0x0088},{0x0089,0x0089}, /* 0088 */ + {0x008A,0x008A},{0x008B,0x008B}, /* 008A */ + {0x008C,0x008C},{0x008D,0x008D}, /* 008C */ + {0x008E,0x008E},{0x008F,0x008F}, /* 008E */ + {0x0090,0x0090},{0x0091,0x0091}, /* 0090 */ + {0x0092,0x0092},{0x0093,0x0093}, /* 0092 */ + {0x0094,0x0094},{0x0095,0x0095}, /* 0094 */ + {0x0096,0x0096},{0x0097,0x0097}, /* 0096 */ + {0x0098,0x0098},{0x0099,0x0099}, /* 0098 */ + {0x009A,0x009A},{0x009B,0x009B}, /* 009A */ + {0x009C,0x009C},{0x009D,0x009D}, /* 009C */ + {0x009E,0x009E},{0x009F,0x009F}, /* 009E */ + {0x00A0,0x00A0},{0x00A1,0x00A1}, /* 00A0 */ + {0x00A2,0x00A2},{0x00A3,0x00A3}, /* 00A2 */ + {0x00A4,0x00A4},{0x00A5,0x00A5}, /* 00A4 */ + {0x00A6,0x00A6},{0x00A7,0x00A7}, /* 00A6 */ + {0x00A8,0x00A8},{0x00A9,0x00A9}, /* 00A8 */ + {0x00AA,0x00AA},{0x00AB,0x00AB}, /* 00AA */ + {0x00AC,0x00AC},{0x00AD,0x00AD}, /* 00AC */ + {0x00AE,0x00AE},{0x00AF,0x00AF}, /* 00AE */ + {0x00B0,0x00B0},{0x00B1,0x00B1}, /* 00B0 */ + {0x00B2,0x00B2},{0x00B3,0x00B3}, /* 00B2 */ + {0x00B4,0x00B4},{0x039C,0x00B5}, /* 00B4 */ + {0x00B6,0x00B6},{0x00B7,0x00B7}, /* 00B6 */ + {0x00B8,0x00B8},{0x00B9,0x00B9}, /* 00B8 */ + {0x00BA,0x00BA},{0x00BB,0x00BB}, /* 00BA */ + {0x00BC,0x00BC},{0x00BD,0x00BD}, /* 00BC */ + {0x00BE,0x00BE},{0x00BF,0x00BF}, /* 00BE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00C0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00C2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00C4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00C6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00C8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00CA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00CC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00CE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00D0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00D2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00D4 */ + {0x00D6,0x00F6},{0x00D7,0x00D7}, /* 00D6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00D8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00DA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00DC */ + {0x00DE,0x00FE},{0x00DF,0x00DF}, /* 00DE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00E0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00E2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00E4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00E6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00E8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00EA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00EC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00EE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00F0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00F2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00F4 */ + {0x00D6,0x00F6},{0x00F7,0x00F7}, /* 00F6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00F8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00FA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00FC */ + {0x00DE,0x00FE},{0x0178,0x00FF} /* 00FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page01[256]={ + {0x0100,0x0101},{0x0100,0x0101}, /* 0100 */ + {0x0102,0x0103},{0x0102,0x0103}, /* 0102 */ + {0x0104,0x0105},{0x0104,0x0105}, /* 0104 */ + {0x0106,0x0107},{0x0106,0x0107}, /* 0106 */ + {0x0108,0x0109},{0x0108,0x0109}, /* 0108 */ + {0x010A,0x010B},{0x010A,0x010B}, /* 010A */ + {0x010C,0x010D},{0x010C,0x010D}, /* 010C */ + {0x010E,0x010F},{0x010E,0x010F}, /* 010E */ + {0x0110,0x0111},{0x0110,0x0111}, /* 0110 */ + {0x0112,0x0113},{0x0112,0x0113}, /* 0112 */ + {0x0114,0x0115},{0x0114,0x0115}, /* 0114 */ + {0x0116,0x0117},{0x0116,0x0117}, /* 0116 */ + {0x0118,0x0119},{0x0118,0x0119}, /* 0118 */ + {0x011A,0x011B},{0x011A,0x011B}, /* 011A */ + {0x011C,0x011D},{0x011C,0x011D}, /* 011C */ + {0x011E,0x011F},{0x011E,0x011F}, /* 011E */ + {0x0120,0x0121},{0x0120,0x0121}, /* 0120 */ + {0x0122,0x0123},{0x0122,0x0123}, /* 0122 */ + {0x0124,0x0125},{0x0124,0x0125}, /* 0124 */ + {0x0126,0x0127},{0x0126,0x0127}, /* 0126 */ + {0x0128,0x0129},{0x0128,0x0129}, /* 0128 */ + {0x012A,0x012B},{0x012A,0x012B}, /* 012A */ + {0x012C,0x012D},{0x012C,0x012D}, /* 012C */ + {0x012E,0x012F},{0x012E,0x012F}, /* 012E */ + {0x0130,0x0069},{0x0049,0x0131}, /* 0130 */ + {0x0132,0x0133},{0x0132,0x0133}, /* 0132 */ + {0x0134,0x0135},{0x0134,0x0135}, /* 0134 */ + {0x0136,0x0137},{0x0136,0x0137}, /* 0136 */ + {0x0138,0x0138},{0x0139,0x013A}, /* 0138 */ + {0x0139,0x013A},{0x013B,0x013C}, /* 013A */ + {0x013B,0x013C},{0x013D,0x013E}, /* 013C */ + {0x013D,0x013E},{0x013F,0x0140}, /* 013E */ + {0x013F,0x0140},{0x0141,0x0142}, /* 0140 */ + {0x0141,0x0142},{0x0143,0x0144}, /* 0142 */ + {0x0143,0x0144},{0x0145,0x0146}, /* 0144 */ + {0x0145,0x0146},{0x0147,0x0148}, /* 0146 */ + {0x0147,0x0148},{0x0149,0x0149}, /* 0148 */ + {0x014A,0x014B},{0x014A,0x014B}, /* 014A */ + {0x014C,0x014D},{0x014C,0x014D}, /* 014C */ + {0x014E,0x014F},{0x014E,0x014F}, /* 014E */ + {0x0150,0x0151},{0x0150,0x0151}, /* 0150 */ + {0x0152,0x0153},{0x0152,0x0153}, /* 0152 */ + {0x0154,0x0155},{0x0154,0x0155}, /* 0154 */ + {0x0156,0x0157},{0x0156,0x0157}, /* 0156 */ + {0x0158,0x0159},{0x0158,0x0159}, /* 0158 */ + {0x015A,0x015B},{0x015A,0x015B}, /* 015A */ + {0x015C,0x015D},{0x015C,0x015D}, /* 015C */ + {0x015E,0x015F},{0x015E,0x015F}, /* 015E */ + {0x0160,0x0161},{0x0160,0x0161}, /* 0160 */ + {0x0162,0x0163},{0x0162,0x0163}, /* 0162 */ + {0x0164,0x0165},{0x0164,0x0165}, /* 0164 */ + {0x0166,0x0167},{0x0166,0x0167}, /* 0166 */ + {0x0168,0x0169},{0x0168,0x0169}, /* 0168 */ + {0x016A,0x016B},{0x016A,0x016B}, /* 016A */ + {0x016C,0x016D},{0x016C,0x016D}, /* 016C */ + {0x016E,0x016F},{0x016E,0x016F}, /* 016E */ + {0x0170,0x0171},{0x0170,0x0171}, /* 0170 */ + {0x0172,0x0173},{0x0172,0x0173}, /* 0172 */ + {0x0174,0x0175},{0x0174,0x0175}, /* 0174 */ + {0x0176,0x0177},{0x0176,0x0177}, /* 0176 */ + {0x0178,0x00FF},{0x0179,0x017A}, /* 0178 */ + {0x0179,0x017A},{0x017B,0x017C}, /* 017A */ + {0x017B,0x017C},{0x017D,0x017E}, /* 017C */ + {0x017D,0x017E},{0x0053,0x017F}, /* 017E */ + {0x0180,0x0180},{0x0181,0x0253}, /* 0180 */ + {0x0182,0x0183},{0x0182,0x0183}, /* 0182 */ + {0x0184,0x0185},{0x0184,0x0185}, /* 0184 */ + {0x0186,0x0254},{0x0187,0x0188}, /* 0186 */ + {0x0187,0x0188},{0x0189,0x0256}, /* 0188 */ + {0x018A,0x0257},{0x018B,0x018C}, /* 018A */ + {0x018B,0x018C},{0x018D,0x018D}, /* 018C */ + {0x018E,0x01DD},{0x018F,0x0259}, /* 018E */ + {0x0190,0x025B},{0x0191,0x0192}, /* 0190 */ + {0x0191,0x0192},{0x0193,0x0260}, /* 0192 */ + {0x0194,0x0263},{0x01F6,0x0195}, /* 0194 */ + {0x0196,0x0269},{0x0197,0x0268}, /* 0196 */ + {0x0198,0x0199},{0x0198,0x0199}, /* 0198 */ + {0x019A,0x019A},{0x019B,0x019B}, /* 019A */ + {0x019C,0x026F},{0x019D,0x0272}, /* 019C */ + {0x019E,0x019E},{0x019F,0x0275}, /* 019E */ + {0x01A0,0x01A1},{0x01A0,0x01A1}, /* 01A0 */ + {0x01A2,0x01A3},{0x01A2,0x01A3}, /* 01A2 */ + {0x01A4,0x01A5},{0x01A4,0x01A5}, /* 01A4 */ + {0x01A6,0x0280},{0x01A7,0x01A8}, /* 01A6 */ + {0x01A7,0x01A8},{0x01A9,0x0283}, /* 01A8 */ + {0x01AA,0x01AA},{0x01AB,0x01AB}, /* 01AA */ + {0x01AC,0x01AD},{0x01AC,0x01AD}, /* 01AC */ + {0x01AE,0x0288},{0x01AF,0x01B0}, /* 01AE */ + {0x01AF,0x01B0},{0x01B1,0x028A}, /* 01B0 */ + {0x01B2,0x028B},{0x01B3,0x01B4}, /* 01B2 */ + {0x01B3,0x01B4},{0x01B5,0x01B6}, /* 01B4 */ + {0x01B5,0x01B6},{0x01B7,0x0292}, /* 01B6 */ + {0x01B8,0x01B9},{0x01B8,0x01B9}, /* 01B8 */ + {0x01BA,0x01BA},{0x01BB,0x01BB}, /* 01BA */ + {0x01BC,0x01BD},{0x01BC,0x01BD}, /* 01BC */ + {0x01BE,0x01BE},{0x01F7,0x01BF}, /* 01BE */ + {0x01C0,0x01C0},{0x01C1,0x01C1}, /* 01C0 */ + {0x01C2,0x01C2},{0x01C3,0x01C3}, /* 01C2 */ + {0x01C4,0x01C6},{0x01C4,0x01C6}, /* 01C4 */ + {0x01C4,0x01C6},{0x01C7,0x01C9}, /* 01C6 */ + {0x01C7,0x01C9},{0x01C7,0x01C9}, /* 01C8 */ + {0x01CA,0x01CC},{0x01CA,0x01CC}, /* 01CA */ + {0x01CA,0x01CC},{0x01CD,0x01CE}, /* 01CC */ + {0x01CD,0x01CE},{0x01CF,0x01D0}, /* 01CE */ + {0x01CF,0x01D0},{0x01D1,0x01D2}, /* 01D0 */ + {0x01D1,0x01D2},{0x01D3,0x01D4}, /* 01D2 */ + {0x01D3,0x01D4},{0x01D5,0x01D6}, /* 01D4 */ + {0x01D5,0x01D6},{0x01D7,0x01D8}, /* 01D6 */ + {0x01D7,0x01D8},{0x01D9,0x01DA}, /* 01D8 */ + {0x01D9,0x01DA},{0x01DB,0x01DC}, /* 01DA */ + {0x01DB,0x01DC},{0x018E,0x01DD}, /* 01DC */ + {0x01DE,0x01DF},{0x01DE,0x01DF}, /* 01DE */ + {0x01E0,0x01E1},{0x01E0,0x01E1}, /* 01E0 */ + {0x01E2,0x01E3},{0x01E2,0x01E3}, /* 01E2 */ + {0x01E4,0x01E5},{0x01E4,0x01E5}, /* 01E4 */ + {0x01E6,0x01E7},{0x01E6,0x01E7}, /* 01E6 */ + {0x01E8,0x01E9},{0x01E8,0x01E9}, /* 01E8 */ + {0x01EA,0x01EB},{0x01EA,0x01EB}, /* 01EA */ + {0x01EC,0x01ED},{0x01EC,0x01ED}, /* 01EC */ + {0x01EE,0x01EF},{0x01EE,0x01EF}, /* 01EE */ + {0x01F0,0x01F0},{0x01F1,0x01F3}, /* 01F0 */ + {0x01F1,0x01F3},{0x01F1,0x01F3}, /* 01F2 */ + {0x01F4,0x01F5},{0x01F4,0x01F5}, /* 01F4 */ + {0x01F6,0x0195},{0x01F7,0x01BF}, /* 01F6 */ + {0x01F8,0x01F9},{0x01F8,0x01F9}, /* 01F8 */ + {0x01FA,0x01FB},{0x01FA,0x01FB}, /* 01FA */ + {0x01FC,0x01FD},{0x01FC,0x01FD}, /* 01FC */ + {0x01FE,0x01FF},{0x01FE,0x01FF} /* 01FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page02[256]={ + {0x0200,0x0201},{0x0200,0x0201}, /* 0200 */ + {0x0202,0x0203},{0x0202,0x0203}, /* 0202 */ + {0x0204,0x0205},{0x0204,0x0205}, /* 0204 */ + {0x0206,0x0207},{0x0206,0x0207}, /* 0206 */ + {0x0208,0x0209},{0x0208,0x0209}, /* 0208 */ + {0x020A,0x020B},{0x020A,0x020B}, /* 020A */ + {0x020C,0x020D},{0x020C,0x020D}, /* 020C */ + {0x020E,0x020F},{0x020E,0x020F}, /* 020E */ + {0x0210,0x0211},{0x0210,0x0211}, /* 0210 */ + {0x0212,0x0213},{0x0212,0x0213}, /* 0212 */ + {0x0214,0x0215},{0x0214,0x0215}, /* 0214 */ + {0x0216,0x0217},{0x0216,0x0217}, /* 0216 */ + {0x0218,0x0219},{0x0218,0x0219}, /* 0218 */ + {0x021A,0x021B},{0x021A,0x021B}, /* 021A */ + {0x021C,0x021D},{0x021C,0x021D}, /* 021C */ + {0x021E,0x021F},{0x021E,0x021F}, /* 021E */ + {0x0220,0x0220},{0x0221,0x0221}, /* 0220 */ + {0x0222,0x0223},{0x0222,0x0223}, /* 0222 */ + {0x0224,0x0225},{0x0224,0x0225}, /* 0224 */ + {0x0226,0x0227},{0x0226,0x0227}, /* 0226 */ + {0x0228,0x0229},{0x0228,0x0229}, /* 0228 */ + {0x022A,0x022B},{0x022A,0x022B}, /* 022A */ + {0x022C,0x022D},{0x022C,0x022D}, /* 022C */ + {0x022E,0x022F},{0x022E,0x022F}, /* 022E */ + {0x0230,0x0231},{0x0230,0x0231}, /* 0230 */ + {0x0232,0x0233},{0x0232,0x0233}, /* 0232 */ + {0x0234,0x0234},{0x0235,0x0235}, /* 0234 */ + {0x0236,0x0236},{0x0237,0x0237}, /* 0236 */ + {0x0238,0x0238},{0x0239,0x0239}, /* 0238 */ + {0x023A,0x023A},{0x023B,0x023B}, /* 023A */ + {0x023C,0x023C},{0x023D,0x023D}, /* 023C */ + {0x023E,0x023E},{0x023F,0x023F}, /* 023E */ + {0x0240,0x0240},{0x0241,0x0241}, /* 0240 */ + {0x0242,0x0242},{0x0243,0x0243}, /* 0242 */ + {0x0244,0x0244},{0x0245,0x0245}, /* 0244 */ + {0x0246,0x0246},{0x0247,0x0247}, /* 0246 */ + {0x0248,0x0248},{0x0249,0x0249}, /* 0248 */ + {0x024A,0x024A},{0x024B,0x024B}, /* 024A */ + {0x024C,0x024C},{0x024D,0x024D}, /* 024C */ + {0x024E,0x024E},{0x024F,0x024F}, /* 024E */ + {0x0250,0x0250},{0x0251,0x0251}, /* 0250 */ + {0x0252,0x0252},{0x0181,0x0253}, /* 0252 */ + {0x0186,0x0254},{0x0255,0x0255}, /* 0254 */ + {0x0189,0x0256},{0x018A,0x0257}, /* 0256 */ + {0x0258,0x0258},{0x018F,0x0259}, /* 0258 */ + {0x025A,0x025A},{0x0190,0x025B}, /* 025A */ + {0x025C,0x025C},{0x025D,0x025D}, /* 025C */ + {0x025E,0x025E},{0x025F,0x025F}, /* 025E */ + {0x0193,0x0260},{0x0261,0x0261}, /* 0260 */ + {0x0262,0x0262},{0x0194,0x0263}, /* 0262 */ + {0x0264,0x0264},{0x0265,0x0265}, /* 0264 */ + {0x0266,0x0266},{0x0267,0x0267}, /* 0266 */ + {0x0197,0x0268},{0x0196,0x0269}, /* 0268 */ + {0x026A,0x026A},{0x026B,0x026B}, /* 026A */ + {0x026C,0x026C},{0x026D,0x026D}, /* 026C */ + {0x026E,0x026E},{0x019C,0x026F}, /* 026E */ + {0x0270,0x0270},{0x0271,0x0271}, /* 0270 */ + {0x019D,0x0272},{0x0273,0x0273}, /* 0272 */ + {0x0274,0x0274},{0x019F,0x0275}, /* 0274 */ + {0x0276,0x0276},{0x0277,0x0277}, /* 0276 */ + {0x0278,0x0278},{0x0279,0x0279}, /* 0278 */ + {0x027A,0x027A},{0x027B,0x027B}, /* 027A */ + {0x027C,0x027C},{0x027D,0x027D}, /* 027C */ + {0x027E,0x027E},{0x027F,0x027F}, /* 027E */ + {0x01A6,0x0280},{0x0281,0x0281}, /* 0280 */ + {0x0282,0x0282},{0x01A9,0x0283}, /* 0282 */ + {0x0284,0x0284},{0x0285,0x0285}, /* 0284 */ + {0x0286,0x0286},{0x0287,0x0287}, /* 0286 */ + {0x01AE,0x0288},{0x0289,0x0289}, /* 0288 */ + {0x01B1,0x028A},{0x01B2,0x028B}, /* 028A */ + {0x028C,0x028C},{0x028D,0x028D}, /* 028C */ + {0x028E,0x028E},{0x028F,0x028F}, /* 028E */ + {0x0290,0x0290},{0x0291,0x0291}, /* 0290 */ + {0x01B7,0x0292},{0x0293,0x0293}, /* 0292 */ + {0x0294,0x0294},{0x0295,0x0295}, /* 0294 */ + {0x0296,0x0296},{0x0297,0x0297}, /* 0296 */ + {0x0298,0x0298},{0x0299,0x0299}, /* 0298 */ + {0x029A,0x029A},{0x029B,0x029B}, /* 029A */ + {0x029C,0x029C},{0x029D,0x029D}, /* 029C */ + {0x029E,0x029E},{0x029F,0x029F}, /* 029E */ + {0x02A0,0x02A0},{0x02A1,0x02A1}, /* 02A0 */ + {0x02A2,0x02A2},{0x02A3,0x02A3}, /* 02A2 */ + {0x02A4,0x02A4},{0x02A5,0x02A5}, /* 02A4 */ + {0x02A6,0x02A6},{0x02A7,0x02A7}, /* 02A6 */ + {0x02A8,0x02A8},{0x02A9,0x02A9}, /* 02A8 */ + {0x02AA,0x02AA},{0x02AB,0x02AB}, /* 02AA */ + {0x02AC,0x02AC},{0x02AD,0x02AD}, /* 02AC */ + {0x02AE,0x02AE},{0x02AF,0x02AF}, /* 02AE */ + {0x02B0,0x02B0},{0x02B1,0x02B1}, /* 02B0 */ + {0x02B2,0x02B2},{0x02B3,0x02B3}, /* 02B2 */ + {0x02B4,0x02B4},{0x02B5,0x02B5}, /* 02B4 */ + {0x02B6,0x02B6},{0x02B7,0x02B7}, /* 02B6 */ + {0x02B8,0x02B8},{0x02B9,0x02B9}, /* 02B8 */ + {0x02BA,0x02BA},{0x02BB,0x02BB}, /* 02BA */ + {0x02BC,0x02BC},{0x02BD,0x02BD}, /* 02BC */ + {0x02BE,0x02BE},{0x02BF,0x02BF}, /* 02BE */ + {0x02C0,0x02C0},{0x02C1,0x02C1}, /* 02C0 */ + {0x02C2,0x02C2},{0x02C3,0x02C3}, /* 02C2 */ + {0x02C4,0x02C4},{0x02C5,0x02C5}, /* 02C4 */ + {0x02C6,0x02C6},{0x02C7,0x02C7}, /* 02C6 */ + {0x02C8,0x02C8},{0x02C9,0x02C9}, /* 02C8 */ + {0x02CA,0x02CA},{0x02CB,0x02CB}, /* 02CA */ + {0x02CC,0x02CC},{0x02CD,0x02CD}, /* 02CC */ + {0x02CE,0x02CE},{0x02CF,0x02CF}, /* 02CE */ + {0x02D0,0x02D0},{0x02D1,0x02D1}, /* 02D0 */ + {0x02D2,0x02D2},{0x02D3,0x02D3}, /* 02D2 */ + {0x02D4,0x02D4},{0x02D5,0x02D5}, /* 02D4 */ + {0x02D6,0x02D6},{0x02D7,0x02D7}, /* 02D6 */ + {0x02D8,0x02D8},{0x02D9,0x02D9}, /* 02D8 */ + {0x02DA,0x02DA},{0x02DB,0x02DB}, /* 02DA */ + {0x02DC,0x02DC},{0x02DD,0x02DD}, /* 02DC */ + {0x02DE,0x02DE},{0x02DF,0x02DF}, /* 02DE */ + {0x02E0,0x02E0},{0x02E1,0x02E1}, /* 02E0 */ + {0x02E2,0x02E2},{0x02E3,0x02E3}, /* 02E2 */ + {0x02E4,0x02E4},{0x02E5,0x02E5}, /* 02E4 */ + {0x02E6,0x02E6},{0x02E7,0x02E7}, /* 02E6 */ + {0x02E8,0x02E8},{0x02E9,0x02E9}, /* 02E8 */ + {0x02EA,0x02EA},{0x02EB,0x02EB}, /* 02EA */ + {0x02EC,0x02EC},{0x02ED,0x02ED}, /* 02EC */ + {0x02EE,0x02EE},{0x02EF,0x02EF}, /* 02EE */ + {0x02F0,0x02F0},{0x02F1,0x02F1}, /* 02F0 */ + {0x02F2,0x02F2},{0x02F3,0x02F3}, /* 02F2 */ + {0x02F4,0x02F4},{0x02F5,0x02F5}, /* 02F4 */ + {0x02F6,0x02F6},{0x02F7,0x02F7}, /* 02F6 */ + {0x02F8,0x02F8},{0x02F9,0x02F9}, /* 02F8 */ + {0x02FA,0x02FA},{0x02FB,0x02FB}, /* 02FA */ + {0x02FC,0x02FC},{0x02FD,0x02FD}, /* 02FC */ + {0x02FE,0x02FE},{0x02FF,0x02FF} /* 02FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page03[256]={ + {0x0300,0x0300},{0x0301,0x0301}, /* 0300 */ + {0x0302,0x0302},{0x0303,0x0303}, /* 0302 */ + {0x0304,0x0304},{0x0305,0x0305}, /* 0304 */ + {0x0306,0x0306},{0x0307,0x0307}, /* 0306 */ + {0x0308,0x0308},{0x0309,0x0309}, /* 0308 */ + {0x030A,0x030A},{0x030B,0x030B}, /* 030A */ + {0x030C,0x030C},{0x030D,0x030D}, /* 030C */ + {0x030E,0x030E},{0x030F,0x030F}, /* 030E */ + {0x0310,0x0310},{0x0311,0x0311}, /* 0310 */ + {0x0312,0x0312},{0x0313,0x0313}, /* 0312 */ + {0x0314,0x0314},{0x0315,0x0315}, /* 0314 */ + {0x0316,0x0316},{0x0317,0x0317}, /* 0316 */ + {0x0318,0x0318},{0x0319,0x0319}, /* 0318 */ + {0x031A,0x031A},{0x031B,0x031B}, /* 031A */ + {0x031C,0x031C},{0x031D,0x031D}, /* 031C */ + {0x031E,0x031E},{0x031F,0x031F}, /* 031E */ + {0x0320,0x0320},{0x0321,0x0321}, /* 0320 */ + {0x0322,0x0322},{0x0323,0x0323}, /* 0322 */ + {0x0324,0x0324},{0x0325,0x0325}, /* 0324 */ + {0x0326,0x0326},{0x0327,0x0327}, /* 0326 */ + {0x0328,0x0328},{0x0329,0x0329}, /* 0328 */ + {0x032A,0x032A},{0x032B,0x032B}, /* 032A */ + {0x032C,0x032C},{0x032D,0x032D}, /* 032C */ + {0x032E,0x032E},{0x032F,0x032F}, /* 032E */ + {0x0330,0x0330},{0x0331,0x0331}, /* 0330 */ + {0x0332,0x0332},{0x0333,0x0333}, /* 0332 */ + {0x0334,0x0334},{0x0335,0x0335}, /* 0334 */ + {0x0336,0x0336},{0x0337,0x0337}, /* 0336 */ + {0x0338,0x0338},{0x0339,0x0339}, /* 0338 */ + {0x033A,0x033A},{0x033B,0x033B}, /* 033A */ + {0x033C,0x033C},{0x033D,0x033D}, /* 033C */ + {0x033E,0x033E},{0x033F,0x033F}, /* 033E */ + {0x0340,0x0340},{0x0341,0x0341}, /* 0340 */ + {0x0342,0x0342},{0x0343,0x0343}, /* 0342 */ + {0x0344,0x0344},{0x0399,0x0345}, /* 0344 */ + {0x0346,0x0346},{0x0347,0x0347}, /* 0346 */ + {0x0348,0x0348},{0x0349,0x0349}, /* 0348 */ + {0x034A,0x034A},{0x034B,0x034B}, /* 034A */ + {0x034C,0x034C},{0x034D,0x034D}, /* 034C */ + {0x034E,0x034E},{0x034F,0x034F}, /* 034E */ + {0x0350,0x0350},{0x0351,0x0351}, /* 0350 */ + {0x0352,0x0352},{0x0353,0x0353}, /* 0352 */ + {0x0354,0x0354},{0x0355,0x0355}, /* 0354 */ + {0x0356,0x0356},{0x0357,0x0357}, /* 0356 */ + {0x0358,0x0358},{0x0359,0x0359}, /* 0358 */ + {0x035A,0x035A},{0x035B,0x035B}, /* 035A */ + {0x035C,0x035C},{0x035D,0x035D}, /* 035C */ + {0x035E,0x035E},{0x035F,0x035F}, /* 035E */ + {0x0360,0x0360},{0x0361,0x0361}, /* 0360 */ + {0x0362,0x0362},{0x0363,0x0363}, /* 0362 */ + {0x0364,0x0364},{0x0365,0x0365}, /* 0364 */ + {0x0366,0x0366},{0x0367,0x0367}, /* 0366 */ + {0x0368,0x0368},{0x0369,0x0369}, /* 0368 */ + {0x036A,0x036A},{0x036B,0x036B}, /* 036A */ + {0x036C,0x036C},{0x036D,0x036D}, /* 036C */ + {0x036E,0x036E},{0x036F,0x036F}, /* 036E */ + {0x0370,0x0370},{0x0371,0x0371}, /* 0370 */ + {0x0372,0x0372},{0x0373,0x0373}, /* 0372 */ + {0x0374,0x0374},{0x0375,0x0375}, /* 0374 */ + {0x0376,0x0376},{0x0377,0x0377}, /* 0376 */ + {0x0378,0x0378},{0x0379,0x0379}, /* 0378 */ + {0x037A,0x037A},{0x037B,0x037B}, /* 037A */ + {0x037C,0x037C},{0x037D,0x037D}, /* 037C */ + {0x037E,0x037E},{0x037F,0x037F}, /* 037E */ + {0x0380,0x0380},{0x0381,0x0381}, /* 0380 */ + {0x0382,0x0382},{0x0383,0x0383}, /* 0382 */ + {0x0384,0x0384},{0x0385,0x0385}, /* 0384 */ + {0x0386,0x03AC},{0x0387,0x0387}, /* 0386 */ + {0x0388,0x03AD},{0x0389,0x03AE}, /* 0388 */ + {0x038A,0x03AF},{0x038B,0x038B}, /* 038A */ + {0x038C,0x03CC},{0x038D,0x038D}, /* 038C */ + {0x038E,0x03CD},{0x038F,0x03CE}, /* 038E */ + {0x0390,0x0390},{0x0391,0x03B1}, /* 0390 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 0392 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 0394 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 0396 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 0398 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 039A */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 039C */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 039E */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03A0 */ + {0x03A2,0x03A2},{0x03A3,0x03C3}, /* 03A2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03A4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03A6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03A8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03AA */ + {0x0386,0x03AC},{0x0388,0x03AD}, /* 03AC */ + {0x0389,0x03AE},{0x038A,0x03AF}, /* 03AE */ + {0x03B0,0x03B0},{0x0391,0x03B1}, /* 03B0 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 03B2 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 03B4 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 03B6 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 03B8 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 03BA */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 03BC */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 03BE */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03C0 */ + {0x03A3,0x03C2},{0x03A3,0x03C3}, /* 03C2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03C4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03C6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03C8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03CA */ + {0x038C,0x03CC},{0x038E,0x03CD}, /* 03CC */ + {0x038F,0x03CE},{0x03CF,0x03CF}, /* 03CE */ + {0x0392,0x03D0},{0x0398,0x03D1}, /* 03D0 */ + {0x03D2,0x03D2},{0x03D3,0x03D3}, /* 03D2 */ + {0x03D4,0x03D4},{0x03A6,0x03D5}, /* 03D4 */ + {0x03A0,0x03D6},{0x03D7,0x03D7}, /* 03D6 */ + {0x03D8,0x03D8},{0x03D9,0x03D9}, /* 03D8 */ + {0x03DA,0x03DB},{0x03DA,0x03DB}, /* 03DA */ + {0x03DC,0x03DD},{0x03DC,0x03DD}, /* 03DC */ + {0x03DE,0x03DF},{0x03DE,0x03DF}, /* 03DE */ + {0x03E0,0x03E1},{0x03E0,0x03E1}, /* 03E0 */ + {0x03E2,0x03E3},{0x03E2,0x03E3}, /* 03E2 */ + {0x03E4,0x03E5},{0x03E4,0x03E5}, /* 03E4 */ + {0x03E6,0x03E7},{0x03E6,0x03E7}, /* 03E6 */ + {0x03E8,0x03E9},{0x03E8,0x03E9}, /* 03E8 */ + {0x03EA,0x03EB},{0x03EA,0x03EB}, /* 03EA */ + {0x03EC,0x03ED},{0x03EC,0x03ED}, /* 03EC */ + {0x03EE,0x03EF},{0x03EE,0x03EF}, /* 03EE */ + {0x039A,0x03F0},{0x03A1,0x03F1}, /* 03F0 */ + {0x03A3,0x03F2},{0x03F3,0x03F3}, /* 03F2 */ + {0x03F4,0x03F4},{0x03F5,0x03F5}, /* 03F4 */ + {0x03F6,0x03F6},{0x03F7,0x03F7}, /* 03F6 */ + {0x03F8,0x03F8},{0x03F9,0x03F9}, /* 03F8 */ + {0x03FA,0x03FA},{0x03FB,0x03FB}, /* 03FA */ + {0x03FC,0x03FC},{0x03FD,0x03FD}, /* 03FC */ + {0x03FE,0x03FE},{0x03FF,0x03FF} /* 03FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page04[256]={ + {0x0400,0x0450},{0x0401,0x0451}, /* 0400 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0402 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0404 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0406 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0408 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 040A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 040C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 040E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0410 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0412 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0414 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0416 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0418 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 041A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 041C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 041E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0420 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0422 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0424 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0426 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0428 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 042A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 042C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 042E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0430 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0432 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0434 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0436 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0438 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 043A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 043C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 043E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0440 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0442 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0444 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0446 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0448 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 044A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 044C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 044E */ + {0x0400,0x0450},{0x0401,0x0451}, /* 0450 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0452 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0454 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0456 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0458 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 045A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 045C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 045E */ + {0x0460,0x0461},{0x0460,0x0461}, /* 0460 */ + {0x0462,0x0463},{0x0462,0x0463}, /* 0462 */ + {0x0464,0x0465},{0x0464,0x0465}, /* 0464 */ + {0x0466,0x0467},{0x0466,0x0467}, /* 0466 */ + {0x0468,0x0469},{0x0468,0x0469}, /* 0468 */ + {0x046A,0x046B},{0x046A,0x046B}, /* 046A */ + {0x046C,0x046D},{0x046C,0x046D}, /* 046C */ + {0x046E,0x046F},{0x046E,0x046F}, /* 046E */ + {0x0470,0x0471},{0x0470,0x0471}, /* 0470 */ + {0x0472,0x0473},{0x0472,0x0473}, /* 0472 */ + {0x0474,0x0475},{0x0474,0x0475}, /* 0474 */ + {0x0476,0x0477},{0x0476,0x0477}, /* 0476 */ + {0x0478,0x0479},{0x0478,0x0479}, /* 0478 */ + {0x047A,0x047B},{0x047A,0x047B}, /* 047A */ + {0x047C,0x047D},{0x047C,0x047D}, /* 047C */ + {0x047E,0x047F},{0x047E,0x047F}, /* 047E */ + {0x0480,0x0481},{0x0480,0x0481}, /* 0480 */ + {0x0482,0x0482},{0x0483,0x0483}, /* 0482 */ + {0x0484,0x0484},{0x0485,0x0485}, /* 0484 */ + {0x0486,0x0486},{0x0487,0x0487}, /* 0486 */ + {0x0488,0x0488},{0x0489,0x0489}, /* 0488 */ + {0x048A,0x048A},{0x048B,0x048B}, /* 048A */ + {0x048C,0x048D},{0x048C,0x048D}, /* 048C */ + {0x048E,0x048F},{0x048E,0x048F}, /* 048E */ + {0x0490,0x0491},{0x0490,0x0491}, /* 0490 */ + {0x0492,0x0493},{0x0492,0x0493}, /* 0492 */ + {0x0494,0x0495},{0x0494,0x0495}, /* 0494 */ + {0x0496,0x0497},{0x0496,0x0497}, /* 0496 */ + {0x0498,0x0499},{0x0498,0x0499}, /* 0498 */ + {0x049A,0x049B},{0x049A,0x049B}, /* 049A */ + {0x049C,0x049D},{0x049C,0x049D}, /* 049C */ + {0x049E,0x049F},{0x049E,0x049F}, /* 049E */ + {0x04A0,0x04A1},{0x04A0,0x04A1}, /* 04A0 */ + {0x04A2,0x04A3},{0x04A2,0x04A3}, /* 04A2 */ + {0x04A4,0x04A5},{0x04A4,0x04A5}, /* 04A4 */ + {0x04A6,0x04A7},{0x04A6,0x04A7}, /* 04A6 */ + {0x04A8,0x04A9},{0x04A8,0x04A9}, /* 04A8 */ + {0x04AA,0x04AB},{0x04AA,0x04AB}, /* 04AA */ + {0x04AC,0x04AD},{0x04AC,0x04AD}, /* 04AC */ + {0x04AE,0x04AF},{0x04AE,0x04AF}, /* 04AE */ + {0x04B0,0x04B1},{0x04B0,0x04B1}, /* 04B0 */ + {0x04B2,0x04B3},{0x04B2,0x04B3}, /* 04B2 */ + {0x04B4,0x04B5},{0x04B4,0x04B5}, /* 04B4 */ + {0x04B6,0x04B7},{0x04B6,0x04B7}, /* 04B6 */ + {0x04B8,0x04B9},{0x04B8,0x04B9}, /* 04B8 */ + {0x04BA,0x04BB},{0x04BA,0x04BB}, /* 04BA */ + {0x04BC,0x04BD},{0x04BC,0x04BD}, /* 04BC */ + {0x04BE,0x04BF},{0x04BE,0x04BF}, /* 04BE */ + {0x04C0,0x04C0},{0x04C1,0x04C2}, /* 04C0 */ + {0x04C1,0x04C2},{0x04C3,0x04C4}, /* 04C2 */ + {0x04C3,0x04C4},{0x04C5,0x04C5}, /* 04C4 */ + {0x04C6,0x04C6},{0x04C7,0x04C8}, /* 04C6 */ + {0x04C7,0x04C8},{0x04C9,0x04C9}, /* 04C8 */ + {0x04CA,0x04CA},{0x04CB,0x04CC}, /* 04CA */ + {0x04CB,0x04CC},{0x04CD,0x04CD}, /* 04CC */ + {0x04CE,0x04CE},{0x04CF,0x04CF}, /* 04CE */ + {0x04D0,0x04D1},{0x04D0,0x04D1}, /* 04D0 */ + {0x04D2,0x04D3},{0x04D2,0x04D3}, /* 04D2 */ + {0x04D4,0x04D5},{0x04D4,0x04D5}, /* 04D4 */ + {0x04D6,0x04D7},{0x04D6,0x04D7}, /* 04D6 */ + {0x04D8,0x04D9},{0x04D8,0x04D9}, /* 04D8 */ + {0x04DA,0x04DB},{0x04DA,0x04DB}, /* 04DA */ + {0x04DC,0x04DD},{0x04DC,0x04DD}, /* 04DC */ + {0x04DE,0x04DF},{0x04DE,0x04DF}, /* 04DE */ + {0x04E0,0x04E1},{0x04E0,0x04E1}, /* 04E0 */ + {0x04E2,0x04E3},{0x04E2,0x04E3}, /* 04E2 */ + {0x04E4,0x04E5},{0x04E4,0x04E5}, /* 04E4 */ + {0x04E6,0x04E7},{0x04E6,0x04E7}, /* 04E6 */ + {0x04E8,0x04E9},{0x04E8,0x04E9}, /* 04E8 */ + {0x04EA,0x04EB},{0x04EA,0x04EB}, /* 04EA */ + {0x04EC,0x04ED},{0x04EC,0x04ED}, /* 04EC */ + {0x04EE,0x04EF},{0x04EE,0x04EF}, /* 04EE */ + {0x04F0,0x04F1},{0x04F0,0x04F1}, /* 04F0 */ + {0x04F2,0x04F3},{0x04F2,0x04F3}, /* 04F2 */ + {0x04F4,0x04F5},{0x04F4,0x04F5}, /* 04F4 */ + {0x04F6,0x04F6},{0x04F7,0x04F7}, /* 04F6 */ + {0x04F8,0x04F9},{0x04F8,0x04F9}, /* 04F8 */ + {0x04FA,0x04FA},{0x04FB,0x04FB}, /* 04FA */ + {0x04FC,0x04FC},{0x04FD,0x04FD}, /* 04FC */ + {0x04FE,0x04FE},{0x04FF,0x04FF} /* 04FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page05[256]={ + {0x0500,0x0500},{0x0501,0x0501}, /* 0500 */ + {0x0502,0x0502},{0x0503,0x0503}, /* 0502 */ + {0x0504,0x0504},{0x0505,0x0505}, /* 0504 */ + {0x0506,0x0506},{0x0507,0x0507}, /* 0506 */ + {0x0508,0x0508},{0x0509,0x0509}, /* 0508 */ + {0x050A,0x050A},{0x050B,0x050B}, /* 050A */ + {0x050C,0x050C},{0x050D,0x050D}, /* 050C */ + {0x050E,0x050E},{0x050F,0x050F}, /* 050E */ + {0x0510,0x0510},{0x0511,0x0511}, /* 0510 */ + {0x0512,0x0512},{0x0513,0x0513}, /* 0512 */ + {0x0514,0x0514},{0x0515,0x0515}, /* 0514 */ + {0x0516,0x0516},{0x0517,0x0517}, /* 0516 */ + {0x0518,0x0518},{0x0519,0x0519}, /* 0518 */ + {0x051A,0x051A},{0x051B,0x051B}, /* 051A */ + {0x051C,0x051C},{0x051D,0x051D}, /* 051C */ + {0x051E,0x051E},{0x051F,0x051F}, /* 051E */ + {0x0520,0x0520},{0x0521,0x0521}, /* 0520 */ + {0x0522,0x0522},{0x0523,0x0523}, /* 0522 */ + {0x0524,0x0524},{0x0525,0x0525}, /* 0524 */ + {0x0526,0x0526},{0x0527,0x0527}, /* 0526 */ + {0x0528,0x0528},{0x0529,0x0529}, /* 0528 */ + {0x052A,0x052A},{0x052B,0x052B}, /* 052A */ + {0x052C,0x052C},{0x052D,0x052D}, /* 052C */ + {0x052E,0x052E},{0x052F,0x052F}, /* 052E */ + {0x0530,0x0530},{0x0531,0x0561}, /* 0530 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0532 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0534 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0536 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0538 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 053A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 053C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 053E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0540 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0542 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0544 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0546 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0548 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 054A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 054C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 054E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0550 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0552 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0554 */ + {0x0556,0x0586},{0x0557,0x0557}, /* 0556 */ + {0x0558,0x0558},{0x0559,0x0559}, /* 0558 */ + {0x055A,0x055A},{0x055B,0x055B}, /* 055A */ + {0x055C,0x055C},{0x055D,0x055D}, /* 055C */ + {0x055E,0x055E},{0x055F,0x055F}, /* 055E */ + {0x0560,0x0560},{0x0531,0x0561}, /* 0560 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0562 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0564 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0566 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0568 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 056A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 056C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 056E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0570 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0572 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0574 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0576 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0578 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 057A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 057C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 057E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0580 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0582 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0584 */ + {0x0556,0x0586},{0x0587,0x0587}, /* 0586 */ + {0x0588,0x0588},{0x0589,0x0589}, /* 0588 */ + {0x058A,0x058A},{0x058B,0x058B}, /* 058A */ + {0x058C,0x058C},{0x058D,0x058D}, /* 058C */ + {0x058E,0x058E},{0x058F,0x058F}, /* 058E */ + {0x0590,0x0590},{0x0591,0x0591}, /* 0590 */ + {0x0592,0x0592},{0x0593,0x0593}, /* 0592 */ + {0x0594,0x0594},{0x0595,0x0595}, /* 0594 */ + {0x0596,0x0596},{0x0597,0x0597}, /* 0596 */ + {0x0598,0x0598},{0x0599,0x0599}, /* 0598 */ + {0x059A,0x059A},{0x059B,0x059B}, /* 059A */ + {0x059C,0x059C},{0x059D,0x059D}, /* 059C */ + {0x059E,0x059E},{0x059F,0x059F}, /* 059E */ + {0x05A0,0x05A0},{0x05A1,0x05A1}, /* 05A0 */ + {0x05A2,0x05A2},{0x05A3,0x05A3}, /* 05A2 */ + {0x05A4,0x05A4},{0x05A5,0x05A5}, /* 05A4 */ + {0x05A6,0x05A6},{0x05A7,0x05A7}, /* 05A6 */ + {0x05A8,0x05A8},{0x05A9,0x05A9}, /* 05A8 */ + {0x05AA,0x05AA},{0x05AB,0x05AB}, /* 05AA */ + {0x05AC,0x05AC},{0x05AD,0x05AD}, /* 05AC */ + {0x05AE,0x05AE},{0x05AF,0x05AF}, /* 05AE */ + {0x05B0,0x05B0},{0x05B1,0x05B1}, /* 05B0 */ + {0x05B2,0x05B2},{0x05B3,0x05B3}, /* 05B2 */ + {0x05B4,0x05B4},{0x05B5,0x05B5}, /* 05B4 */ + {0x05B6,0x05B6},{0x05B7,0x05B7}, /* 05B6 */ + {0x05B8,0x05B8},{0x05B9,0x05B9}, /* 05B8 */ + {0x05BA,0x05BA},{0x05BB,0x05BB}, /* 05BA */ + {0x05BC,0x05BC},{0x05BD,0x05BD}, /* 05BC */ + {0x05BE,0x05BE},{0x05BF,0x05BF}, /* 05BE */ + {0x05C0,0x05C0},{0x05C1,0x05C1}, /* 05C0 */ + {0x05C2,0x05C2},{0x05C3,0x05C3}, /* 05C2 */ + {0x05C4,0x05C4},{0x05C5,0x05C5}, /* 05C4 */ + {0x05C6,0x05C6},{0x05C7,0x05C7}, /* 05C6 */ + {0x05C8,0x05C8},{0x05C9,0x05C9}, /* 05C8 */ + {0x05CA,0x05CA},{0x05CB,0x05CB}, /* 05CA */ + {0x05CC,0x05CC},{0x05CD,0x05CD}, /* 05CC */ + {0x05CE,0x05CE},{0x05CF,0x05CF}, /* 05CE */ + {0x05D0,0x05D0},{0x05D1,0x05D1}, /* 05D0 */ + {0x05D2,0x05D2},{0x05D3,0x05D3}, /* 05D2 */ + {0x05D4,0x05D4},{0x05D5,0x05D5}, /* 05D4 */ + {0x05D6,0x05D6},{0x05D7,0x05D7}, /* 05D6 */ + {0x05D8,0x05D8},{0x05D9,0x05D9}, /* 05D8 */ + {0x05DA,0x05DA},{0x05DB,0x05DB}, /* 05DA */ + {0x05DC,0x05DC},{0x05DD,0x05DD}, /* 05DC */ + {0x05DE,0x05DE},{0x05DF,0x05DF}, /* 05DE */ + {0x05E0,0x05E0},{0x05E1,0x05E1}, /* 05E0 */ + {0x05E2,0x05E2},{0x05E3,0x05E3}, /* 05E2 */ + {0x05E4,0x05E4},{0x05E5,0x05E5}, /* 05E4 */ + {0x05E6,0x05E6},{0x05E7,0x05E7}, /* 05E6 */ + {0x05E8,0x05E8},{0x05E9,0x05E9}, /* 05E8 */ + {0x05EA,0x05EA},{0x05EB,0x05EB}, /* 05EA */ + {0x05EC,0x05EC},{0x05ED,0x05ED}, /* 05EC */ + {0x05EE,0x05EE},{0x05EF,0x05EF}, /* 05EE */ + {0x05F0,0x05F0},{0x05F1,0x05F1}, /* 05F0 */ + {0x05F2,0x05F2},{0x05F3,0x05F3}, /* 05F2 */ + {0x05F4,0x05F4},{0x05F5,0x05F5}, /* 05F4 */ + {0x05F6,0x05F6},{0x05F7,0x05F7}, /* 05F6 */ + {0x05F8,0x05F8},{0x05F9,0x05F9}, /* 05F8 */ + {0x05FA,0x05FA},{0x05FB,0x05FB}, /* 05FA */ + {0x05FC,0x05FC},{0x05FD,0x05FD}, /* 05FC */ + {0x05FE,0x05FE},{0x05FF,0x05FF} /* 05FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page06[256]={ /* This page is dummy */ + {0x0600,0x0600},{0x0601,0x0601}, /* 0600 */ + {0x0602,0x0602},{0x0603,0x0603}, /* 0602 */ + {0x0604,0x0604},{0x0605,0x0605}, /* 0604 */ + {0x0606,0x0606},{0x0607,0x0607}, /* 0606 */ + {0x0608,0x0608},{0x0609,0x0609}, /* 0608 */ + {0x060A,0x060A},{0x060B,0x060B}, /* 060A */ + {0x060C,0x060C},{0x060D,0x060D}, /* 060C */ + {0x060E,0x060E},{0x060F,0x060F}, /* 060E */ + {0x0610,0x0610},{0x0611,0x0611}, /* 0610 */ + {0x0612,0x0612},{0x0613,0x0613}, /* 0612 */ + {0x0614,0x0614},{0x0615,0x0615}, /* 0614 */ + {0x0616,0x0616},{0x0617,0x0617}, /* 0616 */ + {0x0618,0x0618},{0x0619,0x0619}, /* 0618 */ + {0x061A,0x061A},{0x061B,0x061B}, /* 061A */ + {0x061C,0x061C},{0x061D,0x061D}, /* 061C */ + {0x061E,0x061E},{0x061F,0x061F}, /* 061E */ + {0x0620,0x0620},{0x0621,0x0621}, /* 0620 */ + {0x0622,0x0622},{0x0623,0x0623}, /* 0622 */ + {0x0624,0x0624},{0x0625,0x0625}, /* 0624 */ + {0x0626,0x0626},{0x0627,0x0627}, /* 0626 */ + {0x0628,0x0628},{0x0629,0x0629}, /* 0628 */ + {0x062A,0x062A},{0x062B,0x062B}, /* 062A */ + {0x062C,0x062C},{0x062D,0x062D}, /* 062C */ + {0x062E,0x062E},{0x062F,0x062F}, /* 062E */ + {0x0630,0x0630},{0x0631,0x0631}, /* 0630 */ + {0x0632,0x0632},{0x0633,0x0633}, /* 0632 */ + {0x0634,0x0634},{0x0635,0x0635}, /* 0634 */ + {0x0636,0x0636},{0x0637,0x0637}, /* 0636 */ + {0x0638,0x0638},{0x0639,0x0639}, /* 0638 */ + {0x063A,0x063A},{0x063B,0x063B}, /* 063A */ + {0x063C,0x063C},{0x063D,0x063D}, /* 063C */ + {0x063E,0x063E},{0x063F,0x063F}, /* 063E */ + {0x0640,0x0640},{0x0641,0x0641}, /* 0640 */ + {0x0642,0x0642},{0x0643,0x0643}, /* 0642 */ + {0x0644,0x0644},{0x0645,0x0645}, /* 0644 */ + {0x0646,0x0646},{0x0647,0x0647}, /* 0646 */ + {0x0648,0x0648},{0x0649,0x0649}, /* 0648 */ + {0x064A,0x064A},{0x064B,0x064B}, /* 064A */ + {0x064C,0x064C},{0x064D,0x064D}, /* 064C */ + {0x064E,0x064E},{0x064F,0x064F}, /* 064E */ + {0x0650,0x0650},{0x0651,0x0651}, /* 0650 */ + {0x0652,0x0652},{0x0653,0x0653}, /* 0652 */ + {0x0654,0x0654},{0x0655,0x0655}, /* 0654 */ + {0x0656,0x0656},{0x0657,0x0657}, /* 0656 */ + {0x0658,0x0658},{0x0659,0x0659}, /* 0658 */ + {0x065A,0x065A},{0x065B,0x065B}, /* 065A */ + {0x065C,0x065C},{0x065D,0x065D}, /* 065C */ + {0x065E,0x065E},{0x065F,0x065F}, /* 065E */ + {0x0660,0x0660},{0x0661,0x0661}, /* 0660 */ + {0x0662,0x0662},{0x0663,0x0663}, /* 0662 */ + {0x0664,0x0664},{0x0665,0x0665}, /* 0664 */ + {0x0666,0x0666},{0x0667,0x0667}, /* 0666 */ + {0x0668,0x0668},{0x0669,0x0669}, /* 0668 */ + {0x066A,0x066A},{0x066B,0x066B}, /* 066A */ + {0x066C,0x066C},{0x066D,0x066D}, /* 066C */ + {0x066E,0x066E},{0x066F,0x066F}, /* 066E */ + {0x0670,0x0670},{0x0671,0x0671}, /* 0670 */ + {0x0672,0x0672},{0x0673,0x0673}, /* 0672 */ + {0x0674,0x0674},{0x0675,0x0675}, /* 0674 */ + {0x0676,0x0676},{0x0677,0x0677}, /* 0676 */ + {0x0678,0x0678},{0x0679,0x0679}, /* 0678 */ + {0x067A,0x067A},{0x067B,0x067B}, /* 067A */ + {0x067C,0x067C},{0x067D,0x067D}, /* 067C */ + {0x067E,0x067E},{0x067F,0x067F}, /* 067E */ + {0x0680,0x0680},{0x0681,0x0681}, /* 0680 */ + {0x0682,0x0682},{0x0683,0x0683}, /* 0682 */ + {0x0684,0x0684},{0x0685,0x0685}, /* 0684 */ + {0x0686,0x0686},{0x0687,0x0687}, /* 0686 */ + {0x0688,0x0688},{0x0689,0x0689}, /* 0688 */ + {0x068A,0x068A},{0x068B,0x068B}, /* 068A */ + {0x068C,0x068C},{0x068D,0x068D}, /* 068C */ + {0x068E,0x068E},{0x068F,0x068F}, /* 068E */ + {0x0690,0x0690},{0x0691,0x0691}, /* 0690 */ + {0x0692,0x0692},{0x0693,0x0693}, /* 0692 */ + {0x0694,0x0694},{0x0695,0x0695}, /* 0694 */ + {0x0696,0x0696},{0x0697,0x0697}, /* 0696 */ + {0x0698,0x0698},{0x0699,0x0699}, /* 0698 */ + {0x069A,0x069A},{0x069B,0x069B}, /* 069A */ + {0x069C,0x069C},{0x069D,0x069D}, /* 069C */ + {0x069E,0x069E},{0x069F,0x069F}, /* 069E */ + {0x06A0,0x06A0},{0x06A1,0x06A1}, /* 06A0 */ + {0x06A2,0x06A2},{0x06A3,0x06A3}, /* 06A2 */ + {0x06A4,0x06A4},{0x06A5,0x06A5}, /* 06A4 */ + {0x06A6,0x06A6},{0x06A7,0x06A7}, /* 06A6 */ + {0x06A8,0x06A8},{0x06A9,0x06A9}, /* 06A8 */ + {0x06AA,0x06AA},{0x06AB,0x06AB}, /* 06AA */ + {0x06AC,0x06AC},{0x06AD,0x06AD}, /* 06AC */ + {0x06AE,0x06AE},{0x06AF,0x06AF}, /* 06AE */ + {0x06B0,0x06B0},{0x06B1,0x06B1}, /* 06B0 */ + {0x06B2,0x06B2},{0x06B3,0x06B3}, /* 06B2 */ + {0x06B4,0x06B4},{0x06B5,0x06B5}, /* 06B4 */ + {0x06B6,0x06B6},{0x06B7,0x06B7}, /* 06B6 */ + {0x06B8,0x06B8},{0x06B9,0x06B9}, /* 06B8 */ + {0x06BA,0x06BA},{0x06BB,0x06BB}, /* 06BA */ + {0x06BC,0x06BC},{0x06BD,0x06BD}, /* 06BC */ + {0x06BE,0x06BE},{0x06BF,0x06BF}, /* 06BE */ + {0x06C0,0x06C0},{0x06C1,0x06C1}, /* 06C0 */ + {0x06C2,0x06C2},{0x06C3,0x06C3}, /* 06C2 */ + {0x06C4,0x06C4},{0x06C5,0x06C5}, /* 06C4 */ + {0x06C6,0x06C6},{0x06C7,0x06C7}, /* 06C6 */ + {0x06C8,0x06C8},{0x06C9,0x06C9}, /* 06C8 */ + {0x06CA,0x06CA},{0x06CB,0x06CB}, /* 06CA */ + {0x06CC,0x06CC},{0x06CD,0x06CD}, /* 06CC */ + {0x06CE,0x06CE},{0x06CF,0x06CF}, /* 06CE */ + {0x06D0,0x06D0},{0x06D1,0x06D1}, /* 06D0 */ + {0x06D2,0x06D2},{0x06D3,0x06D3}, /* 06D2 */ + {0x06D4,0x06D4},{0x06D5,0x06D5}, /* 06D4 */ + {0x06D6,0x06D6},{0x06D7,0x06D7}, /* 06D6 */ + {0x06D8,0x06D8},{0x06D9,0x06D9}, /* 06D8 */ + {0x06DA,0x06DA},{0x06DB,0x06DB}, /* 06DA */ + {0x06DC,0x06DC},{0x06DD,0x06DD}, /* 06DC */ + {0x06DE,0x06DE},{0x06DF,0x06DF}, /* 06DE */ + {0x06E0,0x06E0},{0x06E1,0x06E1}, /* 06E0 */ + {0x06E2,0x06E2},{0x06E3,0x06E3}, /* 06E2 */ + {0x06E4,0x06E4},{0x06E5,0x06E5}, /* 06E4 */ + {0x06E6,0x06E6},{0x06E7,0x06E7}, /* 06E6 */ + {0x06E8,0x06E8},{0x06E9,0x06E9}, /* 06E8 */ + {0x06EA,0x06EA},{0x06EB,0x06EB}, /* 06EA */ + {0x06EC,0x06EC},{0x06ED,0x06ED}, /* 06EC */ + {0x06EE,0x06EE},{0x06EF,0x06EF}, /* 06EE */ + {0x06F0,0x06F0},{0x06F1,0x06F1}, /* 06F0 */ + {0x06F2,0x06F2},{0x06F3,0x06F3}, /* 06F2 */ + {0x06F4,0x06F4},{0x06F5,0x06F5}, /* 06F4 */ + {0x06F6,0x06F6},{0x06F7,0x06F7}, /* 06F6 */ + {0x06F8,0x06F8},{0x06F9,0x06F9}, /* 06F8 */ + {0x06FA,0x06FA},{0x06FB,0x06FB}, /* 06FA */ + {0x06FC,0x06FC},{0x06FD,0x06FD}, /* 06FC */ + {0x06FE,0x06FE},{0x06FF,0x06FF} /* 06FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page07[256]={ /* This page is dummy */ + {0x0700,0x0700},{0x0701,0x0701}, /* 0700 */ + {0x0702,0x0702},{0x0703,0x0703}, /* 0702 */ + {0x0704,0x0704},{0x0705,0x0705}, /* 0704 */ + {0x0706,0x0706},{0x0707,0x0707}, /* 0706 */ + {0x0708,0x0708},{0x0709,0x0709}, /* 0708 */ + {0x070A,0x070A},{0x070B,0x070B}, /* 070A */ + {0x070C,0x070C},{0x070D,0x070D}, /* 070C */ + {0x070E,0x070E},{0x070F,0x070F}, /* 070E */ + {0x0710,0x0710},{0x0711,0x0711}, /* 0710 */ + {0x0712,0x0712},{0x0713,0x0713}, /* 0712 */ + {0x0714,0x0714},{0x0715,0x0715}, /* 0714 */ + {0x0716,0x0716},{0x0717,0x0717}, /* 0716 */ + {0x0718,0x0718},{0x0719,0x0719}, /* 0718 */ + {0x071A,0x071A},{0x071B,0x071B}, /* 071A */ + {0x071C,0x071C},{0x071D,0x071D}, /* 071C */ + {0x071E,0x071E},{0x071F,0x071F}, /* 071E */ + {0x0720,0x0720},{0x0721,0x0721}, /* 0720 */ + {0x0722,0x0722},{0x0723,0x0723}, /* 0722 */ + {0x0724,0x0724},{0x0725,0x0725}, /* 0724 */ + {0x0726,0x0726},{0x0727,0x0727}, /* 0726 */ + {0x0728,0x0728},{0x0729,0x0729}, /* 0728 */ + {0x072A,0x072A},{0x072B,0x072B}, /* 072A */ + {0x072C,0x072C},{0x072D,0x072D}, /* 072C */ + {0x072E,0x072E},{0x072F,0x072F}, /* 072E */ + {0x0730,0x0730},{0x0731,0x0731}, /* 0730 */ + {0x0732,0x0732},{0x0733,0x0733}, /* 0732 */ + {0x0734,0x0734},{0x0735,0x0735}, /* 0734 */ + {0x0736,0x0736},{0x0737,0x0737}, /* 0736 */ + {0x0738,0x0738},{0x0739,0x0739}, /* 0738 */ + {0x073A,0x073A},{0x073B,0x073B}, /* 073A */ + {0x073C,0x073C},{0x073D,0x073D}, /* 073C */ + {0x073E,0x073E},{0x073F,0x073F}, /* 073E */ + {0x0740,0x0740},{0x0741,0x0741}, /* 0740 */ + {0x0742,0x0742},{0x0743,0x0743}, /* 0742 */ + {0x0744,0x0744},{0x0745,0x0745}, /* 0744 */ + {0x0746,0x0746},{0x0747,0x0747}, /* 0746 */ + {0x0748,0x0748},{0x0749,0x0749}, /* 0748 */ + {0x074A,0x074A},{0x074B,0x074B}, /* 074A */ + {0x074C,0x074C},{0x074D,0x074D}, /* 074C */ + {0x074E,0x074E},{0x074F,0x074F}, /* 074E */ + {0x0750,0x0750},{0x0751,0x0751}, /* 0750 */ + {0x0752,0x0752},{0x0753,0x0753}, /* 0752 */ + {0x0754,0x0754},{0x0755,0x0755}, /* 0754 */ + {0x0756,0x0756},{0x0757,0x0757}, /* 0756 */ + {0x0758,0x0758},{0x0759,0x0759}, /* 0758 */ + {0x075A,0x075A},{0x075B,0x075B}, /* 075A */ + {0x075C,0x075C},{0x075D,0x075D}, /* 075C */ + {0x075E,0x075E},{0x075F,0x075F}, /* 075E */ + {0x0760,0x0760},{0x0761,0x0761}, /* 0760 */ + {0x0762,0x0762},{0x0763,0x0763}, /* 0762 */ + {0x0764,0x0764},{0x0765,0x0765}, /* 0764 */ + {0x0766,0x0766},{0x0767,0x0767}, /* 0766 */ + {0x0768,0x0768},{0x0769,0x0769}, /* 0768 */ + {0x076A,0x076A},{0x076B,0x076B}, /* 076A */ + {0x076C,0x076C},{0x076D,0x076D}, /* 076C */ + {0x076E,0x076E},{0x076F,0x076F}, /* 076E */ + {0x0770,0x0770},{0x0771,0x0771}, /* 0770 */ + {0x0772,0x0772},{0x0773,0x0773}, /* 0772 */ + {0x0774,0x0774},{0x0775,0x0775}, /* 0774 */ + {0x0776,0x0776},{0x0777,0x0777}, /* 0776 */ + {0x0778,0x0778},{0x0779,0x0779}, /* 0778 */ + {0x077A,0x077A},{0x077B,0x077B}, /* 077A */ + {0x077C,0x077C},{0x077D,0x077D}, /* 077C */ + {0x077E,0x077E},{0x077F,0x077F}, /* 077E */ + {0x0780,0x0780},{0x0781,0x0781}, /* 0780 */ + {0x0782,0x0782},{0x0783,0x0783}, /* 0782 */ + {0x0784,0x0784},{0x0785,0x0785}, /* 0784 */ + {0x0786,0x0786},{0x0787,0x0787}, /* 0786 */ + {0x0788,0x0788},{0x0789,0x0789}, /* 0788 */ + {0x078A,0x078A},{0x078B,0x078B}, /* 078A */ + {0x078C,0x078C},{0x078D,0x078D}, /* 078C */ + {0x078E,0x078E},{0x078F,0x078F}, /* 078E */ + {0x0790,0x0790},{0x0791,0x0791}, /* 0790 */ + {0x0792,0x0792},{0x0793,0x0793}, /* 0792 */ + {0x0794,0x0794},{0x0795,0x0795}, /* 0794 */ + {0x0796,0x0796},{0x0797,0x0797}, /* 0796 */ + {0x0798,0x0798},{0x0799,0x0799}, /* 0798 */ + {0x079A,0x079A},{0x079B,0x079B}, /* 079A */ + {0x079C,0x079C},{0x079D,0x079D}, /* 079C */ + {0x079E,0x079E},{0x079F,0x079F}, /* 079E */ + {0x07A0,0x07A0},{0x07A1,0x07A1}, /* 07A0 */ + {0x07A2,0x07A2},{0x07A3,0x07A3}, /* 07A2 */ + {0x07A4,0x07A4},{0x07A5,0x07A5}, /* 07A4 */ + {0x07A6,0x07A6},{0x07A7,0x07A7}, /* 07A6 */ + {0x07A8,0x07A8},{0x07A9,0x07A9}, /* 07A8 */ + {0x07AA,0x07AA},{0x07AB,0x07AB}, /* 07AA */ + {0x07AC,0x07AC},{0x07AD,0x07AD}, /* 07AC */ + {0x07AE,0x07AE},{0x07AF,0x07AF}, /* 07AE */ + {0x07B0,0x07B0},{0x07B1,0x07B1}, /* 07B0 */ + {0x07B2,0x07B2},{0x07B3,0x07B3}, /* 07B2 */ + {0x07B4,0x07B4},{0x07B5,0x07B5}, /* 07B4 */ + {0x07B6,0x07B6},{0x07B7,0x07B7}, /* 07B6 */ + {0x07B8,0x07B8},{0x07B9,0x07B9}, /* 07B8 */ + {0x07BA,0x07BA},{0x07BB,0x07BB}, /* 07BA */ + {0x07BC,0x07BC},{0x07BD,0x07BD}, /* 07BC */ + {0x07BE,0x07BE},{0x07BF,0x07BF}, /* 07BE */ + {0x07C0,0x07C0},{0x07C1,0x07C1}, /* 07C0 */ + {0x07C2,0x07C2},{0x07C3,0x07C3}, /* 07C2 */ + {0x07C4,0x07C4},{0x07C5,0x07C5}, /* 07C4 */ + {0x07C6,0x07C6},{0x07C7,0x07C7}, /* 07C6 */ + {0x07C8,0x07C8},{0x07C9,0x07C9}, /* 07C8 */ + {0x07CA,0x07CA},{0x07CB,0x07CB}, /* 07CA */ + {0x07CC,0x07CC},{0x07CD,0x07CD}, /* 07CC */ + {0x07CE,0x07CE},{0x07CF,0x07CF}, /* 07CE */ + {0x07D0,0x07D0},{0x07D1,0x07D1}, /* 07D0 */ + {0x07D2,0x07D2},{0x07D3,0x07D3}, /* 07D2 */ + {0x07D4,0x07D4},{0x07D5,0x07D5}, /* 07D4 */ + {0x07D6,0x07D6},{0x07D7,0x07D7}, /* 07D6 */ + {0x07D8,0x07D8},{0x07D9,0x07D9}, /* 07D8 */ + {0x07DA,0x07DA},{0x07DB,0x07DB}, /* 07DA */ + {0x07DC,0x07DC},{0x07DD,0x07DD}, /* 07DC */ + {0x07DE,0x07DE},{0x07DF,0x07DF}, /* 07DE */ + {0x07E0,0x07E0},{0x07E1,0x07E1}, /* 07E0 */ + {0x07E2,0x07E2},{0x07E3,0x07E3}, /* 07E2 */ + {0x07E4,0x07E4},{0x07E5,0x07E5}, /* 07E4 */ + {0x07E6,0x07E6},{0x07E7,0x07E7}, /* 07E6 */ + {0x07E8,0x07E8},{0x07E9,0x07E9}, /* 07E8 */ + {0x07EA,0x07EA},{0x07EB,0x07EB}, /* 07EA */ + {0x07EC,0x07EC},{0x07ED,0x07ED}, /* 07EC */ + {0x07EE,0x07EE},{0x07EF,0x07EF}, /* 07EE */ + {0x07F0,0x07F0},{0x07F1,0x07F1}, /* 07F0 */ + {0x07F2,0x07F2},{0x07F3,0x07F3}, /* 07F2 */ + {0x07F4,0x07F4},{0x07F5,0x07F5}, /* 07F4 */ + {0x07F6,0x07F6},{0x07F7,0x07F7}, /* 07F6 */ + {0x07F8,0x07F8},{0x07F9,0x07F9}, /* 07F8 */ + {0x07FA,0x07FA},{0x07FB,0x07FB}, /* 07FA */ + {0x07FC,0x07FC},{0x07FD,0x07FD}, /* 07FC */ + {0x07FE,0x07FE},{0x07FF,0x07FF} /* 07FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page1E[256]={ + {0x1E00,0x1E01},{0x1E00,0x1E01}, /* 1E00 */ + {0x1E02,0x1E03},{0x1E02,0x1E03}, /* 1E02 */ + {0x1E04,0x1E05},{0x1E04,0x1E05}, /* 1E04 */ + {0x1E06,0x1E07},{0x1E06,0x1E07}, /* 1E06 */ + {0x1E08,0x1E09},{0x1E08,0x1E09}, /* 1E08 */ + {0x1E0A,0x1E0B},{0x1E0A,0x1E0B}, /* 1E0A */ + {0x1E0C,0x1E0D},{0x1E0C,0x1E0D}, /* 1E0C */ + {0x1E0E,0x1E0F},{0x1E0E,0x1E0F}, /* 1E0E */ + {0x1E10,0x1E11},{0x1E10,0x1E11}, /* 1E10 */ + {0x1E12,0x1E13},{0x1E12,0x1E13}, /* 1E12 */ + {0x1E14,0x1E15},{0x1E14,0x1E15}, /* 1E14 */ + {0x1E16,0x1E17},{0x1E16,0x1E17}, /* 1E16 */ + {0x1E18,0x1E19},{0x1E18,0x1E19}, /* 1E18 */ + {0x1E1A,0x1E1B},{0x1E1A,0x1E1B}, /* 1E1A */ + {0x1E1C,0x1E1D},{0x1E1C,0x1E1D}, /* 1E1C */ + {0x1E1E,0x1E1F},{0x1E1E,0x1E1F}, /* 1E1E */ + {0x1E20,0x1E21},{0x1E20,0x1E21}, /* 1E20 */ + {0x1E22,0x1E23},{0x1E22,0x1E23}, /* 1E22 */ + {0x1E24,0x1E25},{0x1E24,0x1E25}, /* 1E24 */ + {0x1E26,0x1E27},{0x1E26,0x1E27}, /* 1E26 */ + {0x1E28,0x1E29},{0x1E28,0x1E29}, /* 1E28 */ + {0x1E2A,0x1E2B},{0x1E2A,0x1E2B}, /* 1E2A */ + {0x1E2C,0x1E2D},{0x1E2C,0x1E2D}, /* 1E2C */ + {0x1E2E,0x1E2F},{0x1E2E,0x1E2F}, /* 1E2E */ + {0x1E30,0x1E31},{0x1E30,0x1E31}, /* 1E30 */ + {0x1E32,0x1E33},{0x1E32,0x1E33}, /* 1E32 */ + {0x1E34,0x1E35},{0x1E34,0x1E35}, /* 1E34 */ + {0x1E36,0x1E37},{0x1E36,0x1E37}, /* 1E36 */ + {0x1E38,0x1E39},{0x1E38,0x1E39}, /* 1E38 */ + {0x1E3A,0x1E3B},{0x1E3A,0x1E3B}, /* 1E3A */ + {0x1E3C,0x1E3D},{0x1E3C,0x1E3D}, /* 1E3C */ + {0x1E3E,0x1E3F},{0x1E3E,0x1E3F}, /* 1E3E */ + {0x1E40,0x1E41},{0x1E40,0x1E41}, /* 1E40 */ + {0x1E42,0x1E43},{0x1E42,0x1E43}, /* 1E42 */ + {0x1E44,0x1E45},{0x1E44,0x1E45}, /* 1E44 */ + {0x1E46,0x1E47},{0x1E46,0x1E47}, /* 1E46 */ + {0x1E48,0x1E49},{0x1E48,0x1E49}, /* 1E48 */ + {0x1E4A,0x1E4B},{0x1E4A,0x1E4B}, /* 1E4A */ + {0x1E4C,0x1E4D},{0x1E4C,0x1E4D}, /* 1E4C */ + {0x1E4E,0x1E4F},{0x1E4E,0x1E4F}, /* 1E4E */ + {0x1E50,0x1E51},{0x1E50,0x1E51}, /* 1E50 */ + {0x1E52,0x1E53},{0x1E52,0x1E53}, /* 1E52 */ + {0x1E54,0x1E55},{0x1E54,0x1E55}, /* 1E54 */ + {0x1E56,0x1E57},{0x1E56,0x1E57}, /* 1E56 */ + {0x1E58,0x1E59},{0x1E58,0x1E59}, /* 1E58 */ + {0x1E5A,0x1E5B},{0x1E5A,0x1E5B}, /* 1E5A */ + {0x1E5C,0x1E5D},{0x1E5C,0x1E5D}, /* 1E5C */ + {0x1E5E,0x1E5F},{0x1E5E,0x1E5F}, /* 1E5E */ + {0x1E60,0x1E61},{0x1E60,0x1E61}, /* 1E60 */ + {0x1E62,0x1E63},{0x1E62,0x1E63}, /* 1E62 */ + {0x1E64,0x1E65},{0x1E64,0x1E65}, /* 1E64 */ + {0x1E66,0x1E67},{0x1E66,0x1E67}, /* 1E66 */ + {0x1E68,0x1E69},{0x1E68,0x1E69}, /* 1E68 */ + {0x1E6A,0x1E6B},{0x1E6A,0x1E6B}, /* 1E6A */ + {0x1E6C,0x1E6D},{0x1E6C,0x1E6D}, /* 1E6C */ + {0x1E6E,0x1E6F},{0x1E6E,0x1E6F}, /* 1E6E */ + {0x1E70,0x1E71},{0x1E70,0x1E71}, /* 1E70 */ + {0x1E72,0x1E73},{0x1E72,0x1E73}, /* 1E72 */ + {0x1E74,0x1E75},{0x1E74,0x1E75}, /* 1E74 */ + {0x1E76,0x1E77},{0x1E76,0x1E77}, /* 1E76 */ + {0x1E78,0x1E79},{0x1E78,0x1E79}, /* 1E78 */ + {0x1E7A,0x1E7B},{0x1E7A,0x1E7B}, /* 1E7A */ + {0x1E7C,0x1E7D},{0x1E7C,0x1E7D}, /* 1E7C */ + {0x1E7E,0x1E7F},{0x1E7E,0x1E7F}, /* 1E7E */ + {0x1E80,0x1E81},{0x1E80,0x1E81}, /* 1E80 */ + {0x1E82,0x1E83},{0x1E82,0x1E83}, /* 1E82 */ + {0x1E84,0x1E85},{0x1E84,0x1E85}, /* 1E84 */ + {0x1E86,0x1E87},{0x1E86,0x1E87}, /* 1E86 */ + {0x1E88,0x1E89},{0x1E88,0x1E89}, /* 1E88 */ + {0x1E8A,0x1E8B},{0x1E8A,0x1E8B}, /* 1E8A */ + {0x1E8C,0x1E8D},{0x1E8C,0x1E8D}, /* 1E8C */ + {0x1E8E,0x1E8F},{0x1E8E,0x1E8F}, /* 1E8E */ + {0x1E90,0x1E91},{0x1E90,0x1E91}, /* 1E90 */ + {0x1E92,0x1E93},{0x1E92,0x1E93}, /* 1E92 */ + {0x1E94,0x1E95},{0x1E94,0x1E95}, /* 1E94 */ + {0x1E96,0x1E96},{0x1E97,0x1E97}, /* 1E96 */ + {0x1E98,0x1E98},{0x1E99,0x1E99}, /* 1E98 */ + {0x1E9A,0x1E9A},{0x1E60,0x1E9B}, /* 1E9A */ + {0x1E9C,0x1E9C},{0x1E9D,0x1E9D}, /* 1E9C */ + {0x1E9E,0x1E9E},{0x1E9F,0x1E9F}, /* 1E9E */ + {0x1EA0,0x1EA1},{0x1EA0,0x1EA1}, /* 1EA0 */ + {0x1EA2,0x1EA3},{0x1EA2,0x1EA3}, /* 1EA2 */ + {0x1EA4,0x1EA5},{0x1EA4,0x1EA5}, /* 1EA4 */ + {0x1EA6,0x1EA7},{0x1EA6,0x1EA7}, /* 1EA6 */ + {0x1EA8,0x1EA9},{0x1EA8,0x1EA9}, /* 1EA8 */ + {0x1EAA,0x1EAB},{0x1EAA,0x1EAB}, /* 1EAA */ + {0x1EAC,0x1EAD},{0x1EAC,0x1EAD}, /* 1EAC */ + {0x1EAE,0x1EAF},{0x1EAE,0x1EAF}, /* 1EAE */ + {0x1EB0,0x1EB1},{0x1EB0,0x1EB1}, /* 1EB0 */ + {0x1EB2,0x1EB3},{0x1EB2,0x1EB3}, /* 1EB2 */ + {0x1EB4,0x1EB5},{0x1EB4,0x1EB5}, /* 1EB4 */ + {0x1EB6,0x1EB7},{0x1EB6,0x1EB7}, /* 1EB6 */ + {0x1EB8,0x1EB9},{0x1EB8,0x1EB9}, /* 1EB8 */ + {0x1EBA,0x1EBB},{0x1EBA,0x1EBB}, /* 1EBA */ + {0x1EBC,0x1EBD},{0x1EBC,0x1EBD}, /* 1EBC */ + {0x1EBE,0x1EBF},{0x1EBE,0x1EBF}, /* 1EBE */ + {0x1EC0,0x1EC1},{0x1EC0,0x1EC1}, /* 1EC0 */ + {0x1EC2,0x1EC3},{0x1EC2,0x1EC3}, /* 1EC2 */ + {0x1EC4,0x1EC5},{0x1EC4,0x1EC5}, /* 1EC4 */ + {0x1EC6,0x1EC7},{0x1EC6,0x1EC7}, /* 1EC6 */ + {0x1EC8,0x1EC9},{0x1EC8,0x1EC9}, /* 1EC8 */ + {0x1ECA,0x1ECB},{0x1ECA,0x1ECB}, /* 1ECA */ + {0x1ECC,0x1ECD},{0x1ECC,0x1ECD}, /* 1ECC */ + {0x1ECE,0x1ECF},{0x1ECE,0x1ECF}, /* 1ECE */ + {0x1ED0,0x1ED1},{0x1ED0,0x1ED1}, /* 1ED0 */ + {0x1ED2,0x1ED3},{0x1ED2,0x1ED3}, /* 1ED2 */ + {0x1ED4,0x1ED5},{0x1ED4,0x1ED5}, /* 1ED4 */ + {0x1ED6,0x1ED7},{0x1ED6,0x1ED7}, /* 1ED6 */ + {0x1ED8,0x1ED9},{0x1ED8,0x1ED9}, /* 1ED8 */ + {0x1EDA,0x1EDB},{0x1EDA,0x1EDB}, /* 1EDA */ + {0x1EDC,0x1EDD},{0x1EDC,0x1EDD}, /* 1EDC */ + {0x1EDE,0x1EDF},{0x1EDE,0x1EDF}, /* 1EDE */ + {0x1EE0,0x1EE1},{0x1EE0,0x1EE1}, /* 1EE0 */ + {0x1EE2,0x1EE3},{0x1EE2,0x1EE3}, /* 1EE2 */ + {0x1EE4,0x1EE5},{0x1EE4,0x1EE5}, /* 1EE4 */ + {0x1EE6,0x1EE7},{0x1EE6,0x1EE7}, /* 1EE6 */ + {0x1EE8,0x1EE9},{0x1EE8,0x1EE9}, /* 1EE8 */ + {0x1EEA,0x1EEB},{0x1EEA,0x1EEB}, /* 1EEA */ + {0x1EEC,0x1EED},{0x1EEC,0x1EED}, /* 1EEC */ + {0x1EEE,0x1EEF},{0x1EEE,0x1EEF}, /* 1EEE */ + {0x1EF0,0x1EF1},{0x1EF0,0x1EF1}, /* 1EF0 */ + {0x1EF2,0x1EF3},{0x1EF2,0x1EF3}, /* 1EF2 */ + {0x1EF4,0x1EF5},{0x1EF4,0x1EF5}, /* 1EF4 */ + {0x1EF6,0x1EF7},{0x1EF6,0x1EF7}, /* 1EF6 */ + {0x1EF8,0x1EF9},{0x1EF8,0x1EF9}, /* 1EF8 */ + {0x1EFA,0x1EFA},{0x1EFB,0x1EFB}, /* 1EFA */ + {0x1EFC,0x1EFC},{0x1EFD,0x1EFD}, /* 1EFC */ + {0x1EFE,0x1EFE},{0x1EFF,0x1EFF} /* 1EFE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page1F[256]={ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F00 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F02 */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F04 */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F06 */ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F08 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F0A */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F0C */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F0E */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F10 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F12 */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F14 */ + {0x1F16,0x1F16},{0x1F17,0x1F17}, /* 1F16 */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F18 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F1A */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F1C */ + {0x1F1E,0x1F1E},{0x1F1F,0x1F1F}, /* 1F1E */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F20 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F22 */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F24 */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F26 */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F28 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F2A */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F2C */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F2E */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F30 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F32 */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F34 */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F36 */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F38 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F3A */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F3C */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F3E */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F40 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F42 */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F44 */ + {0x1F46,0x1F46},{0x1F47,0x1F47}, /* 1F46 */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F48 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F4A */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F4C */ + {0x1F4E,0x1F4E},{0x1F4F,0x1F4F}, /* 1F4E */ + {0x1F50,0x1F50},{0x1F59,0x1F51}, /* 1F50 */ + {0x1F52,0x1F52},{0x1F5B,0x1F53}, /* 1F52 */ + {0x1F54,0x1F54},{0x1F5D,0x1F55}, /* 1F54 */ + {0x1F56,0x1F56},{0x1F5F,0x1F57}, /* 1F56 */ + {0x1F58,0x1F58},{0x1F59,0x1F51}, /* 1F58 */ + {0x1F5A,0x1F5A},{0x1F5B,0x1F53}, /* 1F5A */ + {0x1F5C,0x1F5C},{0x1F5D,0x1F55}, /* 1F5C */ + {0x1F5E,0x1F5E},{0x1F5F,0x1F57}, /* 1F5E */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F60 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F62 */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F64 */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F66 */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F68 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F6A */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F6C */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F6E */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1F70 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1F72 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1F74 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1F76 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1F78 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1F7A */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1F7C */ + {0x1F7E,0x1F7E},{0x1F7F,0x1F7F}, /* 1F7E */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F80 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F82 */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F84 */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F86 */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F88 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F8A */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F8C */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F8E */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F90 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F92 */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F94 */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F96 */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F98 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F9A */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F9C */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F9E */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA0 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FA2 */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FA4 */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FA6 */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA8 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FAA */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FAC */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FAE */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB0 */ + {0x1FB2,0x1FB2},{0x1FBC,0x1FB3}, /* 1FB2 */ + {0x1FB4,0x1FB4},{0x1FB5,0x1FB5}, /* 1FB4 */ + {0x1FB6,0x1FB6},{0x1FB7,0x1FB7}, /* 1FB6 */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB8 */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1FBA */ + {0x1FBC,0x1FB3},{0x1FBD,0x1FBD}, /* 1FBC */ + {0x0399,0x1FBE},{0x1FBF,0x1FBF}, /* 1FBE */ + {0x1FC0,0x1FC0},{0x1FC1,0x1FC1}, /* 1FC0 */ + {0x1FC2,0x1FC2},{0x1FCC,0x1FC3}, /* 1FC2 */ + {0x1FC4,0x1FC4},{0x1FC5,0x1FC5}, /* 1FC4 */ + {0x1FC6,0x1FC6},{0x1FC7,0x1FC7}, /* 1FC6 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1FC8 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1FCA */ + {0x1FCC,0x1FC3},{0x1FCD,0x1FCD}, /* 1FCC */ + {0x1FCE,0x1FCE},{0x1FCF,0x1FCF}, /* 1FCE */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD0 */ + {0x1FD2,0x1FD2},{0x1FD3,0x1FD3}, /* 1FD2 */ + {0x1FD4,0x1FD4},{0x1FD5,0x1FD5}, /* 1FD4 */ + {0x1FD6,0x1FD6},{0x1FD7,0x1FD7}, /* 1FD6 */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD8 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1FDA */ + {0x1FDC,0x1FDC},{0x1FDD,0x1FDD}, /* 1FDC */ + {0x1FDE,0x1FDE},{0x1FDF,0x1FDF}, /* 1FDE */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE0 */ + {0x1FE2,0x1FE2},{0x1FE3,0x1FE3}, /* 1FE2 */ + {0x1FE4,0x1FE4},{0x1FEC,0x1FE5}, /* 1FE4 */ + {0x1FE6,0x1FE6},{0x1FE7,0x1FE7}, /* 1FE6 */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE8 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1FEA */ + {0x1FEC,0x1FE5},{0x1FED,0x1FED}, /* 1FEC */ + {0x1FEE,0x1FEE},{0x1FEF,0x1FEF}, /* 1FEE */ + {0x1FF0,0x1FF0},{0x1FF1,0x1FF1}, /* 1FF0 */ + {0x1FF2,0x1FF2},{0x1FFC,0x1FF3}, /* 1FF2 */ + {0x1FF4,0x1FF4},{0x1FF5,0x1FF5}, /* 1FF4 */ + {0x1FF6,0x1FF6},{0x1FF7,0x1FF7}, /* 1FF6 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1FF8 */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1FFA */ + {0x1FFC,0x1FF3},{0x1FFD,0x1FFD}, /* 1FFC */ + {0x1FFE,0x1FFE},{0x1FFF,0x1FFF} /* 1FFE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page21[256]={ + {0x2100,0x2100},{0x2101,0x2101}, /* 2100 */ + {0x2102,0x2102},{0x2103,0x2103}, /* 2102 */ + {0x2104,0x2104},{0x2105,0x2105}, /* 2104 */ + {0x2106,0x2106},{0x2107,0x2107}, /* 2106 */ + {0x2108,0x2108},{0x2109,0x2109}, /* 2108 */ + {0x210A,0x210A},{0x210B,0x210B}, /* 210A */ + {0x210C,0x210C},{0x210D,0x210D}, /* 210C */ + {0x210E,0x210E},{0x210F,0x210F}, /* 210E */ + {0x2110,0x2110},{0x2111,0x2111}, /* 2110 */ + {0x2112,0x2112},{0x2113,0x2113}, /* 2112 */ + {0x2114,0x2114},{0x2115,0x2115}, /* 2114 */ + {0x2116,0x2116},{0x2117,0x2117}, /* 2116 */ + {0x2118,0x2118},{0x2119,0x2119}, /* 2118 */ + {0x211A,0x211A},{0x211B,0x211B}, /* 211A */ + {0x211C,0x211C},{0x211D,0x211D}, /* 211C */ + {0x211E,0x211E},{0x211F,0x211F}, /* 211E */ + {0x2120,0x2120},{0x2121,0x2121}, /* 2120 */ + {0x2122,0x2122},{0x2123,0x2123}, /* 2122 */ + {0x2124,0x2124},{0x2125,0x2125}, /* 2124 */ + {0x2126,0x03C9},{0x2127,0x2127}, /* 2126 */ + {0x2128,0x2128},{0x2129,0x2129}, /* 2128 */ + {0x212A,0x006B},{0x212B,0x00E5}, /* 212A */ + {0x212C,0x212C},{0x212D,0x212D}, /* 212C */ + {0x212E,0x212E},{0x212F,0x212F}, /* 212E */ + {0x2130,0x2130},{0x2131,0x2131}, /* 2130 */ + {0x2132,0x2132},{0x2133,0x2133}, /* 2132 */ + {0x2134,0x2134},{0x2135,0x2135}, /* 2134 */ + {0x2136,0x2136},{0x2137,0x2137}, /* 2136 */ + {0x2138,0x2138},{0x2139,0x2139}, /* 2138 */ + {0x213A,0x213A},{0x213B,0x213B}, /* 213A */ + {0x213C,0x213C},{0x213D,0x213D}, /* 213C */ + {0x213E,0x213E},{0x213F,0x213F}, /* 213E */ + {0x2140,0x2140},{0x2141,0x2141}, /* 2140 */ + {0x2142,0x2142},{0x2143,0x2143}, /* 2142 */ + {0x2144,0x2144},{0x2145,0x2145}, /* 2144 */ + {0x2146,0x2146},{0x2147,0x2147}, /* 2146 */ + {0x2148,0x2148},{0x2149,0x2149}, /* 2148 */ + {0x214A,0x214A},{0x214B,0x214B}, /* 214A */ + {0x214C,0x214C},{0x214D,0x214D}, /* 214C */ + {0x214E,0x214E},{0x214F,0x214F}, /* 214E */ + {0x2150,0x2150},{0x2151,0x2151}, /* 2150 */ + {0x2152,0x2152},{0x2153,0x2153}, /* 2152 */ + {0x2154,0x2154},{0x2155,0x2155}, /* 2154 */ + {0x2156,0x2156},{0x2157,0x2157}, /* 2156 */ + {0x2158,0x2158},{0x2159,0x2159}, /* 2158 */ + {0x215A,0x215A},{0x215B,0x215B}, /* 215A */ + {0x215C,0x215C},{0x215D,0x215D}, /* 215C */ + {0x215E,0x215E},{0x215F,0x215F}, /* 215E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2160 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2162 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2164 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2166 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2168 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 216A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 216C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 216E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2170 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2172 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2174 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2176 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2178 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 217A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 217C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 217E */ + {0x2180,0x2180},{0x2181,0x2181}, /* 2180 */ + {0x2182,0x2182},{0x2183,0x2183}, /* 2182 */ + {0x2184,0x2184},{0x2185,0x2185}, /* 2184 */ + {0x2186,0x2186},{0x2187,0x2187}, /* 2186 */ + {0x2188,0x2188},{0x2189,0x2189}, /* 2188 */ + {0x218A,0x218A},{0x218B,0x218B}, /* 218A */ + {0x218C,0x218C},{0x218D,0x218D}, /* 218C */ + {0x218E,0x218E},{0x218F,0x218F}, /* 218E */ + {0x2190,0x2190},{0x2191,0x2191}, /* 2190 */ + {0x2192,0x2192},{0x2193,0x2193}, /* 2192 */ + {0x2194,0x2194},{0x2195,0x2195}, /* 2194 */ + {0x2196,0x2196},{0x2197,0x2197}, /* 2196 */ + {0x2198,0x2198},{0x2199,0x2199}, /* 2198 */ + {0x219A,0x219A},{0x219B,0x219B}, /* 219A */ + {0x219C,0x219C},{0x219D,0x219D}, /* 219C */ + {0x219E,0x219E},{0x219F,0x219F}, /* 219E */ + {0x21A0,0x21A0},{0x21A1,0x21A1}, /* 21A0 */ + {0x21A2,0x21A2},{0x21A3,0x21A3}, /* 21A2 */ + {0x21A4,0x21A4},{0x21A5,0x21A5}, /* 21A4 */ + {0x21A6,0x21A6},{0x21A7,0x21A7}, /* 21A6 */ + {0x21A8,0x21A8},{0x21A9,0x21A9}, /* 21A8 */ + {0x21AA,0x21AA},{0x21AB,0x21AB}, /* 21AA */ + {0x21AC,0x21AC},{0x21AD,0x21AD}, /* 21AC */ + {0x21AE,0x21AE},{0x21AF,0x21AF}, /* 21AE */ + {0x21B0,0x21B0},{0x21B1,0x21B1}, /* 21B0 */ + {0x21B2,0x21B2},{0x21B3,0x21B3}, /* 21B2 */ + {0x21B4,0x21B4},{0x21B5,0x21B5}, /* 21B4 */ + {0x21B6,0x21B6},{0x21B7,0x21B7}, /* 21B6 */ + {0x21B8,0x21B8},{0x21B9,0x21B9}, /* 21B8 */ + {0x21BA,0x21BA},{0x21BB,0x21BB}, /* 21BA */ + {0x21BC,0x21BC},{0x21BD,0x21BD}, /* 21BC */ + {0x21BE,0x21BE},{0x21BF,0x21BF}, /* 21BE */ + {0x21C0,0x21C0},{0x21C1,0x21C1}, /* 21C0 */ + {0x21C2,0x21C2},{0x21C3,0x21C3}, /* 21C2 */ + {0x21C4,0x21C4},{0x21C5,0x21C5}, /* 21C4 */ + {0x21C6,0x21C6},{0x21C7,0x21C7}, /* 21C6 */ + {0x21C8,0x21C8},{0x21C9,0x21C9}, /* 21C8 */ + {0x21CA,0x21CA},{0x21CB,0x21CB}, /* 21CA */ + {0x21CC,0x21CC},{0x21CD,0x21CD}, /* 21CC */ + {0x21CE,0x21CE},{0x21CF,0x21CF}, /* 21CE */ + {0x21D0,0x21D0},{0x21D1,0x21D1}, /* 21D0 */ + {0x21D2,0x21D2},{0x21D3,0x21D3}, /* 21D2 */ + {0x21D4,0x21D4},{0x21D5,0x21D5}, /* 21D4 */ + {0x21D6,0x21D6},{0x21D7,0x21D7}, /* 21D6 */ + {0x21D8,0x21D8},{0x21D9,0x21D9}, /* 21D8 */ + {0x21DA,0x21DA},{0x21DB,0x21DB}, /* 21DA */ + {0x21DC,0x21DC},{0x21DD,0x21DD}, /* 21DC */ + {0x21DE,0x21DE},{0x21DF,0x21DF}, /* 21DE */ + {0x21E0,0x21E0},{0x21E1,0x21E1}, /* 21E0 */ + {0x21E2,0x21E2},{0x21E3,0x21E3}, /* 21E2 */ + {0x21E4,0x21E4},{0x21E5,0x21E5}, /* 21E4 */ + {0x21E6,0x21E6},{0x21E7,0x21E7}, /* 21E6 */ + {0x21E8,0x21E8},{0x21E9,0x21E9}, /* 21E8 */ + {0x21EA,0x21EA},{0x21EB,0x21EB}, /* 21EA */ + {0x21EC,0x21EC},{0x21ED,0x21ED}, /* 21EC */ + {0x21EE,0x21EE},{0x21EF,0x21EF}, /* 21EE */ + {0x21F0,0x21F0},{0x21F1,0x21F1}, /* 21F0 */ + {0x21F2,0x21F2},{0x21F3,0x21F3}, /* 21F2 */ + {0x21F4,0x21F4},{0x21F5,0x21F5}, /* 21F4 */ + {0x21F6,0x21F6},{0x21F7,0x21F7}, /* 21F6 */ + {0x21F8,0x21F8},{0x21F9,0x21F9}, /* 21F8 */ + {0x21FA,0x21FA},{0x21FB,0x21FB}, /* 21FA */ + {0x21FC,0x21FC},{0x21FD,0x21FD}, /* 21FC */ + {0x21FE,0x21FE},{0x21FF,0x21FF} /* 21FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_page24[256]={ + {0x2400,0x2400},{0x2401,0x2401}, /* 2400 */ + {0x2402,0x2402},{0x2403,0x2403}, /* 2402 */ + {0x2404,0x2404},{0x2405,0x2405}, /* 2404 */ + {0x2406,0x2406},{0x2407,0x2407}, /* 2406 */ + {0x2408,0x2408},{0x2409,0x2409}, /* 2408 */ + {0x240A,0x240A},{0x240B,0x240B}, /* 240A */ + {0x240C,0x240C},{0x240D,0x240D}, /* 240C */ + {0x240E,0x240E},{0x240F,0x240F}, /* 240E */ + {0x2410,0x2410},{0x2411,0x2411}, /* 2410 */ + {0x2412,0x2412},{0x2413,0x2413}, /* 2412 */ + {0x2414,0x2414},{0x2415,0x2415}, /* 2414 */ + {0x2416,0x2416},{0x2417,0x2417}, /* 2416 */ + {0x2418,0x2418},{0x2419,0x2419}, /* 2418 */ + {0x241A,0x241A},{0x241B,0x241B}, /* 241A */ + {0x241C,0x241C},{0x241D,0x241D}, /* 241C */ + {0x241E,0x241E},{0x241F,0x241F}, /* 241E */ + {0x2420,0x2420},{0x2421,0x2421}, /* 2420 */ + {0x2422,0x2422},{0x2423,0x2423}, /* 2422 */ + {0x2424,0x2424},{0x2425,0x2425}, /* 2424 */ + {0x2426,0x2426},{0x2427,0x2427}, /* 2426 */ + {0x2428,0x2428},{0x2429,0x2429}, /* 2428 */ + {0x242A,0x242A},{0x242B,0x242B}, /* 242A */ + {0x242C,0x242C},{0x242D,0x242D}, /* 242C */ + {0x242E,0x242E},{0x242F,0x242F}, /* 242E */ + {0x2430,0x2430},{0x2431,0x2431}, /* 2430 */ + {0x2432,0x2432},{0x2433,0x2433}, /* 2432 */ + {0x2434,0x2434},{0x2435,0x2435}, /* 2434 */ + {0x2436,0x2436},{0x2437,0x2437}, /* 2436 */ + {0x2438,0x2438},{0x2439,0x2439}, /* 2438 */ + {0x243A,0x243A},{0x243B,0x243B}, /* 243A */ + {0x243C,0x243C},{0x243D,0x243D}, /* 243C */ + {0x243E,0x243E},{0x243F,0x243F}, /* 243E */ + {0x2440,0x2440},{0x2441,0x2441}, /* 2440 */ + {0x2442,0x2442},{0x2443,0x2443}, /* 2442 */ + {0x2444,0x2444},{0x2445,0x2445}, /* 2444 */ + {0x2446,0x2446},{0x2447,0x2447}, /* 2446 */ + {0x2448,0x2448},{0x2449,0x2449}, /* 2448 */ + {0x244A,0x244A},{0x244B,0x244B}, /* 244A */ + {0x244C,0x244C},{0x244D,0x244D}, /* 244C */ + {0x244E,0x244E},{0x244F,0x244F}, /* 244E */ + {0x2450,0x2450},{0x2451,0x2451}, /* 2450 */ + {0x2452,0x2452},{0x2453,0x2453}, /* 2452 */ + {0x2454,0x2454},{0x2455,0x2455}, /* 2454 */ + {0x2456,0x2456},{0x2457,0x2457}, /* 2456 */ + {0x2458,0x2458},{0x2459,0x2459}, /* 2458 */ + {0x245A,0x245A},{0x245B,0x245B}, /* 245A */ + {0x245C,0x245C},{0x245D,0x245D}, /* 245C */ + {0x245E,0x245E},{0x245F,0x245F}, /* 245E */ + {0x2460,0x2460},{0x2461,0x2461}, /* 2460 */ + {0x2462,0x2462},{0x2463,0x2463}, /* 2462 */ + {0x2464,0x2464},{0x2465,0x2465}, /* 2464 */ + {0x2466,0x2466},{0x2467,0x2467}, /* 2466 */ + {0x2468,0x2468},{0x2469,0x2469}, /* 2468 */ + {0x246A,0x246A},{0x246B,0x246B}, /* 246A */ + {0x246C,0x246C},{0x246D,0x246D}, /* 246C */ + {0x246E,0x246E},{0x246F,0x246F}, /* 246E */ + {0x2470,0x2470},{0x2471,0x2471}, /* 2470 */ + {0x2472,0x2472},{0x2473,0x2473}, /* 2472 */ + {0x2474,0x2474},{0x2475,0x2475}, /* 2474 */ + {0x2476,0x2476},{0x2477,0x2477}, /* 2476 */ + {0x2478,0x2478},{0x2479,0x2479}, /* 2478 */ + {0x247A,0x247A},{0x247B,0x247B}, /* 247A */ + {0x247C,0x247C},{0x247D,0x247D}, /* 247C */ + {0x247E,0x247E},{0x247F,0x247F}, /* 247E */ + {0x2480,0x2480},{0x2481,0x2481}, /* 2480 */ + {0x2482,0x2482},{0x2483,0x2483}, /* 2482 */ + {0x2484,0x2484},{0x2485,0x2485}, /* 2484 */ + {0x2486,0x2486},{0x2487,0x2487}, /* 2486 */ + {0x2488,0x2488},{0x2489,0x2489}, /* 2488 */ + {0x248A,0x248A},{0x248B,0x248B}, /* 248A */ + {0x248C,0x248C},{0x248D,0x248D}, /* 248C */ + {0x248E,0x248E},{0x248F,0x248F}, /* 248E */ + {0x2490,0x2490},{0x2491,0x2491}, /* 2490 */ + {0x2492,0x2492},{0x2493,0x2493}, /* 2492 */ + {0x2494,0x2494},{0x2495,0x2495}, /* 2494 */ + {0x2496,0x2496},{0x2497,0x2497}, /* 2496 */ + {0x2498,0x2498},{0x2499,0x2499}, /* 2498 */ + {0x249A,0x249A},{0x249B,0x249B}, /* 249A */ + {0x249C,0x249C},{0x249D,0x249D}, /* 249C */ + {0x249E,0x249E},{0x249F,0x249F}, /* 249E */ + {0x24A0,0x24A0},{0x24A1,0x24A1}, /* 24A0 */ + {0x24A2,0x24A2},{0x24A3,0x24A3}, /* 24A2 */ + {0x24A4,0x24A4},{0x24A5,0x24A5}, /* 24A4 */ + {0x24A6,0x24A6},{0x24A7,0x24A7}, /* 24A6 */ + {0x24A8,0x24A8},{0x24A9,0x24A9}, /* 24A8 */ + {0x24AA,0x24AA},{0x24AB,0x24AB}, /* 24AA */ + {0x24AC,0x24AC},{0x24AD,0x24AD}, /* 24AC */ + {0x24AE,0x24AE},{0x24AF,0x24AF}, /* 24AE */ + {0x24B0,0x24B0},{0x24B1,0x24B1}, /* 24B0 */ + {0x24B2,0x24B2},{0x24B3,0x24B3}, /* 24B2 */ + {0x24B4,0x24B4},{0x24B5,0x24B5}, /* 24B4 */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24B6 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24B8 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24BA */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24BC */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24BE */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24C0 */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24C2 */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24C4 */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24C6 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24C8 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24CA */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24CC */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24CE */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24D0 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24D2 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24D4 */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24D6 */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24D8 */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24DA */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24DC */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24DE */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24E0 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24E2 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24E4 */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24E6 */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24E8 */ + {0x24EA,0x24EA},{0x24EB,0x24EB}, /* 24EA */ + {0x24EC,0x24EC},{0x24ED,0x24ED}, /* 24EC */ + {0x24EE,0x24EE},{0x24EF,0x24EF}, /* 24EE */ + {0x24F0,0x24F0},{0x24F1,0x24F1}, /* 24F0 */ + {0x24F2,0x24F2},{0x24F3,0x24F3}, /* 24F2 */ + {0x24F4,0x24F4},{0x24F5,0x24F5}, /* 24F4 */ + {0x24F6,0x24F6},{0x24F7,0x24F7}, /* 24F6 */ + {0x24F8,0x24F8},{0x24F9,0x24F9}, /* 24F8 */ + {0x24FA,0x24FA},{0x24FB,0x24FB}, /* 24FA */ + {0x24FC,0x24FC},{0x24FD,0x24FD}, /* 24FC */ + {0x24FE,0x24FE},{0x24FF,0x24FF} /* 24FE */ +}; + +static const MY_CASEFOLD_CHARACTER u300_casefold_pageFF[256]={ + {0xFF00,0xFF00},{0xFF01,0xFF01}, /* FF00 */ + {0xFF02,0xFF02},{0xFF03,0xFF03}, /* FF02 */ + {0xFF04,0xFF04},{0xFF05,0xFF05}, /* FF04 */ + {0xFF06,0xFF06},{0xFF07,0xFF07}, /* FF06 */ + {0xFF08,0xFF08},{0xFF09,0xFF09}, /* FF08 */ + {0xFF0A,0xFF0A},{0xFF0B,0xFF0B}, /* FF0A */ + {0xFF0C,0xFF0C},{0xFF0D,0xFF0D}, /* FF0C */ + {0xFF0E,0xFF0E},{0xFF0F,0xFF0F}, /* FF0E */ + {0xFF10,0xFF10},{0xFF11,0xFF11}, /* FF10 */ + {0xFF12,0xFF12},{0xFF13,0xFF13}, /* FF12 */ + {0xFF14,0xFF14},{0xFF15,0xFF15}, /* FF14 */ + {0xFF16,0xFF16},{0xFF17,0xFF17}, /* FF16 */ + {0xFF18,0xFF18},{0xFF19,0xFF19}, /* FF18 */ + {0xFF1A,0xFF1A},{0xFF1B,0xFF1B}, /* FF1A */ + {0xFF1C,0xFF1C},{0xFF1D,0xFF1D}, /* FF1C */ + {0xFF1E,0xFF1E},{0xFF1F,0xFF1F}, /* FF1E */ + {0xFF20,0xFF20},{0xFF21,0xFF41}, /* FF20 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF22 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF24 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF26 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF28 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF2A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF2C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF2E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF30 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF32 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF34 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF36 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF38 */ + {0xFF3A,0xFF5A},{0xFF3B,0xFF3B}, /* FF3A */ + {0xFF3C,0xFF3C},{0xFF3D,0xFF3D}, /* FF3C */ + {0xFF3E,0xFF3E},{0xFF3F,0xFF3F}, /* FF3E */ + {0xFF40,0xFF40},{0xFF21,0xFF41}, /* FF40 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF42 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF44 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF46 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF48 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF4A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF4C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF4E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF50 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF52 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF54 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF56 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF58 */ + {0xFF3A,0xFF5A},{0xFF5B,0xFF5B}, /* FF5A */ + {0xFF5C,0xFF5C},{0xFF5D,0xFF5D}, /* FF5C */ + {0xFF5E,0xFF5E},{0xFF5F,0xFF5F}, /* FF5E */ + {0xFF60,0xFF60},{0xFF61,0xFF61}, /* FF60 */ + {0xFF62,0xFF62},{0xFF63,0xFF63}, /* FF62 */ + {0xFF64,0xFF64},{0xFF65,0xFF65}, /* FF64 */ + {0xFF66,0xFF66},{0xFF67,0xFF67}, /* FF66 */ + {0xFF68,0xFF68},{0xFF69,0xFF69}, /* FF68 */ + {0xFF6A,0xFF6A},{0xFF6B,0xFF6B}, /* FF6A */ + {0xFF6C,0xFF6C},{0xFF6D,0xFF6D}, /* FF6C */ + {0xFF6E,0xFF6E},{0xFF6F,0xFF6F}, /* FF6E */ + {0xFF70,0xFF70},{0xFF71,0xFF71}, /* FF70 */ + {0xFF72,0xFF72},{0xFF73,0xFF73}, /* FF72 */ + {0xFF74,0xFF74},{0xFF75,0xFF75}, /* FF74 */ + {0xFF76,0xFF76},{0xFF77,0xFF77}, /* FF76 */ + {0xFF78,0xFF78},{0xFF79,0xFF79}, /* FF78 */ + {0xFF7A,0xFF7A},{0xFF7B,0xFF7B}, /* FF7A */ + {0xFF7C,0xFF7C},{0xFF7D,0xFF7D}, /* FF7C */ + {0xFF7E,0xFF7E},{0xFF7F,0xFF7F}, /* FF7E */ + {0xFF80,0xFF80},{0xFF81,0xFF81}, /* FF80 */ + {0xFF82,0xFF82},{0xFF83,0xFF83}, /* FF82 */ + {0xFF84,0xFF84},{0xFF85,0xFF85}, /* FF84 */ + {0xFF86,0xFF86},{0xFF87,0xFF87}, /* FF86 */ + {0xFF88,0xFF88},{0xFF89,0xFF89}, /* FF88 */ + {0xFF8A,0xFF8A},{0xFF8B,0xFF8B}, /* FF8A */ + {0xFF8C,0xFF8C},{0xFF8D,0xFF8D}, /* FF8C */ + {0xFF8E,0xFF8E},{0xFF8F,0xFF8F}, /* FF8E */ + {0xFF90,0xFF90},{0xFF91,0xFF91}, /* FF90 */ + {0xFF92,0xFF92},{0xFF93,0xFF93}, /* FF92 */ + {0xFF94,0xFF94},{0xFF95,0xFF95}, /* FF94 */ + {0xFF96,0xFF96},{0xFF97,0xFF97}, /* FF96 */ + {0xFF98,0xFF98},{0xFF99,0xFF99}, /* FF98 */ + {0xFF9A,0xFF9A},{0xFF9B,0xFF9B}, /* FF9A */ + {0xFF9C,0xFF9C},{0xFF9D,0xFF9D}, /* FF9C */ + {0xFF9E,0xFF9E},{0xFF9F,0xFF9F}, /* FF9E */ + {0xFFA0,0xFFA0},{0xFFA1,0xFFA1}, /* FFA0 */ + {0xFFA2,0xFFA2},{0xFFA3,0xFFA3}, /* FFA2 */ + {0xFFA4,0xFFA4},{0xFFA5,0xFFA5}, /* FFA4 */ + {0xFFA6,0xFFA6},{0xFFA7,0xFFA7}, /* FFA6 */ + {0xFFA8,0xFFA8},{0xFFA9,0xFFA9}, /* FFA8 */ + {0xFFAA,0xFFAA},{0xFFAB,0xFFAB}, /* FFAA */ + {0xFFAC,0xFFAC},{0xFFAD,0xFFAD}, /* FFAC */ + {0xFFAE,0xFFAE},{0xFFAF,0xFFAF}, /* FFAE */ + {0xFFB0,0xFFB0},{0xFFB1,0xFFB1}, /* FFB0 */ + {0xFFB2,0xFFB2},{0xFFB3,0xFFB3}, /* FFB2 */ + {0xFFB4,0xFFB4},{0xFFB5,0xFFB5}, /* FFB4 */ + {0xFFB6,0xFFB6},{0xFFB7,0xFFB7}, /* FFB6 */ + {0xFFB8,0xFFB8},{0xFFB9,0xFFB9}, /* FFB8 */ + {0xFFBA,0xFFBA},{0xFFBB,0xFFBB}, /* FFBA */ + {0xFFBC,0xFFBC},{0xFFBD,0xFFBD}, /* FFBC */ + {0xFFBE,0xFFBE},{0xFFBF,0xFFBF}, /* FFBE */ + {0xFFC0,0xFFC0},{0xFFC1,0xFFC1}, /* FFC0 */ + {0xFFC2,0xFFC2},{0xFFC3,0xFFC3}, /* FFC2 */ + {0xFFC4,0xFFC4},{0xFFC5,0xFFC5}, /* FFC4 */ + {0xFFC6,0xFFC6},{0xFFC7,0xFFC7}, /* FFC6 */ + {0xFFC8,0xFFC8},{0xFFC9,0xFFC9}, /* FFC8 */ + {0xFFCA,0xFFCA},{0xFFCB,0xFFCB}, /* FFCA */ + {0xFFCC,0xFFCC},{0xFFCD,0xFFCD}, /* FFCC */ + {0xFFCE,0xFFCE},{0xFFCF,0xFFCF}, /* FFCE */ + {0xFFD0,0xFFD0},{0xFFD1,0xFFD1}, /* FFD0 */ + {0xFFD2,0xFFD2},{0xFFD3,0xFFD3}, /* FFD2 */ + {0xFFD4,0xFFD4},{0xFFD5,0xFFD5}, /* FFD4 */ + {0xFFD6,0xFFD6},{0xFFD7,0xFFD7}, /* FFD6 */ + {0xFFD8,0xFFD8},{0xFFD9,0xFFD9}, /* FFD8 */ + {0xFFDA,0xFFDA},{0xFFDB,0xFFDB}, /* FFDA */ + {0xFFDC,0xFFDC},{0xFFDD,0xFFDD}, /* FFDC */ + {0xFFDE,0xFFDE},{0xFFDF,0xFFDF}, /* FFDE */ + {0xFFE0,0xFFE0},{0xFFE1,0xFFE1}, /* FFE0 */ + {0xFFE2,0xFFE2},{0xFFE3,0xFFE3}, /* FFE2 */ + {0xFFE4,0xFFE4},{0xFFE5,0xFFE5}, /* FFE4 */ + {0xFFE6,0xFFE6},{0xFFE7,0xFFE7}, /* FFE6 */ + {0xFFE8,0xFFE8},{0xFFE9,0xFFE9}, /* FFE8 */ + {0xFFEA,0xFFEA},{0xFFEB,0xFFEB}, /* FFEA */ + {0xFFEC,0xFFEC},{0xFFED,0xFFED}, /* FFEC */ + {0xFFEE,0xFFEE},{0xFFEF,0xFFEF}, /* FFEE */ + {0xFFF0,0xFFF0},{0xFFF1,0xFFF1}, /* FFF0 */ + {0xFFF2,0xFFF2},{0xFFF3,0xFFF3}, /* FFF2 */ + {0xFFF4,0xFFF4},{0xFFF5,0xFFF5}, /* FFF4 */ + {0xFFF6,0xFFF6},{0xFFF7,0xFFF7}, /* FFF6 */ + {0xFFF8,0xFFF8},{0xFFF9,0xFFF9}, /* FFF8 */ + {0xFFFA,0xFFFA},{0xFFFB,0xFFFB}, /* FFFA */ + {0xFFFC,0xFFFC},{0xFFFD,0xFFFD}, /* FFFC */ + {0xFFFE,0xFFFE},{0xFFFF,0xFFFF} /* FFFE */ +}; + +const MY_CASEFOLD_CHARACTER * my_u300_casefold_index[256]={ + u300_casefold_page00, u300_casefold_page01, u300_casefold_page02, u300_casefold_page03, u300_casefold_page04, u300_casefold_page05, u300_casefold_page06, u300_casefold_page07, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u300_casefold_page1E, u300_casefold_page1F, + NULL, u300_casefold_page21, NULL, NULL, u300_casefold_page24, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, u300_casefold_pageFF +}; diff --git a/strings/ctype-unicode300-general_ci.h b/strings/ctype-unicode300-general_ci.h new file mode 100644 index 00000000000..fd8cd71bf1a --- /dev/null +++ b/strings/ctype-unicode300-general_ci.h @@ -0,0 +1,610 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=weight_general_ci \ + --max-char=0xFFFF \ + UnicodeData-3.0.0.txt + +*/ +const uint16 weight_general_ci_page00[256]={ + 0x0000,0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007, /* 0000 */ + 0x0008,0x0009,0x000A,0x000B,0x000C,0x000D,0x000E,0x000F, /* 0008 */ + 0x0010,0x0011,0x0012,0x0013,0x0014,0x0015,0x0016,0x0017, /* 0010 */ + 0x0018,0x0019,0x001A,0x001B,0x001C,0x001D,0x001E,0x001F, /* 0018 */ + 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0027, /* 0020 */ + 0x0028,0x0029,0x002A,0x002B,0x002C,0x002D,0x002E,0x002F, /* 0028 */ + 0x0030,0x0031,0x0032,0x0033,0x0034,0x0035,0x0036,0x0037, /* 0030 */ + 0x0038,0x0039,0x003A,0x003B,0x003C,0x003D,0x003E,0x003F, /* 0038 */ + 0x0040,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047, /* 0040 */ + 0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F, /* 0048 */ + 0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057, /* 0050 */ + 0x0058,0x0059,0x005A,0x005B,0x005C,0x005D,0x005E,0x005F, /* 0058 */ + 0x0060,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047, /* 0060 */ + 0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F, /* 0068 */ + 0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057, /* 0070 */ + 0x0058,0x0059,0x005A,0x007B,0x007C,0x007D,0x007E,0x007F, /* 0078 */ + 0x0080,0x0081,0x0082,0x0083,0x0084,0x0085,0x0086,0x0087, /* 0080 */ + 0x0088,0x0089,0x008A,0x008B,0x008C,0x008D,0x008E,0x008F, /* 0088 */ + 0x0090,0x0091,0x0092,0x0093,0x0094,0x0095,0x0096,0x0097, /* 0090 */ + 0x0098,0x0099,0x009A,0x009B,0x009C,0x009D,0x009E,0x009F, /* 0098 */ + 0x00A0,0x00A1,0x00A2,0x00A3,0x00A4,0x00A5,0x00A6,0x00A7, /* 00A0 */ + 0x00A8,0x00A9,0x00AA,0x00AB,0x00AC,0x00AD,0x00AE,0x00AF, /* 00A8 */ + 0x00B0,0x00B1,0x00B2,0x00B3,0x00B4,0x039C,0x00B6,0x00B7, /* 00B0 */ + 0x00B8,0x00B9,0x00BA,0x00BB,0x00BC,0x00BD,0x00BE,0x00BF, /* 00B8 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x00C6,0x0043, /* 00C0 */ + 0x0045,0x0045,0x0045,0x0045,0x0049,0x0049,0x0049,0x0049, /* 00C8 */ + 0x00D0,0x004E,0x004F,0x004F,0x004F,0x004F,0x004F,0x00D7, /* 00D0 */ + 0x00D8,0x0055,0x0055,0x0055,0x0055,0x0059,0x00DE,0x0053, /* 00D8 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x00C6,0x0043, /* 00E0 */ + 0x0045,0x0045,0x0045,0x0045,0x0049,0x0049,0x0049,0x0049, /* 00E8 */ + 0x00D0,0x004E,0x004F,0x004F,0x004F,0x004F,0x004F,0x00F7, /* 00F0 */ + 0x00D8,0x0055,0x0055,0x0055,0x0055,0x0059,0x00DE,0x0059 /* 00F8 */ +}; + +static const uint16 weight_general_ci_page01[256]={ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0043,0x0043, /* 0100 */ + 0x0043,0x0043,0x0043,0x0043,0x0043,0x0043,0x0044,0x0044, /* 0108 */ + 0x0110,0x0110,0x0045,0x0045,0x0045,0x0045,0x0045,0x0045, /* 0110 */ + 0x0045,0x0045,0x0045,0x0045,0x0047,0x0047,0x0047,0x0047, /* 0118 */ + 0x0047,0x0047,0x0047,0x0047,0x0048,0x0048,0x0126,0x0126, /* 0120 */ + 0x0049,0x0049,0x0049,0x0049,0x0049,0x0049,0x0049,0x0049, /* 0128 */ + 0x0049,0x0049,0x0132,0x0132,0x004A,0x004A,0x004B,0x004B, /* 0130 */ + 0x0138,0x004C,0x004C,0x004C,0x004C,0x004C,0x004C,0x013F, /* 0138 */ + 0x013F,0x0141,0x0141,0x004E,0x004E,0x004E,0x004E,0x004E, /* 0140 */ + 0x004E,0x0149,0x014A,0x014A,0x004F,0x004F,0x004F,0x004F, /* 0148 */ + 0x004F,0x004F,0x0152,0x0152,0x0052,0x0052,0x0052,0x0052, /* 0150 */ + 0x0052,0x0052,0x0053,0x0053,0x0053,0x0053,0x0053,0x0053, /* 0158 */ + 0x0053,0x0053,0x0054,0x0054,0x0054,0x0054,0x0166,0x0166, /* 0160 */ + 0x0055,0x0055,0x0055,0x0055,0x0055,0x0055,0x0055,0x0055, /* 0168 */ + 0x0055,0x0055,0x0055,0x0055,0x0057,0x0057,0x0059,0x0059, /* 0170 */ + 0x0059,0x005A,0x005A,0x005A,0x005A,0x005A,0x005A,0x0053, /* 0178 */ + 0x0180,0x0181,0x0182,0x0182,0x0184,0x0184,0x0186,0x0187, /* 0180 */ + 0x0187,0x0189,0x018A,0x018B,0x018B,0x018D,0x018E,0x018F, /* 0188 */ + 0x0190,0x0191,0x0191,0x0193,0x0194,0x01F6,0x0196,0x0197, /* 0190 */ + 0x0198,0x0198,0x019A,0x019B,0x019C,0x019D,0x019E,0x019F, /* 0198 */ + 0x004F,0x004F,0x01A2,0x01A2,0x01A4,0x01A4,0x01A6,0x01A7, /* 01A0 */ + 0x01A7,0x01A9,0x01AA,0x01AB,0x01AC,0x01AC,0x01AE,0x0055, /* 01A8 */ + 0x0055,0x01B1,0x01B2,0x01B3,0x01B3,0x01B5,0x01B5,0x01B7, /* 01B0 */ + 0x01B8,0x01B8,0x01BA,0x01BB,0x01BC,0x01BC,0x01BE,0x01F7, /* 01B8 */ + 0x01C0,0x01C1,0x01C2,0x01C3,0x01C4,0x01C4,0x01C4,0x01C7, /* 01C0 */ + 0x01C7,0x01C7,0x01CA,0x01CA,0x01CA,0x0041,0x0041,0x0049, /* 01C8 */ + 0x0049,0x004F,0x004F,0x0055,0x0055,0x0055,0x0055,0x0055, /* 01D0 */ + 0x0055,0x0055,0x0055,0x0055,0x0055,0x018E,0x0041,0x0041, /* 01D8 */ + 0x0041,0x0041,0x00C6,0x00C6,0x01E4,0x01E4,0x0047,0x0047, /* 01E0 */ + 0x004B,0x004B,0x004F,0x004F,0x004F,0x004F,0x01B7,0x01B7, /* 01E8 */ + 0x004A,0x01F1,0x01F1,0x01F1,0x0047,0x0047,0x01F6,0x01F7, /* 01F0 */ + 0x004E,0x004E,0x0041,0x0041,0x00C6,0x00C6,0x00D8,0x00D8 /* 01F8 */ +}; + +static const uint16 weight_general_ci_page02[256]={ + 0x0041,0x0041,0x0041,0x0041,0x0045,0x0045,0x0045,0x0045, /* 0200 */ + 0x0049,0x0049,0x0049,0x0049,0x004F,0x004F,0x004F,0x004F, /* 0208 */ + 0x0052,0x0052,0x0052,0x0052,0x0055,0x0055,0x0055,0x0055, /* 0210 */ + 0x0053,0x0053,0x0054,0x0054,0x021C,0x021C,0x0048,0x0048, /* 0218 */ + 0x0220,0x0221,0x0222,0x0222,0x0224,0x0224,0x0041,0x0041, /* 0220 */ + 0x0045,0x0045,0x004F,0x004F,0x004F,0x004F,0x004F,0x004F, /* 0228 */ + 0x004F,0x004F,0x0059,0x0059,0x0234,0x0235,0x0236,0x0237, /* 0230 */ + 0x0238,0x0239,0x023A,0x023B,0x023C,0x023D,0x023E,0x023F, /* 0238 */ + 0x0240,0x0241,0x0242,0x0243,0x0244,0x0245,0x0246,0x0247, /* 0240 */ + 0x0248,0x0249,0x024A,0x024B,0x024C,0x024D,0x024E,0x024F, /* 0248 */ + 0x0250,0x0251,0x0252,0x0181,0x0186,0x0255,0x0189,0x018A, /* 0250 */ + 0x0258,0x018F,0x025A,0x0190,0x025C,0x025D,0x025E,0x025F, /* 0258 */ + 0x0193,0x0261,0x0262,0x0194,0x0264,0x0265,0x0266,0x0267, /* 0260 */ + 0x0197,0x0196,0x026A,0x026B,0x026C,0x026D,0x026E,0x019C, /* 0268 */ + 0x0270,0x0271,0x019D,0x0273,0x0274,0x019F,0x0276,0x0277, /* 0270 */ + 0x0278,0x0279,0x027A,0x027B,0x027C,0x027D,0x027E,0x027F, /* 0278 */ + 0x01A6,0x0281,0x0282,0x01A9,0x0284,0x0285,0x0286,0x0287, /* 0280 */ + 0x01AE,0x0289,0x01B1,0x01B2,0x028C,0x028D,0x028E,0x028F, /* 0288 */ + 0x0290,0x0291,0x01B7,0x0293,0x0294,0x0295,0x0296,0x0297, /* 0290 */ + 0x0298,0x0299,0x029A,0x029B,0x029C,0x029D,0x029E,0x029F, /* 0298 */ + 0x02A0,0x02A1,0x02A2,0x02A3,0x02A4,0x02A5,0x02A6,0x02A7, /* 02A0 */ + 0x02A8,0x02A9,0x02AA,0x02AB,0x02AC,0x02AD,0x02AE,0x02AF, /* 02A8 */ + 0x02B0,0x02B1,0x02B2,0x02B3,0x02B4,0x02B5,0x02B6,0x02B7, /* 02B0 */ + 0x02B8,0x02B9,0x02BA,0x02BB,0x02BC,0x02BD,0x02BE,0x02BF, /* 02B8 */ + 0x02C0,0x02C1,0x02C2,0x02C3,0x02C4,0x02C5,0x02C6,0x02C7, /* 02C0 */ + 0x02C8,0x02C9,0x02CA,0x02CB,0x02CC,0x02CD,0x02CE,0x02CF, /* 02C8 */ + 0x02D0,0x02D1,0x02D2,0x02D3,0x02D4,0x02D5,0x02D6,0x02D7, /* 02D0 */ + 0x02D8,0x02D9,0x02DA,0x02DB,0x02DC,0x02DD,0x02DE,0x02DF, /* 02D8 */ + 0x02E0,0x02E1,0x02E2,0x02E3,0x02E4,0x02E5,0x02E6,0x02E7, /* 02E0 */ + 0x02E8,0x02E9,0x02EA,0x02EB,0x02EC,0x02ED,0x02EE,0x02EF, /* 02E8 */ + 0x02F0,0x02F1,0x02F2,0x02F3,0x02F4,0x02F5,0x02F6,0x02F7, /* 02F0 */ + 0x02F8,0x02F9,0x02FA,0x02FB,0x02FC,0x02FD,0x02FE,0x02FF /* 02F8 */ +}; + +static const uint16 weight_general_ci_page03[256]={ + 0x0300,0x0301,0x0302,0x0303,0x0304,0x0305,0x0306,0x0307, /* 0300 */ + 0x0308,0x0309,0x030A,0x030B,0x030C,0x030D,0x030E,0x030F, /* 0308 */ + 0x0310,0x0311,0x0312,0x0313,0x0314,0x0315,0x0316,0x0317, /* 0310 */ + 0x0318,0x0319,0x031A,0x031B,0x031C,0x031D,0x031E,0x031F, /* 0318 */ + 0x0320,0x0321,0x0322,0x0323,0x0324,0x0325,0x0326,0x0327, /* 0320 */ + 0x0328,0x0329,0x032A,0x032B,0x032C,0x032D,0x032E,0x032F, /* 0328 */ + 0x0330,0x0331,0x0332,0x0333,0x0334,0x0335,0x0336,0x0337, /* 0330 */ + 0x0338,0x0339,0x033A,0x033B,0x033C,0x033D,0x033E,0x033F, /* 0338 */ + 0x0340,0x0341,0x0342,0x0343,0x0344,0x0399,0x0346,0x0347, /* 0340 */ + 0x0348,0x0349,0x034A,0x034B,0x034C,0x034D,0x034E,0x034F, /* 0348 */ + 0x0350,0x0351,0x0352,0x0353,0x0354,0x0355,0x0356,0x0357, /* 0350 */ + 0x0358,0x0359,0x035A,0x035B,0x035C,0x035D,0x035E,0x035F, /* 0358 */ + 0x0360,0x0361,0x0362,0x0363,0x0364,0x0365,0x0366,0x0367, /* 0360 */ + 0x0368,0x0369,0x036A,0x036B,0x036C,0x036D,0x036E,0x036F, /* 0368 */ + 0x0370,0x0371,0x0372,0x0373,0x0374,0x0375,0x0376,0x0377, /* 0370 */ + 0x0378,0x0379,0x037A,0x037B,0x037C,0x037D,0x037E,0x037F, /* 0378 */ + 0x0380,0x0381,0x0382,0x0383,0x0384,0x0385,0x0391,0x0387, /* 0380 */ + 0x0395,0x0397,0x0399,0x038B,0x039F,0x038D,0x03A5,0x03A9, /* 0388 */ + 0x0399,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397, /* 0390 */ + 0x0398,0x0399,0x039A,0x039B,0x039C,0x039D,0x039E,0x039F, /* 0398 */ + 0x03A0,0x03A1,0x03A2,0x03A3,0x03A4,0x03A5,0x03A6,0x03A7, /* 03A0 */ + 0x03A8,0x03A9,0x0399,0x03A5,0x0391,0x0395,0x0397,0x0399, /* 03A8 */ + 0x03A5,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397, /* 03B0 */ + 0x0398,0x0399,0x039A,0x039B,0x039C,0x039D,0x039E,0x039F, /* 03B8 */ + 0x03A0,0x03A1,0x03A3,0x03A3,0x03A4,0x03A5,0x03A6,0x03A7, /* 03C0 */ + 0x03A8,0x03A9,0x0399,0x03A5,0x039F,0x03A5,0x03A9,0x03CF, /* 03C8 */ + 0x0392,0x0398,0x03D2,0x03D2,0x03D2,0x03A6,0x03A0,0x03D7, /* 03D0 */ + 0x03D8,0x03D9,0x03DA,0x03DA,0x03DC,0x03DC,0x03DE,0x03DE, /* 03D8 */ + 0x03E0,0x03E0,0x03E2,0x03E2,0x03E4,0x03E4,0x03E6,0x03E6, /* 03E0 */ + 0x03E8,0x03E8,0x03EA,0x03EA,0x03EC,0x03EC,0x03EE,0x03EE, /* 03E8 */ + 0x039A,0x03A1,0x03A3,0x03F3,0x03F4,0x03F5,0x03F6,0x03F7, /* 03F0 */ + 0x03F8,0x03F9,0x03FA,0x03FB,0x03FC,0x03FD,0x03FE,0x03FF /* 03F8 */ +}; + +static const uint16 weight_general_ci_page04[256]={ + 0x0415,0x0415,0x0402,0x0413,0x0404,0x0405,0x0406,0x0406, /* 0400 */ + 0x0408,0x0409,0x040A,0x040B,0x041A,0x0418,0x0423,0x040F, /* 0408 */ + 0x0410,0x0411,0x0412,0x0413,0x0414,0x0415,0x0416,0x0417, /* 0410 */ + 0x0418,0x0419,0x041A,0x041B,0x041C,0x041D,0x041E,0x041F, /* 0418 */ + 0x0420,0x0421,0x0422,0x0423,0x0424,0x0425,0x0426,0x0427, /* 0420 */ + 0x0428,0x0429,0x042A,0x042B,0x042C,0x042D,0x042E,0x042F, /* 0428 */ + 0x0410,0x0411,0x0412,0x0413,0x0414,0x0415,0x0416,0x0417, /* 0430 */ + 0x0418,0x0419,0x041A,0x041B,0x041C,0x041D,0x041E,0x041F, /* 0438 */ + 0x0420,0x0421,0x0422,0x0423,0x0424,0x0425,0x0426,0x0427, /* 0440 */ + 0x0428,0x0429,0x042A,0x042B,0x042C,0x042D,0x042E,0x042F, /* 0448 */ + 0x0415,0x0415,0x0402,0x0413,0x0404,0x0405,0x0406,0x0406, /* 0450 */ + 0x0408,0x0409,0x040A,0x040B,0x041A,0x0418,0x0423,0x040F, /* 0458 */ + 0x0460,0x0460,0x0462,0x0462,0x0464,0x0464,0x0466,0x0466, /* 0460 */ + 0x0468,0x0468,0x046A,0x046A,0x046C,0x046C,0x046E,0x046E, /* 0468 */ + 0x0470,0x0470,0x0472,0x0472,0x0474,0x0474,0x0474,0x0474, /* 0470 */ + 0x0478,0x0478,0x047A,0x047A,0x047C,0x047C,0x047E,0x047E, /* 0478 */ + 0x0480,0x0480,0x0482,0x0483,0x0484,0x0485,0x0486,0x0487, /* 0480 */ + 0x0488,0x0489,0x048A,0x048B,0x048C,0x048C,0x048E,0x048E, /* 0488 */ + 0x0490,0x0490,0x0492,0x0492,0x0494,0x0494,0x0496,0x0496, /* 0490 */ + 0x0498,0x0498,0x049A,0x049A,0x049C,0x049C,0x049E,0x049E, /* 0498 */ + 0x04A0,0x04A0,0x04A2,0x04A2,0x04A4,0x04A4,0x04A6,0x04A6, /* 04A0 */ + 0x04A8,0x04A8,0x04AA,0x04AA,0x04AC,0x04AC,0x04AE,0x04AE, /* 04A8 */ + 0x04B0,0x04B0,0x04B2,0x04B2,0x04B4,0x04B4,0x04B6,0x04B6, /* 04B0 */ + 0x04B8,0x04B8,0x04BA,0x04BA,0x04BC,0x04BC,0x04BE,0x04BE, /* 04B8 */ + 0x04C0,0x0416,0x0416,0x04C3,0x04C3,0x04C5,0x04C6,0x04C7, /* 04C0 */ + 0x04C7,0x04C9,0x04CA,0x04CB,0x04CB,0x04CD,0x04CE,0x04CF, /* 04C8 */ + 0x0410,0x0410,0x0410,0x0410,0x04D4,0x04D4,0x0415,0x0415, /* 04D0 */ + 0x04D8,0x04D8,0x04D8,0x04D8,0x0416,0x0416,0x0417,0x0417, /* 04D8 */ + 0x04E0,0x04E0,0x0418,0x0418,0x0418,0x0418,0x041E,0x041E, /* 04E0 */ + 0x04E8,0x04E8,0x04E8,0x04E8,0x042D,0x042D,0x0423,0x0423, /* 04E8 */ + 0x0423,0x0423,0x0423,0x0423,0x0427,0x0427,0x04F6,0x04F7, /* 04F0 */ + 0x042B,0x042B,0x04FA,0x04FB,0x04FC,0x04FD,0x04FE,0x04FF /* 04F8 */ +}; + +static const uint16 weight_general_ci_page05[256]={ + 0x0500,0x0501,0x0502,0x0503,0x0504,0x0505,0x0506,0x0507, /* 0500 */ + 0x0508,0x0509,0x050A,0x050B,0x050C,0x050D,0x050E,0x050F, /* 0508 */ + 0x0510,0x0511,0x0512,0x0513,0x0514,0x0515,0x0516,0x0517, /* 0510 */ + 0x0518,0x0519,0x051A,0x051B,0x051C,0x051D,0x051E,0x051F, /* 0518 */ + 0x0520,0x0521,0x0522,0x0523,0x0524,0x0525,0x0526,0x0527, /* 0520 */ + 0x0528,0x0529,0x052A,0x052B,0x052C,0x052D,0x052E,0x052F, /* 0528 */ + 0x0530,0x0531,0x0532,0x0533,0x0534,0x0535,0x0536,0x0537, /* 0530 */ + 0x0538,0x0539,0x053A,0x053B,0x053C,0x053D,0x053E,0x053F, /* 0538 */ + 0x0540,0x0541,0x0542,0x0543,0x0544,0x0545,0x0546,0x0547, /* 0540 */ + 0x0548,0x0549,0x054A,0x054B,0x054C,0x054D,0x054E,0x054F, /* 0548 */ + 0x0550,0x0551,0x0552,0x0553,0x0554,0x0555,0x0556,0x0557, /* 0550 */ + 0x0558,0x0559,0x055A,0x055B,0x055C,0x055D,0x055E,0x055F, /* 0558 */ + 0x0560,0x0531,0x0532,0x0533,0x0534,0x0535,0x0536,0x0537, /* 0560 */ + 0x0538,0x0539,0x053A,0x053B,0x053C,0x053D,0x053E,0x053F, /* 0568 */ + 0x0540,0x0541,0x0542,0x0543,0x0544,0x0545,0x0546,0x0547, /* 0570 */ + 0x0548,0x0549,0x054A,0x054B,0x054C,0x054D,0x054E,0x054F, /* 0578 */ + 0x0550,0x0551,0x0552,0x0553,0x0554,0x0555,0x0556,0x0587, /* 0580 */ + 0x0588,0x0589,0x058A,0x058B,0x058C,0x058D,0x058E,0x058F, /* 0588 */ + 0x0590,0x0591,0x0592,0x0593,0x0594,0x0595,0x0596,0x0597, /* 0590 */ + 0x0598,0x0599,0x059A,0x059B,0x059C,0x059D,0x059E,0x059F, /* 0598 */ + 0x05A0,0x05A1,0x05A2,0x05A3,0x05A4,0x05A5,0x05A6,0x05A7, /* 05A0 */ + 0x05A8,0x05A9,0x05AA,0x05AB,0x05AC,0x05AD,0x05AE,0x05AF, /* 05A8 */ + 0x05B0,0x05B1,0x05B2,0x05B3,0x05B4,0x05B5,0x05B6,0x05B7, /* 05B0 */ + 0x05B8,0x05B9,0x05BA,0x05BB,0x05BC,0x05BD,0x05BE,0x05BF, /* 05B8 */ + 0x05C0,0x05C1,0x05C2,0x05C3,0x05C4,0x05C5,0x05C6,0x05C7, /* 05C0 */ + 0x05C8,0x05C9,0x05CA,0x05CB,0x05CC,0x05CD,0x05CE,0x05CF, /* 05C8 */ + 0x05D0,0x05D1,0x05D2,0x05D3,0x05D4,0x05D5,0x05D6,0x05D7, /* 05D0 */ + 0x05D8,0x05D9,0x05DA,0x05DB,0x05DC,0x05DD,0x05DE,0x05DF, /* 05D8 */ + 0x05E0,0x05E1,0x05E2,0x05E3,0x05E4,0x05E5,0x05E6,0x05E7, /* 05E0 */ + 0x05E8,0x05E9,0x05EA,0x05EB,0x05EC,0x05ED,0x05EE,0x05EF, /* 05E8 */ + 0x05F0,0x05F1,0x05F2,0x05F3,0x05F4,0x05F5,0x05F6,0x05F7, /* 05F0 */ + 0x05F8,0x05F9,0x05FA,0x05FB,0x05FC,0x05FD,0x05FE,0x05FF /* 05F8 */ +}; + +static const uint16 weight_general_ci_page06[256]={ /* This page is dummy */ + 0x0600,0x0601,0x0602,0x0603,0x0604,0x0605,0x0606,0x0607, /* 0600 */ + 0x0608,0x0609,0x060A,0x060B,0x060C,0x060D,0x060E,0x060F, /* 0608 */ + 0x0610,0x0611,0x0612,0x0613,0x0614,0x0615,0x0616,0x0617, /* 0610 */ + 0x0618,0x0619,0x061A,0x061B,0x061C,0x061D,0x061E,0x061F, /* 0618 */ + 0x0620,0x0621,0x0622,0x0623,0x0624,0x0625,0x0626,0x0627, /* 0620 */ + 0x0628,0x0629,0x062A,0x062B,0x062C,0x062D,0x062E,0x062F, /* 0628 */ + 0x0630,0x0631,0x0632,0x0633,0x0634,0x0635,0x0636,0x0637, /* 0630 */ + 0x0638,0x0639,0x063A,0x063B,0x063C,0x063D,0x063E,0x063F, /* 0638 */ + 0x0640,0x0641,0x0642,0x0643,0x0644,0x0645,0x0646,0x0647, /* 0640 */ + 0x0648,0x0649,0x064A,0x064B,0x064C,0x064D,0x064E,0x064F, /* 0648 */ + 0x0650,0x0651,0x0652,0x0653,0x0654,0x0655,0x0656,0x0657, /* 0650 */ + 0x0658,0x0659,0x065A,0x065B,0x065C,0x065D,0x065E,0x065F, /* 0658 */ + 0x0660,0x0661,0x0662,0x0663,0x0664,0x0665,0x0666,0x0667, /* 0660 */ + 0x0668,0x0669,0x066A,0x066B,0x066C,0x066D,0x066E,0x066F, /* 0668 */ + 0x0670,0x0671,0x0672,0x0673,0x0674,0x0675,0x0676,0x0677, /* 0670 */ + 0x0678,0x0679,0x067A,0x067B,0x067C,0x067D,0x067E,0x067F, /* 0678 */ + 0x0680,0x0681,0x0682,0x0683,0x0684,0x0685,0x0686,0x0687, /* 0680 */ + 0x0688,0x0689,0x068A,0x068B,0x068C,0x068D,0x068E,0x068F, /* 0688 */ + 0x0690,0x0691,0x0692,0x0693,0x0694,0x0695,0x0696,0x0697, /* 0690 */ + 0x0698,0x0699,0x069A,0x069B,0x069C,0x069D,0x069E,0x069F, /* 0698 */ + 0x06A0,0x06A1,0x06A2,0x06A3,0x06A4,0x06A5,0x06A6,0x06A7, /* 06A0 */ + 0x06A8,0x06A9,0x06AA,0x06AB,0x06AC,0x06AD,0x06AE,0x06AF, /* 06A8 */ + 0x06B0,0x06B1,0x06B2,0x06B3,0x06B4,0x06B5,0x06B6,0x06B7, /* 06B0 */ + 0x06B8,0x06B9,0x06BA,0x06BB,0x06BC,0x06BD,0x06BE,0x06BF, /* 06B8 */ + 0x06C0,0x06C1,0x06C2,0x06C3,0x06C4,0x06C5,0x06C6,0x06C7, /* 06C0 */ + 0x06C8,0x06C9,0x06CA,0x06CB,0x06CC,0x06CD,0x06CE,0x06CF, /* 06C8 */ + 0x06D0,0x06D1,0x06D2,0x06D3,0x06D4,0x06D5,0x06D6,0x06D7, /* 06D0 */ + 0x06D8,0x06D9,0x06DA,0x06DB,0x06DC,0x06DD,0x06DE,0x06DF, /* 06D8 */ + 0x06E0,0x06E1,0x06E2,0x06E3,0x06E4,0x06E5,0x06E6,0x06E7, /* 06E0 */ + 0x06E8,0x06E9,0x06EA,0x06EB,0x06EC,0x06ED,0x06EE,0x06EF, /* 06E8 */ + 0x06F0,0x06F1,0x06F2,0x06F3,0x06F4,0x06F5,0x06F6,0x06F7, /* 06F0 */ + 0x06F8,0x06F9,0x06FA,0x06FB,0x06FC,0x06FD,0x06FE,0x06FF /* 06F8 */ +}; + +static const uint16 weight_general_ci_page07[256]={ /* This page is dummy */ + 0x0700,0x0701,0x0702,0x0703,0x0704,0x0705,0x0706,0x0707, /* 0700 */ + 0x0708,0x0709,0x070A,0x070B,0x070C,0x070D,0x070E,0x070F, /* 0708 */ + 0x0710,0x0711,0x0712,0x0713,0x0714,0x0715,0x0716,0x0717, /* 0710 */ + 0x0718,0x0719,0x071A,0x071B,0x071C,0x071D,0x071E,0x071F, /* 0718 */ + 0x0720,0x0721,0x0722,0x0723,0x0724,0x0725,0x0726,0x0727, /* 0720 */ + 0x0728,0x0729,0x072A,0x072B,0x072C,0x072D,0x072E,0x072F, /* 0728 */ + 0x0730,0x0731,0x0732,0x0733,0x0734,0x0735,0x0736,0x0737, /* 0730 */ + 0x0738,0x0739,0x073A,0x073B,0x073C,0x073D,0x073E,0x073F, /* 0738 */ + 0x0740,0x0741,0x0742,0x0743,0x0744,0x0745,0x0746,0x0747, /* 0740 */ + 0x0748,0x0749,0x074A,0x074B,0x074C,0x074D,0x074E,0x074F, /* 0748 */ + 0x0750,0x0751,0x0752,0x0753,0x0754,0x0755,0x0756,0x0757, /* 0750 */ + 0x0758,0x0759,0x075A,0x075B,0x075C,0x075D,0x075E,0x075F, /* 0758 */ + 0x0760,0x0761,0x0762,0x0763,0x0764,0x0765,0x0766,0x0767, /* 0760 */ + 0x0768,0x0769,0x076A,0x076B,0x076C,0x076D,0x076E,0x076F, /* 0768 */ + 0x0770,0x0771,0x0772,0x0773,0x0774,0x0775,0x0776,0x0777, /* 0770 */ + 0x0778,0x0779,0x077A,0x077B,0x077C,0x077D,0x077E,0x077F, /* 0778 */ + 0x0780,0x0781,0x0782,0x0783,0x0784,0x0785,0x0786,0x0787, /* 0780 */ + 0x0788,0x0789,0x078A,0x078B,0x078C,0x078D,0x078E,0x078F, /* 0788 */ + 0x0790,0x0791,0x0792,0x0793,0x0794,0x0795,0x0796,0x0797, /* 0790 */ + 0x0798,0x0799,0x079A,0x079B,0x079C,0x079D,0x079E,0x079F, /* 0798 */ + 0x07A0,0x07A1,0x07A2,0x07A3,0x07A4,0x07A5,0x07A6,0x07A7, /* 07A0 */ + 0x07A8,0x07A9,0x07AA,0x07AB,0x07AC,0x07AD,0x07AE,0x07AF, /* 07A8 */ + 0x07B0,0x07B1,0x07B2,0x07B3,0x07B4,0x07B5,0x07B6,0x07B7, /* 07B0 */ + 0x07B8,0x07B9,0x07BA,0x07BB,0x07BC,0x07BD,0x07BE,0x07BF, /* 07B8 */ + 0x07C0,0x07C1,0x07C2,0x07C3,0x07C4,0x07C5,0x07C6,0x07C7, /* 07C0 */ + 0x07C8,0x07C9,0x07CA,0x07CB,0x07CC,0x07CD,0x07CE,0x07CF, /* 07C8 */ + 0x07D0,0x07D1,0x07D2,0x07D3,0x07D4,0x07D5,0x07D6,0x07D7, /* 07D0 */ + 0x07D8,0x07D9,0x07DA,0x07DB,0x07DC,0x07DD,0x07DE,0x07DF, /* 07D8 */ + 0x07E0,0x07E1,0x07E2,0x07E3,0x07E4,0x07E5,0x07E6,0x07E7, /* 07E0 */ + 0x07E8,0x07E9,0x07EA,0x07EB,0x07EC,0x07ED,0x07EE,0x07EF, /* 07E8 */ + 0x07F0,0x07F1,0x07F2,0x07F3,0x07F4,0x07F5,0x07F6,0x07F7, /* 07F0 */ + 0x07F8,0x07F9,0x07FA,0x07FB,0x07FC,0x07FD,0x07FE,0x07FF /* 07F8 */ +}; + +static const uint16 weight_general_ci_page1E[256]={ + 0x0041,0x0041,0x0042,0x0042,0x0042,0x0042,0x0042,0x0042, /* 1E00 */ + 0x0043,0x0043,0x0044,0x0044,0x0044,0x0044,0x0044,0x0044, /* 1E08 */ + 0x0044,0x0044,0x0044,0x0044,0x0045,0x0045,0x0045,0x0045, /* 1E10 */ + 0x0045,0x0045,0x0045,0x0045,0x0045,0x0045,0x0046,0x0046, /* 1E18 */ + 0x0047,0x0047,0x0048,0x0048,0x0048,0x0048,0x0048,0x0048, /* 1E20 */ + 0x0048,0x0048,0x0048,0x0048,0x0049,0x0049,0x0049,0x0049, /* 1E28 */ + 0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004C,0x004C, /* 1E30 */ + 0x004C,0x004C,0x004C,0x004C,0x004C,0x004C,0x004D,0x004D, /* 1E38 */ + 0x004D,0x004D,0x004D,0x004D,0x004E,0x004E,0x004E,0x004E, /* 1E40 */ + 0x004E,0x004E,0x004E,0x004E,0x004F,0x004F,0x004F,0x004F, /* 1E48 */ + 0x004F,0x004F,0x004F,0x004F,0x0050,0x0050,0x0050,0x0050, /* 1E50 */ + 0x0052,0x0052,0x0052,0x0052,0x0052,0x0052,0x0052,0x0052, /* 1E58 */ + 0x0053,0x0053,0x0053,0x0053,0x0053,0x0053,0x0053,0x0053, /* 1E60 */ + 0x0053,0x0053,0x0054,0x0054,0x0054,0x0054,0x0054,0x0054, /* 1E68 */ + 0x0054,0x0054,0x0055,0x0055,0x0055,0x0055,0x0055,0x0055, /* 1E70 */ + 0x0055,0x0055,0x0055,0x0055,0x0056,0x0056,0x0056,0x0056, /* 1E78 */ + 0x0057,0x0057,0x0057,0x0057,0x0057,0x0057,0x0057,0x0057, /* 1E80 */ + 0x0057,0x0057,0x0058,0x0058,0x0058,0x0058,0x0059,0x0059, /* 1E88 */ + 0x005A,0x005A,0x005A,0x005A,0x005A,0x005A,0x0048,0x0054, /* 1E90 */ + 0x0057,0x0059,0x1E9A,0x0053,0x1E9C,0x1E9D,0x1E9E,0x1E9F, /* 1E98 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041, /* 1EA0 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041, /* 1EA8 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x0041, /* 1EB0 */ + 0x0045,0x0045,0x0045,0x0045,0x0045,0x0045,0x0045,0x0045, /* 1EB8 */ + 0x0045,0x0045,0x0045,0x0045,0x0045,0x0045,0x0045,0x0045, /* 1EC0 */ + 0x0049,0x0049,0x0049,0x0049,0x004F,0x004F,0x004F,0x004F, /* 1EC8 */ + 0x004F,0x004F,0x004F,0x004F,0x004F,0x004F,0x004F,0x004F, /* 1ED0 */ + 0x004F,0x004F,0x004F,0x004F,0x004F,0x004F,0x004F,0x004F, /* 1ED8 */ + 0x004F,0x004F,0x004F,0x004F,0x0055,0x0055,0x0055,0x0055, /* 1EE0 */ + 0x0055,0x0055,0x0055,0x0055,0x0055,0x0055,0x0055,0x0055, /* 1EE8 */ + 0x0055,0x0055,0x0059,0x0059,0x0059,0x0059,0x0059,0x0059, /* 1EF0 */ + 0x0059,0x0059,0x1EFA,0x1EFB,0x1EFC,0x1EFD,0x1EFE,0x1EFF /* 1EF8 */ +}; + +static const uint16 weight_general_ci_page1F[256]={ + 0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391, /* 1F00 */ + 0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391, /* 1F08 */ + 0x0395,0x0395,0x0395,0x0395,0x0395,0x0395,0x1F16,0x1F17, /* 1F10 */ + 0x0395,0x0395,0x0395,0x0395,0x0395,0x0395,0x1F1E,0x1F1F, /* 1F18 */ + 0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397, /* 1F20 */ + 0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397, /* 1F28 */ + 0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399, /* 1F30 */ + 0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399, /* 1F38 */ + 0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x1F46,0x1F47, /* 1F40 */ + 0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x1F4E,0x1F4F, /* 1F48 */ + 0x03A5,0x03A5,0x03A5,0x03A5,0x03A5,0x03A5,0x03A5,0x03A5, /* 1F50 */ + 0x1F58,0x03A5,0x1F5A,0x03A5,0x1F5C,0x03A5,0x1F5E,0x03A5, /* 1F58 */ + 0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9, /* 1F60 */ + 0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9, /* 1F68 */ + 0x0391,0x1FBB,0x0395,0x1FC9,0x0397,0x1FCB,0x0399,0x1FDB, /* 1F70 */ + 0x039F,0x1FF9,0x03A5,0x1FEB,0x03A9,0x1FFB,0x1F7E,0x1F7F, /* 1F78 */ + 0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391, /* 1F80 */ + 0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391,0x0391, /* 1F88 */ + 0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397, /* 1F90 */ + 0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397,0x0397, /* 1F98 */ + 0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9, /* 1FA0 */ + 0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9,0x03A9, /* 1FA8 */ + 0x0391,0x0391,0x0391,0x0391,0x0391,0x1FB5,0x0391,0x0391, /* 1FB0 */ + 0x0391,0x0391,0x0391,0x1FBB,0x0391,0x1FBD,0x0399,0x1FBF, /* 1FB8 */ + 0x1FC0,0x1FC1,0x0397,0x0397,0x0397,0x1FC5,0x0397,0x0397, /* 1FC0 */ + 0x0395,0x1FC9,0x0397,0x1FCB,0x0397,0x1FCD,0x1FCE,0x1FCF, /* 1FC8 */ + 0x0399,0x0399,0x0399,0x1FD3,0x1FD4,0x1FD5,0x0399,0x0399, /* 1FD0 */ + 0x0399,0x0399,0x0399,0x1FDB,0x1FDC,0x1FDD,0x1FDE,0x1FDF, /* 1FD8 */ + 0x03A5,0x03A5,0x03A5,0x1FE3,0x03A1,0x03A1,0x03A5,0x03A5, /* 1FE0 */ + 0x03A5,0x03A5,0x03A5,0x1FEB,0x03A1,0x1FED,0x1FEE,0x1FEF, /* 1FE8 */ + 0x1FF0,0x1FF1,0x03A9,0x03A9,0x03A9,0x1FF5,0x03A9,0x03A9, /* 1FF0 */ + 0x039F,0x1FF9,0x03A9,0x1FFB,0x03A9,0x1FFD,0x1FFE,0x1FFF /* 1FF8 */ +}; + +static const uint16 weight_general_ci_page21[256]={ + 0x2100,0x2101,0x2102,0x2103,0x2104,0x2105,0x2106,0x2107, /* 2100 */ + 0x2108,0x2109,0x210A,0x210B,0x210C,0x210D,0x210E,0x210F, /* 2108 */ + 0x2110,0x2111,0x2112,0x2113,0x2114,0x2115,0x2116,0x2117, /* 2110 */ + 0x2118,0x2119,0x211A,0x211B,0x211C,0x211D,0x211E,0x211F, /* 2118 */ + 0x2120,0x2121,0x2122,0x2123,0x2124,0x2125,0x2126,0x2127, /* 2120 */ + 0x2128,0x2129,0x212A,0x212B,0x212C,0x212D,0x212E,0x212F, /* 2128 */ + 0x2130,0x2131,0x2132,0x2133,0x2134,0x2135,0x2136,0x2137, /* 2130 */ + 0x2138,0x2139,0x213A,0x213B,0x213C,0x213D,0x213E,0x213F, /* 2138 */ + 0x2140,0x2141,0x2142,0x2143,0x2144,0x2145,0x2146,0x2147, /* 2140 */ + 0x2148,0x2149,0x214A,0x214B,0x214C,0x214D,0x214E,0x214F, /* 2148 */ + 0x2150,0x2151,0x2152,0x2153,0x2154,0x2155,0x2156,0x2157, /* 2150 */ + 0x2158,0x2159,0x215A,0x215B,0x215C,0x215D,0x215E,0x215F, /* 2158 */ + 0x2160,0x2161,0x2162,0x2163,0x2164,0x2165,0x2166,0x2167, /* 2160 */ + 0x2168,0x2169,0x216A,0x216B,0x216C,0x216D,0x216E,0x216F, /* 2168 */ + 0x2160,0x2161,0x2162,0x2163,0x2164,0x2165,0x2166,0x2167, /* 2170 */ + 0x2168,0x2169,0x216A,0x216B,0x216C,0x216D,0x216E,0x216F, /* 2178 */ + 0x2180,0x2181,0x2182,0x2183,0x2184,0x2185,0x2186,0x2187, /* 2180 */ + 0x2188,0x2189,0x218A,0x218B,0x218C,0x218D,0x218E,0x218F, /* 2188 */ + 0x2190,0x2191,0x2192,0x2193,0x2194,0x2195,0x2196,0x2197, /* 2190 */ + 0x2198,0x2199,0x219A,0x219B,0x219C,0x219D,0x219E,0x219F, /* 2198 */ + 0x21A0,0x21A1,0x21A2,0x21A3,0x21A4,0x21A5,0x21A6,0x21A7, /* 21A0 */ + 0x21A8,0x21A9,0x21AA,0x21AB,0x21AC,0x21AD,0x21AE,0x21AF, /* 21A8 */ + 0x21B0,0x21B1,0x21B2,0x21B3,0x21B4,0x21B5,0x21B6,0x21B7, /* 21B0 */ + 0x21B8,0x21B9,0x21BA,0x21BB,0x21BC,0x21BD,0x21BE,0x21BF, /* 21B8 */ + 0x21C0,0x21C1,0x21C2,0x21C3,0x21C4,0x21C5,0x21C6,0x21C7, /* 21C0 */ + 0x21C8,0x21C9,0x21CA,0x21CB,0x21CC,0x21CD,0x21CE,0x21CF, /* 21C8 */ + 0x21D0,0x21D1,0x21D2,0x21D3,0x21D4,0x21D5,0x21D6,0x21D7, /* 21D0 */ + 0x21D8,0x21D9,0x21DA,0x21DB,0x21DC,0x21DD,0x21DE,0x21DF, /* 21D8 */ + 0x21E0,0x21E1,0x21E2,0x21E3,0x21E4,0x21E5,0x21E6,0x21E7, /* 21E0 */ + 0x21E8,0x21E9,0x21EA,0x21EB,0x21EC,0x21ED,0x21EE,0x21EF, /* 21E8 */ + 0x21F0,0x21F1,0x21F2,0x21F3,0x21F4,0x21F5,0x21F6,0x21F7, /* 21F0 */ + 0x21F8,0x21F9,0x21FA,0x21FB,0x21FC,0x21FD,0x21FE,0x21FF /* 21F8 */ +}; + +static const uint16 weight_general_ci_page24[256]={ + 0x2400,0x2401,0x2402,0x2403,0x2404,0x2405,0x2406,0x2407, /* 2400 */ + 0x2408,0x2409,0x240A,0x240B,0x240C,0x240D,0x240E,0x240F, /* 2408 */ + 0x2410,0x2411,0x2412,0x2413,0x2414,0x2415,0x2416,0x2417, /* 2410 */ + 0x2418,0x2419,0x241A,0x241B,0x241C,0x241D,0x241E,0x241F, /* 2418 */ + 0x2420,0x2421,0x2422,0x2423,0x2424,0x2425,0x2426,0x2427, /* 2420 */ + 0x2428,0x2429,0x242A,0x242B,0x242C,0x242D,0x242E,0x242F, /* 2428 */ + 0x2430,0x2431,0x2432,0x2433,0x2434,0x2435,0x2436,0x2437, /* 2430 */ + 0x2438,0x2439,0x243A,0x243B,0x243C,0x243D,0x243E,0x243F, /* 2438 */ + 0x2440,0x2441,0x2442,0x2443,0x2444,0x2445,0x2446,0x2447, /* 2440 */ + 0x2448,0x2449,0x244A,0x244B,0x244C,0x244D,0x244E,0x244F, /* 2448 */ + 0x2450,0x2451,0x2452,0x2453,0x2454,0x2455,0x2456,0x2457, /* 2450 */ + 0x2458,0x2459,0x245A,0x245B,0x245C,0x245D,0x245E,0x245F, /* 2458 */ + 0x2460,0x2461,0x2462,0x2463,0x2464,0x2465,0x2466,0x2467, /* 2460 */ + 0x2468,0x2469,0x246A,0x246B,0x246C,0x246D,0x246E,0x246F, /* 2468 */ + 0x2470,0x2471,0x2472,0x2473,0x2474,0x2475,0x2476,0x2477, /* 2470 */ + 0x2478,0x2479,0x247A,0x247B,0x247C,0x247D,0x247E,0x247F, /* 2478 */ + 0x2480,0x2481,0x2482,0x2483,0x2484,0x2485,0x2486,0x2487, /* 2480 */ + 0x2488,0x2489,0x248A,0x248B,0x248C,0x248D,0x248E,0x248F, /* 2488 */ + 0x2490,0x2491,0x2492,0x2493,0x2494,0x2495,0x2496,0x2497, /* 2490 */ + 0x2498,0x2499,0x249A,0x249B,0x249C,0x249D,0x249E,0x249F, /* 2498 */ + 0x24A0,0x24A1,0x24A2,0x24A3,0x24A4,0x24A5,0x24A6,0x24A7, /* 24A0 */ + 0x24A8,0x24A9,0x24AA,0x24AB,0x24AC,0x24AD,0x24AE,0x24AF, /* 24A8 */ + 0x24B0,0x24B1,0x24B2,0x24B3,0x24B4,0x24B5,0x24B6,0x24B7, /* 24B0 */ + 0x24B8,0x24B9,0x24BA,0x24BB,0x24BC,0x24BD,0x24BE,0x24BF, /* 24B8 */ + 0x24C0,0x24C1,0x24C2,0x24C3,0x24C4,0x24C5,0x24C6,0x24C7, /* 24C0 */ + 0x24C8,0x24C9,0x24CA,0x24CB,0x24CC,0x24CD,0x24CE,0x24CF, /* 24C8 */ + 0x24B6,0x24B7,0x24B8,0x24B9,0x24BA,0x24BB,0x24BC,0x24BD, /* 24D0 */ + 0x24BE,0x24BF,0x24C0,0x24C1,0x24C2,0x24C3,0x24C4,0x24C5, /* 24D8 */ + 0x24C6,0x24C7,0x24C8,0x24C9,0x24CA,0x24CB,0x24CC,0x24CD, /* 24E0 */ + 0x24CE,0x24CF,0x24EA,0x24EB,0x24EC,0x24ED,0x24EE,0x24EF, /* 24E8 */ + 0x24F0,0x24F1,0x24F2,0x24F3,0x24F4,0x24F5,0x24F6,0x24F7, /* 24F0 */ + 0x24F8,0x24F9,0x24FA,0x24FB,0x24FC,0x24FD,0x24FE,0x24FF /* 24F8 */ +}; + +static const uint16 weight_general_ci_pageFF[256]={ + 0xFF00,0xFF01,0xFF02,0xFF03,0xFF04,0xFF05,0xFF06,0xFF07, /* FF00 */ + 0xFF08,0xFF09,0xFF0A,0xFF0B,0xFF0C,0xFF0D,0xFF0E,0xFF0F, /* FF08 */ + 0xFF10,0xFF11,0xFF12,0xFF13,0xFF14,0xFF15,0xFF16,0xFF17, /* FF10 */ + 0xFF18,0xFF19,0xFF1A,0xFF1B,0xFF1C,0xFF1D,0xFF1E,0xFF1F, /* FF18 */ + 0xFF20,0xFF21,0xFF22,0xFF23,0xFF24,0xFF25,0xFF26,0xFF27, /* FF20 */ + 0xFF28,0xFF29,0xFF2A,0xFF2B,0xFF2C,0xFF2D,0xFF2E,0xFF2F, /* FF28 */ + 0xFF30,0xFF31,0xFF32,0xFF33,0xFF34,0xFF35,0xFF36,0xFF37, /* FF30 */ + 0xFF38,0xFF39,0xFF3A,0xFF3B,0xFF3C,0xFF3D,0xFF3E,0xFF3F, /* FF38 */ + 0xFF40,0xFF21,0xFF22,0xFF23,0xFF24,0xFF25,0xFF26,0xFF27, /* FF40 */ + 0xFF28,0xFF29,0xFF2A,0xFF2B,0xFF2C,0xFF2D,0xFF2E,0xFF2F, /* FF48 */ + 0xFF30,0xFF31,0xFF32,0xFF33,0xFF34,0xFF35,0xFF36,0xFF37, /* FF50 */ + 0xFF38,0xFF39,0xFF3A,0xFF5B,0xFF5C,0xFF5D,0xFF5E,0xFF5F, /* FF58 */ + 0xFF60,0xFF61,0xFF62,0xFF63,0xFF64,0xFF65,0xFF66,0xFF67, /* FF60 */ + 0xFF68,0xFF69,0xFF6A,0xFF6B,0xFF6C,0xFF6D,0xFF6E,0xFF6F, /* FF68 */ + 0xFF70,0xFF71,0xFF72,0xFF73,0xFF74,0xFF75,0xFF76,0xFF77, /* FF70 */ + 0xFF78,0xFF79,0xFF7A,0xFF7B,0xFF7C,0xFF7D,0xFF7E,0xFF7F, /* FF78 */ + 0xFF80,0xFF81,0xFF82,0xFF83,0xFF84,0xFF85,0xFF86,0xFF87, /* FF80 */ + 0xFF88,0xFF89,0xFF8A,0xFF8B,0xFF8C,0xFF8D,0xFF8E,0xFF8F, /* FF88 */ + 0xFF90,0xFF91,0xFF92,0xFF93,0xFF94,0xFF95,0xFF96,0xFF97, /* FF90 */ + 0xFF98,0xFF99,0xFF9A,0xFF9B,0xFF9C,0xFF9D,0xFF9E,0xFF9F, /* FF98 */ + 0xFFA0,0xFFA1,0xFFA2,0xFFA3,0xFFA4,0xFFA5,0xFFA6,0xFFA7, /* FFA0 */ + 0xFFA8,0xFFA9,0xFFAA,0xFFAB,0xFFAC,0xFFAD,0xFFAE,0xFFAF, /* FFA8 */ + 0xFFB0,0xFFB1,0xFFB2,0xFFB3,0xFFB4,0xFFB5,0xFFB6,0xFFB7, /* FFB0 */ + 0xFFB8,0xFFB9,0xFFBA,0xFFBB,0xFFBC,0xFFBD,0xFFBE,0xFFBF, /* FFB8 */ + 0xFFC0,0xFFC1,0xFFC2,0xFFC3,0xFFC4,0xFFC5,0xFFC6,0xFFC7, /* FFC0 */ + 0xFFC8,0xFFC9,0xFFCA,0xFFCB,0xFFCC,0xFFCD,0xFFCE,0xFFCF, /* FFC8 */ + 0xFFD0,0xFFD1,0xFFD2,0xFFD3,0xFFD4,0xFFD5,0xFFD6,0xFFD7, /* FFD0 */ + 0xFFD8,0xFFD9,0xFFDA,0xFFDB,0xFFDC,0xFFDD,0xFFDE,0xFFDF, /* FFD8 */ + 0xFFE0,0xFFE1,0xFFE2,0xFFE3,0xFFE4,0xFFE5,0xFFE6,0xFFE7, /* FFE0 */ + 0xFFE8,0xFFE9,0xFFEA,0xFFEB,0xFFEC,0xFFED,0xFFEE,0xFFEF, /* FFE8 */ + 0xFFF0,0xFFF1,0xFFF2,0xFFF3,0xFFF4,0xFFF5,0xFFF6,0xFFF7, /* FFF0 */ + 0xFFF8,0xFFF9,0xFFFA,0xFFFB,0xFFFC,0xFFFD,0xFFFE,0xFFFF /* FFF8 */ +}; + +const uint16 * weight_general_ci_index[256]={ + weight_general_ci_page00, weight_general_ci_page01, + weight_general_ci_page02, weight_general_ci_page03, + weight_general_ci_page04, weight_general_ci_page05, + weight_general_ci_page06, weight_general_ci_page07, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + weight_general_ci_page1E, weight_general_ci_page1F, + NULL, weight_general_ci_page21, + NULL, NULL, + weight_general_ci_page24, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, weight_general_ci_pageFF +}; diff --git a/strings/ctype-unicode300-general_mysql500_ci.h b/strings/ctype-unicode300-general_mysql500_ci.h new file mode 100644 index 00000000000..3366c391380 --- /dev/null +++ b/strings/ctype-unicode300-general_mysql500_ci.h @@ -0,0 +1,190 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=weight_general_mysql500_ci \ + --max-char=0xFFFF \ + UnicodeData-3.0.0.txt + +*/ +const uint16 weight_general_mysql500_ci_page00[256]={ + 0x0000,0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007, /* 0000 */ + 0x0008,0x0009,0x000A,0x000B,0x000C,0x000D,0x000E,0x000F, /* 0008 */ + 0x0010,0x0011,0x0012,0x0013,0x0014,0x0015,0x0016,0x0017, /* 0010 */ + 0x0018,0x0019,0x001A,0x001B,0x001C,0x001D,0x001E,0x001F, /* 0018 */ + 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0027, /* 0020 */ + 0x0028,0x0029,0x002A,0x002B,0x002C,0x002D,0x002E,0x002F, /* 0028 */ + 0x0030,0x0031,0x0032,0x0033,0x0034,0x0035,0x0036,0x0037, /* 0030 */ + 0x0038,0x0039,0x003A,0x003B,0x003C,0x003D,0x003E,0x003F, /* 0038 */ + 0x0040,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047, /* 0040 */ + 0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F, /* 0048 */ + 0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057, /* 0050 */ + 0x0058,0x0059,0x005A,0x005B,0x005C,0x005D,0x005E,0x005F, /* 0058 */ + 0x0060,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047, /* 0060 */ + 0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F, /* 0068 */ + 0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057, /* 0070 */ + 0x0058,0x0059,0x005A,0x007B,0x007C,0x007D,0x007E,0x007F, /* 0078 */ + 0x0080,0x0081,0x0082,0x0083,0x0084,0x0085,0x0086,0x0087, /* 0080 */ + 0x0088,0x0089,0x008A,0x008B,0x008C,0x008D,0x008E,0x008F, /* 0088 */ + 0x0090,0x0091,0x0092,0x0093,0x0094,0x0095,0x0096,0x0097, /* 0090 */ + 0x0098,0x0099,0x009A,0x009B,0x009C,0x009D,0x009E,0x009F, /* 0098 */ + 0x00A0,0x00A1,0x00A2,0x00A3,0x00A4,0x00A5,0x00A6,0x00A7, /* 00A0 */ + 0x00A8,0x00A9,0x00AA,0x00AB,0x00AC,0x00AD,0x00AE,0x00AF, /* 00A8 */ + 0x00B0,0x00B1,0x00B2,0x00B3,0x00B4,0x039C,0x00B6,0x00B7, /* 00B0 */ + 0x00B8,0x00B9,0x00BA,0x00BB,0x00BC,0x00BD,0x00BE,0x00BF, /* 00B8 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x00C6,0x0043, /* 00C0 */ + 0x0045,0x0045,0x0045,0x0045,0x0049,0x0049,0x0049,0x0049, /* 00C8 */ + 0x00D0,0x004E,0x004F,0x004F,0x004F,0x004F,0x004F,0x00D7, /* 00D0 */ + 0x00D8,0x0055,0x0055,0x0055,0x0055,0x0059,0x00DE,0x00DF, /* 00D8 */ + 0x0041,0x0041,0x0041,0x0041,0x0041,0x0041,0x00C6,0x0043, /* 00E0 */ + 0x0045,0x0045,0x0045,0x0045,0x0049,0x0049,0x0049,0x0049, /* 00E8 */ + 0x00D0,0x004E,0x004F,0x004F,0x004F,0x004F,0x004F,0x00F7, /* 00F0 */ + 0x00D8,0x0055,0x0055,0x0055,0x0055,0x0059,0x00DE,0x0059 /* 00F8 */ +}; + +const uint16 * weight_general_mysql500_ci_index[256]={ + weight_general_mysql500_ci_page00, weight_general_ci_page01, + weight_general_ci_page02, weight_general_ci_page03, + weight_general_ci_page04, weight_general_ci_page05, + weight_general_ci_page06, weight_general_ci_page07, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + weight_general_ci_page1E, weight_general_ci_page1F, + NULL, weight_general_ci_page21, + NULL, NULL, + weight_general_ci_page24, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, weight_general_ci_pageFF +}; diff --git a/strings/ctype-unicode520-casefold.h b/strings/ctype-unicode520-casefold.h new file mode 100644 index 00000000000..bcd0ff355be --- /dev/null +++ b/strings/ctype-unicode520-casefold.h @@ -0,0 +1,3192 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2023, MariaDB Corporation. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +*/ + +/* + Generated by: + ./unidata-dump \ + --mode=casefold \ + --page-name=u520_casefold_page \ + --index-name=my_u520_casefold_index \ + UnicodeData-5.2.0.txt + +*/ +const MY_CASEFOLD_CHARACTER u520_casefold_page00[256]={ + {0x0000,0x0000},{0x0001,0x0001}, /* 0000 */ + {0x0002,0x0002},{0x0003,0x0003}, /* 0002 */ + {0x0004,0x0004},{0x0005,0x0005}, /* 0004 */ + {0x0006,0x0006},{0x0007,0x0007}, /* 0006 */ + {0x0008,0x0008},{0x0009,0x0009}, /* 0008 */ + {0x000A,0x000A},{0x000B,0x000B}, /* 000A */ + {0x000C,0x000C},{0x000D,0x000D}, /* 000C */ + {0x000E,0x000E},{0x000F,0x000F}, /* 000E */ + {0x0010,0x0010},{0x0011,0x0011}, /* 0010 */ + {0x0012,0x0012},{0x0013,0x0013}, /* 0012 */ + {0x0014,0x0014},{0x0015,0x0015}, /* 0014 */ + {0x0016,0x0016},{0x0017,0x0017}, /* 0016 */ + {0x0018,0x0018},{0x0019,0x0019}, /* 0018 */ + {0x001A,0x001A},{0x001B,0x001B}, /* 001A */ + {0x001C,0x001C},{0x001D,0x001D}, /* 001C */ + {0x001E,0x001E},{0x001F,0x001F}, /* 001E */ + {0x0020,0x0020},{0x0021,0x0021}, /* 0020 */ + {0x0022,0x0022},{0x0023,0x0023}, /* 0022 */ + {0x0024,0x0024},{0x0025,0x0025}, /* 0024 */ + {0x0026,0x0026},{0x0027,0x0027}, /* 0026 */ + {0x0028,0x0028},{0x0029,0x0029}, /* 0028 */ + {0x002A,0x002A},{0x002B,0x002B}, /* 002A */ + {0x002C,0x002C},{0x002D,0x002D}, /* 002C */ + {0x002E,0x002E},{0x002F,0x002F}, /* 002E */ + {0x0030,0x0030},{0x0031,0x0031}, /* 0030 */ + {0x0032,0x0032},{0x0033,0x0033}, /* 0032 */ + {0x0034,0x0034},{0x0035,0x0035}, /* 0034 */ + {0x0036,0x0036},{0x0037,0x0037}, /* 0036 */ + {0x0038,0x0038},{0x0039,0x0039}, /* 0038 */ + {0x003A,0x003A},{0x003B,0x003B}, /* 003A */ + {0x003C,0x003C},{0x003D,0x003D}, /* 003C */ + {0x003E,0x003E},{0x003F,0x003F}, /* 003E */ + {0x0040,0x0040},{0x0041,0x0061}, /* 0040 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0042 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0044 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0046 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0048 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 004A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 004C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 004E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0050 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0052 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0054 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0056 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0058 */ + {0x005A,0x007A},{0x005B,0x005B}, /* 005A */ + {0x005C,0x005C},{0x005D,0x005D}, /* 005C */ + {0x005E,0x005E},{0x005F,0x005F}, /* 005E */ + {0x0060,0x0060},{0x0041,0x0061}, /* 0060 */ + {0x0042,0x0062},{0x0043,0x0063}, /* 0062 */ + {0x0044,0x0064},{0x0045,0x0065}, /* 0064 */ + {0x0046,0x0066},{0x0047,0x0067}, /* 0066 */ + {0x0048,0x0068},{0x0049,0x0069}, /* 0068 */ + {0x004A,0x006A},{0x004B,0x006B}, /* 006A */ + {0x004C,0x006C},{0x004D,0x006D}, /* 006C */ + {0x004E,0x006E},{0x004F,0x006F}, /* 006E */ + {0x0050,0x0070},{0x0051,0x0071}, /* 0070 */ + {0x0052,0x0072},{0x0053,0x0073}, /* 0072 */ + {0x0054,0x0074},{0x0055,0x0075}, /* 0074 */ + {0x0056,0x0076},{0x0057,0x0077}, /* 0076 */ + {0x0058,0x0078},{0x0059,0x0079}, /* 0078 */ + {0x005A,0x007A},{0x007B,0x007B}, /* 007A */ + {0x007C,0x007C},{0x007D,0x007D}, /* 007C */ + {0x007E,0x007E},{0x007F,0x007F}, /* 007E */ + {0x0080,0x0080},{0x0081,0x0081}, /* 0080 */ + {0x0082,0x0082},{0x0083,0x0083}, /* 0082 */ + {0x0084,0x0084},{0x0085,0x0085}, /* 0084 */ + {0x0086,0x0086},{0x0087,0x0087}, /* 0086 */ + {0x0088,0x0088},{0x0089,0x0089}, /* 0088 */ + {0x008A,0x008A},{0x008B,0x008B}, /* 008A */ + {0x008C,0x008C},{0x008D,0x008D}, /* 008C */ + {0x008E,0x008E},{0x008F,0x008F}, /* 008E */ + {0x0090,0x0090},{0x0091,0x0091}, /* 0090 */ + {0x0092,0x0092},{0x0093,0x0093}, /* 0092 */ + {0x0094,0x0094},{0x0095,0x0095}, /* 0094 */ + {0x0096,0x0096},{0x0097,0x0097}, /* 0096 */ + {0x0098,0x0098},{0x0099,0x0099}, /* 0098 */ + {0x009A,0x009A},{0x009B,0x009B}, /* 009A */ + {0x009C,0x009C},{0x009D,0x009D}, /* 009C */ + {0x009E,0x009E},{0x009F,0x009F}, /* 009E */ + {0x00A0,0x00A0},{0x00A1,0x00A1}, /* 00A0 */ + {0x00A2,0x00A2},{0x00A3,0x00A3}, /* 00A2 */ + {0x00A4,0x00A4},{0x00A5,0x00A5}, /* 00A4 */ + {0x00A6,0x00A6},{0x00A7,0x00A7}, /* 00A6 */ + {0x00A8,0x00A8},{0x00A9,0x00A9}, /* 00A8 */ + {0x00AA,0x00AA},{0x00AB,0x00AB}, /* 00AA */ + {0x00AC,0x00AC},{0x00AD,0x00AD}, /* 00AC */ + {0x00AE,0x00AE},{0x00AF,0x00AF}, /* 00AE */ + {0x00B0,0x00B0},{0x00B1,0x00B1}, /* 00B0 */ + {0x00B2,0x00B2},{0x00B3,0x00B3}, /* 00B2 */ + {0x00B4,0x00B4},{0x039C,0x00B5}, /* 00B4 */ + {0x00B6,0x00B6},{0x00B7,0x00B7}, /* 00B6 */ + {0x00B8,0x00B8},{0x00B9,0x00B9}, /* 00B8 */ + {0x00BA,0x00BA},{0x00BB,0x00BB}, /* 00BA */ + {0x00BC,0x00BC},{0x00BD,0x00BD}, /* 00BC */ + {0x00BE,0x00BE},{0x00BF,0x00BF}, /* 00BE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00C0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00C2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00C4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00C6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00C8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00CA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00CC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00CE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00D0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00D2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00D4 */ + {0x00D6,0x00F6},{0x00D7,0x00D7}, /* 00D6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00D8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00DA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00DC */ + {0x00DE,0x00FE},{0x00DF,0x00DF}, /* 00DE */ + {0x00C0,0x00E0},{0x00C1,0x00E1}, /* 00E0 */ + {0x00C2,0x00E2},{0x00C3,0x00E3}, /* 00E2 */ + {0x00C4,0x00E4},{0x00C5,0x00E5}, /* 00E4 */ + {0x00C6,0x00E6},{0x00C7,0x00E7}, /* 00E6 */ + {0x00C8,0x00E8},{0x00C9,0x00E9}, /* 00E8 */ + {0x00CA,0x00EA},{0x00CB,0x00EB}, /* 00EA */ + {0x00CC,0x00EC},{0x00CD,0x00ED}, /* 00EC */ + {0x00CE,0x00EE},{0x00CF,0x00EF}, /* 00EE */ + {0x00D0,0x00F0},{0x00D1,0x00F1}, /* 00F0 */ + {0x00D2,0x00F2},{0x00D3,0x00F3}, /* 00F2 */ + {0x00D4,0x00F4},{0x00D5,0x00F5}, /* 00F4 */ + {0x00D6,0x00F6},{0x00F7,0x00F7}, /* 00F6 */ + {0x00D8,0x00F8},{0x00D9,0x00F9}, /* 00F8 */ + {0x00DA,0x00FA},{0x00DB,0x00FB}, /* 00FA */ + {0x00DC,0x00FC},{0x00DD,0x00FD}, /* 00FC */ + {0x00DE,0x00FE},{0x0178,0x00FF} /* 00FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page01[256]={ + {0x0100,0x0101},{0x0100,0x0101}, /* 0100 */ + {0x0102,0x0103},{0x0102,0x0103}, /* 0102 */ + {0x0104,0x0105},{0x0104,0x0105}, /* 0104 */ + {0x0106,0x0107},{0x0106,0x0107}, /* 0106 */ + {0x0108,0x0109},{0x0108,0x0109}, /* 0108 */ + {0x010A,0x010B},{0x010A,0x010B}, /* 010A */ + {0x010C,0x010D},{0x010C,0x010D}, /* 010C */ + {0x010E,0x010F},{0x010E,0x010F}, /* 010E */ + {0x0110,0x0111},{0x0110,0x0111}, /* 0110 */ + {0x0112,0x0113},{0x0112,0x0113}, /* 0112 */ + {0x0114,0x0115},{0x0114,0x0115}, /* 0114 */ + {0x0116,0x0117},{0x0116,0x0117}, /* 0116 */ + {0x0118,0x0119},{0x0118,0x0119}, /* 0118 */ + {0x011A,0x011B},{0x011A,0x011B}, /* 011A */ + {0x011C,0x011D},{0x011C,0x011D}, /* 011C */ + {0x011E,0x011F},{0x011E,0x011F}, /* 011E */ + {0x0120,0x0121},{0x0120,0x0121}, /* 0120 */ + {0x0122,0x0123},{0x0122,0x0123}, /* 0122 */ + {0x0124,0x0125},{0x0124,0x0125}, /* 0124 */ + {0x0126,0x0127},{0x0126,0x0127}, /* 0126 */ + {0x0128,0x0129},{0x0128,0x0129}, /* 0128 */ + {0x012A,0x012B},{0x012A,0x012B}, /* 012A */ + {0x012C,0x012D},{0x012C,0x012D}, /* 012C */ + {0x012E,0x012F},{0x012E,0x012F}, /* 012E */ + {0x0130,0x0069},{0x0049,0x0131}, /* 0130 */ + {0x0132,0x0133},{0x0132,0x0133}, /* 0132 */ + {0x0134,0x0135},{0x0134,0x0135}, /* 0134 */ + {0x0136,0x0137},{0x0136,0x0137}, /* 0136 */ + {0x0138,0x0138},{0x0139,0x013A}, /* 0138 */ + {0x0139,0x013A},{0x013B,0x013C}, /* 013A */ + {0x013B,0x013C},{0x013D,0x013E}, /* 013C */ + {0x013D,0x013E},{0x013F,0x0140}, /* 013E */ + {0x013F,0x0140},{0x0141,0x0142}, /* 0140 */ + {0x0141,0x0142},{0x0143,0x0144}, /* 0142 */ + {0x0143,0x0144},{0x0145,0x0146}, /* 0144 */ + {0x0145,0x0146},{0x0147,0x0148}, /* 0146 */ + {0x0147,0x0148},{0x0149,0x0149}, /* 0148 */ + {0x014A,0x014B},{0x014A,0x014B}, /* 014A */ + {0x014C,0x014D},{0x014C,0x014D}, /* 014C */ + {0x014E,0x014F},{0x014E,0x014F}, /* 014E */ + {0x0150,0x0151},{0x0150,0x0151}, /* 0150 */ + {0x0152,0x0153},{0x0152,0x0153}, /* 0152 */ + {0x0154,0x0155},{0x0154,0x0155}, /* 0154 */ + {0x0156,0x0157},{0x0156,0x0157}, /* 0156 */ + {0x0158,0x0159},{0x0158,0x0159}, /* 0158 */ + {0x015A,0x015B},{0x015A,0x015B}, /* 015A */ + {0x015C,0x015D},{0x015C,0x015D}, /* 015C */ + {0x015E,0x015F},{0x015E,0x015F}, /* 015E */ + {0x0160,0x0161},{0x0160,0x0161}, /* 0160 */ + {0x0162,0x0163},{0x0162,0x0163}, /* 0162 */ + {0x0164,0x0165},{0x0164,0x0165}, /* 0164 */ + {0x0166,0x0167},{0x0166,0x0167}, /* 0166 */ + {0x0168,0x0169},{0x0168,0x0169}, /* 0168 */ + {0x016A,0x016B},{0x016A,0x016B}, /* 016A */ + {0x016C,0x016D},{0x016C,0x016D}, /* 016C */ + {0x016E,0x016F},{0x016E,0x016F}, /* 016E */ + {0x0170,0x0171},{0x0170,0x0171}, /* 0170 */ + {0x0172,0x0173},{0x0172,0x0173}, /* 0172 */ + {0x0174,0x0175},{0x0174,0x0175}, /* 0174 */ + {0x0176,0x0177},{0x0176,0x0177}, /* 0176 */ + {0x0178,0x00FF},{0x0179,0x017A}, /* 0178 */ + {0x0179,0x017A},{0x017B,0x017C}, /* 017A */ + {0x017B,0x017C},{0x017D,0x017E}, /* 017C */ + {0x017D,0x017E},{0x0053,0x017F}, /* 017E */ + {0x0243,0x0180},{0x0181,0x0253}, /* 0180 */ + {0x0182,0x0183},{0x0182,0x0183}, /* 0182 */ + {0x0184,0x0185},{0x0184,0x0185}, /* 0184 */ + {0x0186,0x0254},{0x0187,0x0188}, /* 0186 */ + {0x0187,0x0188},{0x0189,0x0256}, /* 0188 */ + {0x018A,0x0257},{0x018B,0x018C}, /* 018A */ + {0x018B,0x018C},{0x018D,0x018D}, /* 018C */ + {0x018E,0x01DD},{0x018F,0x0259}, /* 018E */ + {0x0190,0x025B},{0x0191,0x0192}, /* 0190 */ + {0x0191,0x0192},{0x0193,0x0260}, /* 0192 */ + {0x0194,0x0263},{0x01F6,0x0195}, /* 0194 */ + {0x0196,0x0269},{0x0197,0x0268}, /* 0196 */ + {0x0198,0x0199},{0x0198,0x0199}, /* 0198 */ + {0x023D,0x019A},{0x019B,0x019B}, /* 019A */ + {0x019C,0x026F},{0x019D,0x0272}, /* 019C */ + {0x0220,0x019E},{0x019F,0x0275}, /* 019E */ + {0x01A0,0x01A1},{0x01A0,0x01A1}, /* 01A0 */ + {0x01A2,0x01A3},{0x01A2,0x01A3}, /* 01A2 */ + {0x01A4,0x01A5},{0x01A4,0x01A5}, /* 01A4 */ + {0x01A6,0x0280},{0x01A7,0x01A8}, /* 01A6 */ + {0x01A7,0x01A8},{0x01A9,0x0283}, /* 01A8 */ + {0x01AA,0x01AA},{0x01AB,0x01AB}, /* 01AA */ + {0x01AC,0x01AD},{0x01AC,0x01AD}, /* 01AC */ + {0x01AE,0x0288},{0x01AF,0x01B0}, /* 01AE */ + {0x01AF,0x01B0},{0x01B1,0x028A}, /* 01B0 */ + {0x01B2,0x028B},{0x01B3,0x01B4}, /* 01B2 */ + {0x01B3,0x01B4},{0x01B5,0x01B6}, /* 01B4 */ + {0x01B5,0x01B6},{0x01B7,0x0292}, /* 01B6 */ + {0x01B8,0x01B9},{0x01B8,0x01B9}, /* 01B8 */ + {0x01BA,0x01BA},{0x01BB,0x01BB}, /* 01BA */ + {0x01BC,0x01BD},{0x01BC,0x01BD}, /* 01BC */ + {0x01BE,0x01BE},{0x01F7,0x01BF}, /* 01BE */ + {0x01C0,0x01C0},{0x01C1,0x01C1}, /* 01C0 */ + {0x01C2,0x01C2},{0x01C3,0x01C3}, /* 01C2 */ + {0x01C4,0x01C6},{0x01C4,0x01C6}, /* 01C4 */ + {0x01C4,0x01C6},{0x01C7,0x01C9}, /* 01C6 */ + {0x01C7,0x01C9},{0x01C7,0x01C9}, /* 01C8 */ + {0x01CA,0x01CC},{0x01CA,0x01CC}, /* 01CA */ + {0x01CA,0x01CC},{0x01CD,0x01CE}, /* 01CC */ + {0x01CD,0x01CE},{0x01CF,0x01D0}, /* 01CE */ + {0x01CF,0x01D0},{0x01D1,0x01D2}, /* 01D0 */ + {0x01D1,0x01D2},{0x01D3,0x01D4}, /* 01D2 */ + {0x01D3,0x01D4},{0x01D5,0x01D6}, /* 01D4 */ + {0x01D5,0x01D6},{0x01D7,0x01D8}, /* 01D6 */ + {0x01D7,0x01D8},{0x01D9,0x01DA}, /* 01D8 */ + {0x01D9,0x01DA},{0x01DB,0x01DC}, /* 01DA */ + {0x01DB,0x01DC},{0x018E,0x01DD}, /* 01DC */ + {0x01DE,0x01DF},{0x01DE,0x01DF}, /* 01DE */ + {0x01E0,0x01E1},{0x01E0,0x01E1}, /* 01E0 */ + {0x01E2,0x01E3},{0x01E2,0x01E3}, /* 01E2 */ + {0x01E4,0x01E5},{0x01E4,0x01E5}, /* 01E4 */ + {0x01E6,0x01E7},{0x01E6,0x01E7}, /* 01E6 */ + {0x01E8,0x01E9},{0x01E8,0x01E9}, /* 01E8 */ + {0x01EA,0x01EB},{0x01EA,0x01EB}, /* 01EA */ + {0x01EC,0x01ED},{0x01EC,0x01ED}, /* 01EC */ + {0x01EE,0x01EF},{0x01EE,0x01EF}, /* 01EE */ + {0x01F0,0x01F0},{0x01F1,0x01F3}, /* 01F0 */ + {0x01F1,0x01F3},{0x01F1,0x01F3}, /* 01F2 */ + {0x01F4,0x01F5},{0x01F4,0x01F5}, /* 01F4 */ + {0x01F6,0x0195},{0x01F7,0x01BF}, /* 01F6 */ + {0x01F8,0x01F9},{0x01F8,0x01F9}, /* 01F8 */ + {0x01FA,0x01FB},{0x01FA,0x01FB}, /* 01FA */ + {0x01FC,0x01FD},{0x01FC,0x01FD}, /* 01FC */ + {0x01FE,0x01FF},{0x01FE,0x01FF} /* 01FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page02[256]={ + {0x0200,0x0201},{0x0200,0x0201}, /* 0200 */ + {0x0202,0x0203},{0x0202,0x0203}, /* 0202 */ + {0x0204,0x0205},{0x0204,0x0205}, /* 0204 */ + {0x0206,0x0207},{0x0206,0x0207}, /* 0206 */ + {0x0208,0x0209},{0x0208,0x0209}, /* 0208 */ + {0x020A,0x020B},{0x020A,0x020B}, /* 020A */ + {0x020C,0x020D},{0x020C,0x020D}, /* 020C */ + {0x020E,0x020F},{0x020E,0x020F}, /* 020E */ + {0x0210,0x0211},{0x0210,0x0211}, /* 0210 */ + {0x0212,0x0213},{0x0212,0x0213}, /* 0212 */ + {0x0214,0x0215},{0x0214,0x0215}, /* 0214 */ + {0x0216,0x0217},{0x0216,0x0217}, /* 0216 */ + {0x0218,0x0219},{0x0218,0x0219}, /* 0218 */ + {0x021A,0x021B},{0x021A,0x021B}, /* 021A */ + {0x021C,0x021D},{0x021C,0x021D}, /* 021C */ + {0x021E,0x021F},{0x021E,0x021F}, /* 021E */ + {0x0220,0x019E},{0x0221,0x0221}, /* 0220 */ + {0x0222,0x0223},{0x0222,0x0223}, /* 0222 */ + {0x0224,0x0225},{0x0224,0x0225}, /* 0224 */ + {0x0226,0x0227},{0x0226,0x0227}, /* 0226 */ + {0x0228,0x0229},{0x0228,0x0229}, /* 0228 */ + {0x022A,0x022B},{0x022A,0x022B}, /* 022A */ + {0x022C,0x022D},{0x022C,0x022D}, /* 022C */ + {0x022E,0x022F},{0x022E,0x022F}, /* 022E */ + {0x0230,0x0231},{0x0230,0x0231}, /* 0230 */ + {0x0232,0x0233},{0x0232,0x0233}, /* 0232 */ + {0x0234,0x0234},{0x0235,0x0235}, /* 0234 */ + {0x0236,0x0236},{0x0237,0x0237}, /* 0236 */ + {0x0238,0x0238},{0x0239,0x0239}, /* 0238 */ + {0x023A,0x2C65},{0x023B,0x023C}, /* 023A */ + {0x023B,0x023C},{0x023D,0x019A}, /* 023C */ + {0x023E,0x2C66},{0x2C7E,0x023F}, /* 023E */ + {0x2C7F,0x0240},{0x0241,0x0242}, /* 0240 */ + {0x0241,0x0242},{0x0243,0x0180}, /* 0242 */ + {0x0244,0x0289},{0x0245,0x028C}, /* 0244 */ + {0x0246,0x0247},{0x0246,0x0247}, /* 0246 */ + {0x0248,0x0249},{0x0248,0x0249}, /* 0248 */ + {0x024A,0x024B},{0x024A,0x024B}, /* 024A */ + {0x024C,0x024D},{0x024C,0x024D}, /* 024C */ + {0x024E,0x024F},{0x024E,0x024F}, /* 024E */ + {0x2C6F,0x0250},{0x2C6D,0x0251}, /* 0250 */ + {0x2C70,0x0252},{0x0181,0x0253}, /* 0252 */ + {0x0186,0x0254},{0x0255,0x0255}, /* 0254 */ + {0x0189,0x0256},{0x018A,0x0257}, /* 0256 */ + {0x0258,0x0258},{0x018F,0x0259}, /* 0258 */ + {0x025A,0x025A},{0x0190,0x025B}, /* 025A */ + {0x025C,0x025C},{0x025D,0x025D}, /* 025C */ + {0x025E,0x025E},{0x025F,0x025F}, /* 025E */ + {0x0193,0x0260},{0x0261,0x0261}, /* 0260 */ + {0x0262,0x0262},{0x0194,0x0263}, /* 0262 */ + {0x0264,0x0264},{0x0265,0x0265}, /* 0264 */ + {0x0266,0x0266},{0x0267,0x0267}, /* 0266 */ + {0x0197,0x0268},{0x0196,0x0269}, /* 0268 */ + {0x026A,0x026A},{0x2C62,0x026B}, /* 026A */ + {0x026C,0x026C},{0x026D,0x026D}, /* 026C */ + {0x026E,0x026E},{0x019C,0x026F}, /* 026E */ + {0x0270,0x0270},{0x2C6E,0x0271}, /* 0270 */ + {0x019D,0x0272},{0x0273,0x0273}, /* 0272 */ + {0x0274,0x0274},{0x019F,0x0275}, /* 0274 */ + {0x0276,0x0276},{0x0277,0x0277}, /* 0276 */ + {0x0278,0x0278},{0x0279,0x0279}, /* 0278 */ + {0x027A,0x027A},{0x027B,0x027B}, /* 027A */ + {0x027C,0x027C},{0x2C64,0x027D}, /* 027C */ + {0x027E,0x027E},{0x027F,0x027F}, /* 027E */ + {0x01A6,0x0280},{0x0281,0x0281}, /* 0280 */ + {0x0282,0x0282},{0x01A9,0x0283}, /* 0282 */ + {0x0284,0x0284},{0x0285,0x0285}, /* 0284 */ + {0x0286,0x0286},{0x0287,0x0287}, /* 0286 */ + {0x01AE,0x0288},{0x0244,0x0289}, /* 0288 */ + {0x01B1,0x028A},{0x01B2,0x028B}, /* 028A */ + {0x0245,0x028C},{0x028D,0x028D}, /* 028C */ + {0x028E,0x028E},{0x028F,0x028F}, /* 028E */ + {0x0290,0x0290},{0x0291,0x0291}, /* 0290 */ + {0x01B7,0x0292},{0x0293,0x0293}, /* 0292 */ + {0x0294,0x0294},{0x0295,0x0295}, /* 0294 */ + {0x0296,0x0296},{0x0297,0x0297}, /* 0296 */ + {0x0298,0x0298},{0x0299,0x0299}, /* 0298 */ + {0x029A,0x029A},{0x029B,0x029B}, /* 029A */ + {0x029C,0x029C},{0x029D,0x029D}, /* 029C */ + {0x029E,0x029E},{0x029F,0x029F}, /* 029E */ + {0x02A0,0x02A0},{0x02A1,0x02A1}, /* 02A0 */ + {0x02A2,0x02A2},{0x02A3,0x02A3}, /* 02A2 */ + {0x02A4,0x02A4},{0x02A5,0x02A5}, /* 02A4 */ + {0x02A6,0x02A6},{0x02A7,0x02A7}, /* 02A6 */ + {0x02A8,0x02A8},{0x02A9,0x02A9}, /* 02A8 */ + {0x02AA,0x02AA},{0x02AB,0x02AB}, /* 02AA */ + {0x02AC,0x02AC},{0x02AD,0x02AD}, /* 02AC */ + {0x02AE,0x02AE},{0x02AF,0x02AF}, /* 02AE */ + {0x02B0,0x02B0},{0x02B1,0x02B1}, /* 02B0 */ + {0x02B2,0x02B2},{0x02B3,0x02B3}, /* 02B2 */ + {0x02B4,0x02B4},{0x02B5,0x02B5}, /* 02B4 */ + {0x02B6,0x02B6},{0x02B7,0x02B7}, /* 02B6 */ + {0x02B8,0x02B8},{0x02B9,0x02B9}, /* 02B8 */ + {0x02BA,0x02BA},{0x02BB,0x02BB}, /* 02BA */ + {0x02BC,0x02BC},{0x02BD,0x02BD}, /* 02BC */ + {0x02BE,0x02BE},{0x02BF,0x02BF}, /* 02BE */ + {0x02C0,0x02C0},{0x02C1,0x02C1}, /* 02C0 */ + {0x02C2,0x02C2},{0x02C3,0x02C3}, /* 02C2 */ + {0x02C4,0x02C4},{0x02C5,0x02C5}, /* 02C4 */ + {0x02C6,0x02C6},{0x02C7,0x02C7}, /* 02C6 */ + {0x02C8,0x02C8},{0x02C9,0x02C9}, /* 02C8 */ + {0x02CA,0x02CA},{0x02CB,0x02CB}, /* 02CA */ + {0x02CC,0x02CC},{0x02CD,0x02CD}, /* 02CC */ + {0x02CE,0x02CE},{0x02CF,0x02CF}, /* 02CE */ + {0x02D0,0x02D0},{0x02D1,0x02D1}, /* 02D0 */ + {0x02D2,0x02D2},{0x02D3,0x02D3}, /* 02D2 */ + {0x02D4,0x02D4},{0x02D5,0x02D5}, /* 02D4 */ + {0x02D6,0x02D6},{0x02D7,0x02D7}, /* 02D6 */ + {0x02D8,0x02D8},{0x02D9,0x02D9}, /* 02D8 */ + {0x02DA,0x02DA},{0x02DB,0x02DB}, /* 02DA */ + {0x02DC,0x02DC},{0x02DD,0x02DD}, /* 02DC */ + {0x02DE,0x02DE},{0x02DF,0x02DF}, /* 02DE */ + {0x02E0,0x02E0},{0x02E1,0x02E1}, /* 02E0 */ + {0x02E2,0x02E2},{0x02E3,0x02E3}, /* 02E2 */ + {0x02E4,0x02E4},{0x02E5,0x02E5}, /* 02E4 */ + {0x02E6,0x02E6},{0x02E7,0x02E7}, /* 02E6 */ + {0x02E8,0x02E8},{0x02E9,0x02E9}, /* 02E8 */ + {0x02EA,0x02EA},{0x02EB,0x02EB}, /* 02EA */ + {0x02EC,0x02EC},{0x02ED,0x02ED}, /* 02EC */ + {0x02EE,0x02EE},{0x02EF,0x02EF}, /* 02EE */ + {0x02F0,0x02F0},{0x02F1,0x02F1}, /* 02F0 */ + {0x02F2,0x02F2},{0x02F3,0x02F3}, /* 02F2 */ + {0x02F4,0x02F4},{0x02F5,0x02F5}, /* 02F4 */ + {0x02F6,0x02F6},{0x02F7,0x02F7}, /* 02F6 */ + {0x02F8,0x02F8},{0x02F9,0x02F9}, /* 02F8 */ + {0x02FA,0x02FA},{0x02FB,0x02FB}, /* 02FA */ + {0x02FC,0x02FC},{0x02FD,0x02FD}, /* 02FC */ + {0x02FE,0x02FE},{0x02FF,0x02FF} /* 02FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page03[256]={ + {0x0300,0x0300},{0x0301,0x0301}, /* 0300 */ + {0x0302,0x0302},{0x0303,0x0303}, /* 0302 */ + {0x0304,0x0304},{0x0305,0x0305}, /* 0304 */ + {0x0306,0x0306},{0x0307,0x0307}, /* 0306 */ + {0x0308,0x0308},{0x0309,0x0309}, /* 0308 */ + {0x030A,0x030A},{0x030B,0x030B}, /* 030A */ + {0x030C,0x030C},{0x030D,0x030D}, /* 030C */ + {0x030E,0x030E},{0x030F,0x030F}, /* 030E */ + {0x0310,0x0310},{0x0311,0x0311}, /* 0310 */ + {0x0312,0x0312},{0x0313,0x0313}, /* 0312 */ + {0x0314,0x0314},{0x0315,0x0315}, /* 0314 */ + {0x0316,0x0316},{0x0317,0x0317}, /* 0316 */ + {0x0318,0x0318},{0x0319,0x0319}, /* 0318 */ + {0x031A,0x031A},{0x031B,0x031B}, /* 031A */ + {0x031C,0x031C},{0x031D,0x031D}, /* 031C */ + {0x031E,0x031E},{0x031F,0x031F}, /* 031E */ + {0x0320,0x0320},{0x0321,0x0321}, /* 0320 */ + {0x0322,0x0322},{0x0323,0x0323}, /* 0322 */ + {0x0324,0x0324},{0x0325,0x0325}, /* 0324 */ + {0x0326,0x0326},{0x0327,0x0327}, /* 0326 */ + {0x0328,0x0328},{0x0329,0x0329}, /* 0328 */ + {0x032A,0x032A},{0x032B,0x032B}, /* 032A */ + {0x032C,0x032C},{0x032D,0x032D}, /* 032C */ + {0x032E,0x032E},{0x032F,0x032F}, /* 032E */ + {0x0330,0x0330},{0x0331,0x0331}, /* 0330 */ + {0x0332,0x0332},{0x0333,0x0333}, /* 0332 */ + {0x0334,0x0334},{0x0335,0x0335}, /* 0334 */ + {0x0336,0x0336},{0x0337,0x0337}, /* 0336 */ + {0x0338,0x0338},{0x0339,0x0339}, /* 0338 */ + {0x033A,0x033A},{0x033B,0x033B}, /* 033A */ + {0x033C,0x033C},{0x033D,0x033D}, /* 033C */ + {0x033E,0x033E},{0x033F,0x033F}, /* 033E */ + {0x0340,0x0340},{0x0341,0x0341}, /* 0340 */ + {0x0342,0x0342},{0x0343,0x0343}, /* 0342 */ + {0x0344,0x0344},{0x0399,0x0345}, /* 0344 */ + {0x0346,0x0346},{0x0347,0x0347}, /* 0346 */ + {0x0348,0x0348},{0x0349,0x0349}, /* 0348 */ + {0x034A,0x034A},{0x034B,0x034B}, /* 034A */ + {0x034C,0x034C},{0x034D,0x034D}, /* 034C */ + {0x034E,0x034E},{0x034F,0x034F}, /* 034E */ + {0x0350,0x0350},{0x0351,0x0351}, /* 0350 */ + {0x0352,0x0352},{0x0353,0x0353}, /* 0352 */ + {0x0354,0x0354},{0x0355,0x0355}, /* 0354 */ + {0x0356,0x0356},{0x0357,0x0357}, /* 0356 */ + {0x0358,0x0358},{0x0359,0x0359}, /* 0358 */ + {0x035A,0x035A},{0x035B,0x035B}, /* 035A */ + {0x035C,0x035C},{0x035D,0x035D}, /* 035C */ + {0x035E,0x035E},{0x035F,0x035F}, /* 035E */ + {0x0360,0x0360},{0x0361,0x0361}, /* 0360 */ + {0x0362,0x0362},{0x0363,0x0363}, /* 0362 */ + {0x0364,0x0364},{0x0365,0x0365}, /* 0364 */ + {0x0366,0x0366},{0x0367,0x0367}, /* 0366 */ + {0x0368,0x0368},{0x0369,0x0369}, /* 0368 */ + {0x036A,0x036A},{0x036B,0x036B}, /* 036A */ + {0x036C,0x036C},{0x036D,0x036D}, /* 036C */ + {0x036E,0x036E},{0x036F,0x036F}, /* 036E */ + {0x0370,0x0371},{0x0370,0x0371}, /* 0370 */ + {0x0372,0x0373},{0x0372,0x0373}, /* 0372 */ + {0x0374,0x0374},{0x0375,0x0375}, /* 0374 */ + {0x0376,0x0377},{0x0376,0x0377}, /* 0376 */ + {0x0378,0x0378},{0x0379,0x0379}, /* 0378 */ + {0x037A,0x037A},{0x03FD,0x037B}, /* 037A */ + {0x03FE,0x037C},{0x03FF,0x037D}, /* 037C */ + {0x037E,0x037E},{0x037F,0x037F}, /* 037E */ + {0x0380,0x0380},{0x0381,0x0381}, /* 0380 */ + {0x0382,0x0382},{0x0383,0x0383}, /* 0382 */ + {0x0384,0x0384},{0x0385,0x0385}, /* 0384 */ + {0x0386,0x03AC},{0x0387,0x0387}, /* 0386 */ + {0x0388,0x03AD},{0x0389,0x03AE}, /* 0388 */ + {0x038A,0x03AF},{0x038B,0x038B}, /* 038A */ + {0x038C,0x03CC},{0x038D,0x038D}, /* 038C */ + {0x038E,0x03CD},{0x038F,0x03CE}, /* 038E */ + {0x0390,0x0390},{0x0391,0x03B1}, /* 0390 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 0392 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 0394 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 0396 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 0398 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 039A */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 039C */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 039E */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03A0 */ + {0x03A2,0x03A2},{0x03A3,0x03C3}, /* 03A2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03A4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03A6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03A8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03AA */ + {0x0386,0x03AC},{0x0388,0x03AD}, /* 03AC */ + {0x0389,0x03AE},{0x038A,0x03AF}, /* 03AE */ + {0x03B0,0x03B0},{0x0391,0x03B1}, /* 03B0 */ + {0x0392,0x03B2},{0x0393,0x03B3}, /* 03B2 */ + {0x0394,0x03B4},{0x0395,0x03B5}, /* 03B4 */ + {0x0396,0x03B6},{0x0397,0x03B7}, /* 03B6 */ + {0x0398,0x03B8},{0x0399,0x03B9}, /* 03B8 */ + {0x039A,0x03BA},{0x039B,0x03BB}, /* 03BA */ + {0x039C,0x03BC},{0x039D,0x03BD}, /* 03BC */ + {0x039E,0x03BE},{0x039F,0x03BF}, /* 03BE */ + {0x03A0,0x03C0},{0x03A1,0x03C1}, /* 03C0 */ + {0x03A3,0x03C2},{0x03A3,0x03C3}, /* 03C2 */ + {0x03A4,0x03C4},{0x03A5,0x03C5}, /* 03C4 */ + {0x03A6,0x03C6},{0x03A7,0x03C7}, /* 03C6 */ + {0x03A8,0x03C8},{0x03A9,0x03C9}, /* 03C8 */ + {0x03AA,0x03CA},{0x03AB,0x03CB}, /* 03CA */ + {0x038C,0x03CC},{0x038E,0x03CD}, /* 03CC */ + {0x038F,0x03CE},{0x03CF,0x03D7}, /* 03CE */ + {0x0392,0x03D0},{0x0398,0x03D1}, /* 03D0 */ + {0x03D2,0x03D2},{0x03D3,0x03D3}, /* 03D2 */ + {0x03D4,0x03D4},{0x03A6,0x03D5}, /* 03D4 */ + {0x03A0,0x03D6},{0x03CF,0x03D7}, /* 03D6 */ + {0x03D8,0x03D9},{0x03D8,0x03D9}, /* 03D8 */ + {0x03DA,0x03DB},{0x03DA,0x03DB}, /* 03DA */ + {0x03DC,0x03DD},{0x03DC,0x03DD}, /* 03DC */ + {0x03DE,0x03DF},{0x03DE,0x03DF}, /* 03DE */ + {0x03E0,0x03E1},{0x03E0,0x03E1}, /* 03E0 */ + {0x03E2,0x03E3},{0x03E2,0x03E3}, /* 03E2 */ + {0x03E4,0x03E5},{0x03E4,0x03E5}, /* 03E4 */ + {0x03E6,0x03E7},{0x03E6,0x03E7}, /* 03E6 */ + {0x03E8,0x03E9},{0x03E8,0x03E9}, /* 03E8 */ + {0x03EA,0x03EB},{0x03EA,0x03EB}, /* 03EA */ + {0x03EC,0x03ED},{0x03EC,0x03ED}, /* 03EC */ + {0x03EE,0x03EF},{0x03EE,0x03EF}, /* 03EE */ + {0x039A,0x03F0},{0x03A1,0x03F1}, /* 03F0 */ + {0x03F9,0x03F2},{0x03F3,0x03F3}, /* 03F2 */ + {0x03F4,0x03B8},{0x0395,0x03F5}, /* 03F4 */ + {0x03F6,0x03F6},{0x03F7,0x03F8}, /* 03F6 */ + {0x03F7,0x03F8},{0x03F9,0x03F2}, /* 03F8 */ + {0x03FA,0x03FB},{0x03FA,0x03FB}, /* 03FA */ + {0x03FC,0x03FC},{0x03FD,0x037B}, /* 03FC */ + {0x03FE,0x037C},{0x03FF,0x037D} /* 03FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page04[256]={ + {0x0400,0x0450},{0x0401,0x0451}, /* 0400 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0402 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0404 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0406 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0408 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 040A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 040C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 040E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0410 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0412 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0414 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0416 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0418 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 041A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 041C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 041E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0420 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0422 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0424 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0426 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0428 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 042A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 042C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 042E */ + {0x0410,0x0430},{0x0411,0x0431}, /* 0430 */ + {0x0412,0x0432},{0x0413,0x0433}, /* 0432 */ + {0x0414,0x0434},{0x0415,0x0435}, /* 0434 */ + {0x0416,0x0436},{0x0417,0x0437}, /* 0436 */ + {0x0418,0x0438},{0x0419,0x0439}, /* 0438 */ + {0x041A,0x043A},{0x041B,0x043B}, /* 043A */ + {0x041C,0x043C},{0x041D,0x043D}, /* 043C */ + {0x041E,0x043E},{0x041F,0x043F}, /* 043E */ + {0x0420,0x0440},{0x0421,0x0441}, /* 0440 */ + {0x0422,0x0442},{0x0423,0x0443}, /* 0442 */ + {0x0424,0x0444},{0x0425,0x0445}, /* 0444 */ + {0x0426,0x0446},{0x0427,0x0447}, /* 0446 */ + {0x0428,0x0448},{0x0429,0x0449}, /* 0448 */ + {0x042A,0x044A},{0x042B,0x044B}, /* 044A */ + {0x042C,0x044C},{0x042D,0x044D}, /* 044C */ + {0x042E,0x044E},{0x042F,0x044F}, /* 044E */ + {0x0400,0x0450},{0x0401,0x0451}, /* 0450 */ + {0x0402,0x0452},{0x0403,0x0453}, /* 0452 */ + {0x0404,0x0454},{0x0405,0x0455}, /* 0454 */ + {0x0406,0x0456},{0x0407,0x0457}, /* 0456 */ + {0x0408,0x0458},{0x0409,0x0459}, /* 0458 */ + {0x040A,0x045A},{0x040B,0x045B}, /* 045A */ + {0x040C,0x045C},{0x040D,0x045D}, /* 045C */ + {0x040E,0x045E},{0x040F,0x045F}, /* 045E */ + {0x0460,0x0461},{0x0460,0x0461}, /* 0460 */ + {0x0462,0x0463},{0x0462,0x0463}, /* 0462 */ + {0x0464,0x0465},{0x0464,0x0465}, /* 0464 */ + {0x0466,0x0467},{0x0466,0x0467}, /* 0466 */ + {0x0468,0x0469},{0x0468,0x0469}, /* 0468 */ + {0x046A,0x046B},{0x046A,0x046B}, /* 046A */ + {0x046C,0x046D},{0x046C,0x046D}, /* 046C */ + {0x046E,0x046F},{0x046E,0x046F}, /* 046E */ + {0x0470,0x0471},{0x0470,0x0471}, /* 0470 */ + {0x0472,0x0473},{0x0472,0x0473}, /* 0472 */ + {0x0474,0x0475},{0x0474,0x0475}, /* 0474 */ + {0x0476,0x0477},{0x0476,0x0477}, /* 0476 */ + {0x0478,0x0479},{0x0478,0x0479}, /* 0478 */ + {0x047A,0x047B},{0x047A,0x047B}, /* 047A */ + {0x047C,0x047D},{0x047C,0x047D}, /* 047C */ + {0x047E,0x047F},{0x047E,0x047F}, /* 047E */ + {0x0480,0x0481},{0x0480,0x0481}, /* 0480 */ + {0x0482,0x0482},{0x0483,0x0483}, /* 0482 */ + {0x0484,0x0484},{0x0485,0x0485}, /* 0484 */ + {0x0486,0x0486},{0x0487,0x0487}, /* 0486 */ + {0x0488,0x0488},{0x0489,0x0489}, /* 0488 */ + {0x048A,0x048B},{0x048A,0x048B}, /* 048A */ + {0x048C,0x048D},{0x048C,0x048D}, /* 048C */ + {0x048E,0x048F},{0x048E,0x048F}, /* 048E */ + {0x0490,0x0491},{0x0490,0x0491}, /* 0490 */ + {0x0492,0x0493},{0x0492,0x0493}, /* 0492 */ + {0x0494,0x0495},{0x0494,0x0495}, /* 0494 */ + {0x0496,0x0497},{0x0496,0x0497}, /* 0496 */ + {0x0498,0x0499},{0x0498,0x0499}, /* 0498 */ + {0x049A,0x049B},{0x049A,0x049B}, /* 049A */ + {0x049C,0x049D},{0x049C,0x049D}, /* 049C */ + {0x049E,0x049F},{0x049E,0x049F}, /* 049E */ + {0x04A0,0x04A1},{0x04A0,0x04A1}, /* 04A0 */ + {0x04A2,0x04A3},{0x04A2,0x04A3}, /* 04A2 */ + {0x04A4,0x04A5},{0x04A4,0x04A5}, /* 04A4 */ + {0x04A6,0x04A7},{0x04A6,0x04A7}, /* 04A6 */ + {0x04A8,0x04A9},{0x04A8,0x04A9}, /* 04A8 */ + {0x04AA,0x04AB},{0x04AA,0x04AB}, /* 04AA */ + {0x04AC,0x04AD},{0x04AC,0x04AD}, /* 04AC */ + {0x04AE,0x04AF},{0x04AE,0x04AF}, /* 04AE */ + {0x04B0,0x04B1},{0x04B0,0x04B1}, /* 04B0 */ + {0x04B2,0x04B3},{0x04B2,0x04B3}, /* 04B2 */ + {0x04B4,0x04B5},{0x04B4,0x04B5}, /* 04B4 */ + {0x04B6,0x04B7},{0x04B6,0x04B7}, /* 04B6 */ + {0x04B8,0x04B9},{0x04B8,0x04B9}, /* 04B8 */ + {0x04BA,0x04BB},{0x04BA,0x04BB}, /* 04BA */ + {0x04BC,0x04BD},{0x04BC,0x04BD}, /* 04BC */ + {0x04BE,0x04BF},{0x04BE,0x04BF}, /* 04BE */ + {0x04C0,0x04CF},{0x04C1,0x04C2}, /* 04C0 */ + {0x04C1,0x04C2},{0x04C3,0x04C4}, /* 04C2 */ + {0x04C3,0x04C4},{0x04C5,0x04C6}, /* 04C4 */ + {0x04C5,0x04C6},{0x04C7,0x04C8}, /* 04C6 */ + {0x04C7,0x04C8},{0x04C9,0x04CA}, /* 04C8 */ + {0x04C9,0x04CA},{0x04CB,0x04CC}, /* 04CA */ + {0x04CB,0x04CC},{0x04CD,0x04CE}, /* 04CC */ + {0x04CD,0x04CE},{0x04C0,0x04CF}, /* 04CE */ + {0x04D0,0x04D1},{0x04D0,0x04D1}, /* 04D0 */ + {0x04D2,0x04D3},{0x04D2,0x04D3}, /* 04D2 */ + {0x04D4,0x04D5},{0x04D4,0x04D5}, /* 04D4 */ + {0x04D6,0x04D7},{0x04D6,0x04D7}, /* 04D6 */ + {0x04D8,0x04D9},{0x04D8,0x04D9}, /* 04D8 */ + {0x04DA,0x04DB},{0x04DA,0x04DB}, /* 04DA */ + {0x04DC,0x04DD},{0x04DC,0x04DD}, /* 04DC */ + {0x04DE,0x04DF},{0x04DE,0x04DF}, /* 04DE */ + {0x04E0,0x04E1},{0x04E0,0x04E1}, /* 04E0 */ + {0x04E2,0x04E3},{0x04E2,0x04E3}, /* 04E2 */ + {0x04E4,0x04E5},{0x04E4,0x04E5}, /* 04E4 */ + {0x04E6,0x04E7},{0x04E6,0x04E7}, /* 04E6 */ + {0x04E8,0x04E9},{0x04E8,0x04E9}, /* 04E8 */ + {0x04EA,0x04EB},{0x04EA,0x04EB}, /* 04EA */ + {0x04EC,0x04ED},{0x04EC,0x04ED}, /* 04EC */ + {0x04EE,0x04EF},{0x04EE,0x04EF}, /* 04EE */ + {0x04F0,0x04F1},{0x04F0,0x04F1}, /* 04F0 */ + {0x04F2,0x04F3},{0x04F2,0x04F3}, /* 04F2 */ + {0x04F4,0x04F5},{0x04F4,0x04F5}, /* 04F4 */ + {0x04F6,0x04F7},{0x04F6,0x04F7}, /* 04F6 */ + {0x04F8,0x04F9},{0x04F8,0x04F9}, /* 04F8 */ + {0x04FA,0x04FB},{0x04FA,0x04FB}, /* 04FA */ + {0x04FC,0x04FD},{0x04FC,0x04FD}, /* 04FC */ + {0x04FE,0x04FF},{0x04FE,0x04FF} /* 04FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page05[256]={ + {0x0500,0x0501},{0x0500,0x0501}, /* 0500 */ + {0x0502,0x0503},{0x0502,0x0503}, /* 0502 */ + {0x0504,0x0505},{0x0504,0x0505}, /* 0504 */ + {0x0506,0x0507},{0x0506,0x0507}, /* 0506 */ + {0x0508,0x0509},{0x0508,0x0509}, /* 0508 */ + {0x050A,0x050B},{0x050A,0x050B}, /* 050A */ + {0x050C,0x050D},{0x050C,0x050D}, /* 050C */ + {0x050E,0x050F},{0x050E,0x050F}, /* 050E */ + {0x0510,0x0511},{0x0510,0x0511}, /* 0510 */ + {0x0512,0x0513},{0x0512,0x0513}, /* 0512 */ + {0x0514,0x0515},{0x0514,0x0515}, /* 0514 */ + {0x0516,0x0517},{0x0516,0x0517}, /* 0516 */ + {0x0518,0x0519},{0x0518,0x0519}, /* 0518 */ + {0x051A,0x051B},{0x051A,0x051B}, /* 051A */ + {0x051C,0x051D},{0x051C,0x051D}, /* 051C */ + {0x051E,0x051F},{0x051E,0x051F}, /* 051E */ + {0x0520,0x0521},{0x0520,0x0521}, /* 0520 */ + {0x0522,0x0523},{0x0522,0x0523}, /* 0522 */ + {0x0524,0x0525},{0x0524,0x0525}, /* 0524 */ + {0x0526,0x0526},{0x0527,0x0527}, /* 0526 */ + {0x0528,0x0528},{0x0529,0x0529}, /* 0528 */ + {0x052A,0x052A},{0x052B,0x052B}, /* 052A */ + {0x052C,0x052C},{0x052D,0x052D}, /* 052C */ + {0x052E,0x052E},{0x052F,0x052F}, /* 052E */ + {0x0530,0x0530},{0x0531,0x0561}, /* 0530 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0532 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0534 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0536 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0538 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 053A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 053C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 053E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0540 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0542 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0544 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0546 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0548 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 054A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 054C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 054E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0550 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0552 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0554 */ + {0x0556,0x0586},{0x0557,0x0557}, /* 0556 */ + {0x0558,0x0558},{0x0559,0x0559}, /* 0558 */ + {0x055A,0x055A},{0x055B,0x055B}, /* 055A */ + {0x055C,0x055C},{0x055D,0x055D}, /* 055C */ + {0x055E,0x055E},{0x055F,0x055F}, /* 055E */ + {0x0560,0x0560},{0x0531,0x0561}, /* 0560 */ + {0x0532,0x0562},{0x0533,0x0563}, /* 0562 */ + {0x0534,0x0564},{0x0535,0x0565}, /* 0564 */ + {0x0536,0x0566},{0x0537,0x0567}, /* 0566 */ + {0x0538,0x0568},{0x0539,0x0569}, /* 0568 */ + {0x053A,0x056A},{0x053B,0x056B}, /* 056A */ + {0x053C,0x056C},{0x053D,0x056D}, /* 056C */ + {0x053E,0x056E},{0x053F,0x056F}, /* 056E */ + {0x0540,0x0570},{0x0541,0x0571}, /* 0570 */ + {0x0542,0x0572},{0x0543,0x0573}, /* 0572 */ + {0x0544,0x0574},{0x0545,0x0575}, /* 0574 */ + {0x0546,0x0576},{0x0547,0x0577}, /* 0576 */ + {0x0548,0x0578},{0x0549,0x0579}, /* 0578 */ + {0x054A,0x057A},{0x054B,0x057B}, /* 057A */ + {0x054C,0x057C},{0x054D,0x057D}, /* 057C */ + {0x054E,0x057E},{0x054F,0x057F}, /* 057E */ + {0x0550,0x0580},{0x0551,0x0581}, /* 0580 */ + {0x0552,0x0582},{0x0553,0x0583}, /* 0582 */ + {0x0554,0x0584},{0x0555,0x0585}, /* 0584 */ + {0x0556,0x0586},{0x0587,0x0587}, /* 0586 */ + {0x0588,0x0588},{0x0589,0x0589}, /* 0588 */ + {0x058A,0x058A},{0x058B,0x058B}, /* 058A */ + {0x058C,0x058C},{0x058D,0x058D}, /* 058C */ + {0x058E,0x058E},{0x058F,0x058F}, /* 058E */ + {0x0590,0x0590},{0x0591,0x0591}, /* 0590 */ + {0x0592,0x0592},{0x0593,0x0593}, /* 0592 */ + {0x0594,0x0594},{0x0595,0x0595}, /* 0594 */ + {0x0596,0x0596},{0x0597,0x0597}, /* 0596 */ + {0x0598,0x0598},{0x0599,0x0599}, /* 0598 */ + {0x059A,0x059A},{0x059B,0x059B}, /* 059A */ + {0x059C,0x059C},{0x059D,0x059D}, /* 059C */ + {0x059E,0x059E},{0x059F,0x059F}, /* 059E */ + {0x05A0,0x05A0},{0x05A1,0x05A1}, /* 05A0 */ + {0x05A2,0x05A2},{0x05A3,0x05A3}, /* 05A2 */ + {0x05A4,0x05A4},{0x05A5,0x05A5}, /* 05A4 */ + {0x05A6,0x05A6},{0x05A7,0x05A7}, /* 05A6 */ + {0x05A8,0x05A8},{0x05A9,0x05A9}, /* 05A8 */ + {0x05AA,0x05AA},{0x05AB,0x05AB}, /* 05AA */ + {0x05AC,0x05AC},{0x05AD,0x05AD}, /* 05AC */ + {0x05AE,0x05AE},{0x05AF,0x05AF}, /* 05AE */ + {0x05B0,0x05B0},{0x05B1,0x05B1}, /* 05B0 */ + {0x05B2,0x05B2},{0x05B3,0x05B3}, /* 05B2 */ + {0x05B4,0x05B4},{0x05B5,0x05B5}, /* 05B4 */ + {0x05B6,0x05B6},{0x05B7,0x05B7}, /* 05B6 */ + {0x05B8,0x05B8},{0x05B9,0x05B9}, /* 05B8 */ + {0x05BA,0x05BA},{0x05BB,0x05BB}, /* 05BA */ + {0x05BC,0x05BC},{0x05BD,0x05BD}, /* 05BC */ + {0x05BE,0x05BE},{0x05BF,0x05BF}, /* 05BE */ + {0x05C0,0x05C0},{0x05C1,0x05C1}, /* 05C0 */ + {0x05C2,0x05C2},{0x05C3,0x05C3}, /* 05C2 */ + {0x05C4,0x05C4},{0x05C5,0x05C5}, /* 05C4 */ + {0x05C6,0x05C6},{0x05C7,0x05C7}, /* 05C6 */ + {0x05C8,0x05C8},{0x05C9,0x05C9}, /* 05C8 */ + {0x05CA,0x05CA},{0x05CB,0x05CB}, /* 05CA */ + {0x05CC,0x05CC},{0x05CD,0x05CD}, /* 05CC */ + {0x05CE,0x05CE},{0x05CF,0x05CF}, /* 05CE */ + {0x05D0,0x05D0},{0x05D1,0x05D1}, /* 05D0 */ + {0x05D2,0x05D2},{0x05D3,0x05D3}, /* 05D2 */ + {0x05D4,0x05D4},{0x05D5,0x05D5}, /* 05D4 */ + {0x05D6,0x05D6},{0x05D7,0x05D7}, /* 05D6 */ + {0x05D8,0x05D8},{0x05D9,0x05D9}, /* 05D8 */ + {0x05DA,0x05DA},{0x05DB,0x05DB}, /* 05DA */ + {0x05DC,0x05DC},{0x05DD,0x05DD}, /* 05DC */ + {0x05DE,0x05DE},{0x05DF,0x05DF}, /* 05DE */ + {0x05E0,0x05E0},{0x05E1,0x05E1}, /* 05E0 */ + {0x05E2,0x05E2},{0x05E3,0x05E3}, /* 05E2 */ + {0x05E4,0x05E4},{0x05E5,0x05E5}, /* 05E4 */ + {0x05E6,0x05E6},{0x05E7,0x05E7}, /* 05E6 */ + {0x05E8,0x05E8},{0x05E9,0x05E9}, /* 05E8 */ + {0x05EA,0x05EA},{0x05EB,0x05EB}, /* 05EA */ + {0x05EC,0x05EC},{0x05ED,0x05ED}, /* 05EC */ + {0x05EE,0x05EE},{0x05EF,0x05EF}, /* 05EE */ + {0x05F0,0x05F0},{0x05F1,0x05F1}, /* 05F0 */ + {0x05F2,0x05F2},{0x05F3,0x05F3}, /* 05F2 */ + {0x05F4,0x05F4},{0x05F5,0x05F5}, /* 05F4 */ + {0x05F6,0x05F6},{0x05F7,0x05F7}, /* 05F6 */ + {0x05F8,0x05F8},{0x05F9,0x05F9}, /* 05F8 */ + {0x05FA,0x05FA},{0x05FB,0x05FB}, /* 05FA */ + {0x05FC,0x05FC},{0x05FD,0x05FD}, /* 05FC */ + {0x05FE,0x05FE},{0x05FF,0x05FF} /* 05FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page06[256]={ /* This page is dummy */ + {0x0600,0x0600},{0x0601,0x0601}, /* 0600 */ + {0x0602,0x0602},{0x0603,0x0603}, /* 0602 */ + {0x0604,0x0604},{0x0605,0x0605}, /* 0604 */ + {0x0606,0x0606},{0x0607,0x0607}, /* 0606 */ + {0x0608,0x0608},{0x0609,0x0609}, /* 0608 */ + {0x060A,0x060A},{0x060B,0x060B}, /* 060A */ + {0x060C,0x060C},{0x060D,0x060D}, /* 060C */ + {0x060E,0x060E},{0x060F,0x060F}, /* 060E */ + {0x0610,0x0610},{0x0611,0x0611}, /* 0610 */ + {0x0612,0x0612},{0x0613,0x0613}, /* 0612 */ + {0x0614,0x0614},{0x0615,0x0615}, /* 0614 */ + {0x0616,0x0616},{0x0617,0x0617}, /* 0616 */ + {0x0618,0x0618},{0x0619,0x0619}, /* 0618 */ + {0x061A,0x061A},{0x061B,0x061B}, /* 061A */ + {0x061C,0x061C},{0x061D,0x061D}, /* 061C */ + {0x061E,0x061E},{0x061F,0x061F}, /* 061E */ + {0x0620,0x0620},{0x0621,0x0621}, /* 0620 */ + {0x0622,0x0622},{0x0623,0x0623}, /* 0622 */ + {0x0624,0x0624},{0x0625,0x0625}, /* 0624 */ + {0x0626,0x0626},{0x0627,0x0627}, /* 0626 */ + {0x0628,0x0628},{0x0629,0x0629}, /* 0628 */ + {0x062A,0x062A},{0x062B,0x062B}, /* 062A */ + {0x062C,0x062C},{0x062D,0x062D}, /* 062C */ + {0x062E,0x062E},{0x062F,0x062F}, /* 062E */ + {0x0630,0x0630},{0x0631,0x0631}, /* 0630 */ + {0x0632,0x0632},{0x0633,0x0633}, /* 0632 */ + {0x0634,0x0634},{0x0635,0x0635}, /* 0634 */ + {0x0636,0x0636},{0x0637,0x0637}, /* 0636 */ + {0x0638,0x0638},{0x0639,0x0639}, /* 0638 */ + {0x063A,0x063A},{0x063B,0x063B}, /* 063A */ + {0x063C,0x063C},{0x063D,0x063D}, /* 063C */ + {0x063E,0x063E},{0x063F,0x063F}, /* 063E */ + {0x0640,0x0640},{0x0641,0x0641}, /* 0640 */ + {0x0642,0x0642},{0x0643,0x0643}, /* 0642 */ + {0x0644,0x0644},{0x0645,0x0645}, /* 0644 */ + {0x0646,0x0646},{0x0647,0x0647}, /* 0646 */ + {0x0648,0x0648},{0x0649,0x0649}, /* 0648 */ + {0x064A,0x064A},{0x064B,0x064B}, /* 064A */ + {0x064C,0x064C},{0x064D,0x064D}, /* 064C */ + {0x064E,0x064E},{0x064F,0x064F}, /* 064E */ + {0x0650,0x0650},{0x0651,0x0651}, /* 0650 */ + {0x0652,0x0652},{0x0653,0x0653}, /* 0652 */ + {0x0654,0x0654},{0x0655,0x0655}, /* 0654 */ + {0x0656,0x0656},{0x0657,0x0657}, /* 0656 */ + {0x0658,0x0658},{0x0659,0x0659}, /* 0658 */ + {0x065A,0x065A},{0x065B,0x065B}, /* 065A */ + {0x065C,0x065C},{0x065D,0x065D}, /* 065C */ + {0x065E,0x065E},{0x065F,0x065F}, /* 065E */ + {0x0660,0x0660},{0x0661,0x0661}, /* 0660 */ + {0x0662,0x0662},{0x0663,0x0663}, /* 0662 */ + {0x0664,0x0664},{0x0665,0x0665}, /* 0664 */ + {0x0666,0x0666},{0x0667,0x0667}, /* 0666 */ + {0x0668,0x0668},{0x0669,0x0669}, /* 0668 */ + {0x066A,0x066A},{0x066B,0x066B}, /* 066A */ + {0x066C,0x066C},{0x066D,0x066D}, /* 066C */ + {0x066E,0x066E},{0x066F,0x066F}, /* 066E */ + {0x0670,0x0670},{0x0671,0x0671}, /* 0670 */ + {0x0672,0x0672},{0x0673,0x0673}, /* 0672 */ + {0x0674,0x0674},{0x0675,0x0675}, /* 0674 */ + {0x0676,0x0676},{0x0677,0x0677}, /* 0676 */ + {0x0678,0x0678},{0x0679,0x0679}, /* 0678 */ + {0x067A,0x067A},{0x067B,0x067B}, /* 067A */ + {0x067C,0x067C},{0x067D,0x067D}, /* 067C */ + {0x067E,0x067E},{0x067F,0x067F}, /* 067E */ + {0x0680,0x0680},{0x0681,0x0681}, /* 0680 */ + {0x0682,0x0682},{0x0683,0x0683}, /* 0682 */ + {0x0684,0x0684},{0x0685,0x0685}, /* 0684 */ + {0x0686,0x0686},{0x0687,0x0687}, /* 0686 */ + {0x0688,0x0688},{0x0689,0x0689}, /* 0688 */ + {0x068A,0x068A},{0x068B,0x068B}, /* 068A */ + {0x068C,0x068C},{0x068D,0x068D}, /* 068C */ + {0x068E,0x068E},{0x068F,0x068F}, /* 068E */ + {0x0690,0x0690},{0x0691,0x0691}, /* 0690 */ + {0x0692,0x0692},{0x0693,0x0693}, /* 0692 */ + {0x0694,0x0694},{0x0695,0x0695}, /* 0694 */ + {0x0696,0x0696},{0x0697,0x0697}, /* 0696 */ + {0x0698,0x0698},{0x0699,0x0699}, /* 0698 */ + {0x069A,0x069A},{0x069B,0x069B}, /* 069A */ + {0x069C,0x069C},{0x069D,0x069D}, /* 069C */ + {0x069E,0x069E},{0x069F,0x069F}, /* 069E */ + {0x06A0,0x06A0},{0x06A1,0x06A1}, /* 06A0 */ + {0x06A2,0x06A2},{0x06A3,0x06A3}, /* 06A2 */ + {0x06A4,0x06A4},{0x06A5,0x06A5}, /* 06A4 */ + {0x06A6,0x06A6},{0x06A7,0x06A7}, /* 06A6 */ + {0x06A8,0x06A8},{0x06A9,0x06A9}, /* 06A8 */ + {0x06AA,0x06AA},{0x06AB,0x06AB}, /* 06AA */ + {0x06AC,0x06AC},{0x06AD,0x06AD}, /* 06AC */ + {0x06AE,0x06AE},{0x06AF,0x06AF}, /* 06AE */ + {0x06B0,0x06B0},{0x06B1,0x06B1}, /* 06B0 */ + {0x06B2,0x06B2},{0x06B3,0x06B3}, /* 06B2 */ + {0x06B4,0x06B4},{0x06B5,0x06B5}, /* 06B4 */ + {0x06B6,0x06B6},{0x06B7,0x06B7}, /* 06B6 */ + {0x06B8,0x06B8},{0x06B9,0x06B9}, /* 06B8 */ + {0x06BA,0x06BA},{0x06BB,0x06BB}, /* 06BA */ + {0x06BC,0x06BC},{0x06BD,0x06BD}, /* 06BC */ + {0x06BE,0x06BE},{0x06BF,0x06BF}, /* 06BE */ + {0x06C0,0x06C0},{0x06C1,0x06C1}, /* 06C0 */ + {0x06C2,0x06C2},{0x06C3,0x06C3}, /* 06C2 */ + {0x06C4,0x06C4},{0x06C5,0x06C5}, /* 06C4 */ + {0x06C6,0x06C6},{0x06C7,0x06C7}, /* 06C6 */ + {0x06C8,0x06C8},{0x06C9,0x06C9}, /* 06C8 */ + {0x06CA,0x06CA},{0x06CB,0x06CB}, /* 06CA */ + {0x06CC,0x06CC},{0x06CD,0x06CD}, /* 06CC */ + {0x06CE,0x06CE},{0x06CF,0x06CF}, /* 06CE */ + {0x06D0,0x06D0},{0x06D1,0x06D1}, /* 06D0 */ + {0x06D2,0x06D2},{0x06D3,0x06D3}, /* 06D2 */ + {0x06D4,0x06D4},{0x06D5,0x06D5}, /* 06D4 */ + {0x06D6,0x06D6},{0x06D7,0x06D7}, /* 06D6 */ + {0x06D8,0x06D8},{0x06D9,0x06D9}, /* 06D8 */ + {0x06DA,0x06DA},{0x06DB,0x06DB}, /* 06DA */ + {0x06DC,0x06DC},{0x06DD,0x06DD}, /* 06DC */ + {0x06DE,0x06DE},{0x06DF,0x06DF}, /* 06DE */ + {0x06E0,0x06E0},{0x06E1,0x06E1}, /* 06E0 */ + {0x06E2,0x06E2},{0x06E3,0x06E3}, /* 06E2 */ + {0x06E4,0x06E4},{0x06E5,0x06E5}, /* 06E4 */ + {0x06E6,0x06E6},{0x06E7,0x06E7}, /* 06E6 */ + {0x06E8,0x06E8},{0x06E9,0x06E9}, /* 06E8 */ + {0x06EA,0x06EA},{0x06EB,0x06EB}, /* 06EA */ + {0x06EC,0x06EC},{0x06ED,0x06ED}, /* 06EC */ + {0x06EE,0x06EE},{0x06EF,0x06EF}, /* 06EE */ + {0x06F0,0x06F0},{0x06F1,0x06F1}, /* 06F0 */ + {0x06F2,0x06F2},{0x06F3,0x06F3}, /* 06F2 */ + {0x06F4,0x06F4},{0x06F5,0x06F5}, /* 06F4 */ + {0x06F6,0x06F6},{0x06F7,0x06F7}, /* 06F6 */ + {0x06F8,0x06F8},{0x06F9,0x06F9}, /* 06F8 */ + {0x06FA,0x06FA},{0x06FB,0x06FB}, /* 06FA */ + {0x06FC,0x06FC},{0x06FD,0x06FD}, /* 06FC */ + {0x06FE,0x06FE},{0x06FF,0x06FF} /* 06FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page07[256]={ /* This page is dummy */ + {0x0700,0x0700},{0x0701,0x0701}, /* 0700 */ + {0x0702,0x0702},{0x0703,0x0703}, /* 0702 */ + {0x0704,0x0704},{0x0705,0x0705}, /* 0704 */ + {0x0706,0x0706},{0x0707,0x0707}, /* 0706 */ + {0x0708,0x0708},{0x0709,0x0709}, /* 0708 */ + {0x070A,0x070A},{0x070B,0x070B}, /* 070A */ + {0x070C,0x070C},{0x070D,0x070D}, /* 070C */ + {0x070E,0x070E},{0x070F,0x070F}, /* 070E */ + {0x0710,0x0710},{0x0711,0x0711}, /* 0710 */ + {0x0712,0x0712},{0x0713,0x0713}, /* 0712 */ + {0x0714,0x0714},{0x0715,0x0715}, /* 0714 */ + {0x0716,0x0716},{0x0717,0x0717}, /* 0716 */ + {0x0718,0x0718},{0x0719,0x0719}, /* 0718 */ + {0x071A,0x071A},{0x071B,0x071B}, /* 071A */ + {0x071C,0x071C},{0x071D,0x071D}, /* 071C */ + {0x071E,0x071E},{0x071F,0x071F}, /* 071E */ + {0x0720,0x0720},{0x0721,0x0721}, /* 0720 */ + {0x0722,0x0722},{0x0723,0x0723}, /* 0722 */ + {0x0724,0x0724},{0x0725,0x0725}, /* 0724 */ + {0x0726,0x0726},{0x0727,0x0727}, /* 0726 */ + {0x0728,0x0728},{0x0729,0x0729}, /* 0728 */ + {0x072A,0x072A},{0x072B,0x072B}, /* 072A */ + {0x072C,0x072C},{0x072D,0x072D}, /* 072C */ + {0x072E,0x072E},{0x072F,0x072F}, /* 072E */ + {0x0730,0x0730},{0x0731,0x0731}, /* 0730 */ + {0x0732,0x0732},{0x0733,0x0733}, /* 0732 */ + {0x0734,0x0734},{0x0735,0x0735}, /* 0734 */ + {0x0736,0x0736},{0x0737,0x0737}, /* 0736 */ + {0x0738,0x0738},{0x0739,0x0739}, /* 0738 */ + {0x073A,0x073A},{0x073B,0x073B}, /* 073A */ + {0x073C,0x073C},{0x073D,0x073D}, /* 073C */ + {0x073E,0x073E},{0x073F,0x073F}, /* 073E */ + {0x0740,0x0740},{0x0741,0x0741}, /* 0740 */ + {0x0742,0x0742},{0x0743,0x0743}, /* 0742 */ + {0x0744,0x0744},{0x0745,0x0745}, /* 0744 */ + {0x0746,0x0746},{0x0747,0x0747}, /* 0746 */ + {0x0748,0x0748},{0x0749,0x0749}, /* 0748 */ + {0x074A,0x074A},{0x074B,0x074B}, /* 074A */ + {0x074C,0x074C},{0x074D,0x074D}, /* 074C */ + {0x074E,0x074E},{0x074F,0x074F}, /* 074E */ + {0x0750,0x0750},{0x0751,0x0751}, /* 0750 */ + {0x0752,0x0752},{0x0753,0x0753}, /* 0752 */ + {0x0754,0x0754},{0x0755,0x0755}, /* 0754 */ + {0x0756,0x0756},{0x0757,0x0757}, /* 0756 */ + {0x0758,0x0758},{0x0759,0x0759}, /* 0758 */ + {0x075A,0x075A},{0x075B,0x075B}, /* 075A */ + {0x075C,0x075C},{0x075D,0x075D}, /* 075C */ + {0x075E,0x075E},{0x075F,0x075F}, /* 075E */ + {0x0760,0x0760},{0x0761,0x0761}, /* 0760 */ + {0x0762,0x0762},{0x0763,0x0763}, /* 0762 */ + {0x0764,0x0764},{0x0765,0x0765}, /* 0764 */ + {0x0766,0x0766},{0x0767,0x0767}, /* 0766 */ + {0x0768,0x0768},{0x0769,0x0769}, /* 0768 */ + {0x076A,0x076A},{0x076B,0x076B}, /* 076A */ + {0x076C,0x076C},{0x076D,0x076D}, /* 076C */ + {0x076E,0x076E},{0x076F,0x076F}, /* 076E */ + {0x0770,0x0770},{0x0771,0x0771}, /* 0770 */ + {0x0772,0x0772},{0x0773,0x0773}, /* 0772 */ + {0x0774,0x0774},{0x0775,0x0775}, /* 0774 */ + {0x0776,0x0776},{0x0777,0x0777}, /* 0776 */ + {0x0778,0x0778},{0x0779,0x0779}, /* 0778 */ + {0x077A,0x077A},{0x077B,0x077B}, /* 077A */ + {0x077C,0x077C},{0x077D,0x077D}, /* 077C */ + {0x077E,0x077E},{0x077F,0x077F}, /* 077E */ + {0x0780,0x0780},{0x0781,0x0781}, /* 0780 */ + {0x0782,0x0782},{0x0783,0x0783}, /* 0782 */ + {0x0784,0x0784},{0x0785,0x0785}, /* 0784 */ + {0x0786,0x0786},{0x0787,0x0787}, /* 0786 */ + {0x0788,0x0788},{0x0789,0x0789}, /* 0788 */ + {0x078A,0x078A},{0x078B,0x078B}, /* 078A */ + {0x078C,0x078C},{0x078D,0x078D}, /* 078C */ + {0x078E,0x078E},{0x078F,0x078F}, /* 078E */ + {0x0790,0x0790},{0x0791,0x0791}, /* 0790 */ + {0x0792,0x0792},{0x0793,0x0793}, /* 0792 */ + {0x0794,0x0794},{0x0795,0x0795}, /* 0794 */ + {0x0796,0x0796},{0x0797,0x0797}, /* 0796 */ + {0x0798,0x0798},{0x0799,0x0799}, /* 0798 */ + {0x079A,0x079A},{0x079B,0x079B}, /* 079A */ + {0x079C,0x079C},{0x079D,0x079D}, /* 079C */ + {0x079E,0x079E},{0x079F,0x079F}, /* 079E */ + {0x07A0,0x07A0},{0x07A1,0x07A1}, /* 07A0 */ + {0x07A2,0x07A2},{0x07A3,0x07A3}, /* 07A2 */ + {0x07A4,0x07A4},{0x07A5,0x07A5}, /* 07A4 */ + {0x07A6,0x07A6},{0x07A7,0x07A7}, /* 07A6 */ + {0x07A8,0x07A8},{0x07A9,0x07A9}, /* 07A8 */ + {0x07AA,0x07AA},{0x07AB,0x07AB}, /* 07AA */ + {0x07AC,0x07AC},{0x07AD,0x07AD}, /* 07AC */ + {0x07AE,0x07AE},{0x07AF,0x07AF}, /* 07AE */ + {0x07B0,0x07B0},{0x07B1,0x07B1}, /* 07B0 */ + {0x07B2,0x07B2},{0x07B3,0x07B3}, /* 07B2 */ + {0x07B4,0x07B4},{0x07B5,0x07B5}, /* 07B4 */ + {0x07B6,0x07B6},{0x07B7,0x07B7}, /* 07B6 */ + {0x07B8,0x07B8},{0x07B9,0x07B9}, /* 07B8 */ + {0x07BA,0x07BA},{0x07BB,0x07BB}, /* 07BA */ + {0x07BC,0x07BC},{0x07BD,0x07BD}, /* 07BC */ + {0x07BE,0x07BE},{0x07BF,0x07BF}, /* 07BE */ + {0x07C0,0x07C0},{0x07C1,0x07C1}, /* 07C0 */ + {0x07C2,0x07C2},{0x07C3,0x07C3}, /* 07C2 */ + {0x07C4,0x07C4},{0x07C5,0x07C5}, /* 07C4 */ + {0x07C6,0x07C6},{0x07C7,0x07C7}, /* 07C6 */ + {0x07C8,0x07C8},{0x07C9,0x07C9}, /* 07C8 */ + {0x07CA,0x07CA},{0x07CB,0x07CB}, /* 07CA */ + {0x07CC,0x07CC},{0x07CD,0x07CD}, /* 07CC */ + {0x07CE,0x07CE},{0x07CF,0x07CF}, /* 07CE */ + {0x07D0,0x07D0},{0x07D1,0x07D1}, /* 07D0 */ + {0x07D2,0x07D2},{0x07D3,0x07D3}, /* 07D2 */ + {0x07D4,0x07D4},{0x07D5,0x07D5}, /* 07D4 */ + {0x07D6,0x07D6},{0x07D7,0x07D7}, /* 07D6 */ + {0x07D8,0x07D8},{0x07D9,0x07D9}, /* 07D8 */ + {0x07DA,0x07DA},{0x07DB,0x07DB}, /* 07DA */ + {0x07DC,0x07DC},{0x07DD,0x07DD}, /* 07DC */ + {0x07DE,0x07DE},{0x07DF,0x07DF}, /* 07DE */ + {0x07E0,0x07E0},{0x07E1,0x07E1}, /* 07E0 */ + {0x07E2,0x07E2},{0x07E3,0x07E3}, /* 07E2 */ + {0x07E4,0x07E4},{0x07E5,0x07E5}, /* 07E4 */ + {0x07E6,0x07E6},{0x07E7,0x07E7}, /* 07E6 */ + {0x07E8,0x07E8},{0x07E9,0x07E9}, /* 07E8 */ + {0x07EA,0x07EA},{0x07EB,0x07EB}, /* 07EA */ + {0x07EC,0x07EC},{0x07ED,0x07ED}, /* 07EC */ + {0x07EE,0x07EE},{0x07EF,0x07EF}, /* 07EE */ + {0x07F0,0x07F0},{0x07F1,0x07F1}, /* 07F0 */ + {0x07F2,0x07F2},{0x07F3,0x07F3}, /* 07F2 */ + {0x07F4,0x07F4},{0x07F5,0x07F5}, /* 07F4 */ + {0x07F6,0x07F6},{0x07F7,0x07F7}, /* 07F6 */ + {0x07F8,0x07F8},{0x07F9,0x07F9}, /* 07F8 */ + {0x07FA,0x07FA},{0x07FB,0x07FB}, /* 07FA */ + {0x07FC,0x07FC},{0x07FD,0x07FD}, /* 07FC */ + {0x07FE,0x07FE},{0x07FF,0x07FF} /* 07FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page10[256]={ + {0x1000,0x1000},{0x1001,0x1001}, /* 1000 */ + {0x1002,0x1002},{0x1003,0x1003}, /* 1002 */ + {0x1004,0x1004},{0x1005,0x1005}, /* 1004 */ + {0x1006,0x1006},{0x1007,0x1007}, /* 1006 */ + {0x1008,0x1008},{0x1009,0x1009}, /* 1008 */ + {0x100A,0x100A},{0x100B,0x100B}, /* 100A */ + {0x100C,0x100C},{0x100D,0x100D}, /* 100C */ + {0x100E,0x100E},{0x100F,0x100F}, /* 100E */ + {0x1010,0x1010},{0x1011,0x1011}, /* 1010 */ + {0x1012,0x1012},{0x1013,0x1013}, /* 1012 */ + {0x1014,0x1014},{0x1015,0x1015}, /* 1014 */ + {0x1016,0x1016},{0x1017,0x1017}, /* 1016 */ + {0x1018,0x1018},{0x1019,0x1019}, /* 1018 */ + {0x101A,0x101A},{0x101B,0x101B}, /* 101A */ + {0x101C,0x101C},{0x101D,0x101D}, /* 101C */ + {0x101E,0x101E},{0x101F,0x101F}, /* 101E */ + {0x1020,0x1020},{0x1021,0x1021}, /* 1020 */ + {0x1022,0x1022},{0x1023,0x1023}, /* 1022 */ + {0x1024,0x1024},{0x1025,0x1025}, /* 1024 */ + {0x1026,0x1026},{0x1027,0x1027}, /* 1026 */ + {0x1028,0x1028},{0x1029,0x1029}, /* 1028 */ + {0x102A,0x102A},{0x102B,0x102B}, /* 102A */ + {0x102C,0x102C},{0x102D,0x102D}, /* 102C */ + {0x102E,0x102E},{0x102F,0x102F}, /* 102E */ + {0x1030,0x1030},{0x1031,0x1031}, /* 1030 */ + {0x1032,0x1032},{0x1033,0x1033}, /* 1032 */ + {0x1034,0x1034},{0x1035,0x1035}, /* 1034 */ + {0x1036,0x1036},{0x1037,0x1037}, /* 1036 */ + {0x1038,0x1038},{0x1039,0x1039}, /* 1038 */ + {0x103A,0x103A},{0x103B,0x103B}, /* 103A */ + {0x103C,0x103C},{0x103D,0x103D}, /* 103C */ + {0x103E,0x103E},{0x103F,0x103F}, /* 103E */ + {0x1040,0x1040},{0x1041,0x1041}, /* 1040 */ + {0x1042,0x1042},{0x1043,0x1043}, /* 1042 */ + {0x1044,0x1044},{0x1045,0x1045}, /* 1044 */ + {0x1046,0x1046},{0x1047,0x1047}, /* 1046 */ + {0x1048,0x1048},{0x1049,0x1049}, /* 1048 */ + {0x104A,0x104A},{0x104B,0x104B}, /* 104A */ + {0x104C,0x104C},{0x104D,0x104D}, /* 104C */ + {0x104E,0x104E},{0x104F,0x104F}, /* 104E */ + {0x1050,0x1050},{0x1051,0x1051}, /* 1050 */ + {0x1052,0x1052},{0x1053,0x1053}, /* 1052 */ + {0x1054,0x1054},{0x1055,0x1055}, /* 1054 */ + {0x1056,0x1056},{0x1057,0x1057}, /* 1056 */ + {0x1058,0x1058},{0x1059,0x1059}, /* 1058 */ + {0x105A,0x105A},{0x105B,0x105B}, /* 105A */ + {0x105C,0x105C},{0x105D,0x105D}, /* 105C */ + {0x105E,0x105E},{0x105F,0x105F}, /* 105E */ + {0x1060,0x1060},{0x1061,0x1061}, /* 1060 */ + {0x1062,0x1062},{0x1063,0x1063}, /* 1062 */ + {0x1064,0x1064},{0x1065,0x1065}, /* 1064 */ + {0x1066,0x1066},{0x1067,0x1067}, /* 1066 */ + {0x1068,0x1068},{0x1069,0x1069}, /* 1068 */ + {0x106A,0x106A},{0x106B,0x106B}, /* 106A */ + {0x106C,0x106C},{0x106D,0x106D}, /* 106C */ + {0x106E,0x106E},{0x106F,0x106F}, /* 106E */ + {0x1070,0x1070},{0x1071,0x1071}, /* 1070 */ + {0x1072,0x1072},{0x1073,0x1073}, /* 1072 */ + {0x1074,0x1074},{0x1075,0x1075}, /* 1074 */ + {0x1076,0x1076},{0x1077,0x1077}, /* 1076 */ + {0x1078,0x1078},{0x1079,0x1079}, /* 1078 */ + {0x107A,0x107A},{0x107B,0x107B}, /* 107A */ + {0x107C,0x107C},{0x107D,0x107D}, /* 107C */ + {0x107E,0x107E},{0x107F,0x107F}, /* 107E */ + {0x1080,0x1080},{0x1081,0x1081}, /* 1080 */ + {0x1082,0x1082},{0x1083,0x1083}, /* 1082 */ + {0x1084,0x1084},{0x1085,0x1085}, /* 1084 */ + {0x1086,0x1086},{0x1087,0x1087}, /* 1086 */ + {0x1088,0x1088},{0x1089,0x1089}, /* 1088 */ + {0x108A,0x108A},{0x108B,0x108B}, /* 108A */ + {0x108C,0x108C},{0x108D,0x108D}, /* 108C */ + {0x108E,0x108E},{0x108F,0x108F}, /* 108E */ + {0x1090,0x1090},{0x1091,0x1091}, /* 1090 */ + {0x1092,0x1092},{0x1093,0x1093}, /* 1092 */ + {0x1094,0x1094},{0x1095,0x1095}, /* 1094 */ + {0x1096,0x1096},{0x1097,0x1097}, /* 1096 */ + {0x1098,0x1098},{0x1099,0x1099}, /* 1098 */ + {0x109A,0x109A},{0x109B,0x109B}, /* 109A */ + {0x109C,0x109C},{0x109D,0x109D}, /* 109C */ + {0x109E,0x109E},{0x109F,0x109F}, /* 109E */ + {0x10A0,0x2D00},{0x10A1,0x2D01}, /* 10A0 */ + {0x10A2,0x2D02},{0x10A3,0x2D03}, /* 10A2 */ + {0x10A4,0x2D04},{0x10A5,0x2D05}, /* 10A4 */ + {0x10A6,0x2D06},{0x10A7,0x2D07}, /* 10A6 */ + {0x10A8,0x2D08},{0x10A9,0x2D09}, /* 10A8 */ + {0x10AA,0x2D0A},{0x10AB,0x2D0B}, /* 10AA */ + {0x10AC,0x2D0C},{0x10AD,0x2D0D}, /* 10AC */ + {0x10AE,0x2D0E},{0x10AF,0x2D0F}, /* 10AE */ + {0x10B0,0x2D10},{0x10B1,0x2D11}, /* 10B0 */ + {0x10B2,0x2D12},{0x10B3,0x2D13}, /* 10B2 */ + {0x10B4,0x2D14},{0x10B5,0x2D15}, /* 10B4 */ + {0x10B6,0x2D16},{0x10B7,0x2D17}, /* 10B6 */ + {0x10B8,0x2D18},{0x10B9,0x2D19}, /* 10B8 */ + {0x10BA,0x2D1A},{0x10BB,0x2D1B}, /* 10BA */ + {0x10BC,0x2D1C},{0x10BD,0x2D1D}, /* 10BC */ + {0x10BE,0x2D1E},{0x10BF,0x2D1F}, /* 10BE */ + {0x10C0,0x2D20},{0x10C1,0x2D21}, /* 10C0 */ + {0x10C2,0x2D22},{0x10C3,0x2D23}, /* 10C2 */ + {0x10C4,0x2D24},{0x10C5,0x2D25}, /* 10C4 */ + {0x10C6,0x10C6},{0x10C7,0x10C7}, /* 10C6 */ + {0x10C8,0x10C8},{0x10C9,0x10C9}, /* 10C8 */ + {0x10CA,0x10CA},{0x10CB,0x10CB}, /* 10CA */ + {0x10CC,0x10CC},{0x10CD,0x10CD}, /* 10CC */ + {0x10CE,0x10CE},{0x10CF,0x10CF}, /* 10CE */ + {0x10D0,0x10D0},{0x10D1,0x10D1}, /* 10D0 */ + {0x10D2,0x10D2},{0x10D3,0x10D3}, /* 10D2 */ + {0x10D4,0x10D4},{0x10D5,0x10D5}, /* 10D4 */ + {0x10D6,0x10D6},{0x10D7,0x10D7}, /* 10D6 */ + {0x10D8,0x10D8},{0x10D9,0x10D9}, /* 10D8 */ + {0x10DA,0x10DA},{0x10DB,0x10DB}, /* 10DA */ + {0x10DC,0x10DC},{0x10DD,0x10DD}, /* 10DC */ + {0x10DE,0x10DE},{0x10DF,0x10DF}, /* 10DE */ + {0x10E0,0x10E0},{0x10E1,0x10E1}, /* 10E0 */ + {0x10E2,0x10E2},{0x10E3,0x10E3}, /* 10E2 */ + {0x10E4,0x10E4},{0x10E5,0x10E5}, /* 10E4 */ + {0x10E6,0x10E6},{0x10E7,0x10E7}, /* 10E6 */ + {0x10E8,0x10E8},{0x10E9,0x10E9}, /* 10E8 */ + {0x10EA,0x10EA},{0x10EB,0x10EB}, /* 10EA */ + {0x10EC,0x10EC},{0x10ED,0x10ED}, /* 10EC */ + {0x10EE,0x10EE},{0x10EF,0x10EF}, /* 10EE */ + {0x10F0,0x10F0},{0x10F1,0x10F1}, /* 10F0 */ + {0x10F2,0x10F2},{0x10F3,0x10F3}, /* 10F2 */ + {0x10F4,0x10F4},{0x10F5,0x10F5}, /* 10F4 */ + {0x10F6,0x10F6},{0x10F7,0x10F7}, /* 10F6 */ + {0x10F8,0x10F8},{0x10F9,0x10F9}, /* 10F8 */ + {0x10FA,0x10FA},{0x10FB,0x10FB}, /* 10FA */ + {0x10FC,0x10FC},{0x10FD,0x10FD}, /* 10FC */ + {0x10FE,0x10FE},{0x10FF,0x10FF} /* 10FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page1D[256]={ + {0x1D00,0x1D00},{0x1D01,0x1D01}, /* 1D00 */ + {0x1D02,0x1D02},{0x1D03,0x1D03}, /* 1D02 */ + {0x1D04,0x1D04},{0x1D05,0x1D05}, /* 1D04 */ + {0x1D06,0x1D06},{0x1D07,0x1D07}, /* 1D06 */ + {0x1D08,0x1D08},{0x1D09,0x1D09}, /* 1D08 */ + {0x1D0A,0x1D0A},{0x1D0B,0x1D0B}, /* 1D0A */ + {0x1D0C,0x1D0C},{0x1D0D,0x1D0D}, /* 1D0C */ + {0x1D0E,0x1D0E},{0x1D0F,0x1D0F}, /* 1D0E */ + {0x1D10,0x1D10},{0x1D11,0x1D11}, /* 1D10 */ + {0x1D12,0x1D12},{0x1D13,0x1D13}, /* 1D12 */ + {0x1D14,0x1D14},{0x1D15,0x1D15}, /* 1D14 */ + {0x1D16,0x1D16},{0x1D17,0x1D17}, /* 1D16 */ + {0x1D18,0x1D18},{0x1D19,0x1D19}, /* 1D18 */ + {0x1D1A,0x1D1A},{0x1D1B,0x1D1B}, /* 1D1A */ + {0x1D1C,0x1D1C},{0x1D1D,0x1D1D}, /* 1D1C */ + {0x1D1E,0x1D1E},{0x1D1F,0x1D1F}, /* 1D1E */ + {0x1D20,0x1D20},{0x1D21,0x1D21}, /* 1D20 */ + {0x1D22,0x1D22},{0x1D23,0x1D23}, /* 1D22 */ + {0x1D24,0x1D24},{0x1D25,0x1D25}, /* 1D24 */ + {0x1D26,0x1D26},{0x1D27,0x1D27}, /* 1D26 */ + {0x1D28,0x1D28},{0x1D29,0x1D29}, /* 1D28 */ + {0x1D2A,0x1D2A},{0x1D2B,0x1D2B}, /* 1D2A */ + {0x1D2C,0x1D2C},{0x1D2D,0x1D2D}, /* 1D2C */ + {0x1D2E,0x1D2E},{0x1D2F,0x1D2F}, /* 1D2E */ + {0x1D30,0x1D30},{0x1D31,0x1D31}, /* 1D30 */ + {0x1D32,0x1D32},{0x1D33,0x1D33}, /* 1D32 */ + {0x1D34,0x1D34},{0x1D35,0x1D35}, /* 1D34 */ + {0x1D36,0x1D36},{0x1D37,0x1D37}, /* 1D36 */ + {0x1D38,0x1D38},{0x1D39,0x1D39}, /* 1D38 */ + {0x1D3A,0x1D3A},{0x1D3B,0x1D3B}, /* 1D3A */ + {0x1D3C,0x1D3C},{0x1D3D,0x1D3D}, /* 1D3C */ + {0x1D3E,0x1D3E},{0x1D3F,0x1D3F}, /* 1D3E */ + {0x1D40,0x1D40},{0x1D41,0x1D41}, /* 1D40 */ + {0x1D42,0x1D42},{0x1D43,0x1D43}, /* 1D42 */ + {0x1D44,0x1D44},{0x1D45,0x1D45}, /* 1D44 */ + {0x1D46,0x1D46},{0x1D47,0x1D47}, /* 1D46 */ + {0x1D48,0x1D48},{0x1D49,0x1D49}, /* 1D48 */ + {0x1D4A,0x1D4A},{0x1D4B,0x1D4B}, /* 1D4A */ + {0x1D4C,0x1D4C},{0x1D4D,0x1D4D}, /* 1D4C */ + {0x1D4E,0x1D4E},{0x1D4F,0x1D4F}, /* 1D4E */ + {0x1D50,0x1D50},{0x1D51,0x1D51}, /* 1D50 */ + {0x1D52,0x1D52},{0x1D53,0x1D53}, /* 1D52 */ + {0x1D54,0x1D54},{0x1D55,0x1D55}, /* 1D54 */ + {0x1D56,0x1D56},{0x1D57,0x1D57}, /* 1D56 */ + {0x1D58,0x1D58},{0x1D59,0x1D59}, /* 1D58 */ + {0x1D5A,0x1D5A},{0x1D5B,0x1D5B}, /* 1D5A */ + {0x1D5C,0x1D5C},{0x1D5D,0x1D5D}, /* 1D5C */ + {0x1D5E,0x1D5E},{0x1D5F,0x1D5F}, /* 1D5E */ + {0x1D60,0x1D60},{0x1D61,0x1D61}, /* 1D60 */ + {0x1D62,0x1D62},{0x1D63,0x1D63}, /* 1D62 */ + {0x1D64,0x1D64},{0x1D65,0x1D65}, /* 1D64 */ + {0x1D66,0x1D66},{0x1D67,0x1D67}, /* 1D66 */ + {0x1D68,0x1D68},{0x1D69,0x1D69}, /* 1D68 */ + {0x1D6A,0x1D6A},{0x1D6B,0x1D6B}, /* 1D6A */ + {0x1D6C,0x1D6C},{0x1D6D,0x1D6D}, /* 1D6C */ + {0x1D6E,0x1D6E},{0x1D6F,0x1D6F}, /* 1D6E */ + {0x1D70,0x1D70},{0x1D71,0x1D71}, /* 1D70 */ + {0x1D72,0x1D72},{0x1D73,0x1D73}, /* 1D72 */ + {0x1D74,0x1D74},{0x1D75,0x1D75}, /* 1D74 */ + {0x1D76,0x1D76},{0x1D77,0x1D77}, /* 1D76 */ + {0x1D78,0x1D78},{0xA77D,0x1D79}, /* 1D78 */ + {0x1D7A,0x1D7A},{0x1D7B,0x1D7B}, /* 1D7A */ + {0x1D7C,0x1D7C},{0x2C63,0x1D7D}, /* 1D7C */ + {0x1D7E,0x1D7E},{0x1D7F,0x1D7F}, /* 1D7E */ + {0x1D80,0x1D80},{0x1D81,0x1D81}, /* 1D80 */ + {0x1D82,0x1D82},{0x1D83,0x1D83}, /* 1D82 */ + {0x1D84,0x1D84},{0x1D85,0x1D85}, /* 1D84 */ + {0x1D86,0x1D86},{0x1D87,0x1D87}, /* 1D86 */ + {0x1D88,0x1D88},{0x1D89,0x1D89}, /* 1D88 */ + {0x1D8A,0x1D8A},{0x1D8B,0x1D8B}, /* 1D8A */ + {0x1D8C,0x1D8C},{0x1D8D,0x1D8D}, /* 1D8C */ + {0x1D8E,0x1D8E},{0x1D8F,0x1D8F}, /* 1D8E */ + {0x1D90,0x1D90},{0x1D91,0x1D91}, /* 1D90 */ + {0x1D92,0x1D92},{0x1D93,0x1D93}, /* 1D92 */ + {0x1D94,0x1D94},{0x1D95,0x1D95}, /* 1D94 */ + {0x1D96,0x1D96},{0x1D97,0x1D97}, /* 1D96 */ + {0x1D98,0x1D98},{0x1D99,0x1D99}, /* 1D98 */ + {0x1D9A,0x1D9A},{0x1D9B,0x1D9B}, /* 1D9A */ + {0x1D9C,0x1D9C},{0x1D9D,0x1D9D}, /* 1D9C */ + {0x1D9E,0x1D9E},{0x1D9F,0x1D9F}, /* 1D9E */ + {0x1DA0,0x1DA0},{0x1DA1,0x1DA1}, /* 1DA0 */ + {0x1DA2,0x1DA2},{0x1DA3,0x1DA3}, /* 1DA2 */ + {0x1DA4,0x1DA4},{0x1DA5,0x1DA5}, /* 1DA4 */ + {0x1DA6,0x1DA6},{0x1DA7,0x1DA7}, /* 1DA6 */ + {0x1DA8,0x1DA8},{0x1DA9,0x1DA9}, /* 1DA8 */ + {0x1DAA,0x1DAA},{0x1DAB,0x1DAB}, /* 1DAA */ + {0x1DAC,0x1DAC},{0x1DAD,0x1DAD}, /* 1DAC */ + {0x1DAE,0x1DAE},{0x1DAF,0x1DAF}, /* 1DAE */ + {0x1DB0,0x1DB0},{0x1DB1,0x1DB1}, /* 1DB0 */ + {0x1DB2,0x1DB2},{0x1DB3,0x1DB3}, /* 1DB2 */ + {0x1DB4,0x1DB4},{0x1DB5,0x1DB5}, /* 1DB4 */ + {0x1DB6,0x1DB6},{0x1DB7,0x1DB7}, /* 1DB6 */ + {0x1DB8,0x1DB8},{0x1DB9,0x1DB9}, /* 1DB8 */ + {0x1DBA,0x1DBA},{0x1DBB,0x1DBB}, /* 1DBA */ + {0x1DBC,0x1DBC},{0x1DBD,0x1DBD}, /* 1DBC */ + {0x1DBE,0x1DBE},{0x1DBF,0x1DBF}, /* 1DBE */ + {0x1DC0,0x1DC0},{0x1DC1,0x1DC1}, /* 1DC0 */ + {0x1DC2,0x1DC2},{0x1DC3,0x1DC3}, /* 1DC2 */ + {0x1DC4,0x1DC4},{0x1DC5,0x1DC5}, /* 1DC4 */ + {0x1DC6,0x1DC6},{0x1DC7,0x1DC7}, /* 1DC6 */ + {0x1DC8,0x1DC8},{0x1DC9,0x1DC9}, /* 1DC8 */ + {0x1DCA,0x1DCA},{0x1DCB,0x1DCB}, /* 1DCA */ + {0x1DCC,0x1DCC},{0x1DCD,0x1DCD}, /* 1DCC */ + {0x1DCE,0x1DCE},{0x1DCF,0x1DCF}, /* 1DCE */ + {0x1DD0,0x1DD0},{0x1DD1,0x1DD1}, /* 1DD0 */ + {0x1DD2,0x1DD2},{0x1DD3,0x1DD3}, /* 1DD2 */ + {0x1DD4,0x1DD4},{0x1DD5,0x1DD5}, /* 1DD4 */ + {0x1DD6,0x1DD6},{0x1DD7,0x1DD7}, /* 1DD6 */ + {0x1DD8,0x1DD8},{0x1DD9,0x1DD9}, /* 1DD8 */ + {0x1DDA,0x1DDA},{0x1DDB,0x1DDB}, /* 1DDA */ + {0x1DDC,0x1DDC},{0x1DDD,0x1DDD}, /* 1DDC */ + {0x1DDE,0x1DDE},{0x1DDF,0x1DDF}, /* 1DDE */ + {0x1DE0,0x1DE0},{0x1DE1,0x1DE1}, /* 1DE0 */ + {0x1DE2,0x1DE2},{0x1DE3,0x1DE3}, /* 1DE2 */ + {0x1DE4,0x1DE4},{0x1DE5,0x1DE5}, /* 1DE4 */ + {0x1DE6,0x1DE6},{0x1DE7,0x1DE7}, /* 1DE6 */ + {0x1DE8,0x1DE8},{0x1DE9,0x1DE9}, /* 1DE8 */ + {0x1DEA,0x1DEA},{0x1DEB,0x1DEB}, /* 1DEA */ + {0x1DEC,0x1DEC},{0x1DED,0x1DED}, /* 1DEC */ + {0x1DEE,0x1DEE},{0x1DEF,0x1DEF}, /* 1DEE */ + {0x1DF0,0x1DF0},{0x1DF1,0x1DF1}, /* 1DF0 */ + {0x1DF2,0x1DF2},{0x1DF3,0x1DF3}, /* 1DF2 */ + {0x1DF4,0x1DF4},{0x1DF5,0x1DF5}, /* 1DF4 */ + {0x1DF6,0x1DF6},{0x1DF7,0x1DF7}, /* 1DF6 */ + {0x1DF8,0x1DF8},{0x1DF9,0x1DF9}, /* 1DF8 */ + {0x1DFA,0x1DFA},{0x1DFB,0x1DFB}, /* 1DFA */ + {0x1DFC,0x1DFC},{0x1DFD,0x1DFD}, /* 1DFC */ + {0x1DFE,0x1DFE},{0x1DFF,0x1DFF} /* 1DFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page1E[256]={ + {0x1E00,0x1E01},{0x1E00,0x1E01}, /* 1E00 */ + {0x1E02,0x1E03},{0x1E02,0x1E03}, /* 1E02 */ + {0x1E04,0x1E05},{0x1E04,0x1E05}, /* 1E04 */ + {0x1E06,0x1E07},{0x1E06,0x1E07}, /* 1E06 */ + {0x1E08,0x1E09},{0x1E08,0x1E09}, /* 1E08 */ + {0x1E0A,0x1E0B},{0x1E0A,0x1E0B}, /* 1E0A */ + {0x1E0C,0x1E0D},{0x1E0C,0x1E0D}, /* 1E0C */ + {0x1E0E,0x1E0F},{0x1E0E,0x1E0F}, /* 1E0E */ + {0x1E10,0x1E11},{0x1E10,0x1E11}, /* 1E10 */ + {0x1E12,0x1E13},{0x1E12,0x1E13}, /* 1E12 */ + {0x1E14,0x1E15},{0x1E14,0x1E15}, /* 1E14 */ + {0x1E16,0x1E17},{0x1E16,0x1E17}, /* 1E16 */ + {0x1E18,0x1E19},{0x1E18,0x1E19}, /* 1E18 */ + {0x1E1A,0x1E1B},{0x1E1A,0x1E1B}, /* 1E1A */ + {0x1E1C,0x1E1D},{0x1E1C,0x1E1D}, /* 1E1C */ + {0x1E1E,0x1E1F},{0x1E1E,0x1E1F}, /* 1E1E */ + {0x1E20,0x1E21},{0x1E20,0x1E21}, /* 1E20 */ + {0x1E22,0x1E23},{0x1E22,0x1E23}, /* 1E22 */ + {0x1E24,0x1E25},{0x1E24,0x1E25}, /* 1E24 */ + {0x1E26,0x1E27},{0x1E26,0x1E27}, /* 1E26 */ + {0x1E28,0x1E29},{0x1E28,0x1E29}, /* 1E28 */ + {0x1E2A,0x1E2B},{0x1E2A,0x1E2B}, /* 1E2A */ + {0x1E2C,0x1E2D},{0x1E2C,0x1E2D}, /* 1E2C */ + {0x1E2E,0x1E2F},{0x1E2E,0x1E2F}, /* 1E2E */ + {0x1E30,0x1E31},{0x1E30,0x1E31}, /* 1E30 */ + {0x1E32,0x1E33},{0x1E32,0x1E33}, /* 1E32 */ + {0x1E34,0x1E35},{0x1E34,0x1E35}, /* 1E34 */ + {0x1E36,0x1E37},{0x1E36,0x1E37}, /* 1E36 */ + {0x1E38,0x1E39},{0x1E38,0x1E39}, /* 1E38 */ + {0x1E3A,0x1E3B},{0x1E3A,0x1E3B}, /* 1E3A */ + {0x1E3C,0x1E3D},{0x1E3C,0x1E3D}, /* 1E3C */ + {0x1E3E,0x1E3F},{0x1E3E,0x1E3F}, /* 1E3E */ + {0x1E40,0x1E41},{0x1E40,0x1E41}, /* 1E40 */ + {0x1E42,0x1E43},{0x1E42,0x1E43}, /* 1E42 */ + {0x1E44,0x1E45},{0x1E44,0x1E45}, /* 1E44 */ + {0x1E46,0x1E47},{0x1E46,0x1E47}, /* 1E46 */ + {0x1E48,0x1E49},{0x1E48,0x1E49}, /* 1E48 */ + {0x1E4A,0x1E4B},{0x1E4A,0x1E4B}, /* 1E4A */ + {0x1E4C,0x1E4D},{0x1E4C,0x1E4D}, /* 1E4C */ + {0x1E4E,0x1E4F},{0x1E4E,0x1E4F}, /* 1E4E */ + {0x1E50,0x1E51},{0x1E50,0x1E51}, /* 1E50 */ + {0x1E52,0x1E53},{0x1E52,0x1E53}, /* 1E52 */ + {0x1E54,0x1E55},{0x1E54,0x1E55}, /* 1E54 */ + {0x1E56,0x1E57},{0x1E56,0x1E57}, /* 1E56 */ + {0x1E58,0x1E59},{0x1E58,0x1E59}, /* 1E58 */ + {0x1E5A,0x1E5B},{0x1E5A,0x1E5B}, /* 1E5A */ + {0x1E5C,0x1E5D},{0x1E5C,0x1E5D}, /* 1E5C */ + {0x1E5E,0x1E5F},{0x1E5E,0x1E5F}, /* 1E5E */ + {0x1E60,0x1E61},{0x1E60,0x1E61}, /* 1E60 */ + {0x1E62,0x1E63},{0x1E62,0x1E63}, /* 1E62 */ + {0x1E64,0x1E65},{0x1E64,0x1E65}, /* 1E64 */ + {0x1E66,0x1E67},{0x1E66,0x1E67}, /* 1E66 */ + {0x1E68,0x1E69},{0x1E68,0x1E69}, /* 1E68 */ + {0x1E6A,0x1E6B},{0x1E6A,0x1E6B}, /* 1E6A */ + {0x1E6C,0x1E6D},{0x1E6C,0x1E6D}, /* 1E6C */ + {0x1E6E,0x1E6F},{0x1E6E,0x1E6F}, /* 1E6E */ + {0x1E70,0x1E71},{0x1E70,0x1E71}, /* 1E70 */ + {0x1E72,0x1E73},{0x1E72,0x1E73}, /* 1E72 */ + {0x1E74,0x1E75},{0x1E74,0x1E75}, /* 1E74 */ + {0x1E76,0x1E77},{0x1E76,0x1E77}, /* 1E76 */ + {0x1E78,0x1E79},{0x1E78,0x1E79}, /* 1E78 */ + {0x1E7A,0x1E7B},{0x1E7A,0x1E7B}, /* 1E7A */ + {0x1E7C,0x1E7D},{0x1E7C,0x1E7D}, /* 1E7C */ + {0x1E7E,0x1E7F},{0x1E7E,0x1E7F}, /* 1E7E */ + {0x1E80,0x1E81},{0x1E80,0x1E81}, /* 1E80 */ + {0x1E82,0x1E83},{0x1E82,0x1E83}, /* 1E82 */ + {0x1E84,0x1E85},{0x1E84,0x1E85}, /* 1E84 */ + {0x1E86,0x1E87},{0x1E86,0x1E87}, /* 1E86 */ + {0x1E88,0x1E89},{0x1E88,0x1E89}, /* 1E88 */ + {0x1E8A,0x1E8B},{0x1E8A,0x1E8B}, /* 1E8A */ + {0x1E8C,0x1E8D},{0x1E8C,0x1E8D}, /* 1E8C */ + {0x1E8E,0x1E8F},{0x1E8E,0x1E8F}, /* 1E8E */ + {0x1E90,0x1E91},{0x1E90,0x1E91}, /* 1E90 */ + {0x1E92,0x1E93},{0x1E92,0x1E93}, /* 1E92 */ + {0x1E94,0x1E95},{0x1E94,0x1E95}, /* 1E94 */ + {0x1E96,0x1E96},{0x1E97,0x1E97}, /* 1E96 */ + {0x1E98,0x1E98},{0x1E99,0x1E99}, /* 1E98 */ + {0x1E9A,0x1E9A},{0x1E60,0x1E9B}, /* 1E9A */ + {0x1E9C,0x1E9C},{0x1E9D,0x1E9D}, /* 1E9C */ + {0x1E9E,0x00DF},{0x1E9F,0x1E9F}, /* 1E9E */ + {0x1EA0,0x1EA1},{0x1EA0,0x1EA1}, /* 1EA0 */ + {0x1EA2,0x1EA3},{0x1EA2,0x1EA3}, /* 1EA2 */ + {0x1EA4,0x1EA5},{0x1EA4,0x1EA5}, /* 1EA4 */ + {0x1EA6,0x1EA7},{0x1EA6,0x1EA7}, /* 1EA6 */ + {0x1EA8,0x1EA9},{0x1EA8,0x1EA9}, /* 1EA8 */ + {0x1EAA,0x1EAB},{0x1EAA,0x1EAB}, /* 1EAA */ + {0x1EAC,0x1EAD},{0x1EAC,0x1EAD}, /* 1EAC */ + {0x1EAE,0x1EAF},{0x1EAE,0x1EAF}, /* 1EAE */ + {0x1EB0,0x1EB1},{0x1EB0,0x1EB1}, /* 1EB0 */ + {0x1EB2,0x1EB3},{0x1EB2,0x1EB3}, /* 1EB2 */ + {0x1EB4,0x1EB5},{0x1EB4,0x1EB5}, /* 1EB4 */ + {0x1EB6,0x1EB7},{0x1EB6,0x1EB7}, /* 1EB6 */ + {0x1EB8,0x1EB9},{0x1EB8,0x1EB9}, /* 1EB8 */ + {0x1EBA,0x1EBB},{0x1EBA,0x1EBB}, /* 1EBA */ + {0x1EBC,0x1EBD},{0x1EBC,0x1EBD}, /* 1EBC */ + {0x1EBE,0x1EBF},{0x1EBE,0x1EBF}, /* 1EBE */ + {0x1EC0,0x1EC1},{0x1EC0,0x1EC1}, /* 1EC0 */ + {0x1EC2,0x1EC3},{0x1EC2,0x1EC3}, /* 1EC2 */ + {0x1EC4,0x1EC5},{0x1EC4,0x1EC5}, /* 1EC4 */ + {0x1EC6,0x1EC7},{0x1EC6,0x1EC7}, /* 1EC6 */ + {0x1EC8,0x1EC9},{0x1EC8,0x1EC9}, /* 1EC8 */ + {0x1ECA,0x1ECB},{0x1ECA,0x1ECB}, /* 1ECA */ + {0x1ECC,0x1ECD},{0x1ECC,0x1ECD}, /* 1ECC */ + {0x1ECE,0x1ECF},{0x1ECE,0x1ECF}, /* 1ECE */ + {0x1ED0,0x1ED1},{0x1ED0,0x1ED1}, /* 1ED0 */ + {0x1ED2,0x1ED3},{0x1ED2,0x1ED3}, /* 1ED2 */ + {0x1ED4,0x1ED5},{0x1ED4,0x1ED5}, /* 1ED4 */ + {0x1ED6,0x1ED7},{0x1ED6,0x1ED7}, /* 1ED6 */ + {0x1ED8,0x1ED9},{0x1ED8,0x1ED9}, /* 1ED8 */ + {0x1EDA,0x1EDB},{0x1EDA,0x1EDB}, /* 1EDA */ + {0x1EDC,0x1EDD},{0x1EDC,0x1EDD}, /* 1EDC */ + {0x1EDE,0x1EDF},{0x1EDE,0x1EDF}, /* 1EDE */ + {0x1EE0,0x1EE1},{0x1EE0,0x1EE1}, /* 1EE0 */ + {0x1EE2,0x1EE3},{0x1EE2,0x1EE3}, /* 1EE2 */ + {0x1EE4,0x1EE5},{0x1EE4,0x1EE5}, /* 1EE4 */ + {0x1EE6,0x1EE7},{0x1EE6,0x1EE7}, /* 1EE6 */ + {0x1EE8,0x1EE9},{0x1EE8,0x1EE9}, /* 1EE8 */ + {0x1EEA,0x1EEB},{0x1EEA,0x1EEB}, /* 1EEA */ + {0x1EEC,0x1EED},{0x1EEC,0x1EED}, /* 1EEC */ + {0x1EEE,0x1EEF},{0x1EEE,0x1EEF}, /* 1EEE */ + {0x1EF0,0x1EF1},{0x1EF0,0x1EF1}, /* 1EF0 */ + {0x1EF2,0x1EF3},{0x1EF2,0x1EF3}, /* 1EF2 */ + {0x1EF4,0x1EF5},{0x1EF4,0x1EF5}, /* 1EF4 */ + {0x1EF6,0x1EF7},{0x1EF6,0x1EF7}, /* 1EF6 */ + {0x1EF8,0x1EF9},{0x1EF8,0x1EF9}, /* 1EF8 */ + {0x1EFA,0x1EFB},{0x1EFA,0x1EFB}, /* 1EFA */ + {0x1EFC,0x1EFD},{0x1EFC,0x1EFD}, /* 1EFC */ + {0x1EFE,0x1EFF},{0x1EFE,0x1EFF} /* 1EFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page1F[256]={ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F00 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F02 */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F04 */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F06 */ + {0x1F08,0x1F00},{0x1F09,0x1F01}, /* 1F08 */ + {0x1F0A,0x1F02},{0x1F0B,0x1F03}, /* 1F0A */ + {0x1F0C,0x1F04},{0x1F0D,0x1F05}, /* 1F0C */ + {0x1F0E,0x1F06},{0x1F0F,0x1F07}, /* 1F0E */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F10 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F12 */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F14 */ + {0x1F16,0x1F16},{0x1F17,0x1F17}, /* 1F16 */ + {0x1F18,0x1F10},{0x1F19,0x1F11}, /* 1F18 */ + {0x1F1A,0x1F12},{0x1F1B,0x1F13}, /* 1F1A */ + {0x1F1C,0x1F14},{0x1F1D,0x1F15}, /* 1F1C */ + {0x1F1E,0x1F1E},{0x1F1F,0x1F1F}, /* 1F1E */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F20 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F22 */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F24 */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F26 */ + {0x1F28,0x1F20},{0x1F29,0x1F21}, /* 1F28 */ + {0x1F2A,0x1F22},{0x1F2B,0x1F23}, /* 1F2A */ + {0x1F2C,0x1F24},{0x1F2D,0x1F25}, /* 1F2C */ + {0x1F2E,0x1F26},{0x1F2F,0x1F27}, /* 1F2E */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F30 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F32 */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F34 */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F36 */ + {0x1F38,0x1F30},{0x1F39,0x1F31}, /* 1F38 */ + {0x1F3A,0x1F32},{0x1F3B,0x1F33}, /* 1F3A */ + {0x1F3C,0x1F34},{0x1F3D,0x1F35}, /* 1F3C */ + {0x1F3E,0x1F36},{0x1F3F,0x1F37}, /* 1F3E */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F40 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F42 */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F44 */ + {0x1F46,0x1F46},{0x1F47,0x1F47}, /* 1F46 */ + {0x1F48,0x1F40},{0x1F49,0x1F41}, /* 1F48 */ + {0x1F4A,0x1F42},{0x1F4B,0x1F43}, /* 1F4A */ + {0x1F4C,0x1F44},{0x1F4D,0x1F45}, /* 1F4C */ + {0x1F4E,0x1F4E},{0x1F4F,0x1F4F}, /* 1F4E */ + {0x1F50,0x1F50},{0x1F59,0x1F51}, /* 1F50 */ + {0x1F52,0x1F52},{0x1F5B,0x1F53}, /* 1F52 */ + {0x1F54,0x1F54},{0x1F5D,0x1F55}, /* 1F54 */ + {0x1F56,0x1F56},{0x1F5F,0x1F57}, /* 1F56 */ + {0x1F58,0x1F58},{0x1F59,0x1F51}, /* 1F58 */ + {0x1F5A,0x1F5A},{0x1F5B,0x1F53}, /* 1F5A */ + {0x1F5C,0x1F5C},{0x1F5D,0x1F55}, /* 1F5C */ + {0x1F5E,0x1F5E},{0x1F5F,0x1F57}, /* 1F5E */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F60 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F62 */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F64 */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F66 */ + {0x1F68,0x1F60},{0x1F69,0x1F61}, /* 1F68 */ + {0x1F6A,0x1F62},{0x1F6B,0x1F63}, /* 1F6A */ + {0x1F6C,0x1F64},{0x1F6D,0x1F65}, /* 1F6C */ + {0x1F6E,0x1F66},{0x1F6F,0x1F67}, /* 1F6E */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1F70 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1F72 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1F74 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1F76 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1F78 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1F7A */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1F7C */ + {0x1F7E,0x1F7E},{0x1F7F,0x1F7F}, /* 1F7E */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F80 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F82 */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F84 */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F86 */ + {0x1F88,0x1F80},{0x1F89,0x1F81}, /* 1F88 */ + {0x1F8A,0x1F82},{0x1F8B,0x1F83}, /* 1F8A */ + {0x1F8C,0x1F84},{0x1F8D,0x1F85}, /* 1F8C */ + {0x1F8E,0x1F86},{0x1F8F,0x1F87}, /* 1F8E */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F90 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F92 */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F94 */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F96 */ + {0x1F98,0x1F90},{0x1F99,0x1F91}, /* 1F98 */ + {0x1F9A,0x1F92},{0x1F9B,0x1F93}, /* 1F9A */ + {0x1F9C,0x1F94},{0x1F9D,0x1F95}, /* 1F9C */ + {0x1F9E,0x1F96},{0x1F9F,0x1F97}, /* 1F9E */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA0 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FA2 */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FA4 */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FA6 */ + {0x1FA8,0x1FA0},{0x1FA9,0x1FA1}, /* 1FA8 */ + {0x1FAA,0x1FA2},{0x1FAB,0x1FA3}, /* 1FAA */ + {0x1FAC,0x1FA4},{0x1FAD,0x1FA5}, /* 1FAC */ + {0x1FAE,0x1FA6},{0x1FAF,0x1FA7}, /* 1FAE */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB0 */ + {0x1FB2,0x1FB2},{0x1FBC,0x1FB3}, /* 1FB2 */ + {0x1FB4,0x1FB4},{0x1FB5,0x1FB5}, /* 1FB4 */ + {0x1FB6,0x1FB6},{0x1FB7,0x1FB7}, /* 1FB6 */ + {0x1FB8,0x1FB0},{0x1FB9,0x1FB1}, /* 1FB8 */ + {0x1FBA,0x1F70},{0x1FBB,0x1F71}, /* 1FBA */ + {0x1FBC,0x1FB3},{0x1FBD,0x1FBD}, /* 1FBC */ + {0x0399,0x1FBE},{0x1FBF,0x1FBF}, /* 1FBE */ + {0x1FC0,0x1FC0},{0x1FC1,0x1FC1}, /* 1FC0 */ + {0x1FC2,0x1FC2},{0x1FCC,0x1FC3}, /* 1FC2 */ + {0x1FC4,0x1FC4},{0x1FC5,0x1FC5}, /* 1FC4 */ + {0x1FC6,0x1FC6},{0x1FC7,0x1FC7}, /* 1FC6 */ + {0x1FC8,0x1F72},{0x1FC9,0x1F73}, /* 1FC8 */ + {0x1FCA,0x1F74},{0x1FCB,0x1F75}, /* 1FCA */ + {0x1FCC,0x1FC3},{0x1FCD,0x1FCD}, /* 1FCC */ + {0x1FCE,0x1FCE},{0x1FCF,0x1FCF}, /* 1FCE */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD0 */ + {0x1FD2,0x1FD2},{0x1FD3,0x1FD3}, /* 1FD2 */ + {0x1FD4,0x1FD4},{0x1FD5,0x1FD5}, /* 1FD4 */ + {0x1FD6,0x1FD6},{0x1FD7,0x1FD7}, /* 1FD6 */ + {0x1FD8,0x1FD0},{0x1FD9,0x1FD1}, /* 1FD8 */ + {0x1FDA,0x1F76},{0x1FDB,0x1F77}, /* 1FDA */ + {0x1FDC,0x1FDC},{0x1FDD,0x1FDD}, /* 1FDC */ + {0x1FDE,0x1FDE},{0x1FDF,0x1FDF}, /* 1FDE */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE0 */ + {0x1FE2,0x1FE2},{0x1FE3,0x1FE3}, /* 1FE2 */ + {0x1FE4,0x1FE4},{0x1FEC,0x1FE5}, /* 1FE4 */ + {0x1FE6,0x1FE6},{0x1FE7,0x1FE7}, /* 1FE6 */ + {0x1FE8,0x1FE0},{0x1FE9,0x1FE1}, /* 1FE8 */ + {0x1FEA,0x1F7A},{0x1FEB,0x1F7B}, /* 1FEA */ + {0x1FEC,0x1FE5},{0x1FED,0x1FED}, /* 1FEC */ + {0x1FEE,0x1FEE},{0x1FEF,0x1FEF}, /* 1FEE */ + {0x1FF0,0x1FF0},{0x1FF1,0x1FF1}, /* 1FF0 */ + {0x1FF2,0x1FF2},{0x1FFC,0x1FF3}, /* 1FF2 */ + {0x1FF4,0x1FF4},{0x1FF5,0x1FF5}, /* 1FF4 */ + {0x1FF6,0x1FF6},{0x1FF7,0x1FF7}, /* 1FF6 */ + {0x1FF8,0x1F78},{0x1FF9,0x1F79}, /* 1FF8 */ + {0x1FFA,0x1F7C},{0x1FFB,0x1F7D}, /* 1FFA */ + {0x1FFC,0x1FF3},{0x1FFD,0x1FFD}, /* 1FFC */ + {0x1FFE,0x1FFE},{0x1FFF,0x1FFF} /* 1FFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page21[256]={ + {0x2100,0x2100},{0x2101,0x2101}, /* 2100 */ + {0x2102,0x2102},{0x2103,0x2103}, /* 2102 */ + {0x2104,0x2104},{0x2105,0x2105}, /* 2104 */ + {0x2106,0x2106},{0x2107,0x2107}, /* 2106 */ + {0x2108,0x2108},{0x2109,0x2109}, /* 2108 */ + {0x210A,0x210A},{0x210B,0x210B}, /* 210A */ + {0x210C,0x210C},{0x210D,0x210D}, /* 210C */ + {0x210E,0x210E},{0x210F,0x210F}, /* 210E */ + {0x2110,0x2110},{0x2111,0x2111}, /* 2110 */ + {0x2112,0x2112},{0x2113,0x2113}, /* 2112 */ + {0x2114,0x2114},{0x2115,0x2115}, /* 2114 */ + {0x2116,0x2116},{0x2117,0x2117}, /* 2116 */ + {0x2118,0x2118},{0x2119,0x2119}, /* 2118 */ + {0x211A,0x211A},{0x211B,0x211B}, /* 211A */ + {0x211C,0x211C},{0x211D,0x211D}, /* 211C */ + {0x211E,0x211E},{0x211F,0x211F}, /* 211E */ + {0x2120,0x2120},{0x2121,0x2121}, /* 2120 */ + {0x2122,0x2122},{0x2123,0x2123}, /* 2122 */ + {0x2124,0x2124},{0x2125,0x2125}, /* 2124 */ + {0x2126,0x03C9},{0x2127,0x2127}, /* 2126 */ + {0x2128,0x2128},{0x2129,0x2129}, /* 2128 */ + {0x212A,0x006B},{0x212B,0x00E5}, /* 212A */ + {0x212C,0x212C},{0x212D,0x212D}, /* 212C */ + {0x212E,0x212E},{0x212F,0x212F}, /* 212E */ + {0x2130,0x2130},{0x2131,0x2131}, /* 2130 */ + {0x2132,0x214E},{0x2133,0x2133}, /* 2132 */ + {0x2134,0x2134},{0x2135,0x2135}, /* 2134 */ + {0x2136,0x2136},{0x2137,0x2137}, /* 2136 */ + {0x2138,0x2138},{0x2139,0x2139}, /* 2138 */ + {0x213A,0x213A},{0x213B,0x213B}, /* 213A */ + {0x213C,0x213C},{0x213D,0x213D}, /* 213C */ + {0x213E,0x213E},{0x213F,0x213F}, /* 213E */ + {0x2140,0x2140},{0x2141,0x2141}, /* 2140 */ + {0x2142,0x2142},{0x2143,0x2143}, /* 2142 */ + {0x2144,0x2144},{0x2145,0x2145}, /* 2144 */ + {0x2146,0x2146},{0x2147,0x2147}, /* 2146 */ + {0x2148,0x2148},{0x2149,0x2149}, /* 2148 */ + {0x214A,0x214A},{0x214B,0x214B}, /* 214A */ + {0x214C,0x214C},{0x214D,0x214D}, /* 214C */ + {0x2132,0x214E},{0x214F,0x214F}, /* 214E */ + {0x2150,0x2150},{0x2151,0x2151}, /* 2150 */ + {0x2152,0x2152},{0x2153,0x2153}, /* 2152 */ + {0x2154,0x2154},{0x2155,0x2155}, /* 2154 */ + {0x2156,0x2156},{0x2157,0x2157}, /* 2156 */ + {0x2158,0x2158},{0x2159,0x2159}, /* 2158 */ + {0x215A,0x215A},{0x215B,0x215B}, /* 215A */ + {0x215C,0x215C},{0x215D,0x215D}, /* 215C */ + {0x215E,0x215E},{0x215F,0x215F}, /* 215E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2160 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2162 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2164 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2166 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2168 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 216A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 216C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 216E */ + {0x2160,0x2170},{0x2161,0x2171}, /* 2170 */ + {0x2162,0x2172},{0x2163,0x2173}, /* 2172 */ + {0x2164,0x2174},{0x2165,0x2175}, /* 2174 */ + {0x2166,0x2176},{0x2167,0x2177}, /* 2176 */ + {0x2168,0x2178},{0x2169,0x2179}, /* 2178 */ + {0x216A,0x217A},{0x216B,0x217B}, /* 217A */ + {0x216C,0x217C},{0x216D,0x217D}, /* 217C */ + {0x216E,0x217E},{0x216F,0x217F}, /* 217E */ + {0x2180,0x2180},{0x2181,0x2181}, /* 2180 */ + {0x2182,0x2182},{0x2183,0x2184}, /* 2182 */ + {0x2183,0x2184},{0x2185,0x2185}, /* 2184 */ + {0x2186,0x2186},{0x2187,0x2187}, /* 2186 */ + {0x2188,0x2188},{0x2189,0x2189}, /* 2188 */ + {0x218A,0x218A},{0x218B,0x218B}, /* 218A */ + {0x218C,0x218C},{0x218D,0x218D}, /* 218C */ + {0x218E,0x218E},{0x218F,0x218F}, /* 218E */ + {0x2190,0x2190},{0x2191,0x2191}, /* 2190 */ + {0x2192,0x2192},{0x2193,0x2193}, /* 2192 */ + {0x2194,0x2194},{0x2195,0x2195}, /* 2194 */ + {0x2196,0x2196},{0x2197,0x2197}, /* 2196 */ + {0x2198,0x2198},{0x2199,0x2199}, /* 2198 */ + {0x219A,0x219A},{0x219B,0x219B}, /* 219A */ + {0x219C,0x219C},{0x219D,0x219D}, /* 219C */ + {0x219E,0x219E},{0x219F,0x219F}, /* 219E */ + {0x21A0,0x21A0},{0x21A1,0x21A1}, /* 21A0 */ + {0x21A2,0x21A2},{0x21A3,0x21A3}, /* 21A2 */ + {0x21A4,0x21A4},{0x21A5,0x21A5}, /* 21A4 */ + {0x21A6,0x21A6},{0x21A7,0x21A7}, /* 21A6 */ + {0x21A8,0x21A8},{0x21A9,0x21A9}, /* 21A8 */ + {0x21AA,0x21AA},{0x21AB,0x21AB}, /* 21AA */ + {0x21AC,0x21AC},{0x21AD,0x21AD}, /* 21AC */ + {0x21AE,0x21AE},{0x21AF,0x21AF}, /* 21AE */ + {0x21B0,0x21B0},{0x21B1,0x21B1}, /* 21B0 */ + {0x21B2,0x21B2},{0x21B3,0x21B3}, /* 21B2 */ + {0x21B4,0x21B4},{0x21B5,0x21B5}, /* 21B4 */ + {0x21B6,0x21B6},{0x21B7,0x21B7}, /* 21B6 */ + {0x21B8,0x21B8},{0x21B9,0x21B9}, /* 21B8 */ + {0x21BA,0x21BA},{0x21BB,0x21BB}, /* 21BA */ + {0x21BC,0x21BC},{0x21BD,0x21BD}, /* 21BC */ + {0x21BE,0x21BE},{0x21BF,0x21BF}, /* 21BE */ + {0x21C0,0x21C0},{0x21C1,0x21C1}, /* 21C0 */ + {0x21C2,0x21C2},{0x21C3,0x21C3}, /* 21C2 */ + {0x21C4,0x21C4},{0x21C5,0x21C5}, /* 21C4 */ + {0x21C6,0x21C6},{0x21C7,0x21C7}, /* 21C6 */ + {0x21C8,0x21C8},{0x21C9,0x21C9}, /* 21C8 */ + {0x21CA,0x21CA},{0x21CB,0x21CB}, /* 21CA */ + {0x21CC,0x21CC},{0x21CD,0x21CD}, /* 21CC */ + {0x21CE,0x21CE},{0x21CF,0x21CF}, /* 21CE */ + {0x21D0,0x21D0},{0x21D1,0x21D1}, /* 21D0 */ + {0x21D2,0x21D2},{0x21D3,0x21D3}, /* 21D2 */ + {0x21D4,0x21D4},{0x21D5,0x21D5}, /* 21D4 */ + {0x21D6,0x21D6},{0x21D7,0x21D7}, /* 21D6 */ + {0x21D8,0x21D8},{0x21D9,0x21D9}, /* 21D8 */ + {0x21DA,0x21DA},{0x21DB,0x21DB}, /* 21DA */ + {0x21DC,0x21DC},{0x21DD,0x21DD}, /* 21DC */ + {0x21DE,0x21DE},{0x21DF,0x21DF}, /* 21DE */ + {0x21E0,0x21E0},{0x21E1,0x21E1}, /* 21E0 */ + {0x21E2,0x21E2},{0x21E3,0x21E3}, /* 21E2 */ + {0x21E4,0x21E4},{0x21E5,0x21E5}, /* 21E4 */ + {0x21E6,0x21E6},{0x21E7,0x21E7}, /* 21E6 */ + {0x21E8,0x21E8},{0x21E9,0x21E9}, /* 21E8 */ + {0x21EA,0x21EA},{0x21EB,0x21EB}, /* 21EA */ + {0x21EC,0x21EC},{0x21ED,0x21ED}, /* 21EC */ + {0x21EE,0x21EE},{0x21EF,0x21EF}, /* 21EE */ + {0x21F0,0x21F0},{0x21F1,0x21F1}, /* 21F0 */ + {0x21F2,0x21F2},{0x21F3,0x21F3}, /* 21F2 */ + {0x21F4,0x21F4},{0x21F5,0x21F5}, /* 21F4 */ + {0x21F6,0x21F6},{0x21F7,0x21F7}, /* 21F6 */ + {0x21F8,0x21F8},{0x21F9,0x21F9}, /* 21F8 */ + {0x21FA,0x21FA},{0x21FB,0x21FB}, /* 21FA */ + {0x21FC,0x21FC},{0x21FD,0x21FD}, /* 21FC */ + {0x21FE,0x21FE},{0x21FF,0x21FF} /* 21FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page24[256]={ + {0x2400,0x2400},{0x2401,0x2401}, /* 2400 */ + {0x2402,0x2402},{0x2403,0x2403}, /* 2402 */ + {0x2404,0x2404},{0x2405,0x2405}, /* 2404 */ + {0x2406,0x2406},{0x2407,0x2407}, /* 2406 */ + {0x2408,0x2408},{0x2409,0x2409}, /* 2408 */ + {0x240A,0x240A},{0x240B,0x240B}, /* 240A */ + {0x240C,0x240C},{0x240D,0x240D}, /* 240C */ + {0x240E,0x240E},{0x240F,0x240F}, /* 240E */ + {0x2410,0x2410},{0x2411,0x2411}, /* 2410 */ + {0x2412,0x2412},{0x2413,0x2413}, /* 2412 */ + {0x2414,0x2414},{0x2415,0x2415}, /* 2414 */ + {0x2416,0x2416},{0x2417,0x2417}, /* 2416 */ + {0x2418,0x2418},{0x2419,0x2419}, /* 2418 */ + {0x241A,0x241A},{0x241B,0x241B}, /* 241A */ + {0x241C,0x241C},{0x241D,0x241D}, /* 241C */ + {0x241E,0x241E},{0x241F,0x241F}, /* 241E */ + {0x2420,0x2420},{0x2421,0x2421}, /* 2420 */ + {0x2422,0x2422},{0x2423,0x2423}, /* 2422 */ + {0x2424,0x2424},{0x2425,0x2425}, /* 2424 */ + {0x2426,0x2426},{0x2427,0x2427}, /* 2426 */ + {0x2428,0x2428},{0x2429,0x2429}, /* 2428 */ + {0x242A,0x242A},{0x242B,0x242B}, /* 242A */ + {0x242C,0x242C},{0x242D,0x242D}, /* 242C */ + {0x242E,0x242E},{0x242F,0x242F}, /* 242E */ + {0x2430,0x2430},{0x2431,0x2431}, /* 2430 */ + {0x2432,0x2432},{0x2433,0x2433}, /* 2432 */ + {0x2434,0x2434},{0x2435,0x2435}, /* 2434 */ + {0x2436,0x2436},{0x2437,0x2437}, /* 2436 */ + {0x2438,0x2438},{0x2439,0x2439}, /* 2438 */ + {0x243A,0x243A},{0x243B,0x243B}, /* 243A */ + {0x243C,0x243C},{0x243D,0x243D}, /* 243C */ + {0x243E,0x243E},{0x243F,0x243F}, /* 243E */ + {0x2440,0x2440},{0x2441,0x2441}, /* 2440 */ + {0x2442,0x2442},{0x2443,0x2443}, /* 2442 */ + {0x2444,0x2444},{0x2445,0x2445}, /* 2444 */ + {0x2446,0x2446},{0x2447,0x2447}, /* 2446 */ + {0x2448,0x2448},{0x2449,0x2449}, /* 2448 */ + {0x244A,0x244A},{0x244B,0x244B}, /* 244A */ + {0x244C,0x244C},{0x244D,0x244D}, /* 244C */ + {0x244E,0x244E},{0x244F,0x244F}, /* 244E */ + {0x2450,0x2450},{0x2451,0x2451}, /* 2450 */ + {0x2452,0x2452},{0x2453,0x2453}, /* 2452 */ + {0x2454,0x2454},{0x2455,0x2455}, /* 2454 */ + {0x2456,0x2456},{0x2457,0x2457}, /* 2456 */ + {0x2458,0x2458},{0x2459,0x2459}, /* 2458 */ + {0x245A,0x245A},{0x245B,0x245B}, /* 245A */ + {0x245C,0x245C},{0x245D,0x245D}, /* 245C */ + {0x245E,0x245E},{0x245F,0x245F}, /* 245E */ + {0x2460,0x2460},{0x2461,0x2461}, /* 2460 */ + {0x2462,0x2462},{0x2463,0x2463}, /* 2462 */ + {0x2464,0x2464},{0x2465,0x2465}, /* 2464 */ + {0x2466,0x2466},{0x2467,0x2467}, /* 2466 */ + {0x2468,0x2468},{0x2469,0x2469}, /* 2468 */ + {0x246A,0x246A},{0x246B,0x246B}, /* 246A */ + {0x246C,0x246C},{0x246D,0x246D}, /* 246C */ + {0x246E,0x246E},{0x246F,0x246F}, /* 246E */ + {0x2470,0x2470},{0x2471,0x2471}, /* 2470 */ + {0x2472,0x2472},{0x2473,0x2473}, /* 2472 */ + {0x2474,0x2474},{0x2475,0x2475}, /* 2474 */ + {0x2476,0x2476},{0x2477,0x2477}, /* 2476 */ + {0x2478,0x2478},{0x2479,0x2479}, /* 2478 */ + {0x247A,0x247A},{0x247B,0x247B}, /* 247A */ + {0x247C,0x247C},{0x247D,0x247D}, /* 247C */ + {0x247E,0x247E},{0x247F,0x247F}, /* 247E */ + {0x2480,0x2480},{0x2481,0x2481}, /* 2480 */ + {0x2482,0x2482},{0x2483,0x2483}, /* 2482 */ + {0x2484,0x2484},{0x2485,0x2485}, /* 2484 */ + {0x2486,0x2486},{0x2487,0x2487}, /* 2486 */ + {0x2488,0x2488},{0x2489,0x2489}, /* 2488 */ + {0x248A,0x248A},{0x248B,0x248B}, /* 248A */ + {0x248C,0x248C},{0x248D,0x248D}, /* 248C */ + {0x248E,0x248E},{0x248F,0x248F}, /* 248E */ + {0x2490,0x2490},{0x2491,0x2491}, /* 2490 */ + {0x2492,0x2492},{0x2493,0x2493}, /* 2492 */ + {0x2494,0x2494},{0x2495,0x2495}, /* 2494 */ + {0x2496,0x2496},{0x2497,0x2497}, /* 2496 */ + {0x2498,0x2498},{0x2499,0x2499}, /* 2498 */ + {0x249A,0x249A},{0x249B,0x249B}, /* 249A */ + {0x249C,0x249C},{0x249D,0x249D}, /* 249C */ + {0x249E,0x249E},{0x249F,0x249F}, /* 249E */ + {0x24A0,0x24A0},{0x24A1,0x24A1}, /* 24A0 */ + {0x24A2,0x24A2},{0x24A3,0x24A3}, /* 24A2 */ + {0x24A4,0x24A4},{0x24A5,0x24A5}, /* 24A4 */ + {0x24A6,0x24A6},{0x24A7,0x24A7}, /* 24A6 */ + {0x24A8,0x24A8},{0x24A9,0x24A9}, /* 24A8 */ + {0x24AA,0x24AA},{0x24AB,0x24AB}, /* 24AA */ + {0x24AC,0x24AC},{0x24AD,0x24AD}, /* 24AC */ + {0x24AE,0x24AE},{0x24AF,0x24AF}, /* 24AE */ + {0x24B0,0x24B0},{0x24B1,0x24B1}, /* 24B0 */ + {0x24B2,0x24B2},{0x24B3,0x24B3}, /* 24B2 */ + {0x24B4,0x24B4},{0x24B5,0x24B5}, /* 24B4 */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24B6 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24B8 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24BA */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24BC */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24BE */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24C0 */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24C2 */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24C4 */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24C6 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24C8 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24CA */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24CC */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24CE */ + {0x24B6,0x24D0},{0x24B7,0x24D1}, /* 24D0 */ + {0x24B8,0x24D2},{0x24B9,0x24D3}, /* 24D2 */ + {0x24BA,0x24D4},{0x24BB,0x24D5}, /* 24D4 */ + {0x24BC,0x24D6},{0x24BD,0x24D7}, /* 24D6 */ + {0x24BE,0x24D8},{0x24BF,0x24D9}, /* 24D8 */ + {0x24C0,0x24DA},{0x24C1,0x24DB}, /* 24DA */ + {0x24C2,0x24DC},{0x24C3,0x24DD}, /* 24DC */ + {0x24C4,0x24DE},{0x24C5,0x24DF}, /* 24DE */ + {0x24C6,0x24E0},{0x24C7,0x24E1}, /* 24E0 */ + {0x24C8,0x24E2},{0x24C9,0x24E3}, /* 24E2 */ + {0x24CA,0x24E4},{0x24CB,0x24E5}, /* 24E4 */ + {0x24CC,0x24E6},{0x24CD,0x24E7}, /* 24E6 */ + {0x24CE,0x24E8},{0x24CF,0x24E9}, /* 24E8 */ + {0x24EA,0x24EA},{0x24EB,0x24EB}, /* 24EA */ + {0x24EC,0x24EC},{0x24ED,0x24ED}, /* 24EC */ + {0x24EE,0x24EE},{0x24EF,0x24EF}, /* 24EE */ + {0x24F0,0x24F0},{0x24F1,0x24F1}, /* 24F0 */ + {0x24F2,0x24F2},{0x24F3,0x24F3}, /* 24F2 */ + {0x24F4,0x24F4},{0x24F5,0x24F5}, /* 24F4 */ + {0x24F6,0x24F6},{0x24F7,0x24F7}, /* 24F6 */ + {0x24F8,0x24F8},{0x24F9,0x24F9}, /* 24F8 */ + {0x24FA,0x24FA},{0x24FB,0x24FB}, /* 24FA */ + {0x24FC,0x24FC},{0x24FD,0x24FD}, /* 24FC */ + {0x24FE,0x24FE},{0x24FF,0x24FF} /* 24FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page2C[256]={ + {0x2C00,0x2C30},{0x2C01,0x2C31}, /* 2C00 */ + {0x2C02,0x2C32},{0x2C03,0x2C33}, /* 2C02 */ + {0x2C04,0x2C34},{0x2C05,0x2C35}, /* 2C04 */ + {0x2C06,0x2C36},{0x2C07,0x2C37}, /* 2C06 */ + {0x2C08,0x2C38},{0x2C09,0x2C39}, /* 2C08 */ + {0x2C0A,0x2C3A},{0x2C0B,0x2C3B}, /* 2C0A */ + {0x2C0C,0x2C3C},{0x2C0D,0x2C3D}, /* 2C0C */ + {0x2C0E,0x2C3E},{0x2C0F,0x2C3F}, /* 2C0E */ + {0x2C10,0x2C40},{0x2C11,0x2C41}, /* 2C10 */ + {0x2C12,0x2C42},{0x2C13,0x2C43}, /* 2C12 */ + {0x2C14,0x2C44},{0x2C15,0x2C45}, /* 2C14 */ + {0x2C16,0x2C46},{0x2C17,0x2C47}, /* 2C16 */ + {0x2C18,0x2C48},{0x2C19,0x2C49}, /* 2C18 */ + {0x2C1A,0x2C4A},{0x2C1B,0x2C4B}, /* 2C1A */ + {0x2C1C,0x2C4C},{0x2C1D,0x2C4D}, /* 2C1C */ + {0x2C1E,0x2C4E},{0x2C1F,0x2C4F}, /* 2C1E */ + {0x2C20,0x2C50},{0x2C21,0x2C51}, /* 2C20 */ + {0x2C22,0x2C52},{0x2C23,0x2C53}, /* 2C22 */ + {0x2C24,0x2C54},{0x2C25,0x2C55}, /* 2C24 */ + {0x2C26,0x2C56},{0x2C27,0x2C57}, /* 2C26 */ + {0x2C28,0x2C58},{0x2C29,0x2C59}, /* 2C28 */ + {0x2C2A,0x2C5A},{0x2C2B,0x2C5B}, /* 2C2A */ + {0x2C2C,0x2C5C},{0x2C2D,0x2C5D}, /* 2C2C */ + {0x2C2E,0x2C5E},{0x2C2F,0x2C2F}, /* 2C2E */ + {0x2C00,0x2C30},{0x2C01,0x2C31}, /* 2C30 */ + {0x2C02,0x2C32},{0x2C03,0x2C33}, /* 2C32 */ + {0x2C04,0x2C34},{0x2C05,0x2C35}, /* 2C34 */ + {0x2C06,0x2C36},{0x2C07,0x2C37}, /* 2C36 */ + {0x2C08,0x2C38},{0x2C09,0x2C39}, /* 2C38 */ + {0x2C0A,0x2C3A},{0x2C0B,0x2C3B}, /* 2C3A */ + {0x2C0C,0x2C3C},{0x2C0D,0x2C3D}, /* 2C3C */ + {0x2C0E,0x2C3E},{0x2C0F,0x2C3F}, /* 2C3E */ + {0x2C10,0x2C40},{0x2C11,0x2C41}, /* 2C40 */ + {0x2C12,0x2C42},{0x2C13,0x2C43}, /* 2C42 */ + {0x2C14,0x2C44},{0x2C15,0x2C45}, /* 2C44 */ + {0x2C16,0x2C46},{0x2C17,0x2C47}, /* 2C46 */ + {0x2C18,0x2C48},{0x2C19,0x2C49}, /* 2C48 */ + {0x2C1A,0x2C4A},{0x2C1B,0x2C4B}, /* 2C4A */ + {0x2C1C,0x2C4C},{0x2C1D,0x2C4D}, /* 2C4C */ + {0x2C1E,0x2C4E},{0x2C1F,0x2C4F}, /* 2C4E */ + {0x2C20,0x2C50},{0x2C21,0x2C51}, /* 2C50 */ + {0x2C22,0x2C52},{0x2C23,0x2C53}, /* 2C52 */ + {0x2C24,0x2C54},{0x2C25,0x2C55}, /* 2C54 */ + {0x2C26,0x2C56},{0x2C27,0x2C57}, /* 2C56 */ + {0x2C28,0x2C58},{0x2C29,0x2C59}, /* 2C58 */ + {0x2C2A,0x2C5A},{0x2C2B,0x2C5B}, /* 2C5A */ + {0x2C2C,0x2C5C},{0x2C2D,0x2C5D}, /* 2C5C */ + {0x2C2E,0x2C5E},{0x2C5F,0x2C5F}, /* 2C5E */ + {0x2C60,0x2C61},{0x2C60,0x2C61}, /* 2C60 */ + {0x2C62,0x026B},{0x2C63,0x1D7D}, /* 2C62 */ + {0x2C64,0x027D},{0x023A,0x2C65}, /* 2C64 */ + {0x023E,0x2C66},{0x2C67,0x2C68}, /* 2C66 */ + {0x2C67,0x2C68},{0x2C69,0x2C6A}, /* 2C68 */ + {0x2C69,0x2C6A},{0x2C6B,0x2C6C}, /* 2C6A */ + {0x2C6B,0x2C6C},{0x2C6D,0x0251}, /* 2C6C */ + {0x2C6E,0x0271},{0x2C6F,0x0250}, /* 2C6E */ + {0x2C70,0x0252},{0x2C71,0x2C71}, /* 2C70 */ + {0x2C72,0x2C73},{0x2C72,0x2C73}, /* 2C72 */ + {0x2C74,0x2C74},{0x2C75,0x2C76}, /* 2C74 */ + {0x2C75,0x2C76},{0x2C77,0x2C77}, /* 2C76 */ + {0x2C78,0x2C78},{0x2C79,0x2C79}, /* 2C78 */ + {0x2C7A,0x2C7A},{0x2C7B,0x2C7B}, /* 2C7A */ + {0x2C7C,0x2C7C},{0x2C7D,0x2C7D}, /* 2C7C */ + {0x2C7E,0x023F},{0x2C7F,0x0240}, /* 2C7E */ + {0x2C80,0x2C81},{0x2C80,0x2C81}, /* 2C80 */ + {0x2C82,0x2C83},{0x2C82,0x2C83}, /* 2C82 */ + {0x2C84,0x2C85},{0x2C84,0x2C85}, /* 2C84 */ + {0x2C86,0x2C87},{0x2C86,0x2C87}, /* 2C86 */ + {0x2C88,0x2C89},{0x2C88,0x2C89}, /* 2C88 */ + {0x2C8A,0x2C8B},{0x2C8A,0x2C8B}, /* 2C8A */ + {0x2C8C,0x2C8D},{0x2C8C,0x2C8D}, /* 2C8C */ + {0x2C8E,0x2C8F},{0x2C8E,0x2C8F}, /* 2C8E */ + {0x2C90,0x2C91},{0x2C90,0x2C91}, /* 2C90 */ + {0x2C92,0x2C93},{0x2C92,0x2C93}, /* 2C92 */ + {0x2C94,0x2C95},{0x2C94,0x2C95}, /* 2C94 */ + {0x2C96,0x2C97},{0x2C96,0x2C97}, /* 2C96 */ + {0x2C98,0x2C99},{0x2C98,0x2C99}, /* 2C98 */ + {0x2C9A,0x2C9B},{0x2C9A,0x2C9B}, /* 2C9A */ + {0x2C9C,0x2C9D},{0x2C9C,0x2C9D}, /* 2C9C */ + {0x2C9E,0x2C9F},{0x2C9E,0x2C9F}, /* 2C9E */ + {0x2CA0,0x2CA1},{0x2CA0,0x2CA1}, /* 2CA0 */ + {0x2CA2,0x2CA3},{0x2CA2,0x2CA3}, /* 2CA2 */ + {0x2CA4,0x2CA5},{0x2CA4,0x2CA5}, /* 2CA4 */ + {0x2CA6,0x2CA7},{0x2CA6,0x2CA7}, /* 2CA6 */ + {0x2CA8,0x2CA9},{0x2CA8,0x2CA9}, /* 2CA8 */ + {0x2CAA,0x2CAB},{0x2CAA,0x2CAB}, /* 2CAA */ + {0x2CAC,0x2CAD},{0x2CAC,0x2CAD}, /* 2CAC */ + {0x2CAE,0x2CAF},{0x2CAE,0x2CAF}, /* 2CAE */ + {0x2CB0,0x2CB1},{0x2CB0,0x2CB1}, /* 2CB0 */ + {0x2CB2,0x2CB3},{0x2CB2,0x2CB3}, /* 2CB2 */ + {0x2CB4,0x2CB5},{0x2CB4,0x2CB5}, /* 2CB4 */ + {0x2CB6,0x2CB7},{0x2CB6,0x2CB7}, /* 2CB6 */ + {0x2CB8,0x2CB9},{0x2CB8,0x2CB9}, /* 2CB8 */ + {0x2CBA,0x2CBB},{0x2CBA,0x2CBB}, /* 2CBA */ + {0x2CBC,0x2CBD},{0x2CBC,0x2CBD}, /* 2CBC */ + {0x2CBE,0x2CBF},{0x2CBE,0x2CBF}, /* 2CBE */ + {0x2CC0,0x2CC1},{0x2CC0,0x2CC1}, /* 2CC0 */ + {0x2CC2,0x2CC3},{0x2CC2,0x2CC3}, /* 2CC2 */ + {0x2CC4,0x2CC5},{0x2CC4,0x2CC5}, /* 2CC4 */ + {0x2CC6,0x2CC7},{0x2CC6,0x2CC7}, /* 2CC6 */ + {0x2CC8,0x2CC9},{0x2CC8,0x2CC9}, /* 2CC8 */ + {0x2CCA,0x2CCB},{0x2CCA,0x2CCB}, /* 2CCA */ + {0x2CCC,0x2CCD},{0x2CCC,0x2CCD}, /* 2CCC */ + {0x2CCE,0x2CCF},{0x2CCE,0x2CCF}, /* 2CCE */ + {0x2CD0,0x2CD1},{0x2CD0,0x2CD1}, /* 2CD0 */ + {0x2CD2,0x2CD3},{0x2CD2,0x2CD3}, /* 2CD2 */ + {0x2CD4,0x2CD5},{0x2CD4,0x2CD5}, /* 2CD4 */ + {0x2CD6,0x2CD7},{0x2CD6,0x2CD7}, /* 2CD6 */ + {0x2CD8,0x2CD9},{0x2CD8,0x2CD9}, /* 2CD8 */ + {0x2CDA,0x2CDB},{0x2CDA,0x2CDB}, /* 2CDA */ + {0x2CDC,0x2CDD},{0x2CDC,0x2CDD}, /* 2CDC */ + {0x2CDE,0x2CDF},{0x2CDE,0x2CDF}, /* 2CDE */ + {0x2CE0,0x2CE1},{0x2CE0,0x2CE1}, /* 2CE0 */ + {0x2CE2,0x2CE3},{0x2CE2,0x2CE3}, /* 2CE2 */ + {0x2CE4,0x2CE4},{0x2CE5,0x2CE5}, /* 2CE4 */ + {0x2CE6,0x2CE6},{0x2CE7,0x2CE7}, /* 2CE6 */ + {0x2CE8,0x2CE8},{0x2CE9,0x2CE9}, /* 2CE8 */ + {0x2CEA,0x2CEA},{0x2CEB,0x2CEC}, /* 2CEA */ + {0x2CEB,0x2CEC},{0x2CED,0x2CEE}, /* 2CEC */ + {0x2CED,0x2CEE},{0x2CEF,0x2CEF}, /* 2CEE */ + {0x2CF0,0x2CF0},{0x2CF1,0x2CF1}, /* 2CF0 */ + {0x2CF2,0x2CF2},{0x2CF3,0x2CF3}, /* 2CF2 */ + {0x2CF4,0x2CF4},{0x2CF5,0x2CF5}, /* 2CF4 */ + {0x2CF6,0x2CF6},{0x2CF7,0x2CF7}, /* 2CF6 */ + {0x2CF8,0x2CF8},{0x2CF9,0x2CF9}, /* 2CF8 */ + {0x2CFA,0x2CFA},{0x2CFB,0x2CFB}, /* 2CFA */ + {0x2CFC,0x2CFC},{0x2CFD,0x2CFD}, /* 2CFC */ + {0x2CFE,0x2CFE},{0x2CFF,0x2CFF} /* 2CFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page2D[256]={ + {0x10A0,0x2D00},{0x10A1,0x2D01}, /* 2D00 */ + {0x10A2,0x2D02},{0x10A3,0x2D03}, /* 2D02 */ + {0x10A4,0x2D04},{0x10A5,0x2D05}, /* 2D04 */ + {0x10A6,0x2D06},{0x10A7,0x2D07}, /* 2D06 */ + {0x10A8,0x2D08},{0x10A9,0x2D09}, /* 2D08 */ + {0x10AA,0x2D0A},{0x10AB,0x2D0B}, /* 2D0A */ + {0x10AC,0x2D0C},{0x10AD,0x2D0D}, /* 2D0C */ + {0x10AE,0x2D0E},{0x10AF,0x2D0F}, /* 2D0E */ + {0x10B0,0x2D10},{0x10B1,0x2D11}, /* 2D10 */ + {0x10B2,0x2D12},{0x10B3,0x2D13}, /* 2D12 */ + {0x10B4,0x2D14},{0x10B5,0x2D15}, /* 2D14 */ + {0x10B6,0x2D16},{0x10B7,0x2D17}, /* 2D16 */ + {0x10B8,0x2D18},{0x10B9,0x2D19}, /* 2D18 */ + {0x10BA,0x2D1A},{0x10BB,0x2D1B}, /* 2D1A */ + {0x10BC,0x2D1C},{0x10BD,0x2D1D}, /* 2D1C */ + {0x10BE,0x2D1E},{0x10BF,0x2D1F}, /* 2D1E */ + {0x10C0,0x2D20},{0x10C1,0x2D21}, /* 2D20 */ + {0x10C2,0x2D22},{0x10C3,0x2D23}, /* 2D22 */ + {0x10C4,0x2D24},{0x10C5,0x2D25}, /* 2D24 */ + {0x2D26,0x2D26},{0x2D27,0x2D27}, /* 2D26 */ + {0x2D28,0x2D28},{0x2D29,0x2D29}, /* 2D28 */ + {0x2D2A,0x2D2A},{0x2D2B,0x2D2B}, /* 2D2A */ + {0x2D2C,0x2D2C},{0x2D2D,0x2D2D}, /* 2D2C */ + {0x2D2E,0x2D2E},{0x2D2F,0x2D2F}, /* 2D2E */ + {0x2D30,0x2D30},{0x2D31,0x2D31}, /* 2D30 */ + {0x2D32,0x2D32},{0x2D33,0x2D33}, /* 2D32 */ + {0x2D34,0x2D34},{0x2D35,0x2D35}, /* 2D34 */ + {0x2D36,0x2D36},{0x2D37,0x2D37}, /* 2D36 */ + {0x2D38,0x2D38},{0x2D39,0x2D39}, /* 2D38 */ + {0x2D3A,0x2D3A},{0x2D3B,0x2D3B}, /* 2D3A */ + {0x2D3C,0x2D3C},{0x2D3D,0x2D3D}, /* 2D3C */ + {0x2D3E,0x2D3E},{0x2D3F,0x2D3F}, /* 2D3E */ + {0x2D40,0x2D40},{0x2D41,0x2D41}, /* 2D40 */ + {0x2D42,0x2D42},{0x2D43,0x2D43}, /* 2D42 */ + {0x2D44,0x2D44},{0x2D45,0x2D45}, /* 2D44 */ + {0x2D46,0x2D46},{0x2D47,0x2D47}, /* 2D46 */ + {0x2D48,0x2D48},{0x2D49,0x2D49}, /* 2D48 */ + {0x2D4A,0x2D4A},{0x2D4B,0x2D4B}, /* 2D4A */ + {0x2D4C,0x2D4C},{0x2D4D,0x2D4D}, /* 2D4C */ + {0x2D4E,0x2D4E},{0x2D4F,0x2D4F}, /* 2D4E */ + {0x2D50,0x2D50},{0x2D51,0x2D51}, /* 2D50 */ + {0x2D52,0x2D52},{0x2D53,0x2D53}, /* 2D52 */ + {0x2D54,0x2D54},{0x2D55,0x2D55}, /* 2D54 */ + {0x2D56,0x2D56},{0x2D57,0x2D57}, /* 2D56 */ + {0x2D58,0x2D58},{0x2D59,0x2D59}, /* 2D58 */ + {0x2D5A,0x2D5A},{0x2D5B,0x2D5B}, /* 2D5A */ + {0x2D5C,0x2D5C},{0x2D5D,0x2D5D}, /* 2D5C */ + {0x2D5E,0x2D5E},{0x2D5F,0x2D5F}, /* 2D5E */ + {0x2D60,0x2D60},{0x2D61,0x2D61}, /* 2D60 */ + {0x2D62,0x2D62},{0x2D63,0x2D63}, /* 2D62 */ + {0x2D64,0x2D64},{0x2D65,0x2D65}, /* 2D64 */ + {0x2D66,0x2D66},{0x2D67,0x2D67}, /* 2D66 */ + {0x2D68,0x2D68},{0x2D69,0x2D69}, /* 2D68 */ + {0x2D6A,0x2D6A},{0x2D6B,0x2D6B}, /* 2D6A */ + {0x2D6C,0x2D6C},{0x2D6D,0x2D6D}, /* 2D6C */ + {0x2D6E,0x2D6E},{0x2D6F,0x2D6F}, /* 2D6E */ + {0x2D70,0x2D70},{0x2D71,0x2D71}, /* 2D70 */ + {0x2D72,0x2D72},{0x2D73,0x2D73}, /* 2D72 */ + {0x2D74,0x2D74},{0x2D75,0x2D75}, /* 2D74 */ + {0x2D76,0x2D76},{0x2D77,0x2D77}, /* 2D76 */ + {0x2D78,0x2D78},{0x2D79,0x2D79}, /* 2D78 */ + {0x2D7A,0x2D7A},{0x2D7B,0x2D7B}, /* 2D7A */ + {0x2D7C,0x2D7C},{0x2D7D,0x2D7D}, /* 2D7C */ + {0x2D7E,0x2D7E},{0x2D7F,0x2D7F}, /* 2D7E */ + {0x2D80,0x2D80},{0x2D81,0x2D81}, /* 2D80 */ + {0x2D82,0x2D82},{0x2D83,0x2D83}, /* 2D82 */ + {0x2D84,0x2D84},{0x2D85,0x2D85}, /* 2D84 */ + {0x2D86,0x2D86},{0x2D87,0x2D87}, /* 2D86 */ + {0x2D88,0x2D88},{0x2D89,0x2D89}, /* 2D88 */ + {0x2D8A,0x2D8A},{0x2D8B,0x2D8B}, /* 2D8A */ + {0x2D8C,0x2D8C},{0x2D8D,0x2D8D}, /* 2D8C */ + {0x2D8E,0x2D8E},{0x2D8F,0x2D8F}, /* 2D8E */ + {0x2D90,0x2D90},{0x2D91,0x2D91}, /* 2D90 */ + {0x2D92,0x2D92},{0x2D93,0x2D93}, /* 2D92 */ + {0x2D94,0x2D94},{0x2D95,0x2D95}, /* 2D94 */ + {0x2D96,0x2D96},{0x2D97,0x2D97}, /* 2D96 */ + {0x2D98,0x2D98},{0x2D99,0x2D99}, /* 2D98 */ + {0x2D9A,0x2D9A},{0x2D9B,0x2D9B}, /* 2D9A */ + {0x2D9C,0x2D9C},{0x2D9D,0x2D9D}, /* 2D9C */ + {0x2D9E,0x2D9E},{0x2D9F,0x2D9F}, /* 2D9E */ + {0x2DA0,0x2DA0},{0x2DA1,0x2DA1}, /* 2DA0 */ + {0x2DA2,0x2DA2},{0x2DA3,0x2DA3}, /* 2DA2 */ + {0x2DA4,0x2DA4},{0x2DA5,0x2DA5}, /* 2DA4 */ + {0x2DA6,0x2DA6},{0x2DA7,0x2DA7}, /* 2DA6 */ + {0x2DA8,0x2DA8},{0x2DA9,0x2DA9}, /* 2DA8 */ + {0x2DAA,0x2DAA},{0x2DAB,0x2DAB}, /* 2DAA */ + {0x2DAC,0x2DAC},{0x2DAD,0x2DAD}, /* 2DAC */ + {0x2DAE,0x2DAE},{0x2DAF,0x2DAF}, /* 2DAE */ + {0x2DB0,0x2DB0},{0x2DB1,0x2DB1}, /* 2DB0 */ + {0x2DB2,0x2DB2},{0x2DB3,0x2DB3}, /* 2DB2 */ + {0x2DB4,0x2DB4},{0x2DB5,0x2DB5}, /* 2DB4 */ + {0x2DB6,0x2DB6},{0x2DB7,0x2DB7}, /* 2DB6 */ + {0x2DB8,0x2DB8},{0x2DB9,0x2DB9}, /* 2DB8 */ + {0x2DBA,0x2DBA},{0x2DBB,0x2DBB}, /* 2DBA */ + {0x2DBC,0x2DBC},{0x2DBD,0x2DBD}, /* 2DBC */ + {0x2DBE,0x2DBE},{0x2DBF,0x2DBF}, /* 2DBE */ + {0x2DC0,0x2DC0},{0x2DC1,0x2DC1}, /* 2DC0 */ + {0x2DC2,0x2DC2},{0x2DC3,0x2DC3}, /* 2DC2 */ + {0x2DC4,0x2DC4},{0x2DC5,0x2DC5}, /* 2DC4 */ + {0x2DC6,0x2DC6},{0x2DC7,0x2DC7}, /* 2DC6 */ + {0x2DC8,0x2DC8},{0x2DC9,0x2DC9}, /* 2DC8 */ + {0x2DCA,0x2DCA},{0x2DCB,0x2DCB}, /* 2DCA */ + {0x2DCC,0x2DCC},{0x2DCD,0x2DCD}, /* 2DCC */ + {0x2DCE,0x2DCE},{0x2DCF,0x2DCF}, /* 2DCE */ + {0x2DD0,0x2DD0},{0x2DD1,0x2DD1}, /* 2DD0 */ + {0x2DD2,0x2DD2},{0x2DD3,0x2DD3}, /* 2DD2 */ + {0x2DD4,0x2DD4},{0x2DD5,0x2DD5}, /* 2DD4 */ + {0x2DD6,0x2DD6},{0x2DD7,0x2DD7}, /* 2DD6 */ + {0x2DD8,0x2DD8},{0x2DD9,0x2DD9}, /* 2DD8 */ + {0x2DDA,0x2DDA},{0x2DDB,0x2DDB}, /* 2DDA */ + {0x2DDC,0x2DDC},{0x2DDD,0x2DDD}, /* 2DDC */ + {0x2DDE,0x2DDE},{0x2DDF,0x2DDF}, /* 2DDE */ + {0x2DE0,0x2DE0},{0x2DE1,0x2DE1}, /* 2DE0 */ + {0x2DE2,0x2DE2},{0x2DE3,0x2DE3}, /* 2DE2 */ + {0x2DE4,0x2DE4},{0x2DE5,0x2DE5}, /* 2DE4 */ + {0x2DE6,0x2DE6},{0x2DE7,0x2DE7}, /* 2DE6 */ + {0x2DE8,0x2DE8},{0x2DE9,0x2DE9}, /* 2DE8 */ + {0x2DEA,0x2DEA},{0x2DEB,0x2DEB}, /* 2DEA */ + {0x2DEC,0x2DEC},{0x2DED,0x2DED}, /* 2DEC */ + {0x2DEE,0x2DEE},{0x2DEF,0x2DEF}, /* 2DEE */ + {0x2DF0,0x2DF0},{0x2DF1,0x2DF1}, /* 2DF0 */ + {0x2DF2,0x2DF2},{0x2DF3,0x2DF3}, /* 2DF2 */ + {0x2DF4,0x2DF4},{0x2DF5,0x2DF5}, /* 2DF4 */ + {0x2DF6,0x2DF6},{0x2DF7,0x2DF7}, /* 2DF6 */ + {0x2DF8,0x2DF8},{0x2DF9,0x2DF9}, /* 2DF8 */ + {0x2DFA,0x2DFA},{0x2DFB,0x2DFB}, /* 2DFA */ + {0x2DFC,0x2DFC},{0x2DFD,0x2DFD}, /* 2DFC */ + {0x2DFE,0x2DFE},{0x2DFF,0x2DFF} /* 2DFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_pageA6[256]={ + {0xA600,0xA600},{0xA601,0xA601}, /* A600 */ + {0xA602,0xA602},{0xA603,0xA603}, /* A602 */ + {0xA604,0xA604},{0xA605,0xA605}, /* A604 */ + {0xA606,0xA606},{0xA607,0xA607}, /* A606 */ + {0xA608,0xA608},{0xA609,0xA609}, /* A608 */ + {0xA60A,0xA60A},{0xA60B,0xA60B}, /* A60A */ + {0xA60C,0xA60C},{0xA60D,0xA60D}, /* A60C */ + {0xA60E,0xA60E},{0xA60F,0xA60F}, /* A60E */ + {0xA610,0xA610},{0xA611,0xA611}, /* A610 */ + {0xA612,0xA612},{0xA613,0xA613}, /* A612 */ + {0xA614,0xA614},{0xA615,0xA615}, /* A614 */ + {0xA616,0xA616},{0xA617,0xA617}, /* A616 */ + {0xA618,0xA618},{0xA619,0xA619}, /* A618 */ + {0xA61A,0xA61A},{0xA61B,0xA61B}, /* A61A */ + {0xA61C,0xA61C},{0xA61D,0xA61D}, /* A61C */ + {0xA61E,0xA61E},{0xA61F,0xA61F}, /* A61E */ + {0xA620,0xA620},{0xA621,0xA621}, /* A620 */ + {0xA622,0xA622},{0xA623,0xA623}, /* A622 */ + {0xA624,0xA624},{0xA625,0xA625}, /* A624 */ + {0xA626,0xA626},{0xA627,0xA627}, /* A626 */ + {0xA628,0xA628},{0xA629,0xA629}, /* A628 */ + {0xA62A,0xA62A},{0xA62B,0xA62B}, /* A62A */ + {0xA62C,0xA62C},{0xA62D,0xA62D}, /* A62C */ + {0xA62E,0xA62E},{0xA62F,0xA62F}, /* A62E */ + {0xA630,0xA630},{0xA631,0xA631}, /* A630 */ + {0xA632,0xA632},{0xA633,0xA633}, /* A632 */ + {0xA634,0xA634},{0xA635,0xA635}, /* A634 */ + {0xA636,0xA636},{0xA637,0xA637}, /* A636 */ + {0xA638,0xA638},{0xA639,0xA639}, /* A638 */ + {0xA63A,0xA63A},{0xA63B,0xA63B}, /* A63A */ + {0xA63C,0xA63C},{0xA63D,0xA63D}, /* A63C */ + {0xA63E,0xA63E},{0xA63F,0xA63F}, /* A63E */ + {0xA640,0xA641},{0xA640,0xA641}, /* A640 */ + {0xA642,0xA643},{0xA642,0xA643}, /* A642 */ + {0xA644,0xA645},{0xA644,0xA645}, /* A644 */ + {0xA646,0xA647},{0xA646,0xA647}, /* A646 */ + {0xA648,0xA649},{0xA648,0xA649}, /* A648 */ + {0xA64A,0xA64B},{0xA64A,0xA64B}, /* A64A */ + {0xA64C,0xA64D},{0xA64C,0xA64D}, /* A64C */ + {0xA64E,0xA64F},{0xA64E,0xA64F}, /* A64E */ + {0xA650,0xA651},{0xA650,0xA651}, /* A650 */ + {0xA652,0xA653},{0xA652,0xA653}, /* A652 */ + {0xA654,0xA655},{0xA654,0xA655}, /* A654 */ + {0xA656,0xA657},{0xA656,0xA657}, /* A656 */ + {0xA658,0xA659},{0xA658,0xA659}, /* A658 */ + {0xA65A,0xA65B},{0xA65A,0xA65B}, /* A65A */ + {0xA65C,0xA65D},{0xA65C,0xA65D}, /* A65C */ + {0xA65E,0xA65F},{0xA65E,0xA65F}, /* A65E */ + {0xA660,0xA660},{0xA661,0xA661}, /* A660 */ + {0xA662,0xA663},{0xA662,0xA663}, /* A662 */ + {0xA664,0xA665},{0xA664,0xA665}, /* A664 */ + {0xA666,0xA667},{0xA666,0xA667}, /* A666 */ + {0xA668,0xA669},{0xA668,0xA669}, /* A668 */ + {0xA66A,0xA66B},{0xA66A,0xA66B}, /* A66A */ + {0xA66C,0xA66D},{0xA66C,0xA66D}, /* A66C */ + {0xA66E,0xA66E},{0xA66F,0xA66F}, /* A66E */ + {0xA670,0xA670},{0xA671,0xA671}, /* A670 */ + {0xA672,0xA672},{0xA673,0xA673}, /* A672 */ + {0xA674,0xA674},{0xA675,0xA675}, /* A674 */ + {0xA676,0xA676},{0xA677,0xA677}, /* A676 */ + {0xA678,0xA678},{0xA679,0xA679}, /* A678 */ + {0xA67A,0xA67A},{0xA67B,0xA67B}, /* A67A */ + {0xA67C,0xA67C},{0xA67D,0xA67D}, /* A67C */ + {0xA67E,0xA67E},{0xA67F,0xA67F}, /* A67E */ + {0xA680,0xA681},{0xA680,0xA681}, /* A680 */ + {0xA682,0xA683},{0xA682,0xA683}, /* A682 */ + {0xA684,0xA685},{0xA684,0xA685}, /* A684 */ + {0xA686,0xA687},{0xA686,0xA687}, /* A686 */ + {0xA688,0xA689},{0xA688,0xA689}, /* A688 */ + {0xA68A,0xA68B},{0xA68A,0xA68B}, /* A68A */ + {0xA68C,0xA68D},{0xA68C,0xA68D}, /* A68C */ + {0xA68E,0xA68F},{0xA68E,0xA68F}, /* A68E */ + {0xA690,0xA691},{0xA690,0xA691}, /* A690 */ + {0xA692,0xA693},{0xA692,0xA693}, /* A692 */ + {0xA694,0xA695},{0xA694,0xA695}, /* A694 */ + {0xA696,0xA697},{0xA696,0xA697}, /* A696 */ + {0xA698,0xA698},{0xA699,0xA699}, /* A698 */ + {0xA69A,0xA69A},{0xA69B,0xA69B}, /* A69A */ + {0xA69C,0xA69C},{0xA69D,0xA69D}, /* A69C */ + {0xA69E,0xA69E},{0xA69F,0xA69F}, /* A69E */ + {0xA6A0,0xA6A0},{0xA6A1,0xA6A1}, /* A6A0 */ + {0xA6A2,0xA6A2},{0xA6A3,0xA6A3}, /* A6A2 */ + {0xA6A4,0xA6A4},{0xA6A5,0xA6A5}, /* A6A4 */ + {0xA6A6,0xA6A6},{0xA6A7,0xA6A7}, /* A6A6 */ + {0xA6A8,0xA6A8},{0xA6A9,0xA6A9}, /* A6A8 */ + {0xA6AA,0xA6AA},{0xA6AB,0xA6AB}, /* A6AA */ + {0xA6AC,0xA6AC},{0xA6AD,0xA6AD}, /* A6AC */ + {0xA6AE,0xA6AE},{0xA6AF,0xA6AF}, /* A6AE */ + {0xA6B0,0xA6B0},{0xA6B1,0xA6B1}, /* A6B0 */ + {0xA6B2,0xA6B2},{0xA6B3,0xA6B3}, /* A6B2 */ + {0xA6B4,0xA6B4},{0xA6B5,0xA6B5}, /* A6B4 */ + {0xA6B6,0xA6B6},{0xA6B7,0xA6B7}, /* A6B6 */ + {0xA6B8,0xA6B8},{0xA6B9,0xA6B9}, /* A6B8 */ + {0xA6BA,0xA6BA},{0xA6BB,0xA6BB}, /* A6BA */ + {0xA6BC,0xA6BC},{0xA6BD,0xA6BD}, /* A6BC */ + {0xA6BE,0xA6BE},{0xA6BF,0xA6BF}, /* A6BE */ + {0xA6C0,0xA6C0},{0xA6C1,0xA6C1}, /* A6C0 */ + {0xA6C2,0xA6C2},{0xA6C3,0xA6C3}, /* A6C2 */ + {0xA6C4,0xA6C4},{0xA6C5,0xA6C5}, /* A6C4 */ + {0xA6C6,0xA6C6},{0xA6C7,0xA6C7}, /* A6C6 */ + {0xA6C8,0xA6C8},{0xA6C9,0xA6C9}, /* A6C8 */ + {0xA6CA,0xA6CA},{0xA6CB,0xA6CB}, /* A6CA */ + {0xA6CC,0xA6CC},{0xA6CD,0xA6CD}, /* A6CC */ + {0xA6CE,0xA6CE},{0xA6CF,0xA6CF}, /* A6CE */ + {0xA6D0,0xA6D0},{0xA6D1,0xA6D1}, /* A6D0 */ + {0xA6D2,0xA6D2},{0xA6D3,0xA6D3}, /* A6D2 */ + {0xA6D4,0xA6D4},{0xA6D5,0xA6D5}, /* A6D4 */ + {0xA6D6,0xA6D6},{0xA6D7,0xA6D7}, /* A6D6 */ + {0xA6D8,0xA6D8},{0xA6D9,0xA6D9}, /* A6D8 */ + {0xA6DA,0xA6DA},{0xA6DB,0xA6DB}, /* A6DA */ + {0xA6DC,0xA6DC},{0xA6DD,0xA6DD}, /* A6DC */ + {0xA6DE,0xA6DE},{0xA6DF,0xA6DF}, /* A6DE */ + {0xA6E0,0xA6E0},{0xA6E1,0xA6E1}, /* A6E0 */ + {0xA6E2,0xA6E2},{0xA6E3,0xA6E3}, /* A6E2 */ + {0xA6E4,0xA6E4},{0xA6E5,0xA6E5}, /* A6E4 */ + {0xA6E6,0xA6E6},{0xA6E7,0xA6E7}, /* A6E6 */ + {0xA6E8,0xA6E8},{0xA6E9,0xA6E9}, /* A6E8 */ + {0xA6EA,0xA6EA},{0xA6EB,0xA6EB}, /* A6EA */ + {0xA6EC,0xA6EC},{0xA6ED,0xA6ED}, /* A6EC */ + {0xA6EE,0xA6EE},{0xA6EF,0xA6EF}, /* A6EE */ + {0xA6F0,0xA6F0},{0xA6F1,0xA6F1}, /* A6F0 */ + {0xA6F2,0xA6F2},{0xA6F3,0xA6F3}, /* A6F2 */ + {0xA6F4,0xA6F4},{0xA6F5,0xA6F5}, /* A6F4 */ + {0xA6F6,0xA6F6},{0xA6F7,0xA6F7}, /* A6F6 */ + {0xA6F8,0xA6F8},{0xA6F9,0xA6F9}, /* A6F8 */ + {0xA6FA,0xA6FA},{0xA6FB,0xA6FB}, /* A6FA */ + {0xA6FC,0xA6FC},{0xA6FD,0xA6FD}, /* A6FC */ + {0xA6FE,0xA6FE},{0xA6FF,0xA6FF} /* A6FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_pageA7[256]={ + {0xA700,0xA700},{0xA701,0xA701}, /* A700 */ + {0xA702,0xA702},{0xA703,0xA703}, /* A702 */ + {0xA704,0xA704},{0xA705,0xA705}, /* A704 */ + {0xA706,0xA706},{0xA707,0xA707}, /* A706 */ + {0xA708,0xA708},{0xA709,0xA709}, /* A708 */ + {0xA70A,0xA70A},{0xA70B,0xA70B}, /* A70A */ + {0xA70C,0xA70C},{0xA70D,0xA70D}, /* A70C */ + {0xA70E,0xA70E},{0xA70F,0xA70F}, /* A70E */ + {0xA710,0xA710},{0xA711,0xA711}, /* A710 */ + {0xA712,0xA712},{0xA713,0xA713}, /* A712 */ + {0xA714,0xA714},{0xA715,0xA715}, /* A714 */ + {0xA716,0xA716},{0xA717,0xA717}, /* A716 */ + {0xA718,0xA718},{0xA719,0xA719}, /* A718 */ + {0xA71A,0xA71A},{0xA71B,0xA71B}, /* A71A */ + {0xA71C,0xA71C},{0xA71D,0xA71D}, /* A71C */ + {0xA71E,0xA71E},{0xA71F,0xA71F}, /* A71E */ + {0xA720,0xA720},{0xA721,0xA721}, /* A720 */ + {0xA722,0xA723},{0xA722,0xA723}, /* A722 */ + {0xA724,0xA725},{0xA724,0xA725}, /* A724 */ + {0xA726,0xA727},{0xA726,0xA727}, /* A726 */ + {0xA728,0xA729},{0xA728,0xA729}, /* A728 */ + {0xA72A,0xA72B},{0xA72A,0xA72B}, /* A72A */ + {0xA72C,0xA72D},{0xA72C,0xA72D}, /* A72C */ + {0xA72E,0xA72F},{0xA72E,0xA72F}, /* A72E */ + {0xA730,0xA730},{0xA731,0xA731}, /* A730 */ + {0xA732,0xA733},{0xA732,0xA733}, /* A732 */ + {0xA734,0xA735},{0xA734,0xA735}, /* A734 */ + {0xA736,0xA737},{0xA736,0xA737}, /* A736 */ + {0xA738,0xA739},{0xA738,0xA739}, /* A738 */ + {0xA73A,0xA73B},{0xA73A,0xA73B}, /* A73A */ + {0xA73C,0xA73D},{0xA73C,0xA73D}, /* A73C */ + {0xA73E,0xA73F},{0xA73E,0xA73F}, /* A73E */ + {0xA740,0xA741},{0xA740,0xA741}, /* A740 */ + {0xA742,0xA743},{0xA742,0xA743}, /* A742 */ + {0xA744,0xA745},{0xA744,0xA745}, /* A744 */ + {0xA746,0xA747},{0xA746,0xA747}, /* A746 */ + {0xA748,0xA749},{0xA748,0xA749}, /* A748 */ + {0xA74A,0xA74B},{0xA74A,0xA74B}, /* A74A */ + {0xA74C,0xA74D},{0xA74C,0xA74D}, /* A74C */ + {0xA74E,0xA74F},{0xA74E,0xA74F}, /* A74E */ + {0xA750,0xA751},{0xA750,0xA751}, /* A750 */ + {0xA752,0xA753},{0xA752,0xA753}, /* A752 */ + {0xA754,0xA755},{0xA754,0xA755}, /* A754 */ + {0xA756,0xA757},{0xA756,0xA757}, /* A756 */ + {0xA758,0xA759},{0xA758,0xA759}, /* A758 */ + {0xA75A,0xA75B},{0xA75A,0xA75B}, /* A75A */ + {0xA75C,0xA75D},{0xA75C,0xA75D}, /* A75C */ + {0xA75E,0xA75F},{0xA75E,0xA75F}, /* A75E */ + {0xA760,0xA761},{0xA760,0xA761}, /* A760 */ + {0xA762,0xA763},{0xA762,0xA763}, /* A762 */ + {0xA764,0xA765},{0xA764,0xA765}, /* A764 */ + {0xA766,0xA767},{0xA766,0xA767}, /* A766 */ + {0xA768,0xA769},{0xA768,0xA769}, /* A768 */ + {0xA76A,0xA76B},{0xA76A,0xA76B}, /* A76A */ + {0xA76C,0xA76D},{0xA76C,0xA76D}, /* A76C */ + {0xA76E,0xA76F},{0xA76E,0xA76F}, /* A76E */ + {0xA770,0xA770},{0xA771,0xA771}, /* A770 */ + {0xA772,0xA772},{0xA773,0xA773}, /* A772 */ + {0xA774,0xA774},{0xA775,0xA775}, /* A774 */ + {0xA776,0xA776},{0xA777,0xA777}, /* A776 */ + {0xA778,0xA778},{0xA779,0xA77A}, /* A778 */ + {0xA779,0xA77A},{0xA77B,0xA77C}, /* A77A */ + {0xA77B,0xA77C},{0xA77D,0x1D79}, /* A77C */ + {0xA77E,0xA77F},{0xA77E,0xA77F}, /* A77E */ + {0xA780,0xA781},{0xA780,0xA781}, /* A780 */ + {0xA782,0xA783},{0xA782,0xA783}, /* A782 */ + {0xA784,0xA785},{0xA784,0xA785}, /* A784 */ + {0xA786,0xA787},{0xA786,0xA787}, /* A786 */ + {0xA788,0xA788},{0xA789,0xA789}, /* A788 */ + {0xA78A,0xA78A},{0xA78B,0xA78C}, /* A78A */ + {0xA78B,0xA78C},{0xA78D,0xA78D}, /* A78C */ + {0xA78E,0xA78E},{0xA78F,0xA78F}, /* A78E */ + {0xA790,0xA790},{0xA791,0xA791}, /* A790 */ + {0xA792,0xA792},{0xA793,0xA793}, /* A792 */ + {0xA794,0xA794},{0xA795,0xA795}, /* A794 */ + {0xA796,0xA796},{0xA797,0xA797}, /* A796 */ + {0xA798,0xA798},{0xA799,0xA799}, /* A798 */ + {0xA79A,0xA79A},{0xA79B,0xA79B}, /* A79A */ + {0xA79C,0xA79C},{0xA79D,0xA79D}, /* A79C */ + {0xA79E,0xA79E},{0xA79F,0xA79F}, /* A79E */ + {0xA7A0,0xA7A0},{0xA7A1,0xA7A1}, /* A7A0 */ + {0xA7A2,0xA7A2},{0xA7A3,0xA7A3}, /* A7A2 */ + {0xA7A4,0xA7A4},{0xA7A5,0xA7A5}, /* A7A4 */ + {0xA7A6,0xA7A6},{0xA7A7,0xA7A7}, /* A7A6 */ + {0xA7A8,0xA7A8},{0xA7A9,0xA7A9}, /* A7A8 */ + {0xA7AA,0xA7AA},{0xA7AB,0xA7AB}, /* A7AA */ + {0xA7AC,0xA7AC},{0xA7AD,0xA7AD}, /* A7AC */ + {0xA7AE,0xA7AE},{0xA7AF,0xA7AF}, /* A7AE */ + {0xA7B0,0xA7B0},{0xA7B1,0xA7B1}, /* A7B0 */ + {0xA7B2,0xA7B2},{0xA7B3,0xA7B3}, /* A7B2 */ + {0xA7B4,0xA7B4},{0xA7B5,0xA7B5}, /* A7B4 */ + {0xA7B6,0xA7B6},{0xA7B7,0xA7B7}, /* A7B6 */ + {0xA7B8,0xA7B8},{0xA7B9,0xA7B9}, /* A7B8 */ + {0xA7BA,0xA7BA},{0xA7BB,0xA7BB}, /* A7BA */ + {0xA7BC,0xA7BC},{0xA7BD,0xA7BD}, /* A7BC */ + {0xA7BE,0xA7BE},{0xA7BF,0xA7BF}, /* A7BE */ + {0xA7C0,0xA7C0},{0xA7C1,0xA7C1}, /* A7C0 */ + {0xA7C2,0xA7C2},{0xA7C3,0xA7C3}, /* A7C2 */ + {0xA7C4,0xA7C4},{0xA7C5,0xA7C5}, /* A7C4 */ + {0xA7C6,0xA7C6},{0xA7C7,0xA7C7}, /* A7C6 */ + {0xA7C8,0xA7C8},{0xA7C9,0xA7C9}, /* A7C8 */ + {0xA7CA,0xA7CA},{0xA7CB,0xA7CB}, /* A7CA */ + {0xA7CC,0xA7CC},{0xA7CD,0xA7CD}, /* A7CC */ + {0xA7CE,0xA7CE},{0xA7CF,0xA7CF}, /* A7CE */ + {0xA7D0,0xA7D0},{0xA7D1,0xA7D1}, /* A7D0 */ + {0xA7D2,0xA7D2},{0xA7D3,0xA7D3}, /* A7D2 */ + {0xA7D4,0xA7D4},{0xA7D5,0xA7D5}, /* A7D4 */ + {0xA7D6,0xA7D6},{0xA7D7,0xA7D7}, /* A7D6 */ + {0xA7D8,0xA7D8},{0xA7D9,0xA7D9}, /* A7D8 */ + {0xA7DA,0xA7DA},{0xA7DB,0xA7DB}, /* A7DA */ + {0xA7DC,0xA7DC},{0xA7DD,0xA7DD}, /* A7DC */ + {0xA7DE,0xA7DE},{0xA7DF,0xA7DF}, /* A7DE */ + {0xA7E0,0xA7E0},{0xA7E1,0xA7E1}, /* A7E0 */ + {0xA7E2,0xA7E2},{0xA7E3,0xA7E3}, /* A7E2 */ + {0xA7E4,0xA7E4},{0xA7E5,0xA7E5}, /* A7E4 */ + {0xA7E6,0xA7E6},{0xA7E7,0xA7E7}, /* A7E6 */ + {0xA7E8,0xA7E8},{0xA7E9,0xA7E9}, /* A7E8 */ + {0xA7EA,0xA7EA},{0xA7EB,0xA7EB}, /* A7EA */ + {0xA7EC,0xA7EC},{0xA7ED,0xA7ED}, /* A7EC */ + {0xA7EE,0xA7EE},{0xA7EF,0xA7EF}, /* A7EE */ + {0xA7F0,0xA7F0},{0xA7F1,0xA7F1}, /* A7F0 */ + {0xA7F2,0xA7F2},{0xA7F3,0xA7F3}, /* A7F2 */ + {0xA7F4,0xA7F4},{0xA7F5,0xA7F5}, /* A7F4 */ + {0xA7F6,0xA7F6},{0xA7F7,0xA7F7}, /* A7F6 */ + {0xA7F8,0xA7F8},{0xA7F9,0xA7F9}, /* A7F8 */ + {0xA7FA,0xA7FA},{0xA7FB,0xA7FB}, /* A7FA */ + {0xA7FC,0xA7FC},{0xA7FD,0xA7FD}, /* A7FC */ + {0xA7FE,0xA7FE},{0xA7FF,0xA7FF} /* A7FE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_pageFF[256]={ + {0xFF00,0xFF00},{0xFF01,0xFF01}, /* FF00 */ + {0xFF02,0xFF02},{0xFF03,0xFF03}, /* FF02 */ + {0xFF04,0xFF04},{0xFF05,0xFF05}, /* FF04 */ + {0xFF06,0xFF06},{0xFF07,0xFF07}, /* FF06 */ + {0xFF08,0xFF08},{0xFF09,0xFF09}, /* FF08 */ + {0xFF0A,0xFF0A},{0xFF0B,0xFF0B}, /* FF0A */ + {0xFF0C,0xFF0C},{0xFF0D,0xFF0D}, /* FF0C */ + {0xFF0E,0xFF0E},{0xFF0F,0xFF0F}, /* FF0E */ + {0xFF10,0xFF10},{0xFF11,0xFF11}, /* FF10 */ + {0xFF12,0xFF12},{0xFF13,0xFF13}, /* FF12 */ + {0xFF14,0xFF14},{0xFF15,0xFF15}, /* FF14 */ + {0xFF16,0xFF16},{0xFF17,0xFF17}, /* FF16 */ + {0xFF18,0xFF18},{0xFF19,0xFF19}, /* FF18 */ + {0xFF1A,0xFF1A},{0xFF1B,0xFF1B}, /* FF1A */ + {0xFF1C,0xFF1C},{0xFF1D,0xFF1D}, /* FF1C */ + {0xFF1E,0xFF1E},{0xFF1F,0xFF1F}, /* FF1E */ + {0xFF20,0xFF20},{0xFF21,0xFF41}, /* FF20 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF22 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF24 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF26 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF28 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF2A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF2C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF2E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF30 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF32 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF34 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF36 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF38 */ + {0xFF3A,0xFF5A},{0xFF3B,0xFF3B}, /* FF3A */ + {0xFF3C,0xFF3C},{0xFF3D,0xFF3D}, /* FF3C */ + {0xFF3E,0xFF3E},{0xFF3F,0xFF3F}, /* FF3E */ + {0xFF40,0xFF40},{0xFF21,0xFF41}, /* FF40 */ + {0xFF22,0xFF42},{0xFF23,0xFF43}, /* FF42 */ + {0xFF24,0xFF44},{0xFF25,0xFF45}, /* FF44 */ + {0xFF26,0xFF46},{0xFF27,0xFF47}, /* FF46 */ + {0xFF28,0xFF48},{0xFF29,0xFF49}, /* FF48 */ + {0xFF2A,0xFF4A},{0xFF2B,0xFF4B}, /* FF4A */ + {0xFF2C,0xFF4C},{0xFF2D,0xFF4D}, /* FF4C */ + {0xFF2E,0xFF4E},{0xFF2F,0xFF4F}, /* FF4E */ + {0xFF30,0xFF50},{0xFF31,0xFF51}, /* FF50 */ + {0xFF32,0xFF52},{0xFF33,0xFF53}, /* FF52 */ + {0xFF34,0xFF54},{0xFF35,0xFF55}, /* FF54 */ + {0xFF36,0xFF56},{0xFF37,0xFF57}, /* FF56 */ + {0xFF38,0xFF58},{0xFF39,0xFF59}, /* FF58 */ + {0xFF3A,0xFF5A},{0xFF5B,0xFF5B}, /* FF5A */ + {0xFF5C,0xFF5C},{0xFF5D,0xFF5D}, /* FF5C */ + {0xFF5E,0xFF5E},{0xFF5F,0xFF5F}, /* FF5E */ + {0xFF60,0xFF60},{0xFF61,0xFF61}, /* FF60 */ + {0xFF62,0xFF62},{0xFF63,0xFF63}, /* FF62 */ + {0xFF64,0xFF64},{0xFF65,0xFF65}, /* FF64 */ + {0xFF66,0xFF66},{0xFF67,0xFF67}, /* FF66 */ + {0xFF68,0xFF68},{0xFF69,0xFF69}, /* FF68 */ + {0xFF6A,0xFF6A},{0xFF6B,0xFF6B}, /* FF6A */ + {0xFF6C,0xFF6C},{0xFF6D,0xFF6D}, /* FF6C */ + {0xFF6E,0xFF6E},{0xFF6F,0xFF6F}, /* FF6E */ + {0xFF70,0xFF70},{0xFF71,0xFF71}, /* FF70 */ + {0xFF72,0xFF72},{0xFF73,0xFF73}, /* FF72 */ + {0xFF74,0xFF74},{0xFF75,0xFF75}, /* FF74 */ + {0xFF76,0xFF76},{0xFF77,0xFF77}, /* FF76 */ + {0xFF78,0xFF78},{0xFF79,0xFF79}, /* FF78 */ + {0xFF7A,0xFF7A},{0xFF7B,0xFF7B}, /* FF7A */ + {0xFF7C,0xFF7C},{0xFF7D,0xFF7D}, /* FF7C */ + {0xFF7E,0xFF7E},{0xFF7F,0xFF7F}, /* FF7E */ + {0xFF80,0xFF80},{0xFF81,0xFF81}, /* FF80 */ + {0xFF82,0xFF82},{0xFF83,0xFF83}, /* FF82 */ + {0xFF84,0xFF84},{0xFF85,0xFF85}, /* FF84 */ + {0xFF86,0xFF86},{0xFF87,0xFF87}, /* FF86 */ + {0xFF88,0xFF88},{0xFF89,0xFF89}, /* FF88 */ + {0xFF8A,0xFF8A},{0xFF8B,0xFF8B}, /* FF8A */ + {0xFF8C,0xFF8C},{0xFF8D,0xFF8D}, /* FF8C */ + {0xFF8E,0xFF8E},{0xFF8F,0xFF8F}, /* FF8E */ + {0xFF90,0xFF90},{0xFF91,0xFF91}, /* FF90 */ + {0xFF92,0xFF92},{0xFF93,0xFF93}, /* FF92 */ + {0xFF94,0xFF94},{0xFF95,0xFF95}, /* FF94 */ + {0xFF96,0xFF96},{0xFF97,0xFF97}, /* FF96 */ + {0xFF98,0xFF98},{0xFF99,0xFF99}, /* FF98 */ + {0xFF9A,0xFF9A},{0xFF9B,0xFF9B}, /* FF9A */ + {0xFF9C,0xFF9C},{0xFF9D,0xFF9D}, /* FF9C */ + {0xFF9E,0xFF9E},{0xFF9F,0xFF9F}, /* FF9E */ + {0xFFA0,0xFFA0},{0xFFA1,0xFFA1}, /* FFA0 */ + {0xFFA2,0xFFA2},{0xFFA3,0xFFA3}, /* FFA2 */ + {0xFFA4,0xFFA4},{0xFFA5,0xFFA5}, /* FFA4 */ + {0xFFA6,0xFFA6},{0xFFA7,0xFFA7}, /* FFA6 */ + {0xFFA8,0xFFA8},{0xFFA9,0xFFA9}, /* FFA8 */ + {0xFFAA,0xFFAA},{0xFFAB,0xFFAB}, /* FFAA */ + {0xFFAC,0xFFAC},{0xFFAD,0xFFAD}, /* FFAC */ + {0xFFAE,0xFFAE},{0xFFAF,0xFFAF}, /* FFAE */ + {0xFFB0,0xFFB0},{0xFFB1,0xFFB1}, /* FFB0 */ + {0xFFB2,0xFFB2},{0xFFB3,0xFFB3}, /* FFB2 */ + {0xFFB4,0xFFB4},{0xFFB5,0xFFB5}, /* FFB4 */ + {0xFFB6,0xFFB6},{0xFFB7,0xFFB7}, /* FFB6 */ + {0xFFB8,0xFFB8},{0xFFB9,0xFFB9}, /* FFB8 */ + {0xFFBA,0xFFBA},{0xFFBB,0xFFBB}, /* FFBA */ + {0xFFBC,0xFFBC},{0xFFBD,0xFFBD}, /* FFBC */ + {0xFFBE,0xFFBE},{0xFFBF,0xFFBF}, /* FFBE */ + {0xFFC0,0xFFC0},{0xFFC1,0xFFC1}, /* FFC0 */ + {0xFFC2,0xFFC2},{0xFFC3,0xFFC3}, /* FFC2 */ + {0xFFC4,0xFFC4},{0xFFC5,0xFFC5}, /* FFC4 */ + {0xFFC6,0xFFC6},{0xFFC7,0xFFC7}, /* FFC6 */ + {0xFFC8,0xFFC8},{0xFFC9,0xFFC9}, /* FFC8 */ + {0xFFCA,0xFFCA},{0xFFCB,0xFFCB}, /* FFCA */ + {0xFFCC,0xFFCC},{0xFFCD,0xFFCD}, /* FFCC */ + {0xFFCE,0xFFCE},{0xFFCF,0xFFCF}, /* FFCE */ + {0xFFD0,0xFFD0},{0xFFD1,0xFFD1}, /* FFD0 */ + {0xFFD2,0xFFD2},{0xFFD3,0xFFD3}, /* FFD2 */ + {0xFFD4,0xFFD4},{0xFFD5,0xFFD5}, /* FFD4 */ + {0xFFD6,0xFFD6},{0xFFD7,0xFFD7}, /* FFD6 */ + {0xFFD8,0xFFD8},{0xFFD9,0xFFD9}, /* FFD8 */ + {0xFFDA,0xFFDA},{0xFFDB,0xFFDB}, /* FFDA */ + {0xFFDC,0xFFDC},{0xFFDD,0xFFDD}, /* FFDC */ + {0xFFDE,0xFFDE},{0xFFDF,0xFFDF}, /* FFDE */ + {0xFFE0,0xFFE0},{0xFFE1,0xFFE1}, /* FFE0 */ + {0xFFE2,0xFFE2},{0xFFE3,0xFFE3}, /* FFE2 */ + {0xFFE4,0xFFE4},{0xFFE5,0xFFE5}, /* FFE4 */ + {0xFFE6,0xFFE6},{0xFFE7,0xFFE7}, /* FFE6 */ + {0xFFE8,0xFFE8},{0xFFE9,0xFFE9}, /* FFE8 */ + {0xFFEA,0xFFEA},{0xFFEB,0xFFEB}, /* FFEA */ + {0xFFEC,0xFFEC},{0xFFED,0xFFED}, /* FFEC */ + {0xFFEE,0xFFEE},{0xFFEF,0xFFEF}, /* FFEE */ + {0xFFF0,0xFFF0},{0xFFF1,0xFFF1}, /* FFF0 */ + {0xFFF2,0xFFF2},{0xFFF3,0xFFF3}, /* FFF2 */ + {0xFFF4,0xFFF4},{0xFFF5,0xFFF5}, /* FFF4 */ + {0xFFF6,0xFFF6},{0xFFF7,0xFFF7}, /* FFF6 */ + {0xFFF8,0xFFF8},{0xFFF9,0xFFF9}, /* FFF8 */ + {0xFFFA,0xFFFA},{0xFFFB,0xFFFB}, /* FFFA */ + {0xFFFC,0xFFFC},{0xFFFD,0xFFFD}, /* FFFC */ + {0xFFFE,0xFFFE},{0xFFFF,0xFFFF} /* FFFE */ +}; + +static const MY_CASEFOLD_CHARACTER u520_casefold_page104[256]={ + {0x10400,0x10428},{0x10401,0x10429}, /* 10400 */ + {0x10402,0x1042A},{0x10403,0x1042B}, /* 10402 */ + {0x10404,0x1042C},{0x10405,0x1042D}, /* 10404 */ + {0x10406,0x1042E},{0x10407,0x1042F}, /* 10406 */ + {0x10408,0x10430},{0x10409,0x10431}, /* 10408 */ + {0x1040A,0x10432},{0x1040B,0x10433}, /* 1040A */ + {0x1040C,0x10434},{0x1040D,0x10435}, /* 1040C */ + {0x1040E,0x10436},{0x1040F,0x10437}, /* 1040E */ + {0x10410,0x10438},{0x10411,0x10439}, /* 10410 */ + {0x10412,0x1043A},{0x10413,0x1043B}, /* 10412 */ + {0x10414,0x1043C},{0x10415,0x1043D}, /* 10414 */ + {0x10416,0x1043E},{0x10417,0x1043F}, /* 10416 */ + {0x10418,0x10440},{0x10419,0x10441}, /* 10418 */ + {0x1041A,0x10442},{0x1041B,0x10443}, /* 1041A */ + {0x1041C,0x10444},{0x1041D,0x10445}, /* 1041C */ + {0x1041E,0x10446},{0x1041F,0x10447}, /* 1041E */ + {0x10420,0x10448},{0x10421,0x10449}, /* 10420 */ + {0x10422,0x1044A},{0x10423,0x1044B}, /* 10422 */ + {0x10424,0x1044C},{0x10425,0x1044D}, /* 10424 */ + {0x10426,0x1044E},{0x10427,0x1044F}, /* 10426 */ + {0x10400,0x10428},{0x10401,0x10429}, /* 10428 */ + {0x10402,0x1042A},{0x10403,0x1042B}, /* 1042A */ + {0x10404,0x1042C},{0x10405,0x1042D}, /* 1042C */ + {0x10406,0x1042E},{0x10407,0x1042F}, /* 1042E */ + {0x10408,0x10430},{0x10409,0x10431}, /* 10430 */ + {0x1040A,0x10432},{0x1040B,0x10433}, /* 10432 */ + {0x1040C,0x10434},{0x1040D,0x10435}, /* 10434 */ + {0x1040E,0x10436},{0x1040F,0x10437}, /* 10436 */ + {0x10410,0x10438},{0x10411,0x10439}, /* 10438 */ + {0x10412,0x1043A},{0x10413,0x1043B}, /* 1043A */ + {0x10414,0x1043C},{0x10415,0x1043D}, /* 1043C */ + {0x10416,0x1043E},{0x10417,0x1043F}, /* 1043E */ + {0x10418,0x10440},{0x10419,0x10441}, /* 10440 */ + {0x1041A,0x10442},{0x1041B,0x10443}, /* 10442 */ + {0x1041C,0x10444},{0x1041D,0x10445}, /* 10444 */ + {0x1041E,0x10446},{0x1041F,0x10447}, /* 10446 */ + {0x10420,0x10448},{0x10421,0x10449}, /* 10448 */ + {0x10422,0x1044A},{0x10423,0x1044B}, /* 1044A */ + {0x10424,0x1044C},{0x10425,0x1044D}, /* 1044C */ + {0x10426,0x1044E},{0x10427,0x1044F}, /* 1044E */ + {0x10450,0x10450},{0x10451,0x10451}, /* 10450 */ + {0x10452,0x10452},{0x10453,0x10453}, /* 10452 */ + {0x10454,0x10454},{0x10455,0x10455}, /* 10454 */ + {0x10456,0x10456},{0x10457,0x10457}, /* 10456 */ + {0x10458,0x10458},{0x10459,0x10459}, /* 10458 */ + {0x1045A,0x1045A},{0x1045B,0x1045B}, /* 1045A */ + {0x1045C,0x1045C},{0x1045D,0x1045D}, /* 1045C */ + {0x1045E,0x1045E},{0x1045F,0x1045F}, /* 1045E */ + {0x10460,0x10460},{0x10461,0x10461}, /* 10460 */ + {0x10462,0x10462},{0x10463,0x10463}, /* 10462 */ + {0x10464,0x10464},{0x10465,0x10465}, /* 10464 */ + {0x10466,0x10466},{0x10467,0x10467}, /* 10466 */ + {0x10468,0x10468},{0x10469,0x10469}, /* 10468 */ + {0x1046A,0x1046A},{0x1046B,0x1046B}, /* 1046A */ + {0x1046C,0x1046C},{0x1046D,0x1046D}, /* 1046C */ + {0x1046E,0x1046E},{0x1046F,0x1046F}, /* 1046E */ + {0x10470,0x10470},{0x10471,0x10471}, /* 10470 */ + {0x10472,0x10472},{0x10473,0x10473}, /* 10472 */ + {0x10474,0x10474},{0x10475,0x10475}, /* 10474 */ + {0x10476,0x10476},{0x10477,0x10477}, /* 10476 */ + {0x10478,0x10478},{0x10479,0x10479}, /* 10478 */ + {0x1047A,0x1047A},{0x1047B,0x1047B}, /* 1047A */ + {0x1047C,0x1047C},{0x1047D,0x1047D}, /* 1047C */ + {0x1047E,0x1047E},{0x1047F,0x1047F}, /* 1047E */ + {0x10480,0x10480},{0x10481,0x10481}, /* 10480 */ + {0x10482,0x10482},{0x10483,0x10483}, /* 10482 */ + {0x10484,0x10484},{0x10485,0x10485}, /* 10484 */ + {0x10486,0x10486},{0x10487,0x10487}, /* 10486 */ + {0x10488,0x10488},{0x10489,0x10489}, /* 10488 */ + {0x1048A,0x1048A},{0x1048B,0x1048B}, /* 1048A */ + {0x1048C,0x1048C},{0x1048D,0x1048D}, /* 1048C */ + {0x1048E,0x1048E},{0x1048F,0x1048F}, /* 1048E */ + {0x10490,0x10490},{0x10491,0x10491}, /* 10490 */ + {0x10492,0x10492},{0x10493,0x10493}, /* 10492 */ + {0x10494,0x10494},{0x10495,0x10495}, /* 10494 */ + {0x10496,0x10496},{0x10497,0x10497}, /* 10496 */ + {0x10498,0x10498},{0x10499,0x10499}, /* 10498 */ + {0x1049A,0x1049A},{0x1049B,0x1049B}, /* 1049A */ + {0x1049C,0x1049C},{0x1049D,0x1049D}, /* 1049C */ + {0x1049E,0x1049E},{0x1049F,0x1049F}, /* 1049E */ + {0x104A0,0x104A0},{0x104A1,0x104A1}, /* 104A0 */ + {0x104A2,0x104A2},{0x104A3,0x104A3}, /* 104A2 */ + {0x104A4,0x104A4},{0x104A5,0x104A5}, /* 104A4 */ + {0x104A6,0x104A6},{0x104A7,0x104A7}, /* 104A6 */ + {0x104A8,0x104A8},{0x104A9,0x104A9}, /* 104A8 */ + {0x104AA,0x104AA},{0x104AB,0x104AB}, /* 104AA */ + {0x104AC,0x104AC},{0x104AD,0x104AD}, /* 104AC */ + {0x104AE,0x104AE},{0x104AF,0x104AF}, /* 104AE */ + {0x104B0,0x104B0},{0x104B1,0x104B1}, /* 104B0 */ + {0x104B2,0x104B2},{0x104B3,0x104B3}, /* 104B2 */ + {0x104B4,0x104B4},{0x104B5,0x104B5}, /* 104B4 */ + {0x104B6,0x104B6},{0x104B7,0x104B7}, /* 104B6 */ + {0x104B8,0x104B8},{0x104B9,0x104B9}, /* 104B8 */ + {0x104BA,0x104BA},{0x104BB,0x104BB}, /* 104BA */ + {0x104BC,0x104BC},{0x104BD,0x104BD}, /* 104BC */ + {0x104BE,0x104BE},{0x104BF,0x104BF}, /* 104BE */ + {0x104C0,0x104C0},{0x104C1,0x104C1}, /* 104C0 */ + {0x104C2,0x104C2},{0x104C3,0x104C3}, /* 104C2 */ + {0x104C4,0x104C4},{0x104C5,0x104C5}, /* 104C4 */ + {0x104C6,0x104C6},{0x104C7,0x104C7}, /* 104C6 */ + {0x104C8,0x104C8},{0x104C9,0x104C9}, /* 104C8 */ + {0x104CA,0x104CA},{0x104CB,0x104CB}, /* 104CA */ + {0x104CC,0x104CC},{0x104CD,0x104CD}, /* 104CC */ + {0x104CE,0x104CE},{0x104CF,0x104CF}, /* 104CE */ + {0x104D0,0x104D0},{0x104D1,0x104D1}, /* 104D0 */ + {0x104D2,0x104D2},{0x104D3,0x104D3}, /* 104D2 */ + {0x104D4,0x104D4},{0x104D5,0x104D5}, /* 104D4 */ + {0x104D6,0x104D6},{0x104D7,0x104D7}, /* 104D6 */ + {0x104D8,0x104D8},{0x104D9,0x104D9}, /* 104D8 */ + {0x104DA,0x104DA},{0x104DB,0x104DB}, /* 104DA */ + {0x104DC,0x104DC},{0x104DD,0x104DD}, /* 104DC */ + {0x104DE,0x104DE},{0x104DF,0x104DF}, /* 104DE */ + {0x104E0,0x104E0},{0x104E1,0x104E1}, /* 104E0 */ + {0x104E2,0x104E2},{0x104E3,0x104E3}, /* 104E2 */ + {0x104E4,0x104E4},{0x104E5,0x104E5}, /* 104E4 */ + {0x104E6,0x104E6},{0x104E7,0x104E7}, /* 104E6 */ + {0x104E8,0x104E8},{0x104E9,0x104E9}, /* 104E8 */ + {0x104EA,0x104EA},{0x104EB,0x104EB}, /* 104EA */ + {0x104EC,0x104EC},{0x104ED,0x104ED}, /* 104EC */ + {0x104EE,0x104EE},{0x104EF,0x104EF}, /* 104EE */ + {0x104F0,0x104F0},{0x104F1,0x104F1}, /* 104F0 */ + {0x104F2,0x104F2},{0x104F3,0x104F3}, /* 104F2 */ + {0x104F4,0x104F4},{0x104F5,0x104F5}, /* 104F4 */ + {0x104F6,0x104F6},{0x104F7,0x104F7}, /* 104F6 */ + {0x104F8,0x104F8},{0x104F9,0x104F9}, /* 104F8 */ + {0x104FA,0x104FA},{0x104FB,0x104FB}, /* 104FA */ + {0x104FC,0x104FC},{0x104FD,0x104FD}, /* 104FC */ + {0x104FE,0x104FE},{0x104FF,0x104FF} /* 104FE */ +}; + +const MY_CASEFOLD_CHARACTER * my_u520_casefold_index[4352]={ + u520_casefold_page00, u520_casefold_page01, u520_casefold_page02, u520_casefold_page03, u520_casefold_page04, u520_casefold_page05, u520_casefold_page06, u520_casefold_page07, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + u520_casefold_page10, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, u520_casefold_page1D, u520_casefold_page1E, u520_casefold_page1F, + NULL, u520_casefold_page21, NULL, NULL, u520_casefold_page24, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, u520_casefold_page2C, u520_casefold_page2D, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, u520_casefold_pageA6, u520_casefold_pageA7, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, u520_casefold_pageFF, + NULL, NULL, NULL, NULL, u520_casefold_page104, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL +}; diff --git a/strings/ctype-unidata.c b/strings/ctype-unidata.c new file mode 100644 index 00000000000..77bec5418c4 --- /dev/null +++ b/strings/ctype-unidata.c @@ -0,0 +1,97 @@ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. + Copyright (c) 2009, 2020, MariaDB + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; version 2 + of the License. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the Free + Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, + MA 02110-1335 USA */ + +#include "strings_def.h" +#include <m_ctype.h> +#include "ctype-mb.h" + +#ifndef EILSEQ +#define EILSEQ ENOENT +#endif + + +#include "ctype-unidata.h" +#include "ctype-unicode300-general_ci.h" +#include "ctype-unicode300-general_mysql500_ci.h" +#include "ctype-unicode300-casefold.h" +#include "ctype-unicode300-casefold-tr.h" +#include "ctype-unicode520-casefold.h" +#include "ctype-unicode1400-casefold.h" +#include "ctype-unicode1400-casefold-tr.h" + + + +MY_CASEFOLD_INFO my_casefold_default= +{ + 0xFFFF, + my_u300_casefold_index, + weight_general_ci_index +}; + + +/* + Turkish lower/upper mapping: + 1. LOWER(0x0049 LATIN CAPITAL LETTER I) -> + 0x0131 LATIN SMALL LETTER DOTLESS I + 2. UPPER(0x0069 LATIN SMALL LETTER I) -> + 0x0130 LATIN CAPITAL LETTER I WITH DOT ABOVE +*/ + +MY_CASEFOLD_INFO my_casefold_turkish= +{ + 0xFFFF, + my_u300tr_casefold_index, + weight_general_ci_index +}; + + +/* + general_mysql500_ci is very similar to general_ci, but maps sorting order + for U+00DF to 0x00DF instead of 0x0053. +*/ +MY_CASEFOLD_INFO my_casefold_mysql500= +{ + 0xFFFF, + my_u300_casefold_index, + weight_general_mysql500_ci_index +}; + + + +MY_CASEFOLD_INFO my_casefold_unicode520= +{ + 0x10FFFF, + my_u520_casefold_index, + NULL +}; + + +MY_CASEFOLD_INFO my_casefold_unicode1400= +{ + 0x10FFFF, + my_u1400_casefold_index, + NULL +}; + + +MY_CASEFOLD_INFO my_casefold_unicode1400tr= +{ + 0x10FFFF, + my_u1400tr_casefold_index, + NULL +}; diff --git a/strings/ctype-unidata.h b/strings/ctype-unidata.h index 9900fd0cedd..0bcf96c09a0 100644 --- a/strings/ctype-unidata.h +++ b/strings/ctype-unidata.h @@ -1,7 +1,7 @@ #ifndef CTYPE_UNIDATA_H_INCLUDED #define CTYPE_UNIDATA_H_INCLUDED /* - Copyright (c) 2018 MariaDB Corporation + Copyright (c) 2018, 2023 MariaDB Corporation This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +17,128 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#define MY_UNICASE_INFO_DEFAULT_MAXCHAR 0xFFFF -extern MY_UNICASE_CHARACTER my_unicase_default_page00[256]; -extern MY_UNICASE_CHARACTER *my_unicase_default_pages[256]; -extern MY_UNICASE_CHARACTER my_unicase_mysql500_page00[256]; -extern MY_UNICASE_CHARACTER *my_unicase_mysql500_pages[256]; +extern const uint16 weight_general_ci_page00[256]; +extern const uint16 *weight_general_ci_index[256]; +extern const uint16 weight_general_mysql500_ci_page00[256]; +extern const uint16 *weight_general_mysql500_ci_index[256]; + +extern const MY_CASEFOLD_CHARACTER u300_casefold_page00[256]; + +static inline my_wc_t my_u300_tolower_7bit(uchar ch) +{ + return u300_casefold_page00[ch].tolower; +} + +static inline my_wc_t my_u300_toupper_7bit(uchar ch) +{ + return u300_casefold_page00[ch].toupper; +} + + +static inline my_wc_t my_general_ci_bmp_char_to_weight(my_wc_t wc) +{ + const uint16 *page; + DBUG_ASSERT((wc >> 8) < array_elements(weight_general_ci_index)); + page= weight_general_ci_index[wc >> 8]; + return page ? page[wc & 0xFF] : wc; +} + + +static inline my_wc_t my_general_ci_char_to_weight(my_wc_t wc) +{ + if ((wc >> 8) < array_elements(weight_general_ci_index)) + return my_general_ci_bmp_char_to_weight(wc); + return MY_CS_REPLACEMENT_CHARACTER; +} + + +static inline my_wc_t my_general_mysql500_ci_bmp_char_to_weight(my_wc_t wc) +{ + const uint16 *page; + DBUG_ASSERT((wc >> 8) < array_elements(weight_general_mysql500_ci_index)); + page= weight_general_mysql500_ci_index[wc >> 8]; + return page ? page[wc & 0xFF] : wc; +} + + +static inline void my_tosort_unicode_bmp(MY_CASEFOLD_INFO *uni_plane, + my_wc_t *wc) +{ + const uint16 *page; + DBUG_ASSERT(*wc <= uni_plane->maxchar); + if ((page= uni_plane->simple_weight[*wc >> 8])) + *wc= page[*wc & 0xFF]; +} + + +static inline void my_tosort_unicode(MY_CASEFOLD_INFO *uni_plane, + my_wc_t *wc) +{ + if (*wc <= uni_plane->maxchar) + { + const uint16 *page; + if ((page= uni_plane->simple_weight[*wc >> 8])) + *wc= page[*wc & 0xFF]; + } + else + { + *wc= MY_CS_REPLACEMENT_CHARACTER; + } +} + + +static inline void +my_tolower_unicode_bmp(MY_CASEFOLD_INFO *uni_plane, my_wc_t *wc) +{ + const MY_CASEFOLD_CHARACTER *page; + DBUG_ASSERT(*wc <= uni_plane->maxchar); + if ((page= uni_plane->page[*wc >> 8])) + *wc= page[*wc & 0xFF].tolower; +} + + +static inline void +my_toupper_unicode_bmp(MY_CASEFOLD_INFO *uni_plane, my_wc_t *wc) +{ + const MY_CASEFOLD_CHARACTER *page; + DBUG_ASSERT(*wc <= uni_plane->maxchar); + if ((page= uni_plane->page[*wc >> 8])) + *wc= page[*wc & 0xFF].toupper; +} + + +static inline void +my_tolower_unicode(MY_CASEFOLD_INFO *uni_plane, my_wc_t *wc) +{ + if (*wc <= uni_plane->maxchar) + { + const MY_CASEFOLD_CHARACTER *page; + if ((page= uni_plane->page[(*wc >> 8)])) + *wc= page[*wc & 0xFF].tolower; + } +} + + +static inline void +my_toupper_unicode(MY_CASEFOLD_INFO *uni_plane, my_wc_t *wc) +{ + if (*wc <= uni_plane->maxchar) + { + const MY_CASEFOLD_CHARACTER *page; + if ((page= uni_plane->page[(*wc >> 8)])) + *wc= page[*wc & 0xFF].toupper; + } +} + + +extern MY_CASEFOLD_INFO my_casefold_default; +extern MY_CASEFOLD_INFO my_casefold_turkish; +extern MY_CASEFOLD_INFO my_casefold_mysql500; +extern MY_CASEFOLD_INFO my_casefold_unicode520; +extern MY_CASEFOLD_INFO my_casefold_unicode1400; +extern MY_CASEFOLD_INFO my_casefold_unicode1400tr; + size_t my_strxfrm_pad_nweights_unicode(uchar *str, uchar *strend, size_t nweights); size_t my_strxfrm_pad_unicode(uchar *str, uchar *strend); diff --git a/strings/ctype-utf8.c b/strings/ctype-utf8.c index 06a10034a33..121a3f945f6 100644 --- a/strings/ctype-utf8.c +++ b/strings/ctype-utf8.c @@ -113,4560 +113,20 @@ int my_valid_mbcharlen_utf8mb3(const uchar *s, const uchar *e) #include "my_uctype.h" -MY_UNICASE_CHARACTER my_unicase_default_page00[]={ - {0x0000,0x0000,0x0000}, {0x0001,0x0001,0x0001}, - {0x0002,0x0002,0x0002}, {0x0003,0x0003,0x0003}, - {0x0004,0x0004,0x0004}, {0x0005,0x0005,0x0005}, - {0x0006,0x0006,0x0006}, {0x0007,0x0007,0x0007}, - {0x0008,0x0008,0x0008}, {0x0009,0x0009,0x0009}, - {0x000A,0x000A,0x000A}, {0x000B,0x000B,0x000B}, - {0x000C,0x000C,0x000C}, {0x000D,0x000D,0x000D}, - {0x000E,0x000E,0x000E}, {0x000F,0x000F,0x000F}, - {0x0010,0x0010,0x0010}, {0x0011,0x0011,0x0011}, - {0x0012,0x0012,0x0012}, {0x0013,0x0013,0x0013}, - {0x0014,0x0014,0x0014}, {0x0015,0x0015,0x0015}, - {0x0016,0x0016,0x0016}, {0x0017,0x0017,0x0017}, - {0x0018,0x0018,0x0018}, {0x0019,0x0019,0x0019}, - {0x001A,0x001A,0x001A}, {0x001B,0x001B,0x001B}, - {0x001C,0x001C,0x001C}, {0x001D,0x001D,0x001D}, - {0x001E,0x001E,0x001E}, {0x001F,0x001F,0x001F}, - {0x0020,0x0020,0x0020}, {0x0021,0x0021,0x0021}, - {0x0022,0x0022,0x0022}, {0x0023,0x0023,0x0023}, - {0x0024,0x0024,0x0024}, {0x0025,0x0025,0x0025}, - {0x0026,0x0026,0x0026}, {0x0027,0x0027,0x0027}, - {0x0028,0x0028,0x0028}, {0x0029,0x0029,0x0029}, - {0x002A,0x002A,0x002A}, {0x002B,0x002B,0x002B}, - {0x002C,0x002C,0x002C}, {0x002D,0x002D,0x002D}, - {0x002E,0x002E,0x002E}, {0x002F,0x002F,0x002F}, - {0x0030,0x0030,0x0030}, {0x0031,0x0031,0x0031}, - {0x0032,0x0032,0x0032}, {0x0033,0x0033,0x0033}, - {0x0034,0x0034,0x0034}, {0x0035,0x0035,0x0035}, - {0x0036,0x0036,0x0036}, {0x0037,0x0037,0x0037}, - {0x0038,0x0038,0x0038}, {0x0039,0x0039,0x0039}, - {0x003A,0x003A,0x003A}, {0x003B,0x003B,0x003B}, - {0x003C,0x003C,0x003C}, {0x003D,0x003D,0x003D}, - {0x003E,0x003E,0x003E}, {0x003F,0x003F,0x003F}, - {0x0040,0x0040,0x0040}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x005B,0x005B,0x005B}, - {0x005C,0x005C,0x005C}, {0x005D,0x005D,0x005D}, - {0x005E,0x005E,0x005E}, {0x005F,0x005F,0x005F}, - {0x0060,0x0060,0x0060}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x007B,0x007B,0x007B}, - {0x007C,0x007C,0x007C}, {0x007D,0x007D,0x007D}, - {0x007E,0x007E,0x007E}, {0x007F,0x007F,0x007F}, - {0x0080,0x0080,0x0080}, {0x0081,0x0081,0x0081}, - {0x0082,0x0082,0x0082}, {0x0083,0x0083,0x0083}, - {0x0084,0x0084,0x0084}, {0x0085,0x0085,0x0085}, - {0x0086,0x0086,0x0086}, {0x0087,0x0087,0x0087}, - {0x0088,0x0088,0x0088}, {0x0089,0x0089,0x0089}, - {0x008A,0x008A,0x008A}, {0x008B,0x008B,0x008B}, - {0x008C,0x008C,0x008C}, {0x008D,0x008D,0x008D}, - {0x008E,0x008E,0x008E}, {0x008F,0x008F,0x008F}, - {0x0090,0x0090,0x0090}, {0x0091,0x0091,0x0091}, - {0x0092,0x0092,0x0092}, {0x0093,0x0093,0x0093}, - {0x0094,0x0094,0x0094}, {0x0095,0x0095,0x0095}, - {0x0096,0x0096,0x0096}, {0x0097,0x0097,0x0097}, - {0x0098,0x0098,0x0098}, {0x0099,0x0099,0x0099}, - {0x009A,0x009A,0x009A}, {0x009B,0x009B,0x009B}, - {0x009C,0x009C,0x009C}, {0x009D,0x009D,0x009D}, - {0x009E,0x009E,0x009E}, {0x009F,0x009F,0x009F}, - {0x00A0,0x00A0,0x00A0}, {0x00A1,0x00A1,0x00A1}, - {0x00A2,0x00A2,0x00A2}, {0x00A3,0x00A3,0x00A3}, - {0x00A4,0x00A4,0x00A4}, {0x00A5,0x00A5,0x00A5}, - {0x00A6,0x00A6,0x00A6}, {0x00A7,0x00A7,0x00A7}, - {0x00A8,0x00A8,0x00A8}, {0x00A9,0x00A9,0x00A9}, - {0x00AA,0x00AA,0x00AA}, {0x00AB,0x00AB,0x00AB}, - {0x00AC,0x00AC,0x00AC}, {0x00AD,0x00AD,0x00AD}, - {0x00AE,0x00AE,0x00AE}, {0x00AF,0x00AF,0x00AF}, - {0x00B0,0x00B0,0x00B0}, {0x00B1,0x00B1,0x00B1}, - {0x00B2,0x00B2,0x00B2}, {0x00B3,0x00B3,0x00B3}, - {0x00B4,0x00B4,0x00B4}, {0x039C,0x00B5,0x039C}, - {0x00B6,0x00B6,0x00B6}, {0x00B7,0x00B7,0x00B7}, - {0x00B8,0x00B8,0x00B8}, {0x00B9,0x00B9,0x00B9}, - {0x00BA,0x00BA,0x00BA}, {0x00BB,0x00BB,0x00BB}, - {0x00BC,0x00BC,0x00BC}, {0x00BD,0x00BD,0x00BD}, - {0x00BE,0x00BE,0x00BE}, {0x00BF,0x00BF,0x00BF}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00D7,0x00D7,0x00D7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x00DF,0x00DF,0x0053}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00F7,0x00F7,0x00F7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x0178,0x00FF,0x0059} -}; - - -/* - Almost similar to my_unicase_default_page00, but maps sorting order - for U+00DF to 0x00DF instead of 0x0053. -*/ -MY_UNICASE_CHARACTER my_unicase_mysql500_page00[]={ - {0x0000,0x0000,0x0000}, {0x0001,0x0001,0x0001}, - {0x0002,0x0002,0x0002}, {0x0003,0x0003,0x0003}, - {0x0004,0x0004,0x0004}, {0x0005,0x0005,0x0005}, - {0x0006,0x0006,0x0006}, {0x0007,0x0007,0x0007}, - {0x0008,0x0008,0x0008}, {0x0009,0x0009,0x0009}, - {0x000A,0x000A,0x000A}, {0x000B,0x000B,0x000B}, - {0x000C,0x000C,0x000C}, {0x000D,0x000D,0x000D}, - {0x000E,0x000E,0x000E}, {0x000F,0x000F,0x000F}, - {0x0010,0x0010,0x0010}, {0x0011,0x0011,0x0011}, - {0x0012,0x0012,0x0012}, {0x0013,0x0013,0x0013}, - {0x0014,0x0014,0x0014}, {0x0015,0x0015,0x0015}, - {0x0016,0x0016,0x0016}, {0x0017,0x0017,0x0017}, - {0x0018,0x0018,0x0018}, {0x0019,0x0019,0x0019}, - {0x001A,0x001A,0x001A}, {0x001B,0x001B,0x001B}, - {0x001C,0x001C,0x001C}, {0x001D,0x001D,0x001D}, - {0x001E,0x001E,0x001E}, {0x001F,0x001F,0x001F}, - {0x0020,0x0020,0x0020}, {0x0021,0x0021,0x0021}, - {0x0022,0x0022,0x0022}, {0x0023,0x0023,0x0023}, - {0x0024,0x0024,0x0024}, {0x0025,0x0025,0x0025}, - {0x0026,0x0026,0x0026}, {0x0027,0x0027,0x0027}, - {0x0028,0x0028,0x0028}, {0x0029,0x0029,0x0029}, - {0x002A,0x002A,0x002A}, {0x002B,0x002B,0x002B}, - {0x002C,0x002C,0x002C}, {0x002D,0x002D,0x002D}, - {0x002E,0x002E,0x002E}, {0x002F,0x002F,0x002F}, - {0x0030,0x0030,0x0030}, {0x0031,0x0031,0x0031}, - {0x0032,0x0032,0x0032}, {0x0033,0x0033,0x0033}, - {0x0034,0x0034,0x0034}, {0x0035,0x0035,0x0035}, - {0x0036,0x0036,0x0036}, {0x0037,0x0037,0x0037}, - {0x0038,0x0038,0x0038}, {0x0039,0x0039,0x0039}, - {0x003A,0x003A,0x003A}, {0x003B,0x003B,0x003B}, - {0x003C,0x003C,0x003C}, {0x003D,0x003D,0x003D}, - {0x003E,0x003E,0x003E}, {0x003F,0x003F,0x003F}, - {0x0040,0x0040,0x0040}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x005B,0x005B,0x005B}, - {0x005C,0x005C,0x005C}, {0x005D,0x005D,0x005D}, - {0x005E,0x005E,0x005E}, {0x005F,0x005F,0x005F}, - {0x0060,0x0060,0x0060}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x007B,0x007B,0x007B}, - {0x007C,0x007C,0x007C}, {0x007D,0x007D,0x007D}, - {0x007E,0x007E,0x007E}, {0x007F,0x007F,0x007F}, - {0x0080,0x0080,0x0080}, {0x0081,0x0081,0x0081}, - {0x0082,0x0082,0x0082}, {0x0083,0x0083,0x0083}, - {0x0084,0x0084,0x0084}, {0x0085,0x0085,0x0085}, - {0x0086,0x0086,0x0086}, {0x0087,0x0087,0x0087}, - {0x0088,0x0088,0x0088}, {0x0089,0x0089,0x0089}, - {0x008A,0x008A,0x008A}, {0x008B,0x008B,0x008B}, - {0x008C,0x008C,0x008C}, {0x008D,0x008D,0x008D}, - {0x008E,0x008E,0x008E}, {0x008F,0x008F,0x008F}, - {0x0090,0x0090,0x0090}, {0x0091,0x0091,0x0091}, - {0x0092,0x0092,0x0092}, {0x0093,0x0093,0x0093}, - {0x0094,0x0094,0x0094}, {0x0095,0x0095,0x0095}, - {0x0096,0x0096,0x0096}, {0x0097,0x0097,0x0097}, - {0x0098,0x0098,0x0098}, {0x0099,0x0099,0x0099}, - {0x009A,0x009A,0x009A}, {0x009B,0x009B,0x009B}, - {0x009C,0x009C,0x009C}, {0x009D,0x009D,0x009D}, - {0x009E,0x009E,0x009E}, {0x009F,0x009F,0x009F}, - {0x00A0,0x00A0,0x00A0}, {0x00A1,0x00A1,0x00A1}, - {0x00A2,0x00A2,0x00A2}, {0x00A3,0x00A3,0x00A3}, - {0x00A4,0x00A4,0x00A4}, {0x00A5,0x00A5,0x00A5}, - {0x00A6,0x00A6,0x00A6}, {0x00A7,0x00A7,0x00A7}, - {0x00A8,0x00A8,0x00A8}, {0x00A9,0x00A9,0x00A9}, - {0x00AA,0x00AA,0x00AA}, {0x00AB,0x00AB,0x00AB}, - {0x00AC,0x00AC,0x00AC}, {0x00AD,0x00AD,0x00AD}, - {0x00AE,0x00AE,0x00AE}, {0x00AF,0x00AF,0x00AF}, - {0x00B0,0x00B0,0x00B0}, {0x00B1,0x00B1,0x00B1}, - {0x00B2,0x00B2,0x00B2}, {0x00B3,0x00B3,0x00B3}, - {0x00B4,0x00B4,0x00B4}, {0x039C,0x00B5,0x039C}, - {0x00B6,0x00B6,0x00B6}, {0x00B7,0x00B7,0x00B7}, - {0x00B8,0x00B8,0x00B8}, {0x00B9,0x00B9,0x00B9}, - {0x00BA,0x00BA,0x00BA}, {0x00BB,0x00BB,0x00BB}, - {0x00BC,0x00BC,0x00BC}, {0x00BD,0x00BD,0x00BD}, - {0x00BE,0x00BE,0x00BE}, {0x00BF,0x00BF,0x00BF}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00D7,0x00D7,0x00D7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x00DF,0x00DF,0x00DF}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00F7,0x00F7,0x00F7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x0178,0x00FF,0x0059} -}; - - -static MY_UNICASE_CHARACTER plane01[]={ - {0x0100,0x0101,0x0041}, {0x0100,0x0101,0x0041}, - {0x0102,0x0103,0x0041}, {0x0102,0x0103,0x0041}, - {0x0104,0x0105,0x0041}, {0x0104,0x0105,0x0041}, - {0x0106,0x0107,0x0043}, {0x0106,0x0107,0x0043}, - {0x0108,0x0109,0x0043}, {0x0108,0x0109,0x0043}, - {0x010A,0x010B,0x0043}, {0x010A,0x010B,0x0043}, - {0x010C,0x010D,0x0043}, {0x010C,0x010D,0x0043}, - {0x010E,0x010F,0x0044}, {0x010E,0x010F,0x0044}, - {0x0110,0x0111,0x0110}, {0x0110,0x0111,0x0110}, - {0x0112,0x0113,0x0045}, {0x0112,0x0113,0x0045}, - {0x0114,0x0115,0x0045}, {0x0114,0x0115,0x0045}, - {0x0116,0x0117,0x0045}, {0x0116,0x0117,0x0045}, - {0x0118,0x0119,0x0045}, {0x0118,0x0119,0x0045}, - {0x011A,0x011B,0x0045}, {0x011A,0x011B,0x0045}, - {0x011C,0x011D,0x0047}, {0x011C,0x011D,0x0047}, - {0x011E,0x011F,0x0047}, {0x011E,0x011F,0x0047}, - {0x0120,0x0121,0x0047}, {0x0120,0x0121,0x0047}, - {0x0122,0x0123,0x0047}, {0x0122,0x0123,0x0047}, - {0x0124,0x0125,0x0048}, {0x0124,0x0125,0x0048}, - {0x0126,0x0127,0x0126}, {0x0126,0x0127,0x0126}, - {0x0128,0x0129,0x0049}, {0x0128,0x0129,0x0049}, - {0x012A,0x012B,0x0049}, {0x012A,0x012B,0x0049}, - {0x012C,0x012D,0x0049}, {0x012C,0x012D,0x0049}, - {0x012E,0x012F,0x0049}, {0x012E,0x012F,0x0049}, - {0x0130,0x0069,0x0049}, {0x0049,0x0131,0x0049}, - {0x0132,0x0133,0x0132}, {0x0132,0x0133,0x0132}, - {0x0134,0x0135,0x004A}, {0x0134,0x0135,0x004A}, - {0x0136,0x0137,0x004B}, {0x0136,0x0137,0x004B}, - {0x0138,0x0138,0x0138}, {0x0139,0x013A,0x004C}, - {0x0139,0x013A,0x004C}, {0x013B,0x013C,0x004C}, - {0x013B,0x013C,0x004C}, {0x013D,0x013E,0x004C}, - {0x013D,0x013E,0x004C}, {0x013F,0x0140,0x013F}, - {0x013F,0x0140,0x013F}, {0x0141,0x0142,0x0141}, - {0x0141,0x0142,0x0141}, {0x0143,0x0144,0x004E}, - {0x0143,0x0144,0x004E}, {0x0145,0x0146,0x004E}, - {0x0145,0x0146,0x004E}, {0x0147,0x0148,0x004E}, - {0x0147,0x0148,0x004E}, {0x0149,0x0149,0x0149}, - {0x014A,0x014B,0x014A}, {0x014A,0x014B,0x014A}, - {0x014C,0x014D,0x004F}, {0x014C,0x014D,0x004F}, - {0x014E,0x014F,0x004F}, {0x014E,0x014F,0x004F}, - {0x0150,0x0151,0x004F}, {0x0150,0x0151,0x004F}, - {0x0152,0x0153,0x0152}, {0x0152,0x0153,0x0152}, - {0x0154,0x0155,0x0052}, {0x0154,0x0155,0x0052}, - {0x0156,0x0157,0x0052}, {0x0156,0x0157,0x0052}, - {0x0158,0x0159,0x0052}, {0x0158,0x0159,0x0052}, - {0x015A,0x015B,0x0053}, {0x015A,0x015B,0x0053}, - {0x015C,0x015D,0x0053}, {0x015C,0x015D,0x0053}, - {0x015E,0x015F,0x0053}, {0x015E,0x015F,0x0053}, - {0x0160,0x0161,0x0053}, {0x0160,0x0161,0x0053}, - {0x0162,0x0163,0x0054}, {0x0162,0x0163,0x0054}, - {0x0164,0x0165,0x0054}, {0x0164,0x0165,0x0054}, - {0x0166,0x0167,0x0166}, {0x0166,0x0167,0x0166}, - {0x0168,0x0169,0x0055}, {0x0168,0x0169,0x0055}, - {0x016A,0x016B,0x0055}, {0x016A,0x016B,0x0055}, - {0x016C,0x016D,0x0055}, {0x016C,0x016D,0x0055}, - {0x016E,0x016F,0x0055}, {0x016E,0x016F,0x0055}, - {0x0170,0x0171,0x0055}, {0x0170,0x0171,0x0055}, - {0x0172,0x0173,0x0055}, {0x0172,0x0173,0x0055}, - {0x0174,0x0175,0x0057}, {0x0174,0x0175,0x0057}, - {0x0176,0x0177,0x0059}, {0x0176,0x0177,0x0059}, - {0x0178,0x00FF,0x0059}, {0x0179,0x017A,0x005A}, - {0x0179,0x017A,0x005A}, {0x017B,0x017C,0x005A}, - {0x017B,0x017C,0x005A}, {0x017D,0x017E,0x005A}, - {0x017D,0x017E,0x005A}, {0x0053,0x017F,0x0053}, - {0x0180,0x0180,0x0180}, {0x0181,0x0253,0x0181}, - {0x0182,0x0183,0x0182}, {0x0182,0x0183,0x0182}, - {0x0184,0x0185,0x0184}, {0x0184,0x0185,0x0184}, - {0x0186,0x0254,0x0186}, {0x0187,0x0188,0x0187}, - {0x0187,0x0188,0x0187}, {0x0189,0x0256,0x0189}, - {0x018A,0x0257,0x018A}, {0x018B,0x018C,0x018B}, - {0x018B,0x018C,0x018B}, {0x018D,0x018D,0x018D}, - {0x018E,0x01DD,0x018E}, {0x018F,0x0259,0x018F}, - {0x0190,0x025B,0x0190}, {0x0191,0x0192,0x0191}, - {0x0191,0x0192,0x0191}, {0x0193,0x0260,0x0193}, - {0x0194,0x0263,0x0194}, {0x01F6,0x0195,0x01F6}, - {0x0196,0x0269,0x0196}, {0x0197,0x0268,0x0197}, - {0x0198,0x0199,0x0198}, {0x0198,0x0199,0x0198}, - {0x019A,0x019A,0x019A}, {0x019B,0x019B,0x019B}, - {0x019C,0x026F,0x019C}, {0x019D,0x0272,0x019D}, - {0x019E,0x019E,0x019E}, {0x019F,0x0275,0x019F}, - {0x01A0,0x01A1,0x004F}, {0x01A0,0x01A1,0x004F}, - {0x01A2,0x01A3,0x01A2}, {0x01A2,0x01A3,0x01A2}, - {0x01A4,0x01A5,0x01A4}, {0x01A4,0x01A5,0x01A4}, - {0x01A6,0x0280,0x01A6}, {0x01A7,0x01A8,0x01A7}, - {0x01A7,0x01A8,0x01A7}, {0x01A9,0x0283,0x01A9}, - {0x01AA,0x01AA,0x01AA}, {0x01AB,0x01AB,0x01AB}, - {0x01AC,0x01AD,0x01AC}, {0x01AC,0x01AD,0x01AC}, - {0x01AE,0x0288,0x01AE}, {0x01AF,0x01B0,0x0055}, - {0x01AF,0x01B0,0x0055}, {0x01B1,0x028A,0x01B1}, - {0x01B2,0x028B,0x01B2}, {0x01B3,0x01B4,0x01B3}, - {0x01B3,0x01B4,0x01B3}, {0x01B5,0x01B6,0x01B5}, - {0x01B5,0x01B6,0x01B5}, {0x01B7,0x0292,0x01B7}, - {0x01B8,0x01B9,0x01B8}, {0x01B8,0x01B9,0x01B8}, - {0x01BA,0x01BA,0x01BA}, {0x01BB,0x01BB,0x01BB}, - {0x01BC,0x01BD,0x01BC}, {0x01BC,0x01BD,0x01BC}, - {0x01BE,0x01BE,0x01BE}, {0x01F7,0x01BF,0x01F7}, - {0x01C0,0x01C0,0x01C0}, {0x01C1,0x01C1,0x01C1}, - {0x01C2,0x01C2,0x01C2}, {0x01C3,0x01C3,0x01C3}, - {0x01C4,0x01C6,0x01C4}, {0x01C4,0x01C6,0x01C4}, - {0x01C4,0x01C6,0x01C4}, {0x01C7,0x01C9,0x01C7}, - {0x01C7,0x01C9,0x01C7}, {0x01C7,0x01C9,0x01C7}, - {0x01CA,0x01CC,0x01CA}, {0x01CA,0x01CC,0x01CA}, - {0x01CA,0x01CC,0x01CA}, {0x01CD,0x01CE,0x0041}, - {0x01CD,0x01CE,0x0041}, {0x01CF,0x01D0,0x0049}, - {0x01CF,0x01D0,0x0049}, {0x01D1,0x01D2,0x004F}, - {0x01D1,0x01D2,0x004F}, {0x01D3,0x01D4,0x0055}, - {0x01D3,0x01D4,0x0055}, {0x01D5,0x01D6,0x0055}, - {0x01D5,0x01D6,0x0055}, {0x01D7,0x01D8,0x0055}, - {0x01D7,0x01D8,0x0055}, {0x01D9,0x01DA,0x0055}, - {0x01D9,0x01DA,0x0055}, {0x01DB,0x01DC,0x0055}, - {0x01DB,0x01DC,0x0055}, {0x018E,0x01DD,0x018E}, - {0x01DE,0x01DF,0x0041}, {0x01DE,0x01DF,0x0041}, - {0x01E0,0x01E1,0x0041}, {0x01E0,0x01E1,0x0041}, - {0x01E2,0x01E3,0x00C6}, {0x01E2,0x01E3,0x00C6}, - {0x01E4,0x01E5,0x01E4}, {0x01E4,0x01E5,0x01E4}, - {0x01E6,0x01E7,0x0047}, {0x01E6,0x01E7,0x0047}, - {0x01E8,0x01E9,0x004B}, {0x01E8,0x01E9,0x004B}, - {0x01EA,0x01EB,0x004F}, {0x01EA,0x01EB,0x004F}, - {0x01EC,0x01ED,0x004F}, {0x01EC,0x01ED,0x004F}, - {0x01EE,0x01EF,0x01B7}, {0x01EE,0x01EF,0x01B7}, - {0x01F0,0x01F0,0x004A}, {0x01F1,0x01F3,0x01F1}, - {0x01F1,0x01F3,0x01F1}, {0x01F1,0x01F3,0x01F1}, - {0x01F4,0x01F5,0x0047}, {0x01F4,0x01F5,0x0047}, - {0x01F6,0x0195,0x01F6}, {0x01F7,0x01BF,0x01F7}, - {0x01F8,0x01F9,0x004E}, {0x01F8,0x01F9,0x004E}, - {0x01FA,0x01FB,0x0041}, {0x01FA,0x01FB,0x0041}, - {0x01FC,0x01FD,0x00C6}, {0x01FC,0x01FD,0x00C6}, - {0x01FE,0x01FF,0x00D8}, {0x01FE,0x01FF,0x00D8} -}; - -static MY_UNICASE_CHARACTER plane02[]={ - {0x0200,0x0201,0x0041}, {0x0200,0x0201,0x0041}, - {0x0202,0x0203,0x0041}, {0x0202,0x0203,0x0041}, - {0x0204,0x0205,0x0045}, {0x0204,0x0205,0x0045}, - {0x0206,0x0207,0x0045}, {0x0206,0x0207,0x0045}, - {0x0208,0x0209,0x0049}, {0x0208,0x0209,0x0049}, - {0x020A,0x020B,0x0049}, {0x020A,0x020B,0x0049}, - {0x020C,0x020D,0x004F}, {0x020C,0x020D,0x004F}, - {0x020E,0x020F,0x004F}, {0x020E,0x020F,0x004F}, - {0x0210,0x0211,0x0052}, {0x0210,0x0211,0x0052}, - {0x0212,0x0213,0x0052}, {0x0212,0x0213,0x0052}, - {0x0214,0x0215,0x0055}, {0x0214,0x0215,0x0055}, - {0x0216,0x0217,0x0055}, {0x0216,0x0217,0x0055}, - {0x0218,0x0219,0x0053}, {0x0218,0x0219,0x0053}, - {0x021A,0x021B,0x0054}, {0x021A,0x021B,0x0054}, - {0x021C,0x021D,0x021C}, {0x021C,0x021D,0x021C}, - {0x021E,0x021F,0x0048}, {0x021E,0x021F,0x0048}, - {0x0220,0x0220,0x0220}, {0x0221,0x0221,0x0221}, - {0x0222,0x0223,0x0222}, {0x0222,0x0223,0x0222}, - {0x0224,0x0225,0x0224}, {0x0224,0x0225,0x0224}, - {0x0226,0x0227,0x0041}, {0x0226,0x0227,0x0041}, - {0x0228,0x0229,0x0045}, {0x0228,0x0229,0x0045}, - {0x022A,0x022B,0x004F}, {0x022A,0x022B,0x004F}, - {0x022C,0x022D,0x004F}, {0x022C,0x022D,0x004F}, - {0x022E,0x022F,0x004F}, {0x022E,0x022F,0x004F}, - {0x0230,0x0231,0x004F}, {0x0230,0x0231,0x004F}, - {0x0232,0x0233,0x0059}, {0x0232,0x0233,0x0059}, - {0x0234,0x0234,0x0234}, {0x0235,0x0235,0x0235}, - {0x0236,0x0236,0x0236}, {0x0237,0x0237,0x0237}, - {0x0238,0x0238,0x0238}, {0x0239,0x0239,0x0239}, - {0x023A,0x023A,0x023A}, {0x023B,0x023B,0x023B}, - {0x023C,0x023C,0x023C}, {0x023D,0x023D,0x023D}, - {0x023E,0x023E,0x023E}, {0x023F,0x023F,0x023F}, - {0x0240,0x0240,0x0240}, {0x0241,0x0241,0x0241}, - {0x0242,0x0242,0x0242}, {0x0243,0x0243,0x0243}, - {0x0244,0x0244,0x0244}, {0x0245,0x0245,0x0245}, - {0x0246,0x0246,0x0246}, {0x0247,0x0247,0x0247}, - {0x0248,0x0248,0x0248}, {0x0249,0x0249,0x0249}, - {0x024A,0x024A,0x024A}, {0x024B,0x024B,0x024B}, - {0x024C,0x024C,0x024C}, {0x024D,0x024D,0x024D}, - {0x024E,0x024E,0x024E}, {0x024F,0x024F,0x024F}, - {0x0250,0x0250,0x0250}, {0x0251,0x0251,0x0251}, - {0x0252,0x0252,0x0252}, {0x0181,0x0253,0x0181}, - {0x0186,0x0254,0x0186}, {0x0255,0x0255,0x0255}, - {0x0189,0x0256,0x0189}, {0x018A,0x0257,0x018A}, - {0x0258,0x0258,0x0258}, {0x018F,0x0259,0x018F}, - {0x025A,0x025A,0x025A}, {0x0190,0x025B,0x0190}, - {0x025C,0x025C,0x025C}, {0x025D,0x025D,0x025D}, - {0x025E,0x025E,0x025E}, {0x025F,0x025F,0x025F}, - {0x0193,0x0260,0x0193}, {0x0261,0x0261,0x0261}, - {0x0262,0x0262,0x0262}, {0x0194,0x0263,0x0194}, - {0x0264,0x0264,0x0264}, {0x0265,0x0265,0x0265}, - {0x0266,0x0266,0x0266}, {0x0267,0x0267,0x0267}, - {0x0197,0x0268,0x0197}, {0x0196,0x0269,0x0196}, - {0x026A,0x026A,0x026A}, {0x026B,0x026B,0x026B}, - {0x026C,0x026C,0x026C}, {0x026D,0x026D,0x026D}, - {0x026E,0x026E,0x026E}, {0x019C,0x026F,0x019C}, - {0x0270,0x0270,0x0270}, {0x0271,0x0271,0x0271}, - {0x019D,0x0272,0x019D}, {0x0273,0x0273,0x0273}, - {0x0274,0x0274,0x0274}, {0x019F,0x0275,0x019F}, - {0x0276,0x0276,0x0276}, {0x0277,0x0277,0x0277}, - {0x0278,0x0278,0x0278}, {0x0279,0x0279,0x0279}, - {0x027A,0x027A,0x027A}, {0x027B,0x027B,0x027B}, - {0x027C,0x027C,0x027C}, {0x027D,0x027D,0x027D}, - {0x027E,0x027E,0x027E}, {0x027F,0x027F,0x027F}, - {0x01A6,0x0280,0x01A6}, {0x0281,0x0281,0x0281}, - {0x0282,0x0282,0x0282}, {0x01A9,0x0283,0x01A9}, - {0x0284,0x0284,0x0284}, {0x0285,0x0285,0x0285}, - {0x0286,0x0286,0x0286}, {0x0287,0x0287,0x0287}, - {0x01AE,0x0288,0x01AE}, {0x0289,0x0289,0x0289}, - {0x01B1,0x028A,0x01B1}, {0x01B2,0x028B,0x01B2}, - {0x028C,0x028C,0x028C}, {0x028D,0x028D,0x028D}, - {0x028E,0x028E,0x028E}, {0x028F,0x028F,0x028F}, - {0x0290,0x0290,0x0290}, {0x0291,0x0291,0x0291}, - {0x01B7,0x0292,0x01B7}, {0x0293,0x0293,0x0293}, - {0x0294,0x0294,0x0294}, {0x0295,0x0295,0x0295}, - {0x0296,0x0296,0x0296}, {0x0297,0x0297,0x0297}, - {0x0298,0x0298,0x0298}, {0x0299,0x0299,0x0299}, - {0x029A,0x029A,0x029A}, {0x029B,0x029B,0x029B}, - {0x029C,0x029C,0x029C}, {0x029D,0x029D,0x029D}, - {0x029E,0x029E,0x029E}, {0x029F,0x029F,0x029F}, - {0x02A0,0x02A0,0x02A0}, {0x02A1,0x02A1,0x02A1}, - {0x02A2,0x02A2,0x02A2}, {0x02A3,0x02A3,0x02A3}, - {0x02A4,0x02A4,0x02A4}, {0x02A5,0x02A5,0x02A5}, - {0x02A6,0x02A6,0x02A6}, {0x02A7,0x02A7,0x02A7}, - {0x02A8,0x02A8,0x02A8}, {0x02A9,0x02A9,0x02A9}, - {0x02AA,0x02AA,0x02AA}, {0x02AB,0x02AB,0x02AB}, - {0x02AC,0x02AC,0x02AC}, {0x02AD,0x02AD,0x02AD}, - {0x02AE,0x02AE,0x02AE}, {0x02AF,0x02AF,0x02AF}, - {0x02B0,0x02B0,0x02B0}, {0x02B1,0x02B1,0x02B1}, - {0x02B2,0x02B2,0x02B2}, {0x02B3,0x02B3,0x02B3}, - {0x02B4,0x02B4,0x02B4}, {0x02B5,0x02B5,0x02B5}, - {0x02B6,0x02B6,0x02B6}, {0x02B7,0x02B7,0x02B7}, - {0x02B8,0x02B8,0x02B8}, {0x02B9,0x02B9,0x02B9}, - {0x02BA,0x02BA,0x02BA}, {0x02BB,0x02BB,0x02BB}, - {0x02BC,0x02BC,0x02BC}, {0x02BD,0x02BD,0x02BD}, - {0x02BE,0x02BE,0x02BE}, {0x02BF,0x02BF,0x02BF}, - {0x02C0,0x02C0,0x02C0}, {0x02C1,0x02C1,0x02C1}, - {0x02C2,0x02C2,0x02C2}, {0x02C3,0x02C3,0x02C3}, - {0x02C4,0x02C4,0x02C4}, {0x02C5,0x02C5,0x02C5}, - {0x02C6,0x02C6,0x02C6}, {0x02C7,0x02C7,0x02C7}, - {0x02C8,0x02C8,0x02C8}, {0x02C9,0x02C9,0x02C9}, - {0x02CA,0x02CA,0x02CA}, {0x02CB,0x02CB,0x02CB}, - {0x02CC,0x02CC,0x02CC}, {0x02CD,0x02CD,0x02CD}, - {0x02CE,0x02CE,0x02CE}, {0x02CF,0x02CF,0x02CF}, - {0x02D0,0x02D0,0x02D0}, {0x02D1,0x02D1,0x02D1}, - {0x02D2,0x02D2,0x02D2}, {0x02D3,0x02D3,0x02D3}, - {0x02D4,0x02D4,0x02D4}, {0x02D5,0x02D5,0x02D5}, - {0x02D6,0x02D6,0x02D6}, {0x02D7,0x02D7,0x02D7}, - {0x02D8,0x02D8,0x02D8}, {0x02D9,0x02D9,0x02D9}, - {0x02DA,0x02DA,0x02DA}, {0x02DB,0x02DB,0x02DB}, - {0x02DC,0x02DC,0x02DC}, {0x02DD,0x02DD,0x02DD}, - {0x02DE,0x02DE,0x02DE}, {0x02DF,0x02DF,0x02DF}, - {0x02E0,0x02E0,0x02E0}, {0x02E1,0x02E1,0x02E1}, - {0x02E2,0x02E2,0x02E2}, {0x02E3,0x02E3,0x02E3}, - {0x02E4,0x02E4,0x02E4}, {0x02E5,0x02E5,0x02E5}, - {0x02E6,0x02E6,0x02E6}, {0x02E7,0x02E7,0x02E7}, - {0x02E8,0x02E8,0x02E8}, {0x02E9,0x02E9,0x02E9}, - {0x02EA,0x02EA,0x02EA}, {0x02EB,0x02EB,0x02EB}, - {0x02EC,0x02EC,0x02EC}, {0x02ED,0x02ED,0x02ED}, - {0x02EE,0x02EE,0x02EE}, {0x02EF,0x02EF,0x02EF}, - {0x02F0,0x02F0,0x02F0}, {0x02F1,0x02F1,0x02F1}, - {0x02F2,0x02F2,0x02F2}, {0x02F3,0x02F3,0x02F3}, - {0x02F4,0x02F4,0x02F4}, {0x02F5,0x02F5,0x02F5}, - {0x02F6,0x02F6,0x02F6}, {0x02F7,0x02F7,0x02F7}, - {0x02F8,0x02F8,0x02F8}, {0x02F9,0x02F9,0x02F9}, - {0x02FA,0x02FA,0x02FA}, {0x02FB,0x02FB,0x02FB}, - {0x02FC,0x02FC,0x02FC}, {0x02FD,0x02FD,0x02FD}, - {0x02FE,0x02FE,0x02FE}, {0x02FF,0x02FF,0x02FF} -}; - -static MY_UNICASE_CHARACTER plane03[]={ - {0x0300,0x0300,0x0300}, {0x0301,0x0301,0x0301}, - {0x0302,0x0302,0x0302}, {0x0303,0x0303,0x0303}, - {0x0304,0x0304,0x0304}, {0x0305,0x0305,0x0305}, - {0x0306,0x0306,0x0306}, {0x0307,0x0307,0x0307}, - {0x0308,0x0308,0x0308}, {0x0309,0x0309,0x0309}, - {0x030A,0x030A,0x030A}, {0x030B,0x030B,0x030B}, - {0x030C,0x030C,0x030C}, {0x030D,0x030D,0x030D}, - {0x030E,0x030E,0x030E}, {0x030F,0x030F,0x030F}, - {0x0310,0x0310,0x0310}, {0x0311,0x0311,0x0311}, - {0x0312,0x0312,0x0312}, {0x0313,0x0313,0x0313}, - {0x0314,0x0314,0x0314}, {0x0315,0x0315,0x0315}, - {0x0316,0x0316,0x0316}, {0x0317,0x0317,0x0317}, - {0x0318,0x0318,0x0318}, {0x0319,0x0319,0x0319}, - {0x031A,0x031A,0x031A}, {0x031B,0x031B,0x031B}, - {0x031C,0x031C,0x031C}, {0x031D,0x031D,0x031D}, - {0x031E,0x031E,0x031E}, {0x031F,0x031F,0x031F}, - {0x0320,0x0320,0x0320}, {0x0321,0x0321,0x0321}, - {0x0322,0x0322,0x0322}, {0x0323,0x0323,0x0323}, - {0x0324,0x0324,0x0324}, {0x0325,0x0325,0x0325}, - {0x0326,0x0326,0x0326}, {0x0327,0x0327,0x0327}, - {0x0328,0x0328,0x0328}, {0x0329,0x0329,0x0329}, - {0x032A,0x032A,0x032A}, {0x032B,0x032B,0x032B}, - {0x032C,0x032C,0x032C}, {0x032D,0x032D,0x032D}, - {0x032E,0x032E,0x032E}, {0x032F,0x032F,0x032F}, - {0x0330,0x0330,0x0330}, {0x0331,0x0331,0x0331}, - {0x0332,0x0332,0x0332}, {0x0333,0x0333,0x0333}, - {0x0334,0x0334,0x0334}, {0x0335,0x0335,0x0335}, - {0x0336,0x0336,0x0336}, {0x0337,0x0337,0x0337}, - {0x0338,0x0338,0x0338}, {0x0339,0x0339,0x0339}, - {0x033A,0x033A,0x033A}, {0x033B,0x033B,0x033B}, - {0x033C,0x033C,0x033C}, {0x033D,0x033D,0x033D}, - {0x033E,0x033E,0x033E}, {0x033F,0x033F,0x033F}, - {0x0340,0x0340,0x0340}, {0x0341,0x0341,0x0341}, - {0x0342,0x0342,0x0342}, {0x0343,0x0343,0x0343}, - {0x0344,0x0344,0x0344}, {0x0399,0x0345,0x0399}, - {0x0346,0x0346,0x0346}, {0x0347,0x0347,0x0347}, - {0x0348,0x0348,0x0348}, {0x0349,0x0349,0x0349}, - {0x034A,0x034A,0x034A}, {0x034B,0x034B,0x034B}, - {0x034C,0x034C,0x034C}, {0x034D,0x034D,0x034D}, - {0x034E,0x034E,0x034E}, {0x034F,0x034F,0x034F}, - {0x0350,0x0350,0x0350}, {0x0351,0x0351,0x0351}, - {0x0352,0x0352,0x0352}, {0x0353,0x0353,0x0353}, - {0x0354,0x0354,0x0354}, {0x0355,0x0355,0x0355}, - {0x0356,0x0356,0x0356}, {0x0357,0x0357,0x0357}, - {0x0358,0x0358,0x0358}, {0x0359,0x0359,0x0359}, - {0x035A,0x035A,0x035A}, {0x035B,0x035B,0x035B}, - {0x035C,0x035C,0x035C}, {0x035D,0x035D,0x035D}, - {0x035E,0x035E,0x035E}, {0x035F,0x035F,0x035F}, - {0x0360,0x0360,0x0360}, {0x0361,0x0361,0x0361}, - {0x0362,0x0362,0x0362}, {0x0363,0x0363,0x0363}, - {0x0364,0x0364,0x0364}, {0x0365,0x0365,0x0365}, - {0x0366,0x0366,0x0366}, {0x0367,0x0367,0x0367}, - {0x0368,0x0368,0x0368}, {0x0369,0x0369,0x0369}, - {0x036A,0x036A,0x036A}, {0x036B,0x036B,0x036B}, - {0x036C,0x036C,0x036C}, {0x036D,0x036D,0x036D}, - {0x036E,0x036E,0x036E}, {0x036F,0x036F,0x036F}, - {0x0370,0x0370,0x0370}, {0x0371,0x0371,0x0371}, - {0x0372,0x0372,0x0372}, {0x0373,0x0373,0x0373}, - {0x0374,0x0374,0x0374}, {0x0375,0x0375,0x0375}, - {0x0376,0x0376,0x0376}, {0x0377,0x0377,0x0377}, - {0x0378,0x0378,0x0378}, {0x0379,0x0379,0x0379}, - {0x037A,0x037A,0x037A}, {0x037B,0x037B,0x037B}, - {0x037C,0x037C,0x037C}, {0x037D,0x037D,0x037D}, - {0x037E,0x037E,0x037E}, {0x037F,0x037F,0x037F}, - {0x0380,0x0380,0x0380}, {0x0381,0x0381,0x0381}, - {0x0382,0x0382,0x0382}, {0x0383,0x0383,0x0383}, - {0x0384,0x0384,0x0384}, {0x0385,0x0385,0x0385}, - {0x0386,0x03AC,0x0391}, {0x0387,0x0387,0x0387}, - {0x0388,0x03AD,0x0395}, {0x0389,0x03AE,0x0397}, - {0x038A,0x03AF,0x0399}, {0x038B,0x038B,0x038B}, - {0x038C,0x03CC,0x039F}, {0x038D,0x038D,0x038D}, - {0x038E,0x03CD,0x03A5}, {0x038F,0x03CE,0x03A9}, - {0x0390,0x0390,0x0399}, {0x0391,0x03B1,0x0391}, - {0x0392,0x03B2,0x0392}, {0x0393,0x03B3,0x0393}, - {0x0394,0x03B4,0x0394}, {0x0395,0x03B5,0x0395}, - {0x0396,0x03B6,0x0396}, {0x0397,0x03B7,0x0397}, - {0x0398,0x03B8,0x0398}, {0x0399,0x03B9,0x0399}, - {0x039A,0x03BA,0x039A}, {0x039B,0x03BB,0x039B}, - {0x039C,0x03BC,0x039C}, {0x039D,0x03BD,0x039D}, - {0x039E,0x03BE,0x039E}, {0x039F,0x03BF,0x039F}, - {0x03A0,0x03C0,0x03A0}, {0x03A1,0x03C1,0x03A1}, - {0x03A2,0x03A2,0x03A2}, {0x03A3,0x03C3,0x03A3}, - {0x03A4,0x03C4,0x03A4}, {0x03A5,0x03C5,0x03A5}, - {0x03A6,0x03C6,0x03A6}, {0x03A7,0x03C7,0x03A7}, - {0x03A8,0x03C8,0x03A8}, {0x03A9,0x03C9,0x03A9}, - {0x03AA,0x03CA,0x0399}, {0x03AB,0x03CB,0x03A5}, - {0x0386,0x03AC,0x0391}, {0x0388,0x03AD,0x0395}, - {0x0389,0x03AE,0x0397}, {0x038A,0x03AF,0x0399}, - {0x03B0,0x03B0,0x03A5}, {0x0391,0x03B1,0x0391}, - {0x0392,0x03B2,0x0392}, {0x0393,0x03B3,0x0393}, - {0x0394,0x03B4,0x0394}, {0x0395,0x03B5,0x0395}, - {0x0396,0x03B6,0x0396}, {0x0397,0x03B7,0x0397}, - {0x0398,0x03B8,0x0398}, {0x0399,0x03B9,0x0399}, - {0x039A,0x03BA,0x039A}, {0x039B,0x03BB,0x039B}, - {0x039C,0x03BC,0x039C}, {0x039D,0x03BD,0x039D}, - {0x039E,0x03BE,0x039E}, {0x039F,0x03BF,0x039F}, - {0x03A0,0x03C0,0x03A0}, {0x03A1,0x03C1,0x03A1}, - {0x03A3,0x03C2,0x03A3}, {0x03A3,0x03C3,0x03A3}, - {0x03A4,0x03C4,0x03A4}, {0x03A5,0x03C5,0x03A5}, - {0x03A6,0x03C6,0x03A6}, {0x03A7,0x03C7,0x03A7}, - {0x03A8,0x03C8,0x03A8}, {0x03A9,0x03C9,0x03A9}, - {0x03AA,0x03CA,0x0399}, {0x03AB,0x03CB,0x03A5}, - {0x038C,0x03CC,0x039F}, {0x038E,0x03CD,0x03A5}, - {0x038F,0x03CE,0x03A9}, {0x03CF,0x03CF,0x03CF}, - {0x0392,0x03D0,0x0392}, {0x0398,0x03D1,0x0398}, - {0x03D2,0x03D2,0x03D2}, {0x03D3,0x03D3,0x03D2}, - {0x03D4,0x03D4,0x03D2}, {0x03A6,0x03D5,0x03A6}, - {0x03A0,0x03D6,0x03A0}, {0x03D7,0x03D7,0x03D7}, - {0x03D8,0x03D8,0x03D8}, {0x03D9,0x03D9,0x03D9}, - {0x03DA,0x03DB,0x03DA}, {0x03DA,0x03DB,0x03DA}, - {0x03DC,0x03DD,0x03DC}, {0x03DC,0x03DD,0x03DC}, - {0x03DE,0x03DF,0x03DE}, {0x03DE,0x03DF,0x03DE}, - {0x03E0,0x03E1,0x03E0}, {0x03E0,0x03E1,0x03E0}, - {0x03E2,0x03E3,0x03E2}, {0x03E2,0x03E3,0x03E2}, - {0x03E4,0x03E5,0x03E4}, {0x03E4,0x03E5,0x03E4}, - {0x03E6,0x03E7,0x03E6}, {0x03E6,0x03E7,0x03E6}, - {0x03E8,0x03E9,0x03E8}, {0x03E8,0x03E9,0x03E8}, - {0x03EA,0x03EB,0x03EA}, {0x03EA,0x03EB,0x03EA}, - {0x03EC,0x03ED,0x03EC}, {0x03EC,0x03ED,0x03EC}, - {0x03EE,0x03EF,0x03EE}, {0x03EE,0x03EF,0x03EE}, - {0x039A,0x03F0,0x039A}, {0x03A1,0x03F1,0x03A1}, - {0x03A3,0x03F2,0x03A3}, {0x03F3,0x03F3,0x03F3}, - {0x03F4,0x03F4,0x03F4}, {0x03F5,0x03F5,0x03F5}, - {0x03F6,0x03F6,0x03F6}, {0x03F7,0x03F7,0x03F7}, - {0x03F8,0x03F8,0x03F8}, {0x03F9,0x03F9,0x03F9}, - {0x03FA,0x03FA,0x03FA}, {0x03FB,0x03FB,0x03FB}, - {0x03FC,0x03FC,0x03FC}, {0x03FD,0x03FD,0x03FD}, - {0x03FE,0x03FE,0x03FE}, {0x03FF,0x03FF,0x03FF} -}; - -static MY_UNICASE_CHARACTER plane04[]={ - {0x0400,0x0450,0x0415}, {0x0401,0x0451,0x0415}, - {0x0402,0x0452,0x0402}, {0x0403,0x0453,0x0413}, - {0x0404,0x0454,0x0404}, {0x0405,0x0455,0x0405}, - {0x0406,0x0456,0x0406}, {0x0407,0x0457,0x0406}, - {0x0408,0x0458,0x0408}, {0x0409,0x0459,0x0409}, - {0x040A,0x045A,0x040A}, {0x040B,0x045B,0x040B}, - {0x040C,0x045C,0x041A}, {0x040D,0x045D,0x0418}, - {0x040E,0x045E,0x0423}, {0x040F,0x045F,0x040F}, - {0x0410,0x0430,0x0410}, {0x0411,0x0431,0x0411}, - {0x0412,0x0432,0x0412}, {0x0413,0x0433,0x0413}, - {0x0414,0x0434,0x0414}, {0x0415,0x0435,0x0415}, - {0x0416,0x0436,0x0416}, {0x0417,0x0437,0x0417}, - {0x0418,0x0438,0x0418}, {0x0419,0x0439,0x0419}, - {0x041A,0x043A,0x041A}, {0x041B,0x043B,0x041B}, - {0x041C,0x043C,0x041C}, {0x041D,0x043D,0x041D}, - {0x041E,0x043E,0x041E}, {0x041F,0x043F,0x041F}, - {0x0420,0x0440,0x0420}, {0x0421,0x0441,0x0421}, - {0x0422,0x0442,0x0422}, {0x0423,0x0443,0x0423}, - {0x0424,0x0444,0x0424}, {0x0425,0x0445,0x0425}, - {0x0426,0x0446,0x0426}, {0x0427,0x0447,0x0427}, - {0x0428,0x0448,0x0428}, {0x0429,0x0449,0x0429}, - {0x042A,0x044A,0x042A}, {0x042B,0x044B,0x042B}, - {0x042C,0x044C,0x042C}, {0x042D,0x044D,0x042D}, - {0x042E,0x044E,0x042E}, {0x042F,0x044F,0x042F}, - {0x0410,0x0430,0x0410}, {0x0411,0x0431,0x0411}, - {0x0412,0x0432,0x0412}, {0x0413,0x0433,0x0413}, - {0x0414,0x0434,0x0414}, {0x0415,0x0435,0x0415}, - {0x0416,0x0436,0x0416}, {0x0417,0x0437,0x0417}, - {0x0418,0x0438,0x0418}, {0x0419,0x0439,0x0419}, - {0x041A,0x043A,0x041A}, {0x041B,0x043B,0x041B}, - {0x041C,0x043C,0x041C}, {0x041D,0x043D,0x041D}, - {0x041E,0x043E,0x041E}, {0x041F,0x043F,0x041F}, - {0x0420,0x0440,0x0420}, {0x0421,0x0441,0x0421}, - {0x0422,0x0442,0x0422}, {0x0423,0x0443,0x0423}, - {0x0424,0x0444,0x0424}, {0x0425,0x0445,0x0425}, - {0x0426,0x0446,0x0426}, {0x0427,0x0447,0x0427}, - {0x0428,0x0448,0x0428}, {0x0429,0x0449,0x0429}, - {0x042A,0x044A,0x042A}, {0x042B,0x044B,0x042B}, - {0x042C,0x044C,0x042C}, {0x042D,0x044D,0x042D}, - {0x042E,0x044E,0x042E}, {0x042F,0x044F,0x042F}, - {0x0400,0x0450,0x0415}, {0x0401,0x0451,0x0415}, - {0x0402,0x0452,0x0402}, {0x0403,0x0453,0x0413}, - {0x0404,0x0454,0x0404}, {0x0405,0x0455,0x0405}, - {0x0406,0x0456,0x0406}, {0x0407,0x0457,0x0406}, - {0x0408,0x0458,0x0408}, {0x0409,0x0459,0x0409}, - {0x040A,0x045A,0x040A}, {0x040B,0x045B,0x040B}, - {0x040C,0x045C,0x041A}, {0x040D,0x045D,0x0418}, - {0x040E,0x045E,0x0423}, {0x040F,0x045F,0x040F}, - {0x0460,0x0461,0x0460}, {0x0460,0x0461,0x0460}, - {0x0462,0x0463,0x0462}, {0x0462,0x0463,0x0462}, - {0x0464,0x0465,0x0464}, {0x0464,0x0465,0x0464}, - {0x0466,0x0467,0x0466}, {0x0466,0x0467,0x0466}, - {0x0468,0x0469,0x0468}, {0x0468,0x0469,0x0468}, - {0x046A,0x046B,0x046A}, {0x046A,0x046B,0x046A}, - {0x046C,0x046D,0x046C}, {0x046C,0x046D,0x046C}, - {0x046E,0x046F,0x046E}, {0x046E,0x046F,0x046E}, - {0x0470,0x0471,0x0470}, {0x0470,0x0471,0x0470}, - {0x0472,0x0473,0x0472}, {0x0472,0x0473,0x0472}, - {0x0474,0x0475,0x0474}, {0x0474,0x0475,0x0474}, - {0x0476,0x0477,0x0474}, {0x0476,0x0477,0x0474}, - {0x0478,0x0479,0x0478}, {0x0478,0x0479,0x0478}, - {0x047A,0x047B,0x047A}, {0x047A,0x047B,0x047A}, - {0x047C,0x047D,0x047C}, {0x047C,0x047D,0x047C}, - {0x047E,0x047F,0x047E}, {0x047E,0x047F,0x047E}, - {0x0480,0x0481,0x0480}, {0x0480,0x0481,0x0480}, - {0x0482,0x0482,0x0482}, {0x0483,0x0483,0x0483}, - {0x0484,0x0484,0x0484}, {0x0485,0x0485,0x0485}, - {0x0486,0x0486,0x0486}, {0x0487,0x0487,0x0487}, - {0x0488,0x0488,0x0488}, {0x0489,0x0489,0x0489}, - {0x048A,0x048A,0x048A}, {0x048B,0x048B,0x048B}, - {0x048C,0x048D,0x048C}, {0x048C,0x048D,0x048C}, - {0x048E,0x048F,0x048E}, {0x048E,0x048F,0x048E}, - {0x0490,0x0491,0x0490}, {0x0490,0x0491,0x0490}, - {0x0492,0x0493,0x0492}, {0x0492,0x0493,0x0492}, - {0x0494,0x0495,0x0494}, {0x0494,0x0495,0x0494}, - {0x0496,0x0497,0x0496}, {0x0496,0x0497,0x0496}, - {0x0498,0x0499,0x0498}, {0x0498,0x0499,0x0498}, - {0x049A,0x049B,0x049A}, {0x049A,0x049B,0x049A}, - {0x049C,0x049D,0x049C}, {0x049C,0x049D,0x049C}, - {0x049E,0x049F,0x049E}, {0x049E,0x049F,0x049E}, - {0x04A0,0x04A1,0x04A0}, {0x04A0,0x04A1,0x04A0}, - {0x04A2,0x04A3,0x04A2}, {0x04A2,0x04A3,0x04A2}, - {0x04A4,0x04A5,0x04A4}, {0x04A4,0x04A5,0x04A4}, - {0x04A6,0x04A7,0x04A6}, {0x04A6,0x04A7,0x04A6}, - {0x04A8,0x04A9,0x04A8}, {0x04A8,0x04A9,0x04A8}, - {0x04AA,0x04AB,0x04AA}, {0x04AA,0x04AB,0x04AA}, - {0x04AC,0x04AD,0x04AC}, {0x04AC,0x04AD,0x04AC}, - {0x04AE,0x04AF,0x04AE}, {0x04AE,0x04AF,0x04AE}, - {0x04B0,0x04B1,0x04B0}, {0x04B0,0x04B1,0x04B0}, - {0x04B2,0x04B3,0x04B2}, {0x04B2,0x04B3,0x04B2}, - {0x04B4,0x04B5,0x04B4}, {0x04B4,0x04B5,0x04B4}, - {0x04B6,0x04B7,0x04B6}, {0x04B6,0x04B7,0x04B6}, - {0x04B8,0x04B9,0x04B8}, {0x04B8,0x04B9,0x04B8}, - {0x04BA,0x04BB,0x04BA}, {0x04BA,0x04BB,0x04BA}, - {0x04BC,0x04BD,0x04BC}, {0x04BC,0x04BD,0x04BC}, - {0x04BE,0x04BF,0x04BE}, {0x04BE,0x04BF,0x04BE}, - {0x04C0,0x04C0,0x04C0}, {0x04C1,0x04C2,0x0416}, - {0x04C1,0x04C2,0x0416}, {0x04C3,0x04C4,0x04C3}, - {0x04C3,0x04C4,0x04C3}, {0x04C5,0x04C5,0x04C5}, - {0x04C6,0x04C6,0x04C6}, {0x04C7,0x04C8,0x04C7}, - {0x04C7,0x04C8,0x04C7}, {0x04C9,0x04C9,0x04C9}, - {0x04CA,0x04CA,0x04CA}, {0x04CB,0x04CC,0x04CB}, - {0x04CB,0x04CC,0x04CB}, {0x04CD,0x04CD,0x04CD}, - {0x04CE,0x04CE,0x04CE}, {0x04CF,0x04CF,0x04CF}, - {0x04D0,0x04D1,0x0410}, {0x04D0,0x04D1,0x0410}, - {0x04D2,0x04D3,0x0410}, {0x04D2,0x04D3,0x0410}, - {0x04D4,0x04D5,0x04D4}, {0x04D4,0x04D5,0x04D4}, - {0x04D6,0x04D7,0x0415}, {0x04D6,0x04D7,0x0415}, - {0x04D8,0x04D9,0x04D8}, {0x04D8,0x04D9,0x04D8}, - {0x04DA,0x04DB,0x04D8}, {0x04DA,0x04DB,0x04D8}, - {0x04DC,0x04DD,0x0416}, {0x04DC,0x04DD,0x0416}, - {0x04DE,0x04DF,0x0417}, {0x04DE,0x04DF,0x0417}, - {0x04E0,0x04E1,0x04E0}, {0x04E0,0x04E1,0x04E0}, - {0x04E2,0x04E3,0x0418}, {0x04E2,0x04E3,0x0418}, - {0x04E4,0x04E5,0x0418}, {0x04E4,0x04E5,0x0418}, - {0x04E6,0x04E7,0x041E}, {0x04E6,0x04E7,0x041E}, - {0x04E8,0x04E9,0x04E8}, {0x04E8,0x04E9,0x04E8}, - {0x04EA,0x04EB,0x04E8}, {0x04EA,0x04EB,0x04E8}, - {0x04EC,0x04ED,0x042D}, {0x04EC,0x04ED,0x042D}, - {0x04EE,0x04EF,0x0423}, {0x04EE,0x04EF,0x0423}, - {0x04F0,0x04F1,0x0423}, {0x04F0,0x04F1,0x0423}, - {0x04F2,0x04F3,0x0423}, {0x04F2,0x04F3,0x0423}, - {0x04F4,0x04F5,0x0427}, {0x04F4,0x04F5,0x0427}, - {0x04F6,0x04F6,0x04F6}, {0x04F7,0x04F7,0x04F7}, - {0x04F8,0x04F9,0x042B}, {0x04F8,0x04F9,0x042B}, - {0x04FA,0x04FA,0x04FA}, {0x04FB,0x04FB,0x04FB}, - {0x04FC,0x04FC,0x04FC}, {0x04FD,0x04FD,0x04FD}, - {0x04FE,0x04FE,0x04FE}, {0x04FF,0x04FF,0x04FF} -}; - -static MY_UNICASE_CHARACTER plane05[]={ - {0x0500,0x0500,0x0500}, {0x0501,0x0501,0x0501}, - {0x0502,0x0502,0x0502}, {0x0503,0x0503,0x0503}, - {0x0504,0x0504,0x0504}, {0x0505,0x0505,0x0505}, - {0x0506,0x0506,0x0506}, {0x0507,0x0507,0x0507}, - {0x0508,0x0508,0x0508}, {0x0509,0x0509,0x0509}, - {0x050A,0x050A,0x050A}, {0x050B,0x050B,0x050B}, - {0x050C,0x050C,0x050C}, {0x050D,0x050D,0x050D}, - {0x050E,0x050E,0x050E}, {0x050F,0x050F,0x050F}, - {0x0510,0x0510,0x0510}, {0x0511,0x0511,0x0511}, - {0x0512,0x0512,0x0512}, {0x0513,0x0513,0x0513}, - {0x0514,0x0514,0x0514}, {0x0515,0x0515,0x0515}, - {0x0516,0x0516,0x0516}, {0x0517,0x0517,0x0517}, - {0x0518,0x0518,0x0518}, {0x0519,0x0519,0x0519}, - {0x051A,0x051A,0x051A}, {0x051B,0x051B,0x051B}, - {0x051C,0x051C,0x051C}, {0x051D,0x051D,0x051D}, - {0x051E,0x051E,0x051E}, {0x051F,0x051F,0x051F}, - {0x0520,0x0520,0x0520}, {0x0521,0x0521,0x0521}, - {0x0522,0x0522,0x0522}, {0x0523,0x0523,0x0523}, - {0x0524,0x0524,0x0524}, {0x0525,0x0525,0x0525}, - {0x0526,0x0526,0x0526}, {0x0527,0x0527,0x0527}, - {0x0528,0x0528,0x0528}, {0x0529,0x0529,0x0529}, - {0x052A,0x052A,0x052A}, {0x052B,0x052B,0x052B}, - {0x052C,0x052C,0x052C}, {0x052D,0x052D,0x052D}, - {0x052E,0x052E,0x052E}, {0x052F,0x052F,0x052F}, - {0x0530,0x0530,0x0530}, {0x0531,0x0561,0x0531}, - {0x0532,0x0562,0x0532}, {0x0533,0x0563,0x0533}, - {0x0534,0x0564,0x0534}, {0x0535,0x0565,0x0535}, - {0x0536,0x0566,0x0536}, {0x0537,0x0567,0x0537}, - {0x0538,0x0568,0x0538}, {0x0539,0x0569,0x0539}, - {0x053A,0x056A,0x053A}, {0x053B,0x056B,0x053B}, - {0x053C,0x056C,0x053C}, {0x053D,0x056D,0x053D}, - {0x053E,0x056E,0x053E}, {0x053F,0x056F,0x053F}, - {0x0540,0x0570,0x0540}, {0x0541,0x0571,0x0541}, - {0x0542,0x0572,0x0542}, {0x0543,0x0573,0x0543}, - {0x0544,0x0574,0x0544}, {0x0545,0x0575,0x0545}, - {0x0546,0x0576,0x0546}, {0x0547,0x0577,0x0547}, - {0x0548,0x0578,0x0548}, {0x0549,0x0579,0x0549}, - {0x054A,0x057A,0x054A}, {0x054B,0x057B,0x054B}, - {0x054C,0x057C,0x054C}, {0x054D,0x057D,0x054D}, - {0x054E,0x057E,0x054E}, {0x054F,0x057F,0x054F}, - {0x0550,0x0580,0x0550}, {0x0551,0x0581,0x0551}, - {0x0552,0x0582,0x0552}, {0x0553,0x0583,0x0553}, - {0x0554,0x0584,0x0554}, {0x0555,0x0585,0x0555}, - {0x0556,0x0586,0x0556}, {0x0557,0x0557,0x0557}, - {0x0558,0x0558,0x0558}, {0x0559,0x0559,0x0559}, - {0x055A,0x055A,0x055A}, {0x055B,0x055B,0x055B}, - {0x055C,0x055C,0x055C}, {0x055D,0x055D,0x055D}, - {0x055E,0x055E,0x055E}, {0x055F,0x055F,0x055F}, - {0x0560,0x0560,0x0560}, {0x0531,0x0561,0x0531}, - {0x0532,0x0562,0x0532}, {0x0533,0x0563,0x0533}, - {0x0534,0x0564,0x0534}, {0x0535,0x0565,0x0535}, - {0x0536,0x0566,0x0536}, {0x0537,0x0567,0x0537}, - {0x0538,0x0568,0x0538}, {0x0539,0x0569,0x0539}, - {0x053A,0x056A,0x053A}, {0x053B,0x056B,0x053B}, - {0x053C,0x056C,0x053C}, {0x053D,0x056D,0x053D}, - {0x053E,0x056E,0x053E}, {0x053F,0x056F,0x053F}, - {0x0540,0x0570,0x0540}, {0x0541,0x0571,0x0541}, - {0x0542,0x0572,0x0542}, {0x0543,0x0573,0x0543}, - {0x0544,0x0574,0x0544}, {0x0545,0x0575,0x0545}, - {0x0546,0x0576,0x0546}, {0x0547,0x0577,0x0547}, - {0x0548,0x0578,0x0548}, {0x0549,0x0579,0x0549}, - {0x054A,0x057A,0x054A}, {0x054B,0x057B,0x054B}, - {0x054C,0x057C,0x054C}, {0x054D,0x057D,0x054D}, - {0x054E,0x057E,0x054E}, {0x054F,0x057F,0x054F}, - {0x0550,0x0580,0x0550}, {0x0551,0x0581,0x0551}, - {0x0552,0x0582,0x0552}, {0x0553,0x0583,0x0553}, - {0x0554,0x0584,0x0554}, {0x0555,0x0585,0x0555}, - {0x0556,0x0586,0x0556}, {0x0587,0x0587,0x0587}, - {0x0588,0x0588,0x0588}, {0x0589,0x0589,0x0589}, - {0x058A,0x058A,0x058A}, {0x058B,0x058B,0x058B}, - {0x058C,0x058C,0x058C}, {0x058D,0x058D,0x058D}, - {0x058E,0x058E,0x058E}, {0x058F,0x058F,0x058F}, - {0x0590,0x0590,0x0590}, {0x0591,0x0591,0x0591}, - {0x0592,0x0592,0x0592}, {0x0593,0x0593,0x0593}, - {0x0594,0x0594,0x0594}, {0x0595,0x0595,0x0595}, - {0x0596,0x0596,0x0596}, {0x0597,0x0597,0x0597}, - {0x0598,0x0598,0x0598}, {0x0599,0x0599,0x0599}, - {0x059A,0x059A,0x059A}, {0x059B,0x059B,0x059B}, - {0x059C,0x059C,0x059C}, {0x059D,0x059D,0x059D}, - {0x059E,0x059E,0x059E}, {0x059F,0x059F,0x059F}, - {0x05A0,0x05A0,0x05A0}, {0x05A1,0x05A1,0x05A1}, - {0x05A2,0x05A2,0x05A2}, {0x05A3,0x05A3,0x05A3}, - {0x05A4,0x05A4,0x05A4}, {0x05A5,0x05A5,0x05A5}, - {0x05A6,0x05A6,0x05A6}, {0x05A7,0x05A7,0x05A7}, - {0x05A8,0x05A8,0x05A8}, {0x05A9,0x05A9,0x05A9}, - {0x05AA,0x05AA,0x05AA}, {0x05AB,0x05AB,0x05AB}, - {0x05AC,0x05AC,0x05AC}, {0x05AD,0x05AD,0x05AD}, - {0x05AE,0x05AE,0x05AE}, {0x05AF,0x05AF,0x05AF}, - {0x05B0,0x05B0,0x05B0}, {0x05B1,0x05B1,0x05B1}, - {0x05B2,0x05B2,0x05B2}, {0x05B3,0x05B3,0x05B3}, - {0x05B4,0x05B4,0x05B4}, {0x05B5,0x05B5,0x05B5}, - {0x05B6,0x05B6,0x05B6}, {0x05B7,0x05B7,0x05B7}, - {0x05B8,0x05B8,0x05B8}, {0x05B9,0x05B9,0x05B9}, - {0x05BA,0x05BA,0x05BA}, {0x05BB,0x05BB,0x05BB}, - {0x05BC,0x05BC,0x05BC}, {0x05BD,0x05BD,0x05BD}, - {0x05BE,0x05BE,0x05BE}, {0x05BF,0x05BF,0x05BF}, - {0x05C0,0x05C0,0x05C0}, {0x05C1,0x05C1,0x05C1}, - {0x05C2,0x05C2,0x05C2}, {0x05C3,0x05C3,0x05C3}, - {0x05C4,0x05C4,0x05C4}, {0x05C5,0x05C5,0x05C5}, - {0x05C6,0x05C6,0x05C6}, {0x05C7,0x05C7,0x05C7}, - {0x05C8,0x05C8,0x05C8}, {0x05C9,0x05C9,0x05C9}, - {0x05CA,0x05CA,0x05CA}, {0x05CB,0x05CB,0x05CB}, - {0x05CC,0x05CC,0x05CC}, {0x05CD,0x05CD,0x05CD}, - {0x05CE,0x05CE,0x05CE}, {0x05CF,0x05CF,0x05CF}, - {0x05D0,0x05D0,0x05D0}, {0x05D1,0x05D1,0x05D1}, - {0x05D2,0x05D2,0x05D2}, {0x05D3,0x05D3,0x05D3}, - {0x05D4,0x05D4,0x05D4}, {0x05D5,0x05D5,0x05D5}, - {0x05D6,0x05D6,0x05D6}, {0x05D7,0x05D7,0x05D7}, - {0x05D8,0x05D8,0x05D8}, {0x05D9,0x05D9,0x05D9}, - {0x05DA,0x05DA,0x05DA}, {0x05DB,0x05DB,0x05DB}, - {0x05DC,0x05DC,0x05DC}, {0x05DD,0x05DD,0x05DD}, - {0x05DE,0x05DE,0x05DE}, {0x05DF,0x05DF,0x05DF}, - {0x05E0,0x05E0,0x05E0}, {0x05E1,0x05E1,0x05E1}, - {0x05E2,0x05E2,0x05E2}, {0x05E3,0x05E3,0x05E3}, - {0x05E4,0x05E4,0x05E4}, {0x05E5,0x05E5,0x05E5}, - {0x05E6,0x05E6,0x05E6}, {0x05E7,0x05E7,0x05E7}, - {0x05E8,0x05E8,0x05E8}, {0x05E9,0x05E9,0x05E9}, - {0x05EA,0x05EA,0x05EA}, {0x05EB,0x05EB,0x05EB}, - {0x05EC,0x05EC,0x05EC}, {0x05ED,0x05ED,0x05ED}, - {0x05EE,0x05EE,0x05EE}, {0x05EF,0x05EF,0x05EF}, - {0x05F0,0x05F0,0x05F0}, {0x05F1,0x05F1,0x05F1}, - {0x05F2,0x05F2,0x05F2}, {0x05F3,0x05F3,0x05F3}, - {0x05F4,0x05F4,0x05F4}, {0x05F5,0x05F5,0x05F5}, - {0x05F6,0x05F6,0x05F6}, {0x05F7,0x05F7,0x05F7}, - {0x05F8,0x05F8,0x05F8}, {0x05F9,0x05F9,0x05F9}, - {0x05FA,0x05FA,0x05FA}, {0x05FB,0x05FB,0x05FB}, - {0x05FC,0x05FC,0x05FC}, {0x05FD,0x05FD,0x05FD}, - {0x05FE,0x05FE,0x05FE}, {0x05FF,0x05FF,0x05FF} -}; - -static MY_UNICASE_CHARACTER plane06[]={ /* This page is dummy */ - {0x0600,0x0600,0x0600}, {0x0601,0x0601,0x0601}, /* 0600 */ - {0x0602,0x0602,0x0602}, {0x0603,0x0603,0x0603}, /* 0602 */ - {0x0604,0x0604,0x0604}, {0x0605,0x0605,0x0605}, /* 0604 */ - {0x0606,0x0606,0x0606}, {0x0607,0x0607,0x0607}, /* 0606 */ - {0x0608,0x0608,0x0608}, {0x0609,0x0609,0x0609}, /* 0608 */ - {0x060A,0x060A,0x060A}, {0x060B,0x060B,0x060B}, /* 060A */ - {0x060C,0x060C,0x060C}, {0x060D,0x060D,0x060D}, /* 060C */ - {0x060E,0x060E,0x060E}, {0x060F,0x060F,0x060F}, /* 060E */ - {0x0610,0x0610,0x0610}, {0x0611,0x0611,0x0611}, /* 0610 */ - {0x0612,0x0612,0x0612}, {0x0613,0x0613,0x0613}, /* 0612 */ - {0x0614,0x0614,0x0614}, {0x0615,0x0615,0x0615}, /* 0614 */ - {0x0616,0x0616,0x0616}, {0x0617,0x0617,0x0617}, /* 0616 */ - {0x0618,0x0618,0x0618}, {0x0619,0x0619,0x0619}, /* 0618 */ - {0x061A,0x061A,0x061A}, {0x061B,0x061B,0x061B}, /* 061A */ - {0x061C,0x061C,0x061C}, {0x061D,0x061D,0x061D}, /* 061C */ - {0x061E,0x061E,0x061E}, {0x061F,0x061F,0x061F}, /* 061E */ - {0x0620,0x0620,0x0620}, {0x0621,0x0621,0x0621}, /* 0620 */ - {0x0622,0x0622,0x0622}, {0x0623,0x0623,0x0623}, /* 0622 */ - {0x0624,0x0624,0x0624}, {0x0625,0x0625,0x0625}, /* 0624 */ - {0x0626,0x0626,0x0626}, {0x0627,0x0627,0x0627}, /* 0626 */ - {0x0628,0x0628,0x0628}, {0x0629,0x0629,0x0629}, /* 0628 */ - {0x062A,0x062A,0x062A}, {0x062B,0x062B,0x062B}, /* 062A */ - {0x062C,0x062C,0x062C}, {0x062D,0x062D,0x062D}, /* 062C */ - {0x062E,0x062E,0x062E}, {0x062F,0x062F,0x062F}, /* 062E */ - {0x0630,0x0630,0x0630}, {0x0631,0x0631,0x0631}, /* 0630 */ - {0x0632,0x0632,0x0632}, {0x0633,0x0633,0x0633}, /* 0632 */ - {0x0634,0x0634,0x0634}, {0x0635,0x0635,0x0635}, /* 0634 */ - {0x0636,0x0636,0x0636}, {0x0637,0x0637,0x0637}, /* 0636 */ - {0x0638,0x0638,0x0638}, {0x0639,0x0639,0x0639}, /* 0638 */ - {0x063A,0x063A,0x063A}, {0x063B,0x063B,0x063B}, /* 063A */ - {0x063C,0x063C,0x063C}, {0x063D,0x063D,0x063D}, /* 063C */ - {0x063E,0x063E,0x063E}, {0x063F,0x063F,0x063F}, /* 063E */ - {0x0640,0x0640,0x0640}, {0x0641,0x0641,0x0641}, /* 0640 */ - {0x0642,0x0642,0x0642}, {0x0643,0x0643,0x0643}, /* 0642 */ - {0x0644,0x0644,0x0644}, {0x0645,0x0645,0x0645}, /* 0644 */ - {0x0646,0x0646,0x0646}, {0x0647,0x0647,0x0647}, /* 0646 */ - {0x0648,0x0648,0x0648}, {0x0649,0x0649,0x0649}, /* 0648 */ - {0x064A,0x064A,0x064A}, {0x064B,0x064B,0x064B}, /* 064A */ - {0x064C,0x064C,0x064C}, {0x064D,0x064D,0x064D}, /* 064C */ - {0x064E,0x064E,0x064E}, {0x064F,0x064F,0x064F}, /* 064E */ - {0x0650,0x0650,0x0650}, {0x0651,0x0651,0x0651}, /* 0650 */ - {0x0652,0x0652,0x0652}, {0x0653,0x0653,0x0653}, /* 0652 */ - {0x0654,0x0654,0x0654}, {0x0655,0x0655,0x0655}, /* 0654 */ - {0x0656,0x0656,0x0656}, {0x0657,0x0657,0x0657}, /* 0656 */ - {0x0658,0x0658,0x0658}, {0x0659,0x0659,0x0659}, /* 0658 */ - {0x065A,0x065A,0x065A}, {0x065B,0x065B,0x065B}, /* 065A */ - {0x065C,0x065C,0x065C}, {0x065D,0x065D,0x065D}, /* 065C */ - {0x065E,0x065E,0x065E}, {0x065F,0x065F,0x065F}, /* 065E */ - {0x0660,0x0660,0x0660}, {0x0661,0x0661,0x0661}, /* 0660 */ - {0x0662,0x0662,0x0662}, {0x0663,0x0663,0x0663}, /* 0662 */ - {0x0664,0x0664,0x0664}, {0x0665,0x0665,0x0665}, /* 0664 */ - {0x0666,0x0666,0x0666}, {0x0667,0x0667,0x0667}, /* 0666 */ - {0x0668,0x0668,0x0668}, {0x0669,0x0669,0x0669}, /* 0668 */ - {0x066A,0x066A,0x066A}, {0x066B,0x066B,0x066B}, /* 066A */ - {0x066C,0x066C,0x066C}, {0x066D,0x066D,0x066D}, /* 066C */ - {0x066E,0x066E,0x066E}, {0x066F,0x066F,0x066F}, /* 066E */ - {0x0670,0x0670,0x0670}, {0x0671,0x0671,0x0671}, /* 0670 */ - {0x0672,0x0672,0x0672}, {0x0673,0x0673,0x0673}, /* 0672 */ - {0x0674,0x0674,0x0674}, {0x0675,0x0675,0x0675}, /* 0674 */ - {0x0676,0x0676,0x0676}, {0x0677,0x0677,0x0677}, /* 0676 */ - {0x0678,0x0678,0x0678}, {0x0679,0x0679,0x0679}, /* 0678 */ - {0x067A,0x067A,0x067A}, {0x067B,0x067B,0x067B}, /* 067A */ - {0x067C,0x067C,0x067C}, {0x067D,0x067D,0x067D}, /* 067C */ - {0x067E,0x067E,0x067E}, {0x067F,0x067F,0x067F}, /* 067E */ - {0x0680,0x0680,0x0680}, {0x0681,0x0681,0x0681}, /* 0680 */ - {0x0682,0x0682,0x0682}, {0x0683,0x0683,0x0683}, /* 0682 */ - {0x0684,0x0684,0x0684}, {0x0685,0x0685,0x0685}, /* 0684 */ - {0x0686,0x0686,0x0686}, {0x0687,0x0687,0x0687}, /* 0686 */ - {0x0688,0x0688,0x0688}, {0x0689,0x0689,0x0689}, /* 0688 */ - {0x068A,0x068A,0x068A}, {0x068B,0x068B,0x068B}, /* 068A */ - {0x068C,0x068C,0x068C}, {0x068D,0x068D,0x068D}, /* 068C */ - {0x068E,0x068E,0x068E}, {0x068F,0x068F,0x068F}, /* 068E */ - {0x0690,0x0690,0x0690}, {0x0691,0x0691,0x0691}, /* 0690 */ - {0x0692,0x0692,0x0692}, {0x0693,0x0693,0x0693}, /* 0692 */ - {0x0694,0x0694,0x0694}, {0x0695,0x0695,0x0695}, /* 0694 */ - {0x0696,0x0696,0x0696}, {0x0697,0x0697,0x0697}, /* 0696 */ - {0x0698,0x0698,0x0698}, {0x0699,0x0699,0x0699}, /* 0698 */ - {0x069A,0x069A,0x069A}, {0x069B,0x069B,0x069B}, /* 069A */ - {0x069C,0x069C,0x069C}, {0x069D,0x069D,0x069D}, /* 069C */ - {0x069E,0x069E,0x069E}, {0x069F,0x069F,0x069F}, /* 069E */ - {0x06A0,0x06A0,0x06A0}, {0x06A1,0x06A1,0x06A1}, /* 06A0 */ - {0x06A2,0x06A2,0x06A2}, {0x06A3,0x06A3,0x06A3}, /* 06A2 */ - {0x06A4,0x06A4,0x06A4}, {0x06A5,0x06A5,0x06A5}, /* 06A4 */ - {0x06A6,0x06A6,0x06A6}, {0x06A7,0x06A7,0x06A7}, /* 06A6 */ - {0x06A8,0x06A8,0x06A8}, {0x06A9,0x06A9,0x06A9}, /* 06A8 */ - {0x06AA,0x06AA,0x06AA}, {0x06AB,0x06AB,0x06AB}, /* 06AA */ - {0x06AC,0x06AC,0x06AC}, {0x06AD,0x06AD,0x06AD}, /* 06AC */ - {0x06AE,0x06AE,0x06AE}, {0x06AF,0x06AF,0x06AF}, /* 06AE */ - {0x06B0,0x06B0,0x06B0}, {0x06B1,0x06B1,0x06B1}, /* 06B0 */ - {0x06B2,0x06B2,0x06B2}, {0x06B3,0x06B3,0x06B3}, /* 06B2 */ - {0x06B4,0x06B4,0x06B4}, {0x06B5,0x06B5,0x06B5}, /* 06B4 */ - {0x06B6,0x06B6,0x06B6}, {0x06B7,0x06B7,0x06B7}, /* 06B6 */ - {0x06B8,0x06B8,0x06B8}, {0x06B9,0x06B9,0x06B9}, /* 06B8 */ - {0x06BA,0x06BA,0x06BA}, {0x06BB,0x06BB,0x06BB}, /* 06BA */ - {0x06BC,0x06BC,0x06BC}, {0x06BD,0x06BD,0x06BD}, /* 06BC */ - {0x06BE,0x06BE,0x06BE}, {0x06BF,0x06BF,0x06BF}, /* 06BE */ - {0x06C0,0x06C0,0x06C0}, {0x06C1,0x06C1,0x06C1}, /* 06C0 */ - {0x06C2,0x06C2,0x06C2}, {0x06C3,0x06C3,0x06C3}, /* 06C2 */ - {0x06C4,0x06C4,0x06C4}, {0x06C5,0x06C5,0x06C5}, /* 06C4 */ - {0x06C6,0x06C6,0x06C6}, {0x06C7,0x06C7,0x06C7}, /* 06C6 */ - {0x06C8,0x06C8,0x06C8}, {0x06C9,0x06C9,0x06C9}, /* 06C8 */ - {0x06CA,0x06CA,0x06CA}, {0x06CB,0x06CB,0x06CB}, /* 06CA */ - {0x06CC,0x06CC,0x06CC}, {0x06CD,0x06CD,0x06CD}, /* 06CC */ - {0x06CE,0x06CE,0x06CE}, {0x06CF,0x06CF,0x06CF}, /* 06CE */ - {0x06D0,0x06D0,0x06D0}, {0x06D1,0x06D1,0x06D1}, /* 06D0 */ - {0x06D2,0x06D2,0x06D2}, {0x06D3,0x06D3,0x06D3}, /* 06D2 */ - {0x06D4,0x06D4,0x06D4}, {0x06D5,0x06D5,0x06D5}, /* 06D4 */ - {0x06D6,0x06D6,0x06D6}, {0x06D7,0x06D7,0x06D7}, /* 06D6 */ - {0x06D8,0x06D8,0x06D8}, {0x06D9,0x06D9,0x06D9}, /* 06D8 */ - {0x06DA,0x06DA,0x06DA}, {0x06DB,0x06DB,0x06DB}, /* 06DA */ - {0x06DC,0x06DC,0x06DC}, {0x06DD,0x06DD,0x06DD}, /* 06DC */ - {0x06DE,0x06DE,0x06DE}, {0x06DF,0x06DF,0x06DF}, /* 06DE */ - {0x06E0,0x06E0,0x06E0}, {0x06E1,0x06E1,0x06E1}, /* 06E0 */ - {0x06E2,0x06E2,0x06E2}, {0x06E3,0x06E3,0x06E3}, /* 06E2 */ - {0x06E4,0x06E4,0x06E4}, {0x06E5,0x06E5,0x06E5}, /* 06E4 */ - {0x06E6,0x06E6,0x06E6}, {0x06E7,0x06E7,0x06E7}, /* 06E6 */ - {0x06E8,0x06E8,0x06E8}, {0x06E9,0x06E9,0x06E9}, /* 06E8 */ - {0x06EA,0x06EA,0x06EA}, {0x06EB,0x06EB,0x06EB}, /* 06EA */ - {0x06EC,0x06EC,0x06EC}, {0x06ED,0x06ED,0x06ED}, /* 06EC */ - {0x06EE,0x06EE,0x06EE}, {0x06EF,0x06EF,0x06EF}, /* 06EE */ - {0x06F0,0x06F0,0x06F0}, {0x06F1,0x06F1,0x06F1}, /* 06F0 */ - {0x06F2,0x06F2,0x06F2}, {0x06F3,0x06F3,0x06F3}, /* 06F2 */ - {0x06F4,0x06F4,0x06F4}, {0x06F5,0x06F5,0x06F5}, /* 06F4 */ - {0x06F6,0x06F6,0x06F6}, {0x06F7,0x06F7,0x06F7}, /* 06F6 */ - {0x06F8,0x06F8,0x06F8}, {0x06F9,0x06F9,0x06F9}, /* 06F8 */ - {0x06FA,0x06FA,0x06FA}, {0x06FB,0x06FB,0x06FB}, /* 06FA */ - {0x06FC,0x06FC,0x06FC}, {0x06FD,0x06FD,0x06FD}, /* 06FC */ - {0x06FE,0x06FE,0x06FE}, {0x06FF,0x06FF,0x06FF} /* 06FE */ -}; - -static MY_UNICASE_CHARACTER plane07[]={ /* This page is dummy */ - {0x0700,0x0700,0x0700}, {0x0701,0x0701,0x0701}, /* 0700 */ - {0x0702,0x0702,0x0702}, {0x0703,0x0703,0x0703}, /* 0702 */ - {0x0704,0x0704,0x0704}, {0x0705,0x0705,0x0705}, /* 0704 */ - {0x0706,0x0706,0x0706}, {0x0707,0x0707,0x0707}, /* 0706 */ - {0x0708,0x0708,0x0708}, {0x0709,0x0709,0x0709}, /* 0708 */ - {0x070A,0x070A,0x070A}, {0x070B,0x070B,0x070B}, /* 070A */ - {0x070C,0x070C,0x070C}, {0x070D,0x070D,0x070D}, /* 070C */ - {0x070E,0x070E,0x070E}, {0x070F,0x070F,0x070F}, /* 070E */ - {0x0710,0x0710,0x0710}, {0x0711,0x0711,0x0711}, /* 0710 */ - {0x0712,0x0712,0x0712}, {0x0713,0x0713,0x0713}, /* 0712 */ - {0x0714,0x0714,0x0714}, {0x0715,0x0715,0x0715}, /* 0714 */ - {0x0716,0x0716,0x0716}, {0x0717,0x0717,0x0717}, /* 0716 */ - {0x0718,0x0718,0x0718}, {0x0719,0x0719,0x0719}, /* 0718 */ - {0x071A,0x071A,0x071A}, {0x071B,0x071B,0x071B}, /* 071A */ - {0x071C,0x071C,0x071C}, {0x071D,0x071D,0x071D}, /* 071C */ - {0x071E,0x071E,0x071E}, {0x071F,0x071F,0x071F}, /* 071E */ - {0x0720,0x0720,0x0720}, {0x0721,0x0721,0x0721}, /* 0720 */ - {0x0722,0x0722,0x0722}, {0x0723,0x0723,0x0723}, /* 0722 */ - {0x0724,0x0724,0x0724}, {0x0725,0x0725,0x0725}, /* 0724 */ - {0x0726,0x0726,0x0726}, {0x0727,0x0727,0x0727}, /* 0726 */ - {0x0728,0x0728,0x0728}, {0x0729,0x0729,0x0729}, /* 0728 */ - {0x072A,0x072A,0x072A}, {0x072B,0x072B,0x072B}, /* 072A */ - {0x072C,0x072C,0x072C}, {0x072D,0x072D,0x072D}, /* 072C */ - {0x072E,0x072E,0x072E}, {0x072F,0x072F,0x072F}, /* 072E */ - {0x0730,0x0730,0x0730}, {0x0731,0x0731,0x0731}, /* 0730 */ - {0x0732,0x0732,0x0732}, {0x0733,0x0733,0x0733}, /* 0732 */ - {0x0734,0x0734,0x0734}, {0x0735,0x0735,0x0735}, /* 0734 */ - {0x0736,0x0736,0x0736}, {0x0737,0x0737,0x0737}, /* 0736 */ - {0x0738,0x0738,0x0738}, {0x0739,0x0739,0x0739}, /* 0738 */ - {0x073A,0x073A,0x073A}, {0x073B,0x073B,0x073B}, /* 073A */ - {0x073C,0x073C,0x073C}, {0x073D,0x073D,0x073D}, /* 073C */ - {0x073E,0x073E,0x073E}, {0x073F,0x073F,0x073F}, /* 073E */ - {0x0740,0x0740,0x0740}, {0x0741,0x0741,0x0741}, /* 0740 */ - {0x0742,0x0742,0x0742}, {0x0743,0x0743,0x0743}, /* 0742 */ - {0x0744,0x0744,0x0744}, {0x0745,0x0745,0x0745}, /* 0744 */ - {0x0746,0x0746,0x0746}, {0x0747,0x0747,0x0747}, /* 0746 */ - {0x0748,0x0748,0x0748}, {0x0749,0x0749,0x0749}, /* 0748 */ - {0x074A,0x074A,0x074A}, {0x074B,0x074B,0x074B}, /* 074A */ - {0x074C,0x074C,0x074C}, {0x074D,0x074D,0x074D}, /* 074C */ - {0x074E,0x074E,0x074E}, {0x074F,0x074F,0x074F}, /* 074E */ - {0x0750,0x0750,0x0750}, {0x0751,0x0751,0x0751}, /* 0750 */ - {0x0752,0x0752,0x0752}, {0x0753,0x0753,0x0753}, /* 0752 */ - {0x0754,0x0754,0x0754}, {0x0755,0x0755,0x0755}, /* 0754 */ - {0x0756,0x0756,0x0756}, {0x0757,0x0757,0x0757}, /* 0756 */ - {0x0758,0x0758,0x0758}, {0x0759,0x0759,0x0759}, /* 0758 */ - {0x075A,0x075A,0x075A}, {0x075B,0x075B,0x075B}, /* 075A */ - {0x075C,0x075C,0x075C}, {0x075D,0x075D,0x075D}, /* 075C */ - {0x075E,0x075E,0x075E}, {0x075F,0x075F,0x075F}, /* 075E */ - {0x0760,0x0760,0x0760}, {0x0761,0x0761,0x0761}, /* 0760 */ - {0x0762,0x0762,0x0762}, {0x0763,0x0763,0x0763}, /* 0762 */ - {0x0764,0x0764,0x0764}, {0x0765,0x0765,0x0765}, /* 0764 */ - {0x0766,0x0766,0x0766}, {0x0767,0x0767,0x0767}, /* 0766 */ - {0x0768,0x0768,0x0768}, {0x0769,0x0769,0x0769}, /* 0768 */ - {0x076A,0x076A,0x076A}, {0x076B,0x076B,0x076B}, /* 076A */ - {0x076C,0x076C,0x076C}, {0x076D,0x076D,0x076D}, /* 076C */ - {0x076E,0x076E,0x076E}, {0x076F,0x076F,0x076F}, /* 076E */ - {0x0770,0x0770,0x0770}, {0x0771,0x0771,0x0771}, /* 0770 */ - {0x0772,0x0772,0x0772}, {0x0773,0x0773,0x0773}, /* 0772 */ - {0x0774,0x0774,0x0774}, {0x0775,0x0775,0x0775}, /* 0774 */ - {0x0776,0x0776,0x0776}, {0x0777,0x0777,0x0777}, /* 0776 */ - {0x0778,0x0778,0x0778}, {0x0779,0x0779,0x0779}, /* 0778 */ - {0x077A,0x077A,0x077A}, {0x077B,0x077B,0x077B}, /* 077A */ - {0x077C,0x077C,0x077C}, {0x077D,0x077D,0x077D}, /* 077C */ - {0x077E,0x077E,0x077E}, {0x077F,0x077F,0x077F}, /* 077E */ - {0x0780,0x0780,0x0780}, {0x0781,0x0781,0x0781}, /* 0780 */ - {0x0782,0x0782,0x0782}, {0x0783,0x0783,0x0783}, /* 0782 */ - {0x0784,0x0784,0x0784}, {0x0785,0x0785,0x0785}, /* 0784 */ - {0x0786,0x0786,0x0786}, {0x0787,0x0787,0x0787}, /* 0786 */ - {0x0788,0x0788,0x0788}, {0x0789,0x0789,0x0789}, /* 0788 */ - {0x078A,0x078A,0x078A}, {0x078B,0x078B,0x078B}, /* 078A */ - {0x078C,0x078C,0x078C}, {0x078D,0x078D,0x078D}, /* 078C */ - {0x078E,0x078E,0x078E}, {0x078F,0x078F,0x078F}, /* 078E */ - {0x0790,0x0790,0x0790}, {0x0791,0x0791,0x0791}, /* 0790 */ - {0x0792,0x0792,0x0792}, {0x0793,0x0793,0x0793}, /* 0792 */ - {0x0794,0x0794,0x0794}, {0x0795,0x0795,0x0795}, /* 0794 */ - {0x0796,0x0796,0x0796}, {0x0797,0x0797,0x0797}, /* 0796 */ - {0x0798,0x0798,0x0798}, {0x0799,0x0799,0x0799}, /* 0798 */ - {0x079A,0x079A,0x079A}, {0x079B,0x079B,0x079B}, /* 079A */ - {0x079C,0x079C,0x079C}, {0x079D,0x079D,0x079D}, /* 079C */ - {0x079E,0x079E,0x079E}, {0x079F,0x079F,0x079F}, /* 079E */ - {0x07A0,0x07A0,0x07A0}, {0x07A1,0x07A1,0x07A1}, /* 07A0 */ - {0x07A2,0x07A2,0x07A2}, {0x07A3,0x07A3,0x07A3}, /* 07A2 */ - {0x07A4,0x07A4,0x07A4}, {0x07A5,0x07A5,0x07A5}, /* 07A4 */ - {0x07A6,0x07A6,0x07A6}, {0x07A7,0x07A7,0x07A7}, /* 07A6 */ - {0x07A8,0x07A8,0x07A8}, {0x07A9,0x07A9,0x07A9}, /* 07A8 */ - {0x07AA,0x07AA,0x07AA}, {0x07AB,0x07AB,0x07AB}, /* 07AA */ - {0x07AC,0x07AC,0x07AC}, {0x07AD,0x07AD,0x07AD}, /* 07AC */ - {0x07AE,0x07AE,0x07AE}, {0x07AF,0x07AF,0x07AF}, /* 07AE */ - {0x07B0,0x07B0,0x07B0}, {0x07B1,0x07B1,0x07B1}, /* 07B0 */ - {0x07B2,0x07B2,0x07B2}, {0x07B3,0x07B3,0x07B3}, /* 07B2 */ - {0x07B4,0x07B4,0x07B4}, {0x07B5,0x07B5,0x07B5}, /* 07B4 */ - {0x07B6,0x07B6,0x07B6}, {0x07B7,0x07B7,0x07B7}, /* 07B6 */ - {0x07B8,0x07B8,0x07B8}, {0x07B9,0x07B9,0x07B9}, /* 07B8 */ - {0x07BA,0x07BA,0x07BA}, {0x07BB,0x07BB,0x07BB}, /* 07BA */ - {0x07BC,0x07BC,0x07BC}, {0x07BD,0x07BD,0x07BD}, /* 07BC */ - {0x07BE,0x07BE,0x07BE}, {0x07BF,0x07BF,0x07BF}, /* 07BE */ - {0x07C0,0x07C0,0x07C0}, {0x07C1,0x07C1,0x07C1}, /* 07C0 */ - {0x07C2,0x07C2,0x07C2}, {0x07C3,0x07C3,0x07C3}, /* 07C2 */ - {0x07C4,0x07C4,0x07C4}, {0x07C5,0x07C5,0x07C5}, /* 07C4 */ - {0x07C6,0x07C6,0x07C6}, {0x07C7,0x07C7,0x07C7}, /* 07C6 */ - {0x07C8,0x07C8,0x07C8}, {0x07C9,0x07C9,0x07C9}, /* 07C8 */ - {0x07CA,0x07CA,0x07CA}, {0x07CB,0x07CB,0x07CB}, /* 07CA */ - {0x07CC,0x07CC,0x07CC}, {0x07CD,0x07CD,0x07CD}, /* 07CC */ - {0x07CE,0x07CE,0x07CE}, {0x07CF,0x07CF,0x07CF}, /* 07CE */ - {0x07D0,0x07D0,0x07D0}, {0x07D1,0x07D1,0x07D1}, /* 07D0 */ - {0x07D2,0x07D2,0x07D2}, {0x07D3,0x07D3,0x07D3}, /* 07D2 */ - {0x07D4,0x07D4,0x07D4}, {0x07D5,0x07D5,0x07D5}, /* 07D4 */ - {0x07D6,0x07D6,0x07D6}, {0x07D7,0x07D7,0x07D7}, /* 07D6 */ - {0x07D8,0x07D8,0x07D8}, {0x07D9,0x07D9,0x07D9}, /* 07D8 */ - {0x07DA,0x07DA,0x07DA}, {0x07DB,0x07DB,0x07DB}, /* 07DA */ - {0x07DC,0x07DC,0x07DC}, {0x07DD,0x07DD,0x07DD}, /* 07DC */ - {0x07DE,0x07DE,0x07DE}, {0x07DF,0x07DF,0x07DF}, /* 07DE */ - {0x07E0,0x07E0,0x07E0}, {0x07E1,0x07E1,0x07E1}, /* 07E0 */ - {0x07E2,0x07E2,0x07E2}, {0x07E3,0x07E3,0x07E3}, /* 07E2 */ - {0x07E4,0x07E4,0x07E4}, {0x07E5,0x07E5,0x07E5}, /* 07E4 */ - {0x07E6,0x07E6,0x07E6}, {0x07E7,0x07E7,0x07E7}, /* 07E6 */ - {0x07E8,0x07E8,0x07E8}, {0x07E9,0x07E9,0x07E9}, /* 07E8 */ - {0x07EA,0x07EA,0x07EA}, {0x07EB,0x07EB,0x07EB}, /* 07EA */ - {0x07EC,0x07EC,0x07EC}, {0x07ED,0x07ED,0x07ED}, /* 07EC */ - {0x07EE,0x07EE,0x07EE}, {0x07EF,0x07EF,0x07EF}, /* 07EE */ - {0x07F0,0x07F0,0x07F0}, {0x07F1,0x07F1,0x07F1}, /* 07F0 */ - {0x07F2,0x07F2,0x07F2}, {0x07F3,0x07F3,0x07F3}, /* 07F2 */ - {0x07F4,0x07F4,0x07F4}, {0x07F5,0x07F5,0x07F5}, /* 07F4 */ - {0x07F6,0x07F6,0x07F6}, {0x07F7,0x07F7,0x07F7}, /* 07F6 */ - {0x07F8,0x07F8,0x07F8}, {0x07F9,0x07F9,0x07F9}, /* 07F8 */ - {0x07FA,0x07FA,0x07FA}, {0x07FB,0x07FB,0x07FB}, /* 07FA */ - {0x07FC,0x07FC,0x07FC}, {0x07FD,0x07FD,0x07FD}, /* 07FC */ - {0x07FE,0x07FE,0x07FE}, {0x07FF,0x07FF,0x07FF} /* 07FE */ -}; - -static MY_UNICASE_CHARACTER plane1E[]={ - {0x1E00,0x1E01,0x0041}, {0x1E00,0x1E01,0x0041}, - {0x1E02,0x1E03,0x0042}, {0x1E02,0x1E03,0x0042}, - {0x1E04,0x1E05,0x0042}, {0x1E04,0x1E05,0x0042}, - {0x1E06,0x1E07,0x0042}, {0x1E06,0x1E07,0x0042}, - {0x1E08,0x1E09,0x0043}, {0x1E08,0x1E09,0x0043}, - {0x1E0A,0x1E0B,0x0044}, {0x1E0A,0x1E0B,0x0044}, - {0x1E0C,0x1E0D,0x0044}, {0x1E0C,0x1E0D,0x0044}, - {0x1E0E,0x1E0F,0x0044}, {0x1E0E,0x1E0F,0x0044}, - {0x1E10,0x1E11,0x0044}, {0x1E10,0x1E11,0x0044}, - {0x1E12,0x1E13,0x0044}, {0x1E12,0x1E13,0x0044}, - {0x1E14,0x1E15,0x0045}, {0x1E14,0x1E15,0x0045}, - {0x1E16,0x1E17,0x0045}, {0x1E16,0x1E17,0x0045}, - {0x1E18,0x1E19,0x0045}, {0x1E18,0x1E19,0x0045}, - {0x1E1A,0x1E1B,0x0045}, {0x1E1A,0x1E1B,0x0045}, - {0x1E1C,0x1E1D,0x0045}, {0x1E1C,0x1E1D,0x0045}, - {0x1E1E,0x1E1F,0x0046}, {0x1E1E,0x1E1F,0x0046}, - {0x1E20,0x1E21,0x0047}, {0x1E20,0x1E21,0x0047}, - {0x1E22,0x1E23,0x0048}, {0x1E22,0x1E23,0x0048}, - {0x1E24,0x1E25,0x0048}, {0x1E24,0x1E25,0x0048}, - {0x1E26,0x1E27,0x0048}, {0x1E26,0x1E27,0x0048}, - {0x1E28,0x1E29,0x0048}, {0x1E28,0x1E29,0x0048}, - {0x1E2A,0x1E2B,0x0048}, {0x1E2A,0x1E2B,0x0048}, - {0x1E2C,0x1E2D,0x0049}, {0x1E2C,0x1E2D,0x0049}, - {0x1E2E,0x1E2F,0x0049}, {0x1E2E,0x1E2F,0x0049}, - {0x1E30,0x1E31,0x004B}, {0x1E30,0x1E31,0x004B}, - {0x1E32,0x1E33,0x004B}, {0x1E32,0x1E33,0x004B}, - {0x1E34,0x1E35,0x004B}, {0x1E34,0x1E35,0x004B}, - {0x1E36,0x1E37,0x004C}, {0x1E36,0x1E37,0x004C}, - {0x1E38,0x1E39,0x004C}, {0x1E38,0x1E39,0x004C}, - {0x1E3A,0x1E3B,0x004C}, {0x1E3A,0x1E3B,0x004C}, - {0x1E3C,0x1E3D,0x004C}, {0x1E3C,0x1E3D,0x004C}, - {0x1E3E,0x1E3F,0x004D}, {0x1E3E,0x1E3F,0x004D}, - {0x1E40,0x1E41,0x004D}, {0x1E40,0x1E41,0x004D}, - {0x1E42,0x1E43,0x004D}, {0x1E42,0x1E43,0x004D}, - {0x1E44,0x1E45,0x004E}, {0x1E44,0x1E45,0x004E}, - {0x1E46,0x1E47,0x004E}, {0x1E46,0x1E47,0x004E}, - {0x1E48,0x1E49,0x004E}, {0x1E48,0x1E49,0x004E}, - {0x1E4A,0x1E4B,0x004E}, {0x1E4A,0x1E4B,0x004E}, - {0x1E4C,0x1E4D,0x004F}, {0x1E4C,0x1E4D,0x004F}, - {0x1E4E,0x1E4F,0x004F}, {0x1E4E,0x1E4F,0x004F}, - {0x1E50,0x1E51,0x004F}, {0x1E50,0x1E51,0x004F}, - {0x1E52,0x1E53,0x004F}, {0x1E52,0x1E53,0x004F}, - {0x1E54,0x1E55,0x0050}, {0x1E54,0x1E55,0x0050}, - {0x1E56,0x1E57,0x0050}, {0x1E56,0x1E57,0x0050}, - {0x1E58,0x1E59,0x0052}, {0x1E58,0x1E59,0x0052}, - {0x1E5A,0x1E5B,0x0052}, {0x1E5A,0x1E5B,0x0052}, - {0x1E5C,0x1E5D,0x0052}, {0x1E5C,0x1E5D,0x0052}, - {0x1E5E,0x1E5F,0x0052}, {0x1E5E,0x1E5F,0x0052}, - {0x1E60,0x1E61,0x0053}, {0x1E60,0x1E61,0x0053}, - {0x1E62,0x1E63,0x0053}, {0x1E62,0x1E63,0x0053}, - {0x1E64,0x1E65,0x0053}, {0x1E64,0x1E65,0x0053}, - {0x1E66,0x1E67,0x0053}, {0x1E66,0x1E67,0x0053}, - {0x1E68,0x1E69,0x0053}, {0x1E68,0x1E69,0x0053}, - {0x1E6A,0x1E6B,0x0054}, {0x1E6A,0x1E6B,0x0054}, - {0x1E6C,0x1E6D,0x0054}, {0x1E6C,0x1E6D,0x0054}, - {0x1E6E,0x1E6F,0x0054}, {0x1E6E,0x1E6F,0x0054}, - {0x1E70,0x1E71,0x0054}, {0x1E70,0x1E71,0x0054}, - {0x1E72,0x1E73,0x0055}, {0x1E72,0x1E73,0x0055}, - {0x1E74,0x1E75,0x0055}, {0x1E74,0x1E75,0x0055}, - {0x1E76,0x1E77,0x0055}, {0x1E76,0x1E77,0x0055}, - {0x1E78,0x1E79,0x0055}, {0x1E78,0x1E79,0x0055}, - {0x1E7A,0x1E7B,0x0055}, {0x1E7A,0x1E7B,0x0055}, - {0x1E7C,0x1E7D,0x0056}, {0x1E7C,0x1E7D,0x0056}, - {0x1E7E,0x1E7F,0x0056}, {0x1E7E,0x1E7F,0x0056}, - {0x1E80,0x1E81,0x0057}, {0x1E80,0x1E81,0x0057}, - {0x1E82,0x1E83,0x0057}, {0x1E82,0x1E83,0x0057}, - {0x1E84,0x1E85,0x0057}, {0x1E84,0x1E85,0x0057}, - {0x1E86,0x1E87,0x0057}, {0x1E86,0x1E87,0x0057}, - {0x1E88,0x1E89,0x0057}, {0x1E88,0x1E89,0x0057}, - {0x1E8A,0x1E8B,0x0058}, {0x1E8A,0x1E8B,0x0058}, - {0x1E8C,0x1E8D,0x0058}, {0x1E8C,0x1E8D,0x0058}, - {0x1E8E,0x1E8F,0x0059}, {0x1E8E,0x1E8F,0x0059}, - {0x1E90,0x1E91,0x005A}, {0x1E90,0x1E91,0x005A}, - {0x1E92,0x1E93,0x005A}, {0x1E92,0x1E93,0x005A}, - {0x1E94,0x1E95,0x005A}, {0x1E94,0x1E95,0x005A}, - {0x1E96,0x1E96,0x0048}, {0x1E97,0x1E97,0x0054}, - {0x1E98,0x1E98,0x0057}, {0x1E99,0x1E99,0x0059}, - {0x1E9A,0x1E9A,0x1E9A}, {0x1E60,0x1E9B,0x0053}, - {0x1E9C,0x1E9C,0x1E9C}, {0x1E9D,0x1E9D,0x1E9D}, - {0x1E9E,0x1E9E,0x1E9E}, {0x1E9F,0x1E9F,0x1E9F}, - {0x1EA0,0x1EA1,0x0041}, {0x1EA0,0x1EA1,0x0041}, - {0x1EA2,0x1EA3,0x0041}, {0x1EA2,0x1EA3,0x0041}, - {0x1EA4,0x1EA5,0x0041}, {0x1EA4,0x1EA5,0x0041}, - {0x1EA6,0x1EA7,0x0041}, {0x1EA6,0x1EA7,0x0041}, - {0x1EA8,0x1EA9,0x0041}, {0x1EA8,0x1EA9,0x0041}, - {0x1EAA,0x1EAB,0x0041}, {0x1EAA,0x1EAB,0x0041}, - {0x1EAC,0x1EAD,0x0041}, {0x1EAC,0x1EAD,0x0041}, - {0x1EAE,0x1EAF,0x0041}, {0x1EAE,0x1EAF,0x0041}, - {0x1EB0,0x1EB1,0x0041}, {0x1EB0,0x1EB1,0x0041}, - {0x1EB2,0x1EB3,0x0041}, {0x1EB2,0x1EB3,0x0041}, - {0x1EB4,0x1EB5,0x0041}, {0x1EB4,0x1EB5,0x0041}, - {0x1EB6,0x1EB7,0x0041}, {0x1EB6,0x1EB7,0x0041}, - {0x1EB8,0x1EB9,0x0045}, {0x1EB8,0x1EB9,0x0045}, - {0x1EBA,0x1EBB,0x0045}, {0x1EBA,0x1EBB,0x0045}, - {0x1EBC,0x1EBD,0x0045}, {0x1EBC,0x1EBD,0x0045}, - {0x1EBE,0x1EBF,0x0045}, {0x1EBE,0x1EBF,0x0045}, - {0x1EC0,0x1EC1,0x0045}, {0x1EC0,0x1EC1,0x0045}, - {0x1EC2,0x1EC3,0x0045}, {0x1EC2,0x1EC3,0x0045}, - {0x1EC4,0x1EC5,0x0045}, {0x1EC4,0x1EC5,0x0045}, - {0x1EC6,0x1EC7,0x0045}, {0x1EC6,0x1EC7,0x0045}, - {0x1EC8,0x1EC9,0x0049}, {0x1EC8,0x1EC9,0x0049}, - {0x1ECA,0x1ECB,0x0049}, {0x1ECA,0x1ECB,0x0049}, - {0x1ECC,0x1ECD,0x004F}, {0x1ECC,0x1ECD,0x004F}, - {0x1ECE,0x1ECF,0x004F}, {0x1ECE,0x1ECF,0x004F}, - {0x1ED0,0x1ED1,0x004F}, {0x1ED0,0x1ED1,0x004F}, - {0x1ED2,0x1ED3,0x004F}, {0x1ED2,0x1ED3,0x004F}, - {0x1ED4,0x1ED5,0x004F}, {0x1ED4,0x1ED5,0x004F}, - {0x1ED6,0x1ED7,0x004F}, {0x1ED6,0x1ED7,0x004F}, - {0x1ED8,0x1ED9,0x004F}, {0x1ED8,0x1ED9,0x004F}, - {0x1EDA,0x1EDB,0x004F}, {0x1EDA,0x1EDB,0x004F}, - {0x1EDC,0x1EDD,0x004F}, {0x1EDC,0x1EDD,0x004F}, - {0x1EDE,0x1EDF,0x004F}, {0x1EDE,0x1EDF,0x004F}, - {0x1EE0,0x1EE1,0x004F}, {0x1EE0,0x1EE1,0x004F}, - {0x1EE2,0x1EE3,0x004F}, {0x1EE2,0x1EE3,0x004F}, - {0x1EE4,0x1EE5,0x0055}, {0x1EE4,0x1EE5,0x0055}, - {0x1EE6,0x1EE7,0x0055}, {0x1EE6,0x1EE7,0x0055}, - {0x1EE8,0x1EE9,0x0055}, {0x1EE8,0x1EE9,0x0055}, - {0x1EEA,0x1EEB,0x0055}, {0x1EEA,0x1EEB,0x0055}, - {0x1EEC,0x1EED,0x0055}, {0x1EEC,0x1EED,0x0055}, - {0x1EEE,0x1EEF,0x0055}, {0x1EEE,0x1EEF,0x0055}, - {0x1EF0,0x1EF1,0x0055}, {0x1EF0,0x1EF1,0x0055}, - {0x1EF2,0x1EF3,0x0059}, {0x1EF2,0x1EF3,0x0059}, - {0x1EF4,0x1EF5,0x0059}, {0x1EF4,0x1EF5,0x0059}, - {0x1EF6,0x1EF7,0x0059}, {0x1EF6,0x1EF7,0x0059}, - {0x1EF8,0x1EF9,0x0059}, {0x1EF8,0x1EF9,0x0059}, - {0x1EFA,0x1EFA,0x1EFA}, {0x1EFB,0x1EFB,0x1EFB}, - {0x1EFC,0x1EFC,0x1EFC}, {0x1EFD,0x1EFD,0x1EFD}, - {0x1EFE,0x1EFE,0x1EFE}, {0x1EFF,0x1EFF,0x1EFF} -}; - -static MY_UNICASE_CHARACTER plane1F[]={ - {0x1F08,0x1F00,0x0391}, {0x1F09,0x1F01,0x0391}, - {0x1F0A,0x1F02,0x0391}, {0x1F0B,0x1F03,0x0391}, - {0x1F0C,0x1F04,0x0391}, {0x1F0D,0x1F05,0x0391}, - {0x1F0E,0x1F06,0x0391}, {0x1F0F,0x1F07,0x0391}, - {0x1F08,0x1F00,0x0391}, {0x1F09,0x1F01,0x0391}, - {0x1F0A,0x1F02,0x0391}, {0x1F0B,0x1F03,0x0391}, - {0x1F0C,0x1F04,0x0391}, {0x1F0D,0x1F05,0x0391}, - {0x1F0E,0x1F06,0x0391}, {0x1F0F,0x1F07,0x0391}, - {0x1F18,0x1F10,0x0395}, {0x1F19,0x1F11,0x0395}, - {0x1F1A,0x1F12,0x0395}, {0x1F1B,0x1F13,0x0395}, - {0x1F1C,0x1F14,0x0395}, {0x1F1D,0x1F15,0x0395}, - {0x1F16,0x1F16,0x1F16}, {0x1F17,0x1F17,0x1F17}, - {0x1F18,0x1F10,0x0395}, {0x1F19,0x1F11,0x0395}, - {0x1F1A,0x1F12,0x0395}, {0x1F1B,0x1F13,0x0395}, - {0x1F1C,0x1F14,0x0395}, {0x1F1D,0x1F15,0x0395}, - {0x1F1E,0x1F1E,0x1F1E}, {0x1F1F,0x1F1F,0x1F1F}, - {0x1F28,0x1F20,0x0397}, {0x1F29,0x1F21,0x0397}, - {0x1F2A,0x1F22,0x0397}, {0x1F2B,0x1F23,0x0397}, - {0x1F2C,0x1F24,0x0397}, {0x1F2D,0x1F25,0x0397}, - {0x1F2E,0x1F26,0x0397}, {0x1F2F,0x1F27,0x0397}, - {0x1F28,0x1F20,0x0397}, {0x1F29,0x1F21,0x0397}, - {0x1F2A,0x1F22,0x0397}, {0x1F2B,0x1F23,0x0397}, - {0x1F2C,0x1F24,0x0397}, {0x1F2D,0x1F25,0x0397}, - {0x1F2E,0x1F26,0x0397}, {0x1F2F,0x1F27,0x0397}, - {0x1F38,0x1F30,0x0399}, {0x1F39,0x1F31,0x0399}, - {0x1F3A,0x1F32,0x0399}, {0x1F3B,0x1F33,0x0399}, - {0x1F3C,0x1F34,0x0399}, {0x1F3D,0x1F35,0x0399}, - {0x1F3E,0x1F36,0x0399}, {0x1F3F,0x1F37,0x0399}, - {0x1F38,0x1F30,0x0399}, {0x1F39,0x1F31,0x0399}, - {0x1F3A,0x1F32,0x0399}, {0x1F3B,0x1F33,0x0399}, - {0x1F3C,0x1F34,0x0399}, {0x1F3D,0x1F35,0x0399}, - {0x1F3E,0x1F36,0x0399}, {0x1F3F,0x1F37,0x0399}, - {0x1F48,0x1F40,0x039F}, {0x1F49,0x1F41,0x039F}, - {0x1F4A,0x1F42,0x039F}, {0x1F4B,0x1F43,0x039F}, - {0x1F4C,0x1F44,0x039F}, {0x1F4D,0x1F45,0x039F}, - {0x1F46,0x1F46,0x1F46}, {0x1F47,0x1F47,0x1F47}, - {0x1F48,0x1F40,0x039F}, {0x1F49,0x1F41,0x039F}, - {0x1F4A,0x1F42,0x039F}, {0x1F4B,0x1F43,0x039F}, - {0x1F4C,0x1F44,0x039F}, {0x1F4D,0x1F45,0x039F}, - {0x1F4E,0x1F4E,0x1F4E}, {0x1F4F,0x1F4F,0x1F4F}, - {0x1F50,0x1F50,0x03A5}, {0x1F59,0x1F51,0x03A5}, - {0x1F52,0x1F52,0x03A5}, {0x1F5B,0x1F53,0x03A5}, - {0x1F54,0x1F54,0x03A5}, {0x1F5D,0x1F55,0x03A5}, - {0x1F56,0x1F56,0x03A5}, {0x1F5F,0x1F57,0x03A5}, - {0x1F58,0x1F58,0x1F58}, {0x1F59,0x1F51,0x03A5}, - {0x1F5A,0x1F5A,0x1F5A}, {0x1F5B,0x1F53,0x03A5}, - {0x1F5C,0x1F5C,0x1F5C}, {0x1F5D,0x1F55,0x03A5}, - {0x1F5E,0x1F5E,0x1F5E}, {0x1F5F,0x1F57,0x03A5}, - {0x1F68,0x1F60,0x03A9}, {0x1F69,0x1F61,0x03A9}, - {0x1F6A,0x1F62,0x03A9}, {0x1F6B,0x1F63,0x03A9}, - {0x1F6C,0x1F64,0x03A9}, {0x1F6D,0x1F65,0x03A9}, - {0x1F6E,0x1F66,0x03A9}, {0x1F6F,0x1F67,0x03A9}, - {0x1F68,0x1F60,0x03A9}, {0x1F69,0x1F61,0x03A9}, - {0x1F6A,0x1F62,0x03A9}, {0x1F6B,0x1F63,0x03A9}, - {0x1F6C,0x1F64,0x03A9}, {0x1F6D,0x1F65,0x03A9}, - {0x1F6E,0x1F66,0x03A9}, {0x1F6F,0x1F67,0x03A9}, - {0x1FBA,0x1F70,0x0391}, {0x1FBB,0x1F71,0x1FBB}, - {0x1FC8,0x1F72,0x0395}, {0x1FC9,0x1F73,0x1FC9}, - {0x1FCA,0x1F74,0x0397}, {0x1FCB,0x1F75,0x1FCB}, - {0x1FDA,0x1F76,0x0399}, {0x1FDB,0x1F77,0x1FDB}, - {0x1FF8,0x1F78,0x039F}, {0x1FF9,0x1F79,0x1FF9}, - {0x1FEA,0x1F7A,0x03A5}, {0x1FEB,0x1F7B,0x1FEB}, - {0x1FFA,0x1F7C,0x03A9}, {0x1FFB,0x1F7D,0x1FFB}, - {0x1F7E,0x1F7E,0x1F7E}, {0x1F7F,0x1F7F,0x1F7F}, - {0x1F88,0x1F80,0x0391}, {0x1F89,0x1F81,0x0391}, - {0x1F8A,0x1F82,0x0391}, {0x1F8B,0x1F83,0x0391}, - {0x1F8C,0x1F84,0x0391}, {0x1F8D,0x1F85,0x0391}, - {0x1F8E,0x1F86,0x0391}, {0x1F8F,0x1F87,0x0391}, - {0x1F88,0x1F80,0x0391}, {0x1F89,0x1F81,0x0391}, - {0x1F8A,0x1F82,0x0391}, {0x1F8B,0x1F83,0x0391}, - {0x1F8C,0x1F84,0x0391}, {0x1F8D,0x1F85,0x0391}, - {0x1F8E,0x1F86,0x0391}, {0x1F8F,0x1F87,0x0391}, - {0x1F98,0x1F90,0x0397}, {0x1F99,0x1F91,0x0397}, - {0x1F9A,0x1F92,0x0397}, {0x1F9B,0x1F93,0x0397}, - {0x1F9C,0x1F94,0x0397}, {0x1F9D,0x1F95,0x0397}, - {0x1F9E,0x1F96,0x0397}, {0x1F9F,0x1F97,0x0397}, - {0x1F98,0x1F90,0x0397}, {0x1F99,0x1F91,0x0397}, - {0x1F9A,0x1F92,0x0397}, {0x1F9B,0x1F93,0x0397}, - {0x1F9C,0x1F94,0x0397}, {0x1F9D,0x1F95,0x0397}, - {0x1F9E,0x1F96,0x0397}, {0x1F9F,0x1F97,0x0397}, - {0x1FA8,0x1FA0,0x03A9}, {0x1FA9,0x1FA1,0x03A9}, - {0x1FAA,0x1FA2,0x03A9}, {0x1FAB,0x1FA3,0x03A9}, - {0x1FAC,0x1FA4,0x03A9}, {0x1FAD,0x1FA5,0x03A9}, - {0x1FAE,0x1FA6,0x03A9}, {0x1FAF,0x1FA7,0x03A9}, - {0x1FA8,0x1FA0,0x03A9}, {0x1FA9,0x1FA1,0x03A9}, - {0x1FAA,0x1FA2,0x03A9}, {0x1FAB,0x1FA3,0x03A9}, - {0x1FAC,0x1FA4,0x03A9}, {0x1FAD,0x1FA5,0x03A9}, - {0x1FAE,0x1FA6,0x03A9}, {0x1FAF,0x1FA7,0x03A9}, - {0x1FB8,0x1FB0,0x0391}, {0x1FB9,0x1FB1,0x0391}, - {0x1FB2,0x1FB2,0x0391}, {0x1FBC,0x1FB3,0x0391}, - {0x1FB4,0x1FB4,0x0391}, {0x1FB5,0x1FB5,0x1FB5}, - {0x1FB6,0x1FB6,0x0391}, {0x1FB7,0x1FB7,0x0391}, - {0x1FB8,0x1FB0,0x0391}, {0x1FB9,0x1FB1,0x0391}, - {0x1FBA,0x1F70,0x0391}, {0x1FBB,0x1F71,0x1FBB}, - {0x1FBC,0x1FB3,0x0391}, {0x1FBD,0x1FBD,0x1FBD}, - {0x0399,0x1FBE,0x0399}, {0x1FBF,0x1FBF,0x1FBF}, - {0x1FC0,0x1FC0,0x1FC0}, {0x1FC1,0x1FC1,0x1FC1}, - {0x1FC2,0x1FC2,0x0397}, {0x1FCC,0x1FC3,0x0397}, - {0x1FC4,0x1FC4,0x0397}, {0x1FC5,0x1FC5,0x1FC5}, - {0x1FC6,0x1FC6,0x0397}, {0x1FC7,0x1FC7,0x0397}, - {0x1FC8,0x1F72,0x0395}, {0x1FC9,0x1F73,0x1FC9}, - {0x1FCA,0x1F74,0x0397}, {0x1FCB,0x1F75,0x1FCB}, - {0x1FCC,0x1FC3,0x0397}, {0x1FCD,0x1FCD,0x1FCD}, - {0x1FCE,0x1FCE,0x1FCE}, {0x1FCF,0x1FCF,0x1FCF}, - {0x1FD8,0x1FD0,0x0399}, {0x1FD9,0x1FD1,0x0399}, - {0x1FD2,0x1FD2,0x0399}, {0x1FD3,0x1FD3,0x1FD3}, - {0x1FD4,0x1FD4,0x1FD4}, {0x1FD5,0x1FD5,0x1FD5}, - {0x1FD6,0x1FD6,0x0399}, {0x1FD7,0x1FD7,0x0399}, - {0x1FD8,0x1FD0,0x0399}, {0x1FD9,0x1FD1,0x0399}, - {0x1FDA,0x1F76,0x0399}, {0x1FDB,0x1F77,0x1FDB}, - {0x1FDC,0x1FDC,0x1FDC}, {0x1FDD,0x1FDD,0x1FDD}, - {0x1FDE,0x1FDE,0x1FDE}, {0x1FDF,0x1FDF,0x1FDF}, - {0x1FE8,0x1FE0,0x03A5}, {0x1FE9,0x1FE1,0x03A5}, - {0x1FE2,0x1FE2,0x03A5}, {0x1FE3,0x1FE3,0x1FE3}, - {0x1FE4,0x1FE4,0x03A1}, {0x1FEC,0x1FE5,0x03A1}, - {0x1FE6,0x1FE6,0x03A5}, {0x1FE7,0x1FE7,0x03A5}, - {0x1FE8,0x1FE0,0x03A5}, {0x1FE9,0x1FE1,0x03A5}, - {0x1FEA,0x1F7A,0x03A5}, {0x1FEB,0x1F7B,0x1FEB}, - {0x1FEC,0x1FE5,0x03A1}, {0x1FED,0x1FED,0x1FED}, - {0x1FEE,0x1FEE,0x1FEE}, {0x1FEF,0x1FEF,0x1FEF}, - {0x1FF0,0x1FF0,0x1FF0}, {0x1FF1,0x1FF1,0x1FF1}, - {0x1FF2,0x1FF2,0x03A9}, {0x1FFC,0x1FF3,0x03A9}, - {0x1FF4,0x1FF4,0x03A9}, {0x1FF5,0x1FF5,0x1FF5}, - {0x1FF6,0x1FF6,0x03A9}, {0x1FF7,0x1FF7,0x03A9}, - {0x1FF8,0x1F78,0x039F}, {0x1FF9,0x1F79,0x1FF9}, - {0x1FFA,0x1F7C,0x03A9}, {0x1FFB,0x1F7D,0x1FFB}, - {0x1FFC,0x1FF3,0x03A9}, {0x1FFD,0x1FFD,0x1FFD}, - {0x1FFE,0x1FFE,0x1FFE}, {0x1FFF,0x1FFF,0x1FFF} -}; - -static MY_UNICASE_CHARACTER plane21[]={ - {0x2100,0x2100,0x2100}, {0x2101,0x2101,0x2101}, - {0x2102,0x2102,0x2102}, {0x2103,0x2103,0x2103}, - {0x2104,0x2104,0x2104}, {0x2105,0x2105,0x2105}, - {0x2106,0x2106,0x2106}, {0x2107,0x2107,0x2107}, - {0x2108,0x2108,0x2108}, {0x2109,0x2109,0x2109}, - {0x210A,0x210A,0x210A}, {0x210B,0x210B,0x210B}, - {0x210C,0x210C,0x210C}, {0x210D,0x210D,0x210D}, - {0x210E,0x210E,0x210E}, {0x210F,0x210F,0x210F}, - {0x2110,0x2110,0x2110}, {0x2111,0x2111,0x2111}, - {0x2112,0x2112,0x2112}, {0x2113,0x2113,0x2113}, - {0x2114,0x2114,0x2114}, {0x2115,0x2115,0x2115}, - {0x2116,0x2116,0x2116}, {0x2117,0x2117,0x2117}, - {0x2118,0x2118,0x2118}, {0x2119,0x2119,0x2119}, - {0x211A,0x211A,0x211A}, {0x211B,0x211B,0x211B}, - {0x211C,0x211C,0x211C}, {0x211D,0x211D,0x211D}, - {0x211E,0x211E,0x211E}, {0x211F,0x211F,0x211F}, - {0x2120,0x2120,0x2120}, {0x2121,0x2121,0x2121}, - {0x2122,0x2122,0x2122}, {0x2123,0x2123,0x2123}, - {0x2124,0x2124,0x2124}, {0x2125,0x2125,0x2125}, - {0x2126,0x03C9,0x2126}, {0x2127,0x2127,0x2127}, - {0x2128,0x2128,0x2128}, {0x2129,0x2129,0x2129}, - {0x212A,0x006B,0x212A}, {0x212B,0x00E5,0x212B}, - {0x212C,0x212C,0x212C}, {0x212D,0x212D,0x212D}, - {0x212E,0x212E,0x212E}, {0x212F,0x212F,0x212F}, - {0x2130,0x2130,0x2130}, {0x2131,0x2131,0x2131}, - {0x2132,0x2132,0x2132}, {0x2133,0x2133,0x2133}, - {0x2134,0x2134,0x2134}, {0x2135,0x2135,0x2135}, - {0x2136,0x2136,0x2136}, {0x2137,0x2137,0x2137}, - {0x2138,0x2138,0x2138}, {0x2139,0x2139,0x2139}, - {0x213A,0x213A,0x213A}, {0x213B,0x213B,0x213B}, - {0x213C,0x213C,0x213C}, {0x213D,0x213D,0x213D}, - {0x213E,0x213E,0x213E}, {0x213F,0x213F,0x213F}, - {0x2140,0x2140,0x2140}, {0x2141,0x2141,0x2141}, - {0x2142,0x2142,0x2142}, {0x2143,0x2143,0x2143}, - {0x2144,0x2144,0x2144}, {0x2145,0x2145,0x2145}, - {0x2146,0x2146,0x2146}, {0x2147,0x2147,0x2147}, - {0x2148,0x2148,0x2148}, {0x2149,0x2149,0x2149}, - {0x214A,0x214A,0x214A}, {0x214B,0x214B,0x214B}, - {0x214C,0x214C,0x214C}, {0x214D,0x214D,0x214D}, - {0x214E,0x214E,0x214E}, {0x214F,0x214F,0x214F}, - {0x2150,0x2150,0x2150}, {0x2151,0x2151,0x2151}, - {0x2152,0x2152,0x2152}, {0x2153,0x2153,0x2153}, - {0x2154,0x2154,0x2154}, {0x2155,0x2155,0x2155}, - {0x2156,0x2156,0x2156}, {0x2157,0x2157,0x2157}, - {0x2158,0x2158,0x2158}, {0x2159,0x2159,0x2159}, - {0x215A,0x215A,0x215A}, {0x215B,0x215B,0x215B}, - {0x215C,0x215C,0x215C}, {0x215D,0x215D,0x215D}, - {0x215E,0x215E,0x215E}, {0x215F,0x215F,0x215F}, - {0x2160,0x2170,0x2160}, {0x2161,0x2171,0x2161}, - {0x2162,0x2172,0x2162}, {0x2163,0x2173,0x2163}, - {0x2164,0x2174,0x2164}, {0x2165,0x2175,0x2165}, - {0x2166,0x2176,0x2166}, {0x2167,0x2177,0x2167}, - {0x2168,0x2178,0x2168}, {0x2169,0x2179,0x2169}, - {0x216A,0x217A,0x216A}, {0x216B,0x217B,0x216B}, - {0x216C,0x217C,0x216C}, {0x216D,0x217D,0x216D}, - {0x216E,0x217E,0x216E}, {0x216F,0x217F,0x216F}, - {0x2160,0x2170,0x2160}, {0x2161,0x2171,0x2161}, - {0x2162,0x2172,0x2162}, {0x2163,0x2173,0x2163}, - {0x2164,0x2174,0x2164}, {0x2165,0x2175,0x2165}, - {0x2166,0x2176,0x2166}, {0x2167,0x2177,0x2167}, - {0x2168,0x2178,0x2168}, {0x2169,0x2179,0x2169}, - {0x216A,0x217A,0x216A}, {0x216B,0x217B,0x216B}, - {0x216C,0x217C,0x216C}, {0x216D,0x217D,0x216D}, - {0x216E,0x217E,0x216E}, {0x216F,0x217F,0x216F}, - {0x2180,0x2180,0x2180}, {0x2181,0x2181,0x2181}, - {0x2182,0x2182,0x2182}, {0x2183,0x2183,0x2183}, - {0x2184,0x2184,0x2184}, {0x2185,0x2185,0x2185}, - {0x2186,0x2186,0x2186}, {0x2187,0x2187,0x2187}, - {0x2188,0x2188,0x2188}, {0x2189,0x2189,0x2189}, - {0x218A,0x218A,0x218A}, {0x218B,0x218B,0x218B}, - {0x218C,0x218C,0x218C}, {0x218D,0x218D,0x218D}, - {0x218E,0x218E,0x218E}, {0x218F,0x218F,0x218F}, - {0x2190,0x2190,0x2190}, {0x2191,0x2191,0x2191}, - {0x2192,0x2192,0x2192}, {0x2193,0x2193,0x2193}, - {0x2194,0x2194,0x2194}, {0x2195,0x2195,0x2195}, - {0x2196,0x2196,0x2196}, {0x2197,0x2197,0x2197}, - {0x2198,0x2198,0x2198}, {0x2199,0x2199,0x2199}, - {0x219A,0x219A,0x219A}, {0x219B,0x219B,0x219B}, - {0x219C,0x219C,0x219C}, {0x219D,0x219D,0x219D}, - {0x219E,0x219E,0x219E}, {0x219F,0x219F,0x219F}, - {0x21A0,0x21A0,0x21A0}, {0x21A1,0x21A1,0x21A1}, - {0x21A2,0x21A2,0x21A2}, {0x21A3,0x21A3,0x21A3}, - {0x21A4,0x21A4,0x21A4}, {0x21A5,0x21A5,0x21A5}, - {0x21A6,0x21A6,0x21A6}, {0x21A7,0x21A7,0x21A7}, - {0x21A8,0x21A8,0x21A8}, {0x21A9,0x21A9,0x21A9}, - {0x21AA,0x21AA,0x21AA}, {0x21AB,0x21AB,0x21AB}, - {0x21AC,0x21AC,0x21AC}, {0x21AD,0x21AD,0x21AD}, - {0x21AE,0x21AE,0x21AE}, {0x21AF,0x21AF,0x21AF}, - {0x21B0,0x21B0,0x21B0}, {0x21B1,0x21B1,0x21B1}, - {0x21B2,0x21B2,0x21B2}, {0x21B3,0x21B3,0x21B3}, - {0x21B4,0x21B4,0x21B4}, {0x21B5,0x21B5,0x21B5}, - {0x21B6,0x21B6,0x21B6}, {0x21B7,0x21B7,0x21B7}, - {0x21B8,0x21B8,0x21B8}, {0x21B9,0x21B9,0x21B9}, - {0x21BA,0x21BA,0x21BA}, {0x21BB,0x21BB,0x21BB}, - {0x21BC,0x21BC,0x21BC}, {0x21BD,0x21BD,0x21BD}, - {0x21BE,0x21BE,0x21BE}, {0x21BF,0x21BF,0x21BF}, - {0x21C0,0x21C0,0x21C0}, {0x21C1,0x21C1,0x21C1}, - {0x21C2,0x21C2,0x21C2}, {0x21C3,0x21C3,0x21C3}, - {0x21C4,0x21C4,0x21C4}, {0x21C5,0x21C5,0x21C5}, - {0x21C6,0x21C6,0x21C6}, {0x21C7,0x21C7,0x21C7}, - {0x21C8,0x21C8,0x21C8}, {0x21C9,0x21C9,0x21C9}, - {0x21CA,0x21CA,0x21CA}, {0x21CB,0x21CB,0x21CB}, - {0x21CC,0x21CC,0x21CC}, {0x21CD,0x21CD,0x21CD}, - {0x21CE,0x21CE,0x21CE}, {0x21CF,0x21CF,0x21CF}, - {0x21D0,0x21D0,0x21D0}, {0x21D1,0x21D1,0x21D1}, - {0x21D2,0x21D2,0x21D2}, {0x21D3,0x21D3,0x21D3}, - {0x21D4,0x21D4,0x21D4}, {0x21D5,0x21D5,0x21D5}, - {0x21D6,0x21D6,0x21D6}, {0x21D7,0x21D7,0x21D7}, - {0x21D8,0x21D8,0x21D8}, {0x21D9,0x21D9,0x21D9}, - {0x21DA,0x21DA,0x21DA}, {0x21DB,0x21DB,0x21DB}, - {0x21DC,0x21DC,0x21DC}, {0x21DD,0x21DD,0x21DD}, - {0x21DE,0x21DE,0x21DE}, {0x21DF,0x21DF,0x21DF}, - {0x21E0,0x21E0,0x21E0}, {0x21E1,0x21E1,0x21E1}, - {0x21E2,0x21E2,0x21E2}, {0x21E3,0x21E3,0x21E3}, - {0x21E4,0x21E4,0x21E4}, {0x21E5,0x21E5,0x21E5}, - {0x21E6,0x21E6,0x21E6}, {0x21E7,0x21E7,0x21E7}, - {0x21E8,0x21E8,0x21E8}, {0x21E9,0x21E9,0x21E9}, - {0x21EA,0x21EA,0x21EA}, {0x21EB,0x21EB,0x21EB}, - {0x21EC,0x21EC,0x21EC}, {0x21ED,0x21ED,0x21ED}, - {0x21EE,0x21EE,0x21EE}, {0x21EF,0x21EF,0x21EF}, - {0x21F0,0x21F0,0x21F0}, {0x21F1,0x21F1,0x21F1}, - {0x21F2,0x21F2,0x21F2}, {0x21F3,0x21F3,0x21F3}, - {0x21F4,0x21F4,0x21F4}, {0x21F5,0x21F5,0x21F5}, - {0x21F6,0x21F6,0x21F6}, {0x21F7,0x21F7,0x21F7}, - {0x21F8,0x21F8,0x21F8}, {0x21F9,0x21F9,0x21F9}, - {0x21FA,0x21FA,0x21FA}, {0x21FB,0x21FB,0x21FB}, - {0x21FC,0x21FC,0x21FC}, {0x21FD,0x21FD,0x21FD}, - {0x21FE,0x21FE,0x21FE}, {0x21FF,0x21FF,0x21FF} -}; - -static MY_UNICASE_CHARACTER plane24[]={ - {0x2400,0x2400,0x2400}, {0x2401,0x2401,0x2401}, - {0x2402,0x2402,0x2402}, {0x2403,0x2403,0x2403}, - {0x2404,0x2404,0x2404}, {0x2405,0x2405,0x2405}, - {0x2406,0x2406,0x2406}, {0x2407,0x2407,0x2407}, - {0x2408,0x2408,0x2408}, {0x2409,0x2409,0x2409}, - {0x240A,0x240A,0x240A}, {0x240B,0x240B,0x240B}, - {0x240C,0x240C,0x240C}, {0x240D,0x240D,0x240D}, - {0x240E,0x240E,0x240E}, {0x240F,0x240F,0x240F}, - {0x2410,0x2410,0x2410}, {0x2411,0x2411,0x2411}, - {0x2412,0x2412,0x2412}, {0x2413,0x2413,0x2413}, - {0x2414,0x2414,0x2414}, {0x2415,0x2415,0x2415}, - {0x2416,0x2416,0x2416}, {0x2417,0x2417,0x2417}, - {0x2418,0x2418,0x2418}, {0x2419,0x2419,0x2419}, - {0x241A,0x241A,0x241A}, {0x241B,0x241B,0x241B}, - {0x241C,0x241C,0x241C}, {0x241D,0x241D,0x241D}, - {0x241E,0x241E,0x241E}, {0x241F,0x241F,0x241F}, - {0x2420,0x2420,0x2420}, {0x2421,0x2421,0x2421}, - {0x2422,0x2422,0x2422}, {0x2423,0x2423,0x2423}, - {0x2424,0x2424,0x2424}, {0x2425,0x2425,0x2425}, - {0x2426,0x2426,0x2426}, {0x2427,0x2427,0x2427}, - {0x2428,0x2428,0x2428}, {0x2429,0x2429,0x2429}, - {0x242A,0x242A,0x242A}, {0x242B,0x242B,0x242B}, - {0x242C,0x242C,0x242C}, {0x242D,0x242D,0x242D}, - {0x242E,0x242E,0x242E}, {0x242F,0x242F,0x242F}, - {0x2430,0x2430,0x2430}, {0x2431,0x2431,0x2431}, - {0x2432,0x2432,0x2432}, {0x2433,0x2433,0x2433}, - {0x2434,0x2434,0x2434}, {0x2435,0x2435,0x2435}, - {0x2436,0x2436,0x2436}, {0x2437,0x2437,0x2437}, - {0x2438,0x2438,0x2438}, {0x2439,0x2439,0x2439}, - {0x243A,0x243A,0x243A}, {0x243B,0x243B,0x243B}, - {0x243C,0x243C,0x243C}, {0x243D,0x243D,0x243D}, - {0x243E,0x243E,0x243E}, {0x243F,0x243F,0x243F}, - {0x2440,0x2440,0x2440}, {0x2441,0x2441,0x2441}, - {0x2442,0x2442,0x2442}, {0x2443,0x2443,0x2443}, - {0x2444,0x2444,0x2444}, {0x2445,0x2445,0x2445}, - {0x2446,0x2446,0x2446}, {0x2447,0x2447,0x2447}, - {0x2448,0x2448,0x2448}, {0x2449,0x2449,0x2449}, - {0x244A,0x244A,0x244A}, {0x244B,0x244B,0x244B}, - {0x244C,0x244C,0x244C}, {0x244D,0x244D,0x244D}, - {0x244E,0x244E,0x244E}, {0x244F,0x244F,0x244F}, - {0x2450,0x2450,0x2450}, {0x2451,0x2451,0x2451}, - {0x2452,0x2452,0x2452}, {0x2453,0x2453,0x2453}, - {0x2454,0x2454,0x2454}, {0x2455,0x2455,0x2455}, - {0x2456,0x2456,0x2456}, {0x2457,0x2457,0x2457}, - {0x2458,0x2458,0x2458}, {0x2459,0x2459,0x2459}, - {0x245A,0x245A,0x245A}, {0x245B,0x245B,0x245B}, - {0x245C,0x245C,0x245C}, {0x245D,0x245D,0x245D}, - {0x245E,0x245E,0x245E}, {0x245F,0x245F,0x245F}, - {0x2460,0x2460,0x2460}, {0x2461,0x2461,0x2461}, - {0x2462,0x2462,0x2462}, {0x2463,0x2463,0x2463}, - {0x2464,0x2464,0x2464}, {0x2465,0x2465,0x2465}, - {0x2466,0x2466,0x2466}, {0x2467,0x2467,0x2467}, - {0x2468,0x2468,0x2468}, {0x2469,0x2469,0x2469}, - {0x246A,0x246A,0x246A}, {0x246B,0x246B,0x246B}, - {0x246C,0x246C,0x246C}, {0x246D,0x246D,0x246D}, - {0x246E,0x246E,0x246E}, {0x246F,0x246F,0x246F}, - {0x2470,0x2470,0x2470}, {0x2471,0x2471,0x2471}, - {0x2472,0x2472,0x2472}, {0x2473,0x2473,0x2473}, - {0x2474,0x2474,0x2474}, {0x2475,0x2475,0x2475}, - {0x2476,0x2476,0x2476}, {0x2477,0x2477,0x2477}, - {0x2478,0x2478,0x2478}, {0x2479,0x2479,0x2479}, - {0x247A,0x247A,0x247A}, {0x247B,0x247B,0x247B}, - {0x247C,0x247C,0x247C}, {0x247D,0x247D,0x247D}, - {0x247E,0x247E,0x247E}, {0x247F,0x247F,0x247F}, - {0x2480,0x2480,0x2480}, {0x2481,0x2481,0x2481}, - {0x2482,0x2482,0x2482}, {0x2483,0x2483,0x2483}, - {0x2484,0x2484,0x2484}, {0x2485,0x2485,0x2485}, - {0x2486,0x2486,0x2486}, {0x2487,0x2487,0x2487}, - {0x2488,0x2488,0x2488}, {0x2489,0x2489,0x2489}, - {0x248A,0x248A,0x248A}, {0x248B,0x248B,0x248B}, - {0x248C,0x248C,0x248C}, {0x248D,0x248D,0x248D}, - {0x248E,0x248E,0x248E}, {0x248F,0x248F,0x248F}, - {0x2490,0x2490,0x2490}, {0x2491,0x2491,0x2491}, - {0x2492,0x2492,0x2492}, {0x2493,0x2493,0x2493}, - {0x2494,0x2494,0x2494}, {0x2495,0x2495,0x2495}, - {0x2496,0x2496,0x2496}, {0x2497,0x2497,0x2497}, - {0x2498,0x2498,0x2498}, {0x2499,0x2499,0x2499}, - {0x249A,0x249A,0x249A}, {0x249B,0x249B,0x249B}, - {0x249C,0x249C,0x249C}, {0x249D,0x249D,0x249D}, - {0x249E,0x249E,0x249E}, {0x249F,0x249F,0x249F}, - {0x24A0,0x24A0,0x24A0}, {0x24A1,0x24A1,0x24A1}, - {0x24A2,0x24A2,0x24A2}, {0x24A3,0x24A3,0x24A3}, - {0x24A4,0x24A4,0x24A4}, {0x24A5,0x24A5,0x24A5}, - {0x24A6,0x24A6,0x24A6}, {0x24A7,0x24A7,0x24A7}, - {0x24A8,0x24A8,0x24A8}, {0x24A9,0x24A9,0x24A9}, - {0x24AA,0x24AA,0x24AA}, {0x24AB,0x24AB,0x24AB}, - {0x24AC,0x24AC,0x24AC}, {0x24AD,0x24AD,0x24AD}, - {0x24AE,0x24AE,0x24AE}, {0x24AF,0x24AF,0x24AF}, - {0x24B0,0x24B0,0x24B0}, {0x24B1,0x24B1,0x24B1}, - {0x24B2,0x24B2,0x24B2}, {0x24B3,0x24B3,0x24B3}, - {0x24B4,0x24B4,0x24B4}, {0x24B5,0x24B5,0x24B5}, - {0x24B6,0x24D0,0x24B6}, {0x24B7,0x24D1,0x24B7}, - {0x24B8,0x24D2,0x24B8}, {0x24B9,0x24D3,0x24B9}, - {0x24BA,0x24D4,0x24BA}, {0x24BB,0x24D5,0x24BB}, - {0x24BC,0x24D6,0x24BC}, {0x24BD,0x24D7,0x24BD}, - {0x24BE,0x24D8,0x24BE}, {0x24BF,0x24D9,0x24BF}, - {0x24C0,0x24DA,0x24C0}, {0x24C1,0x24DB,0x24C1}, - {0x24C2,0x24DC,0x24C2}, {0x24C3,0x24DD,0x24C3}, - {0x24C4,0x24DE,0x24C4}, {0x24C5,0x24DF,0x24C5}, - {0x24C6,0x24E0,0x24C6}, {0x24C7,0x24E1,0x24C7}, - {0x24C8,0x24E2,0x24C8}, {0x24C9,0x24E3,0x24C9}, - {0x24CA,0x24E4,0x24CA}, {0x24CB,0x24E5,0x24CB}, - {0x24CC,0x24E6,0x24CC}, {0x24CD,0x24E7,0x24CD}, - {0x24CE,0x24E8,0x24CE}, {0x24CF,0x24E9,0x24CF}, - {0x24B6,0x24D0,0x24B6}, {0x24B7,0x24D1,0x24B7}, - {0x24B8,0x24D2,0x24B8}, {0x24B9,0x24D3,0x24B9}, - {0x24BA,0x24D4,0x24BA}, {0x24BB,0x24D5,0x24BB}, - {0x24BC,0x24D6,0x24BC}, {0x24BD,0x24D7,0x24BD}, - {0x24BE,0x24D8,0x24BE}, {0x24BF,0x24D9,0x24BF}, - {0x24C0,0x24DA,0x24C0}, {0x24C1,0x24DB,0x24C1}, - {0x24C2,0x24DC,0x24C2}, {0x24C3,0x24DD,0x24C3}, - {0x24C4,0x24DE,0x24C4}, {0x24C5,0x24DF,0x24C5}, - {0x24C6,0x24E0,0x24C6}, {0x24C7,0x24E1,0x24C7}, - {0x24C8,0x24E2,0x24C8}, {0x24C9,0x24E3,0x24C9}, - {0x24CA,0x24E4,0x24CA}, {0x24CB,0x24E5,0x24CB}, - {0x24CC,0x24E6,0x24CC}, {0x24CD,0x24E7,0x24CD}, - {0x24CE,0x24E8,0x24CE}, {0x24CF,0x24E9,0x24CF}, - {0x24EA,0x24EA,0x24EA}, {0x24EB,0x24EB,0x24EB}, - {0x24EC,0x24EC,0x24EC}, {0x24ED,0x24ED,0x24ED}, - {0x24EE,0x24EE,0x24EE}, {0x24EF,0x24EF,0x24EF}, - {0x24F0,0x24F0,0x24F0}, {0x24F1,0x24F1,0x24F1}, - {0x24F2,0x24F2,0x24F2}, {0x24F3,0x24F3,0x24F3}, - {0x24F4,0x24F4,0x24F4}, {0x24F5,0x24F5,0x24F5}, - {0x24F6,0x24F6,0x24F6}, {0x24F7,0x24F7,0x24F7}, - {0x24F8,0x24F8,0x24F8}, {0x24F9,0x24F9,0x24F9}, - {0x24FA,0x24FA,0x24FA}, {0x24FB,0x24FB,0x24FB}, - {0x24FC,0x24FC,0x24FC}, {0x24FD,0x24FD,0x24FD}, - {0x24FE,0x24FE,0x24FE}, {0x24FF,0x24FF,0x24FF} -}; - -static MY_UNICASE_CHARACTER planeFF[]={ - {0xFF00,0xFF00,0xFF00}, {0xFF01,0xFF01,0xFF01}, - {0xFF02,0xFF02,0xFF02}, {0xFF03,0xFF03,0xFF03}, - {0xFF04,0xFF04,0xFF04}, {0xFF05,0xFF05,0xFF05}, - {0xFF06,0xFF06,0xFF06}, {0xFF07,0xFF07,0xFF07}, - {0xFF08,0xFF08,0xFF08}, {0xFF09,0xFF09,0xFF09}, - {0xFF0A,0xFF0A,0xFF0A}, {0xFF0B,0xFF0B,0xFF0B}, - {0xFF0C,0xFF0C,0xFF0C}, {0xFF0D,0xFF0D,0xFF0D}, - {0xFF0E,0xFF0E,0xFF0E}, {0xFF0F,0xFF0F,0xFF0F}, - {0xFF10,0xFF10,0xFF10}, {0xFF11,0xFF11,0xFF11}, - {0xFF12,0xFF12,0xFF12}, {0xFF13,0xFF13,0xFF13}, - {0xFF14,0xFF14,0xFF14}, {0xFF15,0xFF15,0xFF15}, - {0xFF16,0xFF16,0xFF16}, {0xFF17,0xFF17,0xFF17}, - {0xFF18,0xFF18,0xFF18}, {0xFF19,0xFF19,0xFF19}, - {0xFF1A,0xFF1A,0xFF1A}, {0xFF1B,0xFF1B,0xFF1B}, - {0xFF1C,0xFF1C,0xFF1C}, {0xFF1D,0xFF1D,0xFF1D}, - {0xFF1E,0xFF1E,0xFF1E}, {0xFF1F,0xFF1F,0xFF1F}, - {0xFF20,0xFF20,0xFF20}, {0xFF21,0xFF41,0xFF21}, - {0xFF22,0xFF42,0xFF22}, {0xFF23,0xFF43,0xFF23}, - {0xFF24,0xFF44,0xFF24}, {0xFF25,0xFF45,0xFF25}, - {0xFF26,0xFF46,0xFF26}, {0xFF27,0xFF47,0xFF27}, - {0xFF28,0xFF48,0xFF28}, {0xFF29,0xFF49,0xFF29}, - {0xFF2A,0xFF4A,0xFF2A}, {0xFF2B,0xFF4B,0xFF2B}, - {0xFF2C,0xFF4C,0xFF2C}, {0xFF2D,0xFF4D,0xFF2D}, - {0xFF2E,0xFF4E,0xFF2E}, {0xFF2F,0xFF4F,0xFF2F}, - {0xFF30,0xFF50,0xFF30}, {0xFF31,0xFF51,0xFF31}, - {0xFF32,0xFF52,0xFF32}, {0xFF33,0xFF53,0xFF33}, - {0xFF34,0xFF54,0xFF34}, {0xFF35,0xFF55,0xFF35}, - {0xFF36,0xFF56,0xFF36}, {0xFF37,0xFF57,0xFF37}, - {0xFF38,0xFF58,0xFF38}, {0xFF39,0xFF59,0xFF39}, - {0xFF3A,0xFF5A,0xFF3A}, {0xFF3B,0xFF3B,0xFF3B}, - {0xFF3C,0xFF3C,0xFF3C}, {0xFF3D,0xFF3D,0xFF3D}, - {0xFF3E,0xFF3E,0xFF3E}, {0xFF3F,0xFF3F,0xFF3F}, - {0xFF40,0xFF40,0xFF40}, {0xFF21,0xFF41,0xFF21}, - {0xFF22,0xFF42,0xFF22}, {0xFF23,0xFF43,0xFF23}, - {0xFF24,0xFF44,0xFF24}, {0xFF25,0xFF45,0xFF25}, - {0xFF26,0xFF46,0xFF26}, {0xFF27,0xFF47,0xFF27}, - {0xFF28,0xFF48,0xFF28}, {0xFF29,0xFF49,0xFF29}, - {0xFF2A,0xFF4A,0xFF2A}, {0xFF2B,0xFF4B,0xFF2B}, - {0xFF2C,0xFF4C,0xFF2C}, {0xFF2D,0xFF4D,0xFF2D}, - {0xFF2E,0xFF4E,0xFF2E}, {0xFF2F,0xFF4F,0xFF2F}, - {0xFF30,0xFF50,0xFF30}, {0xFF31,0xFF51,0xFF31}, - {0xFF32,0xFF52,0xFF32}, {0xFF33,0xFF53,0xFF33}, - {0xFF34,0xFF54,0xFF34}, {0xFF35,0xFF55,0xFF35}, - {0xFF36,0xFF56,0xFF36}, {0xFF37,0xFF57,0xFF37}, - {0xFF38,0xFF58,0xFF38}, {0xFF39,0xFF59,0xFF39}, - {0xFF3A,0xFF5A,0xFF3A}, {0xFF5B,0xFF5B,0xFF5B}, - {0xFF5C,0xFF5C,0xFF5C}, {0xFF5D,0xFF5D,0xFF5D}, - {0xFF5E,0xFF5E,0xFF5E}, {0xFF5F,0xFF5F,0xFF5F}, - {0xFF60,0xFF60,0xFF60}, {0xFF61,0xFF61,0xFF61}, - {0xFF62,0xFF62,0xFF62}, {0xFF63,0xFF63,0xFF63}, - {0xFF64,0xFF64,0xFF64}, {0xFF65,0xFF65,0xFF65}, - {0xFF66,0xFF66,0xFF66}, {0xFF67,0xFF67,0xFF67}, - {0xFF68,0xFF68,0xFF68}, {0xFF69,0xFF69,0xFF69}, - {0xFF6A,0xFF6A,0xFF6A}, {0xFF6B,0xFF6B,0xFF6B}, - {0xFF6C,0xFF6C,0xFF6C}, {0xFF6D,0xFF6D,0xFF6D}, - {0xFF6E,0xFF6E,0xFF6E}, {0xFF6F,0xFF6F,0xFF6F}, - {0xFF70,0xFF70,0xFF70}, {0xFF71,0xFF71,0xFF71}, - {0xFF72,0xFF72,0xFF72}, {0xFF73,0xFF73,0xFF73}, - {0xFF74,0xFF74,0xFF74}, {0xFF75,0xFF75,0xFF75}, - {0xFF76,0xFF76,0xFF76}, {0xFF77,0xFF77,0xFF77}, - {0xFF78,0xFF78,0xFF78}, {0xFF79,0xFF79,0xFF79}, - {0xFF7A,0xFF7A,0xFF7A}, {0xFF7B,0xFF7B,0xFF7B}, - {0xFF7C,0xFF7C,0xFF7C}, {0xFF7D,0xFF7D,0xFF7D}, - {0xFF7E,0xFF7E,0xFF7E}, {0xFF7F,0xFF7F,0xFF7F}, - {0xFF80,0xFF80,0xFF80}, {0xFF81,0xFF81,0xFF81}, - {0xFF82,0xFF82,0xFF82}, {0xFF83,0xFF83,0xFF83}, - {0xFF84,0xFF84,0xFF84}, {0xFF85,0xFF85,0xFF85}, - {0xFF86,0xFF86,0xFF86}, {0xFF87,0xFF87,0xFF87}, - {0xFF88,0xFF88,0xFF88}, {0xFF89,0xFF89,0xFF89}, - {0xFF8A,0xFF8A,0xFF8A}, {0xFF8B,0xFF8B,0xFF8B}, - {0xFF8C,0xFF8C,0xFF8C}, {0xFF8D,0xFF8D,0xFF8D}, - {0xFF8E,0xFF8E,0xFF8E}, {0xFF8F,0xFF8F,0xFF8F}, - {0xFF90,0xFF90,0xFF90}, {0xFF91,0xFF91,0xFF91}, - {0xFF92,0xFF92,0xFF92}, {0xFF93,0xFF93,0xFF93}, - {0xFF94,0xFF94,0xFF94}, {0xFF95,0xFF95,0xFF95}, - {0xFF96,0xFF96,0xFF96}, {0xFF97,0xFF97,0xFF97}, - {0xFF98,0xFF98,0xFF98}, {0xFF99,0xFF99,0xFF99}, - {0xFF9A,0xFF9A,0xFF9A}, {0xFF9B,0xFF9B,0xFF9B}, - {0xFF9C,0xFF9C,0xFF9C}, {0xFF9D,0xFF9D,0xFF9D}, - {0xFF9E,0xFF9E,0xFF9E}, {0xFF9F,0xFF9F,0xFF9F}, - {0xFFA0,0xFFA0,0xFFA0}, {0xFFA1,0xFFA1,0xFFA1}, - {0xFFA2,0xFFA2,0xFFA2}, {0xFFA3,0xFFA3,0xFFA3}, - {0xFFA4,0xFFA4,0xFFA4}, {0xFFA5,0xFFA5,0xFFA5}, - {0xFFA6,0xFFA6,0xFFA6}, {0xFFA7,0xFFA7,0xFFA7}, - {0xFFA8,0xFFA8,0xFFA8}, {0xFFA9,0xFFA9,0xFFA9}, - {0xFFAA,0xFFAA,0xFFAA}, {0xFFAB,0xFFAB,0xFFAB}, - {0xFFAC,0xFFAC,0xFFAC}, {0xFFAD,0xFFAD,0xFFAD}, - {0xFFAE,0xFFAE,0xFFAE}, {0xFFAF,0xFFAF,0xFFAF}, - {0xFFB0,0xFFB0,0xFFB0}, {0xFFB1,0xFFB1,0xFFB1}, - {0xFFB2,0xFFB2,0xFFB2}, {0xFFB3,0xFFB3,0xFFB3}, - {0xFFB4,0xFFB4,0xFFB4}, {0xFFB5,0xFFB5,0xFFB5}, - {0xFFB6,0xFFB6,0xFFB6}, {0xFFB7,0xFFB7,0xFFB7}, - {0xFFB8,0xFFB8,0xFFB8}, {0xFFB9,0xFFB9,0xFFB9}, - {0xFFBA,0xFFBA,0xFFBA}, {0xFFBB,0xFFBB,0xFFBB}, - {0xFFBC,0xFFBC,0xFFBC}, {0xFFBD,0xFFBD,0xFFBD}, - {0xFFBE,0xFFBE,0xFFBE}, {0xFFBF,0xFFBF,0xFFBF}, - {0xFFC0,0xFFC0,0xFFC0}, {0xFFC1,0xFFC1,0xFFC1}, - {0xFFC2,0xFFC2,0xFFC2}, {0xFFC3,0xFFC3,0xFFC3}, - {0xFFC4,0xFFC4,0xFFC4}, {0xFFC5,0xFFC5,0xFFC5}, - {0xFFC6,0xFFC6,0xFFC6}, {0xFFC7,0xFFC7,0xFFC7}, - {0xFFC8,0xFFC8,0xFFC8}, {0xFFC9,0xFFC9,0xFFC9}, - {0xFFCA,0xFFCA,0xFFCA}, {0xFFCB,0xFFCB,0xFFCB}, - {0xFFCC,0xFFCC,0xFFCC}, {0xFFCD,0xFFCD,0xFFCD}, - {0xFFCE,0xFFCE,0xFFCE}, {0xFFCF,0xFFCF,0xFFCF}, - {0xFFD0,0xFFD0,0xFFD0}, {0xFFD1,0xFFD1,0xFFD1}, - {0xFFD2,0xFFD2,0xFFD2}, {0xFFD3,0xFFD3,0xFFD3}, - {0xFFD4,0xFFD4,0xFFD4}, {0xFFD5,0xFFD5,0xFFD5}, - {0xFFD6,0xFFD6,0xFFD6}, {0xFFD7,0xFFD7,0xFFD7}, - {0xFFD8,0xFFD8,0xFFD8}, {0xFFD9,0xFFD9,0xFFD9}, - {0xFFDA,0xFFDA,0xFFDA}, {0xFFDB,0xFFDB,0xFFDB}, - {0xFFDC,0xFFDC,0xFFDC}, {0xFFDD,0xFFDD,0xFFDD}, - {0xFFDE,0xFFDE,0xFFDE}, {0xFFDF,0xFFDF,0xFFDF}, - {0xFFE0,0xFFE0,0xFFE0}, {0xFFE1,0xFFE1,0xFFE1}, - {0xFFE2,0xFFE2,0xFFE2}, {0xFFE3,0xFFE3,0xFFE3}, - {0xFFE4,0xFFE4,0xFFE4}, {0xFFE5,0xFFE5,0xFFE5}, - {0xFFE6,0xFFE6,0xFFE6}, {0xFFE7,0xFFE7,0xFFE7}, - {0xFFE8,0xFFE8,0xFFE8}, {0xFFE9,0xFFE9,0xFFE9}, - {0xFFEA,0xFFEA,0xFFEA}, {0xFFEB,0xFFEB,0xFFEB}, - {0xFFEC,0xFFEC,0xFFEC}, {0xFFED,0xFFED,0xFFED}, - {0xFFEE,0xFFEE,0xFFEE}, {0xFFEF,0xFFEF,0xFFEF}, - {0xFFF0,0xFFF0,0xFFF0}, {0xFFF1,0xFFF1,0xFFF1}, - {0xFFF2,0xFFF2,0xFFF2}, {0xFFF3,0xFFF3,0xFFF3}, - {0xFFF4,0xFFF4,0xFFF4}, {0xFFF5,0xFFF5,0xFFF5}, - {0xFFF6,0xFFF6,0xFFF6}, {0xFFF7,0xFFF7,0xFFF7}, - {0xFFF8,0xFFF8,0xFFF8}, {0xFFF9,0xFFF9,0xFFF9}, - {0xFFFA,0xFFFA,0xFFFA}, {0xFFFB,0xFFFB,0xFFFB}, - {0xFFFC,0xFFFC,0xFFFC}, {0xFFFD,0xFFFD,0xFFFD}, - {0xFFFE,0xFFFE,0xFFFE}, {0xFFFF,0xFFFF,0xFFFF} -}; - - -MY_UNICASE_CHARACTER *my_unicase_default_pages[256]= -{ - my_unicase_default_page00, - plane01, plane02, plane03, plane04, plane05, plane06, plane07, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, plane1E, plane1F, - NULL, plane21, NULL, NULL, plane24, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, planeFF -}; - - -MY_UNICASE_INFO my_unicase_default= -{ - MY_UNICASE_INFO_DEFAULT_MAXCHAR, - my_unicase_default_pages -}; - - -/* - Reproduce old utf8mb3_general_ci behaviour before we fixed Bug#27877. -*/ -MY_UNICASE_CHARACTER *my_unicase_mysql500_pages[256]={ - my_unicase_mysql500_page00, - plane01, plane02, plane03, plane04, plane05, plane06, plane07, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, plane1E, plane1F, - NULL, plane21, NULL, NULL, plane24, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, planeFF - -}; - - -MY_UNICASE_INFO my_unicase_mysql500= -{ - 0xFFFF, - my_unicase_mysql500_pages -}; - - -/* - Turkish lower/upper mapping: - 1. LOWER(0x0049 LATIN CAPITAL LETTER I) -> - 0x0131 LATIN SMALL LETTER DOTLESS I - 2. UPPER(0x0069 LATIN SMALL LETTER I) -> - 0x0130 LATIN CAPITAL LETTER I WITH DOT ABOVE -*/ - -static MY_UNICASE_CHARACTER turk00[]= -{ - {0x0000,0x0000,0x0000}, {0x0001,0x0001,0x0001}, - {0x0002,0x0002,0x0002}, {0x0003,0x0003,0x0003}, - {0x0004,0x0004,0x0004}, {0x0005,0x0005,0x0005}, - {0x0006,0x0006,0x0006}, {0x0007,0x0007,0x0007}, - {0x0008,0x0008,0x0008}, {0x0009,0x0009,0x0009}, - {0x000A,0x000A,0x000A}, {0x000B,0x000B,0x000B}, - {0x000C,0x000C,0x000C}, {0x000D,0x000D,0x000D}, - {0x000E,0x000E,0x000E}, {0x000F,0x000F,0x000F}, - {0x0010,0x0010,0x0010}, {0x0011,0x0011,0x0011}, - {0x0012,0x0012,0x0012}, {0x0013,0x0013,0x0013}, - {0x0014,0x0014,0x0014}, {0x0015,0x0015,0x0015}, - {0x0016,0x0016,0x0016}, {0x0017,0x0017,0x0017}, - {0x0018,0x0018,0x0018}, {0x0019,0x0019,0x0019}, - {0x001A,0x001A,0x001A}, {0x001B,0x001B,0x001B}, - {0x001C,0x001C,0x001C}, {0x001D,0x001D,0x001D}, - {0x001E,0x001E,0x001E}, {0x001F,0x001F,0x001F}, - {0x0020,0x0020,0x0020}, {0x0021,0x0021,0x0021}, - {0x0022,0x0022,0x0022}, {0x0023,0x0023,0x0023}, - {0x0024,0x0024,0x0024}, {0x0025,0x0025,0x0025}, - {0x0026,0x0026,0x0026}, {0x0027,0x0027,0x0027}, - {0x0028,0x0028,0x0028}, {0x0029,0x0029,0x0029}, - {0x002A,0x002A,0x002A}, {0x002B,0x002B,0x002B}, - {0x002C,0x002C,0x002C}, {0x002D,0x002D,0x002D}, - {0x002E,0x002E,0x002E}, {0x002F,0x002F,0x002F}, - {0x0030,0x0030,0x0030}, {0x0031,0x0031,0x0031}, - {0x0032,0x0032,0x0032}, {0x0033,0x0033,0x0033}, - {0x0034,0x0034,0x0034}, {0x0035,0x0035,0x0035}, - {0x0036,0x0036,0x0036}, {0x0037,0x0037,0x0037}, - {0x0038,0x0038,0x0038}, {0x0039,0x0039,0x0039}, - {0x003A,0x003A,0x003A}, {0x003B,0x003B,0x003B}, - {0x003C,0x003C,0x003C}, {0x003D,0x003D,0x003D}, - {0x003E,0x003E,0x003E}, {0x003F,0x003F,0x003F}, - {0x0040,0x0040,0x0040}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0049,0x0131,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x005B,0x005B,0x005B}, - {0x005C,0x005C,0x005C}, {0x005D,0x005D,0x005D}, - {0x005E,0x005E,0x005E}, {0x005F,0x005F,0x005F}, - {0x0060,0x0060,0x0060}, {0x0041,0x0061,0x0041}, - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, - {0x0048,0x0068,0x0048}, {0x0130,0x0069,0x0049}, - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, - {0x005A,0x007A,0x005A}, {0x007B,0x007B,0x007B}, - {0x007C,0x007C,0x007C}, {0x007D,0x007D,0x007D}, - {0x007E,0x007E,0x007E}, {0x007F,0x007F,0x007F}, - {0x0080,0x0080,0x0080}, {0x0081,0x0081,0x0081}, - {0x0082,0x0082,0x0082}, {0x0083,0x0083,0x0083}, - {0x0084,0x0084,0x0084}, {0x0085,0x0085,0x0085}, - {0x0086,0x0086,0x0086}, {0x0087,0x0087,0x0087}, - {0x0088,0x0088,0x0088}, {0x0089,0x0089,0x0089}, - {0x008A,0x008A,0x008A}, {0x008B,0x008B,0x008B}, - {0x008C,0x008C,0x008C}, {0x008D,0x008D,0x008D}, - {0x008E,0x008E,0x008E}, {0x008F,0x008F,0x008F}, - {0x0090,0x0090,0x0090}, {0x0091,0x0091,0x0091}, - {0x0092,0x0092,0x0092}, {0x0093,0x0093,0x0093}, - {0x0094,0x0094,0x0094}, {0x0095,0x0095,0x0095}, - {0x0096,0x0096,0x0096}, {0x0097,0x0097,0x0097}, - {0x0098,0x0098,0x0098}, {0x0099,0x0099,0x0099}, - {0x009A,0x009A,0x009A}, {0x009B,0x009B,0x009B}, - {0x009C,0x009C,0x009C}, {0x009D,0x009D,0x009D}, - {0x009E,0x009E,0x009E}, {0x009F,0x009F,0x009F}, - {0x00A0,0x00A0,0x00A0}, {0x00A1,0x00A1,0x00A1}, - {0x00A2,0x00A2,0x00A2}, {0x00A3,0x00A3,0x00A3}, - {0x00A4,0x00A4,0x00A4}, {0x00A5,0x00A5,0x00A5}, - {0x00A6,0x00A6,0x00A6}, {0x00A7,0x00A7,0x00A7}, - {0x00A8,0x00A8,0x00A8}, {0x00A9,0x00A9,0x00A9}, - {0x00AA,0x00AA,0x00AA}, {0x00AB,0x00AB,0x00AB}, - {0x00AC,0x00AC,0x00AC}, {0x00AD,0x00AD,0x00AD}, - {0x00AE,0x00AE,0x00AE}, {0x00AF,0x00AF,0x00AF}, - {0x00B0,0x00B0,0x00B0}, {0x00B1,0x00B1,0x00B1}, - {0x00B2,0x00B2,0x00B2}, {0x00B3,0x00B3,0x00B3}, - {0x00B4,0x00B4,0x00B4}, {0x039C,0x00B5,0x039C}, - {0x00B6,0x00B6,0x00B6}, {0x00B7,0x00B7,0x00B7}, - {0x00B8,0x00B8,0x00B8}, {0x00B9,0x00B9,0x00B9}, - {0x00BA,0x00BA,0x00BA}, {0x00BB,0x00BB,0x00BB}, - {0x00BC,0x00BC,0x00BC}, {0x00BD,0x00BD,0x00BD}, - {0x00BE,0x00BE,0x00BE}, {0x00BF,0x00BF,0x00BF}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00D7,0x00D7,0x00D7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x00DF,0x00DF,0x00DF}, - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, - {0x00D6,0x00F6,0x004F}, {0x00F7,0x00F7,0x00F7}, - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, - {0x00DE,0x00FE,0x00DE}, {0x0178,0x00FF,0x0059} -}; - - - -static MY_UNICASE_CHARACTER *my_unicase_pages_turkish[256]= -{ - turk00, plane01, plane02, plane03, plane04, plane05, plane06, plane07, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, plane1E, plane1F, - NULL, plane21, NULL, NULL, plane24, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, planeFF -}; - - -MY_UNICASE_INFO my_unicase_turkish= -{ - 0xFFFF, - my_unicase_pages_turkish -}; - - -/* Unicode-5.2.0 case folding information */ -static MY_UNICASE_CHARACTER u520p00[]={ - {0x0000,0x0000,0x0000}, {0x0001,0x0001,0x0001}, /* 0000 */ - {0x0002,0x0002,0x0002}, {0x0003,0x0003,0x0003}, /* 0002 */ - {0x0004,0x0004,0x0004}, {0x0005,0x0005,0x0005}, /* 0004 */ - {0x0006,0x0006,0x0006}, {0x0007,0x0007,0x0007}, /* 0006 */ - {0x0008,0x0008,0x0008}, {0x0009,0x0009,0x0009}, /* 0008 */ - {0x000A,0x000A,0x000A}, {0x000B,0x000B,0x000B}, /* 000A */ - {0x000C,0x000C,0x000C}, {0x000D,0x000D,0x000D}, /* 000C */ - {0x000E,0x000E,0x000E}, {0x000F,0x000F,0x000F}, /* 000E */ - {0x0010,0x0010,0x0010}, {0x0011,0x0011,0x0011}, /* 0010 */ - {0x0012,0x0012,0x0012}, {0x0013,0x0013,0x0013}, /* 0012 */ - {0x0014,0x0014,0x0014}, {0x0015,0x0015,0x0015}, /* 0014 */ - {0x0016,0x0016,0x0016}, {0x0017,0x0017,0x0017}, /* 0016 */ - {0x0018,0x0018,0x0018}, {0x0019,0x0019,0x0019}, /* 0018 */ - {0x001A,0x001A,0x001A}, {0x001B,0x001B,0x001B}, /* 001A */ - {0x001C,0x001C,0x001C}, {0x001D,0x001D,0x001D}, /* 001C */ - {0x001E,0x001E,0x001E}, {0x001F,0x001F,0x001F}, /* 001E */ - {0x0020,0x0020,0x0020}, {0x0021,0x0021,0x0021}, /* 0020 */ - {0x0022,0x0022,0x0022}, {0x0023,0x0023,0x0023}, /* 0022 */ - {0x0024,0x0024,0x0024}, {0x0025,0x0025,0x0025}, /* 0024 */ - {0x0026,0x0026,0x0026}, {0x0027,0x0027,0x0027}, /* 0026 */ - {0x0028,0x0028,0x0028}, {0x0029,0x0029,0x0029}, /* 0028 */ - {0x002A,0x002A,0x002A}, {0x002B,0x002B,0x002B}, /* 002A */ - {0x002C,0x002C,0x002C}, {0x002D,0x002D,0x002D}, /* 002C */ - {0x002E,0x002E,0x002E}, {0x002F,0x002F,0x002F}, /* 002E */ - {0x0030,0x0030,0x0030}, {0x0031,0x0031,0x0031}, /* 0030 */ - {0x0032,0x0032,0x0032}, {0x0033,0x0033,0x0033}, /* 0032 */ - {0x0034,0x0034,0x0034}, {0x0035,0x0035,0x0035}, /* 0034 */ - {0x0036,0x0036,0x0036}, {0x0037,0x0037,0x0037}, /* 0036 */ - {0x0038,0x0038,0x0038}, {0x0039,0x0039,0x0039}, /* 0038 */ - {0x003A,0x003A,0x003A}, {0x003B,0x003B,0x003B}, /* 003A */ - {0x003C,0x003C,0x003C}, {0x003D,0x003D,0x003D}, /* 003C */ - {0x003E,0x003E,0x003E}, {0x003F,0x003F,0x003F}, /* 003E */ - {0x0040,0x0040,0x0040}, {0x0041,0x0061,0x0041}, /* 0040 */ - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, /* 0042 */ - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, /* 0044 */ - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, /* 0046 */ - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, /* 0048 */ - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, /* 004A */ - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, /* 004C */ - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, /* 004E */ - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, /* 0050 */ - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, /* 0052 */ - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, /* 0054 */ - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, /* 0056 */ - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, /* 0058 */ - {0x005A,0x007A,0x005A}, {0x005B,0x005B,0x005B}, /* 005A */ - {0x005C,0x005C,0x005C}, {0x005D,0x005D,0x005D}, /* 005C */ - {0x005E,0x005E,0x005E}, {0x005F,0x005F,0x005F}, /* 005E */ - {0x0060,0x0060,0x0060}, {0x0041,0x0061,0x0041}, /* 0060 */ - {0x0042,0x0062,0x0042}, {0x0043,0x0063,0x0043}, /* 0062 */ - {0x0044,0x0064,0x0044}, {0x0045,0x0065,0x0045}, /* 0064 */ - {0x0046,0x0066,0x0046}, {0x0047,0x0067,0x0047}, /* 0066 */ - {0x0048,0x0068,0x0048}, {0x0049,0x0069,0x0049}, /* 0068 */ - {0x004A,0x006A,0x004A}, {0x004B,0x006B,0x004B}, /* 006A */ - {0x004C,0x006C,0x004C}, {0x004D,0x006D,0x004D}, /* 006C */ - {0x004E,0x006E,0x004E}, {0x004F,0x006F,0x004F}, /* 006E */ - {0x0050,0x0070,0x0050}, {0x0051,0x0071,0x0051}, /* 0070 */ - {0x0052,0x0072,0x0052}, {0x0053,0x0073,0x0053}, /* 0072 */ - {0x0054,0x0074,0x0054}, {0x0055,0x0075,0x0055}, /* 0074 */ - {0x0056,0x0076,0x0056}, {0x0057,0x0077,0x0057}, /* 0076 */ - {0x0058,0x0078,0x0058}, {0x0059,0x0079,0x0059}, /* 0078 */ - {0x005A,0x007A,0x005A}, {0x007B,0x007B,0x007B}, /* 007A */ - {0x007C,0x007C,0x007C}, {0x007D,0x007D,0x007D}, /* 007C */ - {0x007E,0x007E,0x007E}, {0x007F,0x007F,0x007F}, /* 007E */ - {0x0080,0x0080,0x0080}, {0x0081,0x0081,0x0081}, /* 0080 */ - {0x0082,0x0082,0x0082}, {0x0083,0x0083,0x0083}, /* 0082 */ - {0x0084,0x0084,0x0084}, {0x0085,0x0085,0x0085}, /* 0084 */ - {0x0086,0x0086,0x0086}, {0x0087,0x0087,0x0087}, /* 0086 */ - {0x0088,0x0088,0x0088}, {0x0089,0x0089,0x0089}, /* 0088 */ - {0x008A,0x008A,0x008A}, {0x008B,0x008B,0x008B}, /* 008A */ - {0x008C,0x008C,0x008C}, {0x008D,0x008D,0x008D}, /* 008C */ - {0x008E,0x008E,0x008E}, {0x008F,0x008F,0x008F}, /* 008E */ - {0x0090,0x0090,0x0090}, {0x0091,0x0091,0x0091}, /* 0090 */ - {0x0092,0x0092,0x0092}, {0x0093,0x0093,0x0093}, /* 0092 */ - {0x0094,0x0094,0x0094}, {0x0095,0x0095,0x0095}, /* 0094 */ - {0x0096,0x0096,0x0096}, {0x0097,0x0097,0x0097}, /* 0096 */ - {0x0098,0x0098,0x0098}, {0x0099,0x0099,0x0099}, /* 0098 */ - {0x009A,0x009A,0x009A}, {0x009B,0x009B,0x009B}, /* 009A */ - {0x009C,0x009C,0x009C}, {0x009D,0x009D,0x009D}, /* 009C */ - {0x009E,0x009E,0x009E}, {0x009F,0x009F,0x009F}, /* 009E */ - {0x00A0,0x00A0,0x00A0}, {0x00A1,0x00A1,0x00A1}, /* 00A0 */ - {0x00A2,0x00A2,0x00A2}, {0x00A3,0x00A3,0x00A3}, /* 00A2 */ - {0x00A4,0x00A4,0x00A4}, {0x00A5,0x00A5,0x00A5}, /* 00A4 */ - {0x00A6,0x00A6,0x00A6}, {0x00A7,0x00A7,0x00A7}, /* 00A6 */ - {0x00A8,0x00A8,0x00A8}, {0x00A9,0x00A9,0x00A9}, /* 00A8 */ - {0x00AA,0x00AA,0x00AA}, {0x00AB,0x00AB,0x00AB}, /* 00AA */ - {0x00AC,0x00AC,0x00AC}, {0x00AD,0x00AD,0x00AD}, /* 00AC */ - {0x00AE,0x00AE,0x00AE}, {0x00AF,0x00AF,0x00AF}, /* 00AE */ - {0x00B0,0x00B0,0x00B0}, {0x00B1,0x00B1,0x00B1}, /* 00B0 */ - {0x00B2,0x00B2,0x00B2}, {0x00B3,0x00B3,0x00B3}, /* 00B2 */ - {0x00B4,0x00B4,0x00B4}, {0x039C,0x00B5,0x039C}, /* 00B4 */ - {0x00B6,0x00B6,0x00B6}, {0x00B7,0x00B7,0x00B7}, /* 00B6 */ - {0x00B8,0x00B8,0x00B8}, {0x00B9,0x00B9,0x00B9}, /* 00B8 */ - {0x00BA,0x00BA,0x00BA}, {0x00BB,0x00BB,0x00BB}, /* 00BA */ - {0x00BC,0x00BC,0x00BC}, {0x00BD,0x00BD,0x00BD}, /* 00BC */ - {0x00BE,0x00BE,0x00BE}, {0x00BF,0x00BF,0x00BF}, /* 00BE */ - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, /* 00C0 */ - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, /* 00C2 */ - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, /* 00C4 */ - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, /* 00C6 */ - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, /* 00C8 */ - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, /* 00CA */ - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, /* 00CC */ - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, /* 00CE */ - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, /* 00D0 */ - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, /* 00D2 */ - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, /* 00D4 */ - {0x00D6,0x00F6,0x004F}, {0x00D7,0x00D7,0x00D7}, /* 00D6 */ - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, /* 00D8 */ - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, /* 00DA */ - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, /* 00DC */ - {0x00DE,0x00FE,0x00DE}, {0x00DF,0x00DF,0x0053}, /* 00DE */ - {0x00C0,0x00E0,0x0041}, {0x00C1,0x00E1,0x0041}, /* 00E0 */ - {0x00C2,0x00E2,0x0041}, {0x00C3,0x00E3,0x0041}, /* 00E2 */ - {0x00C4,0x00E4,0x0041}, {0x00C5,0x00E5,0x0041}, /* 00E4 */ - {0x00C6,0x00E6,0x00C6}, {0x00C7,0x00E7,0x0043}, /* 00E6 */ - {0x00C8,0x00E8,0x0045}, {0x00C9,0x00E9,0x0045}, /* 00E8 */ - {0x00CA,0x00EA,0x0045}, {0x00CB,0x00EB,0x0045}, /* 00EA */ - {0x00CC,0x00EC,0x0049}, {0x00CD,0x00ED,0x0049}, /* 00EC */ - {0x00CE,0x00EE,0x0049}, {0x00CF,0x00EF,0x0049}, /* 00EE */ - {0x00D0,0x00F0,0x00D0}, {0x00D1,0x00F1,0x004E}, /* 00F0 */ - {0x00D2,0x00F2,0x004F}, {0x00D3,0x00F3,0x004F}, /* 00F2 */ - {0x00D4,0x00F4,0x004F}, {0x00D5,0x00F5,0x004F}, /* 00F4 */ - {0x00D6,0x00F6,0x004F}, {0x00F7,0x00F7,0x00F7}, /* 00F6 */ - {0x00D8,0x00F8,0x00D8}, {0x00D9,0x00F9,0x0055}, /* 00F8 */ - {0x00DA,0x00FA,0x0055}, {0x00DB,0x00FB,0x0055}, /* 00FA */ - {0x00DC,0x00FC,0x0055}, {0x00DD,0x00FD,0x0059}, /* 00FC */ - {0x00DE,0x00FE,0x00DE}, {0x0178,0x00FF,0x0059} /* 00FE */ -}; - -static MY_UNICASE_CHARACTER u520p01[]={ - {0x0100,0x0101,0x0041}, {0x0100,0x0101,0x0041}, /* 0100 */ - {0x0102,0x0103,0x0041}, {0x0102,0x0103,0x0041}, /* 0102 */ - {0x0104,0x0105,0x0041}, {0x0104,0x0105,0x0041}, /* 0104 */ - {0x0106,0x0107,0x0043}, {0x0106,0x0107,0x0043}, /* 0106 */ - {0x0108,0x0109,0x0043}, {0x0108,0x0109,0x0043}, /* 0108 */ - {0x010A,0x010B,0x0043}, {0x010A,0x010B,0x0043}, /* 010A */ - {0x010C,0x010D,0x0043}, {0x010C,0x010D,0x0043}, /* 010C */ - {0x010E,0x010F,0x0044}, {0x010E,0x010F,0x0044}, /* 010E */ - {0x0110,0x0111,0x0110}, {0x0110,0x0111,0x0110}, /* 0110 */ - {0x0112,0x0113,0x0045}, {0x0112,0x0113,0x0045}, /* 0112 */ - {0x0114,0x0115,0x0045}, {0x0114,0x0115,0x0045}, /* 0114 */ - {0x0116,0x0117,0x0045}, {0x0116,0x0117,0x0045}, /* 0116 */ - {0x0118,0x0119,0x0045}, {0x0118,0x0119,0x0045}, /* 0118 */ - {0x011A,0x011B,0x0045}, {0x011A,0x011B,0x0045}, /* 011A */ - {0x011C,0x011D,0x0047}, {0x011C,0x011D,0x0047}, /* 011C */ - {0x011E,0x011F,0x0047}, {0x011E,0x011F,0x0047}, /* 011E */ - {0x0120,0x0121,0x0047}, {0x0120,0x0121,0x0047}, /* 0120 */ - {0x0122,0x0123,0x0047}, {0x0122,0x0123,0x0047}, /* 0122 */ - {0x0124,0x0125,0x0048}, {0x0124,0x0125,0x0048}, /* 0124 */ - {0x0126,0x0127,0x0126}, {0x0126,0x0127,0x0126}, /* 0126 */ - {0x0128,0x0129,0x0049}, {0x0128,0x0129,0x0049}, /* 0128 */ - {0x012A,0x012B,0x0049}, {0x012A,0x012B,0x0049}, /* 012A */ - {0x012C,0x012D,0x0049}, {0x012C,0x012D,0x0049}, /* 012C */ - {0x012E,0x012F,0x0049}, {0x012E,0x012F,0x0049}, /* 012E */ - {0x0130,0x0069,0x0049}, {0x0049,0x0131,0x0049}, /* 0130 */ - {0x0132,0x0133,0x0132}, {0x0132,0x0133,0x0132}, /* 0132 */ - {0x0134,0x0135,0x004A}, {0x0134,0x0135,0x004A}, /* 0134 */ - {0x0136,0x0137,0x004B}, {0x0136,0x0137,0x004B}, /* 0136 */ - {0x0138,0x0138,0x0138}, {0x0139,0x013A,0x004C}, /* 0138 */ - {0x0139,0x013A,0x004C}, {0x013B,0x013C,0x004C}, /* 013A */ - {0x013B,0x013C,0x004C}, {0x013D,0x013E,0x004C}, /* 013C */ - {0x013D,0x013E,0x004C}, {0x013F,0x0140,0x013F}, /* 013E */ - {0x013F,0x0140,0x013F}, {0x0141,0x0142,0x0141}, /* 0140 */ - {0x0141,0x0142,0x0141}, {0x0143,0x0144,0x004E}, /* 0142 */ - {0x0143,0x0144,0x004E}, {0x0145,0x0146,0x004E}, /* 0144 */ - {0x0145,0x0146,0x004E}, {0x0147,0x0148,0x004E}, /* 0146 */ - {0x0147,0x0148,0x004E}, {0x0149,0x0149,0x0149}, /* 0148 */ - {0x014A,0x014B,0x014A}, {0x014A,0x014B,0x014A}, /* 014A */ - {0x014C,0x014D,0x004F}, {0x014C,0x014D,0x004F}, /* 014C */ - {0x014E,0x014F,0x004F}, {0x014E,0x014F,0x004F}, /* 014E */ - {0x0150,0x0151,0x004F}, {0x0150,0x0151,0x004F}, /* 0150 */ - {0x0152,0x0153,0x0152}, {0x0152,0x0153,0x0152}, /* 0152 */ - {0x0154,0x0155,0x0052}, {0x0154,0x0155,0x0052}, /* 0154 */ - {0x0156,0x0157,0x0052}, {0x0156,0x0157,0x0052}, /* 0156 */ - {0x0158,0x0159,0x0052}, {0x0158,0x0159,0x0052}, /* 0158 */ - {0x015A,0x015B,0x0053}, {0x015A,0x015B,0x0053}, /* 015A */ - {0x015C,0x015D,0x0053}, {0x015C,0x015D,0x0053}, /* 015C */ - {0x015E,0x015F,0x0053}, {0x015E,0x015F,0x0053}, /* 015E */ - {0x0160,0x0161,0x0053}, {0x0160,0x0161,0x0053}, /* 0160 */ - {0x0162,0x0163,0x0054}, {0x0162,0x0163,0x0054}, /* 0162 */ - {0x0164,0x0165,0x0054}, {0x0164,0x0165,0x0054}, /* 0164 */ - {0x0166,0x0167,0x0166}, {0x0166,0x0167,0x0166}, /* 0166 */ - {0x0168,0x0169,0x0055}, {0x0168,0x0169,0x0055}, /* 0168 */ - {0x016A,0x016B,0x0055}, {0x016A,0x016B,0x0055}, /* 016A */ - {0x016C,0x016D,0x0055}, {0x016C,0x016D,0x0055}, /* 016C */ - {0x016E,0x016F,0x0055}, {0x016E,0x016F,0x0055}, /* 016E */ - {0x0170,0x0171,0x0055}, {0x0170,0x0171,0x0055}, /* 0170 */ - {0x0172,0x0173,0x0055}, {0x0172,0x0173,0x0055}, /* 0172 */ - {0x0174,0x0175,0x0057}, {0x0174,0x0175,0x0057}, /* 0174 */ - {0x0176,0x0177,0x0059}, {0x0176,0x0177,0x0059}, /* 0176 */ - {0x0178,0x00FF,0x0059}, {0x0179,0x017A,0x005A}, /* 0178 */ - {0x0179,0x017A,0x005A}, {0x017B,0x017C,0x005A}, /* 017A */ - {0x017B,0x017C,0x005A}, {0x017D,0x017E,0x005A}, /* 017C */ - {0x017D,0x017E,0x005A}, {0x0053,0x017F,0x0053}, /* 017E */ - {0x0243,0x0180,0x0243}, {0x0181,0x0253,0x0181}, /* 0180 */ - {0x0182,0x0183,0x0182}, {0x0182,0x0183,0x0182}, /* 0182 */ - {0x0184,0x0185,0x0184}, {0x0184,0x0185,0x0184}, /* 0184 */ - {0x0186,0x0254,0x0186}, {0x0187,0x0188,0x0187}, /* 0186 */ - {0x0187,0x0188,0x0187}, {0x0189,0x0256,0x0189}, /* 0188 */ - {0x018A,0x0257,0x018A}, {0x018B,0x018C,0x018B}, /* 018A */ - {0x018B,0x018C,0x018B}, {0x018D,0x018D,0x018D}, /* 018C */ - {0x018E,0x01DD,0x018E}, {0x018F,0x0259,0x018F}, /* 018E */ - {0x0190,0x025B,0x0190}, {0x0191,0x0192,0x0191}, /* 0190 */ - {0x0191,0x0192,0x0191}, {0x0193,0x0260,0x0193}, /* 0192 */ - {0x0194,0x0263,0x0194}, {0x01F6,0x0195,0x01F6}, /* 0194 */ - {0x0196,0x0269,0x0196}, {0x0197,0x0268,0x0197}, /* 0196 */ - {0x0198,0x0199,0x0198}, {0x0198,0x0199,0x0198}, /* 0198 */ - {0x023D,0x019A,0x023D}, {0x019B,0x019B,0x019B}, /* 019A */ - {0x019C,0x026F,0x019C}, {0x019D,0x0272,0x019D}, /* 019C */ - {0x0220,0x019E,0x0220}, {0x019F,0x0275,0x019F}, /* 019E */ - {0x01A0,0x01A1,0x004F}, {0x01A0,0x01A1,0x004F}, /* 01A0 */ - {0x01A2,0x01A3,0x01A2}, {0x01A2,0x01A3,0x01A2}, /* 01A2 */ - {0x01A4,0x01A5,0x01A4}, {0x01A4,0x01A5,0x01A4}, /* 01A4 */ - {0x01A6,0x0280,0x01A6}, {0x01A7,0x01A8,0x01A7}, /* 01A6 */ - {0x01A7,0x01A8,0x01A7}, {0x01A9,0x0283,0x01A9}, /* 01A8 */ - {0x01AA,0x01AA,0x01AA}, {0x01AB,0x01AB,0x01AB}, /* 01AA */ - {0x01AC,0x01AD,0x01AC}, {0x01AC,0x01AD,0x01AC}, /* 01AC */ - {0x01AE,0x0288,0x01AE}, {0x01AF,0x01B0,0x0055}, /* 01AE */ - {0x01AF,0x01B0,0x0055}, {0x01B1,0x028A,0x01B1}, /* 01B0 */ - {0x01B2,0x028B,0x01B2}, {0x01B3,0x01B4,0x01B3}, /* 01B2 */ - {0x01B3,0x01B4,0x01B3}, {0x01B5,0x01B6,0x01B5}, /* 01B4 */ - {0x01B5,0x01B6,0x01B5}, {0x01B7,0x0292,0x01B7}, /* 01B6 */ - {0x01B8,0x01B9,0x01B8}, {0x01B8,0x01B9,0x01B8}, /* 01B8 */ - {0x01BA,0x01BA,0x01BA}, {0x01BB,0x01BB,0x01BB}, /* 01BA */ - {0x01BC,0x01BD,0x01BC}, {0x01BC,0x01BD,0x01BC}, /* 01BC */ - {0x01BE,0x01BE,0x01BE}, {0x01F7,0x01BF,0x01F7}, /* 01BE */ - {0x01C0,0x01C0,0x01C0}, {0x01C1,0x01C1,0x01C1}, /* 01C0 */ - {0x01C2,0x01C2,0x01C2}, {0x01C3,0x01C3,0x01C3}, /* 01C2 */ - {0x01C4,0x01C6,0x01C4}, {0x01C4,0x01C6,0x01C4}, /* 01C4 */ - {0x01C4,0x01C6,0x01C4}, {0x01C7,0x01C9,0x01C7}, /* 01C6 */ - {0x01C7,0x01C9,0x01C7}, {0x01C7,0x01C9,0x01C7}, /* 01C8 */ - {0x01CA,0x01CC,0x01CA}, {0x01CA,0x01CC,0x01CA}, /* 01CA */ - {0x01CA,0x01CC,0x01CA}, {0x01CD,0x01CE,0x0041}, /* 01CC */ - {0x01CD,0x01CE,0x0041}, {0x01CF,0x01D0,0x0049}, /* 01CE */ - {0x01CF,0x01D0,0x0049}, {0x01D1,0x01D2,0x004F}, /* 01D0 */ - {0x01D1,0x01D2,0x004F}, {0x01D3,0x01D4,0x0055}, /* 01D2 */ - {0x01D3,0x01D4,0x0055}, {0x01D5,0x01D6,0x0055}, /* 01D4 */ - {0x01D5,0x01D6,0x0055}, {0x01D7,0x01D8,0x0055}, /* 01D6 */ - {0x01D7,0x01D8,0x0055}, {0x01D9,0x01DA,0x0055}, /* 01D8 */ - {0x01D9,0x01DA,0x0055}, {0x01DB,0x01DC,0x0055}, /* 01DA */ - {0x01DB,0x01DC,0x0055}, {0x018E,0x01DD,0x018E}, /* 01DC */ - {0x01DE,0x01DF,0x0041}, {0x01DE,0x01DF,0x0041}, /* 01DE */ - {0x01E0,0x01E1,0x0041}, {0x01E0,0x01E1,0x0041}, /* 01E0 */ - {0x01E2,0x01E3,0x00C6}, {0x01E2,0x01E3,0x00C6}, /* 01E2 */ - {0x01E4,0x01E5,0x01E4}, {0x01E4,0x01E5,0x01E4}, /* 01E4 */ - {0x01E6,0x01E7,0x0047}, {0x01E6,0x01E7,0x0047}, /* 01E6 */ - {0x01E8,0x01E9,0x004B}, {0x01E8,0x01E9,0x004B}, /* 01E8 */ - {0x01EA,0x01EB,0x004F}, {0x01EA,0x01EB,0x004F}, /* 01EA */ - {0x01EC,0x01ED,0x004F}, {0x01EC,0x01ED,0x004F}, /* 01EC */ - {0x01EE,0x01EF,0x01B7}, {0x01EE,0x01EF,0x01B7}, /* 01EE */ - {0x01F0,0x01F0,0x004A}, {0x01F1,0x01F3,0x01F1}, /* 01F0 */ - {0x01F1,0x01F3,0x01F1}, {0x01F1,0x01F3,0x01F1}, /* 01F2 */ - {0x01F4,0x01F5,0x0047}, {0x01F4,0x01F5,0x0047}, /* 01F4 */ - {0x01F6,0x0195,0x01F6}, {0x01F7,0x01BF,0x01F7}, /* 01F6 */ - {0x01F8,0x01F9,0x004E}, {0x01F8,0x01F9,0x004E}, /* 01F8 */ - {0x01FA,0x01FB,0x0041}, {0x01FA,0x01FB,0x0041}, /* 01FA */ - {0x01FC,0x01FD,0x00C6}, {0x01FC,0x01FD,0x00C6}, /* 01FC */ - {0x01FE,0x01FF,0x00D8}, {0x01FE,0x01FF,0x00D8} /* 01FE */ -}; - -static MY_UNICASE_CHARACTER u520p02[]={ - {0x0200,0x0201,0x0041}, {0x0200,0x0201,0x0041}, /* 0200 */ - {0x0202,0x0203,0x0041}, {0x0202,0x0203,0x0041}, /* 0202 */ - {0x0204,0x0205,0x0045}, {0x0204,0x0205,0x0045}, /* 0204 */ - {0x0206,0x0207,0x0045}, {0x0206,0x0207,0x0045}, /* 0206 */ - {0x0208,0x0209,0x0049}, {0x0208,0x0209,0x0049}, /* 0208 */ - {0x020A,0x020B,0x0049}, {0x020A,0x020B,0x0049}, /* 020A */ - {0x020C,0x020D,0x004F}, {0x020C,0x020D,0x004F}, /* 020C */ - {0x020E,0x020F,0x004F}, {0x020E,0x020F,0x004F}, /* 020E */ - {0x0210,0x0211,0x0052}, {0x0210,0x0211,0x0052}, /* 0210 */ - {0x0212,0x0213,0x0052}, {0x0212,0x0213,0x0052}, /* 0212 */ - {0x0214,0x0215,0x0055}, {0x0214,0x0215,0x0055}, /* 0214 */ - {0x0216,0x0217,0x0055}, {0x0216,0x0217,0x0055}, /* 0216 */ - {0x0218,0x0219,0x0053}, {0x0218,0x0219,0x0053}, /* 0218 */ - {0x021A,0x021B,0x0054}, {0x021A,0x021B,0x0054}, /* 021A */ - {0x021C,0x021D,0x021C}, {0x021C,0x021D,0x021C}, /* 021C */ - {0x021E,0x021F,0x0048}, {0x021E,0x021F,0x0048}, /* 021E */ - {0x0220,0x019E,0x0220}, {0x0221,0x0221,0x0221}, /* 0220 */ - {0x0222,0x0223,0x0222}, {0x0222,0x0223,0x0222}, /* 0222 */ - {0x0224,0x0225,0x0224}, {0x0224,0x0225,0x0224}, /* 0224 */ - {0x0226,0x0227,0x0041}, {0x0226,0x0227,0x0041}, /* 0226 */ - {0x0228,0x0229,0x0045}, {0x0228,0x0229,0x0045}, /* 0228 */ - {0x022A,0x022B,0x004F}, {0x022A,0x022B,0x004F}, /* 022A */ - {0x022C,0x022D,0x004F}, {0x022C,0x022D,0x004F}, /* 022C */ - {0x022E,0x022F,0x004F}, {0x022E,0x022F,0x004F}, /* 022E */ - {0x0230,0x0231,0x004F}, {0x0230,0x0231,0x004F}, /* 0230 */ - {0x0232,0x0233,0x0059}, {0x0232,0x0233,0x0059}, /* 0232 */ - {0x0234,0x0234,0x0234}, {0x0235,0x0235,0x0235}, /* 0234 */ - {0x0236,0x0236,0x0236}, {0x0237,0x0237,0x0237}, /* 0236 */ - {0x0238,0x0238,0x0238}, {0x0239,0x0239,0x0239}, /* 0238 */ - {0x023A,0x2C65,0x023A}, {0x023B,0x023C,0x023B}, /* 023A */ - {0x023B,0x023C,0x023B}, {0x023D,0x019A,0x023D}, /* 023C */ - {0x023E,0x2C66,0x023E}, {0x2C7E,0x023F,0x2C7E}, /* 023E */ - {0x2C7F,0x0240,0x2C7F}, {0x0241,0x0242,0x0241}, /* 0240 */ - {0x0241,0x0242,0x0241}, {0x0243,0x0180,0x0243}, /* 0242 */ - {0x0244,0x0289,0x0244}, {0x0245,0x028C,0x0245}, /* 0244 */ - {0x0246,0x0247,0x0246}, {0x0246,0x0247,0x0246}, /* 0246 */ - {0x0248,0x0249,0x0248}, {0x0248,0x0249,0x0248}, /* 0248 */ - {0x024A,0x024B,0x024A}, {0x024A,0x024B,0x024A}, /* 024A */ - {0x024C,0x024D,0x024C}, {0x024C,0x024D,0x024C}, /* 024C */ - {0x024E,0x024F,0x024E}, {0x024E,0x024F,0x024E}, /* 024E */ - {0x2C6F,0x0250,0x2C6F}, {0x2C6D,0x0251,0x2C6D}, /* 0250 */ - {0x2C70,0x0252,0x2C70}, {0x0181,0x0253,0x0181}, /* 0252 */ - {0x0186,0x0254,0x0186}, {0x0255,0x0255,0x0255}, /* 0254 */ - {0x0189,0x0256,0x0189}, {0x018A,0x0257,0x018A}, /* 0256 */ - {0x0258,0x0258,0x0258}, {0x018F,0x0259,0x018F}, /* 0258 */ - {0x025A,0x025A,0x025A}, {0x0190,0x025B,0x0190}, /* 025A */ - {0x025C,0x025C,0x025C}, {0x025D,0x025D,0x025D}, /* 025C */ - {0x025E,0x025E,0x025E}, {0x025F,0x025F,0x025F}, /* 025E */ - {0x0193,0x0260,0x0193}, {0x0261,0x0261,0x0261}, /* 0260 */ - {0x0262,0x0262,0x0262}, {0x0194,0x0263,0x0194}, /* 0262 */ - {0x0264,0x0264,0x0264}, {0x0265,0x0265,0x0265}, /* 0264 */ - {0x0266,0x0266,0x0266}, {0x0267,0x0267,0x0267}, /* 0266 */ - {0x0197,0x0268,0x0197}, {0x0196,0x0269,0x0196}, /* 0268 */ - {0x026A,0x026A,0x026A}, {0x2C62,0x026B,0x2C62}, /* 026A */ - {0x026C,0x026C,0x026C}, {0x026D,0x026D,0x026D}, /* 026C */ - {0x026E,0x026E,0x026E}, {0x019C,0x026F,0x019C}, /* 026E */ - {0x0270,0x0270,0x0270}, {0x2C6E,0x0271,0x2C6E}, /* 0270 */ - {0x019D,0x0272,0x019D}, {0x0273,0x0273,0x0273}, /* 0272 */ - {0x0274,0x0274,0x0274}, {0x019F,0x0275,0x019F}, /* 0274 */ - {0x0276,0x0276,0x0276}, {0x0277,0x0277,0x0277}, /* 0276 */ - {0x0278,0x0278,0x0278}, {0x0279,0x0279,0x0279}, /* 0278 */ - {0x027A,0x027A,0x027A}, {0x027B,0x027B,0x027B}, /* 027A */ - {0x027C,0x027C,0x027C}, {0x2C64,0x027D,0x2C64}, /* 027C */ - {0x027E,0x027E,0x027E}, {0x027F,0x027F,0x027F}, /* 027E */ - {0x01A6,0x0280,0x01A6}, {0x0281,0x0281,0x0281}, /* 0280 */ - {0x0282,0x0282,0x0282}, {0x01A9,0x0283,0x01A9}, /* 0282 */ - {0x0284,0x0284,0x0284}, {0x0285,0x0285,0x0285}, /* 0284 */ - {0x0286,0x0286,0x0286}, {0x0287,0x0287,0x0287}, /* 0286 */ - {0x01AE,0x0288,0x01AE}, {0x0244,0x0289,0x0244}, /* 0288 */ - {0x01B1,0x028A,0x01B1}, {0x01B2,0x028B,0x01B2}, /* 028A */ - {0x0245,0x028C,0x0245}, {0x028D,0x028D,0x028D}, /* 028C */ - {0x028E,0x028E,0x028E}, {0x028F,0x028F,0x028F}, /* 028E */ - {0x0290,0x0290,0x0290}, {0x0291,0x0291,0x0291}, /* 0290 */ - {0x01B7,0x0292,0x01B7}, {0x0293,0x0293,0x0293}, /* 0292 */ - {0x0294,0x0294,0x0294}, {0x0295,0x0295,0x0295}, /* 0294 */ - {0x0296,0x0296,0x0296}, {0x0297,0x0297,0x0297}, /* 0296 */ - {0x0298,0x0298,0x0298}, {0x0299,0x0299,0x0299}, /* 0298 */ - {0x029A,0x029A,0x029A}, {0x029B,0x029B,0x029B}, /* 029A */ - {0x029C,0x029C,0x029C}, {0x029D,0x029D,0x029D}, /* 029C */ - {0x029E,0x029E,0x029E}, {0x029F,0x029F,0x029F}, /* 029E */ - {0x02A0,0x02A0,0x02A0}, {0x02A1,0x02A1,0x02A1}, /* 02A0 */ - {0x02A2,0x02A2,0x02A2}, {0x02A3,0x02A3,0x02A3}, /* 02A2 */ - {0x02A4,0x02A4,0x02A4}, {0x02A5,0x02A5,0x02A5}, /* 02A4 */ - {0x02A6,0x02A6,0x02A6}, {0x02A7,0x02A7,0x02A7}, /* 02A6 */ - {0x02A8,0x02A8,0x02A8}, {0x02A9,0x02A9,0x02A9}, /* 02A8 */ - {0x02AA,0x02AA,0x02AA}, {0x02AB,0x02AB,0x02AB}, /* 02AA */ - {0x02AC,0x02AC,0x02AC}, {0x02AD,0x02AD,0x02AD}, /* 02AC */ - {0x02AE,0x02AE,0x02AE}, {0x02AF,0x02AF,0x02AF}, /* 02AE */ - {0x02B0,0x02B0,0x02B0}, {0x02B1,0x02B1,0x02B1}, /* 02B0 */ - {0x02B2,0x02B2,0x02B2}, {0x02B3,0x02B3,0x02B3}, /* 02B2 */ - {0x02B4,0x02B4,0x02B4}, {0x02B5,0x02B5,0x02B5}, /* 02B4 */ - {0x02B6,0x02B6,0x02B6}, {0x02B7,0x02B7,0x02B7}, /* 02B6 */ - {0x02B8,0x02B8,0x02B8}, {0x02B9,0x02B9,0x02B9}, /* 02B8 */ - {0x02BA,0x02BA,0x02BA}, {0x02BB,0x02BB,0x02BB}, /* 02BA */ - {0x02BC,0x02BC,0x02BC}, {0x02BD,0x02BD,0x02BD}, /* 02BC */ - {0x02BE,0x02BE,0x02BE}, {0x02BF,0x02BF,0x02BF}, /* 02BE */ - {0x02C0,0x02C0,0x02C0}, {0x02C1,0x02C1,0x02C1}, /* 02C0 */ - {0x02C2,0x02C2,0x02C2}, {0x02C3,0x02C3,0x02C3}, /* 02C2 */ - {0x02C4,0x02C4,0x02C4}, {0x02C5,0x02C5,0x02C5}, /* 02C4 */ - {0x02C6,0x02C6,0x02C6}, {0x02C7,0x02C7,0x02C7}, /* 02C6 */ - {0x02C8,0x02C8,0x02C8}, {0x02C9,0x02C9,0x02C9}, /* 02C8 */ - {0x02CA,0x02CA,0x02CA}, {0x02CB,0x02CB,0x02CB}, /* 02CA */ - {0x02CC,0x02CC,0x02CC}, {0x02CD,0x02CD,0x02CD}, /* 02CC */ - {0x02CE,0x02CE,0x02CE}, {0x02CF,0x02CF,0x02CF}, /* 02CE */ - {0x02D0,0x02D0,0x02D0}, {0x02D1,0x02D1,0x02D1}, /* 02D0 */ - {0x02D2,0x02D2,0x02D2}, {0x02D3,0x02D3,0x02D3}, /* 02D2 */ - {0x02D4,0x02D4,0x02D4}, {0x02D5,0x02D5,0x02D5}, /* 02D4 */ - {0x02D6,0x02D6,0x02D6}, {0x02D7,0x02D7,0x02D7}, /* 02D6 */ - {0x02D8,0x02D8,0x02D8}, {0x02D9,0x02D9,0x02D9}, /* 02D8 */ - {0x02DA,0x02DA,0x02DA}, {0x02DB,0x02DB,0x02DB}, /* 02DA */ - {0x02DC,0x02DC,0x02DC}, {0x02DD,0x02DD,0x02DD}, /* 02DC */ - {0x02DE,0x02DE,0x02DE}, {0x02DF,0x02DF,0x02DF}, /* 02DE */ - {0x02E0,0x02E0,0x02E0}, {0x02E1,0x02E1,0x02E1}, /* 02E0 */ - {0x02E2,0x02E2,0x02E2}, {0x02E3,0x02E3,0x02E3}, /* 02E2 */ - {0x02E4,0x02E4,0x02E4}, {0x02E5,0x02E5,0x02E5}, /* 02E4 */ - {0x02E6,0x02E6,0x02E6}, {0x02E7,0x02E7,0x02E7}, /* 02E6 */ - {0x02E8,0x02E8,0x02E8}, {0x02E9,0x02E9,0x02E9}, /* 02E8 */ - {0x02EA,0x02EA,0x02EA}, {0x02EB,0x02EB,0x02EB}, /* 02EA */ - {0x02EC,0x02EC,0x02EC}, {0x02ED,0x02ED,0x02ED}, /* 02EC */ - {0x02EE,0x02EE,0x02EE}, {0x02EF,0x02EF,0x02EF}, /* 02EE */ - {0x02F0,0x02F0,0x02F0}, {0x02F1,0x02F1,0x02F1}, /* 02F0 */ - {0x02F2,0x02F2,0x02F2}, {0x02F3,0x02F3,0x02F3}, /* 02F2 */ - {0x02F4,0x02F4,0x02F4}, {0x02F5,0x02F5,0x02F5}, /* 02F4 */ - {0x02F6,0x02F6,0x02F6}, {0x02F7,0x02F7,0x02F7}, /* 02F6 */ - {0x02F8,0x02F8,0x02F8}, {0x02F9,0x02F9,0x02F9}, /* 02F8 */ - {0x02FA,0x02FA,0x02FA}, {0x02FB,0x02FB,0x02FB}, /* 02FA */ - {0x02FC,0x02FC,0x02FC}, {0x02FD,0x02FD,0x02FD}, /* 02FC */ - {0x02FE,0x02FE,0x02FE}, {0x02FF,0x02FF,0x02FF} /* 02FE */ -}; - -static MY_UNICASE_CHARACTER u520p03[]={ - {0x0300,0x0300,0x0300}, {0x0301,0x0301,0x0301}, /* 0300 */ - {0x0302,0x0302,0x0302}, {0x0303,0x0303,0x0303}, /* 0302 */ - {0x0304,0x0304,0x0304}, {0x0305,0x0305,0x0305}, /* 0304 */ - {0x0306,0x0306,0x0306}, {0x0307,0x0307,0x0307}, /* 0306 */ - {0x0308,0x0308,0x0308}, {0x0309,0x0309,0x0309}, /* 0308 */ - {0x030A,0x030A,0x030A}, {0x030B,0x030B,0x030B}, /* 030A */ - {0x030C,0x030C,0x030C}, {0x030D,0x030D,0x030D}, /* 030C */ - {0x030E,0x030E,0x030E}, {0x030F,0x030F,0x030F}, /* 030E */ - {0x0310,0x0310,0x0310}, {0x0311,0x0311,0x0311}, /* 0310 */ - {0x0312,0x0312,0x0312}, {0x0313,0x0313,0x0313}, /* 0312 */ - {0x0314,0x0314,0x0314}, {0x0315,0x0315,0x0315}, /* 0314 */ - {0x0316,0x0316,0x0316}, {0x0317,0x0317,0x0317}, /* 0316 */ - {0x0318,0x0318,0x0318}, {0x0319,0x0319,0x0319}, /* 0318 */ - {0x031A,0x031A,0x031A}, {0x031B,0x031B,0x031B}, /* 031A */ - {0x031C,0x031C,0x031C}, {0x031D,0x031D,0x031D}, /* 031C */ - {0x031E,0x031E,0x031E}, {0x031F,0x031F,0x031F}, /* 031E */ - {0x0320,0x0320,0x0320}, {0x0321,0x0321,0x0321}, /* 0320 */ - {0x0322,0x0322,0x0322}, {0x0323,0x0323,0x0323}, /* 0322 */ - {0x0324,0x0324,0x0324}, {0x0325,0x0325,0x0325}, /* 0324 */ - {0x0326,0x0326,0x0326}, {0x0327,0x0327,0x0327}, /* 0326 */ - {0x0328,0x0328,0x0328}, {0x0329,0x0329,0x0329}, /* 0328 */ - {0x032A,0x032A,0x032A}, {0x032B,0x032B,0x032B}, /* 032A */ - {0x032C,0x032C,0x032C}, {0x032D,0x032D,0x032D}, /* 032C */ - {0x032E,0x032E,0x032E}, {0x032F,0x032F,0x032F}, /* 032E */ - {0x0330,0x0330,0x0330}, {0x0331,0x0331,0x0331}, /* 0330 */ - {0x0332,0x0332,0x0332}, {0x0333,0x0333,0x0333}, /* 0332 */ - {0x0334,0x0334,0x0334}, {0x0335,0x0335,0x0335}, /* 0334 */ - {0x0336,0x0336,0x0336}, {0x0337,0x0337,0x0337}, /* 0336 */ - {0x0338,0x0338,0x0338}, {0x0339,0x0339,0x0339}, /* 0338 */ - {0x033A,0x033A,0x033A}, {0x033B,0x033B,0x033B}, /* 033A */ - {0x033C,0x033C,0x033C}, {0x033D,0x033D,0x033D}, /* 033C */ - {0x033E,0x033E,0x033E}, {0x033F,0x033F,0x033F}, /* 033E */ - {0x0340,0x0340,0x0340}, {0x0341,0x0341,0x0341}, /* 0340 */ - {0x0342,0x0342,0x0342}, {0x0343,0x0343,0x0343}, /* 0342 */ - {0x0344,0x0344,0x0344}, {0x0399,0x0345,0x0399}, /* 0344 */ - {0x0346,0x0346,0x0346}, {0x0347,0x0347,0x0347}, /* 0346 */ - {0x0348,0x0348,0x0348}, {0x0349,0x0349,0x0349}, /* 0348 */ - {0x034A,0x034A,0x034A}, {0x034B,0x034B,0x034B}, /* 034A */ - {0x034C,0x034C,0x034C}, {0x034D,0x034D,0x034D}, /* 034C */ - {0x034E,0x034E,0x034E}, {0x034F,0x034F,0x034F}, /* 034E */ - {0x0350,0x0350,0x0350}, {0x0351,0x0351,0x0351}, /* 0350 */ - {0x0352,0x0352,0x0352}, {0x0353,0x0353,0x0353}, /* 0352 */ - {0x0354,0x0354,0x0354}, {0x0355,0x0355,0x0355}, /* 0354 */ - {0x0356,0x0356,0x0356}, {0x0357,0x0357,0x0357}, /* 0356 */ - {0x0358,0x0358,0x0358}, {0x0359,0x0359,0x0359}, /* 0358 */ - {0x035A,0x035A,0x035A}, {0x035B,0x035B,0x035B}, /* 035A */ - {0x035C,0x035C,0x035C}, {0x035D,0x035D,0x035D}, /* 035C */ - {0x035E,0x035E,0x035E}, {0x035F,0x035F,0x035F}, /* 035E */ - {0x0360,0x0360,0x0360}, {0x0361,0x0361,0x0361}, /* 0360 */ - {0x0362,0x0362,0x0362}, {0x0363,0x0363,0x0363}, /* 0362 */ - {0x0364,0x0364,0x0364}, {0x0365,0x0365,0x0365}, /* 0364 */ - {0x0366,0x0366,0x0366}, {0x0367,0x0367,0x0367}, /* 0366 */ - {0x0368,0x0368,0x0368}, {0x0369,0x0369,0x0369}, /* 0368 */ - {0x036A,0x036A,0x036A}, {0x036B,0x036B,0x036B}, /* 036A */ - {0x036C,0x036C,0x036C}, {0x036D,0x036D,0x036D}, /* 036C */ - {0x036E,0x036E,0x036E}, {0x036F,0x036F,0x036F}, /* 036E */ - {0x0370,0x0371,0x0370}, {0x0370,0x0371,0x0370}, /* 0370 */ - {0x0372,0x0373,0x0372}, {0x0372,0x0373,0x0372}, /* 0372 */ - {0x0374,0x0374,0x0374}, {0x0375,0x0375,0x0375}, /* 0374 */ - {0x0376,0x0377,0x0376}, {0x0376,0x0377,0x0376}, /* 0376 */ - {0x0378,0x0378,0x0378}, {0x0379,0x0379,0x0379}, /* 0378 */ - {0x037A,0x037A,0x037A}, {0x03FD,0x037B,0x03FD}, /* 037A */ - {0x03FE,0x037C,0x03FE}, {0x03FF,0x037D,0x03FF}, /* 037C */ - {0x037E,0x037E,0x037E}, {0x037F,0x037F,0x037F}, /* 037E */ - {0x0380,0x0380,0x0380}, {0x0381,0x0381,0x0381}, /* 0380 */ - {0x0382,0x0382,0x0382}, {0x0383,0x0383,0x0383}, /* 0382 */ - {0x0384,0x0384,0x0384}, {0x0385,0x0385,0x0385}, /* 0384 */ - {0x0386,0x03AC,0x0391}, {0x0387,0x0387,0x0387}, /* 0386 */ - {0x0388,0x03AD,0x0395}, {0x0389,0x03AE,0x0397}, /* 0388 */ - {0x038A,0x03AF,0x0399}, {0x038B,0x038B,0x038B}, /* 038A */ - {0x038C,0x03CC,0x039F}, {0x038D,0x038D,0x038D}, /* 038C */ - {0x038E,0x03CD,0x03A5}, {0x038F,0x03CE,0x03A9}, /* 038E */ - {0x0390,0x0390,0x0399}, {0x0391,0x03B1,0x0391}, /* 0390 */ - {0x0392,0x03B2,0x0392}, {0x0393,0x03B3,0x0393}, /* 0392 */ - {0x0394,0x03B4,0x0394}, {0x0395,0x03B5,0x0395}, /* 0394 */ - {0x0396,0x03B6,0x0396}, {0x0397,0x03B7,0x0397}, /* 0396 */ - {0x0398,0x03B8,0x0398}, {0x0399,0x03B9,0x0399}, /* 0398 */ - {0x039A,0x03BA,0x039A}, {0x039B,0x03BB,0x039B}, /* 039A */ - {0x039C,0x03BC,0x039C}, {0x039D,0x03BD,0x039D}, /* 039C */ - {0x039E,0x03BE,0x039E}, {0x039F,0x03BF,0x039F}, /* 039E */ - {0x03A0,0x03C0,0x03A0}, {0x03A1,0x03C1,0x03A1}, /* 03A0 */ - {0x03A2,0x03A2,0x03A2}, {0x03A3,0x03C3,0x03A3}, /* 03A2 */ - {0x03A4,0x03C4,0x03A4}, {0x03A5,0x03C5,0x03A5}, /* 03A4 */ - {0x03A6,0x03C6,0x03A6}, {0x03A7,0x03C7,0x03A7}, /* 03A6 */ - {0x03A8,0x03C8,0x03A8}, {0x03A9,0x03C9,0x03A9}, /* 03A8 */ - {0x03AA,0x03CA,0x0399}, {0x03AB,0x03CB,0x03A5}, /* 03AA */ - {0x0386,0x03AC,0x0391}, {0x0388,0x03AD,0x0395}, /* 03AC */ - {0x0389,0x03AE,0x0397}, {0x038A,0x03AF,0x0399}, /* 03AE */ - {0x03B0,0x03B0,0x03A5}, {0x0391,0x03B1,0x0391}, /* 03B0 */ - {0x0392,0x03B2,0x0392}, {0x0393,0x03B3,0x0393}, /* 03B2 */ - {0x0394,0x03B4,0x0394}, {0x0395,0x03B5,0x0395}, /* 03B4 */ - {0x0396,0x03B6,0x0396}, {0x0397,0x03B7,0x0397}, /* 03B6 */ - {0x0398,0x03B8,0x0398}, {0x0399,0x03B9,0x0399}, /* 03B8 */ - {0x039A,0x03BA,0x039A}, {0x039B,0x03BB,0x039B}, /* 03BA */ - {0x039C,0x03BC,0x039C}, {0x039D,0x03BD,0x039D}, /* 03BC */ - {0x039E,0x03BE,0x039E}, {0x039F,0x03BF,0x039F}, /* 03BE */ - {0x03A0,0x03C0,0x03A0}, {0x03A1,0x03C1,0x03A1}, /* 03C0 */ - {0x03A3,0x03C2,0x03A3}, {0x03A3,0x03C3,0x03A3}, /* 03C2 */ - {0x03A4,0x03C4,0x03A4}, {0x03A5,0x03C5,0x03A5}, /* 03C4 */ - {0x03A6,0x03C6,0x03A6}, {0x03A7,0x03C7,0x03A7}, /* 03C6 */ - {0x03A8,0x03C8,0x03A8}, {0x03A9,0x03C9,0x03A9}, /* 03C8 */ - {0x03AA,0x03CA,0x0399}, {0x03AB,0x03CB,0x03A5}, /* 03CA */ - {0x038C,0x03CC,0x039F}, {0x038E,0x03CD,0x03A5}, /* 03CC */ - {0x038F,0x03CE,0x03A9}, {0x03CF,0x03D7,0x03CF}, /* 03CE */ - {0x0392,0x03D0,0x0392}, {0x0398,0x03D1,0x0398}, /* 03D0 */ - {0x03D2,0x03D2,0x03D2}, {0x03D3,0x03D3,0x03D2}, /* 03D2 */ - {0x03D4,0x03D4,0x03D2}, {0x03A6,0x03D5,0x03A6}, /* 03D4 */ - {0x03A0,0x03D6,0x03A0}, {0x03CF,0x03D7,0x03CF}, /* 03D6 */ - {0x03D8,0x03D9,0x03D8}, {0x03D8,0x03D9,0x03D8}, /* 03D8 */ - {0x03DA,0x03DB,0x03DA}, {0x03DA,0x03DB,0x03DA}, /* 03DA */ - {0x03DC,0x03DD,0x03DC}, {0x03DC,0x03DD,0x03DC}, /* 03DC */ - {0x03DE,0x03DF,0x03DE}, {0x03DE,0x03DF,0x03DE}, /* 03DE */ - {0x03E0,0x03E1,0x03E0}, {0x03E0,0x03E1,0x03E0}, /* 03E0 */ - {0x03E2,0x03E3,0x03E2}, {0x03E2,0x03E3,0x03E2}, /* 03E2 */ - {0x03E4,0x03E5,0x03E4}, {0x03E4,0x03E5,0x03E4}, /* 03E4 */ - {0x03E6,0x03E7,0x03E6}, {0x03E6,0x03E7,0x03E6}, /* 03E6 */ - {0x03E8,0x03E9,0x03E8}, {0x03E8,0x03E9,0x03E8}, /* 03E8 */ - {0x03EA,0x03EB,0x03EA}, {0x03EA,0x03EB,0x03EA}, /* 03EA */ - {0x03EC,0x03ED,0x03EC}, {0x03EC,0x03ED,0x03EC}, /* 03EC */ - {0x03EE,0x03EF,0x03EE}, {0x03EE,0x03EF,0x03EE}, /* 03EE */ - {0x039A,0x03F0,0x039A}, {0x03A1,0x03F1,0x03A1}, /* 03F0 */ - {0x03F9,0x03F2,0x03F9}, {0x03F3,0x03F3,0x03F3}, /* 03F2 */ - {0x03F4,0x03B8,0x03F4}, {0x0395,0x03F5,0x0395}, /* 03F4 */ - {0x03F6,0x03F6,0x03F6}, {0x03F7,0x03F8,0x03F7}, /* 03F6 */ - {0x03F7,0x03F8,0x03F7}, {0x03F9,0x03F2,0x03F9}, /* 03F8 */ - {0x03FA,0x03FB,0x03FA}, {0x03FA,0x03FB,0x03FA}, /* 03FA */ - {0x03FC,0x03FC,0x03FC}, {0x03FD,0x037B,0x03FD}, /* 03FC */ - {0x03FE,0x037C,0x03FE}, {0x03FF,0x037D,0x03FF} /* 03FE */ -}; - -static MY_UNICASE_CHARACTER u520p04[]={ - {0x0400,0x0450,0x0415}, {0x0401,0x0451,0x0415}, /* 0400 */ - {0x0402,0x0452,0x0402}, {0x0403,0x0453,0x0413}, /* 0402 */ - {0x0404,0x0454,0x0404}, {0x0405,0x0455,0x0405}, /* 0404 */ - {0x0406,0x0456,0x0406}, {0x0407,0x0457,0x0406}, /* 0406 */ - {0x0408,0x0458,0x0408}, {0x0409,0x0459,0x0409}, /* 0408 */ - {0x040A,0x045A,0x040A}, {0x040B,0x045B,0x040B}, /* 040A */ - {0x040C,0x045C,0x041A}, {0x040D,0x045D,0x0418}, /* 040C */ - {0x040E,0x045E,0x0423}, {0x040F,0x045F,0x040F}, /* 040E */ - {0x0410,0x0430,0x0410}, {0x0411,0x0431,0x0411}, /* 0410 */ - {0x0412,0x0432,0x0412}, {0x0413,0x0433,0x0413}, /* 0412 */ - {0x0414,0x0434,0x0414}, {0x0415,0x0435,0x0415}, /* 0414 */ - {0x0416,0x0436,0x0416}, {0x0417,0x0437,0x0417}, /* 0416 */ - {0x0418,0x0438,0x0418}, {0x0419,0x0439,0x0419}, /* 0418 */ - {0x041A,0x043A,0x041A}, {0x041B,0x043B,0x041B}, /* 041A */ - {0x041C,0x043C,0x041C}, {0x041D,0x043D,0x041D}, /* 041C */ - {0x041E,0x043E,0x041E}, {0x041F,0x043F,0x041F}, /* 041E */ - {0x0420,0x0440,0x0420}, {0x0421,0x0441,0x0421}, /* 0420 */ - {0x0422,0x0442,0x0422}, {0x0423,0x0443,0x0423}, /* 0422 */ - {0x0424,0x0444,0x0424}, {0x0425,0x0445,0x0425}, /* 0424 */ - {0x0426,0x0446,0x0426}, {0x0427,0x0447,0x0427}, /* 0426 */ - {0x0428,0x0448,0x0428}, {0x0429,0x0449,0x0429}, /* 0428 */ - {0x042A,0x044A,0x042A}, {0x042B,0x044B,0x042B}, /* 042A */ - {0x042C,0x044C,0x042C}, {0x042D,0x044D,0x042D}, /* 042C */ - {0x042E,0x044E,0x042E}, {0x042F,0x044F,0x042F}, /* 042E */ - {0x0410,0x0430,0x0410}, {0x0411,0x0431,0x0411}, /* 0430 */ - {0x0412,0x0432,0x0412}, {0x0413,0x0433,0x0413}, /* 0432 */ - {0x0414,0x0434,0x0414}, {0x0415,0x0435,0x0415}, /* 0434 */ - {0x0416,0x0436,0x0416}, {0x0417,0x0437,0x0417}, /* 0436 */ - {0x0418,0x0438,0x0418}, {0x0419,0x0439,0x0419}, /* 0438 */ - {0x041A,0x043A,0x041A}, {0x041B,0x043B,0x041B}, /* 043A */ - {0x041C,0x043C,0x041C}, {0x041D,0x043D,0x041D}, /* 043C */ - {0x041E,0x043E,0x041E}, {0x041F,0x043F,0x041F}, /* 043E */ - {0x0420,0x0440,0x0420}, {0x0421,0x0441,0x0421}, /* 0440 */ - {0x0422,0x0442,0x0422}, {0x0423,0x0443,0x0423}, /* 0442 */ - {0x0424,0x0444,0x0424}, {0x0425,0x0445,0x0425}, /* 0444 */ - {0x0426,0x0446,0x0426}, {0x0427,0x0447,0x0427}, /* 0446 */ - {0x0428,0x0448,0x0428}, {0x0429,0x0449,0x0429}, /* 0448 */ - {0x042A,0x044A,0x042A}, {0x042B,0x044B,0x042B}, /* 044A */ - {0x042C,0x044C,0x042C}, {0x042D,0x044D,0x042D}, /* 044C */ - {0x042E,0x044E,0x042E}, {0x042F,0x044F,0x042F}, /* 044E */ - {0x0400,0x0450,0x0415}, {0x0401,0x0451,0x0415}, /* 0450 */ - {0x0402,0x0452,0x0402}, {0x0403,0x0453,0x0413}, /* 0452 */ - {0x0404,0x0454,0x0404}, {0x0405,0x0455,0x0405}, /* 0454 */ - {0x0406,0x0456,0x0406}, {0x0407,0x0457,0x0406}, /* 0456 */ - {0x0408,0x0458,0x0408}, {0x0409,0x0459,0x0409}, /* 0458 */ - {0x040A,0x045A,0x040A}, {0x040B,0x045B,0x040B}, /* 045A */ - {0x040C,0x045C,0x041A}, {0x040D,0x045D,0x0418}, /* 045C */ - {0x040E,0x045E,0x0423}, {0x040F,0x045F,0x040F}, /* 045E */ - {0x0460,0x0461,0x0460}, {0x0460,0x0461,0x0460}, /* 0460 */ - {0x0462,0x0463,0x0462}, {0x0462,0x0463,0x0462}, /* 0462 */ - {0x0464,0x0465,0x0464}, {0x0464,0x0465,0x0464}, /* 0464 */ - {0x0466,0x0467,0x0466}, {0x0466,0x0467,0x0466}, /* 0466 */ - {0x0468,0x0469,0x0468}, {0x0468,0x0469,0x0468}, /* 0468 */ - {0x046A,0x046B,0x046A}, {0x046A,0x046B,0x046A}, /* 046A */ - {0x046C,0x046D,0x046C}, {0x046C,0x046D,0x046C}, /* 046C */ - {0x046E,0x046F,0x046E}, {0x046E,0x046F,0x046E}, /* 046E */ - {0x0470,0x0471,0x0470}, {0x0470,0x0471,0x0470}, /* 0470 */ - {0x0472,0x0473,0x0472}, {0x0472,0x0473,0x0472}, /* 0472 */ - {0x0474,0x0475,0x0474}, {0x0474,0x0475,0x0474}, /* 0474 */ - {0x0476,0x0477,0x0474}, {0x0476,0x0477,0x0474}, /* 0476 */ - {0x0478,0x0479,0x0478}, {0x0478,0x0479,0x0478}, /* 0478 */ - {0x047A,0x047B,0x047A}, {0x047A,0x047B,0x047A}, /* 047A */ - {0x047C,0x047D,0x047C}, {0x047C,0x047D,0x047C}, /* 047C */ - {0x047E,0x047F,0x047E}, {0x047E,0x047F,0x047E}, /* 047E */ - {0x0480,0x0481,0x0480}, {0x0480,0x0481,0x0480}, /* 0480 */ - {0x0482,0x0482,0x0482}, {0x0483,0x0483,0x0483}, /* 0482 */ - {0x0484,0x0484,0x0484}, {0x0485,0x0485,0x0485}, /* 0484 */ - {0x0486,0x0486,0x0486}, {0x0487,0x0487,0x0487}, /* 0486 */ - {0x0488,0x0488,0x0488}, {0x0489,0x0489,0x0489}, /* 0488 */ - {0x048A,0x048B,0x048A}, {0x048A,0x048B,0x048A}, /* 048A */ - {0x048C,0x048D,0x048C}, {0x048C,0x048D,0x048C}, /* 048C */ - {0x048E,0x048F,0x048E}, {0x048E,0x048F,0x048E}, /* 048E */ - {0x0490,0x0491,0x0490}, {0x0490,0x0491,0x0490}, /* 0490 */ - {0x0492,0x0493,0x0492}, {0x0492,0x0493,0x0492}, /* 0492 */ - {0x0494,0x0495,0x0494}, {0x0494,0x0495,0x0494}, /* 0494 */ - {0x0496,0x0497,0x0496}, {0x0496,0x0497,0x0496}, /* 0496 */ - {0x0498,0x0499,0x0498}, {0x0498,0x0499,0x0498}, /* 0498 */ - {0x049A,0x049B,0x049A}, {0x049A,0x049B,0x049A}, /* 049A */ - {0x049C,0x049D,0x049C}, {0x049C,0x049D,0x049C}, /* 049C */ - {0x049E,0x049F,0x049E}, {0x049E,0x049F,0x049E}, /* 049E */ - {0x04A0,0x04A1,0x04A0}, {0x04A0,0x04A1,0x04A0}, /* 04A0 */ - {0x04A2,0x04A3,0x04A2}, {0x04A2,0x04A3,0x04A2}, /* 04A2 */ - {0x04A4,0x04A5,0x04A4}, {0x04A4,0x04A5,0x04A4}, /* 04A4 */ - {0x04A6,0x04A7,0x04A6}, {0x04A6,0x04A7,0x04A6}, /* 04A6 */ - {0x04A8,0x04A9,0x04A8}, {0x04A8,0x04A9,0x04A8}, /* 04A8 */ - {0x04AA,0x04AB,0x04AA}, {0x04AA,0x04AB,0x04AA}, /* 04AA */ - {0x04AC,0x04AD,0x04AC}, {0x04AC,0x04AD,0x04AC}, /* 04AC */ - {0x04AE,0x04AF,0x04AE}, {0x04AE,0x04AF,0x04AE}, /* 04AE */ - {0x04B0,0x04B1,0x04B0}, {0x04B0,0x04B1,0x04B0}, /* 04B0 */ - {0x04B2,0x04B3,0x04B2}, {0x04B2,0x04B3,0x04B2}, /* 04B2 */ - {0x04B4,0x04B5,0x04B4}, {0x04B4,0x04B5,0x04B4}, /* 04B4 */ - {0x04B6,0x04B7,0x04B6}, {0x04B6,0x04B7,0x04B6}, /* 04B6 */ - {0x04B8,0x04B9,0x04B8}, {0x04B8,0x04B9,0x04B8}, /* 04B8 */ - {0x04BA,0x04BB,0x04BA}, {0x04BA,0x04BB,0x04BA}, /* 04BA */ - {0x04BC,0x04BD,0x04BC}, {0x04BC,0x04BD,0x04BC}, /* 04BC */ - {0x04BE,0x04BF,0x04BE}, {0x04BE,0x04BF,0x04BE}, /* 04BE */ - {0x04C0,0x04CF,0x04C0}, {0x04C1,0x04C2,0x0416}, /* 04C0 */ - {0x04C1,0x04C2,0x0416}, {0x04C3,0x04C4,0x04C3}, /* 04C2 */ - {0x04C3,0x04C4,0x04C3}, {0x04C5,0x04C6,0x04C5}, /* 04C4 */ - {0x04C5,0x04C6,0x04C5}, {0x04C7,0x04C8,0x04C7}, /* 04C6 */ - {0x04C7,0x04C8,0x04C7}, {0x04C9,0x04CA,0x04C9}, /* 04C8 */ - {0x04C9,0x04CA,0x04C9}, {0x04CB,0x04CC,0x04CB}, /* 04CA */ - {0x04CB,0x04CC,0x04CB}, {0x04CD,0x04CE,0x04CD}, /* 04CC */ - {0x04CD,0x04CE,0x04CD}, {0x04C0,0x04CF,0x04C0}, /* 04CE */ - {0x04D0,0x04D1,0x0410}, {0x04D0,0x04D1,0x0410}, /* 04D0 */ - {0x04D2,0x04D3,0x0410}, {0x04D2,0x04D3,0x0410}, /* 04D2 */ - {0x04D4,0x04D5,0x04D4}, {0x04D4,0x04D5,0x04D4}, /* 04D4 */ - {0x04D6,0x04D7,0x0415}, {0x04D6,0x04D7,0x0415}, /* 04D6 */ - {0x04D8,0x04D9,0x04D8}, {0x04D8,0x04D9,0x04D8}, /* 04D8 */ - {0x04DA,0x04DB,0x04D8}, {0x04DA,0x04DB,0x04D8}, /* 04DA */ - {0x04DC,0x04DD,0x0416}, {0x04DC,0x04DD,0x0416}, /* 04DC */ - {0x04DE,0x04DF,0x0417}, {0x04DE,0x04DF,0x0417}, /* 04DE */ - {0x04E0,0x04E1,0x04E0}, {0x04E0,0x04E1,0x04E0}, /* 04E0 */ - {0x04E2,0x04E3,0x0418}, {0x04E2,0x04E3,0x0418}, /* 04E2 */ - {0x04E4,0x04E5,0x0418}, {0x04E4,0x04E5,0x0418}, /* 04E4 */ - {0x04E6,0x04E7,0x041E}, {0x04E6,0x04E7,0x041E}, /* 04E6 */ - {0x04E8,0x04E9,0x04E8}, {0x04E8,0x04E9,0x04E8}, /* 04E8 */ - {0x04EA,0x04EB,0x04E8}, {0x04EA,0x04EB,0x04E8}, /* 04EA */ - {0x04EC,0x04ED,0x042D}, {0x04EC,0x04ED,0x042D}, /* 04EC */ - {0x04EE,0x04EF,0x0423}, {0x04EE,0x04EF,0x0423}, /* 04EE */ - {0x04F0,0x04F1,0x0423}, {0x04F0,0x04F1,0x0423}, /* 04F0 */ - {0x04F2,0x04F3,0x0423}, {0x04F2,0x04F3,0x0423}, /* 04F2 */ - {0x04F4,0x04F5,0x0427}, {0x04F4,0x04F5,0x0427}, /* 04F4 */ - {0x04F6,0x04F7,0x04F6}, {0x04F6,0x04F7,0x04F6}, /* 04F6 */ - {0x04F8,0x04F9,0x042B}, {0x04F8,0x04F9,0x042B}, /* 04F8 */ - {0x04FA,0x04FB,0x04FA}, {0x04FA,0x04FB,0x04FA}, /* 04FA */ - {0x04FC,0x04FD,0x04FC}, {0x04FC,0x04FD,0x04FC}, /* 04FC */ - {0x04FE,0x04FF,0x04FE}, {0x04FE,0x04FF,0x04FE} /* 04FE */ -}; - -static MY_UNICASE_CHARACTER u520p05[]={ - {0x0500,0x0501,0x0500}, {0x0500,0x0501,0x0500}, /* 0500 */ - {0x0502,0x0503,0x0502}, {0x0502,0x0503,0x0502}, /* 0502 */ - {0x0504,0x0505,0x0504}, {0x0504,0x0505,0x0504}, /* 0504 */ - {0x0506,0x0507,0x0506}, {0x0506,0x0507,0x0506}, /* 0506 */ - {0x0508,0x0509,0x0508}, {0x0508,0x0509,0x0508}, /* 0508 */ - {0x050A,0x050B,0x050A}, {0x050A,0x050B,0x050A}, /* 050A */ - {0x050C,0x050D,0x050C}, {0x050C,0x050D,0x050C}, /* 050C */ - {0x050E,0x050F,0x050E}, {0x050E,0x050F,0x050E}, /* 050E */ - {0x0510,0x0511,0x0510}, {0x0510,0x0511,0x0510}, /* 0510 */ - {0x0512,0x0513,0x0512}, {0x0512,0x0513,0x0512}, /* 0512 */ - {0x0514,0x0515,0x0514}, {0x0514,0x0515,0x0514}, /* 0514 */ - {0x0516,0x0517,0x0516}, {0x0516,0x0517,0x0516}, /* 0516 */ - {0x0518,0x0519,0x0518}, {0x0518,0x0519,0x0518}, /* 0518 */ - {0x051A,0x051B,0x051A}, {0x051A,0x051B,0x051A}, /* 051A */ - {0x051C,0x051D,0x051C}, {0x051C,0x051D,0x051C}, /* 051C */ - {0x051E,0x051F,0x051E}, {0x051E,0x051F,0x051E}, /* 051E */ - {0x0520,0x0521,0x0520}, {0x0520,0x0521,0x0520}, /* 0520 */ - {0x0522,0x0523,0x0522}, {0x0522,0x0523,0x0522}, /* 0522 */ - {0x0524,0x0525,0x0524}, {0x0524,0x0525,0x0524}, /* 0524 */ - {0x0526,0x0526,0x0526}, {0x0527,0x0527,0x0527}, /* 0526 */ - {0x0528,0x0528,0x0528}, {0x0529,0x0529,0x0529}, /* 0528 */ - {0x052A,0x052A,0x052A}, {0x052B,0x052B,0x052B}, /* 052A */ - {0x052C,0x052C,0x052C}, {0x052D,0x052D,0x052D}, /* 052C */ - {0x052E,0x052E,0x052E}, {0x052F,0x052F,0x052F}, /* 052E */ - {0x0530,0x0530,0x0530}, {0x0531,0x0561,0x0531}, /* 0530 */ - {0x0532,0x0562,0x0532}, {0x0533,0x0563,0x0533}, /* 0532 */ - {0x0534,0x0564,0x0534}, {0x0535,0x0565,0x0535}, /* 0534 */ - {0x0536,0x0566,0x0536}, {0x0537,0x0567,0x0537}, /* 0536 */ - {0x0538,0x0568,0x0538}, {0x0539,0x0569,0x0539}, /* 0538 */ - {0x053A,0x056A,0x053A}, {0x053B,0x056B,0x053B}, /* 053A */ - {0x053C,0x056C,0x053C}, {0x053D,0x056D,0x053D}, /* 053C */ - {0x053E,0x056E,0x053E}, {0x053F,0x056F,0x053F}, /* 053E */ - {0x0540,0x0570,0x0540}, {0x0541,0x0571,0x0541}, /* 0540 */ - {0x0542,0x0572,0x0542}, {0x0543,0x0573,0x0543}, /* 0542 */ - {0x0544,0x0574,0x0544}, {0x0545,0x0575,0x0545}, /* 0544 */ - {0x0546,0x0576,0x0546}, {0x0547,0x0577,0x0547}, /* 0546 */ - {0x0548,0x0578,0x0548}, {0x0549,0x0579,0x0549}, /* 0548 */ - {0x054A,0x057A,0x054A}, {0x054B,0x057B,0x054B}, /* 054A */ - {0x054C,0x057C,0x054C}, {0x054D,0x057D,0x054D}, /* 054C */ - {0x054E,0x057E,0x054E}, {0x054F,0x057F,0x054F}, /* 054E */ - {0x0550,0x0580,0x0550}, {0x0551,0x0581,0x0551}, /* 0550 */ - {0x0552,0x0582,0x0552}, {0x0553,0x0583,0x0553}, /* 0552 */ - {0x0554,0x0584,0x0554}, {0x0555,0x0585,0x0555}, /* 0554 */ - {0x0556,0x0586,0x0556}, {0x0557,0x0557,0x0557}, /* 0556 */ - {0x0558,0x0558,0x0558}, {0x0559,0x0559,0x0559}, /* 0558 */ - {0x055A,0x055A,0x055A}, {0x055B,0x055B,0x055B}, /* 055A */ - {0x055C,0x055C,0x055C}, {0x055D,0x055D,0x055D}, /* 055C */ - {0x055E,0x055E,0x055E}, {0x055F,0x055F,0x055F}, /* 055E */ - {0x0560,0x0560,0x0560}, {0x0531,0x0561,0x0531}, /* 0560 */ - {0x0532,0x0562,0x0532}, {0x0533,0x0563,0x0533}, /* 0562 */ - {0x0534,0x0564,0x0534}, {0x0535,0x0565,0x0535}, /* 0564 */ - {0x0536,0x0566,0x0536}, {0x0537,0x0567,0x0537}, /* 0566 */ - {0x0538,0x0568,0x0538}, {0x0539,0x0569,0x0539}, /* 0568 */ - {0x053A,0x056A,0x053A}, {0x053B,0x056B,0x053B}, /* 056A */ - {0x053C,0x056C,0x053C}, {0x053D,0x056D,0x053D}, /* 056C */ - {0x053E,0x056E,0x053E}, {0x053F,0x056F,0x053F}, /* 056E */ - {0x0540,0x0570,0x0540}, {0x0541,0x0571,0x0541}, /* 0570 */ - {0x0542,0x0572,0x0542}, {0x0543,0x0573,0x0543}, /* 0572 */ - {0x0544,0x0574,0x0544}, {0x0545,0x0575,0x0545}, /* 0574 */ - {0x0546,0x0576,0x0546}, {0x0547,0x0577,0x0547}, /* 0576 */ - {0x0548,0x0578,0x0548}, {0x0549,0x0579,0x0549}, /* 0578 */ - {0x054A,0x057A,0x054A}, {0x054B,0x057B,0x054B}, /* 057A */ - {0x054C,0x057C,0x054C}, {0x054D,0x057D,0x054D}, /* 057C */ - {0x054E,0x057E,0x054E}, {0x054F,0x057F,0x054F}, /* 057E */ - {0x0550,0x0580,0x0550}, {0x0551,0x0581,0x0551}, /* 0580 */ - {0x0552,0x0582,0x0552}, {0x0553,0x0583,0x0553}, /* 0582 */ - {0x0554,0x0584,0x0554}, {0x0555,0x0585,0x0555}, /* 0584 */ - {0x0556,0x0586,0x0556}, {0x0587,0x0587,0x0587}, /* 0586 */ - {0x0588,0x0588,0x0588}, {0x0589,0x0589,0x0589}, /* 0588 */ - {0x058A,0x058A,0x058A}, {0x058B,0x058B,0x058B}, /* 058A */ - {0x058C,0x058C,0x058C}, {0x058D,0x058D,0x058D}, /* 058C */ - {0x058E,0x058E,0x058E}, {0x058F,0x058F,0x058F}, /* 058E */ - {0x0590,0x0590,0x0590}, {0x0591,0x0591,0x0591}, /* 0590 */ - {0x0592,0x0592,0x0592}, {0x0593,0x0593,0x0593}, /* 0592 */ - {0x0594,0x0594,0x0594}, {0x0595,0x0595,0x0595}, /* 0594 */ - {0x0596,0x0596,0x0596}, {0x0597,0x0597,0x0597}, /* 0596 */ - {0x0598,0x0598,0x0598}, {0x0599,0x0599,0x0599}, /* 0598 */ - {0x059A,0x059A,0x059A}, {0x059B,0x059B,0x059B}, /* 059A */ - {0x059C,0x059C,0x059C}, {0x059D,0x059D,0x059D}, /* 059C */ - {0x059E,0x059E,0x059E}, {0x059F,0x059F,0x059F}, /* 059E */ - {0x05A0,0x05A0,0x05A0}, {0x05A1,0x05A1,0x05A1}, /* 05A0 */ - {0x05A2,0x05A2,0x05A2}, {0x05A3,0x05A3,0x05A3}, /* 05A2 */ - {0x05A4,0x05A4,0x05A4}, {0x05A5,0x05A5,0x05A5}, /* 05A4 */ - {0x05A6,0x05A6,0x05A6}, {0x05A7,0x05A7,0x05A7}, /* 05A6 */ - {0x05A8,0x05A8,0x05A8}, {0x05A9,0x05A9,0x05A9}, /* 05A8 */ - {0x05AA,0x05AA,0x05AA}, {0x05AB,0x05AB,0x05AB}, /* 05AA */ - {0x05AC,0x05AC,0x05AC}, {0x05AD,0x05AD,0x05AD}, /* 05AC */ - {0x05AE,0x05AE,0x05AE}, {0x05AF,0x05AF,0x05AF}, /* 05AE */ - {0x05B0,0x05B0,0x05B0}, {0x05B1,0x05B1,0x05B1}, /* 05B0 */ - {0x05B2,0x05B2,0x05B2}, {0x05B3,0x05B3,0x05B3}, /* 05B2 */ - {0x05B4,0x05B4,0x05B4}, {0x05B5,0x05B5,0x05B5}, /* 05B4 */ - {0x05B6,0x05B6,0x05B6}, {0x05B7,0x05B7,0x05B7}, /* 05B6 */ - {0x05B8,0x05B8,0x05B8}, {0x05B9,0x05B9,0x05B9}, /* 05B8 */ - {0x05BA,0x05BA,0x05BA}, {0x05BB,0x05BB,0x05BB}, /* 05BA */ - {0x05BC,0x05BC,0x05BC}, {0x05BD,0x05BD,0x05BD}, /* 05BC */ - {0x05BE,0x05BE,0x05BE}, {0x05BF,0x05BF,0x05BF}, /* 05BE */ - {0x05C0,0x05C0,0x05C0}, {0x05C1,0x05C1,0x05C1}, /* 05C0 */ - {0x05C2,0x05C2,0x05C2}, {0x05C3,0x05C3,0x05C3}, /* 05C2 */ - {0x05C4,0x05C4,0x05C4}, {0x05C5,0x05C5,0x05C5}, /* 05C4 */ - {0x05C6,0x05C6,0x05C6}, {0x05C7,0x05C7,0x05C7}, /* 05C6 */ - {0x05C8,0x05C8,0x05C8}, {0x05C9,0x05C9,0x05C9}, /* 05C8 */ - {0x05CA,0x05CA,0x05CA}, {0x05CB,0x05CB,0x05CB}, /* 05CA */ - {0x05CC,0x05CC,0x05CC}, {0x05CD,0x05CD,0x05CD}, /* 05CC */ - {0x05CE,0x05CE,0x05CE}, {0x05CF,0x05CF,0x05CF}, /* 05CE */ - {0x05D0,0x05D0,0x05D0}, {0x05D1,0x05D1,0x05D1}, /* 05D0 */ - {0x05D2,0x05D2,0x05D2}, {0x05D3,0x05D3,0x05D3}, /* 05D2 */ - {0x05D4,0x05D4,0x05D4}, {0x05D5,0x05D5,0x05D5}, /* 05D4 */ - {0x05D6,0x05D6,0x05D6}, {0x05D7,0x05D7,0x05D7}, /* 05D6 */ - {0x05D8,0x05D8,0x05D8}, {0x05D9,0x05D9,0x05D9}, /* 05D8 */ - {0x05DA,0x05DA,0x05DA}, {0x05DB,0x05DB,0x05DB}, /* 05DA */ - {0x05DC,0x05DC,0x05DC}, {0x05DD,0x05DD,0x05DD}, /* 05DC */ - {0x05DE,0x05DE,0x05DE}, {0x05DF,0x05DF,0x05DF}, /* 05DE */ - {0x05E0,0x05E0,0x05E0}, {0x05E1,0x05E1,0x05E1}, /* 05E0 */ - {0x05E2,0x05E2,0x05E2}, {0x05E3,0x05E3,0x05E3}, /* 05E2 */ - {0x05E4,0x05E4,0x05E4}, {0x05E5,0x05E5,0x05E5}, /* 05E4 */ - {0x05E6,0x05E6,0x05E6}, {0x05E7,0x05E7,0x05E7}, /* 05E6 */ - {0x05E8,0x05E8,0x05E8}, {0x05E9,0x05E9,0x05E9}, /* 05E8 */ - {0x05EA,0x05EA,0x05EA}, {0x05EB,0x05EB,0x05EB}, /* 05EA */ - {0x05EC,0x05EC,0x05EC}, {0x05ED,0x05ED,0x05ED}, /* 05EC */ - {0x05EE,0x05EE,0x05EE}, {0x05EF,0x05EF,0x05EF}, /* 05EE */ - {0x05F0,0x05F0,0x05F0}, {0x05F1,0x05F1,0x05F1}, /* 05F0 */ - {0x05F2,0x05F2,0x05F2}, {0x05F3,0x05F3,0x05F3}, /* 05F2 */ - {0x05F4,0x05F4,0x05F4}, {0x05F5,0x05F5,0x05F5}, /* 05F4 */ - {0x05F6,0x05F6,0x05F6}, {0x05F7,0x05F7,0x05F7}, /* 05F6 */ - {0x05F8,0x05F8,0x05F8}, {0x05F9,0x05F9,0x05F9}, /* 05F8 */ - {0x05FA,0x05FA,0x05FA}, {0x05FB,0x05FB,0x05FB}, /* 05FA */ - {0x05FC,0x05FC,0x05FC}, {0x05FD,0x05FD,0x05FD}, /* 05FC */ - {0x05FE,0x05FE,0x05FE}, {0x05FF,0x05FF,0x05FF} /* 05FE */ -}; - -static MY_UNICASE_CHARACTER u520p10[]={ - {0x1000,0x1000,0x1000}, {0x1001,0x1001,0x1001}, /* 1000 */ - {0x1002,0x1002,0x1002}, {0x1003,0x1003,0x1003}, /* 1002 */ - {0x1004,0x1004,0x1004}, {0x1005,0x1005,0x1005}, /* 1004 */ - {0x1006,0x1006,0x1006}, {0x1007,0x1007,0x1007}, /* 1006 */ - {0x1008,0x1008,0x1008}, {0x1009,0x1009,0x1009}, /* 1008 */ - {0x100A,0x100A,0x100A}, {0x100B,0x100B,0x100B}, /* 100A */ - {0x100C,0x100C,0x100C}, {0x100D,0x100D,0x100D}, /* 100C */ - {0x100E,0x100E,0x100E}, {0x100F,0x100F,0x100F}, /* 100E */ - {0x1010,0x1010,0x1010}, {0x1011,0x1011,0x1011}, /* 1010 */ - {0x1012,0x1012,0x1012}, {0x1013,0x1013,0x1013}, /* 1012 */ - {0x1014,0x1014,0x1014}, {0x1015,0x1015,0x1015}, /* 1014 */ - {0x1016,0x1016,0x1016}, {0x1017,0x1017,0x1017}, /* 1016 */ - {0x1018,0x1018,0x1018}, {0x1019,0x1019,0x1019}, /* 1018 */ - {0x101A,0x101A,0x101A}, {0x101B,0x101B,0x101B}, /* 101A */ - {0x101C,0x101C,0x101C}, {0x101D,0x101D,0x101D}, /* 101C */ - {0x101E,0x101E,0x101E}, {0x101F,0x101F,0x101F}, /* 101E */ - {0x1020,0x1020,0x1020}, {0x1021,0x1021,0x1021}, /* 1020 */ - {0x1022,0x1022,0x1022}, {0x1023,0x1023,0x1023}, /* 1022 */ - {0x1024,0x1024,0x1024}, {0x1025,0x1025,0x1025}, /* 1024 */ - {0x1026,0x1026,0x1026}, {0x1027,0x1027,0x1027}, /* 1026 */ - {0x1028,0x1028,0x1028}, {0x1029,0x1029,0x1029}, /* 1028 */ - {0x102A,0x102A,0x102A}, {0x102B,0x102B,0x102B}, /* 102A */ - {0x102C,0x102C,0x102C}, {0x102D,0x102D,0x102D}, /* 102C */ - {0x102E,0x102E,0x102E}, {0x102F,0x102F,0x102F}, /* 102E */ - {0x1030,0x1030,0x1030}, {0x1031,0x1031,0x1031}, /* 1030 */ - {0x1032,0x1032,0x1032}, {0x1033,0x1033,0x1033}, /* 1032 */ - {0x1034,0x1034,0x1034}, {0x1035,0x1035,0x1035}, /* 1034 */ - {0x1036,0x1036,0x1036}, {0x1037,0x1037,0x1037}, /* 1036 */ - {0x1038,0x1038,0x1038}, {0x1039,0x1039,0x1039}, /* 1038 */ - {0x103A,0x103A,0x103A}, {0x103B,0x103B,0x103B}, /* 103A */ - {0x103C,0x103C,0x103C}, {0x103D,0x103D,0x103D}, /* 103C */ - {0x103E,0x103E,0x103E}, {0x103F,0x103F,0x103F}, /* 103E */ - {0x1040,0x1040,0x1040}, {0x1041,0x1041,0x1041}, /* 1040 */ - {0x1042,0x1042,0x1042}, {0x1043,0x1043,0x1043}, /* 1042 */ - {0x1044,0x1044,0x1044}, {0x1045,0x1045,0x1045}, /* 1044 */ - {0x1046,0x1046,0x1046}, {0x1047,0x1047,0x1047}, /* 1046 */ - {0x1048,0x1048,0x1048}, {0x1049,0x1049,0x1049}, /* 1048 */ - {0x104A,0x104A,0x104A}, {0x104B,0x104B,0x104B}, /* 104A */ - {0x104C,0x104C,0x104C}, {0x104D,0x104D,0x104D}, /* 104C */ - {0x104E,0x104E,0x104E}, {0x104F,0x104F,0x104F}, /* 104E */ - {0x1050,0x1050,0x1050}, {0x1051,0x1051,0x1051}, /* 1050 */ - {0x1052,0x1052,0x1052}, {0x1053,0x1053,0x1053}, /* 1052 */ - {0x1054,0x1054,0x1054}, {0x1055,0x1055,0x1055}, /* 1054 */ - {0x1056,0x1056,0x1056}, {0x1057,0x1057,0x1057}, /* 1056 */ - {0x1058,0x1058,0x1058}, {0x1059,0x1059,0x1059}, /* 1058 */ - {0x105A,0x105A,0x105A}, {0x105B,0x105B,0x105B}, /* 105A */ - {0x105C,0x105C,0x105C}, {0x105D,0x105D,0x105D}, /* 105C */ - {0x105E,0x105E,0x105E}, {0x105F,0x105F,0x105F}, /* 105E */ - {0x1060,0x1060,0x1060}, {0x1061,0x1061,0x1061}, /* 1060 */ - {0x1062,0x1062,0x1062}, {0x1063,0x1063,0x1063}, /* 1062 */ - {0x1064,0x1064,0x1064}, {0x1065,0x1065,0x1065}, /* 1064 */ - {0x1066,0x1066,0x1066}, {0x1067,0x1067,0x1067}, /* 1066 */ - {0x1068,0x1068,0x1068}, {0x1069,0x1069,0x1069}, /* 1068 */ - {0x106A,0x106A,0x106A}, {0x106B,0x106B,0x106B}, /* 106A */ - {0x106C,0x106C,0x106C}, {0x106D,0x106D,0x106D}, /* 106C */ - {0x106E,0x106E,0x106E}, {0x106F,0x106F,0x106F}, /* 106E */ - {0x1070,0x1070,0x1070}, {0x1071,0x1071,0x1071}, /* 1070 */ - {0x1072,0x1072,0x1072}, {0x1073,0x1073,0x1073}, /* 1072 */ - {0x1074,0x1074,0x1074}, {0x1075,0x1075,0x1075}, /* 1074 */ - {0x1076,0x1076,0x1076}, {0x1077,0x1077,0x1077}, /* 1076 */ - {0x1078,0x1078,0x1078}, {0x1079,0x1079,0x1079}, /* 1078 */ - {0x107A,0x107A,0x107A}, {0x107B,0x107B,0x107B}, /* 107A */ - {0x107C,0x107C,0x107C}, {0x107D,0x107D,0x107D}, /* 107C */ - {0x107E,0x107E,0x107E}, {0x107F,0x107F,0x107F}, /* 107E */ - {0x1080,0x1080,0x1080}, {0x1081,0x1081,0x1081}, /* 1080 */ - {0x1082,0x1082,0x1082}, {0x1083,0x1083,0x1083}, /* 1082 */ - {0x1084,0x1084,0x1084}, {0x1085,0x1085,0x1085}, /* 1084 */ - {0x1086,0x1086,0x1086}, {0x1087,0x1087,0x1087}, /* 1086 */ - {0x1088,0x1088,0x1088}, {0x1089,0x1089,0x1089}, /* 1088 */ - {0x108A,0x108A,0x108A}, {0x108B,0x108B,0x108B}, /* 108A */ - {0x108C,0x108C,0x108C}, {0x108D,0x108D,0x108D}, /* 108C */ - {0x108E,0x108E,0x108E}, {0x108F,0x108F,0x108F}, /* 108E */ - {0x1090,0x1090,0x1090}, {0x1091,0x1091,0x1091}, /* 1090 */ - {0x1092,0x1092,0x1092}, {0x1093,0x1093,0x1093}, /* 1092 */ - {0x1094,0x1094,0x1094}, {0x1095,0x1095,0x1095}, /* 1094 */ - {0x1096,0x1096,0x1096}, {0x1097,0x1097,0x1097}, /* 1096 */ - {0x1098,0x1098,0x1098}, {0x1099,0x1099,0x1099}, /* 1098 */ - {0x109A,0x109A,0x109A}, {0x109B,0x109B,0x109B}, /* 109A */ - {0x109C,0x109C,0x109C}, {0x109D,0x109D,0x109D}, /* 109C */ - {0x109E,0x109E,0x109E}, {0x109F,0x109F,0x109F}, /* 109E */ - {0x10A0,0x2D00,0x10A0}, {0x10A1,0x2D01,0x10A1}, /* 10A0 */ - {0x10A2,0x2D02,0x10A2}, {0x10A3,0x2D03,0x10A3}, /* 10A2 */ - {0x10A4,0x2D04,0x10A4}, {0x10A5,0x2D05,0x10A5}, /* 10A4 */ - {0x10A6,0x2D06,0x10A6}, {0x10A7,0x2D07,0x10A7}, /* 10A6 */ - {0x10A8,0x2D08,0x10A8}, {0x10A9,0x2D09,0x10A9}, /* 10A8 */ - {0x10AA,0x2D0A,0x10AA}, {0x10AB,0x2D0B,0x10AB}, /* 10AA */ - {0x10AC,0x2D0C,0x10AC}, {0x10AD,0x2D0D,0x10AD}, /* 10AC */ - {0x10AE,0x2D0E,0x10AE}, {0x10AF,0x2D0F,0x10AF}, /* 10AE */ - {0x10B0,0x2D10,0x10B0}, {0x10B1,0x2D11,0x10B1}, /* 10B0 */ - {0x10B2,0x2D12,0x10B2}, {0x10B3,0x2D13,0x10B3}, /* 10B2 */ - {0x10B4,0x2D14,0x10B4}, {0x10B5,0x2D15,0x10B5}, /* 10B4 */ - {0x10B6,0x2D16,0x10B6}, {0x10B7,0x2D17,0x10B7}, /* 10B6 */ - {0x10B8,0x2D18,0x10B8}, {0x10B9,0x2D19,0x10B9}, /* 10B8 */ - {0x10BA,0x2D1A,0x10BA}, {0x10BB,0x2D1B,0x10BB}, /* 10BA */ - {0x10BC,0x2D1C,0x10BC}, {0x10BD,0x2D1D,0x10BD}, /* 10BC */ - {0x10BE,0x2D1E,0x10BE}, {0x10BF,0x2D1F,0x10BF}, /* 10BE */ - {0x10C0,0x2D20,0x10C0}, {0x10C1,0x2D21,0x10C1}, /* 10C0 */ - {0x10C2,0x2D22,0x10C2}, {0x10C3,0x2D23,0x10C3}, /* 10C2 */ - {0x10C4,0x2D24,0x10C4}, {0x10C5,0x2D25,0x10C5}, /* 10C4 */ - {0x10C6,0x10C6,0x10C6}, {0x10C7,0x10C7,0x10C7}, /* 10C6 */ - {0x10C8,0x10C8,0x10C8}, {0x10C9,0x10C9,0x10C9}, /* 10C8 */ - {0x10CA,0x10CA,0x10CA}, {0x10CB,0x10CB,0x10CB}, /* 10CA */ - {0x10CC,0x10CC,0x10CC}, {0x10CD,0x10CD,0x10CD}, /* 10CC */ - {0x10CE,0x10CE,0x10CE}, {0x10CF,0x10CF,0x10CF}, /* 10CE */ - {0x10D0,0x10D0,0x10D0}, {0x10D1,0x10D1,0x10D1}, /* 10D0 */ - {0x10D2,0x10D2,0x10D2}, {0x10D3,0x10D3,0x10D3}, /* 10D2 */ - {0x10D4,0x10D4,0x10D4}, {0x10D5,0x10D5,0x10D5}, /* 10D4 */ - {0x10D6,0x10D6,0x10D6}, {0x10D7,0x10D7,0x10D7}, /* 10D6 */ - {0x10D8,0x10D8,0x10D8}, {0x10D9,0x10D9,0x10D9}, /* 10D8 */ - {0x10DA,0x10DA,0x10DA}, {0x10DB,0x10DB,0x10DB}, /* 10DA */ - {0x10DC,0x10DC,0x10DC}, {0x10DD,0x10DD,0x10DD}, /* 10DC */ - {0x10DE,0x10DE,0x10DE}, {0x10DF,0x10DF,0x10DF}, /* 10DE */ - {0x10E0,0x10E0,0x10E0}, {0x10E1,0x10E1,0x10E1}, /* 10E0 */ - {0x10E2,0x10E2,0x10E2}, {0x10E3,0x10E3,0x10E3}, /* 10E2 */ - {0x10E4,0x10E4,0x10E4}, {0x10E5,0x10E5,0x10E5}, /* 10E4 */ - {0x10E6,0x10E6,0x10E6}, {0x10E7,0x10E7,0x10E7}, /* 10E6 */ - {0x10E8,0x10E8,0x10E8}, {0x10E9,0x10E9,0x10E9}, /* 10E8 */ - {0x10EA,0x10EA,0x10EA}, {0x10EB,0x10EB,0x10EB}, /* 10EA */ - {0x10EC,0x10EC,0x10EC}, {0x10ED,0x10ED,0x10ED}, /* 10EC */ - {0x10EE,0x10EE,0x10EE}, {0x10EF,0x10EF,0x10EF}, /* 10EE */ - {0x10F0,0x10F0,0x10F0}, {0x10F1,0x10F1,0x10F1}, /* 10F0 */ - {0x10F2,0x10F2,0x10F2}, {0x10F3,0x10F3,0x10F3}, /* 10F2 */ - {0x10F4,0x10F4,0x10F4}, {0x10F5,0x10F5,0x10F5}, /* 10F4 */ - {0x10F6,0x10F6,0x10F6}, {0x10F7,0x10F7,0x10F7}, /* 10F6 */ - {0x10F8,0x10F8,0x10F8}, {0x10F9,0x10F9,0x10F9}, /* 10F8 */ - {0x10FA,0x10FA,0x10FA}, {0x10FB,0x10FB,0x10FB}, /* 10FA */ - {0x10FC,0x10FC,0x10FC}, {0x10FD,0x10FD,0x10FD}, /* 10FC */ - {0x10FE,0x10FE,0x10FE}, {0x10FF,0x10FF,0x10FF} /* 10FE */ -}; - -static MY_UNICASE_CHARACTER u520p1D[]={ - {0x1D00,0x1D00,0x1D00}, {0x1D01,0x1D01,0x1D01}, /* 1D00 */ - {0x1D02,0x1D02,0x1D02}, {0x1D03,0x1D03,0x1D03}, /* 1D02 */ - {0x1D04,0x1D04,0x1D04}, {0x1D05,0x1D05,0x1D05}, /* 1D04 */ - {0x1D06,0x1D06,0x1D06}, {0x1D07,0x1D07,0x1D07}, /* 1D06 */ - {0x1D08,0x1D08,0x1D08}, {0x1D09,0x1D09,0x1D09}, /* 1D08 */ - {0x1D0A,0x1D0A,0x1D0A}, {0x1D0B,0x1D0B,0x1D0B}, /* 1D0A */ - {0x1D0C,0x1D0C,0x1D0C}, {0x1D0D,0x1D0D,0x1D0D}, /* 1D0C */ - {0x1D0E,0x1D0E,0x1D0E}, {0x1D0F,0x1D0F,0x1D0F}, /* 1D0E */ - {0x1D10,0x1D10,0x1D10}, {0x1D11,0x1D11,0x1D11}, /* 1D10 */ - {0x1D12,0x1D12,0x1D12}, {0x1D13,0x1D13,0x1D13}, /* 1D12 */ - {0x1D14,0x1D14,0x1D14}, {0x1D15,0x1D15,0x1D15}, /* 1D14 */ - {0x1D16,0x1D16,0x1D16}, {0x1D17,0x1D17,0x1D17}, /* 1D16 */ - {0x1D18,0x1D18,0x1D18}, {0x1D19,0x1D19,0x1D19}, /* 1D18 */ - {0x1D1A,0x1D1A,0x1D1A}, {0x1D1B,0x1D1B,0x1D1B}, /* 1D1A */ - {0x1D1C,0x1D1C,0x1D1C}, {0x1D1D,0x1D1D,0x1D1D}, /* 1D1C */ - {0x1D1E,0x1D1E,0x1D1E}, {0x1D1F,0x1D1F,0x1D1F}, /* 1D1E */ - {0x1D20,0x1D20,0x1D20}, {0x1D21,0x1D21,0x1D21}, /* 1D20 */ - {0x1D22,0x1D22,0x1D22}, {0x1D23,0x1D23,0x1D23}, /* 1D22 */ - {0x1D24,0x1D24,0x1D24}, {0x1D25,0x1D25,0x1D25}, /* 1D24 */ - {0x1D26,0x1D26,0x1D26}, {0x1D27,0x1D27,0x1D27}, /* 1D26 */ - {0x1D28,0x1D28,0x1D28}, {0x1D29,0x1D29,0x1D29}, /* 1D28 */ - {0x1D2A,0x1D2A,0x1D2A}, {0x1D2B,0x1D2B,0x1D2B}, /* 1D2A */ - {0x1D2C,0x1D2C,0x1D2C}, {0x1D2D,0x1D2D,0x1D2D}, /* 1D2C */ - {0x1D2E,0x1D2E,0x1D2E}, {0x1D2F,0x1D2F,0x1D2F}, /* 1D2E */ - {0x1D30,0x1D30,0x1D30}, {0x1D31,0x1D31,0x1D31}, /* 1D30 */ - {0x1D32,0x1D32,0x1D32}, {0x1D33,0x1D33,0x1D33}, /* 1D32 */ - {0x1D34,0x1D34,0x1D34}, {0x1D35,0x1D35,0x1D35}, /* 1D34 */ - {0x1D36,0x1D36,0x1D36}, {0x1D37,0x1D37,0x1D37}, /* 1D36 */ - {0x1D38,0x1D38,0x1D38}, {0x1D39,0x1D39,0x1D39}, /* 1D38 */ - {0x1D3A,0x1D3A,0x1D3A}, {0x1D3B,0x1D3B,0x1D3B}, /* 1D3A */ - {0x1D3C,0x1D3C,0x1D3C}, {0x1D3D,0x1D3D,0x1D3D}, /* 1D3C */ - {0x1D3E,0x1D3E,0x1D3E}, {0x1D3F,0x1D3F,0x1D3F}, /* 1D3E */ - {0x1D40,0x1D40,0x1D40}, {0x1D41,0x1D41,0x1D41}, /* 1D40 */ - {0x1D42,0x1D42,0x1D42}, {0x1D43,0x1D43,0x1D43}, /* 1D42 */ - {0x1D44,0x1D44,0x1D44}, {0x1D45,0x1D45,0x1D45}, /* 1D44 */ - {0x1D46,0x1D46,0x1D46}, {0x1D47,0x1D47,0x1D47}, /* 1D46 */ - {0x1D48,0x1D48,0x1D48}, {0x1D49,0x1D49,0x1D49}, /* 1D48 */ - {0x1D4A,0x1D4A,0x1D4A}, {0x1D4B,0x1D4B,0x1D4B}, /* 1D4A */ - {0x1D4C,0x1D4C,0x1D4C}, {0x1D4D,0x1D4D,0x1D4D}, /* 1D4C */ - {0x1D4E,0x1D4E,0x1D4E}, {0x1D4F,0x1D4F,0x1D4F}, /* 1D4E */ - {0x1D50,0x1D50,0x1D50}, {0x1D51,0x1D51,0x1D51}, /* 1D50 */ - {0x1D52,0x1D52,0x1D52}, {0x1D53,0x1D53,0x1D53}, /* 1D52 */ - {0x1D54,0x1D54,0x1D54}, {0x1D55,0x1D55,0x1D55}, /* 1D54 */ - {0x1D56,0x1D56,0x1D56}, {0x1D57,0x1D57,0x1D57}, /* 1D56 */ - {0x1D58,0x1D58,0x1D58}, {0x1D59,0x1D59,0x1D59}, /* 1D58 */ - {0x1D5A,0x1D5A,0x1D5A}, {0x1D5B,0x1D5B,0x1D5B}, /* 1D5A */ - {0x1D5C,0x1D5C,0x1D5C}, {0x1D5D,0x1D5D,0x1D5D}, /* 1D5C */ - {0x1D5E,0x1D5E,0x1D5E}, {0x1D5F,0x1D5F,0x1D5F}, /* 1D5E */ - {0x1D60,0x1D60,0x1D60}, {0x1D61,0x1D61,0x1D61}, /* 1D60 */ - {0x1D62,0x1D62,0x1D62}, {0x1D63,0x1D63,0x1D63}, /* 1D62 */ - {0x1D64,0x1D64,0x1D64}, {0x1D65,0x1D65,0x1D65}, /* 1D64 */ - {0x1D66,0x1D66,0x1D66}, {0x1D67,0x1D67,0x1D67}, /* 1D66 */ - {0x1D68,0x1D68,0x1D68}, {0x1D69,0x1D69,0x1D69}, /* 1D68 */ - {0x1D6A,0x1D6A,0x1D6A}, {0x1D6B,0x1D6B,0x1D6B}, /* 1D6A */ - {0x1D6C,0x1D6C,0x1D6C}, {0x1D6D,0x1D6D,0x1D6D}, /* 1D6C */ - {0x1D6E,0x1D6E,0x1D6E}, {0x1D6F,0x1D6F,0x1D6F}, /* 1D6E */ - {0x1D70,0x1D70,0x1D70}, {0x1D71,0x1D71,0x1D71}, /* 1D70 */ - {0x1D72,0x1D72,0x1D72}, {0x1D73,0x1D73,0x1D73}, /* 1D72 */ - {0x1D74,0x1D74,0x1D74}, {0x1D75,0x1D75,0x1D75}, /* 1D74 */ - {0x1D76,0x1D76,0x1D76}, {0x1D77,0x1D77,0x1D77}, /* 1D76 */ - {0x1D78,0x1D78,0x1D78}, {0xA77D,0x1D79,0xA77D}, /* 1D78 */ - {0x1D7A,0x1D7A,0x1D7A}, {0x1D7B,0x1D7B,0x1D7B}, /* 1D7A */ - {0x1D7C,0x1D7C,0x1D7C}, {0x2C63,0x1D7D,0x2C63}, /* 1D7C */ - {0x1D7E,0x1D7E,0x1D7E}, {0x1D7F,0x1D7F,0x1D7F}, /* 1D7E */ - {0x1D80,0x1D80,0x1D80}, {0x1D81,0x1D81,0x1D81}, /* 1D80 */ - {0x1D82,0x1D82,0x1D82}, {0x1D83,0x1D83,0x1D83}, /* 1D82 */ - {0x1D84,0x1D84,0x1D84}, {0x1D85,0x1D85,0x1D85}, /* 1D84 */ - {0x1D86,0x1D86,0x1D86}, {0x1D87,0x1D87,0x1D87}, /* 1D86 */ - {0x1D88,0x1D88,0x1D88}, {0x1D89,0x1D89,0x1D89}, /* 1D88 */ - {0x1D8A,0x1D8A,0x1D8A}, {0x1D8B,0x1D8B,0x1D8B}, /* 1D8A */ - {0x1D8C,0x1D8C,0x1D8C}, {0x1D8D,0x1D8D,0x1D8D}, /* 1D8C */ - {0x1D8E,0x1D8E,0x1D8E}, {0x1D8F,0x1D8F,0x1D8F}, /* 1D8E */ - {0x1D90,0x1D90,0x1D90}, {0x1D91,0x1D91,0x1D91}, /* 1D90 */ - {0x1D92,0x1D92,0x1D92}, {0x1D93,0x1D93,0x1D93}, /* 1D92 */ - {0x1D94,0x1D94,0x1D94}, {0x1D95,0x1D95,0x1D95}, /* 1D94 */ - {0x1D96,0x1D96,0x1D96}, {0x1D97,0x1D97,0x1D97}, /* 1D96 */ - {0x1D98,0x1D98,0x1D98}, {0x1D99,0x1D99,0x1D99}, /* 1D98 */ - {0x1D9A,0x1D9A,0x1D9A}, {0x1D9B,0x1D9B,0x1D9B}, /* 1D9A */ - {0x1D9C,0x1D9C,0x1D9C}, {0x1D9D,0x1D9D,0x1D9D}, /* 1D9C */ - {0x1D9E,0x1D9E,0x1D9E}, {0x1D9F,0x1D9F,0x1D9F}, /* 1D9E */ - {0x1DA0,0x1DA0,0x1DA0}, {0x1DA1,0x1DA1,0x1DA1}, /* 1DA0 */ - {0x1DA2,0x1DA2,0x1DA2}, {0x1DA3,0x1DA3,0x1DA3}, /* 1DA2 */ - {0x1DA4,0x1DA4,0x1DA4}, {0x1DA5,0x1DA5,0x1DA5}, /* 1DA4 */ - {0x1DA6,0x1DA6,0x1DA6}, {0x1DA7,0x1DA7,0x1DA7}, /* 1DA6 */ - {0x1DA8,0x1DA8,0x1DA8}, {0x1DA9,0x1DA9,0x1DA9}, /* 1DA8 */ - {0x1DAA,0x1DAA,0x1DAA}, {0x1DAB,0x1DAB,0x1DAB}, /* 1DAA */ - {0x1DAC,0x1DAC,0x1DAC}, {0x1DAD,0x1DAD,0x1DAD}, /* 1DAC */ - {0x1DAE,0x1DAE,0x1DAE}, {0x1DAF,0x1DAF,0x1DAF}, /* 1DAE */ - {0x1DB0,0x1DB0,0x1DB0}, {0x1DB1,0x1DB1,0x1DB1}, /* 1DB0 */ - {0x1DB2,0x1DB2,0x1DB2}, {0x1DB3,0x1DB3,0x1DB3}, /* 1DB2 */ - {0x1DB4,0x1DB4,0x1DB4}, {0x1DB5,0x1DB5,0x1DB5}, /* 1DB4 */ - {0x1DB6,0x1DB6,0x1DB6}, {0x1DB7,0x1DB7,0x1DB7}, /* 1DB6 */ - {0x1DB8,0x1DB8,0x1DB8}, {0x1DB9,0x1DB9,0x1DB9}, /* 1DB8 */ - {0x1DBA,0x1DBA,0x1DBA}, {0x1DBB,0x1DBB,0x1DBB}, /* 1DBA */ - {0x1DBC,0x1DBC,0x1DBC}, {0x1DBD,0x1DBD,0x1DBD}, /* 1DBC */ - {0x1DBE,0x1DBE,0x1DBE}, {0x1DBF,0x1DBF,0x1DBF}, /* 1DBE */ - {0x1DC0,0x1DC0,0x1DC0}, {0x1DC1,0x1DC1,0x1DC1}, /* 1DC0 */ - {0x1DC2,0x1DC2,0x1DC2}, {0x1DC3,0x1DC3,0x1DC3}, /* 1DC2 */ - {0x1DC4,0x1DC4,0x1DC4}, {0x1DC5,0x1DC5,0x1DC5}, /* 1DC4 */ - {0x1DC6,0x1DC6,0x1DC6}, {0x1DC7,0x1DC7,0x1DC7}, /* 1DC6 */ - {0x1DC8,0x1DC8,0x1DC8}, {0x1DC9,0x1DC9,0x1DC9}, /* 1DC8 */ - {0x1DCA,0x1DCA,0x1DCA}, {0x1DCB,0x1DCB,0x1DCB}, /* 1DCA */ - {0x1DCC,0x1DCC,0x1DCC}, {0x1DCD,0x1DCD,0x1DCD}, /* 1DCC */ - {0x1DCE,0x1DCE,0x1DCE}, {0x1DCF,0x1DCF,0x1DCF}, /* 1DCE */ - {0x1DD0,0x1DD0,0x1DD0}, {0x1DD1,0x1DD1,0x1DD1}, /* 1DD0 */ - {0x1DD2,0x1DD2,0x1DD2}, {0x1DD3,0x1DD3,0x1DD3}, /* 1DD2 */ - {0x1DD4,0x1DD4,0x1DD4}, {0x1DD5,0x1DD5,0x1DD5}, /* 1DD4 */ - {0x1DD6,0x1DD6,0x1DD6}, {0x1DD7,0x1DD7,0x1DD7}, /* 1DD6 */ - {0x1DD8,0x1DD8,0x1DD8}, {0x1DD9,0x1DD9,0x1DD9}, /* 1DD8 */ - {0x1DDA,0x1DDA,0x1DDA}, {0x1DDB,0x1DDB,0x1DDB}, /* 1DDA */ - {0x1DDC,0x1DDC,0x1DDC}, {0x1DDD,0x1DDD,0x1DDD}, /* 1DDC */ - {0x1DDE,0x1DDE,0x1DDE}, {0x1DDF,0x1DDF,0x1DDF}, /* 1DDE */ - {0x1DE0,0x1DE0,0x1DE0}, {0x1DE1,0x1DE1,0x1DE1}, /* 1DE0 */ - {0x1DE2,0x1DE2,0x1DE2}, {0x1DE3,0x1DE3,0x1DE3}, /* 1DE2 */ - {0x1DE4,0x1DE4,0x1DE4}, {0x1DE5,0x1DE5,0x1DE5}, /* 1DE4 */ - {0x1DE6,0x1DE6,0x1DE6}, {0x1DE7,0x1DE7,0x1DE7}, /* 1DE6 */ - {0x1DE8,0x1DE8,0x1DE8}, {0x1DE9,0x1DE9,0x1DE9}, /* 1DE8 */ - {0x1DEA,0x1DEA,0x1DEA}, {0x1DEB,0x1DEB,0x1DEB}, /* 1DEA */ - {0x1DEC,0x1DEC,0x1DEC}, {0x1DED,0x1DED,0x1DED}, /* 1DEC */ - {0x1DEE,0x1DEE,0x1DEE}, {0x1DEF,0x1DEF,0x1DEF}, /* 1DEE */ - {0x1DF0,0x1DF0,0x1DF0}, {0x1DF1,0x1DF1,0x1DF1}, /* 1DF0 */ - {0x1DF2,0x1DF2,0x1DF2}, {0x1DF3,0x1DF3,0x1DF3}, /* 1DF2 */ - {0x1DF4,0x1DF4,0x1DF4}, {0x1DF5,0x1DF5,0x1DF5}, /* 1DF4 */ - {0x1DF6,0x1DF6,0x1DF6}, {0x1DF7,0x1DF7,0x1DF7}, /* 1DF6 */ - {0x1DF8,0x1DF8,0x1DF8}, {0x1DF9,0x1DF9,0x1DF9}, /* 1DF8 */ - {0x1DFA,0x1DFA,0x1DFA}, {0x1DFB,0x1DFB,0x1DFB}, /* 1DFA */ - {0x1DFC,0x1DFC,0x1DFC}, {0x1DFD,0x1DFD,0x1DFD}, /* 1DFC */ - {0x1DFE,0x1DFE,0x1DFE}, {0x1DFF,0x1DFF,0x1DFF} /* 1DFE */ -}; - -static MY_UNICASE_CHARACTER u520p1E[]={ - {0x1E00,0x1E01,0x0041}, {0x1E00,0x1E01,0x0041}, /* 1E00 */ - {0x1E02,0x1E03,0x0042}, {0x1E02,0x1E03,0x0042}, /* 1E02 */ - {0x1E04,0x1E05,0x0042}, {0x1E04,0x1E05,0x0042}, /* 1E04 */ - {0x1E06,0x1E07,0x0042}, {0x1E06,0x1E07,0x0042}, /* 1E06 */ - {0x1E08,0x1E09,0x0043}, {0x1E08,0x1E09,0x0043}, /* 1E08 */ - {0x1E0A,0x1E0B,0x0044}, {0x1E0A,0x1E0B,0x0044}, /* 1E0A */ - {0x1E0C,0x1E0D,0x0044}, {0x1E0C,0x1E0D,0x0044}, /* 1E0C */ - {0x1E0E,0x1E0F,0x0044}, {0x1E0E,0x1E0F,0x0044}, /* 1E0E */ - {0x1E10,0x1E11,0x0044}, {0x1E10,0x1E11,0x0044}, /* 1E10 */ - {0x1E12,0x1E13,0x0044}, {0x1E12,0x1E13,0x0044}, /* 1E12 */ - {0x1E14,0x1E15,0x0045}, {0x1E14,0x1E15,0x0045}, /* 1E14 */ - {0x1E16,0x1E17,0x0045}, {0x1E16,0x1E17,0x0045}, /* 1E16 */ - {0x1E18,0x1E19,0x0045}, {0x1E18,0x1E19,0x0045}, /* 1E18 */ - {0x1E1A,0x1E1B,0x0045}, {0x1E1A,0x1E1B,0x0045}, /* 1E1A */ - {0x1E1C,0x1E1D,0x0045}, {0x1E1C,0x1E1D,0x0045}, /* 1E1C */ - {0x1E1E,0x1E1F,0x0046}, {0x1E1E,0x1E1F,0x0046}, /* 1E1E */ - {0x1E20,0x1E21,0x0047}, {0x1E20,0x1E21,0x0047}, /* 1E20 */ - {0x1E22,0x1E23,0x0048}, {0x1E22,0x1E23,0x0048}, /* 1E22 */ - {0x1E24,0x1E25,0x0048}, {0x1E24,0x1E25,0x0048}, /* 1E24 */ - {0x1E26,0x1E27,0x0048}, {0x1E26,0x1E27,0x0048}, /* 1E26 */ - {0x1E28,0x1E29,0x0048}, {0x1E28,0x1E29,0x0048}, /* 1E28 */ - {0x1E2A,0x1E2B,0x0048}, {0x1E2A,0x1E2B,0x0048}, /* 1E2A */ - {0x1E2C,0x1E2D,0x0049}, {0x1E2C,0x1E2D,0x0049}, /* 1E2C */ - {0x1E2E,0x1E2F,0x0049}, {0x1E2E,0x1E2F,0x0049}, /* 1E2E */ - {0x1E30,0x1E31,0x004B}, {0x1E30,0x1E31,0x004B}, /* 1E30 */ - {0x1E32,0x1E33,0x004B}, {0x1E32,0x1E33,0x004B}, /* 1E32 */ - {0x1E34,0x1E35,0x004B}, {0x1E34,0x1E35,0x004B}, /* 1E34 */ - {0x1E36,0x1E37,0x004C}, {0x1E36,0x1E37,0x004C}, /* 1E36 */ - {0x1E38,0x1E39,0x004C}, {0x1E38,0x1E39,0x004C}, /* 1E38 */ - {0x1E3A,0x1E3B,0x004C}, {0x1E3A,0x1E3B,0x004C}, /* 1E3A */ - {0x1E3C,0x1E3D,0x004C}, {0x1E3C,0x1E3D,0x004C}, /* 1E3C */ - {0x1E3E,0x1E3F,0x004D}, {0x1E3E,0x1E3F,0x004D}, /* 1E3E */ - {0x1E40,0x1E41,0x004D}, {0x1E40,0x1E41,0x004D}, /* 1E40 */ - {0x1E42,0x1E43,0x004D}, {0x1E42,0x1E43,0x004D}, /* 1E42 */ - {0x1E44,0x1E45,0x004E}, {0x1E44,0x1E45,0x004E}, /* 1E44 */ - {0x1E46,0x1E47,0x004E}, {0x1E46,0x1E47,0x004E}, /* 1E46 */ - {0x1E48,0x1E49,0x004E}, {0x1E48,0x1E49,0x004E}, /* 1E48 */ - {0x1E4A,0x1E4B,0x004E}, {0x1E4A,0x1E4B,0x004E}, /* 1E4A */ - {0x1E4C,0x1E4D,0x004F}, {0x1E4C,0x1E4D,0x004F}, /* 1E4C */ - {0x1E4E,0x1E4F,0x004F}, {0x1E4E,0x1E4F,0x004F}, /* 1E4E */ - {0x1E50,0x1E51,0x004F}, {0x1E50,0x1E51,0x004F}, /* 1E50 */ - {0x1E52,0x1E53,0x004F}, {0x1E52,0x1E53,0x004F}, /* 1E52 */ - {0x1E54,0x1E55,0x0050}, {0x1E54,0x1E55,0x0050}, /* 1E54 */ - {0x1E56,0x1E57,0x0050}, {0x1E56,0x1E57,0x0050}, /* 1E56 */ - {0x1E58,0x1E59,0x0052}, {0x1E58,0x1E59,0x0052}, /* 1E58 */ - {0x1E5A,0x1E5B,0x0052}, {0x1E5A,0x1E5B,0x0052}, /* 1E5A */ - {0x1E5C,0x1E5D,0x0052}, {0x1E5C,0x1E5D,0x0052}, /* 1E5C */ - {0x1E5E,0x1E5F,0x0052}, {0x1E5E,0x1E5F,0x0052}, /* 1E5E */ - {0x1E60,0x1E61,0x0053}, {0x1E60,0x1E61,0x0053}, /* 1E60 */ - {0x1E62,0x1E63,0x0053}, {0x1E62,0x1E63,0x0053}, /* 1E62 */ - {0x1E64,0x1E65,0x0053}, {0x1E64,0x1E65,0x0053}, /* 1E64 */ - {0x1E66,0x1E67,0x0053}, {0x1E66,0x1E67,0x0053}, /* 1E66 */ - {0x1E68,0x1E69,0x0053}, {0x1E68,0x1E69,0x0053}, /* 1E68 */ - {0x1E6A,0x1E6B,0x0054}, {0x1E6A,0x1E6B,0x0054}, /* 1E6A */ - {0x1E6C,0x1E6D,0x0054}, {0x1E6C,0x1E6D,0x0054}, /* 1E6C */ - {0x1E6E,0x1E6F,0x0054}, {0x1E6E,0x1E6F,0x0054}, /* 1E6E */ - {0x1E70,0x1E71,0x0054}, {0x1E70,0x1E71,0x0054}, /* 1E70 */ - {0x1E72,0x1E73,0x0055}, {0x1E72,0x1E73,0x0055}, /* 1E72 */ - {0x1E74,0x1E75,0x0055}, {0x1E74,0x1E75,0x0055}, /* 1E74 */ - {0x1E76,0x1E77,0x0055}, {0x1E76,0x1E77,0x0055}, /* 1E76 */ - {0x1E78,0x1E79,0x0055}, {0x1E78,0x1E79,0x0055}, /* 1E78 */ - {0x1E7A,0x1E7B,0x0055}, {0x1E7A,0x1E7B,0x0055}, /* 1E7A */ - {0x1E7C,0x1E7D,0x0056}, {0x1E7C,0x1E7D,0x0056}, /* 1E7C */ - {0x1E7E,0x1E7F,0x0056}, {0x1E7E,0x1E7F,0x0056}, /* 1E7E */ - {0x1E80,0x1E81,0x0057}, {0x1E80,0x1E81,0x0057}, /* 1E80 */ - {0x1E82,0x1E83,0x0057}, {0x1E82,0x1E83,0x0057}, /* 1E82 */ - {0x1E84,0x1E85,0x0057}, {0x1E84,0x1E85,0x0057}, /* 1E84 */ - {0x1E86,0x1E87,0x0057}, {0x1E86,0x1E87,0x0057}, /* 1E86 */ - {0x1E88,0x1E89,0x0057}, {0x1E88,0x1E89,0x0057}, /* 1E88 */ - {0x1E8A,0x1E8B,0x0058}, {0x1E8A,0x1E8B,0x0058}, /* 1E8A */ - {0x1E8C,0x1E8D,0x0058}, {0x1E8C,0x1E8D,0x0058}, /* 1E8C */ - {0x1E8E,0x1E8F,0x0059}, {0x1E8E,0x1E8F,0x0059}, /* 1E8E */ - {0x1E90,0x1E91,0x005A}, {0x1E90,0x1E91,0x005A}, /* 1E90 */ - {0x1E92,0x1E93,0x005A}, {0x1E92,0x1E93,0x005A}, /* 1E92 */ - {0x1E94,0x1E95,0x005A}, {0x1E94,0x1E95,0x005A}, /* 1E94 */ - {0x1E96,0x1E96,0x0048}, {0x1E97,0x1E97,0x0054}, /* 1E96 */ - {0x1E98,0x1E98,0x0057}, {0x1E99,0x1E99,0x0059}, /* 1E98 */ - {0x1E9A,0x1E9A,0x1E9A}, {0x1E60,0x1E9B,0x0053}, /* 1E9A */ - {0x1E9C,0x1E9C,0x1E9C}, {0x1E9D,0x1E9D,0x1E9D}, /* 1E9C */ - {0x1E9E,0x00DF,0x1E9E}, {0x1E9F,0x1E9F,0x1E9F}, /* 1E9E */ - {0x1EA0,0x1EA1,0x0041}, {0x1EA0,0x1EA1,0x0041}, /* 1EA0 */ - {0x1EA2,0x1EA3,0x0041}, {0x1EA2,0x1EA3,0x0041}, /* 1EA2 */ - {0x1EA4,0x1EA5,0x0041}, {0x1EA4,0x1EA5,0x0041}, /* 1EA4 */ - {0x1EA6,0x1EA7,0x0041}, {0x1EA6,0x1EA7,0x0041}, /* 1EA6 */ - {0x1EA8,0x1EA9,0x0041}, {0x1EA8,0x1EA9,0x0041}, /* 1EA8 */ - {0x1EAA,0x1EAB,0x0041}, {0x1EAA,0x1EAB,0x0041}, /* 1EAA */ - {0x1EAC,0x1EAD,0x0041}, {0x1EAC,0x1EAD,0x0041}, /* 1EAC */ - {0x1EAE,0x1EAF,0x0041}, {0x1EAE,0x1EAF,0x0041}, /* 1EAE */ - {0x1EB0,0x1EB1,0x0041}, {0x1EB0,0x1EB1,0x0041}, /* 1EB0 */ - {0x1EB2,0x1EB3,0x0041}, {0x1EB2,0x1EB3,0x0041}, /* 1EB2 */ - {0x1EB4,0x1EB5,0x0041}, {0x1EB4,0x1EB5,0x0041}, /* 1EB4 */ - {0x1EB6,0x1EB7,0x0041}, {0x1EB6,0x1EB7,0x0041}, /* 1EB6 */ - {0x1EB8,0x1EB9,0x0045}, {0x1EB8,0x1EB9,0x0045}, /* 1EB8 */ - {0x1EBA,0x1EBB,0x0045}, {0x1EBA,0x1EBB,0x0045}, /* 1EBA */ - {0x1EBC,0x1EBD,0x0045}, {0x1EBC,0x1EBD,0x0045}, /* 1EBC */ - {0x1EBE,0x1EBF,0x0045}, {0x1EBE,0x1EBF,0x0045}, /* 1EBE */ - {0x1EC0,0x1EC1,0x0045}, {0x1EC0,0x1EC1,0x0045}, /* 1EC0 */ - {0x1EC2,0x1EC3,0x0045}, {0x1EC2,0x1EC3,0x0045}, /* 1EC2 */ - {0x1EC4,0x1EC5,0x0045}, {0x1EC4,0x1EC5,0x0045}, /* 1EC4 */ - {0x1EC6,0x1EC7,0x0045}, {0x1EC6,0x1EC7,0x0045}, /* 1EC6 */ - {0x1EC8,0x1EC9,0x0049}, {0x1EC8,0x1EC9,0x0049}, /* 1EC8 */ - {0x1ECA,0x1ECB,0x0049}, {0x1ECA,0x1ECB,0x0049}, /* 1ECA */ - {0x1ECC,0x1ECD,0x004F}, {0x1ECC,0x1ECD,0x004F}, /* 1ECC */ - {0x1ECE,0x1ECF,0x004F}, {0x1ECE,0x1ECF,0x004F}, /* 1ECE */ - {0x1ED0,0x1ED1,0x004F}, {0x1ED0,0x1ED1,0x004F}, /* 1ED0 */ - {0x1ED2,0x1ED3,0x004F}, {0x1ED2,0x1ED3,0x004F}, /* 1ED2 */ - {0x1ED4,0x1ED5,0x004F}, {0x1ED4,0x1ED5,0x004F}, /* 1ED4 */ - {0x1ED6,0x1ED7,0x004F}, {0x1ED6,0x1ED7,0x004F}, /* 1ED6 */ - {0x1ED8,0x1ED9,0x004F}, {0x1ED8,0x1ED9,0x004F}, /* 1ED8 */ - {0x1EDA,0x1EDB,0x004F}, {0x1EDA,0x1EDB,0x004F}, /* 1EDA */ - {0x1EDC,0x1EDD,0x004F}, {0x1EDC,0x1EDD,0x004F}, /* 1EDC */ - {0x1EDE,0x1EDF,0x004F}, {0x1EDE,0x1EDF,0x004F}, /* 1EDE */ - {0x1EE0,0x1EE1,0x004F}, {0x1EE0,0x1EE1,0x004F}, /* 1EE0 */ - {0x1EE2,0x1EE3,0x004F}, {0x1EE2,0x1EE3,0x004F}, /* 1EE2 */ - {0x1EE4,0x1EE5,0x0055}, {0x1EE4,0x1EE5,0x0055}, /* 1EE4 */ - {0x1EE6,0x1EE7,0x0055}, {0x1EE6,0x1EE7,0x0055}, /* 1EE6 */ - {0x1EE8,0x1EE9,0x0055}, {0x1EE8,0x1EE9,0x0055}, /* 1EE8 */ - {0x1EEA,0x1EEB,0x0055}, {0x1EEA,0x1EEB,0x0055}, /* 1EEA */ - {0x1EEC,0x1EED,0x0055}, {0x1EEC,0x1EED,0x0055}, /* 1EEC */ - {0x1EEE,0x1EEF,0x0055}, {0x1EEE,0x1EEF,0x0055}, /* 1EEE */ - {0x1EF0,0x1EF1,0x0055}, {0x1EF0,0x1EF1,0x0055}, /* 1EF0 */ - {0x1EF2,0x1EF3,0x0059}, {0x1EF2,0x1EF3,0x0059}, /* 1EF2 */ - {0x1EF4,0x1EF5,0x0059}, {0x1EF4,0x1EF5,0x0059}, /* 1EF4 */ - {0x1EF6,0x1EF7,0x0059}, {0x1EF6,0x1EF7,0x0059}, /* 1EF6 */ - {0x1EF8,0x1EF9,0x0059}, {0x1EF8,0x1EF9,0x0059}, /* 1EF8 */ - {0x1EFA,0x1EFB,0x1EFA}, {0x1EFA,0x1EFB,0x1EFA}, /* 1EFA */ - {0x1EFC,0x1EFD,0x1EFC}, {0x1EFC,0x1EFD,0x1EFC}, /* 1EFC */ - {0x1EFE,0x1EFF,0x1EFE}, {0x1EFE,0x1EFF,0x1EFE} /* 1EFE */ -}; - -static MY_UNICASE_CHARACTER u520p1F[]={ - {0x1F08,0x1F00,0x0391}, {0x1F09,0x1F01,0x0391}, /* 1F00 */ - {0x1F0A,0x1F02,0x0391}, {0x1F0B,0x1F03,0x0391}, /* 1F02 */ - {0x1F0C,0x1F04,0x0391}, {0x1F0D,0x1F05,0x0391}, /* 1F04 */ - {0x1F0E,0x1F06,0x0391}, {0x1F0F,0x1F07,0x0391}, /* 1F06 */ - {0x1F08,0x1F00,0x0391}, {0x1F09,0x1F01,0x0391}, /* 1F08 */ - {0x1F0A,0x1F02,0x0391}, {0x1F0B,0x1F03,0x0391}, /* 1F0A */ - {0x1F0C,0x1F04,0x0391}, {0x1F0D,0x1F05,0x0391}, /* 1F0C */ - {0x1F0E,0x1F06,0x0391}, {0x1F0F,0x1F07,0x0391}, /* 1F0E */ - {0x1F18,0x1F10,0x0395}, {0x1F19,0x1F11,0x0395}, /* 1F10 */ - {0x1F1A,0x1F12,0x0395}, {0x1F1B,0x1F13,0x0395}, /* 1F12 */ - {0x1F1C,0x1F14,0x0395}, {0x1F1D,0x1F15,0x0395}, /* 1F14 */ - {0x1F16,0x1F16,0x1F16}, {0x1F17,0x1F17,0x1F17}, /* 1F16 */ - {0x1F18,0x1F10,0x0395}, {0x1F19,0x1F11,0x0395}, /* 1F18 */ - {0x1F1A,0x1F12,0x0395}, {0x1F1B,0x1F13,0x0395}, /* 1F1A */ - {0x1F1C,0x1F14,0x0395}, {0x1F1D,0x1F15,0x0395}, /* 1F1C */ - {0x1F1E,0x1F1E,0x1F1E}, {0x1F1F,0x1F1F,0x1F1F}, /* 1F1E */ - {0x1F28,0x1F20,0x0397}, {0x1F29,0x1F21,0x0397}, /* 1F20 */ - {0x1F2A,0x1F22,0x0397}, {0x1F2B,0x1F23,0x0397}, /* 1F22 */ - {0x1F2C,0x1F24,0x0397}, {0x1F2D,0x1F25,0x0397}, /* 1F24 */ - {0x1F2E,0x1F26,0x0397}, {0x1F2F,0x1F27,0x0397}, /* 1F26 */ - {0x1F28,0x1F20,0x0397}, {0x1F29,0x1F21,0x0397}, /* 1F28 */ - {0x1F2A,0x1F22,0x0397}, {0x1F2B,0x1F23,0x0397}, /* 1F2A */ - {0x1F2C,0x1F24,0x0397}, {0x1F2D,0x1F25,0x0397}, /* 1F2C */ - {0x1F2E,0x1F26,0x0397}, {0x1F2F,0x1F27,0x0397}, /* 1F2E */ - {0x1F38,0x1F30,0x0399}, {0x1F39,0x1F31,0x0399}, /* 1F30 */ - {0x1F3A,0x1F32,0x0399}, {0x1F3B,0x1F33,0x0399}, /* 1F32 */ - {0x1F3C,0x1F34,0x0399}, {0x1F3D,0x1F35,0x0399}, /* 1F34 */ - {0x1F3E,0x1F36,0x0399}, {0x1F3F,0x1F37,0x0399}, /* 1F36 */ - {0x1F38,0x1F30,0x0399}, {0x1F39,0x1F31,0x0399}, /* 1F38 */ - {0x1F3A,0x1F32,0x0399}, {0x1F3B,0x1F33,0x0399}, /* 1F3A */ - {0x1F3C,0x1F34,0x0399}, {0x1F3D,0x1F35,0x0399}, /* 1F3C */ - {0x1F3E,0x1F36,0x0399}, {0x1F3F,0x1F37,0x0399}, /* 1F3E */ - {0x1F48,0x1F40,0x039F}, {0x1F49,0x1F41,0x039F}, /* 1F40 */ - {0x1F4A,0x1F42,0x039F}, {0x1F4B,0x1F43,0x039F}, /* 1F42 */ - {0x1F4C,0x1F44,0x039F}, {0x1F4D,0x1F45,0x039F}, /* 1F44 */ - {0x1F46,0x1F46,0x1F46}, {0x1F47,0x1F47,0x1F47}, /* 1F46 */ - {0x1F48,0x1F40,0x039F}, {0x1F49,0x1F41,0x039F}, /* 1F48 */ - {0x1F4A,0x1F42,0x039F}, {0x1F4B,0x1F43,0x039F}, /* 1F4A */ - {0x1F4C,0x1F44,0x039F}, {0x1F4D,0x1F45,0x039F}, /* 1F4C */ - {0x1F4E,0x1F4E,0x1F4E}, {0x1F4F,0x1F4F,0x1F4F}, /* 1F4E */ - {0x1F50,0x1F50,0x03A5}, {0x1F59,0x1F51,0x03A5}, /* 1F50 */ - {0x1F52,0x1F52,0x03A5}, {0x1F5B,0x1F53,0x03A5}, /* 1F52 */ - {0x1F54,0x1F54,0x03A5}, {0x1F5D,0x1F55,0x03A5}, /* 1F54 */ - {0x1F56,0x1F56,0x03A5}, {0x1F5F,0x1F57,0x03A5}, /* 1F56 */ - {0x1F58,0x1F58,0x1F58}, {0x1F59,0x1F51,0x03A5}, /* 1F58 */ - {0x1F5A,0x1F5A,0x1F5A}, {0x1F5B,0x1F53,0x03A5}, /* 1F5A */ - {0x1F5C,0x1F5C,0x1F5C}, {0x1F5D,0x1F55,0x03A5}, /* 1F5C */ - {0x1F5E,0x1F5E,0x1F5E}, {0x1F5F,0x1F57,0x03A5}, /* 1F5E */ - {0x1F68,0x1F60,0x03A9}, {0x1F69,0x1F61,0x03A9}, /* 1F60 */ - {0x1F6A,0x1F62,0x03A9}, {0x1F6B,0x1F63,0x03A9}, /* 1F62 */ - {0x1F6C,0x1F64,0x03A9}, {0x1F6D,0x1F65,0x03A9}, /* 1F64 */ - {0x1F6E,0x1F66,0x03A9}, {0x1F6F,0x1F67,0x03A9}, /* 1F66 */ - {0x1F68,0x1F60,0x03A9}, {0x1F69,0x1F61,0x03A9}, /* 1F68 */ - {0x1F6A,0x1F62,0x03A9}, {0x1F6B,0x1F63,0x03A9}, /* 1F6A */ - {0x1F6C,0x1F64,0x03A9}, {0x1F6D,0x1F65,0x03A9}, /* 1F6C */ - {0x1F6E,0x1F66,0x03A9}, {0x1F6F,0x1F67,0x03A9}, /* 1F6E */ - {0x1FBA,0x1F70,0x0391}, {0x1FBB,0x1F71,0x1FBB}, /* 1F70 */ - {0x1FC8,0x1F72,0x0395}, {0x1FC9,0x1F73,0x1FC9}, /* 1F72 */ - {0x1FCA,0x1F74,0x0397}, {0x1FCB,0x1F75,0x1FCB}, /* 1F74 */ - {0x1FDA,0x1F76,0x0399}, {0x1FDB,0x1F77,0x1FDB}, /* 1F76 */ - {0x1FF8,0x1F78,0x039F}, {0x1FF9,0x1F79,0x1FF9}, /* 1F78 */ - {0x1FEA,0x1F7A,0x03A5}, {0x1FEB,0x1F7B,0x1FEB}, /* 1F7A */ - {0x1FFA,0x1F7C,0x03A9}, {0x1FFB,0x1F7D,0x1FFB}, /* 1F7C */ - {0x1F7E,0x1F7E,0x1F7E}, {0x1F7F,0x1F7F,0x1F7F}, /* 1F7E */ - {0x1F88,0x1F80,0x0391}, {0x1F89,0x1F81,0x0391}, /* 1F80 */ - {0x1F8A,0x1F82,0x0391}, {0x1F8B,0x1F83,0x0391}, /* 1F82 */ - {0x1F8C,0x1F84,0x0391}, {0x1F8D,0x1F85,0x0391}, /* 1F84 */ - {0x1F8E,0x1F86,0x0391}, {0x1F8F,0x1F87,0x0391}, /* 1F86 */ - {0x1F88,0x1F80,0x0391}, {0x1F89,0x1F81,0x0391}, /* 1F88 */ - {0x1F8A,0x1F82,0x0391}, {0x1F8B,0x1F83,0x0391}, /* 1F8A */ - {0x1F8C,0x1F84,0x0391}, {0x1F8D,0x1F85,0x0391}, /* 1F8C */ - {0x1F8E,0x1F86,0x0391}, {0x1F8F,0x1F87,0x0391}, /* 1F8E */ - {0x1F98,0x1F90,0x0397}, {0x1F99,0x1F91,0x0397}, /* 1F90 */ - {0x1F9A,0x1F92,0x0397}, {0x1F9B,0x1F93,0x0397}, /* 1F92 */ - {0x1F9C,0x1F94,0x0397}, {0x1F9D,0x1F95,0x0397}, /* 1F94 */ - {0x1F9E,0x1F96,0x0397}, {0x1F9F,0x1F97,0x0397}, /* 1F96 */ - {0x1F98,0x1F90,0x0397}, {0x1F99,0x1F91,0x0397}, /* 1F98 */ - {0x1F9A,0x1F92,0x0397}, {0x1F9B,0x1F93,0x0397}, /* 1F9A */ - {0x1F9C,0x1F94,0x0397}, {0x1F9D,0x1F95,0x0397}, /* 1F9C */ - {0x1F9E,0x1F96,0x0397}, {0x1F9F,0x1F97,0x0397}, /* 1F9E */ - {0x1FA8,0x1FA0,0x03A9}, {0x1FA9,0x1FA1,0x03A9}, /* 1FA0 */ - {0x1FAA,0x1FA2,0x03A9}, {0x1FAB,0x1FA3,0x03A9}, /* 1FA2 */ - {0x1FAC,0x1FA4,0x03A9}, {0x1FAD,0x1FA5,0x03A9}, /* 1FA4 */ - {0x1FAE,0x1FA6,0x03A9}, {0x1FAF,0x1FA7,0x03A9}, /* 1FA6 */ - {0x1FA8,0x1FA0,0x03A9}, {0x1FA9,0x1FA1,0x03A9}, /* 1FA8 */ - {0x1FAA,0x1FA2,0x03A9}, {0x1FAB,0x1FA3,0x03A9}, /* 1FAA */ - {0x1FAC,0x1FA4,0x03A9}, {0x1FAD,0x1FA5,0x03A9}, /* 1FAC */ - {0x1FAE,0x1FA6,0x03A9}, {0x1FAF,0x1FA7,0x03A9}, /* 1FAE */ - {0x1FB8,0x1FB0,0x0391}, {0x1FB9,0x1FB1,0x0391}, /* 1FB0 */ - {0x1FB2,0x1FB2,0x0391}, {0x1FBC,0x1FB3,0x0391}, /* 1FB2 */ - {0x1FB4,0x1FB4,0x0391}, {0x1FB5,0x1FB5,0x1FB5}, /* 1FB4 */ - {0x1FB6,0x1FB6,0x0391}, {0x1FB7,0x1FB7,0x0391}, /* 1FB6 */ - {0x1FB8,0x1FB0,0x0391}, {0x1FB9,0x1FB1,0x0391}, /* 1FB8 */ - {0x1FBA,0x1F70,0x0391}, {0x1FBB,0x1F71,0x1FBB}, /* 1FBA */ - {0x1FBC,0x1FB3,0x0391}, {0x1FBD,0x1FBD,0x1FBD}, /* 1FBC */ - {0x0399,0x1FBE,0x0399}, {0x1FBF,0x1FBF,0x1FBF}, /* 1FBE */ - {0x1FC0,0x1FC0,0x1FC0}, {0x1FC1,0x1FC1,0x1FC1}, /* 1FC0 */ - {0x1FC2,0x1FC2,0x0397}, {0x1FCC,0x1FC3,0x0397}, /* 1FC2 */ - {0x1FC4,0x1FC4,0x0397}, {0x1FC5,0x1FC5,0x1FC5}, /* 1FC4 */ - {0x1FC6,0x1FC6,0x0397}, {0x1FC7,0x1FC7,0x0397}, /* 1FC6 */ - {0x1FC8,0x1F72,0x0395}, {0x1FC9,0x1F73,0x1FC9}, /* 1FC8 */ - {0x1FCA,0x1F74,0x0397}, {0x1FCB,0x1F75,0x1FCB}, /* 1FCA */ - {0x1FCC,0x1FC3,0x0397}, {0x1FCD,0x1FCD,0x1FCD}, /* 1FCC */ - {0x1FCE,0x1FCE,0x1FCE}, {0x1FCF,0x1FCF,0x1FCF}, /* 1FCE */ - {0x1FD8,0x1FD0,0x0399}, {0x1FD9,0x1FD1,0x0399}, /* 1FD0 */ - {0x1FD2,0x1FD2,0x0399}, {0x1FD3,0x1FD3,0x1FD3}, /* 1FD2 */ - {0x1FD4,0x1FD4,0x1FD4}, {0x1FD5,0x1FD5,0x1FD5}, /* 1FD4 */ - {0x1FD6,0x1FD6,0x0399}, {0x1FD7,0x1FD7,0x0399}, /* 1FD6 */ - {0x1FD8,0x1FD0,0x0399}, {0x1FD9,0x1FD1,0x0399}, /* 1FD8 */ - {0x1FDA,0x1F76,0x0399}, {0x1FDB,0x1F77,0x1FDB}, /* 1FDA */ - {0x1FDC,0x1FDC,0x1FDC}, {0x1FDD,0x1FDD,0x1FDD}, /* 1FDC */ - {0x1FDE,0x1FDE,0x1FDE}, {0x1FDF,0x1FDF,0x1FDF}, /* 1FDE */ - {0x1FE8,0x1FE0,0x03A5}, {0x1FE9,0x1FE1,0x03A5}, /* 1FE0 */ - {0x1FE2,0x1FE2,0x03A5}, {0x1FE3,0x1FE3,0x1FE3}, /* 1FE2 */ - {0x1FE4,0x1FE4,0x03A1}, {0x1FEC,0x1FE5,0x03A1}, /* 1FE4 */ - {0x1FE6,0x1FE6,0x03A5}, {0x1FE7,0x1FE7,0x03A5}, /* 1FE6 */ - {0x1FE8,0x1FE0,0x03A5}, {0x1FE9,0x1FE1,0x03A5}, /* 1FE8 */ - {0x1FEA,0x1F7A,0x03A5}, {0x1FEB,0x1F7B,0x1FEB}, /* 1FEA */ - {0x1FEC,0x1FE5,0x03A1}, {0x1FED,0x1FED,0x1FED}, /* 1FEC */ - {0x1FEE,0x1FEE,0x1FEE}, {0x1FEF,0x1FEF,0x1FEF}, /* 1FEE */ - {0x1FF0,0x1FF0,0x1FF0}, {0x1FF1,0x1FF1,0x1FF1}, /* 1FF0 */ - {0x1FF2,0x1FF2,0x03A9}, {0x1FFC,0x1FF3,0x03A9}, /* 1FF2 */ - {0x1FF4,0x1FF4,0x03A9}, {0x1FF5,0x1FF5,0x1FF5}, /* 1FF4 */ - {0x1FF6,0x1FF6,0x03A9}, {0x1FF7,0x1FF7,0x03A9}, /* 1FF6 */ - {0x1FF8,0x1F78,0x039F}, {0x1FF9,0x1F79,0x1FF9}, /* 1FF8 */ - {0x1FFA,0x1F7C,0x03A9}, {0x1FFB,0x1F7D,0x1FFB}, /* 1FFA */ - {0x1FFC,0x1FF3,0x03A9}, {0x1FFD,0x1FFD,0x1FFD}, /* 1FFC */ - {0x1FFE,0x1FFE,0x1FFE}, {0x1FFF,0x1FFF,0x1FFF} /* 1FFE */ -}; - -static MY_UNICASE_CHARACTER u520p21[]={ - {0x2100,0x2100,0x2100}, {0x2101,0x2101,0x2101}, /* 2100 */ - {0x2102,0x2102,0x2102}, {0x2103,0x2103,0x2103}, /* 2102 */ - {0x2104,0x2104,0x2104}, {0x2105,0x2105,0x2105}, /* 2104 */ - {0x2106,0x2106,0x2106}, {0x2107,0x2107,0x2107}, /* 2106 */ - {0x2108,0x2108,0x2108}, {0x2109,0x2109,0x2109}, /* 2108 */ - {0x210A,0x210A,0x210A}, {0x210B,0x210B,0x210B}, /* 210A */ - {0x210C,0x210C,0x210C}, {0x210D,0x210D,0x210D}, /* 210C */ - {0x210E,0x210E,0x210E}, {0x210F,0x210F,0x210F}, /* 210E */ - {0x2110,0x2110,0x2110}, {0x2111,0x2111,0x2111}, /* 2110 */ - {0x2112,0x2112,0x2112}, {0x2113,0x2113,0x2113}, /* 2112 */ - {0x2114,0x2114,0x2114}, {0x2115,0x2115,0x2115}, /* 2114 */ - {0x2116,0x2116,0x2116}, {0x2117,0x2117,0x2117}, /* 2116 */ - {0x2118,0x2118,0x2118}, {0x2119,0x2119,0x2119}, /* 2118 */ - {0x211A,0x211A,0x211A}, {0x211B,0x211B,0x211B}, /* 211A */ - {0x211C,0x211C,0x211C}, {0x211D,0x211D,0x211D}, /* 211C */ - {0x211E,0x211E,0x211E}, {0x211F,0x211F,0x211F}, /* 211E */ - {0x2120,0x2120,0x2120}, {0x2121,0x2121,0x2121}, /* 2120 */ - {0x2122,0x2122,0x2122}, {0x2123,0x2123,0x2123}, /* 2122 */ - {0x2124,0x2124,0x2124}, {0x2125,0x2125,0x2125}, /* 2124 */ - {0x2126,0x03C9,0x2126}, {0x2127,0x2127,0x2127}, /* 2126 */ - {0x2128,0x2128,0x2128}, {0x2129,0x2129,0x2129}, /* 2128 */ - {0x212A,0x006B,0x212A}, {0x212B,0x00E5,0x212B}, /* 212A */ - {0x212C,0x212C,0x212C}, {0x212D,0x212D,0x212D}, /* 212C */ - {0x212E,0x212E,0x212E}, {0x212F,0x212F,0x212F}, /* 212E */ - {0x2130,0x2130,0x2130}, {0x2131,0x2131,0x2131}, /* 2130 */ - {0x2132,0x214E,0x2132}, {0x2133,0x2133,0x2133}, /* 2132 */ - {0x2134,0x2134,0x2134}, {0x2135,0x2135,0x2135}, /* 2134 */ - {0x2136,0x2136,0x2136}, {0x2137,0x2137,0x2137}, /* 2136 */ - {0x2138,0x2138,0x2138}, {0x2139,0x2139,0x2139}, /* 2138 */ - {0x213A,0x213A,0x213A}, {0x213B,0x213B,0x213B}, /* 213A */ - {0x213C,0x213C,0x213C}, {0x213D,0x213D,0x213D}, /* 213C */ - {0x213E,0x213E,0x213E}, {0x213F,0x213F,0x213F}, /* 213E */ - {0x2140,0x2140,0x2140}, {0x2141,0x2141,0x2141}, /* 2140 */ - {0x2142,0x2142,0x2142}, {0x2143,0x2143,0x2143}, /* 2142 */ - {0x2144,0x2144,0x2144}, {0x2145,0x2145,0x2145}, /* 2144 */ - {0x2146,0x2146,0x2146}, {0x2147,0x2147,0x2147}, /* 2146 */ - {0x2148,0x2148,0x2148}, {0x2149,0x2149,0x2149}, /* 2148 */ - {0x214A,0x214A,0x214A}, {0x214B,0x214B,0x214B}, /* 214A */ - {0x214C,0x214C,0x214C}, {0x214D,0x214D,0x214D}, /* 214C */ - {0x2132,0x214E,0x2132}, {0x214F,0x214F,0x214F}, /* 214E */ - {0x2150,0x2150,0x2150}, {0x2151,0x2151,0x2151}, /* 2150 */ - {0x2152,0x2152,0x2152}, {0x2153,0x2153,0x2153}, /* 2152 */ - {0x2154,0x2154,0x2154}, {0x2155,0x2155,0x2155}, /* 2154 */ - {0x2156,0x2156,0x2156}, {0x2157,0x2157,0x2157}, /* 2156 */ - {0x2158,0x2158,0x2158}, {0x2159,0x2159,0x2159}, /* 2158 */ - {0x215A,0x215A,0x215A}, {0x215B,0x215B,0x215B}, /* 215A */ - {0x215C,0x215C,0x215C}, {0x215D,0x215D,0x215D}, /* 215C */ - {0x215E,0x215E,0x215E}, {0x215F,0x215F,0x215F}, /* 215E */ - {0x2160,0x2170,0x2160}, {0x2161,0x2171,0x2161}, /* 2160 */ - {0x2162,0x2172,0x2162}, {0x2163,0x2173,0x2163}, /* 2162 */ - {0x2164,0x2174,0x2164}, {0x2165,0x2175,0x2165}, /* 2164 */ - {0x2166,0x2176,0x2166}, {0x2167,0x2177,0x2167}, /* 2166 */ - {0x2168,0x2178,0x2168}, {0x2169,0x2179,0x2169}, /* 2168 */ - {0x216A,0x217A,0x216A}, {0x216B,0x217B,0x216B}, /* 216A */ - {0x216C,0x217C,0x216C}, {0x216D,0x217D,0x216D}, /* 216C */ - {0x216E,0x217E,0x216E}, {0x216F,0x217F,0x216F}, /* 216E */ - {0x2160,0x2170,0x2160}, {0x2161,0x2171,0x2161}, /* 2170 */ - {0x2162,0x2172,0x2162}, {0x2163,0x2173,0x2163}, /* 2172 */ - {0x2164,0x2174,0x2164}, {0x2165,0x2175,0x2165}, /* 2174 */ - {0x2166,0x2176,0x2166}, {0x2167,0x2177,0x2167}, /* 2176 */ - {0x2168,0x2178,0x2168}, {0x2169,0x2179,0x2169}, /* 2178 */ - {0x216A,0x217A,0x216A}, {0x216B,0x217B,0x216B}, /* 217A */ - {0x216C,0x217C,0x216C}, {0x216D,0x217D,0x216D}, /* 217C */ - {0x216E,0x217E,0x216E}, {0x216F,0x217F,0x216F}, /* 217E */ - {0x2180,0x2180,0x2180}, {0x2181,0x2181,0x2181}, /* 2180 */ - {0x2182,0x2182,0x2182}, {0x2183,0x2184,0x2183}, /* 2182 */ - {0x2183,0x2184,0x2183}, {0x2185,0x2185,0x2185}, /* 2184 */ - {0x2186,0x2186,0x2186}, {0x2187,0x2187,0x2187}, /* 2186 */ - {0x2188,0x2188,0x2188}, {0x2189,0x2189,0x2189}, /* 2188 */ - {0x218A,0x218A,0x218A}, {0x218B,0x218B,0x218B}, /* 218A */ - {0x218C,0x218C,0x218C}, {0x218D,0x218D,0x218D}, /* 218C */ - {0x218E,0x218E,0x218E}, {0x218F,0x218F,0x218F}, /* 218E */ - {0x2190,0x2190,0x2190}, {0x2191,0x2191,0x2191}, /* 2190 */ - {0x2192,0x2192,0x2192}, {0x2193,0x2193,0x2193}, /* 2192 */ - {0x2194,0x2194,0x2194}, {0x2195,0x2195,0x2195}, /* 2194 */ - {0x2196,0x2196,0x2196}, {0x2197,0x2197,0x2197}, /* 2196 */ - {0x2198,0x2198,0x2198}, {0x2199,0x2199,0x2199}, /* 2198 */ - {0x219A,0x219A,0x219A}, {0x219B,0x219B,0x219B}, /* 219A */ - {0x219C,0x219C,0x219C}, {0x219D,0x219D,0x219D}, /* 219C */ - {0x219E,0x219E,0x219E}, {0x219F,0x219F,0x219F}, /* 219E */ - {0x21A0,0x21A0,0x21A0}, {0x21A1,0x21A1,0x21A1}, /* 21A0 */ - {0x21A2,0x21A2,0x21A2}, {0x21A3,0x21A3,0x21A3}, /* 21A2 */ - {0x21A4,0x21A4,0x21A4}, {0x21A5,0x21A5,0x21A5}, /* 21A4 */ - {0x21A6,0x21A6,0x21A6}, {0x21A7,0x21A7,0x21A7}, /* 21A6 */ - {0x21A8,0x21A8,0x21A8}, {0x21A9,0x21A9,0x21A9}, /* 21A8 */ - {0x21AA,0x21AA,0x21AA}, {0x21AB,0x21AB,0x21AB}, /* 21AA */ - {0x21AC,0x21AC,0x21AC}, {0x21AD,0x21AD,0x21AD}, /* 21AC */ - {0x21AE,0x21AE,0x21AE}, {0x21AF,0x21AF,0x21AF}, /* 21AE */ - {0x21B0,0x21B0,0x21B0}, {0x21B1,0x21B1,0x21B1}, /* 21B0 */ - {0x21B2,0x21B2,0x21B2}, {0x21B3,0x21B3,0x21B3}, /* 21B2 */ - {0x21B4,0x21B4,0x21B4}, {0x21B5,0x21B5,0x21B5}, /* 21B4 */ - {0x21B6,0x21B6,0x21B6}, {0x21B7,0x21B7,0x21B7}, /* 21B6 */ - {0x21B8,0x21B8,0x21B8}, {0x21B9,0x21B9,0x21B9}, /* 21B8 */ - {0x21BA,0x21BA,0x21BA}, {0x21BB,0x21BB,0x21BB}, /* 21BA */ - {0x21BC,0x21BC,0x21BC}, {0x21BD,0x21BD,0x21BD}, /* 21BC */ - {0x21BE,0x21BE,0x21BE}, {0x21BF,0x21BF,0x21BF}, /* 21BE */ - {0x21C0,0x21C0,0x21C0}, {0x21C1,0x21C1,0x21C1}, /* 21C0 */ - {0x21C2,0x21C2,0x21C2}, {0x21C3,0x21C3,0x21C3}, /* 21C2 */ - {0x21C4,0x21C4,0x21C4}, {0x21C5,0x21C5,0x21C5}, /* 21C4 */ - {0x21C6,0x21C6,0x21C6}, {0x21C7,0x21C7,0x21C7}, /* 21C6 */ - {0x21C8,0x21C8,0x21C8}, {0x21C9,0x21C9,0x21C9}, /* 21C8 */ - {0x21CA,0x21CA,0x21CA}, {0x21CB,0x21CB,0x21CB}, /* 21CA */ - {0x21CC,0x21CC,0x21CC}, {0x21CD,0x21CD,0x21CD}, /* 21CC */ - {0x21CE,0x21CE,0x21CE}, {0x21CF,0x21CF,0x21CF}, /* 21CE */ - {0x21D0,0x21D0,0x21D0}, {0x21D1,0x21D1,0x21D1}, /* 21D0 */ - {0x21D2,0x21D2,0x21D2}, {0x21D3,0x21D3,0x21D3}, /* 21D2 */ - {0x21D4,0x21D4,0x21D4}, {0x21D5,0x21D5,0x21D5}, /* 21D4 */ - {0x21D6,0x21D6,0x21D6}, {0x21D7,0x21D7,0x21D7}, /* 21D6 */ - {0x21D8,0x21D8,0x21D8}, {0x21D9,0x21D9,0x21D9}, /* 21D8 */ - {0x21DA,0x21DA,0x21DA}, {0x21DB,0x21DB,0x21DB}, /* 21DA */ - {0x21DC,0x21DC,0x21DC}, {0x21DD,0x21DD,0x21DD}, /* 21DC */ - {0x21DE,0x21DE,0x21DE}, {0x21DF,0x21DF,0x21DF}, /* 21DE */ - {0x21E0,0x21E0,0x21E0}, {0x21E1,0x21E1,0x21E1}, /* 21E0 */ - {0x21E2,0x21E2,0x21E2}, {0x21E3,0x21E3,0x21E3}, /* 21E2 */ - {0x21E4,0x21E4,0x21E4}, {0x21E5,0x21E5,0x21E5}, /* 21E4 */ - {0x21E6,0x21E6,0x21E6}, {0x21E7,0x21E7,0x21E7}, /* 21E6 */ - {0x21E8,0x21E8,0x21E8}, {0x21E9,0x21E9,0x21E9}, /* 21E8 */ - {0x21EA,0x21EA,0x21EA}, {0x21EB,0x21EB,0x21EB}, /* 21EA */ - {0x21EC,0x21EC,0x21EC}, {0x21ED,0x21ED,0x21ED}, /* 21EC */ - {0x21EE,0x21EE,0x21EE}, {0x21EF,0x21EF,0x21EF}, /* 21EE */ - {0x21F0,0x21F0,0x21F0}, {0x21F1,0x21F1,0x21F1}, /* 21F0 */ - {0x21F2,0x21F2,0x21F2}, {0x21F3,0x21F3,0x21F3}, /* 21F2 */ - {0x21F4,0x21F4,0x21F4}, {0x21F5,0x21F5,0x21F5}, /* 21F4 */ - {0x21F6,0x21F6,0x21F6}, {0x21F7,0x21F7,0x21F7}, /* 21F6 */ - {0x21F8,0x21F8,0x21F8}, {0x21F9,0x21F9,0x21F9}, /* 21F8 */ - {0x21FA,0x21FA,0x21FA}, {0x21FB,0x21FB,0x21FB}, /* 21FA */ - {0x21FC,0x21FC,0x21FC}, {0x21FD,0x21FD,0x21FD}, /* 21FC */ - {0x21FE,0x21FE,0x21FE}, {0x21FF,0x21FF,0x21FF} /* 21FE */ -}; - -static MY_UNICASE_CHARACTER u520p24[]={ - {0x2400,0x2400,0x2400}, {0x2401,0x2401,0x2401}, /* 2400 */ - {0x2402,0x2402,0x2402}, {0x2403,0x2403,0x2403}, /* 2402 */ - {0x2404,0x2404,0x2404}, {0x2405,0x2405,0x2405}, /* 2404 */ - {0x2406,0x2406,0x2406}, {0x2407,0x2407,0x2407}, /* 2406 */ - {0x2408,0x2408,0x2408}, {0x2409,0x2409,0x2409}, /* 2408 */ - {0x240A,0x240A,0x240A}, {0x240B,0x240B,0x240B}, /* 240A */ - {0x240C,0x240C,0x240C}, {0x240D,0x240D,0x240D}, /* 240C */ - {0x240E,0x240E,0x240E}, {0x240F,0x240F,0x240F}, /* 240E */ - {0x2410,0x2410,0x2410}, {0x2411,0x2411,0x2411}, /* 2410 */ - {0x2412,0x2412,0x2412}, {0x2413,0x2413,0x2413}, /* 2412 */ - {0x2414,0x2414,0x2414}, {0x2415,0x2415,0x2415}, /* 2414 */ - {0x2416,0x2416,0x2416}, {0x2417,0x2417,0x2417}, /* 2416 */ - {0x2418,0x2418,0x2418}, {0x2419,0x2419,0x2419}, /* 2418 */ - {0x241A,0x241A,0x241A}, {0x241B,0x241B,0x241B}, /* 241A */ - {0x241C,0x241C,0x241C}, {0x241D,0x241D,0x241D}, /* 241C */ - {0x241E,0x241E,0x241E}, {0x241F,0x241F,0x241F}, /* 241E */ - {0x2420,0x2420,0x2420}, {0x2421,0x2421,0x2421}, /* 2420 */ - {0x2422,0x2422,0x2422}, {0x2423,0x2423,0x2423}, /* 2422 */ - {0x2424,0x2424,0x2424}, {0x2425,0x2425,0x2425}, /* 2424 */ - {0x2426,0x2426,0x2426}, {0x2427,0x2427,0x2427}, /* 2426 */ - {0x2428,0x2428,0x2428}, {0x2429,0x2429,0x2429}, /* 2428 */ - {0x242A,0x242A,0x242A}, {0x242B,0x242B,0x242B}, /* 242A */ - {0x242C,0x242C,0x242C}, {0x242D,0x242D,0x242D}, /* 242C */ - {0x242E,0x242E,0x242E}, {0x242F,0x242F,0x242F}, /* 242E */ - {0x2430,0x2430,0x2430}, {0x2431,0x2431,0x2431}, /* 2430 */ - {0x2432,0x2432,0x2432}, {0x2433,0x2433,0x2433}, /* 2432 */ - {0x2434,0x2434,0x2434}, {0x2435,0x2435,0x2435}, /* 2434 */ - {0x2436,0x2436,0x2436}, {0x2437,0x2437,0x2437}, /* 2436 */ - {0x2438,0x2438,0x2438}, {0x2439,0x2439,0x2439}, /* 2438 */ - {0x243A,0x243A,0x243A}, {0x243B,0x243B,0x243B}, /* 243A */ - {0x243C,0x243C,0x243C}, {0x243D,0x243D,0x243D}, /* 243C */ - {0x243E,0x243E,0x243E}, {0x243F,0x243F,0x243F}, /* 243E */ - {0x2440,0x2440,0x2440}, {0x2441,0x2441,0x2441}, /* 2440 */ - {0x2442,0x2442,0x2442}, {0x2443,0x2443,0x2443}, /* 2442 */ - {0x2444,0x2444,0x2444}, {0x2445,0x2445,0x2445}, /* 2444 */ - {0x2446,0x2446,0x2446}, {0x2447,0x2447,0x2447}, /* 2446 */ - {0x2448,0x2448,0x2448}, {0x2449,0x2449,0x2449}, /* 2448 */ - {0x244A,0x244A,0x244A}, {0x244B,0x244B,0x244B}, /* 244A */ - {0x244C,0x244C,0x244C}, {0x244D,0x244D,0x244D}, /* 244C */ - {0x244E,0x244E,0x244E}, {0x244F,0x244F,0x244F}, /* 244E */ - {0x2450,0x2450,0x2450}, {0x2451,0x2451,0x2451}, /* 2450 */ - {0x2452,0x2452,0x2452}, {0x2453,0x2453,0x2453}, /* 2452 */ - {0x2454,0x2454,0x2454}, {0x2455,0x2455,0x2455}, /* 2454 */ - {0x2456,0x2456,0x2456}, {0x2457,0x2457,0x2457}, /* 2456 */ - {0x2458,0x2458,0x2458}, {0x2459,0x2459,0x2459}, /* 2458 */ - {0x245A,0x245A,0x245A}, {0x245B,0x245B,0x245B}, /* 245A */ - {0x245C,0x245C,0x245C}, {0x245D,0x245D,0x245D}, /* 245C */ - {0x245E,0x245E,0x245E}, {0x245F,0x245F,0x245F}, /* 245E */ - {0x2460,0x2460,0x2460}, {0x2461,0x2461,0x2461}, /* 2460 */ - {0x2462,0x2462,0x2462}, {0x2463,0x2463,0x2463}, /* 2462 */ - {0x2464,0x2464,0x2464}, {0x2465,0x2465,0x2465}, /* 2464 */ - {0x2466,0x2466,0x2466}, {0x2467,0x2467,0x2467}, /* 2466 */ - {0x2468,0x2468,0x2468}, {0x2469,0x2469,0x2469}, /* 2468 */ - {0x246A,0x246A,0x246A}, {0x246B,0x246B,0x246B}, /* 246A */ - {0x246C,0x246C,0x246C}, {0x246D,0x246D,0x246D}, /* 246C */ - {0x246E,0x246E,0x246E}, {0x246F,0x246F,0x246F}, /* 246E */ - {0x2470,0x2470,0x2470}, {0x2471,0x2471,0x2471}, /* 2470 */ - {0x2472,0x2472,0x2472}, {0x2473,0x2473,0x2473}, /* 2472 */ - {0x2474,0x2474,0x2474}, {0x2475,0x2475,0x2475}, /* 2474 */ - {0x2476,0x2476,0x2476}, {0x2477,0x2477,0x2477}, /* 2476 */ - {0x2478,0x2478,0x2478}, {0x2479,0x2479,0x2479}, /* 2478 */ - {0x247A,0x247A,0x247A}, {0x247B,0x247B,0x247B}, /* 247A */ - {0x247C,0x247C,0x247C}, {0x247D,0x247D,0x247D}, /* 247C */ - {0x247E,0x247E,0x247E}, {0x247F,0x247F,0x247F}, /* 247E */ - {0x2480,0x2480,0x2480}, {0x2481,0x2481,0x2481}, /* 2480 */ - {0x2482,0x2482,0x2482}, {0x2483,0x2483,0x2483}, /* 2482 */ - {0x2484,0x2484,0x2484}, {0x2485,0x2485,0x2485}, /* 2484 */ - {0x2486,0x2486,0x2486}, {0x2487,0x2487,0x2487}, /* 2486 */ - {0x2488,0x2488,0x2488}, {0x2489,0x2489,0x2489}, /* 2488 */ - {0x248A,0x248A,0x248A}, {0x248B,0x248B,0x248B}, /* 248A */ - {0x248C,0x248C,0x248C}, {0x248D,0x248D,0x248D}, /* 248C */ - {0x248E,0x248E,0x248E}, {0x248F,0x248F,0x248F}, /* 248E */ - {0x2490,0x2490,0x2490}, {0x2491,0x2491,0x2491}, /* 2490 */ - {0x2492,0x2492,0x2492}, {0x2493,0x2493,0x2493}, /* 2492 */ - {0x2494,0x2494,0x2494}, {0x2495,0x2495,0x2495}, /* 2494 */ - {0x2496,0x2496,0x2496}, {0x2497,0x2497,0x2497}, /* 2496 */ - {0x2498,0x2498,0x2498}, {0x2499,0x2499,0x2499}, /* 2498 */ - {0x249A,0x249A,0x249A}, {0x249B,0x249B,0x249B}, /* 249A */ - {0x249C,0x249C,0x249C}, {0x249D,0x249D,0x249D}, /* 249C */ - {0x249E,0x249E,0x249E}, {0x249F,0x249F,0x249F}, /* 249E */ - {0x24A0,0x24A0,0x24A0}, {0x24A1,0x24A1,0x24A1}, /* 24A0 */ - {0x24A2,0x24A2,0x24A2}, {0x24A3,0x24A3,0x24A3}, /* 24A2 */ - {0x24A4,0x24A4,0x24A4}, {0x24A5,0x24A5,0x24A5}, /* 24A4 */ - {0x24A6,0x24A6,0x24A6}, {0x24A7,0x24A7,0x24A7}, /* 24A6 */ - {0x24A8,0x24A8,0x24A8}, {0x24A9,0x24A9,0x24A9}, /* 24A8 */ - {0x24AA,0x24AA,0x24AA}, {0x24AB,0x24AB,0x24AB}, /* 24AA */ - {0x24AC,0x24AC,0x24AC}, {0x24AD,0x24AD,0x24AD}, /* 24AC */ - {0x24AE,0x24AE,0x24AE}, {0x24AF,0x24AF,0x24AF}, /* 24AE */ - {0x24B0,0x24B0,0x24B0}, {0x24B1,0x24B1,0x24B1}, /* 24B0 */ - {0x24B2,0x24B2,0x24B2}, {0x24B3,0x24B3,0x24B3}, /* 24B2 */ - {0x24B4,0x24B4,0x24B4}, {0x24B5,0x24B5,0x24B5}, /* 24B4 */ - {0x24B6,0x24D0,0x24B6}, {0x24B7,0x24D1,0x24B7}, /* 24B6 */ - {0x24B8,0x24D2,0x24B8}, {0x24B9,0x24D3,0x24B9}, /* 24B8 */ - {0x24BA,0x24D4,0x24BA}, {0x24BB,0x24D5,0x24BB}, /* 24BA */ - {0x24BC,0x24D6,0x24BC}, {0x24BD,0x24D7,0x24BD}, /* 24BC */ - {0x24BE,0x24D8,0x24BE}, {0x24BF,0x24D9,0x24BF}, /* 24BE */ - {0x24C0,0x24DA,0x24C0}, {0x24C1,0x24DB,0x24C1}, /* 24C0 */ - {0x24C2,0x24DC,0x24C2}, {0x24C3,0x24DD,0x24C3}, /* 24C2 */ - {0x24C4,0x24DE,0x24C4}, {0x24C5,0x24DF,0x24C5}, /* 24C4 */ - {0x24C6,0x24E0,0x24C6}, {0x24C7,0x24E1,0x24C7}, /* 24C6 */ - {0x24C8,0x24E2,0x24C8}, {0x24C9,0x24E3,0x24C9}, /* 24C8 */ - {0x24CA,0x24E4,0x24CA}, {0x24CB,0x24E5,0x24CB}, /* 24CA */ - {0x24CC,0x24E6,0x24CC}, {0x24CD,0x24E7,0x24CD}, /* 24CC */ - {0x24CE,0x24E8,0x24CE}, {0x24CF,0x24E9,0x24CF}, /* 24CE */ - {0x24B6,0x24D0,0x24B6}, {0x24B7,0x24D1,0x24B7}, /* 24D0 */ - {0x24B8,0x24D2,0x24B8}, {0x24B9,0x24D3,0x24B9}, /* 24D2 */ - {0x24BA,0x24D4,0x24BA}, {0x24BB,0x24D5,0x24BB}, /* 24D4 */ - {0x24BC,0x24D6,0x24BC}, {0x24BD,0x24D7,0x24BD}, /* 24D6 */ - {0x24BE,0x24D8,0x24BE}, {0x24BF,0x24D9,0x24BF}, /* 24D8 */ - {0x24C0,0x24DA,0x24C0}, {0x24C1,0x24DB,0x24C1}, /* 24DA */ - {0x24C2,0x24DC,0x24C2}, {0x24C3,0x24DD,0x24C3}, /* 24DC */ - {0x24C4,0x24DE,0x24C4}, {0x24C5,0x24DF,0x24C5}, /* 24DE */ - {0x24C6,0x24E0,0x24C6}, {0x24C7,0x24E1,0x24C7}, /* 24E0 */ - {0x24C8,0x24E2,0x24C8}, {0x24C9,0x24E3,0x24C9}, /* 24E2 */ - {0x24CA,0x24E4,0x24CA}, {0x24CB,0x24E5,0x24CB}, /* 24E4 */ - {0x24CC,0x24E6,0x24CC}, {0x24CD,0x24E7,0x24CD}, /* 24E6 */ - {0x24CE,0x24E8,0x24CE}, {0x24CF,0x24E9,0x24CF}, /* 24E8 */ - {0x24EA,0x24EA,0x24EA}, {0x24EB,0x24EB,0x24EB}, /* 24EA */ - {0x24EC,0x24EC,0x24EC}, {0x24ED,0x24ED,0x24ED}, /* 24EC */ - {0x24EE,0x24EE,0x24EE}, {0x24EF,0x24EF,0x24EF}, /* 24EE */ - {0x24F0,0x24F0,0x24F0}, {0x24F1,0x24F1,0x24F1}, /* 24F0 */ - {0x24F2,0x24F2,0x24F2}, {0x24F3,0x24F3,0x24F3}, /* 24F2 */ - {0x24F4,0x24F4,0x24F4}, {0x24F5,0x24F5,0x24F5}, /* 24F4 */ - {0x24F6,0x24F6,0x24F6}, {0x24F7,0x24F7,0x24F7}, /* 24F6 */ - {0x24F8,0x24F8,0x24F8}, {0x24F9,0x24F9,0x24F9}, /* 24F8 */ - {0x24FA,0x24FA,0x24FA}, {0x24FB,0x24FB,0x24FB}, /* 24FA */ - {0x24FC,0x24FC,0x24FC}, {0x24FD,0x24FD,0x24FD}, /* 24FC */ - {0x24FE,0x24FE,0x24FE}, {0x24FF,0x24FF,0x24FF} /* 24FE */ -}; - -static MY_UNICASE_CHARACTER u520p2C[]={ - {0x2C00,0x2C30,0x2C00}, {0x2C01,0x2C31,0x2C01}, /* 2C00 */ - {0x2C02,0x2C32,0x2C02}, {0x2C03,0x2C33,0x2C03}, /* 2C02 */ - {0x2C04,0x2C34,0x2C04}, {0x2C05,0x2C35,0x2C05}, /* 2C04 */ - {0x2C06,0x2C36,0x2C06}, {0x2C07,0x2C37,0x2C07}, /* 2C06 */ - {0x2C08,0x2C38,0x2C08}, {0x2C09,0x2C39,0x2C09}, /* 2C08 */ - {0x2C0A,0x2C3A,0x2C0A}, {0x2C0B,0x2C3B,0x2C0B}, /* 2C0A */ - {0x2C0C,0x2C3C,0x2C0C}, {0x2C0D,0x2C3D,0x2C0D}, /* 2C0C */ - {0x2C0E,0x2C3E,0x2C0E}, {0x2C0F,0x2C3F,0x2C0F}, /* 2C0E */ - {0x2C10,0x2C40,0x2C10}, {0x2C11,0x2C41,0x2C11}, /* 2C10 */ - {0x2C12,0x2C42,0x2C12}, {0x2C13,0x2C43,0x2C13}, /* 2C12 */ - {0x2C14,0x2C44,0x2C14}, {0x2C15,0x2C45,0x2C15}, /* 2C14 */ - {0x2C16,0x2C46,0x2C16}, {0x2C17,0x2C47,0x2C17}, /* 2C16 */ - {0x2C18,0x2C48,0x2C18}, {0x2C19,0x2C49,0x2C19}, /* 2C18 */ - {0x2C1A,0x2C4A,0x2C1A}, {0x2C1B,0x2C4B,0x2C1B}, /* 2C1A */ - {0x2C1C,0x2C4C,0x2C1C}, {0x2C1D,0x2C4D,0x2C1D}, /* 2C1C */ - {0x2C1E,0x2C4E,0x2C1E}, {0x2C1F,0x2C4F,0x2C1F}, /* 2C1E */ - {0x2C20,0x2C50,0x2C20}, {0x2C21,0x2C51,0x2C21}, /* 2C20 */ - {0x2C22,0x2C52,0x2C22}, {0x2C23,0x2C53,0x2C23}, /* 2C22 */ - {0x2C24,0x2C54,0x2C24}, {0x2C25,0x2C55,0x2C25}, /* 2C24 */ - {0x2C26,0x2C56,0x2C26}, {0x2C27,0x2C57,0x2C27}, /* 2C26 */ - {0x2C28,0x2C58,0x2C28}, {0x2C29,0x2C59,0x2C29}, /* 2C28 */ - {0x2C2A,0x2C5A,0x2C2A}, {0x2C2B,0x2C5B,0x2C2B}, /* 2C2A */ - {0x2C2C,0x2C5C,0x2C2C}, {0x2C2D,0x2C5D,0x2C2D}, /* 2C2C */ - {0x2C2E,0x2C5E,0x2C2E}, {0x2C2F,0x2C2F,0x2C2F}, /* 2C2E */ - {0x2C00,0x2C30,0x2C00}, {0x2C01,0x2C31,0x2C01}, /* 2C30 */ - {0x2C02,0x2C32,0x2C02}, {0x2C03,0x2C33,0x2C03}, /* 2C32 */ - {0x2C04,0x2C34,0x2C04}, {0x2C05,0x2C35,0x2C05}, /* 2C34 */ - {0x2C06,0x2C36,0x2C06}, {0x2C07,0x2C37,0x2C07}, /* 2C36 */ - {0x2C08,0x2C38,0x2C08}, {0x2C09,0x2C39,0x2C09}, /* 2C38 */ - {0x2C0A,0x2C3A,0x2C0A}, {0x2C0B,0x2C3B,0x2C0B}, /* 2C3A */ - {0x2C0C,0x2C3C,0x2C0C}, {0x2C0D,0x2C3D,0x2C0D}, /* 2C3C */ - {0x2C0E,0x2C3E,0x2C0E}, {0x2C0F,0x2C3F,0x2C0F}, /* 2C3E */ - {0x2C10,0x2C40,0x2C10}, {0x2C11,0x2C41,0x2C11}, /* 2C40 */ - {0x2C12,0x2C42,0x2C12}, {0x2C13,0x2C43,0x2C13}, /* 2C42 */ - {0x2C14,0x2C44,0x2C14}, {0x2C15,0x2C45,0x2C15}, /* 2C44 */ - {0x2C16,0x2C46,0x2C16}, {0x2C17,0x2C47,0x2C17}, /* 2C46 */ - {0x2C18,0x2C48,0x2C18}, {0x2C19,0x2C49,0x2C19}, /* 2C48 */ - {0x2C1A,0x2C4A,0x2C1A}, {0x2C1B,0x2C4B,0x2C1B}, /* 2C4A */ - {0x2C1C,0x2C4C,0x2C1C}, {0x2C1D,0x2C4D,0x2C1D}, /* 2C4C */ - {0x2C1E,0x2C4E,0x2C1E}, {0x2C1F,0x2C4F,0x2C1F}, /* 2C4E */ - {0x2C20,0x2C50,0x2C20}, {0x2C21,0x2C51,0x2C21}, /* 2C50 */ - {0x2C22,0x2C52,0x2C22}, {0x2C23,0x2C53,0x2C23}, /* 2C52 */ - {0x2C24,0x2C54,0x2C24}, {0x2C25,0x2C55,0x2C25}, /* 2C54 */ - {0x2C26,0x2C56,0x2C26}, {0x2C27,0x2C57,0x2C27}, /* 2C56 */ - {0x2C28,0x2C58,0x2C28}, {0x2C29,0x2C59,0x2C29}, /* 2C58 */ - {0x2C2A,0x2C5A,0x2C2A}, {0x2C2B,0x2C5B,0x2C2B}, /* 2C5A */ - {0x2C2C,0x2C5C,0x2C2C}, {0x2C2D,0x2C5D,0x2C2D}, /* 2C5C */ - {0x2C2E,0x2C5E,0x2C2E}, {0x2C5F,0x2C5F,0x2C5F}, /* 2C5E */ - {0x2C60,0x2C61,0x2C60}, {0x2C60,0x2C61,0x2C60}, /* 2C60 */ - {0x2C62,0x026B,0x2C62}, {0x2C63,0x1D7D,0x2C63}, /* 2C62 */ - {0x2C64,0x027D,0x2C64}, {0x023A,0x2C65,0x023A}, /* 2C64 */ - {0x023E,0x2C66,0x023E}, {0x2C67,0x2C68,0x2C67}, /* 2C66 */ - {0x2C67,0x2C68,0x2C67}, {0x2C69,0x2C6A,0x2C69}, /* 2C68 */ - {0x2C69,0x2C6A,0x2C69}, {0x2C6B,0x2C6C,0x2C6B}, /* 2C6A */ - {0x2C6B,0x2C6C,0x2C6B}, {0x2C6D,0x0251,0x2C6D}, /* 2C6C */ - {0x2C6E,0x0271,0x2C6E}, {0x2C6F,0x0250,0x2C6F}, /* 2C6E */ - {0x2C70,0x0252,0x2C70}, {0x2C71,0x2C71,0x2C71}, /* 2C70 */ - {0x2C72,0x2C73,0x2C72}, {0x2C72,0x2C73,0x2C72}, /* 2C72 */ - {0x2C74,0x2C74,0x2C74}, {0x2C75,0x2C76,0x2C75}, /* 2C74 */ - {0x2C75,0x2C76,0x2C75}, {0x2C77,0x2C77,0x2C77}, /* 2C76 */ - {0x2C78,0x2C78,0x2C78}, {0x2C79,0x2C79,0x2C79}, /* 2C78 */ - {0x2C7A,0x2C7A,0x2C7A}, {0x2C7B,0x2C7B,0x2C7B}, /* 2C7A */ - {0x2C7C,0x2C7C,0x2C7C}, {0x2C7D,0x2C7D,0x2C7D}, /* 2C7C */ - {0x2C7E,0x023F,0x2C7E}, {0x2C7F,0x0240,0x2C7F}, /* 2C7E */ - {0x2C80,0x2C81,0x2C80}, {0x2C80,0x2C81,0x2C80}, /* 2C80 */ - {0x2C82,0x2C83,0x2C82}, {0x2C82,0x2C83,0x2C82}, /* 2C82 */ - {0x2C84,0x2C85,0x2C84}, {0x2C84,0x2C85,0x2C84}, /* 2C84 */ - {0x2C86,0x2C87,0x2C86}, {0x2C86,0x2C87,0x2C86}, /* 2C86 */ - {0x2C88,0x2C89,0x2C88}, {0x2C88,0x2C89,0x2C88}, /* 2C88 */ - {0x2C8A,0x2C8B,0x2C8A}, {0x2C8A,0x2C8B,0x2C8A}, /* 2C8A */ - {0x2C8C,0x2C8D,0x2C8C}, {0x2C8C,0x2C8D,0x2C8C}, /* 2C8C */ - {0x2C8E,0x2C8F,0x2C8E}, {0x2C8E,0x2C8F,0x2C8E}, /* 2C8E */ - {0x2C90,0x2C91,0x2C90}, {0x2C90,0x2C91,0x2C90}, /* 2C90 */ - {0x2C92,0x2C93,0x2C92}, {0x2C92,0x2C93,0x2C92}, /* 2C92 */ - {0x2C94,0x2C95,0x2C94}, {0x2C94,0x2C95,0x2C94}, /* 2C94 */ - {0x2C96,0x2C97,0x2C96}, {0x2C96,0x2C97,0x2C96}, /* 2C96 */ - {0x2C98,0x2C99,0x2C98}, {0x2C98,0x2C99,0x2C98}, /* 2C98 */ - {0x2C9A,0x2C9B,0x2C9A}, {0x2C9A,0x2C9B,0x2C9A}, /* 2C9A */ - {0x2C9C,0x2C9D,0x2C9C}, {0x2C9C,0x2C9D,0x2C9C}, /* 2C9C */ - {0x2C9E,0x2C9F,0x2C9E}, {0x2C9E,0x2C9F,0x2C9E}, /* 2C9E */ - {0x2CA0,0x2CA1,0x2CA0}, {0x2CA0,0x2CA1,0x2CA0}, /* 2CA0 */ - {0x2CA2,0x2CA3,0x2CA2}, {0x2CA2,0x2CA3,0x2CA2}, /* 2CA2 */ - {0x2CA4,0x2CA5,0x2CA4}, {0x2CA4,0x2CA5,0x2CA4}, /* 2CA4 */ - {0x2CA6,0x2CA7,0x2CA6}, {0x2CA6,0x2CA7,0x2CA6}, /* 2CA6 */ - {0x2CA8,0x2CA9,0x2CA8}, {0x2CA8,0x2CA9,0x2CA8}, /* 2CA8 */ - {0x2CAA,0x2CAB,0x2CAA}, {0x2CAA,0x2CAB,0x2CAA}, /* 2CAA */ - {0x2CAC,0x2CAD,0x2CAC}, {0x2CAC,0x2CAD,0x2CAC}, /* 2CAC */ - {0x2CAE,0x2CAF,0x2CAE}, {0x2CAE,0x2CAF,0x2CAE}, /* 2CAE */ - {0x2CB0,0x2CB1,0x2CB0}, {0x2CB0,0x2CB1,0x2CB0}, /* 2CB0 */ - {0x2CB2,0x2CB3,0x2CB2}, {0x2CB2,0x2CB3,0x2CB2}, /* 2CB2 */ - {0x2CB4,0x2CB5,0x2CB4}, {0x2CB4,0x2CB5,0x2CB4}, /* 2CB4 */ - {0x2CB6,0x2CB7,0x2CB6}, {0x2CB6,0x2CB7,0x2CB6}, /* 2CB6 */ - {0x2CB8,0x2CB9,0x2CB8}, {0x2CB8,0x2CB9,0x2CB8}, /* 2CB8 */ - {0x2CBA,0x2CBB,0x2CBA}, {0x2CBA,0x2CBB,0x2CBA}, /* 2CBA */ - {0x2CBC,0x2CBD,0x2CBC}, {0x2CBC,0x2CBD,0x2CBC}, /* 2CBC */ - {0x2CBE,0x2CBF,0x2CBE}, {0x2CBE,0x2CBF,0x2CBE}, /* 2CBE */ - {0x2CC0,0x2CC1,0x2CC0}, {0x2CC0,0x2CC1,0x2CC0}, /* 2CC0 */ - {0x2CC2,0x2CC3,0x2CC2}, {0x2CC2,0x2CC3,0x2CC2}, /* 2CC2 */ - {0x2CC4,0x2CC5,0x2CC4}, {0x2CC4,0x2CC5,0x2CC4}, /* 2CC4 */ - {0x2CC6,0x2CC7,0x2CC6}, {0x2CC6,0x2CC7,0x2CC6}, /* 2CC6 */ - {0x2CC8,0x2CC9,0x2CC8}, {0x2CC8,0x2CC9,0x2CC8}, /* 2CC8 */ - {0x2CCA,0x2CCB,0x2CCA}, {0x2CCA,0x2CCB,0x2CCA}, /* 2CCA */ - {0x2CCC,0x2CCD,0x2CCC}, {0x2CCC,0x2CCD,0x2CCC}, /* 2CCC */ - {0x2CCE,0x2CCF,0x2CCE}, {0x2CCE,0x2CCF,0x2CCE}, /* 2CCE */ - {0x2CD0,0x2CD1,0x2CD0}, {0x2CD0,0x2CD1,0x2CD0}, /* 2CD0 */ - {0x2CD2,0x2CD3,0x2CD2}, {0x2CD2,0x2CD3,0x2CD2}, /* 2CD2 */ - {0x2CD4,0x2CD5,0x2CD4}, {0x2CD4,0x2CD5,0x2CD4}, /* 2CD4 */ - {0x2CD6,0x2CD7,0x2CD6}, {0x2CD6,0x2CD7,0x2CD6}, /* 2CD6 */ - {0x2CD8,0x2CD9,0x2CD8}, {0x2CD8,0x2CD9,0x2CD8}, /* 2CD8 */ - {0x2CDA,0x2CDB,0x2CDA}, {0x2CDA,0x2CDB,0x2CDA}, /* 2CDA */ - {0x2CDC,0x2CDD,0x2CDC}, {0x2CDC,0x2CDD,0x2CDC}, /* 2CDC */ - {0x2CDE,0x2CDF,0x2CDE}, {0x2CDE,0x2CDF,0x2CDE}, /* 2CDE */ - {0x2CE0,0x2CE1,0x2CE0}, {0x2CE0,0x2CE1,0x2CE0}, /* 2CE0 */ - {0x2CE2,0x2CE3,0x2CE2}, {0x2CE2,0x2CE3,0x2CE2}, /* 2CE2 */ - {0x2CE4,0x2CE4,0x2CE4}, {0x2CE5,0x2CE5,0x2CE5}, /* 2CE4 */ - {0x2CE6,0x2CE6,0x2CE6}, {0x2CE7,0x2CE7,0x2CE7}, /* 2CE6 */ - {0x2CE8,0x2CE8,0x2CE8}, {0x2CE9,0x2CE9,0x2CE9}, /* 2CE8 */ - {0x2CEA,0x2CEA,0x2CEA}, {0x2CEB,0x2CEC,0x2CEB}, /* 2CEA */ - {0x2CEB,0x2CEC,0x2CEB}, {0x2CED,0x2CEE,0x2CED}, /* 2CEC */ - {0x2CED,0x2CEE,0x2CED}, {0x2CEF,0x2CEF,0x2CEF}, /* 2CEE */ - {0x2CF0,0x2CF0,0x2CF0}, {0x2CF1,0x2CF1,0x2CF1}, /* 2CF0 */ - {0x2CF2,0x2CF2,0x2CF2}, {0x2CF3,0x2CF3,0x2CF3}, /* 2CF2 */ - {0x2CF4,0x2CF4,0x2CF4}, {0x2CF5,0x2CF5,0x2CF5}, /* 2CF4 */ - {0x2CF6,0x2CF6,0x2CF6}, {0x2CF7,0x2CF7,0x2CF7}, /* 2CF6 */ - {0x2CF8,0x2CF8,0x2CF8}, {0x2CF9,0x2CF9,0x2CF9}, /* 2CF8 */ - {0x2CFA,0x2CFA,0x2CFA}, {0x2CFB,0x2CFB,0x2CFB}, /* 2CFA */ - {0x2CFC,0x2CFC,0x2CFC}, {0x2CFD,0x2CFD,0x2CFD}, /* 2CFC */ - {0x2CFE,0x2CFE,0x2CFE}, {0x2CFF,0x2CFF,0x2CFF} /* 2CFE */ -}; - -static MY_UNICASE_CHARACTER u520p2D[]={ - {0x10A0,0x2D00,0x10A0}, {0x10A1,0x2D01,0x10A1}, /* 2D00 */ - {0x10A2,0x2D02,0x10A2}, {0x10A3,0x2D03,0x10A3}, /* 2D02 */ - {0x10A4,0x2D04,0x10A4}, {0x10A5,0x2D05,0x10A5}, /* 2D04 */ - {0x10A6,0x2D06,0x10A6}, {0x10A7,0x2D07,0x10A7}, /* 2D06 */ - {0x10A8,0x2D08,0x10A8}, {0x10A9,0x2D09,0x10A9}, /* 2D08 */ - {0x10AA,0x2D0A,0x10AA}, {0x10AB,0x2D0B,0x10AB}, /* 2D0A */ - {0x10AC,0x2D0C,0x10AC}, {0x10AD,0x2D0D,0x10AD}, /* 2D0C */ - {0x10AE,0x2D0E,0x10AE}, {0x10AF,0x2D0F,0x10AF}, /* 2D0E */ - {0x10B0,0x2D10,0x10B0}, {0x10B1,0x2D11,0x10B1}, /* 2D10 */ - {0x10B2,0x2D12,0x10B2}, {0x10B3,0x2D13,0x10B3}, /* 2D12 */ - {0x10B4,0x2D14,0x10B4}, {0x10B5,0x2D15,0x10B5}, /* 2D14 */ - {0x10B6,0x2D16,0x10B6}, {0x10B7,0x2D17,0x10B7}, /* 2D16 */ - {0x10B8,0x2D18,0x10B8}, {0x10B9,0x2D19,0x10B9}, /* 2D18 */ - {0x10BA,0x2D1A,0x10BA}, {0x10BB,0x2D1B,0x10BB}, /* 2D1A */ - {0x10BC,0x2D1C,0x10BC}, {0x10BD,0x2D1D,0x10BD}, /* 2D1C */ - {0x10BE,0x2D1E,0x10BE}, {0x10BF,0x2D1F,0x10BF}, /* 2D1E */ - {0x10C0,0x2D20,0x10C0}, {0x10C1,0x2D21,0x10C1}, /* 2D20 */ - {0x10C2,0x2D22,0x10C2}, {0x10C3,0x2D23,0x10C3}, /* 2D22 */ - {0x10C4,0x2D24,0x10C4}, {0x10C5,0x2D25,0x10C5}, /* 2D24 */ - {0x2D26,0x2D26,0x2D26}, {0x2D27,0x2D27,0x2D27}, /* 2D26 */ - {0x2D28,0x2D28,0x2D28}, {0x2D29,0x2D29,0x2D29}, /* 2D28 */ - {0x2D2A,0x2D2A,0x2D2A}, {0x2D2B,0x2D2B,0x2D2B}, /* 2D2A */ - {0x2D2C,0x2D2C,0x2D2C}, {0x2D2D,0x2D2D,0x2D2D}, /* 2D2C */ - {0x2D2E,0x2D2E,0x2D2E}, {0x2D2F,0x2D2F,0x2D2F}, /* 2D2E */ - {0x2D30,0x2D30,0x2D30}, {0x2D31,0x2D31,0x2D31}, /* 2D30 */ - {0x2D32,0x2D32,0x2D32}, {0x2D33,0x2D33,0x2D33}, /* 2D32 */ - {0x2D34,0x2D34,0x2D34}, {0x2D35,0x2D35,0x2D35}, /* 2D34 */ - {0x2D36,0x2D36,0x2D36}, {0x2D37,0x2D37,0x2D37}, /* 2D36 */ - {0x2D38,0x2D38,0x2D38}, {0x2D39,0x2D39,0x2D39}, /* 2D38 */ - {0x2D3A,0x2D3A,0x2D3A}, {0x2D3B,0x2D3B,0x2D3B}, /* 2D3A */ - {0x2D3C,0x2D3C,0x2D3C}, {0x2D3D,0x2D3D,0x2D3D}, /* 2D3C */ - {0x2D3E,0x2D3E,0x2D3E}, {0x2D3F,0x2D3F,0x2D3F}, /* 2D3E */ - {0x2D40,0x2D40,0x2D40}, {0x2D41,0x2D41,0x2D41}, /* 2D40 */ - {0x2D42,0x2D42,0x2D42}, {0x2D43,0x2D43,0x2D43}, /* 2D42 */ - {0x2D44,0x2D44,0x2D44}, {0x2D45,0x2D45,0x2D45}, /* 2D44 */ - {0x2D46,0x2D46,0x2D46}, {0x2D47,0x2D47,0x2D47}, /* 2D46 */ - {0x2D48,0x2D48,0x2D48}, {0x2D49,0x2D49,0x2D49}, /* 2D48 */ - {0x2D4A,0x2D4A,0x2D4A}, {0x2D4B,0x2D4B,0x2D4B}, /* 2D4A */ - {0x2D4C,0x2D4C,0x2D4C}, {0x2D4D,0x2D4D,0x2D4D}, /* 2D4C */ - {0x2D4E,0x2D4E,0x2D4E}, {0x2D4F,0x2D4F,0x2D4F}, /* 2D4E */ - {0x2D50,0x2D50,0x2D50}, {0x2D51,0x2D51,0x2D51}, /* 2D50 */ - {0x2D52,0x2D52,0x2D52}, {0x2D53,0x2D53,0x2D53}, /* 2D52 */ - {0x2D54,0x2D54,0x2D54}, {0x2D55,0x2D55,0x2D55}, /* 2D54 */ - {0x2D56,0x2D56,0x2D56}, {0x2D57,0x2D57,0x2D57}, /* 2D56 */ - {0x2D58,0x2D58,0x2D58}, {0x2D59,0x2D59,0x2D59}, /* 2D58 */ - {0x2D5A,0x2D5A,0x2D5A}, {0x2D5B,0x2D5B,0x2D5B}, /* 2D5A */ - {0x2D5C,0x2D5C,0x2D5C}, {0x2D5D,0x2D5D,0x2D5D}, /* 2D5C */ - {0x2D5E,0x2D5E,0x2D5E}, {0x2D5F,0x2D5F,0x2D5F}, /* 2D5E */ - {0x2D60,0x2D60,0x2D60}, {0x2D61,0x2D61,0x2D61}, /* 2D60 */ - {0x2D62,0x2D62,0x2D62}, {0x2D63,0x2D63,0x2D63}, /* 2D62 */ - {0x2D64,0x2D64,0x2D64}, {0x2D65,0x2D65,0x2D65}, /* 2D64 */ - {0x2D66,0x2D66,0x2D66}, {0x2D67,0x2D67,0x2D67}, /* 2D66 */ - {0x2D68,0x2D68,0x2D68}, {0x2D69,0x2D69,0x2D69}, /* 2D68 */ - {0x2D6A,0x2D6A,0x2D6A}, {0x2D6B,0x2D6B,0x2D6B}, /* 2D6A */ - {0x2D6C,0x2D6C,0x2D6C}, {0x2D6D,0x2D6D,0x2D6D}, /* 2D6C */ - {0x2D6E,0x2D6E,0x2D6E}, {0x2D6F,0x2D6F,0x2D6F}, /* 2D6E */ - {0x2D70,0x2D70,0x2D70}, {0x2D71,0x2D71,0x2D71}, /* 2D70 */ - {0x2D72,0x2D72,0x2D72}, {0x2D73,0x2D73,0x2D73}, /* 2D72 */ - {0x2D74,0x2D74,0x2D74}, {0x2D75,0x2D75,0x2D75}, /* 2D74 */ - {0x2D76,0x2D76,0x2D76}, {0x2D77,0x2D77,0x2D77}, /* 2D76 */ - {0x2D78,0x2D78,0x2D78}, {0x2D79,0x2D79,0x2D79}, /* 2D78 */ - {0x2D7A,0x2D7A,0x2D7A}, {0x2D7B,0x2D7B,0x2D7B}, /* 2D7A */ - {0x2D7C,0x2D7C,0x2D7C}, {0x2D7D,0x2D7D,0x2D7D}, /* 2D7C */ - {0x2D7E,0x2D7E,0x2D7E}, {0x2D7F,0x2D7F,0x2D7F}, /* 2D7E */ - {0x2D80,0x2D80,0x2D80}, {0x2D81,0x2D81,0x2D81}, /* 2D80 */ - {0x2D82,0x2D82,0x2D82}, {0x2D83,0x2D83,0x2D83}, /* 2D82 */ - {0x2D84,0x2D84,0x2D84}, {0x2D85,0x2D85,0x2D85}, /* 2D84 */ - {0x2D86,0x2D86,0x2D86}, {0x2D87,0x2D87,0x2D87}, /* 2D86 */ - {0x2D88,0x2D88,0x2D88}, {0x2D89,0x2D89,0x2D89}, /* 2D88 */ - {0x2D8A,0x2D8A,0x2D8A}, {0x2D8B,0x2D8B,0x2D8B}, /* 2D8A */ - {0x2D8C,0x2D8C,0x2D8C}, {0x2D8D,0x2D8D,0x2D8D}, /* 2D8C */ - {0x2D8E,0x2D8E,0x2D8E}, {0x2D8F,0x2D8F,0x2D8F}, /* 2D8E */ - {0x2D90,0x2D90,0x2D90}, {0x2D91,0x2D91,0x2D91}, /* 2D90 */ - {0x2D92,0x2D92,0x2D92}, {0x2D93,0x2D93,0x2D93}, /* 2D92 */ - {0x2D94,0x2D94,0x2D94}, {0x2D95,0x2D95,0x2D95}, /* 2D94 */ - {0x2D96,0x2D96,0x2D96}, {0x2D97,0x2D97,0x2D97}, /* 2D96 */ - {0x2D98,0x2D98,0x2D98}, {0x2D99,0x2D99,0x2D99}, /* 2D98 */ - {0x2D9A,0x2D9A,0x2D9A}, {0x2D9B,0x2D9B,0x2D9B}, /* 2D9A */ - {0x2D9C,0x2D9C,0x2D9C}, {0x2D9D,0x2D9D,0x2D9D}, /* 2D9C */ - {0x2D9E,0x2D9E,0x2D9E}, {0x2D9F,0x2D9F,0x2D9F}, /* 2D9E */ - {0x2DA0,0x2DA0,0x2DA0}, {0x2DA1,0x2DA1,0x2DA1}, /* 2DA0 */ - {0x2DA2,0x2DA2,0x2DA2}, {0x2DA3,0x2DA3,0x2DA3}, /* 2DA2 */ - {0x2DA4,0x2DA4,0x2DA4}, {0x2DA5,0x2DA5,0x2DA5}, /* 2DA4 */ - {0x2DA6,0x2DA6,0x2DA6}, {0x2DA7,0x2DA7,0x2DA7}, /* 2DA6 */ - {0x2DA8,0x2DA8,0x2DA8}, {0x2DA9,0x2DA9,0x2DA9}, /* 2DA8 */ - {0x2DAA,0x2DAA,0x2DAA}, {0x2DAB,0x2DAB,0x2DAB}, /* 2DAA */ - {0x2DAC,0x2DAC,0x2DAC}, {0x2DAD,0x2DAD,0x2DAD}, /* 2DAC */ - {0x2DAE,0x2DAE,0x2DAE}, {0x2DAF,0x2DAF,0x2DAF}, /* 2DAE */ - {0x2DB0,0x2DB0,0x2DB0}, {0x2DB1,0x2DB1,0x2DB1}, /* 2DB0 */ - {0x2DB2,0x2DB2,0x2DB2}, {0x2DB3,0x2DB3,0x2DB3}, /* 2DB2 */ - {0x2DB4,0x2DB4,0x2DB4}, {0x2DB5,0x2DB5,0x2DB5}, /* 2DB4 */ - {0x2DB6,0x2DB6,0x2DB6}, {0x2DB7,0x2DB7,0x2DB7}, /* 2DB6 */ - {0x2DB8,0x2DB8,0x2DB8}, {0x2DB9,0x2DB9,0x2DB9}, /* 2DB8 */ - {0x2DBA,0x2DBA,0x2DBA}, {0x2DBB,0x2DBB,0x2DBB}, /* 2DBA */ - {0x2DBC,0x2DBC,0x2DBC}, {0x2DBD,0x2DBD,0x2DBD}, /* 2DBC */ - {0x2DBE,0x2DBE,0x2DBE}, {0x2DBF,0x2DBF,0x2DBF}, /* 2DBE */ - {0x2DC0,0x2DC0,0x2DC0}, {0x2DC1,0x2DC1,0x2DC1}, /* 2DC0 */ - {0x2DC2,0x2DC2,0x2DC2}, {0x2DC3,0x2DC3,0x2DC3}, /* 2DC2 */ - {0x2DC4,0x2DC4,0x2DC4}, {0x2DC5,0x2DC5,0x2DC5}, /* 2DC4 */ - {0x2DC6,0x2DC6,0x2DC6}, {0x2DC7,0x2DC7,0x2DC7}, /* 2DC6 */ - {0x2DC8,0x2DC8,0x2DC8}, {0x2DC9,0x2DC9,0x2DC9}, /* 2DC8 */ - {0x2DCA,0x2DCA,0x2DCA}, {0x2DCB,0x2DCB,0x2DCB}, /* 2DCA */ - {0x2DCC,0x2DCC,0x2DCC}, {0x2DCD,0x2DCD,0x2DCD}, /* 2DCC */ - {0x2DCE,0x2DCE,0x2DCE}, {0x2DCF,0x2DCF,0x2DCF}, /* 2DCE */ - {0x2DD0,0x2DD0,0x2DD0}, {0x2DD1,0x2DD1,0x2DD1}, /* 2DD0 */ - {0x2DD2,0x2DD2,0x2DD2}, {0x2DD3,0x2DD3,0x2DD3}, /* 2DD2 */ - {0x2DD4,0x2DD4,0x2DD4}, {0x2DD5,0x2DD5,0x2DD5}, /* 2DD4 */ - {0x2DD6,0x2DD6,0x2DD6}, {0x2DD7,0x2DD7,0x2DD7}, /* 2DD6 */ - {0x2DD8,0x2DD8,0x2DD8}, {0x2DD9,0x2DD9,0x2DD9}, /* 2DD8 */ - {0x2DDA,0x2DDA,0x2DDA}, {0x2DDB,0x2DDB,0x2DDB}, /* 2DDA */ - {0x2DDC,0x2DDC,0x2DDC}, {0x2DDD,0x2DDD,0x2DDD}, /* 2DDC */ - {0x2DDE,0x2DDE,0x2DDE}, {0x2DDF,0x2DDF,0x2DDF}, /* 2DDE */ - {0x2DE0,0x2DE0,0x2DE0}, {0x2DE1,0x2DE1,0x2DE1}, /* 2DE0 */ - {0x2DE2,0x2DE2,0x2DE2}, {0x2DE3,0x2DE3,0x2DE3}, /* 2DE2 */ - {0x2DE4,0x2DE4,0x2DE4}, {0x2DE5,0x2DE5,0x2DE5}, /* 2DE4 */ - {0x2DE6,0x2DE6,0x2DE6}, {0x2DE7,0x2DE7,0x2DE7}, /* 2DE6 */ - {0x2DE8,0x2DE8,0x2DE8}, {0x2DE9,0x2DE9,0x2DE9}, /* 2DE8 */ - {0x2DEA,0x2DEA,0x2DEA}, {0x2DEB,0x2DEB,0x2DEB}, /* 2DEA */ - {0x2DEC,0x2DEC,0x2DEC}, {0x2DED,0x2DED,0x2DED}, /* 2DEC */ - {0x2DEE,0x2DEE,0x2DEE}, {0x2DEF,0x2DEF,0x2DEF}, /* 2DEE */ - {0x2DF0,0x2DF0,0x2DF0}, {0x2DF1,0x2DF1,0x2DF1}, /* 2DF0 */ - {0x2DF2,0x2DF2,0x2DF2}, {0x2DF3,0x2DF3,0x2DF3}, /* 2DF2 */ - {0x2DF4,0x2DF4,0x2DF4}, {0x2DF5,0x2DF5,0x2DF5}, /* 2DF4 */ - {0x2DF6,0x2DF6,0x2DF6}, {0x2DF7,0x2DF7,0x2DF7}, /* 2DF6 */ - {0x2DF8,0x2DF8,0x2DF8}, {0x2DF9,0x2DF9,0x2DF9}, /* 2DF8 */ - {0x2DFA,0x2DFA,0x2DFA}, {0x2DFB,0x2DFB,0x2DFB}, /* 2DFA */ - {0x2DFC,0x2DFC,0x2DFC}, {0x2DFD,0x2DFD,0x2DFD}, /* 2DFC */ - {0x2DFE,0x2DFE,0x2DFE}, {0x2DFF,0x2DFF,0x2DFF} /* 2DFE */ -}; - -static MY_UNICASE_CHARACTER u520pA6[]={ - {0xA600,0xA600,0xA600}, {0xA601,0xA601,0xA601}, /* A600 */ - {0xA602,0xA602,0xA602}, {0xA603,0xA603,0xA603}, /* A602 */ - {0xA604,0xA604,0xA604}, {0xA605,0xA605,0xA605}, /* A604 */ - {0xA606,0xA606,0xA606}, {0xA607,0xA607,0xA607}, /* A606 */ - {0xA608,0xA608,0xA608}, {0xA609,0xA609,0xA609}, /* A608 */ - {0xA60A,0xA60A,0xA60A}, {0xA60B,0xA60B,0xA60B}, /* A60A */ - {0xA60C,0xA60C,0xA60C}, {0xA60D,0xA60D,0xA60D}, /* A60C */ - {0xA60E,0xA60E,0xA60E}, {0xA60F,0xA60F,0xA60F}, /* A60E */ - {0xA610,0xA610,0xA610}, {0xA611,0xA611,0xA611}, /* A610 */ - {0xA612,0xA612,0xA612}, {0xA613,0xA613,0xA613}, /* A612 */ - {0xA614,0xA614,0xA614}, {0xA615,0xA615,0xA615}, /* A614 */ - {0xA616,0xA616,0xA616}, {0xA617,0xA617,0xA617}, /* A616 */ - {0xA618,0xA618,0xA618}, {0xA619,0xA619,0xA619}, /* A618 */ - {0xA61A,0xA61A,0xA61A}, {0xA61B,0xA61B,0xA61B}, /* A61A */ - {0xA61C,0xA61C,0xA61C}, {0xA61D,0xA61D,0xA61D}, /* A61C */ - {0xA61E,0xA61E,0xA61E}, {0xA61F,0xA61F,0xA61F}, /* A61E */ - {0xA620,0xA620,0xA620}, {0xA621,0xA621,0xA621}, /* A620 */ - {0xA622,0xA622,0xA622}, {0xA623,0xA623,0xA623}, /* A622 */ - {0xA624,0xA624,0xA624}, {0xA625,0xA625,0xA625}, /* A624 */ - {0xA626,0xA626,0xA626}, {0xA627,0xA627,0xA627}, /* A626 */ - {0xA628,0xA628,0xA628}, {0xA629,0xA629,0xA629}, /* A628 */ - {0xA62A,0xA62A,0xA62A}, {0xA62B,0xA62B,0xA62B}, /* A62A */ - {0xA62C,0xA62C,0xA62C}, {0xA62D,0xA62D,0xA62D}, /* A62C */ - {0xA62E,0xA62E,0xA62E}, {0xA62F,0xA62F,0xA62F}, /* A62E */ - {0xA630,0xA630,0xA630}, {0xA631,0xA631,0xA631}, /* A630 */ - {0xA632,0xA632,0xA632}, {0xA633,0xA633,0xA633}, /* A632 */ - {0xA634,0xA634,0xA634}, {0xA635,0xA635,0xA635}, /* A634 */ - {0xA636,0xA636,0xA636}, {0xA637,0xA637,0xA637}, /* A636 */ - {0xA638,0xA638,0xA638}, {0xA639,0xA639,0xA639}, /* A638 */ - {0xA63A,0xA63A,0xA63A}, {0xA63B,0xA63B,0xA63B}, /* A63A */ - {0xA63C,0xA63C,0xA63C}, {0xA63D,0xA63D,0xA63D}, /* A63C */ - {0xA63E,0xA63E,0xA63E}, {0xA63F,0xA63F,0xA63F}, /* A63E */ - {0xA640,0xA641,0xA640}, {0xA640,0xA641,0xA640}, /* A640 */ - {0xA642,0xA643,0xA642}, {0xA642,0xA643,0xA642}, /* A642 */ - {0xA644,0xA645,0xA644}, {0xA644,0xA645,0xA644}, /* A644 */ - {0xA646,0xA647,0xA646}, {0xA646,0xA647,0xA646}, /* A646 */ - {0xA648,0xA649,0xA648}, {0xA648,0xA649,0xA648}, /* A648 */ - {0xA64A,0xA64B,0xA64A}, {0xA64A,0xA64B,0xA64A}, /* A64A */ - {0xA64C,0xA64D,0xA64C}, {0xA64C,0xA64D,0xA64C}, /* A64C */ - {0xA64E,0xA64F,0xA64E}, {0xA64E,0xA64F,0xA64E}, /* A64E */ - {0xA650,0xA651,0xA650}, {0xA650,0xA651,0xA650}, /* A650 */ - {0xA652,0xA653,0xA652}, {0xA652,0xA653,0xA652}, /* A652 */ - {0xA654,0xA655,0xA654}, {0xA654,0xA655,0xA654}, /* A654 */ - {0xA656,0xA657,0xA656}, {0xA656,0xA657,0xA656}, /* A656 */ - {0xA658,0xA659,0xA658}, {0xA658,0xA659,0xA658}, /* A658 */ - {0xA65A,0xA65B,0xA65A}, {0xA65A,0xA65B,0xA65A}, /* A65A */ - {0xA65C,0xA65D,0xA65C}, {0xA65C,0xA65D,0xA65C}, /* A65C */ - {0xA65E,0xA65F,0xA65E}, {0xA65E,0xA65F,0xA65E}, /* A65E */ - {0xA660,0xA660,0xA660}, {0xA661,0xA661,0xA661}, /* A660 */ - {0xA662,0xA663,0xA662}, {0xA662,0xA663,0xA662}, /* A662 */ - {0xA664,0xA665,0xA664}, {0xA664,0xA665,0xA664}, /* A664 */ - {0xA666,0xA667,0xA666}, {0xA666,0xA667,0xA666}, /* A666 */ - {0xA668,0xA669,0xA668}, {0xA668,0xA669,0xA668}, /* A668 */ - {0xA66A,0xA66B,0xA66A}, {0xA66A,0xA66B,0xA66A}, /* A66A */ - {0xA66C,0xA66D,0xA66C}, {0xA66C,0xA66D,0xA66C}, /* A66C */ - {0xA66E,0xA66E,0xA66E}, {0xA66F,0xA66F,0xA66F}, /* A66E */ - {0xA670,0xA670,0xA670}, {0xA671,0xA671,0xA671}, /* A670 */ - {0xA672,0xA672,0xA672}, {0xA673,0xA673,0xA673}, /* A672 */ - {0xA674,0xA674,0xA674}, {0xA675,0xA675,0xA675}, /* A674 */ - {0xA676,0xA676,0xA676}, {0xA677,0xA677,0xA677}, /* A676 */ - {0xA678,0xA678,0xA678}, {0xA679,0xA679,0xA679}, /* A678 */ - {0xA67A,0xA67A,0xA67A}, {0xA67B,0xA67B,0xA67B}, /* A67A */ - {0xA67C,0xA67C,0xA67C}, {0xA67D,0xA67D,0xA67D}, /* A67C */ - {0xA67E,0xA67E,0xA67E}, {0xA67F,0xA67F,0xA67F}, /* A67E */ - {0xA680,0xA681,0xA680}, {0xA680,0xA681,0xA680}, /* A680 */ - {0xA682,0xA683,0xA682}, {0xA682,0xA683,0xA682}, /* A682 */ - {0xA684,0xA685,0xA684}, {0xA684,0xA685,0xA684}, /* A684 */ - {0xA686,0xA687,0xA686}, {0xA686,0xA687,0xA686}, /* A686 */ - {0xA688,0xA689,0xA688}, {0xA688,0xA689,0xA688}, /* A688 */ - {0xA68A,0xA68B,0xA68A}, {0xA68A,0xA68B,0xA68A}, /* A68A */ - {0xA68C,0xA68D,0xA68C}, {0xA68C,0xA68D,0xA68C}, /* A68C */ - {0xA68E,0xA68F,0xA68E}, {0xA68E,0xA68F,0xA68E}, /* A68E */ - {0xA690,0xA691,0xA690}, {0xA690,0xA691,0xA690}, /* A690 */ - {0xA692,0xA693,0xA692}, {0xA692,0xA693,0xA692}, /* A692 */ - {0xA694,0xA695,0xA694}, {0xA694,0xA695,0xA694}, /* A694 */ - {0xA696,0xA697,0xA696}, {0xA696,0xA697,0xA696}, /* A696 */ - {0xA698,0xA698,0xA698}, {0xA699,0xA699,0xA699}, /* A698 */ - {0xA69A,0xA69A,0xA69A}, {0xA69B,0xA69B,0xA69B}, /* A69A */ - {0xA69C,0xA69C,0xA69C}, {0xA69D,0xA69D,0xA69D}, /* A69C */ - {0xA69E,0xA69E,0xA69E}, {0xA69F,0xA69F,0xA69F}, /* A69E */ - {0xA6A0,0xA6A0,0xA6A0}, {0xA6A1,0xA6A1,0xA6A1}, /* A6A0 */ - {0xA6A2,0xA6A2,0xA6A2}, {0xA6A3,0xA6A3,0xA6A3}, /* A6A2 */ - {0xA6A4,0xA6A4,0xA6A4}, {0xA6A5,0xA6A5,0xA6A5}, /* A6A4 */ - {0xA6A6,0xA6A6,0xA6A6}, {0xA6A7,0xA6A7,0xA6A7}, /* A6A6 */ - {0xA6A8,0xA6A8,0xA6A8}, {0xA6A9,0xA6A9,0xA6A9}, /* A6A8 */ - {0xA6AA,0xA6AA,0xA6AA}, {0xA6AB,0xA6AB,0xA6AB}, /* A6AA */ - {0xA6AC,0xA6AC,0xA6AC}, {0xA6AD,0xA6AD,0xA6AD}, /* A6AC */ - {0xA6AE,0xA6AE,0xA6AE}, {0xA6AF,0xA6AF,0xA6AF}, /* A6AE */ - {0xA6B0,0xA6B0,0xA6B0}, {0xA6B1,0xA6B1,0xA6B1}, /* A6B0 */ - {0xA6B2,0xA6B2,0xA6B2}, {0xA6B3,0xA6B3,0xA6B3}, /* A6B2 */ - {0xA6B4,0xA6B4,0xA6B4}, {0xA6B5,0xA6B5,0xA6B5}, /* A6B4 */ - {0xA6B6,0xA6B6,0xA6B6}, {0xA6B7,0xA6B7,0xA6B7}, /* A6B6 */ - {0xA6B8,0xA6B8,0xA6B8}, {0xA6B9,0xA6B9,0xA6B9}, /* A6B8 */ - {0xA6BA,0xA6BA,0xA6BA}, {0xA6BB,0xA6BB,0xA6BB}, /* A6BA */ - {0xA6BC,0xA6BC,0xA6BC}, {0xA6BD,0xA6BD,0xA6BD}, /* A6BC */ - {0xA6BE,0xA6BE,0xA6BE}, {0xA6BF,0xA6BF,0xA6BF}, /* A6BE */ - {0xA6C0,0xA6C0,0xA6C0}, {0xA6C1,0xA6C1,0xA6C1}, /* A6C0 */ - {0xA6C2,0xA6C2,0xA6C2}, {0xA6C3,0xA6C3,0xA6C3}, /* A6C2 */ - {0xA6C4,0xA6C4,0xA6C4}, {0xA6C5,0xA6C5,0xA6C5}, /* A6C4 */ - {0xA6C6,0xA6C6,0xA6C6}, {0xA6C7,0xA6C7,0xA6C7}, /* A6C6 */ - {0xA6C8,0xA6C8,0xA6C8}, {0xA6C9,0xA6C9,0xA6C9}, /* A6C8 */ - {0xA6CA,0xA6CA,0xA6CA}, {0xA6CB,0xA6CB,0xA6CB}, /* A6CA */ - {0xA6CC,0xA6CC,0xA6CC}, {0xA6CD,0xA6CD,0xA6CD}, /* A6CC */ - {0xA6CE,0xA6CE,0xA6CE}, {0xA6CF,0xA6CF,0xA6CF}, /* A6CE */ - {0xA6D0,0xA6D0,0xA6D0}, {0xA6D1,0xA6D1,0xA6D1}, /* A6D0 */ - {0xA6D2,0xA6D2,0xA6D2}, {0xA6D3,0xA6D3,0xA6D3}, /* A6D2 */ - {0xA6D4,0xA6D4,0xA6D4}, {0xA6D5,0xA6D5,0xA6D5}, /* A6D4 */ - {0xA6D6,0xA6D6,0xA6D6}, {0xA6D7,0xA6D7,0xA6D7}, /* A6D6 */ - {0xA6D8,0xA6D8,0xA6D8}, {0xA6D9,0xA6D9,0xA6D9}, /* A6D8 */ - {0xA6DA,0xA6DA,0xA6DA}, {0xA6DB,0xA6DB,0xA6DB}, /* A6DA */ - {0xA6DC,0xA6DC,0xA6DC}, {0xA6DD,0xA6DD,0xA6DD}, /* A6DC */ - {0xA6DE,0xA6DE,0xA6DE}, {0xA6DF,0xA6DF,0xA6DF}, /* A6DE */ - {0xA6E0,0xA6E0,0xA6E0}, {0xA6E1,0xA6E1,0xA6E1}, /* A6E0 */ - {0xA6E2,0xA6E2,0xA6E2}, {0xA6E3,0xA6E3,0xA6E3}, /* A6E2 */ - {0xA6E4,0xA6E4,0xA6E4}, {0xA6E5,0xA6E5,0xA6E5}, /* A6E4 */ - {0xA6E6,0xA6E6,0xA6E6}, {0xA6E7,0xA6E7,0xA6E7}, /* A6E6 */ - {0xA6E8,0xA6E8,0xA6E8}, {0xA6E9,0xA6E9,0xA6E9}, /* A6E8 */ - {0xA6EA,0xA6EA,0xA6EA}, {0xA6EB,0xA6EB,0xA6EB}, /* A6EA */ - {0xA6EC,0xA6EC,0xA6EC}, {0xA6ED,0xA6ED,0xA6ED}, /* A6EC */ - {0xA6EE,0xA6EE,0xA6EE}, {0xA6EF,0xA6EF,0xA6EF}, /* A6EE */ - {0xA6F0,0xA6F0,0xA6F0}, {0xA6F1,0xA6F1,0xA6F1}, /* A6F0 */ - {0xA6F2,0xA6F2,0xA6F2}, {0xA6F3,0xA6F3,0xA6F3}, /* A6F2 */ - {0xA6F4,0xA6F4,0xA6F4}, {0xA6F5,0xA6F5,0xA6F5}, /* A6F4 */ - {0xA6F6,0xA6F6,0xA6F6}, {0xA6F7,0xA6F7,0xA6F7}, /* A6F6 */ - {0xA6F8,0xA6F8,0xA6F8}, {0xA6F9,0xA6F9,0xA6F9}, /* A6F8 */ - {0xA6FA,0xA6FA,0xA6FA}, {0xA6FB,0xA6FB,0xA6FB}, /* A6FA */ - {0xA6FC,0xA6FC,0xA6FC}, {0xA6FD,0xA6FD,0xA6FD}, /* A6FC */ - {0xA6FE,0xA6FE,0xA6FE}, {0xA6FF,0xA6FF,0xA6FF} /* A6FE */ -}; - -static MY_UNICASE_CHARACTER u520pA7[]={ - {0xA700,0xA700,0xA700}, {0xA701,0xA701,0xA701}, /* A700 */ - {0xA702,0xA702,0xA702}, {0xA703,0xA703,0xA703}, /* A702 */ - {0xA704,0xA704,0xA704}, {0xA705,0xA705,0xA705}, /* A704 */ - {0xA706,0xA706,0xA706}, {0xA707,0xA707,0xA707}, /* A706 */ - {0xA708,0xA708,0xA708}, {0xA709,0xA709,0xA709}, /* A708 */ - {0xA70A,0xA70A,0xA70A}, {0xA70B,0xA70B,0xA70B}, /* A70A */ - {0xA70C,0xA70C,0xA70C}, {0xA70D,0xA70D,0xA70D}, /* A70C */ - {0xA70E,0xA70E,0xA70E}, {0xA70F,0xA70F,0xA70F}, /* A70E */ - {0xA710,0xA710,0xA710}, {0xA711,0xA711,0xA711}, /* A710 */ - {0xA712,0xA712,0xA712}, {0xA713,0xA713,0xA713}, /* A712 */ - {0xA714,0xA714,0xA714}, {0xA715,0xA715,0xA715}, /* A714 */ - {0xA716,0xA716,0xA716}, {0xA717,0xA717,0xA717}, /* A716 */ - {0xA718,0xA718,0xA718}, {0xA719,0xA719,0xA719}, /* A718 */ - {0xA71A,0xA71A,0xA71A}, {0xA71B,0xA71B,0xA71B}, /* A71A */ - {0xA71C,0xA71C,0xA71C}, {0xA71D,0xA71D,0xA71D}, /* A71C */ - {0xA71E,0xA71E,0xA71E}, {0xA71F,0xA71F,0xA71F}, /* A71E */ - {0xA720,0xA720,0xA720}, {0xA721,0xA721,0xA721}, /* A720 */ - {0xA722,0xA723,0xA722}, {0xA722,0xA723,0xA722}, /* A722 */ - {0xA724,0xA725,0xA724}, {0xA724,0xA725,0xA724}, /* A724 */ - {0xA726,0xA727,0xA726}, {0xA726,0xA727,0xA726}, /* A726 */ - {0xA728,0xA729,0xA728}, {0xA728,0xA729,0xA728}, /* A728 */ - {0xA72A,0xA72B,0xA72A}, {0xA72A,0xA72B,0xA72A}, /* A72A */ - {0xA72C,0xA72D,0xA72C}, {0xA72C,0xA72D,0xA72C}, /* A72C */ - {0xA72E,0xA72F,0xA72E}, {0xA72E,0xA72F,0xA72E}, /* A72E */ - {0xA730,0xA730,0xA730}, {0xA731,0xA731,0xA731}, /* A730 */ - {0xA732,0xA733,0xA732}, {0xA732,0xA733,0xA732}, /* A732 */ - {0xA734,0xA735,0xA734}, {0xA734,0xA735,0xA734}, /* A734 */ - {0xA736,0xA737,0xA736}, {0xA736,0xA737,0xA736}, /* A736 */ - {0xA738,0xA739,0xA738}, {0xA738,0xA739,0xA738}, /* A738 */ - {0xA73A,0xA73B,0xA73A}, {0xA73A,0xA73B,0xA73A}, /* A73A */ - {0xA73C,0xA73D,0xA73C}, {0xA73C,0xA73D,0xA73C}, /* A73C */ - {0xA73E,0xA73F,0xA73E}, {0xA73E,0xA73F,0xA73E}, /* A73E */ - {0xA740,0xA741,0xA740}, {0xA740,0xA741,0xA740}, /* A740 */ - {0xA742,0xA743,0xA742}, {0xA742,0xA743,0xA742}, /* A742 */ - {0xA744,0xA745,0xA744}, {0xA744,0xA745,0xA744}, /* A744 */ - {0xA746,0xA747,0xA746}, {0xA746,0xA747,0xA746}, /* A746 */ - {0xA748,0xA749,0xA748}, {0xA748,0xA749,0xA748}, /* A748 */ - {0xA74A,0xA74B,0xA74A}, {0xA74A,0xA74B,0xA74A}, /* A74A */ - {0xA74C,0xA74D,0xA74C}, {0xA74C,0xA74D,0xA74C}, /* A74C */ - {0xA74E,0xA74F,0xA74E}, {0xA74E,0xA74F,0xA74E}, /* A74E */ - {0xA750,0xA751,0xA750}, {0xA750,0xA751,0xA750}, /* A750 */ - {0xA752,0xA753,0xA752}, {0xA752,0xA753,0xA752}, /* A752 */ - {0xA754,0xA755,0xA754}, {0xA754,0xA755,0xA754}, /* A754 */ - {0xA756,0xA757,0xA756}, {0xA756,0xA757,0xA756}, /* A756 */ - {0xA758,0xA759,0xA758}, {0xA758,0xA759,0xA758}, /* A758 */ - {0xA75A,0xA75B,0xA75A}, {0xA75A,0xA75B,0xA75A}, /* A75A */ - {0xA75C,0xA75D,0xA75C}, {0xA75C,0xA75D,0xA75C}, /* A75C */ - {0xA75E,0xA75F,0xA75E}, {0xA75E,0xA75F,0xA75E}, /* A75E */ - {0xA760,0xA761,0xA760}, {0xA760,0xA761,0xA760}, /* A760 */ - {0xA762,0xA763,0xA762}, {0xA762,0xA763,0xA762}, /* A762 */ - {0xA764,0xA765,0xA764}, {0xA764,0xA765,0xA764}, /* A764 */ - {0xA766,0xA767,0xA766}, {0xA766,0xA767,0xA766}, /* A766 */ - {0xA768,0xA769,0xA768}, {0xA768,0xA769,0xA768}, /* A768 */ - {0xA76A,0xA76B,0xA76A}, {0xA76A,0xA76B,0xA76A}, /* A76A */ - {0xA76C,0xA76D,0xA76C}, {0xA76C,0xA76D,0xA76C}, /* A76C */ - {0xA76E,0xA76F,0xA76E}, {0xA76E,0xA76F,0xA76E}, /* A76E */ - {0xA770,0xA770,0xA770}, {0xA771,0xA771,0xA771}, /* A770 */ - {0xA772,0xA772,0xA772}, {0xA773,0xA773,0xA773}, /* A772 */ - {0xA774,0xA774,0xA774}, {0xA775,0xA775,0xA775}, /* A774 */ - {0xA776,0xA776,0xA776}, {0xA777,0xA777,0xA777}, /* A776 */ - {0xA778,0xA778,0xA778}, {0xA779,0xA77A,0xA779}, /* A778 */ - {0xA779,0xA77A,0xA779}, {0xA77B,0xA77C,0xA77B}, /* A77A */ - {0xA77B,0xA77C,0xA77B}, {0xA77D,0x1D79,0xA77D}, /* A77C */ - {0xA77E,0xA77F,0xA77E}, {0xA77E,0xA77F,0xA77E}, /* A77E */ - {0xA780,0xA781,0xA780}, {0xA780,0xA781,0xA780}, /* A780 */ - {0xA782,0xA783,0xA782}, {0xA782,0xA783,0xA782}, /* A782 */ - {0xA784,0xA785,0xA784}, {0xA784,0xA785,0xA784}, /* A784 */ - {0xA786,0xA787,0xA786}, {0xA786,0xA787,0xA786}, /* A786 */ - {0xA788,0xA788,0xA788}, {0xA789,0xA789,0xA789}, /* A788 */ - {0xA78A,0xA78A,0xA78A}, {0xA78B,0xA78C,0xA78B}, /* A78A */ - {0xA78B,0xA78C,0xA78B}, {0xA78D,0xA78D,0xA78D}, /* A78C */ - {0xA78E,0xA78E,0xA78E}, {0xA78F,0xA78F,0xA78F}, /* A78E */ - {0xA790,0xA790,0xA790}, {0xA791,0xA791,0xA791}, /* A790 */ - {0xA792,0xA792,0xA792}, {0xA793,0xA793,0xA793}, /* A792 */ - {0xA794,0xA794,0xA794}, {0xA795,0xA795,0xA795}, /* A794 */ - {0xA796,0xA796,0xA796}, {0xA797,0xA797,0xA797}, /* A796 */ - {0xA798,0xA798,0xA798}, {0xA799,0xA799,0xA799}, /* A798 */ - {0xA79A,0xA79A,0xA79A}, {0xA79B,0xA79B,0xA79B}, /* A79A */ - {0xA79C,0xA79C,0xA79C}, {0xA79D,0xA79D,0xA79D}, /* A79C */ - {0xA79E,0xA79E,0xA79E}, {0xA79F,0xA79F,0xA79F}, /* A79E */ - {0xA7A0,0xA7A0,0xA7A0}, {0xA7A1,0xA7A1,0xA7A1}, /* A7A0 */ - {0xA7A2,0xA7A2,0xA7A2}, {0xA7A3,0xA7A3,0xA7A3}, /* A7A2 */ - {0xA7A4,0xA7A4,0xA7A4}, {0xA7A5,0xA7A5,0xA7A5}, /* A7A4 */ - {0xA7A6,0xA7A6,0xA7A6}, {0xA7A7,0xA7A7,0xA7A7}, /* A7A6 */ - {0xA7A8,0xA7A8,0xA7A8}, {0xA7A9,0xA7A9,0xA7A9}, /* A7A8 */ - {0xA7AA,0xA7AA,0xA7AA}, {0xA7AB,0xA7AB,0xA7AB}, /* A7AA */ - {0xA7AC,0xA7AC,0xA7AC}, {0xA7AD,0xA7AD,0xA7AD}, /* A7AC */ - {0xA7AE,0xA7AE,0xA7AE}, {0xA7AF,0xA7AF,0xA7AF}, /* A7AE */ - {0xA7B0,0xA7B0,0xA7B0}, {0xA7B1,0xA7B1,0xA7B1}, /* A7B0 */ - {0xA7B2,0xA7B2,0xA7B2}, {0xA7B3,0xA7B3,0xA7B3}, /* A7B2 */ - {0xA7B4,0xA7B4,0xA7B4}, {0xA7B5,0xA7B5,0xA7B5}, /* A7B4 */ - {0xA7B6,0xA7B6,0xA7B6}, {0xA7B7,0xA7B7,0xA7B7}, /* A7B6 */ - {0xA7B8,0xA7B8,0xA7B8}, {0xA7B9,0xA7B9,0xA7B9}, /* A7B8 */ - {0xA7BA,0xA7BA,0xA7BA}, {0xA7BB,0xA7BB,0xA7BB}, /* A7BA */ - {0xA7BC,0xA7BC,0xA7BC}, {0xA7BD,0xA7BD,0xA7BD}, /* A7BC */ - {0xA7BE,0xA7BE,0xA7BE}, {0xA7BF,0xA7BF,0xA7BF}, /* A7BE */ - {0xA7C0,0xA7C0,0xA7C0}, {0xA7C1,0xA7C1,0xA7C1}, /* A7C0 */ - {0xA7C2,0xA7C2,0xA7C2}, {0xA7C3,0xA7C3,0xA7C3}, /* A7C2 */ - {0xA7C4,0xA7C4,0xA7C4}, {0xA7C5,0xA7C5,0xA7C5}, /* A7C4 */ - {0xA7C6,0xA7C6,0xA7C6}, {0xA7C7,0xA7C7,0xA7C7}, /* A7C6 */ - {0xA7C8,0xA7C8,0xA7C8}, {0xA7C9,0xA7C9,0xA7C9}, /* A7C8 */ - {0xA7CA,0xA7CA,0xA7CA}, {0xA7CB,0xA7CB,0xA7CB}, /* A7CA */ - {0xA7CC,0xA7CC,0xA7CC}, {0xA7CD,0xA7CD,0xA7CD}, /* A7CC */ - {0xA7CE,0xA7CE,0xA7CE}, {0xA7CF,0xA7CF,0xA7CF}, /* A7CE */ - {0xA7D0,0xA7D0,0xA7D0}, {0xA7D1,0xA7D1,0xA7D1}, /* A7D0 */ - {0xA7D2,0xA7D2,0xA7D2}, {0xA7D3,0xA7D3,0xA7D3}, /* A7D2 */ - {0xA7D4,0xA7D4,0xA7D4}, {0xA7D5,0xA7D5,0xA7D5}, /* A7D4 */ - {0xA7D6,0xA7D6,0xA7D6}, {0xA7D7,0xA7D7,0xA7D7}, /* A7D6 */ - {0xA7D8,0xA7D8,0xA7D8}, {0xA7D9,0xA7D9,0xA7D9}, /* A7D8 */ - {0xA7DA,0xA7DA,0xA7DA}, {0xA7DB,0xA7DB,0xA7DB}, /* A7DA */ - {0xA7DC,0xA7DC,0xA7DC}, {0xA7DD,0xA7DD,0xA7DD}, /* A7DC */ - {0xA7DE,0xA7DE,0xA7DE}, {0xA7DF,0xA7DF,0xA7DF}, /* A7DE */ - {0xA7E0,0xA7E0,0xA7E0}, {0xA7E1,0xA7E1,0xA7E1}, /* A7E0 */ - {0xA7E2,0xA7E2,0xA7E2}, {0xA7E3,0xA7E3,0xA7E3}, /* A7E2 */ - {0xA7E4,0xA7E4,0xA7E4}, {0xA7E5,0xA7E5,0xA7E5}, /* A7E4 */ - {0xA7E6,0xA7E6,0xA7E6}, {0xA7E7,0xA7E7,0xA7E7}, /* A7E6 */ - {0xA7E8,0xA7E8,0xA7E8}, {0xA7E9,0xA7E9,0xA7E9}, /* A7E8 */ - {0xA7EA,0xA7EA,0xA7EA}, {0xA7EB,0xA7EB,0xA7EB}, /* A7EA */ - {0xA7EC,0xA7EC,0xA7EC}, {0xA7ED,0xA7ED,0xA7ED}, /* A7EC */ - {0xA7EE,0xA7EE,0xA7EE}, {0xA7EF,0xA7EF,0xA7EF}, /* A7EE */ - {0xA7F0,0xA7F0,0xA7F0}, {0xA7F1,0xA7F1,0xA7F1}, /* A7F0 */ - {0xA7F2,0xA7F2,0xA7F2}, {0xA7F3,0xA7F3,0xA7F3}, /* A7F2 */ - {0xA7F4,0xA7F4,0xA7F4}, {0xA7F5,0xA7F5,0xA7F5}, /* A7F4 */ - {0xA7F6,0xA7F6,0xA7F6}, {0xA7F7,0xA7F7,0xA7F7}, /* A7F6 */ - {0xA7F8,0xA7F8,0xA7F8}, {0xA7F9,0xA7F9,0xA7F9}, /* A7F8 */ - {0xA7FA,0xA7FA,0xA7FA}, {0xA7FB,0xA7FB,0xA7FB}, /* A7FA */ - {0xA7FC,0xA7FC,0xA7FC}, {0xA7FD,0xA7FD,0xA7FD}, /* A7FC */ - {0xA7FE,0xA7FE,0xA7FE}, {0xA7FF,0xA7FF,0xA7FF} /* A7FE */ -}; - -static MY_UNICASE_CHARACTER u520pFF[]={ - {0xFF00,0xFF00,0xFF00}, {0xFF01,0xFF01,0xFF01}, /* FF00 */ - {0xFF02,0xFF02,0xFF02}, {0xFF03,0xFF03,0xFF03}, /* FF02 */ - {0xFF04,0xFF04,0xFF04}, {0xFF05,0xFF05,0xFF05}, /* FF04 */ - {0xFF06,0xFF06,0xFF06}, {0xFF07,0xFF07,0xFF07}, /* FF06 */ - {0xFF08,0xFF08,0xFF08}, {0xFF09,0xFF09,0xFF09}, /* FF08 */ - {0xFF0A,0xFF0A,0xFF0A}, {0xFF0B,0xFF0B,0xFF0B}, /* FF0A */ - {0xFF0C,0xFF0C,0xFF0C}, {0xFF0D,0xFF0D,0xFF0D}, /* FF0C */ - {0xFF0E,0xFF0E,0xFF0E}, {0xFF0F,0xFF0F,0xFF0F}, /* FF0E */ - {0xFF10,0xFF10,0xFF10}, {0xFF11,0xFF11,0xFF11}, /* FF10 */ - {0xFF12,0xFF12,0xFF12}, {0xFF13,0xFF13,0xFF13}, /* FF12 */ - {0xFF14,0xFF14,0xFF14}, {0xFF15,0xFF15,0xFF15}, /* FF14 */ - {0xFF16,0xFF16,0xFF16}, {0xFF17,0xFF17,0xFF17}, /* FF16 */ - {0xFF18,0xFF18,0xFF18}, {0xFF19,0xFF19,0xFF19}, /* FF18 */ - {0xFF1A,0xFF1A,0xFF1A}, {0xFF1B,0xFF1B,0xFF1B}, /* FF1A */ - {0xFF1C,0xFF1C,0xFF1C}, {0xFF1D,0xFF1D,0xFF1D}, /* FF1C */ - {0xFF1E,0xFF1E,0xFF1E}, {0xFF1F,0xFF1F,0xFF1F}, /* FF1E */ - {0xFF20,0xFF20,0xFF20}, {0xFF21,0xFF41,0xFF21}, /* FF20 */ - {0xFF22,0xFF42,0xFF22}, {0xFF23,0xFF43,0xFF23}, /* FF22 */ - {0xFF24,0xFF44,0xFF24}, {0xFF25,0xFF45,0xFF25}, /* FF24 */ - {0xFF26,0xFF46,0xFF26}, {0xFF27,0xFF47,0xFF27}, /* FF26 */ - {0xFF28,0xFF48,0xFF28}, {0xFF29,0xFF49,0xFF29}, /* FF28 */ - {0xFF2A,0xFF4A,0xFF2A}, {0xFF2B,0xFF4B,0xFF2B}, /* FF2A */ - {0xFF2C,0xFF4C,0xFF2C}, {0xFF2D,0xFF4D,0xFF2D}, /* FF2C */ - {0xFF2E,0xFF4E,0xFF2E}, {0xFF2F,0xFF4F,0xFF2F}, /* FF2E */ - {0xFF30,0xFF50,0xFF30}, {0xFF31,0xFF51,0xFF31}, /* FF30 */ - {0xFF32,0xFF52,0xFF32}, {0xFF33,0xFF53,0xFF33}, /* FF32 */ - {0xFF34,0xFF54,0xFF34}, {0xFF35,0xFF55,0xFF35}, /* FF34 */ - {0xFF36,0xFF56,0xFF36}, {0xFF37,0xFF57,0xFF37}, /* FF36 */ - {0xFF38,0xFF58,0xFF38}, {0xFF39,0xFF59,0xFF39}, /* FF38 */ - {0xFF3A,0xFF5A,0xFF3A}, {0xFF3B,0xFF3B,0xFF3B}, /* FF3A */ - {0xFF3C,0xFF3C,0xFF3C}, {0xFF3D,0xFF3D,0xFF3D}, /* FF3C */ - {0xFF3E,0xFF3E,0xFF3E}, {0xFF3F,0xFF3F,0xFF3F}, /* FF3E */ - {0xFF40,0xFF40,0xFF40}, {0xFF21,0xFF41,0xFF21}, /* FF40 */ - {0xFF22,0xFF42,0xFF22}, {0xFF23,0xFF43,0xFF23}, /* FF42 */ - {0xFF24,0xFF44,0xFF24}, {0xFF25,0xFF45,0xFF25}, /* FF44 */ - {0xFF26,0xFF46,0xFF26}, {0xFF27,0xFF47,0xFF27}, /* FF46 */ - {0xFF28,0xFF48,0xFF28}, {0xFF29,0xFF49,0xFF29}, /* FF48 */ - {0xFF2A,0xFF4A,0xFF2A}, {0xFF2B,0xFF4B,0xFF2B}, /* FF4A */ - {0xFF2C,0xFF4C,0xFF2C}, {0xFF2D,0xFF4D,0xFF2D}, /* FF4C */ - {0xFF2E,0xFF4E,0xFF2E}, {0xFF2F,0xFF4F,0xFF2F}, /* FF4E */ - {0xFF30,0xFF50,0xFF30}, {0xFF31,0xFF51,0xFF31}, /* FF50 */ - {0xFF32,0xFF52,0xFF32}, {0xFF33,0xFF53,0xFF33}, /* FF52 */ - {0xFF34,0xFF54,0xFF34}, {0xFF35,0xFF55,0xFF35}, /* FF54 */ - {0xFF36,0xFF56,0xFF36}, {0xFF37,0xFF57,0xFF37}, /* FF56 */ - {0xFF38,0xFF58,0xFF38}, {0xFF39,0xFF59,0xFF39}, /* FF58 */ - {0xFF3A,0xFF5A,0xFF3A}, {0xFF5B,0xFF5B,0xFF5B}, /* FF5A */ - {0xFF5C,0xFF5C,0xFF5C}, {0xFF5D,0xFF5D,0xFF5D}, /* FF5C */ - {0xFF5E,0xFF5E,0xFF5E}, {0xFF5F,0xFF5F,0xFF5F}, /* FF5E */ - {0xFF60,0xFF60,0xFF60}, {0xFF61,0xFF61,0xFF61}, /* FF60 */ - {0xFF62,0xFF62,0xFF62}, {0xFF63,0xFF63,0xFF63}, /* FF62 */ - {0xFF64,0xFF64,0xFF64}, {0xFF65,0xFF65,0xFF65}, /* FF64 */ - {0xFF66,0xFF66,0xFF66}, {0xFF67,0xFF67,0xFF67}, /* FF66 */ - {0xFF68,0xFF68,0xFF68}, {0xFF69,0xFF69,0xFF69}, /* FF68 */ - {0xFF6A,0xFF6A,0xFF6A}, {0xFF6B,0xFF6B,0xFF6B}, /* FF6A */ - {0xFF6C,0xFF6C,0xFF6C}, {0xFF6D,0xFF6D,0xFF6D}, /* FF6C */ - {0xFF6E,0xFF6E,0xFF6E}, {0xFF6F,0xFF6F,0xFF6F}, /* FF6E */ - {0xFF70,0xFF70,0xFF70}, {0xFF71,0xFF71,0xFF71}, /* FF70 */ - {0xFF72,0xFF72,0xFF72}, {0xFF73,0xFF73,0xFF73}, /* FF72 */ - {0xFF74,0xFF74,0xFF74}, {0xFF75,0xFF75,0xFF75}, /* FF74 */ - {0xFF76,0xFF76,0xFF76}, {0xFF77,0xFF77,0xFF77}, /* FF76 */ - {0xFF78,0xFF78,0xFF78}, {0xFF79,0xFF79,0xFF79}, /* FF78 */ - {0xFF7A,0xFF7A,0xFF7A}, {0xFF7B,0xFF7B,0xFF7B}, /* FF7A */ - {0xFF7C,0xFF7C,0xFF7C}, {0xFF7D,0xFF7D,0xFF7D}, /* FF7C */ - {0xFF7E,0xFF7E,0xFF7E}, {0xFF7F,0xFF7F,0xFF7F}, /* FF7E */ - {0xFF80,0xFF80,0xFF80}, {0xFF81,0xFF81,0xFF81}, /* FF80 */ - {0xFF82,0xFF82,0xFF82}, {0xFF83,0xFF83,0xFF83}, /* FF82 */ - {0xFF84,0xFF84,0xFF84}, {0xFF85,0xFF85,0xFF85}, /* FF84 */ - {0xFF86,0xFF86,0xFF86}, {0xFF87,0xFF87,0xFF87}, /* FF86 */ - {0xFF88,0xFF88,0xFF88}, {0xFF89,0xFF89,0xFF89}, /* FF88 */ - {0xFF8A,0xFF8A,0xFF8A}, {0xFF8B,0xFF8B,0xFF8B}, /* FF8A */ - {0xFF8C,0xFF8C,0xFF8C}, {0xFF8D,0xFF8D,0xFF8D}, /* FF8C */ - {0xFF8E,0xFF8E,0xFF8E}, {0xFF8F,0xFF8F,0xFF8F}, /* FF8E */ - {0xFF90,0xFF90,0xFF90}, {0xFF91,0xFF91,0xFF91}, /* FF90 */ - {0xFF92,0xFF92,0xFF92}, {0xFF93,0xFF93,0xFF93}, /* FF92 */ - {0xFF94,0xFF94,0xFF94}, {0xFF95,0xFF95,0xFF95}, /* FF94 */ - {0xFF96,0xFF96,0xFF96}, {0xFF97,0xFF97,0xFF97}, /* FF96 */ - {0xFF98,0xFF98,0xFF98}, {0xFF99,0xFF99,0xFF99}, /* FF98 */ - {0xFF9A,0xFF9A,0xFF9A}, {0xFF9B,0xFF9B,0xFF9B}, /* FF9A */ - {0xFF9C,0xFF9C,0xFF9C}, {0xFF9D,0xFF9D,0xFF9D}, /* FF9C */ - {0xFF9E,0xFF9E,0xFF9E}, {0xFF9F,0xFF9F,0xFF9F}, /* FF9E */ - {0xFFA0,0xFFA0,0xFFA0}, {0xFFA1,0xFFA1,0xFFA1}, /* FFA0 */ - {0xFFA2,0xFFA2,0xFFA2}, {0xFFA3,0xFFA3,0xFFA3}, /* FFA2 */ - {0xFFA4,0xFFA4,0xFFA4}, {0xFFA5,0xFFA5,0xFFA5}, /* FFA4 */ - {0xFFA6,0xFFA6,0xFFA6}, {0xFFA7,0xFFA7,0xFFA7}, /* FFA6 */ - {0xFFA8,0xFFA8,0xFFA8}, {0xFFA9,0xFFA9,0xFFA9}, /* FFA8 */ - {0xFFAA,0xFFAA,0xFFAA}, {0xFFAB,0xFFAB,0xFFAB}, /* FFAA */ - {0xFFAC,0xFFAC,0xFFAC}, {0xFFAD,0xFFAD,0xFFAD}, /* FFAC */ - {0xFFAE,0xFFAE,0xFFAE}, {0xFFAF,0xFFAF,0xFFAF}, /* FFAE */ - {0xFFB0,0xFFB0,0xFFB0}, {0xFFB1,0xFFB1,0xFFB1}, /* FFB0 */ - {0xFFB2,0xFFB2,0xFFB2}, {0xFFB3,0xFFB3,0xFFB3}, /* FFB2 */ - {0xFFB4,0xFFB4,0xFFB4}, {0xFFB5,0xFFB5,0xFFB5}, /* FFB4 */ - {0xFFB6,0xFFB6,0xFFB6}, {0xFFB7,0xFFB7,0xFFB7}, /* FFB6 */ - {0xFFB8,0xFFB8,0xFFB8}, {0xFFB9,0xFFB9,0xFFB9}, /* FFB8 */ - {0xFFBA,0xFFBA,0xFFBA}, {0xFFBB,0xFFBB,0xFFBB}, /* FFBA */ - {0xFFBC,0xFFBC,0xFFBC}, {0xFFBD,0xFFBD,0xFFBD}, /* FFBC */ - {0xFFBE,0xFFBE,0xFFBE}, {0xFFBF,0xFFBF,0xFFBF}, /* FFBE */ - {0xFFC0,0xFFC0,0xFFC0}, {0xFFC1,0xFFC1,0xFFC1}, /* FFC0 */ - {0xFFC2,0xFFC2,0xFFC2}, {0xFFC3,0xFFC3,0xFFC3}, /* FFC2 */ - {0xFFC4,0xFFC4,0xFFC4}, {0xFFC5,0xFFC5,0xFFC5}, /* FFC4 */ - {0xFFC6,0xFFC6,0xFFC6}, {0xFFC7,0xFFC7,0xFFC7}, /* FFC6 */ - {0xFFC8,0xFFC8,0xFFC8}, {0xFFC9,0xFFC9,0xFFC9}, /* FFC8 */ - {0xFFCA,0xFFCA,0xFFCA}, {0xFFCB,0xFFCB,0xFFCB}, /* FFCA */ - {0xFFCC,0xFFCC,0xFFCC}, {0xFFCD,0xFFCD,0xFFCD}, /* FFCC */ - {0xFFCE,0xFFCE,0xFFCE}, {0xFFCF,0xFFCF,0xFFCF}, /* FFCE */ - {0xFFD0,0xFFD0,0xFFD0}, {0xFFD1,0xFFD1,0xFFD1}, /* FFD0 */ - {0xFFD2,0xFFD2,0xFFD2}, {0xFFD3,0xFFD3,0xFFD3}, /* FFD2 */ - {0xFFD4,0xFFD4,0xFFD4}, {0xFFD5,0xFFD5,0xFFD5}, /* FFD4 */ - {0xFFD6,0xFFD6,0xFFD6}, {0xFFD7,0xFFD7,0xFFD7}, /* FFD6 */ - {0xFFD8,0xFFD8,0xFFD8}, {0xFFD9,0xFFD9,0xFFD9}, /* FFD8 */ - {0xFFDA,0xFFDA,0xFFDA}, {0xFFDB,0xFFDB,0xFFDB}, /* FFDA */ - {0xFFDC,0xFFDC,0xFFDC}, {0xFFDD,0xFFDD,0xFFDD}, /* FFDC */ - {0xFFDE,0xFFDE,0xFFDE}, {0xFFDF,0xFFDF,0xFFDF}, /* FFDE */ - {0xFFE0,0xFFE0,0xFFE0}, {0xFFE1,0xFFE1,0xFFE1}, /* FFE0 */ - {0xFFE2,0xFFE2,0xFFE2}, {0xFFE3,0xFFE3,0xFFE3}, /* FFE2 */ - {0xFFE4,0xFFE4,0xFFE4}, {0xFFE5,0xFFE5,0xFFE5}, /* FFE4 */ - {0xFFE6,0xFFE6,0xFFE6}, {0xFFE7,0xFFE7,0xFFE7}, /* FFE6 */ - {0xFFE8,0xFFE8,0xFFE8}, {0xFFE9,0xFFE9,0xFFE9}, /* FFE8 */ - {0xFFEA,0xFFEA,0xFFEA}, {0xFFEB,0xFFEB,0xFFEB}, /* FFEA */ - {0xFFEC,0xFFEC,0xFFEC}, {0xFFED,0xFFED,0xFFED}, /* FFEC */ - {0xFFEE,0xFFEE,0xFFEE}, {0xFFEF,0xFFEF,0xFFEF}, /* FFEE */ - {0xFFF0,0xFFF0,0xFFF0}, {0xFFF1,0xFFF1,0xFFF1}, /* FFF0 */ - {0xFFF2,0xFFF2,0xFFF2}, {0xFFF3,0xFFF3,0xFFF3}, /* FFF2 */ - {0xFFF4,0xFFF4,0xFFF4}, {0xFFF5,0xFFF5,0xFFF5}, /* FFF4 */ - {0xFFF6,0xFFF6,0xFFF6}, {0xFFF7,0xFFF7,0xFFF7}, /* FFF6 */ - {0xFFF8,0xFFF8,0xFFF8}, {0xFFF9,0xFFF9,0xFFF9}, /* FFF8 */ - {0xFFFA,0xFFFA,0xFFFA}, {0xFFFB,0xFFFB,0xFFFB}, /* FFFA */ - {0xFFFC,0xFFFC,0xFFFC}, {0xFFFD,0xFFFD,0xFFFD}, /* FFFC */ - {0xFFFE,0xFFFE,0xFFFE}, {0xFFFF,0xFFFF,0xFFFF} /* FFFE */ -}; - -static MY_UNICASE_CHARACTER u520p104[]={ - {0x10400,0x10428,0x10400}, {0x10401,0x10429,0x10401}, /* 10400 */ - {0x10402,0x1042A,0x10402}, {0x10403,0x1042B,0x10403}, /* 10402 */ - {0x10404,0x1042C,0x10404}, {0x10405,0x1042D,0x10405}, /* 10404 */ - {0x10406,0x1042E,0x10406}, {0x10407,0x1042F,0x10407}, /* 10406 */ - {0x10408,0x10430,0x10408}, {0x10409,0x10431,0x10409}, /* 10408 */ - {0x1040A,0x10432,0x1040A}, {0x1040B,0x10433,0x1040B}, /* 1040A */ - {0x1040C,0x10434,0x1040C}, {0x1040D,0x10435,0x1040D}, /* 1040C */ - {0x1040E,0x10436,0x1040E}, {0x1040F,0x10437,0x1040F}, /* 1040E */ - {0x10410,0x10438,0x10410}, {0x10411,0x10439,0x10411}, /* 10410 */ - {0x10412,0x1043A,0x10412}, {0x10413,0x1043B,0x10413}, /* 10412 */ - {0x10414,0x1043C,0x10414}, {0x10415,0x1043D,0x10415}, /* 10414 */ - {0x10416,0x1043E,0x10416}, {0x10417,0x1043F,0x10417}, /* 10416 */ - {0x10418,0x10440,0x10418}, {0x10419,0x10441,0x10419}, /* 10418 */ - {0x1041A,0x10442,0x1041A}, {0x1041B,0x10443,0x1041B}, /* 1041A */ - {0x1041C,0x10444,0x1041C}, {0x1041D,0x10445,0x1041D}, /* 1041C */ - {0x1041E,0x10446,0x1041E}, {0x1041F,0x10447,0x1041F}, /* 1041E */ - {0x10420,0x10448,0x10420}, {0x10421,0x10449,0x10421}, /* 10420 */ - {0x10422,0x1044A,0x10422}, {0x10423,0x1044B,0x10423}, /* 10422 */ - {0x10424,0x1044C,0x10424}, {0x10425,0x1044D,0x10425}, /* 10424 */ - {0x10426,0x1044E,0x10426}, {0x10427,0x1044F,0x10427}, /* 10426 */ - {0x10400,0x10428,0x10400}, {0x10401,0x10429,0x10401}, /* 10428 */ - {0x10402,0x1042A,0x10402}, {0x10403,0x1042B,0x10403}, /* 1042A */ - {0x10404,0x1042C,0x10404}, {0x10405,0x1042D,0x10405}, /* 1042C */ - {0x10406,0x1042E,0x10406}, {0x10407,0x1042F,0x10407}, /* 1042E */ - {0x10408,0x10430,0x10408}, {0x10409,0x10431,0x10409}, /* 10430 */ - {0x1040A,0x10432,0x1040A}, {0x1040B,0x10433,0x1040B}, /* 10432 */ - {0x1040C,0x10434,0x1040C}, {0x1040D,0x10435,0x1040D}, /* 10434 */ - {0x1040E,0x10436,0x1040E}, {0x1040F,0x10437,0x1040F}, /* 10436 */ - {0x10410,0x10438,0x10410}, {0x10411,0x10439,0x10411}, /* 10438 */ - {0x10412,0x1043A,0x10412}, {0x10413,0x1043B,0x10413}, /* 1043A */ - {0x10414,0x1043C,0x10414}, {0x10415,0x1043D,0x10415}, /* 1043C */ - {0x10416,0x1043E,0x10416}, {0x10417,0x1043F,0x10417}, /* 1043E */ - {0x10418,0x10440,0x10418}, {0x10419,0x10441,0x10419}, /* 10440 */ - {0x1041A,0x10442,0x1041A}, {0x1041B,0x10443,0x1041B}, /* 10442 */ - {0x1041C,0x10444,0x1041C}, {0x1041D,0x10445,0x1041D}, /* 10444 */ - {0x1041E,0x10446,0x1041E}, {0x1041F,0x10447,0x1041F}, /* 10446 */ - {0x10420,0x10448,0x10420}, {0x10421,0x10449,0x10421}, /* 10448 */ - {0x10422,0x1044A,0x10422}, {0x10423,0x1044B,0x10423}, /* 1044A */ - {0x10424,0x1044C,0x10424}, {0x10425,0x1044D,0x10425}, /* 1044C */ - {0x10426,0x1044E,0x10426}, {0x10427,0x1044F,0x10427}, /* 1044E */ - {0x10450,0x10450,0x10450}, {0x10451,0x10451,0x10451}, /* 10450 */ - {0x10452,0x10452,0x10452}, {0x10453,0x10453,0x10453}, /* 10452 */ - {0x10454,0x10454,0x10454}, {0x10455,0x10455,0x10455}, /* 10454 */ - {0x10456,0x10456,0x10456}, {0x10457,0x10457,0x10457}, /* 10456 */ - {0x10458,0x10458,0x10458}, {0x10459,0x10459,0x10459}, /* 10458 */ - {0x1045A,0x1045A,0x1045A}, {0x1045B,0x1045B,0x1045B}, /* 1045A */ - {0x1045C,0x1045C,0x1045C}, {0x1045D,0x1045D,0x1045D}, /* 1045C */ - {0x1045E,0x1045E,0x1045E}, {0x1045F,0x1045F,0x1045F}, /* 1045E */ - {0x10460,0x10460,0x10460}, {0x10461,0x10461,0x10461}, /* 10460 */ - {0x10462,0x10462,0x10462}, {0x10463,0x10463,0x10463}, /* 10462 */ - {0x10464,0x10464,0x10464}, {0x10465,0x10465,0x10465}, /* 10464 */ - {0x10466,0x10466,0x10466}, {0x10467,0x10467,0x10467}, /* 10466 */ - {0x10468,0x10468,0x10468}, {0x10469,0x10469,0x10469}, /* 10468 */ - {0x1046A,0x1046A,0x1046A}, {0x1046B,0x1046B,0x1046B}, /* 1046A */ - {0x1046C,0x1046C,0x1046C}, {0x1046D,0x1046D,0x1046D}, /* 1046C */ - {0x1046E,0x1046E,0x1046E}, {0x1046F,0x1046F,0x1046F}, /* 1046E */ - {0x10470,0x10470,0x10470}, {0x10471,0x10471,0x10471}, /* 10470 */ - {0x10472,0x10472,0x10472}, {0x10473,0x10473,0x10473}, /* 10472 */ - {0x10474,0x10474,0x10474}, {0x10475,0x10475,0x10475}, /* 10474 */ - {0x10476,0x10476,0x10476}, {0x10477,0x10477,0x10477}, /* 10476 */ - {0x10478,0x10478,0x10478}, {0x10479,0x10479,0x10479}, /* 10478 */ - {0x1047A,0x1047A,0x1047A}, {0x1047B,0x1047B,0x1047B}, /* 1047A */ - {0x1047C,0x1047C,0x1047C}, {0x1047D,0x1047D,0x1047D}, /* 1047C */ - {0x1047E,0x1047E,0x1047E}, {0x1047F,0x1047F,0x1047F}, /* 1047E */ - {0x10480,0x10480,0x10480}, {0x10481,0x10481,0x10481}, /* 10480 */ - {0x10482,0x10482,0x10482}, {0x10483,0x10483,0x10483}, /* 10482 */ - {0x10484,0x10484,0x10484}, {0x10485,0x10485,0x10485}, /* 10484 */ - {0x10486,0x10486,0x10486}, {0x10487,0x10487,0x10487}, /* 10486 */ - {0x10488,0x10488,0x10488}, {0x10489,0x10489,0x10489}, /* 10488 */ - {0x1048A,0x1048A,0x1048A}, {0x1048B,0x1048B,0x1048B}, /* 1048A */ - {0x1048C,0x1048C,0x1048C}, {0x1048D,0x1048D,0x1048D}, /* 1048C */ - {0x1048E,0x1048E,0x1048E}, {0x1048F,0x1048F,0x1048F}, /* 1048E */ - {0x10490,0x10490,0x10490}, {0x10491,0x10491,0x10491}, /* 10490 */ - {0x10492,0x10492,0x10492}, {0x10493,0x10493,0x10493}, /* 10492 */ - {0x10494,0x10494,0x10494}, {0x10495,0x10495,0x10495}, /* 10494 */ - {0x10496,0x10496,0x10496}, {0x10497,0x10497,0x10497}, /* 10496 */ - {0x10498,0x10498,0x10498}, {0x10499,0x10499,0x10499}, /* 10498 */ - {0x1049A,0x1049A,0x1049A}, {0x1049B,0x1049B,0x1049B}, /* 1049A */ - {0x1049C,0x1049C,0x1049C}, {0x1049D,0x1049D,0x1049D}, /* 1049C */ - {0x1049E,0x1049E,0x1049E}, {0x1049F,0x1049F,0x1049F}, /* 1049E */ - {0x104A0,0x104A0,0x104A0}, {0x104A1,0x104A1,0x104A1}, /* 104A0 */ - {0x104A2,0x104A2,0x104A2}, {0x104A3,0x104A3,0x104A3}, /* 104A2 */ - {0x104A4,0x104A4,0x104A4}, {0x104A5,0x104A5,0x104A5}, /* 104A4 */ - {0x104A6,0x104A6,0x104A6}, {0x104A7,0x104A7,0x104A7}, /* 104A6 */ - {0x104A8,0x104A8,0x104A8}, {0x104A9,0x104A9,0x104A9}, /* 104A8 */ - {0x104AA,0x104AA,0x104AA}, {0x104AB,0x104AB,0x104AB}, /* 104AA */ - {0x104AC,0x104AC,0x104AC}, {0x104AD,0x104AD,0x104AD}, /* 104AC */ - {0x104AE,0x104AE,0x104AE}, {0x104AF,0x104AF,0x104AF}, /* 104AE */ - {0x104B0,0x104B0,0x104B0}, {0x104B1,0x104B1,0x104B1}, /* 104B0 */ - {0x104B2,0x104B2,0x104B2}, {0x104B3,0x104B3,0x104B3}, /* 104B2 */ - {0x104B4,0x104B4,0x104B4}, {0x104B5,0x104B5,0x104B5}, /* 104B4 */ - {0x104B6,0x104B6,0x104B6}, {0x104B7,0x104B7,0x104B7}, /* 104B6 */ - {0x104B8,0x104B8,0x104B8}, {0x104B9,0x104B9,0x104B9}, /* 104B8 */ - {0x104BA,0x104BA,0x104BA}, {0x104BB,0x104BB,0x104BB}, /* 104BA */ - {0x104BC,0x104BC,0x104BC}, {0x104BD,0x104BD,0x104BD}, /* 104BC */ - {0x104BE,0x104BE,0x104BE}, {0x104BF,0x104BF,0x104BF}, /* 104BE */ - {0x104C0,0x104C0,0x104C0}, {0x104C1,0x104C1,0x104C1}, /* 104C0 */ - {0x104C2,0x104C2,0x104C2}, {0x104C3,0x104C3,0x104C3}, /* 104C2 */ - {0x104C4,0x104C4,0x104C4}, {0x104C5,0x104C5,0x104C5}, /* 104C4 */ - {0x104C6,0x104C6,0x104C6}, {0x104C7,0x104C7,0x104C7}, /* 104C6 */ - {0x104C8,0x104C8,0x104C8}, {0x104C9,0x104C9,0x104C9}, /* 104C8 */ - {0x104CA,0x104CA,0x104CA}, {0x104CB,0x104CB,0x104CB}, /* 104CA */ - {0x104CC,0x104CC,0x104CC}, {0x104CD,0x104CD,0x104CD}, /* 104CC */ - {0x104CE,0x104CE,0x104CE}, {0x104CF,0x104CF,0x104CF}, /* 104CE */ - {0x104D0,0x104D0,0x104D0}, {0x104D1,0x104D1,0x104D1}, /* 104D0 */ - {0x104D2,0x104D2,0x104D2}, {0x104D3,0x104D3,0x104D3}, /* 104D2 */ - {0x104D4,0x104D4,0x104D4}, {0x104D5,0x104D5,0x104D5}, /* 104D4 */ - {0x104D6,0x104D6,0x104D6}, {0x104D7,0x104D7,0x104D7}, /* 104D6 */ - {0x104D8,0x104D8,0x104D8}, {0x104D9,0x104D9,0x104D9}, /* 104D8 */ - {0x104DA,0x104DA,0x104DA}, {0x104DB,0x104DB,0x104DB}, /* 104DA */ - {0x104DC,0x104DC,0x104DC}, {0x104DD,0x104DD,0x104DD}, /* 104DC */ - {0x104DE,0x104DE,0x104DE}, {0x104DF,0x104DF,0x104DF}, /* 104DE */ - {0x104E0,0x104E0,0x104E0}, {0x104E1,0x104E1,0x104E1}, /* 104E0 */ - {0x104E2,0x104E2,0x104E2}, {0x104E3,0x104E3,0x104E3}, /* 104E2 */ - {0x104E4,0x104E4,0x104E4}, {0x104E5,0x104E5,0x104E5}, /* 104E4 */ - {0x104E6,0x104E6,0x104E6}, {0x104E7,0x104E7,0x104E7}, /* 104E6 */ - {0x104E8,0x104E8,0x104E8}, {0x104E9,0x104E9,0x104E9}, /* 104E8 */ - {0x104EA,0x104EA,0x104EA}, {0x104EB,0x104EB,0x104EB}, /* 104EA */ - {0x104EC,0x104EC,0x104EC}, {0x104ED,0x104ED,0x104ED}, /* 104EC */ - {0x104EE,0x104EE,0x104EE}, {0x104EF,0x104EF,0x104EF}, /* 104EE */ - {0x104F0,0x104F0,0x104F0}, {0x104F1,0x104F1,0x104F1}, /* 104F0 */ - {0x104F2,0x104F2,0x104F2}, {0x104F3,0x104F3,0x104F3}, /* 104F2 */ - {0x104F4,0x104F4,0x104F4}, {0x104F5,0x104F5,0x104F5}, /* 104F4 */ - {0x104F6,0x104F6,0x104F6}, {0x104F7,0x104F7,0x104F7}, /* 104F6 */ - {0x104F8,0x104F8,0x104F8}, {0x104F9,0x104F9,0x104F9}, /* 104F8 */ - {0x104FA,0x104FA,0x104FA}, {0x104FB,0x104FB,0x104FB}, /* 104FA */ - {0x104FC,0x104FC,0x104FC}, {0x104FD,0x104FD,0x104FD}, /* 104FC */ - {0x104FE,0x104FE,0x104FE}, {0x104FF,0x104FF,0x104FF} /* 104FE */ -}; - - -MY_UNICASE_CHARACTER *my_unicase_pages_unicode520[4352]= -{ - u520p00, u520p01, u520p02, u520p03, u520p04, u520p05, plane06, plane07, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - u520p10, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, u520p1D, u520p1E, u520p1F, - NULL, u520p21, NULL, NULL, u520p24, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, u520p2C, u520p2D, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, u520pA6, u520pA7, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, NULL, NULL, u520pFF, - NULL, NULL, NULL, NULL,u520p104, NULL, NULL, NULL, -}; - - -MY_UNICASE_INFO my_unicase_unicode520= -{ - 0x104FF, - my_unicase_pages_unicode520 -}; - - -static inline void -my_tosort_unicode(MY_UNICASE_INFO *uni_plane, my_wc_t *wc, uint flags) -{ - if (*wc <= uni_plane->maxchar) - { - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[*wc >> 8])) - *wc= (flags & MY_CS_LOWER_SORT) ? - page[*wc & 0xFF].tolower : - page[*wc & 0xFF].sort; - } - else - { - *wc= MY_CS_REPLACEMENT_CHARACTER; - } -} - static uint my_casefold_multiply_utf8mbx(CHARSET_INFO *cs) { DBUG_ASSERT(cs->mbminlen == 1 && cs->mbmaxlen >= 3); - if (cs->caseinfo == &my_unicase_unicode520) + if (cs->casefold == &my_casefold_unicode520 || + cs->casefold == &my_casefold_unicode1400 || + cs->casefold == &my_casefold_unicode1400tr) return 2; - if (cs->caseinfo == &my_unicase_turkish) + if (cs->casefold == &my_casefold_turkish) return 2; - if (cs->caseinfo == &my_unicase_default) + if (cs->casefold == &my_casefold_default) return 1; - if (cs->caseinfo == &my_unicase_mysql500) + if (cs->casefold == &my_casefold_mysql500) return 1; DBUG_ASSERT(0); /*Unknown case folding data */ return 1; @@ -4687,7 +147,7 @@ int my_wildcmp_unicode_impl(CHARSET_INFO *cs, const char *str,const char *str_end, const char *wildstr,const char *wildend, int escape, int w_one, int w_many, - MY_UNICASE_INFO *weights, int recurse_level) + MY_CASEFOLD_INFO *weights, int recurse_level) { int result= -1; /* Not found, using wildcards */ my_wc_t s_wc, w_wc; @@ -4734,8 +194,8 @@ int my_wildcmp_unicode_impl(CHARSET_INFO *cs, { if (weights) { - my_tosort_unicode(weights, &s_wc, cs->state); - my_tosort_unicode(weights, &w_wc, cs->state); + my_tosort_unicode(weights, &s_wc); + my_tosort_unicode(weights, &w_wc); } if (s_wc != w_wc) return 1; /* No match */ @@ -4803,8 +263,8 @@ int my_wildcmp_unicode_impl(CHARSET_INFO *cs, return 1; if (weights) { - my_tosort_unicode(weights, &s_wc, cs->state); - my_tosort_unicode(weights, &w_wc, cs->state); + my_tosort_unicode(weights, &s_wc); + my_tosort_unicode(weights, &w_wc); } if (s_wc == w_wc) @@ -4832,7 +292,7 @@ my_wildcmp_unicode(CHARSET_INFO *cs, const char *str,const char *str_end, const char *wildstr,const char *wildend, int escape, int w_one, int w_many, - MY_UNICASE_INFO *weights) + MY_CASEFOLD_INFO *weights) { return my_wildcmp_unicode_impl(cs, str, str_end, wildstr, wildend, @@ -5207,24 +667,6 @@ static int my_uni_utf8mb3_no_range(CHARSET_INFO *cs __attribute__((unused)), } -static inline void -my_tolower_utf8mb3(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8) & 0xFF])) - *wc= page[*wc & 0xFF].tolower; -} - - -static inline void -my_toupper_utf8mb3(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8) & 0xFF])) - *wc= page[*wc & 0xFF].toupper; -} - - static size_t my_caseup_utf8mb3(CHARSET_INFO *cs, const char *src, size_t srclen, char *dst, size_t dstlen) @@ -5233,13 +675,13 @@ static size_t my_caseup_utf8mb3(CHARSET_INFO *cs, int srcres, dstres; const char *srcend= src + srclen; char *dstend= dst + dstlen, *dst0= dst; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(src != dst || cs->cset->caseup_multiply(cs) == 1); while ((src < srcend) && (srcres= my_utf8mb3_uni(cs, &wc, (uchar *) src, (uchar*) srcend)) > 0) { - my_toupper_utf8mb3(uni_plane, &wc); + my_toupper_unicode_bmp(uni_plane, &wc); if ((dstres= my_uni_utf8mb3(cs, wc, (uchar*) dst, (uchar*) dstend)) <= 0) break; src+= srcres; @@ -5255,12 +697,12 @@ static void my_hash_sort_utf8mb3_nopad(CHARSET_INFO *cs, const uchar *s, size_t my_wc_t wc; int res; const uchar *e= s+slen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; register ulong m1= *nr1, m2= *nr2; while ((s < e) && (res=my_utf8mb3_uni(cs,&wc, (uchar *)s, (uchar*)e))>0 ) { - my_tosort_unicode(uni_plane, &wc, cs->state); + my_tosort_unicode(uni_plane, &wc); MY_HASH_ADD_16(m1, m2, wc); s+= res; } @@ -5286,13 +728,13 @@ static size_t my_caseup_str_utf8mb3(CHARSET_INFO *cs, char *src) my_wc_t wc; int srcres, dstres; char *dst= src, *dst0= src; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(cs->cset->caseup_multiply(cs) == 1); while (*src && (srcres= my_utf8mb3_uni_no_range(cs, &wc, (uchar *) src)) > 0) { - my_toupper_utf8mb3(uni_plane, &wc); + my_toupper_unicode_bmp(uni_plane, &wc); if ((dstres= my_uni_utf8mb3_no_range(cs, wc, (uchar*) dst)) <= 0) break; src+= srcres; @@ -5311,13 +753,13 @@ static size_t my_casedn_utf8mb3(CHARSET_INFO *cs, int srcres, dstres; const char *srcend= src + srclen; char *dstend= dst + dstlen, *dst0= dst; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(src != dst || cs->cset->casedn_multiply(cs) == 1); while ((src < srcend) && (srcres= my_utf8mb3_uni(cs, &wc, (uchar*) src, (uchar*)srcend)) > 0) { - my_tolower_utf8mb3(uni_plane, &wc); + my_tolower_unicode_bmp(uni_plane, &wc); if ((dstres= my_uni_utf8mb3(cs, wc, (uchar*) dst, (uchar*) dstend)) <= 0) break; src+= srcres; @@ -5332,13 +774,13 @@ static size_t my_casedn_str_utf8mb3(CHARSET_INFO *cs, char *src) my_wc_t wc; int srcres, dstres; char *dst= src, *dst0= src; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(cs->cset->casedn_multiply(cs) == 1); while (*src && (srcres= my_utf8mb3_uni_no_range(cs, &wc, (uchar *) src)) > 0) { - my_tolower_utf8mb3(uni_plane, &wc); + my_tolower_unicode_bmp(uni_plane, &wc); if ((dstres= my_uni_utf8mb3_no_range(cs, wc, (uchar*) dst)) <= 0) break; src+= srcres; @@ -5385,7 +827,7 @@ static size_t my_casedn_str_utf8mb3(CHARSET_INFO *cs, char *src) static int my_strcasecmp_utf8mb3(CHARSET_INFO *cs, const char *s, const char *t) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; while (s[0] && t[0]) { my_wc_t s_wc,t_wc; @@ -5397,7 +839,7 @@ int my_strcasecmp_utf8mb3(CHARSET_INFO *cs, const char *s, const char *t) It represents a single byte character. Convert it into weight according to collation. */ - s_wc= my_unicase_default_page00[(uchar) s[0]].tolower; + s_wc= my_u300_tolower_7bit((uchar) s[0]); s++; } else @@ -5430,7 +872,7 @@ int my_strcasecmp_utf8mb3(CHARSET_INFO *cs, const char *s, const char *t) s+= res; /* Convert Unicode code into weight according to collation */ - my_tolower_utf8mb3(uni_plane, &s_wc); + my_tolower_unicode_bmp(uni_plane, &s_wc); } @@ -5439,7 +881,7 @@ int my_strcasecmp_utf8mb3(CHARSET_INFO *cs, const char *s, const char *t) if ((uchar) t[0] < 128) { /* Convert single byte character into weight */ - t_wc= my_unicase_default_page00[(uchar) t[0]].tolower; + t_wc= my_u300_tolower_7bit((uchar) t[0]); t++; } else @@ -5450,7 +892,7 @@ int my_strcasecmp_utf8mb3(CHARSET_INFO *cs, const char *s, const char *t) t+= res; /* Convert code into weight */ - my_tolower_utf8mb3(uni_plane, &t_wc); + my_tolower_unicode_bmp(uni_plane, &t_wc); } /* Now we have two weights, let's compare them */ @@ -5467,7 +909,7 @@ int my_wildcmp_utf8mb3(CHARSET_INFO *cs, const char *wildstr,const char *wildend, int escape, int w_one, int w_many) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; return my_wildcmp_unicode(cs,str,str_end,wildstr,wildend, escape,w_one,w_many,uni_plane); } @@ -5502,33 +944,32 @@ int my_charlen_utf8mb3(CHARSET_INFO *cs __attribute__((unused)), static inline int my_weight_mb1_utf8mb3_general_ci(uchar b) { - return (int) my_unicase_default_page00[b & 0xFF].sort; + return (int) weight_general_ci_page00[b & 0xFF]; } static inline int my_weight_mb2_utf8mb3_general_ci(uchar b0, uchar b1) { my_wc_t wc= UTF8MB2_CODE(b0, b1); - MY_UNICASE_CHARACTER *page= my_unicase_default_pages[wc >> 8]; + const uint16 *page= weight_general_ci_index[wc >> 8]; /* 2-byte utf8 sequences encode Unicode characters up to U+07FF. - my_unicase_default_pages[N] has non-NULL page pointers + weight_general_ci_index[N] has non-NULL page pointers for all N in the range [0..7]. - - my_unicase_default_pages[0..5] point to real translation data - - my_unicase_default_pages[6..7] point to dummy pages + - weight_general_ci_index[0..5] point to real translation data + - weight_general_ci_index[6..7] point to dummy pages (without real translation). By adding these dummy pages we can avoid testing 'page' against NULL. This gives up to 20% performance improvement. */ - return (int) page[wc & 0xFF].sort; + return (int) page[wc & 0xFF]; } static inline int my_weight_mb3_utf8mb3_general_ci(uchar b0, uchar b1, uchar b2) { my_wc_t wc= UTF8MB3_CODE(b0, b1, b2); - MY_UNICASE_CHARACTER *page= my_unicase_default_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); + return my_general_ci_bmp_char_to_weight((uint16) wc); } @@ -5537,9 +978,7 @@ static inline int my_weight_mb3_utf8mb3_general_ci(uchar b0, uchar b1, uchar b2) #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_utf8mb3_quick(pwc, s, e) #define OPTIMIZE_ASCII 1 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_bmp_char_to_weight(x) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB1(x) my_weight_mb1_utf8mb3_general_ci(x) #define WEIGHT_MB2(x,y) my_weight_mb2_utf8mb3_general_ci(x,y) @@ -5560,19 +999,19 @@ static inline int my_weight_mb3_utf8mb3_general_ci(uchar b0, uchar b1, uchar b2) static inline int my_weight_mb1_utf8mb3_general_mysql500_ci(uchar b) { - return (int) my_unicase_mysql500_page00[b & 0xFF].sort; + return (int) weight_general_mysql500_ci_page00[b & 0xFF]; } static inline int my_weight_mb2_utf8mb3_general_mysql500_ci(uchar b0, uchar b1) { my_wc_t wc= UTF8MB2_CODE(b0, b1); - MY_UNICASE_CHARACTER *page= my_unicase_mysql500_pages[wc >> 8]; + const uint16 *page= weight_general_mysql500_ci_index[wc >> 8]; /* `page` should never be NULL for 2-byte utf8 characters. See comments in my_weight_mb2_utf8mb3_general_ci(). */ - return (int) page[wc & 0xFF].sort; + return (int) page[wc & 0xFF]; } @@ -5580,8 +1019,16 @@ static inline int my_weight_mb3_utf8mb3_general_mysql500_ci(uchar b0, uchar b1, uchar b2) { my_wc_t wc= UTF8MB3_CODE(b0, b1, b2); - MY_UNICASE_CHARACTER *page= my_unicase_mysql500_pages[wc >> 8]; - return (int) (page ? page[wc & 0xFF].sort : wc); + const uint16 *page= weight_general_mysql500_ci_index[wc >> 8]; + return (int) (page ? page[wc & 0xFF] : wc); +} + + +static inline int +my_wc_weight_utf8mb3_general_mysql500_ci(my_wc_t wc) +{ + const uint16 *page= weight_general_mysql500_ci_index[wc >> 8]; + return (int) (page ? page[wc & 0xFF] : wc); } @@ -5589,10 +1036,8 @@ my_weight_mb3_utf8mb3_general_mysql500_ci(uchar b0, uchar b1, uchar b2) #define DEFINE_STRNXFRM_UNICODE #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_utf8mb3_quick(pwc, s, e) #define OPTIMIZE_ASCII 1 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_mysql500_page00 -#define UNICASE_PAGES my_unicase_mysql500_pages #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) +#define MY_WC_WEIGHT(x) my_wc_weight_utf8mb3_general_mysql500_ci(x) #define WEIGHT_MB1(x) my_weight_mb1_utf8mb3_general_mysql500_ci(x) #define WEIGHT_MB2(x,y) my_weight_mb2_utf8mb3_general_mysql500_ci(x,y) #define WEIGHT_MB3(x,y,z) my_weight_mb3_utf8mb3_general_mysql500_ci(x,y,z) @@ -5810,8 +1255,7 @@ struct charset_info_st my_charset_utf8mb3_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -5842,8 +1286,7 @@ struct charset_info_st my_charset_utf8mb3_general_mysql500_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_mysql500, /* caseinfo */ + &my_casefold_mysql500, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -5874,8 +1317,7 @@ struct charset_info_st my_charset_utf8mb3_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -5906,8 +1348,7 @@ struct charset_info_st my_charset_utf8mb3_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ + &my_casefold_default, /* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -5938,8 +1379,7 @@ struct charset_info_st my_charset_utf8mb3_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -5975,7 +1415,7 @@ static int my_strnncoll_utf8mb3_cs(CHARSET_INFO *cs, const uchar *te=t+tlen; int save_diff = 0; int diff; - MY_UNICASE_INFO *const *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *const *uni_plane= cs->casefold; while ( s < se && t < te ) { @@ -5994,8 +1434,8 @@ static int my_strnncoll_utf8mb3_cs(CHARSET_INFO *cs, save_diff = ((int)s_wc) - ((int)t_wc); } - my_tosort_unicode(uni_plane, &s_wc, cs->state); - my_tosort_unicode(uni_plane, &t_wc, cs->state); + my_tosort_unicode(uni_plane, &s_wc); + my_tosort_unicode(uni_plane, &t_wc); if ( s_wc != t_wc ) { @@ -6018,7 +1458,7 @@ static int my_strnncollsp_utf8mb3_cs(CHARSET_INFO *cs, const uchar *se= s + slen; const uchar *te= t + tlen; int save_diff= 0; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; while ( s < se && t < te ) { @@ -6036,8 +1476,8 @@ static int my_strnncollsp_utf8mb3_cs(CHARSET_INFO *cs, save_diff = ((int)s_wc) - ((int)t_wc); } - my_tosort_unicode(uni_plane, &s_wc, cs->state); - my_tosort_unicode(uni_plane, &t_wc, cs->state); + my_tosort_unicode(uni_plane, &s_wc); + my_tosort_unicode(uni_plane, &t_wc); if ( s_wc != t_wc ) { @@ -6102,8 +1542,7 @@ struct charset_info_st my_charset_utf8mb3_general_cs= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -7376,9 +2815,7 @@ my_wc_to_printable_filename(CHARSET_INFO *cs, my_wc_t wc, #define DEFINE_STRNXFRM_UNICODE #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_filename(cs, pwc, s, e) #define OPTIMIZE_ASCII 0 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_char_to_weight(x) /* #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) @@ -7461,8 +2898,7 @@ struct charset_info_st my_charset_filename= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -7678,30 +3114,6 @@ my_wc_mb_utf8mb4_no_range(CHARSET_INFO *cs __attribute__((unused)), } -static inline void -my_tolower_utf8mb4(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - if (*wc <= uni_plane->maxchar) - { - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8)])) - *wc= page[*wc & 0xFF].tolower; - } -} - - -static inline void -my_toupper_utf8mb4(MY_UNICASE_INFO *uni_plane, my_wc_t *wc) -{ - if (*wc <= uni_plane->maxchar) - { - MY_UNICASE_CHARACTER *page; - if ((page= uni_plane->page[(*wc >> 8)])) - *wc= page[*wc & 0xFF].toupper; - } -} - - static size_t my_caseup_utf8mb4(CHARSET_INFO *cs, const char *src, size_t srclen, char *dst, size_t dstlen) @@ -7710,14 +3122,14 @@ my_caseup_utf8mb4(CHARSET_INFO *cs, const char *src, size_t srclen, int srcres, dstres; const char *srcend= src + srclen; char *dstend= dst + dstlen, *dst0= dst; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(src != dst || cs->cset->caseup_multiply(cs) == 1); while ((src < srcend) && (srcres= my_mb_wc_utf8mb4(cs, &wc, (uchar *) src, (uchar*) srcend)) > 0) { - my_toupper_utf8mb4(uni_plane, &wc); + my_toupper_unicode(uni_plane, &wc); if ((dstres= my_wc_mb_utf8mb4(cs, wc, (uchar*) dst, (uchar*) dstend)) <= 0) break; src+= srcres; @@ -7734,12 +3146,12 @@ my_hash_sort_utf8mb4_nopad(CHARSET_INFO *cs, const uchar *s, size_t slen, my_wc_t wc; int res; const uchar *e= s + slen; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; register ulong m1= *nr1, m2= *nr2; while ((res= my_mb_wc_utf8mb4(cs, &wc, (uchar*) s, (uchar*) e)) > 0) { - my_tosort_unicode(uni_plane, &wc, cs->state); + my_tosort_unicode(uni_plane, &wc); MY_HASH_ADD_16(m1, m2, (uint) (wc & 0xFFFF)); if (wc > 0xFFFF) { @@ -7778,13 +3190,13 @@ my_caseup_str_utf8mb4(CHARSET_INFO *cs, char *src) my_wc_t wc; int srcres, dstres; char *dst= src, *dst0= src; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(cs->cset->caseup_multiply(cs) == 1); while (*src && (srcres= my_mb_wc_utf8mb4_no_range(cs, &wc, (uchar *) src)) > 0) { - my_toupper_utf8mb4(uni_plane, &wc); + my_toupper_unicode(uni_plane, &wc); if ((dstres= my_wc_mb_utf8mb4_no_range(cs, wc, (uchar*) dst)) <= 0) break; src+= srcres; @@ -7804,14 +3216,14 @@ my_casedn_utf8mb4(CHARSET_INFO *cs, int srcres, dstres; const char *srcend= src + srclen; char *dstend= dst + dstlen, *dst0= dst; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(src != dst || cs->cset->casedn_multiply(cs) == 1); while ((src < srcend) && (srcres= my_mb_wc_utf8mb4(cs, &wc, (uchar*) src, (uchar*) srcend)) > 0) { - my_tolower_utf8mb4(uni_plane, &wc); + my_tolower_unicode(uni_plane, &wc); if ((dstres= my_wc_mb_utf8mb4(cs, wc, (uchar*) dst, (uchar*) dstend)) <= 0) break; src+= srcres; @@ -7827,13 +3239,13 @@ my_casedn_str_utf8mb4(CHARSET_INFO *cs, char *src) my_wc_t wc; int srcres, dstres; char *dst= src, *dst0= src; - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; DBUG_ASSERT(cs->cset->casedn_multiply(cs) == 1); while (*src && (srcres= my_mb_wc_utf8mb4_no_range(cs, &wc, (uchar *) src)) > 0) { - my_tolower_utf8mb4(uni_plane, &wc); + my_tolower_unicode(uni_plane, &wc); if ((dstres= my_wc_mb_utf8mb4_no_range(cs, wc, (uchar*) dst)) <= 0) break; src+= srcres; @@ -7876,7 +3288,7 @@ my_casedn_str_utf8mb4(CHARSET_INFO *cs, char *src) static int my_strcasecmp_utf8mb4(CHARSET_INFO *cs, const char *s, const char *t) { - MY_UNICASE_INFO *uni_plane= cs->caseinfo; + MY_CASEFOLD_INFO *uni_plane= cs->casefold; while (s[0] && t[0]) { my_wc_t s_wc,t_wc; @@ -7888,7 +3300,7 @@ my_strcasecmp_utf8mb4(CHARSET_INFO *cs, const char *s, const char *t) It represents a single byte character. Convert it into weight according to collation. */ - s_wc= my_unicase_default_page00[(uchar) s[0]].tolower; + s_wc= my_u300_tolower_7bit((uchar) s[0]); s++; } else @@ -7903,7 +3315,7 @@ my_strcasecmp_utf8mb4(CHARSET_INFO *cs, const char *s, const char *t) return strcmp(s, t); s+= res; - my_tolower_utf8mb4(uni_plane, &s_wc); + my_tolower_unicode(uni_plane, &s_wc); } @@ -7912,7 +3324,7 @@ my_strcasecmp_utf8mb4(CHARSET_INFO *cs, const char *s, const char *t) if ((uchar) t[0] < 128) { /* Convert single byte character into weight */ - t_wc= my_unicase_default_page00[(uchar) t[0]].tolower; + t_wc= my_u300_tolower_7bit((uchar) t[0]); t++; } else @@ -7922,7 +3334,7 @@ my_strcasecmp_utf8mb4(CHARSET_INFO *cs, const char *s, const char *t) return strcmp(s, t); t+= res; - my_tolower_utf8mb4(uni_plane, &t_wc); + my_tolower_unicode(uni_plane, &t_wc); } /* Now we have two weights, let's compare them */ @@ -7940,7 +3352,7 @@ my_wildcmp_utf8mb4(CHARSET_INFO *cs, int escape, int w_one, int w_many) { return my_wildcmp_unicode(cs, str, strend, wildstr, wildend, - escape, w_one, w_many, cs->caseinfo); + escape, w_one, w_many, cs->casefold); } @@ -7987,9 +3399,7 @@ my_charlen_utf8mb4(CHARSET_INFO *cs __attribute__((unused)), #define DEFINE_STRNXFRM_UNICODE_NOPAD #define MY_MB_WC(cs, pwc, s, e) my_mb_wc_utf8mb4_quick(pwc, s, e) #define OPTIMIZE_ASCII 1 -#define UNICASE_MAXCHAR MY_UNICASE_INFO_DEFAULT_MAXCHAR -#define UNICASE_PAGE0 my_unicase_default_page00 -#define UNICASE_PAGES my_unicase_default_pages +#define MY_WC_WEIGHT(x) my_general_ci_char_to_weight(x) #define IS_MB4_CHAR(b0,b1,b2,b3) IS_UTF8MB4_STEP3(b0,b1,b2,b3) #define WEIGHT_ILSEQ(x) (0xFF0000 + (uchar) (x)) #define WEIGHT_MB1(b0) my_weight_mb1_utf8mb3_general_ci(b0) @@ -8175,8 +3585,7 @@ struct charset_info_st my_charset_utf8mb4_general_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -8208,8 +3617,7 @@ struct charset_info_st my_charset_utf8mb4_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -8241,8 +3649,7 @@ struct charset_info_st my_charset_utf8mb4_general_nopad_ci= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ @@ -8274,8 +3681,7 @@ struct charset_info_st my_charset_utf8mb4_nopad_bin= NULL, /* uca */ NULL, /* tab_to_uni */ NULL, /* tab_from_uni */ - NULL, /* casefold */ - &my_unicase_default,/* caseinfo */ + &my_casefold_default,/* casefold */ NULL, /* state_map */ NULL, /* ident_map */ 1, /* strxfrm_multiply */ diff --git a/strings/ctype-win1250ch.c b/strings/ctype-win1250ch.c index 86b7de97010..a908bdd2b95 100644 --- a/strings/ctype-win1250ch.c +++ b/strings/ctype-win1250ch.c @@ -711,7 +711,6 @@ struct charset_info_st my_charset_cp1250_czech_cs = tab_cp1250_uni, /* tab_to_uni */ idx_uni_cp1250, /* tab_from_uni */ NULL, /* casefold */ - &my_unicase_default, /* caseinfo */ NULL, /* state_map */ NULL, /* ident_map */ 2, /* strxfrm_multiply */ diff --git a/strings/strcoll.inl b/strings/strcoll.inl index ce220bebadb..a70009991df 100644 --- a/strings/strcoll.inl +++ b/strings/strcoll.inl @@ -490,16 +490,12 @@ MY_FUNCTION_NAME(strnxfrm)(CHARSET_INFO *cs, #error OPTIMIZE_ASCII must be defined for DEFINE_STRNXFRM_UNICODE #endif -#ifndef UNICASE_MAXCHAR -#error UNICASE_MAXCHAR must be defined for DEFINE_STRNXFRM_UNICODE +#if OPTIMIZE_ASCII && !defined(WEIGHT_MB1) +#error WEIGHT_MB1 must be defined for DEFINE_STRNXFRM_UNICODE #endif -#ifndef UNICASE_PAGE0 -#error UNICASE_PAGE0 must be defined for DEFINE_STRNXFRM_UNICODE -#endif - -#ifndef UNICASE_PAGES -#error UNICASE_PAGES must be defined for DEFINE_STRNXFRM_UNICODE +#ifndef MY_WC_WEIGHT +#error MY_WC_WEIGHT must be defined for DEFINE_STRNXFRM_UNICODE #endif @@ -514,7 +510,6 @@ MY_FUNCTION_NAME(strnxfrm_internal)(CHARSET_INFO *cs __attribute__((unused)), DBUG_ASSERT(src || !se); DBUG_ASSERT((cs->state & MY_CS_LOWER_SORT) == 0); - DBUG_ASSERT(0x7F <= UNICASE_MAXCHAR); for (; dst < de && *nweights; (*nweights)--) { @@ -524,7 +519,7 @@ MY_FUNCTION_NAME(strnxfrm_internal)(CHARSET_INFO *cs __attribute__((unused)), break; if (src[0] <= 0x7F) { - wc= UNICASE_PAGE0[*src++].sort; + wc= WEIGHT_MB1(*src++); PUT_WC_BE2_HAVE_1BYTE(dst, de, wc); continue; } @@ -532,14 +527,7 @@ MY_FUNCTION_NAME(strnxfrm_internal)(CHARSET_INFO *cs __attribute__((unused)), if ((res= MY_MB_WC(cs, &wc, src, se)) <= 0) break; src+= res; - if (wc <= UNICASE_MAXCHAR) - { - MY_UNICASE_CHARACTER *page; - if ((page= UNICASE_PAGES[wc >> 8])) - wc= page[wc & 0xFF].sort; - } - else - wc= MY_CS_REPLACEMENT_CHARACTER; + wc= MY_WC_WEIGHT(wc); PUT_WC_BE2_HAVE_1BYTE(dst, de, wc); } return dst - dst0; @@ -722,9 +710,7 @@ MY_FUNCTION_NAME(strnxfrm_nopad)(CHARSET_INFO *cs, #undef MY_FUNCTION_NAME #undef MY_MB_WC #undef OPTIMIZE_ASCII -#undef UNICASE_MAXCHAR -#undef UNICASE_PAGE0 -#undef UNICASE_PAGES +#undef MY_WC_WEIGHT #undef WEIGHT_ILSEQ #undef WEIGHT_MB1 #undef WEIGHT_MB2 diff --git a/strings/unidata-dump.c b/strings/unidata-dump.c new file mode 100644 index 00000000000..5ecc8cb0c8c --- /dev/null +++ b/strings/unidata-dump.c @@ -0,0 +1,1110 @@ +const char COPYING[]= "\ +/* Copyright (c) 2000, 2013, Oracle and/or its affiliates.\n\ + Copyright (c) 2009, 2023, MariaDB Corporation.\n\ +\n\ + This program is free software; you can redistribute it and/or modify\n\ + it under the terms of the GNU General Public License as published by\n\ + the Free Software Foundation; version 2 of the License.\n\ +\n\ + This program is distributed in the hope that it will be useful,\n\ + but WITHOUT ANY WARRANTY; without even the implied warranty of\n\ + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\ + GNU General Public License for more details.\n\ +\n\ + You should have received a copy of the GNU General Public License\n\ + along with this program; if not, write to the Free Software\n\ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA\n\ +*/\n"; + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#define MAX_UNI_CHAR 0x10FFFF +#define MAX_UNI_PAGE 0x10FF + +#define STRING_WITH_LEN(X) (X), ((size_t) (sizeof(X) - 1)) + + +typedef unsigned int my_wchar_t; + +/* Character types, as in m_ctype.h */ +#define _MY_U 01 /* Upper case */ +#define _MY_L 02 /* Lower case */ +#define _MY_NMR 04 /* Numeral (digit) */ +#define _MY_SPC 010 /* Spacing character */ +#define _MY_PNT 020 /* Punctuation */ +#define _MY_CTR 040 /* Control character */ +#define _MY_B 0100 /* Blank */ +#define _MY_X 0200 /* heXadecimal digit */ + +#define CT_MAX _MY_X +#define CT_CJK _MY_L | _MY_U +#define CT_HANGUL _MY_L | _MY_U +#define CT_NONE 0 + + +/* Decomposition types */ +typedef enum +{ + DT_UNKNOWN, + DT_FONT, + DT_NOBREAK, + DT_INITIAL, + DT_MEDIAL, + DT_FINAL, + DT_ISOLATED, + DT_CIRCLE, + DT_SUPER, + DT_SUB, + DT_VERTICAL, + DT_WIDE, + DT_NARROW, + DT_SMALL, + DT_SQUARE, + DT_FRACTION, + DT_COMPAT +} decomposition_type_t; + + +typedef enum +{ + PAGE_DATA_USELESS= 0, + PAGE_DATA_IMPORTANT= 1, + PAGE_DATA_DUMMY= 2 +} page_data_type_t; + + +typedef struct +{ + page_data_type_t page_tab; + int page_overridden; + int page_ctype; +} PAGE_STAT; + + +typedef struct +{ + const char *mode_name; + int print_ctype; + int print_toupper; + int print_tolower; + int print_noaccent; + int print_noaccent_tolower; + int print_noaccent_toupper; + int print_curly_brackets_in_items; + int print_curly_brackets_in_index; + int chars_per_line; + int single_array; + int pages_per_line_in_index; + int const_data; + const char *page_data_type_name; + const char *page_name; + const char *page_name_derived; + const char *index_data_type_name; + const char *index_name; +} UNIDATA_OPT_MODE; + + +typedef struct +{ + my_wchar_t max_char; + my_wchar_t dummy_pages_codepoint_max; + const char *filename; + UNIDATA_OPT_MODE mode; +} UNIDATA_OPT; + + +my_wchar_t npages_by_opt(const UNIDATA_OPT *opt) +{ + return (opt->max_char + 1) / 256; +} + + +typedef struct my_ctype_name_st +{ + const char *name; + int val; + int to_be_decomposed; +} MY_CTYPE_NAME_ST; + + +static MY_CTYPE_NAME_ST my_ctype_name[]= +{ + {"Lu", _MY_U, 1}, /* Letter, Uppercase */ + {"Ll", _MY_L, 1}, /* Letter, Lowercase */ + {"Lt", _MY_U, 1}, /* Letter, Titlecase */ + {"Lo", _MY_L, 1}, /* Letter, other */ + {"Lm", _MY_L, 0}, /* Letter, Modifier */ + + {"Nd", _MY_NMR, 0}, /* Number, Decimal Digit */ + {"Nl", _MY_NMR|_MY_U|_MY_L, 0}, /* Number, Letter */ + {"No", _MY_NMR|_MY_PNT, 0}, /* Number, Other */ + + {"Mn", _MY_L|_MY_PNT, 0}, /* Mark, Nonspacing */ + {"Mc", _MY_L|_MY_PNT, 1}, /* Mark, Spacing Combining */ + {"Me", _MY_L|_MY_PNT, 0}, /* Mark, Enclosing */ + + {"Pc", _MY_PNT, 0}, /* Punctuation, Connector */ + {"Pd", _MY_PNT, 0}, /* Punctuation, Dash */ + {"Ps", _MY_PNT, 0}, /* Punctuation, Open */ + {"Pe", _MY_PNT, 0}, /* Punctuation, Close */ + {"Pi", _MY_PNT, 0}, /* Punctuation, Initial quote */ + {"Pf", _MY_PNT, 0}, /* Punctuation, Final quote */ + {"Po", _MY_PNT, 0}, /* Punctuation, Other */ + + {"Sm", _MY_PNT, 0}, /* Symbol, Math */ + {"Sc", _MY_PNT, 0}, /* Symbol, Currency */ + {"Sk", _MY_PNT, 0}, /* Symbol, Modifier */ + {"So", _MY_PNT, 0}, /* Symbol, Other */ + + {"Zs", _MY_SPC, 0}, /* Separator, Space */ + {"Zl", _MY_SPC, 0}, /* Separator, Line */ + {"Zp", _MY_SPC, 0}, /* Separator, Paragraph */ + + {"Cc", _MY_CTR, 0}, /* Other, Control */ + {"Cf", _MY_CTR, 0}, /* Other, Format */ + {"Cs", _MY_CTR, 0}, /* Other, Surrogate */ + {"Co", _MY_CTR, 0}, /* Other, Private Use */ + {"Cn", _MY_CTR, 0}, /* Other, Not Assigned */ + {NULL, 0, 0} +}; + + +static const MY_CTYPE_NAME_ST * +ctype_name_st_find(my_wchar_t codepoint, const char *tok) +{ + MY_CTYPE_NAME_ST *p; + for (p= my_ctype_name; p->name; p++) + { + if (!strncasecmp(p->name, tok, 2)) + return p; + } + return NULL; +} + + +static int +ctype_name_st_to_num(const MY_CTYPE_NAME_ST *st, my_wchar_t codepoint) +{ + if ((codepoint >= 'a' && codepoint <= 'z') || + (codepoint >= 'A' && codepoint <= 'Z')) + return st->val | _MY_X; + return st->val; +} + + +static UNIDATA_OPT opt_caseinfo= +{ + 0x10FFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "caseinfo", /* mode name */ + 0, /* print_ctype */ + 1, /* print_toupper */ + 1, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 1, /* print_noaccent_toupper */ + 1, /* print_curly_brackets_in_items */ + 0, /* print_curly_brackets_in_index */ + 2, /* chars_per_line */ + 0, /* single_array */ + 8, /* pages_per_line_in_index */ + 0, /* const_data */ + "MY_UNICASE_CHARACTER", /* page_data_type_name */ + "plane", /* page_name */ + NULL, /* page_name_derived */ + "MY_UNICASE_CHARACTER *", /* index_data_type_name */ + "my_unicase_default_pages" /* index_name */ + } +}; + + +static UNIDATA_OPT opt_casefold= +{ + 0x10FFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "casefold", /* mode name */ + 0, /* print_ctype */ + 1, /* print_toupper */ + 1, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 0, /* print_noaccent_toupper */ + 1, /* print_curly_brackets_in_items */ + 0, /* print_curly_brackets_in_index */ + 2, /* chars_per_line */ + 0, /* single_array */ + 8, /* pages_per_line_in_index */ + 1, /* const_data */ + "MY_CASEFOLD_CHARACTER" , /* page_data_type_name */ + "page", /* page_name */ + NULL, /* page_name_derived */ + "MY_CASEFOLD_CHARACTER *", /* index_data_type_name */ + "my_casefold_default_pages" /* index_name */ + } +}; + + +static UNIDATA_OPT opt_casefold_tr= +{ + 0x10FFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "casefold-tr", /* mode name */ + 0, /* print_ctype */ + 1, /* print_toupper */ + 1, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 0, /* print_noaccent_toupper */ + 1, /* print_curly_brackets_in_items */ + 0, /* print_curly_brackets_in_index */ + 2, /* chars_per_line */ + 0, /* single_array */ + 8, /* pages_per_line_in_index */ + 1, /* const_data */ + "MY_CASEFOLD_CHARACTER" , /* page_data_type_name */ + "page_tr", /* page_name */ + "page", /* page_name_derived */ + "MY_CASEFOLD_CHARACTER *", /* index_data_type_name */ + "my_casefold_tr_pages" /* index_name */ + } +}; + + +static UNIDATA_OPT opt_weight_general_ci= +{ + 0xFFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "weight_general_ci", /* mode name */ + 0, /* print_ctype */ + 0, /* print_toupper */ + 0, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 1, /* print_noaccent_toupper */ + 0, /* print_curly_brackets_in_items */ + 0, /* print_curly_brackets_in_index */ + 8, /* chars_per_line */ + 0, /* single_array */ + 2, /* pages_per_line_in_index */ + 1, /* const_data */ + "uint16", /* page_data_type_name */ + "weight_general_ci_page", /* page_name */ + NULL, /* page_name_derived */ + "uint16 *", /* index_data_type_name */ + "weight_general_ci_index" /* index_name */ + } +}; + + +static UNIDATA_OPT opt_weight_general_mysql500_ci= +{ + 0xFFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "weight_general_mysql500_ci", /* mode name */ + 0, /* print_ctype */ + 0, /* print_toupper */ + 0, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 1, /* print_noaccent_toupper */ + 0, /* print_curly_brackets_in_items */ + 0, /* print_curly_brackets_in_index */ + 8, /* chars_per_line */ + 0, /* single_array */ + 2, /* pages_per_line_in_index */ + 1, /* const_data */ + "uint16", /* page_data_type_name */ + "weight_general_mysql500_ci_page", /* page_name */ + "weight_general_ci_page", /* page_name_derived */ + "uint16 *", /* index_data_type_name */ + "weight_general_mysql500_ci_index" /* index_name */ + } +}; + + +static UNIDATA_OPT opt_ctype= +{ + 0x10FFFF, /* max_char */ + 0x7FF, /* dummy_pages_codepoint_max == utf8 mb2 range */ + NULL, /*filename*/ + { + "ctype", /* mode name */ + 1, /* print_ctype */ + 0, /* print_toupper */ + 0, /* print_tolower */ + 0, /* print_noaccent */ + 0, /* print_noaccent_tolower */ + 0, /* print_noaccent_toupper */ + 0, /* print_curly_brackets_in_items */ + 1, /* print_curly_brackets_in_index */ + 16, /* chars_per_line */ + 0, /* single_array */ + 1, /* pages_per_line_in_index */ + 1, /* const_data */ + "unsigned char", /* page_data_type_name */ + "uctype_page", /* page_name */ + NULL, /* page_name_derived */ + "MY_UNI_CTYPE", /* index_data_type_name */ + "my_uni_ctype" /* index_name */ + } +}; + + +int opt_set_mode(UNIDATA_OPT *to, const char *name_and_value, const char *value) +{ + if (!strcmp(value, "casefold")) + { + to->mode= opt_casefold.mode; + return 0; + } + else if (!strcmp(value, "casefold-tr")) + { + to->mode= opt_casefold_tr.mode; + return 0; + } + else if (!strcmp(value, "caseinfo")) + { + to->mode= opt_caseinfo.mode; + return 0; + } + else if (!strcmp(value, "weight_general_ci")) + { + to->mode= opt_weight_general_ci.mode; + return 0; + } + else if (!strcmp(value, "weight_general_mysql500_ci")) + { + to->mode= opt_weight_general_mysql500_ci.mode; + return 0; + } + else if (!strcmp(value, "ctype")) + { + to->mode= opt_ctype.mode; + return 0; + } + fprintf(stderr, "Bad option: %s\n", name_and_value); + return 1; +} + + +static decomposition_type_t +get_decomposition_type(const char *str) +{ + if (!strcmp(str, "<font>")) return DT_FONT; + if (!strcmp(str, "<noBreak>")) return DT_NOBREAK; + if (!strcmp(str, "<initial>")) return DT_INITIAL; + if (!strcmp(str, "<medial>")) return DT_MEDIAL; + if (!strcmp(str, "<final>")) return DT_FINAL; + if (!strcmp(str, "<isolated>")) return DT_ISOLATED; + if (!strcmp(str, "<circle>")) return DT_CIRCLE; + if (!strcmp(str, "<super>")) return DT_SUPER; + if (!strcmp(str, "<sub>")) return DT_SUB; + if (!strcmp(str, "<vertical>")) return DT_VERTICAL; + if (!strcmp(str, "<wide>")) return DT_WIDE; + if (!strcmp(str, "<narrow>")) return DT_NARROW; + if (!strcmp(str, "<small>")) return DT_SMALL; + if (!strcmp(str, "<square>")) return DT_SQUARE; + if (!strcmp(str, "<fraction>")) return DT_FRACTION; + if (!strcmp(str, "<compat>")) return DT_COMPAT; + return DT_UNKNOWN; +} + + +#define MAX_DECOMP 20 + + +typedef struct +{ + int ctype; + int toupper; + int tolower; + int noaccent; + int noaccent_tolower; + int noaccent_toupper; + int decomp_type; + int decomp[MAX_DECOMP]; + int to_be_decomposed; +} UNIDATA_CHAR; + + + +/************* Initialization functions *********/ + + +static int +strip_accent(UNIDATA_CHAR *code, int i) +{ + if (code[i].decomp[0] && + code[i].decomp[1] >= 0x0300 && + code[i].decomp[1] <= 0x036F && + code[i].decomp[2] == 0) + return strip_accent(code, code[i].decomp[0]); + return i; +} + + +static void +set_noaccent(const UNIDATA_OPT *opt, UNIDATA_CHAR *code) +{ + my_wchar_t i; + for (i= 0; i <= opt->max_char; i++) + { + code[i].noaccent= strip_accent(code, i); + } +} + + +static void +set_noaccent_tolower(const UNIDATA_OPT *opt, UNIDATA_CHAR *code) +{ + my_wchar_t i; + for (i= 0; i <= opt->max_char; i++) + { + code[i].noaccent_tolower= code[code[i].noaccent].tolower; + } +} + + +static void +set_noaccent_toupper(const UNIDATA_OPT *opt, UNIDATA_CHAR *code) +{ + my_wchar_t i; + for (i= 0; i <= opt->max_char; i++) + { + code[i].noaccent_toupper= code[code[i].noaccent].toupper; + } +} + + +static void +set_default_case_folding(const UNIDATA_OPT *opt, UNIDATA_CHAR *code) +{ + my_wchar_t i; + for (i= 0; i <= opt->max_char; i++) + { + code[i].tolower= i; + code[i].toupper= i; + } +} + + +/* + Fill ideographs +*/ + +static void +fill_cjk(UNIDATA_CHAR *code) +{ + size_t i; + /* CJK Ideographs Extension A (U+3400 - U+4DB5) */ + for(i=0x3400;i<=0x4DB5;i++) + { + code[i].tolower=i; + code[i].ctype= CT_CJK; + } + /* CJK Ideographs (U+4E00 - U+9FA5) */ + for(i=0x4E00;i<=0x9FA5;i++) + { + code[i].tolower=i; + code[i].ctype= CT_CJK; + } + /* Hangul Syllables (U+AC00 - U+D7A3) */ + for(i=0xAC00;i<=0xD7A3;i++) + { + code[i].tolower=i; + code[i].ctype= CT_HANGUL; + } +} + + +/************* Loading functions ***************/ + + +static void handle_general_category(const UNIDATA_OPT *opt, + UNIDATA_CHAR *ch, + const char *tok, + my_wchar_t codepoint) +{ + /* + TODO: check if ctype is set correctly. + A difference can break fulltext indexes. + */ + + const MY_CTYPE_NAME_ST *ct= ctype_name_st_find( + (my_wchar_t) codepoint, tok); + if (ct) + { + ch->ctype|= ctype_name_st_to_num( + ct, + (my_wchar_t) codepoint); + ch->to_be_decomposed= ct->to_be_decomposed; + } +} + + +int handle_decomposition(UNIDATA_CHAR *ch, char *tok, const char *str) +{ + char *lt, *part; + size_t num; + + if (!ch->to_be_decomposed) + return 0; /* Decompose only letters */ + + for (part= strtok_r(tok, " ", <), num= 0; + part; + part= strtok_r(NULL, " ", <)) + { + char *end; + if (part[0] == '<') + { + if ((ch->decomp_type= get_decomposition_type(part)) == DT_UNKNOWN) + { + fprintf(stderr, "Unknown decomposition type:\n%s\n", str); + return 1; + } + continue; + } + + if (num + 1 >= MAX_DECOMP) + { + fprintf(stderr, "Too many decomposition parts:\n%s\n", str); + return 1; + } + ch->decomp[num]= strtol(part,&end,16); + ch->decomp[num+1]= 0; + num++; + } + return 0; +} + + +static int +parse_unidata_line(const UNIDATA_OPT *opt, char *str, UNIDATA_CHAR *unidata) +{ + unsigned long codepoint= 0; + int fieldno= 0; + char *s; + + for (s= str; *s; fieldno++) + { + char *tok= s, *e; + + if ((e= strchr(s,';'))) + { + *e= '\0'; + s= e + 1; + } + else + { + s+= strlen(s); + } + + switch (fieldno) + { + case 0: /* Code point */ + codepoint= strtoul(tok, NULL, 16); + if (codepoint > opt->max_char) + return 1; + break; + case 1: /* name */ + break; + case 2: /* general category */ + handle_general_category(opt, &unidata[codepoint], + tok, (my_wchar_t) codepoint); + break; + case 3: /* Canonical combining class */ + break; + case 4: /* BiDi class */ + break; + case 5: /* Decomposition type */ + if (tok[0] && handle_decomposition(&unidata[codepoint], tok, str)) + return -1; + break; + case 6: /* Numeric_Type, Numeric Value */ + break; + case 7: /* Numeric_Type, Numeric Value */ + break; + case 8: /* Numeric_Type, Numeric Value */ + break; + case 9: /* BiDi mirrored */ + break; + case 10: /* Unicode_1_Name */ + break; + case 11: /* ISO_Comment */ + break; + case 12: /*Simple_Uppercase_Mapping*/ + if (tok[0]) + unidata[codepoint].toupper= strtol(tok, NULL, 16); + break; + case 13: /*Simple_Lowercase_Mapping*/ + if (tok[0]) + unidata[codepoint].tolower= strtol(tok, NULL, 16); + break; + case 14: /* Simple_Titlecase_Mapping */ + break; + } + } + + return 0; +} + + +static int +load_unidata_file(const UNIDATA_OPT *opt, FILE *f, UNIDATA_CHAR *unidata) +{ + char str[1024]; + + while (fgets(str, sizeof(str), f)) + { + if (parse_unidata_line(opt, str, unidata) < 0) + return 1; + } + return 0; +} + + +static int +load_unidata(const UNIDATA_OPT *opt, UNIDATA_CHAR *unidata) +{ + FILE *f; + int rc; + if (!(f= fopen(opt->filename, "r"))) + { + fprintf(stderr, "Could not open file '%s'\n", opt->filename); + return 1; + } + rc= load_unidata_file(opt, f, unidata); + fclose(f); + return rc; +} + +/************** Printing functions ********************/ + +static void +print_one_char(const UNIDATA_OPT *opt, UNIDATA_CHAR *data, int code) +{ + UNIDATA_CHAR *ch= &data[code]; + const char *comma= ""; + + if (opt->mode.print_curly_brackets_in_items) + printf("{"); + + if (opt->mode.print_ctype) + { + printf("%s", comma); + printf("%3d", ch->ctype); + comma= ","; + } + + if (opt->mode.print_toupper) + { + printf("%s", comma); + printf("0x%04X", ch->toupper); + comma= ","; + } + + if (opt->mode.print_tolower) + { + printf("%s", comma); + printf("0x%04X", ch->tolower); + comma= ","; + } + + if (opt->mode.print_noaccent) + { + printf("%s", comma); + printf("0x%04X", ch->noaccent); + comma= ","; + } + + if (opt->mode.print_noaccent_tolower) + { + printf("%s", comma); + printf("0x%04X", ch->noaccent_tolower); + comma= ","; + } + + if (opt->mode.print_noaccent_toupper) + { + printf("%s", comma); + printf("0x%04X", ch->noaccent_toupper); + comma= ","; + } + + if (opt->mode.print_curly_brackets_in_items) + printf("}"); + + if (opt->mode.single_array || + (code & 0xFF) != 0xFF) /* Don't print comma for the last char in a page */ + printf(","); + else + printf(" "); +} + + +static void +print_one_page(const UNIDATA_OPT *opt, UNIDATA_CHAR *data, + my_wchar_t pageno, const PAGE_STAT *pstat) +{ + my_wchar_t charnum; + + if (!opt->mode.single_array || pageno == 0) + { + printf("%s%s%s %s%02X[256]={%s\n", + pageno == 0 ? "" : "static ", + opt->mode.const_data ? "const " : "", + opt->mode.page_data_type_name, opt->mode.page_name, + (unsigned int) pageno, + pstat[pageno].page_tab == PAGE_DATA_DUMMY ? + " /* This page is dummy */" : ""); + } + + for (charnum= 0; charnum < 256; charnum++) + { + my_wchar_t codepoint= (pageno << 8) + charnum; + my_wchar_t rem= charnum % opt->mode.chars_per_line; + if (!rem) + printf(" "); + print_one_char(opt, data, codepoint); + if (rem + 1 == opt->mode.chars_per_line) + { + printf(" /* %04X */", (codepoint + 1) - opt->mode.chars_per_line); + printf("\n"); + } + } + if (!opt->mode.single_array) + printf("};\n\n"); +} + + +static const char *page_name_in_index(const UNIDATA_OPT *opt, + const PAGE_STAT *pstat, + my_wchar_t pageno) +{ + if (!opt->mode.page_name_derived) + return opt->mode.page_name; + + return pstat[pageno].page_overridden ? + opt->mode.page_name : + opt->mode.page_name_derived; +} + + +static void print_page_index(const UNIDATA_OPT *opt, + const PAGE_STAT *pstat) +{ + my_wchar_t page; + my_wchar_t npages= npages_by_opt(opt); + int printing_ctype= !strcmp(opt->mode.index_data_type_name, "MY_UNI_CTYPE"); + + printf("%s%s %s[%d]={\n", + opt->mode.const_data ? "const " : "", + opt->mode.index_data_type_name, opt->mode.index_name, + (unsigned int) npages); + + for (page= 0; page < npages; page++) + { + my_wchar_t rem= page % opt->mode.pages_per_line_in_index; + if (!rem) + printf(" "); + if (opt->mode.print_curly_brackets_in_index) + printf("{"); + if (printing_ctype) + printf("%d,", pstat[page].page_ctype); + + if (pstat[page].page_tab) + printf("%s%02X", page_name_in_index(opt, pstat, page), page); + else + printf("NULL"); + + if (opt->mode.print_curly_brackets_in_index) + printf("}"); + + if (page + 1 < npages) + printf(","); + + if (rem + 1 == opt->mode.pages_per_line_in_index) + printf("\n"); + else + printf(" "); + } + printf("};\n"); +} + + +static void print(UNIDATA_OPT *opt, UNIDATA_CHAR *unidata, const PAGE_STAT *pstat) +{ + my_wchar_t npages= npages_by_opt(opt); + my_wchar_t page; + + /* Print all pages */ + for (page= 0; page < npages; page++) + { + if (opt->mode.page_name_derived && !pstat[page].page_overridden) + continue; + if (opt->mode.single_array || pstat[page].page_tab) + print_one_page(opt, unidata, page, pstat); + } + + /* Print index */ + if (!opt->mode.single_array) + print_page_index(opt, pstat); +} + + +void print_command_line_options(int ac, char **av) +{ + int i; + printf("/*\n"); + printf(" Generated by:\n"); + for (i= 0; i < ac; i++) + { + printf(" %s%s%s\n", i > 0 ? " " : "", av[i], i+1 < ac ? " \\" :""); + } + printf("\n"); + printf("*/\n"); +} + + +static void calc_page_parameters(const UNIDATA_OPT *opt, const UNIDATA_CHAR *code, + PAGE_STAT *pstat) +{ + my_wchar_t npages= npages_by_opt(opt); + my_wchar_t page; + for(page= 0; page < npages; page++) + { + int ntype[CT_MAX + 1], t; + int character, done=0; + + memset(ntype,0,sizeof(ntype)); + for(character= 0;character < 256; character++) + { + size_t cod= (page << 8) + character; + const UNIDATA_CHAR *ch= &code[cod]; + ntype[ch->ctype]++; + + if((ch->tolower != cod || + ch->toupper != cod || + ch->noaccent != cod || + ch->noaccent_toupper != cod) && + (opt->mode.print_tolower || + opt->mode.print_toupper || + opt->mode.print_noaccent || + opt->mode.print_noaccent_toupper)) + { + pstat[page].page_tab= PAGE_DATA_IMPORTANT; + } + } + + if (opt->mode.print_ctype) + { + for (t= 0; t <= CT_MAX; t++) + { + if(ntype[t]==256) + { + /* All ctypes are the same */ + pstat[page].page_ctype= t; + done=1; + break; + } + } + } + else + { + done= 1; /* Don't need ctype */ + } + + if(!done) + { + /* Mixed page, lets create the table */ + pstat[page].page_ctype= CT_NONE; + pstat[page].page_tab= PAGE_DATA_IMPORTANT; + } + if (!pstat[page].page_tab && + page <= (opt->dummy_pages_codepoint_max >> 8)) + pstat[page].page_tab= PAGE_DATA_DUMMY; + } +} + + +static UNIDATA_CHAR code[MAX_UNI_CHAR + 1]; +static PAGE_STAT pstat[MAX_UNI_PAGE + 1]; + + +int usage(int ac, char **av) +{ + fprintf(stderr, "Usage: %s filename\n", av[0]); + return 1; +} + + +const char *one_opt(const char *option, const char *name, size_t length) +{ + if (!strncmp(option, name, length)) + return option + length; + return 0; +} + + +int get_option_bool(int *to, const char *name_and_value, const char *value) +{ + if (!strcmp(value, "1")) + *to= 1; + else if (!strcmp(value, "0")) + *to= 0; + else + { + fprintf(stderr, "Bad option: %s\n", name_and_value); + return 1; + } + return 0; +} + + +int get_option_codepoint(my_wchar_t *to, const char *name_and_value, const char *value) +{ + unsigned long codepoint= value[0]=='0' && value[1]=='x' ? + strtoul(value + 2, NULL, 16) : + strtoul(value, NULL, 10); + if (codepoint > MAX_UNI_CHAR) + { + fprintf(stderr, "Too large --max-char: %s\n", name_and_value); + return 1; + } + *to= (my_wchar_t) codepoint; + return 0; +} + + +int process_param(UNIDATA_OPT *opt, int ac, char **av) +{ + int i; + if (ac < 2) + return usage(ac, av); + for (i= 1; i < ac; i++) + { + const char *op; + if ((op= one_opt(av[i], STRING_WITH_LEN("--mode=")))) + { + if (opt_set_mode(opt, av[i], op)) + return 1; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--max-char=")))) + { + if (get_option_codepoint(&opt->max_char, av[i], op)) + return 1; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--print-toupper=")))) + { + if (get_option_bool(&opt->mode.print_toupper, av[i], op)) + return 1; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--print-tolower=")))) + { + if (get_option_bool(&opt->mode.print_tolower, av[i], op)) + return 1; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--print-noaccent-toupper=")))) + { + if (get_option_bool(&opt->mode.print_noaccent_toupper, av[i], op)) + return 1; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--page-name=")))) + { + opt->mode.page_name= op; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--page-name-derived=")))) + { + opt->mode.page_name_derived= op; + } + else if ((op= one_opt(av[i], STRING_WITH_LEN("--index-name=")))) + { + opt->mode.index_name= op; + } + else + { + if (av[i][0] == '-' && av[i][1] == '-') + { + fprintf(stderr, "Unknown option: %s\n", av[i]); + return 1; + } + break; + } + } + if (i + 1 != ac) + return usage(ac, av); + opt->filename= av[i]; + return 0; +} + + +int main(int ac,char **av) +{ + UNIDATA_OPT opt= opt_caseinfo; + + if (process_param(&opt, ac, av)) + return 1; + + memset(code,0,sizeof(code)); + memset(pstat,0,sizeof(pstat)); + + set_default_case_folding(&opt, code); + + fill_cjk(code); + + if (load_unidata(&opt, code)) + return 1; + + set_noaccent(&opt, code); + set_noaccent_tolower(&opt, code); + set_noaccent_toupper(&opt, code); + + /* + Bug#8385: utf8_general_ci treats cyrillic letters I and SHORT I as the same + Because of decomposition applied, noaccent_toupper for the following letters: + U+0419 CYRILLIC CAPITAL LETTER SHORT I + U+0439 CYRILLIC SMALL LETTER SHORT I + was set to: + U+418 CYRILLIC CAPITAL LETTER I + Reset it back to U+0419. + */ + code[0x0419].noaccent_toupper= 0x0419; + code[0x0439].noaccent_toupper= 0x0419; + + /* + Bug#27877 incorrect german order in utf8_general_ci + */ + if (strcmp(opt.mode.mode_name, "weight_general_mysql500_ci")) + { + code[0x00DF].noaccent_toupper= code['s'].noaccent_toupper; + } + else + pstat[0].page_overridden= 1; + + if (!strcmp(opt.mode.mode_name, "casefold-tr")) + { + code[0x49].tolower= 0x0131; + code[0x69].toupper= 0x0130; + pstat[0].page_overridden= 1; + } + + calc_page_parameters(&opt, code, pstat); + + printf("%s\n", COPYING); + print_command_line_options(ac, av); + print(&opt, code, pstat); + + return 0; +} |