about summary refs log tree commit diff
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