aboutsummaryrefslogtreecommitdiff
path: root/localedata/locales
diff options
context:
space:
mode:
Diffstat (limited to 'localedata/locales')
-rw-r--r--localedata/locales/am_ET551
-rw-r--r--localedata/locales/az_AZ201
-rw-r--r--localedata/locales/be_BY41
-rw-r--r--localedata/locales/ber_DZ173
-rw-r--r--localedata/locales/ber_MA42
-rw-r--r--localedata/locales/bg_BG290
-rw-r--r--localedata/locales/br_FR55
-rw-r--r--localedata/locales/br_FR@euro3
-rw-r--r--localedata/locales/ca_ES16
-rw-r--r--localedata/locales/cns11643_stroke9
-rw-r--r--localedata/locales/crh_UA111
-rw-r--r--localedata/locales/cs_CZ69
-rw-r--r--localedata/locales/csb_PL83
-rw-r--r--localedata/locales/cv_RU75
-rw-r--r--localedata/locales/cy_GB242
-rw-r--r--localedata/locales/da_DK110
-rw-r--r--localedata/locales/dz_BT2484
-rw-r--r--localedata/locales/en_CA8
-rw-r--r--localedata/locales/eo69
-rw-r--r--localedata/locales/es_CU3
-rw-r--r--localedata/locales/es_EC2
-rw-r--r--localedata/locales/es_ES49
-rw-r--r--localedata/locales/es_US56
-rw-r--r--localedata/locales/et_EE31
-rw-r--r--localedata/locales/fa_IR289
-rw-r--r--localedata/locales/fi_FI173
-rw-r--r--localedata/locales/fil_PH57
-rw-r--r--localedata/locales/fur_IT15
-rw-r--r--localedata/locales/gez_ER@abegede409
-rw-r--r--localedata/locales/ha_NG165
-rw-r--r--localedata/locales/hr_HR84
-rw-r--r--localedata/locales/hsb_DE64
-rw-r--r--localedata/locales/hu_HU298
-rw-r--r--localedata/locales/ig_NG453
-rw-r--r--localedata/locales/ik_CA153
-rw-r--r--localedata/locales/is_IS72
-rw-r--r--localedata/locales/iso14651_t1_common1
-rw-r--r--localedata/locales/iso14651_t1_pinyin9
-rw-r--r--localedata/locales/kk_KZ132
-rw-r--r--localedata/locales/ku_TR89
-rw-r--r--localedata/locales/ky_KG63
-rw-r--r--localedata/locales/ln_CD51
-rw-r--r--localedata/locales/lt_LT52
-rw-r--r--localedata/locales/lv_LV67
-rw-r--r--localedata/locales/mi_NZ43
-rw-r--r--localedata/locales/ml_IN158
-rw-r--r--localedata/locales/mn_MN34
-rw-r--r--localedata/locales/mr_IN76
-rw-r--r--localedata/locales/mt_MT144
-rw-r--r--localedata/locales/nan_TW@latin33
-rw-r--r--localedata/locales/nb_NO114
-rw-r--r--localedata/locales/om_KE122
-rw-r--r--localedata/locales/os_RU14
-rw-r--r--localedata/locales/pl_PL66
-rw-r--r--localedata/locales/ps_AF224
-rw-r--r--localedata/locales/ro_RO99
-rw-r--r--localedata/locales/ru_RU24
-rw-r--r--localedata/locales/ru_UA16
-rw-r--r--localedata/locales/sc_IT15
-rw-r--r--localedata/locales/se_NO298
-rw-r--r--localedata/locales/si_LK42
-rw-r--r--localedata/locales/sq_AL291
-rw-r--r--localedata/locales/sv_FI2
-rw-r--r--localedata/locales/sv_FI@euro2
-rw-r--r--localedata/locales/sv_SE109
-rw-r--r--localedata/locales/szl_PL86
-rw-r--r--localedata/locales/tg_TJ106
-rw-r--r--localedata/locales/ti_ER2
-rw-r--r--localedata/locales/tk_TM399
-rw-r--r--localedata/locales/tl_PH31
-rw-r--r--localedata/locales/tr_TR47
-rw-r--r--localedata/locales/tt_RU244
-rw-r--r--localedata/locales/tt_RU@iqtelif14
-rw-r--r--localedata/locales/ug_CN196
-rw-r--r--localedata/locales/uk_UA493
-rw-r--r--localedata/locales/uz_UZ127
-rw-r--r--localedata/locales/uz_UZ@cyrillic56
-rw-r--r--localedata/locales/vi_VN242
-rw-r--r--localedata/locales/yi_US125
-rw-r--r--localedata/locales/yo_NG365
80 files changed, 6449 insertions, 5479 deletions
diff --git a/localedata/locales/am_ET b/localedata/locales/am_ET
index 8d6dc7f463..e5fe88a4cd 100644
--- a/localedata/locales/am_ET
+++ b/localedata/locales/am_ET
@@ -58,536 +58,35 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_COLLATE
+
+% CLDR collation rules for Amharic:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/am.xml)
%
-% Copy the template from ISO/IEC 14651
-%
-copy "iso14651_t1"
-%
-% The ETHIOPIC script declaration must come first.
-%
-script <ETHIOPIC>
-%
-% Correcting Unicode's linguistic ordering to the traditional.
+% <!-- The root collation order is valid for this language. Just move the native script first. -->
+% <collations>
+% <collation type="standard"><cr><![CDATA[
+% [reorder Ethi]
+% ]]></cr></collation>
+% </collations>
%
-collating-symbol <HOY>
-collating-symbol <LAWI>
-collating-symbol <HAWT>
-collating-symbol <MAY>
-collating-symbol <SEWT>
-collating-symbol <RIS>
-collating-symbol <SAT>
-collating-symbol <SHA-SAT>
-collating-symbol <QAF>
-collating-symbol <QHA-QAF>
-collating-symbol <BET>
-collating-symbol <VE-BET>
-collating-symbol <TAW>
-collating-symbol <CHA-TAW>
-collating-symbol <HARM>
-collating-symbol <NEHAS>
-collating-symbol <NYE-NEHAS>
-collating-symbol <ALEF>
-collating-symbol <KAF>
-collating-symbol <KHA-KAF>
-collating-symbol <WEWE>
-collating-symbol <AYIN>
-collating-symbol <ZEY>
-collating-symbol <ZHE-ZEY>
-collating-symbol <YEMEN>
-collating-symbol <DINT>
-collating-symbol <DHI-DINT>
-collating-symbol <JI-DINT>
-collating-symbol <GEMEL>
-collating-symbol <NGE-GEMEL>
-collating-symbol <TEYT>
-collating-symbol <CHE-TEYT>
-collating-symbol <PEYT>
-collating-symbol <SEDEY>
-collating-symbol <SEPA>
-collating-symbol <AF>
-collating-symbol <PSA>
-
-collating-symbol <GE'EZ>
-collating-symbol <KA'IB>
-collating-symbol <SALIS>
-collating-symbol <RABI>
-collating-symbol <HAMIS>
-collating-symbol <SADIS>
-collating-symbol <SABI>
-collating-symbol <YA>
-
-collating-symbol <QELAL>
-collating-symbol <ZEMEDE>
-
-collating-symbol <NUMERALS>
-collating-symbol <AHADU>
-collating-symbol <KILEITU>
-collating-symbol <SELESTU>
-collating-symbol <ARBAITU>
-collating-symbol <HAMISTU>
-collating-symbol <SIDISTU>
-collating-symbol <SEBATU>
-collating-symbol <SEMENTU>
-collating-symbol <TESATU>
-collating-symbol <ASERTU>
-collating-symbol <ISRA>
-collating-symbol <SELASA>
-collating-symbol <ARBA>
-collating-symbol <HAMSA>
-collating-symbol <SISA>
-collating-symbol <SEBA>
-collating-symbol <SEMANYA>
-collating-symbol <TESA>
-collating-symbol <MEET>
-collating-symbol <ILF>
-
-collating-symbol <PUNCTUATION>
-collating-symbol <NEUS-NETEB>
-collating-symbol <EBIY-NETEB>
-collating-symbol <NETELA-SEREZ>
-collating-symbol <NEUS-SEREZ>
-collating-symbol <ASTEAMRO>
-collating-symbol <EBIY-SEREZ>
-collating-symbol <SELESTE-NETEB>
-collating-symbol <SEBATE-NETEB>
-
-<HOY>
-<LAWI>
-<HAWT>
-<MAY>
-<SEWT>
-<RIS>
-<SAT>
-<SHA-SAT>
-<QAF>
-<QHA-QAF>
-<BET>
-<VE-BET>
-<TAW>
-<CHA-TAW>
-<HARM>
-<NEHAS>
-<NYE-NEHAS>
-<ALEF>
-<KAF>
-<KHA-KAF>
-<WEWE>
-<AYIN>
-<ZEY>
-<ZHE-ZEY>
-<YEMEN>
-<DINT>
-<DHI-DINT>
-<JI-DINT>
-<GEMEL>
-<NGE-GEMEL>
-<TEYT>
-<CHE-TEYT>
-<PEYT>
-<SEDEY>
-<SEPA>
-<AF>
-<PSA>
-
-<GE'EZ>
-<KA'IB>
-<SALIS>
-<RABI>
-<HAMIS>
-<SADIS>
-<SABI>
-
-<QELAL>
-<ZEMEDE>
-<YA>
-
-<NUMERALS>
-<PUNCTUATION>
-
-<AHADU>
-<KILEITU>
-<SELESTU>
-<ARBAITU>
-<HAMISTU>
-<SIDISTU>
-<SEBATU>
-<SEMENTU>
-<TESATU>
-<ASERTU>
-<ISRA>
-<SELASA>
-<ARBA>
-<HAMSA>
-<SISA>
-<SEBA>
-<SEMANYA>
-<TESA>
-<MEET>
-<ILF>
-
-<NEUS-NETEB>
-<NETELA-SEREZ>
-<NEUS-SEREZ>
-<EBIY-SEREZ>
-<ASTEAMRO>
-<EBIY-NETEB>
-<SELESTE-NETEB>
-<SEBATE-NETEB>
-
-order_start <ETHIOPIC>;forward;forward;forward;forward,position
-<U1200> <HOY>;<QELAL>;<GE'EZ>;IGNORE
-<U1201> <HOY>;<QELAL>;<KA'IB>;IGNORE
-<U1202> <HOY>;<QELAL>;<SALIS>;IGNORE
-<U1203> <HOY>;<QELAL>;<RABI>;IGNORE
-<U1204> <HOY>;<QELAL>;<HAMIS>;IGNORE
-<U1205> <HOY>;<QELAL>;<SADIS>;IGNORE
-<U1206> <HOY>;<QELAL>;<SABI>;IGNORE
-<U1208> <LAWI>;<QELAL>;<GE'EZ>;IGNORE
-<U1209> <LAWI>;<QELAL>;<KA'IB>;IGNORE
-<U120A> <LAWI>;<QELAL>;<SALIS>;IGNORE
-<U120B> <LAWI>;<QELAL>;<RABI>;IGNORE
-<U120C> <LAWI>;<QELAL>;<HAMIS>;IGNORE
-<U120D> <LAWI>;<QELAL>;<SADIS>;IGNORE
-<U120E> <LAWI>;<QELAL>;<SABI>;IGNORE
-<U120F> <LAWI>;<ZEMEDE>;<RABI>;IGNORE
-<U1210> <HAWT>;<QELAL>;<GE'EZ>;IGNORE
-<U1211> <HAWT>;<QELAL>;<KA'IB>;IGNORE
-<U1212> <HAWT>;<QELAL>;<SALIS>;IGNORE
-<U1213> <HAWT>;<QELAL>;<RABI>;IGNORE
-<U1214> <HAWT>;<QELAL>;<HAMIS>;IGNORE
-<U1215> <HAWT>;<QELAL>;<SADIS>;IGNORE
-<U1216> <HAWT>;<QELAL>;<SABI>;IGNORE
-<U1217> <HAWT>;<ZEMEDE>;<RABI>;IGNORE
-<U1218> <MAY>;<QELAL>;<GE'EZ>;IGNORE
-<U1219> <MAY>;<QELAL>;<KA'IB>;IGNORE
-<U121A> <MAY>;<QELAL>;<SALIS>;IGNORE
-<U121B> <MAY>;<QELAL>;<RABI>;IGNORE
-<U121C> <MAY>;<QELAL>;<HAMIS>;IGNORE
-<U121D> <MAY>;<QELAL>;<SADIS>;IGNORE
-<U121E> <MAY>;<QELAL>;<SABI>;IGNORE
-<U121F> <MAY>;<ZEMEDE>;<RABI>;IGNORE
-<U1220> <SEWT>;<QELAL>;<GE'EZ>;IGNORE
-<U1221> <SEWT>;<QELAL>;<KA'IB>;IGNORE
-<U1222> <SEWT>;<QELAL>;<SALIS>;IGNORE
-<U1223> <SEWT>;<QELAL>;<RABI>;IGNORE
-<U1224> <SEWT>;<QELAL>;<HAMIS>;IGNORE
-<U1225> <SEWT>;<QELAL>;<SADIS>;IGNORE
-<U1226> <SEWT>;<QELAL>;<SABI>;IGNORE
-<U1227> <SEWT>;<ZEMEDE>;<RABI>;IGNORE
-<U1228> <RIS>;<QELAL>;<GE'EZ>;IGNORE
-<U1229> <RIS>;<QELAL>;<KA'IB>;IGNORE
-<U122A> <RIS>;<QELAL>;<SALIS>;IGNORE
-<U122B> <RIS>;<QELAL>;<RABI>;IGNORE
-<U122C> <RIS>;<QELAL>;<HAMIS>;IGNORE
-<U122D> <RIS>;<QELAL>;<SADIS>;IGNORE
-<U122E> <RIS>;<QELAL>;<SABI>;IGNORE
-<U122F> <RIS>;<ZEMEDE>;<RABI>;IGNORE
-<U1230> <SAT>;<QELAL>;<GE'EZ>;IGNORE
-<U1231> <SAT>;<QELAL>;<KA'IB>;IGNORE
-<U1232> <SAT>;<QELAL>;<SALIS>;IGNORE
-<U1233> <SAT>;<QELAL>;<RABI>;IGNORE
-<U1234> <SAT>;<QELAL>;<HAMIS>;IGNORE
-<U1235> <SAT>;<QELAL>;<SADIS>;IGNORE
-<U1236> <SAT>;<QELAL>;<SABI>;IGNORE
-<U1237> <SAT>;<ZEMEDE>;<RABI>;IGNORE
-<U1238> <SHA-SAT>;<QELAL>;<GE'EZ>;IGNORE
-<U1239> <SHA-SAT>;<QELAL>;<KA'IB>;IGNORE
-<U123A> <SHA-SAT>;<QELAL>;<SALIS>;IGNORE
-<U123B> <SHA-SAT>;<QELAL>;<RABI>;IGNORE
-<U123C> <SHA-SAT>;<QELAL>;<HAMIS>;IGNORE
-<U123D> <SHA-SAT>;<QELAL>;<SADIS>;IGNORE
-<U123E> <SHA-SAT>;<QELAL>;<SABI>;IGNORE
-<U123F> <SHA-SAT>;<ZEMEDE>;<RABI>;IGNORE
-<U1240> <QAF>;<QELAL>;<GE'EZ>;IGNORE
-<U1241> <QAF>;<QELAL>;<KA'IB>;IGNORE
-<U1242> <QAF>;<QELAL>;<SALIS>;IGNORE
-<U1243> <QAF>;<QELAL>;<RABI>;IGNORE
-<U1244> <QAF>;<QELAL>;<HAMIS>;IGNORE
-<U1245> <QAF>;<QELAL>;<SADIS>;IGNORE
-<U1246> <QAF>;<QELAL>;<SABI>;IGNORE
-<U1248> <QAF>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U124A> <QAF>;<ZEMEDE>;<SALIS>;IGNORE
-<U124B> <QAF>;<ZEMEDE>;<RABI>;IGNORE
-<U124C> <QAF>;<ZEMEDE>;<HAMIS>;IGNORE
-<U124D> <QAF>;<ZEMEDE>;<KA'IB>;IGNORE
-<U1250> <QHA-QAF>;<QELAL>;<GE'EZ>;IGNORE
-<U1251> <QHA-QAF>;<QELAL>;<KA'IB>;IGNORE
-<U1252> <QHA-QAF>;<QELAL>;<SALIS>;IGNORE
-<U1253> <QHA-QAF>;<QELAL>;<RABI>;IGNORE
-<U1254> <QHA-QAF>;<QELAL>;<HAMIS>;IGNORE
-<U1255> <QHA-QAF>;<QELAL>;<SADIS>;IGNORE
-<U1256> <QHA-QAF>;<QELAL>;<SABI>;IGNORE
-<U1258> <QHA-QAF>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U125A> <QHA-QAF>;<ZEMEDE>;<SALIS>;IGNORE
-<U125B> <QHA-QAF>;<ZEMEDE>;<RABI>;IGNORE
-<U125C> <QHA-QAF>;<ZEMEDE>;<HAMIS>;IGNORE
-<U125D> <QHA-QAF>;<ZEMEDE>;<KA'IB>;IGNORE
-<U1260> <BET>;<QELAL>;<GE'EZ>;IGNORE
-<U1261> <BET>;<QELAL>;<KA'IB>;IGNORE
-<U1262> <BET>;<QELAL>;<SALIS>;IGNORE
-<U1263> <BET>;<QELAL>;<RABI>;IGNORE
-<U1264> <BET>;<QELAL>;<HAMIS>;IGNORE
-<U1265> <BET>;<QELAL>;<SADIS>;IGNORE
-<U1266> <BET>;<QELAL>;<SABI>;IGNORE
-<U1267> <BET>;<ZEMEDE>;<RABI>;IGNORE
-<U1268> <VE-BET>;<QELAL>;<GE'EZ>;IGNORE
-<U1269> <VE-BET>;<QELAL>;<KA'IB>;IGNORE
-<U126A> <VE-BET>;<QELAL>;<SALIS>;IGNORE
-<U126B> <VE-BET>;<QELAL>;<RABI>;IGNORE
-<U126C> <VE-BET>;<QELAL>;<HAMIS>;IGNORE
-<U126D> <VE-BET>;<QELAL>;<SADIS>;IGNORE
-<U126E> <VE-BET>;<QELAL>;<SABI>;IGNORE
-<U126F> <VE-BET>;<ZEMEDE>;<RABI>;IGNORE
-<U1270> <TAW>;<QELAL>;<GE'EZ>;IGNORE
-<U1271> <TAW>;<QELAL>;<KA'IB>;IGNORE
-<U1272> <TAW>;<QELAL>;<SALIS>;IGNORE
-<U1273> <TAW>;<QELAL>;<RABI>;IGNORE
-<U1274> <TAW>;<QELAL>;<HAMIS>;IGNORE
-<U1275> <TAW>;<QELAL>;<SADIS>;IGNORE
-<U1276> <TAW>;<QELAL>;<SABI>;IGNORE
-<U1277> <TAW>;<ZEMEDE>;<RABI>;IGNORE
-<U1278> <CHA-TAW>;<QELAL>;<GE'EZ>;IGNORE
-<U1279> <CHA-TAW>;<QELAL>;<KA'IB>;IGNORE
-<U127A> <CHA-TAW>;<QELAL>;<SALIS>;IGNORE
-<U127B> <CHA-TAW>;<QELAL>;<RABI>;IGNORE
-<U127C> <CHA-TAW>;<QELAL>;<HAMIS>;IGNORE
-<U127D> <CHA-TAW>;<QELAL>;<SADIS>;IGNORE
-<U127E> <CHA-TAW>;<QELAL>;<SABI>;IGNORE
-<U127F> <CHA-TAW>;<QELAL>;<TAW>;IGNORE
-<U1280> <HARM>;<QELAL>;<GE'EZ>;IGNORE
-<U1281> <HARM>;<QELAL>;<KA'IB>;IGNORE
-<U1282> <HARM>;<QELAL>;<SALIS>;IGNORE
-<U1283> <HARM>;<QELAL>;<RABI>;IGNORE
-<U1284> <HARM>;<QELAL>;<HAMIS>;IGNORE
-<U1285> <HARM>;<QELAL>;<SADIS>;IGNORE
-<U1286> <HARM>;<QELAL>;<SABI>;IGNORE
-<U1288> <HARM>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U128A> <HARM>;<ZEMEDE>;<SALIS>;IGNORE
-<U128B> <HARM>;<ZEMEDE>;<RABI>;IGNORE
-<U128C> <HARM>;<ZEMEDE>;<HAMIS>;IGNORE
-<U128D> <HARM>;<ZEMEDE>;<KA'IB>;IGNORE
-<U1290> <NEHAS>;<QELAL>;<GE'EZ>;IGNORE
-<U1291> <NEHAS>;<QELAL>;<KA'IB>;IGNORE
-<U1292> <NEHAS>;<QELAL>;<SALIS>;IGNORE
-<U1293> <NEHAS>;<QELAL>;<RABI>;IGNORE
-<U1294> <NEHAS>;<QELAL>;<HAMIS>;IGNORE
-<U1295> <NEHAS>;<QELAL>;<SADIS>;IGNORE
-<U1296> <NEHAS>;<QELAL>;<SABI>;IGNORE
-<U1297> <NEHAS>;<ZEMEDE>;<RABI>;IGNORE
-<U1298> <NYE-NEHAS>;<QELAL>;<GE'EZ>;IGNORE
-<U1299> <NYE-NEHAS>;<QELAL>;<KA'IB>;IGNORE
-<U129A> <NYE-NEHAS>;<QELAL>;<SALIS>;IGNORE
-<U129B> <NYE-NEHAS>;<QELAL>;<RABI>;IGNORE
-<U129C> <NYE-NEHAS>;<QELAL>;<HAMIS>;IGNORE
-<U129D> <NYE-NEHAS>;<QELAL>;<SADIS>;IGNORE
-<U129E> <NYE-NEHAS>;<QELAL>;<SABI>;IGNORE
-<U129F> <NYE-NEHAS>;<ZEMEDE>;<RABI>;IGNORE
-<U12A0> <ALEF>;<QELAL>;<GE'EZ>;IGNORE
-<U12A1> <ALEF>;<QELAL>;<KA'IB>;IGNORE
-<U12A2> <ALEF>;<QELAL>;<SALIS>;IGNORE
-<U12A3> <ALEF>;<QELAL>;<RABI>;IGNORE
-<U12A4> <ALEF>;<QELAL>;<HAMIS>;IGNORE
-<U12A5> <ALEF>;<QELAL>;<SADIS>;IGNORE
-<U12A6> <ALEF>;<QELAL>;<SABI>;IGNORE
-<U12A7> <ALEF>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U12A8> <KAF>;<QELAL>;<GE'EZ>;IGNORE
-<U12A9> <KAF>;<QELAL>;<KA'IB>;IGNORE
-<U12AA> <KAF>;<QELAL>;<SALIS>;IGNORE
-<U12AB> <KAF>;<QELAL>;<RABI>;IGNORE
-<U12AC> <KAF>;<QELAL>;<HAMIS>;IGNORE
-<U12AD> <KAF>;<QELAL>;<SADIS>;IGNORE
-<U12AE> <KAF>;<QELAL>;<SABI>;IGNORE
-<U12B0> <KAF>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U12B2> <KAF>;<ZEMEDE>;<SALIS>;IGNORE
-<U12B3> <KAF>;<ZEMEDE>;<RABI>;IGNORE
-<U12B4> <KAF>;<ZEMEDE>;<HAMIS>;IGNORE
-<U12B5> <KAF>;<ZEMEDE>;<KA'IB>;IGNORE
-<U12B8> <KHA-KAF>;<QELAL>;<GE'EZ>;IGNORE
-<U12B9> <KHA-KAF>;<QELAL>;<KA'IB>;IGNORE
-<U12BA> <KHA-KAF>;<QELAL>;<SALIS>;IGNORE
-<U12BB> <KHA-KAF>;<QELAL>;<RABI>;IGNORE
-<U12BC> <KHA-KAF>;<QELAL>;<HAMIS>;IGNORE
-<U12BD> <KHA-KAF>;<QELAL>;<SADIS>;IGNORE
-<U12BE> <KHA-KAF>;<QELAL>;<SABI>;IGNORE
-<U12C0> <KHA-KAF>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U12C2> <KHA-KAF>;<ZEMEDE>;<SALIS>;IGNORE
-<U12C3> <KHA-KAF>;<ZEMEDE>;<RABI>;IGNORE
-<U12C4> <KHA-KAF>;<ZEMEDE>;<HAMIS>;IGNORE
-<U12C5> <KHA-KAF>;<ZEMEDE>;<KA'IB>;IGNORE
-<U12C8> <WEWE>;<QELAL>;<GE'EZ>;IGNORE
-<U12C9> <WEWE>;<QELAL>;<KA'IB>;IGNORE
-<U12CA> <WEWE>;<QELAL>;<SALIS>;IGNORE
-<U12CB> <WEWE>;<QELAL>;<RABI>;IGNORE
-<U12CC> <WEWE>;<QELAL>;<HAMIS>;IGNORE
-<U12CD> <WEWE>;<QELAL>;<SADIS>;IGNORE
-<U12CE> <WEWE>;<QELAL>;<SABI>;IGNORE
-<U12D0> <AYIN>;<QELAL>;<GE'EZ>;IGNORE
-<U12D1> <AYIN>;<QELAL>;<KA'IB>;IGNORE
-<U12D2> <AYIN>;<QELAL>;<SALIS>;IGNORE
-<U12D3> <AYIN>;<QELAL>;<RABI>;IGNORE
-<U12D4> <AYIN>;<QELAL>;<HAMIS>;IGNORE
-<U12D5> <AYIN>;<QELAL>;<SADIS>;IGNORE
-<U12D6> <AYIN>;<QELAL>;<SABI>;IGNORE
-<U12D8> <ZEY>;<QELAL>;<GE'EZ>;IGNORE
-<U12D9> <ZEY>;<QELAL>;<KA'IB>;IGNORE
-<U12DA> <ZEY>;<QELAL>;<SALIS>;IGNORE
-<U12DB> <ZEY>;<QELAL>;<RABI>;IGNORE
-<U12DC> <ZEY>;<QELAL>;<HAMIS>;IGNORE
-<U12DD> <ZEY>;<QELAL>;<SADIS>;IGNORE
-<U12DE> <ZEY>;<QELAL>;<SABI>;IGNORE
-<U12DF> <ZEY>;<ZEMEDE>;<RABI>;IGNORE
-<U12E0> <ZHE-ZEY>;<QELAL>;<GE'EZ>;IGNORE
-<U12E1> <ZHE-ZEY>;<QELAL>;<KA'IB>;IGNORE
-<U12E2> <ZHE-ZEY>;<QELAL>;<SALIS>;IGNORE
-<U12E3> <ZHE-ZEY>;<QELAL>;<RABI>;IGNORE
-<U12E4> <ZHE-ZEY>;<QELAL>;<HAMIS>;IGNORE
-<U12E5> <ZHE-ZEY>;<QELAL>;<SADIS>;IGNORE
-<U12E6> <ZHE-ZEY>;<QELAL>;<SABI>;IGNORE
-<U12E7> <ZHE-ZEY>;<ZEMEDE>;<RABI>;IGNORE
-<U12E8> <YEMEN>;<QELAL>;<GE'EZ>;IGNORE
-<U12E9> <YEMEN>;<QELAL>;<KA'IB>;IGNORE
-<U12EA> <YEMEN>;<QELAL>;<SALIS>;IGNORE
-<U12EB> <YEMEN>;<QELAL>;<RABI>;IGNORE
-<U12EC> <YEMEN>;<QELAL>;<HAMIS>;IGNORE
-<U12ED> <YEMEN>;<QELAL>;<SADIS>;IGNORE
-<U12EE> <YEMEN>;<QELAL>;<SABI>;IGNORE
-<U12F0> <DINT>;<QELAL>;<GE'EZ>;IGNORE
-<U12F1> <DINT>;<QELAL>;<KA'IB>;IGNORE
-<U12F2> <DINT>;<QELAL>;<SALIS>;IGNORE
-<U12F3> <DINT>;<QELAL>;<RABI>;IGNORE
-<U12F4> <DINT>;<QELAL>;<HAMIS>;IGNORE
-<U12F5> <DINT>;<QELAL>;<SADIS>;IGNORE
-<U12F6> <DINT>;<QELAL>;<SABI>;IGNORE
-<U12F7> <DINT>;<ZEMEDE>;<RABI>;IGNORE
-<U12F8> <DHI-DINT>;<QELAL>;<GE'EZ>;IGNORE
-<U12F9> <DHI-DINT>;<QELAL>;<KA'IB>;IGNORE
-<U12FA> <DHI-DINT>;<QELAL>;<SALIS>;IGNORE
-<U12FB> <DHI-DINT>;<QELAL>;<RABI>;IGNORE
-<U12FC> <DHI-DINT>;<QELAL>;<HAMIS>;IGNORE
-<U12FD> <DHI-DINT>;<QELAL>;<SADIS>;IGNORE
-<U12FE> <DHI-DINT>;<QELAL>;<SABI>;IGNORE
-<U12FF> <DHI-DINT>;<ZEMEDE>;<RABI>;IGNORE
-<U1300> <JI-DINT>;<QELAL>;<GE'EZ>;IGNORE
-<U1301> <JI-DINT>;<QELAL>;<KA'IB>;IGNORE
-<U1302> <JI-DINT>;<QELAL>;<SALIS>;IGNORE
-<U1303> <JI-DINT>;<QELAL>;<RABI>;IGNORE
-<U1304> <JI-DINT>;<QELAL>;<HAMIS>;IGNORE
-<U1305> <JI-DINT>;<QELAL>;<SADIS>;IGNORE
-<U1306> <JI-DINT>;<QELAL>;<SABI>;IGNORE
-<U1307> <JI-DINT>;<ZEMEDE>;<RABI>;IGNORE
-<U1308> <GEMEL>;<QELAL>;<GE'EZ>;IGNORE
-<U1309> <GEMEL>;<QELAL>;<KA'IB>;IGNORE
-<U130A> <GEMEL>;<QELAL>;<SALIS>;IGNORE
-<U130B> <GEMEL>;<QELAL>;<RABI>;IGNORE
-<U130C> <GEMEL>;<QELAL>;<HAMIS>;IGNORE
-<U130D> <GEMEL>;<QELAL>;<SADIS>;IGNORE
-<U130E> <GEMEL>;<QELAL>;<SABI>;IGNORE
-<U1310> <GEMEL>;<ZEMEDE>;<GE'EZ>;IGNORE
-<U1312> <GEMEL>;<ZEMEDE>;<SALIS>;IGNORE
-<U1313> <GEMEL>;<ZEMEDE>;<RABI>;IGNORE
-<U1314> <GEMEL>;<ZEMEDE>;<HAMIS>;IGNORE
-<U1315> <GEMEL>;<ZEMEDE>;<KA'IB>;IGNORE
-<U1318> <NGE-GEMEL>;<QELAL>;<GE'EZ>;IGNORE
-<U1319> <NGE-GEMEL>;<QELAL>;<KA'IB>;IGNORE
-<U131A> <NGE-GEMEL>;<QELAL>;<SALIS>;IGNORE
-<U131B> <NGE-GEMEL>;<QELAL>;<RABI>;IGNORE
-<U131C> <NGE-GEMEL>;<QELAL>;<HAMIS>;IGNORE
-<U131D> <NGE-GEMEL>;<QELAL>;<SADIS>;IGNORE
-<U131E> <NGE-GEMEL>;<QELAL>;<SABI>;IGNORE
-<U1320> <TEYT>;<QELAL>;<GE'EZ>;IGNORE
-<U1321> <TEYT>;<QELAL>;<KA'IB>;IGNORE
-<U1322> <TEYT>;<QELAL>;<SALIS>;IGNORE
-<U1323> <TEYT>;<QELAL>;<RABI>;IGNORE
-<U1324> <TEYT>;<QELAL>;<HAMIS>;IGNORE
-<U1325> <TEYT>;<QELAL>;<SADIS>;IGNORE
-<U1326> <TEYT>;<QELAL>;<SABI>;IGNORE
-<U1327> <TEYT>;<ZEMEDE>;<RABI>;IGNORE
-<U1328> <CHE-TEYT>;<QELAL>;<GE'EZ>;IGNORE
-<U1329> <CHE-TEYT>;<QELAL>;<KA'IB>;IGNORE
-<U132A> <CHE-TEYT>;<QELAL>;<SALIS>;IGNORE
-<U132B> <CHE-TEYT>;<QELAL>;<RABI>;IGNORE
-<U132C> <CHE-TEYT>;<QELAL>;<HAMIS>;IGNORE
-<U132D> <CHE-TEYT>;<QELAL>;<SADIS>;IGNORE
-<U132E> <CHE-TEYT>;<QELAL>;<SABI>;IGNORE
-<U132F> <CHE-TEYT>;<ZEMEDE>;<RABI>;IGNORE
-<U1330> <PEYT>;<QELAL>;<GE'EZ>;IGNORE
-<U1331> <PEYT>;<QELAL>;<KA'IB>;IGNORE
-<U1332> <PEYT>;<QELAL>;<SALIS>;IGNORE
-<U1333> <PEYT>;<QELAL>;<RABI>;IGNORE
-<U1334> <PEYT>;<QELAL>;<HAMIS>;IGNORE
-<U1335> <PEYT>;<QELAL>;<SADIS>;IGNORE
-<U1336> <PEYT>;<QELAL>;<SABI>;IGNORE
-<U1337> <PEYT>;<ZEMEDE>;<RABI>;IGNORE
-<U1338> <SEDEY>;<QELAL>;<GE'EZ>;IGNORE
-<U1339> <SEDEY>;<QELAL>;<KA'IB>;IGNORE
-<U133A> <SEDEY>;<QELAL>;<SALIS>;IGNORE
-<U133B> <SEDEY>;<QELAL>;<RABI>;IGNORE
-<U133C> <SEDEY>;<QELAL>;<HAMIS>;IGNORE
-<U133D> <SEDEY>;<QELAL>;<SADIS>;IGNORE
-<U133E> <SEDEY>;<QELAL>;<SABI>;IGNORE
-<U133F> <SEDEY>;<ZEMEDE>;<RABI>;IGNORE
-<U1340> <SEPA>;<QELAL>;<GE'EZ>;IGNORE
-<U1341> <SEPA>;<QELAL>;<KA'IB>;IGNORE
-<U1342> <SEPA>;<QELAL>;<SALIS>;IGNORE
-<U1343> <SEPA>;<QELAL>;<RABI>;IGNORE
-<U1344> <SEPA>;<QELAL>;<HAMIS>;IGNORE
-<U1345> <SEPA>;<QELAL>;<SADIS>;IGNORE
-<U1346> <SEPA>;<QELAL>;<SABI>;IGNORE
-<U1348> <AF>;<QELAL>;<GE'EZ>;IGNORE
-<U1349> <AF>;<QELAL>;<KA'IB>;IGNORE
-<U134A> <AF>;<QELAL>;<SALIS>;IGNORE
-<U134B> <AF>;<QELAL>;<RABI>;IGNORE
-<U134C> <AF>;<QELAL>;<HAMIS>;IGNORE
-<U134D> <AF>;<QELAL>;<SADIS>;IGNORE
-<U134E> <AF>;<QELAL>;<SABI>;IGNORE
-<U134F> <AF>;<ZEMEDE>;<RABI>;IGNORE
-<U1350> <PSA>;<QELAL>;<GE'EZ>;IGNORE
-<U1351> <PSA>;<QELAL>;<KA'IB>;IGNORE
-<U1352> <PSA>;<QELAL>;<SALIS>;IGNORE
-<U1353> <PSA>;<QELAL>;<RABI>;IGNORE
-<U1354> <PSA>;<QELAL>;<HAMIS>;IGNORE
-<U1355> <PSA>;<QELAL>;<SADIS>;IGNORE
-<U1356> <PSA>;<QELAL>;<SABI>;IGNORE
-<U1357> <PSA>;<ZEMEDE>;<RABI>;IGNORE
-<U1358> <RIS>;<ZEMEDE>;<YA>;IGNORE
-<U1359> <MAY>;<ZEMEDE>;<YA>;IGNORE
-<U135A> <AF>;<ZEMEDE>;<YA>;IGNORE
-
-<U1361> <NEUS-NETEB>;<PUNCTUATION>;IGNORE;IGNORE
-<U1362> <EBIY-NETEB>;<PUNCTUATION>;IGNORE;IGNORE
-<U1363> <NETELA-SEREZ>;<PUNCTUATION>;IGNORE;IGNORE
-<U1364> <EBIY-SEREZ>;<PUNCTUATION>;IGNORE;IGNORE
-<U1365> <NEUS-SEREZ>;<PUNCTUATION>;IGNORE;IGNORE
-<U1366> <ASTEAMRO>;<PUNCTUATION>;IGNORE;IGNORE
-<U1367> <SELESTE-NETEB>;<PUNCTUATION>;IGNORE;IGNORE
-<U1368> <SEBATE-NETEB>;<PUNCTUATION>;IGNORE;IGNORE
-
-<U1369> <AHADU>;<NUMERALS>;IGNORE;IGNORE
-<U136A> <KILEITU>;<NUMERALS>;IGNORE;IGNORE
-<U136B> <SELESTU>;<NUMERALS>;IGNORE;IGNORE
-<U136C> <ARBAITU>;<NUMERALS>;IGNORE;IGNORE
-<U136D> <HAMISTU>;<NUMERALS>;IGNORE;IGNORE
-<U136E> <SIDISTU>;<NUMERALS>;IGNORE;IGNORE
-<U136F> <SEBATU>;<NUMERALS>;IGNORE;IGNORE
-<U1370> <SEMENTU>;<NUMERALS>;IGNORE;IGNORE
-<U1371> <TESATU>;<NUMERALS>;IGNORE;IGNORE
-<U1372> <ASERTU>;<NUMERALS>;IGNORE;IGNORE
-<U1373> <ISRA>;<NUMERALS>;IGNORE;IGNORE
-<U1374> <SELASA>;<NUMERALS>;IGNORE;IGNORE
-<U1375> <ARBA>;<NUMERALS>;IGNORE;IGNORE
-<U1376> <HAMSA>;<NUMERALS>;IGNORE;IGNORE
-<U1377> <SISA>;<NUMERALS>;IGNORE;IGNORE
-<U1378> <SEBA>;<NUMERALS>;IGNORE;IGNORE
-<U1379> <SEMANYA>;<NUMERALS>;IGNORE;IGNORE
-<U137A> <TESA>;<NUMERALS>;IGNORE;IGNORE
-<U137B> <MEET>;<NUMERALS>;IGNORE;IGNORE
-<U137C> <ILF>;<NUMERALS>;IGNORE;IGNORE
-order_end
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/am.xml)
%
-reorder-sections-after <LATIN>
-<ETHIOPIC>
-reorder-sections-end
+% <exemplarCharacters type="index" draft="unconfirmed">[ሀ ለ ሐ መ ሠ ረ ሰ ሸ ቀ ቈ በ ቨ ተ ቸ ኀ ኈ ነ ኘ አ ከ ኰ ኸ ወ ዐ ዘ ዠ የ ደ ጀ ገ ጐ ጠ ጨ ጰ ጸ ፀ ፈ ፐ]</exemplarCharacters>
%
+% So no extra rules should be necessary, copy "iso14651_t1"
+% should be enough:
+copy "iso14651_t1"
+
+% “reorder-sections-after” unfortunately does not seem to work.
+%script <FOO>
+%order_start <FOO>;forward;forward;forward;forward,position
+%<U00024A2F> <U00024A2F>;IGNORE;IGNORE;IGNORE
+%order_end
+%reorder-sections-after <SPECIAL>
+%<FOO>
+%reorder-sections-end
END LC_COLLATE
diff --git a/localedata/locales/az_AZ b/localedata/locales/az_AZ
index 3617df20f8..6fe8839f25 100644
--- a/localedata/locales/az_AZ
+++ b/localedata/locales/az_AZ
@@ -46,144 +46,83 @@ category "i18n:2012";LC_MESSAGES
END LC_IDENTIFICATION
%
-% TODO: check LC_COLLATE
% TODO: fix LC_MONETARY
LC_COLLATE
-% The new (1991) latin azeri alphabet is:
-% <a>, <b>, <c>, <c,>, <d>, <e>, <sw>, <f>, <g>, <g(>, <h>, <x>,
-% <i> (dotless i), <i.> (i with dot), <j>, <k>, <q>, <l>, <m>, <n>, <o>,
-% <o:>, <p>, <r>, <s>, <s,>, <t>, <u>, <u:>, <v>, <y>, <z>
+% CLDR collation rules for Azerbaijani:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/az.xml)
%
-% cyrillic alphabet:
-% <a=>, <b=>, <g=>, <g-=>, <d=>, <e=>, <sw=>, <z%>, <z=>, <i=>, <y=>,
-% <j%>, <k=>, <k//=>, <l=>, <m=>, <n=>, <o=>, <o-=>, <p=>, <r=>, <s=>,
-% <t=>, <u=>, <u'=>, <f=>, <h=>, <h'=>, <c%>, <c%//=>, <s%>
+% <collation type="standard" >
+% <cr><![CDATA[
+% [reorder Latn Cyrl]
+% &C<ç<<<Ç
+% &G<ğ<<<Ğ
+% &[before 1]i<ı<<<I
+% &i<<<İ
+% &O<ö<<<Ö
+% &S<ş<<<Ş
+% &U<ü<<<Ü
+% &K<q<<<Q
+% &E<ə<<<Ə
+% &H<x<<<X
+% &Z<w<<<W
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/az.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[A B C Ç D E Ə F G Ğ H X I İ J K Q L M N O Ö P R S Ş T U Ü V Y Z W]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <c,>
-collating-symbol <sw>
-collating-symbol <g(>
-collating-symbol <i.>
-collating-symbol <o:>
-collating-symbol <s,>
-collating-symbol <u:>
-
-collating-symbol <g-=>
-collating-symbol <sw=>
-collating-symbol <k//=>
-collating-symbol <o-=>
-collating-symbol <u'=>
-collating-symbol <h'=>
-collating-symbol <c%//=>
-
-reorder-after <c>
-<c,>
-reorder-after <e>
-<sw>
-reorder-after <g>
-<g(>
-reorder-after <h>
-<x>
-<i>
-<i.>
-<j>
-<k>
-<q>
-reorder-after <o>
-<o:>
-reorder-after <s>
-<s,>
-reorder-after <u>
-<u:>
-
-reorder-after <CYR-GHE>
-<g-=>
-reorder-after <CYR-IE>
-<sw=>
-reorder-after <CYR-KA>
-<k//=>
-reorder-after <CYR-O>
-<o-=>
-reorder-after <CYR-OUBRE>
-<u'=>
-reorder-after <CYR-HA>
-<h'=>
-reorder-after <CYR-CHE>
-<c%//=>
-
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0065>
-<U0259> <sw>;<PCL>;<MIN>;IGNORE
-reorder-after <U0045>
-<U018F> <sw>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<U011F> <g(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0047>
-<U011E> <g(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0068>
-<U0131> <i>;<BAS>;<MIN>;IGNORE
-<U0069> <i.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0049> <i>;<BAS>;<CAP>;IGNORE
-<U0130> <i.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F6> <o:>;<REU>;<MIN>;IGNORE
-reorder-after <U004F>
-<U00D6> <o:>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FC> <u:>;<REU>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DC> <u:>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0433>
-<U0493> <g-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0413>
-<U0492> <g-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0435>
-<U04D9> <sw=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0415>
-<U04D8> <sw=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043A>
-<U049D> <k//=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041A>
-<U049C> <k//=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043E>
-<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041E>
-<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0445>
-<U04BB> <h'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0425>
-<U04BA> <h'=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0447>
-<U04B9> <c%//=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0427>
-<U04B8> <c%//=>;<PCL>;<CAP>;IGNORE
+collating-symbol <c-cedilla>
+collating-symbol <g-breve>
+collating-symbol <schwa>
+collating-symbol <i-dotless>
+collating-symbol <i-dot>
+collating-symbol <o-diaresis>
+collating-symbol <s-cedilla>
+collating-symbol <u-diaresis>
+
+reorder-after <AFTER-C>
+<c-cedilla>
+reorder-after <AFTER-G>
+<g-breve>
+reorder-after <AFTER-E>
+<schwa>
+reorder-after <BEFORE-I>
+<i-dotless>
+reorder-after <AFTER-O>
+<o-diaresis>
+reorder-after <AFTER-S>
+<s-cedilla>
+reorder-after <AFTER-U>
+<u-diaresis>
+reorder-after <AFTER-K>
+<S0071> % LATIN SMALL LETTER Q
+reorder-after <AFTER-H>
+<S0078> % LATIN SMALL LETTER X
+reorder-after <AFTER-Z>
+<S0077> % LATIN SMALL LETTER W
+
+<U00E7> <c-cedilla>;<BASE>;<MIN>;IGNORE % ç
+<U00C7> <c-cedilla>;<BASE>;<CAP>;IGNORE % Ç
+<U011F> <g-breve>;<BASE>;<MIN>;IGNORE % ğ
+<U011E> <g-breve>;<BASE>;<CAP>;IGNORE % Ğ
+<U0131> <i-dotless>;<BASE>;<MIN>;IGNORE % ı
+<U0049> <i-dotless>;<BASE>;<CAP>;IGNORE % I
+<U0069> <S0069>;<BASE>;<MIN>;IGNORE % i
+<U0130> <S0069>;<BASE>;<CAP>;IGNORE % İ
+<U00F6> <o-diaresis>;<BASE>;<MIN>;IGNORE % ö
+<U00D6> <o-diaresis>;<BASE>;<CAP>;IGNORE % Ö
+<U015F> <s-cedilla>;<BASE>;<MIN>;IGNORE % ş
+<U015E> <s-cedilla>;<BASE>;<CAP>;IGNORE % Ş
+<U00FC> <u-diaresis>;<BASE>;<MIN>;IGNORE % ü
+<U00DC> <u-diaresis>;<BASE>;<CAP>;IGNORE % Ü
reorder-end
diff --git a/localedata/locales/be_BY b/localedata/locales/be_BY
index ccc22b9dc2..324379b65a 100644
--- a/localedata/locales/be_BY
+++ b/localedata/locales/be_BY
@@ -46,19 +46,42 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-copy "iso14651_t1"
+% CLDR collation rules for Belarusian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/be.xml)
+%
+% <collations>
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% &Е<ё<<<Ё
+% &у<ў<<<Ў
+% ]]></cr>
+% </collation>
+% </collations>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/be.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[А Б В Г Д Е Ж З І Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Ы Э Ю Я]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
-% iso14651_t1 is missing Ukrainian ghe
-collating-symbol <UKR-GHE>
+copy "iso14651_t1"
-reorder-after <CYR-GZHE>
-<UKR-GHE>
+collating-symbol <cyrillic-io>
+collating-symbol <cyrillic-short-u>
-reorder-after <U0453>
-<U0491> <UKR-GHE>;<BAS>;<MIN>;IGNORE
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<cyrillic-io>
+reorder-after <S0443> % CYRILLIC SMALL LETTER U
+<cyrillic-short-u>
-reorder-after <U0403>
-<U0490> <UKR-GHE>;<BAS>;<CAP>;IGNORE
+<U0451> <cyrillic-io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % CYRILLIC SMALL LETTER IO
+<U0401> <cyrillic-io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % CYRILLIC CAPITAL LETTER IO
+<U045E> <cyrillic-short-u>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % CYRILLIC SMALL LETTER SHORT U
+<U040E> <cyrillic-short-u>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % CYRILLIC CAPITAL LETTER SHORT U
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/ber_DZ b/localedata/locales/ber_DZ
index faff664f7c..79f3d289b1 100644
--- a/localedata/locales/ber_DZ
+++ b/localedata/locales/ber_DZ
@@ -46,115 +46,86 @@ category "i18n:2012";LC_MESSAGES
END LC_IDENTIFICATION
%
-% TODO: check LC_COLLATE
% TODO: fix LC_TIME, LC_MONETARY, LC_MESSAGES, LC_NAME, LC_ADDRESS
LC_COLLATE
% The latin amazigh alphabet is:
-% <a>, <eps>, <b>, <b*>, <c>, <c<>, <d>, <d-.>, <e>, <f>, <g>, <g*>, <g(>,
-% <h>, <h-.>, <i>, <j>, <k>, <k*>, <l>, <m>, <n>, <q>, <q*>, <gam>, <gam*>,
-% <r>, <r-.>, <s>, <s-.>, <t>, <t-.>, <u>, <w>, <x>, <x*>, <y>, <z>, <z-.>
%
-% arabic alphabet:
-
-copy "iso14651_t1"
-
-collating-symbol <eps>
-%collating-symbol <b*>
-collating-symbol <c<>
-collating-symbol <d-.>
-%collating-symbol <g*>
-collating-symbol <g(>
-collating-symbol <h-.>
-%collating-symbol <k*>
-%collating-symbol <q*>
-collating-symbol <gam>
-%collating-symbol <gam*>
-collating-symbol <r-.>
-collating-symbol <s-.>
-collating-symbol <t-.>
-%collating-symbol <x*>
-collating-symbol <z-.>
-
-reorder-after <a>
-<eps>
-%reorder-after <b>
-%<b*>
-reorder-after <c>
-<c<>
-reorder-after <d>
-<d-.>
-reorder-after <g>
-%<g*>
-<g(>
-reorder-after <h>
-<h-.>
-%reorder-after <k>
-%<k*>
-reorder-after <q>
-%<q*>
-<gam>
-%<gam*>
-reorder-after <r>
-<r-.>
-reorder-after <s>
-<s-.>
-reorder-after <t>
-<t-.>
-%reorder-after <x>
-%<x*>
-reorder-after <z>
-<z-.>
-
-reorder-after <U0061>
-<U025B> <eps>;<PCL>;<MIN>;IGNORE
-reorder-after <U0041>
-<U0190> <eps>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0063>
-<U010D> <c<>;<CAR>;<MIN>;IGNORE
-reorder-after <U0043>
-<U010C> <c<>;<CAR>;<CAP>;IGNORE
-
-reorder-after <U0064>
-<U1E0D> <d-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0044>
-<U1E0C> <d-.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<U011F> <g(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0047>
-<U011E> <g(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0068>
-<U1E25> <h-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0048>
-<U1E24> <h-.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0071>
-<U0263> <gam>;<PCL>;<MIN>;IGNORE
-reorder-after <U0051>
-<U0194> <gam>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0072>
-<U1E5B> <r-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0052>
-<U1E5A> <r-.>;<PCT>;<CAP>;IGNORE
+% a ɛ b b* c č d ḍ e f g g* ğ h ḥ i j k k* l m n q q* gam gam* r ṛ s ṣ t ṭ u w x x* y z ẓ
+%
+% (What are the letters followed by a *???)
+%
+% CLDR does not yet have collation rules for this language.
+%
-reorder-after <U0073>
-<U1E63> <s-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0053>
-<U1E62> <s-.>;<PCT>;<CAP>;IGNORE
+% Looking at the above alphabet and the previously existing collation
+% rules in glibc for this language, I implement this in the following way:
+%
+% &A<ɛ<<<Ɛ
+% &C<č<<<Č
+% &D<ḍ<<<Ḍ
+% &G<ğ<<<Ğ
+% &H<ḥ<<<Ḥ
+% &Q<ɣ<<<Ɣ
+% &R<ṛ<<<Ṛ
+% &S<ṣ<<<Ṣ
+% &T<ṭ<<<Ṭ
+% &Z<ẓ<<<Ẓ
-reorder-after <U0074>
-<U1E6D> <t-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0054>
-<U1E6C> <t-.>;<PCT>;<CAP>;IGNORE
+copy "iso14651_t1"
-reorder-after <U007A>
-<U1E93> <z-.>;<PCT>;<MIN>;IGNORE
-reorder-after <U005A>
-<U1E92> <z-.>;<PCT>;<CAP>;IGNORE
+collating-symbol <open-e>
+collating-symbol <c-caron>
+collating-symbol <d-dot-below>
+collating-symbol <g-breve>
+collating-symbol <h-dot-below>
+collating-symbol <latin-gamma>
+collating-symbol <r-dot-below>
+collating-symbol <s-dot-below>
+collating-symbol <t-dot-below>
+collating-symbol <z-dot-below>
+
+reorder-after <AFTER-A>
+<open-e>
+reorder-after <AFTER-C>
+<c-caron>
+reorder-after <AFTER-D>
+<d-dot-below>
+reorder-after <AFTER-G>
+<g-breve>
+reorder-after <AFTER-H>
+<h-dot-below>
+reorder-after <AFTER-Q>
+<latin-gamma>
+reorder-after <AFTER-R>
+<r-dot-below>
+reorder-after <AFTER-S>
+<s-dot-below>
+reorder-after <AFTER-T>
+<t-dot-below>
+reorder-after <AFTER-Z>
+<z-dot-below>
+
+<U025B> <open-e>;<BASE>;<MIN>;IGNORE % ɛ
+<U0190> <open-e>;<BASE>;<CAP>;IGNORE % Ɛ
+<U010D> <c-caron>;<BASE>;<MIN>;IGNORE % č
+<U010C> <c-caron>;<BASE>;<CAP>;IGNORE % Č
+<U1E0D> <d-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ḍ
+<U1E0C> <d-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ḍ
+<U011F> <g-breve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ğ
+<U011E> <g-breve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ğ
+<U1E25> <h-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ḥ
+<U1E24> <h-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ḥ
+<U0263> <latin-gamma>;<BASE>;<MIN>;IGNORE % ɣ
+<U0194> <latin-gamma>;<BASE>;<CAP>;IGNORE % Ɣ
+<U1E5B> <r-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ṛ
+<U1E5A> <r-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ṛ
+<U1E63> <s-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ṣ
+<U1E62> <s-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ṣ
+<U1E6D> <t-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ṭ
+<U1E6C> <t-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ṭ
+<U1E93> <z-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ẓ
+<U1E92> <z-dot-below>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ẓ
reorder-end
diff --git a/localedata/locales/ber_MA b/localedata/locales/ber_MA
index 7a15e36c3c..b9bd64868c 100644
--- a/localedata/locales/ber_MA
+++ b/localedata/locales/ber_MA
@@ -52,32 +52,30 @@ LC_COLLATE
copy "iso14651_t1"
-collating-symbol <TIF-GW>
-collating-symbol <TIF-KW>
-
-collating-element <TIF-G-W> from "<U2D33><U2D6F>"
-collating-element <TIF-K-W> from "<U2D3D><U2D6F>"
-
-reorder-after <TIF-G>
-<TIF-GW>
-reorder-after <TIF-K>
-<TIF-KW>
-reorder-after <U2D33>
-<TIF-G-W> <TIF-GW>;<PCT>;<MIN>;IGNORE
-reorder-after <U2D37>
-<U2D35> "<TIF-D><TIF-J>";"<LIG><PCL>";"<MIN><MIN>";IGNORE
-<U2D36> "<TIF-D><TIF-J>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
-reorder-after <U2D3D>
-<TIF-K-W> <TIF-KW>;<PCT>;<MIN>;IGNORE
-reorder-after <U2D5C>
-<U2D5E> "<TIF-T><TIF-C>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
+collating-symbol <tif-yag-labialization-mark>
+collating-symbol <tif-yak-labialization-mark>
+
+collating-element <tif-yag-labialization-mark-element> from "<U2D33><U2D6F>"
+collating-element <tif-yak-labialization-mark-element> from "<U2D3D><U2D6F>"
+
+reorder-after <S2D33>
+<tif-yag-labialization-mark>
+reorder-after <S2D3D>
+<tif-yak-labialization-mark>
+
+<tif-yag-labialization-mark-element> <tif-yag-labialization-mark>;"<BASE>";<MIN>;IGNORE
+<U2D35> "<S2D37><S2D4A>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U2D36> "<S2D37><S2D4A>";"<BASE><VRNT2>";"<MIN><MIN>";IGNORE
+<tif-yak-labialization-mark-element> <tif-yak-labialization-mark>;"<BASE>";<MIN>;IGNORE
+<U2D5E> "<S2D5C><S2D5B>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
reorder-end
+% “reorder-sections-after” unfortunately does not seem to work.
% Moroccan sorting standard requires tifinagh to come
% before latin script
-reorder-sections-after <SPECIAL>
-<TIFINAGH>
-reorder-sections-end
+%reorder-sections-after <SPECIAL>
+%<TIFINAGH>
+%reorder-sections-end
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/bg_BG b/localedata/locales/bg_BG
index c0f770e34a..9cc2dfbebd 100644
--- a/localedata/locales/bg_BG
+++ b/localedata/locales/bg_BG
@@ -53,112 +53,198 @@ translit_end
END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for Ukrainian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/bg.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/bg.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ю Я]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
-% We have made the following changes to the basic collation scheme in
-% the file iso14651_t1:
-% 1. The Cyrillic script is first in the order.
-% 2. The non-Bulgarian Cyrillic letters are sorted according to
-% their transliteration with Bulgarian Cyrillic letters.
copy "iso14651_t1"
-reorder-after <9>
-<CYR-A>
-<CYR-BE>
-<CYR-VE>
-<CYR-GHE>
-<CYR-DE>
-<CYR-GZHE>
-<CYR-DJE>
-<CYR-IE>
-<UKR-IE>
-<CYR-IO>
-<CYR-ZHE>
-<CYR-ZE>
-<CYR-DZE>
-<CYR-I>
-<UKR-I>
-<UKR-YI>
-<CYR-IBRE>
-<CYR-JE>
-<CYR-KA>
-<CYR-EL>
-<CYR-LJE>
-<CYR-EM>
-<CYR-EN>
-<CYR-NJE>
-<CYR-O>
-<CYR-PE>
-<CYR-ER>
-<CYR-ES>
-<CYR-TE>
-<CYR-KJE>
-<CYR-TSHE>
-<CYR-OU>
-<CYR-OUBRE>
-<CYR-EF>
-<CYR-HA>
-<CYR-TSE>
-<CYR-CHE>
-<CYR-DCHE>
-<CYR-SHA>
-<CYR-SHTSHA>
-<CYR-SIGDUR>
-<CYR-YEROU>
-<CYR-SIGMOUIL>
-<CYR-E>
-<CYR-YOU>
-<CYR-YA>
-reorder-after <U0433>
-<U0453> <CYR-GHE>;<CYR-GZHE>;<MIN>;IGNORE % Mac. gje
-reorder-after <U0434>
-<U0452> "<CYR-DE><CYR-ZHE>";"<LIG><LIG>";"<MIN><MIN>";IGNORE % CYR-DJE
-<U045F> "<CYR-DE><CYR-ZHE>";"<CYR-DCHE><LIG>";"<MIN><MIN>";IGNORE % CYR-DCHE
-<U0455> "<CYR-DE><CYR-ZE>";"<LIG><LIG>";"<MIN><MIN>";IGNORE % CYR-DZE
-reorder-after <U0435>
-<U0454> <CYR-IE>;<UKR-IE>;<MIN>;IGNORE
-<U0451> <CYR-IE>;<CYR-IO>;<MIN>;IGNORE
-<U044D> <CYR-IE>;<CYR-E>;<MIN>;IGNORE
-reorder-after <U0438>
-<U0406> <CYR-I>;<UKR-I>;<MIN>;IGNORE
-<U0457> <CYR-I>;<UKR-YI>;<MIN>;IGNORE
-<U044B> <CYR-I>;<CYR-YEROU>;<MIN>;IGNORE
-reorder-after <U043A>
-<U045C> <CYR-KA>;<CYR-KJE>;<MIN>;IGNORE
-reorder-after <U043B>
-<U0459> "<CYR-EL><CYR-SIGMOUIL>";"<LIG><LIG>";"<MIN><MIN>";IGNORE % CYR-LJE
-reorder-after <U043D>
-<U045A> "<CYR-EN><CYR-SIGMOUIL>";"<LIG><LIG>";"<MIN><MIN>";IGNORE % CYR-NJE
-reorder-after <U0443>
-<U045E> <CYR-OU>;<CYR-OUBRE>;<MIN>;IGNORE
-reorder-after <U0447>
-<U045B> <CYR-CHE>;<CYR-TSHE>;<MIN>;IGNORE
-reorder-after <U0413>
-<U0403> <CYR-GHE>;<CYR-GZHE>;<CAP>;IGNORE % Mac. gje
-reorder-after <U0414>
-<U0402> "<CYR-DE><CYR-ZHE>";"<LIG><LIG>";"<CAP><CAP>";IGNORE % CYR-DJE
-<U040F> "<CYR-DE><CYR-ZHE>";"<CYR-DCHE><LIG>";"<CAP><CAP>";IGNORE % CYR-DCHE
-<U0405> "<CYR-DE><CYR-ZE>";"<LIG><LIG>";"<CAP><CAP>";IGNORE % CYR-DZE
-reorder-after <U0415>
-<U0404> <CYR-IE>;<UKR-IE>;<CAP>;IGNORE
-<U0401> <CYR-IE>;<CYR-IO>;<CAP>;IGNORE
-<U042D> <CYR-IE>;<CYR-E>;<CAP>;IGNORE
-reorder-after <U0418>
-<U0456> <CYR-I>;<UKR-I>;<CAP>;IGNORE
-<U0407> <CYR-I>;<UKR-YI>;<CAP>;IGNORE
-<U042B> <CYR-I>;<CYR-YEROU>;<CAP>;IGNORE
-reorder-after <U0419>
-<U0408> <CYR-IBRE>;<CYR-JE>;<CAP>;IGNORE
-reorder-after <U041A>
-<U040C> <CYR-KA>;<CYR-KJE>;<CAP>;IGNORE
-reorder-after <U041B>
-<U0409> "<CYR-EL><CYR-SIGMOUIL>";"<LIG><LIG>";"<CAP><CAP>";IGNORE % CYR-LJE
-reorder-after <U041D>
-<U040A> "<CYR-EN><CYR-SIGMOUIL>";"<LIG><LIG>";"<CAP><CAP>";IGNORE % CYR-NJE
-reorder-after <U0423>
-<U040E> <CYR-OU>;<CYR-OUBRE>;<CAP>;IGNORE
-reorder-after <U0427>
-<U040B> <CYR-CHE>;<CYR-TSHE>;<CAP>;IGNORE
+% Put Cyrillic before Latin because CLDR has:
+%
+% [reorder Cyrl]
+%
+% and because the old glibc collation for Bulgarian also did put
+% Cyrillic before Latin.
+%
+% I copied the whole Cyrillic block from iso14651_t1_common here.
+%
+% I cannot find any better way doing this.
+
+reorder-after <BEFORE-LATIN>
+<S0430> % CYRILLIC SMALL LETTER A
+<S04D9> % CYRILLIC SMALL LETTER SCHWA
+<S04D5> % CYRILLIC SMALL LIGATURE A IE
+<S0431> % CYRILLIC SMALL LETTER BE
+<S0432> % CYRILLIC SMALL LETTER VE
+<S0433> % CYRILLIC SMALL LETTER GHE
+<S0493> % CYRILLIC SMALL LETTER GHE WITH STROKE
+<S04FB> % CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK
+<S0495> % CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
+<S04F7> % CYRILLIC SMALL LETTER GHE WITH DESCENDER
+<S0434> % CYRILLIC SMALL LETTER DE
+<S0501> % CYRILLIC SMALL LETTER KOMI DE
+<SA681> % CYRILLIC SMALL LETTER DWE
+<S0452> % CYRILLIC SMALL LETTER DJE
+<SA663> % CYRILLIC SMALL LETTER SOFT DE
+<S0503> % CYRILLIC SMALL LETTER KOMI DJE
+<S0499> % CYRILLIC SMALL LETTER ZE WITH DESCENDER
+<S0435> % CYRILLIC SMALL LETTER IE
+<S0454> % CYRILLIC SMALL LETTER UKRAINIAN IE
+<S0436> % CYRILLIC SMALL LETTER ZHE
+<S052B> % CYRILLIC SMALL LETTER DZZHE
+<SA685> % CYRILLIC SMALL LETTER ZHWE
+<S0497> % CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+<S0437> % CYRILLIC SMALL LETTER ZE
+<SA641> % CYRILLIC SMALL LETTER ZEMLYA
+<S0505> % CYRILLIC SMALL LETTER KOMI ZJE
+<S0511> % CYRILLIC SMALL LETTER REVERSED ZE
+<SA643> % CYRILLIC SMALL LETTER DZELO
+<S0455> % CYRILLIC SMALL LETTER DZE
+<SA645> % CYRILLIC SMALL LETTER REVERSED DZE
+<S04E1> % CYRILLIC SMALL LETTER ABKHASIAN DZE
+<SA689> % CYRILLIC SMALL LETTER DZZE
+<S0507> % CYRILLIC SMALL LETTER KOMI DZJE
+<SA683> % CYRILLIC SMALL LETTER DZWE
+<S0438> % CYRILLIC SMALL LETTER I
+<S048B> % CYRILLIC SMALL LETTER SHORT I WITH TAIL
+<S0456> % CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+<SA647> % CYRILLIC SMALL LETTER IOTA
+<S0439> % CYRILLIC SMALL LETTER SHORT I
+<S0458> % CYRILLIC SMALL LETTER JE
+<SA649> % CYRILLIC SMALL LETTER DJERV
+<S043A> % CYRILLIC SMALL LETTER KA
+<S049B> % CYRILLIC SMALL LETTER KA WITH DESCENDER
+<S04C4> % CYRILLIC SMALL LETTER KA WITH HOOK
+<S04A1> % CYRILLIC SMALL LETTER BASHKIR KA
+<S049F> % CYRILLIC SMALL LETTER KA WITH STROKE
+<S049D> % CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+<S051F> % CYRILLIC SMALL LETTER ALEUT KA
+<S051B> % CYRILLIC SMALL LETTER QA
+<S043B> % CYRILLIC SMALL LETTER EL
+<S1D2B> % CYRILLIC LETTER SMALL CAPITAL EL
+<S04C6> % CYRILLIC SMALL LETTER EL WITH TAIL
+<S052F> % CYRILLIC SMALL LETTER EL WITH DESCENDER
+<S0513> % CYRILLIC SMALL LETTER EL WITH HOOK
+<S0521> % CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK
+<S0459> % CYRILLIC SMALL LETTER LJE
+<SA665> % CYRILLIC SMALL LETTER SOFT EL
+<S0509> % CYRILLIC SMALL LETTER KOMI LJE
+<S0515> % CYRILLIC SMALL LETTER LHA
+<S043C> % CYRILLIC SMALL LETTER EM
+<S04CE> % CYRILLIC SMALL LETTER EM WITH TAIL
+<SA667> % CYRILLIC SMALL LETTER SOFT EM
+<S043D> % CYRILLIC SMALL LETTER EN
+<S0529> % CYRILLIC SMALL LETTER EN WITH LEFT HOOK
+<S04CA> % CYRILLIC SMALL LETTER EN WITH TAIL
+<S04A3> % CYRILLIC SMALL LETTER EN WITH DESCENDER
+<S04C8> % CYRILLIC SMALL LETTER EN WITH HOOK
+<S0523> % CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK
+<S04A5> % CYRILLIC SMALL LIGATURE EN GHE
+<S045A> % CYRILLIC SMALL LETTER NJE
+<S050B> % CYRILLIC SMALL LETTER KOMI NJE
+<S043E> % CYRILLIC SMALL LETTER O
+<S04E9> % CYRILLIC SMALL LETTER BARRED O
+<S043F> % CYRILLIC SMALL LETTER PE
+<S0525> % CYRILLIC SMALL LETTER PE WITH DESCENDER
+<S04A7> % CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+<S0481> % CYRILLIC SMALL LETTER KOPPA
+<S0440> % CYRILLIC SMALL LETTER ER
+<S048F> % CYRILLIC SMALL LETTER ER WITH TICK
+<S0517> % CYRILLIC SMALL LETTER RHA
+<S0441> % CYRILLIC SMALL LETTER ES
+<S050D> % CYRILLIC SMALL LETTER KOMI SJE
+<S04AB> % CYRILLIC SMALL LETTER ES WITH DESCENDER
+<S0442> % CYRILLIC SMALL LETTER TE
+<SA68D> % CYRILLIC SMALL LETTER TWE
+<S050F> % CYRILLIC SMALL LETTER KOMI TJE
+<S04AD> % CYRILLIC SMALL LETTER TE WITH DESCENDER
+<SA68B> % CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK
+<S045B> % CYRILLIC SMALL LETTER TSHE
+<S0443> % CYRILLIC SMALL LETTER U
+<S04AF> % CYRILLIC SMALL LETTER STRAIGHT U
+<S04B1> % CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+<SA64B> % CYRILLIC SMALL LETTER MONOGRAPH UK
+<S0479> % CYRILLIC SMALL LETTER UK
+<S0444> % CYRILLIC SMALL LETTER EF
+<S0445> % CYRILLIC SMALL LETTER HA
+<S04FD> % CYRILLIC SMALL LETTER HA WITH HOOK
+<S04FF> % CYRILLIC SMALL LETTER HA WITH STROKE
+<S04B3> % CYRILLIC SMALL LETTER HA WITH DESCENDER
+<S04BB> % CYRILLIC SMALL LETTER SHHA
+<S0527> % CYRILLIC SMALL LETTER SHHA WITH DESCENDER
+<SA695> % CYRILLIC SMALL LETTER HWE
+<S0461> % CYRILLIC SMALL LETTER OMEGA
+<S047F> % CYRILLIC SMALL LETTER OT
+<SA64D> % CYRILLIC SMALL LETTER BROAD OMEGA
+<S047D> % CYRILLIC SMALL LETTER OMEGA WITH TITLO
+<S047B> % CYRILLIC SMALL LETTER ROUND OMEGA
+<S0446> % CYRILLIC SMALL LETTER TSE
+<SA661> % CYRILLIC SMALL LETTER REVERSED TSE
+<SA68F> % CYRILLIC SMALL LETTER TSWE
+<S04B5> % CYRILLIC SMALL LIGATURE TE TSE
+<SA691> % CYRILLIC SMALL LETTER TSSE
+<S0447> % CYRILLIC SMALL LETTER CHE
+<S052D> % CYRILLIC SMALL LETTER DCHE
+<SA693> % CYRILLIC SMALL LETTER TCHE
+<S04B7> % CYRILLIC SMALL LETTER CHE WITH DESCENDER
+<S04CC> % CYRILLIC SMALL LETTER KHAKASSIAN CHE
+<S04B9> % CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+<SA687> % CYRILLIC SMALL LETTER CCHE
+<S04BD> % CYRILLIC SMALL LETTER ABKHASIAN CHE
+<S04BF> % CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
+<S045F> % CYRILLIC SMALL LETTER DZHE
+<S0448> % CYRILLIC SMALL LETTER SHA
+<SA697> % CYRILLIC SMALL LETTER SHWE
+<S0449> % CYRILLIC SMALL LETTER SHCHA
+<SA64F> % CYRILLIC SMALL LETTER NEUTRAL YER
+<S2E2F> % VERTICAL TILDE
+<SA67F> % CYRILLIC PAYEROK
+<S044A> % CYRILLIC SMALL LETTER HARD SIGN
+<SA651> % CYRILLIC SMALL LETTER YERU WITH BACK YER
+<S044B> % CYRILLIC SMALL LETTER YERU
+<S044C> % CYRILLIC SMALL LETTER SOFT SIGN
+<S048D> % CYRILLIC SMALL LETTER SEMISOFT SIGN
+<S0463> % CYRILLIC SMALL LETTER YAT
+<SA653> % CYRILLIC SMALL LETTER IOTIFIED YAT
+<S044D> % CYRILLIC SMALL LETTER E
+<S044E> % CYRILLIC SMALL LETTER YU
+<SA655> % CYRILLIC SMALL LETTER REVERSED YU
+<SA657> % CYRILLIC SMALL LETTER IOTIFIED A
+<S044F> % CYRILLIC SMALL LETTER YA
+<S0519> % CYRILLIC SMALL LETTER YAE
+<S0465> % CYRILLIC SMALL LETTER IOTIFIED E
+<S0467> % CYRILLIC SMALL LETTER LITTLE YUS
+<SA659> % CYRILLIC SMALL LETTER CLOSED LITTLE YUS
+<S046B> % CYRILLIC SMALL LETTER BIG YUS
+<SA65B> % CYRILLIC SMALL LETTER BLENDED YUS
+<S0469> % CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS
+<SA65D> % CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS
+<S046D> % CYRILLIC SMALL LETTER IOTIFIED BIG YUS
+<S046F> % CYRILLIC SMALL LETTER KSI
+<S0471> % CYRILLIC SMALL LETTER PSI
+<S0473> % CYRILLIC SMALL LETTER FITA
+<S0475> % CYRILLIC SMALL LETTER IZHITSA
+<SA65F> % CYRILLIC SMALL LETTER YN
+<S04A9> % CYRILLIC SMALL LETTER ABKHASIAN HA
+<S051D> % CYRILLIC SMALL LETTER WE
+<S04CF> % CYRILLIC SMALL LETTER PALOCHKA
+
reorder-end
+
END LC_COLLATE
LC_MONETARY
diff --git a/localedata/locales/br_FR b/localedata/locales/br_FR
index d43acf4ab0..eaa911b4b1 100644
--- a/localedata/locales/br_FR
+++ b/localedata/locales/br_FR
@@ -49,43 +49,40 @@ END LC_IDENTIFICATION
LC_COLLATE
+%% a b c ch c'h d e f g h i j k l m n o p q r s t u v w x y z
+%
+% No collation information is available for this language in CLDR.
+%
+% We use the following at the moment:
+%
+% &c<ch<<<cH<<<Ch<<<CH<c'h<<<c'H<<<C'h<<<C'H
+%
+
copy "iso14651_t1"
-%% a b c ch c'h d e f g h i j k l m n o p q r s t u v w x y z
collating-symbol <c-h-br>
-collating-element <C-H> from "<U0043><U0048>"
-collating-element <c-h> from "<U0063><U0068>"
-collating-element <C-h> from "<U0043><U0068>"
-collating-element <c-H> from "<U0063><U0048>"
+collating-element <c-h> from "ch"
+collating-element <c-H> from "cH"
+collating-element <C-h> from "Ch"
+collating-element <C-H> from "CH"
collating-symbol <c-'-h-br>
-collating-element <C'H> from "<U0043><U0027><U0048>"
-collating-element <c'h> from "<U0063><U0027><U0068>"
-collating-element <C'h> from "<U0043><U0027><U0068>"
-collating-element <c'H> from "<U0063><U0027><U0048>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-
-reorder-after <CAP>
-<CAP-MIN>
+collating-element <c'h> from "c'h"
+collating-element <c'H> from "c'H"
+collating-element <C'h> from "C'h"
+collating-element <C'H> from "C'H"
-reorder-after <c>
+reorder-after <AFTER-C>
<c-h-br>
<c-'-h-br>
-reorder-after <U0063>
-<c-h> <c-h-br>;<PCT>;<MIN>;IGNORE
-<c-H> <c-h-br>;<PCT>;<MIN-CAP>;IGNORE
-<c'h> <c-'-h-br>;<PCT>;<MIN>;IGNORE
-<c'H> <c-'-h-br>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0043>
-<C-H> <c-h-br>;<PCT>;<CAP>;IGNORE
-<C-h> <c-h-br>;<PCT>;<CAP-MIN>;IGNORE
-<C'H> <c-'-h-br>;<PCT>;<CAP>;IGNORE
-<C'h> <c-'-h-br>;<PCT>;<CAP-MIN>;IGNORE
+<c-h> <c-h-br>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<c-H> <c-h-br>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<C-h> <c-h-br>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<C-H> <c-h-br>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<c'h> <c-'-h-br>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<c'H> <c-'-h-br>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<C'h> <c-'-h-br>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<C'H> <c-'-h-br>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/br_FR@euro b/localedata/locales/br_FR@euro
index 03732a01d3..5ea04787b2 100644
--- a/localedata/locales/br_FR@euro
+++ b/localedata/locales/br_FR@euro
@@ -46,8 +46,7 @@ copy "br_FR"
END LC_CTYPE
LC_COLLATE
-% Copy the template from ISO/IEC 14651
-copy "iso14651_t1"
+copy "br_FR"
END LC_COLLATE
LC_MESSAGES
diff --git a/localedata/locales/ca_ES b/localedata/locales/ca_ES
index 914c066dab..c20d393c2a 100644
--- a/localedata/locales/ca_ES
+++ b/localedata/locales/ca_ES
@@ -49,21 +49,7 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-copy "iso14651_t1"
-
-collating-symbol <ntilde>
-
-reorder-after <n>
-<ntilde>
-
-reorder-after <U006E>
-<U00F1> <ntilde>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U004E>
-<U00D1> <ntilde>;<BAS>;<CAP>;IGNORE
-
-reorder-end
-
+copy "es_ES"
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/cns11643_stroke b/localedata/locales/cns11643_stroke
index 4ecd79839f..5225430e17 100644
--- a/localedata/locales/cns11643_stroke
+++ b/localedata/locales/cns11643_stroke
@@ -21,9 +21,8 @@ LC_COLLATE
copy "iso14651_t1_common"
-script <HAN>
+reorder-after <BEFORE-LATIN>
-order_start <HAN>;forward;forward;forward;forward,position
<U4E00> <U4E00>;IGNORE;IGNORE;IGNORE # 1
<U4E28> <U4E28>;IGNORE;IGNORE;IGNORE # 2
<U4E3F> <U4E3F>;IGNORE;IGNORE;IGNORE # 3
@@ -76341,7 +76340,7 @@ order_start <HAN>;forward;forward;forward;forward,position
<U4A3B> <U4A3B>;IGNORE;IGNORE;IGNORE # 1452443425121145244342512114524434251211452443425121
<U0002053B> <U0002053B>;IGNORE;IGNORE;IGNORE # 3211511251251134321151125125113432115112512511343211511251251134
<U0002A6A5> <U0002A6A5>;IGNORE;IGNORE;IGNORE # 4143135441515111414313544151511141431354415151114143135441515111
-#
-order_end
-#
+
+reorder-end
+
END LC_COLLATE
diff --git a/localedata/locales/crh_UA b/localedata/locales/crh_UA
index c27d54ccfd..b2ac8c66d7 100644
--- a/localedata/locales/crh_UA
+++ b/localedata/locales/crh_UA
@@ -46,77 +46,56 @@ category "i18n:2012";LC_MESSAGES
category "i18n:2012";LC_NAME
END LC_IDENTIFICATION
-%
-% TODO: check and test LC_COLLATE
-
LC_COLLATE
+% There is no collation information in CLDR for Crimean Tatar
+%
% The new Crimean Tatar alphabet (Latin) is:
-% <a>, <b>, <c>, <c,>, <d>, <e>, <f>, <g>, <g(>, <h>,
-% <i> (dotless i), <i.> (i with dot), <j>, <k>, <l>, <m>, <n>, <n?>, <o>,
-% <o:>, <p>, <q>, <r>, <s>, <s,>, <t>, <u>, <u:>, <v>, <y>, <z>
+%
+% a b c ç d e f g ğ h ı i j k l m n ñ o ö p q r s ş t u ü v y z
copy "iso14651_t1"
-collating-symbol <c,>
-collating-symbol <g(>
-collating-symbol <i.>
-collating-symbol <n?>
-collating-symbol <o:>
-collating-symbol <s,>
-collating-symbol <u:>
-
-reorder-after <c>
-<c,>
-reorder-after <g>
-<g(>
-reorder-after <h>
-<i>
-<i.>
-reorder-after <n>
-<n?>
-reorder-after <o>
-<o:>
-reorder-after <s>
-<s,>
-reorder-after <u>
-<u:>
-
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<U011F> <g(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0047>
-<U011E> <g(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0068>
-<U0131> <i>;<BAS>;<MIN>;IGNORE
-<U0069> <i.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0049> <i>;<BAS>;<CAP>;IGNORE
-<U0130> <i.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U00F1> <n?>;<TIL>;<MIN>;IGNORE
-reorder-after <U004E>
-<U00D1> <n?>;<TIL>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F6> <o:>;<REU>;<MIN>;IGNORE
-reorder-after <U004F>
-<U00D6> <o:>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FC> <u:>;<REU>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DC> <u:>;<REU>;<CAP>;IGNORE
+collating-symbol <c-cedilla>
+collating-symbol <g-breve>
+collating-symbol <i-dotless>
+collating-symbol <i-dot>
+collating-symbol <n-tilde>
+collating-symbol <o-diaeresis>
+collating-symbol <s-cedilla>
+collating-symbol <u-diaeresis>
+
+reorder-after <AFTER-C>
+<c-cedilla>
+reorder-after <AFTER-G>
+<g-breve>
+reorder-after <AFTER-H>
+<i-dotless>
+<i-dot>
+reorder-after <AFTER-N>
+<n-tilde>
+reorder-after <AFTER-O>
+<o-diaeresis>
+reorder-after <AFTER-S>
+<s-cedilla>
+reorder-after <AFTER-U>
+<u-diaeresis>
+
+<U00E7> <c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <c-cedilla>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ç
+<U011F> <g-breve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ğ
+<U011E> <g-breve>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ğ
+<U0131> <i-dotless>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ı
+<U0049> <i-dotless>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % I
+<U0069> <i-dot>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % i
+<U0130> <i-dot>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % İ
+<U00F1> <n-tilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <n-tilde>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ñ
+<U00F6> <o-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ö
+<U00D6> <o-diaeresis>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ö
+<U015F> <s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ş
+<U015E> <s-cedilla>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ş
+<U00FC> <u-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <u-diaeresis>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ü
reorder-end
diff --git a/localedata/locales/cs_CZ b/localedata/locales/cs_CZ
index f80d3e1b37..16a2b02972 100644
--- a/localedata/locales/cs_CZ
+++ b/localedata/locales/cs_CZ
@@ -142,6 +142,17 @@ LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Czech:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/cs.xml)
+%
+% &C<č<<<Č
+% &H<ch<<<cH<<<Ch<<<CH
+% &R<ř<<<Ř
+% &S<š<<<Š
+% &Z<ž<<<Ž
+%
+% The following rules implement the same order for glibc.
+
collating-symbol <c-caron>
collating-symbol <ch-digraph>
collating-symbol <r-caron>
@@ -153,45 +164,45 @@ collating-element <c-H> from "cH"
collating-element <C-h> from "Ch"
collating-element <C-H> from "CH"
-reorder-after <c>
+reorder-after <AFTER-C>
<c-caron>
-reorder-after <h>
+reorder-after <AFTER-H>
<ch-digraph>
-reorder-after <r>
+reorder-after <AFTER-R>
<r-caron>
-reorder-after <s>
+reorder-after <AFTER-S>
<s-caron>
-reorder-after <z>
+reorder-after <AFTER-Z>
<z-caron>
% CLDR has 2 sort orders for Czech, "standard" which sorts the digits
% before the letters and "digits-after" which sorts the digits after
% the letters. The cs_CZ locale in glibc always sorted the digits after
% the letters, so we keep that behaviour here:
-reorder-after <zh>
-<0>
-<1>
-<2>
-<3>
-<4>
-<5>
-<6>
-<7>
-<8>
-<9>
-
-<U010D> <c-caron>;<BAS>;<MIN>;IGNORE % č
-<U010C> <c-caron>;<BAS>;<CAP>;IGNORE % Č
-<c-h> <ch-digraph>;"<BAS><BAS>";"<MIN><MIN>";IGNORE
-<c-H> <ch-digraph>;"<BAS><BAS>";"<MIN><CAP>";IGNORE
-<C-h> <ch-digraph>;"<BAS><BAS>";"<CAP><MIN>";IGNORE
-<C-H> <ch-digraph>;"<BAS><BAS>";"<CAP><CAP>";IGNORE
-<U0159> <r-caron>;<BAS>;<MIN>;IGNORE % ř
-<U0158> <r-caron>;<BAS>;<CAP>;IGNORE % Ř
-<U0161> <s-caron>;<BAS>;<MIN>;IGNORE % š
-<U0160> <s-caron>;<BAS>;<CAP>;IGNORE % Š
-<U017E> <z-caron>;<BAS>;<MIN>;IGNORE % ž
-<U017D> <z-caron>;<BAS>;<CAP>;IGNORE % Ž
+reorder-after <AFTER-EZH>
+<S0030>
+<S0031>
+<S0032>
+<S0033>
+<S0034>
+<S0035>
+<S0036>
+<S0037>
+<S0038>
+<S0039>
+
+<U010D> <c-caron>;<BASE>;<MIN>;IGNORE % č
+<U010C> <c-caron>;<BASE>;<CAP>;IGNORE % Č
+<c-h> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<c-H> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<C-h> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<C-H> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U0159> <r-caron>;<BASE>;<MIN>;IGNORE % ř
+<U0158> <r-caron>;<BASE>;<CAP>;IGNORE % Ř
+<U0161> <s-caron>;<BASE>;<MIN>;IGNORE % š
+<U0160> <s-caron>;<BASE>;<CAP>;IGNORE % Š
+<U017E> <z-caron>;<BASE>;<MIN>;IGNORE % ž
+<U017D> <z-caron>;<BASE>;<CAP>;IGNORE % Ž
reorder-end
diff --git a/localedata/locales/csb_PL b/localedata/locales/csb_PL
index b3bd4bbe67..10389416c2 100644
--- a/localedata/locales/csb_PL
+++ b/localedata/locales/csb_PL
@@ -53,6 +53,12 @@ copy "pl_PL"
END LC_CTYPE
LC_COLLATE
+% There is no collation information for Kashubian in CLDR.
+%
+% https://en.wikipedia.org/wiki/Kashubian_language#Kashubian_alphabet
+%
+% A Ą Ã B C D E É Ë F G H I J K L Ł M N Ń O Ò Ó Ô P R S T U Ù W Y Z Ż
+
copy "iso14651_t1"
collating-symbol <aogonek>
@@ -67,66 +73,47 @@ collating-symbol <ocircumflex>
collating-symbol <ugrave>
collating-symbol <zdot>
-reorder-after <a>
+reorder-after <AFTER-A>
<aogonek>
<atilde>
-
-reorder-after <e>
+reorder-after <AFTER-E>
<eacute>
<ediaeresis>
-
-reorder-after <l>
+reorder-after <AFTER-L>
<lstroke>
-
-reorder-after <n>
+reorder-after <AFTER-N>
<nacute>
-
-reorder-after <o>
+reorder-after <AFTER-O>
<ograve>
<oacute>
<ocircumflex>
-
-reorder-after <u>
+reorder-after <AFTER-U>
<ugrave>
-
-reorder-after <z>
+reorder-after <AFTER-Z>
<zdot>
-reorder-after <U0061>
-<U0105> <aogonek>;<BAS>;<MIN>;IGNORE
-<U0104> <aogonek>;<BAS>;<CAP>;IGNORE
-<U00E3> <atilde>;<BAS>;<MIN>;IGNORE
-<U00C3> <atilde>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0065>
-<U00E9> <eacute>;<BAS>;<MIN>;IGNORE
-<U00C9> <eacute>;<BAS>;<CAP>;IGNORE
-<U00EB> <ediaeresis>;<BAS>;<MIN>;IGNORE
-<U00CB> <ediaeresis>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006C>
-<U0142> <lstroke>;<BAS>;<MIN>;IGNORE
-<U0141> <lstroke>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U0144> <nacute>;<BAS>;<MIN>;IGNORE
-<U0143> <nacute>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F2> <ograve>;<BAS>;<MIN>;IGNORE
-<U00D2> <ograve>;<BAS>;<CAP>;IGNORE
-<U00F3> <oacute>;<BAS>;<MIN>;IGNORE
-<U00D3> <oacute>;<BAS>;<CAP>;IGNORE
-<U00F4> <ocircumflex>;<BAS>;<MIN>;IGNORE
-<U00D4> <ocircumflex>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00F9> <ugrave>;<BAS>;<MIN>;IGNORE
-<U00D9> <ugrave>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U007A>
-<U017C> <zdot>;<BAS>;<MIN>;IGNORE
-<U017B> <zdot>;<BAS>;<CAP>;IGNORE
+<U0105> <aogonek>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ą
+<U0104> <aogonek>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ą
+<U00E3> <atilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ã
+<U00C3> <atilde>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ã
+<U00E9> <eacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % é
+<U00C9> <eacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % É
+<U00EB> <ediaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ë
+<U00CB> <ediaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ë
+<U0142> <lstroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ł
+<U0141> <lstroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ł
+<U0144> <nacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ń
+<U0143> <nacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ń
+<U00F2> <ograve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ò
+<U00D2> <ograve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ò
+<U00F3> <oacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ó
+<U00D3> <oacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ó
+<U00F4> <ocircumflex>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ô
+<U00D4> <ocircumflex>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ô
+<U00F9> <ugrave>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ù
+<U00D9> <ugrave>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ù
+<U017C> <zdot>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ż
+<U017B> <zdot>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ż
reorder-end
diff --git a/localedata/locales/cv_RU b/localedata/locales/cv_RU
index b6a488b96d..e9247b39f8 100644
--- a/localedata/locales/cv_RU
+++ b/localedata/locales/cv_RU
@@ -50,54 +50,49 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
+% There is no collation information for Chuvash in CLDR.
+%
+% According to https://en.wikipedia.org/wiki/Chuvash_language
+% the writing system is Cyrillic.
+%
+% But our Chuvash locale here seems to use the Latin Alphabet ...
+%
+% I just adapt the collation rules which I found here to the
+% updated iso14651_t1_common file.
copy "iso14651_t1"
% The Chuvash alphabet has the following letters, ordered as below:
-% a a( c e e( h i j k l m n p r s< s s, t u u: v y
+% a ă c e ĕ h i j k l m n p r š s ş t u ü v y
-collating-symbol <a(>
-collating-symbol <e(>
-collating-symbol <s<>
-collating-symbol <s,>
+collating-symbol <a-breve>
+collating-symbol <e-breve>
+collating-symbol <s-caron>
+collating-symbol <s-cedilla>
collating-symbol <u-diaerisis>
-reorder-after <a>
-<a(>
-reorder-after <e>
-<e(>
-reorder-after <r>
-<s<>
-reorder-after <s>
-<s,>
-reorder-after <u>
+reorder-after <AFTER-A>
+<a-breve>
+reorder-after <AFTER-E>
+<e-breve>
+reorder-after <AFTER-R>
+<s-caron>
+reorder-after <AFTER-S>
+<s-cedilla>
+reorder-after <AFTER-U>
<u-diaerisis>
-reorder-after <U0061>
-<U0103> <a(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0041>
-<U0102> <a(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0065>
-<U0115> <e(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0045>
-<U0114> <e(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0072>
-<U0161> <s<>;<CAR>;<MIN>;IGNORE
-reorder-after <U0053>
-<U0160> <s<>;<CAR>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U0219> <s,>;<CDI>;<MIN>;IGNORE
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U0218> <s,>;<CDI>;<CAP>;IGNORE
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0074>
-<U00FC> <u-diaerisis>;<BAS>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DC> <u-diaerisis>;<BAS>;<CAP>;IGNORE
+<U0103> <a-breve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ă
+<U0102> <a-breve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ă
+<U0115> <e-breve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ĕ
+<U0114> <e-breve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ĕ
+<U0161> <s-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % š
+<U0160> <s-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Š
+<U015F> <s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ş
+<U015E> <s-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ş
+<U0219> <s-cedilla>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ș
+<U0218> <s-cedilla>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ș
+<U00FC> <u-diaerisis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <u-diaerisis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ü
reorder-end
diff --git a/localedata/locales/cy_GB b/localedata/locales/cy_GB
index 75a8f6b0b1..5f6fd7c87f 100644
--- a/localedata/locales/cy_GB
+++ b/localedata/locales/cy_GB
@@ -69,139 +69,125 @@ translit_end
END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for Welsh:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/cy.xml)
+%
+% <collation type="standard" references="http://www.evertype.com/alphabets/welsh.pdf">
+% <cr><![CDATA[
+% &C<ch<<<Ch<<<CH
+% &D<dd<<<Dd<<<DD
+% &F<ff<<<Ff<<<FF
+% &G<ng<<<Ng<<<NG
+% &L<ll<<<Ll<<<LL
+% &P<ph<<<Ph<<<PH
+% &R<rh<<<Rh<<<RH
+% &T<th<<<Th<<<TH
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/cy.xml)
+%
+%
+%
+% The following rules implement the same order for glibc.
+
copy "iso14651_t1"
% Welsh sorting order is:
% a b c ch d dd e f ff g ng h i l ll m n o p ph r rh s t th u w y
-collating-symbol <c-h-cy>
-collating-element <C-H> from "<U0043><U0048>"
-collating-element <c-h> from "<U0063><U0068>"
-collating-element <C-h> from "<U0043><U0068>"
-collating-element <c-H> from "<U0063><U0048>"
-
-collating-symbol <d-d-cy>
-collating-element <D-D> from "<U0044><U0044>"
-collating-element <d-d> from "<U0064><U0064>"
-collating-element <D-d> from "<U0044><U0064>"
-collating-element <d-D> from "<U0064><U0044>"
-
-collating-symbol <f-f-cy>
-collating-element <F-F> from "<U0046><U0046>"
-collating-element <f-f> from "<U0066><U0066>"
-collating-element <F-f> from "<U0046><U0066>"
-collating-element <f-F> from "<U0066><U0046>"
-
-collating-symbol <n-g-cy>
-collating-element <N-G> from "<U004E><U0047>"
-collating-element <n-g> from "<U006E><U0067>"
-collating-element <N-g> from "<U004E><U0067>"
-collating-element <n-G> from "<U006E><U0047>"
-
-collating-symbol <l-l-cy>
-collating-element <L-L> from "<U004C><U004C>"
-collating-element <l-l> from "<U006C><U006C>"
-collating-element <L-l> from "<U004C><U006C>"
-collating-element <l-L> from "<U006C><U004C>"
-
-collating-symbol <p-h-cy>
-collating-element <P-H> from "<U0050><U0048>"
-collating-element <p-h> from "<U0070><U0068>"
-collating-element <P-h> from "<U0050><U0068>"
-collating-element <p-H> from "<U0070><U0048>"
-
-collating-symbol <r-h-cy>
-collating-element <R-H> from "<U0052><U0048>"
-collating-element <r-h> from "<U0072><U0068>"
-collating-element <R-h> from "<U0052><U0068>"
-collating-element <r-H> from "<U0072><U0048>"
-
-collating-symbol <t-h-cy>
-collating-element <T-H> from "<U0054><U0048>"
-collating-element <t-h> from "<U0074><U0068>"
-collating-element <T-h> from "<U0054><U0068>"
-collating-element <t-H> from "<U0074><U0048>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <c>
-<c-h-cy>
-<d>
-<d-d-cy>
-reorder-after <f>
-<f-f-cy>
-<g>
-<n-g-cy>
-reorder-after <l>
-<l-l-cy>
-reorder-after <p>
-<p-h-cy>
-reorder-after <r>
-<r-h-cy>
-reorder-after <t>
-<t-h-cy>
-
-reorder-after <U0063>
-<c-h> <c-h-cy>;<PCT>;<MIN>;IGNORE
-<c-H> <c-h-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0043>
-<C-H> <c-h-cy>;<PCT>;<CAP>;IGNORE
-<C-h> <c-h-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0064>
-<d-d> <d-d-cy>;<PCT>;<MIN>;IGNORE
-<d-D> <d-d-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0044>
-<D-D> <d-d-cy>;<PCT>;<CAP>;IGNORE
-<D-d> <d-d-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0066>
-<f-f> <f-f-cy>;<PCT>;<MIN>;IGNORE
-<f-F> <f-f-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0046>
-<F-F> <f-f-cy>;<PCT>;<CAP>;IGNORE
-<F-f> <f-f-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0067>
-<n-g> <n-g-cy>;<PCT>;<MIN>;IGNORE
-<n-G> <n-g-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<N-G> <n-g-cy>;<PCT>;<CAP>;IGNORE
-<N-g> <n-g-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U006C>
-<l-l> <l-l-cy>;<PCT>;<MIN>;IGNORE
-<l-L> <l-l-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004C>
-<L-L> <l-l-cy>;<PCT>;<CAP>;IGNORE
-<L-l> <l-l-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0070>
-<p-h> <p-h-cy>;<PCT>;<MIN>;IGNORE
-<p-H> <p-h-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0050>
-<P-H> <p-h-cy>;<PCT>;<CAP>;IGNORE
-<P-h> <p-h-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0072>
-<r-h> <r-h-cy>;<PCT>;<MIN>;IGNORE
-<r-H> <r-h-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0052>
-<R-H> <r-h-cy>;<PCT>;<CAP>;IGNORE
-<R-h> <r-h-cy>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0074>
-<t-h> <t-h-cy>;<PCT>;<MIN>;IGNORE
-<t-H> <t-h-cy>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0054>
-<T-H> <t-h-cy>;<PCT>;<CAP>;IGNORE
-<T-h> <t-h-cy>;<PCT>;<CAP-MIN>;IGNORE
+collating-symbol <ch-digraph>
+collating-element <ch> from "ch"
+collating-element <cH> from "cH"
+collating-element <Ch> from "Ch"
+collating-element <CH> from "CH"
+collating-symbol <dd-digraph>
+collating-element <dd> from "dd"
+collating-element <dD> from "dD"
+collating-element <Dd> from "Dd"
+collating-element <DD> from "DD"
+collating-symbol <ff-digraph>
+collating-element <ff> from "ff"
+collating-element <fF> from "fF"
+collating-element <Ff> from "Ff"
+collating-element <FF> from "FF"
+collating-symbol <ng-digraph>
+collating-element <ng> from "ng"
+collating-element <nG> from "nG"
+collating-element <Ng> from "Ng"
+collating-element <NG> from "NG"
+collating-symbol <ll-digraph>
+collating-element <ll> from "ll"
+collating-element <lL> from "lL"
+collating-element <Ll> from "Ll"
+collating-element <LL> from "LL"
+collating-symbol <ph-digraph>
+collating-element <ph> from "ph"
+collating-element <pH> from "pH"
+collating-element <Ph> from "Ph"
+collating-element <PH> from "PH"
+collating-symbol <rh-digraph>
+collating-element <rh> from "rh"
+collating-element <rH> from "rH"
+collating-element <Rh> from "Rh"
+collating-element <RH> from "RH"
+collating-symbol <th-digraph>
+collating-element <th> from "th"
+collating-element <tH> from "tH"
+collating-element <Th> from "Th"
+collating-element <TH> from "TH"
+
+reorder-after <AFTER-C>
+<ch-digraph>
+reorder-after <AFTER-D>
+<dd-digraph>
+reorder-after <AFTER-F>
+<ff-digraph>
+reorder-after <AFTER-G>
+<ng-digraph>
+reorder-after <AFTER-L>
+<ll-digraph>
+reorder-after <AFTER-P>
+<ph-digraph>
+reorder-after <AFTER-R>
+<rh-digraph>
+reorder-after <AFTER-T>
+<th-digraph>
+
+<ch> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<cH> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ch> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<CH> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<dd> <dd-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<dD> <dd-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Dd> <dd-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<DD> <dd-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ff> <ff-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<fF> <ff-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ff> <ff-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<FF> <ff-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ng> <ng-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nG> <ng-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ng> <ng-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<NG> <ng-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ll> <ll-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<lL> <ll-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ll> <ll-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<LL> <ll-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ph> <ph-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<pH> <ph-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ph> <ph-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<PH> <ph-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<rh> <rh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<rH> <rh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Rh> <rh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<RH> <rh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<th> <th-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<tH> <th-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Th> <th-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<TH> <th-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/da_DK b/localedata/locales/da_DK
index 628d1ece49..05a2681bef 100644
--- a/localedata/locales/da_DK
+++ b/localedata/locales/da_DK
@@ -60,75 +60,83 @@ END LC_IDENTIFICATION
LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Danish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/da.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [caseFirst upper]
+% &D<<đ<<<Đ<<ð<<<Ð
+% &th<<<þ
+% &TH<<<Þ
+% &Y<<ü<<<Ü<<ű<<<Ű
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<å<<<Å<<<aa<<<Aa<<<AA
+% &oe<<œ<<<Œ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/da.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Æ Ø Å]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+
collating-element <A-A> from "<U0041><U0041>"
collating-element <A-a> from "<U0041><U0061>"
collating-element <a-A> from "<U0061><U0041>"
collating-element <a-a> from "<U0061><U0061>"
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
collating-symbol <ae>
collating-symbol <o-stroke>
collating-symbol <a-ring>
-collating-symbol <ETH>
reorder-after <RES-1>
+<COMPATCAP>
<CAP>
-<CAP-MIN>
-<MIN-CAP>
+<COMPAT>
+<MIN>
-reorder-after <z>
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<å<<<Å<<<aa<<<Aa<<<AA
+reorder-after <AFTER-Z>
<ae>
<o-stroke>
<a-ring>
-% <U00DC> and <U0170> are treated as <U0059> in Danish
-reorder-after <U0178>
-<U00DC> <y>;<U00DC>;<CAP>;IGNORE
-<U00FC> <y>;<U00DC>;<MIN>;IGNORE
-<U0170> <y>;<U0170>;<CAP>;IGNORE
-<U0171> <y>;<U0170>;<MIN>;IGNORE
-
-% <U00C6> is a separate letter in Danish
-reorder-after <U017B>
-<U00C6> <ae>;<BAS>;<CAP>;IGNORE
-<U00E6> <ae>;<BAS>;<MIN>;IGNORE
-<U01FC> <ae>;<ACA>;<CAP>;IGNORE
-<U01FD> <ae>;<ACA>;<MIN>;IGNORE
-<U00C4> <ae>;<REU>;<CAP>;IGNORE
-<U00E4> <ae>;<REU>;<MIN>;IGNORE
-<U01E2> <ae>;<MAC>;<CAP>;IGNORE
-<U01E3> <ae>;<MAC>;<MIN>;IGNORE
-% <U00D8> is a separate letter in Danish
-<U00D8> <o-stroke>;<BAS>;<CAP>;IGNORE
-<U00F8> <o-stroke>;<BAS>;<MIN>;IGNORE
-<U01FE> <o-stroke>;<ACA>;<CAP>;IGNORE
-<U01FF> <o-stroke>;<ACA>;<MIN>;IGNORE
-<U00D6> <o-stroke>;<REU>;<CAP>;IGNORE
-<U00F6> <o-stroke>;<REU>;<MIN>;IGNORE
-<U0150> <o-stroke>;<DAC>;<CAP>;IGNORE
-<U0151> <o-stroke>;<DAC>;<MIN>;IGNORE
-% <U00C5> is a separate letter in Danish
-<U00C5> <a-ring>;<BAS>;<CAP>;IGNORE
-<U00E5> <a-ring>;<BAS>;<MIN>;IGNORE
-<A-A> <a-ring>;<A-A>;<CAP>;IGNORE
-<A-a> <a-ring>;<A-A>;<CAP-MIN>;IGNORE
-<a-A> <a-ring>;<A-A>;<MIN-CAP>;IGNORE
-<a-a> <a-ring>;<A-A>;<MIN>;IGNORE
+% &D<<đ<<<Đ<<ð<<<Ð
+<U0110> <S0064>;"<BASE><BARRE>";"<CAP><MIN>";IGNORE % Đ
+<U0111> <S0064>;"<BASE><BARRE>";"<MIN><MIN>";IGNORE % đ
+<U00D0> <S0064>;"<BASE><VRNT1>";"<COMPATCAP><COMPAT>";IGNORE % Ð
+<U00F0> <S0064>;"<BASE><VRNT1>";"<COMPAT><COMPAT>";IGNORE % ð
-% Present in iso14651_t1, but these definitions seem to have been
-% removed from latest iso14651 tables.
-reorder-after <U0162>
-<U00DE> "<t><h>";"<LIG><LIG>";"<CAP><CAP>";IGNORE
-<U00FE> "<t><h>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
+% &T<<<Þ/H
+% &t<<<þ/h
+<U00DE> "<S0074><S0068>";"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Þ
+<U00FE> "<S0074><S0068>";"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % þ
-reorder-after <OBL>
-<ETH>
+% &Y<<ü<<<Ü<<ű<<<Ű
+<U00DC> <S0079>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ü
+<U00FC> <S0079>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ü
+<U0170> <S0079>;"<BASE><2AIGU>";"<CAP><MIN>";IGNORE % Ű
+<U0171> <S0079>;"<BASE><2AIGU>";"<MIN><MIN>";IGNORE % ű
-reorder-after <U0064>
-<U0110> <d>;<OBL>;<CAP>;IGNORE
-<U0111> <d>;<OBL>;<MIN>;IGNORE
-<U00D0> <d>;<ETH>;<CAP>;IGNORE
-<U00F0> <d>;<ETH>;<MIN>;IGNORE
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<å<<<Å<<<aa<<<Aa<<<AA
+<U00C6> <ae>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Æ
+<U00E6> <ae>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % æ
+<U00C4> <ae>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ä
+<U00E4> <ae>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ä
+<U00D8> <o-stroke>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Ø
+<U00F8> <o-stroke>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % ø
+<U00D6> <o-stroke>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ö
+<U00F6> <o-stroke>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ö
+<U0150> <o-stroke>;"<BASE><2AIGU>";"<CAP><MIN>";IGNORE % Ő
+<U0151> <o-stroke>;"<BASE><2AIGU>";"<MIN><MIN>";IGNORE % ő
+<U00C5> <a-ring>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Å
+<U00E5> <a-ring>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % å
+<A-A> <a-ring>;"<BASE><VRNT1>";"<CAP><CAP>";IGNORE
+<A-a> <a-ring>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<a-A> <a-ring>;"<BASE><VRNT1>";"<MIN><CAP>";IGNORE
+<a-a> <a-ring>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/dz_BT b/localedata/locales/dz_BT
index 4ab3f59786..272fa7e78f 100644
--- a/localedata/locales/dz_BT
+++ b/localedata/locales/dz_BT
@@ -63,454 +63,2046 @@ translit_end
END LC_CTYPE
LC_COLLATE
+% Using the rules.txt attached to:
+% http://unicode.org/cldr/trac/ticket/9895
+% See also: https://sourceware.org/bugzilla/show_bug.cgi?id=21547
+% Bug 21547 - Tibetan script collation broken (Dzongkha and Tibetan)
+%
+% # Rules for Sanskrit ordering
+% # From Bod rgya tshig mdzod chen mo pages 9 - 11, 347, 1153, 1615, 1619, 1711, 1827, 2055, 2061, 2840, 2920, 3136 and 3137
+% # Example: ཀར་ལུགས། < ཀརྐ་ཊ།
+% &ཀར<ཀརྐ<ཀརྟ<ཀརྞ<ཀརྨ<ཀརྴ<ཀརྵ
+% &ཀལ<ཀལྐ<ཀལྤ
+% &ཀས<ཀསྨ
+% &གཉ<གཉྫ
+% &ཐར<ཐརྐ
+% &པུས<པུསྟི
+% &ཕལ<ཕལྒ
+% &བིལ<བིལྦ
+% &མཉ<མཉྫ
+% &མར<མརྒ
+% &ཝར<ཝརྟ
+% &ཤས<ཤསྟ
+% &སར<སརྒ
+% &ཨར<ཨརྒ<ཨརྱ=ཨཪྱ
+% &ཨས<ཨསྨ
+% # Marks (seconadry different, with low equal primary weight after Lao)
+% &[before 1]ཀ<།<<༎<<༏<<༐<<༑<<༔<<༴<་=༌
+% &ཀ<<ྈྐ<ཫ<དཀ<བཀ<རྐ<ལྐ<སྐ<བརྐ<བསྐ
+% &ཁ<<ྈྑ<མཁ<འཁ
+% &ག<དགག<དགང<དགད<དགན<དགབ<དགཝ<དགའ<དགར<དགལ<དགས<དགི<དགུ<དགེ<དགོ<དགྭ<དགྱ<དགྲ<བགག<བགང<བགད<བགབ<བགམ<<<བགཾ<བགཝ<བགའ
+% <བགར<བགལ<བགི<བགུ<བགེ<བགོ<བགྭ<བགྱ<བགྲ<བགླ<མགག<མགང<མགད<མགབ<མགའ<མགར<མགལ<མགི<མགུ<མགེ<མགོ<མགྭ<མགྱ<མགྲ<འགག<འགང<འགད<འགན<འགབ<འགམ<<<འགཾ
+% <འགའ<འགར<འགལ<འགས<འགི<འགུ<འགེ<འགོ<འགྭ<འགྱ<འགྲ<རྒ<ལྒ<སྒ<བརྒ<བསྒ
+% &ང<<<ྂ<<<ྃ<དངག<དངང<དངད<དངན<དངབ<དངའ<དངར<དངལ<དངི<དངུ<དངེ<དངོ<མངག<མངང<མངད<མངན<མངབ<མངའ<མངར<མངལ<མངི<མངུ<མངེ<མངོ<རྔ<ལྔ<སྔ<བརྔ<བསྔ
+% &ཅ<གཅ<བཅ<ལྕ<བལྕ
+% &ཆ<མཆ<འཆ
+% &ཇ<མཇ<འཇ<རྗ<ལྗ<བརྗ
+% &ཉ<<ྋྙ<གཉ<མཉ<རྙ=ཪྙ<སྙ<བརྙ=བཪྙ<བསྙ
+% &ཏ<ཊ<ཏྭ<ཏྲ<གཏ<བཏ<རྟ<ལྟ<སྟ<བརྟ<བལྟ<བསྟ
+% &ཐ<ཋ<མཐ<འཐ
+% &ད<ཌ<གདག<གདང<གདད<གདན<གདབ<གདམ<<<གདཾ<གདའ<གདར<གདལ<གདས<གདི<གདུ<གདེ<གདོ<གདྭ<བདག<བདང<བདད<བདབ<བདམ<<<བདཾ<བདའ
+% <བདར<བདལ<བདས<བདི<བདུ<བདེ<བདོ<བདྭ<མདག<མདང<མདད<མདན<མདབ<མདའ<མདར<མདལ<མདས<མདི<མདུ<མདེ<མདོ<མདྭ<འདག<འདང<འདད<འདན<འདབ<འདམ<<<འདཾ
+% <འདཝ<འདའ<འདར<འདལ<འདས<འདི<འདུ<འདེ<འདོ<འདྭ<འདྲ<རྡ<ལྡ<སྡ<བརྡ<བལྡ<བསྡ
+% &ན<ཎ<གནག<གནང<གནད<གནན<གནབ<གནམ<<<གནཾ<གནཝ<གནའ<གནར<གནལ<གནས<གནི<གནུ<གནེ<གནོ<གནྭ<མནག<མནང<མནད<མནན<མནབ<མནམ<<<མནཾ<མནའ
+% <མནར<མནལ<མནས<མནི<མནུ<མནེ<མནོ<མནྭ<རྣ<སྣ<བརྣ<བསྣ
+% &པ<<ྉྤ<དཔག<དཔང<དཔད<དཔབ<དཔའ<དཔར<དཔལ<དཔས<དཔི<དཔུ<དཔེ<དཔོ<དཔྱ<དཔྲ<ལྤ<སྤ
+% &ཕ<<ྉྥ<འཕ
+% &བ<དབག<དབང<དབད<དབན<དབབ<དབའ<དབར<དབལ<དབས<དབི<དབུ<དབེ<དབོ<དབྱ<དབྲ<འབག<འབང<འབད<འབན<འབབ<འབམ
+% <<<འབཾ<འབའ<འབར<འབལ<འབས<འབི<འབུ<འབེ<འབོ<འབྱ<འབྲ<རྦ<ལྦ<སྦ
+% &མ<<<ཾ<དམག<དམང<དམད<དམན<དམབ<དམཝ<དམའ<དམར<དམལ<དམས<དམི<དམུ<དམེ<དམོ<དམྭ<དམྱ<རྨ<སྨ
+% &ཙ<གཙ<བཙ<རྩ<སྩ<བརྩ<བསྩ
+% &ཚ<མཚ<འཚ
+% &ཛ<མཛ<འཛ<རྫ<བརྫ
+% # &ཝ
+% &ཞ<གཞ<བཞ
+% &ཟ<གཟ<བཟ
+% # &འ
+% &ཡ<གཡ
+% &ར<<<ཪ<ཬ<བརླ=བཪླ
+% # &ལ
+% &ཤ<ཥ<གཤ<བཤ
+% &ས<གསག<གསང<གསད<གསན<གསབ<གསའ<གསར<གསལ<གསས<གསི<གསུ<གསེ<གསོ<གསྭ<བསག<བསང<བསད<བསབ<བསམ<<<བསཾ<བསའ<བསར
+% <བསལ<བསས<བསི<བསུ<བསེ<བསོ<བསྭ<བསྲ<བསླ
+% &ཧ<ལྷ
+% &ཨ
+% # Explicit vowels
+% <ཱ<ི<ཱི<ྀ<ཱྀ<ུ<ཱུ<ེ<ཻ=ེེ<ོ<ཽ=ོོ
+% # Post-radicals
+% <ྐ<ྑ<ྒ<ྔ<ྕ<ྖ<ྗ<ྙ<ྟ<ྚ<ྠ<ྛ<ྡ<ྜ<ྣ<ྞ<ྤ<ྥ<ྦ<ྨ<ྩ<ྪ<ྫ<ྭ<<<ྺ<ྮ<ྯ<ྰ<ྱ<<<ྻ<ྲ<<<ྼ<ླ<ྴ
+% <ྵ<ྶ<ྷ<ྸ
+% # Combining marks and signs (secondary weight)
+% &༹<<྄<<ཿ<<྅<<ྈ<<ྉ<<ྊ<<ྋ<<ྌ<<ྍ<<ྎ<<ྏ
+% # Treatༀ, ཷand ,ཹ as decomposed
+% &ཨོཾ=ༀ
+% &ྲཱྀ=ཷ
+% &ླཱྀ=ཹ
+%
+
copy "iso14651_t1"
-% specific definitions
-reorder-after <U042F>
-% digits
-<U0F20> <0>;<BAS>;IGNORE;IGNORE
-<U0F33> <0>;<VAR>;IGNORE;IGNORE
-<U0F21> <1>;<BAS>;IGNORE;IGNORE
-<U0F2A> <1>;<VAR>;IGNORE;IGNORE
-<U0F22> <2>;<BAS>;IGNORE;IGNORE
-<U0F2B> <2>;<VAR>;IGNORE;IGNORE
-<U0F23> <3>;<BAS>;IGNORE;IGNORE
-<U0F2C> <3>;<VAR>;IGNORE;IGNORE
-<U0F24> <4>;<BAS>;IGNORE;IGNORE
-<U0F2D> <4>;<VAR>;IGNORE;IGNORE
-<U0F25> <5>;<BAS>;IGNORE;IGNORE
-<U0F2E> <5>;<VAR>;IGNORE;IGNORE
-<U0F26> <6>;<BAS>;IGNORE;IGNORE
-<U0F2F> <6>;<VAR>;IGNORE;IGNORE
-<U0F27> <7>;<BAS>;IGNORE;IGNORE
-<U0F30> <7>;<VAR>;IGNORE;IGNORE
-<U0F28> <8>;<BAS>;IGNORE;IGNORE
-<U0F31> <8>;<VAR>;IGNORE;IGNORE
-<U0F29> <9>;<BAS>;IGNORE;IGNORE
-<U0F32> <9>;<VAR>;IGNORE;IGNORE
-
-% letters
-<U0F40> <TIB-KA>;<BAS>;<NOM>;IGNORE % ka
-<U0F90> <TIB-KA>;<BAS>;<SUB>;IGNORE
-<U0F69> "<TIB-KA><TIB-SHA>";"<BAS><VAR>";"<NOM><SUB>";IGNORE % kssa
-<U0FB9> "<TIB-KA><TIB-SHA>";"<BAS><VAR>";"<SUB><SUB>";IGNORE
-<rad-ka-d> <TIB-KA-R_D>;<R_D>;<NOM>;IGNORE
-<rad-ka-b> <TIB-KA-R_B>;<R_B>;<NOM>;IGNORE
-<rad-ka-r> <TIB-KA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ka-l> <TIB-KA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ka-s> <TIB-KA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-ka-b-r> <TIB-KA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-ka-b-s> <TIB-KA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F41> <TIB-KHA>;<BAS>;<NOM>;IGNORE % kha
-<U0F91> <TIB-KHA>;<BAS>;<SUB>;IGNORE
-<rad-kha-m> <TIB-KHA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-kha-a> <TIB-KHA-R_A>;<R_A>;<NOM>;IGNORE
-<U0F42> <TIB-GA>;<BAS>;<NOM>;IGNORE % ga
-<U0F92> <TIB-GA>;<BAS>;<SUB>;IGNORE
-<U0F43> "<TIB-GA><TIB-HA>";"<BAS><BAS>";"<NOM><SUB>";IGNORE % gha
-<U0F93> "<TIB-GA><TIB-HA>";"<BAS><BAS>";"<SUB><SUB>";IGNORE
-<rad-ga-d-ga> "<TIB-GA-R_D><TIB-GA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-nga> "<TIB-GA-R_D><TIB-NGA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-da> "<TIB-GA-R_D><TIB-DA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-ba> "<TIB-GA-R_D><TIB-BA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d--a> "<TIB-GA-R_D><TIB--A>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-wa> "<TIB-GA-R_D><TIB-WA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-ra> "<TIB-GA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-la> "<TIB-GA-R_D><TIB-LA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-sa> "<TIB-GA-R_D><TIB-SA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-u> "<TIB-GA-R_D><TIB-U>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-e> "<TIB-GA-R_D><TIB-E>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-d-_ya> "<TIB-GA-R_D><TIB-YA>";"<R_D><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-d-_ra> "<TIB-GA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-b-ga> "<TIB-GA-R_B><TIB-GA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-da> "<TIB-GA-R_B><TIB-DA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-ma> "<TIB-GA-R_B><TIB-MA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-ma2> "<TIB-GA-R_B><TIB-MA>";"<R_B><VAR>";"<NOM><NOM>";IGNORE
-<rad-ga-b-wa> "<TIB-GA-R_B><TIB-WA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b--a> "<TIB-GA-R_B><TIB--A>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-ra> "<TIB-GA-R_B><TIB-RA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-e> "<TIB-GA-R_B><TIB-E>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-o> "<TIB-GA-R_B><TIB-O>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-b-_ya> "<TIB-GA-R_B><TIB-YA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-b-_ra> "<TIB-GA-R_B><TIB-RA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-b-_la> "<TIB-GA-R_B><TIB-LA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-m-ra> "<TIB-GA-R_M><TIB-RA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-m-la> "<TIB-GA-R_M><TIB-LA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-m-u> "<TIB-GA-R_M><TIB-U>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-m-e> "<TIB-GA-R_M><TIB-E>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-m-o> "<TIB-GA-R_M><TIB-O>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-m-_ya> "<TIB-GA-R_M><TIB-YA>";"<R_M><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-m-_ra> "<TIB-GA-R_M><TIB-RA>";"<R_M><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-a-ga> "<TIB-GA-R_A><TIB-GA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-nga> "<TIB-GA-R_A><TIB-NGA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-da> "<TIB-GA-R_A><TIB-DA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-na> "<TIB-GA-R_A><TIB-NA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-ba> "<TIB-GA-R_A><TIB-BA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-ma> "<TIB-GA-R_A><TIB-MA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-ma2> "<TIB-GA-R_A><TIB-MA>";"<R_A><VAR>";"<NOM><NOM>";IGNORE
-<rad-ga-a--a> "<TIB-GA-R_A><TIB--A>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-ra> "<TIB-GA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-la> "<TIB-GA-R_A><TIB-LA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-sa> "<TIB-GA-R_A><TIB-SA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-i> "<TIB-GA-R_A><TIB-I>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-u> "<TIB-GA-R_A><TIB-U>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-e> "<TIB-GA-R_A><TIB-E>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-o> "<TIB-GA-R_A><TIB-O>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ga-a-_ya> "<TIB-GA-R_A><TIB-YA>";"<R_A><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-a-_ra> "<TIB-GA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><SUB>";IGNORE
-<rad-ga-r> <TIB-GA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ga-l> <TIB-GA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ga-s> <TIB-GA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-ga-b-r> <TIB-GA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-ga-b-s> <TIB-GA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F44> <TIB-NGA>;<BAS>;<NOM>;IGNORE % nga
-<U0F94> <TIB-NGA>;<BAS>;<SUB>;IGNORE
-<rad-nga-d-ga> "<TIB-NGA-R_D><TIB-GA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-d-nga> "<TIB-NGA-R_D><TIB-NGA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-d-na> "<TIB-NGA-R_D><TIB-NA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-d-ra> "<TIB-NGA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-d-u> "<TIB-NGA-R_D><TIB-U>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-d-o> "<TIB-NGA-R_D><TIB-O>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m-ga> "<TIB-NGA-R_M><TIB-GA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m-na> "<TIB-NGA-R_M><TIB-NA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m--a> "<TIB-NGA-R_M><TIB--A>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m-ra> "<TIB-NGA-R_M><TIB-RA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m-la> "<TIB-NGA-R_M><TIB-LA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-m-o> "<TIB-NGA-R_M><TIB-O>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-nga-r> <TIB-NGA-R_R>;<BAS>;<R_R>;IGNORE
-<rad-nga-l> <TIB-NGA-R_L>;<BAS>;<R_L>;IGNORE
-<rad-nga-s> <TIB-NGA-R_S>;<BAS>;<R_S>;IGNORE
-<rad-nga-b-r> <TIB-NGA-R_BR>;<BAS>;<R_BR>;IGNORE
-<rad-nga-b-s> <TIB-NGA-R_BS>;<BAS>;<R_BS>;IGNORE
-<U0F45> <TIB-CA>;<BAS>;<NOM>;IGNORE % ca
-<U0F95> <TIB-CA>;<BAS>;<SUB>;IGNORE
-<rad-ca-g> <TIB-CA>;<R_G>;<NOM>;IGNORE
-<rad-ca-b> <TIB-CA>;<R_B>;<NOM>;IGNORE
-<rad-ca-l> <TIB-CA>;<R_L>;<SUB>;IGNORE
-<rad-ca-b-l> <TIB-CA>;<R_BL>;<SUB>;IGNORE
-<U0F46> <TIB-CHA>;<BAS>;<NOM>;IGNORE % cha
-<U0F96> <TIB-CHA>;<BAS>;<SUB>;IGNORE
-<rad-cha-m> <TIB-CHA>;<R_M>;<NOM>;IGNORE
-<rad-cha-a> <TIB-CHA>;<R_A>;<NOM>;IGNORE
-<U0F47> <TIB-JA>;<BAS>;<NOM>;IGNORE % ja
-<U0F97> <TIB-JA>;<BAS>;<SUB>;IGNORE
-<rad-ja-m> <TIB-JA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-ja-a> <TIB-JA-R_A>;<R_A>;<NOM>;IGNORE
-<rad-ja-r> <TIB-JA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ja-l> <TIB-JA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ja-b-r> <TIB-JA-R_BR>;<R_BR>;<SUB>;IGNORE
-<U0F49> <TIB-NYA>;<BAS>;<NOM>;IGNORE % nya
-<U0F99> <TIB-NYA>;<BAS>;<SUB>;IGNORE
-<rad-nya-g> <TIB-NYA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-nya-m> <TIB-NYA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-nya-r> <TIB-NYA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-nya-s> <TIB-NYA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-nya-b-r> <TIB-NYA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-nya-b-s> <TIB-NYA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F4F> <TIB-TA>;<BAS>;<NOM>;IGNORE % ta
-<U0F9F> <TIB-TA>;<BAS>;<SUB>;IGNORE
-<U0F4A> <TIB-TA>;<VAR>;<NOM>;IGNORE % tta
-<U0F9A> <TIB-TA>;<VAR>;<SUB>;IGNORE
-<rad-ta-g> <TIB-TA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-ta-b> <TIB-TA-R_B>;<R_B>;<NOM>;IGNORE
-<rad-ta-r> <TIB-TA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ta-l> <TIB-TA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ta-s> <TIB-TA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-ta-b-r> <TIB-TA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-ta-b-l> <TIB-TA-R_BL>;<R_BL>;<SUB>;IGNORE
-<rad-ta-b-s> <TIB-TA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F50> <TIB-THA>;<BAS>;<NOM>;IGNORE % tha
-<U0FA0> <TIB-THA>;<BAS>;<SUB>;IGNORE
-<U0F4B> <TIB-THA>;<VAR>;<NOM>;IGNORE % ttha
-<U0F9B> <TIB-THA>;<VAR>;<SUB>;IGNORE
-<rad-tha-m> <TIB-THA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-tha-a> <TIB-THA-R_A>;<R_A>;<NOM>;IGNORE
-<U0F51> <TIB-DA>;<BAS>;<NOM>;IGNORE % da
-<U0FA1> <TIB-DA>;<BAS>;<SUB>;IGNORE
-<U0F4C> <TIB-DA>;<VAR>;<NOM>;IGNORE % dda
-<U0F9C> <TIB-DA>;<VAR>;<SUB>;IGNORE
-<U0F52> "<TIB-DA><TIB-HA>";"<BAS><BAS>";"<NOM><SUB>";IGNORE % dha
-<U0FA2> "<TIB-DA><TIB-HA>";"<BAS><BAS>";"<SUB><SUB>";IGNORE
-<U0F4D> "<TIB-DA><TIB-HA>";"<VAR><BAS>";"<NOM><SUB>";IGNORE % ddha
-<U0F9D> "<TIB-DA><TIB-HA>";"<VAR><BAS>";"<SUB><SUB>";IGNORE
-<rad-da-g-ga> "<TIB-DA-R_G><TIB-GA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-nga> "<TIB-DA-R_G><TIB-NGA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-na> "<TIB-DA-R_G><TIB-NA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-ba> "<TIB-DA-R_G><TIB-BA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-ma> "<TIB-DA-R_G><TIB-MA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-ma2> "<TIB-DA-R_G><TIB-MA>";"<R_G><VAR>";"<NOM><NOM>";IGNORE
-<rad-da-g--a> "<TIB-DA-R_G><TIB--A>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-ra> "<TIB-DA-R_G><TIB-RA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-la> "<TIB-DA-R_G><TIB-LA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-sa> "<TIB-DA-R_G><TIB-SA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-i> "<TIB-DA-R_G><TIB-I>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-u> "<TIB-DA-R_G><TIB-U>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-e> "<TIB-DA-R_G><TIB-E>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-g-o> "<TIB-DA-R_G><TIB-O>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-ga> "<TIB-DA-R_B><TIB-GA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-ma> "<TIB-DA-R_B><TIB-MA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-ma2> "<TIB-DA-R_B><TIB-MA>";"<R_B><VAR>";"<NOM><NOM>";IGNORE
-<rad-da-b--a> "<TIB-DA-R_B><TIB--A>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-ra> "<TIB-DA-R_B><TIB-RA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-la> "<TIB-DA-R_B><TIB-LA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-sa> "<TIB-DA-R_B><TIB-SA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-u> "<TIB-DA-R_B><TIB-U>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-e> "<TIB-DA-R_B><TIB-E>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-b-o> "<TIB-DA-R_B><TIB-O>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-ga> "<TIB-DA-R_M><TIB-GA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-nga> "<TIB-DA-R_M><TIB-NGA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-na> "<TIB-DA-R_M><TIB-NA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m--a> "<TIB-DA-R_M><TIB--A>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-ra> "<TIB-DA-R_M><TIB-RA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-u> "<TIB-DA-R_M><TIB-U>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-e> "<TIB-DA-R_M><TIB-E>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-m-o> "<TIB-DA-R_M><TIB-O>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-ga> "<TIB-DA-R_A><TIB-GA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-nga> "<TIB-DA-R_A><TIB-NGA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-da> "<TIB-DA-R_A><TIB-DA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-na> "<TIB-DA-R_A><TIB-NA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-ba> "<TIB-DA-R_A><TIB-BA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-ma> "<TIB-DA-R_A><TIB-MA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-ma2> "<TIB-DA-R_A><TIB-MA>";"<R_A><VAR>";"<NOM><NOM>";IGNORE
-<rad-da-a-wa> "<TIB-DA-R_A><TIB-WA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a--a> "<TIB-DA-R_A><TIB--A>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-ra> "<TIB-DA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-la> "<TIB-DA-R_A><TIB-LA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-sa> "<TIB-DA-R_A><TIB-SA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-u> "<TIB-DA-R_A><TIB-U>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-e> "<TIB-DA-R_A><TIB-E>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-o> "<TIB-DA-R_A><TIB-O>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-a-_ra> "<TIB-DA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-da-r> <TIB-DA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-da-l> <TIB-DA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-da-s> <TIB-DA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-da-b-r> <TIB-DA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-da-b-l> <TIB-DA-R_BL>;<R_BL>;<SUB>;IGNORE
-<rad-da-b-s> <TIB-DA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F53> <TIB-NA>;<BAS>;<NOM>;IGNORE % na
-<U0FA3> <TIB-NA>;<BAS>;<SUB>;IGNORE
-<U0F4E> <TIB-NA>;<VAR>;<NOM>;IGNORE % nna
-<U0F9E> <TIB-NA>;<VAR>;<SUB>;IGNORE
-<rad-na-g-ga> "<TIB-NA-R_G><TIB-GA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-nga> "<TIB-NA-R_G><TIB-NGA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-da> "<TIB-NA-R_G><TIB-DA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-na> "<TIB-NA-R_G><TIB-NA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-ma> "<TIB-NA-R_G><TIB-MA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-ma2> "<TIB-NA-R_G><TIB-MA>";"<R_G><VAR>";"<NOM><NOM>";IGNORE
-<rad-na-g-wa> "<TIB-NA-R_G><TIB-WA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g--a> "<TIB-NA-R_G><TIB--A>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-sa> "<TIB-NA-R_G><TIB-SA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-u> "<TIB-NA-R_G><TIB-U>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-g-o> "<TIB-NA-R_G><TIB-O>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-ga> "<TIB-NA-R_M><TIB-GA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-nga> "<TIB-NA-R_M><TIB-NGA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-na> "<TIB-NA-R_M><TIB-NA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-ba> "<TIB-NA-R_M><TIB-BA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-ma> "<TIB-NA-R_M><TIB-MA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-ma2> "<TIB-NA-R_M><TIB-MA>";"<R_M><VAR>";"<NOM><NOM>";IGNORE
-<rad-na-m--a> "<TIB-NA-R_M><TIB--A>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-ra> "<TIB-NA-R_M><TIB-RA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-la> "<TIB-NA-R_M><TIB-LA>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-u> "<TIB-NA-R_M><TIB-U>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-e> "<TIB-NA-R_M><TIB-E>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-m-o> "<TIB-NA-R_M><TIB-O>";"<R_M><BAS>";"<NOM><NOM>";IGNORE
-<rad-na-r> <TIB-NA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-na-s> <TIB-NA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-na-b-r> <TIB-NA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-na-b-s> <TIB-NA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F54> <TIB-PA>;<BAS>;<NOM>;IGNORE % pa
-<U0FA4> <TIB-PA>;<BAS>;<SUB>;IGNORE
-<rad-pa-d-ga> "<TIB-PA-R_D><TIB-GA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-nga> "<TIB-PA-R_D><TIB-NGA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-da> "<TIB-PA-R_D><TIB-DA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d--a> "<TIB-PA-R_D><TIB--A>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-ra> "<TIB-PA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-la> "<TIB-PA-R_D><TIB-LA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-sa> "<TIB-PA-R_D><TIB-SA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-u> "<TIB-PA-R_D><TIB-U>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-e> "<TIB-PA-R_D><TIB-E>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-pa-d-o-ga> "<TIB-PA-R_D><TIB-O><TIB-GA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-pa-d-o-nga> "<TIB-PA-R_D><TIB-O><TIB-NGA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-pa-d-o-da> "<TIB-PA-R_D><TIB-O><TIB-DA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-pa-d-o-na> "<TIB-PA-R_D><TIB-O><TIB-NA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-pa-d-o-ra> "<TIB-PA-R_D><TIB-O><TIB-RA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-pa-d-_ya> "<TIB-PA-R_D><TIB-YA>";"<R_D><VAR>";"<NOM><SUB>";IGNORE
-<rad-pa-d-_ra> "<TIB-PA-R_D><TIB-RA>";"<R_D><VAR>";"<NOM><SUB>";IGNORE
-<rad-ta-l> <TIB-PA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ta-s> <TIB-PA-R_S>;<R_S>;<SUB>;IGNORE
-<U0F55> <TIB-PHA>;<BAS>;<NOM>;IGNORE % pha
-<U0FA5> <TIB-PHA>;<BAS>;<SUB>;IGNORE
-<rad-pha-a> <TIB-PHA-R_A>;<R_A>;<NOM>;IGNORE
-<U0F56> <TIB-BA>;<BAS>;<NOM>;IGNORE % ba
-<U0FA6> <TIB-BA>;<BAS>;<SUB>;IGNORE
-<U0F57> "<TIB-BA><TIB-HA>";"<BAS><BAS>";"<NOM><SUB>";IGNORE % bha
-<U0FA7> "<TIB-BA><TIB-HA>";"<BAS><BAS>";"<SUB><SUB>";IGNORE
-<rad-ba-d-ga> "<TIB-BA-R_D><TIB-GA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-nga> "<TIB-BA-R_D><TIB-NGA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-da> "<TIB-BA-R_D><TIB-DA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-na> "<TIB-BA-R_D><TIB-NA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-ba> "<TIB-BA-R_D><TIB-BA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d--a> "<TIB-BA-R_D><TIB--A>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-ra> "<TIB-BA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-la> "<TIB-BA-R_D><TIB-LA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-sa> "<TIB-BA-R_D><TIB-SA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-u> "<TIB-BA-R_D><TIB-U>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-e> "<TIB-BA-R_D><TIB-E>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-o> "<TIB-BA-R_D><TIB-O>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-d-_ya> "<TIB-BA-R_D><TIB-YA>";"<R_D><BAS>";"<NOM><SUB>";IGNORE
-<rad-ba-d-_ra> "<TIB-BA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><SUB>";IGNORE
-<rad-ba-a-ga> "<TIB-BA-R_A><TIB-GA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-nga> "<TIB-BA-R_A><TIB-NGA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-da> "<TIB-BA-R_A><TIB-DA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-na> "<TIB-BA-R_A><TIB-NA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-ba> "<TIB-BA-R_A><TIB-BA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-ma> "<TIB-BA-R_A><TIB-MA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-ma2> "<TIB-BA-R_A><TIB-MA>";"<R_A><VAR>";"<NOM><NOM>";IGNORE
-<rad-ba-a--a> "<TIB-BA-R_A><TIB--A>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-ra> "<TIB-BA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-la> "<TIB-BA-R_A><TIB-LA>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-i> "<TIB-BA-R_A><TIB-I>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-u> "<TIB-BA-R_A><TIB-U>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-e> "<TIB-BA-R_A><TIB-E>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-o> "<TIB-BA-R_A><TIB-O>";"<R_A><BAS>";"<NOM><NOM>";IGNORE
-<rad-ba-a-_ya> "<TIB-BA-R_A><TIB-YA>";"<R_A><BAS>";"<NOM><SUB>";IGNORE
-<rad-ba-a-_ra> "<TIB-BA-R_A><TIB-RA>";"<R_A><BAS>";"<NOM><SUB>";IGNORE
-<rad-ba-r> <TIB-BA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ba-l> <TIB-BA-R_L>;<R_L>;<SUB>;IGNORE
-<rad-ba-s> <TIB-BA-R_S>;<R_S>;<SUB>;IGNORE
-<U0F58> <TIB-MA>;<BAS>;<NOM>;IGNORE % ma
-<U0FA8> <TIB-MA>;<BAS>;<SUB>;IGNORE
-<U0F7E> <TIB-MA>;<VAR>;<NOM>;IGNORE %
-<U0F82> <TIB-MA>;<VAR>;<SUB>;IGNORE %
-<U0F83> <TIB-MA>;<VAR>;<VAR>;IGNORE %
-<rad-ma-d-ga> "<TIB-MA-R_D><TIB-GA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-nga> "<TIB-MA-R_D><TIB-NGA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-na> "<TIB-MA-R_D><TIB-NA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-wa> "<TIB-MA-R_D><TIB-WA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d--a> "<TIB-MA-R_D><TIB--A>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-ra> "<TIB-MA-R_D><TIB-RA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-sa> "<TIB-MA-R_D><TIB-SA>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-i> "<TIB-MA-R_D><TIB-I>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-u> "<TIB-MA-R_D><TIB-U>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-e> "<TIB-MA-R_D><TIB-E>";"<R_D><BAS>";"<NOM><NOM>";IGNORE
-<rad-ma-d-o-da> "<TIB-MA-R_D><TIB-O><TIB-DA>";"<R_D><BAS><BAS>";"<NOM><NOM><NOM>";IGNORE
-<rad-ma-d-_ya> "<TIB-MA-R_D><TIB-YA>";"<R_D><BAS>";"<NOM><SUB>";IGNORE
-<rad-ma-r> <TIB-MA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-ma-s> <TIB-MA-R_S>;<R_S>;<SUB>;IGNORE
-<U0F59> <TIB-TSA>;<BAS>;<NOM>;IGNORE % tsa
-<U0FA9> <TIB-TSA>;<BAS>;<SUB>;IGNORE
-<rad-tsa-g> <TIB-TSA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-tsa-b> <TIB-TSA-R_B>;<R_B>;<NOM>;IGNORE
-<rad-tsa-r> <TIB-TSA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-tsa-s> <TIB-TSA-R_S>;<R_S>;<SUB>;IGNORE
-<rad-tsa-b-r> <TIB-TSA-R_BR>;<R_BR>;<SUB>;IGNORE
-<rad-tsa-b-s> <TIB-TSA-R_BS>;<R_BS>;<SUB>;IGNORE
-<U0F5A> <TIB-TSHA>;<BAS>;<NOM>;IGNORE % tsha
-<U0FAA> <TIB-TSHA>;<BAS>;<SUB>;IGNORE
-<rad-tsha-m> <TIB-TSHA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-tsha-a> <TIB-TSHA-R_A>;<R_A>;<NOM>;IGNORE
-<U0F5B> <TIB-DZA>;<BAS>;<NOM>;IGNORE % dza
-<U0FAB> <TIB-DZA>;<BAS>;<SUB>;IGNORE
-<U0F5C> "<TIB-DZA><TIB-HA>";"<BAS><BAS>";"<NOM><SUB>";IGNORE % dzha
-<U0FAC> "<TIB-DZA><TIB-HA>";"<BAS><BAS>";"<SUB><SUB>";IGNORE
-<rad-dza-m> <TIB-DZA-R_M>;<R_M>;<NOM>;IGNORE
-<rad-dza-a> <TIB-DZA-R_A>;<R_A>;<NOM>;IGNORE
-<rad-dza-r> <TIB-DZA-R_R>;<R_R>;<SUB>;IGNORE
-<rad-dza-b-r> <TIB-DZA-R_BR>;<R_BR>;<SUB>;IGNORE
-<U0F5D> <TIB-WA>;<BAS>;<NOM>;IGNORE % wa
-<U0FAD> <TIB-WA>;<BAS>;<SUB>;IGNORE
-<U0FBA> <TIB-WA>;<VAR>;<SUB>;IGNORE % fixed wa
-<U0F5E> <TIB-ZHA>;<BAS>;<NOM>;IGNORE % zha
-<U0FAE> <TIB-ZHA>;<BAS>;<SUB>;IGNORE
-<rad-zha-g> <TIB-ZHA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-zha-b> <TIB-ZHA-R_B>;<R_B>;<NOM>;IGNORE
-<U0F5F> <TIB-ZA>;<BAS>;<NOM>;IGNORE % za
-<U0FAF> <TIB-ZA>;<BAS>;<SUB>;IGNORE
-<rad-za-g> <TIB-ZA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-za-b> <TIB-ZA-R_B>;<R_B>;<NOM>;IGNORE
-<U0F60> <TIB--A>;<BAS>;<NOM>;IGNORE % -a
-<U0FB0> <TIB--A>;<BAS>;<SUB>;IGNORE
-<U0F61> <TIB-YA>;<BAS>;<NOM>;IGNORE % ya
-<U0FB1> <TIB-YA>;<BAS>;<SUB>;IGNORE
-<U0FBB> <TIB-YA>;<VAR>;<SUB>;IGNORE % fixed ya
-<rad-ya-g> <TIB-YA-R_G>;<R_G>;<NOM>;IGNORE
-<U0F62> <TIB-RA>;<BAS>;<NOM>;IGNORE % ra
-<U0FB2> <TIB-RA>;<BAS>;<SUB>;IGNORE
-<U0F6A> <TIB-RA>;<VAR>;<NOM>;IGNORE % fixed ra
-<U0FBC> <TIB-RA>;<VAR>;<SUB>;IGNORE
-<U0F76> <TIB-RA>;<BAS>;<VAR>;IGNORE % vocalic r
-% FIXME; which of the two?
-<U0F77> <TIB-RA>;<MAC>;<NOM>;IGNORE % vocalic rr
-%<U0F77> "<TIB-RA><TIB-I>";"<BAS><MAC>;"<SUB><VAR>;IGNORE % vocalic rr
-<rad-ra-b-la> "<TIB-RA-R_B><TIB-LA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<U0F63> <TIB-LA>;<BAS>;<NOM>;IGNORE % la
-<U0FB3> <TIB-LA>;<BAS>;<SUB>;IGNORE
-<U0F78> <TIB-LA>;<BAS>;<VAR>;IGNORE % vocalic l
-% FIXME; which of the two?
-<U0F79> <TIB-LA>;<MAC>;<NOM>;IGNORE % vocalic ll
-%<U0F79> "<TIB-LA><TIB-I>";"<BAS><MAC>;"<SUB><VAR>;IGNORE % vocalic ll
-<U0F64> <TIB-SHA>;<BAS>;<NOM>;IGNORE % sha
-<U0FB4> <TIB-SHA>;<BAS>;<SUB>;IGNORE
-<U0F65> <TIB-SHA>;<VAR>;<NOM>;IGNORE % ssa
-<U0FB5> <TIB-SHA>;<VAR>;<SUB>;IGNORE
-<rad-sha-g> <TIB-SHA-R_G>;<R_G>;<NOM>;IGNORE
-<rad-sha-b> <TIB-SHA-R_B>;<R_B>;<NOM>;IGNORE
-<U0F66> <TIB-SA>;<BAS>;<NOM>;IGNORE % sa
-<U0FB6> <TIB-SA>;<BAS>;<SUB>;IGNORE
-<rad-sa-g-ga> "<TIB-SA-R_G><TIB-GA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-nga> "<TIB-SA-R_G><TIB-NGA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-da> "<TIB-SA-R_G><TIB-DA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-na> "<TIB-SA-R_G><TIB-NA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-ba> "<TIB-SA-R_G><TIB-BA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g--a> "<TIB-SA-R_G><TIB--A>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-ra> "<TIB-SA-R_G><TIB-RA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-la> "<TIB-SA-R_G><TIB-LA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-sa> "<TIB-SA-R_G><TIB-SA>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-i> "<TIB-SA-R_G><TIB-I>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-u> "<TIB-SA-R_G><TIB-U>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-e> "<TIB-SA-R_G><TIB-E>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-g-o> "<TIB-SA-R_G><TIB-O>";"<R_G><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-ga> "<TIB-SA-R_B><TIB-GA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-nga> "<TIB-SA-R_B><TIB-NGA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-da> "<TIB-SA-R_B><TIB-DA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-ba> "<TIB-SA-R_B><TIB-BA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-ma> "<TIB-SA-R_B><TIB-MA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-ma2> "<TIB-SA-R_B><TIB-MA>";"<R_B><VAR>";"<NOM><NOM>";IGNORE
-<rad-sa-b-ra> "<TIB-SA-R_B><TIB-RA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-la> "<TIB-SA-R_B><TIB-LA>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-i> "<TIB-SA-R_B><TIB-I>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-u> "<TIB-SA-R_B><TIB-U>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-e> "<TIB-SA-R_B><TIB-E>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-o> "<TIB-SA-R_B><TIB-O>";"<R_B><BAS>";"<NOM><NOM>";IGNORE
-<rad-sa-b-_wa> "<TIB-SA-R_B><TIB-WA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<rad-sa-b-_ra> "<TIB-SA-R_B><TIB-RA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<rad-sa-b-_la> "<TIB-SA-R_B><TIB-LA>";"<R_B><BAS>";"<NOM><SUB>";IGNORE
-<U0F67> <TIB-HA>;<BAS>;<NOM>;IGNORE % ha
-<U0FB7> <TIB-HA>;<BAS>;<SUB>;IGNORE
-<rad-ha-l> <TIB-HA-R_L>;<R_L>;<NOM>;IGNORE
-<U0F68> <TIB-A>;<BAS>;<NOM>;IGNORE % a
-<U0FB8> <TIB-A>;<BAS>;<SUB>;IGNORE
-
-% explicit vowels
-<U0F71> IGNORE;<MAC>;IGNORE;IGNORE % long vowel mark % FIXME
-<U0F72> <TIB-I>;<BAS>;<NOM>;IGNORE % i
-<U0F80> <TIB-I>;<BAS>;<VAR>;IGNORE % reversed i
-<U0F73> <TIB-I>;<MAC>;<NOM>;IGNORE % ii
-<U0F81> <TIB-I>;<MAC>;<VAR>;IGNORE % reversed ii
-<U0F74> <TIB-U>;<BAS>;<NOM>;IGNORE % u
-<U0F75> <TIB-U>;<MAC>;<NOM>;IGNORE % uu
-<U0F7A> <TIB-E>;<BAS>;<NOM>;IGNORE % e
-<U0F7B> <TIB-E>;<MAC>;<NOM>;IGNORE % ee
-<U0F7C> <TIB-O>;<BAS>;<NOM>;IGNORE % o
-<U0F7D> <TIB-O>;<MAC>;<NOM>;IGNORE % oo
-
-% FIXME: 0F39, 0F7F, 0F84, 0F85, 0F86, 0F87,
-
-% FIXME: 0F88, UF89, UF8A, 0F8B
-<U0F88> IGNORE;<PCT>;IGNORE;IGNORE
-<U0F89> IGNORE;<PCT>;IGNORE;IGNORE
-<U0F8A> IGNORE;<PCT>;IGNORE;IGNORE
-<U0F8B> IGNORE;<PCT>;IGNORE;IGNORE
+% &ཀར<ཀརྐ<ཀརྟ<ཀརྞ<ཀརྨ<ཀརྴ<ཀརྵ
+collating-element <e0f40-0f62> from "<U0F40><U0F62>"
+collating-symbol <s0f40-0f62>
+collating-element <e0f40-0f62-0f90> from "<U0F40><U0F62><U0F90>"
+collating-symbol <s0f40-0f62-0f90>
+collating-element <e0f40-0f62-0f9f> from "<U0F40><U0F62><U0F9F>"
+collating-symbol <s0f40-0f62-0f9f>
+collating-element <e0f40-0f62-0f9e> from "<U0F40><U0F62><U0F9E>"
+collating-symbol <s0f40-0f62-0f9e>
+collating-element <e0f40-0f62-0fa8> from "<U0F40><U0F62><U0FA8>"
+collating-symbol <s0f40-0f62-0fa8>
+collating-element <e0f40-0f62-0fb4> from "<U0F40><U0F62><U0FB4>"
+collating-symbol <s0f40-0f62-0fb4>
+collating-element <e0f40-0f62-0fb5> from "<U0F40><U0F62><U0FB5>"
+collating-symbol <s0f40-0f62-0fb5>
+% &ཀལ<ཀལྐ<ཀལྤ
+collating-element <e0f40-0f63> from "<U0F40><U0F63>"
+collating-symbol <s0f40-0f63>
+collating-element <e0f40-0f63-0f90> from "<U0F40><U0F63><U0F90>"
+collating-symbol <s0f40-0f63-0f90>
+collating-element <e0f40-0f63-0fa4> from "<U0F40><U0F63><U0FA4>"
+collating-symbol <s0f40-0f63-0fa4>
+% &ཀས<ཀསྨ
+collating-element <e0f40-0f66> from "<U0F40><U0F66>"
+collating-symbol <s0f40-0f66>
+collating-element <e0f40-0f66-0fa8> from "<U0F40><U0F66><U0FA8>"
+collating-symbol <s0f40-0f66-0fa8>
+% &གཉ<གཉྫ
+collating-element <e0f42-0f49> from "<U0F42><U0F49>"
+collating-symbol <s0f42-0f49>
+collating-element <e0f42-0f49-0fab> from "<U0F42><U0F49><U0FAB>"
+collating-symbol <s0f42-0f49-0fab>
+% &ཐར<ཐརྐ
+collating-element <e0f50-0f62> from "<U0F50><U0F62>"
+collating-symbol <s0f50-0f62>
+collating-element <e0f50-0f62-0f90> from "<U0F50><U0F62><U0F90>"
+collating-symbol <s0f50-0f62-0f90>
+% &པུས<པུསྟི
+collating-element <e0f54-0f74-0f66> from "<U0F54><U0F74><U0F66>"
+collating-symbol <s0f54-0f74-0f66>
+collating-element <e0f54-0f74-0f66-0f9f-0f72> from "<U0F54><U0F74><U0F66><U0F9F><U0F72>"
+collating-symbol <s0f54-0f74-0f66-0f9f-0f72>
+% &ཕལ<ཕལྒ
+collating-element <e0f55-0f63> from "<U0F55><U0F63>"
+collating-symbol <s0f55-0f63>
+collating-element <e0f55-0f63-0f92> from "<U0F55><U0F63><U0F92>"
+collating-symbol <s0f55-0f63-0f92>
+% &བིལ<བིལྦ
+collating-element <e0f56-0f72-0f63> from "<U0F56><U0F72><U0F63>"
+collating-symbol <s0f56-0f72-0f63>
+collating-element <e0f56-0f72-0f63-0fa6> from "<U0F56><U0F72><U0F63><U0FA6>"
+collating-symbol <s0f56-0f72-0f63-0fa6>
+% &མཉ<མཉྫ
+collating-element <e0f58-0f49> from "<U0F58><U0F49>"
+collating-symbol <s0f58-0f49>
+collating-element <e0f58-0f49-0fab> from "<U0F58><U0F49><U0FAB>"
+collating-symbol <s0f58-0f49-0fab>
+% &མར<མརྒ
+collating-element <e0f58-0f62> from "<U0F58><U0F62>"
+collating-symbol <s0f58-0f62>
+collating-element <e0f58-0f62-0f92> from "<U0F58><U0F62><U0F92>"
+collating-symbol <s0f58-0f62-0f92>
+% &ཝར<ཝརྟ
+collating-element <e0f5d-0f62> from "<U0F5D><U0F62>"
+collating-symbol <s0f5d-0f62>
+collating-element <e0f5d-0f62-0f9f> from "<U0F5D><U0F62><U0F9F>"
+collating-symbol <s0f5d-0f62-0f9f>
+% &ཤས<ཤསྟ
+collating-element <e0f64-0f66> from "<U0F64><U0F66>"
+collating-symbol <s0f64-0f66>
+collating-element <e0f64-0f66-0f9f> from "<U0F64><U0F66><U0F9F>"
+collating-symbol <s0f64-0f66-0f9f>
+% &སར<སརྒ
+collating-element <e0f66-0f62> from "<U0F66><U0F62>"
+collating-symbol <s0f66-0f62>
+collating-element <e0f66-0f62-0f92> from "<U0F66><U0F62><U0F92>"
+collating-symbol <s0f66-0f62-0f92>
+% &ཨར<ཨརྒ<ཨརྱ=ཨཪྱ
+collating-element <e0f68-0f62> from "<U0F68><U0F62>"
+collating-symbol <s0f68-0f62>
+collating-element <e0f68-0f62-0f92> from "<U0F68><U0F62><U0F92>"
+collating-symbol <s0f68-0f62-0f92>
+collating-element <e0f68-0f62-0fb1> from "<U0F68><U0F62><U0FB1>"
+collating-symbol <s0f68-0f62-0fb1>
+collating-element <e0f68-0f6a-0fb1> from "<U0F68><U0F6A><U0FB1>"
+collating-symbol <s0f68-0f6a-0fb1>
+% &ཨས<ཨསྨ
+collating-element <e0f68-0f66> from "<U0F68><U0F66>"
+collating-symbol <s0f68-0f66>
+collating-element <e0f68-0f66-0fa8> from "<U0F68><U0F66><U0FA8>"
+collating-symbol <s0f68-0f66-0fa8>
+% # Marks (secondary different, with low equal primary weight after Lao)
+% &[before 1]ཀ<།<<༎<<༏<<༐<<༑<<༔<<༴<་=༌
+% &ཀ<<ྈྐ<ཫ<དཀ<བཀ<རྐ<ལྐ<སྐ<བརྐ<བསྐ
+collating-element <e0f88-0f90> from "<U0F88><U0F90>" % ྈྐ
+collating-symbol <s0f88-0f90>
+collating-element <e0f51-0f40> from "<U0F51><U0F40>"
+collating-symbol <s0f51-0f40>
+collating-element <e0f56-0f40> from "<U0F56><U0F40>"
+collating-symbol <s0f56-0f40>
+collating-element <e0f62-0f90> from "<U0F62><U0F90>" % རྐ
+collating-symbol <s0f62-0f90>
+collating-element <e0f63-0f90> from "<U0F63><U0F90>"
+collating-symbol <s0f63-0f90>
+collating-element <e0f66-0f90> from "<U0F66><U0F90>"
+collating-symbol <s0f66-0f90>
+collating-element <e0f56-0f62-0f90> from "<U0F56><U0F62><U0F90>"
+collating-symbol <s0f56-0f62-0f90>
+collating-element <e0f56-0f66-0f90> from "<U0F56><U0F66><U0F90>"
+collating-symbol <s0f56-0f66-0f90>
+% &ཁ<<ྈྑ<མཁ<འཁ
+collating-element <e0f88-0f91> from "<U0F88><U0F91>"
+collating-symbol <s0f88-0f91>
+collating-element <e0f58-0f41> from "<U0F58><U0F41>"
+collating-symbol <s0f58-0f41>
+collating-element <e0f60-0f41> from "<U0F60><U0F41>"
+collating-symbol <s0f60-0f41>
+% &ག<དགག<དགང<དགད<དགན<དགབ<དགཝ<དགའ<དགར<དགལ<དགས<དགི<དགུ<དགེ<དགོ<དགྭ<དགྱ<དགྲ<བགག<བགང<བགད<བགབ<བགམ<<<བགཾ<བགཝ<བགའ
+% <བགར<བགལ<བགི<བགུ<བགེ<བགོ<བགྭ<བགྱ<བགྲ<བགླ<མགག<མགང<མགད<མགབ<མགའ<མགར<མགལ<མགི<མགུ<མགེ<མགོ<མགྭ<མགྱ<མགྲ<འགག<འགང<འགད<འགན<འགབ<འགམ<<<འགཾ
+% <འགའ<འགར<འགལ<འགས<འགི<འགུ<འགེ<འགོ<འགྭ<འགྱ<འགྲ<རྒ<ལྒ<སྒ<བརྒ<བསྒ
+collating-element <e0f51-0f42-0f42> from "<U0F51><U0F42><U0F42>"
+collating-symbol <s0f51-0f42-0f42>
+collating-element <e0f51-0f42-0f44> from "<U0F51><U0F42><U0F44>"
+collating-symbol <s0f51-0f42-0f44>
+collating-element <e0f51-0f42-0f51> from "<U0F51><U0F42><U0F51>"
+collating-symbol <s0f51-0f42-0f51>
+collating-element <e0f51-0f42-0f53> from "<U0F51><U0F42><U0F53>"
+collating-symbol <s0f51-0f42-0f53>
+collating-element <e0f51-0f42-0f56> from "<U0F51><U0F42><U0F56>"
+collating-symbol <s0f51-0f42-0f56>
+collating-element <e0f51-0f42-0f5d> from "<U0F51><U0F42><U0F5D>"
+collating-symbol <s0f51-0f42-0f5d>
+collating-element <e0f51-0f42-0f60> from "<U0F51><U0F42><U0F60>"
+collating-symbol <s0f51-0f42-0f60>
+collating-element <e0f51-0f42-0f62> from "<U0F51><U0F42><U0F62>"
+collating-symbol <s0f51-0f42-0f62>
+collating-element <e0f51-0f42-0f63> from "<U0F51><U0F42><U0F63>"
+collating-symbol <s0f51-0f42-0f63>
+collating-element <e0f51-0f42-0f66> from "<U0F51><U0F42><U0F66>"
+collating-symbol <s0f51-0f42-0f66>
+collating-element <e0f51-0f42-0f72> from "<U0F51><U0F42><U0F72>"
+collating-symbol <s0f51-0f42-0f72>
+collating-element <e0f51-0f42-0f74> from "<U0F51><U0F42><U0F74>"
+collating-symbol <s0f51-0f42-0f74>
+collating-element <e0f51-0f42-0f7a> from "<U0F51><U0F42><U0F7A>"
+collating-symbol <s0f51-0f42-0f7a>
+collating-element <e0f51-0f42-0f7c> from "<U0F51><U0F42><U0F7C>"
+collating-symbol <s0f51-0f42-0f7c>
+collating-element <e0f51-0f42-0fad> from "<U0F51><U0F42><U0FAD>"
+collating-symbol <s0f51-0f42-0fad>
+collating-element <e0f51-0f42-0fb1> from "<U0F51><U0F42><U0FB1>"
+collating-symbol <s0f51-0f42-0fb1>
+collating-element <e0f51-0f42-0fb2> from "<U0F51><U0F42><U0FB2>"
+collating-symbol <s0f51-0f42-0fb2>
+collating-element <e0f56-0f42-0f42> from "<U0F56><U0F42><U0F42>"
+collating-symbol <s0f56-0f42-0f42>
+collating-element <e0f56-0f42-0f44> from "<U0F56><U0F42><U0F44>"
+collating-symbol <s0f56-0f42-0f44>
+collating-element <e0f56-0f42-0f51> from "<U0F56><U0F42><U0F51>"
+collating-symbol <s0f56-0f42-0f51>
+collating-element <e0f56-0f42-0f56> from "<U0F56><U0F42><U0F56>"
+collating-symbol <s0f56-0f42-0f56>
+collating-element <e0f56-0f42-0f58> from "<U0F56><U0F42><U0F58>"
+collating-symbol <s0f56-0f42-0f58>
+collating-element <e0f56-0f42-0f7e> from "<U0F56><U0F42><U0F7E>"
+collating-element <e0f56-0f42-0f5d> from "<U0F56><U0F42><U0F5D>"
+collating-symbol <s0f56-0f42-0f5d>
+collating-element <e0f56-0f42-0f60> from "<U0F56><U0F42><U0F60>"
+collating-symbol <s0f56-0f42-0f60>
+collating-element <e0f56-0f42-0f62> from "<U0F56><U0F42><U0F62>"
+collating-symbol <s0f56-0f42-0f62>
+collating-element <e0f56-0f42-0f63> from "<U0F56><U0F42><U0F63>"
+collating-symbol <s0f56-0f42-0f63>
+collating-element <e0f56-0f42-0f72> from "<U0F56><U0F42><U0F72>"
+collating-symbol <s0f56-0f42-0f72>
+collating-element <e0f56-0f42-0f74> from "<U0F56><U0F42><U0F74>"
+collating-symbol <s0f56-0f42-0f74>
+collating-element <e0f56-0f42-0f7a> from "<U0F56><U0F42><U0F7A>"
+collating-symbol <s0f56-0f42-0f7a>
+collating-element <e0f56-0f42-0f7c> from "<U0F56><U0F42><U0F7C>"
+collating-symbol <s0f56-0f42-0f7c>
+collating-element <e0f56-0f42-0fad> from "<U0F56><U0F42><U0FAD>"
+collating-symbol <s0f56-0f42-0fad>
+collating-element <e0f56-0f42-0fb1> from "<U0F56><U0F42><U0FB1>"
+collating-symbol <s0f56-0f42-0fb1>
+collating-element <e0f56-0f42-0fb2> from "<U0F56><U0F42><U0FB2>"
+collating-symbol <s0f56-0f42-0fb2>
+collating-element <e0f56-0f42-0fb3> from "<U0F56><U0F42><U0FB3>"
+collating-symbol <s0f56-0f42-0fb3>
+collating-element <e0f58-0f42-0f42> from "<U0F58><U0F42><U0F42>"
+collating-symbol <s0f58-0f42-0f42>
+collating-element <e0f58-0f42-0f44> from "<U0F58><U0F42><U0F44>"
+collating-symbol <s0f58-0f42-0f44>
+collating-element <e0f58-0f42-0f51> from "<U0F58><U0F42><U0F51>"
+collating-symbol <s0f58-0f42-0f51>
+collating-element <e0f58-0f42-0f56> from "<U0F58><U0F42><U0F56>"
+collating-symbol <s0f58-0f42-0f56>
+collating-element <e0f58-0f42-0f60> from "<U0F58><U0F42><U0F60>"
+collating-symbol <s0f58-0f42-0f60>
+collating-element <e0f58-0f42-0f62> from "<U0F58><U0F42><U0F62>"
+collating-symbol <s0f58-0f42-0f62>
+collating-element <e0f58-0f42-0f63> from "<U0F58><U0F42><U0F63>"
+collating-symbol <s0f58-0f42-0f63>
+collating-element <e0f58-0f42-0f72> from "<U0F58><U0F42><U0F72>"
+collating-symbol <s0f58-0f42-0f72>
+collating-element <e0f58-0f42-0f74> from "<U0F58><U0F42><U0F74>"
+collating-symbol <s0f58-0f42-0f74>
+collating-element <e0f58-0f42-0f7a> from "<U0F58><U0F42><U0F7A>"
+collating-symbol <s0f58-0f42-0f7a>
+collating-element <e0f58-0f42-0f7c> from "<U0F58><U0F42><U0F7C>"
+collating-symbol <s0f58-0f42-0f7c>
+collating-element <e0f58-0f42-0fad> from "<U0F58><U0F42><U0FAD>"
+collating-symbol <s0f58-0f42-0fad>
+collating-element <e0f58-0f42-0fb1> from "<U0F58><U0F42><U0FB1>"
+collating-symbol <s0f58-0f42-0fb1>
+collating-element <e0f58-0f42-0fb2> from "<U0F58><U0F42><U0FB2>"
+collating-symbol <s0f58-0f42-0fb2>
+collating-element <e0f60-0f42-0f42> from "<U0F60><U0F42><U0F42>"
+collating-symbol <s0f60-0f42-0f42>
+collating-element <e0f60-0f42-0f44> from "<U0F60><U0F42><U0F44>"
+collating-symbol <s0f60-0f42-0f44>
+collating-element <e0f60-0f42-0f51> from "<U0F60><U0F42><U0F51>"
+collating-symbol <s0f60-0f42-0f51>
+collating-element <e0f60-0f42-0f53> from "<U0F60><U0F42><U0F53>"
+collating-symbol <s0f60-0f42-0f53>
+collating-element <e0f60-0f42-0f56> from "<U0F60><U0F42><U0F56>"
+collating-symbol <s0f60-0f42-0f56>
+collating-element <e0f60-0f42-0f58> from "<U0F60><U0F42><U0F58>"
+collating-symbol <s0f60-0f42-0f58>
+collating-element <e0f60-0f42-0f7e> from "<U0F60><U0F42><U0F7E>"
+collating-element <e0f60-0f42-0f60> from "<U0F60><U0F42><U0F60>"
+collating-symbol <s0f60-0f42-0f60>
+collating-element <e0f60-0f42-0f62> from "<U0F60><U0F42><U0F62>"
+collating-symbol <s0f60-0f42-0f62>
+collating-element <e0f60-0f42-0f63> from "<U0F60><U0F42><U0F63>"
+collating-symbol <s0f60-0f42-0f63>
+collating-element <e0f60-0f42-0f66> from "<U0F60><U0F42><U0F66>"
+collating-symbol <s0f60-0f42-0f66>
+collating-element <e0f60-0f42-0f72> from "<U0F60><U0F42><U0F72>"
+collating-symbol <s0f60-0f42-0f72>
+collating-element <e0f60-0f42-0f74> from "<U0F60><U0F42><U0F74>"
+collating-symbol <s0f60-0f42-0f74>
+collating-element <e0f60-0f42-0f7a> from "<U0F60><U0F42><U0F7A>"
+collating-symbol <s0f60-0f42-0f7a>
+collating-element <e0f60-0f42-0f7c> from "<U0F60><U0F42><U0F7C>"
+collating-symbol <s0f60-0f42-0f7c>
+collating-element <e0f60-0f42-0fad> from "<U0F60><U0F42><U0FAD>"
+collating-symbol <s0f60-0f42-0fad>
+collating-element <e0f60-0f42-0fb1> from "<U0F60><U0F42><U0FB1>"
+collating-symbol <s0f60-0f42-0fb1>
+collating-element <e0f60-0f42-0fb2> from "<U0F60><U0F42><U0FB2>"
+collating-symbol <s0f60-0f42-0fb2>
+collating-element <e0f62-0f92> from "<U0F62><U0F92>"
+collating-symbol <s0f62-0f92>
+collating-element <e0f63-0f92> from "<U0F63><U0F92>"
+collating-symbol <s0f63-0f92>
+collating-element <e0f66-0f92> from "<U0F66><U0F92>"
+collating-symbol <s0f66-0f92>
+collating-element <e0f56-0f62-0f92> from "<U0F56><U0F62><U0F92>"
+collating-symbol <s0f56-0f62-0f92>
+collating-element <e0f56-0f66-0f92> from "<U0F56><U0F66><U0F92>"
+collating-symbol <s0f56-0f66-0f92>
+% &ང<<<ྂ<<<ྃ<དངག<དངང<དངད<དངན<དངབ<དངའ<དངར<དངལ<དངི<དངུ<དངེ<དངོ<མངག<མངང<མངད<མངན<མངབ<མངའ<མངར<མངལ<མངི<མངུ<མངེ<མངོ<རྔ<ལྔ<སྔ<བརྔ<བསྔ
+collating-element <e0f51-0f44-0f42> from "<U0F51><U0F44><U0F42>"
+collating-symbol <s0f51-0f44-0f42>
+collating-element <e0f51-0f44-0f44> from "<U0F51><U0F44><U0F44>"
+collating-symbol <s0f51-0f44-0f44>
+collating-element <e0f51-0f44-0f51> from "<U0F51><U0F44><U0F51>"
+collating-symbol <s0f51-0f44-0f51>
+collating-element <e0f51-0f44-0f53> from "<U0F51><U0F44><U0F53>"
+collating-symbol <s0f51-0f44-0f53>
+collating-element <e0f51-0f44-0f56> from "<U0F51><U0F44><U0F56>"
+collating-symbol <s0f51-0f44-0f56>
+collating-element <e0f51-0f44-0f60> from "<U0F51><U0F44><U0F60>"
+collating-symbol <s0f51-0f44-0f60>
+collating-element <e0f51-0f44-0f62> from "<U0F51><U0F44><U0F62>"
+collating-symbol <s0f51-0f44-0f62>
+collating-element <e0f51-0f44-0f63> from "<U0F51><U0F44><U0F63>"
+collating-symbol <s0f51-0f44-0f63>
+collating-element <e0f51-0f44-0f72> from "<U0F51><U0F44><U0F72>"
+collating-symbol <s0f51-0f44-0f72>
+collating-element <e0f51-0f44-0f74> from "<U0F51><U0F44><U0F74>"
+collating-symbol <s0f51-0f44-0f74>
+collating-element <e0f51-0f44-0f7a> from "<U0F51><U0F44><U0F7A>"
+collating-symbol <s0f51-0f44-0f7a>
+collating-element <e0f51-0f44-0f7c> from "<U0F51><U0F44><U0F7C>"
+collating-symbol <s0f51-0f44-0f7c>
+collating-element <e0f58-0f44-0f42> from "<U0F58><U0F44><U0F42>"
+collating-symbol <s0f58-0f44-0f42>
+collating-element <e0f58-0f44-0f44> from "<U0F58><U0F44><U0F44>"
+collating-symbol <s0f58-0f44-0f44>
+collating-element <e0f58-0f44-0f51> from "<U0F58><U0F44><U0F51>"
+collating-symbol <s0f58-0f44-0f51>
+collating-element <e0f58-0f44-0f53> from "<U0F58><U0F44><U0F53>"
+collating-symbol <s0f58-0f44-0f53>
+collating-element <e0f58-0f44-0f56> from "<U0F58><U0F44><U0F56>"
+collating-symbol <s0f58-0f44-0f56>
+collating-element <e0f58-0f44-0f60> from "<U0F58><U0F44><U0F60>"
+collating-symbol <s0f58-0f44-0f60>
+collating-element <e0f58-0f44-0f62> from "<U0F58><U0F44><U0F62>"
+collating-symbol <s0f58-0f44-0f62>
+collating-element <e0f58-0f44-0f63> from "<U0F58><U0F44><U0F63>"
+collating-symbol <s0f58-0f44-0f63>
+collating-element <e0f58-0f44-0f72> from "<U0F58><U0F44><U0F72>"
+collating-symbol <s0f58-0f44-0f72>
+collating-element <e0f58-0f44-0f74> from "<U0F58><U0F44><U0F74>"
+collating-symbol <s0f58-0f44-0f74>
+collating-element <e0f58-0f44-0f7a> from "<U0F58><U0F44><U0F7A>"
+collating-symbol <s0f58-0f44-0f7a>
+collating-element <e0f58-0f44-0f7c> from "<U0F58><U0F44><U0F7C>"
+collating-symbol <s0f58-0f44-0f7c>
+collating-element <e0f62-0f94> from "<U0F62><U0F94>"
+collating-symbol <s0f62-0f94>
+collating-element <e0f63-0f94> from "<U0F63><U0F94>"
+collating-symbol <s0f63-0f94>
+collating-element <e0f66-0f94> from "<U0F66><U0F94>"
+collating-symbol <s0f66-0f94>
+collating-element <e0f56-0f62-0f94> from "<U0F56><U0F62><U0F94>"
+collating-symbol <s0f56-0f62-0f94>
+collating-element <e0f56-0f66-0f94> from "<U0F56><U0F66><U0F94>"
+collating-symbol <s0f56-0f66-0f94>
+% &ཅ<གཅ<བཅ<ལྕ<བལྕ
+collating-element <e0f42-0f45> from "<U0F42><U0F45>"
+collating-symbol <s0f42-0f45>
+collating-element <e0f56-0f45> from "<U0F56><U0F45>"
+collating-symbol <s0f56-0f45>
+collating-element <e0f63-0f95> from "<U0F63><U0F95>"
+collating-symbol <s0f63-0f95>
+collating-element <e0f56-0f63-0f95> from "<U0F56><U0F63><U0F95>"
+collating-symbol <s0f56-0f63-0f95>
+% &ཆ<མཆ<འཆ
+collating-element <e0f58-0f46> from "<U0F58><U0F46>"
+collating-symbol <s0f58-0f46>
+collating-element <e0f60-0f46> from "<U0F60><U0F46>"
+collating-symbol <s0f60-0f46>
+% &ཇ<མཇ<འཇ<རྗ<ལྗ<བརྗ
+collating-element <e0f58-0f47> from "<U0F58><U0F47>"
+collating-symbol <s0f58-0f47>
+collating-element <e0f60-0f47> from "<U0F60><U0F47>"
+collating-symbol <s0f60-0f47>
+collating-element <e0f62-0f97> from "<U0F62><U0F97>"
+collating-symbol <s0f62-0f97>
+collating-element <e0f63-0f97> from "<U0F63><U0F97>"
+collating-symbol <s0f63-0f97>
+collating-element <e0f56-0f62-0f97> from "<U0F56><U0F62><U0F97>"
+collating-symbol <s0f56-0f62-0f97>
+% &ཉ<<ྋྙ<གཉ<མཉ<རྙ=ཪྙ<སྙ<བརྙ=བཪྙ<བསྙ
+collating-element <e0f8b-0f99> from "<U0F8B><U0F99>"
+collating-symbol <s0f8b-0f99>
+% already defined above:
+% collating-element <e0f42-0f49> from "<U0F42><U0F49>"
+% collating-symbol <s0f42-0f49>
+% already defined above:
+% collating-element <e0f58-0f49> from "<U0F58><U0F49>"
+% collating-symbol <s0f58-0f49>
+collating-element <e0f62-0f99> from "<U0F62><U0F99>"
+collating-symbol <s0f62-0f99>
+collating-element <e0f6a-0f99> from "<U0F6A><U0F99>"
+collating-symbol <s0f6a-0f99>
+collating-element <e0f66-0f99> from "<U0F66><U0F99>"
+collating-symbol <s0f66-0f99>
+collating-element <e0f56-0f62-0f99> from "<U0F56><U0F62><U0F99>"
+collating-symbol <s0f56-0f62-0f99>
+collating-element <e0f56-0f6a-0f99> from "<U0F56><U0F6A><U0F99>"
+collating-symbol <s0f56-0f6a-0f99>
+collating-element <e0f56-0f66-0f99> from "<U0F56><U0F66><U0F99>"
+collating-symbol <s0f56-0f66-0f99>
+% &ཏ<ཊ<ཏྭ<ཏྲ<གཏ<བཏ<རྟ<ལྟ<སྟ<བརྟ<བལྟ<བསྟ
+collating-element <e0f4f-0fad> from "<U0F4F><U0FAD>"
+collating-symbol <s0f4f-0fad>
+collating-element <e0f4f-0fb2> from "<U0F4F><U0FB2>"
+collating-symbol <s0f4f-0fb2>
+collating-element <e0f42-0f4f> from "<U0F42><U0F4F>"
+collating-symbol <s0f42-0f4f>
+collating-element <e0f56-0f4f> from "<U0F56><U0F4F>"
+collating-symbol <s0f56-0f4f>
+collating-element <e0f62-0f9f> from "<U0F62><U0F9F>"
+collating-symbol <s0f62-0f9f>
+collating-element <e0f63-0f9f> from "<U0F63><U0F9F>"
+collating-symbol <s0f63-0f9f>
+collating-element <e0f66-0f9f> from "<U0F66><U0F9F>"
+collating-symbol <s0f66-0f9f>
+collating-element <e0f56-0f62-0f9f> from "<U0F56><U0F62><U0F9F>"
+collating-symbol <s0f56-0f62-0f9f>
+collating-element <e0f56-0f63-0f9f> from "<U0F56><U0F63><U0F9F>"
+collating-symbol <s0f56-0f63-0f9f>
+collating-element <e0f56-0f66-0f9f> from "<U0F56><U0F66><U0F9F>"
+collating-symbol <s0f56-0f66-0f9f>
+% &ཐ<ཋ<མཐ<འཐ
+collating-element <e0f58-0f50> from "<U0F58><U0F50>"
+collating-symbol <s0f58-0f50>
+collating-element <e0f60-0f50> from "<U0F60><U0F50>"
+collating-symbol <s0f60-0f50>
+% &ད<ཌ<གདག<གདང<གདད<གདན<གདབ<གདམ<<<གདཾ<གདའ<གདར<གདལ<གདས<གདི<གདུ<གདེ<གདོ<གདྭ<བདག<བདང<བདད<བདབ<བདམ<<<བདཾ<བདའ
+% <བདར<བདལ<བདས<བདི<བདུ<བདེ<བདོ<བདྭ<མདག<མདང<མདད<མདན<མདབ<མདའ<མདར<མདལ<མདས<མདི<མདུ<མདེ<མདོ<མདྭ<འདག<འདང<འདད<འདན<འདབ<འདམ<<<འདཾ
+% <འདཝ<འདའ<འདར<འདལ<འདས<འདི<འདུ<འདེ<འདོ<འདྭ<འདྲ<རྡ<ལྡ<སྡ<བརྡ<བལྡ<བསྡ
+collating-element <e0f42-0f51-0f42> from "<U0F42><U0F51><U0F42>"
+collating-symbol <s0f42-0f51-0f42>
+collating-element <e0f42-0f51-0f44> from "<U0F42><U0F51><U0F44>"
+collating-symbol <s0f42-0f51-0f44>
+collating-element <e0f42-0f51-0f51> from "<U0F42><U0F51><U0F51>"
+collating-symbol <s0f42-0f51-0f51>
+collating-element <e0f42-0f51-0f53> from "<U0F42><U0F51><U0F53>"
+collating-symbol <s0f42-0f51-0f53>
+collating-element <e0f42-0f51-0f56> from "<U0F42><U0F51><U0F56>"
+collating-symbol <s0f42-0f51-0f56>
+collating-element <e0f42-0f51-0f58> from "<U0F42><U0F51><U0F58>"
+collating-symbol <s0f42-0f51-0f58>
+collating-element <e0f42-0f51-0f7e> from "<U0F42><U0F51><U0F7E>"
+collating-symbol <s0f42-0f51-0f7e>
+collating-element <e0f42-0f51-0f60> from "<U0F42><U0F51><U0F60>"
+collating-symbol <s0f42-0f51-0f60>
+collating-element <e0f42-0f51-0f62> from "<U0F42><U0F51><U0F62>"
+collating-symbol <s0f42-0f51-0f62>
+collating-element <e0f42-0f51-0f63> from "<U0F42><U0F51><U0F63>"
+collating-symbol <s0f42-0f51-0f63>
+collating-element <e0f42-0f51-0f66> from "<U0F42><U0F51><U0F66>"
+collating-symbol <s0f42-0f51-0f66>
+collating-element <e0f42-0f51-0f72> from "<U0F42><U0F51><U0F72>"
+collating-symbol <s0f42-0f51-0f72>
+collating-element <e0f42-0f51-0f74> from "<U0F42><U0F51><U0F74>"
+collating-symbol <s0f42-0f51-0f74>
+collating-element <e0f42-0f51-0f7a> from "<U0F42><U0F51><U0F7A>"
+collating-symbol <s0f42-0f51-0f7a>
+collating-element <e0f42-0f51-0f7c> from "<U0F42><U0F51><U0F7C>"
+collating-symbol <s0f42-0f51-0f7c>
+collating-element <e0f42-0f51-0fad> from "<U0F42><U0F51><U0FAD>"
+collating-symbol <s0f42-0f51-0fad>
+collating-element <e0f56-0f51-0f42> from "<U0F56><U0F51><U0F42>"
+collating-symbol <s0f56-0f51-0f42>
+collating-element <e0f56-0f51-0f44> from "<U0F56><U0F51><U0F44>"
+collating-symbol <s0f56-0f51-0f44>
+collating-element <e0f56-0f51-0f51> from "<U0F56><U0F51><U0F51>"
+collating-symbol <s0f56-0f51-0f51>
+collating-element <e0f56-0f51-0f56> from "<U0F56><U0F51><U0F56>"
+collating-symbol <s0f56-0f51-0f56>
+collating-element <e0f56-0f51-0f58> from "<U0F56><U0F51><U0F58>"
+collating-symbol <s0f56-0f51-0f58>
+collating-element <e0f56-0f51-0f7e> from "<U0F56><U0F51><U0F7E>"
+collating-symbol <s0f56-0f51-0f7e>
+collating-element <e0f56-0f51-0f60> from "<U0F56><U0F51><U0F60>"
+collating-symbol <s0f56-0f51-0f60>
+collating-element <e0f56-0f51-0f62> from "<U0F56><U0F51><U0F62>"
+collating-symbol <s0f56-0f51-0f62>
+collating-element <e0f56-0f51-0f63> from "<U0F56><U0F51><U0F63>"
+collating-symbol <s0f56-0f51-0f63>
+collating-element <e0f56-0f51-0f66> from "<U0F56><U0F51><U0F66>"
+collating-symbol <s0f56-0f51-0f66>
+collating-element <e0f56-0f51-0f72> from "<U0F56><U0F51><U0F72>"
+collating-symbol <s0f56-0f51-0f72>
+collating-element <e0f56-0f51-0f74> from "<U0F56><U0F51><U0F74>"
+collating-symbol <s0f56-0f51-0f74>
+collating-element <e0f56-0f51-0f7a> from "<U0F56><U0F51><U0F7A>"
+collating-symbol <s0f56-0f51-0f7a>
+collating-element <e0f56-0f51-0f7c> from "<U0F56><U0F51><U0F7C>"
+collating-symbol <s0f56-0f51-0f7c>
+collating-element <e0f56-0f51-0fad> from "<U0F56><U0F51><U0FAD>"
+collating-symbol <s0f56-0f51-0fad>
+collating-element <e0f58-0f51-0f42> from "<U0F58><U0F51><U0F42>"
+collating-symbol <s0f58-0f51-0f42>
+collating-element <e0f58-0f51-0f44> from "<U0F58><U0F51><U0F44>"
+collating-symbol <s0f58-0f51-0f44>
+collating-element <e0f58-0f51-0f51> from "<U0F58><U0F51><U0F51>"
+collating-symbol <s0f58-0f51-0f51>
+collating-element <e0f58-0f51-0f53> from "<U0F58><U0F51><U0F53>"
+collating-symbol <s0f58-0f51-0f53>
+collating-element <e0f58-0f51-0f56> from "<U0F58><U0F51><U0F56>"
+collating-symbol <s0f58-0f51-0f56>
+collating-element <e0f58-0f51-0f60> from "<U0F58><U0F51><U0F60>"
+collating-symbol <s0f58-0f51-0f60>
+collating-element <e0f58-0f51-0f62> from "<U0F58><U0F51><U0F62>"
+collating-symbol <s0f58-0f51-0f62>
+collating-element <e0f58-0f51-0f63> from "<U0F58><U0F51><U0F63>"
+collating-symbol <s0f58-0f51-0f63>
+collating-element <e0f58-0f51-0f66> from "<U0F58><U0F51><U0F66>"
+collating-symbol <s0f58-0f51-0f66>
+collating-element <e0f58-0f51-0f72> from "<U0F58><U0F51><U0F72>"
+collating-symbol <s0f58-0f51-0f72>
+collating-element <e0f58-0f51-0f74> from "<U0F58><U0F51><U0F74>"
+collating-symbol <s0f58-0f51-0f74>
+collating-element <e0f58-0f51-0f7a> from "<U0F58><U0F51><U0F7A>"
+collating-symbol <s0f58-0f51-0f7a>
+collating-element <e0f58-0f51-0f7c> from "<U0F58><U0F51><U0F7C>"
+collating-symbol <s0f58-0f51-0f7c>
+collating-element <e0f58-0f51-0fad> from "<U0F58><U0F51><U0FAD>"
+collating-symbol <s0f58-0f51-0fad>
+collating-element <e0f60-0f51-0f42> from "<U0F60><U0F51><U0F42>"
+collating-symbol <s0f60-0f51-0f42>
+collating-element <e0f60-0f51-0f44> from "<U0F60><U0F51><U0F44>"
+collating-symbol <s0f60-0f51-0f44>
+collating-element <e0f60-0f51-0f51> from "<U0F60><U0F51><U0F51>"
+collating-symbol <s0f60-0f51-0f51>
+collating-element <e0f60-0f51-0f53> from "<U0F60><U0F51><U0F53>"
+collating-symbol <s0f60-0f51-0f53>
+collating-element <e0f60-0f51-0f56> from "<U0F60><U0F51><U0F56>"
+collating-symbol <s0f60-0f51-0f56>
+collating-element <e0f60-0f51-0f58> from "<U0F60><U0F51><U0F58>"
+collating-symbol <s0f60-0f51-0f58>
+collating-element <e0f60-0f51-0f7e> from "<U0F60><U0F51><U0F7E>"
+collating-symbol <s0f60-0f51-0f7e>
+collating-element <e0f60-0f51-0f5d> from "<U0F60><U0F51><U0F5D>"
+collating-symbol <s0f60-0f51-0f5d>
+collating-element <e0f60-0f51-0f60> from "<U0F60><U0F51><U0F60>"
+collating-symbol <s0f60-0f51-0f60>
+collating-element <e0f60-0f51-0f62> from "<U0F60><U0F51><U0F62>"
+collating-symbol <s0f60-0f51-0f62>
+collating-element <e0f60-0f51-0f63> from "<U0F60><U0F51><U0F63>"
+collating-symbol <s0f60-0f51-0f63>
+collating-element <e0f60-0f51-0f66> from "<U0F60><U0F51><U0F66>"
+collating-symbol <s0f60-0f51-0f66>
+collating-element <e0f60-0f51-0f72> from "<U0F60><U0F51><U0F72>"
+collating-symbol <s0f60-0f51-0f72>
+collating-element <e0f60-0f51-0f74> from "<U0F60><U0F51><U0F74>"
+collating-symbol <s0f60-0f51-0f74>
+collating-element <e0f60-0f51-0f7a> from "<U0F60><U0F51><U0F7A>"
+collating-symbol <s0f60-0f51-0f7a>
+collating-element <e0f60-0f51-0f7c> from "<U0F60><U0F51><U0F7C>"
+collating-symbol <s0f60-0f51-0f7c>
+collating-element <e0f60-0f51-0fad> from "<U0F60><U0F51><U0FAD>"
+collating-symbol <s0f60-0f51-0fad>
+collating-element <e0f60-0f51-0fb2> from "<U0F60><U0F51><U0FB2>"
+collating-symbol <s0f60-0f51-0fb2>
+collating-element <e0f62-0fa1> from "<U0F62><U0FA1>"
+collating-symbol <s0f62-0fa1>
+collating-element <e0f63-0fa1> from "<U0F63><U0FA1>"
+collating-symbol <s0f63-0fa1>
+collating-element <e0f66-0fa1> from "<U0F66><U0FA1>"
+collating-symbol <s0f66-0fa1>
+collating-element <e0f56-0f62-0fa1> from "<U0F56><U0F62><U0FA1>"
+collating-symbol <s0f56-0f62-0fa1>
+collating-element <e0f56-0f63-0fa1> from "<U0F56><U0F63><U0FA1>"
+collating-symbol <s0f56-0f63-0fa1>
+collating-element <e0f56-0f66-0fa1> from "<U0F56><U0F66><U0FA1>"
+collating-symbol <s0f56-0f66-0fa1>
+% &ན<ཎ<གནག<གནང<གནད<གནན<གནབ<གནམ<<<གནཾ<གནཝ<གནའ<གནར<གནལ<གནས<གནི<གནུ<གནེ<གནོ<གནྭ<མནག<མནང<མནད<མནན<མནབ<མནམ<<<མནཾ<མནའ
+% <མནར<མནལ<མནས<མནི<མནུ<མནེ<མནོ<མནྭ<རྣ<སྣ<བརྣ<བསྣ
+collating-element <e0f42-0f53-0f42> from "<U0F42><U0F53><U0F42>"
+collating-symbol <s0f42-0f53-0f42>
+collating-element <e0f42-0f53-0f44> from "<U0F42><U0F53><U0F44>"
+collating-symbol <s0f42-0f53-0f44>
+collating-element <e0f42-0f53-0f51> from "<U0F42><U0F53><U0F51>"
+collating-symbol <s0f42-0f53-0f51>
+collating-element <e0f42-0f53-0f53> from "<U0F42><U0F53><U0F53>"
+collating-symbol <s0f42-0f53-0f53>
+collating-element <e0f42-0f53-0f56> from "<U0F42><U0F53><U0F56>"
+collating-symbol <s0f42-0f53-0f56>
+collating-element <e0f42-0f53-0f58> from "<U0F42><U0F53><U0F58>"
+collating-symbol <s0f42-0f53-0f58>
+collating-element <e0f42-0f53-0f7e> from "<U0F42><U0F53><U0F7E>"
+collating-symbol <s0f42-0f53-0f7e>
+collating-element <e0f42-0f53-0f5d> from "<U0F42><U0F53><U0F5D>"
+collating-symbol <s0f42-0f53-0f5d>
+collating-element <e0f42-0f53-0f60> from "<U0F42><U0F53><U0F60>"
+collating-symbol <s0f42-0f53-0f60>
+collating-element <e0f42-0f53-0f62> from "<U0F42><U0F53><U0F62>"
+collating-symbol <s0f42-0f53-0f62>
+collating-element <e0f42-0f53-0f63> from "<U0F42><U0F53><U0F63>"
+collating-symbol <s0f42-0f53-0f63>
+collating-element <e0f42-0f53-0f66> from "<U0F42><U0F53><U0F66>"
+collating-symbol <s0f42-0f53-0f66>
+collating-element <e0f42-0f53-0f72> from "<U0F42><U0F53><U0F72>"
+collating-symbol <s0f42-0f53-0f72>
+collating-element <e0f42-0f53-0f74> from "<U0F42><U0F53><U0F74>"
+collating-symbol <s0f42-0f53-0f74>
+collating-element <e0f42-0f53-0f7a> from "<U0F42><U0F53><U0F7A>"
+collating-symbol <s0f42-0f53-0f7a>
+collating-element <e0f42-0f53-0f7c> from "<U0F42><U0F53><U0F7C>"
+collating-symbol <s0f42-0f53-0f7c>
+collating-element <e0f42-0f53-0fad> from "<U0F42><U0F53><U0FAD>"
+collating-symbol <s0f42-0f53-0fad>
+collating-element <e0f58-0f53-0f42> from "<U0F58><U0F53><U0F42>"
+collating-symbol <s0f58-0f53-0f42>
+collating-element <e0f58-0f53-0f44> from "<U0F58><U0F53><U0F44>"
+collating-symbol <s0f58-0f53-0f44>
+collating-element <e0f58-0f53-0f51> from "<U0F58><U0F53><U0F51>"
+collating-symbol <s0f58-0f53-0f51>
+collating-element <e0f58-0f53-0f53> from "<U0F58><U0F53><U0F53>"
+collating-symbol <s0f58-0f53-0f53>
+collating-element <e0f58-0f53-0f56> from "<U0F58><U0F53><U0F56>"
+collating-symbol <s0f58-0f53-0f56>
+collating-element <e0f58-0f53-0f58> from "<U0F58><U0F53><U0F58>"
+collating-symbol <s0f58-0f53-0f58>
+collating-element <e0f58-0f53-0f7e> from "<U0F58><U0F53><U0F7E>"
+collating-symbol <s0f58-0f53-0f7e>
+collating-element <e0f58-0f53-0f60> from "<U0F58><U0F53><U0F60>"
+collating-symbol <s0f58-0f53-0f60>
+collating-element <e0f58-0f53-0f62> from "<U0F58><U0F53><U0F62>"
+collating-symbol <s0f58-0f53-0f62>
+collating-element <e0f58-0f53-0f63> from "<U0F58><U0F53><U0F63>"
+collating-symbol <s0f58-0f53-0f63>
+collating-element <e0f58-0f53-0f66> from "<U0F58><U0F53><U0F66>"
+collating-symbol <s0f58-0f53-0f66>
+collating-element <e0f58-0f53-0f72> from "<U0F58><U0F53><U0F72>"
+collating-symbol <s0f58-0f53-0f72>
+collating-element <e0f58-0f53-0f74> from "<U0F58><U0F53><U0F74>"
+collating-symbol <s0f58-0f53-0f74>
+collating-element <e0f58-0f53-0f7a> from "<U0F58><U0F53><U0F7A>"
+collating-symbol <s0f58-0f53-0f7a>
+collating-element <e0f58-0f53-0f7c> from "<U0F58><U0F53><U0F7C>"
+collating-symbol <s0f58-0f53-0f7c>
+collating-element <e0f58-0f53-0fad> from "<U0F58><U0F53><U0FAD>"
+collating-symbol <s0f58-0f53-0fad>
+collating-element <e0f62-0fa3> from "<U0F62><U0FA3>"
+collating-symbol <s0f62-0fa3>
+collating-element <e0f66-0fa3> from "<U0F66><U0FA3>"
+collating-symbol <s0f66-0fa3>
+collating-element <e0f56-0f62-0fa3> from "<U0F56><U0F62><U0FA3>"
+collating-symbol <s0f56-0f62-0fa3>
+collating-element <e0f56-0f66-0fa3> from "<U0F56><U0F66><U0FA3>"
+collating-symbol <s0f56-0f66-0fa3>
+% &པ<<ྉྤ<དཔག<དཔང<དཔད<དཔབ<དཔའ<དཔར<དཔལ<དཔས<དཔི<དཔུ<དཔེ<དཔོ<དཔྱ<དཔྲ<ལྤ<སྤ
+collating-element <e0f51-0f54-0f42> from "<U0F51><U0F54><U0F42>"
+collating-symbol <s0f51-0f54-0f42>
+collating-element <e0f51-0f54-0f44> from "<U0F51><U0F54><U0F44>"
+collating-symbol <s0f51-0f54-0f44>
+collating-element <e0f51-0f54-0f51> from "<U0F51><U0F54><U0F51>"
+collating-symbol <s0f51-0f54-0f51>
+collating-element <e0f51-0f54-0f56> from "<U0F51><U0F54><U0F56>"
+collating-symbol <s0f51-0f54-0f56>
+collating-element <e0f51-0f54-0f60> from "<U0F51><U0F54><U0F60>"
+collating-symbol <s0f51-0f54-0f60>
+collating-element <e0f51-0f54-0f62> from "<U0F51><U0F54><U0F62>"
+collating-symbol <s0f51-0f54-0f62>
+collating-element <e0f51-0f54-0f63> from "<U0F51><U0F54><U0F63>"
+collating-symbol <s0f51-0f54-0f63>
+collating-element <e0f51-0f54-0f66> from "<U0F51><U0F54><U0F66>"
+collating-symbol <s0f51-0f54-0f66>
+collating-element <e0f51-0f54-0f72> from "<U0F51><U0F54><U0F72>"
+collating-symbol <s0f51-0f54-0f72>
+collating-element <e0f51-0f54-0f74> from "<U0F51><U0F54><U0F74>"
+collating-symbol <s0f51-0f54-0f74>
+collating-element <e0f51-0f54-0f7a> from "<U0F51><U0F54><U0F7A>"
+collating-symbol <s0f51-0f54-0f7a>
+collating-element <e0f51-0f54-0f7c> from "<U0F51><U0F54><U0F7C>"
+collating-symbol <s0f51-0f54-0f7c>
+collating-element <e0f51-0f54-0fb1> from "<U0F51><U0F54><U0FB1>"
+collating-symbol <s0f51-0f54-0fb1>
+collating-element <e0f51-0f54-0fb2> from "<U0F51><U0F54><U0FB2>"
+collating-symbol <s0f51-0f54-0fb2>
+collating-element <e0f63-0fa4> from "<U0F63><U0FA4>"
+collating-symbol <s0f63-0fa4>
+collating-element <e0f66-0fa4> from "<U0F66><U0FA4>"
+collating-symbol <s0f66-0fa4>
+% &ཕ<<ྉྥ<འཕ
+collating-element <e0f89-0fa5> from "<U0F89><U0FA5>"
+collating-symbol <s0f89-0fa5>
+collating-element <e0f60-0f55> from "<U0F60><U0F55>"
+collating-symbol <s0f60-0f55>
+% &བ<དབག<དབང<དབད<དབན<དབབ<དབའ<དབར<དབལ<དབས<དབི<དབུ<དབེ<དབོ<དབྱ<དབྲ<འབག<འབང<འབད<འབན<འབབ<འབམ
+% <<<འབཾ<འབའ<འབར<འབལ<འབས<འབི<འབུ<འབེ<འབོ<འབྱ<འབྲ<རྦ<ལྦ<སྦ
+collating-element <e0f51-0f56-0f42> from "<U0F51><U0F56><U0F42>"
+collating-symbol <s0f51-0f56-0f42>
+collating-element <e0f51-0f56-0f44> from "<U0F51><U0F56><U0F44>"
+collating-symbol <s0f51-0f56-0f44>
+collating-element <e0f51-0f56-0f51> from "<U0F51><U0F56><U0F51>"
+collating-symbol <s0f51-0f56-0f51>
+collating-element <e0f51-0f56-0f53> from "<U0F51><U0F56><U0F53>"
+collating-symbol <s0f51-0f56-0f53>
+collating-element <e0f51-0f56-0f56> from "<U0F51><U0F56><U0F56>"
+collating-symbol <s0f51-0f56-0f56>
+collating-element <e0f51-0f56-0f60> from "<U0F51><U0F56><U0F60>"
+collating-symbol <s0f51-0f56-0f60>
+collating-element <e0f51-0f56-0f62> from "<U0F51><U0F56><U0F62>"
+collating-symbol <s0f51-0f56-0f62>
+collating-element <e0f51-0f56-0f63> from "<U0F51><U0F56><U0F63>"
+collating-symbol <s0f51-0f56-0f63>
+collating-element <e0f51-0f56-0f66> from "<U0F51><U0F56><U0F66>"
+collating-symbol <s0f51-0f56-0f66>
+collating-element <e0f51-0f56-0f72> from "<U0F51><U0F56><U0F72>"
+collating-symbol <s0f51-0f56-0f72>
+collating-element <e0f51-0f56-0f74> from "<U0F51><U0F56><U0F74>"
+collating-symbol <s0f51-0f56-0f74>
+collating-element <e0f51-0f56-0f7a> from "<U0F51><U0F56><U0F7A>"
+collating-symbol <s0f51-0f56-0f7a>
+collating-element <e0f51-0f56-0f7c> from "<U0F51><U0F56><U0F7C>"
+collating-symbol <s0f51-0f56-0f7c>
+collating-element <e0f51-0f56-0fb1> from "<U0F51><U0F56><U0FB1>"
+collating-symbol <s0f51-0f56-0fb1>
+collating-element <e0f51-0f56-0fb2> from "<U0F51><U0F56><U0FB2>"
+collating-symbol <s0f51-0f56-0fb2>
+collating-element <e0f60-0f56-0f42> from "<U0F60><U0F56><U0F42>"
+collating-symbol <s0f60-0f56-0f42>
+collating-element <e0f60-0f56-0f44> from "<U0F60><U0F56><U0F44>"
+collating-symbol <s0f60-0f56-0f44>
+collating-element <e0f60-0f56-0f51> from "<U0F60><U0F56><U0F51>"
+collating-symbol <s0f60-0f56-0f51>
+collating-element <e0f60-0f56-0f53> from "<U0F60><U0F56><U0F53>"
+collating-symbol <s0f60-0f56-0f53>
+collating-element <e0f60-0f56-0f56> from "<U0F60><U0F56><U0F56>"
+collating-symbol <s0f60-0f56-0f56>
+collating-element <e0f60-0f56-0f58> from "<U0F60><U0F56><U0F58>"
+collating-symbol <s0f60-0f56-0f58>
+collating-element <e0f60-0f56-0f7e> from "<U0F60><U0F56><U0F7E>"
+collating-symbol <s0f60-0f56-0f7e>
+collating-element <e0f60-0f56-0f60> from "<U0F60><U0F56><U0F60>"
+collating-symbol <s0f60-0f56-0f60>
+collating-element <e0f60-0f56-0f62> from "<U0F60><U0F56><U0F62>"
+collating-symbol <s0f60-0f56-0f62>
+collating-element <e0f60-0f56-0f63> from "<U0F60><U0F56><U0F63>"
+collating-symbol <s0f60-0f56-0f63>
+collating-element <e0f60-0f56-0f66> from "<U0F60><U0F56><U0F66>"
+collating-symbol <s0f60-0f56-0f66>
+collating-element <e0f60-0f56-0f72> from "<U0F60><U0F56><U0F72>"
+collating-symbol <s0f60-0f56-0f72>
+collating-element <e0f60-0f56-0f74> from "<U0F60><U0F56><U0F74>"
+collating-symbol <s0f60-0f56-0f74>
+collating-element <e0f60-0f56-0f7a> from "<U0F60><U0F56><U0F7A>"
+collating-symbol <s0f60-0f56-0f7a>
+collating-element <e0f60-0f56-0f7c> from "<U0F60><U0F56><U0F7C>"
+collating-symbol <s0f60-0f56-0f7c>
+collating-element <e0f60-0f56-0fb1> from "<U0F60><U0F56><U0FB1>"
+collating-symbol <s0f60-0f56-0fb1>
+collating-element <e0f60-0f56-0fb2> from "<U0F60><U0F56><U0FB2>"
+collating-symbol <s0f60-0f56-0fb2>
+collating-element <e0f62-0fa6> from "<U0F62><U0FA6>"
+collating-symbol <s0f62-0fa6>
+collating-element <e0f63-0fa6> from "<U0F63><U0FA6>"
+collating-symbol <s0f63-0fa6>
+collating-element <e0f66-0fa6> from "<U0F66><U0FA6>"
+collating-symbol <s0f66-0fa6>
+% &མ<<<ཾ<དམག<དམང<དམད<དམན<དམབ<དམཝ<དམའ<དམར<དམལ<དམས<དམི<དམུ<དམེ<དམོ<དམྭ<དམྱ<རྨ<སྨ
+collating-element <e0f51-0f58-0f42> from "<U0F51><U0F58><U0F42>"
+collating-symbol <s0f51-0f58-0f42>
+collating-element <e0f51-0f58-0f44> from "<U0F51><U0F58><U0F44>"
+collating-symbol <s0f51-0f58-0f44>
+collating-element <e0f51-0f58-0f51> from "<U0F51><U0F58><U0F51>"
+collating-symbol <s0f51-0f58-0f51>
+collating-element <e0f51-0f58-0f53> from "<U0F51><U0F58><U0F53>"
+collating-symbol <s0f51-0f58-0f53>
+collating-element <e0f51-0f58-0f56> from "<U0F51><U0F58><U0F56>"
+collating-symbol <s0f51-0f58-0f56>
+collating-element <e0f51-0f58-0f5d> from "<U0F51><U0F58><U0F5D>"
+collating-symbol <s0f51-0f58-0f5d>
+collating-element <e0f51-0f58-0f60> from "<U0F51><U0F58><U0F60>"
+collating-symbol <s0f51-0f58-0f60>
+collating-element <e0f51-0f58-0f62> from "<U0F51><U0F58><U0F62>"
+collating-symbol <s0f51-0f58-0f62>
+collating-element <e0f51-0f58-0f63> from "<U0F51><U0F58><U0F63>"
+collating-symbol <s0f51-0f58-0f63>
+collating-element <e0f51-0f58-0f66> from "<U0F51><U0F58><U0F66>"
+collating-symbol <s0f51-0f58-0f66>
+collating-element <e0f51-0f58-0f72> from "<U0F51><U0F58><U0F72>"
+collating-symbol <s0f51-0f58-0f72>
+collating-element <e0f51-0f58-0f74> from "<U0F51><U0F58><U0F74>"
+collating-symbol <s0f51-0f58-0f74>
+collating-element <e0f51-0f58-0f7a> from "<U0F51><U0F58><U0F7A>"
+collating-symbol <s0f51-0f58-0f7a>
+collating-element <e0f51-0f58-0f7c> from "<U0F51><U0F58><U0F7C>"
+collating-symbol <s0f51-0f58-0f7c>
+collating-element <e0f51-0f58-0fad> from "<U0F51><U0F58><U0FAD>"
+collating-symbol <s0f51-0f58-0fad>
+collating-element <e0f51-0f58-0fb1> from "<U0F51><U0F58><U0FB1>"
+collating-symbol <s0f51-0f58-0fb1>
+collating-element <e0f62-0fa8> from "<U0F62><U0FA8>"
+collating-symbol <s0f62-0fa8>
+collating-element <e0f66-0fa8> from "<U0F66><U0FA8>"
+collating-symbol <s0f66-0fa8>
+% &ཙ<གཙ<བཙ<རྩ<སྩ<བརྩ<བསྩ
+collating-element <e0f42-0f59> from "<U0F42><U0F59>"
+collating-symbol <s0f42-0f59>
+collating-element <e0f56-0f59> from "<U0F56><U0F59>"
+collating-symbol <s0f56-0f59>
+collating-element <e0f62-0fa9> from "<U0F62><U0FA9>"
+collating-symbol <s0f62-0fa9>
+collating-element <e0f66-0fa9> from "<U0F66><U0FA9>"
+collating-symbol <s0f66-0fa9>
+collating-element <e0f56-0f62-0fa9> from "<U0F56><U0F62><U0FA9>"
+collating-symbol <s0f56-0f62-0fa9>
+collating-element <e0f56-0f66-0fa9> from "<U0F56><U0F66><U0FA9>"
+collating-symbol <s0f56-0f66-0fa9>
+% &ཚ<མཚ<འཚ
+collating-element <e0f58-0f5a> from "<U0F58><U0F5A>"
+collating-symbol <s0f58-0f5a>
+collating-element <e0f60-0f5a> from "<U0F60><U0F5A>"
+collating-symbol <s0f60-0f5a>
+% &ཛ<མཛ<འཛ<རྫ<བརྫ
+collating-element <e0f58-0f5b> from "<U0F58><U0F5B>"
+collating-symbol <s0f58-0f5b>
+collating-element <e0f60-0f5b> from "<U0F60><U0F5B>"
+collating-symbol <s0f60-0f5b>
+collating-element <e0f62-0fab> from "<U0F62><U0FAB>"
+collating-symbol <s0f62-0fab>
+collating-element <e0f56-0f62-0fab> from "<U0F56><U0F62><U0FAB>"
+collating-symbol <s0f56-0f62-0fab>
+% # &ཝ
+% &ཞ<གཞ<བཞ
+collating-element <e0f42-0f5e> from "<U0F42><U0F5E>"
+collating-symbol <s0f42-0f5e>
+collating-element <e0f56-0f5e> from "<U0F56><U0F5E>"
+collating-symbol <s0f56-0f5e>
+% &ཟ<གཟ<བཟ
+collating-element <e0f42-0f5f> from "<U0F42><U0F5F>"
+collating-symbol <s0f42-0f5f>
+collating-element <e0f56-0f5f> from "<U0F56><U0F5F>"
+collating-symbol <s0f56-0f5f>
+% # &འ
+% &ཡ<གཡ
+collating-element <e0f42-0f61> from "<U0F42><U0F61>"
+collating-symbol <s0f42-0f61>
+% &ར<<<ཪ<ཬ<བརླ=བཪླ
+collating-element <e0f56-0f62-0fb3> from "<U0F56><U0F62><U0FB3>"
+collating-symbol <s0f56-0f62-0fb3>
+collating-element <e0f56-0f6a-0fb3> from "<U0F56><U0F6A><U0FB3>"
+collating-symbol <s0f56-0f6a-0fb3>
+% # &ལ
+% &ཤ<ཥ<གཤ<བཤ
+collating-element <e0f42-0f64> from "<U0F42><U0F64>"
+collating-symbol <s0f42-0f64>
+collating-element <e0f56-0f64> from "<U0F56><U0F64>"
+collating-symbol <s0f56-0f64>
+% &ས<གསག<གསང<གསད<གསན<གསབ<གསའ<གསར<གསལ<གསས<གསི<གསུ<གསེ<གསོ<གསྭ<བསག<བསང<བསད<བསབ<བསམ<<<བསཾ<བསའ<བསར
+% <བསལ<བསས<བསི<བསུ<བསེ<བསོ<བསྭ<བསྲ<བསླ
+collating-element <e0f42-0f66-0f42> from "<U0F42><U0F66><U0F42>"
+collating-symbol <s0f42-0f66-0f42>
+collating-element <e0f42-0f66-0f44> from "<U0F42><U0F66><U0F44>"
+collating-symbol <s0f42-0f66-0f44>
+collating-element <e0f42-0f66-0f51> from "<U0F42><U0F66><U0F51>"
+collating-symbol <s0f42-0f66-0f51>
+collating-element <e0f42-0f66-0f53> from "<U0F42><U0F66><U0F53>"
+collating-symbol <s0f42-0f66-0f53>
+collating-element <e0f42-0f66-0f56> from "<U0F42><U0F66><U0F56>"
+collating-symbol <s0f42-0f66-0f56>
+collating-element <e0f42-0f66-0f60> from "<U0F42><U0F66><U0F60>"
+collating-symbol <s0f42-0f66-0f60>
+collating-element <e0f42-0f66-0f62> from "<U0F42><U0F66><U0F62>"
+collating-symbol <s0f42-0f66-0f62>
+collating-element <e0f42-0f66-0f63> from "<U0F42><U0F66><U0F63>"
+collating-symbol <s0f42-0f66-0f63>
+collating-element <e0f42-0f66-0f66> from "<U0F42><U0F66><U0F66>"
+collating-symbol <s0f42-0f66-0f66>
+collating-element <e0f42-0f66-0f72> from "<U0F42><U0F66><U0F72>"
+collating-symbol <s0f42-0f66-0f72>
+collating-element <e0f42-0f66-0f74> from "<U0F42><U0F66><U0F74>"
+collating-symbol <s0f42-0f66-0f74>
+collating-element <e0f42-0f66-0f7a> from "<U0F42><U0F66><U0F7A>"
+collating-symbol <s0f42-0f66-0f7a>
+collating-element <e0f42-0f66-0f7c> from "<U0F42><U0F66><U0F7C>"
+collating-symbol <s0f42-0f66-0f7c>
+collating-element <e0f42-0f66-0fad> from "<U0F42><U0F66><U0FAD>"
+collating-symbol <s0f42-0f66-0fad>
+collating-element <e0f56-0f66-0f42> from "<U0F56><U0F66><U0F42>"
+collating-symbol <s0f56-0f66-0f42>
+collating-element <e0f56-0f66-0f44> from "<U0F56><U0F66><U0F44>"
+collating-symbol <s0f56-0f66-0f44>
+collating-element <e0f56-0f66-0f51> from "<U0F56><U0F66><U0F51>"
+collating-symbol <s0f56-0f66-0f51>
+collating-element <e0f56-0f66-0f56> from "<U0F56><U0F66><U0F56>"
+collating-symbol <s0f56-0f66-0f56>
+collating-element <e0f56-0f66-0f58> from "<U0F56><U0F66><U0F58>"
+collating-symbol <s0f56-0f66-0f58>
+collating-element <e0f56-0f66-0f7e> from "<U0F56><U0F66><U0F7E>"
+collating-symbol <s0f56-0f66-0f7e>
+collating-element <e0f56-0f66-0f60> from "<U0F56><U0F66><U0F60>"
+collating-symbol <s0f56-0f66-0f60>
+collating-element <e0f56-0f66-0f62> from "<U0F56><U0F66><U0F62>"
+collating-symbol <s0f56-0f66-0f62>
+collating-element <e0f56-0f66-0f63> from "<U0F56><U0F66><U0F63>"
+collating-symbol <s0f56-0f66-0f63>
+collating-element <e0f56-0f66-0f66> from "<U0F56><U0F66><U0F66>"
+collating-symbol <s0f56-0f66-0f66>
+collating-element <e0f56-0f66-0f72> from "<U0F56><U0F66><U0F72>"
+collating-symbol <s0f56-0f66-0f72>
+collating-element <e0f56-0f66-0f74> from "<U0F56><U0F66><U0F74>"
+collating-symbol <s0f56-0f66-0f74>
+collating-element <e0f56-0f66-0f7a> from "<U0F56><U0F66><U0F7A>"
+collating-symbol <s0f56-0f66-0f7a>
+collating-element <e0f56-0f66-0f7c> from "<U0F56><U0F66><U0F7C>"
+collating-symbol <s0f56-0f66-0f7c>
+collating-element <e0f56-0f66-0fad> from "<U0F56><U0F66><U0FAD>"
+collating-symbol <s0f56-0f66-0fad>
+collating-element <e0f56-0f66-0fb2> from "<U0F56><U0F66><U0FB2>"
+collating-symbol <s0f56-0f66-0fb2>
+collating-element <e0f56-0f66-0fb3> from "<U0F56><U0F66><U0FB3>"
+collating-symbol <s0f56-0f66-0fb3>
+% &ཧ<ལྷ
+collating-element <e0f63-0fb7> from "<U0F63><U0FB7>"
+collating-symbol <s0f63-0fb7>
+% &ཨ
+% # Explicit vowels
+% <ཱ<ི<ཱི<ྀ<ཱྀ<ུ<ཱུ<ེ<ཻ=ེེ<ོ<ཽ=ོོ
+% # Post-radicals
+% <ྐ<ྑ<ྒ<ྔ<ྕ<ྖ<ྗ<ྙ<ྟ<ྚ<ྠ<ྛ<ྡ<ྜ<ྣ<ྞ<ྤ<ྥ<ྦ<ྨ<ྩ<ྪ<ྫ<ྭ<<<ྺ<ྮ<ྯ<ྰ<ྱ<<<ྻ<ྲ<<<ྼ<ླ<ྴ
+% <ྵ<ྶ<ྷ<ྸ
+%collating-element <e0f71-0f72> from "<U0F71><U0F72>"
+% collating-element <U0F71_0F72> from "<U0F71><U0F72>" already exists
+collating-symbol <s0f71-0f72>
+% collating-element <e0f71-0f80> from "<U0F71><U0F80>"
+% collating-element <U0F71_0F80> from "<U0F71><U0F80>" already exists
+collating-symbol <s0f71-0f80>
+% collating-element <e0f71-0f74> from "<U0F71><U0F74>"
+% collating-element <U0F71_0F74> from "<U0F71><U0F74>" already exists
+collating-symbol <s0f71-0f74>
+collating-element <e0f7a-0f7a> from "<U0F7A><U0F7A>"
+collating-symbol <s0f7a-0f7a>
+collating-element <e0f7c-0f7c> from "<U0F7C><U0F7C>"
+collating-symbol <s0f7c-0f7c>
+% # Combining marks and signs (secondary weight)
+% &༹<<྄<<ཿ<<྅<<ྈ<<ྉ<<ྊ<<ྋ<<ྌ<<ྍ<<ྎ<<ྏ
+% # Treatༀ, ཷand ,ཹ as decomposed
+% &ཨོཾ=ༀ
+% &ྲཱྀ=ཷ
+% &ླཱྀ=ཹ
+collating-element <e0f68-0f7c-0f7e> from "<U0F68><U0F7C><U0F7E>"
+collating-symbol <s0f68-0f7c-0f7e>
+% collating-element <e0fb2-0f71-0f80> from "<U0FB2><U0F71><U0F80>"
+% collating-element <U0FB2_0F71_0F80> from "<U0FB2><U0F71><U0F80>" already exists
+collating-symbol <s0fb2-0f71-0f80>
+% collating-element <e0fb3-0f71-0f80> from "<U0FB3><U0F71><U0F80>"
+% collating-element <U0FB3_0F71_0F80> from "<U0FB3><U0F71><U0F80>" already exists
+collating-symbol <s0fb3-0f71-0f80>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Finished defining collating-elements and collating-symbols
+%
+% One dummy reorder-after statement here to avoid a syntax error
+% because the first rule reordering stuff starts without a reorder-after:
+collating-symbol <dummy>
+reorder-after <AFTER-A>
+<dummy>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% &ཀར<ཀརྐ<ཀརྟ<ཀརྞ<ཀརྨ<ཀརྴ<ཀརྵ
+<e0f40-0f62> "<S0F40><S0F62><VRNT1><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f40-0f62-0f90> "<S0F40><S0F62><VRNT1><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f62-0f9f> "<S0F40><S0F62><VRNT1><VRNT3>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f62-0f9e> "<S0F40><S0F62><VRNT1><VRNT4>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f62-0fa8> "<S0F40><S0F62><VRNT1><VRNT5>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f62-0fb4> "<S0F40><S0F62><VRNT2><VRNT1>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f62-0fb5> "<S0F40><S0F62><VRNT2><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཀལ<ཀལྐ<ཀལྤ
+<e0f40-0f63> "<S0F40><S0F63><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f40-0f63-0f90> "<S0F40><S0F63><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f40-0f63-0fa4> "<S0F40><S0F63><VRNT3>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཀས<ཀསྨ
+<e0f40-0f66> "<S0F40><S0F66><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f40-0f66-0fa8> "<S0F40><S0F66><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &གཉ<གཉྫ
+<e0f42-0f49> "<S0F42><S0F49><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f42-0f49-0fab> "<S0F42><S0F49><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཐར<ཐརྐ
+<e0f50-0f62> "<S0F50><S0F62><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f50-0f62-0f90> "<S0F50><S0F62><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &པུས<པུསྟི
+<e0f54-0f74-0f66> "<S0F54><S0F74><S0F66>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f54-0f74-0f66-0f9f-0f72> "<S0F54><SFFFF><SFFFF>";"<BASE><BASE><BASE><BASE><BASE>";"<MIN><MIN><MIN><MIN><MIN>";IGNORE
+% &ཕལ<ཕལྒ
+<e0f55-0f63> "<S0F55><S0F63><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f55-0f63-0f92> "<S0F55><S0F63><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &བིལ<བིལྦ
+<e0f56-0f72-0f63> "<S0F56><S0F72><S0F63>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f72-0f63-0fa6> "<S0F56><SFFFF><SFFFF>";"<BASE><BASE><BASE><BASE>";"<MIN><MIN><MIN><MIN>";IGNORE
+% &མཉ<མཉྫ
+<e0f58-0f49> "<S0F58><S0F49><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f58-0f49-0fab> "<S0F58><S0F49><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &མར<མརྒ
+<e0f58-0f62> "<S0F58><S0F62><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f58-0f62-0f92> "<S0F58><S0F62><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཝར<ཝརྟ
+<e0f5d-0f62> "<S0F5D><S0F62><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f5d-0f62-0f9f> "<S0F5D><S0F62><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཤས<ཤསྟ
+<e0f64-0f66> "<S0F64><S0F66><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f64-0f66-0f9f> "<S0F64><S0F66><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &སར<སརྒ
+<e0f66-0f62> "<S0F66><S0F62><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0f62-0f92> "<S0F66><S0F62><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% &ཨར<ཨརྒ<ཨརྱ=ཨཪྱ
+<e0f68-0f62> "<S0F68><S0F62><VRNT1>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f68-0f62-0f92> "<S0F68><S0F62><VRNT2>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f68-0f62-0fb1> "<S0F68><S0F62><VRNT3>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";<VRNT1>
+<e0f68-0f6a-0fb1> "<S0F68><S0F62><VRNT3>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";<VRNT2>
+% &ཨས<ཨསྨ
+<e0f68-0f66> "<S0F68><S0F66>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f68-0f66-0fa8> "<S0F68><S0F66><S0FA8>";"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+% # Marks (secondary different, with low equal primary weight after Lao)
+% (actually after TAI VIET in iso14651_t1_common)
+% &[before 1]ཀ<།<<༎<<༏<<༐<<༑<<༔<<༴<་=༌
+reorder-after <SAADC> % TAI VIET SYMBOL NUENG which is just before ཀ TIBETAN LETTER KA
+<S0F0D> % ། TIBETAN MARK SHAD
+<U0F0D> <S0F0D>;"<VRNT1><VRNT1>";IGNORE;<U0F0D> % ། TIBETAN MARK SHAD
+<U0F0E> <S0F0D>;"<VRNT1><VRNT2>";IGNORE;<U0F0E> % ༎ TIBETAN MARK NYIS SHAD
+<U0F0F> <S0F0D>;"<VRNT1><VRNT3>";IGNORE;<U0F0F> % ༏ TIBETAN MARK TSHEG SHAD
+<U0F10> <S0F0D>;"<VRNT1><VRNT4>";IGNORE;<U0F10> % ༐ TIBETAN MARK NYIS TSHEG SHAD
+<U0F11> <S0F0D>;"<VRNT1><VRNT5>";IGNORE;<U0F11> % ༑ TIBETAN MARK RIN CHEN SPUNGS SHAD
+<U0F14> <S0F0D>;"<VRNT2><VRNT1>";IGNORE;<U0F14> % ༔ TIBETAN MARK GTER TSHEG
+<U0F34> <S0F0D>;"<VRNT2><VRNT2>";IGNORE;<U0F34> % ༴ TIBETAN MARK BSDUS RTAGS
+<U0F0B> <S0F0D>;"<VRNT2><VRNT3>";IGNORE;<U0F0B> % ་ TIBETAN MARK INTERSYLLABIC TSHEG
+<U0F0C> <S0F0D>;"<VRNT2><VRNT3>";IGNORE;<U0F0C> % ༌ TIBETAN MARK DELIMITER TSHEG BSTAR
+% &ཀ<<ྈྐ<ཫ<དཀ<བཀ<རྐ<ལྐ<སྐ<བརྐ<བསྐ
+<U0F40> <S0F40>;<BASE>;<MIN>;<U0F40> % ཀ TIBETAN LETTER KA
+<e0f88-0f90> <S0F40>;<VRNT1>;<MIN>;IGNORE % ྈྐ
+
+reorder-after <S0F40> % ཀ TIBETAN LETTER KA
+<S0F6B> % ཫ TIBETAN LETTER KKA
+<s0f51-0f40> % དཀ
+<s0f56-0f40> % བཀ
+<s0f62-0f90> % རྐ
+<s0f63-0f90>
+<s0f66-0f90>
+<s0f56-0f62-0f90>
+<s0f56-0f66-0f90>
+
+<e0f51-0f40> <s0f51-0f40>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f40> <s0f56-0f40>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f62-0f90> <s0f62-0f90>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f90> <s0f63-0f90>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0f90> <s0f66-0f90>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0f90> <s0f56-0f62-0f90>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f90> <s0f56-0f66-0f90>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཁ<<ྈྑ<མཁ<འཁ
+<U0F41> "<S0F41>";<BASE>;<MIN>;<U0F41> % TIBETAN LETTER KHA
+<e0f88-0f91> "<S0F41>";<VRNT1>;<MIN>;IGNORE % ྈྑ
+
+reorder-after <S0F41> % TIBETAN LETTER KHA
+<s0f58-0f41>
+<s0f60-0f41>
+
+<e0f58-0f41> <s0f58-0f41>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % མཁ
+<e0f60-0f41> <s0f60-0f41>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % འཁ
+
+% &ག<དགག<དགང<དགད<དགན<དགབ<དགཝ<དགའ<དགར<དགལ<དགས<དགི<དགུ<དགེ<དགོ<དགྭ<དགྱ<དགྲ<བགག<བགང<བགད<བགབ<བགམ<<<བགཾ<བགཝ<བགའ
+% <བགར<བགལ<བགི<བགུ<བགེ<བགོ<བགྭ<བགྱ<བགྲ<བགླ<མགག<མགང<མགད<མགབ<མགའ<མགར<མགལ<མགི<མགུ<མགེ<མགོ<མགྭ<མགྱ<མགྲ<འགག<འགང<འགད<འགན<འགབ<འགམ<<<འགཾ
+% <འགའ<འགར<འགལ<འགས<འགི<འགུ<འགེ<འགོ<འགྭ<འགྱ<འགྲ<རྒ<ལྒ<སྒ<བརྒ<བསྒ
+reorder-after <S0F42> % ག TIBETAN LETTER GA
+<s0f51-0f42-0f42>
+<s0f51-0f42-0f44>
+<s0f51-0f42-0f51>
+<s0f51-0f42-0f53>
+<s0f51-0f42-0f56>
+<s0f51-0f42-0f5d>
+<s0f51-0f42-0f60>
+<s0f51-0f42-0f62>
+<s0f51-0f42-0f63>
+<s0f51-0f42-0f66>
+<s0f51-0f42-0f72>
+<s0f51-0f42-0f74>
+<s0f51-0f42-0f7a>
+<s0f51-0f42-0f7c>
+<s0f51-0f42-0fad>
+<s0f51-0f42-0fb1>
+<s0f51-0f42-0fb2>
+<s0f56-0f42-0f42>
+<s0f56-0f42-0f44>
+<s0f56-0f42-0f51>
+<s0f56-0f42-0f56>
+<s0f56-0f42-0f58>
+<s0f56-0f42-0f5d>
+<s0f56-0f42-0f60>
+<s0f56-0f42-0f62>
+<s0f56-0f42-0f63>
+<s0f56-0f42-0f72>
+<s0f56-0f42-0f74>
+<s0f56-0f42-0f7a>
+<s0f56-0f42-0f7c>
+<s0f56-0f42-0fad>
+<s0f56-0f42-0fb1>
+<s0f56-0f42-0fb2>
+<s0f56-0f42-0fb3>
+<s0f58-0f42-0f42>
+<s0f58-0f42-0f44>
+<s0f58-0f42-0f51>
+<s0f58-0f42-0f56>
+<s0f58-0f42-0f60>
+<s0f58-0f42-0f62>
+<s0f58-0f42-0f63>
+<s0f58-0f42-0f72>
+<s0f58-0f42-0f74>
+<s0f58-0f42-0f7a>
+<s0f58-0f42-0f7c>
+<s0f58-0f42-0fad>
+<s0f58-0f42-0fb1>
+<s0f58-0f42-0fb2>
+<s0f60-0f42-0f42>
+<s0f60-0f42-0f44>
+<s0f60-0f42-0f51>
+<s0f60-0f42-0f53>
+<s0f60-0f42-0f56>
+<s0f60-0f42-0f58>
+<s0f60-0f42-0f60>
+<s0f60-0f42-0f62>
+<s0f60-0f42-0f63>
+<s0f60-0f42-0f66>
+<s0f60-0f42-0f72>
+<s0f60-0f42-0f74>
+<s0f60-0f42-0f7a>
+<s0f60-0f42-0f7c>
+<s0f60-0f42-0fad>
+<s0f60-0f42-0fb1>
+<s0f60-0f42-0fb2>
+<s0f62-0f92>
+<s0f63-0f92>
+<s0f66-0f92>
+<s0f56-0f62-0f92>
+<s0f56-0f66-0f92>
+
+<e0f51-0f42-0f42> <s0f51-0f42-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f44> <s0f51-0f42-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f51> <s0f51-0f42-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f53> <s0f51-0f42-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f56> <s0f51-0f42-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f5d> <s0f51-0f42-0f5d>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f60> <s0f51-0f42-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f62> <s0f51-0f42-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f63> <s0f51-0f42-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f66> <s0f51-0f42-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f72> <s0f51-0f42-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f74> <s0f51-0f42-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f7a> <s0f51-0f42-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0f7c> <s0f51-0f42-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0fad> <s0f51-0f42-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0fb1> <s0f51-0f42-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f42-0fb2> <s0f51-0f42-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f42> <s0f56-0f42-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f44> <s0f56-0f42-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f51> <s0f56-0f42-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f56> <s0f56-0f42-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f58> <s0f56-0f42-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f7e> <s0f56-0f42-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f56-0f42-0f5d> <s0f56-0f42-0f5d>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f60> <s0f56-0f42-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f62> <s0f56-0f42-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f63> <s0f56-0f42-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f72> <s0f56-0f42-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f74> <s0f56-0f42-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f7a> <s0f56-0f42-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0f7c> <s0f56-0f42-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0fad> <s0f56-0f42-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0fb1> <s0f56-0f42-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0fb2> <s0f56-0f42-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f42-0fb3> <s0f56-0f42-0fb3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f42> <s0f58-0f42-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f44> <s0f58-0f42-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f51> <s0f58-0f42-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f56> <s0f58-0f42-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f60> <s0f58-0f42-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f62> <s0f58-0f42-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f63> <s0f58-0f42-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f72> <s0f58-0f42-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f74> <s0f58-0f42-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f7a> <s0f58-0f42-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0f7c> <s0f58-0f42-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0fad> <s0f58-0f42-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0fb1> <s0f58-0f42-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f42-0fb2> <s0f58-0f42-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f42> <s0f60-0f42-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f44> <s0f60-0f42-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f51> <s0f60-0f42-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f53> <s0f60-0f42-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f56> <s0f60-0f42-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f58> <s0f60-0f42-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f7e> <s0f60-0f42-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f60-0f42-0f60> <s0f60-0f42-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f62> <s0f60-0f42-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f63> <s0f60-0f42-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f66> <s0f60-0f42-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f72> <s0f60-0f42-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f74> <s0f60-0f42-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f7a> <s0f60-0f42-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0f7c> <s0f60-0f42-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0fad> <s0f60-0f42-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0fb1> <s0f60-0f42-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f42-0fb2> <s0f60-0f42-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0f92> <s0f62-0f92>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f92> <s0f63-0f92>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0f92> <s0f66-0f92>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0f92> <s0f56-0f62-0f92>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f92> <s0f56-0f66-0f92>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ང<<<ྂ<<<ྃ<དངག<དངང<དངད<དངན<དངབ<དངའ<དངར<དངལ<དངི<དངུ<དངེ<དངོ<མངག<མངང<མངད<མངན<མངབ<མངའ<མངར<མངལ<མངི<མངུ<མངེ<མངོ<རྔ<ལྔ<སྔ<བརྔ<བསྔ
+<U0F44> <S0F44>;<BASE>;<MIN>;<U0F44> % ང TIBETAN LETTER NGA
+<U0F82> <S0F44>;<BASE>;"<MIN><VRNT1>";<U0F82> % TIBETAN SIGN NYI ZLA NAA DA
+<U0F83> <S0F44>;<BASE>;"<MIN><VRNT2>";<U0F83> % TIBETAN SIGN SNA LDAN
+
+reorder-after <S0F44> % ང TIBETAN LETTER NGA
+<s0f51-0f44-0f42>
+<s0f51-0f44-0f44>
+<s0f51-0f44-0f51>
+<s0f51-0f44-0f53>
+<s0f51-0f44-0f56>
+<s0f51-0f44-0f60>
+<s0f51-0f44-0f62>
+<s0f51-0f44-0f63>
+<s0f51-0f44-0f72>
+<s0f51-0f44-0f74>
+<s0f51-0f44-0f7a>
+<s0f51-0f44-0f7c>
+<s0f58-0f44-0f42>
+<s0f58-0f44-0f44>
+<s0f58-0f44-0f51>
+<s0f58-0f44-0f53>
+<s0f58-0f44-0f56>
+<s0f58-0f44-0f60>
+<s0f58-0f44-0f62>
+<s0f58-0f44-0f63>
+<s0f58-0f44-0f72>
+<s0f58-0f44-0f74>
+<s0f58-0f44-0f7a>
+<s0f58-0f44-0f7c>
+<s0f62-0f94>
+<s0f63-0f94>
+<s0f66-0f94>
+<s0f56-0f62-0f94>
+<s0f56-0f66-0f94>
+
+<e0f51-0f44-0f42> <s0f51-0f44-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f44> <s0f51-0f44-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f51> <s0f51-0f44-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f53> <s0f51-0f44-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f56> <s0f51-0f44-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f60> <s0f51-0f44-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f62> <s0f51-0f44-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f63> <s0f51-0f44-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f72> <s0f51-0f44-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f74> <s0f51-0f44-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f7a> <s0f51-0f44-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f44-0f7c> <s0f51-0f44-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f42> <s0f58-0f44-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f44> <s0f58-0f44-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f51> <s0f58-0f44-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f53> <s0f58-0f44-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f56> <s0f58-0f44-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f60> <s0f58-0f44-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f62> <s0f58-0f44-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f63> <s0f58-0f44-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f72> <s0f58-0f44-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f74> <s0f58-0f44-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f7a> <s0f58-0f44-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f44-0f7c> <s0f58-0f44-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0f94> <s0f62-0f94>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f94> <s0f63-0f94>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0f94> <s0f66-0f94>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0f94> <s0f56-0f62-0f94>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f94> <s0f56-0f66-0f94>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཅ<གཅ<བཅ<ལྕ<བལྕ
+reorder-after <S0F45> % ཅ TIBETAN LETTER CA
+<s0f42-0f45>
+<s0f56-0f45>
+<s0f63-0f95>
+<s0f56-0f63-0f95>
+
+<e0f42-0f45> <s0f42-0f45>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f45> <s0f56-0f45>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f95> <s0f63-0f95>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f63-0f95> <s0f56-0f63-0f95>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཆ<མཆ<འཆ
+reorder-after <S0F46> % TIBETAN LETTER CHA
+<s0f58-0f46>
+<s0f60-0f46>
+
+<e0f58-0f46> <s0f58-0f46>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f60-0f46> <s0f60-0f46>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཇ<མཇ<འཇ<རྗ<ལྗ<བརྗ
+reorder-after <S0F47> % TIBETAN LETTER JA
+<s0f58-0f47>
+<s0f60-0f47>
+<s0f62-0f97>
+<s0f63-0f97>
+<s0f56-0f62-0f97>
+
+<e0f58-0f47> <s0f58-0f47>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f60-0f47> <s0f60-0f47>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f62-0f97> <s0f62-0f97>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f97> <s0f63-0f97>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0f97> <s0f56-0f62-0f97>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཉ<<ྋྙ<གཉ<མཉ<རྙ=ཪྙ<སྙ<བརྙ=བཪྙ<བསྙ
+<U0F49> <S0F49>;<BASE>;<MIN>;<U0F49> % TIBETAN LETTER NYA
+<e0f8b-0f99> <S0F49>;<VRNT1>;<MIN>;IGNORE
+
+reorder-after <S0F49> % TIBETAN LETTER NYA
+<s0f42-0f49>
+<s0f58-0f49>
+<s0f62-0f99>
+<s0f66-0f99>
+<s0f56-0f62-0f99>
+<s0f56-0f66-0f99>
+
+<e0f42-0f49> <s0f42-0f49>;"<BASE><BASE>";"<MIN><MIN>";"<U0F42><U0F49>"
+<e0f58-0f49> <s0f58-0f49>;"<BASE><BASE>";"<MIN><MIN>";"<U0F58><U0F49>"
+<e0f62-0f99> <s0f62-0f99>;"<BASE><BASE>";"<MIN><MIN>";"<U0F62><U0F99>"
+<e0f6a-0f99> <s0f62-0f99>;"<BASE><BASE>";"<MIN><MIN>";"<U0F6A><U0F99>"
+<e0f66-0f99> <s0f66-0f99>;"<BASE><BASE>";"<MIN><MIN>";"<U0F66><U0F99>"
+<e0f56-0f62-0f99> <s0f56-0f62-0f99>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";"<U0F56><U0F62><U0F99>"
+<e0f56-0f6a-0f99> <s0f56-0f62-0f99>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";"<U0F56><U0F6A><U0F99>"
+<e0f56-0f66-0f99> <s0f56-0f66-0f99>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";"<U0F56><U0F66><U0F99>"
+
+% &ཏ<ཊ<ཏྭ<ཏྲ<གཏ<བཏ<རྟ<ལྟ<སྟ<བརྟ<བལྟ<བསྟ
+reorder-after <S0F4F> % TIBETAN LETTER TA
+<S0F4A>
+<s0f4f-0fad>
+<s0f4f-0fb2>
+<s0f42-0f4f>
+<s0f56-0f4f>
+<s0f62-0f9f>
+<s0f63-0f9f>
+<s0f66-0f9f>
+<s0f56-0f62-0f9f>
+<s0f56-0f63-0f9f>
+<s0f56-0f66-0f9f>
+
+<e0f4f-0fad> <s0f4f-0fad>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f4f-0fb2> <s0f4f-0fb2>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f42-0f4f> <s0f42-0f4f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f4f> <s0f56-0f4f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f62-0f9f> <s0f62-0f9f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0f9f> <s0f63-0f9f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0f9f> <s0f66-0f9f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0f9f> <s0f56-0f62-0f9f>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f63-0f9f> <s0f56-0f63-0f9f>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f9f> <s0f56-0f66-0f9f>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཐ<ཋ<མཐ<འཐ
+reorder-after <S0F50> % TIBETAN LETTER THA
+<S0F4B>
+<s0f58-0f50>
+<s0f60-0f50>
+
+<e0f58-0f50> <s0f58-0f50>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f60-0f50> <s0f60-0f50>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ད<ཌ<གདག<གདང<གདད<གདན<གདབ<གདམ<<<གདཾ<གདའ<གདར<གདལ<གདས<གདི<གདུ<གདེ<གདོ<གདྭ<བདག<བདང<བདད<བདབ<བདམ<<<བདཾ<བདའ
+% <བདར<བདལ<བདས<བདི<བདུ<བདེ<བདོ<བདྭ<མདག<མདང<མདད<མདན<མདབ<མདའ<མདར<མདལ<མདས<མདི<མདུ<མདེ<མདོ<མདྭ<འདག<འདང<འདད<འདན<འདབ<འདམ<<<འདཾ
+% <འདཝ<འདའ<འདར<འདལ<འདས<འདི<འདུ<འདེ<འདོ<འདྭ<འདྲ<རྡ<ལྡ<སྡ<བརྡ<བལྡ<བསྡ
+reorder-after <S0F51> % TIBETAN LETTER DA
+<S0F4C>
+<s0f42-0f51-0f42>
+<s0f42-0f51-0f44>
+<s0f42-0f51-0f51>
+<s0f42-0f51-0f53>
+<s0f42-0f51-0f56>
+<s0f42-0f51-0f58>
+<s0f42-0f51-0f60>
+<s0f42-0f51-0f62>
+<s0f42-0f51-0f63>
+<s0f42-0f51-0f66>
+<s0f42-0f51-0f72>
+<s0f42-0f51-0f74>
+<s0f42-0f51-0f7a>
+<s0f42-0f51-0f7c>
+<s0f42-0f51-0fad>
+<s0f56-0f51-0f42>
+<s0f56-0f51-0f44>
+<s0f56-0f51-0f51>
+<s0f56-0f51-0f56>
+<s0f56-0f51-0f58>
+<s0f56-0f51-0f60>
+<s0f56-0f51-0f62>
+<s0f56-0f51-0f63>
+<s0f56-0f51-0f66>
+<s0f56-0f51-0f72>
+<s0f56-0f51-0f74>
+<s0f56-0f51-0f7a>
+<s0f56-0f51-0f7c>
+<s0f56-0f51-0fad>
+<s0f58-0f51-0f42>
+<s0f58-0f51-0f44>
+<s0f58-0f51-0f51>
+<s0f58-0f51-0f53>
+<s0f58-0f51-0f56>
+<s0f58-0f51-0f60>
+<s0f58-0f51-0f62>
+<s0f58-0f51-0f63>
+<s0f58-0f51-0f66>
+<s0f58-0f51-0f72>
+<s0f58-0f51-0f74>
+<s0f58-0f51-0f7a>
+<s0f58-0f51-0f7c>
+<s0f58-0f51-0fad>
+<s0f60-0f51-0f42>
+<s0f60-0f51-0f44>
+<s0f60-0f51-0f51>
+<s0f60-0f51-0f53>
+<s0f60-0f51-0f56>
+<s0f60-0f51-0f58>
+<s0f60-0f51-0f5d>
+<s0f60-0f51-0f60>
+<s0f60-0f51-0f62>
+<s0f60-0f51-0f63>
+<s0f60-0f51-0f66>
+<s0f60-0f51-0f72>
+<s0f60-0f51-0f74>
+<s0f60-0f51-0f7a>
+<s0f60-0f51-0f7c>
+<s0f60-0f51-0fad>
+<s0f60-0f51-0fb2>
+<s0f62-0fa1>
+<s0f63-0fa1>
+<s0f66-0fa1>
+<s0f56-0f62-0fa1>
+<s0f56-0f63-0fa1>
+<s0f56-0f66-0fa1>
+
+<e0f42-0f51-0f42> <s0f42-0f51-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f44> <s0f42-0f51-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f51> <s0f42-0f51-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f53> <s0f42-0f51-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f56> <s0f42-0f51-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f58> <s0f42-0f51-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f7e> <s0f42-0f51-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f42-0f51-0f60> <s0f42-0f51-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f62> <s0f42-0f51-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f63> <s0f42-0f51-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f66> <s0f42-0f51-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f72> <s0f42-0f51-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f74> <s0f42-0f51-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f7a> <s0f42-0f51-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0f7c> <s0f42-0f51-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f51-0fad> <s0f42-0f51-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f42> <s0f56-0f51-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f44> <s0f56-0f51-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f51> <s0f56-0f51-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f56> <s0f56-0f51-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f58> <s0f56-0f51-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f7e> <s0f56-0f51-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f56-0f51-0f60> <s0f56-0f51-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f62> <s0f56-0f51-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f63> <s0f56-0f51-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f66> <s0f56-0f51-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f72> <s0f56-0f51-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f74> <s0f56-0f51-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f7a> <s0f56-0f51-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0f7c> <s0f56-0f51-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f51-0fad> <s0f56-0f51-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f42> <s0f58-0f51-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f44> <s0f58-0f51-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f51> <s0f58-0f51-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f53> <s0f58-0f51-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f56> <s0f58-0f51-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f60> <s0f58-0f51-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f62> <s0f58-0f51-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f63> <s0f58-0f51-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f66> <s0f58-0f51-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f72> <s0f58-0f51-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f74> <s0f58-0f51-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f7a> <s0f58-0f51-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0f7c> <s0f58-0f51-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f51-0fad> <s0f58-0f51-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f42> <s0f60-0f51-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f44> <s0f60-0f51-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f51> <s0f60-0f51-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f53> <s0f60-0f51-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f56> <s0f60-0f51-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f58> <s0f60-0f51-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f7e> <s0f60-0f51-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f60-0f51-0f5d> <s0f60-0f51-0f5d>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f60> <s0f60-0f51-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f62> <s0f60-0f51-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f63> <s0f60-0f51-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f66> <s0f60-0f51-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f72> <s0f60-0f51-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f74> <s0f60-0f51-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f7a> <s0f60-0f51-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0f7c> <s0f60-0f51-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0fad> <s0f60-0f51-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f51-0fb2> <s0f60-0f51-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0fa1> <s0f62-0fa1>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0fa1> <s0f63-0fa1>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa1> <s0f66-0fa1>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0fa1> <s0f56-0f62-0fa1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f63-0fa1> <s0f56-0f63-0fa1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fa1> <s0f56-0f66-0fa1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ན<ཎ<གནག<གནང<གནད<གནན<གནབ<གནམ<<<གནཾ<གནཝ<གནའ<གནར<གནལ<གནས<གནི<གནུ<གནེ<གནོ<གནྭ<མནག<མནང<མནད<མནན<མནབ<མནམ<<<མནཾ<མནའ
+% <མནར<མནལ<མནས<མནི<མནུ<མནེ<མནོ<མནྭ<རྣ<སྣ<བརྣ<བསྣ
+reorder-after <S0F53> % TIBETAN LETTER NA
+<S0F4E>
+<s0f42-0f53-0f42>
+<s0f42-0f53-0f44>
+<s0f42-0f53-0f51>
+<s0f42-0f53-0f53>
+<s0f42-0f53-0f56>
+<s0f42-0f53-0f58>
+<s0f42-0f53-0f5d>
+<s0f42-0f53-0f60>
+<s0f42-0f53-0f62>
+<s0f42-0f53-0f63>
+<s0f42-0f53-0f66>
+<s0f42-0f53-0f72>
+<s0f42-0f53-0f74>
+<s0f42-0f53-0f7a>
+<s0f42-0f53-0f7c>
+<s0f42-0f53-0fad>
+<s0f58-0f53-0f42>
+<s0f58-0f53-0f44>
+<s0f58-0f53-0f51>
+<s0f58-0f53-0f53>
+<s0f58-0f53-0f56>
+<s0f58-0f53-0f58>
+<s0f58-0f53-0f60>
+<s0f58-0f53-0f62>
+<s0f58-0f53-0f63>
+<s0f58-0f53-0f66>
+<s0f58-0f53-0f72>
+<s0f58-0f53-0f74>
+<s0f58-0f53-0f7a>
+<s0f58-0f53-0f7c>
+<s0f58-0f53-0fad>
+<s0f62-0fa3>
+<s0f66-0fa3>
+<s0f56-0f62-0fa3>
+<s0f56-0f66-0fa3>
+
+<e0f42-0f53-0f42> <s0f42-0f53-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f44> <s0f42-0f53-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f51> <s0f42-0f53-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f53> <s0f42-0f53-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f56> <s0f42-0f53-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f58> <s0f42-0f53-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f7e> <s0f42-0f53-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f42-0f53-0f5d> <s0f42-0f53-0f5d>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f60> <s0f42-0f53-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f62> <s0f42-0f53-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f63> <s0f42-0f53-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f66> <s0f42-0f53-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f72> <s0f42-0f53-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f74> <s0f42-0f53-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f7a> <s0f42-0f53-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0f7c> <s0f42-0f53-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f53-0fad> <s0f42-0f53-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f42> <s0f58-0f53-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f44> <s0f58-0f53-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f51> <s0f58-0f53-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f53> <s0f58-0f53-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f56> <s0f58-0f53-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f58> <s0f58-0f53-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f7e> <s0f58-0f53-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f58-0f53-0f60> <s0f58-0f53-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f62> <s0f58-0f53-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f63> <s0f58-0f53-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f66> <s0f58-0f53-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f72> <s0f58-0f53-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f74> <s0f58-0f53-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f7a> <s0f58-0f53-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0f7c> <s0f58-0f53-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f58-0f53-0fad> <s0f58-0f53-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0fa3> <s0f62-0fa3>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa3> <s0f66-0fa3>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0fa3> <s0f56-0f62-0fa3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fa3> <s0f56-0f66-0fa3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &པ<<ྉྤ<དཔག<དཔང<དཔད<དཔབ<དཔའ<དཔར<དཔལ<དཔས<དཔི<དཔུ<དཔེ<དཔོ<དཔྱ<དཔྲ<ལྤ<སྤ
+<U0F54> <S0F54>;<BASE>;<MIN>;<U0F54> % TIBETAN LETTER PA
+<e0f89-0fa4> <S0F54>;<VRNT1>;<MIN>;IGNORE
+
+reorder-after <S0F54> % TIBETAN LETTER PA
+<s0f51-0f54-0f42>
+<s0f51-0f54-0f44>
+<s0f51-0f54-0f51>
+<s0f51-0f54-0f56>
+<s0f51-0f54-0f60>
+<s0f51-0f54-0f62>
+<s0f51-0f54-0f63>
+<s0f51-0f54-0f66>
+<s0f51-0f54-0f72>
+<s0f51-0f54-0f74>
+<s0f51-0f54-0f7a>
+<s0f51-0f54-0f7c>
+<s0f51-0f54-0fb1>
+<s0f51-0f54-0fb2>
+<s0f63-0fa4>
+<s0f66-0fa4>
+
+<e0f51-0f54-0f42> <s0f51-0f54-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f44> <s0f51-0f54-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f51> <s0f51-0f54-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f56> <s0f51-0f54-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f60> <s0f51-0f54-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f62> <s0f51-0f54-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f63> <s0f51-0f54-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f66> <s0f51-0f54-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f72> <s0f51-0f54-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f74> <s0f51-0f54-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f7a> <s0f51-0f54-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0f7c> <s0f51-0f54-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0fb1> <s0f51-0f54-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f54-0fb2> <s0f51-0f54-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f63-0fa4> <s0f63-0fa4>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa4> <s0f66-0fa4>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཕ<<ྉྥ<འཕ
+<U0F55> <S0F55>;<BASE>;<MIN>;<U0F55> % TIBETAN LETTER PHA
+<e0f89-0fa5> <S0F55>;<VRNT1>;<MIN>;IGNORE
+
+reorder-after <S0F55> % TIBETAN LETTER PHA
+<s0f60-0f55>
+
+<e0f60-0f55> <s0f60-0f55>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &བ<དབག<དབང<དབད<དབན<དབབ<དབའ<དབར<དབལ<དབས<དབི<དབུ<དབེ<དབོ<དབྱ<དབྲ<འབག<འབང<འབད<འབན<འབབ<འབམ
+% <<<འབཾ<འབའ<འབར<འབལ<འབས<འབི<འབུ<འབེ<འབོ<འབྱ<འབྲ<རྦ<ལྦ<སྦ
+reorder-after <S0F56> % TIBETAN LETTER BA
+<s0f51-0f56-0f42>
+<s0f51-0f56-0f44>
+<s0f51-0f56-0f51>
+<s0f51-0f56-0f53>
+<s0f51-0f56-0f56>
+<s0f51-0f56-0f60>
+<s0f51-0f56-0f62>
+<s0f51-0f56-0f63>
+<s0f51-0f56-0f66>
+<s0f51-0f56-0f72>
+<s0f51-0f56-0f74>
+<s0f51-0f56-0f7a>
+<s0f51-0f56-0f7c>
+<s0f51-0f56-0fb1>
+<s0f51-0f56-0fb2>
+<s0f60-0f56-0f42>
+<s0f60-0f56-0f44>
+<s0f60-0f56-0f51>
+<s0f60-0f56-0f53>
+<s0f60-0f56-0f56>
+<s0f60-0f56-0f58>
+<s0f60-0f56-0f7e>
+<s0f60-0f56-0f60>
+<s0f60-0f56-0f62>
+<s0f60-0f56-0f63>
+<s0f60-0f56-0f66>
+<s0f60-0f56-0f72>
+<s0f60-0f56-0f74>
+<s0f60-0f56-0f7a>
+<s0f60-0f56-0f7c>
+<s0f60-0f56-0fb1>
+<s0f60-0f56-0fb2>
+<s0f62-0fa6>
+<s0f63-0fa6>
+<s0f66-0fa6>
+
+<e0f51-0f56-0f42> <s0f51-0f56-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f44> <s0f51-0f56-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f51> <s0f51-0f56-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f53> <s0f51-0f56-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f56> <s0f51-0f56-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f60> <s0f51-0f56-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f62> <s0f51-0f56-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f63> <s0f51-0f56-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f66> <s0f51-0f56-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f72> <s0f51-0f56-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f74> <s0f51-0f56-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f7a> <s0f51-0f56-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0f7c> <s0f51-0f56-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0fb1> <s0f51-0f56-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f56-0fb2> <s0f51-0f56-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f42> <s0f60-0f56-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f44> <s0f60-0f56-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f51> <s0f60-0f56-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f53> <s0f60-0f56-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f56> <s0f60-0f56-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f58> <s0f60-0f56-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f7e> <s0f60-0f56-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f60-0f56-0f60> <s0f60-0f56-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f62> <s0f60-0f56-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f63> <s0f60-0f56-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f66> <s0f60-0f56-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f72> <s0f60-0f56-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f74> <s0f60-0f56-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f7a> <s0f60-0f56-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0f7c> <s0f60-0f56-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0fb1> <s0f60-0f56-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f60-0f56-0fb2> <s0f60-0f56-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0fa6> <s0f62-0fa6>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f63-0fa6> <s0f63-0fa6>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa6> <s0f66-0fa6>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &མ<<<ཾ<དམག<དམང<དམད<དམན<དམབ<དམཝ<དམའ<དམར<དམལ<དམས<དམི<དམུ<དམེ<དམོ<དམྭ<དམྱ<རྨ<སྨ
+<U0F58> <S0F58>;<BASE>;<MIN>;<U0F58> % མ TIBETAN LETTER MA
+<U0F7E> <S0F58>;<BASE>;<CAP>;<U0F7E> % ཾ TIBETAN SIGN RJES SU NGA RO
+
+reorder-after <S0F58> % མ TIBETAN LETTER MA
+<s0f51-0f58-0f42>
+<s0f51-0f58-0f44>
+<s0f51-0f58-0f51>
+<s0f51-0f58-0f53>
+<s0f51-0f58-0f56>
+<s0f51-0f58-0f5d>
+<s0f51-0f58-0f60>
+<s0f51-0f58-0f62>
+<s0f51-0f58-0f63>
+<s0f51-0f58-0f66>
+<s0f51-0f58-0f72>
+<s0f51-0f58-0f74>
+<s0f51-0f58-0f7a>
+<s0f51-0f58-0f7c>
+<s0f51-0f58-0fad>
+<s0f51-0f58-0fb1>
+<s0f62-0fa8>
+<s0f66-0fa8>
+
+<e0f51-0f58-0f42> <s0f51-0f58-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f44> <s0f51-0f58-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f51> <s0f51-0f58-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f53> <s0f51-0f58-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f56> <s0f51-0f58-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f5d> <s0f51-0f58-0f5d>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f60> <s0f51-0f58-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f62> <s0f51-0f58-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f63> <s0f51-0f58-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f66> <s0f51-0f58-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f72> <s0f51-0f58-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f74> <s0f51-0f58-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f7a> <s0f51-0f58-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0f7c> <s0f51-0f58-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0fad> <s0f51-0f58-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f51-0f58-0fb1> <s0f51-0f58-0fb1>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f62-0fa8> <s0f62-0fa8>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa8> <s0f66-0fa8>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཙ<གཙ<བཙ<རྩ<སྩ<བརྩ<བསྩ
+reorder-after <S0F59> % TIBETAN LETTER TSA
+<s0f42-0f59>
+<s0f56-0f59>
+<s0f62-0fa9>
+<s0f66-0fa9>
+<s0f56-0f62-0fa9>
+<s0f56-0f66-0fa9>
+
+<e0f42-0f59> <s0f42-0f59>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f59> <s0f56-0f59>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f62-0fa9> <s0f62-0fa9>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f66-0fa9> <s0f66-0fa9>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0fa9> <s0f56-0f62-0fa9>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fa9> <s0f56-0f66-0fa9>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཚ<མཚ<འཚ
+reorder-after <S0F5A> % ཚ TIBETAN LETTER TSHA
+<s0f58-0f5a>
+<s0f60-0f5a>
+
+<e0f58-0f5a> <s0f58-0f5a>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f60-0f5a> <s0f60-0f5a>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཛ<མཛ<འཛ<རྫ<བརྫ
+reorder-after <S0F5B> % ཛ TIBETAN LETTER DZA
+<s0f58-0f5b>
+<s0f60-0f5b>
+<s0f62-0fab>
+<s0f56-0f62-0fab>
+
+<e0f58-0f5b> <s0f58-0f5b>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f60-0f5b> <s0f60-0f5b>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f62-0fab> <s0f62-0fab>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f62-0fab> <s0f56-0f62-0fab>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% # &ཝ
+% &ཞ<གཞ<བཞ
+reorder-after <S0F5E> % ཞ TIBETAN LETTER ZHA
+<s0f42-0f5e>
+<s0f56-0f5e>
+
+<e0f42-0f5e> <s0f42-0f5e>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f5e> <s0f56-0f5e>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཟ<གཟ<བཟ
+reorder-after <S0F5F> % ཟ TIBETAN LETTER ZA
+<s0f42-0f5f>
+<s0f56-0f5f>
+
+<e0f42-0f5f> <s0f42-0f5f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f5f> <s0f56-0f5f>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% # &འ
+% &ཡ<གཡ
+reorder-after <S0F61> % ཡ TIBETAN LETTER YA
+<s0f42-0f61>
+
+<e0f42-0f61> <s0f42-0f61>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ར<<<ཪ<ཬ<བརླ=བཪླ
+<U0F62> <S0F62>;<BASE>;<MIN>;<U0F62> % TIBETAN LETTER RA
+<U0F6A> <S0F62>;<BASE>;<CAP>;<U0F6A> % TIBETAN LETTER FIXED-FORM RA
+
+reorder-after <S0F62> % TIBETAN LETTER RA
+<S0F6C> % ཬ TIBETAN LETTER RRA
+<s0f56-0f62-0fb3>
+
+<e0f56-0f62-0fb3> <s0f56-0f62-0fb3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";"<U0F56><U0F62><U0FB3>"
+<e0f56-0f6a-0fb3> <s0f56-0f62-0fb3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";"<U0F56><U0F6A><U0FB3>"
+
+% # &ལ
+% &ཤ<ཥ<གཤ<བཤ
+reorder-after <S0F64> % ཤ TIBETAN LETTER SHA
+<S0F65>
+<s0f42-0f64>
+<s0f56-0f64>
+
+<e0f42-0f64> <s0f42-0f64>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0f56-0f64> <s0f56-0f64>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ས<གསག<གསང<གསད<གསན<གསབ<གསའ<གསར<གསལ<གསས<གསི<གསུ<གསེ<གསོ<གསྭ<བསག<བསང<བསད<བསབ<བསམ<<<བསཾ<བསའ<བསར
+% <བསལ<བསས<བསི<བསུ<བསེ<བསོ<བསྭ<བསྲ<བསླ
+reorder-after <S0F66> % ས TIBETAN LETTER SA
+<s0f42-0f66-0f42>
+<s0f42-0f66-0f44>
+<s0f42-0f66-0f51>
+<s0f42-0f66-0f53>
+<s0f42-0f66-0f56>
+<s0f42-0f66-0f60>
+<s0f42-0f66-0f62>
+<s0f42-0f66-0f63>
+<s0f42-0f66-0f66>
+<s0f42-0f66-0f72>
+<s0f42-0f66-0f74>
+<s0f42-0f66-0f7a>
+<s0f42-0f66-0f7c>
+<s0f42-0f66-0fad>
+<s0f56-0f66-0f42>
+<s0f56-0f66-0f44>
+<s0f56-0f66-0f51>
+<s0f56-0f66-0f56>
+<s0f56-0f66-0f58>
+<s0f56-0f66-0f60>
+<s0f56-0f66-0f62>
+<s0f56-0f66-0f63>
+<s0f56-0f66-0f66>
+<s0f56-0f66-0f72>
+<s0f56-0f66-0f74>
+<s0f56-0f66-0f7a>
+<s0f56-0f66-0f7c>
+<s0f56-0f66-0fad>
+<s0f56-0f66-0fb2>
+<s0f56-0f66-0fb3>
+
+<e0f42-0f66-0f42> <s0f42-0f66-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f44> <s0f42-0f66-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f51> <s0f42-0f66-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f53> <s0f42-0f66-0f53>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f56> <s0f42-0f66-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f60> <s0f42-0f66-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f62> <s0f42-0f66-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f63> <s0f42-0f66-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f66> <s0f42-0f66-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f72> <s0f42-0f66-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f74> <s0f42-0f66-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f7a> <s0f42-0f66-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0f7c> <s0f42-0f66-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f42-0f66-0fad> <s0f42-0f66-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f42> <s0f56-0f66-0f42>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f44> <s0f56-0f66-0f44>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f51> <s0f56-0f66-0f51>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f56> <s0f56-0f66-0f56>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f58> <s0f56-0f66-0f58>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f7e> <s0f56-0f66-0f58>;"<BASE><BASE><BASE>";"<CAP><CAP><CAP>";IGNORE
+<e0f56-0f66-0f60> <s0f56-0f66-0f60>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f62> <s0f56-0f66-0f62>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f63> <s0f56-0f66-0f63>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f66> <s0f56-0f66-0f66>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f72> <s0f56-0f66-0f72>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f74> <s0f56-0f66-0f74>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f7a> <s0f56-0f66-0f7a>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0f7c> <s0f56-0f66-0f7c>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fad> <s0f56-0f66-0fad>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fb2> <s0f56-0f66-0fb2>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+<e0f56-0f66-0fb3> <s0f56-0f66-0fb3>;"<BASE><BASE><BASE>";"<MIN><MIN><MIN>";IGNORE
+
+% &ཧ<ལྷ
+reorder-after <S0F67> % ཧ TIBETAN LETTER HA
+<s0f63-0fb7>
+
+<e0f63-0fb7> <s0f63-0fb7>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+
+% &ཨ
+% # Explicit vowels
+% <ཱ<ི<ཱི<ྀ<ཱྀ<ུ<ཱུ<ེ<ཻ=ེེ<ོ<ཽ=ོོ
+% # Post-radicals
+% <ྐ<ྑ<ྒ<ྔ<ྕ<ྖ<ྗ<ྙ<ྟ<ྚ<ྠ<ྛ<ྡ<ྜ<ྣ<ྞ<ྤ<ྥ<ྦ<ྨ<ྩ<ྪ<ྫ<ྭ<<<ྺ<ྮ<ྯ<ྰ<ྱ<<<ྻ<ྲ<<<ྼ<ླ<ྴ
+% <ྵ<ྶ<ྷ<ྸ
+reorder-after <S0F68> % TIBETAN LETTER A
+<S0F71>
+<S0F72>
+<s0f71-0f72>
+<S0F80>
+<s0f71-0f80>
+<S0F74>
+<s0f71-0f74>
+<S0F7A>
+<S0F7B>
+<s0f7a-0f7a>
+<S0F7C>
+<S0F7D>
+<s0f7c-0f7c>
+<S0F90>
+<S0F91>
+<S0F92>
+<S0F94>
+<S0F95>
+<S0F96>
+<S0F97>
+<S0F99>
+<S0F9F>
+<S0F9A>
+<S0FA0>
+<S0F9B>
+<S0FA1>
+<S0F9C>
+<S0FA3>
+<S0F9E>
+<S0FA4>
+<S0FA5>
+<S0FA6>
+<S0FA8>
+<S0FA9>
+<S0FAA>
+<S0FAB>
+<S0FAD>
+<S0FBA>
+<S0FAE>
+<S0FAF>
+<S0FB0>
+<S0FB1>
+<S0FBB>
+<S0FB2>
+<S0FBC>
+<S0FB3>
+<S0FB4>
+<S0FB5>
+<S0FB6>
+<S0FB7>
+<S0FB8>
+
+<U0F71_0F72> <s0f71-0f72>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<U0F71_0F80> <s0f71-0f80>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<U0F71_0F74> <s0f71-0f74>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<U0F7B> <S0F7B>;<BASE>;<MIN>;<U0F7B> % TIBETAN VOWEL SIGN EE
+<e0f7a-0f7a> <S0F7B>;<BASE>;<MIN>;"<U0F7A><U0F7A>"
+<e0f7c-0f7c> <S0F7D>;<BASE>;<MIN>;<VRNT1>
+<U0F7D> <S0F7D>;<BASE>;<MIN>;<VRNT2> % TIBETAN VOWEL SIGN OO
+<U0FAD> <S0FAD>;<BASE>;<MIN>;<U0FAD> % TIBETAN SUBJOINED LETTER WA
+<U0FBA> <S0FAD>;<BASE>;<CAP>;<U0FBA> % TIBETAN SUBJOINED LETTER FIXED-FORM WA
+<U0FB1> <S0FB1>;<BASE>;<MIN>;<U0FB1> % TIBETAN SUBJOINED LETTER YA
+<U0FBB> <S0FB1>;<BASE>;<CAP>;<U0FBB> % TIBETAN SUBJOINED LETTER FIXED-FORM YA
+<U0FB2> <S0FB2>;<BASE>;<MIN>;<U0FB2> % TIBETAN SUBJOINED LETTER RA
+<U0FBC> <S0FB2>;<BASE>;<CAP>;<U0FBC> % TIBETAN SUBJOINED LETTER FIXED-FORM RA
+
+% # Combining marks and signs (secondary weight)
+% &༹<<྄<<ཿ<<྅<<ྈ<<ྉ<<ྊ<<ྋ<<ྌ<<ྍ<<ྎ<<ྏ
+<U0F39> IGNORE;<D0F39>;<MIN>;<U0F39> % ༹ TIBETAN MARK TSA -PHRU
+<U0F84> IGNORE;"<D0F39><VRNT1><VRNT1>";<MIN>;<U0F84> % TIBETAN MARK HALANTA
+<U0F7F> IGNORE;"<D0F39><VRNT1><VRNT2>";<MIN>;<U0F7F> % TIBETAN SIGN RNAM BCAD
+<U0F85> IGNORE;"<D0F39><VRNT1><VRNT3>";IGNORE;<U0F85> % TIBETAN MARK PALUTA
+<U0F88> IGNORE;"<D0F39><VRNT1><VRNT4>";<MIN>;<U0F88> % TIBETAN SIGN LCE TSA CAN
+<U0F89> IGNORE;"<D0F39><VRNT1><VRNT5>";<MIN>;<U0F89> % TIBETAN SIGN MCHU CAN
+<U0F8A> IGNORE;"<D0F39><VRNT2><VRNT1>";<MIN>;<U0F8A> % TIBETAN SIGN GRU CAN RGYINGS
+<U0F8B> IGNORE;"<D0F39><VRNT2><VRNT2>";<MIN>;<U0F8B> % TIBETAN SIGN GRU MED RGYINGS
+<U0F8C> IGNORE;"<D0F39><VRNT2><VRNT3>";<MIN>;<U0F8C> % TIBETAN SIGN INVERTED MCHU CAN
+<U0F8D> IGNORE;"<D0F39><VRNT2><VRNT4>";<MIN>;<U0F8D> % TIBETAN SUBJOINED SIGN LCE TSA CAN
+<U0F8E> IGNORE;"<D0F39><VRNT2><VRNT5>";<MIN>;<U0F8E> % TIBETAN SUBJOINED SIGN MCHU CAN
+<U0F8F> IGNORE;"<D0F39><VRNT3><VRNT1>";<MIN>;<U0F8F> % TIBETAN SUBJOINED SIGN INVERTED MCHU CAN
+
+% # Treatༀ, ཷand ,ཹ as decomposed
+% &ཨོཾ=ༀ
+% In the following lines we use <S0F58> instead of <S0F7E> because of
+% the line:
+% <U0F7E> <S0F58>;<BASE>;<CAP>;<U0F7E> % ཾ TIBETAN SIGN RJES SU NGA RO
+% which has been used above. So <S0F7E> should be sorted like <S0F58>.
+<e0f68-0f7c-0f7e> "<S0F68><S0F7C><S0F58>";"<BASE><BASE><BASE>";"<MIN><MIN><CAP>";<VRNT1>
+<U0F00> "<S0F68><S0F7C><S0F58>";"<BASE><BASE><BASE>";"<MIN><MIN><CAP>";<VRNT2> % TIBETAN SYLLABLE OM
+% &ྲཱྀ=ཷ
+<U0F77> <S0F77>;<BASE>;<MIN>;<U0F77> % TIBETAN VOWEL SIGN VOCALIC RR
+<U0FB2_0F71_0F80> <S0F77>;<BASE>;<MIN>;"<U0FB2><U0F71><U0F80>"
+% &ླཱྀ=ཹ
+<U0F79> <S0F79>;<BASE>;<MIN>;<U0F79> % TIBETAN VOWEL SIGN VOCALIC LL
+<U0FB3_0F71_0F80> <S0F79>;<BASE>;<MIN>;"<U0FB3><U0F71><U0F80>"
reorder-end
diff --git a/localedata/locales/en_CA b/localedata/locales/en_CA
index f06872ffd6..3f4f88598c 100644
--- a/localedata/locales/en_CA
+++ b/localedata/locales/en_CA
@@ -57,14 +57,6 @@ copy "iso14651_t1"
reorder-after <RES-1>
<CAP>
-% Present in iso14651_t1, but these definitions seem to have been
-% removed from latest iso14651 tables.
-reorder-after <U0041>
-<U00C6> "<a><e>";"<LIG><LIG>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0061>
-<U00E6> "<a><e>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
-
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/eo b/localedata/locales/eo
index ed207064b5..33a81033e2 100644
--- a/localedata/locales/eo
+++ b/localedata/locales/eo
@@ -55,6 +55,27 @@ copy "i18n"
END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for Esperanto:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/eo.xml)
+%
+% <collation type="standard" >
+% <cr><![CDATA[
+% &C<ĉ<<<Ĉ
+% &G<ĝ<<<Ĝ
+% &H<ĥ<<<Ĥ
+% &J<ĵ<<<Ĵ
+% &S<ŝ<<<Ŝ
+% &U<ŭ<<<Ŭ
+% ]]></cr>
+% </collation >
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/eo.xml)
+%
+% <exemplarCharacters type="index">[A B C Ĉ D E F G Ĝ H Ĥ I J Ĵ K L M N O P R S Ŝ T U Ŭ V Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
collating-symbol <ccirc>
@@ -64,43 +85,31 @@ collating-symbol <jcirc>
collating-symbol <scirc>
collating-symbol <ubreve>
-reorder-after <c>
+reorder-after <AFTER-C>
<ccirc>
-reorder-after <g>
+reorder-after <AFTER-G>
<gcirc>
-reorder-after <h>
+reorder-after <AFTER-H>
<hcirc>
-reorder-after <j>
+reorder-after <AFTER-J>
<jcirc>
-reorder-after <s>
+reorder-after <AFTER-S>
<scirc>
-reorder-after <u>
+reorder-after <AFTER-U>
<ubreve>
-reorder-after <U0043>
-<U0108> <ccirc>;<CIR>;<CAP>;IGNORE
-reorder-after <U0063>
-<U0109> <ccirc>;<CIR>;<MIN>;IGNORE
-reorder-after <U0047>
-<U011C> <gcirc>;<CIR>;<CAP>;IGNORE
-reorder-after <U0067>
-<U011D> <gcirc>;<CIR>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0124> <hcirc>;<CIR>;<CAP>;IGNORE
-reorder-after <U0068>
-<U0125> <hcirc>;<CIR>;<MIN>;IGNORE
-reorder-after <U004A>
-<U0134> <jcirc>;<CIR>;<CAP>;IGNORE
-reorder-after <U006A>
-<U0135> <jcirc>;<CIR>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015C> <scirc>;<CIR>;<CAP>;IGNORE
-reorder-after <U0073>
-<U015D> <scirc>;<CIR>;<MIN>;IGNORE
-reorder-after <U0055>
-<U016C> <ubreve>;<BRE>;<CAP>;IGNORE
-reorder-after <U0075>
-<U016D> <ubreve>;<BRE>;<MIN>;IGNORE
+<U0108> <ccirc>;<BASE>;<CAP>;IGNORE
+<U0109> <ccirc>;<BASE>;<MIN>;IGNORE
+<U011C> <gcirc>;<BASE>;<CAP>;IGNORE
+<U011D> <gcirc>;<BASE>;<MIN>;IGNORE
+<U0124> <hcirc>;<BASE>;<CAP>;IGNORE
+<U0125> <hcirc>;<BASE>;<MIN>;IGNORE
+<U0134> <jcirc>;<BASE>;<CAP>;IGNORE
+<U0135> <jcirc>;<BASE>;<MIN>;IGNORE
+<U015C> <scirc>;<BASE>;<CAP>;IGNORE
+<U015D> <scirc>;<BASE>;<MIN>;IGNORE
+<U016C> <ubreve>;<BASE>;<CAP>;IGNORE
+<U016D> <ubreve>;<BASE>;<MIN>;IGNORE
reorder-end
diff --git a/localedata/locales/es_CU b/localedata/locales/es_CU
index a5ab099229..d37d452b0f 100644
--- a/localedata/locales/es_CU
+++ b/localedata/locales/es_CU
@@ -50,8 +50,7 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-% Copy the template from ISO/IEC 14651
-copy "iso14651_t1"
+copy "es_ES"
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/es_EC b/localedata/locales/es_EC
index 244fe4170d..48d4153019 100644
--- a/localedata/locales/es_EC
+++ b/localedata/locales/es_EC
@@ -51,7 +51,7 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-copy "es_US"
+copy "es_ES"
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
index d17612f672..aa919a2626 100644
--- a/localedata/locales/es_ES
+++ b/localedata/locales/es_ES
@@ -51,8 +51,55 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-% Copy the template from ISO/IEC 14651
+% CLDR collation rules for Spanish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/es.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% &N<ñ<<<Ñ
+% ]]></cr>
+% </collation>
+% <collation type="traditional">
+% <cr><![CDATA[
+% &N<ñ<<<Ñ
+% &C<ch<<<Ch<<<CH
+% &l<ll<<<Ll<<<LL
+% ]]></cr>
+% </collation>
+% <collation draft="unconfirmed" alt="proposed" type="traditional">
+% <cr><![CDATA[
+% &N<ñ<<<Ñ
+% &C<ch<<<cH<<<Ch<<<CH
+% &l<ll<<<lL<<<Ll<<<LL
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/es.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z]</exemplarCharacters>
+%
+% The following rules implement the same order as “standard” for glibc.
+
copy "iso14651_t1"
+
+collating-symbol <space>
+collating-symbol <n-tilde>
+
+reorder-after <RES-1>
+<space>
+
+reorder-after <AFTER-N>
+<n-tilde>
+
+<U0020> <space>;IGNORE;IGNORE;<U0020>
+<U00A0> <space>;IGNORE;IGNORE;<U00A0>
+<U00F1> <n-tilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <n-tilde>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ñ
+
+reorder-end
+
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/es_US b/localedata/locales/es_US
index c66d574b52..42f67670d0 100644
--- a/localedata/locales/es_US
+++ b/localedata/locales/es_US
@@ -51,61 +51,7 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-copy "iso14651_t1"
-
-collating-element <C-H> from "<U0043><U0048>"
-collating-element <c-h> from "<U0063><U0068>"
-collating-element <C-h> from "<U0043><U0068>"
-collating-element <c-H> from "<U0063><U0048>"
-collating-element <L-L> from "<U004C><U004C>"
-collating-element <l-l> from "<U006C><U006C>"
-collating-element <L-l> from "<U004C><U006C>"
-collating-element <l-L> from "<U006C><U004C>"
-
-collating-symbol <ch>
-collating-symbol <ll>
-collating-symbol <ntilde>
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-<CAP-MIN>
-
-reorder-after <n>
-<ntilde>
-
-reorder-after <U006E>
-<U00F1> <ntilde>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U004E>
-<U00D1> <ntilde>;<BAS>;<CAP>;IGNORE
-
-reorder-after <c>
-<ch>
-
-reorder-after <U0063>
-<c-H> <ch>;<BAS>;<MIN-CAP>;IGNORE
-<c-h> <ch>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0043>
-<C-H> <ch>;<BAS>;<CAP>;IGNORE
-<C-h> <ch>;<BAS>;<CAP-MIN>;IGNORE
-
-reorder-after <l>
-<ll>
-
-reorder-after <U006C>
-<l-L> <ll>;<BAS>;<MIN-CAP>;IGNORE
-<l-l> <ll>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U004C>
-<L-L> <ll>;<BAS>;<CAP>;IGNORE
-<L-l> <ll>;<BAS>;<CAP-MIN>;IGNORE
-
-reorder-end
-
+copy "es_ES"
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/et_EE b/localedata/locales/et_EE
index bab7493c98..f5c47149a6 100644
--- a/localedata/locales/et_EE
+++ b/localedata/locales/et_EE
@@ -63,6 +63,7 @@ copy "iso14651_t1"
% The following rules implement the same order for glibc.
collating-symbol <s-caron>
+collating-symbol <z>
collating-symbol <z-caron>
collating-symbol <o-tilde>
collating-symbol <a-diaresis>
@@ -80,28 +81,28 @@ reorder-after <RES-1>
<CAP>
<MIN>
-reorder-after <s>
+reorder-after <BEFORE-T>
<s-caron>
-<z>
+<S007A>
<z-caron>
-reorder-after <w>
+reorder-after <BEFORE-X>
<o-tilde>
<a-diaresis>
<o-diaresis>
<u-diaresis>
-<U0161> <s-caron>;<BAS>;<MIN>;IGNORE % š
-<U0160> <s-caron>;<BAS>;<CAP>;IGNORE % Š
-<U017E> <z-caron>;<BAS>;<MIN>;IGNORE % ž
-<U017D> <z-caron>;<BAS>;<CAP>;IGNORE % Ž
-<U00F5> <o-tilde>;<BAS>;<MIN>;IGNORE % õ
-<U00D5> <o-tilde>;<BAS>;<CAP>;IGNORE % Õ
-<U00E4> <a-diaresis>;<BAS>;<MIN>;IGNORE % ä
-<U00C4> <a-diaresis>;<BAS>;<CAP>;IGNORE % Ä
-<U00F6> <o-diaresis>;<BAS>;<MIN>;IGNORE % ö
-<U00D6> <o-diaresis>;<BAS>;<CAP>;IGNORE % Ö
-<U00FC> <u-diaresis>;<BAS>;<MIN>;IGNORE % ü
-<U00DC> <u-diaresis>;<BAS>;<CAP>;IGNORE % Ü
+<U0161> <s-caron>;<BASE>;<MIN>;IGNORE % š
+<U0160> <s-caron>;<BASE>;<CAP>;IGNORE % Š
+<U017E> <z-caron>;<BASE>;<MIN>;IGNORE % ž
+<U017D> <z-caron>;<BASE>;<CAP>;IGNORE % Ž
+<U00F5> <o-tilde>;<BASE>;<MIN>;IGNORE % õ
+<U00D5> <o-tilde>;<BASE>;<CAP>;IGNORE % Õ
+<U00E4> <a-diaresis>;<BASE>;<MIN>;IGNORE % ä
+<U00C4> <a-diaresis>;<BASE>;<CAP>;IGNORE % Ä
+<U00F6> <o-diaresis>;<BASE>;<MIN>;IGNORE % ö
+<U00D6> <o-diaresis>;<BASE>;<CAP>;IGNORE % Ö
+<U00FC> <u-diaresis>;<BASE>;<MIN>;IGNORE % ü
+<U00DC> <u-diaresis>;<BASE>;<CAP>;IGNORE % Ü
reorder-end
diff --git a/localedata/locales/fa_IR b/localedata/locales/fa_IR
index 06270c0548..3714a30932 100644
--- a/localedata/locales/fa_IR
+++ b/localedata/locales/fa_IR
@@ -84,188 +84,113 @@ END LC_CTYPE
LC_COLLATE
copy "iso14651_t1"
-% The Persian alphabet order is: ALEF WITH MADDA ABOVE, ALEF, HAMZA (all
-% kinds), BEH, PEH, TEH, JEEM, TCHEH, HAH, KHAH, DAL, THAL, REH, ZAIN, JEH,
-% SEEN, SHEEN, SAD, DAD, TAH, ZAH, AIN, GHAIN, FEH, QAF, KAF, GAF, LAM,
-% MEEM, NOON, WAW, HEH, YEH.
-% The various kinds of HAMZA are sorted as ALEF WITH HAMZA ABOVE, ALEF WITH
-% HAMZA BELOW, WAW WITH HAMZA ABOVE, YEH WITH HAMZA ABOVE.
-
-collating-symbol <AHY> % accent hamza over yeh
-collating-symbol <ADL> % dotless
-collating-symbol <ADO> % with dots over
-collating-symbol <AWO> % with wasla over
-
-collating-symbol <alefmadda>
-collating-symbol <yeh>
-
-% Alternate representations displayed the same
-collating-symbol <ALT1>
-collating-symbol <ALT2>
-
-collating-element <Alef-Madda> from "<U0627><U0653>"
-collating-element <Alef-Hamza> from "<U0627><U0654>"
-collating-element <Alef-HamzaBelow> from "<U0627><U0655>"
-collating-element <Waw-Hamza> from "<U0648><U0654>"
-collating-element <AlefMaksura-Hamza> from "<U0649><U0654>"
-collating-element <Yeh-Hamza> from "<U064A><U0654>"
-collating-element <FarsiYeh-Hamza> from "<U06CC><U0654>"
-
-reorder-after <BAS>
-<AHA>
-<AHS>
-<AWO>
-<AHW>
-<AHY>
-<ADL>
-<ADO>
-<AYE>
-<YBA>
-
-reorder-after <LIG>
-<ALT1>
-<ALT2>
-
-reorder-after <th>
-<alefmadda>
-<alef>
-<hamza>
-
-reorder-after <waw>
-<heh>
-<yeh>
-
-% Persian uses this order: Fatha, Kasra, Damma, Fathatan, Kasratan, Dammatan.
-
-reorder-after <U066D>
-<U064E> IGNORE;IGNORE;IGNORE;<U064E> %<fatha_no>
-<UFE76> IGNORE;IGNORE;IGNORE;<UFE76> %<fatha_is>
-<UFE77> IGNORE;IGNORE;IGNORE;<UFE77> %<fatha_me>
-<U0650> IGNORE;IGNORE;IGNORE;<U0650> %<kasra_no>
-<UFE7A> IGNORE;IGNORE;IGNORE;<UFE7A> %<kasra_is>
-<UFE7B> IGNORE;IGNORE;IGNORE;<UFE7B> %<kasra_me>
-<U064F> IGNORE;IGNORE;IGNORE;<U064F> %<damma_no>
-<UFE78> IGNORE;IGNORE;IGNORE;<UFE78> %<damma_is>
-<UFE79> IGNORE;IGNORE;IGNORE;<UFE79> %<damma_me>
-<U064B> IGNORE;IGNORE;IGNORE;<U064B> %<fathatan_no>
-<UFE70> IGNORE;IGNORE;IGNORE;<UFE70> %<fathatan_is>
-<UFE71> IGNORE;IGNORE;IGNORE;<UFE71> %<fathatan_me>
-<U064D> IGNORE;IGNORE;IGNORE;<U064D> %<kasratan_no>
-<UFE74> IGNORE;IGNORE;IGNORE;<UFE74> %<kasratan_is>
-<U064C> IGNORE;IGNORE;IGNORE;<U064C> %<dammatan_no>
-<UFE72> IGNORE;IGNORE;IGNORE;<UFE72> %<dammatan_is>
-
-reorder-after <UFE7F>
-<U0653> IGNORE;IGNORE;IGNORE;<U0653> %<madda_no>
-<U0654> IGNORE;IGNORE;IGNORE;<U0654> %<hamzaabove_no>
-<U0655> IGNORE;IGNORE;IGNORE;<U0655> %<hamzabelow_no>
-<U0670> IGNORE;IGNORE;IGNORE;<U0670> %<supalef_no>
-
-% The Persian digits are sorted before the Arabic ones: they are the basic forms.
-reorder-after <U0660>
-<U06F0> <0>;<BAS>;<MIN>;IGNORE
-<U0660> <0>;<PCL>;<MIN>;IGNORE
-<U06F1> <1>;<BAS>;<MIN>;IGNORE
-<U0661> <1>;<PCL>;<MIN>;IGNORE
-<U06F2> <2>;<BAS>;<MIN>;IGNORE
-<U0662> <2>;<PCL>;<MIN>;IGNORE
-<U06F3> <3>;<BAS>;<MIN>;IGNORE
-<U0663> <3>;<PCL>;<MIN>;IGNORE
-<U06F4> <4>;<BAS>;<MIN>;IGNORE
-<U0664> <4>;<PCL>;<MIN>;IGNORE
-<U06F5> <5>;<BAS>;<MIN>;IGNORE
-<U0665> <5>;<PCL>;<MIN>;IGNORE
-<U06F6> <6>;<BAS>;<MIN>;IGNORE
-<U0666> <6>;<PCL>;<MIN>;IGNORE
-<U06F7> <7>;<BAS>;<MIN>;IGNORE
-<U0667> <7>;<PCL>;<MIN>;IGNORE
-<U06F8> <8>;<BAS>;<MIN>;IGNORE
-<U0668> <8>;<PCL>;<MIN>;IGNORE
-<U06F9> <9>;<BAS>;<MIN>;IGNORE
-<U0669> <9>;<PCL>;<MIN>;IGNORE
-
-% And then the letters:
-<U0622> <alefmadda>;<BAS>;<MIN>;IGNORE % Alef With Madda Above
-<Alef-Madda> <alefmadda>;<BAS>;<MIN>;IGNORE
-<U0627> <alef>;<BAS>;<MIN>;IGNORE % Alef
-<U0671> <alef>;<AWO>;<MIN>;IGNORE % Alef Wasla
-<U0621> <hamza>;<BAS>;<MIN>;IGNORE % Hamza
-<U0623> <hamza>;<AHA>;<MIN>;IGNORE % Alef With Hamza Above
-<Alef-Hamza> <hamza>;<AHA>;<MIN>;IGNORE
-<U0625> <hamza>;<AHS>;<MIN>;IGNORE % Alef With Hamza Below
-<Alef-HamzaBelow> <hamza>;<AHS>;<MIN>;IGNORE
-<U0624> <hamza>;<AHW>;<MIN>;IGNORE % Waw With Hamza Above
-<Waw-Hamza> <hamza>;<AHW>;<MIN>;IGNORE
-<U0626> <hamza>;<AHY>;<MIN>;IGNORE % Yeh With Hamza Above
-<FarsiYeh-Hamza> <hamza>;<AHY>;<ALT1>;IGNORE
-<AlefMaksura-Hamza> <hamza>;<AHY>;<ALT2>;IGNORE
-<Yeh-Hamza> <hamza>;<AHY>;<MIN>;IGNORE
-reorder-after <U0642>
-<U06A9> <kaf>;<BAS>;<MIN>;IGNORE % Keheh
-<U0643> <kaf>;<PCL>;<MIN>;IGNORE % Kaf
-reorder-after <U0648>
-<U0647> <heh>;<BAS>;<MIN>;IGNORE % Heh
-<U0629> <heh>;<ADO>;<MIN>;IGNORE % Teh Marbuta
-<U06C0> <heh>;<AHA>;<MIN>;IGNORE % Heh With Yeh Above
-<U06CC> <yeh>;<BAS>;<MIN>;IGNORE % Farsi Yeh
-<U0649> <yeh>;<ADL>;<MIN>;IGNORE % Alef Maksura
-<U064A> <yeh>;<AYE>;<MIN>;IGNORE % Yeh
-
-% Finally the letters in Presentation Form:
-reorder-after <UFE80>
-<UFE81> <alefmadda>;<BAS>;<AIS>;IGNORE
-<UFE82> <alefmadda>;<BAS>;<AFI>;IGNORE
-<UFE8D> <alef>;<BAS>;<AIS>;IGNORE
-<UFE8E> <alef>;<BAS>;<AFI>;IGNORE
-<UFB50> <alef>;<AWO>;<AIS>;IGNORE
-<UFB51> <alef>;<AWO>;<AFI>;IGNORE
-<UFE80> <hamza>;<BAS>;<AIS>;IGNORE
-<UFE83> <hamza>;<AHA>;<AIS>;IGNORE
-<UFE84> <hamza>;<AHA>;<AFI>;IGNORE
-<UFE87> <hamza>;<AHS>;<AIS>;IGNORE
-<UFE88> <hamza>;<AHS>;<AFI>;IGNORE
-<UFE85> <hamza>;<AHW>;<AIS>;IGNORE
-<UFE86> <hamza>;<AHW>;<AFI>;IGNORE
-<U0689> <hamza>;<AHY>;<AIS>;IGNORE
-<U068A> <hamza>;<AHY>;<AFI>;IGNORE
-reorder-after <UFEAE>
-<UFDFC> "<reh><yeh><alef><lam>";"<LIG><LIG><LIG><LIG>";"<AII><AME><AFI><AIS>";IGNORE % Rial Sign
-reorder-after <UFED8>
-<UFB8E> <kaf>;<BAS>;<AIS>;IGNORE
-<UFB8F> <kaf>;<BAS>;<AFI>;IGNORE
-<UFB90> <kaf>;<BAS>;<AII>;IGNORE
-<UFB91> <kaf>;<BAS>;<AME>;IGNORE
-<UFED9> <kaf>;<PCL>;<AIS>;IGNORE
-<UFEDA> <kaf>;<PCL>;<AFI>;IGNORE
-<UFEDB> <kaf>;<PCL>;<AII>;IGNORE
-<UFEDC> <kaf>;<PCL>;<AME>;IGNORE
-reorder-after <UFEEE>
-<UFEE9> <heh>;<BAS>;<AIS>;IGNORE
-<UFEEA> <heh>;<BAS>;<AFI>;IGNORE
-<UFEEB> <heh>;<BAS>;<AII>;IGNORE
-<UFEEC> <heh>;<BAS>;<AME>;IGNORE
-<UFE93> <heh>;<ADO>;<AIS>;IGNORE
-<UFE94> <heh>;<ADO>;<AFI>;IGNORE
-<UFBA4> <heh>;<AHA>;<AIS>;IGNORE
-<UFBA5> <heh>;<AHA>;<AFI>;IGNORE
-<UFBFC> <yeh>;<BAS>;<AIS>;IGNORE
-<UFBFD> <yeh>;<BAS>;<AFI>;IGNORE
-<UFBFE> <yeh>;<BAS>;<AII>;IGNORE
-<UFBFF> <yeh>;<BAS>;<AME>;IGNORE
-<UFEEF> <yeh>;<ADL>;<AIS>;IGNORE
-<UFEF0> <yeh>;<ADL>;<AFI>;IGNORE
-<UFEF1> <yeh>;<AYE>;<AIS>;IGNORE
-<UFEF2> <yeh>;<AYE>;<AFI>;IGNORE
-<UFEF3> <yeh>;<AYE>;<AII>;IGNORE
-<UFEF4> <yeh>;<AYE>;<AME>;IGNORE
-<UFEF5> "<lam><alefmadda>";"<BAS><BAS>";"<AIS><AFI>";IGNORE
-<UFEF6> "<lam><alefmadda>";"<BAS><BAS>";"<AFI><AFI>";IGNORE
-<UFEF7> "<lam><hamza>";"<BAS><AHA>";"<AIS><AFI>";IGNORE
-<UFEF8> "<lam><hamza>";"<BAS><AHA>";"<AFI><AFI>";IGNORE
-<UFEF9> "<lam><hamza>";"<BAS><AHS>";"<AIS><AFI>";IGNORE
-<UFEFA> "<lam><hamza>";"<BAS><AHS>";"<AFI><AFI>";IGNORE
-<UFEFB> "<lam><alef>";"<BAS><BAS>";"<AIS><AFI>";IGNORE
-<UFEFC> "<lam><alef>";"<BAS><BAS>";"<AFI><AFI>";IGNORE
+% CLDR collation rules for Ukrainian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/fa.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% <collations>
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% [reorder Arab]
+% &َ<<ِ<<ُ<<ً<<ٍ<<ٌ
+% &[before 1]ا<آ
+% &ا<<ٱ<ء
+% <<أ<<ٲ<<إ<<ٳ<<ؤ
+% <<یٔ<<<ىٔ<<<ئ
+% &ک<<*ڪګكڬڭڮ
+% &ۏ<ه<<ە<<ہ<<ة<<ۃ<<ۀ<<ھ
+% &ی<<*ىےيېۑۍێ
+% ]]></cr>
+% </collation>
+% </collations>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/fa.xml)
+%
+% <exemplarCharacters type="index">[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+
+collating-symbol <arabic-letter-heh>
+
+collating-element <arabic-letter-farsi-yeh-with-hamza-above> from "<U06CC><U0654>"
+collating-element <arabic-letter-alef-maksura-with-hamza-above> from "<U0649><U0654>"
+
+% &َ<<ِ<<ُ<<ً<<ٍ<<ٌ
+reorder-after <FATHA>
+<KASRA>
+<DAMMA>
+<FATHATAN>
+<KASRATAN>
+<DAMMATAN>
+
+% &[before 1]ا<آ
+reorder-after <S08AC> % ARABIC LETTER ROHINGYA YEH
+<S0622> % ARABIC LETTER ALEF WITH MADDA ABOVE
+
+% &ا<<ٱ<ء<<أ<<ٲ<<إ<<ٳ<<ؤ<<یٔ<<<ىٔ<<<ئ
+% Entry in iso14651_t1_common:
+%
+% <U0627> <S0627>;<BASE>;<MIN>;<U0627> % ARABIC LETTER ALEF
+%
+% So we make <U0671> sort like <S0627> with a secondary difference:
+<U0671> <S0627>;"<BASE><VRNT1>";<MIN>;<U0671> % ARABIC LETTER ALEF WASLA
+
+reorder-after <S0627> % ARABIC LETTER ALEF
+<S0621> % ARABIC LETTER HAMZA
+
+<U0623> <S0621>;"<BASE><VRNT1><VRNT1>";<MIN>;<U0623> % ARABIC LETTER ALEF WITH HAMZA ABOVE
+<U0672> <S0621>;"<BASE><VRNT1><VRNT2>";<MIN>;<U0672> % ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE
+<U0625> <S0621>;"<BASE><VRNT1><VRNT3>";<MIN>;<U0625> % ARABIC LETTER ALEF WITH HAMZA BELOW
+<U0673> <S0621>;"<BASE><VRNT1><VRNT4>";<MIN>;<U0673> % ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
+<U0624> <S0621>;"<BASE><VRNT1><VRNT5>";<MIN>;<U0624> % ARABIC LETTER WAW WITH HAMZA ABOVE
+<arabic-letter-farsi-yeh-with-hamza-above> <S0621>;"<BASE><VRNT2><VRNT1>";<MIN>;<U06CC>
+<arabic-letter-alef-maksura-with-hamza-above> <S0621>;"<BASE><VRNT2><VRNT1>";<CAP>;<U0649>
+<U0626> <S0621>;"<BASE><VRNT2><VRNT1>";<COMPATCAP>;<U0626> % ARABIC LETTER YEH WITH HAMZA ABOVE
+
+% &ک<<*ڪګكڬڭڮ
+% Entry for ک in iso14651_t1_common:
+%
+% <U06A9> <S06A9>;<BASE>;<MIN>;<U06A9> % ARABIC LETTER KEHEH
+%
+% So we make ڪ ګ ك ڬ ڭ ڮ sort like <S06A9> with secondary differences:
+<U06AA> <S06A9>;"<BASE><VRNT1><VRNT1>";<MIN>;<U06AA> % ڪ ARABIC LETTER SWASH KAF
+<U06AB> <S06A9>;"<BASE><VRNT1><VRNT2>";<MIN>;<U06AB> % ګ ARABIC LETTER KAF WITH RING
+<U0643> <S06A9>;"<BASE><VRNT1><VRNT3>";<MIN>;<U0643> % ك ARABIC LETTER KAF
+<U06AC> <S06A9>;"<BASE><VRNT1><VRNT4>";<MIN>;<U06AC> % ڬ ARABIC LETTER KAF WITH DOT ABOVE
+<U06AD> <S06A9>;"<BASE><VRNT1><VRNT5>";<MIN>;<U06AD> % ڭ ARABIC LETTER NG
+<U06AE> <S06A9>;"<BASE><VRNT2><VRNT1>";<MIN>;<U06AE> % ڮ ARABIC LETTER KAF WITH THREE DOTS BELOW
+
+% &ۏ<ه<<ە<<ہ<<ة<<ۃ<<ۀ<<ھ
+reorder-after <S06CF> % ARABIC LETTER WAW WITH DOT ABOVE
+<arabic-letter-heh>
+
+% &ۏ<ه<<ە<<ہ<<ة<<ۃ<<ۀ<<ھ
+<U0647> <arabic-letter-heh>;<BASE>;<MIN>;<U0647> % ه ARABIC LETTER HEH
+<U06D5> <arabic-letter-heh>;"<BASE><VRNT1><VRNT1>";<MIN>;<U06D5> % ARABIC LETTER AE
+<U06C1> <arabic-letter-heh>;"<BASE><VRNT1><VRNT2>";<MIN>;<U06C1> % ARABIC LETTER HEH GOAL
+<U0629> <arabic-letter-heh>;"<BASE><VRNT1><VRNT3>";<MIN>;<U0629> % ARABIC LETTER TEH MARBUTA
+<U06C3> <arabic-letter-heh>;"<BASE><VRNT1><VRNT4>";<MIN>;<U06C3> % ARABIC LETTER TEH MARBUTA GOAL
+<U06C0> <arabic-letter-heh>;"<BASE><VRNT1><VRNT5>";"<MIN><MIN>";<U06C0> % ARABIC LETTER HEH WITH YEH ABOVE
+<U06BE> <arabic-letter-heh>;"<BASE><VRNT2><VRNT1>";<MIN>;<U06BE> % ARABIC LETTER HEH DOACHASHMEE
+
+% &ی<<*ىےيېۑۍێ
+% Entry for in iso14651_t1_common:
+%
+% <U06CC> <S06CC>;<BASE>;<MIN>;<U06CC> % ARABIC LETTER FARSI YEH
+%
+% So we make ى ے ي ې ۑ ۍ ێ sort like <S06CC> with secondary differences:
+<U0649> <S06CC>;"<BASE><VRNT1><VRNT1>";<MIN>;<U0649> % ARABIC LETTER ALEF MAKSURA
+<U06D2> <S06CC>;"<BASE><VRNT1><VRNT2>";<MIN>;<U06D2> % ARABIC LETTER YEH BARREE
+<U064A> <S06CC>;"<BASE><VRNT1><VRNT3>";<MIN>;<U064A> % ARABIC LETTER YEH
+<U06D0> <S06CC>;"<BASE><VRNT1><VRNT4>";<MIN>;<U06D0> % ARABIC LETTER E
+<U06D1> <S06CC>;"<BASE><VRNT1><VRNT5>";<MIN>;<U06D1> % ARABIC LETTER YEH WITH THREE DOTS BELOW
+<U06CD> <S06CC>;"<BASE><VRNT2><VRNT1>";<MIN>;<U06CD> % ARABIC LETTER YEH WITH TAIL
+<U06CE> <S06CC>;"<BASE><VRNT2><VRNT2>";<MIN>;<U06CE> % ARABIC LETTER YEH WITH SMALL V
+
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/fi_FI b/localedata/locales/fi_FI
index 3fea0aa84b..eeb278316b 100644
--- a/localedata/locales/fi_FI
+++ b/localedata/locales/fi_FI
@@ -58,75 +58,116 @@ END LC_IDENTIFICATION
LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Finnish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/fi.xml)
+%
+% <collation type="traditional">
+% <!-- v and w used to be only secondary-different. -->
+% <cr><![CDATA[
+% &D<<ð<<<Ð<<đ<<<Đ
+% &N<<ŋ<<<Ŋ
+% &T<<þ/h<<<Þ/h
+% &V<<w<<<W
+% &Y<<ü<<<Ü<<ű<<<Ű
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø<<ő<<<Ő<<õ<<<Õ<<œ<<<Œ
+% ]]></cr>
+% </collation>
+% <collation type="standard">
+% <!-- Standard computer ordering: SFS-EN 13710 -->
+% <cr><![CDATA[
+% # D and U+0335 COMBINING SHORT STROKE OVERLAY
+% &D\u0335<<đ<<<Đ # root order: d\u0335=đ
+% # G and U+0335
+% &G\u0335<<ǥ<<<Ǥ
+% # N and U+0335
+% &N\u0335<<ŋ<<<Ŋ
+% # T and U+0335
+% &T\u0335<<ŧ<<<Ŧ
+% &Y<<ü<<<Ü
+% # Z and U+0335
+% &Z\u0335<<ʒ<<<Ʒ
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+% ]]></cr>
+% </collation>
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/fi.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö]</exemplarCharacters>
+%
+% The following rules implement the “standard” order for glibc.
+
collating-symbol <a-ring>
-collating-symbol <a-diaerisis>
-collating-symbol <o-diaerisis>
+collating-symbol <a-diaeresis>
+collating-symbol <o-diaeresis>
+
+collating-element <d-combining-short-stroke-overlay> from "d<U0335>"
+collating-element <D-combining-short-stroke-overlay> from "D<U0335>"
+collating-element <g-combining-short-stroke-overlay> from "g<U0335>"
+collating-element <G-combining-short-stroke-overlay> from "G<U0335>"
+collating-element <n-combining-short-stroke-overlay> from "n<U0335>"
+collating-element <N-combining-short-stroke-overlay> from "N<U0335>"
+collating-element <t-combining-short-stroke-overlay> from "t<U0335>"
+collating-element <T-combining-short-stroke-overlay> from "T<U0335>"
+collating-element <z-combining-short-stroke-overlay> from "z<U0335>"
+collating-element <Z-combining-short-stroke-overlay> from "Z<U0335>"
-reorder-after <z>
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+reorder-after <AFTER-LATIN>
<a-ring>
-<a-diaerisis>
-<o-diaerisis>
-
-reorder-after <U007A>
-<U00E5> <a-ring>;<BAS>;<MIN>;IGNORE
-<U01FB> <a-ring>;<ACA>;<MIN>;IGNORE
-<U00E4> <a-diaerisis>;<BAS>;<MIN>;IGNORE
-<U00E6> <a-diaerisis>;<REU>;<MIN>;IGNORE
-<U01FD> <a-diaerisis>;<U01FD>;<MIN>;IGNORE
-<U01E3> <a-diaerisis>;<MAC>;<MIN>;IGNORE
-<U00F6> <o-diaerisis>;<BAS>;<MIN>;IGNORE
-<U00F8> <o-diaerisis>;<U00D8>;<MIN>;IGNORE
-<U01FF> <o-diaerisis>;<U01FF>;<MIN>;IGNORE
-<U00F5> <o-diaerisis>;<TIL>;<MIN>;IGNORE
-reorder-after <U005A>
-<U00C5> <a-ring>;<BAS>;<CAP>;IGNORE
-<U01FA> <a-ring>;<ACA>;<CAP>;IGNORE
-<U00C4> <a-diaerisis>;<BAS>;<CAP>;IGNORE
-<U00C6> <a-diaerisis>;<REU>;<CAP>;IGNORE
-<U01FC> <a-diaerisis>;<U01FD>;<CAP>;IGNORE
-<U01E2> <a-diaerisis>;<MAC>;<CAP>;IGNORE
-<U00D6> <o-diaerisis>;<BAS>;<CAP>;IGNORE
-<U00D8> <o-diaerisis>;<U00D8>;<CAP>;IGNORE
-<U01FE> <o-diaerisis>;<U01FF>;<CAP>;IGNORE
-<U00D5> <o-diaerisis>;<TIL>;<CAP>;IGNORE
-
-reorder-after <U016B>
-<U0076> <v>;<U0056>;<BAS>;<MIN>
-<U1E7D> <v>;<U0056>;<TIL>;<MIN>
-<U0077> <w>;<U0057>;<BAS>;<MIN>
-<U1E83> <w>;<U0057>;<ACA>;<MIN>
-<U1E81> <w>;<U0057>;<GRA>;<MIN>
-<U0175> <w>;<U0057>;<CIR>;<MIN>
-<U1E85> <w>;<U0057>;<REU>;<MIN>
-<U1E87> <w>;<U0057>;<PCT>;<MIN>
-reorder-after <U016A>
-<U0056> <v>;<U0056>;<BAS>;<CAP>
-<U1E7C> <v>;<U0056>;<TIL>;<CAP>
-<U0057> <w>;<U0057>;<BAS>;<CAP>
-<U1E82> <w>;<U0057>;<ACA>;<CAP>
-<U1E80> <w>;<U0057>;<GRA>;<CAP>
-<U0174> <w>;<U0057>;<CIR>;<CAP>
-<U1E84> <w>;<U0057>;<REU>;<CAP>
-<U1E86> <w>;<U0057>;<PCT>;<CAP>
-
-reorder-after <U00FF>
-<U00FC> <y>;<DTT>;<MIN>;IGNORE
-reorder-after <U0178>
-<U00DC> <y>;<DTT>;<CAP>;IGNORE
-
-% Present in iso14651_t1, but these definitions seem to have been
-% removed from latest iso14651 tables.
-reorder-after <U0163>
-<U00FE> "<t><h>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
-reorder-after <U0162>
-<U00DE> "<t><h>";"<LIG><LIG>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0064>
-<U00F0> <d>;<PCL>;<MIN>;IGNORE
-<U0111> <d>;<OBL>;<MIN>;IGNORE
-reorder-after <U0044>
-<U00D0> <d>;<PCL>;<CAP>;IGNORE
-<U0110> <d>;<OBL>;<CAP>;IGNORE
+<a-diaeresis>
+<o-diaeresis>
+
+% # D and U+0335 COMBINING SHORT STROKE OVERLAY
+% &D\u0335<<đ<<<Đ # root order: d\u0335=đ
+<d-combining-short-stroke-overlay> <S0064>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<D-combining-short-stroke-overlay> <S0064>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0111> <S0064>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % đ
+<U0110> <S0064>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Đ
+
+% # G and U+0335
+% &G\u0335<<ǥ<<<Ǥ
+<g-combining-short-stroke-overlay> <S0067>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<G-combining-short-stroke-overlay> <S0067>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U01E5> <S0067>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ǥ
+<U01E4> <S0067>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ǥ
+
+% # N and U+0335
+% &N\u0335<<ŋ<<<Ŋ
+<n-combining-short-stroke-overlay> <S014B>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<N-combining-short-stroke-overlay> <S014B>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U014B> <S014B>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER ENG
+<U014A> <S014B>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER ENG
+
+% # T and U+0335
+% &T\u0335<<ŧ<<<Ŧ
+<t-combining-short-stroke-overlay> <S0167>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<T-combining-short-stroke-overlay> <S0167>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0167> <S0167>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER T WITH STROKE
+<U0166> <S0167>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER T WITH STROKE
+
+% &Y<<ü<<<Ü
+<U00FC> <S0079>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <S0079>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ü
+
+% # Z and U+0335
+% &Z\u0335<<ʒ<<<Ʒ
+<z-combining-short-stroke-overlay> <S0292>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<Z-combining-short-stroke-overlay> <S0292>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0292> <S0292>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER EZH
+<U01B7> <S0292>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER EZH
+
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+<U00E5> <a-ring>;"<BASE><BASE>";"<MIN><MIN>";<U00E5> % LATIN SMALL LETTER A WITH RING ABOVE
+<U00C5> <a-ring>;"<BASE><BASE>";"<CAP><MIN>";<U00C5> % LATIN CAPITAL LETTER A WITH RING ABOVE
+<U00E4> <a-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";<U00E4> % LATIN SMALL LETTER A WITH DIAERESIS
+<U00C4> <a-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";<U00C4> % LATIN CAPITAL LETTER A WITH DIAERESIS
+<U00E6> "<a-diaeresis>";"<BASE><VRNT1><BASE>";"<COMPAT><COMPAT><COMPAT>";<U00E6> % LATIN SMALL LETTER AE
+<U00C6> "<a-diaeresis>";"<BASE><VRNT1><BASE>";"<COMPATCAP><COMPAT><COMPATCAP>";<U00C6> % LATIN CAPITAL LETTER AE
+<U00F6> <o-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";<U00F6> % LATIN SMALL LETTER O WITH DIAERESIS
+<U00D6> <o-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";<U00D6> % LATIN CAPITAL LETTER O WITH DIAERESIS
+<U00F8> <o-diaeresis>;"<BASE><OBLIK>";"<MIN><MIN>";<U00F8> % LATIN SMALL LETTER O WITH STROKE
+<U00D8> <o-diaeresis>;"<BASE><OBLIK>";"<CAP><MIN>";<U00D8> % LATIN CAPITAL LETTER O WITH STROKE
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/fil_PH b/localedata/locales/fil_PH
index 1ce49c8aa4..34f522a3a1 100644
--- a/localedata/locales/fil_PH
+++ b/localedata/locales/fil_PH
@@ -49,37 +49,42 @@ copy "tl_PH"
END LC_CTYPE
LC_COLLATE
-copy "iso14651_t1"
+% CLDR collation rules for Filipino:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/fil.xml)
+%
+% <collation type="standard" references="http://std.dkuug.dk/jtc1/sc2/wg2/docs/N2300.htm (N2165)">
+% <cr><![CDATA[
+% &N<ñ<<<Ñ<ng<<<Ng<<<NG
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/fil.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N Ñ {Ng} O P Q R S T U V W X Y Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
-% a b c d e f g h i j k l m n n~ ng o p q r s t u v w x y z
+copy "iso14651_t1"
-collating-symbol <n-g-ph>
-collating-element <N-G> from "<U004E><U0047>"
-collating-element <n-g> from "<U006E><U0067>"
-collating-element <N-g> from "<U004E><U0067>"
-collating-element <n-G> from "<U006E><U0047>"
collating-symbol <ntilde>
+collating-symbol <ng-digraph>
+collating-element <ng> from "ng"
+collating-element <nG> from "nG"
+collating-element <Ng> from "Ng"
+collating-element <NG> from "NG"
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <n>
+reorder-after <AFTER-N>
<ntilde>
-<n-g-ph>
-
-reorder-after <U006E>
-<U00F1> <ntilde>;<TIL>;<MIN>;IGNORE
-<n-g> <n-g-ph>;<PCT>;<MIN>;IGNORE
-<n-G> <n-g-ph>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004E>
-<U00D1> <ntilde>;<TIL>;<CAP>;IGNORE
-<N-G> <n-g-ph>;<PCT>;<CAP>;IGNORE
-<N-g> <n-g-ph>;<PCT>;<CAP-MIN>;IGNORE
+<ng-digraph>
+
+<U00F1> <ntilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <ntilde>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ñ
+<ng> <ng-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nG> <ng-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<NG> <ng-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<Ng> <ng-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
reorder-end
diff --git a/localedata/locales/fur_IT b/localedata/locales/fur_IT
index 8c422331e9..5b06a1ecfa 100644
--- a/localedata/locales/fur_IT
+++ b/localedata/locales/fur_IT
@@ -47,17 +47,18 @@ copy "it_IT"
END LC_CTYPE
LC_COLLATE
+% There is no collation information for Furlan in CLDR.
+%
+% We implement only this rule here: &C<ç<<<Ç
copy "iso14651_t1"
-collating-symbol <c,>
+collating-symbol <c-cedilla>
-reorder-after <c>
-<c,>
+reorder-after <AFTER-C>
+<c-cedilla>
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
+<U00E7> <c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <c-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ç
reorder-end
diff --git a/localedata/locales/gez_ER@abegede b/localedata/locales/gez_ER@abegede
index 438c580c05..a555f451e6 100644
--- a/localedata/locales/gez_ER@abegede
+++ b/localedata/locales/gez_ER@abegede
@@ -58,51 +58,374 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_COLLATE
-%
-% Import Halehame and Resequence:
-%
copy "ti_ER"
-%
-reorder-after <th>
-<ALEF>
-<BET>
-<VE-BET>
-<GEMEL>
-<NGE-GEMEL>
-<DINT>
-<DHI-DINT>
-<JI-DINT>
-<HOY>
-<WEWE>
-<ZEY>
-<ZHE-ZEY>
-<HAWT>
-<TEYT>
-<CHE-TEYT>
-<YEMEN>
-<KAF>
-<KHA-KAF>
-<LAWI>
-<MAY>
-<NEHAS>
-<NYE-NEHAS>
-<SEWT>
-<AYIN>
-<AF>
-<SEDEY>
-<QAF>
-<QHA-QAF>
-<RIS>
-<SAT>
-<SHA-SAT>
-<TAW>
-<CHA-TAW>
-<HARM>
-<SEPA>
-<PEYT>
-<PSA>
+reorder-after <BEFORE-LATIN>
+<S12A0> % ETHIOPIC SYLLABLE GLOTTAL A old glibc collation-symbol: <ALEF>
+<S12A1> % ETHIOPIC SYLLABLE GLOTTAL U old glibc collation-symbol: <ALEF>
+<S12A2> % ETHIOPIC SYLLABLE GLOTTAL I old glibc collation-symbol: <ALEF>
+<S12A3> % ETHIOPIC SYLLABLE GLOTTAL AA old glibc collation-symbol: <ALEF>
+<S12A4> % ETHIOPIC SYLLABLE GLOTTAL EE old glibc collation-symbol: <ALEF>
+<S12A5> % ETHIOPIC SYLLABLE GLOTTAL E old glibc collation-symbol: <ALEF>
+<S12A6> % ETHIOPIC SYLLABLE GLOTTAL O old glibc collation-symbol: <ALEF>
+<S12A7> % ETHIOPIC SYLLABLE GLOTTAL WA old glibc collation-symbol: <ALEF>
+<S1260> % ETHIOPIC SYLLABLE BA old glibc collation-symbol: <BET>
+<S1261> % ETHIOPIC SYLLABLE BU old glibc collation-symbol: <BET>
+<S1262> % ETHIOPIC SYLLABLE BI old glibc collation-symbol: <BET>
+<S1263> % ETHIOPIC SYLLABLE BAA old glibc collation-symbol: <BET>
+<S1264> % ETHIOPIC SYLLABLE BEE old glibc collation-symbol: <BET>
+<S1265> % ETHIOPIC SYLLABLE BE old glibc collation-symbol: <BET>
+<S1266> % ETHIOPIC SYLLABLE BO old glibc collation-symbol: <BET>
+<S1267> % ETHIOPIC SYLLABLE BWA old glibc collation-symbol: <BET>
+<S1384> % ETHIOPIC SYLLABLE SEBATBEIT BWA old glibc collation-symbol: <BET>
+<S1385> % ETHIOPIC SYLLABLE BWI old glibc collation-symbol: <BET>
+<S1386> % ETHIOPIC SYLLABLE BWEE old glibc collation-symbol: <BET>
+<S1387> % ETHIOPIC SYLLABLE BWE old glibc collation-symbol: <BET>
+<S2D85> % ETHIOPIC SYLLABLE BOA old glibc collation-symbol: <BET>
+<S1268> % ETHIOPIC SYLLABLE VA old glibc collation-symbol: <VE-BET>
+<S1269> % ETHIOPIC SYLLABLE VU old glibc collation-symbol: <VE-BET>
+<S126A> % ETHIOPIC SYLLABLE VI old glibc collation-symbol: <VE-BET>
+<S126B> % ETHIOPIC SYLLABLE VAA old glibc collation-symbol: <VE-BET>
+<S126C> % ETHIOPIC SYLLABLE VEE old glibc collation-symbol: <VE-BET>
+<S126D> % ETHIOPIC SYLLABLE VE old glibc collation-symbol: <VE-BET>
+<S126E> % ETHIOPIC SYLLABLE VO old glibc collation-symbol: <VE-BET>
+<S126F> % ETHIOPIC SYLLABLE VWA old glibc collation-symbol: <VE-BET>
+<S1308> % ETHIOPIC SYLLABLE GA old glibc collation-symbol: <GEMEL>
+<S1309> % ETHIOPIC SYLLABLE GU old glibc collation-symbol: <GEMEL>
+<S130A> % ETHIOPIC SYLLABLE GI old glibc collation-symbol: <GEMEL>
+<S130B> % ETHIOPIC SYLLABLE GAA old glibc collation-symbol: <GEMEL>
+<S130C> % ETHIOPIC SYLLABLE GEE old glibc collation-symbol: <GEMEL>
+<S130D> % ETHIOPIC SYLLABLE GE old glibc collation-symbol: <GEMEL>
+<S130E> % ETHIOPIC SYLLABLE GO old glibc collation-symbol: <GEMEL>
+<S130F> % ETHIOPIC SYLLABLE GOA old glibc collation-symbol: <GEMEL>
+<S1310> % ETHIOPIC SYLLABLE GWA old glibc collation-symbol: <GEMEL>
+<S1312> % ETHIOPIC SYLLABLE GWI old glibc collation-symbol: <GEMEL>
+<S1313> % ETHIOPIC SYLLABLE GWAA old glibc collation-symbol: <GEMEL>
+<S1314> % ETHIOPIC SYLLABLE GWEE old glibc collation-symbol: <GEMEL>
+<S1315> % ETHIOPIC SYLLABLE GWE old glibc collation-symbol: <GEMEL>
+<S1318> % ETHIOPIC SYLLABLE GGA old glibc collation-symbol: <NGE-GEMEL>
+<S1319> % ETHIOPIC SYLLABLE GGU old glibc collation-symbol: <NGE-GEMEL>
+<S131A> % ETHIOPIC SYLLABLE GGI old glibc collation-symbol: <NGE-GEMEL>
+<S131B> % ETHIOPIC SYLLABLE GGAA old glibc collation-symbol: <NGE-GEMEL>
+<S131C> % ETHIOPIC SYLLABLE GGEE old glibc collation-symbol: <NGE-GEMEL>
+<S131D> % ETHIOPIC SYLLABLE GGE old glibc collation-symbol: <NGE-GEMEL>
+<S131E> % ETHIOPIC SYLLABLE GGO old glibc collation-symbol: <NGE-GEMEL>
+<S131F> % ETHIOPIC SYLLABLE GGWAA old glibc collation-symbol: <NGE-GEMEL>
+<S2D93> % ETHIOPIC SYLLABLE GGWA old glibc collation-symbol: <NGE-GEMEL>
+<S2D94> % ETHIOPIC SYLLABLE GGWI old glibc collation-symbol: <NGE-GEMEL>
+<S2D95> % ETHIOPIC SYLLABLE GGWEE old glibc collation-symbol: <NGE-GEMEL>
+<S2D96> % ETHIOPIC SYLLABLE GGWE old glibc collation-symbol: <NGE-GEMEL>
+<S12F0> % ETHIOPIC SYLLABLE DA old glibc collation-symbol: <DINT>
+<S12F1> % ETHIOPIC SYLLABLE DU old glibc collation-symbol: <DINT>
+<S12F2> % ETHIOPIC SYLLABLE DI old glibc collation-symbol: <DINT>
+<S12F3> % ETHIOPIC SYLLABLE DAA old glibc collation-symbol: <DINT>
+<S12F4> % ETHIOPIC SYLLABLE DEE old glibc collation-symbol: <DINT>
+<S12F5> % ETHIOPIC SYLLABLE DE old glibc collation-symbol: <DINT>
+<S12F6> % ETHIOPIC SYLLABLE DO old glibc collation-symbol: <DINT>
+<S12F7> % ETHIOPIC SYLLABLE DWA old glibc collation-symbol: <DINT>
+<S2D8C> % ETHIOPIC SYLLABLE DOA old glibc collation-symbol: <DINT>
+<SAB09> % ETHIOPIC SYLLABLE DDHU old glibc collation-symbol: <DHI-DINT>
+<SAB0A> % ETHIOPIC SYLLABLE DDHI old glibc collation-symbol: <DHI-DINT>
+<SAB0B> % ETHIOPIC SYLLABLE DDHAA old glibc collation-symbol: <DHI-DINT>
+<SAB0C> % ETHIOPIC SYLLABLE DDHEE old glibc collation-symbol: <DHI-DINT>
+<SAB0D> % ETHIOPIC SYLLABLE DDHE old glibc collation-symbol: <DHI-DINT>
+<SAB0E> % ETHIOPIC SYLLABLE DDHO old glibc collation-symbol: <DHI-DINT>
+<S12F8> % ETHIOPIC SYLLABLE DDA old glibc collation-symbol: <DHI-DINT>
+<S12F9> % ETHIOPIC SYLLABLE DDU old glibc collation-symbol: <DHI-DINT>
+<S12FA> % ETHIOPIC SYLLABLE DDI old glibc collation-symbol: <DHI-DINT>
+<S12FB> % ETHIOPIC SYLLABLE DDAA old glibc collation-symbol: <DHI-DINT>
+<S12FC> % ETHIOPIC SYLLABLE DDEE old glibc collation-symbol: <DHI-DINT>
+<S12FD> % ETHIOPIC SYLLABLE DDE old glibc collation-symbol: <DHI-DINT>
+<S12FE> % ETHIOPIC SYLLABLE DDO old glibc collation-symbol: <DHI-DINT>
+<S12FF> % ETHIOPIC SYLLABLE DDWA old glibc collation-symbol: <DHI-DINT>
+<S1300> % ETHIOPIC SYLLABLE JA old glibc collation-symbol: <JI-DINT>
+<S1301> % ETHIOPIC SYLLABLE JU old glibc collation-symbol: <JI-DINT>
+<S1302> % ETHIOPIC SYLLABLE JI old glibc collation-symbol: <JI-DINT>
+<S1303> % ETHIOPIC SYLLABLE JAA old glibc collation-symbol: <JI-DINT>
+<S1304> % ETHIOPIC SYLLABLE JEE old glibc collation-symbol: <JI-DINT>
+<S1305> % ETHIOPIC SYLLABLE JE old glibc collation-symbol: <JI-DINT>
+<S1306> % ETHIOPIC SYLLABLE JO old glibc collation-symbol: <JI-DINT>
+<S1307> % ETHIOPIC SYLLABLE JWA old glibc collation-symbol: <JI-DINT>
+<S2D8E> % ETHIOPIC SYLLABLE JOA old glibc collation-symbol: <JI-DINT>
+<S1200> % ETHIOPIC SYLLABLE HA old glibc collation-symbol: <HOY>
+<S1201> % ETHIOPIC SYLLABLE HU old glibc collation-symbol: <HOY>
+<S1202> % ETHIOPIC SYLLABLE HI old glibc collation-symbol: <HOY>
+<S1203> % ETHIOPIC SYLLABLE HAA old glibc collation-symbol: <HOY>
+<S1204> % ETHIOPIC SYLLABLE HEE old glibc collation-symbol: <HOY>
+<S1205> % ETHIOPIC SYLLABLE HE old glibc collation-symbol: <HOY>
+<S1206> % ETHIOPIC SYLLABLE HO old glibc collation-symbol: <HOY>
+<S1207> % ETHIOPIC SYLLABLE HOA old glibc collation-symbol: <HOY>
+<S12C8> % ETHIOPIC SYLLABLE WA old glibc collation-symbol: <WEWE>
+<S12C9> % ETHIOPIC SYLLABLE WU old glibc collation-symbol: <WEWE>
+<S12CA> % ETHIOPIC SYLLABLE WI old glibc collation-symbol: <WEWE>
+<S12CB> % ETHIOPIC SYLLABLE WAA old glibc collation-symbol: <WEWE>
+<S12CC> % ETHIOPIC SYLLABLE WEE old glibc collation-symbol: <WEWE>
+<S12CD> % ETHIOPIC SYLLABLE WE old glibc collation-symbol: <WEWE>
+<S12CE> % ETHIOPIC SYLLABLE WO old glibc collation-symbol: <WEWE>
+<S12CF> % ETHIOPIC SYLLABLE WOA old glibc collation-symbol: <WEWE>
+<S12D8> % ETHIOPIC SYLLABLE ZA old glibc collation-symbol: <ZEY>
+<S12D9> % ETHIOPIC SYLLABLE ZU old glibc collation-symbol: <ZEY>
+<S12DA> % ETHIOPIC SYLLABLE ZI old glibc collation-symbol: <ZEY>
+<S12DB> % ETHIOPIC SYLLABLE ZAA old glibc collation-symbol: <ZEY>
+<S12DC> % ETHIOPIC SYLLABLE ZEE old glibc collation-symbol: <ZEY>
+<S12DD> % ETHIOPIC SYLLABLE ZE old glibc collation-symbol: <ZEY>
+<S12DE> % ETHIOPIC SYLLABLE ZO old glibc collation-symbol: <ZEY>
+<S12DF> % ETHIOPIC SYLLABLE ZWA old glibc collation-symbol: <ZEY>
+<S2D8B> % ETHIOPIC SYLLABLE ZOA old glibc collation-symbol: <ZEY>
+<S12E0> % ETHIOPIC SYLLABLE ZHA old glibc collation-symbol: <ZHE-ZEY>
+<S12E1> % ETHIOPIC SYLLABLE ZHU old glibc collation-symbol: <ZHE-ZEY>
+<S12E2> % ETHIOPIC SYLLABLE ZHI old glibc collation-symbol: <ZHE-ZEY>
+<S12E3> % ETHIOPIC SYLLABLE ZHAA old glibc collation-symbol: <ZHE-ZEY>
+<S12E4> % ETHIOPIC SYLLABLE ZHEE old glibc collation-symbol: <ZHE-ZEY>
+<S12E5> % ETHIOPIC SYLLABLE ZHE old glibc collation-symbol: <ZHE-ZEY>
+<S12E6> % ETHIOPIC SYLLABLE ZHO old glibc collation-symbol: <ZHE-ZEY>
+<S12E7> % ETHIOPIC SYLLABLE ZHWA old glibc collation-symbol: <ZHE-ZEY>
+<S1210> % ETHIOPIC SYLLABLE HHA old glibc collation-symbol: <HAWT>
+<S1211> % ETHIOPIC SYLLABLE HHU old glibc collation-symbol: <HAWT>
+<S1212> % ETHIOPIC SYLLABLE HHI old glibc collation-symbol: <HAWT>
+<S1213> % ETHIOPIC SYLLABLE HHAA old glibc collation-symbol: <HAWT>
+<S1214> % ETHIOPIC SYLLABLE HHEE old glibc collation-symbol: <HAWT>
+<S1215> % ETHIOPIC SYLLABLE HHE old glibc collation-symbol: <HAWT>
+<S1216> % ETHIOPIC SYLLABLE HHO old glibc collation-symbol: <HAWT>
+<S1217> % ETHIOPIC SYLLABLE HHWA old glibc collation-symbol: <HAWT>
+<S1320> % ETHIOPIC SYLLABLE THA old glibc collation-symbol: <TEYT>
+<S1321> % ETHIOPIC SYLLABLE THU old glibc collation-symbol: <TEYT>
+<S1322> % ETHIOPIC SYLLABLE THI old glibc collation-symbol: <TEYT>
+<S1323> % ETHIOPIC SYLLABLE THAA old glibc collation-symbol: <TEYT>
+<S1324> % ETHIOPIC SYLLABLE THEE old glibc collation-symbol: <TEYT>
+<S1325> % ETHIOPIC SYLLABLE THE old glibc collation-symbol: <TEYT>
+<S1326> % ETHIOPIC SYLLABLE THO old glibc collation-symbol: <TEYT>
+<S1327> % ETHIOPIC SYLLABLE THWA old glibc collation-symbol: <TEYT>
+<S2D8F> % ETHIOPIC SYLLABLE THOA old glibc collation-symbol: <TEYT>
+<S1328> % ETHIOPIC SYLLABLE CHA old glibc collation-symbol: <CHE-TEYT>
+<S1329> % ETHIOPIC SYLLABLE CHU old glibc collation-symbol: <CHE-TEYT>
+<S132A> % ETHIOPIC SYLLABLE CHI old glibc collation-symbol: <CHE-TEYT>
+<S132B> % ETHIOPIC SYLLABLE CHAA old glibc collation-symbol: <CHE-TEYT>
+<S132C> % ETHIOPIC SYLLABLE CHEE old glibc collation-symbol: <CHE-TEYT>
+<S132D> % ETHIOPIC SYLLABLE CHE old glibc collation-symbol: <CHE-TEYT>
+<S132E> % ETHIOPIC SYLLABLE CHO old glibc collation-symbol: <CHE-TEYT>
+<S132F> % ETHIOPIC SYLLABLE CHWA old glibc collation-symbol: <CHE-TEYT>
+<S2D90> % ETHIOPIC SYLLABLE CHOA old glibc collation-symbol: <CHE-TEYT>
+<SAB20> % ETHIOPIC SYLLABLE CCHHA old glibc collation-symbol: <CHE-TEYT>
+<SAB21> % ETHIOPIC SYLLABLE CCHHU old glibc collation-symbol: <CHE-TEYT>
+<SAB22> % ETHIOPIC SYLLABLE CCHHI old glibc collation-symbol: <CHE-TEYT>
+<SAB23> % ETHIOPIC SYLLABLE CCHHAA old glibc collation-symbol: <CHE-TEYT>
+<SAB24> % ETHIOPIC SYLLABLE CCHHEE old glibc collation-symbol: <CHE-TEYT>
+<SAB25> % ETHIOPIC SYLLABLE CCHHE old glibc collation-symbol: <CHE-TEYT>
+<SAB26> % ETHIOPIC SYLLABLE CCHHO old glibc collation-symbol: <CHE-TEYT>
+<S12E8> % ETHIOPIC SYLLABLE YA old glibc collation-symbol: <YEMEN>
+<S12E9> % ETHIOPIC SYLLABLE YU old glibc collation-symbol: <YEMEN>
+<S12EA> % ETHIOPIC SYLLABLE YI old glibc collation-symbol: <YEMEN>
+<S12EB> % ETHIOPIC SYLLABLE YAA old glibc collation-symbol: <YEMEN>
+<S12EC> % ETHIOPIC SYLLABLE YEE old glibc collation-symbol: <YEMEN>
+<S12ED> % ETHIOPIC SYLLABLE YE old glibc collation-symbol: <YEMEN>
+<S12EE> % ETHIOPIC SYLLABLE YO old glibc collation-symbol: <YEMEN>
+<S12EF> % ETHIOPIC SYLLABLE YOA old glibc collation-symbol: <YEMEN>
+<S12A8> % ETHIOPIC SYLLABLE KA old glibc collation-symbol: <KAF>
+<S12A9> % ETHIOPIC SYLLABLE KU old glibc collation-symbol: <KAF>
+<S12AA> % ETHIOPIC SYLLABLE KI old glibc collation-symbol: <KAF>
+<S12AB> % ETHIOPIC SYLLABLE KAA old glibc collation-symbol: <KAF>
+<S12AC> % ETHIOPIC SYLLABLE KEE old glibc collation-symbol: <KAF>
+<S12AD> % ETHIOPIC SYLLABLE KE old glibc collation-symbol: <KAF>
+<S12AE> % ETHIOPIC SYLLABLE KO old glibc collation-symbol: <KAF>
+<S12AF> % ETHIOPIC SYLLABLE KOA old glibc collation-symbol: <KAF>
+<S12B0> % ETHIOPIC SYLLABLE KWA old glibc collation-symbol: <KAF>
+<S12B2> % ETHIOPIC SYLLABLE KWI old glibc collation-symbol: <KAF>
+<S12B3> % ETHIOPIC SYLLABLE KWAA old glibc collation-symbol: <KAF>
+<S12B4> % ETHIOPIC SYLLABLE KWEE old glibc collation-symbol: <KAF>
+<S12B5> % ETHIOPIC SYLLABLE KWE old glibc collation-symbol: <KAF>
+<S12B8> % ETHIOPIC SYLLABLE KXA old glibc collation-symbol: <KHA-KAF>
+<S12B9> % ETHIOPIC SYLLABLE KXU old glibc collation-symbol: <KHA-KAF>
+<S12BA> % ETHIOPIC SYLLABLE KXI old glibc collation-symbol: <KHA-KAF>
+<S12BB> % ETHIOPIC SYLLABLE KXAA old glibc collation-symbol: <KHA-KAF>
+<S12BC> % ETHIOPIC SYLLABLE KXEE old glibc collation-symbol: <KHA-KAF>
+<S12BD> % ETHIOPIC SYLLABLE KXE old glibc collation-symbol: <KHA-KAF>
+<S12BE> % ETHIOPIC SYLLABLE KXO old glibc collation-symbol: <KHA-KAF>
+<S12C0> % ETHIOPIC SYLLABLE KXWA old glibc collation-symbol: <KHA-KAF>
+<S12C2> % ETHIOPIC SYLLABLE KXWI old glibc collation-symbol: <KHA-KAF>
+<S12C3> % ETHIOPIC SYLLABLE KXWAA old glibc collation-symbol: <KHA-KAF>
+<S12C4> % ETHIOPIC SYLLABLE KXWEE old glibc collation-symbol: <KHA-KAF>
+<S12C5> % ETHIOPIC SYLLABLE KXWE old glibc collation-symbol: <KHA-KAF>
+<S1208> % ETHIOPIC SYLLABLE LA old glibc collation-symbol: <LAWI>
+<S1209> % ETHIOPIC SYLLABLE LU old glibc collation-symbol: <LAWI>
+<S120A> % ETHIOPIC SYLLABLE LI old glibc collation-symbol: <LAWI>
+<S120B> % ETHIOPIC SYLLABLE LAA old glibc collation-symbol: <LAWI>
+<S120C> % ETHIOPIC SYLLABLE LEE old glibc collation-symbol: <LAWI>
+<S120D> % ETHIOPIC SYLLABLE LE old glibc collation-symbol: <LAWI>
+<S120E> % ETHIOPIC SYLLABLE LO old glibc collation-symbol: <LAWI>
+<S120F> % ETHIOPIC SYLLABLE LWA old glibc collation-symbol: <LAWI>
+<S2D80> % ETHIOPIC SYLLABLE LOA old glibc collation-symbol: <LAWI>
+<S1218> % ETHIOPIC SYLLABLE MA old glibc collation-symbol: <MAY>
+<S1219> % ETHIOPIC SYLLABLE MU old glibc collation-symbol: <MAY>
+<S121A> % ETHIOPIC SYLLABLE MI old glibc collation-symbol: <MAY>
+<S121B> % ETHIOPIC SYLLABLE MAA old glibc collation-symbol: <MAY>
+<S121C> % ETHIOPIC SYLLABLE MEE old glibc collation-symbol: <MAY>
+<S121D> % ETHIOPIC SYLLABLE ME old glibc collation-symbol: <MAY>
+<S121E> % ETHIOPIC SYLLABLE MO old glibc collation-symbol: <MAY>
+<S121F> % ETHIOPIC SYLLABLE MWA old glibc collation-symbol: <MAY>
+<S1380> % ETHIOPIC SYLLABLE SEBATBEIT MWA old glibc collation-symbol: <MAY>
+<S1381> % ETHIOPIC SYLLABLE MWI old glibc collation-symbol: <MAY>
+<S1382> % ETHIOPIC SYLLABLE MWEE old glibc collation-symbol: <MAY>
+<S1383> % ETHIOPIC SYLLABLE MWE old glibc collation-symbol: <MAY>
+<S2D81> % ETHIOPIC SYLLABLE MOA old glibc collation-symbol: <MAY>
+<S1290> % ETHIOPIC SYLLABLE NA old glibc collation-symbol: <NEHAS>
+<S1291> % ETHIOPIC SYLLABLE NU old glibc collation-symbol: <NEHAS>
+<S1292> % ETHIOPIC SYLLABLE NI old glibc collation-symbol: <NEHAS>
+<S1293> % ETHIOPIC SYLLABLE NAA old glibc collation-symbol: <NEHAS>
+<S1294> % ETHIOPIC SYLLABLE NEE old glibc collation-symbol: <NEHAS>
+<S1295> % ETHIOPIC SYLLABLE NE old glibc collation-symbol: <NEHAS>
+<S1296> % ETHIOPIC SYLLABLE NO old glibc collation-symbol: <NEHAS>
+<S1297> % ETHIOPIC SYLLABLE NWA old glibc collation-symbol: <NEHAS>
+<S2D88> % ETHIOPIC SYLLABLE NOA old glibc collation-symbol: <NEHAS>
+<S1298> % ETHIOPIC SYLLABLE NYA old glibc collation-symbol: <NYE-NEHAS>
+<S1299> % ETHIOPIC SYLLABLE NYU old glibc collation-symbol: <NYE-NEHAS>
+<S129A> % ETHIOPIC SYLLABLE NYI old glibc collation-symbol: <NYE-NEHAS>
+<S129B> % ETHIOPIC SYLLABLE NYAA old glibc collation-symbol: <NYE-NEHAS>
+<S129C> % ETHIOPIC SYLLABLE NYEE old glibc collation-symbol: <NYE-NEHAS>
+<S129D> % ETHIOPIC SYLLABLE NYE old glibc collation-symbol: <NYE-NEHAS>
+<S129E> % ETHIOPIC SYLLABLE NYO old glibc collation-symbol: <NYE-NEHAS>
+<S129F> % ETHIOPIC SYLLABLE NYWA old glibc collation-symbol: <NYE-NEHAS>
+<S2D89> % ETHIOPIC SYLLABLE NYOA old glibc collation-symbol: <NYE-NEHAS>
+<S1220> % ETHIOPIC SYLLABLE SZA old glibc collation-symbol: <SEWT>
+<S1221> % ETHIOPIC SYLLABLE SZU old glibc collation-symbol: <SEWT>
+<S1222> % ETHIOPIC SYLLABLE SZI old glibc collation-symbol: <SEWT>
+<S1223> % ETHIOPIC SYLLABLE SZAA old glibc collation-symbol: <SEWT>
+<S1224> % ETHIOPIC SYLLABLE SZEE old glibc collation-symbol: <SEWT>
+<S1225> % ETHIOPIC SYLLABLE SZE old glibc collation-symbol: <SEWT>
+<S1226> % ETHIOPIC SYLLABLE SZO old glibc collation-symbol: <SEWT>
+<S1227> % ETHIOPIC SYLLABLE SZWA old glibc collation-symbol: <SEWT>
+<S12D0> % ETHIOPIC SYLLABLE PHARYNGEAL A old glibc collation-symbol: <AYIN>
+<S12D1> % ETHIOPIC SYLLABLE PHARYNGEAL U old glibc collation-symbol: <AYIN>
+<S12D2> % ETHIOPIC SYLLABLE PHARYNGEAL I old glibc collation-symbol: <AYIN>
+<S12D3> % ETHIOPIC SYLLABLE PHARYNGEAL AA old glibc collation-symbol: <AYIN>
+<S12D4> % ETHIOPIC SYLLABLE PHARYNGEAL EE old glibc collation-symbol: <AYIN>
+<S12D5> % ETHIOPIC SYLLABLE PHARYNGEAL E old glibc collation-symbol: <AYIN>
+<S12D6> % ETHIOPIC SYLLABLE PHARYNGEAL O old glibc collation-symbol: <AYIN>
+<S1348> % ETHIOPIC SYLLABLE FA old glibc collation-symbol: <AF>
+<S1349> % ETHIOPIC SYLLABLE FU old glibc collation-symbol: <AF>
+<S134A> % ETHIOPIC SYLLABLE FI old glibc collation-symbol: <AF>
+<S134B> % ETHIOPIC SYLLABLE FAA old glibc collation-symbol: <AF>
+<S134C> % ETHIOPIC SYLLABLE FEE old glibc collation-symbol: <AF>
+<S134D> % ETHIOPIC SYLLABLE FE old glibc collation-symbol: <AF>
+<S134E> % ETHIOPIC SYLLABLE FO old glibc collation-symbol: <AF>
+<S134F> % ETHIOPIC SYLLABLE FWA old glibc collation-symbol: <AF>
+<S1388> % ETHIOPIC SYLLABLE SEBATBEIT FWA old glibc collation-symbol: <AF>
+<S1389> % ETHIOPIC SYLLABLE FWI old glibc collation-symbol: <AF>
+<S138A> % ETHIOPIC SYLLABLE FWEE old glibc collation-symbol: <AF>
+<S138B> % ETHIOPIC SYLLABLE FWE old glibc collation-symbol: <AF>
+<S1338> % ETHIOPIC SYLLABLE TSA old glibc collation-symbol: <SEDEY>
+<S1339> % ETHIOPIC SYLLABLE TSU old glibc collation-symbol: <SEDEY>
+<S133A> % ETHIOPIC SYLLABLE TSI old glibc collation-symbol: <SEDEY>
+<S133B> % ETHIOPIC SYLLABLE TSAA old glibc collation-symbol: <SEDEY>
+<S133C> % ETHIOPIC SYLLABLE TSEE old glibc collation-symbol: <SEDEY>
+<S133D> % ETHIOPIC SYLLABLE TSE old glibc collation-symbol: <SEDEY>
+<S133E> % ETHIOPIC SYLLABLE TSO old glibc collation-symbol: <SEDEY>
+<S133F> % ETHIOPIC SYLLABLE TSWA old glibc collation-symbol: <SEDEY>
+<S1240> % ETHIOPIC SYLLABLE QA old glibc collation-symbol: <QAF>
+<S1241> % ETHIOPIC SYLLABLE QU old glibc collation-symbol: <QAF>
+<S1242> % ETHIOPIC SYLLABLE QI old glibc collation-symbol: <QAF>
+<S1243> % ETHIOPIC SYLLABLE QAA old glibc collation-symbol: <QAF>
+<S1244> % ETHIOPIC SYLLABLE QEE old glibc collation-symbol: <QAF>
+<S1245> % ETHIOPIC SYLLABLE QE old glibc collation-symbol: <QAF>
+<S1246> % ETHIOPIC SYLLABLE QO old glibc collation-symbol: <QAF>
+<S1247> % ETHIOPIC SYLLABLE QOA old glibc collation-symbol: <QAF>
+<S1248> % ETHIOPIC SYLLABLE QWA old glibc collation-symbol: <QAF>
+<S124A> % ETHIOPIC SYLLABLE QWI old glibc collation-symbol: <QAF>
+<S124B> % ETHIOPIC SYLLABLE QWAA old glibc collation-symbol: <QAF>
+<S124C> % ETHIOPIC SYLLABLE QWEE old glibc collation-symbol: <QAF>
+<S124D> % ETHIOPIC SYLLABLE QWE old glibc collation-symbol: <QAF>
+<S1250> % ETHIOPIC SYLLABLE QHA old glibc collation-symbol: <QHA-QAF>
+<S1251> % ETHIOPIC SYLLABLE QHU old glibc collation-symbol: <QHA-QAF>
+<S1252> % ETHIOPIC SYLLABLE QHI old glibc collation-symbol: <QHA-QAF>
+<S1253> % ETHIOPIC SYLLABLE QHAA old glibc collation-symbol: <QHA-QAF>
+<S1254> % ETHIOPIC SYLLABLE QHEE old glibc collation-symbol: <QHA-QAF>
+<S1255> % ETHIOPIC SYLLABLE QHE old glibc collation-symbol: <QHA-QAF>
+<S1256> % ETHIOPIC SYLLABLE QHO old glibc collation-symbol: <QHA-QAF>
+<S1258> % ETHIOPIC SYLLABLE QHWA old glibc collation-symbol: <QHA-QAF>
+<S125A> % ETHIOPIC SYLLABLE QHWI old glibc collation-symbol: <QHA-QAF>
+<S125B> % ETHIOPIC SYLLABLE QHWAA old glibc collation-symbol: <QHA-QAF>
+<S125C> % ETHIOPIC SYLLABLE QHWEE old glibc collation-symbol: <QHA-QAF>
+<S125D> % ETHIOPIC SYLLABLE QHWE old glibc collation-symbol: <QHA-QAF>
+<S1358> % ETHIOPIC SYLLABLE RYA old glibc collation-symbol: <RIS>
+<S1230> % ETHIOPIC SYLLABLE SA old glibc collation-symbol: <SAT>
+<S1231> % ETHIOPIC SYLLABLE SU old glibc collation-symbol: <SAT>
+<S1232> % ETHIOPIC SYLLABLE SI old glibc collation-symbol: <SAT>
+<S1233> % ETHIOPIC SYLLABLE SAA old glibc collation-symbol: <SAT>
+<S1234> % ETHIOPIC SYLLABLE SEE old glibc collation-symbol: <SAT>
+<S1235> % ETHIOPIC SYLLABLE SE old glibc collation-symbol: <SAT>
+<S1236> % ETHIOPIC SYLLABLE SO old glibc collation-symbol: <SAT>
+<S1237> % ETHIOPIC SYLLABLE SWA old glibc collation-symbol: <SAT>
+<S2D83> % ETHIOPIC SYLLABLE SOA old glibc collation-symbol: <SAT>
+<S1238> % ETHIOPIC SYLLABLE SHA old glibc collation-symbol: <SHA-SAT>
+<S1239> % ETHIOPIC SYLLABLE SHU old glibc collation-symbol: <SHA-SAT>
+<S123A> % ETHIOPIC SYLLABLE SHI old glibc collation-symbol: <SHA-SAT>
+<S123B> % ETHIOPIC SYLLABLE SHAA old glibc collation-symbol: <SHA-SAT>
+<S123C> % ETHIOPIC SYLLABLE SHEE old glibc collation-symbol: <SHA-SAT>
+<S123D> % ETHIOPIC SYLLABLE SHE old glibc collation-symbol: <SHA-SAT>
+<S123E> % ETHIOPIC SYLLABLE SHO old glibc collation-symbol: <SHA-SAT>
+<S123F> % ETHIOPIC SYLLABLE SHWA old glibc collation-symbol: <SHA-SAT>
+<S2D84> % ETHIOPIC SYLLABLE SHOA old glibc collation-symbol: <SHA-SAT>
+<S1270> % ETHIOPIC SYLLABLE TA old glibc collation-symbol: <TAW>
+<S1271> % ETHIOPIC SYLLABLE TU old glibc collation-symbol: <TAW>
+<S1272> % ETHIOPIC SYLLABLE TI old glibc collation-symbol: <TAW>
+<S1273> % ETHIOPIC SYLLABLE TAA old glibc collation-symbol: <TAW>
+<S1274> % ETHIOPIC SYLLABLE TEE old glibc collation-symbol: <TAW>
+<S1275> % ETHIOPIC SYLLABLE TE old glibc collation-symbol: <TAW>
+<S1276> % ETHIOPIC SYLLABLE TO old glibc collation-symbol: <TAW>
+<S1277> % ETHIOPIC SYLLABLE TWA old glibc collation-symbol: <TAW>
+<S2D86> % ETHIOPIC SYLLABLE TOA old glibc collation-symbol: <TAW>
+<S1278> % ETHIOPIC SYLLABLE CA old glibc collation-symbol: <CHA-TAW>
+<S1279> % ETHIOPIC SYLLABLE CU old glibc collation-symbol: <CHA-TAW>
+<S127A> % ETHIOPIC SYLLABLE CI old glibc collation-symbol: <CHA-TAW>
+<S127B> % ETHIOPIC SYLLABLE CAA old glibc collation-symbol: <CHA-TAW>
+<S127C> % ETHIOPIC SYLLABLE CEE old glibc collation-symbol: <CHA-TAW>
+<S127D> % ETHIOPIC SYLLABLE CE old glibc collation-symbol: <CHA-TAW>
+<S127E> % ETHIOPIC SYLLABLE CO old glibc collation-symbol: <CHA-TAW>
+<S127F> % ETHIOPIC SYLLABLE CWA old glibc collation-symbol: <CHA-TAW>
+<S2D87> % ETHIOPIC SYLLABLE COA old glibc collation-symbol: <CHA-TAW>
+<S1280> % ETHIOPIC SYLLABLE XA old glibc collation-symbol: <HARM>
+<S1281> % ETHIOPIC SYLLABLE XU old glibc collation-symbol: <HARM>
+<S1282> % ETHIOPIC SYLLABLE XI old glibc collation-symbol: <HARM>
+<S1283> % ETHIOPIC SYLLABLE XAA old glibc collation-symbol: <HARM>
+<S1284> % ETHIOPIC SYLLABLE XEE old glibc collation-symbol: <HARM>
+<S1285> % ETHIOPIC SYLLABLE XE old glibc collation-symbol: <HARM>
+<S1286> % ETHIOPIC SYLLABLE XO old glibc collation-symbol: <HARM>
+<S1287> % ETHIOPIC SYLLABLE XOA old glibc collation-symbol: <HARM>
+<S1288> % ETHIOPIC SYLLABLE XWA old glibc collation-symbol: <HARM>
+<S128A> % ETHIOPIC SYLLABLE XWI old glibc collation-symbol: <HARM>
+<S128B> % ETHIOPIC SYLLABLE XWAA old glibc collation-symbol: <HARM>
+<S128C> % ETHIOPIC SYLLABLE XWEE old glibc collation-symbol: <HARM>
+<S128D> % ETHIOPIC SYLLABLE XWE old glibc collation-symbol: <HARM>
+<S1340> % ETHIOPIC SYLLABLE TZA old glibc collation-symbol: <SEPA>
+<S1341> % ETHIOPIC SYLLABLE TZU old glibc collation-symbol: <SEPA>
+<S1342> % ETHIOPIC SYLLABLE TZI old glibc collation-symbol: <SEPA>
+<S1343> % ETHIOPIC SYLLABLE TZAA old glibc collation-symbol: <SEPA>
+<S1344> % ETHIOPIC SYLLABLE TZEE old glibc collation-symbol: <SEPA>
+<S1345> % ETHIOPIC SYLLABLE TZE old glibc collation-symbol: <SEPA>
+<S1346> % ETHIOPIC SYLLABLE TZO old glibc collation-symbol: <SEPA>
+<S1347> % ETHIOPIC SYLLABLE TZOA old glibc collation-symbol: <SEPA>
+<S1330> % ETHIOPIC SYLLABLE PHA old glibc collation-symbol: <PEYT>
+<S1331> % ETHIOPIC SYLLABLE PHU old glibc collation-symbol: <PEYT>
+<S1332> % ETHIOPIC SYLLABLE PHI old glibc collation-symbol: <PEYT>
+<S1333> % ETHIOPIC SYLLABLE PHAA old glibc collation-symbol: <PEYT>
+<S1334> % ETHIOPIC SYLLABLE PHEE old glibc collation-symbol: <PEYT>
+<S1335> % ETHIOPIC SYLLABLE PHE old glibc collation-symbol: <PEYT>
+<S1336> % ETHIOPIC SYLLABLE PHO old glibc collation-symbol: <PEYT>
+<S1337> % ETHIOPIC SYLLABLE PHWA old glibc collation-symbol: <PEYT>
+<S2D91> % ETHIOPIC SYLLABLE PHOA old glibc collation-symbol: <PEYT>
+<S1350> % ETHIOPIC SYLLABLE PA old glibc collation-symbol: <PSA>
+<S1351> % ETHIOPIC SYLLABLE PU old glibc collation-symbol: <PSA>
+<S1352> % ETHIOPIC SYLLABLE PI old glibc collation-symbol: <PSA>
+<S1353> % ETHIOPIC SYLLABLE PAA old glibc collation-symbol: <PSA>
+<S1354> % ETHIOPIC SYLLABLE PEE old glibc collation-symbol: <PSA>
+<S1355> % ETHIOPIC SYLLABLE PE old glibc collation-symbol: <PSA>
+<S1356> % ETHIOPIC SYLLABLE PO old glibc collation-symbol: <PSA>
+<S1357> % ETHIOPIC SYLLABLE PWA old glibc collation-symbol: <PSA>
+<S138C> % ETHIOPIC SYLLABLE SEBATBEIT PWA old glibc collation-symbol: <PSA>
+<S138D> % ETHIOPIC SYLLABLE PWI old glibc collation-symbol: <PSA>
+<S138E> % ETHIOPIC SYLLABLE PWEE old glibc collation-symbol: <PSA>
+<S138F> % ETHIOPIC SYLLABLE PWE old glibc collation-symbol: <PSA>
+<S2D92> % ETHIOPIC SYLLABLE POA old glibc collation-symbol: <PSA>
reorder-end
-%
END LC_COLLATE
diff --git a/localedata/locales/ha_NG b/localedata/locales/ha_NG
index 0d8b3d5dd0..6950da96a4 100644
--- a/localedata/locales/ha_NG
+++ b/localedata/locales/ha_NG
@@ -59,96 +59,91 @@ LC_COLLATE
% order: a, b, b+, c, d, d+, e, f, g, h, i, j, k, k+, l, m, n, o, p
% q, r, r~, s, sh, t, ts, u, [v], w, [x], 'y, y, z
+% CLDR collation rules for Hausa:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ha.xml)
+%
+% <collation type="standard" references="Paul Newman: Hausa-English Dictionary ISBN 978-0-300-12246-6">
+% <cr><![CDATA[
+% &B<ɓ<<<Ɓ
+% &D<ɗ<<<Ɗ
+% &K<ƙ<<<Ƙ
+% &S<sh<<<Sh<<<SH
+% &T<ts<<<Ts<<<TS
+% &Y<ƴ<<<ʼy<<<''y<<<Ƴ<<<ʼY<<<''Y
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ha.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[A B Ɓ C D Ɗ E F G H I J K Ƙ L M N O P Q R S T U V W X Y {ʼY} Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+%
+% The original order as described above also had r-tilde (r̃) but
+% as CLDR doesn’t have it, I omit it.
+
copy "iso14651_t1"
-collating-symbol <s-h-ha>
-collating-element <S-H> from "<U0053><U0048>"
-collating-element <s-h> from "<U0073><U0068>"
-collating-element <S-h> from "<U0053><U0068>"
-collating-element <s-H> from "<U0073><U0048>"
-collating-symbol <t-s-ha>
-collating-element <T-S> from "<U0054><U0053>"
-collating-element <t-s> from "<U0074><U0073>"
-collating-element <T-s> from "<U0054><U0073>"
-collating-element <t-S> from "<U0074><U0053>"
+collating-symbol <b-hook>
+collating-symbol <d-hook>
+collating-symbol <k-hook>
+collating-symbol <sh-digraph>
+collating-symbol <ts-digraph>
collating-symbol <'-y-ha>
-collating-element <'1y> from "<U0027><U0079>"
-collating-element <'1Y> from "<U0027><U0059>"
-collating-element <'2y> from "<U2019><U0079>"
-collating-element <'2Y> from "<U2019><U0059>"
-collating-symbol <rtilde>
-collating-element <r?> from "<U0072><U0303>"
-collating-element <R?> from "<U0052><U0303>"
-collating-symbol <bcurl>
-collating-symbol <dcurl>
-collating-symbol <kcurl>
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <b>
-<bcurl>
-reorder-after <d>
-<dcurl>
-reorder-after <k>
-<kcurl>
-reorder-after <r>
-<rtilde>
-<s>
-<s-h-ha>
-<t>
-<t-s-ha>
-reorder-after <x>
+
+collating-element <sh> from "sh"
+collating-element <sH> from "sH"
+collating-element <Sh> from "Sh"
+collating-element <SH> from "SH"
+collating-element <ts> from "ts"
+collating-element <tS> from "tS"
+collating-element <Ts> from "Ts"
+collating-element <TS> from "TS"
+collating-element <modifier-letter-apostrophe-y> from "<U02BC>y"
+collating-element <modifier-letter-apostrophe-Y> from "<U02BC>Y"
+collating-element <right-single-quotation-mark-y> from "<U2019>y"
+collating-element <right-single-quotation-mark-Y> from "<U2019>Y"
+collating-element <double-apostrophe-y> from "''y"
+collating-element <double-apostrophe-Y> from "''Y"
+
+reorder-after <AFTER-B>
+<b-hook>
+reorder-after <AFTER-D>
+<d-hook>
+reorder-after <AFTER-K>
+<k-hook>
+reorder-after <AFTER-S>
+<sh-digraph>
+reorder-after <AFTER-T>
+<ts-digraph>
+reorder-after <AFTER-Y>
<'-y-ha>
-reorder-after <U0062>
-<U0253> <bcurl>;<BAS>;<MIN>;IGNORE
-reorder-after <U0042>
-<U0181> <bcurl>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0064>
-<U0257> <dcurl>;<BAS>;<MIN>;IGNORE
-reorder-after <U0044>
-<U018A> <dcurl>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006B>
-<U0199> <kcurl>;<BAS>;<MIN>;IGNORE
-reorder-after <U004B>
-<U0198> <kcurl>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0072>
-<r?> <rtilde>;<ACA>;<MIN>;IGNORE
-reorder-after <U0052>
-<R?> <rtilde>;<ACA>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<s-h> <s-h-ha>;<PCL>;<MIN>;IGNORE
-<s-H> <s-h-ha>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0053>
-<S-H> <s-h-ha>;<PCL>;<CAP>;IGNORE
-<S-h> <s-h-ha>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0074>
-<t-s> <t-s-ha>;<PCL>;<MIN>;IGNORE
-<t-S> <t-s-ha>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0054>
-<T-S> <t-s-ha>;<PCL>;<CAP>;IGNORE
-<T-s> <t-s-ha>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0078>
-<'1y> <'-y-ha>;<PCL>;<MIN>;IGNORE
-<'2y> <'-y-ha>;<PCL>;<MIN>;IGNORE
-<U01B4> <'-y-ha>;<PCL>;<MIN>;IGNORE
-reorder-after <U0058>
-<'1Y> <'-y-ha>;<PCL>;<CAP>;IGNORE
-<'2Y> <'-y-ha>;<PCL>;<CAP>;IGNORE
-<U01B3> <'-y-ha>;<PCL>;<CAP>;IGNORE
+<U0253> <b-hook>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ɓ
+<U0181> <b-hook>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ɓ
+<U0257> <d-hook>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ɗ
+<U018A> <d-hook>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ɗ
+<U0199> <k-hook>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ƙ
+<U0198> <k-hook>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ƙ
+<sh> <sh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sH> <sh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<SH> <sh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<Sh> <sh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<ts> <ts-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<tS> <ts-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<TS> <ts-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<Ts> <ts-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+
+<U01B4> <'-y-ha>;"<BASE><BASE>";"<MIN><VRNT1>";IGNORE % ƴ
+<modifier-letter-apostrophe-y> <'-y-ha>;"<BASE><BASE>";"<MIN><VRNT2>";IGNORE
+<right-single-quotation-mark-y> <'-y-ha>;"<BASE><BASE>";"<MIN><VRNT3>";IGNORE
+<double-apostrophe-y> <'-y-ha>;"<BASE><BASE>";"<MIN><VRNT4>";IGNORE
+<U01B3> <'-y-ha>;"<BASE><BASE>";"<CAP><VRNT1>";IGNORE % Ƴ
+<modifier-letter-apostrophe-Y> <'-y-ha>;"<BASE><BASE>";"<CAP><VRNT2>";IGNORE
+<right-single-quotation-mark-Y> <'-y-ha>;"<BASE><BASE>";"<CAP><VRNT3>";IGNORE
+<double-apostrophe-Y> <'-y-ha>;"<BASE><BASE>";"<CAP><VRNT4>";IGNORE
reorder-end
diff --git a/localedata/locales/hr_HR b/localedata/locales/hr_HR
index 1a616aa052..64c8d726aa 100644
--- a/localedata/locales/hr_HR
+++ b/localedata/locales/hr_HR
@@ -108,57 +108,57 @@ collating-symbol <n-j-sh>
collating-symbol <scaron>
collating-symbol <zcaron>
-reorder-after <c>
+reorder-after <AFTER-C>
<ccaron>
<cacute>
-reorder-after <d>
+reorder-after <AFTER-D>
<d-z-sh>
<doblique>
-reorder-after <l>
+reorder-after <AFTER-L>
<l-j-sh>
-reorder-after <n>
+reorder-after <AFTER-N>
<n-j-sh>
-reorder-after <s>
+reorder-after <AFTER-S>
<scaron>
-reorder-after <z>
+reorder-after <AFTER-Z>
<zcaron>
-<U010D> <ccaron>;<ACA>;<MIN>;IGNORE % č
-<U010C> <ccaron>;<ACA>;<CAP>;IGNORE % Č
-<U0107> <cacute>;<CAR>;<MIN>;IGNORE % ć
-<U0106> <cacute>;<CAR>;<CAP>;IGNORE % Ć
-
-<d-z<> "<d-z-sh>";"<BAS><CAR>";"<MIN><MIN><BAS>";IGNORE % dž
-<U01C6> "<d-z-sh>";"<BAS><CAR>";"<MIN><MIN><LIG>";IGNORE % dž
-<d-Z<> "<d-z-sh>";"<BAS><CAR>";"<MIN><CAP><BAS>";IGNORE % dŽ
-<D-z<> "<d-z-sh>";"<BAS><CAR>";"<CAP><MIN><BAS>";IGNORE % Dž
-<U01C5> "<d-z-sh>";"<BAS><CAR>";"<CAP><MIN><LIG>";IGNORE % Dž
-<D-Z<> "<d-z-sh>";"<BAS><CAR>";"<CAP><CAP><BAS>";IGNORE % DŽ
-<U01C4> "<d-z-sh>";"<BAS><CAR>";"<CAP><CAP><LIG>";IGNORE % DŽ
-<U0111> <doblique>;<OBL>;<MIN>;IGNORE % đ
-<U0110> <doblique>;<OBL>;<CAP>;IGNORE % Đ
-
-<l-j> "<l-j-sh>";"<BAS><BAS>";"<MIN><MIN><BAS>";IGNORE % lj
-<U01C9> "<l-j-sh>";"<BAS><BAS>";"<MIN><MIN><LIG>";IGNORE % lj
-<l-J> "<l-j-sh>";"<BAS><BAS>";"<MIN><CAP><BAS>";IGNORE % lJ
-<L-j> "<l-j-sh>";"<BAS><BAS>";"<CAP><MIN><BAS>";IGNORE % Lj
-<U01C8> "<l-j-sh>";"<BAS><BAS>";"<CAP><MIN><LIG>";IGNORE % Lj
-<L-J> "<l-j-sh>";"<BAS><BAS>";"<CAP><CAP><BAS>";IGNORE % LJ
-<U01C7> "<l-j-sh>";"<BAS><BAS>";"<CAP><CAP><LIG>";IGNORE % LJ
-
-<n-j> "<n-j-sh>";"<BAS><BAS>";"<MIN><MIN><BAS>";IGNORE % nj
-<U01CC> "<n-j-sh>";"<BAS><BAS>";"<MIN><MIN><LIG>";IGNORE % nj
-<n-J> "<n-j-sh>";"<BAS><BAS>";"<MIN><CAP><BAS>";IGNORE % nJ
-<N-j> "<n-j-sh>";"<BAS><BAS>";"<CAP><MIN><BAS>";IGNORE % Nj
-<U01CB> "<n-j-sh>";"<BAS><BAS>";"<CAP><MIN><LIG>";IGNORE % Nj
-<N-J> "<n-j-sh>";"<BAS><BAS>";"<CAP><CAP><BAS>";IGNORE % NJ
-<U01CA> "<n-j-sh>";"<BAS><BAS>";"<CAP><CAP><LIG>";IGNORE % NJ
-
-<U0161> <scaron>;<ACA>;<MIN>;IGNORE % š
-<U0160> <scaron>;<ACA>;<CAP>;IGNORE % Š
-
-<U017E> <zcaron>;<ACA>;<MIN>;IGNORE % ž
-<U017D> <zcaron>;<ACA>;<CAP>;IGNORE % Ž
+<U010D> <ccaron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % č
+<U010C> <ccaron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Č
+<U0107> <cacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ć
+<U0106> <cacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ć
+
+<d-z<> "<d-z-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT1>" % dž
+<U01C6> "<d-z-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT2>" % dž
+<d-Z<> "<d-z-sh>";"<BASE><BASE>";"<MIN><CAP>";"<VRNT1>" % dŽ
+<D-z<> "<d-z-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT1>" % Dž
+<U01C5> "<d-z-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT2>" % Dž
+<D-Z<> "<d-z-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT1>" % DŽ
+<U01C4> "<d-z-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT2>" % DŽ
+<U0111> <doblique>;"<BASE><BASE>";<MIN>;IGNORE % đ
+<U0110> <doblique>;"<BASE><BASE>";<CAP>;IGNORE % Đ
+
+<l-j> "<l-j-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT1>" % lj
+<U01C9> "<l-j-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT2>" % lj
+<l-J> "<l-j-sh>";"<BASE><BASE>";"<MIN><CAP>";"<VRNT1>" % lJ
+<L-j> "<l-j-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT1>" % Lj
+<U01C8> "<l-j-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT2>" % Lj
+<L-J> "<l-j-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT1>" % LJ
+<U01C7> "<l-j-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT2>" % LJ
+
+<n-j> "<n-j-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT1>" % nj
+<U01CC> "<n-j-sh>";"<BASE><BASE>";"<MIN><MIN>";"<VRNT2>" % nj
+<n-J> "<n-j-sh>";"<BASE><BASE>";"<MIN><CAP>";"<VRNT1>" % nJ
+<N-j> "<n-j-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT1>" % Nj
+<U01CB> "<n-j-sh>";"<BASE><BASE>";"<CAP><MIN>";"<VRNT2>" % Nj
+<N-J> "<n-j-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT1>" % NJ
+<U01CA> "<n-j-sh>";"<BASE><BASE>";"<CAP><CAP>";"<VRNT2>" % NJ
+
+<U0161> <scaron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % š
+<U0160> <scaron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Š
+
+<U017E> <zcaron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ž
+<U017D> <zcaron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ž
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/hsb_DE b/localedata/locales/hsb_DE
index 7f8a550da3..492c2c7e31 100644
--- a/localedata/locales/hsb_DE
+++ b/localedata/locales/hsb_DE
@@ -85,49 +85,49 @@ collating-symbol <s-caron>
collating-symbol <z-caron>
collating-symbol <z-acute>
-reorder-after <c>
+reorder-after <AFTER-C>
<c-caron>
<c-acute>
-reorder-after <d>
+reorder-after <AFTER-D>
<d-z-acute-digraph>
-reorder-after <e>
+reorder-after <AFTER-E>
<e-caron>
-reorder-after <h>
+reorder-after <AFTER-H>
<c-h-digraph>
-reorder-after <k>
+reorder-after <AFTER-K>
<l-stroke>
-reorder-after <r>
+reorder-after <AFTER-R>
<r-caron>
-reorder-after <s>
+reorder-after <AFTER-S>
<s-caron>
-reorder-after <z>
+reorder-after <AFTER-Z>
<z-caron>
<z-acute>
-<U010D> <c-caron>;<BAS>;<MIN>;IGNORE % č
-<U010C> <c-caron>;<BAS>;<CAP>;IGNORE % Č
-<U0107> <c-acute>;<BAS>;<MIN>;IGNORE % ć
-<U0106> <c-acute>;<BAS>;<CAP>;IGNORE % Ć
-<d-z'> <d-z-acute-digraph>;<BAS>;"<MIN><MIN>";IGNORE % dź
-<d-Z'> <d-z-acute-digraph>;<BAS>;"<MIN><CAP>";IGNORE % dŹ
-<D-z'> <d-z-acute-digraph>;<BAS>;"<CAP><MIN>";IGNORE % Dź
-<D-Z'> <d-z-acute-digraph>;<BAS>;"<CAP><CAP>";IGNORE % DŹ
-<U011B> <e-caron>;<BAS>;<MIN>;IGNORE % ě
-<U011A> <e-caron>;<BAS>;<CAP>;IGNORE % Ě
-<c-h> <c-h-digraph>;<BAS>;"<MIN><MIN>";IGNORE % ch
-<c-H> <c-h-digraph>;<BAS>;"<MIN><CAP>";IGNORE % cH
-<C-h> <c-h-digraph>;<BAS>;"<CAP><MIN>";IGNORE % Ch
-<C-H> <c-h-digraph>;<BAS>;"<CAP><CAP>";IGNORE % CH
-<U0142> <l-stroke>;<BAS>;<MIN>;IGNORE % ł
-<U0141> <l-stroke>;<BAS>;<CAP>;IGNORE % Ł
-<U0159> <r-caron>;<BAS>;<MIN>;IGNORE % ř
-<U0158> <r-caron>;<BAS>;<CAP>;IGNORE % Ř
-<U0161> <s-caron>;<BAS>;<MIN>;IGNORE % š
-<U0160> <s-caron>;<BAS>;<CAP>;IGNORE % Š
-<U017E> <z-caron>;<BAS>;<MIN>;IGNORE % ž
-<U017D> <z-caron>;<BAS>;<CAP>;IGNORE % Ž
-<U017A> <z-acute>;<BAS>;<MIN>;IGNORE % ź
-<U0179> <z-acute>;<BAS>;<CAP>;IGNORE % Ź
+<U010D> <c-caron>;<BASE>;<MIN>;IGNORE % č
+<U010C> <c-caron>;<BASE>;<CAP>;IGNORE % Č
+<U0107> <c-acute>;<BASE>;<MIN>;IGNORE % ć
+<U0106> <c-acute>;<BASE>;<CAP>;IGNORE % Ć
+<d-z'> <d-z-acute-digraph>;<BASE>;"<MIN><MIN>";IGNORE % dź
+<d-Z'> <d-z-acute-digraph>;<BASE>;"<MIN><CAP>";IGNORE % dŹ
+<D-z'> <d-z-acute-digraph>;<BASE>;"<CAP><MIN>";IGNORE % Dź
+<D-Z'> <d-z-acute-digraph>;<BASE>;"<CAP><CAP>";IGNORE % DŹ
+<U011B> <e-caron>;<BASE>;<MIN>;IGNORE % ě
+<U011A> <e-caron>;<BASE>;<CAP>;IGNORE % Ě
+<c-h> <c-h-digraph>;<BASE>;"<MIN><MIN>";IGNORE % ch
+<c-H> <c-h-digraph>;<BASE>;"<MIN><CAP>";IGNORE % cH
+<C-h> <c-h-digraph>;<BASE>;"<CAP><MIN>";IGNORE % Ch
+<C-H> <c-h-digraph>;<BASE>;"<CAP><CAP>";IGNORE % CH
+<U0142> <l-stroke>;<BASE>;<MIN>;IGNORE % ł
+<U0141> <l-stroke>;<BASE>;<CAP>;IGNORE % Ł
+<U0159> <r-caron>;<BASE>;<MIN>;IGNORE % ř
+<U0158> <r-caron>;<BASE>;<CAP>;IGNORE % Ř
+<U0161> <s-caron>;<BASE>;<MIN>;IGNORE % š
+<U0160> <s-caron>;<BASE>;<CAP>;IGNORE % Š
+<U017E> <z-caron>;<BASE>;<MIN>;IGNORE % ž
+<U017D> <z-caron>;<BASE>;<CAP>;IGNORE % Ž
+<U017A> <z-acute>;<BASE>;<MIN>;IGNORE % ź
+<U0179> <z-acute>;<BASE>;<CAP>;IGNORE % Ź
reorder-end
diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU
index 0aa2104ed4..9d6bb85022 100644
--- a/localedata/locales/hu_HU
+++ b/localedata/locales/hu_HU
@@ -85,8 +85,8 @@ copy "iso14651_t1"
collating-symbol <odouble>
collating-symbol <udouble>
-collating-symbol <SINGLE-OR-COMPOUND>
-collating-symbol <COMPOUND>
+collating-symbol <single-or-compound>
+collating-symbol <compound>
collating-symbol <cs>
collating-element <C-S> from "<U0043><U0053>"
@@ -255,195 +255,195 @@ reorder-after <CAP>
<CAP-CAP-MIN>
<CAP-CAP-CAP>
-reorder-after <c>
+reorder-after <AFTER-C>
<cs>
-reorder-after <d>
+reorder-after <AFTER-D>
<dz>
<dzs>
-reorder-after <g>
+reorder-after <AFTER-G>
<gy>
-reorder-after <l>
+reorder-after <AFTER-L>
<ly>
-reorder-after <n>
+reorder-after <AFTER-N>
<ny>
-reorder-after <o>
+reorder-after <AFTER-O>
<odouble>
-reorder-after <s>
+reorder-after <AFTER-S>
<sz>
-reorder-after <t>
+reorder-after <AFTER-T>
<ty>
-reorder-after <u>
+reorder-after <AFTER-U>
<udouble>
-reorder-after <z>
+reorder-after <AFTER-Z>
<zs>
-reorder-after <BAS>
-<SINGLE-OR-COMPOUND>
-<COMPOUND>
+reorder-after <BASE>
+<single-or-compound>
+<compound>
-reorder-after <o>
-<U00F6> <odouble>;<REU>;<MIN>;IGNORE
-<U0151> <odouble>;<DAC>;<MIN>;IGNORE
-<U00D6> <odouble>;<REU>;<CAP>;IGNORE
-<U0150> <odouble>;<DAC>;<CAP>;IGNORE
+reorder-after <AFTER-O>
+<U00F6> <odouble>;<TREMA>;<MIN>;IGNORE
+<U0151> <odouble>;<2AIGU>;<MIN>;IGNORE
+<U00D6> <odouble>;<TREMA>;<CAP>;IGNORE
+<U0150> <odouble>;<2AIGU>;<CAP>;IGNORE
-reorder-after <u>
-<U00FC> <udouble>;<REU>;<MIN>;IGNORE
-<U0171> <udouble>;<DAC>;<MIN>;IGNORE
-<U00DC> <udouble>;<REU>;<CAP>;IGNORE
-<U0170> <udouble>;<DAC>;<CAP>;IGNORE
+reorder-after <AFTER-U>
+<U00FC> <udouble>;<TREMA>;<MIN>;IGNORE
+<U0171> <udouble>;<2AIGU>;<MIN>;IGNORE
+<U00DC> <udouble>;<TREMA>;<CAP>;IGNORE
+<U0170> <udouble>;<2AIGU>;<CAP>;IGNORE
-reorder-after <BAS>
-<ACA>
-<REU>
-<DAC>
+reorder-after <BASE>
+<AIGUT>
+<TREMA>
+<2AIGU>
reorder-after <U0043>
-<C-S> <cs>;<COMPOUND>;<CAP-CAP>;IGNORE
-<C-s> <cs>;<COMPOUND>;<CAP-MIN>;IGNORE
-<C-C-S> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<C-C-s> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<C-c-S> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<C-c-s> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<C-S> <cs>;<compound>;<CAP-CAP>;IGNORE
+<C-s> <cs>;<compound>;<CAP-MIN>;IGNORE
+<C-C-S> "<cs><cs>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<C-C-s> "<cs><cs>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<C-c-S> "<cs><cs>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<C-c-s> "<cs><cs>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U0063>
-<c-S> <cs>;<COMPOUND>;<MIN-CAP>;IGNORE
-<c-s> <cs>;<COMPOUND>;<MIN-MIN>;IGNORE
-<c-C-S> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<c-C-s> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<c-c-S> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<c-c-s> "<cs><cs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<c-S> <cs>;<compound>;<MIN-CAP>;IGNORE
+<c-s> <cs>;<compound>;<MIN-MIN>;IGNORE
+<c-C-S> "<cs><cs>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<c-C-s> "<cs><cs>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<c-c-S> "<cs><cs>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<c-c-s> "<cs><cs>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U0044>
-<D-Z> <dz>;<COMPOUND>;<CAP-CAP>;IGNORE
-<D-z> <dz>;<COMPOUND>;<CAP-MIN>;IGNORE
-<D-D-Z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<D-D-z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<D-d-Z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<D-d-z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<D-Z> <dz>;<compound>;<CAP-CAP>;IGNORE
+<D-z> <dz>;<compound>;<CAP-MIN>;IGNORE
+<D-D-Z> "<dz><dz>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<D-D-z> "<dz><dz>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<D-d-Z> "<dz><dz>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<D-d-z> "<dz><dz>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U0064>
-<d-Z> <dz>;<COMPOUND>;<MIN-CAP>;IGNORE
-<d-z> <dz>;<COMPOUND>;<MIN-MIN>;IGNORE
-<d-D-Z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<d-D-z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<d-d-Z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<d-d-z> "<dz><dz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<d-Z> <dz>;<compound>;<MIN-CAP>;IGNORE
+<d-z> <dz>;<compound>;<MIN-MIN>;IGNORE
+<d-D-Z> "<dz><dz>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<d-D-z> "<dz><dz>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<d-d-Z> "<dz><dz>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<d-d-z> "<dz><dz>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U0044>
-<D-Z-S> <dzs>;<COMPOUND>;<CAP-CAP-CAP>;IGNORE
-<D-Z-s> <dzs>;<COMPOUND>;<CAP-CAP-MIN>;IGNORE
-<D-z-S> <dzs>;<COMPOUND>;<CAP-MIN-CAP>;IGNORE
-<D-z-s> <dzs>;<COMPOUND>;<CAP-MIN-MIN>;IGNORE
-<D-D-Z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP-CAP>";IGNORE
-<D-D-Z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP-MIN>";IGNORE
-<D-D-z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN-CAP>";IGNORE
-<D-D-z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN-MIN>";IGNORE
-<D-d-Z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP-CAP>";IGNORE
-<D-d-Z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP-MIN>";IGNORE
-<D-d-z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN-CAP>";IGNORE
-<D-d-z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN-MIN>";IGNORE
+<D-Z-S> <dzs>;<compound>;<CAP-CAP-CAP>;IGNORE
+<D-Z-s> <dzs>;<compound>;<CAP-CAP-MIN>;IGNORE
+<D-z-S> <dzs>;<compound>;<CAP-MIN-CAP>;IGNORE
+<D-z-s> <dzs>;<compound>;<CAP-MIN-MIN>;IGNORE
+<D-D-Z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><CAP-CAP-CAP>";IGNORE
+<D-D-Z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><CAP-CAP-MIN>";IGNORE
+<D-D-z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><CAP-MIN-CAP>";IGNORE
+<D-D-z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><CAP-MIN-MIN>";IGNORE
+<D-d-Z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><MIN-CAP-CAP>";IGNORE
+<D-d-Z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><MIN-CAP-MIN>";IGNORE
+<D-d-z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><MIN-MIN-CAP>";IGNORE
+<D-d-z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<CAP><MIN-MIN-MIN>";IGNORE
reorder-after <U0064>
-<d-Z-S> <dzs>;<COMPOUND>;<MIN-CAP-CAP>;IGNORE
-<d-Z-s> <dzs>;<COMPOUND>;<MIN-CAP-MIN>;IGNORE
-<d-z-S> <dzs>;<COMPOUND>;<MIN-MIN-CAP>;IGNORE
-<d-z-s> <dzs>;<COMPOUND>;<MIN-MIN-MIN>;IGNORE
-<d-D-Z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP-CAP>";IGNORE
-<d-D-Z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP-MIN>";IGNORE
-<d-D-z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN-CAP>";IGNORE
-<d-D-z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN-MIN>";IGNORE
-<d-d-Z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP-CAP>";IGNORE
-<d-d-Z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP-MIN>";IGNORE
-<d-d-z-S> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN-CAP>";IGNORE
-<d-d-z-s> "<dzs><dzs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN-MIN>";IGNORE
+<d-Z-S> <dzs>;<compound>;<MIN-CAP-CAP>;IGNORE
+<d-Z-s> <dzs>;<compound>;<MIN-CAP-MIN>;IGNORE
+<d-z-S> <dzs>;<compound>;<MIN-MIN-CAP>;IGNORE
+<d-z-s> <dzs>;<compound>;<MIN-MIN-MIN>;IGNORE
+<d-D-Z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><CAP-CAP-CAP>";IGNORE
+<d-D-Z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><CAP-CAP-MIN>";IGNORE
+<d-D-z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><CAP-MIN-CAP>";IGNORE
+<d-D-z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><CAP-MIN-MIN>";IGNORE
+<d-d-Z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><MIN-CAP-CAP>";IGNORE
+<d-d-Z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><MIN-CAP-MIN>";IGNORE
+<d-d-z-S> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><MIN-MIN-CAP>";IGNORE
+<d-d-z-s> "<dzs><dzs>";"<single-or-compound><compound>";"<MIN><MIN-MIN-MIN>";IGNORE
reorder-after <U0047>
-<G-Y> <gy>;<COMPOUND>;<CAP-CAP>;IGNORE
-<G-y> <gy>;<COMPOUND>;<CAP-MIN>;IGNORE
-<G-G-Y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<G-G-y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<G-g-Y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<G-g-y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<G-Y> <gy>;<compound>;<CAP-CAP>;IGNORE
+<G-y> <gy>;<compound>;<CAP-MIN>;IGNORE
+<G-G-Y> "<gy><gy>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<G-G-y> "<gy><gy>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<G-g-Y> "<gy><gy>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<G-g-y> "<gy><gy>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U0067>
-<g-Y> <gy>;<COMPOUND>;<MIN-CAP>;IGNORE
-<g-y> <gy>;<COMPOUND>;<MIN-MIN>;IGNORE
-<g-G-Y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<g-G-y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<g-g-Y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<g-g-y> "<gy><gy>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<g-Y> <gy>;<compound>;<MIN-CAP>;IGNORE
+<g-y> <gy>;<compound>;<MIN-MIN>;IGNORE
+<g-G-Y> "<gy><gy>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<g-G-y> "<gy><gy>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<g-g-Y> "<gy><gy>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<g-g-y> "<gy><gy>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U004C>
-<L-Y> <ly>;<COMPOUND>;<CAP-CAP>;IGNORE
-<L-y> <ly>;<COMPOUND>;<CAP-MIN>;IGNORE
-<L-L-Y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<L-L-y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<L-l-Y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<L-l-y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<L-Y> <ly>;<compound>;<CAP-CAP>;IGNORE
+<L-y> <ly>;<compound>;<CAP-MIN>;IGNORE
+<L-L-Y> "<ly><ly>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<L-L-y> "<ly><ly>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<L-l-Y> "<ly><ly>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<L-l-y> "<ly><ly>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U006C>
-<l-Y> <ly>;<COMPOUND>;<MIN-CAP>;IGNORE
-<l-y> <ly>;<COMPOUND>;<MIN-MIN>;IGNORE
-<l-L-Y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<l-L-y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<l-l-Y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<l-l-y> "<ly><ly>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<l-Y> <ly>;<compound>;<MIN-CAP>;IGNORE
+<l-y> <ly>;<compound>;<MIN-MIN>;IGNORE
+<l-L-Y> "<ly><ly>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<l-L-y> "<ly><ly>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<l-l-Y> "<ly><ly>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<l-l-y> "<ly><ly>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U004E>
-<N-Y> <ny>;<COMPOUND>;<CAP-CAP>;IGNORE
-<N-y> <ny>;<COMPOUND>;<CAP-MIN>;IGNORE
-<N-N-Y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<N-N-y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<N-n-Y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<N-n-y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<N-Y> <ny>;<compound>;<CAP-CAP>;IGNORE
+<N-y> <ny>;<compound>;<CAP-MIN>;IGNORE
+<N-N-Y> "<ny><ny>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<N-N-y> "<ny><ny>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<N-n-Y> "<ny><ny>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<N-n-y> "<ny><ny>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U006E>
-<n-Y> <ny>;<COMPOUND>;<MIN-CAP>;IGNORE
-<n-y> <ny>;<COMPOUND>;<MIN-MIN>;IGNORE
-<n-N-Y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<n-N-y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<n-n-Y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<n-n-y> "<ny><ny>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<n-Y> <ny>;<compound>;<MIN-CAP>;IGNORE
+<n-y> <ny>;<compound>;<MIN-MIN>;IGNORE
+<n-N-Y> "<ny><ny>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<n-N-y> "<ny><ny>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<n-n-Y> "<ny><ny>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<n-n-y> "<ny><ny>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U0053>
-<S-Z> <sz>;<COMPOUND>;<CAP-CAP>;IGNORE
-<S-z> <sz>;<COMPOUND>;<CAP-MIN>;IGNORE
-<S-S-Z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<S-S-z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<S-s-Z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<S-s-z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<S-Z> <sz>;<compound>;<CAP-CAP>;IGNORE
+<S-z> <sz>;<compound>;<CAP-MIN>;IGNORE
+<S-S-Z> "<sz><sz>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<S-S-z> "<sz><sz>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<S-s-Z> "<sz><sz>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<S-s-z> "<sz><sz>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U0073>
-<s-Z> <sz>;<COMPOUND>;<MIN-CAP>;IGNORE
-<s-z> <sz>;<COMPOUND>;<MIN-MIN>;IGNORE
-<s-S-Z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<s-S-z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<s-s-Z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<s-s-z> "<sz><sz>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<s-Z> <sz>;<compound>;<MIN-CAP>;IGNORE
+<s-z> <sz>;<compound>;<MIN-MIN>;IGNORE
+<s-S-Z> "<sz><sz>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<s-S-z> "<sz><sz>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<s-s-Z> "<sz><sz>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<s-s-z> "<sz><sz>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U0054>
-<T-Y> <ty>;<COMPOUND>;<CAP-CAP>;IGNORE
-<T-y> <ty>;<COMPOUND>;<CAP-MIN>;IGNORE
-<T-T-Y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<T-T-y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<T-t-Y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<T-t-y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<T-Y> <ty>;<compound>;<CAP-CAP>;IGNORE
+<T-y> <ty>;<compound>;<CAP-MIN>;IGNORE
+<T-T-Y> "<ty><ty>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<T-T-y> "<ty><ty>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<T-t-Y> "<ty><ty>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<T-t-y> "<ty><ty>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U0074>
-<t-Y> <ty>;<COMPOUND>;<MIN-CAP>;IGNORE
-<t-y> <ty>;<COMPOUND>;<MIN-MIN>;IGNORE
-<t-T-Y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<t-T-y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<t-t-Y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<t-t-y> "<ty><ty>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<t-Y> <ty>;<compound>;<MIN-CAP>;IGNORE
+<t-y> <ty>;<compound>;<MIN-MIN>;IGNORE
+<t-T-Y> "<ty><ty>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<t-T-y> "<ty><ty>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<t-t-Y> "<ty><ty>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<t-t-y> "<ty><ty>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-after <U005A>
-<Z-S> <zs>;<COMPOUND>;<CAP-CAP>;IGNORE
-<Z-s> <zs>;<COMPOUND>;<CAP-MIN>;IGNORE
-<Z-Z-S> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-CAP>";IGNORE
-<Z-Z-s> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><CAP-MIN>";IGNORE
-<Z-z-S> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-CAP>";IGNORE
-<Z-z-s> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<CAP><MIN-MIN>";IGNORE
+<Z-S> <zs>;<compound>;<CAP-CAP>;IGNORE
+<Z-s> <zs>;<compound>;<CAP-MIN>;IGNORE
+<Z-Z-S> "<zs><zs>";"<single-or-compound><compound>";"<CAP><CAP-CAP>";IGNORE
+<Z-Z-s> "<zs><zs>";"<single-or-compound><compound>";"<CAP><CAP-MIN>";IGNORE
+<Z-z-S> "<zs><zs>";"<single-or-compound><compound>";"<CAP><MIN-CAP>";IGNORE
+<Z-z-s> "<zs><zs>";"<single-or-compound><compound>";"<CAP><MIN-MIN>";IGNORE
reorder-after <U007A>
-<z-S> <zs>;<COMPOUND>;<MIN-CAP>;IGNORE
-<z-s> <zs>;<COMPOUND>;<MIN-MIN>;IGNORE
-<z-Z-S> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-CAP>";IGNORE
-<z-Z-s> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><CAP-MIN>";IGNORE
-<z-z-S> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-CAP>";IGNORE
-<z-z-s> "<zs><zs>";"<SINGLE-OR-COMPOUND><COMPOUND>";"<MIN><MIN-MIN>";IGNORE
+<z-S> <zs>;<compound>;<MIN-CAP>;IGNORE
+<z-s> <zs>;<compound>;<MIN-MIN>;IGNORE
+<z-Z-S> "<zs><zs>";"<single-or-compound><compound>";"<MIN><CAP-CAP>";IGNORE
+<z-Z-s> "<zs><zs>";"<single-or-compound><compound>";"<MIN><CAP-MIN>";IGNORE
+<z-z-S> "<zs><zs>";"<single-or-compound><compound>";"<MIN><MIN-CAP>";IGNORE
+<z-z-s> "<zs><zs>";"<single-or-compound><compound>";"<MIN><MIN-MIN>";IGNORE
reorder-end
diff --git a/localedata/locales/ig_NG b/localedata/locales/ig_NG
index 7a6775d29a..bddd2ccde5 100644
--- a/localedata/locales/ig_NG
+++ b/localedata/locales/ig_NG
@@ -46,307 +46,166 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-
-% Igbo uses the following extra letters:
-% idotbelow, odotbelow, udotbelow, nabovedot
-% plus acute and grave combining marks over vowels and n
-% of those, the following have precombined forms:
-% aacute, eacute, iacute, oacute, uacute, nacute
-% agrave, egrave, igrave, ograve, ugrave, ngrave
+% CLDR collation rules for Igbo:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ig.xml)
%
-% order: a, b, [c], ch, d, e, f, g, gb, gh, gw, h, i, i., j, k, kp, kw,
-% l, m, n, n., nw, ny, o, o., p, [q], r, s, sh, t, u, u., v, w, [x], y, z
-
-copy "iso14651_t1"
-
-collating-symbol <c-h-ig>
-collating-element <C-H> from "<U0043><U0048>"
-collating-element <c-h> from "<U0063><U0068>"
-collating-element <C-h> from "<U0043><U0068>"
-collating-element <c-H> from "<U0063><U0048>"
-collating-symbol <g-b-ig>
-collating-element <G-B> from "<U0047><U0042>"
-collating-element <g-b> from "<U0067><U0062>"
-collating-element <G-b> from "<U0047><U0062>"
-collating-element <g-B> from "<U0067><U0042>"
-collating-symbol <g-h-ig>
-collating-element <G-H> from "<U0047><U0048>"
-collating-element <g-h> from "<U0067><U0068>"
-collating-element <G-h> from "<U0047><U0068>"
-collating-element <g-H> from "<U0067><U0048>"
-collating-symbol <g-w-ig>
-collating-element <G-W> from "<U0047><U0057>"
-collating-element <g-w> from "<U0067><U0077>"
-collating-element <G-w> from "<U0047><U0077>"
-collating-element <g-W> from "<U0067><U0057>"
-collating-symbol <k-p-ig>
-collating-element <K-P> from "<U004B><U0050>"
-collating-element <k-p> from "<U006B><U0070>"
-collating-element <K-p> from "<U004B><U0070>"
-collating-element <k-P> from "<U006B><U0050>"
-collating-symbol <k-w-ig>
-collating-element <K-W> from "<U004B><U0057>"
-collating-element <k-w> from "<U006B><U0077>"
-collating-element <K-w> from "<U004B><U0077>"
-collating-element <k-W> from "<U006B><U0057>"
-collating-symbol <n-w-ig>
-collating-element <N-W> from "<U004E><U0057>"
-collating-element <n-w> from "<U006E><U0077>"
-collating-element <N-w> from "<U004E><U0077>"
-collating-element <n-W> from "<U006E><U0057>"
-collating-symbol <n-y-ig>
-collating-element <N-Y> from "<U004E><U0059>"
-collating-element <n-y> from "<U006E><U0079>"
-collating-element <N-y> from "<U004E><U0079>"
-collating-element <n-Y> from "<U006E><U0059>"
-collating-symbol <ibelowdot>
-collating-element <I_> from "<U0049><U0323>"
-collating-element <i_> from "<U0069><U0323>"
-collating-element <I_'> from "<U0049><U0323><U0301>"
-collating-element <i_'> from "<U0069><U0323><U0301>"
-collating-element <I_`> from "<U0049><U0323><U0300>"
-collating-element <i_`> from "<U0069><U0323><U0300>"
-collating-element <I_2'> from "<U1ECA><U0301>"
-collating-element <i_2'> from "<U1ECB><U0301>"
-collating-element <I_2`> from "<U1ECA><U0300>"
-collating-element <i_2`> from "<U1ECB><U0300>"
-collating-symbol <obelowdot>
-collating-element <O_> from "<U004F><U0323>"
-collating-element <o_> from "<U006F><U0323>"
-collating-element <O_'> from "<U004F><U0323><U0301>"
-collating-element <o_'> from "<U006F><U0323><U0301>"
-collating-element <O_`> from "<U004F><U0323><U0300>"
-collating-element <o_`> from "<U006F><U0323><U0300>"
-collating-element <O_2'> from "<U1ECC><U0301>"
-collating-element <o_2'> from "<U1ECD><U0301>"
-collating-element <O_2`> from "<U1ECC><U0300>"
-collating-element <o_2`> from "<U1ECD><U0300>"
-collating-symbol <s-h-ig>
-collating-element <S-H> from "<U0053><U0048>"
-collating-element <S-h> from "<U0053><U0068>"
-collating-element <s-H> from "<U0073><U0048>"
-collating-element <s-h> from "<U0073><U0068>"
-collating-symbol <ubelowdot>
-collating-element <U_> from "<U0055><U0323>"
-collating-element <u_> from "<U0075><U0323>"
-collating-element <U_'> from "<U0055><U0323><U0301>"
-collating-element <u_'> from "<U0075><U0323><U0301>"
-collating-element <U_`> from "<U0075><U0323><U0300>"
-collating-element <u_`> from "<U0055><U0323><U0300>"
-collating-element <U_2'> from "<U1EE4><U0301>"
-collating-element <u_2'> from "<U1EE5><U0301>"
-collating-element <U_2`> from "<U1EE4><U0300>"
-collating-element <u_2`> from "<U1EE5><U0300>"
-collating-symbol <nabovedot>
-collating-element <N.> from "<U004E><U0307>"
-collating-element <n.> from "<U006E><U0307>"
-collating-symbol <aacute>
-collating-element <A'> from "<U0041><U0301>"
-collating-element <a'> from "<U0061><U0301>"
-collating-symbol <eacute>
-collating-element <E'> from "<U0045><U0301>"
-collating-element <e'> from "<U0065><U0301>"
-collating-symbol <iacute>
-collating-element <I'> from "<U0049><U0301>"
-collating-element <i'> from "<U0069><U0301>"
-collating-symbol <oacute>
-collating-element <O'> from "<U004F><U0301>"
-collating-element <o'> from "<U006F><U0301>"
-collating-symbol <uacute>
-collating-element <U'> from "<U0055><U0301>"
-collating-element <u'> from "<U0075><U0301>"
-collating-symbol <agrave>
-collating-element <A`> from "<U0041><U0300>"
-collating-element <a`> from "<U0061><U0300>"
-collating-symbol <egrave>
-collating-element <E`> from "<U0045><U0300>"
-collating-element <e`> from "<U0065><U0300>"
-collating-symbol <igrave>
-collating-element <I`> from "<U0049><U0300>"
-collating-element <i`> from "<U0069><U0300>"
-collating-symbol <ograve>
-collating-element <O`> from "<U004F><U0300>"
-collating-element <o`> from "<U006F><U0300>"
-collating-symbol <ugrave>
-collating-element <U`> from "<U0055><U0300>"
-collating-element <u`> from "<U0075><U0300>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <c>
-<c-h-ig>
-reorder-after <g>
-<g-b-ig>
-<g-h-ig>
-<g-w-ig>
-reorder-after <i>
-<ibelowdot>
-reorder-after <k>
-<k-p-ig>
-<k-w-ig>
-reorder-after <n>
-<nabovedot>
-<n-w-ig>
-<n-y-ig>
-<o>
-<obelowdot>
-reorder-after <s>
-<s-h-ig>
-reorder-after <u>
-<ubelowdot>
-
-reorder-after <U0061>
-<U00E1> <a>;<ACA>;<MIN>;IGNORE
-<a'> <a>;<ACA>;<MIN>;IGNORE
-<U00E0> <a>;<GRA>;<MIN>;IGNORE
-<a`> <a>;<GRA>;<MIN>;IGNORE
-reorder-after <U0041>
-<U00C1> <a>;<ACA>;<CAP>;IGNORE
-<A'> <a>;<ACA>;<CAP>;IGNORE
-<U00C0> <a>;<GRA>;<CAP>;IGNORE
-<A`> <a>;<GRA>;<CAP>;IGNORE
-
-reorder-after <U0063>
-<c-h> <c-h-ig>;<PCL>;<MIN>;IGNORE
-<c-H> <c-h-ig>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0043>
-<C-H> <c-h-ig>;<PCL>;<CAP>;IGNORE
-<C-h> <c-h-ig>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0065>
-<U00E9> <e>;<ACA>;<MIN>;IGNORE
-<e'> <e>;<ACA>;<MIN>;IGNORE
-<U00E8> <e>;<GRA>;<MIN>;IGNORE
-<e`> <e>;<GRA>;<MIN>;IGNORE
-reorder-after <U0045>
-<U00C9> <e>;<ACA>;<CAP>;IGNORE
-<E'> <e>;<ACA>;<CAP>;IGNORE
-<U00C8> <e>;<GRA>;<CAP>;IGNORE
-<E`> <e>;<GRA>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<g-b> <g-b-ig>;<PCL>;<MIN>;IGNORE
-<g-B> <g-b-ig>;<PCL>;<MIN-CAP>;IGNORE
-<g-h> <g-h-ig>;<PCL>;<MIN>;IGNORE
-<g-H> <g-h-ig>;<PCL>;<MIN-CAP>;IGNORE
-<g-w> <g-w-ig>;<PCL>;<MIN>;IGNORE
-<g-W> <g-w-ig>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<G-B> <g-b-ig>;<PCL>;<CAP>;IGNORE
-<G-b> <g-b-ig>;<PCL>;<CAP-MIN>;IGNORE
-<G-H> <g-h-ig>;<PCL>;<CAP>;IGNORE
-<G-h> <g-h-ig>;<PCL>;<CAP-MIN>;IGNORE
-<G-W> <g-w-ig>;<PCL>;<CAP>;IGNORE
-<G-w> <g-w-ig>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0069>
-<U00ED> <i>;<ACA>;<MIN>;IGNORE
-<i'> <i>;<ACA>;<MIN>;IGNORE
-<U00EC> <i>;<GRA>;<MIN>;IGNORE
-<i`> <i>;<GRA>;<MIN>;IGNORE
-<U1ECB> <ibelowdot>;<BAS>;<MIN>;IGNORE
-<i_> <ibelowdot>;<BAS>;<MIN>;IGNORE
-<i_'> <ibelowdot>;<ACA>;<MIN>;IGNORE
-<i_2'> <ibelowdot>;<ACA>;<MIN>;IGNORE
-<i_`> <ibelowdot>;<GRA>;<MIN>;IGNORE
-<i_2`> <ibelowdot>;<GRA>;<MIN>;IGNORE
-reorder-after <U0049>
-<U00CD> <i>;<ACA>;<CAP>;IGNORE
-<I'> <i>;<ACA>;<CAP>;IGNORE
-<U00CC> <i>;<GRA>;<CAP>;IGNORE
-<I`> <i>;<GRA>;<CAP>;IGNORE
-<U1ECA> <ibelowdot>;<BAS>;<CAP>;IGNORE
-<I_> <ibelowdot>;<CAP>;<CAP>;IGNORE
-<I_'> <ibelowdot>;<ACA>;<CAP>;IGNORE
-<I_2'> <ibelowdot>;<ACA>;<CAP>;IGNORE
-<I_`> <ibelowdot>;<GRA>;<CAP>;IGNORE
-<I_2`> <ibelowdot>;<GRA>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<k-p> <k-p-ig>;<PCL>;<MIN>;IGNORE
-<k-P> <k-p-ig>;<PCL>;<MIN-CAP>;IGNORE
-<k-w> <k-w-ig>;<PCL>;<MIN>;IGNORE
-<k-W> <k-w-ig>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<K-P> <k-p-ig>;<PCL>;<CAP>;IGNORE
-<K-p> <k-p-ig>;<PCL>;<CAP-MIN>;IGNORE
-<K-W> <k-w-ig>;<PCL>;<CAP>;IGNORE
-<K-w> <k-w-ig>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U006E>
-<U1E45> <nabovedot>;<BAS>;<MIN>;IGNORE
-<n.> <nabovedot>;<BAS>;<MIN>;IGNORE
-<n-w> <n-w-ig>;<PCL>;<MIN>;IGNORE
-<n-W> <n-w-ig>;<PCL>;<MIN-CAP>;IGNORE
-<n-y> <n-y-ig>;<PCL>;<MIN>;IGNORE
-<n-Y> <n-y-ig>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U004E>
-<U1E44> <nabovedot>;<BAS>;<CAP>;IGNORE
-<N.> <nabovedot>;<BAS>;<CAP>;IGNORE
-<N-W> <n-w-ig>;<PCL>;<CAP>;IGNORE
-<N-w> <n-w-ig>;<PCL>;<CAP-MIN>;IGNORE
-<N-Y> <n-y-ig>;<PCL>;<CAP>;IGNORE
-<N-y> <n-y-ig>;<PCL>;<CAP-MIN>;IGNORE
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% &B<ch<<<Ch<<<CH
+% &G<gb<<<Gb<<<GB<gh<<<Gh<<<GH<gw<<<Gw<<<GW
+% &I<ị<<<Ị
+% &K<kp<<<Kp<<<KP<kw<<<Kw<<<KW
+% &N<ṅ<<<Ṅ<nw<<<Nw<<<NW<ny<<<Ny<<<NY
+% &O<ọ<<<Ọ
+% &S<sh<<<Sh<<<SH
+% &U<ụ<<<Ụ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ig.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
-reorder-after <U006F>
-<U00F3> <o>;<ACA>;<MIN>;IGNORE
-<o'> <o>;<ACA>;<MIN>;IGNORE
-<U00F2> <o>;<GRA>;<MIN>;IGNORE
-<o`> <o>;<GRA>;<MIN>;IGNORE
-<U1ECD> <obelowdot>;<BAS>;<MIN>;IGNORE
-<o_> <obelowdot>;<BAS>;<MIN>;IGNORE
-<o_'> <obelowdot>;<ACA>;<MIN>;IGNORE
-<o_2'> <obelowdot>;<ACA>;<MIN>;IGNORE
-<o_`> <obelowdot>;<GRA>;<MIN>;IGNORE
-<o_2`> <obelowdot>;<GRA>;<MIN>;IGNORE
-reorder-after <U004F>
-<U00D3> <o>;<ACA>;<CAP>;IGNORE
-<O'> <o>;<ACA>;<CAP>;IGNORE
-<U00D2> <o>;<GRA>;<CAP>;IGNORE
-<O`> <o>;<GRA>;<CAP>;IGNORE
-<U1ECC> <obelowdot>;<BAS>;<CAP>;IGNORE
-<O_> <obelowdot>;<BAS>;<CAP>;IGNORE
-<O_'> <obelowdot>;<ACA>;<CAP>;IGNORE
-<O_2'> <obelowdot>;<ACA>;<CAP>;IGNORE
-<O_`> <obelowdot>;<GRA>;<CAP>;IGNORE
-<O_2`> <obelowdot>;<GRA>;<CAP>;IGNORE
-reorder-after <U0073>
-<s-h> <s-h-ig>;<PCL>;<MIN>;IGNORE
-<s-H> <s-h-ig>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0053>
-<S-H> <s-h-ig>;<PCL>;<CAP>;IGNORE
-<S-h> <s-h-ig>;<PCL>;<CAP-MIN>;IGNORE
+copy "iso14651_t1"
-reorder-after <U0075>
-<U00FA> <u>;<ACA>;<MIN>;IGNORE
-<u'> <u>;<ACA>;<MIN>;IGNORE
-<U00F9> <u>;<GRA>;<MIN>;IGNORE
-<u`> <u>;<GRA>;<MIN>;IGNORE
-<U1EE5> <ubelowdot>;<BAS>;<MIN>;IGNORE
-<u_> <ubelowdot>;<BAS>;<MIN>;IGNORE
-<u_'> <ubelowdot>;<ACA>;<MIN>;IGNORE
-<u_2'> <ubelowdot>;<ACA>;<MIN>;IGNORE
-<u_`> <ubelowdot>;<GRA>;<MIN>;IGNORE
-<u_2`> <ubelowdot>;<GRA>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DA> <u>;<ACA>;<CAP>;IGNORE
-<U'> <u>;<ACA>;<CAP>;IGNORE
-<U00D9> <u>;<GRA>;<CAP>;IGNORE
-<U`> <u>;<GRA>;<CAP>;IGNORE
-<U1EE4> <ubelowdot>;<BAS>;<CAP>;IGNORE
-<U_> <ubelowdot>;<BAS>;<CAP>;IGNORE
-<U_'> <ubelowdot>;<ACA>;<CAP>;IGNORE
-<U_2'> <ubelowdot>;<ACA>;<CAP>;IGNORE
-<U_`> <ubelowdot>;<GRA>;<CAP>;IGNORE
-<U_2`> <ubelowdot>;<GRA>;<CAP>;IGNORE
+collating-symbol <ch-digraph>
+collating-element <ch> from "ch"
+collating-element <cH> from "cH"
+collating-element <Ch> from "Ch"
+collating-element <CH> from "CH"
+collating-symbol <gb-digraph>
+collating-element <gb> from "gb"
+collating-element <gB> from "gB"
+collating-element <Gb> from "Gb"
+collating-element <GB> from "GB"
+collating-symbol <gh-digraph>
+collating-element <gh> from "gh"
+collating-element <gH> from "gH"
+collating-element <Gh> from "Gh"
+collating-element <GH> from "GH"
+collating-symbol <gw-digraph>
+collating-element <gw> from "gw"
+collating-element <gW> from "gW"
+collating-element <Gw> from "Gw"
+collating-element <GW> from "GW"
+collating-symbol <kp-digraph>
+collating-element <kp> from "kp"
+collating-element <kP> from "kP"
+collating-element <Kp> from "Kp"
+collating-element <KP> from "KP"
+collating-symbol <kw-digraph>
+collating-element <kw> from "kw"
+collating-element <kW> from "kW"
+collating-element <Kw> from "Kw"
+collating-element <KW> from "KW"
+collating-symbol <nw-digraph>
+collating-element <nw> from "nw"
+collating-element <nW> from "nW"
+collating-element <Nw> from "Nw"
+collating-element <NW> from "NW"
+collating-symbol <ny-digraph>
+collating-element <ny> from "ny"
+collating-element <nY> from "nY"
+collating-element <Ny> from "Ny"
+collating-element <NY> from "NY"
+collating-symbol <i-dot-below>
+collating-element <i-dot-below-combining> from "i<U0323>"
+collating-element <I-dot-below-combining> from "I<U0323>"
+collating-symbol <o-dot-below>
+collating-element <o-dot-below-combining> from "o<U0323>"
+collating-element <O-dot-below-combining> from "O<U0323>"
+collating-symbol <sh-digraph>
+collating-element <sh> from "sh"
+collating-element <sH> from "sH"
+collating-element <Sh> from "Sh"
+collating-element <SH> from "SH"
+collating-symbol <u-dot-below>
+collating-element <u-dot-below-combining> from "u<U0323>"
+collating-element <U-dot-below-combining> from "U<U0323>"
+collating-symbol <n-dot-above>
+collating-element <n-dot-above-combining> from "n<U0307>"
+collating-element <N-dot-above-combining> from "N<U0307>"
+
+reorder-after <AFTER-B>
+<ch-digraph>
+reorder-after <AFTER-G>
+<gb-digraph>
+<gh-digraph>
+<gw-digraph>
+reorder-after <AFTER-I>
+<i-dot-below>
+reorder-after <AFTER-K>
+<kp-digraph>
+<kw-digraph>
+reorder-after <AFTER-N>
+<n-dot-above>
+<nw-digraph>
+<ny-digraph>
+reorder-after <AFTER-O>
+<o-dot-below>
+reorder-after <AFTER-S>
+<sh-digraph>
+reorder-after <AFTER-U>
+<u-dot-below>
+
+<ch> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<cH> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ch> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<CH> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<gb> <gb-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<gB> <gb-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Gb> <gb-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<GB> <gb-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<gh> <gh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<gH> <gh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Gh> <gh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<GH> <gh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<gw> <gw-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<gW> <gw-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Gw> <gw-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<GW> <gw-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U1ECB> <i-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % ị
+<i-dot-below-combining> <i-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1ECA> <i-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % Ị
+<I-dot-below-combining> <i-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+<kp> <kp-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<kP> <kp-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Kp> <kp-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<KP> <kp-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<kw> <kw-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<kW> <kw-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Kw> <kw-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<KW> <kw-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U1E45> <n-dot-above>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % ṅ
+<n-dot-above-combining> <n-dot-above>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1E44> <n-dot-above>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % Ṅ
+<N-dot-above-combining> <n-dot-above>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+<nw> <nw-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nW> <nw-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Nw> <nw-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<NW> <nw-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ny> <ny-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nY> <ny-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ny> <ny-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<NY> <ny-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U1ECD> <o-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % ọ
+<o-dot-below-combining> <o-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1ECC> <o-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % Ọ
+<O-dot-below-combining> <o-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+<sh> <sh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sH> <sh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Sh> <sh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<SH> <sh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U1EE5> <u-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % ụ
+<u-dot-below-combining> <u-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1EE4> <u-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % Ụ
+<U-dot-below-combining> <u-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
reorder-end
diff --git a/localedata/locales/ik_CA b/localedata/locales/ik_CA
index f672488016..922bb87241 100644
--- a/localedata/locales/ik_CA
+++ b/localedata/locales/ik_CA
@@ -46,106 +46,85 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-
% Inupiaq uses the following extra letters:
% gdotabove, ldotbelow, lbarred, lbarreddotbelow (not in unicode,
% has to be composed as lbarred+composingdotbelow), eng, ntilde
%
% sorting order from
-% http://www.nsbsd.org/anep/public/index.cfm/17,459,html
-% however I'm not
+% http://www.nsbsd.org/anep/public/index.cfm/17,459,html (not available anymore).
+% But now Wikipedia has something:
+% https://en.wikipedia.org/wiki/Inupiaq_language#Writing_systems
+%
+% However I'm not
% sure if all letters are to be considered as separate items for
% sorting purposes...
%
-% order: a, [b], [c], ch, [d], [e], [f], g, g., h, i, [j], k, l,
-% l/, l-., l/-., m, n, n?, ng, [o], p, q, r, s, sr, t, u, v, [w],
-% [x], y, [z]
+% order:
+% a [b] [c] ch [d] [e] [f] g ġ h i [j] k l ḷ ł ł̣ m n ñ ŋ [o] p q r s sr t u v [w] [x] y [z]
+%
+% There is no collation information for Inupiaq in CLDR.
+%
+% We implement the following rules:
copy "iso14651_t1"
-collating-symbol <c-h-ik>
-collating-element <C-H> from "<U0043><U0048>"
-collating-element <c-h> from "<U0063><U0068>"
-collating-element <C-h> from "<U0043><U0068>"
-collating-element <c-H> from "<U0063><U0048>"
-collating-symbol <s-r-ik>
-collating-element <S-R> from "<U0053><U0052>"
-collating-element <s-r> from "<U0073><U0072>"
-collating-element <S-r> from "<U0053><U0072>"
-collating-element <s-R> from "<U0073><U0052>"
-collating-symbol <l-dotbelow-ik>
-collating-element <L-dot> from "<U004C><U0323>"
-collating-element <l-dot> from "<U006C><U0323>"
-collating-symbol <lbar-dotbelow-ik>
-collating-element <Lbar-dot> from "<U0141><U0323>"
-collating-element <lbar-dot> from "<U0142><U0323>"
-collating-symbol <gdot>
-collating-symbol <lbar>
-collating-symbol <ntilde>
+collating-symbol <ch-digraph>
+collating-element <CH> from "CH"
+collating-element <ch> from "ch"
+collating-element <Ch> from "Ch"
+collating-element <cH> from "cH"
+collating-symbol <g-dot-above>
+collating-symbol <l-stroke>
+collating-symbol <l-dot-below>
+collating-symbol <l-dot-below-macron>
+collating-symbol <n-tilde>
collating-symbol <eng>
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <c>
-<c-h-ik>
-reorder-after <g>
-<gdot>
-reorder-after <l>
-<lbar>
-<l-dotbelow-ik>
-<lbar-dotbelow-ik>
-reorder-after <n>
-<ntilde>
+collating-symbol <sr-digraph>
+collating-element <SR> from "SR"
+collating-element <sr> from "sr"
+collating-element <Sr> from "Sr"
+collating-element <sR> from "sR"
+collating-element <L-combining-dot-below> from "L<U0323>" % Ḷ
+collating-element <l-combining-dot-below> from "l<U0323>" % ḷ
+collating-element <L-stroke-combining-dot-below> from "<U0141><U0323>" % Ł̣
+collating-element <l-stroke-combining-dot-below> from "<U0142><U0323>" % ł̣
+
+reorder-after <AFTER-C>
+<ch-digraph>
+reorder-after <AFTER-G>
+<g-dot-above>
+reorder-after <AFTER-L>
+<l-dot-below>
+<l-stroke>
+<l-stroke-dot-below>
+reorder-after <AFTER-N>
+<n-tilde>
<eng>
-reorder-after <s>
-<s-r-ik>
-
-reorder-after <U0063>
-<c-h> <c-h-ik>;<PCT>;<MIN>;IGNORE
-<c-H> <c-h-ik>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0043>
-<C-H> <c-h-ik>;<PCT>;<CAP>;IGNORE
-<C-h> <c-h-ik>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0067>
-<U0121> <gdot>;<PCT>;<MIN>;IGNORE
-reorder-after <U0047>
-<U0120> <gdot>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006C>
-<U0142> <lbar>;<BAS>;<MIN>;IGNORE
-<l-dot> <l-dotbelow-ik>;<PCT>;<MIN>;IGNORE
-<U1E37> <l-dotbelow-ik>;<PCT>;<MIN>;IGNORE
-<U1E39> <l-dotbelow-ik>;<PCT>;<MIN>;IGNORE
-<lbar-dot> <lbar-dotbelow-ik>;<PCT>;<MIN>;IGNORE
-reorder-after <U004C>
-<U0141> <lbar>;<BAS>;<CAP>;IGNORE
-<L-dot> <l-dotbelow-ik>;<PCT>;<CAP>;IGNORE
-<U1E36> <l-dotbelow-ik>;<PCT>;<CAP>;IGNORE
-<U1E38> <l-dotbelow-ik>;<PCT>;<CAP>;IGNORE
-<Lbar-dot> <lbar-dotbelow-ik>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U00F1> <ntilde>;<TIL>;<MIN>;IGNORE
-<U014B> <eng>;<PCL>;<MIN>;IGNORE
-reorder-after <U004E>
-<U00D1> <ntilde>;<TIL>;<CAP>;IGNORE
-<U014A> <eng>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<s-r> <s-r-ik>;<PCT>;<MIN>;IGNORE
-<s-R> <s-r-ik>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0053>
-<S-R> <s-r-ik>;<PCT>;<CAP>;IGNORE
-<S-r> <s-r-ik>;<PCT>;<CAP-MIN>;IGNORE
-
+reorder-after <AFTER-S>
+<sr-digraph>
+
+<ch> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<cH> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ch> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<CH> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U0121> <g-dot-above>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ġ
+<U0120> <g-dot-above>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ġ
+<U0142> <l-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ł
+<U0141> <l-stroke>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ł
+<U1E37> <l-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ḷ
+<l-combining-dot-below> <l-dot-below>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U1E36> <l-dot-below>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ḷ
+<L-combining-dot-below> <l-dot-below>;"<BASE><VRNT1>";"<CAP><CAP>";IGNORE
+<l-stroke-combining-dot-below> <l-stroke-dot-below>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<L-stroke-combining-dot-below> <l-stroke-dot-below>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U00F1> <n-tilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <n-tilde>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ñ
+<U014B> <eng>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ŋ
+<U014A> <eng>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ŋ
+<sr> <sr-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sR> <sr-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Sr> <sr-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<SR> <sr-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/is_IS b/localedata/locales/is_IS
index d088efcdac..8d59b468d6 100644
--- a/localedata/locales/is_IS
+++ b/localedata/locales/is_IS
@@ -88,22 +88,22 @@ collating-symbol <o-diaresis>
collating-symbol <o-stroke>
collating-symbol <a-ring>
-reorder-after <a>
+reorder-after <BEFORE-B>
<a-acute>
-reorder-after <d>
+reorder-after <AFTER-D>
<d-stroke>
<eth>
-reorder-after <e>
+reorder-after <BEFORE-F>
<e-acute>
-reorder-after <i>
+reorder-after <BEFORE-J>
<i-acute>
-reorder-after <o>
+reorder-after <BEFORE-P>
<o-acute>
-reorder-after <u>
+reorder-after <BEFORE-V>
<u-acute>
-reorder-after <y>
+reorder-after <BEFORE-Z>
<y-acute>
-reorder-after <zh>
+reorder-after <AFTER-EZH>
<thorn>
<ae-ligature>
<a-diaresis>
@@ -111,34 +111,34 @@ reorder-after <zh>
<o-stroke>
<a-ring>
-<U00E1> <a-acute>;<ACA>;<MIN>;IGNORE % á
-<U00C1> <a-acute>;<ACA>;<CAP>;IGNORE % Á
-<U0111> <d-stroke>;<OBL>;<MIN>;IGNORE % đ
-<U0110> <d-stroke>;<OBL>;<CAP>;IGNORE % Đ
-<U00F0> <eth>;<PCL>;<MIN>;IGNORE % ð
-<U00D0> <eth>;<PCL>;<CAP>;IGNORE % Ð
-<U00E9> <e-acute>;<ACA>;<MIN>;IGNORE % é
-<U00C9> <e-acute>;<ACA>;<CAP>;IGNORE % É
-<U00ED> <i-acute>;<ACA>;<MIN>;IGNORE % í
-<U00CD> <i-acute>;<ACA>;<CAP>;IGNORE % Í
-<U00F3> <o-acute>;<ACA>;<MIN>;IGNORE % ó
-<U00D3> <o-acute>;<ACA>;<CAP>;IGNORE % Ó
-<U00FA> <u-acute>;<ACA>;<MIN>;IGNORE % ú
-<U00DA> <u-acute>;<ACA>;<CAP>;IGNORE % Ú
-<U00FD> <y-acute>;<ACA>;<MIN>;IGNORE % ý
-<U00DD> <y-acute>;<ACA>;<CAP>;IGNORE % Ý
-<U00FE> <thorn>;<BAS>;<MIN>;IGNORE % þ
-<U00DE> <thorn>;<BAS>;<CAP>;IGNORE % Þ
-<U00E6> <ae-ligature>;"<LIG><LIG>";"<MIN><MIN>";IGNORE % æ
-<U00C6> <ae-ligature>;"<LIG><LIG>";"<CAP><CAP>";IGNORE % Æ
-<U00E4> <a-diaresis>;<REU>;<MIN>;IGNORE % ä
-<U00C4> <a-diaresis>;<REU>;<CAP>;IGNORE % Ä
-<U00F6> <o-diaresis>;<REU>;<MIN>;IGNORE % ö
-<U00D6> <o-diaresis>;<REU>;<CAP>;IGNORE % Ö
-<U00F8> <o-stroke>;<OBL>;<MIN>;IGNORE % ø
-<U00D8> <o-stroke>;<OBL>;<CAP>;IGNORE % Ø
-<U00E5> <a-ring>;<RNE>;<MIN>;IGNORE % å
-<U00C5> <a-ring>;<RNE>;<CAP>;IGNORE % Å
+<U00E1> <a-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % á
+<U00C1> <a-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Á
+<U0111> <d-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % đ
+<U0110> <d-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Đ
+<U00F0> <eth>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ð
+<U00D0> <eth>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ð
+<U00E9> <e-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % é
+<U00C9> <e-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % É
+<U00ED> <i-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % í
+<U00CD> <i-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Í
+<U00F3> <o-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ó
+<U00D3> <o-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ó
+<U00FA> <u-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ú
+<U00DA> <u-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ú
+<U00FD> <y-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ý
+<U00DD> <y-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ý
+<U00FE> <thorn>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % þ
+<U00DE> <thorn>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Þ
+<U00E6> <ae-ligature>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % æ
+<U00C6> <ae-ligature>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Æ
+<U00E4> <a-diaresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ä
+<U00C4> <a-diaresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ä
+<U00F6> <o-diaresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ö
+<U00D6> <o-diaresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ö
+<U00F8> <o-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ø
+<U00D8> <o-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ø
+<U00E5> <a-ring>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % å
+<U00C5> <a-ring>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Å
reorder-end
diff --git a/localedata/locales/iso14651_t1_common b/localedata/locales/iso14651_t1_common
index a049c2fec5..f444933d3b 100644
--- a/localedata/locales/iso14651_t1_common
+++ b/localedata/locales/iso14651_t1_common
@@ -85610,4 +85610,3 @@ END LC_COLLATE
% Decomment the line above to create a 14652-style
% LC_COLLATE definition.
-
diff --git a/localedata/locales/iso14651_t1_pinyin b/localedata/locales/iso14651_t1_pinyin
index 9308b5b2a7..adebf09392 100644
--- a/localedata/locales/iso14651_t1_pinyin
+++ b/localedata/locales/iso14651_t1_pinyin
@@ -9,9 +9,8 @@ LC_COLLATE
copy "iso14651_t1_common"
-script <HAN>
+reorder-after <BEFORE-LATIN>
-order_start <HAN>;forward;forward;forward;forward,position
<U5416> <U5416>;IGNORE;IGNORE;IGNORE #吖104
<U814C> <U814C>;IGNORE;IGNORE;IGNORE #腌185
<U9312> <U9312>;IGNORE;IGNORE;IGNORE #錒0
@@ -25508,7 +25507,7 @@ order_start <HAN>;forward;forward;forward;forward,position
<U8444> <U8444>;IGNORE;IGNORE;IGNORE #葄0
<U888F> <U888F>;IGNORE;IGNORE;IGNORE #袏0
<U963C> <U963C>;IGNORE;IGNORE;IGNORE #阼0
-#
-order_end
-#
+
+reorder-end
+
END LC_COLLATE
diff --git a/localedata/locales/kk_KZ b/localedata/locales/kk_KZ
index cd23e6eda4..c29c84b46e 100644
--- a/localedata/locales/kk_KZ
+++ b/localedata/locales/kk_KZ
@@ -51,103 +51,45 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
+% CLDR collation rules for Kazakh:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/kk.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% &Е<ё<<<Ё
+% &Ұ<ү<<<Ү
+% &[before 1]ь<і<<<І
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/kk.xml)
+%
+% <exemplarCharacters type="index">[А Ә Б В Г Ғ Д Е Ё Ж З И Й К Қ Л М Н Ң О Ө П Р С Т У Ұ Ү Ф Х Һ Ц Ч Ш Щ Ъ Ы І Ь Э Ю Я]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-% iso14651_t1 is missing Ukrainian ghe
-collating-symbol <UKR-GHE>
-collating-symbol <CYR-SCHWA>
-collating-symbol <CYR-GHE-WITH-STROKE>
-collating-symbol <CYR-KA-WITH-DESCENDER>
-collating-symbol <CYR-EN-WITH-DESCENDER>
-collating-symbol <CYR-BARRED-O>
-collating-symbol <CYR-STRAIGHT-U-WITH-STROKE>
-collating-symbol <CYR-STRAIGHT-U>
-collating-symbol <CYR-SHHA>
-collating-symbol <CYR-BEL-UKR-I>
-
-reorder-after <CYR-GZHE>
-<UKR-GHE>
-
-reorder-after <U0453>
-<U0491> <UKR-GHE>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0403>
-<U0490> <UKR-GHE>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-A>
-<CYR-SCHWA>
-
-reorder-after <U0430>
-<U04D9> <CYR-SCHWA>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0410>
-<U04D8> <CYR-SCHWA>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-GHE>
-<CYR-GHE-WITH-STROKE>
-
-reorder-after <U0433>
-<U0493> <CYR-GHE-WITH-STROKE>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0413>
-<U0492> <CYR-GHE-WITH-STROKE>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-KA>
-<CYR-KA-WITH-DESCENDER>
-
-reorder-after <U043A>
-<U049B> <CYR-KA-WITH-DESCENDER>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U041A>
-<U049A> <CYR-KA-WITH-DESCENDER>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-EN>
-<CYR-EN-WITH-DESCENDER>
-
-reorder-after <U043D>
-<U04A3> <CYR-EN-WITH-DESCENDER>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U041D>
-<U04A2> <CYR-EN-WITH-DESCENDER>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-O>
-<CYR-BARRED-O>
-
-reorder-after <U043E>
-<U04E9> <CYR-BARRED-O>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U041E>
-<U04E8> <CYR-BARRED-O>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-OU>
-<CYR-STRAIGHT-U-WITH-STROKE>
-<CYR-STRAIGHT-U>
-
-reorder-after <U0443>
-<U04B1> <CYR-STRAIGHT-U-WITH-STROKE>;<BAS>;<MIN>;IGNORE
-<U04AF> <CYR-STRAIGHT-U>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0423>
-<U04B0> <CYR-STRAIGHT-U-WITH-STROKE>;<BAS>;<CAP>;IGNORE
-<U04AE> <CYR-STRAIGHT-U>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-HA>
-<CYR-SHHA>
-
-reorder-after <U0445>
-<U04BB> <CYR-SHHA>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0425>
-<U04BA> <CYR-SHHA>;<BAS>;<CAP>;IGNORE
-
-reorder-after <CYR-YEROU>
-<CYR-BEL-UKR-I>
-
-reorder-after <U044B>
-<U0456> <CYR-BEL-UKR-I>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U042B>
-<U0406> <CYR-BEL-UKR-I>;<BAS>;<CAP>;IGNORE
+collating-symbol <io>
+collating-symbol <straight-u>
+collating-symbol <i>
+
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<io>
+reorder-after <S04B1> % CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+<straight-u>
+reorder-after <S044B> % CYRILLIC SMALL LETTER YERU
+<i>
+
+<U0451> <io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ё
+<U0401> <io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ё
+<U04AF> <straight-u>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ү
+<U04AE> <straight-u>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ү
+<U0456> <i>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % і
+<U0406> <i>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % І
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/ku_TR b/localedata/locales/ku_TR
index ea957cad68..595cdb14bc 100644
--- a/localedata/locales/ku_TR
+++ b/localedata/locales/ku_TR
@@ -53,58 +53,47 @@ copy "tr_TR"
END LC_CTYPE
LC_COLLATE
+% CLDR has neither collation rules nor index characters for Kurdish yet.
+%
+%% a b c ç d e ê f g h ı i î j k l m n o p q r s ş t u û v w x y z
copy "iso14651_t1"
-%% a b c c, d e e> f g h i i> j k l m n o p q r s s, t u u> v w x y z
-
-collating-symbol <c,>
-collating-symbol <e/>>
-collating-symbol <i.>
-collating-symbol <i/>>
-collating-symbol <s,>
-collating-symbol <u/>>
-
-reorder-after <c>
-<c,>
-reorder-after <e>
-<e/>>
-reorder-after <h>
-<i>
-<i.>
-<i/>>
-reorder-after <s>
-<s,>
-reorder-after <u>
-<u/>>
-
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0065>
-<U00EA> <e/>>;<CIR>;<MIN>;IGNORE
-reorder-after <U0045>
-<U00CA> <e/>>;<CIR>;<CAP>;IGNORE
-
-reorder-after <U0068>
-<U0131> <i>;<BAS>;<MIN>;IGNORE
-<U0069> <i.>;<PCT>;<MIN>;IGNORE
-<U00EE> <i/>>;<CIR>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0049> <i>;<BAS>;<CAP>;IGNORE
-<U0130> <i.>;<PCT>;<CAP>;IGNORE
-<U00CE> <i/>>;<CIR>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FB> <u/>>;<CIR>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DB> <u/>>;<CIR>;<CAP>;IGNORE
+
+collating-symbol <c-cedilla>
+collating-symbol <e-circumflex>
+collating-symbol <i-dotless>
+collating-symbol <i-dot>
+collating-symbol <i-circumflex>
+collating-symbol <s-cedilla>
+collating-symbol <u-circumflex>
+
+reorder-after <AFTER-C>
+<c-cedilla>
+reorder-after <AFTER-E>
+<e-circumflex>
+reorder-after <AFTER-H>
+<i-dotless>
+<i-dot>
+<i-circumflex>
+reorder-after <AFTER-S>
+<s-cedilla>
+reorder-after <AFTER-U>
+<u-circumflex>
+
+<U00E7> <c-cedilla>;<BASE>;<MIN>;IGNORE % ç
+<U00C7> <c-cedilla>;<BASE>;<CAP>;IGNORE % Ç
+<U00EA> <e-circumflex>;<BASE>;<MIN>;IGNORE % ê
+<U00CA> <e-circumflex>;<BASE>;<CAP>;IGNORE % Ê
+<U0131> <i-dotless>;<BASE>;<MIN>;IGNORE % ı
+<U0069> <i-dot>;<BASE>;<MIN>;IGNORE % i
+<U00EE> <i-circumflex>;<BASE>;<MIN>;IGNORE % î
+<U0049> <i-dotless>;<BASE>;<CAP>;IGNORE % I
+<U0130> <i-dot>;<BASE>;<CAP>;IGNORE % İ
+<U00CE> <i-circumflex>;<BASE>;<CAP>;IGNORE % Î
+<U015F> <s-cedilla>;<BASE>;<MIN>;IGNORE % ş
+<U015E> <s-cedilla>;<BASE>;<CAP>;IGNORE % Ş
+<U00FB> <u-circumflex>;<BASE>;<MIN>;IGNORE % û
+<U00DB> <u-circumflex>;<BASE>;<CAP>;IGNORE % Û
reorder-end
diff --git a/localedata/locales/ky_KG b/localedata/locales/ky_KG
index 8a56769816..871b8a818b 100644
--- a/localedata/locales/ky_KG
+++ b/localedata/locales/ky_KG
@@ -39,44 +39,39 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-
-% The kyrgyz cyrillic alphabet is:
-% a=, b=, v=, g=, d=, e=, io, z%, z=, i=, j=, k=, l=, m=, n=, n,=,
-% o=, o-=, p=, r=, s=, t=, u=, u'=, f=, h=, c=, c%, s%, sc, =', y=, %',
-% je, ju, ja
+% CLDR collation rules for Kyrgyz:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ky.xml)
+%
+% <collations>
+% <collation type="standard">
+% <!-- Mostly standard Cyrillic sort order,
+% see http://en.wikipedia.org/wiki/Kyrgyz_alphabets#Correspondence_chart
+% Tilek Mamutov (Google) confirms that ё and й should sort as base letters,
+% but for string search ё should only be secondary-different from е. -->
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% &е<ё<<<Ё
+% ]]></cr>
+% </collation>
+% </collations>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ky.xml)
+%
+% <exemplarCharacters type="index">[А Б В Г Д Е Ё Ж З И Й К Л М Н Ң О Ө П Р С Т У Ү Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я]</exemplarCharacters>
%
-% special letters are:
-% n,=: <U04A2>, <U04A3>
-% o-=: <U04E8>, <U04E9>
-% u'=: <U04AE>, <U04AF>
copy "iso14651_t1"
-collating-symbol <o-=>
-collating-symbol <u'=>
-collating-symbol <n,=>
-
-reorder-after <CYR-EN>
-<n,=>
-reorder-after <CYR-O>
-<o-=>
-reorder-after <CYR-OUBRE>
-<u'=>
-
-reorder-after <U043D>
-<U04A3> <n,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041D>
-<U04A2> <n,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043E>
-<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041E>
-<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
+collating-symbol <io>
+
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<io>
+
+<U0451> <io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ё
+<U0401> <io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ё
reorder-end
diff --git a/localedata/locales/ln_CD b/localedata/locales/ln_CD
index 00fff2ddca..ed6404a1e5 100644
--- a/localedata/locales/ln_CD
+++ b/localedata/locales/ln_CD
@@ -43,30 +43,37 @@ translit_end
END LC_CTYPE
LC_COLLATE
-% Copy the template from ISO/IEC 14651 i.e.
-% use the rules there when making ordered lists of words.
-% add special characters for Lingala
-% a b c d e ɛ f g h i j k l m o ɔ p (q) (r) s t u v w (x) y z
-% mb mp nd ng nk ns nt nz are not ordered as digraph, use ln_CD@morph
-% should mf, mv, kp, kw, gb, gw, ngb, ngw be included?
+% CLDR collation rules for Lingala:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ln.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% &E<ɛ<<<Ɛ
+% &O<<ɔ<<<Ɔ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ln.xml)
+%
+% <exemplarCharacters type="index">[A B C D E Ɛ F G {Gb} H I K L M {Mb} {Mp} N {Nd} {Ng} {Nk} {Ns} {Nt} {Ny} {Nz} O Ɔ P R S T U V W Y Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <opene>
-collating-symbol <openo>
-
-reorder-after <e>
-<opene>
-reorder-after <o>
-<openo>
-
-reorder-after <U0065>
-<U025B> <opene>;<BAS>;<MIN>;IGNORE % ɛ
-reorder-after <U0045>
-<U0190> <opene>;<BAS>;<CAP>;IGNORE % Ɛ
-reorder-after <U006F>
-<U0254> <openo>;<BAS>;<MIN>;IGNORE % ɔ
-reorder-after <U004F>
-<U0186> <openo>;<BAS>;<CAP>;IGNORE % Ɔ
+collating-symbol <open-e>
+collating-symbol <open-o>
+
+reorder-after <AFTER-E>
+<open-e>
+reorder-after <AFTER-O>
+<open-o>
+
+<U025B> <open-e>;"<BASE>";"<MIN>";IGNORE % ɛ
+<U0190> <open-e>;"<BASE>";"<CAP>";IGNORE % Ɛ
+<U0254> <open-o>;"<BASE>";"<MIN>";IGNORE % ɔ
+<U0186> <open-o>;"<BASE>";"<CAP>";IGNORE % Ɔ
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/lt_LT b/localedata/locales/lt_LT
index c935fcf75e..6497ad739f 100644
--- a/localedata/locales/lt_LT
+++ b/localedata/locales/lt_LT
@@ -117,42 +117,42 @@ collating-symbol <u-ogonek>
collating-symbol <u-macron>
collating-symbol <z-caron>
-reorder-after <a>
+reorder-after <AFTER-A>
<a-ogonek>
-reorder-after <c>
+reorder-after <AFTER-C>
<c-caron>
-reorder-after <e>
+reorder-after <AFTER-E>
<e-ogonek>
<e-dot-above>
-reorder-after <i>
+reorder-after <AFTER-I>
<i-ogonek>
-<y>
-reorder-after <s>
+<S0079>
+reorder-after <AFTER-S>
<s-caron>
-reorder-after <u>
+reorder-after <AFTER-U>
<u-ogonek>
<u-macron>
-reorder-after <z>
+reorder-after <AFTER-Z>
<z-caron>
-<U0105> <a-ogonek>;<BAS>;<MIN>;IGNORE % ą
-<U0104> <a-ogonek>;<BAS>;<CAP>;IGNORE % Ą
-<U010D> <c-caron>;<BAS>;<MIN>;IGNORE % č
-<U010C> <c-caron>;<BAS>;<CAP>;IGNORE % Č
-<U0119> <e-ogonek>;<BAS>;<MIN>;IGNORE % ę
-<U0118> <e-ogonek>;<BAS>;<CAP>;IGNORE % Ę
-<U0117> <e-dot-above>;<BAS>;<MIN>;IGNORE % ė
-<U0116> <e-dot-above>;<BAS>;<CAP>;IGNORE % Ė
-<U012F> <i-ogonek>;<BAS>;<MIN>;IGNORE % į
-<U012E> <i-ogonek>;<BAS>;<CAP>;IGNORE % Į
-<U0161> <s-caron>;<BAS>;<MIN>;IGNORE % š
-<U0160> <s-caron>;<BAS>;<CAP>;IGNORE % Š
-<U0173> <u-ogonek>;<BAS>;<MIN>;IGNORE % ų
-<U0172> <u-ogonek>;<BAS>;<CAP>;IGNORE % Ų
-<U016B> <u-macron>;<BAS>;<MIN>;IGNORE % ū
-<U016A> <u-macron>;<BAS>;<CAP>;IGNORE % Ū
-<U017E> <z-caron>;<BAS>;<MIN>;IGNORE % ž
-<U017D> <z-caron>;<BAS>;<CAP>;IGNORE % Ž
+<U0105> <a-ogonek>;<BASE>;<MIN>;IGNORE % ą
+<U0104> <a-ogonek>;<BASE>;<CAP>;IGNORE % Ą
+<U010D> <c-caron>;<BASE>;<MIN>;IGNORE % č
+<U010C> <c-caron>;<BASE>;<CAP>;IGNORE % Č
+<U0119> <e-ogonek>;<BASE>;<MIN>;IGNORE % ę
+<U0118> <e-ogonek>;<BASE>;<CAP>;IGNORE % Ę
+<U0117> <e-dot-above>;<BASE>;<MIN>;IGNORE % ė
+<U0116> <e-dot-above>;<BASE>;<CAP>;IGNORE % Ė
+<U012F> <i-ogonek>;<BASE>;<MIN>;IGNORE % į
+<U012E> <i-ogonek>;<BASE>;<CAP>;IGNORE % Į
+<U0161> <s-caron>;<BASE>;<MIN>;IGNORE % š
+<U0160> <s-caron>;<BASE>;<CAP>;IGNORE % Š
+<U0173> <u-ogonek>;<BASE>;<MIN>;IGNORE % ų
+<U0172> <u-ogonek>;<BASE>;<CAP>;IGNORE % Ų
+<U016B> <u-macron>;<BASE>;<MIN>;IGNORE % ū
+<U016A> <u-macron>;<BASE>;<CAP>;IGNORE % Ū
+<U017E> <z-caron>;<BASE>;<MIN>;IGNORE % ž
+<U017D> <z-caron>;<BASE>;<CAP>;IGNORE % Ž
reorder-end
diff --git a/localedata/locales/lv_LV b/localedata/locales/lv_LV
index 28e51eb318..a20cbdde46 100644
--- a/localedata/locales/lv_LV
+++ b/localedata/locales/lv_LV
@@ -56,6 +56,21 @@ LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Latvian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/lv.xml)
+%
+% &[before 1]D<č<<<Č
+% &[before 1]H<ģ<<<Ģ
+% &I<<y<<<Y
+% &[before 1]L<ķ<<<Ķ
+% &[before 1]M<ļ<<<Ļ
+% &[before 1]O<ņ<<<Ņ
+% &[before 1]S<ŗ<<<Ŗ
+% &[before 1]T<š<<<Š
+% &[before 1]Ʒ<ž<<<Ž
+%
+% The following rules implement the same order for glibc.
+
collating-symbol <c-caron>
collating-symbol <g-cedilla>
collating-symbol <k-cedilla>
@@ -65,41 +80,41 @@ collating-symbol <r-cedilla>
collating-symbol <s-caron>
collating-symbol <z-caron>
-reorder-after <c>
+reorder-after <BEFORE-D>
<c-caron>
-reorder-after <g>
+reorder-after <BEFORE-H>
<g-cedilla>
-reorder-after <k>
+reorder-after <BEFORE-L>
<k-cedilla>
-reorder-after <l>
+reorder-after <BEFORE-M>
<l-cedilla>
-reorder-after <n>
+reorder-after <BEFORE-O>
<n-cedilla>
-reorder-after <r>
+reorder-after <BEFORE-S>
<r-cedilla>
-reorder-after <s>
+reorder-after <BEFORE-T>
<s-caron>
-reorder-after <z>
+reorder-after <BEFORE-EZH>
<z-caron>
-<U010D> <c-caron>;<BAS>;<MIN>;IGNORE % č
-<U010C> <c-caron>;<BAS>;<CAP>;IGNORE % Č
-<U0123> <g-cedilla>;<BAS>;<MIN>;IGNORE % ģ
-<U0122> <g-cedilla>;<BAS>;<CAP>;IGNORE % Ģ
-<U0079> <i>;<PCL>;<MIN>;IGNORE % y
-<U0059> <i>;<PCL>;<CAP>;IGNORE % Y
-<U0137> <k-cedilla>;<BAS>;<MIN>;IGNORE % ķ
-<U0136> <k-cedilla>;<BAS>;<CAP>;IGNORE % Ķ
-<U013C> <l-cedilla>;<BAS>;<MIN>;IGNORE % ļ
-<U013B> <l-cedilla>;<BAS>;<CAP>;IGNORE % Ļ
-<U0146> <n-cedilla>;<BAS>;<MIN>;IGNORE % ņ
-<U0145> <n-cedilla>;<BAS>;<CAP>;IGNORE % Ņ
-<U0157> <r-cedilla>;<BAS>;<MIN>;IGNORE % ŗ
-<U0156> <r-cedilla>;<BAS>;<CAP>;IGNORE % Ŗ
-<U0161> <s-caron>;<BAS>;<MIN>;IGNORE % š
-<U0160> <s-caron>;<BAS>;<CAP>;IGNORE % Š
-<U017E> <z-caron>;<BAS>;<MIN>;IGNORE % ž
-<U017D> <z-caron>;<BAS>;<CAP>;IGNORE % Ž
+<U010D> <c-caron>;<BASE>;<MIN>;IGNORE % č
+<U010C> <c-caron>;<BASE>;<CAP>;IGNORE % Č
+<U0123> <g-cedilla>;<BASE>;<MIN>;IGNORE % ģ
+<U0122> <g-cedilla>;<BASE>;<CAP>;IGNORE % Ģ
+<U0079> <S0069>;<LOWLINE>;<MIN>;IGNORE % y
+<U0059> <S0069>;<LOWLINE>;<CAP>;IGNORE % Y
+<U0137> <k-cedilla>;<BASE>;<MIN>;IGNORE % ķ
+<U0136> <k-cedilla>;<BASE>;<CAP>;IGNORE % Ķ
+<U013C> <l-cedilla>;<BASE>;<MIN>;IGNORE % ļ
+<U013B> <l-cedilla>;<BASE>;<CAP>;IGNORE % Ļ
+<U0146> <n-cedilla>;<BASE>;<MIN>;IGNORE % ņ
+<U0145> <n-cedilla>;<BASE>;<CAP>;IGNORE % Ņ
+<U0157> <r-cedilla>;<BASE>;<MIN>;IGNORE % ŗ
+<U0156> <r-cedilla>;<BASE>;<CAP>;IGNORE % Ŗ
+<U0161> <s-caron>;<BASE>;<MIN>;IGNORE % š
+<U0160> <s-caron>;<BASE>;<CAP>;IGNORE % Š
+<U017E> <z-caron>;<BASE>;<MIN>;IGNORE % ž
+<U017D> <z-caron>;<BASE>;<CAP>;IGNORE % Ž
reorder-end
diff --git a/localedata/locales/mi_NZ b/localedata/locales/mi_NZ
index 9132fce81c..782f02359c 100644
--- a/localedata/locales/mi_NZ
+++ b/localedata/locales/mi_NZ
@@ -53,43 +53,30 @@ copy "iso14651_t1"
%% a b c d e f g h i j k l m n ng o p q r s t u v w wh x y z
-collating-symbol <n-g-mi>
+collating-symbol <ng-digraph>
collating-element <N-G> from "<U004E><U0047>"
collating-element <n-g> from "<U006E><U0067>"
collating-element <N-g> from "<U004E><U0067>"
collating-element <n-G> from "<U006E><U0047>"
-collating-symbol <w-h-mi>
+collating-symbol <wh-digraph>
collating-element <W-H> from "<U0057><U0048>"
collating-element <w-h> from "<U0077><U0068>"
collating-element <W-h> from "<U0057><U0068>"
collating-element <w-H> from "<U0077><U0048>"
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <n>
-<n-g-mi>
-reorder-after <w>
-<w-h-mi>
-
-reorder-after <U006E>
-<n-g> <n-g-mi>;<PCT>;<MIN>;IGNORE
-<n-G> <n-g-mi>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004E>
-<N-G> <n-g-mi>;<PCT>;<CAP>;IGNORE
-<N-g> <n-g-mi>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-after <U0077>
-<w-h> <w-h-mi>;<PCT>;<MIN>;IGNORE
-<w-H> <w-h-mi>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0057>
-<W-H> <w-h-mi>;<PCT>;<CAP>;IGNORE
-<W-h> <w-h-mi>;<PCT>;<CAP-MIN>;IGNORE
+reorder-after <AFTER-N>
+<ng-digraph>
+reorder-after <AFTER-W>
+<wh-digraph>
+
+<n-g> <ng-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<n-G> <ng-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<N-g> <ng-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<N-G> <ng-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<w-h> <wh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<w-H> <wh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<W-h> <wh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<W-H> <wh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/ml_IN b/localedata/locales/ml_IN
index 32b467f96d..2e6cfe52ca 100644
--- a/localedata/locales/ml_IN
+++ b/localedata/locales/ml_IN
@@ -65,8 +65,164 @@ END LC_CTYPE
%
%
LC_COLLATE
-% Copy the template from ISO/IEC 14651
+% CLDR collation rules for Malayalam:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ml.xml)
+%
+% <collation type="standard" references="Sabdatharavali Malayalam Dictionary 23rd Ed. by Sahithya Pravarthaka Co-operative Society Ltd.">
+% <cr><![CDATA[
+% [reorder Mlym Latn Deva Arab Taml Knda Telu Beng Guru Gujr Orya Sinh] # native speaker's special list
+% #
+% # Avagraha and Visarga are primary ignorables.
+% #
+% &ഃ<<ഽ
+% #
+% # Vowel sign AU ( ൌ) and AU length mark ( ൗ) need to differ
+% # only on secondary level, not primary.
+% #
+% &\u0D4C<<\u0D57
+% #
+% # Pre-5.1 Chillus secondary equal to 5.1 chillus.
+% # Chillus primary equal to their consonant_dead form.
+% #
+% &ക്<<ക്\u200D<<<ൿ
+% &ണ്<<ണ്\u200D<<<ൺ
+% &ന്<<ന്\u200D<<<ൻ
+% &ര്<<ര്\u200D<<<ർ
+% &ല്<<ല്\u200D<<<ൽ
+% &ള്<<ള്\u200D<<<ൾ
+% #
+% # Anuswara primary equal to MA_dead.
+% #
+% &മ്<<ം
+% #
+% # /nta/ is sorted as <NA, Virama, RRA>.
+% #
+% &ന്<<<ൻ്
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ml.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[അ ആ ഇ ഈ ഉ ഊ ഋ എ ഏ ഐ ഒ ഓ ഔ ക ഖ ഗ ഘ ങ ച ഛ ജ ഝ ഞ ട ഠ ഡ ഢ ണ ത ഥ ദ ധ ന പ ഫ ബ ഭ മ യ ര ല വ ശ ഷ സ ഹ ള ഴ റ]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
+% &ക്<<ക്\u200D<<<ൿ
+collating-element <e0d15-0d4d> from "<U0D15><U0D4D>"
+collating-symbol <s0d15-0d4d>
+collating-element <e0d15-0d4d-200d> from "<U0D15><U0D4D><U200D>"
+collating-symbol <s0d15-0d4d-200d>
+% &ണ്<<ണ്\u200D<<<ൺ
+collating-element <e0d23-0d4d> from "<U0D23><U0D4D>"
+collating-symbol <s0d23-0d4d>
+collating-element <e0d23-0d4d-200d> from "<U0D23><U0D4D><U200D>"
+collating-symbol <s0d23-0d4d-200d>
+% &ന്<sന്\u200D<<<ൻ
+collating-element <e0d28-0d4d> from "<U0D28><U0D4D>"
+collating-symbol <s0d28-0d4d>
+collating-element <e0d28-0d4d-200d> from "<U0D28><U0D4D><U200D>"
+collating-symbol <s0d28-0d4d-200d>
+% &ര്<<ര്\u200D<<<ർ
+collating-element <e0d30-0d4d> from "<U0D30><U0D4D>"
+collating-symbol <s0d30-0d4d>
+collating-element <e0d30-0d4d-200d> from "<U0D30><U0D4D><U200D>"
+collating-symbol <s0d30-0d4d-200d>
+% &ല്<<ല്\u200D<<<ൽ
+collating-element <e0d32-0d4d> from "<U0D32><U0D4D>"
+collating-symbol <s0d32-0d4d>
+collating-element <e0d32-0d4d-200d> from "<U0D32><U0D4D><U200D>"
+collating-symbol <s0d32-0d4d-200d>
+% &ള്<<ള്\u200D<<<ൾ
+collating-element <e0d33-0d4d> from "<U0D33><U0D4D>"
+collating-symbol <s0d33-0d4d>
+collating-element <e0d33-0d4d-200d> from "<U0D33><U0D4D><U200D>"
+collating-symbol <s0d33-0d4d-200d>
+% #
+% # Anuswara primary equal to MA_dead.
+% #
+% &മ്<<ം
+collating-element <e0d2e-0d4d> from "<U0D2e><U0D4D>"
+collating-symbol <s0d2e-0d4d>
+% #
+% # /nta/ is sorted as <NA, Virama, RRA>.
+% #
+% &ന്<<<ൻ്
+% already defined:
+% collating-element <e0d28-0d4d> from "<U0D28><U0D4D>"
+% already defined:
+% collating-symbol <s0d28-0d4d>
+collating-element <e0d7b-0d4d> from "<U0D7B><U0D4D>"
+collating-symbol <s0d7b-0d4d>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Finished defining collating-elements and collating-symbols
+%
+% One dummy reorder-after statement here to avoid a syntax error
+% because the first rule reordering stuff starts without a reorder-after:
+collating-symbol <dummy>
+reorder-after <AFTER-A>
+<dummy>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% # Avagraha and Visarga are primary ignorables.
+% &ഃ<<ഽ
+<U0D03> IGNORE;<VISARGA>;<MIN>;<U0D03> % MALAYALAM SIGN VISARGA
+<U0D3D> IGNORE;<VRNT1>;<MIN>;<U0D3D> % MALAYALAM SIGN AVAGRAHA
+% # Vowel sign AU ( ൌ) and AU length mark ( ൗ) need to differ
+% # only on secondary level, not primary.
+% #
+% &\u0D4C<<\u0D57
+<U0D4C> <S0D4C>;<BASE>;<MIN>;<U0D4C> % MALAYALAM VOWEL SIGN AU
+<U0D57> <S0D4C>;<VRNT1>;<MIN>;<U0D57> % MALAYALAM AU LENGTH MARK
+% &ക്<<ക്\u200D<<<ൿ
+<e0d15-0d4d> "<S0D15><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0d15-0d4d-200d> "<S0D15><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U0D7F> "<S0D15><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7F>
+% &ണ്<<ണ്\u200D<<<ൺ
+<e0d23-0d4d> "<S0D23><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0d23-0d4d-200d> "<S0D23><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U0D7A> "<S0D23><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7A>
+% &ന്<<ന്\u200D<<<ൻ
+<e0d28-0d4d> "<S0D28><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE % ന്
+<e0d28-0d4d-200d> "<S0D28><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ന്‍
+<U0D7B> "<S0D28><S0D4D>";"<BASE><VRNT1>";"<COMPATCAP><COMPATCAP>";<U0D7B> % ൻ
+% &ര്<<ര്\u200D<<<ർ
+<e0d30-0d4d> "<S0D30><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0d30-0d4d-200d> "<S0D30><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U0D7C> "<S0D30><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7C> % ർ
+% &ല്<<ല്\u200D<<<ൽ
+<e0d32-0d4d> "<S0D32><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0d32-0d4d-200d> "<S0D32><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U0D7D> "<S0D32><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7D>
+% &ള്<<ള്\u200D<<<ൾ
+<e0d33-0d4d> "<S0D33><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<e0d33-0d4d-200d> "<S0D33><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<U0D7E> "<S0D33><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7E>
+% #
+% # Anuswara primary equal to MA_dead.
+% #
+% &മ്<<ം
+<e0d2e-0d4d> "<S0D2E><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";IGNORE % മ്
+<U0D02> "<S0D2E><S0D4D>";"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % MALAYALAM SIGN ANUSVARA
+% #
+% # /nta/ is sorted as <NA, Virama, RRA>.
+% #
+% &ന്<<<ൻ്
+%
+% It looks to me that the above line
+% is a contradiction to the earlier rule: &ന്<<ന്\u200D<<<ൻ
+% I experimented with libicu to see how libicu sorts given these rules.
+% And the end result seems to be the same as if the above two rules had been
+% combined in a rule like this:
+%
+% &ന്<<ന്\u200D<<<ൻ്<<<ൻ
+%
+% So I write the glibc rules to reproduce that behaviour.
+<e0d28-0d4d> "<S0D28><S0D4D>";"<BASE><BASE>";"<MIN><MIN>";<U0D28> % ന്
+<e0d7b-0d4d> "<S0D28><S0D4D>";"<BASE><VRNT1>";"<COMPAT><COMPAT>";<U0D7B> % ൻ്
+
+reorder-end
+
END LC_COLLATE
%
LC_MONETARY
diff --git a/localedata/locales/mn_MN b/localedata/locales/mn_MN
index 30872aea18..fbcf04f908 100644
--- a/localedata/locales/mn_MN
+++ b/localedata/locales/mn_MN
@@ -40,31 +40,17 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
+% CLDR collation rules for Mongolian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/mn.xml)
+%
+% <!-- The root collation order is valid for this language. Just move the native scripts first. -->
+% <collations>
+% <collation type="standard"><cr><![CDATA[
+% Cyrl Mong]
+% ]]></cr></collation>
+% </collations>
+%
copy "iso14651_t1"
-
-% iso14651_t1 is missing Mongolian ue(straight u), oe(barred o)
-% like russian, but with <o-=> (<barred-o>) after <o=> and
-% <u'=>(straight u) after <u=>
-
-collating-symbol <o-=>
-collating-symbol <u'=>
-
-reorder-after <CYR-O>
-<o-=>
-reorder-after <CYR-OUBRE>
-<u'=>
-
-reorder-after <U043E>
-<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041E>
-<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
-
-reorder-end
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/mr_IN b/localedata/locales/mr_IN
index 179ae3c08c..c8d4e4b84e 100644
--- a/localedata/locales/mr_IN
+++ b/localedata/locales/mr_IN
@@ -43,28 +43,82 @@ copy "hi_IN"
END LC_CTYPE
LC_COLLATE
-
-% Copy the template from ISO/IEC 14651
+% CLDR collation rules for Marathi:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/mr.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% [reorder Deva Beng Guru Gujr Orya Taml Telu Knda Mlym Sinh]
+% #
+% # The following tailoring is an adjustment of the
+% # DUCET collation order for ANUSVARA, CANDRABINDU,
+% # and VISARGA. Instead of being sorted with secondary
+% # weights, they are collated on primary level before
+% # the independent vowels. CANDRABINDU is secondary
+% # different from ANUSVARA. This gives a sort order
+% # similar to Hindi.
+% #
+% &ॐ<ं<<ँ<ः
+% #
+% # The following tailoring is an adjustment of the
+% # DUCET collation order for LLA. Instead of being
+% # sorted after LA, LLA is sorted after HA.
+% #
+% &ह<ळ
+% #
+% # KSSA is sorted after LLA.
+% #
+% <क्ष
+% #
+% # JNYA is sorted after KSSA.
+% #
+% <ज्ञ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/mr.xml)
+%
+% <exemplarCharacters type="index">[\u200D ॐ \u0902 ः अ आ इ ई उ ऊ ऋ ऌ ए ऐ ऑ ओ औ क ख ग घ ङ च छ ज झ ञ ट ठ ड ढ ण त थ द ध न प फ ब भ म य र ल व श ष स ह ळ ऽ \u0945 \u094D]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-% customize sorting required for mr_IN
-collating-element <dv_ksha> from "<U0915><U094D><U0937>"
-collating-element <dv_dnya> from "<U091C><U094D><U091E>"
-collating-element <dv_shra> from "<U0936><U094D><U0930>"
+collating-symbol <anusvara>
+collating-symbol <candrabindu>
+collating-symbol <visarga>
+
+collating-element <dv_ksha> from "<U0915><U094D><U0937>" % क ् ष = क्ष
+collating-element <dv_dnya> from "<U091C><U094D><U091E>" % ज ् ञ = ज्ञ
+% This not in CLDR but it was in the old mr_IN collation in glibc:
+collating-element <dv_shra> from "<U0936><U094D><U0930>" % श ् र = श्र
collating-symbol <d_ksha>
collating-symbol <d_dnya>
collating-symbol <d_shra>
-reorder-after <d_ha>
+reorder-after <S0950> % DEVANAGARI OM
+<anusvara>
+<visarga>
+
+<U0902> <anusvara>;<ANUSVARA>;<MIN>;<U0902> % DEVANAGARI SIGN ANUSVARA
+<U0901> <anusvara>;"<ANUSVARA><VRNT1>";<MIN>;<U0901> % DEVANAGARI SIGN CANDRABINDU
+<U0903> <visarga>;<VISARGA>;<MIN>;<U0903> % DEVANAGARI SIGN VISARGA
+
+reorder-after <S0939> % <U0939> <S0939>;<BASE>;<MIN>;<U0939> % DEVANAGARI LETTER HA
+<S0933> % DEVANAGARI LETTER LLA
<d_ksha>
<d_dnya>
+% This not in CLDR but it was in the old mr_IN collation in glibc:
<d_shra>
-reorder-after <U0939>
-<dv_ksha> <d_ksha>;<BAS>;<MIN>;IGNORE
-<dv_dnya> <d_dnya>;<BAS>;<MIN>;IGNORE
-<dv_shra> <d_shra>;<BAS>;<MIN>;IGNORE
+<U0933> <S0933>;<BASE>;<MIN>;<U0933> % DEVANAGARI LETTER LLA
+<dv_ksha> <d_ksha>;<BASE>;<MIN>;"<U0915><U094D><U0937>" % क ् ष = क्ष
+<dv_dnya> <d_dnya>;<BASE>;<MIN>;IGNORE
+% This not in CLDR but it was in the old mr_IN collation in glibc:
+<dv_shra> <d_shra>;<BASE>;<MIN>;IGNORE
reorder-end
diff --git a/localedata/locales/mt_MT b/localedata/locales/mt_MT
index f67a206d68..a6ab7b1dad 100644
--- a/localedata/locales/mt_MT
+++ b/localedata/locales/mt_MT
@@ -51,83 +51,77 @@ translit_end
END LC_CTYPE
LC_COLLATE
-
-% a b c c. d e f g. g gh/ h h/ i ie j k l m n o p q r s t u v w x y z. z
-
-% Copy the template from ISO/IEC 14651
+% CLDR collation rules for Maltese:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/mt.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [caseFirst upper] # DMS MSA 200:2009
+%
+% # This collation follows Maltese Standard DMS MSA 200:2009
+% # The document is available at:
+% # <http://www.kunsilltalmalti.gov.mt/filebank/documents/2009-10-14%20MSA%20Specification%20for%20Maltese%20locale%20(abbozz%20finali).pdf>
+% # More information is available at: (search for "MSA 200")
+% # <http://www.kunsilltalmalti.gov.mt/rizorsi>
+%
+% &[before 1]c<ċ<<<Ċ
+% &[before 1]g<ġ<<<Ġ
+% # DMS 200:2009 says that "għ" shall be treated as one letter.
+% &[before 1]h<għ<<<gĦ<<<Għ<<<GĦ
+% # DMS 200:2009 says that "ie" shall be treated as two letters: i + e.
+% &[before 1]i<ħ<<<Ħ
+% &[before 1]z<ż<<<Ż
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/mt.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[A B Ċ C D E F Ġ G {GĦ} H Ħ I {IE*} J K L M N O P Q R S T U V W X Y Ż Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <c.>
-collating-symbol <g.>
-collating-symbol <h->
-collating-symbol <z.>
-
-collating-symbol <g-h--mt>
-collating-element <G-H-> from "<U0047><U0126>"
-collating-element <g-h-> from "<U0067><U0127>"
-collating-element <G-h-> from "<U0047><U0127>"
-collating-element <g-H-> from "<U0067><U0126>"
-
-collating-symbol <i-e-mt>
-collating-element <I-E> from "<U0049><U0045>"
-collating-element <i-e> from "<U0069><U0065>"
-collating-element <I-e> from "<U0049><U0065>"
-collating-element <i-E> from "<U0069><U0045>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <c>
-<c.>
-reorder-after <f>
-<g.>
-reorder-after <g>
-<g-h--mt>
-reorder-after <h>
-<h->
-reorder-after <i>
-<i-e-mt>
-reorder-after <y>
-<z.>
-
-reorder-after <U0063>
-<U010B> <c.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0043>
-<U010A> <c.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0066>
-<U0121> <g.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0046>
-<U0120> <g.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<g-h-> <g-h--mt>;<PCL>;<MIN>;IGNORE
-<g-H-> <g-h--mt>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<G-H-> <g-h--mt>;<PCL>;<CAP>;IGNORE
-<G-h-> <g-h--mt>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0068>
-<U0127> <h->;<OBL>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0126> <h->;<OBL>;<CAP>;IGNORE
-
-reorder-after <U0069>
-<i-e> <i-e-mt>;<PCL>;<MIN>;IGNORE
-<i-E> <i-e-mt>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0049>
-<I-E> <i-e-mt>;<PCL>;<CAP>;IGNORE
-<I-e> <i-e-mt>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0079>
-<U017C> <z.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0059>
-<U017B> <z.>;<PCT>;<CAP>;IGNORE
+collating-symbol <c-dot-above>
+collating-symbol <g-dot-above>
+collating-symbol <h-stroke>
+collating-symbol <z-dot-above>
+collating-symbol <g-h-stroke-digraph>
+collating-element <g-h-stroke> from "g<U0127>"
+collating-element <g-H-stroke> from "g<U0126>"
+collating-element <G-h-stroke> from "G<U0127>"
+collating-element <G-H-stroke> from "G<U0126>"
+
+reorder-after <RES-1>
+<COMPATCAP>
+<CAP>
+<COMPAT>
+<MIN>
+
+reorder-after <BEFORE-C>
+<c-dot-above>
+reorder-after <BEFORE-G>
+<g-dot-above>
+reorder-after <BEFORE-H>
+<g-h-stroke-digraph>
+reorder-after <BEFORE-I>
+<h-stroke>
+reorder-after <BEFORE-Z>
+<z-dot-above>
+
+<U010B> <c-dot-above>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ċ
+<U010A> <c-dot-above>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ċ
+<U0121> <g-dot-above>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ġ
+<U0120> <g-dot-above>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ġ
+<g-h-stroke> <g-h-stroke-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<g-H-stroke> <g-h-stroke-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<G-h-stroke> <g-h-stroke-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<G-H-stroke> <g-h-stroke-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U0127> <h-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ħ
+<U0126> <h-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ħ
+<U017C> <z-dot-above>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ż
+<U017B> <z-dot-above>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ż
reorder-end
diff --git a/localedata/locales/nan_TW@latin b/localedata/locales/nan_TW@latin
index 4b70bc6275..d4579a4cdf 100644
--- a/localedata/locales/nan_TW@latin
+++ b/localedata/locales/nan_TW@latin
@@ -61,26 +61,19 @@ copy "iso14651_t1"
%% a b c d e f g h i j k l m n o o͘ p q r s t u v w x y z ⁿ
-collating-element <oo> from "<U006F><U0358>"
-collating-element <OO> from "<U004F><U0358>"
-collating-element <nn> from "<U207F>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <U006E>
-<oo>
-reorder-after <U004E>
-<OO>
-reorder-after <U007A>
-<nn>
-reorder-after <U005A>
-<nn>
+collating-element <o-combining-dot-above> from "<U006F><U0358>"
+collating-element <O-combining-dot-above> from "<U004F><U0358>"
+collating-symbol <o-dot-above>
+collating-symbol <superscript-n>
+
+reorder-after <AFTER-N>
+<o-dot-above>
+reorder-after <AFTER-Z>
+<superscript-n>
+
+<o-combining-dot-above> <o-dot-above>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % o͘
+<O-combining-dot-above> <o-dot-above>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % O͘
+<U207F> <superscript-n>;"<BASE>";"<MNN>";IGNORE % ⁿ
reorder-end
diff --git a/localedata/locales/nb_NO b/localedata/locales/nb_NO
index c29e7e827b..a8675b6104 100644
--- a/localedata/locales/nb_NO
+++ b/localedata/locales/nb_NO
@@ -53,75 +53,87 @@ END LC_IDENTIFICATION
LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Norwegian (Bokmål):
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/nb.xml)
+%
+% &D<<đ<<<Đ<<ð<<<Ð
+% &t<<<þ/h
+% &T<<<Þ/H
+% &Y<<ü<<<Ü<<ű<<<Ű
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<<ę<<<Ę<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<<œ<<<Œ<å<<<Å<<aa<<<Aa<<<AA
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/nb.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Æ Ø Å]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+
collating-element <A-A> from "<U0041><U0041>"
collating-element <a-a> from "<U0061><U0061>"
collating-element <A-a> from "<U0041><U0061>"
collating-element <a-A> from "<U0061><U0041>"
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
collating-symbol <ae>
collating-symbol <o-stroke>
collating-symbol <a-ring>
-collating-symbol <ETH>
reorder-after <RES-1>
+<COMPATCAP>
<CAP>
-<CAP-MIN>
-<MIN-CAP>
-
-reorder-after <OBL>
-<ETH>
+<COMPAT>
+<MIN>
-reorder-after <z>
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<<ę<<<Ę<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<<œ<<<Œ<å<<<Å<<aa<<<Aa<<<AA
+reorder-after <AFTER-Z>
<ae>
<o-stroke>
<a-ring>
-reorder-after <U0178>
-<U00DC> <y>;<U00DC>;<CAP>;IGNORE
-<U0170> <y>;<U0170>;<CAP>;IGNORE
-reorder-after <U00FF>
-<U00FC> <y>;<U00DC>;<MIN>;IGNORE
-<U0171> <y>;<U0170>;<MIN>;IGNORE
+% &D<<đ<<<Đ<<ð<<<Ð
+<U0110> <S0064>;"<BASE><BARRE>";"<CAP><MIN>";IGNORE % Đ
+<U0111> <S0064>;"<BASE><BARRE>";"<MIN><MIN>";IGNORE % đ
+<U00D0> <S0064>;"<BASE><VRNT1>";"<COMPATCAP><COMPAT>";IGNORE % Ð
+<U00F0> <S0064>;"<BASE><VRNT1>";"<COMPAT><COMPAT>";IGNORE % ð
-reorder-after <U017B>
-<U00C6> <ae>;<BAS>;<CAP>;IGNORE
-<U01FC> <ae>;<ACA>;<CAP>;IGNORE
-<U01E2> <ae>;<MAC>;<CAP>;IGNORE
-<U00C4> <ae>;<PCL>;<CAP>;IGNORE
-<U00D8> <o-stroke>;<BAS>;<CAP>;IGNORE
-<U01FE> <o-stroke>;<ACA>;<CAP>;IGNORE
-<U00D6> <o-stroke>;<REU>;<CAP>;IGNORE
-<U0150> <o-stroke>;<DAC>;<CAP>;IGNORE
-<U00C5> <a-ring>;<BAS>;<CAP>;IGNORE
-<A-A> <a-ring>;<A-A>;<CAP>;IGNORE
-<A-a> <a-ring>;<A-A>;<CAP-MIN>;IGNORE
-reorder-after <U017C>
-<U00E6> <ae>;<BAS>;<MIN>;IGNORE
-<U01FD> <ae>;<ACA>;<MIN>;IGNORE
-<U01E3> <ae>;<MAC>;<MIN>;IGNORE
-<U00E4> <ae>;<PCL>;<MIN>;IGNORE
-<U00F8> <o-stroke>;<BAS>;<MIN>;IGNORE
-<U01FF> <o-stroke>;<ACA>;<MIN>;IGNORE
-<U00F6> <o-stroke>;<REU>;<MIN>;IGNORE
-<U0151> <o-stroke>;<DAC>;<MIN>;IGNORE
-<U00E5> <a-ring>;<BAS>;<MIN>;IGNORE
-<a-A> <a-ring>;<A-A>;<MIN-CAP>;IGNORE
-<a-a> <a-ring>;<A-A>;<MIN>;IGNORE
+% &T<<<Þ/H
+% &t<<<þ/h
+<U00DE> "<S0074><S0068>";"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Þ
+<U00FE> "<S0074><S0068>";"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % þ
-% Present in iso14651_t1, but these definitions seem to have been
-% removed from latest iso14651 tables.
-reorder-after <U0162>
-<U00DE> "<t><h>";"<LIG><LIG>";"<CAP><CAP>";IGNORE
-reorder-after <U0163>
-<U00FE> "<t><h>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
+% &Y<<ü<<<Ü<<ű<<<Ű
+<U00DC> <S0079>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ü
+<U00FC> <S0079>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ü
+<U0170> <S0079>;"<BASE><2AIGU>";"<CAP><MIN>";IGNORE % Ű
+<U0171> <S0079>;"<BASE><2AIGU>";"<MIN><MIN>";IGNORE % ű
-reorder-after <U0064>
-<U0110> <d>;<OBL>;<CAP>;IGNORE
-<U00D0> <d>;<ETH>;<CAP>;IGNORE
-reorder-after <U0044>
-<U0111> <d>;<OBL>;<MIN>;IGNORE
-<U00F0> <d>;<ETH>;<MIN>;IGNORE
+% &[before 1]ǀ<æ<<<Æ<<ä<<<Ä<<ę<<<Ę<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<<œ<<<Œ<å<<<Å<<aa<<<Aa<<<AA
+<U00C6> <ae>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Æ
+<U00E6> <ae>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % æ
+<U00C4> <ae>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ä
+<U00E4> <ae>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ä
+<U0118> <ae>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ę
+<U0119> <ae>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ę
+<U01FC> <ae>;"<BASE><VRNT3>";"<CAP><MIN>";IGNORE % Ǽ
+<U01FD> <ae>;"<BASE><VRNT3>";"<MIN><MIN>";IGNORE % ǽ
+<U01E2> <ae>;"<BASE><VRNT4>";"<CAP><MIN>";IGNORE % Ǣ
+<U01E3> <ae>;"<BASE><VRNT4>";"<MIN><MIN>";IGNORE % ǣ
+<U00D8> <o-stroke>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Ø
+<U00F8> <o-stroke>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % ø
+<U01FE> <o-stroke>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ǿ
+<U01FF> <o-stroke>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ǿ
+<U00D6> <o-stroke>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ö
+<U00F6> <o-stroke>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ö
+<U0150> <o-stroke>;"<BASE><VRNT3>";"<CAP><MIN>";IGNORE % Ő
+<U0151> <o-stroke>;"<BASE><VRNT3>";"<MIN><MIN>";IGNORE % ő
+<U0152> <o-stroke>;"<BASE><VRNT4>";"<CAP><MIN>";IGNORE % Œ
+<U0153> <o-stroke>;"<BASE><VRNT4>";"<MIN><MIN>";IGNORE % œ
+<U00C5> <a-ring>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Å
+<U00E5> <a-ring>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % å
+<A-A> <a-ring>;"<BASE><VRNT1>";"<CAP><CAP>";IGNORE
+<A-a> <a-ring>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<a-A> <a-ring>;"<BASE><VRNT1>";"<MIN><CAP>";IGNORE
+<a-a> <a-ring>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
reorder-end
diff --git a/localedata/locales/om_KE b/localedata/locales/om_KE
index 73d9e4d544..66cdcf5c45 100644
--- a/localedata/locales/om_KE
+++ b/localedata/locales/om_KE
@@ -64,69 +64,87 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_COLLATE
+% CLDR collation rules for Oromo:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/om.xml)
%
-% Copy the template from ISO/IEC 14651
+% <collation type="standard" >
+% <cr><![CDATA[
+% &Z<ch<<<Ch<<<CH<dh<<<Dh<<<DH<kh<<<Kh<<<KH<ny<<<Ny<<<NY<ph<<<Ph<<<PH<sh<<<Sh
+% ]]></cr>
+% </collation >
%
-copy "iso14651_t1"
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/om.xml)
%
-% Define extra Oromo letters and their sort order:
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]</exemplarCharacters>
%
-collating-symbol <CAP-MIN>
-collating-symbol <ch-qubee>
-collating-element <CH> from "CH"
-collating-element <Ch> from "Ch"
+% The following rules implement the same order for glibc.
+copy "iso14651_t1"
+
+collating-symbol <ch-digraph>
collating-element <ch> from "ch"
-collating-symbol <dh-qubee>
-collating-element <DH> from "DH"
-collating-element <Dh> from "Dh"
+collating-element <cH> from "cH"
+collating-element <Ch> from "Ch"
+collating-element <CH> from "CH"
+collating-symbol <dh-digraph>
collating-element <dh> from "dh"
-collating-symbol <kh-qubee>
-collating-element <KH> from "KH"
-collating-element <Kh> from "Kh"
+collating-element <dH> from "dH"
+collating-element <Dh> from "Dh"
+collating-element <DH> from "DH"
+collating-symbol <kh-digraph>
collating-element <kh> from "kh"
-collating-symbol <ny-qubee>
-collating-element <NY> from "NY"
-collating-element <Ny> from "Ny"
+collating-element <kH> from "kH"
+collating-element <Kh> from "Kh"
+collating-element <KH> from "KH"
+collating-symbol <ny-digraph>
collating-element <ny> from "ny"
-collating-symbol <ph-qubee>
-collating-element <PH> from "PH"
-collating-element <Ph> from "Ph"
+collating-element <nY> from "nY"
+collating-element <Ny> from "Ny"
+collating-element <NY> from "NY"
+collating-symbol <ph-digraph>
collating-element <ph> from "ph"
-collating-symbol <sh-qubee>
-collating-element <SH> from "SH"
-collating-element <Sh> from "Sh"
+collating-element <pH> from "pH"
+collating-element <Ph> from "Ph"
+collating-element <PH> from "PH"
+collating-symbol <sh-digraph>
collating-element <sh> from "sh"
+collating-element <sH> from "sH"
+collating-element <Sh> from "Sh"
+collating-element <SH> from "SH"
-reorder-after <MIN>
-<CAP-MIN>
-
-reorder-after <z>
-<ch-qubee>
-<dh-qubee>
-<kh-qubee>
-<ny-qubee>
-<ph-qubee>
-<sh-qubee>
-
-reorder-after <U00DE>
-<ch> <ch-qubee>;<MIN>;<MIN>;IGNORE
-<Ch> <ch-qubee>;<CAP>;<MIN>;IGNORE
-<CH> <ch-qubee>;<CAP>;<CAP>;IGNORE
-<dh> <dh-qubee>;<MIN>;<MIN>;IGNORE
-<Dh> <dh-qubee>;<CAP>;<MIN>;IGNORE
-<DH> <dh-qubee>;<CAP>;<CAP>;IGNORE
-<kh> <kh-qubee>;<MIN>;<MIN>;IGNORE
-<Kh> <kh-qubee>;<CAP>;<MIN>;IGNORE
-<KH> <kh-qubee>;<CAP>;<CAP>;IGNORE
-<ny> <ny-qubee>;<MIN>;<MIN>;IGNORE
-<Ny> <ny-qubee>;<CAP>;<MIN>;IGNORE
-<NY> <ny-qubee>;<CAP>;<CAP>;IGNORE
-<ph> <ph-qubee>;<MIN>;<MIN>;IGNORE
-<Ph> <ph-qubee>;<CAP>;<MIN>;IGNORE
-<PH> <ph-qubee>;<CAP>;<CAP>;IGNORE
-<sh> <sh-qubee>;<MIN>;<MIN>;IGNORE
-<Sh> <sh-qubee>;<CAP>;<MIN>;IGNORE
-<SH> <sh-qubee>;<CAP>;<CAP>;IGNORE
+reorder-after <AFTER-Z>
+<ch-digraph>
+<dh-digraph>
+<kh-digraph>
+<ny-digraph>
+<ph-digraph>
+<sh-digraph>
+
+<ch> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<cH> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ch> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<CH> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<dh> <dh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<dH> <dh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Dh> <dh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<DH> <dh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<kh> <kh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<kH> <kh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Kh> <kh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<KH> <kh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ny> <ny-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nY> <ny-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ny> <ny-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<NY> <ny-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ph> <ph-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<pH> <ph-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ph> <ph-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<PH> <ph-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<sh> <sh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sH> <sh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Sh> <sh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<SH> <sh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
%
diff --git a/localedata/locales/os_RU b/localedata/locales/os_RU
index 6d1c5b4aae..fcd72ef68f 100644
--- a/localedata/locales/os_RU
+++ b/localedata/locales/os_RU
@@ -49,18 +49,20 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
+% There is no collation information for Ossetian in CLDR.
+% I just adapt the collation rules which I found here to the
+% updated iso14651_t1_common file.
copy "iso14651_t1"
collating-symbol <ae>
-reorder-after <CYR-A>
+reorder-after <S0430> % CYRILLIC SMALL LETTER A
<ae>
-reorder-after <U0410>
-<U00C6> <ae>;<BAS>;<CAP>;IGNORE
-<U00E6> <ae>;<BAS>;<MIN>;IGNORE
-<U04D4> <ae>;<BAS>;<CAP>;IGNORE
-<U04D5> <ae>;<BAS>;<MIN>;IGNORE
+<U04D5> <ae>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ӕ CYRILLIC SMALL LIGATURE A IE
+<U04D4> <ae>;"<BASE><BASE>";"<CAP><CAP>";IGNORE % Ӕ CYRILLIC CAPITAL LIGATURE A IE
+<U00E6> <ae>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % æ LATIN SMALL LETTER AE
+<U00C6> <ae>;"<BASE><VRNT1>";"<CAP><CAP>";IGNORE % Æ LATIN CAPITAL LETTER AE
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/pl_PL b/localedata/locales/pl_PL
index 632a1b3032..4c1b2a869d 100644
--- a/localedata/locales/pl_PL
+++ b/localedata/locales/pl_PL
@@ -54,6 +54,20 @@ LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Polish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/pl.xml)
+%
+% &A<ą<<<Ą
+% &C<ć<<<Ć
+% &E<ę<<<Ę
+% &L<ł<<<Ł
+% &N<ń<<<Ń
+% &O<ó<<<Ó
+% &S<ś<<<Ś
+% &Z<ź<<<Ź<ż<<<Ż
+%
+% The following rules implement the same order for glibc.
+
collating-symbol <space>
collating-symbol <a-ogonek>
collating-symbol <c-acute>
@@ -68,44 +82,44 @@ collating-symbol <z-dot-above>
reorder-after <RES-1>
<space>
-reorder-after <a>
+reorder-after <AFTER-A>
<a-ogonek>
-reorder-after <c>
+reorder-after <AFTER-C>
<c-acute>
-reorder-after <e>
+reorder-after <AFTER-E>
<e-ogonek>
-reorder-after <l>
+reorder-after <AFTER-L>
<l-stroke>
-reorder-after <n>
+reorder-after <AFTER-N>
<n-acute>
-reorder-after <o>
+reorder-after <AFTER-O>
<o-acute>
-reorder-after <s>
+reorder-after <AFTER-S>
<s-acute>
-reorder-after <z>
+reorder-after <AFTER-Z>
<z-acute>
<z-dot-above>
<U0020> <space>;IGNORE;IGNORE;<U0020>
<U00A0> <space>;IGNORE;IGNORE;<U00A0>
-<U0105> <a-ogonek>;<BAS>;<MIN>;IGNORE % ą
-<U0104> <a-ogonek>;<BAS>;<CAP>;IGNORE % Ą
-<U0107> <c-acute>;<BAS>;<MIN>;IGNORE % ć
-<U0106> <c-acute>;<BAS>;<CAP>;IGNORE % Ć
-<U0119> <e-ogonek>;<BAS>;<MIN>;IGNORE % ę
-<U0118> <e-ogonek>;<BAS>;<CAP>;IGNORE % Ę
-<U0142> <l-stroke>;<BAS>;<MIN>;IGNORE % ł
-<U0141> <l-stroke>;<BAS>;<CAP>;IGNORE % Ł
-<U0144> <n-acute>;<BAS>;<MIN>;IGNORE % ń
-<U0143> <n-acute>;<BAS>;<CAP>;IGNORE % Ń
-<U00F3> <o-acute>;<BAS>;<MIN>;IGNORE % ó
-<U00D3> <o-acute>;<BAS>;<CAP>;IGNORE % Ó
-<U015B> <s-acute>;<BAS>;<MIN>;IGNORE % ś
-<U015A> <s-acute>;<BAS>;<CAP>;IGNORE % Ś
-<U017A> <z-acute>;<BAS>;<MIN>;IGNORE % ź
-<U0179> <z-acute>;<BAS>;<CAP>;IGNORE % Ź
-<U017C> <z-dot-above>;<BAS>;<MIN>;IGNORE % ż
-<U017B> <z-dot-above>;<BAS>;<CAP>;IGNORE % Ż
+<U0105> <a-ogonek>;<BASE>;<MIN>;IGNORE % ą
+<U0104> <a-ogonek>;<BASE>;<CAP>;IGNORE % Ą
+<U0107> <c-acute>;<BASE>;<MIN>;IGNORE % ć
+<U0106> <c-acute>;<BASE>;<CAP>;IGNORE % Ć
+<U0119> <e-ogonek>;<BASE>;<MIN>;IGNORE % ę
+<U0118> <e-ogonek>;<BASE>;<CAP>;IGNORE % Ę
+<U0142> <l-stroke>;<BASE>;<MIN>;IGNORE % ł
+<U0141> <l-stroke>;<BASE>;<CAP>;IGNORE % Ł
+<U0144> <n-acute>;<BASE>;<MIN>;IGNORE % ń
+<U0143> <n-acute>;<BASE>;<CAP>;IGNORE % Ń
+<U00F3> <o-acute>;<BASE>;<MIN>;IGNORE % ó
+<U00D3> <o-acute>;<BASE>;<CAP>;IGNORE % Ó
+<U015B> <s-acute>;<BASE>;<MIN>;IGNORE % ś
+<U015A> <s-acute>;<BASE>;<CAP>;IGNORE % Ś
+<U017A> <z-acute>;<BASE>;<MIN>;IGNORE % ź
+<U0179> <z-acute>;<BASE>;<CAP>;IGNORE % Ź
+<U017C> <z-dot-above>;<BASE>;<MIN>;IGNORE % ż
+<U017B> <z-dot-above>;<BASE>;<CAP>;IGNORE % Ż
reorder-end
diff --git a/localedata/locales/ps_AF b/localedata/locales/ps_AF
index c20419db11..66f560ef44 100644
--- a/localedata/locales/ps_AF
+++ b/localedata/locales/ps_AF
@@ -56,93 +56,153 @@ map to_outpunct; (<U002E>,<U066B>);(<U002C>,<U066C>)
END LC_CTYPE
LC_COLLATE
-% Collation rules updated as per requirement of glibc by Pravin Satpute <psatpute@redhat.com>
-% see rh bug 482881
+% CLDR collation rules for Pashto:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ps.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% [reorder Arab]
+% &َ<<ِ<<ُ<<ً<<ٍ<<ٌ
+% &[before 1]ا<آ
+% &ا<<أ<<ٲ<<ٱ<<إ<<ٳ<ء
+% &ت<ټ<<ٹ
+% &ج<ځ<<حٔ
+% &چ<څ
+% &د<ډ<<ڈ
+% &ر<ړ<<ڑ
+% &ژ<ږ
+% &ک<<*ڪك
+% &ګ<<گ
+% &ڼ<<ڻ
+% &و<<ؤ<<ۇ<<ۉ
+% &ه<<<ۀ<<<هٔ<<*ەہھةۃ
+% &ی<<*ىےيېۍ<<یٔ<<<ىٔ<<<ئ
+% &\u00A0<<\u200C<<\u200D
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ps.xml)
+%
+% <exemplarCharacters type="index" draft="unconfirmed">[آ ا ء ب پ ت ټ ث ج ځ چ څ ح خ د ډ ذ ر ړ ز ژ ږ س ش ښ ص ض ط ظ ع غ ف ق ک ګ ل م ن ڼ ه و ی]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <teh_with_ring>
-collating-symbol <hah_with_hamza_above>
-collating-symbol <hah_with_three_dots>
-collating-symbol <dal_with_ring>
-collating-symbol <reh_with_ring>
-collating-symbol <reh_with_dot_below_and_above>
-collating-symbol <seen_with_dot_below_and_above>
-collating-symbol <kaaf_with_ring>
-collating-symbol <noon_with_ring>
-collating-symbol <farsi_yeh>
-collating-symbol <arabic_letter_e>
-collating-symbol <yeh_with_tail>
-
-reorder-after <teh>
-<teh_with_ring>
-
-reorder-after <jeem>
-<hah_with_hamza_above>
-
-reorder-after <tcheh>
-<hah_with_three_dots>
-
-reorder-after <dal>
-<dal_with_ring>
-
-reorder-after <reh>
-<reh_with_ring>
-
-reorder-after <jeh>
-<reh_with_dot_below_and_above>
-
-reorder-after <sheen>
-<seen_with_dot_below_and_above>
-
-reorder-after <keheh>
-<kaaf_with_ring>
-
-reorder-after <noon>
-<noon_with_ring>
-
-reorder-after <heh>
-<farsi_yeh>
+collating-element <arabic-letter-heh-with-hamza-above> from "<U0647><U0654>" % هٔ
+collating-element <arabic-letter-farsi-yeh-with-hamza-above> from "<U06CC><U0654>" % یٔ
+collating-element <arabic-letter-alef-maksura-with-hamza-above> from "<U0649><U0654>" % ىٔ
-reorder-after <alef_maksura>
-<arabic_letter_e>
-<yeh_with_tail>
+% &َ<<ِ<<ُ<<ً<<ٍ<<ٌ
+reorder-after <FATHA>
+<KASRA>
+<DAMMA>
+<FATHATAN>
+<KASRATAN>
+<DAMMATAN>
+% &[before 1]ا<آ
+reorder-after <S08AC> % ARABIC LETTER ROHINGYA YEH
+<S0622> % ARABIC LETTER ALEF WITH MADDA ABOVE
-reorder-after <U062A>
-<U067C> <teh_with_ring>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U062C>
-<U0681> <hah_with_hamza_above>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0686>
-<U0685> <hah_with_three_dots>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U062F>
-<U0689> <dal_with_ring>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0631>
-<U0693> <reh_with_ring>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0698>
-<U0696> <reh_with_dot_below_and_above>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0634>
-<U069A> <seen_with_dot_below_and_above>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U06A9>
-<U06AB> <kaaf_with_ring>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0646>
-<U06BC> <noon_with_ring>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0648>
-<U0647> <heh>;<BAS>;<MIN>;IGNORE
-<U06CC> <farsi_yeh>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U064A>
-<U06D0> <arabic_letter_e>;<AYE>;<MIN>;IGNORE
-<U0626> "<alef_maksura><hamza>";"<BAS><BAS>";"<MIN><MIN>";IGNORE
-<U06CD> <yeh_with_tail>;<AYE>;<MIN>;IGNORE
+% &ا<<أ<<ٲ<<ٱ<<إ<<ٳ<ء
+% Entry in iso14651_t1_common:
+%
+% <U0627> <S0627>;<BASE>;<MIN>;<U0627> % ARABIC LETTER ALEF
+%
+<U0623> <S0627>;"<BASE><VRNT1>";<MIN>;<U0623> % ARABIC LETTER ALEF WITH HAMZA ABOVE
+<U0672> <S0627>;"<BASE><VRNT2>";<MIN>;<U0672> % ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE
+<U0671> <S0627>;"<BASE><VRNT3>";<MIN>;<U0671> % ARABIC LETTER ALEF WASLA
+<U0625> <S0627>;"<BASE><VRNT4>";<MIN>;<U0625> % ARABIC LETTER ALEF WITH HAMZA BELOW
+<U0673> <S0627>;"<BASE><VRNT5>";<MIN>;<U0673> % ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
+
+reorder-after <S0627> % ARABIC LETTER ALEF
+<S0621> % ARABIC LETTER HAMZA
+
+% &ت<ټ<<ٹ
+reorder-after <S062A> % ARABIC LETTER TEH
+<S067C> % ARABIC LETTER TEH WITH RING
+
+<U067C> <S067C>;"<BASE><BASE>";<MIN>;<U067C> % ARABIC LETTER TEH WITH RING
+<U0679> <S067C>;"<BASE><VRNT1>";<MIN>;<U0679> % ARABIC LETTER TTEH
+
+% &ج<ځ<<حٔ
+reorder-after <S062C> % ARABIC LETTER JEEM
+<S0681> % ARABIC LETTER HAH WITH HAMZA ABOVE
+
+<U0681> <S0681>;"<BASE><BASE>";<MIN>;<U0681> % ARABIC LETTER HAH WITH HAMZA ABOVE
+<U062D> <S0681>;"<BASE><VRNT1>";<MIN>;<U062D> % ARABIC LETTER HAH
+
+% &چ<څ
+reorder-after <S0686> % ARABIC LETTER TCHEH
+<S0685> % ARABIC LETTER HAH WITH THREE DOTS ABOVE
+
+% &د<ډ<<ڈ
+reorder-after <S062F> % ARABIC LETTER DAL
+<S0689> % ARABIC LETTER DAL WITH RING
+
+<U0689> <S0689>;"<BASE><BASE>";<MIN>;<U0689> % ARABIC LETTER DAL WITH RING
+<U0688> <S0689>;"<BASE><VRNT1>";<MIN>;<U0688> % ARABIC LETTER DDAL
+
+% &ر<ړ<<ڑ
+reorder-after <S0631> % ARABIC LETTER REH
+
+<U0693> <S0693>;"<BASE><BASE>";<MIN>;<U0693> % ARABIC LETTER REH WITH RING
+<U0691> <S0693>;"<BASE><VRNT1>";<MIN>;<U0691> % ARABIC LETTER RREH
+
+% &ژ<ږ
+reorder-after <S0698> % ARABIC LETTER JEH
+<S0696> % ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE
+
+% &ک<<*ڪك
+<U06A9> <S06A9>;"<BASE><BASE>";<MIN>;<U06A9> % ARABIC LETTER KEHEH
+<U06AA> <S06A9>;"<BASE><VRNT1>";<MIN>;<U06AA> % ARABIC LETTER SWASH KAF
+<U0643> <S06A9>;"<BASE><VRNT2>";<MIN>;<U0643> % ARABIC LETTER KAF
+
+% &ګ<<گ
+<U06AB> <S06AB>;"<BASE><BASE>";<MIN>;<U06AB> % ARABIC LETTER KAF WITH RING
+<U06AF> <S06AB>;"<BASE><VRNT1>";<MIN>;<U06AF> % ARABIC LETTER GAF
+
+% &ڼ<<ڻ
+<U06BC> <S06BC>;"<BASE><BASE>";<MIN>;<U06BC> % ARABIC LETTER NOON WITH RING
+<U06BB> <S06BC>;"<BASE><VRNT1>";<MIN>;<U06BB> % ARABIC LETTER RNOON
+
+% &و<<ؤ<<ۇ<<ۉ
+<U0648> <S0648>;"<BASE><BASE>";<MIN>;<U0648> % ARABIC LETTER WAW
+<U0624> <S0648>;"<BASE><VRNT1>";<MIN>;<U0624> % ARABIC LETTER WAW WITH HAMZA ABOVE
+<U06C7> <S0648>;"<BASE><VRNT2>";<MIN>;<U06C7> % ARABIC LETTER U
+<U06C9> <S0648>;"<BASE><VRNT3>";<MIN>;<U06C9> % ARABIC LETTER KIRGHIZ YU
+
+% &ه<<<ۀ<<<هٔ<<*ەہھةۃ
+<U0647> <S0647>;"<BASE><BASE>";"<MIN><VRNT1>";<U0647> % ARABIC LETTER HEH
+<U06C0> <S0647>;"<BASE><BASE>";"<MIN><VRNT2>";<U06C0> % ARABIC LETTER HEH WITH YEH ABOVE
+<arabic-letter-heh-with-hamza-above> <S0647>;"<BASE><BASE>";"<MIN><VRNT3>";"<U0647><U0654>" % ARABIC LETTER HEH WITH HAMZA ABOVE
+
+<U06D5> <S0647>;"<BASE><VRNT1>";<MIN>;<U06D5> % ARABIC LETTER AE
+<U06C1> <S0647>;"<BASE><VRNT2>";<MIN>;<U06C1> % ARABIC LETTER HEH GOAL
+<U06BE> <S0647>;"<BASE><VRNT3>";<MIN>;<U06BE> % ARABIC LETTER HEH DOACHASHMEE
+<U0629> <S0647>;"<BASE><VRNT4>";<MIN>;<U0629> % ARABIC LETTER TEH MARBUTA
+<U06C3> <S0647>;"<BASE><VRNT5>";<MIN>;<U06C3> % ARABIC LETTER TEH MARBUTA GOAL
+
+% &ی<<*ىےيېۍ<<یٔ<<<ىٔ<<<ئ
+% Entry in iso14651_t1_common:
+%
+% <U06CC> <S06CC>;<BASE>;<MIN>;<U06CC> % ARABIC LETTER FARSI YEH
+<U0649> <S06CC>;"<BASE><VRNT1><VRNT1>";<MIN>;<U0649> % ARABIC LETTER ALEF MAKSURA
+<U06D2> <S06CC>;"<BASE><VRNT1><VRNT2>";<MIN>;<U06D2> % ARABIC LETTER YEH BARREE
+<U064A> <S06CC>;"<BASE><VRNT1><VRNT3>";<MIN>;<U064A> % ARABIC LETTER YEH
+<U06D0> <S06CC>;"<BASE><VRNT1><VRNT4>";<MIN>;<U06D0> % ARABIC LETTER E
+<U06CD> <S06CC>;"<BASE><VRNT2><VRNT1>";<MIN>;<U06CD> % ARABIC LETTER YEH WITH TAIL
+<arabic-letter-farsi-yeh-with-hamza-above> <S06CC>;"<BASE><VRNT2><VRNT2>";<MIN>;<U06CC>
+<arabic-letter-alef-maksura-with-hamza-above> <S06CC>;"<BASE><VRNT2><VRNT2>";<CAP>;<U0649>
+<U0626> <S06CC>;"<BASE><VRNT2><VRNT2>";<COMPATCAP>;<U0626> % ARABIC LETTER YEH WITH HAMZA ABOVE
+
+% &\u00A0<<\u200C<<\u200D
+<U00A0> IGNORE;"<VRNT1>";IGNORE;<U00A0> % NO-BREAK SPACE
+<U200C> IGNORE;"<VRNT2>";IGNORE;<U200C> % ZERO WIDTH NON-JOINER
+<U200D> IGNORE;"<VRNT3>";IGNORE;<U200D> % ZERO WIDTH JOINER
reorder-end
diff --git a/localedata/locales/ro_RO b/localedata/locales/ro_RO
index 92f682d752..39c4d09a07 100644
--- a/localedata/locales/ro_RO
+++ b/localedata/locales/ro_RO
@@ -55,58 +55,57 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
-
-% Copy the template from ISO/IEC 14651
+% CLDR collation rules for Romanian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ro.xml)
+%
+% <collation type="standard" references="Academia Română: DEX - Dicționarul explicativ al limbii române ISBN 973-924-329-2">
+% <cr><![CDATA[
+% &A<ă<<<Ă<â<<<Â
+% &I<î<<<Î
+% &S<ş=ș<<<Ş=Ș
+% &T<ţ=ț<<<Ţ=Ț
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ro.xml)
+%
+% <exemplarCharacters type="index">[A Ă Â B C D E F G H I Î J K L M N O P Q R S Ș T Ț U V W X Y Z]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-% The modern Romanian alphabet has 31 letters, ordered as below:
-% a a( a> b c d e f g h i i> j k l m n o p q r s s, t t, u v w x y z
-
-collating-symbol <a(>
-collating-symbol <a/>>
-collating-symbol <i/>>
-collating-symbol <s,>
-collating-symbol <t,>
-
-reorder-after <GRA>
-<CIR>
-<BRE>
-
-reorder-after <a>
-<a(>
-<a/>>
-reorder-after <i>
-<i/>>
-reorder-after <s>
-<s,>
-reorder-after <t>
-<t,>
-
-reorder-after <U0061>
-<U0103> <a(>;<BRE>;<MIN>;IGNORE
-<U00E2> <a/>>;<CIR>;<MIN>;IGNORE
-reorder-after <U0041>
-<U0102> <a(>;<BRE>;<CAP>;IGNORE
-<U00C2> <a/>>;<CIR>;<CAP>;IGNORE
-
-reorder-after <U0069>
-<U00EE> <i/>>;<CIR>;<MIN>;IGNORE
-reorder-after <U0049>
-<U00CE> <i/>>;<CIR>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U0219> <s,>;<CDI>;<MIN>;IGNORE
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U0218> <s,>;<CDI>;<CAP>;IGNORE
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0074>
-<U021B> <t,>;<CDI>;<MIN>;IGNORE
-<U0163> <t,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0054>
-<U021A> <t,>;<CDI>;<CAP>;IGNORE
-<U0162> <t,>;<CDI>;<CAP>;IGNORE
+collating-symbol <a-breve>
+collating-symbol <a-circumflex>
+collating-symbol <i-circumflex>
+collating-symbol <s-cedilla>
+collating-symbol <t-cedilla>
+
+reorder-after <AFTER-A>
+<a-breve>
+<a-circumflex>
+reorder-after <AFTER-I>
+<i-circumflex>
+reorder-after <AFTER-S>
+<s-cedilla>
+reorder-after <AFTER-T>
+<t-cedilla>
+
+<U0103> <a-breve>;"<BASE><BASE>";"<MIN><MIN>";<U0103> % ă
+<U0102> <a-breve>;"<BASE><BASE>";"<CAP><MIN>";<U0102> % Ă
+<U00E2> <a-circumflex>;"<BASE><BASE>";"<MIN><MIN>";<U00E2> % â
+<U00C2> <a-circumflex>;"<BASE><BASE>";"<CAP><MIN>";<U00C2> % Â
+<U00EE> <i-circumflex>;"<BASE><BASE>";"<MIN><MIN>";<U00EE> % î
+<U00CE> <i-circumflex>;"<BASE><BASE>";"<CAP><MIN>";<U00CE> % Î
+<U015F> <s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";<U015F> % ş
+<U0219> <s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";<U0219> % ș
+<U015E> <s-cedilla>;"<BASE><BASE>";"<CAP><MIN>";<U015E> % Ş
+<U0218> <s-cedilla>;"<BASE><BASE>";"<CAP><MIN>";<U0218> % Ș
+<U0163> <t-cedilla>;"<BASE><BASE>";"<MIN><MIN>";<U0163> % ţ
+<U021B> <t-cedilla>;"<BASE><BASE>";"<MIN><MIN>";<U021B> % ț
+<U0162> <t-cedilla>;"<BASE><BASE>";"<CAP><MIN>";<U0162> % Ţ
+<U021A> <t-cedilla>;"<BASE><BASE>";"<CAP><MIN>";<U021A> % Ț
reorder-end
diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU
index 0149ffcffc..fdb2059fe7 100644
--- a/localedata/locales/ru_RU
+++ b/localedata/locales/ru_RU
@@ -51,21 +51,17 @@ category "i18n:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
+% CLDR collation rules for Russian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ru.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% ]]></cr>
+% </collation>
+%
copy "iso14651_t1"
-
-% iso14651_t1 is missing Ukrainian ghe
-collating-symbol <UKR-GHE>
-
-reorder-after <CYR-GZHE>
-<UKR-GHE>
-
-reorder-after <U0453>
-<U0491> <UKR-GHE>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0403>
-<U0490> <UKR-GHE>;<BAS>;<CAP>;IGNORE
-
-reorder-end
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/ru_UA b/localedata/locales/ru_UA
index f8d7a12785..381370cb05 100644
--- a/localedata/locales/ru_UA
+++ b/localedata/locales/ru_UA
@@ -51,21 +51,7 @@ copy "ru_RU"
END LC_CTYPE
LC_COLLATE
-copy "iso14651_t1"
-
-% iso14651_t1 is missing Ukrainian ghe
-collating-symbol <UKR-GHE>
-
-reorder-after <CYR-GZHE>
-<UKR-GHE>
-
-reorder-after <U0453>
-<U0491> <UKR-GHE>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0403>
-<U0490> <UKR-GHE>;<BAS>;<CAP>;IGNORE
-
-reorder-end
+copy "ru_RU"
END LC_COLLATE
LC_MESSAGES
diff --git a/localedata/locales/sc_IT b/localedata/locales/sc_IT
index 0f79ed61f6..1488744575 100644
--- a/localedata/locales/sc_IT
+++ b/localedata/locales/sc_IT
@@ -47,17 +47,18 @@ copy "it_IT"
END LC_CTYPE
LC_COLLATE
+% There is no collation information for Sardinian in CLDR.
+%
+% We implement only this rule here: &C<ç<<<Ç
copy "iso14651_t1"
-collating-symbol <c,>
+collating-symbol <c-cedilla>
-reorder-after <c>
-<c,>
+reorder-after <AFTER-C>
+<c-cedilla>
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
+<U00E7> <c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <c-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ç
reorder-end
diff --git a/localedata/locales/se_NO b/localedata/locales/se_NO
index 6a856272e5..b50001139a 100644
--- a/localedata/locales/se_NO
+++ b/localedata/locales/se_NO
@@ -47,153 +47,171 @@ END LC_IDENTIFICATION
LC_COLLATE
+% CLDR collation rules for Northern Saami:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/se.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% &[before 1]b<á<<<Á
+% &[before 1]d<č # fallback: ch
+% <<<Č<ʒ # Skolt Sami, not "index" for other Sami languages
+% <<<Ʒ<ǯ # Skolt Sami, not "index" for other Sami languages
+% <<<Ǯ
+% &[before 1]e<đ # fallback: dh
+% <<<Đ<<ð # Icelandic uses a "eth"...
+% <<<Ð
+% &[before 1]h<ǧ # Skolt Sami, not "index" for other Sami languages
+% <<<Ǧ<ǥ # Skolt Sami, not "index" for other Sami languages
+% <<<Ǥ
+% &[before 1]l<ǩ # Skolt Sami, not "index" for other Sami languages
+% <<<Ǩ
+% &[before 1]o<ŋ # fallback: ng
+% <<<Ŋ<<ń # Lule Sami (alternative "eng")
+% <<<Ń<<ñ # Lule Sami (alternative "eng")
+% <<<Ñ
+% &[before 1]t<š # fallback: sh
+% <<<Š
+% &[before 1]u<ŧ # fallback: th
+% <<<Ŧ<<þ # Icelandic uses thorn...
+% <<<Þ
+% &y<<ü # compat. for Norwegian/Swedish
+% <<<Ü<<ű # considered a variant of ü
+% <<<Ű
+% &[before 1]ǀ # LATIN LETTER DENTAL CLICK
+% <ž # fallback: zh
+% <<<Ž<ø # compat. for Norwegian
+% <<<Ø<<œ # considered a variant of ø (and ö...)
+% <<<Œ<æ # compat. for Norwegian
+% <<<Æ<å # compat. for Norwegian/Swedish
+% <<<Å<<ȧ # considered a variant of å
+% <<<Ȧ<ä # compat. for Swedish
+% <<<Ä<<ã # considered a variant of ä
+% <<<Ã<ö # compat. for Swedish
+% <<<Ö<<ő # considered a variant of ö
+% <<<Ő<<õ # considered a variant of ö
+% <<<Õ<<ô # while pronounced as å in French, it is used for some Swedish dialects for "thick ö"
+% <<<Ô<<ǫ # variant from old Icelandic/old Norse of a vowel now pronounced like ö
+% <<<Ǫ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/se.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[A Á B C Č D Đ E É F G H I J K L M N Ŋ O P Q R S Š T Ŧ U V W X Y Z Ž Ø Æ Å Ä Ö]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <aring>
-collating-symbol <atilde>
-collating-symbol <acircumflex>
-collating-symbol <agrave>
-collating-symbol <aacute>
-collating-symbol <noae>
-collating-symbol <svae>
-collating-symbol <ccedilla>
-collating-symbol <ccaron>
+collating-symbol <a-acute>
+collating-symbol <c-caron>
collating-symbol <ezh>
-collating-symbol <ezhcaron>
-collating-symbol <dstroke>
+collating-symbol <ezh-caron>
+collating-symbol <d-stroke>
collating-symbol <eth>
-collating-symbol <fhook>
-collating-symbol <gcaron>
-collating-symbol <gstroke>
-collating-symbol <kcaron>
-collating-symbol <otilde>
-collating-symbol <oe>
-collating-symbol <ssharp>
-collating-symbol <scaron>
-collating-symbol <oumlaut>
-collating-symbol <oslash>
-
-%
-reorder-after <CAP>
-<MIN>
-
-reorder-after <a>
-<agrave>
-<atilde>
-<aacute>
-<acircumflex>
-
-
-reorder-after <c>
-<ccaron>
-<ccedilla>
+collating-symbol <g-caron>
+collating-symbol <g-stroke>
+collating-symbol <k-caron>
+collating-symbol <eng>
+collating-symbol <t-stroke>
+collating-symbol <z-caron>
+collating-symbol <o-stroke>
+collating-symbol <ae>
+collating-symbol <a-ring>
+collating-symbol <a-diaeresis>
+collating-symbol <o-diaeresis>
+
+reorder-after <BEFORE-B>
+<a-acute>
+reorder-after <BEFORE-D>
+<c-caron>
<ezh>
-<ezhcaron>
-
-reorder-after <d>
-<dstroke>
-<eth>
-
-reorder-after <f>
-<fhook>
-
-reorder-after <g>
-<gcaron>
-<gstroke>
-
-reorder-after <k>
-<kcaron>
-
-reorder-after <s>
-<ssharp>
+<ezh-caron>
+reorder-after <BEFORE-E>
+<d-stroke>
+reorder-after <BEFORE-H>
+<g-caron>
+<g-stroke>
+reorder-after <BEFORE-L>
+<k-caron>
+reorder-after <BEFORE-O>
+<eng>
+reorder-after <BEFORE-T>
<scaron>
+reorder-after <BEFORE-U>
+<t-stroke>
+reorder-after <AFTER-LATIN>
+<z-caron>
+<o-stroke>
+<ae>
+<a-ring>
+<a-diaeresis>
+<o-diaeresis>
+
+<U00E1> <a-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % á
+<U00C1> <a-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Á
+<U010D> <c-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % č
+<U010C> <c-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Č
+<U0292> <ezh>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ʒ
+<U01B7> <ezh>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ʒ
+<U01EF> <ezh-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ǯ
+<U01EE> <ezh-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ǯ
+<U0111> <d-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % đ
+<U0110> <d-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Đ
+<U00F0> <d-stroke>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ð
+<U00D0> <d-stroke>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ð
+<U01E7> <g-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ǧ
+<U01E6> <g-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ǧ
+<U01E5> <g-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ǥ
+<U01E4> <g-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ǥ
+<U01E9> <k-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ǩ
+<U01E8> <k-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ǩ
+<U014B> <eng>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ŋ
+<U014A> <eng>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ŋ
+<U0144> <eng>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ń
+<U0143> <eng>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ń
+<U00F1> <eng>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <eng>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ñ
+<U0161> <scaron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % š
+<U0160> <scaron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Š
+<U0167> <t-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ŧ
+<U0166> <t-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ŧ
+<U00FE> <t-stroke>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % þ
+<U00DE> <t-stroke>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Þ
+% &y<<ü<<<Ü<<ű<<<Ű
+<U00DC> <S0079>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ü
+<U00FC> <S0079>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ü
+<U0170> <S0079>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ű
+<U0171> <S0079>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ű
+
+<U017E> <z-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ž
+<U017D> <z-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ž
+<U00F8> <o-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ø
+<U00D8> <o-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ø
+<U0153> <o-stroke>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % œ
+<U0152> <o-stroke>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Œ
+<U00E6> <ae>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % æ
+<U00C6> <ae>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Æ
+<U00E5> <a-ring>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % å
+<U00C5> <a-ring>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Å
+<U0227> <a-ring>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ȧ
+<U0226> <a-ring>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ȧ
+<U00E4> <a-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ä
+<U00C4> <a-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ä
+<U00E3> <a-diaeresis>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ã
+<U00C3> <a-diaeresis>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ã
+<U00F6> <o-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ö
+<U00D6> <o-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ö
+<U0151> <o-diaeresis>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ő
+<U0150> <o-diaeresis>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ő
+<U00F5> <o-diaeresis>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % õ
+<U00D5> <o-diaeresis>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Õ
+<U00F4> <o-diaeresis>;"<BASE><VRNT3>";"<MIN><MIN>";IGNORE % ô
+<U00D4> <o-diaeresis>;"<BASE><VRNT3>";"<CAP><MIN>";IGNORE % Ô
+<U01EB> <o-diaeresis>;"<BASE><VRNT4>";"<MIN><MIN>";IGNORE % ǫ
+<U01EA> <o-diaeresis>;"<BASE><VRNT4>";"<CAP><MIN>";IGNORE % Ǫ
-reorder-after <th>
-<noae>
-<oslash>
-<aring>
-<svae>
-<oumlaut>
-
-reorder-after <U0061>
-<U00E0> <agrave>;<GRA>;<MIN>;IGNORE % 201 à
-<U00E1> <aacute>;<ACA>;<MIN>;IGNORE % 200 á
-<U00E2> <acircumflex>;<CIR>;<MIN>;IGNORE % 202 â
-<U00E3> <atilde>;<TIL>;<MIN>;IGNORE % 203 ã
-
-reorder-after <U0041>
-<U00C0> <agrave>;<GRA>;<CAP>;IGNORE % 321 À
-<U00C1> <aacute>;<ACA>;<CAP>;IGNORE % 320 Á
-<U00C2> <acircumflex>;<CIR>;<CAP>;IGNORE % 322 Â
-<U00C3> <atilde>;<TIL>;<CAP>;IGNORE % 323 Ã
-
-reorder-after <U0063>
-<U00E7> <ccedilla>;<CDI>;<MIN>;IGNORE % 212 ç
-<U010D> <ccaron>;<CAR>;<MIN>;IGNORE % 215 <c<>
-
-reorder-after <U0043>
-<U00C7> <ccedilla>;<CDI>;<CAP>;IGNORE % 332 Ç
-<U010C> <ccaron>;<CAR>;<CAP>;IGNORE % 335 <C<>
-
-reorder-after <U010B>
-<U0292> <ezh>;<BAS>;<MIN>;IGNORE % ezh
-<U01EF> <ezhcaron>;<CAR>;<MIN>;IGNORE % ezh caron
-
-reorder-after <U010A>
-<U01B7> <ezh>;<BAS>;<MIN>;IGNORE % EZH
-<U01EE> <ezhcaron>;<CAR>;<CAP>;IGNORE % EZH caron
-
-reorder-after <U0064>
-<U00F0> <eth>;<PCL>;<MIN>;IGNORE % 218 ð
-<U0111> <dstroke>;<OBL>;<MIN>;IGNORE % 220 <d//>
-
-reorder-after <U0044>
-<U00D0> <eth>;<PCL>;<CAP>;IGNORE % 338 Ð
-<U0110> <dstroke>;<OBL>;<CAP>;IGNORE % 340 <D//>
-
-reorder-after <U0066>
-<U0192> <fhook>;<BAS>;<MIN>;IGNORE % f WITH HOOK
-
-reorder-after <U0123>
-<U01E7> <gcaron>;<CAR>;<MIN>;IGNORE % gcaron
-<U01E5> <gstroke>;<OBL>;<MIN>;IGNORE % gstroke
-
-reorder-after <U0122>
-<U01E6> <gcaron>;<CAR>;<MIN>;IGNORE % Gcaron
-<U01E4> <gstroke>;<OBL>;<MIN>;IGNORE % Gstroke
-
-reorder-after <U0137>
-<U01E9> <kcaron>;<CAR>;<MIN>;IGNORE % kcaron
-reorder-after <U0136>
-<U01E8> <kcaron>;<CAR>;<CAP>;IGNORE % Kcaron
-
-reorder-after <U0053>
-<U00DF> <ssharp>;"<LIG><LIG>";"<MIN><MIN>";IGNORE % ß
-<U0161> <scaron>;<CAR>;<MIN>;IGNORE % 288 <s<>
-<U0160> <scaron>;<CAR>;<CAP>;IGNORE % 405 <S<>
-
-
-reorder-after <U00E3>
-<U00E4> <svae>;<REU>;<MIN>;IGNORE % ä
-<U00E5> <aring>;<RNE>;<MIN>;IGNORE % å
-<U00E6> <noae>;<LIG>;<MIN>;IGNORE % æ
-reorder-after <U00F5>
-<U00F6> <oumlaut>;<REU>;<MIN>;IGNORE % ö
-<U00F8> <oslash>;<OBL>;<MIN>;IGNORE % ø
-
-reorder-after <U00C3>
-<U00C4> <svae>;<REU>;<CAP>;IGNORE % Ä
-<U00C5> <aring>;<RNE>;<CAP>;IGNORE % Å
-<U00C6> <noae>;<LIG>;<CAP>;IGNORE % Æ
-reorder-after <U00D5>
-<U00D6> <oumlaut>;<REU>;<CAP>;IGNORE % Ö
-<U00D8> <oslash>;<OBL>;<CAP>;IGNORE % Ø
-
-% ü/Ü is treated like y/Y but is sorted after the latter
-reorder-after <U00FB>
-<U00FC> <y>;<REU>;<MIN>;IGNORE % ü
-reorder-after <U00DB>
-<U00DC> <y>;<REU>;<CAP>;IGNORE % Ü
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/si_LK b/localedata/locales/si_LK
index 66ebbea138..dc4a9eb04d 100644
--- a/localedata/locales/si_LK
+++ b/localedata/locales/si_LK
@@ -52,6 +52,48 @@ LC_COLLATE
% Copy the template from ISO/IEC 14651
copy "iso14651_t1"
+% CLDR collation rules for Sinhala:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/si.xml)
+%
+% <collation type="standard" references="Sri Lanka standard 1134 Part 1 - 2007 edition - Sri Lanka Standards Institution">
+% <cr><![CDATA[
+% [normalization on]
+% [reorder Sinh Deva Beng Guru Gujr Orya Taml Telu Knda Mlym]
+% &ඖ<ං<ඃ
+% &ඥ<ඤ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/si.xml)
+%
+% <exemplarCharacters type="index">[අ ආ ඇ ඈ ඉ ඊ උ ඌ ඍ එ ඒ ඓ ඔ ඕ ඖ ක ඛ ග ඝ ඞ ඟ ච ඡ ජ ඣ ඥ ඤ ට ඨ ඩ ඪ ණ ඬ ත ථ ද ධ න ඳ ප ඵ බ භ ම ඹ ය ර ල ව ශ ෂ ස හ ළ ෆ]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+
+collating-symbol <sinhala-sign-anusvaraya>
+collating-symbol <sinhala-sign-visargaya>
+collating-symbol <sinhala-letter-taaluja-naasikyaya>
+
+% &ඖ<ං<ඃ
+reorder-after <S0D96> % ඖ U+0D96 SINHALA LETTER AUYANNA
+<sinhala-sign-anusvaraya>
+<sinhala-sign-visargaya>
+
+% &ඥ<ඤ
+reorder-after <S0DA5> % ඥ U+0DA5 SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA
+<sinhala-letter-taaluja-naasikyaya>
+
+% &ඖ<ං<ඃ
+<U0D82> <sinhala-sign-anusvaraya>;<ANUSVARA>;<MIN>;<U0D82> % SINHALA SIGN ANUSVARAYA
+<U0D83> <sinhala-sign-visargaya>;<VISARGA>;<MIN>;<U0D83> % SINHALA SIGN VISARGAYA
+
+% &ඥ<ඤ
+<U0DA4> <sinhala-letter-taaluja-naasikyaya>;<BASE>;<MIN>;<U0DA4> % SINHALA LETTER TAALUJA NAASIKYAYA
+
+reorder-end
+
END LC_COLLATE
diff --git a/localedata/locales/sq_AL b/localedata/locales/sq_AL
index ae99fe5f6e..b16a459c56 100644
--- a/localedata/locales/sq_AL
+++ b/localedata/locales/sq_AL
@@ -49,147 +49,162 @@ translit_end
END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for :
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/sq.xml)
+%
+% <collation type="standard" >
+% <cr><![CDATA[
+% &[before 1]D<ç<<<Ç
+% &[before 1]E<dh<<<Dh<<<DH
+% &[before 1]F<ë<<<Ë
+% &[before 1]H<gj<<<Gj<<<GJ
+% &[before 1]M<ll<<<Ll<<<LL
+% &[before 1]O<nj<<<Nj<<<NJ
+% &[before 1]S<rr<<<Rr<<<RR
+% &[before 1]T<sh<<<Sh<<<SH
+% &[before 1]U<th<<<Th<<<TH
+% &[before 1]Y<xh<<<Xh<<<XH
+% &[before 1]Ʒ<zh<<<Zh<<<ZH
+% ]]></cr>
+% </collation >
+% <collation draft="unconfirmed" alt="proposed" type="standard" >
+% <cr><![CDATA[
+% &[before 1]D<ç<<<Ç
+% &[before 1]E<dh<<<dH<<<Dh<<<DH
+% &[before 1]F<ë<<<Ë
+% &[before 1]H<gj<<<gJ<<<Gj<<<GJ
+% &[before 1]M<ll<<<lL<<<Ll<<<LL
+% &[before 1]O<nj<<<nJ<<<Nj<<<NJ
+% &[before 1]S<rr<<<rR<<<Rr<<<RR
+% &[before 1]T<sh<<<sH<<<Sh<<<SH
+% &[before 1]U<th<<<tH<<<Th<<<TH
+% &[before 1]Y<xh<<<xH<<<Xh<<<XH
+% &[before 1]Ʒ<zh<<<zH<<<Zh<<<ZH
+% ]]></cr>
+% </collation >
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/sq.xml)
+%
+% <exemplarCharacters type="index">[A B C Ç D {DH} E Ë F G {GJ} H I J K L {LL} M N {NJ} O P Q R {RR} S {SH} T {TH} U V X {XH} Y Z {ZH}]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
-% Copy the template from ISO/IEC 14651
copy "iso14651_t1"
-%% a, b, c, c,, d, dh, e, e:, f, g, gj, h, i, j, k, l, ll, m, n, nj, o, p, q
-%% r, rr, s, sh, t, th, u, v, x, xh, y, z, zh.
-collating-symbol <ccedilla>
-collating-symbol <d-h-sq>
-collating-element <D-H> from "<U0044><U0048>"
-collating-element <d-h> from "<U0064><U0068>"
-collating-element <D-h> from "<U0044><U0068>"
-collating-element <d-H> from "<U0064><U0048>"
-collating-symbol <ediaeresis>
-collating-symbol <g-j-sq>
-collating-element <G-J> from "<U0047><U004A>"
-collating-element <g-j> from "<U0067><U006A>"
-collating-element <G-j> from "<U0047><U006A>"
-collating-element <g-J> from "<U0067><U004A>"
-collating-symbol <l-l-sq>
-collating-element <L-L> from "<U004C><U004C>"
-collating-element <l-l> from "<U006C><U006C>"
-collating-element <L-l> from "<U004C><U006C>"
-collating-element <l-L> from "<U006C><U004C>"
-collating-symbol <n-j-sq>
-collating-element <N-J> from "<U004E><U004A>"
-collating-element <n-j> from "<U006E><U006A>"
-collating-element <N-j> from "<U004E><U006A>"
-collating-element <n-J> from "<U006E><U004A>"
-collating-symbol <r-r-sq>
-collating-element <R-R> from "<U0052><U0052>"
-collating-element <r-r> from "<U0072><U0072>"
-collating-element <R-r> from "<U0052><U0072>"
-collating-element <r-R> from "<U0072><U0052>"
-collating-symbol <s-h-sq>
-collating-element <S-H> from "<U0053><U0048>"
-collating-element <s-h> from "<U0073><U0068>"
-collating-element <S-h> from "<U0053><U0068>"
-collating-element <s-H> from "<U0073><U0048>"
-collating-symbol <t-h-sq>
-collating-element <T-H> from "<U0054><U0048>"
-collating-element <t-h> from "<U0074><U0068>"
-collating-element <T-h> from "<U0054><U0068>"
-collating-element <t-H> from "<U0074><U0048>"
-collating-symbol <x-h-sq>
-collating-element <X-H> from "<U0058><U0048>"
-collating-element <x-h> from "<U0078><U0068>"
-collating-element <X-h> from "<U0058><U0068>"
-collating-element <x-H> from "<U0078><U0048>"
-collating-symbol <z-h-sq>
-collating-element <Z-H> from "<U005A><U0048>"
-collating-element <z-h> from "<U007A><U0068>"
-collating-element <Z-h> from "<U005A><U0068>"
-collating-element <z-H> from "<U007A><U0048>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <c>
-<ccedilla>
-reorder-after <d>
-<d-h-sq>
-reorder-after <e>
-<ediaeresis>
-reorder-after <g>
-<g-j-sq>
-reorder-after <l>
-<l-l-sq>
-reorder-after <n>
-<n-j-sq>
-reorder-after <r>
-<r-r-sq>
-reorder-after <s>
-<s-h-sq>
-reorder-after <t>
-<t-h-sq>
-reorder-after <x>
-<x-h-sq>
-reorder-after <z>
-<z-h-sq>
-
-reorder-after <U0063>
-<U00E7> <ccedilla>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <ccedilla>;<CDI>;<CAP>;IGNORE
-reorder-after <U0064>
-<d-h> <d-h-sq>;<PCT>;<MIN>;IGNORE
-<d-H> <d-h-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0044>
-<D-H> <d-h-sq>;<PCT>;<CAP>;IGNORE
-<D-h> <d-h-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U0065>
-<U00EB> <ediaeresis>;<REU>;<MIN>;IGNORE
-reorder-after <U0045>
-<U00CB> <ediaeresis>;<REU>;<CAP>;IGNORE
-reorder-after <U0067>
-<g-j> <g-j-sq>;<PCT>;<MIN>;IGNORE
-<g-J> <g-j-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<G-J> <g-j-sq>;<PCT>;<CAP>;IGNORE
-<G-j> <g-j-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U006C>
-<l-l> <l-l-sq>;<PCT>;<MIN>;IGNORE
-<l-L> <l-l-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004C>
-<L-L> <l-l-sq>;<PCT>;<CAP>;IGNORE
-<L-l> <l-l-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U006E>
-<n-j> <n-j-sq>;<PCT>;<MIN>;IGNORE
-<n-J> <n-j-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004E>
-<N-J> <n-j-sq>;<PCT>;<CAP>;IGNORE
-<N-j> <n-j-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U0072>
-<r-r> <r-r-sq>;<PCT>;<MIN>;IGNORE
-<r-R> <r-r-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0052>
-<R-R> <r-r-sq>;<PCT>;<CAP>;IGNORE
-<R-r> <r-r-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U0074>
-<t-h> <t-h-sq>;<PCT>;<MIN>;IGNORE
-<t-H> <t-h-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0054>
-<T-H> <t-h-sq>;<PCT>;<CAP>;IGNORE
-<T-h> <t-h-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U0078>
-<x-h> <x-h-sq>;<PCT>;<MIN>;IGNORE
-<x-H> <x-h-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U0058>
-<X-H> <x-h-sq>;<PCT>;<CAP>;IGNORE
-<X-h> <x-h-sq>;<PCT>;<CAP-MIN>;IGNORE
-reorder-after <U007A>
-<z-h> <z-h-sq>;<PCT>;<MIN>;IGNORE
-<z-H> <z-h-sq>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U005A>
-<Z-H> <z-h-sq>;<PCT>;<CAP>;IGNORE
-<Z-h> <z-h-sq>;<PCT>;<CAP-MIN>;IGNORE
+collating-symbol <c-cedilla>
+collating-symbol <dh-digraph>
+collating-symbol <e-diaeresis>
+collating-symbol <gj-digraph>
+collating-symbol <ll-digraph>
+collating-symbol <nj-digraph>
+collating-symbol <rr-digraph>
+collating-symbol <sh-digraph>
+collating-symbol <th-digraph>
+collating-symbol <xh-digraph>
+collating-symbol <zh-digraph>
+
+collating-element <dh> from "dh"
+collating-element <dH> from "dH"
+collating-element <Dh> from "Dh"
+collating-element <DH> from "DH"
+collating-element <gj> from "gj"
+collating-element <gJ> from "gJ"
+collating-element <Gj> from "Gj"
+collating-element <GJ> from "GJ"
+collating-element <ll> from "ll"
+collating-element <lL> from "lL"
+collating-element <Ll> from "Ll"
+collating-element <LL> from "LL"
+collating-element <nj> from "nj"
+collating-element <nJ> from "nJ"
+collating-element <Nj> from "Nj"
+collating-element <NJ> from "NJ"
+collating-element <rr> from "rr"
+collating-element <rR> from "rR"
+collating-element <Rr> from "Rr"
+collating-element <RR> from "RR"
+collating-element <sh> from "sh"
+collating-element <sH> from "sH"
+collating-element <Sh> from "Sh"
+collating-element <SH> from "SH"
+collating-element <th> from "th"
+collating-element <tH> from "tH"
+collating-element <Th> from "Th"
+collating-element <TH> from "TH"
+collating-element <xh> from "xh"
+collating-element <xH> from "xH"
+collating-element <Xh> from "Xh"
+collating-element <XH> from "XH"
+collating-element <zh> from "zh"
+collating-element <zH> from "zH"
+collating-element <Zh> from "Zh"
+collating-element <ZH> from "ZH"
+
+reorder-after <BEFORE-D>
+<c-cedilla>
+reorder-after <BEFORE-E>
+<dh-digraph>
+reorder-after <BEFORE-F>
+<e-diaeresis>
+reorder-after <BEFORE-H>
+<gj-digraph>
+reorder-after <BEFORE-M>
+<ll-digraph>
+reorder-after <BEFORE-O>
+<nj-digraph>
+reorder-after <BEFORE-S>
+<rr-digraph>
+reorder-after <BEFORE-T>
+<sh-digraph>
+reorder-after <BEFORE-U>
+<th-digraph>
+reorder-after <BEFORE-Y>
+<xh-digraph>
+reorder-after <BEFORE-EZH>
+<zh-digraph>
+
+<U00E7> <c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <c-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ç
+<dh> <dh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<dH> <dh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Dh> <dh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<DH> <dh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<U00EB> <e-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ë
+<U00CB> <e-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ë
+<gj> <gj-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<gJ> <gj-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Gj> <gj-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<GJ> <gj-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ll> <ll-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<lL> <ll-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ll> <ll-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<LL> <ll-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<nj> <nj-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<nJ> <nj-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Nj> <nj-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<NJ> <nj-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<rr> <rr-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<rR> <rr-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Rr> <rr-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<RR> <rr-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<sh> <sh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sH> <sh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Sh> <sh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<SH> <sh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<th> <th-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<tH> <th-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Th> <th-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<TH> <th-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<xh> <xh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<xH> <xh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Xh> <xh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<XH> <xh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<zh> <zh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<zH> <zh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Zh> <zh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<ZH> <zh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/sv_FI b/localedata/locales/sv_FI
index 8bbe196b39..6a8801374f 100644
--- a/localedata/locales/sv_FI
+++ b/localedata/locales/sv_FI
@@ -54,7 +54,7 @@ copy "sv_SE"
END LC_CTYPE
LC_COLLATE
-copy "fi_FI"
+copy "sv_SE"
END LC_COLLATE
LC_MESSAGES
diff --git a/localedata/locales/sv_FI@euro b/localedata/locales/sv_FI@euro
index 01976df647..eecd06e03c 100644
--- a/localedata/locales/sv_FI@euro
+++ b/localedata/locales/sv_FI@euro
@@ -47,7 +47,7 @@ copy "sv_FI"
END LC_CTYPE
LC_COLLATE
-copy "fi_FI"
+copy "sv_SE"
END LC_COLLATE
LC_MESSAGES
diff --git a/localedata/locales/sv_SE b/localedata/locales/sv_SE
index 0591695b3e..aa28c23776 100644
--- a/localedata/locales/sv_SE
+++ b/localedata/locales/sv_SE
@@ -60,20 +60,48 @@ END LC_IDENTIFICATION
LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Swedish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/sv.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% &D<<đ<<<Đ<<ð<<<Ð
+% &t<<<þ/h
+% &T<<<Þ/H
+% &v<<<V<<w<<<W
+% &Y<<ü<<<Ü<<ű<<<Ű
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<<ę<<<Ę<ö<<<Ö<<ø<<<Ø<<ő<<<Ő<<œ<<<Œ<<ô<<<Ô
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/sv.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+
collating-symbol <aring>
-collating-symbol <ae>
-collating-symbol <oumlaut>
-collating-symbol <oslash>
+collating-symbol <a-diaresis>
+collating-symbol <o-diaresis>
+
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<<ę<<<Ę<ö<<<Ö<<ø<<<Ø<<ő<<<Ő<<œ<<<Œ<<ô<<<Ô
+reorder-after <AFTER-Z>
+<a-ring>
+<a-diaresis>
+<o-diaresis>
-% æ is sorted after ä and å etc.
-reorder-after <REU>
-<LIG>
+% &D<<đ<<<Đ<<ð<<<Ð
+<U0110> <S0064>;"<BASE><BARRE>";"<CAP><MIN>";IGNORE % Đ
+<U0111> <S0064>;"<BASE><BARRE>";"<MIN><MIN>";IGNORE % đ
+<U00D0> <S0064>;"<BASE><VRNT1>";"<COMPATCAP><COMPAT>";IGNORE % Ð
+<U00F0> <S0064>;"<BASE><VRNT1>";"<COMPAT><COMPAT>";IGNORE % ð
-reorder-after <z>
-<aring>
-<ae>
-<oumlaut>
-<oslash>
+% &T<<<Þ/H
+% &t<<<þ/h
+<U00DE> "<S0074><S0068>";"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Þ
+<U00FE> "<S0074><S0068>";"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % þ
% The letter w is normally not present in the Swedish alphabet. It
% exists in some names in Swedish and foreign words, but is accounted
@@ -81,32 +109,39 @@ reorder-after <z>
% ordered alphabetically among the words and names with 'v'. If two
% words or names are only to be distinguished by 'v' or % 'w', 'v' is
% placed before 'w'.
-reorder-after <U0056>
-<U0057> <v>;<BAS>;<CAP>;<w> % W
-reorder-after <U0076>
-<U0077> <v>;<BAS>;<MIN>;<w> % w
-
-reorder-after <U00E3>
-<U00E4> <ae>;<REU>;<MIN>;IGNORE % ä
-<U00E5> <aring>;<RNE>;<MIN>;IGNORE % å
-<U00E6> <ae>;<LIG>;<MIN>;IGNORE % æ
-reorder-after <U00F5>
-<U00F6> <oumlaut>;<REU>;<MIN>;IGNORE % ö
-<U00F8> <oslash>;<OBL>;<MIN>;IGNORE % ø
-
-reorder-after <U00C3>
-<U00C4> <ae>;<REU>;<CAP>;IGNORE % Ä
-<U00C5> <aring>;<RNE>;<CAP>;IGNORE % Å
-<U00C6> <ae>;<LIG>;<CAP>;IGNORE % Æ
-reorder-after <U00D5>
-<U00D6> <oumlaut>;<REU>;<CAP>;IGNORE % Ö
-<U00D8> <oslash>;<OBL>;<CAP>;IGNORE % Ø
-
-% ü/Ü is treated like y/Y but is sorted after the latter
-reorder-after <U00FB>
-<U00FC> <y>;<REU>;<MIN>;IGNORE % ü
-reorder-after <U00DB>
-<U00DC> <y>;<REU>;<CAP>;IGNORE % Ü
+
+% &v<<<V<<w<<<W
+<U0057> <S0076>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % W
+<U0077> <S0076>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % w
+
+% &Y<<ü<<<Ü<<ű<<<Ű
+<U00DC> <S0079>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ü
+<U00FC> <S0079>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ü
+<U0170> <S0079>;"<BASE><2AIGU>";"<CAP><MIN>";IGNORE % Ű
+<U0171> <S0079>;"<BASE><2AIGU>";"<MIN><MIN>";IGNORE % ű
+
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<<ę<<<Ę<ö<<<Ö<<ø<<<Ø<<ő<<<Ő<<œ<<<Œ<<ô<<<Ô
+<U00C5> <a-ring>;"<BASE><BASE>";"<COMPATCAP><COMPATCAP>";IGNORE % Å
+<U00E5> <a-ring>;"<BASE><BASE>";"<COMPAT><COMPAT>";IGNORE % å
+
+<U00C4> <a-diaresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ä
+<U00E4> <a-diaresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ä
+<U00C6> <a-diaresis>;"<BASE><VRNT1>";"<COMPATCAP><COMPATCAP>";IGNORE % Æ
+<U00E6> <a-diaresis>;"<BASE><VRNT1>";"<COMPAT><COMPAT>";IGNORE % æ
+<U0118> <a-diaresis>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ę
+<U0119> <a-diaresis>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ę
+
+<U00D6> <o-diaresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ö
+<U00F6> <o-diaresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ö
+<U00D8> <o-diaresis>;"<BASE><VRNT1>";"<COMPATCAP><COMPATCAP>";IGNORE % Ø
+<U00F8> <o-diaresis>;"<BASE><VRNT1>";"<COMPAT><COMPAT>";IGNORE % ø
+<U0150> <o-diaresis>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ő
+<U0151> <o-diaresis>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ő
+<U0152> <o-diaresis>;"<BASE><VRNT3>";"<CAP><MIN>";IGNORE % Œ
+<U0153> <o-diaresis>;"<BASE><VRNT3>";"<MIN><MIN>";IGNORE % œ
+<U00D4> <o-diaresis>;"<BASE><VRNT4>";"<CAP><MIN>";IGNORE % Ô
+<U00F4> <o-diaresis>;"<BASE><VRNT4>";"<MIN><MIN>";IGNORE % ô
+
reorder-end
END LC_COLLATE
diff --git a/localedata/locales/szl_PL b/localedata/locales/szl_PL
index 574f83093d..8d5de2112e 100644
--- a/localedata/locales/szl_PL
+++ b/localedata/locales/szl_PL
@@ -53,6 +53,10 @@ copy "pl_PL"
END LC_CTYPE
LC_COLLATE
+% There is no collation information in CLDR for Silesian
+%
+% A Ã B C Ć D E F G H I J K L Ł M N N Ń O Õ Ō Ô Ŏ P Q R S Ś T U V W X Y Z Ź Ż
+
copy "iso14651_t1"
collating-symbol <atilde>
@@ -62,70 +66,52 @@ collating-symbol <nacute>
collating-symbol <otilde>
collating-symbol <omacron>
collating-symbol <ocircumflex>
-collating-symbol <U_014F>
+collating-symbol <obreve>
+collating-symbol <sacute>
collating-symbol <zacute>
collating-symbol <zdot>
-reorder-after <a>
+reorder-after <AFTER-A>
<atilde>
-
-reorder-after <c>
+reorder-after <AFTER-C>
<cacute>
-
-reorder-after <l>
+reorder-after <AFTER-L>
<lstroke>
-
-reorder-after <n>
+reorder-after <AFTER-N>
<nacute>
-
-reorder-after <o>
+reorder-after <AFTER-O>
<otilde>
<omacron>
<ocircumflex>
-<U014F>
-
-reorder-after <s>
+<obreve>
+reorder-after <AFTER-S>
<sacute>
-
-reorder-after <z>
+reorder-after <AFTER-Z>
<zacute>
<zdot>
-reorder-after <U0061>
-<U00E3> <atilde>;<BAS>;<MIN>;IGNORE
-<U00C3> <atilde>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0063>
-<U0107> <cacute>;<BAS>;<MIN>;IGNORE
-<U0106> <cacute>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006C>
-<U0142> <lstroke>;<BAS>;<MIN>;IGNORE
-<U0141> <lstroke>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U0144> <nacute>;<BAS>;<MIN>;IGNORE
-<U0143> <nacute>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F5> <otilde>;<BAS>;<MIN>;IGNORE
-<U00D5> <otilde>;<BAS>;<CAP>;IGNORE
-<U014D> <omacron>;<BAS>;<MIN>;IGNORE
-<U013D> <omacron>;<BAS>;<CAP>;IGNORE
-<U00F4> <ocircumflex>;<BAS>;<MIN>;IGNORE
-<U00D4> <ocircumflex>;<BAS>;<CAP>;IGNORE
-<U014F> <U014F>;<BAS>;<MIN>;IGNORE
-<U014F> <U014F>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015B> <sacute>;<BAS>;<MIN>;IGNORE
-<U015A> <sacute>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U007A>
-<U017A> <zacute>;<BAS>;<MIN>;IGNORE
-<U0179> <zacute>;<BAS>;<CAP>;IGNORE
-<U017C> <zdot>;<BAS>;<MIN>;IGNORE
-<U017B> <zdot>;<BAS>;<CAP>;IGNORE
+<U00E3> <atilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ã
+<U00C3> <atilde>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ã
+<U0107> <cacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ć
+<U0106> <cacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ć
+<U0142> <lstroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ł
+<U0141> <lstroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ł
+<U0144> <nacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ń
+<U0143> <nacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ń
+<U00F5> <otilde>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % õ
+<U00D5> <otilde>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Õ
+<U014D> <omacron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ō
+<U014C> <omacron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ō
+<U00F4> <ocircumflex>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ô
+<U00D4> <ocircumflex>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ô
+<U014F> <obreve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ŏ
+<U014E> <obreve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ŏ
+<U015B> <sacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ś
+<U015A> <sacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ś
+<U017A> <zacute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ź
+<U0179> <zacute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ź
+<U017C> <zdot>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ż
+<U017B> <zdot>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ż
reorder-end
diff --git a/localedata/locales/tg_TJ b/localedata/locales/tg_TJ
index a1ba45adbf..35dfca4574 100644
--- a/localedata/locales/tg_TJ
+++ b/localedata/locales/tg_TJ
@@ -61,65 +61,61 @@ END LC_CTYPE
LC_COLLATE
+% There is no collation information for Tadjik in CLDR.
+%
% Tadjik cyrillic alphabet is:
-% <U0430>, <U0431>, <U0432>, <U0433>, <U0493> (cyr ghe with stroke), <U0434>, <U0435>,
-% <U0451>, <U0436>, <U0437>, <U0438>, <U04E3> (cyr i with macron), <U0439>, <U043A>,
-% <U049B> (cyr k with descender), <U043B>, <U043C>, <U043D>, <U043E>, <U043F>, <U0440>,
-% <U0441>, <U0442>, <U0443>, <U04EF> (cyr u with macron), <U0444>, <U0445>,
-% <U04B3> (cyr ha with descender), <U0447>, <U04B7> (cyr che with descender),
-% <U0448>, <U044A> (cyr hard sign), <U044D>, <U044E>, <U044F>
+% а, б, в, г, ғ (cyr ghe with stroke), д, е,
+% ё, ж, з, и, ӣ (cyr i with macron), й, к,
+% қ (cyr k with descender), л, м, н, о, п, р,
+% с, т, у, ӯ (cyr u with macron), ф, х,
+% ҳ (cyr ha with descender), ч, ҷ (cyr che with descender),
+% ш, ъ (cyr hard sign), э, ю, я
+%
+% https://en.wikipedia.org/wiki/Tajik_alphabet#Cyrillic
+%
+% А а Б б В в Г г Ғ ғ Д д Е е Ё ё Ж ж З з И и Ӣ ӣ
+% Й й К к Қ қ Л л М м Н н О о П п Р р С с Т т У у
+% Ӯ ӯ Ф ф Х х Ҳ ҳ Ч ч Ҷ ҷ Ш ш Ъ ъ Э э Ю ю Я я
copy "iso14651_t1"
-collating-symbol <g-=>
-collating-symbol <i-=>
-collating-symbol <k,=>
-collating-symbol <u-=>
-collating-symbol <h,=>
-collating-symbol <c%,=>
-
-reorder-after <CYR-GHE>
-<g-=>
-reorder-after <CYR-I>
-<i-=>
-reorder-after <CYR-KA>
-<k,=>
-reorder-after <CYR-OU>
-<u-=>
-reorder-after <CYR-HA>
-<h,=>
-reorder-after <CYR-CHE>
-<c%,=>
-
-reorder-after <U0433>
-<U0493> <g-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0413>
-<U0492> <g-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0438>
-<U04E3> <i-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0418>
-<U04E2> <i-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043A>
-<U049B> <k,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041A>
-<U049A> <k,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04EF> <u-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04EE> <u-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0445>
-<U04B3> <h,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0425>
-<U04B2> <h,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0447>
-<U04B7> <c%,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0427>
-<U04B6> <c%,=>;<PCL>;<CAP>;IGNORE
+collating-symbol <ghe-with-stroke>
+collating-symbol <io>
+collating-symbol <i-with-macron>
+collating-symbol <k-descender>
+collating-symbol <u-macron>
+collating-symbol <ha-descender>
+collating-symbol <che-descender>
+
+reorder-after <S0433> % CYRILLIC SMALL LETTER GHE
+<ghe-with-stroke>
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<io>
+reorder-after <S0438> % CYRILLIC SMALL LETTER I
+<i-with-macron>
+reorder-after <S043A> % CYRILLIC SMALL LETTER KA
+<k-descender>
+reorder-after <S0443> % CYRILLIC SMALL LETTER U
+<u-macron>
+reorder-after <S0445> % CYRILLIC SMALL LETTER HA
+<ha-descender>
+reorder-after <S0447> % CYRILLIC SMALL LETTER CHE
+<che-descender>
+
+<U0493> <ghe-with-stroke>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ғ
+<U0492> <ghe-with-stroke>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ғ
+<U0451> <io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ё
+<U0401> <io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ё
+<U04E3> <i-with-macron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ӣ
+<U04E2> <i-with-macron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ӣ
+<U049B> <k-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % қ
+<U049A> <k-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Қ
+<U04EF> <u-macron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ӯ
+<U04EE> <u-macron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ӯ
+<U04B3> <ha-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ҳ
+<U04B2> <ha-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ҳ
+<U04B7> <che-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ҷ
+<U04B6> <che-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ҷ
reorder-end
diff --git a/localedata/locales/ti_ER b/localedata/locales/ti_ER
index e3f6f36816..77b9666c5e 100644
--- a/localedata/locales/ti_ER
+++ b/localedata/locales/ti_ER
@@ -155,7 +155,9 @@ END LC_ADDRESS
LC_MESSAGES
yesexpr "^[+1yY<U12A5>]"
noexpr "^[-0nN<U1290>]"
+% እወ
yesstr "<U12A5><U12C8>"
+% ነኖእ
nostr "<U1290><U1296><U12A5>"
END LC_MESSAGES
diff --git a/localedata/locales/tk_TM b/localedata/locales/tk_TM
index 7950d0d772..410afaf6c7 100644
--- a/localedata/locales/tk_TM
+++ b/localedata/locales/tk_TM
@@ -19,9 +19,6 @@ escape_char /
% Application: general
% Users: general
-% needed extra chars: ä, ö, ü, ý, ç, ş, ň, ž
-% cyrillic extra chars: җ (z%,=), ң (n,=), ө (o-=), ү (u'=), ә (sw=)
-
LC_IDENTIFICATION
title "Turkmen locale for Turkmenistan"
@@ -59,83 +56,83 @@ include "translit_combining";""
% cyrillic -> latin
% lower case letters
-<U0430> "<U0061>" % a= -> a
-<U0431> "<U0062>" % b= -> b
-<U0432> "<U0077>" % v= -> w
-<U0433> "<U0067>" % g= -> g
-<U0434> "<U0064>" % d= -> d
-<U0435> "<U0065>" % e= -> e (y'e also, but context dependent)
-<U0451> "<U00FD><U006F>" % io -> y'o
-<U0436> "<U017E>" % z% -> z<
-<U0497> "<U006A>" % z%, -> j
-<U0437> "<U007A>" % z= -> z
-<U0438> "<U0069>" % i= -> i
-<U0439> "<U00FD>" % j= -> y'
-<U043A> "<U006B>" % k= -> k
-<U043B> "<U006C>" % l= -> l
-<U043C> "<U006D>" % m= -> m
-<U043D> "<U006E>" % n= -> n
-<U04A3> "<U0148>" % n,= -> n<
-<U043E> "<U006F>" % o= -> o
-<U04E9> "<U00F6>" % o-= -> o:
-<U043F> "<U0070>" % p= -> p
-<U0440> "<U0072>" % r= -> r
-<U0441> "<U0073>" % s= -> s
-<U0442> "<U0074>" % t= -> t
-<U0443> "<U0075>" % u= -> u
-<U04AF> "<U00FC>" % u'= -> u:
-<U0444> "<U0066>" % f= -> f
-<U0445> "<U0068>" % h= -> h
-<U0446> "<U0074><U0073>" % c= -> ts
-<U0447> "<U00E7>" % c% -> c,
-<U0448> "<U015F>" % s% -> s,
-<U044A> "" % hard sign omitted
-<U044B> "<U0079>" % yeru -> y
-<U044C> "" % soft sign omitted.
-<U044D> "<U0065>" % je= -> e
-<U04D9> "<U00E4>" % sw= -> a:
-<U044E> "<U00FD><U0075>" % ju -> y'u
-<U044F> "<U00FD><U0061>" % ja -> y'a
+<U0430> "<U0061>" % а -> a
+<U0431> "<U0062>" % б -> b
+<U0432> "<U0077>" % в -> w
+<U0433> "<U0067>" % г -> g
+<U0434> "<U0064>" % д -> d
+<U0435> "<U0065>" % е -> e (y'e also, but context dependent)
+<U0451> "<U00FD><U006F>" % ё -> y'o
+<U0436> "<U017E>" % ж -> z<
+<U0497> "<U006A>" % җ -> j
+<U0437> "<U007A>" % з -> z
+<U0438> "<U0069>" % и -> i
+<U0439> "<U00FD>" % й -> y'
+<U043A> "<U006B>" % к -> k
+<U043B> "<U006C>" % л -> l
+<U043C> "<U006D>" % м -> m
+<U043D> "<U006E>" % н -> n
+<U04A3> "<U0148>" % ң -> n<
+<U043E> "<U006F>" % о -> o
+<U04E9> "<U00F6>" % ө -> o:
+<U043F> "<U0070>" % п -> p
+<U0440> "<U0072>" % р -> r
+<U0441> "<U0073>" % с -> s
+<U0442> "<U0074>" % т -> t
+<U0443> "<U0075>" % у -> u
+<U04AF> "<U00FC>" % ү -> u:
+<U0444> "<U0066>" % ф -> f
+<U0445> "<U0068>" % х -> h
+<U0446> "<U0074><U0073>" % ц -> ts
+<U0447> "<U00E7>" % ч -> c,
+<U0448> "<U015F>" % ш -> s,
+<U044A> "" % ъ hard sign omitted
+<U044B> "<U0079>" % ы -> y
+<U044C> "" % ь soft sign omitted.
+<U044D> "<U0065>" % э -> e
+<U04D9> "<U00E4>" % ә -> a:
+<U044E> "<U00FD><U0075>" % ю -> y'u
+<U044F> "<U00FD><U0061>" % я -> y'a
% upper case letters
-<U0410> "<U0041>" % a= -> a
-<U0411> "<U0042>" % b= -> b
-<U0412> "<U0057>" % v= -> w
-<U0413> "<U0047>" % g= -> g
-<U0414> "<U0044>" % d= -> d
-<U0415> "<U0045>" % e= -> e (y'e also, but context dependent)
-<U0401> "<U00DD><U006F>" % io -> y'o
-<U0416> "<U017D>" % z% -> z<
-<U0496> "<U004A>" % z%, -> j
-<U0417> "<U005A>" % z= -> z
-<U0418> "<U0049>" % i= -> i
-<U0419> "<U00DD>" % j= -> y'
-<U041A> "<U004B>" % k= -> k
-<U041B> "<U004C>" % l= -> l
-<U041C> "<U004D>" % m= -> m
-<U041D> "<U004E>" % n= -> n
-<U04A2> "<U0147>" % n,= -> n<
-<U041E> "<U004F>" % o= -> o
-<U04E8> "<U00D6>" % o-= -> o:
-<U041F> "<U0050>" % p= -> p
-<U0420> "<U0052>" % r= -> r
-<U0421> "<U0053>" % s= -> s
-<U0422> "<U0054>" % t= -> t
-<U0423> "<U0055>" % u= -> u
-<U04AE> "<U00DC>" % u'= -> u:
-<U0424> "<U0046>" % f= -> f
-<U0425> "<U0048>" % h= -> h
-<U0426> "<U0054><U0073>" % c= -> ts
-<U0427> "<U00C7>" % c% -> c,
-<U0428> "<U015E>" % s% -> s,
-<U042A> "" % hard sign omitted
-<U042B> "<U0059>" % yeru -> y
-<U042C> "" % soft sign omitted.
-<U042D> "<U0045>" % je= -> e
-<U04D8> "<U00C4>" % sw= -> a:
-<U042E> "<U00DD><U0075>" % ju -> y'u
-<U042F> "<U00DD><U0061>" % ja -> y'a
+<U0410> "<U0041>" % А -> a
+<U0411> "<U0042>" % Б -> b
+<U0412> "<U0057>" % В -> w
+<U0413> "<U0047>" % Г -> g
+<U0414> "<U0044>" % Д -> d
+<U0415> "<U0045>" % Е -> e (y'e also, but context dependent)
+<U0401> "<U00DD><U006F>" % Ё -> y'o
+<U0416> "<U017D>" % Ж -> z<
+<U0496> "<U004A>" % Җ -> j
+<U0417> "<U005A>" % З -> z
+<U0418> "<U0049>" % И -> i
+<U0419> "<U00DD>" % Й -> y'
+<U041A> "<U004B>" % К -> k
+<U041B> "<U004C>" % Л -> l
+<U041C> "<U004D>" % М -> m
+<U041D> "<U004E>" % Н -> n
+<U04A2> "<U0147>" % Ң -> n<
+<U041E> "<U004F>" % О -> o
+<U04E8> "<U00D6>" % Ө -> o:
+<U041F> "<U0050>" % П -> p
+<U0420> "<U0052>" % Р -> r
+<U0421> "<U0053>" % С -> s
+<U0422> "<U0054>" % Т -> t
+<U0423> "<U0055>" % У -> u
+<U04AE> "<U00DC>" % Ү -> u:
+<U0424> "<U0046>" % Ф -> f
+<U0425> "<U0048>" % Х -> h
+<U0426> "<U0054><U0073>" % Ц -> ts
+<U0427> "<U00C7>" % Ч -> c,
+<U0428> "<U015E>" % Ш -> s,
+<U042A> "" % Ъ hard sign omitted
+<U042B> "<U0059>" % Ы -> y
+<U042C> "" % Ь soft sign omitted.
+<U042D> "<U0045>" % Э -> e
+<U04D8> "<U00C4>" % Ә -> a:
+<U042E> "<U00DD><U0075>" % Ю -> y'u
+<U042F> "<U00DD><U0061>" % Я -> y'a
translit_end
@@ -143,149 +140,121 @@ END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for Turkmen:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/tk.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% &C<ç<<<Ç
+% &E<ä<<<Ä
+% &J<ž<<<Ž
+% &N<ň<<<Ň
+% &O<ö<<<Ö
+% &S<ş<<<Ş
+% &U<ü<<<Ü
+% &Y<ý<<<Ý
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/tk.xml)
+%
+%
+% <exemplarCharacters type="index">[A B Ç D E Ä F G H I J Ž K L M N Ň O Ö P R S Ş T U Ü W Y Ý Z]</exemplarCharacters>
%
-% The turkmen latin alphabet order is:
-% (letters in parenthesis are not used in tk)
-% <a>, <b>, <c,> (<c>), <d>, <e>, <a:> (<sw>), <f>, <g>, <h>, <i>
-% <j>, <z<>, <k>, <l>, <m>, <n>, <n<> (<n?> <ng>), <o>, <o:>, <p>, (<q>),
-% <r>, <s>, <s,>, <t>, <u>, <u:>, (<v>) <w>, (<x>), <y>, <y'> (<y:>), <z>
+% https://en.wikipedia.org/wiki/Turkmen_alphabet
%
-% cyrillic alphabet order:
-% <a=>, <b=>, <v=>, <g=>, <d=>, <e=>, <io>, <z%>, <z%,=>, <z=>, <i=>,
-% <j=>, <k=>, <l=>, <m=>, <n=>, <n,=>, <o=>, <o-=>, <p=>, <r=>, <s=>,
-% <t=>, <u=>, <u'=>, <f=>, <h=>, <c=>, <c%>, <s%>, <='>, <y=>, <%'>,
-% <je>, <sw=>, <ju>, <ja>
+% Alphabetic order
%
+% Latin alphabet (1995-present)
+%
+% Aa, Bb, Çç, Dd, Ee, Ää, Ff, Gg, Hh, Ii, Jj, Žž, Kk, Ll, Mm, Nn, Ňň, Oo, Öö, Pp, Rr, Ss, Şş, Tt, Uu, Üü, Ww, Yy, Ýý, Zz
+%
+%Cyrillic alphabet
+%
+% Аа, Бб, Вв, Гг, Дд, Ее, Ёё, Жж, Җҗ, Зз, Ии, Йй, Кк, Лл, Мм, Нн, Ңң, Оо, Өө, Пп, Рр, Сс, Тт, Уу, Үү, Фф, Хх, (Цц), Чч, Шш, (Щщ), (Ъъ), Ыы, (Ьь), Ээ, Әә, Юю, Яя
copy "iso14651_t1"
-collating-symbol <c,>
-collating-symbol <a:>
-collating-symbol <z<>
-collating-symbol <n<>
-collating-symbol <o:>
-collating-symbol <s,>
-collating-symbol <u:>
-collating-symbol <y'>
-%
-collating-symbol <z,=>
-collating-symbol <n,=>
-collating-symbol <o-=>
-collating-symbol <u'=>
-collating-symbol <sw=>
-
-% priority given to Turkmen accents
-reorder-after <BAS>
-<CDI>
-<CAR>
-<ACA>
-<REU>
-
-reorder-after <b>
-<c,>
-reorder-after <e>
-<a:>
-reorder-after <j>
-<z<>
-reorder-after <n>
-<n<>
-reorder-after <o>
-<o:>
-reorder-after <s>
-<s,>
-reorder-after <u>
-<u:>
-reorder-after <y>
-<y'>
-
-reorder-after <CYR-ZHE>
-<z,=>
-reorder-after <CYR-EN>
-<n,=>
-reorder-after <CYR-O>
-<o-=>
-reorder-after <CYR-OUBRE>
-<u'=>
-reorder-after <CYR-E>
-<sw=>
-
-reorder-after <U0062>
-<U00E7> <c,>;<BAS>;<MIN>;IGNORE
-<U0063> <c,>;<BAS>;<MIN>;<c>
-reorder-after <U0042>
-<U00C7> <c,>;<BAS>;<CAP>;IGNORE
-<U0043> <c,>;<BAS>;<CAP>;<c>
-
-reorder-after <U0065>
-<U00E4> <a:>;<REU>;<MIN>;IGNORE
-<U0259> <a:>;<PCL>;<MIN>;IGNORE
-reorder-after <U0045>
-<U00C4> <a:>;<REU>;<CAP>;IGNORE
-<U018F> <a:>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U006A>
-<U017E> <z<>;<CAR>;<MIN>;IGNORE
-reorder-after <U004A>
-<U017D> <z<>;<CAR>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U0147> <n<>;<CAR>;<MIN>;IGNORE
-<U00F1> <n<>;<TIL>;<MIN>;IGNORE
-<U014B> <n<>;<PCL>;<MIN>;IGNORE
-reorder-after <U004E>
-<U0148> <n<>;<CAR>;<CAP>;IGNORE
-<U00D1> <n<>;<TIL>;<CAP>;IGNORE
-<U014A> <n<>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F6> <o:>;<REU>;<MIN>;IGNORE
-reorder-after <U004F>
-<U00D6> <o:>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FC> <u:>;<REU>;<MIN>;IGNORE
-<U0056> <w>;<BAS>;<CAP>;<v>
-<U0057> <w>;<BAS>;<CAP>;<w>
-reorder-after <U0055>
-<U00DC> <u:>;<REU>;<CAP>;IGNORE
-<U0076> <w>;<BAS>;<MIN>;<v>
-<U0077> <w>;<BAS>;<MIN>;<w>
-
-reorder-after <U0079>
-<U00FD> <y'>;<ACA>;<MIN>;IGNORE
-<U00FF> <y'>;<REU>;<MIN>;IGNORE
-reorder-after <U0059>
-<U00DD> <y'>;<ACA>;<CAP>;IGNORE
-<U0178> <y'>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0436>
-<U0497> <z,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0416>
-<U0496> <z,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043D>
-<U04A3> <n,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041D>
-<U04A2> <n,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043E>
-<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041E>
-<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U044D>
-<U04D9> <sw=>;<PCL>;<MIN>;IGNORE
-reorder-after <U042D>
-<U04D8> <sw=>;<PCL>;<CAP>;IGNORE
+collating-symbol <latin-c-cedilla>
+collating-symbol <latin-a-diaeresis>
+collating-symbol <latin-z-caron>
+collating-symbol <latin-n-caron>
+collating-symbol <latin-o-diaeresis>
+collating-symbol <latin-s-cedilla>
+collating-symbol <latin-u-diaeresis>
+collating-symbol <latin-y-acute>
+collating-symbol <cyrillic-io>
+collating-symbol <cyrillic-zhe-descender>
+collating-symbol <cyrillic-en-descender>
+collating-symbol <cyrillic-barred-o>
+collating-symbol <cyrillic-straight-u>
+collating-symbol <cyrillic-schwa>
+
+reorder-after <AFTER-C>
+<latin-c-cedilla>
+reorder-after <AFTER-E>
+<latin-a-diaeresis>
+reorder-after <AFTER-J>
+<latin-z-caron>
+reorder-after <AFTER-N>
+<latin-n-caron>
+reorder-after <AFTER-O>
+<latin-o-diaeresis>
+reorder-after <AFTER-S>
+<latin-s-cedilla>
+reorder-after <AFTER-U>
+<latin-u-diaeresis>
+reorder-after <AFTER-Y>
+<latin-y-acute>
+
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<cyrillic-io>
+reorder-after <S0436> % CYRILLIC SMALL LETTER ZHE
+<cyrillic-zhe-descender>
+reorder-after <S043D> % CYRILLIC SMALL LETTER EN
+<cyrillic-en-descender>
+reorder-after <S043E> % CYRILLIC SMALL LETTER O
+<cyrillic-barred-o>
+reorder-after <S0443> % CYRILLIC SMALL LETTER U
+<cyrillic-straight-u>
+reorder-after <S044D> % CYRILLIC SMALL LETTER E
+<cyrillic-schwa>
+
+<U00E7> <latin-c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <latin-c-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ç
+<U00E4> <latin-a-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ä
+<U00C4> <latin-a-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ä
+<U017E> <latin-z-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ž
+<U017D> <latin-z-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ž
+<U0148> <latin-n-caron>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ň
+<U0147> <latin-n-caron>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ň
+<U00F1> <latin-n-caron>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <latin-n-caron>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ñ
+<U014B> <latin-n-caron>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ŋ
+<U014A> <latin-n-caron>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ŋ
+<U00F6> <latin-o-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ö
+<U00D6> <latin-o-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ö
+<U015F> <latin-s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ş
+<U015E> <latin-s-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ş
+<U00FC> <latin-u-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <latin-u-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ü
+<U00FD> <latin-y-acute>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ý
+<U00DD> <latin-y-acute>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ý
+<U00FF> <latin-y-acute>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ÿ
+<U0178> <latin-y-acute>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ÿ
+<U0451> <cyrillic-io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ё
+<U0401> <cyrillic-io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ё
+<U0497> <cyrillic-zhe-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % җ
+<U0496> <cyrillic-zhe-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Җ
+<U04A3> <cyrillic-en-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ң
+<U04A2> <cyrillic-en-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ң
+<U04E9> <cyrillic-barred-o>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ө
+<U04E8> <cyrillic-barred-o>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ө
+<U04AF> <cyrillic-straight-u>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ү
+<U04AE> <cyrillic-straight-u>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ү
+<U04D9> <cyrillic-schwa>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ә
+<U04D8> <cyrillic-schwa>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ә
reorder-end
diff --git a/localedata/locales/tl_PH b/localedata/locales/tl_PH
index 07dd8271ae..40fd71d960 100644
--- a/localedata/locales/tl_PH
+++ b/localedata/locales/tl_PH
@@ -49,36 +49,7 @@ copy "en_DK"
END LC_CTYPE
LC_COLLATE
-copy "iso14651_t1"
-
-%% a b c d e f g h i j k l m n ng o p q r s t u v w x y z
-
-collating-symbol <n-g-ph>
-collating-element <N-G> from "<U004E><U0047>"
-collating-element <n-g> from "<U006E><U0067>"
-collating-element <N-g> from "<U004E><U0067>"
-collating-element <n-G> from "<U006E><U0047>"
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <MIN>
-<MIN-CAP>
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <n>
-<n-g-ph>
-
-reorder-after <U006E>
-<n-g> <n-g-ph>;<PCT>;<MIN>;IGNORE
-<n-G> <n-g-ph>;<PCT>;<MIN-CAP>;IGNORE
-reorder-after <U004E>
-<N-G> <n-g-ph>;<PCT>;<CAP>;IGNORE
-<N-g> <n-g-ph>;<PCT>;<CAP-MIN>;IGNORE
-
-reorder-end
-
+copy "fil_PH"
END LC_COLLATE
LC_MONETARY
diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR
index 39ee7e4127..173b5b7938 100644
--- a/localedata/locales/tr_TR
+++ b/localedata/locales/tr_TR
@@ -73,11 +73,18 @@ copy "iso14651_t1"
% &S<ş<<<Ş
% &U<ü<<<Ü
%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/tr.xml)
+%
+% <exemplarCharacters type="index">[A B C Ç D E F G H I İ J K L M N O Ö P Q R S Ş T U Ü V W X Y Z]</exemplarCharacters>
+%
% The following rules implement the same order for glibc.
collating-symbol <c-cedilla>
collating-symbol <g-breve>
collating-symbol <i-dotless>
+collating-symbol <i-dot>
collating-symbol <o-diaresis>
collating-symbol <s-cedilla>
collating-symbol <u-diaresis>
@@ -86,33 +93,33 @@ reorder-after <RES-1>
<CAP>
<MIN>
-reorder-after <c>
+reorder-after <AFTER-C>
<c-cedilla>
-reorder-after <g>
+reorder-after <AFTER-G>
<g-breve>
-reorder-after <h>
+reorder-after <BEFORE-I>
<i-dotless>
-reorder-after <o>
+reorder-after <AFTER-O>
<o-diaresis>
-reorder-after <s>
+reorder-after <AFTER-S>
<s-cedilla>
-reorder-after <u>
+reorder-after <AFTER-U>
<u-diaresis>
-<U00E7> <c-cedilla>;<BAS>;<MIN>;IGNORE % ç
-<U00C7> <c-cedilla>;<BAS>;<CAP>;IGNORE % Ç
-<U011F> <g-breve>;<BAS>;<MIN>;IGNORE % ğ
-<U011E> <g-breve>;<BAS>;<CAP>;IGNORE % Ğ
-<U0131> <i-dotless>;<BAS>;<MIN>;IGNORE % ı
-<U0049> <i-dotless>;<BAS>;<CAP>;IGNORE % I
-<U0069> <i>;<BAS>;<MIN>;IGNORE % i
-<U0130> <i>;<BAS>;<CAP>;IGNORE % İ
-<U00F6> <o-diaresis>;<BAS>;<MIN>;IGNORE % ö
-<U00D6> <o-diaresis>;<BAS>;<CAP>;IGNORE % Ö
-<U015F> <s-cedilla>;<BAS>;<MIN>;IGNORE % ş
-<U015E> <s-cedilla>;<BAS>;<CAP>;IGNORE % Ş
-<U00FC> <u-diaresis>;<BAS>;<MIN>;IGNORE % ü
-<U00DC> <u-diaresis>;<BAS>;<CAP>;IGNORE % Ü
+<U00E7> <c-cedilla>;<BASE>;<MIN>;IGNORE % ç
+<U00C7> <c-cedilla>;<BASE>;<CAP>;IGNORE % Ç
+<U011F> <g-breve>;<BASE>;<MIN>;IGNORE % ğ
+<U011E> <g-breve>;<BASE>;<CAP>;IGNORE % Ğ
+<U0131> <i-dotless>;<BASE>;<MIN>;IGNORE % ı
+<U0049> <i-dotless>;<BASE>;<CAP>;IGNORE % I
+<U0069> <S0069>;<BASE>;<MIN>;IGNORE % i
+<U0130> <S0069>;<BASE>;<CAP>;IGNORE % İ
+<U00F6> <o-diaresis>;<BASE>;<MIN>;IGNORE % ö
+<U00D6> <o-diaresis>;<BASE>;<CAP>;IGNORE % Ö
+<U015F> <s-cedilla>;<BASE>;<MIN>;IGNORE % ş
+<U015E> <s-cedilla>;<BASE>;<CAP>;IGNORE % Ş
+<U00FC> <u-diaresis>;<BASE>;<MIN>;IGNORE % ü
+<U00DC> <u-diaresis>;<BASE>;<CAP>;IGNORE % Ü
reorder-end
diff --git a/localedata/locales/tt_RU b/localedata/locales/tt_RU
index cc3cb8f263..b3b79b2ec2 100644
--- a/localedata/locales/tt_RU
+++ b/localedata/locales/tt_RU
@@ -63,167 +63,103 @@ END LC_CTYPE
LC_COLLATE
-% The new (2000) latin tatar alphabet is:
-% a, sw, b, c, c,, d, e, f, g, g(, h, i (dotless i),
-% i. (i with dot), j, k, q, l, m, n, ng, o, o--, p, r, s, s,,
-% t, u, u:, v, w, x, y, z
-% <U0430>,<U04D9>,<U0431>,<U04B9>,<U0447>,<U0434>,<U0435>,<U0444>,<U049D>,<U0493>,<U04BB>,
-% <U044B>, <U0438>, <U0436>,<U043A>,<U0433>,<U043B>,<U043C>,<U043D>,<U04A3>,
-% <U043E>,<U04E9>,<U043F>,<U0440>,<U0441>,<U0448>,<U0442>,<U0443>,<U04AF>,<U0432>,???, <U0445>,<U0458>,<U0437>
+% There is no collation information for Tatar in CLDR.
%
-% However, a commonly used alphabet in internet uses <U00E4>, <U00F6> and <U00F1>
-% for respectively <U0259>, <U0275> and <U014B>
+% Therefore, I use this:
+%
+% https://en.wikipedia.org/wiki/Tatar_language#Writing_system
+%
+% Tatar Cyrillic alphabet (letter order adopted in 1997):
+%
+% А а Ә ә Б б В в Г г Д д Е е Ё ё
+% Ж ж Җ җ З з И и Й й К к Л л М м
+% Н н Ң ң О о Ө ө П п Р р С с Т т
+% У у Ү ү Ф ф Х х Һ һ Ц ц Ч ч Ш ш
+% Щ щ Ъ ъ Ы ы Ь ь Э э Ю ю Я я
+%
+% 1999 Tatar Latin alphabet, made official by a law adopted by
+% Tatarstani authorities but annulled by the Tatar Supreme Court in 2004:[16]
+%
+% A a Ə ə B b C c Ç ç D d E e F f
+% G g Ğ ğ H h I ı İ i J j K k Q q
+% L l M m N n Ꞑ ꞑ O o Ɵ ɵ P p R r
+% S s Ş ş T t U u Ü ü V v W w X x
+% Y y Z z ’
+%
+% However, a commonly used alphabet in internet uses ä, ö and ñ
+% for respectively ə, ɵ and ŋ
copy "iso14651_t1"
-collating-symbol <sw>
-collating-symbol <c,>
-collating-symbol <g(>
-collating-symbol <i.>
-collating-symbol <ng>
-collating-symbol <o-->
-collating-symbol <s,>
-collating-symbol <u:>
-
-collating-symbol <g-=>
-collating-symbol <sw=>
-collating-symbol <k//=>
-collating-symbol <o-=>
-collating-symbol <u'=>
-collating-symbol <h'=>
-collating-symbol <c%//=>
-collating-symbol <n,=>
-
-reorder-after <a>
-<sw>
-reorder-after <c>
-<c,>
-reorder-after <g>
-<g(>
-reorder-after <h>
-<i>
-<i.>
-<j>
-<k>
-<q>
-reorder-after <n>
-<ng>
-reorder-after <o>
-<o-->
-reorder-after <s>
-<s,>
-reorder-after <u>
-<u:>
-
-% FIXME: check order of cyrillic letters (I copied from cyr Azeri)
-reorder-after <CYR-GHE>
-<g-=>
-reorder-after <CYR-IE>
-<sw=>
-reorder-after <CYR-KA>
-<k//=>
-reorder-after <CYR-EN>
-<n,=>
-reorder-after <CYR-O>
-<o-=>
-reorder-after <CYR-OUBRE>
-<u'=>
-reorder-after <CYR-HA>
-<h'=>
-reorder-after <CYR-CHE>
-<c%//=>
-
-reorder-after <U0061>
-<U0259> <sw>;<PCL>;<MIN>;IGNORE
-<U00E4> <sw>;<REU>;<MIN>;IGNORE
-reorder-after <U0041>
-<U018F> <sw>;<PCL>;<CAP>;IGNORE
-<U00C4> <sw>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0063>
-<U00E7> <c,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0043>
-<U00C7> <c,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0067>
-<U011F> <g(>;<BRE>;<MIN>;IGNORE
-reorder-after <U0047>
-<U011E> <g(>;<BRE>;<CAP>;IGNORE
-
-reorder-after <U0068>
-<U0131> <i>;<BAS>;<MIN>;IGNORE
-<U0069> <i.>;<PCT>;<MIN>;IGNORE
-reorder-after <U0048>
-<U0049> <i>;<BAS>;<CAP>;IGNORE
-<U0130> <i.>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U014B> <ng>;<PCL>;<MIN>;IGNORE
-<U00F1> <ng>;<TIL>;<MIN>;IGNORE
-reorder-after <U004E>
-<U014A> <ng>;<PCL>;<CAP>;IGNORE
-<U00D1> <ng>;<TIL>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U0275> <o-->;<REU>;<MIN>;IGNORE
-<U00F6> <o-->;<REU>;<MIN>;IGNORE
-reorder-after <U004F>
-<U019F> <o-->;<REU>;<CAP>;IGNORE
-<U00D6> <o-->;<REU>;<CAP>;IGNORE
-
-reorder-after <U0073>
-<U015F> <s,>;<CDI>;<MIN>;IGNORE
-reorder-after <U0053>
-<U015E> <s,>;<CDI>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FC> <u:>;<REU>;<MIN>;IGNORE
-reorder-after <U0055>
-<U00DC> <u:>;<REU>;<CAP>;IGNORE
-
-reorder-after <U0433>
-<U0493> <g-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0413>
-<U0492> <g-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0435>
-<U04D9> <sw=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0415>
-<U04D8> <sw=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043A>
-<U049D> <k//=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041A>
-<U049C> <k//=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043D>
-<U04A3> <n,=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041D>
-<U04A2> <n,=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U043E>
-<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
-reorder-after <U041E>
-<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0443>
-<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0423>
-<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0445>
-<U04BB> <h'=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0425>
-<U04BA> <h'=>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0447>
-<U04B9> <c%//=>;<PCL>;<MIN>;IGNORE
-reorder-after <U0427>
-<U04B8> <c%//=>;<PCL>;<CAP>;IGNORE
+collating-symbol <latin-schwa>
+collating-symbol <latin-c-cedilla>
+collating-symbol <latin-g-breve>
+collating-symbol <latin-i-dotless>
+collating-symbol <latin-i-dot>
+collating-symbol <latin-n-descender>
+collating-symbol <latin-o-barred>
+collating-symbol <latin-s-cedilla>
+collating-symbol <latin-u-diaeresis>
+collating-symbol <right-single-quotation-mark>
+collating-symbol <cyrillic-small-io>
+
+reorder-after <AFTER-A>
+<latin-schwa>
+reorder-after <AFTER-C>
+<latin-c-cedilla>
+reorder-after <AFTER-G>
+<latin-g-breve>
+reorder-after <AFTER-H>
+<latin-i-dotless>
+<latin-i-dot>
+reorder-after <AFTER-K>
+<S0071> % LATIN SMALL LETTER Q
+reorder-after <AFTER-N>
+<latin-n-descender>
+reorder-after <AFTER-O>
+<latin-o-barred>
+reorder-after <AFTER-S>
+<latin-s-cedilla>
+reorder-after <AFTER-U>
+<latin-u-diaeresis>
+reorder-after <AFTER-Z>
+<right-single-quotation-mark>
+
+reorder-after <S0435> % CYRILLIC SMALL LETTER IE
+<cyrillic-small-io>
+
+<U0259> <latin-schwa>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ə
+<U018F> <latin-schwa>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ə
+<U00E4> <latin-schwa>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ä
+<U00C4> <latin-schwa>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ä
+<U00E7> <latin-c-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ç
+<U00C7> <latin-c-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ç
+<U011F> <latin-g-breve>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ğ
+<U011E> <latin-g-breve>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ğ
+<U0131> <latin-i-dotless>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ı
+<U0049> <latin-i-dotless>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % I
+<U0069> <latin-i-dot>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % i
+<U0130> <latin-i-dot>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % İ
+<UA791> <latin-n-descender>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ꞑ
+<UA790> <latin-n-descender>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ꞑ
+<U00F1> <latin-n-descender>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ñ
+<U00D1> <latin-n-descender>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ñ
+<U014B> <latin-n-descender>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ŋ
+<U014A> <latin-n-descender>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ŋ
+<U0275> <latin-o-barred>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ɵ
+<U019F> <latin-o-barred>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ɵ
+<U00F6> <latin-o-barred>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE % ö
+<U00D6> <latin-o-barred>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE % Ö
+<U015F> <latin-s-cedilla>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ş
+<U015E> <latin-s-cedilla>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ş
+<U00FC> <latin-u-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <latin-u-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ü
+<U2019> <right-single-quotation-mark>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ’
+<U0451> <cyrillic-small-io>;"<BASE><BASE>";"<MIN><MIN>";IGNORE % ё
+<U0401> <cyrillic-small-io>;"<BASE><BASE>";"<CAP><MIN>";IGNORE % Ё
reorder-end
-
END LC_COLLATE
LC_MESSAGES
diff --git a/localedata/locales/tt_RU@iqtelif b/localedata/locales/tt_RU@iqtelif
index a343fe01aa..d4737c888e 100644
--- a/localedata/locales/tt_RU@iqtelif
+++ b/localedata/locales/tt_RU@iqtelif
@@ -54,20 +54,10 @@ LC_COLLATE
% <i> (dotless i), <i.> (i with dot), <i'>, <j>, <k>, <l>, <m>, <n>, <n?>, <o>,
% <o:>, <p>, <q>, <r>, <s>, <s,>, <t>, <u>, <u:>, <v>, <w>, <x>, <y>, <z>
+% The crh_UA locale already does all of the above correctly in LC_COLLATE
+% just copy it:
copy "crh_UA"
-collating-symbol <i'>
-
-reorder-after <i.>
-<i'>
-
-reorder-after <U0069>
-<U00ED> <i'>;<ACA>;<MIN>;IGNORE
-reorder-after <U0130>
-<U00CD> <i'>;<ACA>;<CAP>;IGNORE
-
-reorder-end
-
END LC_COLLATE
LC_CTYPE
diff --git a/localedata/locales/ug_CN b/localedata/locales/ug_CN
index 5bc5c681a1..1ba583c588 100644
--- a/localedata/locales/ug_CN
+++ b/localedata/locales/ug_CN
@@ -46,172 +46,48 @@ category "i18n:2012";LC_TELEPHONE
END LC_IDENTIFICATION
LC_COLLATE
-
+% CLDR collation rules for Uyghur:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/ug.xml)
%
-% http://en.wikipedia.org/wiki/Uyghur_language
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Arab]
+% &ا<ە<ب
+% &ك<گ<ڭ<ل
+% &ھ<و<ۇ<ۆ<ۈ<ۋ<ې<ى<ي
+% ]]></cr>
+% </collation>
%
-% CODE - UNICODE CODE POINT
-% UL - UYGHUR LATIN
-% IN? - IN ISO 14651_T1
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/ug.xml)
%
-% NO CODE UL ENGLISH NAME AR IN?
-% ======================================
-% 1 0627 a alef ا
-% 2 06d5 e ae ە ???
-% 3 0628 b beh ب
-% 4 067e p peh پ
-% 5 062a t teh ت
-% 6 062c j jeem ج
-% 7 0686 ch tcheh چ
-% 8 062e x khah خ
-% 9 062f d dal د
-% 10 0631 r reh ر
-% 11 0632 z zain ز
-% 12 0698 zh jeh ژ
-% 13 0633 s seen س
-% 14 0634 sh sheen ش
-% 15 063a gh ghain غ
-% 16 0641 f feh ف
-% 17 0642 q qaf ق
-% 18 0643 k kaf ك
-% 19 06af g gaf گ
-% 20 06ad ng ng ڭ ???
-% 21 0644 l lam ل
-% 22 0645 m meem م
-% 23 0646 n noon ن
-% 24 06be h heh doachashmee ھ ???
-% 25 0648 o waw و
-% 26 06c7 u u ۇ ???
-% 27 06c6 ö oe ۆ ???
-% 28 06c8 ü yu ۈ ???
-% 29 06cb w ve ۋ ???
-% 30 06d0 é e ې ???
-% 31 0649 i alef maksura ى
-% 32 064a y yeh ي ???
-% -- 0626 ' yeh with hamza above ئ ???
+% <exemplarCharacters type="index" draft="contributed">[ئ ا ە ب پ ت ج چ خ د ر ز ژ س ش غ ف ق ك گ ڭ ل م ن ھ و ۇ ۆ ۈ ۋ ې ى ي]</exemplarCharacters>
%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-% <yeh with hamza above> + <alef> = ئا
-collating-symbol <ARA_ywha_alef>
-
-% <yeh with hamza above> + <ae> = ئە
-collating-symbol <ARA_ywha_ae>
-
-% <ae> = ە
-collating-symbol <ARA_ae>
-
-% <ng> = ڭ
-collating-symbol <ARA_ng>
-
-% <heh doachashmee> = ھ
-collating-symbol <ARA_hehd>
-
-% <yeh with hamza above> + <waw> = ئو
-collating-symbol <ARA_ywha_waw>
-
-% <yeh with hamza above> + <u> = ئۇ
-collating-symbol <ARA_ywha_u>
-
-% <u> = ۇ
-collating-symbol <ARA_u>
-
-% <yeh with hamza above> + <oe> = ئۆ
-collating-symbol <ARA_ywha_oe>
-
-% <oe> = ۆ
-collating-symbol <ARA_oe>
-
-% <yeh with hamza above> + <yu> = ئۈ
-collating-symbol <ARA_ywha_yu>
-
-% <yu> = ۈ
-collating-symbol <ARA_yu>
-
-% <ve> = ۋ
-collating-symbol <ARA_ve>
-
-% <yeh with hamza above> + <e> = ئې
-collating-symbol <ARA_ywha_e>
-
-% <e> = ې
-collating-symbol <ARA_e>
-
-% <yeh with hamza above> + <alef maksura> = ئى
-collating-symbol <ARA_ywha_alma>
-
-% <yeh> = ي
-collating-symbol <ARA_yeh>
-
-% <yeh with hamza above> = ئ
-collating-symbol <ARA_ywha>
-
-collating-element <ara_h_alef> from "<U0626><U0627>" % ئا
-collating-element <ara_h_ae> from "<U0626><U06D5>" % ئە
-collating-element <ara_h_waw> from "<U0626><U0648>" % ئو
-collating-element <ara_h_u> from "<U0626><U06C7>" % ئۇ
-collating-element <ara_h_oe> from "<U0626><U06C6>" % ئۆ
-collating-element <ara_h_yu> from "<U0626><U06C8>" % ئۈ
-collating-element <ara_h_e> from "<U0626><U06D0>" % ئې
-collating-element <ara_h_alma> from "<U0626><U0649>" % ئى
-
-reorder-after <alef>
-<ARA_ywha_alef>
-<alef>
-<ARA_ywha_ae>
-<ARA_ae>
-
-reorder-after <gaf>
-<ARA_ng>
-
-reorder-after <noon>
-<ARA_hehd>
-
-reorder-after <waw>
-<ARA_ywha_waw>
-<waw>
-<ARA_ywha_u>
-<ARA_u>
-<ARA_ywha_oe>
-<ARA_oe>
-<ARA_ywha_yu>
-<ARA_yu>
-<ARA_ve>
-<ARA_ywha_e>
-<ARA_e>
-<ARA_ywha_alma>
-<alef_maksura>
-<ARA_yeh>
-<ARA_ywha>
-
-reorder-after <U0627>
-<ara_h_alef> <ARA_ywha_alef>;<BAS>;<MIN>;IGNORE
-<U0627> <alef>;<BAS>;<MIN>;IGNORE
-<ara_h_ae> <ARA_ywha_ae>;<BAS>;<MIN>;IGNORE
-<U06D5> <ARA_ae>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U06AF>
-<U06AD> <ARA_ng>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0646>
-<U06BE> <ARA_hehd>;<BAS>;<MIN>;IGNORE
-
-reorder-after <U0648>
-<ara_ywha_waw> <ARA_ywha_waw>;<BAS>;<MIN>;IGNORE
-<U0648> <waw>;<BAS>;<MIN>;IGNORE
-<ara_ywha_u> <ARA_ywha_u>;<BAS>;<MIN>;IGNORE
-<U06C7> <ARA_u>;<BAS>;<MIN>;IGNORE
-<ara_ywha_oe> <ARA_ywha_oe>;<BAS>;<MIN>;IGNORE
-<U06C6> <ARA_oe>;<BAS>;<MIN>;IGNORE
-<ara_ywha_yu> <ARA_ywha_yu>;<BAS>;<MIN>;IGNORE
-<U06C8> <ARA_yu>;<BAS>;<MIN>;IGNORE
-<U06CB> <ARA_ve>;<BAS>;<MIN>;IGNORE
-<ara_ywha_e> <ARA_ywha_e>;<BAS>;<MIN>;IGNORE
-<U06D0> <ARA_e>;<BAS>;<MIN>;IGNORE
-<ara_ywha_alma> <ARA_ywha_alma>;<BAS>;<MIN>;IGNORE
-<U0649> <alef_maksura>;<BAS>;<MIN>;IGNORE
-<U064A> <ARA_yeh>;<BAS>;<MIN>;IGNORE
-<U0626> <ARA_ywha>;<BAS>;<MIN>;IGNORE
+% &ا<ە<ب
+reorder-after <S0627> % ARABIC LETTER ALEF
+<S06D5> % ARABIC LETTER AE
+<S0628> % ARABIC LETTER BEH
+
+% &ك<گ<ڭ<ل
+reorder-after <S0643> % ARABIC LETTER KAF
+<S06AF> % ARABIC LETTER GAF
+<S06AD> % ARABIC LETTER NG
+<S0644> % ARABIC LETTER LAM
+
+% &ھ<و<ۇ<ۆ<ۈ<ۋ<ې<ى<ي
+reorder-after <S06BE> % ARABIC LETTER HEH DOACHASHMEE
+<S0648> % ARABIC LETTER WAW
+<S06C7> % ARABIC LETTER U
+<S06C6> % ARABIC LETTER OE
+<S06C8> % ARABIC LETTER YU
+<S06CB> % ARABIC LETTER VE
+<S06D0> % ARABIC LETTER E
+<S0649> % ARABIC LETTER ALEF MAKSURA
+<S064A> % ARABIC LETTER YEH
reorder-end
diff --git a/localedata/locales/uk_UA b/localedata/locales/uk_UA
index 552952edb6..b8818bf9c4 100644
--- a/localedata/locales/uk_UA
+++ b/localedata/locales/uk_UA
@@ -254,47 +254,26 @@ END LC_CTYPE
LC_COLLATE
% Ukrainian Alpahabet (1881-1933) (old and correct)
%
-% <U0410><U0430> <U0411><U0431> <U0412><U0432> <U0413><U0433>
-% <U0490><U0491> <U0414><U0434> <U0415><U0435> <U0404><U0454>
-% <U0416><U0436> <U0417><U0437> <U0418><U0438> <U0406><U0456>
-% <U0407><U0457> <U0419><U0439> <U041A><U043A> <U041B><U043B>
-% <U041C><U043C> <U041D><U043D> <U041E><U043E> <U041F><U043F>
-% <U0420><U0440> <U0421><U0441> <U0422><U0442> <U0423><U0443>
-% <U0424><U0444> <U0425><U0445> <U0426><U0446> <U0427><U0447>
-% <U0428><U0448> <U0429><U0449> <U042E><U044E> <U042F><U044F>
-% <U042C><U044C>
-%
+% Аа Бб Вв Гг Ґґ Дд Ее Єє Жж Зз Ии Іі Її Йй Кк Лл Мм Нн Оо Пп Рр Сс Тт Уу Фф
+% Хх Цц Чч Шш Щщ Юю Яя Ьь
%
% Ukrainian Alpahabet (1933-1991) (old)
%
-% <U0410><U0430> <U0411><U0431> <U0412><U0432> <U0413><U0433>
-% <U0414><U0434> <U0415><U0435> <U0404><U0454> <U0416><U0436>
-% <U0417><U0437> <U0418><U0438> <U0406><U0456> <U0407><U0457>
-% <U0419><U0439> <U041A><U043A> <U041B><U043B> <U041C><U043C>
-% <U041D><U043D> <U041E><U043E> <U041F><U043F> <U0420><U0440>
-% <U0421><U0441> <U0422><U0442> <U0423><U0443> <U0424><U0444>
-% <U0425><U0445> <U0426><U0446> <U0427><U0447> <U0428><U0448>
-% <U0429><U0449> <U042E><U044E> <U042F><U044F> <U042C><U044C>
+% Аа Бб Вв Гг Дд Ее Єє Жж Зз Ии Іі Її Йй Кк Лл Мм Нн Оо Пп Рр Сс Тт Уу Фф
+% Хх Цц Чч Шш Щщ Юю Яя Ьь
%
% Note:
-% Ukrainian letter GHE_WITH_UPTURN (<U0490>) was removed from Ukrainian
+% Ukrainian letter GHE_WITH_UPTURN (Ґ) was removed from Ukrainian
% alphabet by Stalin in 1933 and was returned back in 1991 when
% Ukraine became independent from Soviet Union.
%
% Ukrainian Alphabet (1991) (current but not correct)
%
-% <U0410><U0430> <U0411><U0431> <U0412><U0432> <U0413><U0433>
-% <U0490><U0491> <U0414><U0434> <U0415><U0435> <U0404><U0454>
-% <U0416><U0436> <U0417><U0437> <U0418><U0438> <U0406><U0456>
-% <U0407><U0457> <U0419><U0439> <U041A><U043A> <U041B><U043B>
-% <U041C><U043C> <U041D><U043D> <U041E><U043E> <U041F><U043F>
-% <U0420><U0440> <U0421><U0441> <U0422><U0442> <U0423><U0443>
-% <U0424><U0444> <U0425><U0445> <U0426><U0446> <U0427><U0447>
-% <U0428><U0448> <U0429><U0449> <U042C><U044C> <U042E><U044E>
-% <U042F><U044F>
+% Аа Бб Вв Гг Ґґ Дд Ее Єє Жж Зз Ии Іі Її Йй Кк Лл Мм Нн Оо Пп Рр Сс Тт Уу
+% Фф Хх Цц Чч Шш Щщ Ьь Юю Яя
%
% Note:
-% Soft sign (<U042C>) is not considered to be a letter and therefore should have been
+% Soft sign (Ь) is not considered to be a letter and therefore should have been
% placed at the end of the table. Unfortunately this letter was reordered in
% Ukrainian alpabet right before Ukraine got independency (1990-1991) by Soviet
% academic Ivanenko who tried to make MS DOS code pages compatible between
@@ -306,233 +285,239 @@ LC_COLLATE
copy "iso14651_t1"
-% Ukrainian ghe is missing in iso14651_t1
-collating-symbol <UKR-GHE>
-
-% Apostrophe must be ignored during sorting because it's just a sign, not a
-% real letter.
-% ( "n`"=="n", "'ya"=="ya", etc. )
-%
-% Apostrophe already ignored by iso14651_t1.
-%
-% In the official alphabet the soft sign is a letter and has a hard position in
-% the order.
-
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-% Taken from bg_BG 2.0.1:
-
-% We have made the following changes to the basic collation scheme in
-% the file iso14651_t1:
-% 1. The Cyrillic script is first in the order.
-% 2. The non-Bulgarian Cyrillic letters are sorted according to
-% their transliteration with Bulgarian Cyrillic letters.
-
-% Local changes:
-% Added <UKR-GHE> collation symbol at proper position.
-% Reordering of <UKR-I>,<UKR-YI> to wrong positions (according to Ukrainian
-% alhabet) was removed.
-
-reorder-after <9>
-<CYR-A>
-<CYR-BE>
-<CYR-VE>
-<CYR-GHE>
-<UKR-GHE>
-<CYR-DE>
-<CYR-GZHE>
-<CYR-DJE>
-<CYR-IE>
-<UKR-IE>
-<CYR-IO>
-<CYR-ZHE>
-<CYR-ZE>
-<CYR-DZE>
-<CYR-I>
-<UKR-I>
-<UKR-YI>
-<CYR-IBRE>
-<CYR-JE>
-<CYR-KA>
-<CYR-EL>
-<CYR-LJE>
-<CYR-EM>
-<CYR-EN>
-<CYR-NJE>
-<CYR-O>
-<CYR-PE>
-<CYR-ER>
-<CYR-ES>
-<CYR-TE>
-<CYR-KJE>
-<CYR-TSHE>
-<CYR-OU>
-<CYR-OUBRE>
-<CYR-EF>
-<CYR-HA>
-<CYR-TSE>
-<CYR-CHE>
-<CYR-DCHE>
-<CYR-SHA>
-<CYR-SHTSHA>
-<CYR-SIGDUR>
-<CYR-YEROU>
-<CYR-SIGMOUIL>
-<CYR-E>
-<CYR-YOU>
-<CYR-YA>
-
-% Placing <UKR-GHE> to proper position.
-reorder-after <U0413>
-<U0490> <UKR-GHE>;<BAS>;<CAP>;IGNORE
-<U0403> <CYR-GHE>;<CYR-GZHE>;<CAP>;IGNORE % Mac. gje
-reorder-after <U0433>
-<U0491> <UKR-GHE>;<BAS>;<MIN>;IGNORE
-<U0453> <CYR-GHE>;<CYR-GZHE>;<MIN>;IGNORE % Mac. gje
-
-reorder-after <U0414>
-<U0402> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0048><U0045><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U0043><U0041><U0050><U003E><U003C><U0043><U0041><U0050><U003E>";IGNORE % CYR-DJE
-<U040F> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0048><U0045><U003E>";"<U003C><U0043><U0059><U0052><U002D><U0044><U0043><U0048><U0045><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U0043><U0041><U0050><U003E><U003C><U0043><U0041><U0050><U003E>";IGNORE % CYR-DCHE
-<U0405> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0045><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U0043><U0041><U0050><U003E><U003C><U0043><U0041><U0050><U003E>";IGNORE % CYR-DZE
-reorder-after <U0434>
-<U0452> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0048><U0045><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U004D><U0049><U004E><U003E><U003C><U004D><U0049><U004E><U003E>";IGNORE % CYR-DJE
-<U045F> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0048><U0045><U003E>";"<U003C><U0043><U0059><U0052><U002D><U0044><U0043><U0048><U0045><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U004D><U0049><U004E><U003E><U003C><U004D><U0049><U004E><U003E>";IGNORE % CYR-DCHE
-<U0455> "<U003C><U0043><U0059><U0052><U002D><U0044><U0045><U003E><U003C><U0043><U0059><U0052><U002D><U005A><U0045><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U004D><U0049><U004E><U003E><U003C><U004D><U0049><U004E><U003E>";IGNORE % CYR-DZE
-
-reorder-after <U0435>
-<U0451> <CYR-IE>;<CYR-IO>;<MIN>;IGNORE
-<U044D> <CYR-IE>;<CYR-E>;<MIN>;IGNORE
-reorder-after <U0415>
-<U0401> <CYR-IE>;<CYR-IO>;<CAP>;IGNORE
-<U042D> <CYR-IE>;<CYR-E>;<CAP>;IGNORE
-
-reorder-after <U041A>
-<U040C> <CYR-KA>;<CYR-KJE>;<CAP>;IGNORE
-reorder-after <U043A>
-<U045C> <CYR-KA>;<CYR-KJE>;<MIN>;IGNORE
-
-reorder-after <U041D>
-<U040A> "<U003C><U0043><U0059><U0052><U002D><U0045><U004E><U003E><U003C><U0043><U0059><U0052><U002D><U0053><U0049><U0047><U004D><U004F><U0055><U0049><U004C><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U0043><U0041><U0050><U003E><U003C><U0043><U0041><U0050><U003E>";IGNORE % CYR-NJE
-reorder-after <U043D>
-<U045A> "<U003C><U0043><U0059><U0052><U002D><U0045><U004E><U003E><U003C><U0043><U0059><U0052><U002D><U0053><U0049><U0047><U004D><U004F><U0055><U0049><U004C><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U004D><U0049><U004E><U003E><U003C><U004D><U0049><U004E><U003E>";IGNORE % CYR-NJE
-
-reorder-after <U0427>
-<U040B> <CYR-CHE>;<CYR-TSHE>;<CAP>;IGNORE
-reorder-after <U0447>
-<U045B> <CYR-CHE>;<CYR-TSHE>;<MIN>;IGNORE
-
-reorder-after <U041B>
-<U0409> "<U003C><U0043><U0059><U0052><U002D><U0045><U004C><U003E><U003C><U0043><U0059><U0052><U002D><U0053><U0049><U0047><U004D><U004F><U0055><U0049><U004C><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U0043><U0041><U0050><U003E><U003C><U0043><U0041><U0050><U003E>";IGNORE % CYR-LJE
-reorder-after <U043B>
-<U0459> "<U003C><U0043><U0059><U0052><U002D><U0045><U004C><U003E><U003C><U0043><U0059><U0052><U002D><U0053><U0049><U0047><U004D><U004F><U0055><U0049><U004C><U003E>";"<U003C><U004C><U0049><U0047><U003E><U003C><U004C><U0049><U0047><U003E>";"<U003C><U004D><U0049><U004E><U003E><U003C><U004D><U0049><U004E><U003E>";IGNORE % CYR-LJE
-
-reorder-after <U0423>
-<U040E> <CYR-OU>;<CYR-OUBRE>;<CAP>;IGNORE
-reorder-after <U0443>
-<U045E> <CYR-OU>;<CYR-OUBRE>;<MIN>;IGNORE
-
-% Capital letters go before small letters. ("A"<"a")
-reorder-after <CAP>
-<CAP-MIN>
-<MIN-CAP>
-<MIN>
+% CLDR collation rules for Ukrainian:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/uk.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [reorder Cyrl]
+% # The root collation already sorts й/Й as a base letter.
+% &Г<ґ<<<Ґ
+% &ꙇ<ї<<<\uA676<<<Ї # U+A676=COMBINING CYRILLIC LETTER YI
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/uk.xml)
+%
+% <exemplarCharacters type="index">[А Б В Г Ґ Д Е Є Ж З И І Ї Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ю Я]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
+collating-symbol <cyrillic-ghe-with-upturn>
+collating-symbol <cyrillic-yi>
+
+reorder-after <RES-1>
+<COMPATCAP>
+<CAP>
+<COMPAT>
+<MIN>
-% Reorder letters with soft sign
-% [<U0432><U0434><U0437><U043B><U043D><U0440><U0441><U0442><U0446>] + <U044C>
-
-reorder-after <CYR-VE>
-<V+SS>
-reorder-after <U0412>
-<V-SS> <CYR-VE>;<BAS>;<CAP>;<V+SS>
-<V-ss> <CYR-VE>;<BAS>;<CAP-MIN>;<V+SS>
-reorder-after <U0432>
-<v-SS> <CYR-VE>;<BAS>;<MIN-CAP>;<V+SS>
-<v-ss> <CYR-VE>;<BAS>;<MIN>;<V+SS>
-
-reorder-after <CYR-DE>
-<D+SS>
-reorder-after <U0414>
-<D-SS> <CYR-DE>;<BAS>;<CAP>;<D+SS>
-<D-ss> <CYR-DE>;<BAS>;<CAP-MIN>;<D+SS>
-reorder-after <U0434>
-<d-SS> <CYR-DE>;<BAS>;<MIN-CAP>;<D+SS>
-<d-ss> <CYR-DE>;<BAS>;<MIN>;<D+SS>
-
-reorder-after <CYR-ZE>
-<Z+SS>
-reorder-after <U0417>
-<Z-SS> <CYR-ZE>;<BAS>;<CAP>;<Z+SS>
-<Z-ss> <CYR-ZE>;<BAS>;<CAP-MIN>;<Z+SS>
-reorder-after <U0437>
-<z-SS> <CYR-ZE>;<BAS>;<MIN-CAP>;<Z+SS>
-<z-ss> <CYR-ZE>;<BAS>;<MIN>;<Z+SS>
-
-reorder-after <CYR-EL>
-<L+SS>
-reorder-after <U041B>
-<L-SS> <CYR-EL>;<BAS>;<CAP>;<L+SS>
-<L-ss> <CYR-EL>;<BAS>;<CAP-MIN>;<L+SS>
-reorder-after <U043B>
-<l-SS> <CYR-EL>;<BAS>;<MIN-CAP>;<L+SS>
-<l-ss> <CYR-EL>;<BAS>;<MIN>;<L+SS>
-
-reorder-after <CYR-EN>
-<N+SS>
-reorder-after <U041D>
-<N-SS> <CYR-EN>;<BAS>;<CAP>;<N+SS>
-<N-ss> <CYR-EN>;<BAS>;<CAP-MIN>;<N+SS>
-reorder-after <U043D>
-<n-SS> <CYR-EN>;<BAS>;<MIN-CAP>;<N+SS>
-<n-ss> <CYR-EN>;<BAS>;<MIN>;<N+SS>
-
-reorder-after <CYR-ER>
-<R+SS>
-reorder-after <U0420>
-<R-SS> <CYR-ER>;<BAS>;<CAP>;<R+SS>
-<R-ss> <CYR-ER>;<BAS>;<CAP-MIN>;<R+SS>
-reorder-after <U0440>
-<r-SS> <CYR-ER>;<BAS>;<MIN-CAP>;<R+SS>
-<r-ss> <CYR-ER>;<BAS>;<MIN>;<R+SS>
-
-reorder-after <CYR-ES>
-<S+SS>
-reorder-after <U0421>
-<S-SS> <CYR-ES>;<BAS>;<CAP>;<S+SS>
-<S-ss> <CYR-ES>;<BAS>;<CAP-MIN>;<S+SS>
-reorder-after <U0441>
-<s-SS> <CYR-ES>;<BAS>;<MIN-CAP>;<S+SS>
-<s-ss> <CYR-ES>;<BAS>;<MIN>;<S+SS>
-
-reorder-after <CYR-TE>
-<T+SS>
-reorder-after <U0422>
-<T-SS> <CYR-TE>;<BAS>;<CAP>;<T+SS>
-<T-ss> <CYR-TE>;<BAS>;<CAP-MIN>;<T+SS>
-reorder-after <U0442>
-<t-SS> <CYR-TE>;<BAS>;<MIN-CAP>;<T+SS>
-<t-ss> <CYR-TE>;<BAS>;<MIN>;<T+SS>
-
-reorder-after <CYR-TSE>
-<TSE+SS>
-reorder-after <U0426>
-<TS-SS> <CYR-TSE>;<BAS>;<CAP>;<TSE+SS>
-<TS-ss> <CYR-TSE>;<BAS>;<CAP-MIN>;<TSE+SS>
-reorder-after <U0446>
-<ts-SS> <CYR-TSE>;<BAS>;<MIN-CAP>;<TSE+SS>
-<ts-ss> <CYR-TSE>;<BAS>;<MIN>;<TSE+SS>
-
-% To get back to correct but still unofficial pre-1991 alphabet uncomment the
-% following lines that move soft sign (<CYR-YEROU>) to the end of the alphabet.
-%
-% reorder-after <CYR-YA>
-% <CYR-YEROU>
-% reorder-after <U042F>
-% <U042C> <CYR-YEROU>;<BAS>;<CAP>;IGNORE
-% reorder-after <U044F>
-% <U044C> <CYR-YEROU>;<BAS>;<MIN>;IGNORE
+% Put Cyrillic before Latin because CLDR has:
+%
+% [reorder Cyrl]
+%
+% and because the old glibc collation for Ukrainian also did put
+% Cyrillic before Latin.
+%
+% I copied the whole Cyrillic block from iso14651_t1_common here.
+%
+% I cannot find any better way doing this.
+reorder-after <BEFORE-LATIN>
+<S0430> % CYRILLIC SMALL LETTER A
+<S04D9> % CYRILLIC SMALL LETTER SCHWA
+<S04D5> % CYRILLIC SMALL LIGATURE A IE
+<S0431> % CYRILLIC SMALL LETTER BE
+<S0432> % CYRILLIC SMALL LETTER VE
+<S0433> % CYRILLIC SMALL LETTER GHE
+<S0493> % CYRILLIC SMALL LETTER GHE WITH STROKE
+<S04FB> % CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK
+<S0495> % CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
+<S04F7> % CYRILLIC SMALL LETTER GHE WITH DESCENDER
+<S0434> % CYRILLIC SMALL LETTER DE
+<S0501> % CYRILLIC SMALL LETTER KOMI DE
+<SA681> % CYRILLIC SMALL LETTER DWE
+<S0452> % CYRILLIC SMALL LETTER DJE
+<SA663> % CYRILLIC SMALL LETTER SOFT DE
+<S0503> % CYRILLIC SMALL LETTER KOMI DJE
+<S0499> % CYRILLIC SMALL LETTER ZE WITH DESCENDER
+<S0435> % CYRILLIC SMALL LETTER IE
+<S0454> % CYRILLIC SMALL LETTER UKRAINIAN IE
+<S0436> % CYRILLIC SMALL LETTER ZHE
+<S052B> % CYRILLIC SMALL LETTER DZZHE
+<SA685> % CYRILLIC SMALL LETTER ZHWE
+<S0497> % CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+<S0437> % CYRILLIC SMALL LETTER ZE
+<SA641> % CYRILLIC SMALL LETTER ZEMLYA
+<S0505> % CYRILLIC SMALL LETTER KOMI ZJE
+<S0511> % CYRILLIC SMALL LETTER REVERSED ZE
+<SA643> % CYRILLIC SMALL LETTER DZELO
+<S0455> % CYRILLIC SMALL LETTER DZE
+<SA645> % CYRILLIC SMALL LETTER REVERSED DZE
+<S04E1> % CYRILLIC SMALL LETTER ABKHASIAN DZE
+<SA689> % CYRILLIC SMALL LETTER DZZE
+<S0507> % CYRILLIC SMALL LETTER KOMI DZJE
+<SA683> % CYRILLIC SMALL LETTER DZWE
+<S0438> % CYRILLIC SMALL LETTER I
+<S048B> % CYRILLIC SMALL LETTER SHORT I WITH TAIL
+<S0456> % CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+<SA647> % CYRILLIC SMALL LETTER IOTA
+<S0439> % CYRILLIC SMALL LETTER SHORT I
+<S0458> % CYRILLIC SMALL LETTER JE
+<SA649> % CYRILLIC SMALL LETTER DJERV
+<S043A> % CYRILLIC SMALL LETTER KA
+<S049B> % CYRILLIC SMALL LETTER KA WITH DESCENDER
+<S04C4> % CYRILLIC SMALL LETTER KA WITH HOOK
+<S04A1> % CYRILLIC SMALL LETTER BASHKIR KA
+<S049F> % CYRILLIC SMALL LETTER KA WITH STROKE
+<S049D> % CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+<S051F> % CYRILLIC SMALL LETTER ALEUT KA
+<S051B> % CYRILLIC SMALL LETTER QA
+<S043B> % CYRILLIC SMALL LETTER EL
+<S1D2B> % CYRILLIC LETTER SMALL CAPITAL EL
+<S04C6> % CYRILLIC SMALL LETTER EL WITH TAIL
+<S052F> % CYRILLIC SMALL LETTER EL WITH DESCENDER
+<S0513> % CYRILLIC SMALL LETTER EL WITH HOOK
+<S0521> % CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK
+<S0459> % CYRILLIC SMALL LETTER LJE
+<SA665> % CYRILLIC SMALL LETTER SOFT EL
+<S0509> % CYRILLIC SMALL LETTER KOMI LJE
+<S0515> % CYRILLIC SMALL LETTER LHA
+<S043C> % CYRILLIC SMALL LETTER EM
+<S04CE> % CYRILLIC SMALL LETTER EM WITH TAIL
+<SA667> % CYRILLIC SMALL LETTER SOFT EM
+<S043D> % CYRILLIC SMALL LETTER EN
+<S0529> % CYRILLIC SMALL LETTER EN WITH LEFT HOOK
+<S04CA> % CYRILLIC SMALL LETTER EN WITH TAIL
+<S04A3> % CYRILLIC SMALL LETTER EN WITH DESCENDER
+<S04C8> % CYRILLIC SMALL LETTER EN WITH HOOK
+<S0523> % CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK
+<S04A5> % CYRILLIC SMALL LIGATURE EN GHE
+<S045A> % CYRILLIC SMALL LETTER NJE
+<S050B> % CYRILLIC SMALL LETTER KOMI NJE
+<S043E> % CYRILLIC SMALL LETTER O
+<S04E9> % CYRILLIC SMALL LETTER BARRED O
+<S043F> % CYRILLIC SMALL LETTER PE
+<S0525> % CYRILLIC SMALL LETTER PE WITH DESCENDER
+<S04A7> % CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+<S0481> % CYRILLIC SMALL LETTER KOPPA
+<S0440> % CYRILLIC SMALL LETTER ER
+<S048F> % CYRILLIC SMALL LETTER ER WITH TICK
+<S0517> % CYRILLIC SMALL LETTER RHA
+<S0441> % CYRILLIC SMALL LETTER ES
+<S050D> % CYRILLIC SMALL LETTER KOMI SJE
+<S04AB> % CYRILLIC SMALL LETTER ES WITH DESCENDER
+<S0442> % CYRILLIC SMALL LETTER TE
+<SA68D> % CYRILLIC SMALL LETTER TWE
+<S050F> % CYRILLIC SMALL LETTER KOMI TJE
+<S04AD> % CYRILLIC SMALL LETTER TE WITH DESCENDER
+<SA68B> % CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK
+<S045B> % CYRILLIC SMALL LETTER TSHE
+<S0443> % CYRILLIC SMALL LETTER U
+<S04AF> % CYRILLIC SMALL LETTER STRAIGHT U
+<S04B1> % CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+<SA64B> % CYRILLIC SMALL LETTER MONOGRAPH UK
+<S0479> % CYRILLIC SMALL LETTER UK
+<S0444> % CYRILLIC SMALL LETTER EF
+<S0445> % CYRILLIC SMALL LETTER HA
+<S04FD> % CYRILLIC SMALL LETTER HA WITH HOOK
+<S04FF> % CYRILLIC SMALL LETTER HA WITH STROKE
+<S04B3> % CYRILLIC SMALL LETTER HA WITH DESCENDER
+<S04BB> % CYRILLIC SMALL LETTER SHHA
+<S0527> % CYRILLIC SMALL LETTER SHHA WITH DESCENDER
+<SA695> % CYRILLIC SMALL LETTER HWE
+<S0461> % CYRILLIC SMALL LETTER OMEGA
+<S047F> % CYRILLIC SMALL LETTER OT
+<SA64D> % CYRILLIC SMALL LETTER BROAD OMEGA
+<S047D> % CYRILLIC SMALL LETTER OMEGA WITH TITLO
+<S047B> % CYRILLIC SMALL LETTER ROUND OMEGA
+<S0446> % CYRILLIC SMALL LETTER TSE
+<SA661> % CYRILLIC SMALL LETTER REVERSED TSE
+<SA68F> % CYRILLIC SMALL LETTER TSWE
+<S04B5> % CYRILLIC SMALL LIGATURE TE TSE
+<SA691> % CYRILLIC SMALL LETTER TSSE
+<S0447> % CYRILLIC SMALL LETTER CHE
+<S052D> % CYRILLIC SMALL LETTER DCHE
+<SA693> % CYRILLIC SMALL LETTER TCHE
+<S04B7> % CYRILLIC SMALL LETTER CHE WITH DESCENDER
+<S04CC> % CYRILLIC SMALL LETTER KHAKASSIAN CHE
+<S04B9> % CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+<SA687> % CYRILLIC SMALL LETTER CCHE
+<S04BD> % CYRILLIC SMALL LETTER ABKHASIAN CHE
+<S04BF> % CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
+<S045F> % CYRILLIC SMALL LETTER DZHE
+<S0448> % CYRILLIC SMALL LETTER SHA
+<SA697> % CYRILLIC SMALL LETTER SHWE
+<S0449> % CYRILLIC SMALL LETTER SHCHA
+<SA64F> % CYRILLIC SMALL LETTER NEUTRAL YER
+<S2E2F> % VERTICAL TILDE
+<SA67F> % CYRILLIC PAYEROK
+<S044A> % CYRILLIC SMALL LETTER HARD SIGN
+<SA651> % CYRILLIC SMALL LETTER YERU WITH BACK YER
+<S044B> % CYRILLIC SMALL LETTER YERU
+<S044C> % CYRILLIC SMALL LETTER SOFT SIGN
+<S048D> % CYRILLIC SMALL LETTER SEMISOFT SIGN
+<S0463> % CYRILLIC SMALL LETTER YAT
+<SA653> % CYRILLIC SMALL LETTER IOTIFIED YAT
+<S044D> % CYRILLIC SMALL LETTER E
+<S044E> % CYRILLIC SMALL LETTER YU
+<SA655> % CYRILLIC SMALL LETTER REVERSED YU
+<SA657> % CYRILLIC SMALL LETTER IOTIFIED A
+<S044F> % CYRILLIC SMALL LETTER YA
+<S0519> % CYRILLIC SMALL LETTER YAE
+<S0465> % CYRILLIC SMALL LETTER IOTIFIED E
+<S0467> % CYRILLIC SMALL LETTER LITTLE YUS
+<SA659> % CYRILLIC SMALL LETTER CLOSED LITTLE YUS
+<S046B> % CYRILLIC SMALL LETTER BIG YUS
+<SA65B> % CYRILLIC SMALL LETTER BLENDED YUS
+<S0469> % CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS
+<SA65D> % CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS
+<S046D> % CYRILLIC SMALL LETTER IOTIFIED BIG YUS
+<S046F> % CYRILLIC SMALL LETTER KSI
+<S0471> % CYRILLIC SMALL LETTER PSI
+<S0473> % CYRILLIC SMALL LETTER FITA
+<S0475> % CYRILLIC SMALL LETTER IZHITSA
+<SA65F> % CYRILLIC SMALL LETTER YN
+<S04A9> % CYRILLIC SMALL LETTER ABKHASIAN HA
+<S051D> % CYRILLIC SMALL LETTER WE
+<S04CF> % CYRILLIC SMALL LETTER PALOCHKA
+
+% &Г<ґ<<<Ґ
+reorder-after <S0433> % г CYRILLIC SMALL LETTER GHE
+<cyrillic-ghe-with-upturn>
+
+% &ꙇ<ї<<<\uA676<<<Ї # U+A676=COMBINING CYRILLIC LETTER YI
+reorder-after <SA647> % ꙇ CYRILLIC SMALL LETTER IOTA
+<cyrillic-yi>
+
+% &Г<ґ<<<Ґ
+<U0491> <cyrillic-ghe-with-upturn>;"<BASE>";"<MIN>";<U0491> % ґ CYRILLIC SMALL LETTER GHE WITH UPTURN
+<U0490> <cyrillic-ghe-with-upturn>;"<BASE>";"<CAP>";<U0490> % Ґ CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+
+% &ꙇ<ї<<<\uA676<<<Ї # U+A676=COMBINING CYRILLIC LETTER YI
+<U0457> <cyrillic-yi>;"<BASE>";"<MIN>";<U0457> % ї CYRILLIC SMALL LETTER YI
+<UA676> <cyrillic-yi>;"<BASE>";"<COMPAT>";<UA676> % ꙶ COMBINING CYRILLIC LETTER YI
+<U0407> <cyrillic-yi>;"<BASE>";"<CAP>";<U0407> % Ї CYRILLIC CAPITAL LETTER YI
+
+% Make ʼ U+02BC MODIFIER LETTER APOSTROPHE behave like
+% ' U+0027 APOSTROPHE and ’ U+2019 RIGHT SINGLE QUOTATION MARK
+% to make these sort close to each other. The original entry in
+% iso14651_t1_common for ʼ U+S02BC MODIFIER LETTER APOSTROPHE
+% looks like:
+%
+% <U02BC> <S02BC>;<BASE>;<MIN>;<U02BC> % MODIFIER LETTER APOSTROPHE
+%
+% i.e. it is treated as a base letter whereas U+0027 and U+2019 are
+% treated as punctuation.
+%
+% See also: https://en.wikipedia.org/wiki/Modifier_letter_apostrophe
+%
+% These apostrophe variants are sorted in the order of the
+% following lines:
+<U0027> IGNORE;IGNORE;IGNORE;<U0027> % APOSTROPHE
+<U2019> IGNORE;IGNORE;IGNORE;<U2019> % RIGHT SINGLE QUOTATION MARK
+<U02BC> IGNORE;IGNORE;IGNORE;<U02BC> % MODIFIER LETTER APOSTROPHE
reorder-end
diff --git a/localedata/locales/uz_UZ b/localedata/locales/uz_UZ
index c5afbf721c..2dae80c8aa 100644
--- a/localedata/locales/uz_UZ
+++ b/localedata/locales/uz_UZ
@@ -155,53 +155,92 @@ END LC_CTYPE
LC_COLLATE
copy "iso14651_t1"
+% CLDR collation rules for Uzbek:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/uz.xml)
+%
+% <collations>
+% <collation type="standard"><cr><![CDATA[
+% # The following letters sort after z, see
+% # https://en.wikipedia.org/wiki/Uzbek_alphabet#Alphabetical_order
+% # Native speaker+linguists say that
+% # the digraph ⟨ng⟩ and the symbol ⟨ʼ⟩ are not considered separate letters.
+% #
+% # Reset between the last z-like letter and ezh.
+% #
+% # U+02BB ʻ MODIFIER LETTER TURNED COMMA is hard to type, so make
+% # equivalent contractions with U+2018 ‘ LEFT SINGLE QUOTATION MARK
+% # and U+0027 APOSTROPHE.
+% # (https://en.wikipedia.org/wiki/Uzbek_alphabet#Distinct_characters)
+% # Remember that a pair of apostrophes encodes just one of them.
+% &[before 1]ʒ<oʻ=o‘=o''<<<Oʻ=O‘=O''
+% <gʻ=g‘=g''<<<Gʻ=G‘=G''
+% <sh<<<Sh<<<SH
+% <ch<<<Ch<<<CH
+% ]]></cr></collation>
+% </collations>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/uz.xml)
+%
+% <exemplarCharacters type="index">[A B D E F G H I J K L M N O P Q R S T U V X Y Z {Oʻ} {Gʻ} {Sh} {Ch}]</exemplarCharacters>
+%
-%% a b c d e f g g' h i j k l m n o o' p q r s t u v x y z
-%% cyr: a=, b=, v=, g=, d=, e=, io, z%, z=, i=, j=, k=, l=, m=, n=, o=,
-%% p=, r=, s=, t=, u=, f=, h=, c=, c%, s%, sc, =' , y=, je, ju, ja,
-%% v%, k,=, g-=, h,=
-collating-symbol <g-'-uz>
-collating-element <g-'> from "<U0067><U0027>"
-collating-element <G-'> from "<U0047><U0027>"
-collating-symbol <o-'-uz>
-collating-element <o-'> from "<U006F><U0027>"
-collating-element <O-'> from "<U004F><U0027>"
-
-collating-symbol <k,=>
-collating-symbol <g-=>
-collating-symbol <h,=>
-
-reorder-after <g>
-<g-'-uz>
-reorder-after <o>
-<o-'-uz>
-reorder-after <CYR-YA>
-<CYR-OUBRE>
-<k,=>
-<g-=>
-<h,=>
-
-reorder-after <U0067>
-<g-'> <g-'-uz>;<PCL>;<MIN>;IGNORE
-reorder-after <U0047>
-<G-'> <g-'-uz>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<o-'> <o-'-uz>;<PCL>;<MIN>;IGNORE
-reorder-after <U004F>
-<O-'> <o-'-uz>;<PCL>;<CAP>;IGNORE
+collating-symbol <g'-digraph>
+collating-symbol <o'-digraph>
+collating-element <g-turned-comma> from "g<U02BB>"
+collating-element <G-turned-comma> from "G<U02BB>"
+collating-element <o-turned-comma> from "o<U02BB>"
+collating-element <O-turned-comma> from "O<U02BB>"
+% Unfortunately we cannot use “left single quotation mark” because
+% it fails when creating the uz_UZ.iso88591 locale. In UTF-8 it works
+% but in ISO-8859-1 one gets error messages that it uses the same
+% encoding as “turned comma”
+% collating-element <g-left-single-quotation-mark> from "g<U2018>"
+% collating-element <G-left-single-quotation-mark> from "G<U2018>"
+% collating-element <o-left-single-quotation-mark> from "o<U2018>"
+% collating-element <O-left-single-quotation-mark> from "O<U2018>"
+collating-element <g-double-apostrophe> from "g''"
+collating-element <G-double-apostrophe> from "G''"
+collating-element <o-double-apostrophe> from "o''"
+collating-element <O-double-apostrophe> from "O''"
+collating-symbol <sh-digraph>
+collating-element <sh> from "sh"
+collating-element <sH> from "sH"
+collating-element <Sh> from "Sh"
+collating-element <SH> from "SH"
+collating-symbol <ch-digraph>
+collating-element <ch> from "ch"
+collating-element <cH> from "cH"
+collating-element <Ch> from "Ch"
+collating-element <CH> from "CH"
-reorder-after <U044F>
-<U045E> <CYR-OUBRE>;<PCL>;<MIN>;IGNORE
-<U049B> <k,=>;<PCL>;<MIN>;IGNORE
-<U0493> <g-=>;<PCL>;<MIN>;IGNORE
-<U04B3> <h,=>;<PCL>;<MIN>;IGNORE
+reorder-after <AFTER-Z>
+<o'-digraph>
+<g'-digraph>
+<sh-digraph>
+<ch-digraph>
-reorder-after <U042F>
-<U040E> <CYR-OUBRE>;<PCL>;<CAP>;IGNORE
-<U049A> <k,=>;<PCL>;<CAP>;IGNORE
-<U0492> <g-=>;<PCL>;<CAP>;IGNORE
-<U04B2> <h,=>;<PCL>;<CAP>;IGNORE
+<o-turned-comma> <o'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1>
+<O-turned-comma> <o'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1>
+% <o-left-single-quotation-mark> <o'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+% <O-left-single-quotation-mark> <o'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+<o-double-apostrophe> <o'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT3>
+<O-double-apostrophe> <o'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT3>
+<g-turned-comma> <g'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1>
+<G-turned-comma> <g'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1>
+% <g-left-single-quotation-mark> <g'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+% <G-left-single-quotation-mark> <g'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+<g-double-apostrophe> <g'-digraph>;"<BASE><BASE>";"<MIN><MIN>";<VRNT3>
+<G-double-apostrophe> <g'-digraph>;"<BASE><BASE>";"<CAP><MIN>";<VRNT3>
+<sh> <sh-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<sH> <sh-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Sh> <sh-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<SH> <sh-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+<ch> <ch-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<cH> <ch-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<Ch> <ch-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<CH> <ch-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
reorder-end
diff --git a/localedata/locales/uz_UZ@cyrillic b/localedata/locales/uz_UZ@cyrillic
index 08e221a1c7..2f24efc605 100644
--- a/localedata/locales/uz_UZ@cyrillic
+++ b/localedata/locales/uz_UZ@cyrillic
@@ -145,56 +145,12 @@ translit_end
END LC_CTYPE
LC_COLLATE
-copy "iso14651_t1"
-%% a b c d e f g g' h i j k l m n o o' p q r s t u v x y z
-%% cyr: a=, b=, v=, g=, d=, e=, io, z%, z=, i=, j=, k=, l=, m=, n=, o=,
-%% p=, r=, s=, t=, u=, f=, h=, c=, c%, s%, sc, =' , y=, je, ju, ja,
-%% v%, k,=, g-=, h,=
-collating-symbol <g-'-uz>
-collating-element <g-'> from "<U0067><U0027>"
-collating-element <G-'> from "<U0047><U0027>"
-collating-symbol <o-'-uz>
-collating-element <o-'> from "<U006F><U0027>"
-collating-element <O-'> from "<U004F><U0027>"
-
-collating-symbol <k,=>
-collating-symbol <g-=>
-collating-symbol <h,=>
-
-reorder-after <g>
-<g-'-uz>
-reorder-after <o>
-<o-'-uz>
-reorder-after <CYR-YA>
-<CYR-OUBRE>
-<k,=>
-<g-=>
-<h,=>
-
-reorder-after <U0067>
-<g-'> <g-'-uz>;<PCL>;<MIN>;IGNORE
-reorder-after <U0047>
-<G-'> <g-'-uz>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<o-'> <o-'-uz>;<PCL>;<MIN>;IGNORE
-reorder-after <U004F>
-<O-'> <o-'-uz>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U044F>
-<U045E> <CYR-OUBRE>;<PCL>;<MIN>;IGNORE
-<U049B> <k,=>;<PCL>;<MIN>;IGNORE
-<U0493> <g-=>;<PCL>;<MIN>;IGNORE
-<U04B3> <h,=>;<PCL>;<MIN>;IGNORE
-
-reorder-after <U042F>
-<U040E> <CYR-OUBRE>;<PCL>;<CAP>;IGNORE
-<U049A> <k,=>;<PCL>;<CAP>;IGNORE
-<U0492> <g-=>;<PCL>;<CAP>;IGNORE
-<U04B2> <h,=>;<PCL>;<CAP>;IGNORE
-
-reorder-end
-
+% There is no information about collation for Uzbek written in Cyrillic in CLDR.
+%
+% The collation rules which were here were exactly the same as in the
+% uz_UZ (Latin) locale though. Therefore just copy the new rules
+% from this locale.
+copy "uz_UZ"
END LC_COLLATE
LC_MONETARY
diff --git a/localedata/locales/vi_VN b/localedata/locales/vi_VN
index 191ebf94e8..7fac1fbbcc 100644
--- a/localedata/locales/vi_VN
+++ b/localedata/locales/vi_VN
@@ -61,167 +61,91 @@ translit_end
END LC_CTYPE
LC_COLLATE
-% Copy the template from ISO/IEC 14651
-copy "iso14651_t1"
-
-% A( A^ E^ O+ U+ DD are treatead as base letters
-% ordering of accents is: grave, hook, tilde, acute, dot below
-% a a( a> b c d d/ e e> f g h i j k l m n o o+ p q r s t u u+ v w x y z
-
-collating-symbol <a(>
-collating-symbol <a/>>
-collating-symbol <d//>
-collating-symbol <e/>>
-collating-symbol <o/>>
-collating-symbol <o9>
-collating-symbol <u9>
-
-reorder-after <BAS>
-<GRA>
-<HOK>
-<TIL>
-<ACA>
-<PCT>
-
-reorder-after <a>
-<a(>
-<a/>>
-reorder-after <d>
-<d//>
-reorder-after <e>
-<e/>>
-reorder-after <o>
-<o/>>
-<o9>
-reorder-after <u>
-<u9>
-
-reorder-after <U0061>
-<U1EA3> <a>;<HOK>;<MIN>;IGNORE
-<U1EA1> <a>;<PCT>;<MIN>;IGNORE
-<U0103> <a(>;<BAS>;<MIN>;IGNORE
-<U1EB1> <a(>;<GRA>;<MIN>;IGNORE
-<U1EB3> <a(>;<HOK>;<MIN>;IGNORE
-<U1EB5> <a(>;<TIL>;<MIN>;IGNORE
-<U1EAF> <a(>;<ACA>;<MIN>;IGNORE
-<U1EB7> <a(>;<PCT>;<MIN>;IGNORE
-<U00E2> <a/>>;<BAS>;<MIN>;IGNORE
-<U1EA7> <a/>>;<GRA>;<MIN>;IGNORE
-<U1EA9> <a/>>;<HOK>;<MIN>;IGNORE
-<U1EAB> <a/>>;<TIL>;<MIN>;IGNORE
-<U1EA5> <a/>>;<ACA>;<MIN>;IGNORE
-<U1EAD> <a/>>;<PCT>;<MIN>;IGNORE
-reorder-after <U0041>
-<U1EA2> <a>;<HOK>;<CAP>;IGNORE
-<U1EA0> <a>;<PCT>;<CAP>;IGNORE
-<U0102> <a(>;<BAS>;<CAP>;IGNORE
-<U1EB0> <a(>;<GRA>;<CAP>;IGNORE
-<U1EB2> <a(>;<HOK>;<CAP>;IGNORE
-<U1EB4> <a(>;<TIL>;<CAP>;IGNORE
-<U1EAE> <a(>;<ACA>;<CAP>;IGNORE
-<U1EB6> <a(>;<PCT>;<CAP>;IGNORE
-<U00C2> <a/>>;<BAS>;<CAP>;IGNORE
-<U1EA6> <a/>>;<GRA>;<CAP>;IGNORE
-<U1EA8> <a/>>;<HOK>;<CAP>;IGNORE
-<U1EAA> <a/>>;<TIL>;<CAP>;IGNORE
-<U1EA4> <a/>>;<ACA>;<CAP>;IGNORE
-<U1EAC> <a/>>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0064>
-<U0111> <d//>;<BAS>;<MIN>;IGNORE
-<U00F0> <d//>;<PCL>;<MIN>;IGNORE
-reorder-after <U0044>
-<U0110> <d//>;<BAS>;<CAP>;IGNORE
-<U00D0> <d//>;<PCL>;<CAP>;IGNORE
-
-reorder-after <U0065>
-<U1EBB> <e>;<HOK>;<MIN>;IGNORE
-<U1EBD> <e>;<TIL>;<MIN>;IGNORE
-<U1EB9> <e>;<PCT>;<MIN>;IGNORE
-<U00EA> <e/>>;<BAS>;<MIN>;IGNORE
-<U1EC1> <e/>>;<GRA>;<MIN>;IGNORE
-<U1EC3> <e/>>;<HOK>;<MIN>;IGNORE
-<U1EC5> <e/>>;<TIL>;<MIN>;IGNORE
-<U1EBF> <e/>>;<ACA>;<MIN>;IGNORE
-<U1EC7> <e/>>;<PCT>;<MIN>;IGNORE
-reorder-after <U0045>
-<U1EBA> <e>;<HOK>;<CAP>;IGNORE
-<U1EBC> <e>;<TIL>;<CAP>;IGNORE
-<U1EB8> <e>;<PCT>;<CAP>;IGNORE
-<U00CA> <e/>>;<BAS>;<CAP>;IGNORE
-<U1EC0> <e/>>;<GRA>;<CAP>;IGNORE
-<U1EC2> <e/>>;<HOK>;<CAP>;IGNORE
-<U1EC4> <e/>>;<TIL>;<CAP>;IGNORE
-<U1EBE> <e/>>;<ACA>;<CAP>;IGNORE
-<U1EC6> <e/>>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U0069>
-<U1EC9> <i>;<HOK>;<MIN>;IGNORE
-<U1ECB> <i>;<PCT>;<MIN>;IGNORE
-reorder-after <U0049>
-<U1EC8> <i>;<HOK>;<CAP>;IGNORE
-<U1ECA> <i>;<PCT>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U1ECF> <o>;<HOK>;<MIN>;IGNORE
-<U1ECD> <o>;<PCT>;<MIN>;IGNORE
-<U00F4> <o/>>;<BAS>;<MIN>;IGNORE
-<U1ED3> <o/>>;<GRA>;<MIN>;IGNORE
-<U1ED5> <o/>>;<HOK>;<MIN>;IGNORE
-<U1ED7> <o/>>;<TIL>;<MIN>;IGNORE
-<U1ED1> <o/>>;<ACA>;<MIN>;IGNORE
-<U1ED9> <o/>>;<PCT>;<MIN>;IGNORE
-<U01A1> <o9>;<BAS>;<MIN>;IGNORE
-<U1EDD> <o9>;<GRA>;<MIN>;IGNORE
-<U1EDF> <o9>;<HOK>;<MIN>;IGNORE
-<U1EE1> <o9>;<TIL>;<MIN>;IGNORE
-<U1EDB> <o9>;<ACA>;<MIN>;IGNORE
-<U1EE3> <o9>;<PCT>;<MIN>;IGNORE
-reorder-after <U004F>
-<U1ECE> <o>;<HOK>;<CAP>;IGNORE
-<U1ECC> <o>;<PCT>;<CAP>;IGNORE
-<U00D4> <o/>>;<BAS>;<CAP>;IGNORE
-<U1ED2> <o/>>;<GRA>;<CAP>;IGNORE
-<U1ED4> <o/>>;<HOK>;<CAP>;IGNORE
-<U1ED6> <o/>>;<TIL>;<CAP>;IGNORE
-<U1ED0> <o/>>;<ACA>;<CAP>;IGNORE
-<U1ED8> <o/>>;<PCT>;<CAP>;IGNORE
-<U01A0> <o9>;<BAS>;<CAP>;IGNORE
-<U1EDC> <o9>;<GRA>;<CAP>;IGNORE
-<U1EDE> <o9>;<HOK>;<CAP>;IGNORE
-<U1EE0> <o9>;<TIL>;<CAP>;IGNORE
-<U1EDA> <o9>;<ACA>;<CAP>;IGNORE
-<U1EE2> <o9>;<PCT>;<CAP>;IGNORE
+% CLDR collation rules for Vietnamese:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/vi.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% &̀<<̉<<̃<<́<<̣
+% &a<ă<<<Ă<â<<<Â
+% &d<đ<<<Đ
+% &e<ê<<<Ê
+% &o<ô<<<Ô<ơ<<<Ơ
+% &u<ư<<<Ư
+% ]]></cr>
+% </collation>
+% <collation type="traditional">
+% <cr><![CDATA[
+% [normalization on]
+% &̀<<̉<<̃<<́<<̣
+% &a<ă<<<Ă<â<<<Â
+% &C<ch<<<Ch<<<CH
+% &d<đ<<<Đ
+% &e<ê<<<Ê
+% &G<gh<<<Gh<<<GH<gi<<<Gi<<<GI
+% &K<kh<<<Kh<<<KH
+% &N<nh<<<Nh<<<NH<ng<<<Ng<<<NG<ngh<<<Ngh<<<NGh<<<NGH
+% &o<ô<<<Ô<ơ<<<Ơ
+% &P<ph<<<Ph<<<PH
+% &Q<qu<<<Qu<<<QU
+% &T<th<<<Th<<<TH<tr<<<Tr<<<TR
+% &u<ư<<<Ư
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/vi.xml)
+%
+% <exemplarCharacters type="index" draft="contributed">[A Ă Â B C D Đ E Ê F G H I J K L M N O Ô Ơ P Q R S T U Ư V W X Y Z]</exemplarCharacters>
+%
+% The following rules implement the “standard” order for glibc.
-reorder-after <U0075>
-<U1EE7> <u>;<HOK>;<MIN>;IGNORE
-<U1EE5> <u>;<PCT>;<MIN>;IGNORE
-<U01B0> <u9>;<BAS>;<MIN>;IGNORE
-<U1EEB> <u9>;<GRA>;<MIN>;IGNORE
-<U1EED> <u9>;<HOK>;<MIN>;IGNORE
-<U1EEF> <u9>;<TIL>;<MIN>;IGNORE
-<U1EE9> <u9>;<ACA>;<MIN>;IGNORE
-<U1EF1> <u9>;<PCT>;<MIN>;IGNORE
-reorder-after <U0055>
-<U1EE6> <u>;<HOK>;<CAP>;IGNORE
-<U1EE4> <u>;<PCT>;<CAP>;IGNORE
-<U01AF> <u9>;<BAS>;<CAP>;IGNORE
-<U1EEA> <u9>;<GRA>;<CAP>;IGNORE
-<U1EEC> <u9>;<HOK>;<CAP>;IGNORE
-<U1EEE> <u9>;<TIL>;<CAP>;IGNORE
-<U1EE8> <u9>;<ACA>;<CAP>;IGNORE
-<U1EF0> <u9>;<PCT>;<CAP>;IGNORE
+copy "iso14651_t1"
-reorder-after <U0079>
-<U1EF3> <y>;<GRA>;<MIN>;IGNORE
-<U1EF7> <y>;<HOK>;<MIN>;IGNORE
-<U1EF9> <y>;<TIL>;<MIN>;IGNORE
-<U1EF5> <y>;<PCT>;<MIN>;IGNORE
-reorder-after <U0059>
-<U1EF2> <y>;<GRA>;<CAP>;IGNORE
-<U1EF6> <y>;<HOK>;<CAP>;IGNORE
-<U1EF8> <y>;<TIL>;<CAP>;IGNORE
-<U1EF4> <y>;<PCT>;<CAP>;IGNORE
+collating-symbol <a-breve>
+collating-symbol <a-circumflex>
+collating-symbol <d-stroke>
+collating-symbol <e-circumflex>
+collating-symbol <o-circumflex>
+collating-symbol <o-horn>
+collating-symbol <u-horn>
+
+reorder-after <BASE>
+<GRAVE> % COMBINING GRAVE ACCENT
+<CROOK> % COMBINING HOOK ABOVE
+<TILDE> % COMBINING TILDE
+<AIGUT> % COMBINING ACUTE ACCENT
+<POINS> % COMBINING DOT BELOW
+
+reorder-after <AFTER-A>
+<a-breve>
+<a-circumflex>
+reorder-after <AFTER-D>
+<d-stroke>
+reorder-after <AFTER-E>
+<e-circumflex>
+reorder-after <AFTER-O>
+<o-circumflex>
+<o-horn>
+reorder-after <AFTER-U>
+<u-horn>
+
+<U0103> <a-breve>;"<BASE><BREVE>";"<MIN><MIN>";<U0103> % ă
+<U0102> <a-breve>;"<BASE><BREVE>";"<CAP><MIN>";<U0102> % Ă
+<U00E2> <a-circumflex>;"<BASE><CIRCF>";"<MIN><MIN>";<U00E2> % â
+<U00C2> <a-circumflex>;"<BASE><CIRCF>";"<CAP><MIN>";<U00C2> % Â
+<U0111> <d-stroke>;"<BASE><BARRE>";"<MIN><MIN>";<U0111> % đ
+<U0110> <d-stroke>;"<BASE><BARRE>";"<CAP><MIN>";<U0110> % Đ
+<U00EA> <e-circumflex>;"<BASE><CIRCF>";"<MIN><MIN>";<U00EA> % ê
+<U00CA> <e-circumflex>;"<BASE><CIRCF>";"<CAP><MIN>";<U00CA> % Ê
+<U00F4> <o-circumflex>;"<BASE><CIRCF>";"<MIN><MIN>";<U00F4> % ô
+<U00D4> <o-circumflex>;"<BASE><CIRCF>";"<CAP><MIN>";<U00D4> % Ô
+<U01A1> <o-horn>;"<BASE><HORNU>";"<MIN><MIN>";<U01A1> % ơ
+<U01A0> <o-horn>;"<BASE><HORNU>";"<CAP><MIN>";<U01A0> % Ơ
+<U01B0> <u-horn>;"<BASE><HORNU>";"<MIN><MIN>";<U01B0> % ư
+<U01AF> <u-horn>;"<BASE><HORNU>";"<CAP><MIN>";<U01AF> % Ư
reorder-end
diff --git a/localedata/locales/yi_US b/localedata/locales/yi_US
index 007ec7d082..95963830fc 100644
--- a/localedata/locales/yi_US
+++ b/localedata/locales/yi_US
@@ -71,46 +71,95 @@ translit_end
END LC_CTYPE
LC_COLLATE
+% CLDR collation rules for Yiddish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/yi.xml)
+%
+% <collation type="standard">
+% <cr><![CDATA[
+% [normalization on]
+% [reorder Hebr]
+% &[before 2]''<<׳ # GERESH just before APOSTROPHE (secondary difference)
+% &[before 2]'\"'<<״ # GERSHAYIM just before QUOTATION MARK (secondary difference)
+% &ב<בֿ
+% &ו<<וּ<<וו<<וי
+% &י<<יִ<<יי<<ײַ
+% &[before 1]כ<כּ
+% &[before 1]פ<פּ
+% &פֿ<<<ף
+% &ש<שׂ
+% &[before 1]ת<תּ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/yi.xml)
+%
+% <exemplarCharacters type="index">[\u05C2 \u05BC \u05BF א ב ג ד ה ו ז ח ט י כ ל מ נ ס ע פ צ ק ר ש ת]</exemplarCharacters>
+%
+% The following rules implement the same order for glibc.
copy "iso14651_t1"
-collating-symbol <b-h-yi>
-collating-element <B+'H-> from "<U05D1><U05BF>"
-collating-symbol <k-m-yi>
-collating-element <K+.MH> from "<U05DB><U05BC>"
-collating-symbol <p-m-yi>
-collating-element <P+.MH> from "<U05E4><U05BC>"
-collating-symbol <p-h-yi>
-collating-element <P+'H-> from "<U05E4><U05BF>"
-collating-symbol <s-h-yi>
-collating-element <Sh'H.L> from "<U05E9><U05C2>"
-collating-symbol <t-m-yi>
-collating-element <T+.MH> from "<U05EA><U05BC>"
-
-reorder-after <bet>
-<b-h-yi>
-reorder-after <yod>
-<k-m-yi>
-reorder-after <ayin>
-<p-m-yi>
-<p-h-yi>
-reorder-after <shin>
-<s-h-yi>
-<t-m-yi>
-
-reorder-after <U05D1>
-<B+'H-> <b-h-yi>;<PCT>;IGNORE;IGNORE
-reorder-after <U05D5>
-<U05F0> "<vav><vav>";"<LIG><LIG>";IGNORE;IGNORE
-<U05F1> "<vav><yod>";"<LIG><LIG>";IGNORE;IGNORE
-reorder-after <U05D9>
-<U05F2> "<yod><yod>";"<LIG><LIG>";IGNORE;IGNORE
-<K+.MH> <k-m-yi>;<PCT>;IGNORE;IGNORE
-reorder-after <U05E2>
-<P+.MH> <p-m-yi>;<PCT>;IGNORE;IGNORE
-<P+'H-> <p-h-yi>;<PCT>;IGNORE;IGNORE
-reorder-after <U05E9>
-<Sh'H.L> <s-h-yi>;<PCT>;IGNORE;IGNORE
-<T+.MH> <t-m-yi>;<PCT>;IGNORE;IGNORE
+collating-symbol <bet-rafe>
+collating-element <bet-with-combining-rafe> from "<U05D1><U05BF>" % ב + ֿ = בֿ
+collating-symbol <kaf-dagesh>
+collating-element <kaf-with-combining-dagesh> from "<U05DB><U05BC>" % כ + ּ = כּ
+collating-symbol <pe-dagesh>
+collating-element <pe-with-combining-dagesh> from "<U05E4><U05BC>" % פ + ּ = פּ
+collating-symbol <pe-rafe>
+collating-element <pe-with-combining-rafe> from "<U05E4><U05BF>" % פ + ֿ = פֿ
+collating-symbol <shin-sin-dot>
+collating-element <shin-with-combining-sin-dot> from "<U05E9><U05C2>" % ש + ׂ = שׂ
+collating-symbol <tav-dagesh>
+collating-element <tav-with-combining-dagesh> from "<U05EA><U05BC>" % ת + ּ = תּ
+
+collating-element <vav-with-combining-dagesh> from "<U05D5><U05BC>" % ו + ּ = וּ
+collating-element <vav-vav> from "<U05D5><U05D5>" % ו + ו = וו
+collating-element <vav-yod> from "<U05D5><U05D9>" % ו + י = וי
+collating-element <yod-with-combining-hiriq> from "<U05D9><U05B4>" % י + ִ = יִ
+collating-element <yod-yod> from "<U05D9><U05D9>" % י + י = יי
+collating-element <double-yod-with-combining-patah> from "<U05F2><U05B7>" % ײ + ַ = ײַ
+
+reorder-after <S05D1> % HEBREW LETTER BET
+<bet-rafe>
+reorder-after <S05D9> % HEBREW LETTER YOD
+<kaf-dagesh>
+reorder-after <S05E2> % HEBREW LETTER AYIN
+<pe-dagesh>
+reorder-after <S05E4> % HEBREW LETTER PE
+<pe-rafe>
+reorder-after <S05E9> % HEBREW LETTER SHIN
+<shin-sin-dot>
+<tav-dagesh>
+
+% &[before 2]''<<׳ # GERESH just before APOSTROPHE (secondary difference)
+<U05F3> IGNORE;<VRNT1>;IGNORE;<U05F3> % HEBREW PUNCTUATION GERESH
+<U0027> IGNORE;<VRNT2>;IGNORE;<U0027> % APOSTROPHE
+% &[before 2]'\"'<<״ # GERSHAYIM just before QUOTATION MARK (secondary difference)
+<U05F4> IGNORE;<VRNT1>;IGNORE;<U05F4> % HEBREW PUNCTUATION GERSHAYIM
+<U0022> IGNORE;<VRNT2>;IGNORE;<U0022> % QUOTATION MARK
+% &ב<בֿ
+<bet-with-combining-rafe> <bet-rafe>;"<BASE><BASE>";IGNORE;IGNORE % ב + ֿ = בֿ
+% &ו<<וּ<<וו<<וי
+<U05D5> <S05D5>;"<BASE><BASE>";<MIN>;<U05D5> % ו HEBREW LETTER VAV
+<vav-with-combining-dagesh> <S05D5>;"<BASE><VRNT1>";<MIN>;"<U05D5><U05BC>" % ו + ּ = וּ
+<vav-vav> <S05D5>;"<BASE><VRNT2>";<MIN>;"<U05D5><U05D5>" % ו + ו = וו
+<vav-yod> <S05D5>;"<BASE><VRNT3>";<MIN>;"<U05D5><U05D9>" % ו + י = וי
+% &י<<יִ<<יי<<ײַ
+<U05D9> <S05D9>;"<BASE><BASE>";<MIN>;<U05D9> % י HEBREW LETTER YOD
+<yod-with-combining-hiriq> <S05D9>;"<BASE><VRNT1>";<MIN>;"<U05D9><U05B4>" % י + ִ = יִ
+<yod-yod> <S05D9>;"<BASE><VRNT2>";<MIN>;"<U05D9><U05D9>" % י + י = יי
+<double-yod-with-combining-patah> <S05D9>;"<BASE><VRNT3>";<MIN>;"<U05F2><U05B7>" % ײ + ַ = ײַ% &[before 1]כ<כּ
+<kaf-with-combining-dagesh> <kaf-dagesh>;"<BASE><BASE>";IGNORE;IGNORE % כ + ּ = כּ
+% &[before 1]פ<פּ
+<pe-with-combining-dagesh> <pe-dagesh>;"<BASE><BASE>";IGNORE;IGNORE % פ + ּ = פּ
+% &פֿ<<<ף
+<pe-with-combining-rafe> <pe-rafe>;"<BASE><BASE>";<MIN>;IGNORE % פ + ֿ = פֿ
+<U05E3> <pe-rafe>;"<BASE><BASE>";<CAP>;IGNORE % ף
+% &ש<שׂ
+<shin-with-combining-sin-dot> <shin-sin-dot>;"<BASE><BASE>";IGNORE;IGNORE % ש + ׂ = שׂ
+% &[before 1]ת<תּ
+<tav-with-combining-dagesh> <tav-dagesh>;"<BASE><BASE>";IGNORE;IGNORE % ת + ּ = תּ
reorder-end
diff --git a/localedata/locales/yo_NG b/localedata/locales/yo_NG
index 32e23f2b59..ec72d078bb 100644
--- a/localedata/locales/yo_NG
+++ b/localedata/locales/yo_NG
@@ -68,292 +68,85 @@ LC_COLLATE
copy "iso14651_t1"
-% digraphs (gb)
-collating-symbol <g-b-yo>
-collating-element <G-B> from "<U0047><U0042>"
-collating-element <g-b> from "<U0067><U0062>"
-collating-element <G-b> from "<U0047><U0062>"
-collating-element <g-B> from "<U0067><U0042>"
-% belowdot (ẹ, ọ, ș)
-collating-symbol <ebelowdot>
-collating-element <E_> from "<U0045><U0323>"
-collating-element <e_> from "<U0065><U0323>"
-collating-element <E_'> from "<U1EB8><U0301>"
-collating-element <e_'> from "<U1EB9><U0301>"
-collating-element <E_`> from "<U1EB8><U0300>"
-collating-element <e_`> from "<U1EB9><U0300>"
-collating-element <E_2'> from "<U0045><U0323><U0301>"
-collating-element <e_2'> from "<U0065><U0323><U0301>"
-collating-element <E_2`> from "<U0045><U0323><U0300>"
-collating-element <e_2`> from "<U0065><U0323><U0300>"
-collating-symbol <obelowdot>
-collating-element <O_> from "<U004F><U0323>"
-collating-element <o_> from "<U006F><U0323>"
-collating-element <O_'> from "<U1ECC><U0301>"
-collating-element <o_'> from "<U1ECD><U0301>"
-collating-element <O_`> from "<U1ECC><U0300>"
-collating-element <o_`> from "<U1ECD><U0300>"
-collating-element <O_2'> from "<U004F><U0323><U0301>"
-collating-element <o_2'> from "<U006F><U0323><U0301>"
-collating-element <O_2`> from "<U004F><U0323><U0300>"
-collating-element <o_2`> from "<U006F><U0323><U0300>"
-collating-symbol <sbelowdot>
-collating-element <S_> from "<U0053><U0323>"
-collating-element <s_> from "<U0073><U0323>"
-% acute (áéíḿńóú; for acute on ẹọ look above)
-collating-element <A'> from "<U0041><U0301>"
-collating-element <a'> from "<U0061><U0301>"
-collating-element <E'> from "<U0045><U0301>"
-collating-element <e'> from "<U0065><U0301>"
-collating-element <I'> from "<U0049><U0301>"
-collating-element <i'> from "<U0069><U0301>"
-collating-element <M'> from "<U004D><U0301>"
-collating-element <m'> from "<U006D><U0301>"
-collating-element <N'> from "<U004E><U0301>"
-collating-element <n'> from "<U006E><U0301>"
-collating-element <O'> from "<U004F><U0301>"
-collating-element <o'> from "<U006F><U0301>"
-collating-element <U'> from "<U0055><U0301>"
-collating-element <u'> from "<U0075><U0301>"
-% grave (àèìm̀ǹòù; for grave on ẹọ look above)
-collating-element <A`> from "<U0041><U0300>"
-collating-element <a`> from "<U0061><U0300>"
-collating-element <E`> from "<U0045><U0300>"
-collating-element <e`> from "<U0065><U0300>"
-collating-element <I`> from "<U0049><U0300>"
-collating-element <i`> from "<U0069><U0300>"
-collating-element <M`> from "<U004D><U0300>"
-collating-element <m`> from "<U006D><U0300>"
-collating-element <N`> from "<U004E><U0300>"
-collating-element <n`> from "<U006E><U0300>"
-collating-element <O`> from "<U004F><U0300>"
-collating-element <o`> from "<U006F><U0300>"
-collating-element <U`> from "<U0055><U0300>"
-collating-element <u`> from "<U0075><U0300>"
-% macron (m̅, n̅; not implemented on other letters)
-collating-element <M-> from "<U004D><U0304>"
-collating-element <m-> from "<U006D><U0304>"
-collating-element <N-> from "<U004E><U0304>"
-collating-element <n-> from "<U006E><U0304>"
-% circumflex (âêệîôộû)
-collating-element <A/>> from "<U0041><U0302>"
-collating-element <a/>> from "<U0061><U0302>"
-collating-element <E/>> from "<U0045><U0302>"
-collating-element <e/>> from "<U0065><U0302>"
-collating-element <E_/>> from "<U1EB8><U0302>"
-collating-element <e_/>> from "<U1EB9><U0302>"
-collating-element <I/>> from "<U0049><U0302>"
-collating-element <i/>> from "<U0069><U0302>"
-collating-element <O/>> from "<U004F><U0302>"
-collating-element <o/>> from "<U006F><U0302>"
-collating-element <O_/>> from "<U1ECC><U0302>"
-collating-element <o_/>> from "<U1ECD><U0302>"
-collating-element <U/>> from "<U0055><U0302>"
-collating-element <u/>> from "<U0075><U0302>"
-% caron (ǎěẹ̌ǐǒọ̌ǔ)
-collating-element <A<> from "<U0041><U030C>"
-collating-element <a<> from "<U0061><U030C>"
-collating-element <E<> from "<U0045><U030C>"
-collating-element <e<> from "<U0065><U030C>"
-collating-element <E_<> from "<U1EB8><U030C>"
-collating-element <e_<> from "<U1EB9><U030C>"
-collating-element <I<> from "<U0049><U030C>"
-collating-element <i<> from "<U0069><U030C>"
-collating-element <O<> from "<U004F><U030C>"
-collating-element <o<> from "<U006F><U030C>"
-collating-element <O_<> from "<U1ECC><U030C>"
-collating-element <o_<> from "<U1ECD><U030C>"
-collating-element <U<> from "<U0055><U030C>"
-collating-element <u<> from "<U0075><U030C>"
-% tilde (not implemented; old orthography)
-
-collating-symbol <CAP-MIN>
-collating-symbol <MIN-CAP>
-
-reorder-after <BAS>
-<ACA>
-<MAC>
-<GRA>
-
-reorder-after <MIN>
-<MIN-CAP>
-
-reorder-after <CAP>
-<CAP-MIN>
-
-reorder-after <e>
-<ebelowdot>
-reorder-after <g>
-<g-b-yo>
-reorder-after <o>
-<obelowdot>
-reorder-after <s>
-<sbelowdot>
-
-reorder-after <U0061>
-<U00E1> <a>;<ACA>;<MIN>;IGNORE
-<a'> <a>;<ACA>;<MIN>;IGNORE
-<U00E2> "<a><a>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<a/>> "<a><a>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<U00E0> <a>;<GRA>;<MIN>;IGNORE
-<a`> <a>;<GRA>;<MIN>;IGNORE
-<U01CE> "<a><a>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<a<> "<a><a>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-reorder-after <U0041>
-<U00C1> <a>;<ACA>;<CAP>;IGNORE
-<A'> <a>;<ACA>;<CAP>;IGNORE
-<U00C2> "<a><a>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<A/>> "<a><a>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U00C0> <a>;<GRA>;<CAP>;IGNORE
-<A`> <a>;<GRA>;<CAP>;IGNORE
-<U01CD> "<a><a>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<A<> "<a><a>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0065>
-<U00E9> <e>;<ACA>;<MIN>;IGNORE
-<e'> <e>;<ACA>;<MIN>;IGNORE
-<U00EA> "<e><e>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<e/>> "<e><e>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<U00E8> <e>;<GRA>;<MIN>;IGNORE
-<e`> <e>;<GRA>;<MIN>;IGNORE
-<U011B> "<e><e>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<e<> "<e><e>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<U1EB9> <ebelowdot>;<BAS>;<MIN>;IGNORE
-<e_> <ebelowdot>;<BAS>;<MIN>;IGNORE
-<e_'> <ebelowdot>;<ACA>;<MIN>;IGNORE
-<e_2'> <ebelowdot>;<ACA>;<MIN>;IGNORE
-<e_/>> "<ebelowdot><ebelowdot>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<e_`> <ebelowdot>;<GRA>;<MIN>;IGNORE
-<e_2`> <ebelowdot>;<GRA>;<MIN>;IGNORE
-<e_<> "<ebelowdot><ebelowdot>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-reorder-after <U0045>
-<U00C9> <e>;<ACA>;<CAP>;IGNORE
-<E'> <e>;<ACA>;<CAP>;IGNORE
-<U00CA> "<e><e>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<E/>> "<e><e>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U00C8> <e>;<GRA>;<CAP>;IGNORE
-<E`> <e>;<GRA>;<CAP>;IGNORE
-<U011A> "<e><e>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<E<> "<e><e>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<U1EB8> <ebelowdot>;<BAS>;<CAP>;IGNORE
-<E_> <ebelowdot>;<CAP>;<CAP>;IGNORE
-<E_'> <ebelowdot>;<ACA>;<CAP>;IGNORE
-<E_2'> <ebelowdot>;<ACA>;<CAP>;IGNORE
-<E_/>> "<ebelowdot><ebelowdot>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<E_`> <ebelowdot>;<GRA>;<CAP>;IGNORE
-<E_2`> <ebelowdot>;<GRA>;<CAP>;IGNORE
-<E_<> "<ebelowdot><ebelowdot>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0067>
-<g-b> <g-b-yo>;<PCL>;<MIN>;IGNORE
-<g-B> <g-b-yo>;<PCL>;<MIN-CAP>;IGNORE
-reorder-after <U0047>
-<G-B> <g-b-yo>;<PCL>;<CAP>;IGNORE
-<G-b> <g-b-yo>;<PCL>;<CAP-MIN>;IGNORE
-
-reorder-after <U0069>
-<U00ED> <i>;<ACA>;<MIN>;IGNORE
-<i'> <i>;<ACA>;<MIN>;IGNORE
-<U00EE> "<i><i>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<i/>> "<i><i>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<U00EC> <i>;<GRA>;<MIN>;IGNORE
-<i`> <i>;<GRA>;<MIN>;IGNORE
-<U01D0> "<i><i>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<i<> "<i><i>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-reorder-after <U0049>
-<U00CD> <i>;<ACA>;<CAP>;IGNORE
-<I'> <i>;<ACA>;<CAP>;IGNORE
-<U00CE> "<i><i>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<I/>> "<i><i>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U00CC> <i>;<GRA>;<CAP>;IGNORE
-<I`> <i>;<GRA>;<CAP>;IGNORE
-<U01CF> "<i><i>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<I<> "<i><i>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-
-reorder-after <U006D>
-<U1E3F> <m>;<ACA>;<MIN>;IGNORE
-<m'> <m>;<ACA>;<MIN>;IGNORE
-<m-> <m>;<MAC>;<MIN>;IGNORE
-<m`> <m>;<GRA>;<MIN>;IGNORE
-reorder-after <U004E>
-<U1E3E> <m>;<ACA>;<CAP>;IGNORE
-<M'> <m>;<ACA>;<CAP>;IGNORE
-<M-> <m>;<MAC>;<CAP>;IGNORE
-<M`> <m>;<GRA>;<CAP>;IGNORE
-
-reorder-after <U006E>
-<U0144> <n>;<ACA>;<MIN>;IGNORE
-<n'> <n>;<ACA>;<MIN>;IGNORE
-<n-> <n>;<MAC>;<MIN>;IGNORE
-<U01F9> <n>;<GRA>;<MIN>;IGNORE
-<n`> <n>;<GRA>;<MIN>;IGNORE
-reorder-after <U004E>
-<U0143> <n>;<ACA>;<CAP>;IGNORE
-<N'> <n>;<ACA>;<CAP>;IGNORE
-<N-> <n>;<MAC>;<CAP>;IGNORE
-<U01F8> <n>;<GRA>;<CAP>;IGNORE
-<N`> <n>;<GRA>;<CAP>;IGNORE
-
-reorder-after <U006F>
-<U00F3> <o>;<ACA>;<MIN>;IGNORE
-<o'> <o>;<ACA>;<MIN>;IGNORE
-<U00F4> "<o><o>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<o/>> "<o><o>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<U00F2> <o>;<GRA>;<MIN>;IGNORE
-<o`> <o>;<GRA>;<MIN>;IGNORE
-<U01D2> "<o><o>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<o<> "<o><o>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<U1ECD> <obelowdot>;<BAS>;<MIN>;IGNORE
-<o_> <obelowdot>;<BAS>;<MIN>;IGNORE
-<o_'> <obelowdot>;<ACA>;<MIN>;IGNORE
-<o_2'> <obelowdot>;<ACA>;<MIN>;IGNORE
-<o_/>> "<obelowdot><obelowdot>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<o_`> <obelowdot>;<GRA>;<MIN>;IGNORE
-<o_2`> <obelowdot>;<GRA>;<MIN>;IGNORE
-<o_<> "<obelowdot><obelowdot>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-reorder-after <U004F>
-<U00D3> <o>;<ACA>;<CAP>;IGNORE
-<O'> <o>;<ACA>;<CAP>;IGNORE
-<U00D4> "<o><o>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<O/>> "<o><o>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U00D2> <o>;<GRA>;<CAP>;IGNORE
-<O`> <o>;<GRA>;<CAP>;IGNORE
-<U01D1> "<o><o>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<O<> "<o><o>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<U1ECC> <obelowdot>;<BAS>;<CAP>;IGNORE
-<O_> <obelowdot>;<BAS>;<CAP>;IGNORE
-<O_'> <obelowdot>;<ACA>;<CAP>;IGNORE
-<O_2'> <obelowdot>;<ACA>;<CAP>;IGNORE
-<O_/>> "<obelowdot><obelowdot>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<O_`> <obelowdot>;<GRA>;<CAP>;IGNORE
-<O_2`> <obelowdot>;<GRA>;<CAP>;IGNORE
-<O_<> "<obelowdot><obelowdot>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0073>
-<U1E63> <sbelowdot>;<BAS>;<MIN>;IGNORE
-<s_> <sbelowdot>;<BAS>;<MIN>;IGNORE
-reorder-after <U0053>
-<U1E62> <sbelowdot>;<BAS>;<CAP>;IGNORE
-<S_> <sbelowdot>;<BAS>;<CAP>;IGNORE
-
-reorder-after <U0075>
-<U00FA> <u>;<ACA>;<MIN>;IGNORE
-<u'> <u>;<ACA>;<MIN>;IGNORE
-<U00FB> "<u><u>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<u/>> "<u><u>";"<ACA><GRA>";"<MIN><MIN>";IGNORE
-<U00F9> <u>;<GRA>;<MIN>;IGNORE
-<u`> <u>;<GRA>;<MIN>;IGNORE
-<U01D4> "<u><u>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-<u<> "<u><u>";"<GRA><ACA>";"<MIN><MIN>";IGNORE
-reorder-after <U0055>
-<U00DA> <u>;<ACA>;<CAP>;IGNORE
-<U'> <u>;<ACA>;<CAP>;IGNORE
-<U00DB> "<u><u>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U/>> "<u><u>";"<ACA><GRA>";"<CAP><CAP>";IGNORE
-<U00D9> <u>;<GRA>;<CAP>;IGNORE
-<U`> <u>;<GRA>;<CAP>;IGNORE
-<U01D3> "<u><u>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
-<U<> "<u><u>";"<GRA><ACA>";"<CAP><CAP>";IGNORE
+% CLDR collation rules for Yoruba:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/yo.xml)
+%
+% <collation type="standard" references="Nigeria University Press: A dictionary of the Yoruba language ISBN 978-030-760-5">
+% <cr><![CDATA[
+% [normalization on]
+% &E<ẹ<<<Ẹ
+% &G<gb<<<Gb<<<GB
+% &O<ọ<<<Ọ
+% &S<ṣ<<<Ṣ
+% ]]></cr>
+% </collation>
+%
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/yo.xml)
+%
+% <exemplarCharacters type="index">[A B D E F G H I J K L M N O P R S T U W Y]</exemplarCharacters>
+%
+% The list of index characters looks wrong when comparing with the
+% collation rules.
+%
+% The following rules implement the same order for glibc.
+
+collating-symbol <e-dot-below>
+collating-symbol <gb-digraph>
+collating-symbol <o-dot-below>
+collating-symbol <s-dot-below>
+
+collating-element <e-combining-dot-below> from "e<U0323>"
+collating-element <E-combining-dot-below> from "E<U0323>"
+
+collating-element <g-b> from "gb"
+collating-element <g-B> from "gB"
+collating-element <G-b> from "Gb"
+collating-element <G-B> from "GB"
+
+collating-element <o-combining-dot-below> from "o<U0323>"
+collating-element <O-combining-dot-below> from "O<U0323>"
+
+collating-element <s-combining-dot-below> from "s<U0323>"
+collating-element <S-combining-dot-below> from "S<U0323>"
+
+% &E<ẹ<<<Ẹ
+reorder-after <AFTER-E>
+<e-dot-below>
+% &G<gb<<<Gb<<<GB
+reorder-after <AFTER-G>
+<gb-digraph>
+% &O<ọ<<<Ọ
+reorder-after <AFTER-O>
+<o-dot-below>
+% &S<ṣ<<<Ṣ
+reorder-after <AFTER-S>
+<s-dot-below>
+
+% &E<ẹ<<<Ẹ
+<U1EB9> <e-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % LATIN SMALL LETTER E WITH DOT BELOW
+<e-combining-dot-below> <e-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1EB8> <e-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % LATIN CAPITAL LETTER E WITH DOT BELOW
+<E-combining-dot-below> <e-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+
+% &G<gb<<<Gb<<<GB
+<g-b> <gb-digraph>;"<BASE><BASE>";"<MIN><MIN>";IGNORE
+<g-B> <gb-digraph>;"<BASE><BASE>";"<MIN><CAP>";IGNORE
+<G-b> <gb-digraph>;"<BASE><BASE>";"<CAP><MIN>";IGNORE
+<G-B> <gb-digraph>;"<BASE><BASE>";"<CAP><CAP>";IGNORE
+
+% &O<ọ<<<Ọ
+<U1ECD> <o-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % LATIN SMALL LETTER O WITH DOT BELOW
+<o-combining-dot-below> <o-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1ECC> <o-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % LATIN CAPITAL LETTER O WITH DOT BELOW
+<O-combining-dot-below> <o-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
+
+% &S<ṣ<<<Ṣ
+<U1E63> <s-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT1> % LATIN SMALL LETTER S WITH DOT BELOW
+<s-combining-dot-below> <s-dot-below>;"<BASE><BASE>";"<MIN><MIN>";<VRNT2>
+<U1E62> <s-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT1> % LATIN CAPITAL LETTER S WITH DOT BELOW
+<S-combining-dot-below> <s-dot-below>;"<BASE><BASE>";"<CAP><MIN>";<VRNT2>
reorder-end