From 490ef1cc236ae77b8168218d77cbc3b85ecb81bc Mon Sep 17 00:00:00 2001 From: Qunxin Liu Date: Tue, 28 Jan 2020 15:57:33 -0800 Subject: [PATCH] [subset] Fix namerecord ordering This will fix inconsistency with fontTools. Also according to the spec, namerecords must be sorted first by platform ID, then by platform-specific ID, then by language ID, and then by name ID. --- src/hb-ot-name-table.hh | 37 +++++++++++++++++- ...eongjo-Regular-subset.default.61,62,63.ttf | Bin 0 -> 4128 bytes ...mMyeongjo-Regular-subset.default.61,63.ttf | Bin 0 -> 3580 bytes ...anumMyeongjo-Regular-subset.default.61.ttf | Bin 0 -> 3156 bytes ...anumMyeongjo-Regular-subset.default.62.ttf | Bin 0 -> 3180 bytes ...anumMyeongjo-Regular-subset.default.63.ttf | Bin 0 -> 3048 bytes ...ar-subset.default.retain-all-codepoint.ttf | Bin 0 -> 9524 bytes ...subset.drop-hints-retain-gids.61,62,63.ttf | Bin 0 -> 1452 bytes ...ar-subset.drop-hints-retain-gids.61,63.ttf | Bin 0 -> 1284 bytes ...gular-subset.drop-hints-retain-gids.61.ttf | Bin 0 -> 1128 bytes ...gular-subset.drop-hints-retain-gids.62.ttf | Bin 0 -> 1144 bytes ...gular-subset.drop-hints-retain-gids.63.ttf | Bin 0 -> 1116 bytes ...hints-retain-gids.retain-all-codepoint.ttf | Bin 0 -> 3536 bytes ...gjo-Regular-subset.drop-hints.61,62,63.ttf | Bin 0 -> 1452 bytes ...eongjo-Regular-subset.drop-hints.61,63.ttf | Bin 0 -> 1276 bytes ...mMyeongjo-Regular-subset.drop-hints.61.ttf | Bin 0 -> 1128 bytes ...mMyeongjo-Regular-subset.drop-hints.62.ttf | Bin 0 -> 1140 bytes ...mMyeongjo-Regular-subset.drop-hints.63.ttf | Bin 0 -> 1104 bytes ...subset.drop-hints.retain-all-codepoint.ttf | Bin 0 -> 3536 bytes ...ongjo-Regular-subset.name-ids.61,62,63.ttf | Bin 0 -> 3924 bytes ...Myeongjo-Regular-subset.name-ids.61,63.ttf | Bin 0 -> 3376 bytes ...numMyeongjo-Regular-subset.name-ids.61.ttf | Bin 0 -> 2952 bytes ...numMyeongjo-Regular-subset.name-ids.62.ttf | Bin 0 -> 2976 bytes ...numMyeongjo-Regular-subset.name-ids.63.ttf | Bin 0 -> 2844 bytes ...r-subset.name-ids.retain-all-codepoint.ttf | Bin 0 -> 9320 bytes ...Regular-subset.name-languages.61,62,63.ttf | Bin 0 -> 4172 bytes ...jo-Regular-subset.name-languages.61,63.ttf | Bin 0 -> 3624 bytes ...ongjo-Regular-subset.name-languages.61.ttf | Bin 0 -> 3200 bytes ...ongjo-Regular-subset.name-languages.62.ttf | Bin 0 -> 3224 bytes ...ongjo-Regular-subset.name-languages.63.ttf | Bin 0 -> 3092 bytes ...et.name-languages.retain-all-codepoint.ttf | Bin 0 -> 9568 bytes ...jo-Regular-subset.name-legacy.61,62,63.ttf | Bin 0 -> 4128 bytes ...ongjo-Regular-subset.name-legacy.61,63.ttf | Bin 0 -> 3580 bytes ...Myeongjo-Regular-subset.name-legacy.61.ttf | Bin 0 -> 3156 bytes ...Myeongjo-Regular-subset.name-legacy.62.ttf | Bin 0 -> 3180 bytes ...Myeongjo-Regular-subset.name-legacy.63.ttf | Bin 0 -> 3048 bytes ...ubset.name-legacy.retain-all-codepoint.ttf | Bin 0 -> 9524 bytes ...jo-Regular-subset.retain-gids.61,62,63.ttf | Bin 0 -> 4128 bytes ...ongjo-Regular-subset.retain-gids.61,63.ttf | Bin 0 -> 3588 bytes ...Myeongjo-Regular-subset.retain-gids.61.ttf | Bin 0 -> 3156 bytes ...Myeongjo-Regular-subset.retain-gids.62.ttf | Bin 0 -> 3184 bytes ...Myeongjo-Regular-subset.retain-gids.63.ttf | Bin 0 -> 3060 bytes ...ubset.retain-gids.retain-all-codepoint.ttf | Bin 0 -> 9524 bytes .../Mplus1p-Regular.default.25771.ttf | Bin 1824 -> 1824 bytes .../Mplus1p-Regular.drop-hints.25771.ttf | Bin 1096 -> 1096 bytes .../fonts/NanumMyeongjo-Regular-subset.ttf | Bin 0 -> 9964 bytes test/subset/data/tests/basics.tests | 1 + 47 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.retain-all-codepoint.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61,62,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61,63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.62.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.63.ttf create mode 100644 test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.retain-all-codepoint.ttf create mode 100644 test/subset/data/fonts/NanumMyeongjo-Regular-subset.ttf diff --git a/src/hb-ot-name-table.hh b/src/hb-ot-name-table.hh index 71474845d..0da567189 100644 --- a/src/hb-ot-name-table.hh +++ b/src/hb-ot-name-table.hh @@ -116,6 +116,29 @@ struct NameRecord return (p == 0 || (p == 3 && (e == 0 || e == 1 || e == 10))); } + + static int cmp (const void *pa, const void *pb) + { + const NameRecord *a = (const NameRecord *)pa; + const NameRecord *b = (const NameRecord *)pb; + + if (a->platformID != b->platformID) + return a->platformID < b->platformID ? -1 : +1; + + if (a->encodingID != b->encodingID) + return a->encodingID < b->encodingID ? -1 : +1; + + if (a->languageID != b->languageID) + return a->languageID < b->languageID ? -1 : +1; + + if (a->nameID != b->nameID) + return a->nameID < b->nameID ? -1 : +1; + + if (a->length != b->length) + return a->length < b->length ? -1 : +1; + + return 0; + } bool sanitize (hb_sanitize_context_t *c, const void *base) const { @@ -200,7 +223,19 @@ struct name const void *dst_string_pool = &(this + this->stringOffset); - c->copy_all (it, src_string_pool, dst_string_pool); + NameRecord *name_records = (NameRecord *) calloc (it.len (), NameRecord::static_size); + hb_array_t records (name_records, it.len ()); + + for (const NameRecord& record : it) + { + memcpy (name_records, &record, NameRecord::static_size); + name_records++; + } + + records.qsort (); + + c->copy_all (records, src_string_pool, dst_string_pool); + free (records.arrayZ); if (unlikely (c->ran_out_of_room)) return_trace (false); diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,62,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,62,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dbed582fb56afff74f581a9be494eac5adb9b3b2 GIT binary patch literal 4128 zcmc&%YitzP6+U-ny7uu`i^Zh)i>!Ibcl8ckD)ELK#I`btz%(W*gBV^yu%L`qwUs#QeVCTzc% zSwDbA%8yDl``vrbxo6HjbIy0~9f%Q82^}GxhPMsI;=6AT{hO$;AKKxOsq{3hqRWsq z$ZJLp9uNzvEZ6l1@V9nsdVK2LFKnB_{GW&l){Uq4Pebp-&xhVNzUS$&AOHN0P;hzW8?{E9^;~fWmf||0AA{LJm$$9XM26O<#dr1=+c0-$&|LP1Op0z~mhtvD^AGnjFIFaKceSUgoblQ6BIOgm@$P2_# zGLQdSdrvY;v6%k~#mKill~>qxg`M0>3YV^M>56$cvs0|JtSw8{ zg^hkHBrBBzwLmMd8F&mB2fhS61DpWP1Fr!;1MEW^3+N^W?*rV>Jkqx4Gv>^axPa+* zNTd${ZU~FmFz^9&z*?XeNCFeUA>diyBya)90&f6z_*L_M**t3OrATBR8LCE~rD`lh zH{jc9Oz{*(uL23+QD6)>2pk2D1LuItz)u0=1>VNsJ%AfBy*Y2pQ$1GUjpWqFvLr1u zHifKKkK5ZES6j=iR%vy()@WN*RsXfD2}`T3g>HSKWsR+BWvoN+yK$I)|xpsqn?RqId;0 zyt=|`GQomD*m&76k{Mdak{7*VvO)nX6tF@8D-^Io0V@=+LIEojutEVV6tF@8D-^Io zS!9I*RwzbNi{VW*xuAjz>LM3Za6ttZRB%BB7gTUT1s7CsK?N67a6ttZRB%BB7r=rc zmZf%7q#0<3Tj2(Pv5cSzW75aa^EW`f-%>OE88E0(`cSgaX{w2y^DQCpF%%3bDj_{u74h3bSLZ><)jFs=lK zL)gNuQUz1#0qo~us=>MDu}V{fKmGc;bQ*Jtb*O zn$}p)Fa%MvgrrL)_v z*k^VRp=$tQz%^h&IR?A+M!UgiJB+p$bC`I>?2alpr=nZ3Wb032?Qf*AEcdl6byr^j zY56C1V7ewMianFvpb7*r3I&*xr9f0npq`0=q?8gfVy16bMofqk>0KzL(PLsXlZqk7 zgULy>k0b+HSIWOM98IO#;b*n(2amu!lY)occ@O9fRqPWONzpALc+{WVp45(X`?ap_ zls^yDH=zLXc`Q(nLHBCwSae!Y?M$p0wi(a(}{ zeEsgn zvc^fz(cLzsl(|bo^El=$6vM~5-DD@Y5p z1g8y7FH?1{4Cma3xL)cIwTGf4!EZfnqE1*9 z6Cl!7d_QePuUpQ*R&Ud=o5W}@HDG2VyzW82>|?(n zjnaM^h4vuYU4~`Cct&4i7j*lLHTN2`BJD&JBGR}Gt35&kC~*?cY{go8=_#6`hcQ2D zJU>pm(GNfx$IKpB%pl$dMB5B>epFe++jk%z`|zeC z#;OMmoo>|t2B?^w!pdJXVmg3txducsiMKF4HK1=oJaO2XUl8c-d<^-&{V`(rj&S@3 D*Pw4h literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5913420e3c290b8380daf2c54312d002b53c6e58 GIT binary patch literal 3580 zcmc&$YfK#16+U-oSr*5z!0y80g<+PNU0`;0mq*OQPzT4bhPbsUr0#Ai5-@KUFahc~ zKP>r2>eMT>s!C!zX<{44@#{x5O{-*stQx6mn@C9&Rjs8cC~B*=Qq)SW+D7gp_4d1W z7BF@rnx&`cI^<^{ zw+|m#P;$!c?+`t(3b|!$c6|DSuk4?OeFga3_|W_;^o2zEf5Yq?pL%-iJAc%#Vf`l} z>B_|D&`9PVFaL$ej+oRm0fqCJ^jlmDk+g~Fg`>G2(gE1{^;@S74-c^%_Dje=gzTIi zIy!3`cYXxBEy|-NHkqcHFr_KKE0LyH%>O3E$hR|@RpfI;K6%y^Zmw{1#WI5BQ>>`CHBFAy zU4F_X2bBWVKr^rh_%bjKJOw-poCYofZva07@&|V1&`m7<0N4hWQMR?1vBESdt1!P$ z3Vj6F2C#_}3m;Gev;f^e0+;}f0^b1609SxC@D`AdxJ}u(Y#AJvP&mAd3RPfEQw27n z_Ym75OcI4KHvw_r05Ap|0Zss?fJ?yZz)t~j1HZ!J_keA{idOjEGSy-iNff6xmL_$z zu0H5+cs(VJ4Nc9Z4u@J5sup8&QxpGhe=ww0IdVPRu>C=%pb zJ6%#==Buy;AFGe-w6Sm~IM!aH`<* zC0oSEAVyvzMg}o5h><~z3}R#uBZC+j#K<5<1~D>-kwJ_MVq_FAO%kH%R{Q8^A06$Z zqkVL=kB;`y(LOrbM@ReUXdfNzqoaLvw2!{lK04Y*M;ahkLsN&tf=mqzXdqJqnHtE{ zK&A#VHIS)+ObujeAX5XG8pzbv$kaflhH!#1PE=@vlG2hAuOJCZPMF{nN=_@gUNhcW z(^Fm^fN7xF9rbwpt}S`qf-QBC>NdCA?JX^h*F_)kjnzFAQY!nxJH|pm!QZSj(Nmk^m%V#F-{n8vapH{3;bYhqtdB2FtbM8nn|(nY$B2U+;A zU)%l)KRn$SIV8Z7y+03~Oy)M32bZ!pIB{qm1nusoO%lJX!*}iK zmCKi2z4*$7rSs>`zWma6Uwq-r=~K@?w|LT&cMnERg0hp}$BT-OOpG=$f(vNu7#9nH zBA^&h7u9M^ackLQO^;xT0x@6(SdE;7-%c?;B*r!|cEbk4v(|JXg7=iMH%-po1or+` zGR-nyPg7^bn`mC?iN|5CG!&(4vJ2~YAkSnc_O3Se z_9wcKX@F;1!%LobU&-^bC9hq-5%}szzgCny{68wW@mWe9`Aj8`u4lTb4@}rMKVZlS5PV z_pII_^t=2WcFZDR|5w-zc(e1lqFK#D1$WoyN{z6*(>7TP})BCUF;5q$uWkq`RDolhYDw;v;huL;+G E0Bi9Hj{pDw literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3635f68be507538e0d3682c9febf6f865bce9436 GIT binary patch literal 3156 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 McOOO!_lW#I0ELOmwEzGB literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.default.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..737cbdc7eb584e073e957a05b85eabeac5bd6cf9 GIT binary patch literal 3048 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 OJRttBM?mnM_xuIVk?sQk literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c64172a7628ce25663e90d01d44ae6564009c666 GIT binary patch literal 1284 zcmZ`&TWFJK7=FJ0k7-(Gn>Bw9Jtysw)-+9Xu*qtIL)2)8tFwxTDBEwFgPNqViKmN! z_q*BEyc$#x#2YVnA@u+vD9jr#gs~yQknPT~G3uf8_xZjAI%WHl?|a|pc~8%mFFyo; z&A1F5u>*%D6Q@^Cyalw&WWS!Tm^EC$ZQ|#|*`ism(K-R!8m*&PzEsFufAoa@3Lqk- zyt!b#{^2j?8{|?Y5{_^5--wSBe^RP6F19_x5#s&C&hp~CiQjRM*g@P;F)!8-(N@{( z4`P4StmFf4vOz%aCwHf|SZ}ObNO1nIG7b$9YgIfGFVT(^5VYIfh9{XwrM-6h$Z%*> z?deoXey6sDMuzQeh73$?lT?4@Xgsc=R7i3z1ostRq)_j){TrHG_drw%|;o&?ZYpZf~2&qDs8x$*6VP%z?Xck~_G--!!cQ9Yp1`=)$|2=iJHEKPTXqwe24I`<=g(1vk7IqYVmf(@4_N#xP&E~ zLJ=i2sPzU{f*s;qe#~MYmme~7iMet&nRkj_6;VcZvTK=kqeoq#JnG1kJN*qg0#Z z%Cu^8^!~s42&|LYMDy!ozoL1okw literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9b261449d59a140f2e25d9773fac5d9d74e23628 GIT binary patch literal 1128 zcmZ`&O-NKx6#nje&!>`^srcJA85m7<}2DuRu+C)LiKq$ft@%7#J2CS&}=A3)JbH4L)?|lOSU>}yCqGM>J z-9No`Z5t3@=pCO-85xw|37}jc?u;AR4A(M18|PXSPcFvRYd_P(bIOB6)QFhd_r5a! zHgPaPN6{_y6Y(nX(L^e@psVl@uMig{XC@6?rUkJ?rKgOA3|f>e;&EbE+DJv~e}>)c z&$xJznaSpMP59aWw2VW6$J`Ph#3qUn1l+n_;cy20!S2Jl-q_I8Z0YV`Q2x3)n;IMR zLWc}=bxK#j@2oiJaCVFSbgI3@eYWbZ(^pk_L~)P#+D<8=waFa|9}l(kit^Hu{ehnP z*2<24U(-%~kH=eotR`I1;Av@Y54E|w9FB(abDkbwW2MtkR^zWdRCcm^ck@J9HHU;e zUq!q`l?d{jCE9z`JeFr*@d_VDD&B2gKM?+o8qMOpe(PV8#>UgSRdd5E*JjoGggW{We*SiYQHRO&w_9Ud6%!wL)- zb`SL-woqhq#7E^D`SLbo4~{``P|FGqXpHc}_)2V;rmf9oJDaEwW0I{E(_W_7wm>zJ zZ7V3nv%Jmk6svh#`;Ak8B!1-my5&EE8Dy}CIZPpr1ah3@5yj66K8g#2I8SjwGUv#Z z+8}R=RvKPLdRaBeb+1O&LQ!N9rFWh>Vln%y9N8m6U)JiGwxTXfa0(atFvMh040>q?W6Vo?5oV4vnG(cko(=szl0Hb ze9TXA7VnbERYMJw(B@(JR>f?2OpcL1u;?m}rY|KZx}3$!0mriwXp%=&)wGxKi{ z8$~+YSCmi0?}*nF%Z*FgcC00SNxZZ)F=|pDA-+cKE}NIC=$B`SOT?jyS-0UYPShK77IgMMAmWg*)|!<&6&>ra3Fy)^Z>M2wG>oL~^ZR^WkLJ>}zSWVaD{2_2 z&cR4D66s5k(dF?abwNxGM*3E3t|>+C==b~Mp7rVOo>U(nEs^{nHJ7k8TDleq#Xrbd3KS)7G zE6yA+)j5|j}3V-F<+!K{%hc9Xobv?_=(vV&Di)C)E0Hp-!n9K9F0kJ-$$og;dT z(O0*7R_thq_clp?8pG^%2pJ6FD0B9+R|OYP#y-Y#c76fl)ES}zBPB9woHxd4lawvZ z+%&EKXCG#E&7MG^LZK}DS#Q$0nB))n3Z<(sPDgXcg literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5e4d49477c00d47489d07542dea16d9b6d572549 GIT binary patch literal 1116 zcmZ`%-Ahwp9Dd%N1<+OY|b>qN}>; z9|#P(38G6cLMn*BC~vwDq8lN)k0Q(pPtSYKLW4So-^cU&J-?6lyaxinA>4w3z{KRS z;Qa3NPe5!ldM%!fE=AQda-X=?%X60IYZSxJ7{n!8PZopL9gh|Lx{t;JB%LB$oLj>1=7a;sbh!9~0MR7UD6SqX&_us?Nri^XRqh5RVdTxmY&Q{$r$* z^Vv^4%P$m5dj^7>KOplE=rMN0y7-Jfpwn*mb?9BXJ~$8_3Wr0%dT)Kb$6XHkI_#Bp zyT>hqpZj?QU{bS9xlx1ASe?E|<&W^+p2z^9{+sDP3!e z9zBuNJ9`~fj%IgVgR`Nov8%Nu(%LiL((2Q_T!y=FE%6+OMVQ}HqWwoXfaQ5*)>irC zr0vb!tIm;cXi`n?tGB^T>1?gFZ5UgIOI=hR5ZYlg)38{UFXVS*A0=dj1l0HBzf%_v z%=uHIDzC*oR1j|Rg=n*^@)F5%TZ<|6Ut34VrXqNOIO5g}{45rb#|jFVLkek>xXB|*kRAFd8pbh7(IA-xa;1)uH%BiAKQm|8HAB1KqiCW8 zibycJL_KRVBW8`9G0RxdoS8GT8fLhKh6pA&?GmCG!xU@AIV*=7$l?O?39~+hdD%M*3Nw=A065RC1Qgm}L1eh%mER mPQGsLR6>%`49_!D?&PQK=RQGlt=p#A`$hb(M?mn-oxcIjd$KS9 literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.retain-all-codepoint.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints-retain-gids.retain-all-codepoint.ttf new file mode 100644 index 0000000000000000000000000000000000000000..892ccb8ea1a99e2cc9c0ae197779b03f2587e84f GIT binary patch literal 3536 zcmZ`+Ym6IL6+U;y9^2!`*q#}C>>1nR*Lc?+d%gDBjaT(X3MB|dq=HiMP$h%}g+EZCBrOo7Mai0TXS{1~ z2(vr)-gEA`bI$qBW5z%Lzzbgm7ODr2jMSdHdy+%OQRF^*dZlv?eDE`*-$r_Dv9op# z=OBRp2F~uqdHtlzbE$1$Y@MSF!`rP%a1UmWaJknhR2J$h#2ts>+N(&sZNg?_tI^%k{(hg zuoR7sNX027rsnnZQ;q6uL$MSW6@&$#KI^7R{M>TpP+}j*lsgJXuZ@yk1^a)x*tW=e;~17Z_s`JcRiE>lr^I zahjiXa{CH}LRx>k+&q=fo8A!mFpOwkK{PWkLSrxWu)n!{-167A;=GnE;D-Ww$diEf~ zGMRj((unWMq<1Ri;r;O%@8wf+VXrS5Pk7zDi<5%Ul$ZCA-<#_{F_jp>E2bM{m&B@B zbx$U}LmJX$IgEfaj<_fmgKuEpiFZZv5u!8&$KW}%t6O9;M@lXEa`cSaZUp|BpBJXFl*=GxUq z6(u@jHnU#Y^yC|z6LL+GYdI`Br_Z~7=J<}`8BNvINOU}XqGN2^wzClk1S)!>==b}` zcOAZ_c<^!J@c20{;Ne7%$4|EH$nTEFQ%X2&M#pygeN%=nzcrcQdCZZG1++<(8> z3I~Ix7R&NpPn*2bKDxiI)FmmdgvBz(FbQs}GG;NS`VGUXfQ{B7V;`i+CTB8*49zC` zk0GX2(+7Yy%LgSI^G=uDPcTSAArh^tk4&*HS27-m`FwFfz%dqxB;0P!>-P;O^M{mJ zRZu7sxBRg{InKN~SRw1zLPjVUIllM9Xwu_x**W2GyHo17M<+#5Xr*tDq-<`oiZz27 z3ZF3dAWLhe^)L&24$v-1oo2_ZPHv^@o0=IIu*K9I9H+>7BN}GOYywL@DM^XBQZF-= z(j8UzcsSW9$ym!|pS_>papAY zq@`*NsjO~Ip!?r1W>HxzRlz4~;AZz=ujtTz%E=q~9<|=)2oOzt+S072_cI;e3RbV{ zYyRK8t%qoKy}=TBM2Xd6xpts%XeKM;9ObFmhx}^5aM+ zi3B;kgBxr1SSXKPIswNY@Y%n0JpX{*=n**BcgZ)viE7@%KOiZ4W`7O~JrgWD ztYM4Svopu0;2LK4s;z_l4&23lXvvTdnSbF4`qfLnkI)RfB^>Fl1P2|xX*{6|m!P8XQ;lcH5c-w0Nair`u0|EGPZ;ihP;6`ul7?5$oGJM+Oa~6L$oP~4n zBAkaaun0?V0WEnG?;1W~6mK04V2&QZnM$5VSvq!5?hLM0p@KWR@Tto<_n)z5QS-0{ z^T@q~0GsTbvT7q==dFR5VakJS(w2uiVCg~Pq+vx@EGpTTjv+? zOXDm`%%jB@QF8}%)KIpHUq)3J@132()&D>J1fD)`SwOv@{`Suwf+NTo#q&$3=K`Fz zv|h4!RH_0E{KYbkHg({OmQ5F60lCZQ&#B&%Dmag#JvEfIqm9%0J)|FY5g-_I;lDkB B6*>R_ literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,62,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,62,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bf8264b44abc374cf466e8f164489057035b0d65 GIT binary patch literal 1452 zcmZ`(U1(cn7=FHU(j<*-nl>jtZJH)&%}JN0`E63ubSuM|T49}SMdo16tZmZGr2mc$ zRJ;(ccc(YPgk89sT@I0=f(jFypcexbMDSYX4^n?>kI#2bpelNj?|a|p{e8aodG-vh)~ zYpb;tnz{jd9T{lTyjKbIRnp@=a( zUY|ZzNuCs5cUO0z92*N}XLI^Ntei^6MnluS;Z!n_sf@>qnl|ixELF~p1pS&PlppHz zOidm>c*HZngJ9IyS9;Yvj-d>A$*|Yt!{!0M->2Cf7F9>0R4VpP=m}jPDKf%q9fU@U z_ia`2j0FN2Em;lrhvL!LGsWzpKiKDRbvPX%U-WpOduk?g%IDXXX5$MXH6J=2Jp8;T z>UQ_(k;uYWxt`F+!`*|ml&T~)vfN^u0 za)$cRv@F7wQO?pFH;r=QVsErj9-SK;jB(88C%tJ+3-!1HRXk>A0s;RW_%z7_M4QHshNH-k~} zHIlN9S}+O%wl5j~g>CC!eaQ$m^%HR&9ZbE)4@AV0>W8Se%UZ?d{twoRb7!mg05vRI zJ=B}nhtrA?-zq;dUfyVVXGnuf<1Q;`>>8zHZxb&Y22ss0j2l)qkpt&sw5^l+4K7O; z7$CBA1#Z0C*7;k<-L`J~TTBO<__b}foAyVsflXY)HZGxoHSChfEv`H(nP5-Ky-@s+cMWO~hO-5{!Z<=fiT$OfimD>MjKh5lIlYu;i zJnvEdlUSl9$NV++*~PNi^@?eeQE3$UZ&V?t8lE>f?V?U=ljphEu9T+Ckx!nn*4w5y OJRttBM?mnM_xuIVk?sQk literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bc54940a3d0476757c5929cd454ba9f6a9f77abd GIT binary patch literal 1276 zcmZ`&OK%fb6#nka;5a;z5RV^u+X;43$8r21c7rV{)Yc)D8XzEqkWf1$en4%<#3qCV z5<{i&nix+XWaeX`RLL#X{!R!*%-P zh)5}KE!uxw|C4-jkSa0Yyrlm|e2jQcsnS?&dy3=42Z?u!Bt`>v9n^W)-bMZ zu-EUz{;E~U2ma0m0o`QmPHm~)*tC)0{GVkW8Y1?Fcq*Qw9VsB_aJWrRGLcGq9gdOV z(5Twesg(Rq?G23#JK9W{nA$5t$%Mzf+w`QxOtmr@4t~;e%@gnO4QRoW@rnJK7!L&t z*$*<|1H#p@b60XYFz$=Z#6xcb(~)RktS{>xj)X@iGZVon(;Rkv8kvrd_&jD;Ut+Mk zYhQZv`G;M-6pb(yu8BV|q4Y^rp{@B|kH@VPF(}ok128DhAlAl;(_^#!{Q;&^Hl8oxbkg(ZPY-V0dm| za3tiFO87I1yXX-q-nT?skKV%aE@Vb)`~J#`cKwUa>?`ycig*8~#3SiEzCHB7er&sp zbNV-g4&H%!Bumo~5l;}7J@llV6fk}zcilMmuX#+v&>xDgv5jSq_<1~yl%xED*iE+P{Tzm;|z)@ zp+T+RaV6Lx&gI7(4s!V+nakwL-6HP{y(*&29AMWn?N*PvLV47YXLN=8qGIM$jhwN_ zSY6Gms;nQUsltyO4sqHs%wrZOSTo02Rh&l!pEI9V^+lYeohK?XQzm1XdZSdE&JRdETx1!#K)Fob@HnX<$K3T~RT~ieidycZQlQe5EusP++vo^PFyV ZiqgiZCqZuW)@e51693mDAb9hg?*J;~(-i;! literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9b261449d59a140f2e25d9773fac5d9d74e23628 GIT binary patch literal 1128 zcmZ`&O-NKx6#nje&!>`^srcJA85m7<}2DuRu+C)LiKq$ft@%7#J2CS&}=A3)JbH4L)?|lOSU>}yCqGM>J z-9No`Z5t3@=pCO-85xw|37}jc?u;AR4A(M18|PXSPcFvRYd_P(bIOB6)QFhd_r5a! zHgPaPN6{_y6Y(nX(L^e@psVl@uMig{XC@6?rUkJ?rKgOA3|f>e;&EbE+DJv~e}>)c z&$xJznaSpMP59aWw2VW6$J`Ph#3qUn1l+n_;cy20!S2Jl-q_I8Z0YV`Q2x3)n;IMR zLWc}=bxK#j@2oiJaCVFSbgI3@eYWbZ(^pk_L~)P#+D<8=waFa|9}l(kit^Hu{ehnP z*2<24U(-%~kH=eotR`I1;Av@Y54E|w9FB(abDkbwW2MtkR^zWdRCcm^ck@J9HHU;e zUq!q`l?d{jCE9z`JeFr*@d_VDD&B2gKM?+o8qMOpe(PV8#>UgSRdd5E*JjoGggW{We*SiYQHRO&w_9Ud6%!wL)- zb`SL-woqhq#7E^D`SLbo4~{``P|FGqXpHc}_)2V;rmf9oJDaEwW0I{E(_W_7wm>zJ zZ7V3nv%Jmk6svh#`;Ak8B!1-my5&EE8Dy}CIZPpr1ah3@5yj66K8g#2I8SjwGUv#Z z+8}R=RvKPLdRaBeb+1O&LQ!N9rFWh>Vln%y9N8m6U)JiGwxTXfa0(atFvMh040>q?W6Vo?5oV4vnG(cko(=szl0Hb ze9TX@~GMZwje|bQ#uC47^A6T1O$wtiH`!M1zRYz5J)s}EmnX*8ypb-b=&jSO(kh5ReCn+Y_;DhPo6`Q`F8xYJT+N!paQoCzQoxJT_u}zx9Rr zH;IiT9nP!DXX1CnyOQbLoOTe6#7o4^)Z}msXJ|oM;HITxa~U+rtHh$dem>uMh8%#Y3?$^*lQSJ-BaoDxLuk<)9UMj4UPuG zh?KPl8-l_52pJVFPgobkNPDopPID|Oa%ppAWysYOt*Z70{IzEzt^J;=a>teer^D;^ zAE+$acQACs?Qsnp4fJ^x-Fu*F<4uXbxVSv%^Yt}%j5Y-K>?qpq48_`{l^S26Q*~+8 z?w{SE{ec}jy8;)k=-b6HDYEno)sn$G7ie=Sc`WY3;yD(NKfv{iC7s{kRW07jC4E^K z?;rVIneWXCbxOHQsPP`GC0Me!U*;=eGb};aSj;K~-K$H&DQoWqy!+wpLzX zG+)jxD)v7n?e7|l;yH#eWcN_+VHHlBBYl#;k}qCH^xzm27k5#?1(gv#9zTJHOw-=Y z+jcgQ1Lp)=Eu?*iV%rjGh-_O%F&^h_{9OGvzQ!Z;Iy`%2#Tk XZsR;Ux%O*QZTukq*ODOd%}ag(KLfcd literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.drop-hints.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..776e758f0d14539815d97c5c5063f14dda3af7a2 GIT binary patch literal 1104 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 B6*>R_ literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,62,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,62,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a7af973903fd13b691033d2a4b9c2b6973ac397d GIT binary patch literal 3924 zcmc&%YfK#16+U-nSr+1D7xoDY!>ng_f!Q6FhZzihVF%U_Cw@TM?zX~Vjd@wdCbr`` zQeE+*P3o0eRid$-v~i5<`1K>2rjoNpu578VM0F~+YOJO~RjW3U(pGYnDzd63-hOum zFt%GMKPnaY?!D(R=iWKzyY~*nh^UOFNu;4|1Id;>cLx7ORJhrm_yhP^Jvucu`QDedO~U?XqM~(U*@IKiyNO(nqj!w$eRlLGzxa&<BXT`q?0r>wGa_MCD z$doYd_z-d)vb--lIZ|=8b`#dK8uCX|`wt$vTc8%q&*RBc2S%psw~xc-j6j|zff9u~ z?Dy<8m5|OR@>CzEJUM&Pc}gZjS13ur^_c~QlPjF$T~c_s!owAF23Jt8#zzPkl(7*}}tk4!& zp@9{enbcB5(=9IO;DWx$1sz<_!37;$(7^>AT+qP<9bC}C1sz<_!37;$(7^?;V36gh z6BTI%IuTa731F;Z(S$MaG4$e1Q15rtN`C=N>Xl$n2{Zs5Kp&6+CV*#wW5A2RMc@kX z7T^RUS`p1XKSwr_$ZaM`f~E>{RVAC6Jzzz-$pI8R;P?By_F{`3#dW&gR=z4$7mF!v z@bFmVfzsm2Yog$e2Leg2nhI8iqH;LX*3|D0Ruq>OIf_F*d0oKSxgpu@^Lqz2M|Xt8 zme9K3-Cw!nva*U;ZS9VD$7o$lt8rF4lG$eV%c|NEhs|rR^nLn7a!s^G>Wl9DN(&Ak zMk-E=tL*QjG4FDQxOn|t%LpNIg=n1>F1(>+6-+|Gq{V_sD42wTNhp|vf=MWtgn~&Z zn1q5!D42wTNhp|vf=OluMMP6AGN~Yw3Noo6lL|7aAd?C*sUVXIGN~Yw3Noo6lL|7a zi)2zkCKb!T0T98#7mu48J_6!K!1D;G5y6I!V8chS;Un1a5p4JfHhcsdK7tJ&!G@1m z;oiaEeLxsAw>96)v3uLrs-mUjo7&v>Q1Y$MuGWur)b~|ahq2!W+dYk5Z^%_z;wvj{ z((2ZDJRV;lkZNjtEI8Vs^ZwT5 z+BXZg3Le|j;w(fQ$6Sl>fFM#r*g*B{J>(E^#MVM9Bip<1|F!LDYaY|tYHVZ^-(ugU zB8YF}msqXUi$A8(g|PSB%~dXn{e9^aU8gJ!TXTqK=?)Hk(}(>*_y_!O6QJb~0q??l zda+O$GUhhDhYJNr*+QXk+IqT6s;LfDRR#mtVxEd}x2w##;*ru4N3p%gCJKxaGc8&| z&M7miwZu#Zuojqx>LsP;yp}L}w+uhN3nH79X;v{DY8Xm3B(syaakRu4>(3BX46HVI zR!f}Y&6(g?Qv+eiZWYkG7|Gq>btBkkQqh35COQ zk8yo_+PK~w3THC#iY%=ZD?U0ATv&4yYmTU}$E+v=X`?G-P$rk-F$dC0*qF}cLOHz0 zf}E%84=5NtsOVZy;HE_kWTGd}rne&)Iwc(93MH(BvCd34=B`U@8A$hFrD49(dYaDS`Wi0mdm1;r zK==EUQ|>+u&Ec50Q4$~PPK%k?b$l`W)R6gNY&1aK)P|cJmm39Mffj0_W=VA%_g1Lhl|A-eks{~z-| L{4ip;dtLtq9Xe8A literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ac780dbb93693619922451d5244b6af271652546 GIT binary patch literal 3376 zcmc&%ZERE58Geti<2V$@jz1CyCpXu**G_VM9p|Iu12P(DVw}?N%U^^7Ui7>!#L?kcd>Z>!enyrVXiTRBe+ssoEx{ZWWr=;XUWr z2?RE&KPIi@Ip@3|_dV}@pZA{Q5+kB=nkR`y_6)_^_TL)*CsBz8?a1g%Iz!LWHOS9H z?ioFDSShKoen9lV3goVd%;d}`Pwtt4eHr-LWO^{$4LMxYBw07+m9I0}3hI1O9|a=`n5193ZwaoG|$uB1q02^FfvoTFN7L?0ox zO_(GKW9|Urz!Sg(a0ECGoCGccZvyWD;st(##UB96a3PxOqa|v>E|MrtQ!Gd7N=s|V zX7hO~+uJ%it86y4KHMP2&W;ZLxB0=aT5l`$a>M2axvIUb(pTZF>|{GhE zx8BolbhoPhO0O%>Cc9l*I&a_Xa&00;Iy&JR`zuA6_wGJ$a+aNU^?}3{QlSr=sFz$I zMg}qRDlsyMkwJ_MVq_2_gBTga$RI`rF*1meL5vJyWDp~xcsY^~O)s>Mj`q>fK04Y* zNBih#A06$ZqkVL=kB;`y(LOrbM@ReUtL>wseRQM&ay2w{BqGSvz<>raHIS)+Obuje zAX5XG8pzZ@rUo)Kkg0)8ZIw(7WNHW}DC0zh?@&@zS?LobLCFadoI=TIW!D-fyBh~; zYJxBgcY2z=-hgvMnXi09OSECD$K&x;RmEGHAMsDLJQP;y1|wT0!Xd+6X0P$O{Z7Ao zQ-fR^m-XGXvKp=;u!G}*U8ic+flt>$8>kLF>$gw|?_q8waW3$crSvC%NtZnNw6o_6 z3Rt;`-uXKM;r1hlI$i4kKpi9hxYHyyGsiTNMWfl5tw5G>sPakS@?Ie8|Fw{nqj~ z_~Glu$RPpV;`@1#BtJuKm>H~ykk3OFbN*cZ>}r<1a&1juQ?J_#BQq(XLyG9?~2azo*w5XbPJqRTmQP^pm zCQ;*j;m?$GEDEFlLe#j(hx7gmLIYvVE{u?bUCafSJ4@3N!rxg_3Y${s+&&C^9#zkb zOkIu|XH=7^8I$#oKu}C;NWEHqzwXLCy2blku9hqJE7dFaYEAMfZ=kF!kq|Q_66%6t z((!VW`Qoq^)c@TKH`LQ4k4fI2F^gn%n#^M|FCJxYapKTC2%1RHI*C8l>%V&C@}-Nf zUwG~O;<>YDUj6ZpUU~WSsgp0gxNyRhA0COG0A(kBii3)eOpF#Wf(vM@7#CbX1>gqM z1+@WFys#W7Opjn{24cW6uo681zincCNQ_&>n1Bt27YftyD9$NkSB~s^li2(FsT|9H zCr5p?Z=-por=Nnk&QO&8={~dy1jT>?os*-Wp~S&wd@!k|l&q2+7|SYgWhy-eD#Z-L zcs3P7jfaxc7#~Xp&E8aCZ8@GwZ9$xR9tV%WJ)1&={ly5Fg(~(hIH|@i1%0$P`HiGG z-xn}@`%-~mQ0X_9_a@EdzCbXQf|s_IDKb7b?JwpWLe82Fd$KE=o8OCInABi^E7YJGM4qWW?A>7O8cOyf z(;&~Zk(a#ezLJ*}OWw5hBJkCbev>G9JloRyOlx+Vkrc9Lng+**YE9s1CftH)R%vqYV&TKb6?<^X++jOGDt<-CVH59 z;8m9Q!1_CK;!ctwO9+pf)>?-3IU(~kqfL+sdJC$sgr^TuhMvQFP2=sS=rHcHD?l5y zP%EI&Zu}nFjhTBMf-fJ_@SDbJmYQMNP6zN$xhuw;kj80_#-TleaZGr|#WQ@5G3e&R zp0mQL&^~0Lpe%c^+ha5c%940yH};yPZ_^BY9rkhY{3PwiJP2tLmILrOB;F7M(d{q! P|3CbP{}?gcz|MaI5(Da= literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c4321d1bc000d5251404b8129787fad0a27dea68 GIT binary patch literal 2952 zcmc&$ZERcR6@K1(9XDy~#EG5MsY!C3Tj#^Rj`PvxgJxY?95-D@+ckXHn*wq3T_ve$ zx~}}Flu4{mOPeNTw1q)wO22=gyKVv#O=_fx4FpJN(kh`v10+B~npBAi6(p$ly!V=v zv_s+t(riEHyyrRRp7-4IzSr-C08orss2JScA8p-#bKna=eS+-Z&{QgowfGb54{2{4 zI($egxX1ApuzDly&e8PP)IWc=dkS#)fPx>4rDoFP-N2ez>cX+f$4B2R*gnSbzX4_S z_(*Cv_r>#{GM`4SeVjz$QS}4bgS0n{PaQhqRAJCg&@P-jFq9Gn96@D%IHyua(#mMz zC(QLZZEZR=HB$EHnr*CSlJ=+R12czi<+q zh!YPHqr_q27;%EQK)g)+m9TE$9~^u{CS zmdF-GgzJK%-Hn?=TZN~1t*fmo5cV~1Z>jq-&}B3Q8vNbmwMM8ux;YZunh5(GaW(wO7Y#?0SHM;rzK5&(5ED z;q>#*{r=f!PMtjQ^zY`5o7MLXMvimIj{iX*B&D#VVo9zA83*N@n6AD!^!YYwvJ4I%pL>@58Wv&U~DnaRkU{Rur_&So z@Wd@Z2|{5WGi7)XJJ7|$v69~A@HM_lJhFnpHS0a>AP@CzJml@563pWXzDL|<+;|!* zV@i=(!C--Z^A1FLz`N|7$)`>hBmXrtS&Reyh+z|t`*obBF3hP_JcFY=Na6_Dl&sx> zAd@I|lB?Aa@_GIBHUN3%aX0#9*cJT#h7qyH$ z$XF>;jGN$S8cp88MS%TN>;#|}CIi_$w{Ug@(W7tor44w`aeDbf@g2Ze*r(3 Bp4$Kb literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.62.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.62.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4c553ca794c284fdd8cbd5916e0548303714ee77 GIT binary patch literal 2976 zcmc&$ZA@F&8Gg>a#u!q-fNcy8aGe_)Fm?<)=u4iMC!(m_0ObElO}blx=n4o=iJLk zNj9lJCe8Nqp7TEMd*1WYq{H zIr7w5t!S(5U7++4>bu6X6VreA`q62?)&>;qoyg2)$vc59i)Z16x4ZnN_zLK)1Xl+ogABtJkL z9}&tRLp#{<63xUeqL)Y!lf*gVTf`!9oyZe!6J>)UkKNHcI*8p2+weZYeuznfeaJp} z^?gqFdvxH>ggIRaJGDd$(M9wTX<~{vPs|f95zE9);vJ%l$#*cCb4?bh0Zy|>4P@## zS6#HNz1nVfSH|NH#^W6^PmRapcG-*Vc70p0skkW~@2uPzYzhYTPI^?kJRLFV*ts*P zZ?hM_p(@VSnwqF9l=Rm60-8VF+1BszRuz{PIf{L5ZEsE4?)}k(+v6H|IB?vj#(aCd zcYa%;m6ulq8yk^DRc*UMi;Il~+e(`SXJ=xy=N#omv z+l6Y|6Y3IGJ0qDN>7~d$&hctTp+ms-0sVewd%}usd6`myO?^jv7e&#gC!RaaFyE6U3r*iu^JD7F{bR7D`X5Q~JhoW8It5?<&c_7HQV zUeW0v>hUgihq8YY;exv+;ZuuT= z={}bm<=XwEzI-ohz^%Q>f{NZ=vqf*OzMvU+w%iczB&`B}@x6f+6!e$2%C02>G$UOb_nR34= zA2MYxZ8SV*HP1%)P6{8+!*MLdxxbUni^4baNYvltrd1z5L33kR(|V>7+$vPGFbVFQ zJp5rT$@NV3r}VUz({g>IIW4J8W=6S`W=q3ZE*)i!2U1g%kEQ%ZciOkn9ZRQoGtM>{ zhePO|OEbdB^$2WDD*8E{^zdPg`{-Eec*>Yd_>AsE+UNIcJ;v&>l(Cxd`O|57ZQsb0 z8DE(4uIC(J&f7z@2dyXrDWltGAf3y}m;))@Z_MR#z8wF@x}L}CJ%qr$ME5$u_cvp( z5(D}1L{Ak@lZrV3x>!P><` zwwBhm)?28?iA@Y{nfJ399`y(1-Nv{4?9OZ0}p`S~Z;+P|x>olIkG#;gW j%p5;~lWhB`P0(_R9y8`YqyX-GChx2N;Uge;_E!808>z0+ literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-ids.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5234b742e88c4f603d97afae74963c1ecccd2d69 GIT binary patch literal 2844 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 literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,62,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,62,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9bb2a9d1f8b52c44bb6fd5241279c6452bca473e GIT binary patch literal 4172 zcmc&%eQZdeQk53*rWUr)epkIN$YtO!+LE$faDeQlXzI}4= z&=fyz`w;yc`qJLP$&u5E*UuoHwM5)UQ~UNGxR<9ShK8AbYI^=Kz!l(UfbjtDpz%Jy_nY2ax8|r8vk1oG)FyHy&(}9Z ztX7}b-CI7n$|?+)z(5UQ#7q%qQ<1(SK{?Ib6fUKCX`4=*$IC` zS)h`Se7Qk=l;>j6$mqJ-Hf1B{DPHAhYzf5z^;;UEpM+ZCb)lNzI^XKJQk`g1BTZiK zYENgpr9lq(y{=$Vbh}!c@7-DJDhCs4@^|?XA&F>PxMx-}ASV^Qt!rkPyOzy)oQ3mUkffeRYApn(e-xS)Xx8n~c=3mUkffeRYApn(fuK|hzH zR%E0RXoXwx7J#;bpb2eaZODaNpx*DOkv;+p>J_0;2GjyAKsS&9CV*#wW5A2RMc^v% z7T^FQ8sW_~KSvf4$z?2(2uV5SDo@lmc)*Ghg9Au-so(GOS_@5j6jp0mQ^}fWbu=nB z!NOyb2SSr8uL-;>R$7|yDycwOFd~IAP4&J0fVq#6y z94R<0-sJv9D(79v5GTvOa|Iy;CJ@ZC!igso&4h_an7EiQ5eXBKFcAq8kuVVn6Ok|x z2@{bp5eXBKFcAq8kucF%K>^+rlS~T8q<~Bc$fSTw3dp2@ObW=PfJ_R=q<~Bc$fSTw z$|9K*kV!!pH~_*p_+l|*!-qlKFnAsYHNx2NVQly?HhdTxK8y_?#)c1L!-uiq!`Sd) z)7?90ybtjG#IB6K zUjD)NUwZN6iQ_MPZ|0aTZXQsNA!WyYgoBEeoKf;diCjQpK{?|BN&q(?&&buNQf9N; ztR6#E2PA;&z`S}4c8?n62BT~<$}Z@jc;2jzsyL_OTXSUVNn`HsWO7{oxg2#=UIl4| zr*=YJ6_=#Wi4IT&9Vre0n3JPWTuLFIsou1lk+M>@dpIklr18OFq|&IN7|CW5SmVC* z1j;AUA-z2lTxyPFGOh5ln)$&Hm}fKauzSG+YD1Lx6h?Akc!UtBOGshk2fiqNcD98kINDd*+Ob6z!j&JQtcOuddi?oI< zdC@~lUbL{}wM!2ITLt0Q8cQDgA1!(O^DMdgxt6?cDbo9vJb{?&*pk=(AD6sg#gb#^ zv%4RcX94bfC59`j#+Ue+BZGqLMfFznQjSTGjqqYi4qO^!>EqA^S@;AQMEE|L_k zEJMU%w@?I5c+<&ckvO(rzr6_tL_Ug8NB&i+%)4>UeT?g+22uMcPBQ$~(q>u*tD?LI z+CP#Lcaey`9sksD(^`tqJ`I>{j>^$9+dNjmxQ$^WP(9viOu1!+O#$tpe=f+aOL8}E zE*m#&$lZ9@ML%vl2a|86eKdu4&uP4aj^Qop0B*pGKoYYw01|D(JJvST%yJsGtQ>^h z1X_Ek4w{Xac@OGkAN!5o2<@j4NDrbMHY`)d7&gZ+Wc!Ud_ZnJ>b|DH0OT8VlJwd&o zK^kMWVXnRO3{BGG(2p47$7na|Ui8MG*#nDd#9N1G8-ccku_?4Zd-RhSJ#9q5o`OB^ z^7tMwLBi9wVLkTYNr#MC4;nINRR@-6&`x6JuNpBO!24buBALKbn4aoTHz1xQHR&fW bd*`0J!T!;+w+(#meFFJ^`*6hJox}MbTiSI$ literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..7373aa3bec8f37ac606488fda7d76a2926f7d7ea GIT binary patch literal 3624 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 Fe*?irv&H}b literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.retain-all-codepoint.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-languages.retain-all-codepoint.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d5d423810c1ad2d23c8d47c8deef2167e98f9773 GIT binary patch literal 9568 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 Okbl-6j&aC2g#QIrmU&(P literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,62,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,62,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dbed582fb56afff74f581a9be494eac5adb9b3b2 GIT binary patch literal 4128 zcmc&%YitzP6+U-ny7uu`i^Zh)i>!Ibcl8ckD)ELK#I`btz%(W*gBV^yu%L`qwUs#QeVCTzc% zSwDbA%8yDl``vrbxo6HjbIy0~9f%Q82^}GxhPMsI;=6AT{hO$;AKKxOsq{3hqRWsq z$ZJLp9uNzvEZ6l1@V9nsdVK2LFKnB_{GW&l){Uq4Pebp-&xhVNzUS$&AOHN0P;hzW8?{E9^;~fWmf||0AA{LJm$$9XM26O<#dr1=+c0-$&|LP1Op0z~mhtvD^AGnjFIFaKceSUgoblQ6BIOgm@$P2_# zGLQdSdrvY;v6%k~#mKill~>qxg`M0>3YV^M>56$cvs0|JtSw8{ zg^hkHBrBBzwLmMd8F&mB2fhS61DpWP1Fr!;1MEW^3+N^W?*rV>Jkqx4Gv>^axPa+* zNTd${ZU~FmFz^9&z*?XeNCFeUA>diyBya)90&f6z_*L_M**t3OrATBR8LCE~rD`lh zH{jc9Oz{*(uL23+QD6)>2pk2D1LuItz)u0=1>VNsJ%AfBy*Y2pQ$1GUjpWqFvLr1u zHifKKkK5ZES6j=iR%vy()@WN*RsXfD2}`T3g>HSKWsR+BWvoN+yK$I)|xpsqn?RqId;0 zyt=|`GQomD*m&76k{Mdak{7*VvO)nX6tF@8D-^Io0V@=+LIEojutEVV6tF@8D-^Io zS!9I*RwzbNi{VW*xuAjz>LM3Za6ttZRB%BB7gTUT1s7CsK?N67a6ttZRB%BB7r=rc zmZf%7q#0<3Tj2(Pv5cSzW75aa^EW`f-%>OE88E0(`cSgaX{w2y^DQCpF%%3bDj_{u74h3bSLZ><)jFs=lK zL)gNuQUz1#0qo~us=>MDu}V{fKmGc;bQ*Jtb*O zn$}p)Fa%MvgrrL)_v z*k^VRp=$tQz%^h&IR?A+M!UgiJB+p$bC`I>?2alpr=nZ3Wb032?Qf*AEcdl6byr^j zY56C1V7ewMianFvpb7*r3I&*xr9f0npq`0=q?8gfVy16bMofqk>0KzL(PLsXlZqk7 zgULy>k0b+HSIWOM98IO#;b*n(2amu!lY)occ@O9fRqPWONzpALc+{WVp45(X`?ap_ zls^yDH=zLXc`Q(nLHBCwSae!Y?M$p0wi(a(}{ zeEsgn zvc^fz(cLzsl(|bo^El=$6vM~5-DD@Y5p z1g8y7FH?1{4Cma3xL)cIwTGf4!EZfnqE1*9 z6Cl!7d_QePuUpQ*R&Ud=o5W}@HDG2VyzW82>|?(n zjnaM^h4vuYU4~`Cct&4i7j*lLHTN2`BJD&JBGR}Gt35&kC~*?cY{go8=_#6`hcQ2D zJU>pm(GNfx$IKpB%pl$dMB5B>epFe++jk%z`|zeC z#;OMmoo>|t2B?^w!pdJXVmg3txducsiMKF4HK1=oJaO2XUl8c-d<^-&{V`(rj&S@3 D*Pw4h literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5913420e3c290b8380daf2c54312d002b53c6e58 GIT binary patch literal 3580 zcmc&$YfK#16+U-oSr*5z!0y80g<+PNU0`;0mq*OQPzT4bhPbsUr0#Ai5-@KUFahc~ zKP>r2>eMT>s!C!zX<{44@#{x5O{-*stQx6mn@C9&Rjs8cC~B*=Qq)SW+D7gp_4d1W z7BF@rnx&`cI^<^{ zw+|m#P;$!c?+`t(3b|!$c6|DSuk4?OeFga3_|W_;^o2zEf5Yq?pL%-iJAc%#Vf`l} z>B_|D&`9PVFaL$ej+oRm0fqCJ^jlmDk+g~Fg`>G2(gE1{^;@S74-c^%_Dje=gzTIi zIy!3`cYXxBEy|-NHkqcHFr_KKE0LyH%>O3E$hR|@RpfI;K6%y^Zmw{1#WI5BQ>>`CHBFAy zU4F_X2bBWVKr^rh_%bjKJOw-poCYofZva07@&|V1&`m7<0N4hWQMR?1vBESdt1!P$ z3Vj6F2C#_}3m;Gev;f^e0+;}f0^b1609SxC@D`AdxJ}u(Y#AJvP&mAd3RPfEQw27n z_Ym75OcI4KHvw_r05Ap|0Zss?fJ?yZz)t~j1HZ!J_keA{idOjEGSy-iNff6xmL_$z zu0H5+cs(VJ4Nc9Z4u@J5sup8&QxpGhe=ww0IdVPRu>C=%pb zJ6%#==Buy;AFGe-w6Sm~IM!aH`<* zC0oSEAVyvzMg}o5h><~z3}R#uBZC+j#K<5<1~D>-kwJ_MVq_FAO%kH%R{Q8^A06$Z zqkVL=kB;`y(LOrbM@ReUXdfNzqoaLvw2!{lK04Y*M;ahkLsN&tf=mqzXdqJqnHtE{ zK&A#VHIS)+ObujeAX5XG8pzbv$kaflhH!#1PE=@vlG2hAuOJCZPMF{nN=_@gUNhcW z(^Fm^fN7xF9rbwpt}S`qf-QBC>NdCA?JX^h*F_)kjnzFAQY!nxJH|pm!QZSj(Nmk^m%V#F-{n8vapH{3;bYhqtdB2FtbM8nn|(nY$B2U+;A zU)%l)KRn$SIV8Z7y+03~Oy)M32bZ!pIB{qm1nusoO%lJX!*}iK zmCKi2z4*$7rSs>`zWma6Uwq-r=~K@?w|LT&cMnERg0hp}$BT-OOpG=$f(vNu7#9nH zBA^&h7u9M^ackLQO^;xT0x@6(SdE;7-%c?;B*r!|cEbk4v(|JXg7=iMH%-po1or+` zGR-nyPg7^bn`mC?iN|5CG!&(4vJ2~YAkSnc_O3Se z_9wcKX@F;1!%LobU&-^bC9hq-5%}szzgCny{68wW@mWe9`Aj8`u4lTb4@}rMKVZlS5PV z_pII_^t=2WcFZDR|5w-zc(e1lqFK#D1$WoyN{z6*(>7TP})BCUF;5q$uWkq`RDolhYDw;v;huL;+G E0Bi9Hj{pDw literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3635f68be507538e0d3682c9febf6f865bce9436 GIT binary patch literal 3156 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 McOOO!_lW#I0ELOmwEzGB literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.name-legacy.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..737cbdc7eb584e073e957a05b85eabeac5bd6cf9 GIT binary patch literal 3048 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 D*Pw4h literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61,63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61,63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..47e72c6a392900e73bda31c8a839ed7ebad7a659 GIT binary patch literal 3588 zcmc&$eM}qY8Gl}%F^0t0U>i&f$C*1DIG=4k8a@I`NdpcvTf(5r>`t^0zB3>cXqx^J zi9fb0k)on%(>|nXlQM0p(rsD1-+N~u zB&*avCe84B-}m{r=Y8(^J$LUBBccLYAb|!B_QmRt-0uGuQH}=fz|hp-3_U|Xg#1;= zZ9~WArJOSB+eF*`0J(W|W^C%cFC3hL{W|cevB9|+=v_pPJDBZblh2NR^Uvy4tp7qJ zTpk}89M1gX<-ZYGSD|Yhhr)hB_&u(*LsrJ8=8xyTPlsUt2(oMP=+L0$Cd+~R1IYPP zgU4qq75fM`t2Uv6%l&iji-3GOKWKg@ZgB3O84{xnc#u926@oYDtrA zZI7RF$wnnW70?9i13nLo0nY%>0cU_qz#G8N07w6x9J+zUp8!k$3d*(~Gv-Q@vKo$wa>D@B;+-ac@0mYw(Xfxs1l*#}P4 zOEifQL5#Rgj0j>x5F>&Z5yXffMg%b;h!H`I2x3GKBZ3$a#E2+fngm2s&Gu2zJ}TNr zMf<2|9~JGRqJ31fkBatD(LO5LM@9RnXdiXGeN?oMiZnp3f~F3K4KfulpnyyTWGWz2 z0htQOR6wQzG8K@ifJ_BsDj-u?CsP5L3c?wbaiT(-l#~<~dkvDHoU^+35Ohf44$;{mg>YgEb_X&au}e5ydt`Ye>gdzf2^<>2qvd;wT;zx&Hw zzj*pdXWNJ5w{kQ6;?9d2L9&-HAA@(jX0)dk7ck zHXdm6PJV0oI~?(pW8@G3Pxd}NNVFQV4Ksrk5i%Lb#++HoEUjnRE|!=1ca-`{K$5$t z(B&*}Y~PljXV10eSOp6sZLvP0Nhx`;IifAL0ByhmR4>V$mm-?pwSVZ-has|MiI!#E zt_GlF0}?xnw@O4iZ~p6oiiJ7)E=078d^qpBU}zw0*bO5j!*0x`%jQzI1o8ihE`)R; zxO5l;pNHgg1LKz?+BsQg@{G{br2bJ=b`?WfGrPoka z*41Uq)YT;~N;;h^(3v+5tEv8YGu%*5o!mNkzRxUz)u}VL&OEr3y}^kSKwuYsv_;~V zwfnAKxqRv3s~5g=etGGYb1#4UTQ9wM_RQ%Qo?kqri+cwmr$E`M@8N~TM`nx`V+0q_ zSTQcTfI^@MkQe1DOmTDBZBCD3iUKiU6(2}IF2qu#dEh(5J4?F{CWM_BXA({Qjj__uTpuY2=BQMam-XB zYcEbf8F6c9FSWrdFXM*wcjUyGBtp)m$FUW&=3%`Am}^EmAen0ms$iVT@DZpMUpJ=S zdXG;IP0~kMz0J_?rK2=M&!P?!sMa{mIKCKTyp?> zP1DmfMW2Cv#JGNpj$rPEGzQBgJZ6z^6xlWat=VhiSbhA}hj8_*kpaI8e!rX7_kd*y zci)P79L1du8M_`cblfY74rqjR3Oj$%$Y~zmbWvn7fx9pxMKRYQpL+P3UlN$^-huqz LevBBtCY=8PBt8j` literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.61.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3635f68be507538e0d3682c9febf6f865bce9436 GIT binary patch literal 3156 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 XJ`wtwHwcQ`|DyiiegcB`h|+%phJebp literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.63.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.63.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d0426a0d5722f3ebdbe95acace7cd67ef3a25a92 GIT binary patch literal 3060 zcmc&$eQZ-z6hF7`wQC2gW9?X>Tlc!RcB5Y#8;nn7z*aX<7#m`%8LV`lxIx(_!XG62 z1Hmk2f0)?zch5b) zbMCq4o_qW5BSu6S)JFm}Eo&$#TYInZ4qCL`dsl6k?9-g zvsz0OacFGufUFrwD-)0$Dj>&P8XyF;1Dk-?f!)9{ zAOTziCNw5UKs3*F1W3a|bATdXCh!dK0?-D$3Ty{<0Y`z;zy)AJBht8n&QE}@k)5SN zGLhGda0YZI0dAlI2m&jCR$wEr4cG}B0Zsv50BX2z(fJY3HI`0u84PlPyU6XHF}-4D zMMZhpq?}2UvaKmnE-<7S4B1vrmX}q`Wao<8W*67y<~rSSLE}tIz-qOd(@ohK>81Xn zxfY8hJ0~Yt8dz*=EuHU{^6R~GTHP+6(PYfEX4%ZPtSLo~yr9FgG|wTsbFe|!A0m;R zr^&2>#*vQFDIdFO(~#PT&Md`7LQ zu$m`tN3(=dUmFV2Fhwb<%^@73J2*M25BpyC8(btcGaiQj39PAgT1kWj)xei~N0Ujd zO&-ujS32@??NcV(angd6v2az*4hsFeMfk6&~`{=pp4j6 zBQ({nO3h`otLR+#?NMEv8c)4 zk1gx}7>_F6GPTvIE%pM8h;|?omReN}d)vMOwMI;Co5xGtm&SJ|E6FuV#!GDXH) zI&7(&UC6o61G`&`(hyQA?FxnCaUQcFBs-P9c-$VxI#POqh94prJxo-l2t3~r1C^*w zu)aD3gOHtePRLH#i9Ewqn7hcgq#;y|Or1Q_VqS97BPBPbNuXMC8ltVZvPYRr+CgJ|CQ^J1Luc`r7pcUHcMa`i;$O#; z;ZF^TCnHh=RnZLG<@{Q7doi^@duR(qaINF@h*Lawkz5F((}J9I5aa*XHy6TzD4SeV zl{`#&$t*nQZsU3>M%LNnBN=h0(juA%FH_P2>knkcUF3kCMlWJ2CYsPc0BC(iQ=n;m z9jc(-#_$oS6z??}FFxR-r%t+?;teXlh}Kh#Hlq$5s8&1m;&wX@lp(@2K%%91gIWs7 zJ-gw{+X(zR&|60VSQa2^C*)|19#w0h9%=!*5pA>T8C1vcIhw)ssB^AUtrD$4781(1 z4707EdTenBW0qpBb@U2#(Q~l3sN>scEo42kHds30(T#iq$hI7qn;IKL@A0EoVsy8f z0bd1Q@96kC?6QQ_&qY1fW2I4b){QF1y#hD^6|i<;=9kr+dhs?FKqehng%&9QISu)g V!B=~OfVlrB^nd#>Vt9`*{|)k>tIPlZ literal 0 HcmV?d00001 diff --git a/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.retain-all-codepoint.ttf b/test/subset/data/expected/basics/NanumMyeongjo-Regular-subset.retain-gids.retain-all-codepoint.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9744bc31d7da41a12b0ed144702f2a6e2ea66697 GIT binary patch literal 9524 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 beFe{u)GMk(Zz;1y@B^i>&o{ZLkJOca^KWr| delta 497 zcmYk2K}Z`x6o&tq-JK*5Vn9hXZS4kg5L&eMP!u9~$T1#TM4{keiJR=IG;=y90Zi;XGig=YcQIch^YiIZu@lSx;WveEA9~z+R)Q^_kR_XKX*N?;n z;zP%_=8{XDKH?tYw+uOpn;M7($D(0Jj##xB{IAPY@c$6KO-BX9XXwNh{l3S*T(mr_KAw~S1Qi_ zsXRBM%tb~!$5Zv64a`LFfxd<5F)|mh9%_apmP5^vz^71a$YV6r`Xi5lH2TB3AO-bX xyijW*t=@_J^Y^e(#sXYesA3Y5)BE0@mJa%!!T>)f z9?i+3(`-TjT0gO#vktOHTa`o7b&Ah?Ms6Et)d7Ijh^O*o1h4Q$^#-w-w@a>X6*I&- zv2GR85?NAU9vyyLx(*U-1q)ygWW;u*oe5QvUsUiyNwZF&SZbbP91!2F`!Y2Myc@4H zkV$Noseu;f*Th4u2h|;`sarnMi@!FEJl1m~KkhG;%f@tOAubviR1P;U>L=>~Y|wH{ z3sT-9MO!l%L~YH{jm?f0n8Qv-YyWb5h~Tl~`w@kwo<(Xn1qT-PQA7+$(#yyoM{Gf2 ePc4agH7O!0ETZa1#JXrs`e-g1w9B-LXo+7&hftRQ delta 419 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