cizgile 0.2.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/idna.mjs ADDED
@@ -0,0 +1,313 @@
1
+ import { i as punycodeEncode, r as punycodeDecode } from "./shared/punycode-MAFJqHdd.mjs";
2
+
3
+ //#region src/idna/data.ts
4
+ /** The Unicode version of the tables behind `cizgile/uri/idna`. */
5
+ const IDNA_UNICODE_VERSION = "16.0.0";
6
+ const MAPPING = "V1tMq.wV11XwM1.-3kV7Tw.lkV1M1.-21V2I1V1Tw.lgV2M2.-3kTw.ldM1.ljV2Tw.mfM1.-3sM1.-23V1T1d.6dg.1gT1d.6dg.1eT1f.6dg.1gV1Mn.wV1M7.wE37.37VwPo.1T2x.ljV1T2x.2yT2x.2yP2.1V1P3.1T30.53T30.53P4.1Tjg.32Pn.1M1.-3dP3.1M1.-7gV1M1.5uP2.1M1.5qM1.1V1M2.5pM1.1V2M1.27M1.5mM1.5nM1.1V1M1.5pM1.5rV1M1.5vM1.5tM1.1V3M1.5vM1.5xV1M1.5yP3.1M1.62M1.1V1M1.62V2M1.1V1M1.62M1.1V1M2.61P2.1M1.63M1.1V3M1.1V7T2s.amT2s.amT2s.amT30.2yT30.2yT30.2yT32.2yT32.2yT32.2yP8.1V1P9.1V1T2s.3eT2s.3eT2s.3eM1.1V1M1.-2pM1.-1kPk.1M1.-3mV1P9.1V6M1.8bvM1.1V1M1.-4jM1.8bsV2M1.1V1M1.-5fM1.1xM1.1zP5.1V2oM1.-g8M1.-23M1.-g8M1.-g1M1.-1nM1.-1mM1.-1hM1.-g0M1.-fzVvTw.liTw.ljTw.lmTw.mgTw.lfTw.lnV2M1.-3hM1.-hhM1.-hbM1.-h7M1.-27V2jM2.-1sV1M1.-1cTlk.ldM1.38V9I1VwP2.1M1.-57V1M1.1V1X2Tw.qhV3M1.-n7M1.38X4Tw.ldTw.lk.ldM1.12M1.-k0M3.11X1M1.1sX1M2.1rV1Mh.wX1M9.wVmEqrVcM1.8M1.-uM1.-pM1.-dM1.-6M1.-9M1.-fM1.-mV1Pc.1M1.-1iM1.-1cM1.-1bV1M1.-1oM1.-1sV1M1.1V1M1.-1iM1.1V2M3.-3mMg.28Mw.wV1cPh.1V8Pr.1M1.fP7.1V1P1c.1X1M12.1cX2V1aT12d.136V3X2V3X1V1jX8VrX4V6XhVmX1V2gT17r.19wT18o.19wT1c7.19wT18q.19wV2sX1V1cX2V1nX2V2tXeV1nX2V1dX2VfX1VsX2V1X1VbX5VvX8V23X1V39T1sl.1toT1sm.1toT1sn.1toT1ss.1toT1sx.1toT1sy.1toT1t7.1toT1tb.1toV10X1V8X2V2X2VmX1V7X1V1X3V4X2V9X2V2X2V4X8V1X4T1wh.1x8T1wi.1x8X1T1wv.1x8V4X2VpX2V3X1V6X4V2X2VmX1V7X1V1T20i.20sX1V1T20o.20sX1V2X2V1X1V5X4V2X2V3X3V1X7T1zq.20sT1zr.20sT1zw.20sV1X1T20b.20sX7VhXaV3X1V9X1V3X1VmX1V7X1V2X1V5X2VaX1V3X1V3X2V1XfV4X2VcX7V7X1V3X1V8X2V2X2VmX1V7X1V2X1V5X2V9X2V2X2V3X7V3X4T275.27wT276.27wX1V5X2ViXaV2X1V6X3V3X1V4X3V2X1V1X1V2X3V2X3V3X3VcX4V5X3V3X1V4X2V1X6V1XeVlX5VdX1V3X1VnX1VgX2V9X1V3X1V4X7V2X1V3X2V1X2V4X2VaX7VmX1V3X1VnX1VaX1V5X2V9X1V3X1V4X7V2X6V2X1V4X2VaX1V3XcVdX1V3X1V1fX1V3X1V6X4VgX2VqX1V3X1ViX3VoX1V9X1V1X2V7X3V1X4V6X1V1X1V8X6VaX2V3XcV1eT2tp.2syV7X4VtX11V2X1V1X1V5X1VoX1V1X1VcT2x9.2wiVaX2V5X1V1X1V7X1VaX2T2wb.2vtT2wb.2w1V2XwVcM1.-1V1iT30i.33rV4X1V4T30s.33rV4T30x.33rV4T312.33rV4T317.33rVcT30g.33pV3X4V2T31t.31uV1T31t.31wT33m.328T33m.31t.328T33n.328T33n.31t.328V7T31t.328VhT32q.33rV4X1V4T330.33rV4T335.33rV4T33a.33rV4T33f.33rVcT32o.33pV3X1VfX1VdX11V4gM12.5lsX1M1.5lsX5M1.5lsX2V18M1.-wV2qI2V6gX1V4X2V7X1V1X1V4X2V15X1V4X2VxX1V4X2V7X1V1X1V4X2VfX1V1lX1V4X2V1vX2VwX3VqX6V2eX2M6.-8X2VhsX1VsX3V2hX7VmX9VoX9VkXcVdX1V3X1V2XcV1gI2V14X2VaX6VaX6VbI5VaX6V2hX7V17X5V1yXaVvX1VcX4VcX4V1X3V16X2V5XbV18X4VqX6VbX3V1qX2V1tX1VtX2VbX6VaX6VeX2VvX1dV25X1V4mX8V1oX3VfX3V1fM1.-4suM1.-4stM1.-4skM2.-4siM1.-4sjM1.-4scM1.-4roM1.r7nM1.1V1X5M17.-2bkX2M3.-2bkV8X8V17X5V18M1.-5orM1.-5l3M1.-5osV1M2.-5osM1.-5edM8.-5osV1M1.-5otM1.-5cqM1.-5ouM1.-5otM2.-5osM1.-5orM1.-5peM2.-5boM1.-1wM1.-5phM2.-5pgM1.-5blM2.-5bkM1.-5piV1M1.-5pgM1.-5pfM1.-5jaM1.-5pfM1.-5bzM2.-1qM1.-5piM2.-5pfM1.-1oM1.-5bfM1.-5phM1.-1jM3.-52jM2.-522M1.-5q1M1.-5ptM2.-5prM2.-52sM1.-52fM2.-52bVdM1.-4zfVyM1.-5e1M1.-5rtM1.-5e0M1.-5nyM1.-5dvM1.-5ruM1.-5duM1.-5dtM1.-5dqM3.-5doM1.-18M1.-5cbM1.-5doM1.-11M1.-5ccM1.-5dnM1.-5dpM4.-5doM1.-5dmM2.-5ddM1.-5jeM2.-5d9M1.-4cM2.-5daM1.-5s1M3.-5d8M1.-553V1sP23.1V4T2p.jiM1.-1mV2M1.-5vjV1P1c.1V8M8.-8V6X2M6.-8X2V8M8.-8V8M8.-8V6X2M6.-8X2V8X1M1.-8X1M1.-8X1M1.-8X1M1.-8V8M8.-8V1M1.-5hhV1M1.-5hiV1M1.-5hjV1M1.-5hkV1M1.-5gtV1M1.-5guV1M1.-5gvX2T64g.qhT64h.qhT64i.qhT64j.qhT64k.qhT64l.qhT64m.qhT64n.qhT64g.qhT64h.qhT64i.qhT64j.qhT64k.qhT64l.qhT64m.qhT64n.qhT65c.qhT65d.qhT65e.qhT65f.qhT65g.qhT65h.qhT65i.qhT65j.qhT65c.qhT65d.qhT65e.qhT65f.qhT65g.qhT65h.qhT65i.qhT65j.qhT674.qhT675.qhT676.qhT677.qhT678.qhT679.qhT67a.qhT67b.qhT674.qhT675.qhT676.qhT677.qhT678.qhT679.qhT67a.qhT67b.qhV2T67k.qhTq9.qhTq4.qhX1V1T69i.qhM2.-8M1.-22M1.-5jjTq9.qhTw.lvM1.-5j9Tw.lvTw.n6Tw.lk.n6T67o.qhTqf.qhTq6.qhX1V1T69y.qhM1.-2eM1.-5jwM1.-2eM1.-5jxTqf.qhTw.lv.lcTw.lv.ldTw.lv.n6V3M1.-5kzX2V2M2.-8M1.-2sM1.-5kcX1Tw.lw.lcTw.lw.ldTw.lw.n6V3M1.-5kjV4M2.-8M1.-34M1.-5jyM1.-7Tw.lk.lcTw.lk.ldM1.-68fX2T67w.qhTqx.qhTr2.qhX1V1T6ba.qhM1.-3kM1.-5kdM1.-3iM1.-5kdTqx.qhTw.ldTw.lwX1M1.-6aoM1.-6apM1.-6aqM1.-6arM1.-6asM1.-6atM1.-6auM1.-6avM1.-6awM1.-6axM1.-6ayI1EEX2V1M1.-1V5Tw.mrVcX3V1X7M1.-6bzV3T6cy.6cyT6cy.6cy.6cyV1T6d1.6d1T6d1.6d1.6d1V4Tx.xV1Tw.lhV8T1r.1rT1r.xTx.1rVdT6cy.6cy.6cy.6cyV7M1.-6dbI5X5I6M1.-6dcM1.-6bsX2M6.-6dcM1.-6drM1.bbM1.-6dbM2.-6dxM1.-6c1Ma.-6dsM1.-6e7M1.avM1.-6drM2.-6edX1M1.-6cvM1.-6csM1.-6cjM1.-6cbM1.-5yzM1.-6ctM4.-6crM1.-6cqM2.-6coX3V8T36.37VoXfVxXfT2p.1b.2rT2p.1b.37M1.-6fzT4w.2rV1T2r.1b.33T2r.1b.39M1.-624V1T4w.2uM2.-6g3M1.-6g4M1.-6g5M1.-6g6M1.-6awM1.-6g7M1.-6g8M1.-6g6M1.-6g7V1M1.-6g7T32.33V2M3.-6g9M1.-6gaM1.-6gbV2T37.31T38.2t.30T38.31V1M1.-6gaV1M1.-5stV1M1.-6geV1M1.-6gvM1.-6diM2.-6h6V1M1.-6h6M2.-6h7M1.sM1.-6h2M1.-6h1M4.-5etM1.-6hcV1T2u.2p.3cM1.-5toM1.-5u2M1.-5u3M1.-5trM1.5tV4M1.-6htM2.-6huM2.-6hrV6T1d.6dg.1jT1d.6dg.1lT1d.6dg.1d.1cT1d.6dg.1fT1e.6dg.1fT1d.6dg.1hT1e.6dg.1hT1f.6dg.1hT1g.6dg.1hT1d.6dg.1iT1h.6dg.1iT1d.6dg.1kT1f.6dg.1kT1h.6dg.1kT1j.6dg.1kT1d.6dgM1.-6ifT2x.2xT2x.2x.2xT2x.3aM1.-6i6T3a.2xT3a.2x.2xT3a.2x.2x.2xT2x.3cM1.-6i9T3c.2xT3c.2x.2xM1.-6ioM2.-6iyM1.-6iqM1.-6ivT2x.2xT2x.2x.2xT2x.3aM1.-6imT3a.2xT3a.2x.2xT3a.2x.2x.2xT2x.3cM1.-6ipT3c.2xT3c.2x.2xM1.-6j4M2.-6jeM1.-6j6V3M1.1V5T1c.6dg.1fV2X4V4cT6qz.6qzT6qz.6qz.6qzV1T6r2.6r2T6r2.6r2.6r2V6wM2.2jjV73XmVbXlM9.-75bT1d.1cT1d.1dT1d.1eT1d.1fT1d.1gT1d.1hT1d.1iT1d.1jT1d.1kT1d.1lT1e.1cT14.1d.15T14.1e.15T14.1f.15T14.1g.15T14.1h.15T14.1i.15T14.1j.15T14.1k.15T14.1l.15T14.1d.1c.15T14.1d.1d.15T14.1d.1e.15T14.1d.1f.15T14.1d.1g.15T14.1d.1h.15T14.1d.1i.15T14.1d.1j.15T14.1d.1k.15T14.1d.1l.15T14.1e.1c.15XkT14.2p.15T14.2q.15T14.2r.15T14.2s.15T14.2t.15T14.2u.15T14.2v.15T14.2w.15T14.2x.15T14.2y.15T14.2z.15T14.30.15T14.31.15T14.32.15T14.33.15T14.34.15T14.35.15T14.36.15T14.37.15T14.38.15T14.39.15T14.3a.15T14.3b.15T14.3c.15T14.3d.15T14.3e.15Mq.-76dMq.-773M1.-796V10hT6qz.6qz.6qz.6qzV2vT1m.1m.1pT1p.1pT1p.1p.1pV2tT8gt.mwV47X2VwX1V2xM1c.1cV1cM1.1V1M1.-8afM1.-2xyM1.-89zV2P3.1M1.-8bgM1.-8alM1.-8bjM1.-8biV1M1.1V2M1.1V6M1.-8peM1.-8p3M2.-8cfP1e.1V7P2.1V3M1.1V1X5V19X1V1X5V1X2V1kX7M1.-eV1XeVoX9V7X1V7X1V7X1V7X1V7X1V7X1V7X1V7X1V3iXyVqX1V4M1.c32V2bM1.m98XcM1.64gM1.65jM1.65wM1.664M1.66tM1.680M1.686M1.68pM1.69eM1.6raM1.6sbM1.6sgM1.6t2M1.6tlM1.6u5M1.6vlM1.6w5M1.6wfM1.70pM1.73aM1.741M1.745M1.74yM1.756M1.75wM1.768M1.76wM1.78bM1.78sM1.79iM1.7uhM1.7wgM1.897M1.89tM1.8a0M1.8aaM1.8arM1.8cuM1.8q2M1.8rdM1.8uoM1.8vaM1.8vsM1.8wdM1.8xuM1.8xwM1.97xM1.986M1.98hM1.98tM1.9c0M1.9c7M1.9cbM1.9fjM1.9fsM1.9g4M1.9gbM1.9hzM1.9ifM1.9iwM1.9l3M1.a17M1.a2gM1.a30M1.anjM1.annM1.apxM1.aqcM1.aqoM1.ar8M1.asaM1.aseM1.azsM1.b0fM1.b1aM1.bthM1.bvaM1.bvwM1.bxhM1.by4M1.bycM1.byiM1.bzxM1.c01M1.c0wM1.cuuM1.d78M1.d7jM1.d7nM1.d7qM1.d7xM1.d8eM1.d8fM1.danM1.dgmM1.dgqM1.dq4M1.dqdM1.drqM1.drwM1.ds4M1.dsbM1.dutM1.duzM1.e1aM1.e1gM1.e2sM1.e38M1.e4iM1.eb2M1.eb8M1.eboM1.ekqM1.eo7M1.eocM1.etdM1.evrM1.ex0M1.f7hM1.fb5M1.fr2M1.frsM1.ftcM1.fuqM1.fwlM1.fwvM1.fx0M1.fxwM1.fzzM1.g08M1.g9tM1.g9zM1.ga7M1.gafM1.gauM1.gb8M1.gbbM1.gdhM1.gdkM1.gdpM1.h4xM1.h5qM1.hiqM1.hj1M1.hjnM1.hrhM1.hrtM1.htrM1.hv0M1.iaqM1.ib4M1.ibiM1.icgM1.idgM1.iiyM1.ij9M1.il3M1.iryM1.issM1.iykM1.iz4M1.iz8M1.j5bM1.jaeM1.jduM1.jdzM1.je3M1.k40M1.k48M1.k8jM1.kcsM1.kcuM1.ke4M1.kh0M1.khcM1.khfM1.khlM1.kkaM1.kl7M1.klcM1.klpM1.kqbM1.krpM1.krsM1.kwuM1.kwwM1.kxeM1.l4dM1.l5oM1.l5uM1.l7rM1.l80M1.l82M1.l8bM1.l94M1.lk2M1.lv5M1.lveM1.lwfM1.lx0M1.lx7M1.lxgM1.lxjM1.lymM1.lypM1.lz5M1.lz9M1.lzlM1.m0bM1.m0pM1.m0wM1.m2iM1.m2wM1.m2zX16M1.-9ggV1M1.-9g4V1fM1.-10V1M1.6x5M2.6x7V5X1V2eX2V2Tw.9llTw.9lmV2T9l4.9l6V2nT9mb.9mwX5V17X1M2.-6cxM1.-689M1.-6cyM2.-689M3.-6d0M6.-68aM1.-6cmM3.-6d7M1.-6cjMa.-6d8Ml.-6b2I1M2.-6dtM2.-68wM1.-68tM1.-68sM1.-68oM1.-68lM1.-68kM1.-6duM1.-68iM1.-68hM2.-6dwM1.-6dvM2.-6duM1.-6drM1.-6dqM5.-6dpM1.-6dnM1.-6dkM1.-6dbM1.-6d5M1.-6d1M2.-68hM3.-6ctM2.-6bnM1.-6blM2.-6bdM1.-6bcM1.-6b3M1.-6b1X1V2M1.5m6M1.5q1M1.5mdM1.7d2M1.5mcM1.5naM1.5mbM1.dcpM1.5ofM1.5mmM1.5lxM1.7t8M1.7f6M1.5qzV1yXaVgT14.3cw.15T14.3cy.15T14.3cz.15T14.3d1.15T14.3d2.15T14.3d3.15T14.3d5.15T14.3d7.15T14.3d8.15T14.3da.15T14.3db.15T14.3dc.15T14.3dd.15T14.3de.15T14.xz4.15T14.yvs.15T14.zc4.15T14.108s.15T14.10p4.15T14.115g.15T14.1224.15T14.12ys.15T14.13f4.15T14.14bs.15T14.14s4.15T14.158g.15T14.15os.15T14.1654.15T14.13p8.15T14.1350.13ic.15T14.1350.16f8.15X1T14.feo.15T14.fik.15T14.fex.15T14.h5n.15T14.fis.15T14.g31.15T14.fer.15T14.g2z.15T14.fh9.15T14.gg1.15T14.kco.15T14.m7f.15T14.ldg.15T14.kdk.15T14.ssx.15T14.h7j.15T14.k4l.15T14.kkq.15T14.kcp.15T14.ny6.15T14.glp.15T14.mm1.15T14.rs1.15T14.nz1.15T14.gc4.15T14.fkz.15T14.gos.15T14.i1y.15T14.nhf.15T14.flt.15T14.rt3.15T14.ggk.15T14.nzh.15T14.fm9.15T14.pnu.15T14.po3.15M1.6x7M1.8qfM1.a4hM1.eh4V8T34.38.2tT1e.1dT1e.1eT1e.1fT1e.1gT1e.1hT1e.1iT1e.1jT1e.1kT1e.1lT1f.1cT1f.1dT1f.1eT1f.1fT1f.1gT1f.1hM1.-6lcM2.-6lbM3.-6laM1.-6l9M2.-6l8M5.-6l7M1.o0iM1.ox5M1.pdgM1.qa3M1.qqeM1.r6pM1.s3cM1.szzM1.tgaM1.ucxM1.ut8M1.v9jM1.vpuM1.w65T14c8.y5cT13p8.13dkM1.t9uV1M1.5fkM1.5jfM1.5frM1.76gM1.5jkM1.63sM1.5fhM1.63oM1.5hxM1.6goM1.adaM1.c80M1.be0M1.ae3M1.itfM1.780M1.a51M1.al5M1.ad3M1.dyjM1.6m1M1.cmcM1.hsbM1.dzaM1.6ccM1.e2nM1.d5pM1.7o8M1.ij1M1.619M1.6heM1.bihM1.k11M1.5m8M1.647M1.b7kM1.5euM1.5fsM1.5etM1.8jjM1.6krM1.6fmM1.831M1.81nM1.dh3M1.5lgM1.hspM1.6g5M1.7l8T1f.1iT1f.1jT1f.1kT1f.1lT1g.1cT1g.1dT1g.1eT1g.1fT1g.1gT1g.1hT1g.1iT1g.1jT1g.1kT1g.1lT1h.1cT1d.kcoT1e.kcoT1f.kcoT1g.kcoT1h.kcoT1i.kcoT1j.kcoT1k.kcoT1l.kcoT1d.1c.kcoT1d.1d.kcoT1d.1e.kcoT2w.2vT2t.36.2vT2t.3aT30.38.2sM1.-fiM1.-fhM1.-fgM1.-ffM2.-feM1.-fdM1.-fcM1.-fbM1.-faM1.-f9M1.-f8M1.-f7M1.-f6M1.-f5M1.-f4M1.-f3M1.-f1M1.-f0M1.-ezM6.-eyM1.-ewM1.-euM1.-esM1.-eqM5.-eoM1.-enM1.-emM6.-elM4.-ekTfl0.gp8T9lu.9n5.9oc.9mwT9lu.9nv.9n9.9ltT9lu.9o3.9ne.9luT9lu.9oc.9nvT9lw.9mz.9o3.9m8T9lw.9o3.9mpT9ly.9m1.9o3T9m0.9mh.9m7.9oc.9mxT9m0.9oc.9m3.9ocT9m2.9o3.9mhT9m2.9oc.9nkT9m3.9lw.9nuT9m3.9nt.9mr.9mwT9m3.9nx.9nu.9ocT9m4.9nx.9o3T9m4.9o3.9niT9m6.9m4T9m6.9mz.9ocT9m5.9np.9nu.9ocT9m6.9nv.9mo.9ocT9m5.9nxT9m5.9nx.9m8.9nt.9nkT9m5.9nx.9nl.9oc.9mw.9nvT9m5.9nx.9nz.9mr.9mwT9m8.9nt.9nkT9m8.9nt.9nk.9mw.9o3T9m7.9nv.9mk.9lw.9nxT9m7.9nx.9oc.9n1T9m9.9oc.9mhT9mb.9nv.9myT9mb.9oc.9nhT9md.9lw.9m7.9nvT9md.9o3.9mp.9oc.9nkT9mf.9nu.9o3.9m8T9mj.9o3.9mpT9mj.9o3.9mwT9mo.9oc.9mhT9mv.9mfT9mx.9nvT9mw.9o3T9my.9n2T9n2.9mr.9mwT9n3.9lw.9msT9n5.9oc.9mj.9o3.9mwT9n5.9oc.9msT9n4.9oc.9nw.9nvT9n8.9lu.9mh.9mw.9nvT9n8.9m7.9nvT9n8.9mbT9n7.9nvT9n9.9lt.9nt.9mr.9mxT9n9.9lv.9oc.9mwT9na.9mr.9mf.9lz.9nvT9n9.9nt.9o3T9nc.9m7.9mn.9oc.9nvT9ne.9mlT9ne.9mz.9n6T9nc.9nv.9msT9ne.9o3.9mhT9ne.9oc.9mgT9nd.9oc.9mnT9nh.9lw.9o3.9mwT9ng.9nv.9mwT9nf.9o3T9nh.9o3.9mxT9nf.9oc.9nvT9nf.9oc.9o3T9ni.9lw.9m7.9nxT9ni.9lw.9nvT9ni.9mr.9n3T9ni.9nv.9m7T9ni.9o3.9mf.9nr.9o3T9nj.9m7.9nx.9o3T9nj.9nuT9nj.9nu.9n4.9oc.9nvT9nl.9m4T9nl.9m4.9mw.9o3T9nl.9oc.9mw.9nvT9no.9oc.9mxT9no.9oc.9nvT9nq.9lu.9o3T9nu.9mr.9mw.9nvT9nu.9ntT9nv.9n8.9ocT9nv.9oc.9na.9nvT9nw.9nkT9nw.9o3.9mw.9ma.9o3T9nz.9mr.9mwT1c.m9lT1d.m9lT1e.m9lT1f.m9lT1g.m9lT1h.m9lT1i.m9lT1j.m9lT1k.m9lT1l.m9lT1d.1c.m9lT1d.1d.m9lT1d.1e.m9lT1d.1f.m9lT1d.1g.m9lT1d.1h.m9lT1d.1i.m9lT1d.1j.m9lT1d.1k.m9lT1d.1l.m9lT1e.1c.m9lT1e.1d.m9lT1e.1e.m9lT1e.1f.m9lT1e.1g.m9lT2w.34.2pT2s.2pT2p.39T2q.2p.36T33.3aT34.2rT2s.31T2s.31.1eT2s.31.1fT2x.39Tinn.jdcTk6l.gp8Thlz.l7nTk5q.lh7Tkkq.irz.fmi.ny6T34.2pT32.2pTqk.2pT31.2pT2z.2pT2z.2qT31.2qT2v.2qT2r.2p.30T2z.2r.2p.30T34.2uT32.2uTqk.2uTqk.2vT31.2vT2z.2vT2w.3eT2z.2w.3eT31.2w.3eT2v.2w.3eT38.2w.3eTqk.30T31.30T2s.30T2z.30T2u.31T32.31Tqk.31T31.31T2r.31T2z.31T31.31.1eT2r.31.1eT31.1eT2z.31.1eT31.31.1fT2r.31.1fT31.1fT2z.31.1fT31.6qd.37T31.6qd.37.1eT34.2pT2z.34.2pT31.34.2pT2v.34.2pT36.2p.2sT36.2p.2s.6qd.37T36.2p.2s.6qd.37.1eT34.37T32.37Tqk.37T31.37T34.3aT32.3aTqk.3aT31.3aT2z.3aT31.3aT34.3bT32.3bTqk.3bT31.3bT2z.3bT31.3bT2z.qxT31.qxX1T2q.35T2r.2rT2r.2sT2r.6qd.2z.2vX1T2s.2qT2v.3dT2w.2pT2w.34T2x.32T2z.2zT2z.31T2z.38T30.31T30.32T30.33.2vT30.3cT31.2qT31.2x.30T31.33.30T34.2wX1T34.34.31T34.36T37.36T37.3aT3b.2qT3a.6qd.31T2p.6qd.31T1d.k4lT1e.k4lT1f.k4lT1g.k4lT1h.k4lT1i.k4lT1j.k4lT1k.k4lT1l.k4lT1d.1c.k4lT1d.1d.k4lT1d.1e.k4lT1d.1f.k4lT1d.1g.k4lT1d.1h.k4lT1d.1i.k4lT1d.1j.k4lT1d.1k.k4lT1d.1l.k4lT1e.1c.k4lT1e.1d.k4lT1e.1e.k4lT1e.1f.k4lT1e.1g.k4lT1e.1h.k4lT1e.1i.k4lT1e.1j.k4lT1e.1k.k4lT1e.1l.k4lT1f.1c.k4lT1f.1d.k4lT2v.2p.30Vm8dX3V1jX9V9oXkPn.1ViPe.1M1.-w2aM1.-w29V2iX8VyP7.1V2Pv.1M1.-1V8P2.1M1.-r9gP5.1V3M1.1V1M1.-wmgV2P2.1V2Pa.1M1.-wn8M1.-wnjM1.-wnfM1.-wn5M1.-wn8V1M1.-wluM1.-wmiM1.-wlxM1.psP8.1M1.-1cM1.-wn7M1.-rawP2.1M1.-wo7M1.1V1X2M1.1V1X1V1X1V1P3.1M1.-wu9XlM1.-x3jM1.-x3hM1.-x37M1.1V2M1.-wy9M1.-wx2V1fX3VaX6V1kX8V1yX8VcX6V38XbVuX3V26X1VbX4VxX1V1jX9VeX2VaX2V2vXoVsXaV6X2V6X2V6X9V7X1V7X1V18M1.-txM1.-12M1.-xdfM1.-dV9M1.-xcsV2X4M28.-tzkV1aX2VaX6V8mcXcVnX4V1dX6isM1.-lh4M1.-sulM1.-kzcM1.-ldnM1.-rarM1.-xqrM1.-wm9M1.-hnvM1.-hnwM1.-vjsM1.-ke1M1.-wasM1.-vk4M1.-tufM1.-pt1M1.-o0aM1.-mohM1.-mdzM1.-m56M1.-kn8M1.-s9eM1.-rneM1.-qwtM1.-qbdM1.-n2zM1.-khbM1.-ispM1.-xp5M1.-wpzM1.-s2hM1.-qo3M1.-mpeM1.-hz6M1.-us1M1.-r3rM1.-ms6M1.-m2oM1.-tp8M1.-nkeM1.-mbsM1.-uhqM1.-suqM1.-rlsM1.-qi7M1.-km6M1.-xifM1.-x2vM1.-wupM1.-tbgM1.-s4eM1.-qoyM1.-pqkM1.-nxvM1.-mr3M1.-moqM1.-l6wM1.-jd2M1.-iiyM1.-i0wM1.-pf3M1.-p8dM1.-of1M1.-n79M1.-k6zM1.-hxdM1.-lt7M1.-vojM1.-ugvM1.-oo4M1.-nuvM1.-qn8M1.-pdpM1.-lfqM1.-jf6M1.-voyM1.-uztM1.-sahM1.-rjnM1.-rb3M1.-oioM1.-obdM1.-jk6M1.-ww0M1.-nuwM1.-x2wM1.-x3dM1.-p4qM1.-oexM1.-n6vM1.-jj8M1.-lp6M1.-tqkM1.-sbeM1.-lsvM1.-xt1M1.-v3sM1.-ua6M1.-qfuM1.-q2aM1.-wukM1.-pd5M1.-xieM1.-ud9M1.-xuiM1.-rrwM1.-t81M1.-ojsM1.-wq0M1.-vtaM1.-prgM1.-n51M1.-lvpM1.-rzqM1.-kw1M1.-ru2M1.-tpxM1.-nf3M1.-tlhM1.-q35M1.-xqhM1.-x73M1.-x4gM1.-smxM1.-olwM1.-nilM1.-luzM1.-khbM1.-wwaM1.-wn2M1.-vm6M1.-ujaM1.-t6mM1.-r5yM1.-pcrM1.-jq1M1.-isdM1.-hypM1.-hx7M1.-wz3M1.-szpM1.-s2dM1.-kyzM1.-umyM1.-u0vM1.-txsM1.-tfbM1.-rcfM1.-qx6M1.-qa3M1.-p8rM1.-of6M1.-nxkM1.-l0yM1.-n1nM1.-ktzM1.-k7lM1.-x39M1.-wzeM1.-wkhM1.-r13M1.-mamM1.-lx3M1.-ul5M1.-ucuM1.-tntM1.-s1jM1.-orsM1.-qiaM1.-xqcM1.-w4wM1.-v5vM1.-usxM1.-uc0M1.-qgrM1.-qbpM1.-o45M1.-nzeM1.-kfxM1.-ji4M1.-jfvM1.-ja4M1.-xm2M1.-pagM1.-kjnM1.-jk0M1.-u6wM1.-xtgM1.-xcxM1.-v66M1.-v3yM1.-t9hM1.-se5M1.-quqM1.-pz3M1.-n2eM1.-ksnM1.-htjM1.-t31M1.-jo8M1.-x1aM1.-swdM1.-st2M1.-rrdM1.-rhrM1.-qf7M1.-q5wM1.-pk3M1.-on3M1.-j8yM1.-x9gM1.-tycM1.-jmjM1.-xihM1.-uykM1.-rn0M1.-l2lM1.-uh9M1.-u51M1.-ssjM1.-qj8M1.-jmeM1.-x4kM1.-wr3M1.-v3uM1.-t71M1.-sybM1.-soqM1.-rumM1.-qfyM1.-q2rM1.-o6lM1.-mc8M1.-mbrM1.-kkdM1.-jk8M1.-wx8M1.-rhuM1.-wr4M1.-qvyM1.-qc7M1.-mwmM1.-jm6M1.-ihnM1.-i1gM1.-swtM1.-roqM1.-npqM1.-p4cM1.-p20M1.-orrM1.-qpmM1.-r4yM1.-lusM1.-xtpM1.-ngoM1.-x51M1.-x6hM1.-uorM1.-tv3M1.-oq5M1.-vb3M1.-rtzM1.-t3mM1.-l3gM1.-mgsM1.-jp8M1.-m7zM1.-unsM1.-xccM1.-wgdV2M1.-vxyV1M1.-t5qV2M1.-x87M1.-qngM1.-pxpM1.-pgcM1.-pffM1.-pf9M1.-pe4M1.-jieM1.-orjM1.-o69V1M1.-mxaV1M1.-lyiV2M1.-kx9M1.-krtV3M1.-j7fM1.-j73M1.-j5wM1.-i9lM1.-kswM1.-jncM1.-xoiM1.-xfuM1.-xd1M1.-x2iM1.-x1sM1.-wysM1.-wihM1.-wflM1.-wcwM1.-vztM1.-vwyM1.-v6fM1.-v66M1.-ucpM1.-u6uM1.-u5tM1.-u32M1.-tf6M1.-tb4M1.-t6aM1.-ssfM1.-rtaM1.-rosM1.-rhhM1.-r16M1.-qvyM1.-qi0M1.-pmiM1.-phqM1.-phgM1.-phiM1.-phbM1.-ph6M1.-ph0M2.-pfpM1.-pasM1.-p90M1.-p06M1.-okjM1.-ojzM1.-oigM1.-oa0M1.-o5yM1.-nsfM1.-nokM1.-nolM1.-nbcM1.-mdsM1.-ma3M1.-m01M1.-lyiM1.-ln5M1.-llpM1.-l2oM1.-kz3M1.-jnpM1.-jfuM1.-je7M1.-ueuM1.1sw2M1.-nrpX2M1.-y16M1.-xbwM1.-xe2M1.-xrnM1.-xf3M1.-xdhM1.-x4fM1.-x31M1.-wkbM1.-wmcM1.-wkhM1.-wihM1.-w0yM1.-vyiM1.-vuiM1.-vu3M1.-vmmM1.-vh5M1.-ur4M1.-uqyM1.-umzM1.-ul4M1.-ucuM1.-u9lM1.-ubkM1.-u7vM1.-u96M1.-u55M1.-u3cM1.-ts9M1.-tpuM1.-todM1.-th6M1.-t99M1.-t4rM1.-t4oM1.-t32M1.-s9oM1.-s7wM1.-rx2M1.-rlpM1.-rm6M1.-rjsM1.-rctM1.-r3iM1.-pvaM1.-qy1M1.-quoM1.-qraM1.-qi8M1.-qe4M1.-qcoM1.-q6fM1.-q6eM1.-q1oM1.-q18M1.-q0kM1.-py7M1.-pyiM1.-pnjM1.-pa3M1.-p2lM1.-oxfM1.-or8M1.-on0M1.-odvM1.-o8dM1.-nkxM1.-nglM1.-mrgM1.-metM1.-mcxM1.-mciM1.-m4aM1.-m2qM1.-m40M1.-m2jM1.-m2nM1.-m35M1.-m12M1.-lyuM1.-lo9M1.-l8qM1.-l01M1.-krvM1.-klrM1.-jt6M1.-jqcM1.-jn6M1.-jjiM1.-jijM1.-ji8M1.-jgxM1.-iwrM1.-i0iM1.1njvM1.1njoM1.1ptwM1.-11rpM1.-10vvM1.-10uzM1.1vucM1.1xx6M1.24n0M1.-i39M1.-i17X12T2u.2uT2u.2xT2u.30T2u.2u.2xT2u.2u.30T37.38T37.38XcT12s.12uT12s.12dT12s.12jT132.12uT12s.12lX5T15l.14kV1T16a.14nM1.-1cfyM1.-1cghM2.-1cgfM3.-1cg9M1.-1cfzM1.-1cfyM1.-1dkuT161.14xT161.14yT161.14s.14xT161.14s.14yT15c.14nT15c.14oT15c.14sT15d.14sT15e.14sT15f.14sT15g.14sT15h.14sT15i.14sX1T15k.14sT15l.14sT15m.14sT15n.14sT15o.14sX1T15q.14sX1T15s.14sT15t.14sX1T15v.14sT15w.14sX1T15y.14sT15z.14sT160.14sT161.14sT162.14sT15h.14pT15d.14vT15n.14vT15w.14vT15c.15oM1.-1cdbM1.-1cdcM1.-1cd3M1.-1cd4M1.-1cd5M1.-1cd6M1.-1cd4M1.-1cd5M1.-1cd6M1.-1cd7M1.-1cd6M1.-1cd7M1.-1cd8M1.-1cd9M1.-1cdgM1.-1cdhM1.-1cdiM1.-1cdjM1.-1cdfM1.-1cdgM1.-1cdhM1.-1cdiM1.-1cdpM1.-1cdqM1.-1cdrM1.-1cdsM1.-1ccmM1.-1ccnM1.-1ccoM1.-1ccpM1.-1ccoM1.-1ccpM1.-1ccqM1.-1ccrM1.-1cdqM1.-1cdrM1.-1cdsM1.-1cdtM1.-1cdvM1.-1cdwM1.-1cdxM1.-1cdyM1.-1cdwM1.-1cdxM1.-1cdyM2.-1cdzM1.-1ce0M1.-1ce1M1.-1ce2M1.-1cdxM1.-1cdyM1.-1ce0M1.-1ce1M1.-1ce0M1.-1ce1M1.-1ce8M1.-1ce9M1.-1cduM1.-1cdvM1.-1ce3M1.-1ce4M1.-1cdhM1.-1cdiM1.-1cdjM1.-1cdkM1.-1cdfM1.-1cdgM1.-1cdhM1.-1cdiM1.-1cdfM1.-1cdgM1.-1cdhM1.-1cdiM1.-1cdlM1.-1cdmM1.-1cdnM1.-1cdoM1.-1cdgM2.-1cdhM1.-1cdiM1.-1cdjM1.-1cdkM1.-1cdgM2.-1cdhM1.-1cdiM1.-1cdjM1.-1cdkM1.-1cdoM1.-1cdpM1.-1cdqM1.-1cdrM1.-1cd8M2.-1cd9M1.-1cdaVhXgM1.-1cfaM1.-1cfbM1.-1cfcM1.-1cfdM1.-1ceoM1.-1cepM1.-1cerM1.-1cesM1.-1cerM1.-1cesT1c7.19wM1.-1cerM1.-1cesM1.-1cezM1.-1cf0M1.-1cexM1.-1ceyM1.-1cesM1.-1cetM1.-1ceuM1.-1cevM1.-1cinM1.-1cioT17q.17rT17q.17rT17q.1clT17q.1clT17q.18oT17q.18oT17q.1c7T17q.1c7T17q.1c6T17q.1c6T17q.1c8T17q.1c8T17q.1cgT17q.1cgT17q.1cgT17q.18pT17q.18pT17q.18pM1.-1cfkM1.-1cflM1.-1cfmM1.-1cfnT17q.17wT17q.17xT17q.18lT17q.18pT17q.18qT17s.17wT17s.17xT17s.17yT17s.18lT17s.18pT17s.18qT17u.17wT17u.17xT17u.17yT17u.18lT17u.18pT17u.18qT17v.17wT17v.18lT17v.18pT17v.18qT17w.17xT17w.18lT17x.17wT17x.18lT17y.17wT17y.17xT17y.18lT183.17wT183.17xT183.17yT183.18lT185.17xT185.18lT186.17wT186.17xT186.17yT186.18lT187.17xT187.18lT188.18lT189.17wT189.18lT18a.17wT18a.18lT18h.17wT18h.17xT18h.17yT18h.18lT18h.18pT18h.18qT18i.17xT18i.18lT18i.18pT18i.18qT18j.17rT18j.17wT18j.17xT18j.17yT18j.18kT18j.18lT18j.18pT18j.18qT18k.17wT18k.17xT18k.17yT18k.18lT18k.18pT18k.18qT18l.17wT18l.17xT18l.17yT18l.18lT18l.18pT18l.18qT18m.17wT18m.17xT18m.17yT18m.18lT18m.18pT18m.18qT18n.17wT18n.18lT18n.18pT18n.18qT18q.17wT18q.17xT18q.17yT18q.18lT18q.18pT18q.18qT180.19sT181.19sT18p.19sTw.18s.18xTw.18t.18xTw.18u.18xTw.18v.18xTw.18w.18xTw.18x.19sT17q.181T17q.182T17q.18lT17q.18mT17q.18pT17q.18qT17s.181T17s.182T17s.18lT17s.18mT17s.18pT17s.18qT17u.181T17u.182T17u.18lT17u.18mT17u.18pT17u.18qT17v.181T17v.182T17v.18lT17v.18mT17v.18pT17v.18qT18h.18pT18h.18qT18i.18pT18i.18qT18j.17rT18j.18kT18j.18lT18j.18pT18j.18qT18k.18lT18k.18pT18k.18qT18l.17rT18l.18lT18m.181T18m.182T18m.18lT18m.18mT18m.18pT18m.18qT18p.19sT18q.181T18q.182T18q.18lT18q.18mT18q.18pT18q.18qT17q.17wT17q.17xT17q.17yT17q.18lT17q.18nT17s.17wT17s.17xT17s.17yT17s.18lT17s.18nT17u.17wT17u.17xT17u.17yT17u.18lT17u.18nT17v.18lT17w.17xT17w.18lT17x.17wT17x.18lT17y.17wT17y.18lT183.17wT183.17xT183.17yT183.18lT185.17xT185.17yT185.18lT186.17wT186.17xT186.17yT186.18lT187.17xT188.18lT189.17wT189.18lT18a.17wT18a.18lT18h.17wT18h.17xT18h.17yT18h.18lT18i.17xT18i.18lT18j.17wT18j.17xT18j.17yT18j.18kT18j.18lT18k.17wT18k.17xT18k.17yT18k.18lT18k.18nT18l.17wT18l.17xT18l.17yT18l.18lT18m.17wT18m.17xT18m.17yT18m.18lT18m.18nT18n.17wT18n.18lT18n.19sT18q.17wT18q.17xT18q.17yT18q.18lT18q.18nT17q.18lT17q.18nT17s.18lT17s.18nT17u.18lT17u.18nT17v.18lT17v.18nT183.18lT183.18nT184.18lT184.18nT18j.18kT18j.18lT18k.18lT18m.18lT18m.18nT18q.18lT18q.18nT18g.18u.18xT18g.18v.18xT18g.18w.18xT187.18pT187.18qT189.18pT189.18qT18a.18pT18a.18qT183.18pT183.18qT184.18pT184.18qT17x.18pT17x.18qT17w.18pT17w.18qT17y.18pT17y.18qT185.18pT185.18qT186.18pT186.18qT184.17wT184.17xT184.17yT184.18lT184.181T183.181T185.181T186.181T187.18pT187.18qT189.18pT189.18qT18a.18pT18a.18qT183.18pT183.18qT184.18pT184.18qT17x.18pT17x.18qT17w.18pT17w.18qT17y.18pT17y.18qT185.18pT185.18qT186.18pT186.18qT184.17wT184.17xT184.17yT184.18lT184.181T183.181T185.181T186.181T184.17wT184.17xT184.17yT184.18lT183.18nT184.18nT187.18lT183.17wT183.17xT183.17yT184.17wT184.17xT184.17yT187.18lT188.18lT17r.18rT17r.18rViT17u.17w.18lT17u.17x.17wT17u.17x.17wT17u.17x.18lT17u.17y.18lT17u.18l.17wT17u.18l.17xT17u.18l.17yT17w.18l.17xT17w.18l.17xT17x.18l.18qT17x.18l.18pT183.17x.17wT183.17w.17xT183.17w.18pT183.18l.17xT183.18l.17xT183.18l.17wT183.18l.18lT183.18l.18lT185.17x.17xT185.17x.17xT185.18l.18lT184.17x.18lT184.17x.18lT184.17w.18qT184.18l.17yT184.18l.17yT184.18l.18lT184.18l.18lT186.17x.18pT186.17y.18lT186.17y.18lT187.18l.17xT187.18l.17xT187.18l.18lT187.18l.18qT189.17w.18lT189.18l.18lT189.18l.18lT189.18l.18pT18a.18l.18lT18a.18l.18qT18a.18l.18pT18h.17y.18lT18h.17y.18lT18i.18l.17xT18i.18l.18lT18k.17x.18lT18k.17x.18qT18k.17x.18pT18k.17w.17wT18k.17w.17wT18k.17y.18lT18k.17y.18lT18k.18l.17xT18k.18l.17xT18l.17x.17wT18l.17x.18lT18l.17x.18qT18l.17w.17xT18l.17w.18lT18l.17y.17wT18l.17y.18lX2T18l.17w.17yT18n.18l.17wT18n.18l.18lT18m.17x.18lT18m.17x.18pT18m.17w.18lT18m.17w.18lT18m.17w.18pT18m.18l.18qT18m.18l.18pT18q.18l.18lT18q.18l.18lT17s.17y.18qT17u.17w.18qT17u.17w.18pT17u.17y.18qT17u.17y.18pT17u.18l.18qT17u.18l.18pT17w.18l.18qT17w.17x.18pT17w.18l.18pT183.17y.18pT185.17x.18qT184.17x.18qT186.17x.18qT18k.17w.18qT18k.18l.18qT18q.17x.18qT18q.17w.18qT18q.18l.18qT18l.18l.18qT18i.18l.18qT18m.17x.18qT18i.18l.17xT18k.17x.18lT189.18l.18qT18j.18l.18qT18m.17w.17xT18l.17y.18qT18k.17w.18lT18j.18l.18lT18k.17w.18lT18m.17w.17xT17w.17x.18qT17x.17w.18qT18l.17w.18qT18h.18l.18qT17s.17x.18qT18j.18l.18lT189.17w.18lT185.18l.18lT183.17y.18qT18m.17w.18qX7V1XwT185.18k.1ciT18i.18k.1ciT17r.18k.18k.18nT17r.18j.17s.181T18l.17x.18l.17zT185.18k.189.18lT181.183.18o.18kT189.18k.18q.18nT18o.183.18k.18lT185.18k.18pT185.18k.18p.w.17r.18k.18k.18n.w.189.18k.18q.18n.w.18o.183.18k.18lT17w.18k.w.17w.18k.17r.18k.18nT181.1cc.17r.18kV3IgM1.-1e5gM1.-14pcX1M2.-1e55M1.-1e5wM1.-1e53M2.-14oxX7VgX1M1.-17vhM1.-17vjM1.-1e50M1.-1e51M2.-1e6lM1.-1e4cM1.-1e4bM2.-14pxM2.-14q3M2.-14qbM2.-14qfM4.-14qdV2M1.-1e5oM1.-1e5nTw.lhTw.lhTw.lhTw.lhM1.-1e5qM1.-1e5rM1.-1e5sM1.-1e78M1.-14r4X2M1.-1e6xM1.-1e6zM1.-1e6vM1.-1e7qM1.-17wkM2.-1e7lM1.-1e5cM1.-1e5bM2.-14qxM1.-1e7wM1.-1e7uM2.-1e7rM1.-1e7qM1.-1e7cM1.-1e7bM1.-1e7dX1M1.-1e6kM2.-1e85M1.-1e7fX4Tw.18rT18g.18rTw.18sV1Tw.18tX1Tw.18uT18g.18uTw.18vT18g.18vTw.18wT18g.18wTw.18xT18g.18xTw.18yT18g.18yM2.-1d27M2.-1d28M2.-1d29M2.-1d2aM2.-1d2bM1.-1d2cM1.-1d2dM2.-1d2eM2.-1d2fM1.-1d2gM1.-1d2hM2.-1d2iM2.-1d2jM1.-1d2kM1.-1d2lM2.-1d2mM1.-1d2nM1.-1d2oM2.-1d2pM1.-1d2qM1.-1d2rM2.-1d2sM1.-1d2tM1.-1d2uM2.-1d2vM1.-1d2wM1.-1d2xM2.-1d2yM2.-1d2zM2.-1d30M2.-1d31M2.-1d32M1.-1d33M1.-1d34M2.-1d35M1.-1d36M1.-1d37M2.-1d38M1.-1d39M1.-1d3aM2.-1d3bM1.-1d3cM1.-1d3dM2.-1d3eM1.-1d3fM1.-1d3gM2.-1d3hM1.-1d3iM1.-1d3jM2.-1d3kM1.-1d3lM1.-1d3mM2.-1d3nM1.-1d3oM1.-1d3pM1.-1d3qM1.-1d3kM1.-1d3lM1.-1d3mM2.-1d3nM1.-1d3oM1.-1d3pM2.-1d3qM1.-1d3rM1.-1d3sM2.-1d3tM1.-1d3uM1.-1d3vM2.-1d3wM1.-1d3xM1.-1d3yM2.-1d3zM1.-1d40M1.-1d41M2.-1d42M1.-1d43M1.-1d44M2.-1d45M2.-1d46M2.-1d47M1.-1d48M1.-1d49M1.-1d4aT18k.17mT18k.17mT18k.17nT18k.17nT18k.17pT18k.17pT18k.17rT18k.17rX2I1X1Mw.-1ecgMq.-1ebkM10.-1ecgM2.-168qM1.-1eerM2.-14yeM1.-14yrM1.-14ruM1.-14s4M1.-14ueM1.-14udM1.-14ucM1.-14ubM1.-14uaM1.-14spM1.-14soM1.-14snM1.-14toM1.-14s4M1.-14unM1.-14umM1.-14ulM1.-14ukM2.-14ujM1.-14uiM1.-14uhM1.-14ugM1.-14ufM1.-14ueM1.-14udM1.-14ucM1.-14ubM1.-14uaM1.-14u9M1.-14u8M1.-14u6M1.-14u5M1.-14u4M6.-14u3M1.-14u1M1.-14tzM1.-14txM1.-14tvM5.-14ttM1.-14tsM1.-14trM6.-14tqM1.-14tpM1.-14tmM2.-14w5I1M2.-1b4xM1.-1b09M1.-1b4yM2.-1b09M3.-1b50M6.-1b0aM1.-1b4mM3.-1b57M1.-1b4jMa.-1b58X3M6.-1b35X2M6.-1b37X2M6.-1b39X2M3.-1b3bX3M2.-1ef2M1.-1eeuTw.lgM1.-1ef2M1.-1ef4M1.-183hX1M1.-178mM4.-17x5M1.-174dM1.-1737XhVcX1VqX1VjX1V2X1VfX2VeXyV3fX5V3X4V19X3V2gX1VdX3V1X1bV1aX3mVtX3V1dXfVsX4V10X9VuX5V17X5VuX1V11X4VeX16M14.14V3aX2VaX6M10.14X4V10X4V14X8V1gXbV1Mb.13X1Mf.13X1M7.13X1M2.13X1VbX1VfX1V7X1V2X3V1gXcV8nX9VmXaV8XoV1M2.-1fhtM1.-1fvhM1.-1fjfM1.-1fleX1M1.-1fj8M1.-i76M1.-1fj8M1.-1fjaM2.-1flhM1.-1a7wM1.-1fliM1.-1fldM1.-1fjbM1.-1fl9M1.-1flcM1.-1flfM1.-1fjtM1.-1fu6M1.-1fjuM1.-1flcM1.-1fkkM2.-1fjjM1.-1flbM1.16jsM1.-iz3M1.-1flcM1.16jqM1.-1fkiM1.16jpM1.-1fvuM2.-1fl9M1.-1fzoM1.-1fl8M1.16jlM2.-1fl7M1.-1fl6M1.-1fk3M1.-1fk6M1.-i86M1.-1fk7M1.-1fl3M1.-17b3X1M1.-1fkzM2.-1fkiM1.-1fktM3.-1fquM1.16j5M1.16joX1xV6X2V1X1V18X1V2X3V1X2VnX1V20X8V9X1cVjX1V2X5VxX3VrX5V1X1sV1kX4VkX2V1eX1V2X5V8X1V3X1VtX2V3X4VaX7V9X7V1sXwV13X4VcX9V1iX3VtX2VrX5VqX7V4XcV7X28V21X1jM1f.1sXdV1fX7V1aX8VaX6VgMm.wX3VtX8V2X5sVvX1V16X1V3X2V2XgV3X1jV18X8V16XmVqX12VsXkVnX9V26X4V10X9V1qX1V5XdVpX7VaX6V1hX1ViX8V13X9V2oX1VkXbViX1V1bX1qV7X1V1X1V4X1VfX1VbX6V1nX5VaX6V4X1V8X2V2X2VmX1V7X1V2X1V5X1VaX2V2X2V3X2V1X6V1X5V7X2V7X3V5XbVaX1V1X2V1X1V12X1VaX1V1X2V1X1V4X1VaX1V2X8V2XtV2kX1V5XuV20X8VaX4mV1iX2V12XyV1xXbVaX6VdXjV1mX6VaX6VkXsVrX2VfX4VnX55V1oX2sMw.wV1fXcV8X2V1X2V8X1V2X1VuX1V2X2VcX9VaX1yV8X2V1aX2VbXrV20X8V2bXdV21X7VaX52VyXeVaX6V9X1V19X1VeXaVtX3VwX2VmX1VeX21V7X1V2X1V18X3V1X1V2X1V9X8VaX6V6X1V2X1V11X1V2X1V6X7VaX8mVpX7VhX1V15X3VtX2dV1XfV1eXdVpnX2uV33X1V5XbV5gX218V2rXdVtsXgVmXaV32zX5Vg7X5a1V1mX1c6VftX7VvX1VaX4V29X1VaX6VuX2V6XaV1yXaVaX1V7X1VlX5VjXc0V1mX5iMw.wV1nX2tV23X4V1lX7VhX1sV5XbV2XeV4qgX8VyeX15VaX6w7V4X1V7X1V2X1V83XfV1XtV3X2V1XeV4X8Vb0X1s4V2zX5VdX3V9X7VaX2V4I4X318V5yMq.-2iydMa.-2j0gX6Vc4X24V1aX2VnX9V38X1oV6uXaV13X2V1hT2jx3.2jxhT2jx4.2jxhT2jx4.2jxh.2jxqT2jx4.2jxh.2jxrT2jx4.2jxh.2jxsT2jx4.2jxh.2jxtT2jx4.2jxh.2jxuVeI8V1sT2jzt.2jxhT2jzu.2jxhT2jzt.2jxh.2jxqT2jzu.2jxh.2jxqT2jzt.2jxh.2jxrT2jzu.2jxh.2jxrV16XlV1yX3eVkXcVkXcV2fX9VpX3rMq.-2kdbMq.-2ke1Mq.-2kerM7.-2kfhX1Mi.-2kfhMq.-2kg7Mq.-2kgxM1.-2khnX1M2.-2khnX2M1.-2khnX2M2.-2khnX2M4.-2khnX1M8.-2khnM4.-2kidX1M1.-2kidX1M7.-2kidX1Mb.-2kidMq.-2kj3Mq.-2kjtM2.-2kkjX1M4.-2kkjX2M8.-2kkjX1M7.-2kkjX1Mq.-2kl9M2.-2klzX1M4.-2klzX1M5.-2klzX1M1.-2klzX3M7.-2klzX1Mq.-2kmpMq.-2knfMq.-2ko5Mq.-2kovMq.-2kplMq.-2kqbMq.-2kr1Mq.-2krrMq.-2kshMq.-2kt7Mq.-2ktxMq.-2kunMq.-2kvdM1.-2kqbM1.-2kj2X2Mh.-2k8nM1.-2k8xM7.-2k8nM1.-2e9mMh.-2k9dM1.-2k9cM7.-2k9dM1.-2eahM1.-2k9zM1.-2k9xM1.-2k9wM1.-2k9lM1.-2k9rM1.-2k9tMh.-2ka9M1.-2kajM7.-2ka9M1.-2eb8Mh.-2kazM1.-2kayM7.-2kazM1.-2ec3M1.-2kblM1.-2kbjM1.-2kbiM1.-2kb7M1.-2kbdM1.-2kbfMh.-2kbvM1.-2kc5M7.-2kbvM1.-2ecuMh.-2kclM1.-2kckM7.-2kclM1.-2edpM1.-2kd7M1.-2kd5M1.-2kd4M1.-2kctM1.-2kczM1.-2kd1Mh.-2kdhM1.-2kdrM7.-2kdhM1.-2eegMh.-2ke7M1.-2ke6M7.-2ke7M1.-2efbM1.-2ketM1.-2kerM1.-2keqM1.-2kefM1.-2kelM1.-2kenMh.-2kf3M1.-2kfdM7.-2kf3M1.-2eg2Mh.-2kftM1.-2kfsM7.-2kftM1.-2egxM1.-2kgfM1.-2kgdM1.-2kgcM1.-2kg1M1.-2kg7M1.-2kg9M1.-2kfhM1.-2kfiX2Ma.-2l5qMa.-2l60Ma.-2l6aMa.-2l6kMa.-2l6uVi4XfV5X1VfXuoVvX6V6X5xV7X1VhX2V7X1V2X1V5X5M9.-2m0wM3.-2m0vMb.-2m0uM1.-2m0sM2.-2m0rM1.-1pz5M1.-2lwyM1.-2m0mM1.-2m0lM1.-2lwlM1.-2ly8M1.-2lxdM9.-2m1tM2.-2m1sM2.-2m1qM1.-2m1pM6.-2m1oM2.-2m1nM1.-2lzqM1.-2m1eM1.-2m1gM1.-2m17M1.-2lz4M1.-1q1nM1.-2lz0XxV1X34V19X3VeX2VaX4V2X8wVvXhV1mX5V1XcwV16X5yV17X4V1XdcV7X1V4X1V2X1VfX1V5hX2VgX15My.yV16X4VaX4V2XltV1wX24V1pX5eM2.-2od5M1.-2od2M1.-2od0X1M1.-2ocdM1.-2od0M1.-2od6M1.-2ocxM1.-2ocfM4.-2ocnM1.-2od7M1.-2od2M1.-2ocvM1.-2od8M1.-2ocwM1.-2odeM1.-2odcM2.-2odnM1.-2odlM1.-2odkM1.-2odfM1.-2odeM1.-2oddM1.-2obyM1.-2o9vM1.-2oalM1.-2oc0X1M1.-2oe1M1.-2odyX1M1.-2od9X2M1.-2oe2X1M1.-2odbM4.-2odjM1.-2oe3M1.-2odyM1.-2odrM1.-2oe4M1.-2odsX1M1.-2oe8M2.-2oejM1.-2oehX1M1.-2oebX1M1.-2oe9X6M1.-2oeuX4M1.-2oeyX1M1.-2oe7X1M1.-2oefX1M1.-2oefM1.-2oezM1.-2oeuX1M1.-2of0M1.-2oeoX1M1.-2of4X2M1.-2ofdX1M1.-2of7X1M1.-2of5X1M1.-2obnX1M1.-2odsX1M1.-2oftM1.-2ofqX1M1.-2of1X2M1.-2ofuM1.-2oflM1.-2of3M1.-2ofbX1M2.-2ofbM1.-2ofvM1.-2ofqM1.-2ofjM1.-2ofwM1.-2ofkX1M1.-2og0M2.-2ogbM1.-2og9X1M1.-2og3M1.-2og2M1.-2og1M1.-2oemX1M1.-2od9X1M2.-2ogpM1.-2ogmM1.-2ogkM2.-2ofxM1.-2ogkM1.-2ogqM1.-2oghM1.-2ofzX1M3.-2og7M1.-2ogrM1.-2ogmM1.-2ogfM1.-2ogsM1.-2oggM1.-2ogyM1.-2ogwM2.-2oh7M1.-2oh5M1.-2oh4M1.-2ogzM1.-2ogyM1.-2ogxX5M1.-2ohlM1.-2ohiM1.-2ohgX1M1.-2ogtM1.-2ohgM1.-2ohmM1.-2ohdM1.-2ogvX1M3.-2oh3M1.-2ohnM1.-2ohiM1.-2ohbM1.-2ohoM1.-2ohcM1.-2ohuM1.-2ohsM2.-2oi3M1.-2oi1M1.-2oi0M1.-2ohvM1.-2ohuM1.-2ohtX1gV2X7iV18X4V2sXcVfX2VfX1VfX1V11XbT1c.18T1d.18T1e.18T1f.18T1g.18T1h.18T1i.18T1j.18T1k.18T1l.18V5T14.2p.15T14.2q.15T14.2r.15T14.2s.15T14.2t.15T14.2u.15T14.2v.15T14.2w.15T14.2x.15T14.2y.15T14.2z.15T14.30.15T14.31.15T14.32.15T14.33.15T14.34.15T14.35.15T14.36.15T14.37.15T14.38.15T14.39.15T14.3a.15T14.3b.15T14.3c.15T14.3d.15T14.3e.15T9hw.37.9hxM1.-2q4oM1.-2q4aT2r.2sT3b.3eV1Mq.-2q4vT2w.3aT31.3aT37.2sT37.37T34.34.3aT3b.2rVqT31.2rT31.2sT31.36VzT2s.2yVtX1kVqT9kr.9jfT9mb.9mbM1.-2gr1XdM1.-26ytM1.-28caM1.-29tyM1.-2gr0M1.-2avcM1.-28sbM1.-1z5fM1.-28ryM1.-2ausM1.-267tM1.-241lM1.-26bmM1.-2a4vM1.-27ipM1.-2aa9M1.-26b3M1.-2a6bM1.-21njM1.-239fM1.-1ym2M1.-28twM1.-29rgM1.-24giM1.-26xeM1.-26s3M1.-2aztM1.-2azlM1.-1xwhM1.-27uuM1.-2ayoM1.-29tnM1.-26ugM1.-1ygwM1.-26ziM1.-22epM1.-227tM1.-29t8M1.-24l1M1.-2625M1.-2627M1.-239hM1.-2a4nM1.-29hgM1.-1xpqX4T9hw.kdo.9hxT9hw.fex.9hxT9hw.fik.9hxT9hw.i2x.9hxT9hw.m9l.9hxT9hw.jf7.9hxT9hw.nh3.9hxT9hw.gd9.9hxT9hw.k0n.9hxX7M1.-27jtM1.-29uqXeV6X4aVrcX4VhX3VdX3V3bX4V2nX6VcX4V1XfVcX4V1kX8VaX6V14X8VuX2VcX4V2X1qV9gXcVeX2VdX3VaX5V1kX7VfX2VbX6V9X7V43X1V2kMa.-2saoXsmVwyoXwV37eX6V66X2V4g2XeV5rlXfVhaX1wiM1.-3qo3M1.-3qo9M1.-3qo1M1.-1crlM1.-3qg4M1.-3qdzM1.-3qdnM1.-3qbpM1.-3q8eM1.-3q7kM1.-3q5fM1.-3q64M1.-3vqmM1.-1brnM1.-3q2pM1.-3q2jM1.-3q24M1.-3q1mM1.-1bzqM1.-3vq2M1.-3q25M1.-3q14M1.-1byjM1.-3q0wM1.-3q0kM1.-3qktM1.-3q0eM1.-3q06M1.-k71M1.-3pygM1.-3py3M1.-3vpcM1.-3pwlM1.-3pwbM1.-3pv4M1.-3pv0M1.-3vnzM1.-3psuM1.-3pstM1.-3ps3M1.-3priM2.-3pr8M1.-3pqsM1.-3ppfM1.-3pp8M1.-3pp0M1.-3pocM1.-3po3M1.-3po2M1.-3po3M1.-3po4M1.-1b0oM1.-3jydM1.-3pm4M1.-3plkM1.-1as5M1.-3plaM1.-3pl5M1.-3pklM1.-3pgeM1.-3pj9M1.-3piuM1.-3phzM1.-3pgeM1.-3pe3M1.-3pdeM1.-3pbkM1.-3pb5M1.-3pa9M1.-3paaM1.-3p9qM1.-3p99M1.-3p92M1.-3p8oM1.-3oz9M1.-3p6uM1.-3ozaM1.-3p4tM1.-3p3vM1.-3pzdM1.-3ombM1.-3oucM1.-3otbM1.-3osnM1.-3owaM1.-3oroM1.-3orqM1.-3oocM1.-18xhM1.-3omgM1.-3omcM1.-3olyM1.-3olfM1.-3ol8M1.-3ojhM1.-18l4M1.-18jbM1.-3ofqM1.-3oegM1.-3oe5M1.-3ogdM1.-3ocgM1.-3vcpM1.-3vccM1.-3o81M1.-3o6kM1.-3o6lM1.-17z8M1.-3o2yM1.-3o2eM1.-3o20M1.-3o1pM1.-17q1M1.-3o1fM1.-3o19M1.-3ndtM1.-3o0jM1.-3v91M1.-3nyvM1.-3nyiM1.-3nw9M1.-3nxpM1.-176fM1.-3nspM1.-176fM1.-3nrkM1.-3nroM1.-3nr8M2.-3nogM1.-3v4kM1.-3nnrM1.-3nmlM1.-3nm1M1.-3nkuM1.-3v3aM1.-16h2M1.-3v2mM1.-3nizM1.-3nixM1.-3nivM1.-3nicM1.-gsdM1.-3ngyM1.-165cM1.-165dM1.-3gk2M1.-3ng2M1.-3ng3M1.-3v0vM1.-1333M1.-tryM1.-3nefM1.-3ne7M1.-3v08M1.-3ncyM1.-3nbkM1.-3nbbM1.-3naeM1.-3n6nM1.-3uxzM1.-3uyuM1.-3n67M1.-15g0M1.-3n4uM1.-3n1aM1.-3n17M1.-3n16M1.-3n19M1.-3n00M1.-3mzhM1.-3myiM1.-3myxM1.-3mynM1.-3mxdM1.-3mwuM1.-3mwrM1.-3mw2M1.-3mvsM1.-3mtzM1.-3mroM1.-3mqqM1.-3mnbM1.-14mkM1.-3mnwM1.-3mpqM1.-3mmrM1.-3mm1M1.-3mjdM1.-14gdM1.-3mhpM1.-3mkbM1.-3ml4M1.-3us4M1.-3mfuM1.-3mfaM1.-3megM1.-3mfjM1.-3uqjM1.-3m9lM1.-3m8tM1.-13nkM1.-3m5kM1.-3lxwM1.-3m2sM1.-3ulxM1.-3m0uM1.-3umgM1.-3unhM1.-3q68M1.-3q66M1.-3lxwM1.-3m0pM1.-3gvdM1.-3svyM1.-3lxdM1.-3lxaM1.-3lx5M1.-3lvhM1.-3lvtM1.-12xmM1.-3ul1M1.-3lr9M1.-3lujM1.-3lovM1.-3lnhM1.-12t2M1.-3lnaM1.-3lqeM1.-3ljmM1.-3uiyM1.-3lieM1.-3lfqM1.-3ldsM1.-3l8jM1.-12dlM1.-3l76M1.-3ufqM1.-3l5aM1.-11zdM1.-3l3xM1.-3uecM1.-3l35M1.-3l1xM2.-3l17M1.-11m2M1.-17fxM1.-11j3M1.-3kx8M1.-116nM1.-3ku5M1.-3ktsM1.-3kwnM1.-3krtM1.-3kqqM1.-3kp6M1.-3kqpM1.-3kpmM1.-3kp8M1.-3kowM1.-1148M1.-3kr7M1.-3kk9M1.-3kijM1.-3u8nM1.-3kg0M1.-3kg5M1.-10scM1.-3klxM1.-3kblM1.-10oiM1.-10n7M1.-3k98M1.-3k62M1.-3k6uM1.-3k6yM1.-3u68M1.-3k5pM1.-3k4bM1.-3k4iM1.-3k31M1.-1c6uM1.-3jyvM1.-103eM1.-3jwiM1.-zucM1.-3jsoM1.-3jscM1.-3jrmM1.-zdnM1.-3jqcM1.-3jpsM1.-z5dM1.-yz7M1.-3jjiM1.-3jj2M1.-3tz2M1.-3jieM1.-3tysM1.-3tytM1.-3jdzM1.-3jdfM1.-3jcvM1.-3jccM1.-3jagM1.-3tw8M1.-3j80M1.-y67M1.-3j7cM1.-y3pM1.-3j60M1.-16l6M1.-3j1mM1.-xi2M1.-xhgM1.-xdlM1.-3tqaM1.-3tpzM1.-3ivgM1.-x8uM1.-x8wM1.-x7uM1.-x75M2.-3iufM1.-3iugM1.-3itaM1.-3towM1.-3irjM1.-3tolM1.-3tmeM1.-wmoM1.-3im8M1.-3ikjM1.-3iisM1.-3tkeM1.-w8cM1.-3if1M1.-w56M1.-w40M1.-3idjM1.-3ib0M1.-3tihM1.-3i8pM1.-3i8gM1.-3i8cM1.-vkwM1.-vcmM1.-vcnM1.-3i41M1.-3tcuM1.-v5iM1.-3hy4M1.-3hy2M1.-3tbxM1.-uzpM1.-3hqsM1.-3t8nM1.-3hq8M1.-3hqeM1.-3hpmM1.-uedM1.-3hmxM1.-3t64M1.-3hk7M1.-3hilM1.-3hgrM1.-3t4tM1.-tvuM1.-tv0M1.-3t3vM1.-tr0M1.-3h8cM1.-to9M1.-3h7nM1.-3h4vM1.-3h4lM1.-tcxM1.-taxM1.-3h25M1.-t7aM1.-3h1rM1.-134xM1.-3t0sM1.-3h00M1.-3gxsM1.-3szdM1.-3gw7M1.-3oi9M1.-stcM1.-sszM1.-133qM1.-133iM1.-3gqyM1.-3gqwM1.-3e27M1.-3swzM1.-3gn2M1.-3gn9M1.-3gmsM1.-3q3jM1.-3gmaM1.-3gm9M1.-3gm0M1.-3gkwM1.-s4bM1.-3gkzM1.-3gjgM1.-3ghjM1.-3gfiM1.-3gjdM1.-3gf4M1.-3gdzM1.-3gawM1.-3gi5M1.-3gevM1.-3geuM1.-3gefM1.-rxqM1.-rp6M1.-rtdM1.-3sscM1.-3g6vM1.-3g6uM1.-3g5wM1.-qg1M1.-3g3sM1.-rcxM1.-3sr5M1.-3sr2M1.-r9bM1.-r1bM1.-3sqvM1.-3fxfM1.-3fx4M1.-3fwuM1.-3fwtM1.-3fv2M1.-3fw0M1.-3fsbM1.-3ftkM1.-3fpeM1.-3froM1.-3fpuM1.-3fp4M1.-3so8M1.-3fmnM1.-3flsM1.-3sndM1.-3fj7M1.-3fj5M1.-py6M1.-3ffzM1.-3fftM1.-3slvM1.-3ff3M1.-3w27M1.-pi5M1.-pd2M1.-3si7M1.-3shzM1.-3f3jM1.-3f1fM1.-3ex3M1.-3erhM1.-oq3M1.-3ep5M1.-3eokM1.-3em3M1.-3ejkM1.-o89M1.-1brpM1.-3ehbM1.-3ehrM1.-3egcM1.-1blrM1.-3ea2M1.-3e7bM1.-mxaM1.-mwkM1.-3dxqM1.-3dv6M1.-3dubM1.-mnrM1.-3du3M1.-3dm7M2.-3dhtM1.-3dkeM1.-3d9uM1.-3d93M1.-lpvM1.-3cyrM1.-3ryyM1.-3cxlM1.-lfeM1.-3rwsM1.-3cq8M1.-3o02M1.-3cnmM1.-kohM1.-kilM1.-3rt6M1.-3rszM1.-3ciiM1.-k4xM1.-3rreM1.-k13M1.-3chfM1.-3chgM1.-3cgnM1.-jt7M1.-3cbkM1.-3ro0M1.-3c9nM1.-3c66M1.-3c5gM1.-3c3tM1.-3rjuM1.-iqhM1.-3bw8M1.-3bnvM1.-3binM1.-3rcvM1.-3rc1M1.-3bfsM1.-hmqM1.-3rbtM1.-hl9M1.-hdxM1.-habM1.-3b6iM1.-3r9cM1.-3b4uM1.-3b4qM1.-3b4kM1.-3b4bM1.-3b45M1.-3b35M1.-gm5X15uV3t7X5V38gXf9e8I6oX47bk";
7
+ const BIDI = "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";
8
+ const JOINING = "U4tT1UgiT34U7nT7U7bT19U1T1U1T2U1T2U1T1U20TbU1T1U3D1U1R4D1R1D1R1D5R4DdC1D7R1D2TlUeD2T1R3U1R3DgRiD12R1D2R9D1R1D1R1D2R2U1R1T7U2T6U2T2U1T4R2UaD3U2D1UfT1R1T1D3R5D4R1D9R1D1R1D1R1D2R1TrU2R1DbR3DfR2D4R1D1R2D3R2D6U12TbUpDxT9U6C1U2T1UoT4U1T9U1T3U1T5UiR1D5R2D1R1DaR1D1R3T3U4D1U1D4U1R1D1R2U5RjC3D1U2D5R1U8T9DaR3U1R1D2R2D6R1DfU1ToU1TwU1jT1U1T1U4T8U4T1U3T7UaT2UtT1U1mT1U4T4U8T1UkT2UqT1U2T2U1lT1U4T2U4T2U2T3U3T1UuT2U3T1UbT2U1lT1U4T5U1T2U4T1UkT2UmT6U1T1U1mT1U2T1U1T4U8T1U7T2UbT2UuT1U1pT1UcT1U1eT1U3T1U1jT1U1T3U5T3U1T4U7T2UbT2UtT1U1mT1U2T1U6T1U5T2UkT2UsT2U1lT2U4T4U8T1UkT2UtT1U20T1U7T3U1T1U2iT1U2T7UcT8U2qT1U2T9UbT7U21T2UrT1U1T1U1T1U1jTeU1T5U1T2U5TbU1T10U9T1U2uT4U1T6U1T2U2T2UpT2U4T3UgT4UdT1U2T2U6T1UfT1UjjT3UqaT3UtT2UuT2UuT2U1sT2U1T7U8T1U2TbU9T1U15D1U2C1T3U1T1UgD2hUcT2DyT1D1U39T3U4T2U9T1U6T3U63T2U2T1U1mT1U1T7U1T1U1T1U2T8U6TaU2T1U1cTvU1dT4U1cT1U1T5U1T1U5T1U14T9UcT2UwT4U2T2U1T3U1kT1U1T2U3T1U1T3U1mT8U2T2U48T3U1TdU1T7U4T1U6T1U3T2U5iT1sUejT1U1C1T2UqT5U1dT5U5T6U2oTxU2daT3U3xT1U2oTwUfeT4U2zT2Un9wT4U1TaUwT2U28T2U7kT1U3T1U4T1UpT2U5T1UjD1eL1U29T2UqTiUdT1U12T8UpTbU1aT3U1cT1U2T4U2T2U13T1U1vT6U2T2U2T2UcT1U8T1U1bT1U1fT1U1T3U2T2U5T2U1T1U16T2U8T1U6mT1U2T1U4T1Ufn4T1UkhTgUgTgU5rT1U6xT3Ue9T1U6aT1U45T5U1aeT3U1T2U5T4U14T3U4T1U3kD5R1U1R1U1R2U2L1R5D4L1D5R1D3R1U2R1T2U4D4R1U40D1R1D1R3D3R1D2R1D1R2D1R1UnR4D2U9dL1DxR1D1T4U1tT5U8tT2UlR1D2U1jT4U1cD3R1DhU1TbD3R1UrD4R2DcT4U16D1U1D2R3U1D1R2D2R1D2U1D1R2D1U4R1D1L1U1hT1U1iTfU15T1U2T2UaT3U1dT4U2T2U7T1U1pT3U10T5U1T8U1qT1UcT2U1gT9UaT4U2T1U2nT3U2T1U1T2U6T1U2T1U4dT1U3T8UlT2U1lT2U3T1U11T7U3T5U1yT6UdT1U1T1U1T1UeT2U2dT8U2T3U1T1UnT1U2cT6U1T1U4T2U1T2U6mT4U6T2U1T2UrT2U2dT8U2T1U1T2U2yT1U1T1U2T6U1T1U2tT1U1T1U2T4U1T5U77T9U1T2U74T2U1T1U4T1U40T4U2T2U4T1UwTaU14T6U2T4U8T1U9T6U2T3U1aTdU1T2UbaT7U1T6U1T1U2aTmU2T7U1T2U1T2U3eT6U3T1U1T2U1T7U1T1U20T2U3T1U1T1U9nT2UbT2U1gT5U5T1U1T1UnT1U445ThU6TfU8ugTcU3T3U1xcT5U1nT7Ut4T1U1rT4U29T1Uf5kT2U1T4U3mkT1aU2TnUf4T3U9TgU2T7UuT4U44T3U1izT1jU4T1eU8T1UeT1UmT5U1TfU11sT7U1ThU2T7U1T2U1T5U2sT1U4gT7UafT1U1pT4Ue4T4U72T2UkgT7U15D1wT8UgzatT1UuT2oU3kT6o";
9
+ const VIRAMA = "N1u5V1N3jV1N3jV1N3jV1N3jV1N3jV1N3jV1N3jV1N31V2NgV1N3gV1N33V1N3jV1N5lV1N50V2N1cpV2NuV1N4dV1Ni5V1N6bV1N2tV2N1yV2N3grV1No7aV1N11V1N47V1N3yV1N30V1N8lV1N6uV1NimpV1N16uV1N15V1NeV1N1lV1N3dV2N3vV1N38V1N50V1N2qV1N3kV3N35V1N3jV1N70V1N3jV1N3aV1N38V1N7hV1N77V2N4hV1N2bV1NiV1N29V1NbpV1N78V2N29V1NbtV2Nd0sV1";
10
+ const MARK = "NlcM34N7nM7N7bM19N1M1N1M2N1M2N1M1N20MbN1cMlNgM1N2tM7N2M6N2M2N1M4NzM1NuMrN2jMbN1mM9N9M1NoM4N1M9N1M3N1M5N17M3N1nM9N16MoN1MxN1iM3N1MiN1M7NaM2NtM3N1kM1N1M7N2M2N2M3N9M1NaM2NqM1N2M3N1kM1N1M5N4M2N2M3N3M1NuM2N3M1NbM3N1kM1N1M8N1M3N1M3NkM2NmM6N1M3N1kM1N1M7N2M2N2M3N7M3NaM2NuM1N1nM5N3M3N1M4N9M1N14M5N1jM1N1M7N1M3N1M4N7M2NbM2NtM3N1kM1N1M7N1M3N1M4N7M2NbM2NfM1NcM4N1jM2N1M7N1M3N1M4N9M1NaM2NtM3N1yM1N4M6N1M1N1M8NiM2N1pM1N2M7NcM8N2qM1N2M9NbM7N21M2NrM1N1M1N1M1N4M2N1dMkN1M2N5MbN1M10N9M1N2sMkNnM4N4M3N1M3N2M7N3M4NdMcN1M1NaM4NjjM3NqaM4NsM3NtM2NuM2N1sMwN9M1N19M3N1M1N39M2NyM1N3aMcN4McN63M5N1lMaN1MtN2M1N1cMvN1dM5N1bMhN12M9NcM3NuMdN1kMeN1cMkN48M3N1MlN4M1N6M1N2M3N5iM1sNk0MxN2daM3N3xM1N2oMwNfeM6N2xM2Nn9wM4N1MaNwM2N28M2N7kM1N3M1N4M1NnM5N4M1N2bM2N1eMiNqMiNdM1N12M8NpMdN18M4N1bMeN10M1N1vMeNcM1N8M2N19M3N1eM1N1M3N2M2N5M2N1M1N15M5N5M2N6kM8N1M2Nfn4M1NkhMgNgMgNr1M1N6aM1N45M5N1aeM3N1M2N5M4N14M3N4M1N4lM2NfxM4N1tM5N8tM2N27M4N1yMbN1dM4N3eM3N1hMfN15M1N2M2NaM4N19MbN7M1N1pM3N10MeNgM2N18M1NcM3N1cMeN8M4N1M2N2kMcN6M1N2M1N4dMcNlM4N1jM2N1M7N2M2N2M3N9M1NaM2N2M7N3M5N1vM9N1M1N2M1N1M4N1M5N1M1NeM2N2aMiNnM1N29MkN6jM7N2M9NrM2N2aMhN2yMdN2tMfN74MfN6tM6N1M2N2M4N1M1N1M2N3xM7N2M7N3M1NsMaN14M7N1M4N8M1N9MbN1aMgNb9M8N1M8N2aMmN1MeN3eM6N3M1N1M2N1M7N1M1N1uM5N1M2N1M5N9nM4N9M2N1M1N1cM7N3M5NnM1N44lM1N6MfN8ugMiN1xcM5N1nM7Nt4M1N1M1jN7M4N29M1NbM2Nf57M2N3mpM1aN2MnNf2M5N3M6N8M8N2M7NuM4N44M3N1izM1jN4M1eN8M1NeM1NmM5N1MfN11sM7N1MhN2M7N1M2N1M5N2sM1N4gM7NafM1N1pM4Ne4M4N72M2NkgM7N31M7NgzhxM6o";
11
+ const SCRIPTS = "NogG4N1G3N2G4N1G1N4G1N1G1N1G3N1G1N1GkN1G1rNeGgNb5H1jN8HrN4H6N4kxG5N1eG5N4G5N2cG1N8wGmN2G6N2G12N2G6N2G8N1G1N1G1N1G1N1GvN2G1hN1GfN1GeN2G6N1GjN2G3N1G9N87G1N2mxJqN1J2hNcJ5yN1bJ1N1J1NpJ9NeJ4N5J2eN6J3N1J2iN2J3N6oJgN5sJ1bN1J2gN4oJ534N1sJg74N291G1NfbuJa6N2J2yN1vHqN1H5N1H1N1H2N1H2N1HaNt2JaN1J19NbmG27NhG1Nls1J2NcJ2Ncn2J4N1J7N1J2N1J83NfJ1NtJ3N2J1NeJ4N6fsG1yN69mJ1N2rjJwyoNwJ37eN6J66N2J4g2NeJ5rlNfJhaN1wiJf2N15uJ3t7N5J38g";
12
+
13
+ //#endregion
14
+ //#region src/idna/tables.ts
15
+ const TOKEN = /([A-Z])([^A-Z]*)/g;
16
+ const runCache = /* @__PURE__ */ new Map();
17
+ let mapping;
18
+ function runs(text) {
19
+ let cached = runCache.get(text);
20
+ if (cached === void 0) {
21
+ const starts = [];
22
+ const vals = [];
23
+ let at = 0;
24
+ for (const [, letter = "", length = ""] of text.matchAll(TOKEN)) {
25
+ starts.push(at);
26
+ vals.push(letter);
27
+ at += Number.parseInt(length, 36);
28
+ }
29
+ starts.push(at);
30
+ cached = {
31
+ starts,
32
+ vals
33
+ };
34
+ runCache.set(text, cached);
35
+ }
36
+ return cached;
37
+ }
38
+ function search(starts, cp) {
39
+ let lo = 0;
40
+ let hi = starts.length - 1;
41
+ while (lo < hi) {
42
+ const mid = lo + hi + 1 >> 1;
43
+ if ((starts[mid] ?? 0) <= cp) lo = mid;
44
+ else hi = mid - 1;
45
+ }
46
+ return lo;
47
+ }
48
+ function runAt(text, cp, fallback) {
49
+ const { starts, vals } = runs(text);
50
+ if (cp >= (starts[starts.length - 1] ?? 0)) return fallback;
51
+ return vals[search(starts, cp)] ?? fallback;
52
+ }
53
+ function numbers(text) {
54
+ return text === "" ? [] : text.split(".").map((n) => Number.parseInt(n, 36));
55
+ }
56
+ function mappingTable() {
57
+ if (mapping === void 0) {
58
+ const starts = [];
59
+ const kinds = [];
60
+ const data = [];
61
+ let at = 0;
62
+ for (const [, kind = "", body = ""] of MAPPING.matchAll(TOKEN)) {
63
+ starts.push(at);
64
+ kinds.push(kind);
65
+ if (kind === "V" || kind === "I" || kind === "X") {
66
+ data.push([]);
67
+ at += Number.parseInt(body, 36);
68
+ } else if (kind === "M" || kind === "P") {
69
+ const [length = 0, offset = 0] = numbers(body);
70
+ data.push([offset]);
71
+ at += kind === "M" ? length : length * 2;
72
+ } else {
73
+ data.push(numbers(body));
74
+ at += 1;
75
+ }
76
+ }
77
+ starts.push(at);
78
+ mapping = {
79
+ starts,
80
+ kinds,
81
+ data
82
+ };
83
+ }
84
+ return mapping;
85
+ }
86
+ /** Looks up the UTS #46 status of one code point. */
87
+ function codePointStatus(cp) {
88
+ const { starts, kinds, data } = mappingTable();
89
+ const i = search(starts, cp);
90
+ const kind = kinds[i];
91
+ const values = data[i] ?? [];
92
+ if (kind === "V") return { status: "valid" };
93
+ if (kind === "I") return { status: "ignored" };
94
+ if (kind === "M") return {
95
+ status: "mapped",
96
+ to: [cp + (values[0] ?? 0)]
97
+ };
98
+ if (kind === "P") return (cp - (starts[i] ?? 0)) % 2 === 0 ? {
99
+ status: "mapped",
100
+ to: [cp + (values[0] ?? 0)]
101
+ } : { status: "valid" };
102
+ if (kind === "T") return {
103
+ status: "mapped",
104
+ to: values
105
+ };
106
+ if (kind === "E") return {
107
+ status: "deviation",
108
+ to: values
109
+ };
110
+ return { status: "disallowed" };
111
+ }
112
+ const bidiClass = (cp) => runAt(BIDI, cp, "L");
113
+ const joiningType = (cp) => runAt(JOINING, cp, "U");
114
+ const isVirama = (cp) => runAt(VIRAMA, cp, "N") === "V";
115
+ const isMark = (cp) => runAt(MARK, cp, "N") === "M";
116
+ const scriptOf = (cp) => runAt(SCRIPTS, cp, "N");
117
+
118
+ //#endregion
119
+ //#region src/idna/process.ts
120
+ const PREFIX = "xn--";
121
+ const LTR_OK = /^[LESCTOBM]*$/;
122
+ const RTL_OK = /^[RANESCTOBM]*$/;
123
+ function flagsOf(o) {
124
+ const strict = o.beStrict === true;
125
+ return {
126
+ std3: o.useSTD3ASCIIRules ?? strict,
127
+ hyphens: o.checkHyphens ?? strict,
128
+ bidi: o.checkBidi ?? true,
129
+ joiners: o.checkJoiners ?? true,
130
+ contextO: o.checkContextO ?? false,
131
+ transitional: o.transitionalProcessing ?? false,
132
+ dns: o.verifyDnsLength ?? strict,
133
+ ignorePunycode: o.ignoreInvalidPunycode ?? false
134
+ };
135
+ }
136
+ function isAscii(text) {
137
+ for (let i = 0; i < text.length; i++) if ((text.codePointAt(i) ?? 0) > 127) return false;
138
+ return true;
139
+ }
140
+ function mapDomain(domain, transitional) {
141
+ let out = "";
142
+ for (const ch of domain) {
143
+ const cp = ch.codePointAt(0) ?? 0;
144
+ if (cp < 128) {
145
+ out += cp >= 65 && cp <= 90 ? String.fromCodePoint(cp + 32) : ch;
146
+ continue;
147
+ }
148
+ if (transitional && cp === 7838) {
149
+ out += "ss";
150
+ continue;
151
+ }
152
+ const entry = codePointStatus(cp);
153
+ if (entry.status === "mapped" || entry.status === "deviation" && transitional) out += String.fromCodePoint(...entry.to);
154
+ else if (entry.status !== "ignored") out += ch;
155
+ }
156
+ return out;
157
+ }
158
+ function checkJoiners(cps, errors) {
159
+ for (const [i, cp] of cps.entries()) {
160
+ if (cp !== 8204 && cp !== 8205) continue;
161
+ const code = cp === 8204 ? "C1" : "C2";
162
+ if (i > 0 && isVirama(cps[i - 1] ?? 0)) continue;
163
+ if (cp === 8205) {
164
+ errors.add(code);
165
+ continue;
166
+ }
167
+ let before = i - 1;
168
+ while (before >= 0 && joiningType(cps[before] ?? 0) === "T") before -= 1;
169
+ let after = i + 1;
170
+ while (after < cps.length && joiningType(cps[after] ?? 0) === "T") after += 1;
171
+ const left = before >= 0 ? joiningType(cps[before] ?? 0) : "";
172
+ const right = after < cps.length ? joiningType(cps[after] ?? 0) : "";
173
+ if (!(left === "L" || left === "D") || !(right === "R" || right === "D")) errors.add(code);
174
+ }
175
+ }
176
+ function checkBidiLabel(classes, errors) {
177
+ const first = classes[0];
178
+ const end = classes.replace(/M+$/, "").slice(-1);
179
+ if (first === "R" || first === "A") {
180
+ if (!RTL_OK.test(classes)) errors.add("B2");
181
+ if (!"RAEN".includes(end)) errors.add("B3");
182
+ if (classes.includes("E") && classes.includes("N")) errors.add("B4");
183
+ } else if (first === "L") {
184
+ if (!LTR_OK.test(classes)) errors.add("B5");
185
+ if (end !== "L" && end !== "E") errors.add("B6");
186
+ } else errors.add("B1");
187
+ }
188
+ function checkContextO(cps, errors) {
189
+ const hasKana = cps.some((cp) => scriptOf(cp) === "J");
190
+ const arabicIndic = cps.some((cp) => cp >= 1632 && cp <= 1641);
191
+ const extended = cps.some((cp) => cp >= 1776 && cp <= 1785);
192
+ if (arabicIndic && extended) errors.add("O1");
193
+ for (const [i, cp] of cps.entries()) {
194
+ const prev = cps[i - 1] ?? 0;
195
+ const next = cps[i + 1] ?? 0;
196
+ if (cp === 183 && !(prev === 108 && next === 108)) errors.add("O1");
197
+ else if (cp === 885 && scriptOf(next) !== "G") errors.add("O1");
198
+ else if ((cp === 1523 || cp === 1524) && scriptOf(prev) !== "H") errors.add("O1");
199
+ else if (cp === 12539 && !hasKana) errors.add("O1");
200
+ }
201
+ }
202
+ function validate(label, flags, nontransitional, bidiDomain, errors) {
203
+ if (label === "") return;
204
+ if (label.normalize("NFC") !== label) errors.add("V1");
205
+ const cps = Array.from(label, (ch) => ch.codePointAt(0) ?? 0);
206
+ if (flags.hyphens) {
207
+ if (cps[2] === 45 && cps[3] === 45) errors.add("V2");
208
+ if (label.startsWith("-") || label.endsWith("-")) errors.add("V3");
209
+ }
210
+ if (label.startsWith(PREFIX)) errors.add("V4");
211
+ if (label.includes(".")) errors.add("V5");
212
+ if (isMark(cps[0] ?? 0)) errors.add("V6");
213
+ for (const cp of cps) {
214
+ if (cp < 128) {
215
+ if (cp >= 65 && cp <= 90) errors.add("V7");
216
+ if (flags.std3 && !(cp === 45 || cp >= 48 && cp <= 57 || cp >= 97 && cp <= 122)) errors.add("U1");
217
+ continue;
218
+ }
219
+ const { status } = codePointStatus(cp);
220
+ if (status !== "valid" && !(status === "deviation" && nontransitional)) errors.add("V7");
221
+ }
222
+ if (flags.joiners) checkJoiners(cps, errors);
223
+ if (flags.bidi && bidiDomain) checkBidiLabel(cps.map(bidiClass).join(""), errors);
224
+ if (flags.contextO) checkContextO(cps, errors);
225
+ }
226
+ function decodeLabel(label, flags, errors) {
227
+ if (!label.text.startsWith(PREFIX)) return;
228
+ if (!isAscii(label.text)) {
229
+ errors.add("P4");
230
+ label.skip = true;
231
+ return;
232
+ }
233
+ let decoded;
234
+ try {
235
+ decoded = punycodeDecode(label.text.slice(4));
236
+ } catch {
237
+ if (!flags.ignorePunycode) errors.add("P4");
238
+ label.skip = true;
239
+ return;
240
+ }
241
+ label.text = decoded;
242
+ label.decoded = true;
243
+ if (decoded === "" || isAscii(decoded)) errors.add("P4");
244
+ }
245
+ function isRtl(text) {
246
+ for (const ch of text) {
247
+ const cls = bidiClass(ch.codePointAt(0) ?? 0);
248
+ if (cls === "R" || cls === "A" || cls === "N") return true;
249
+ }
250
+ return false;
251
+ }
252
+ function run(domain, options, ascii) {
253
+ const flags = flagsOf(options);
254
+ const errors = /* @__PURE__ */ new Set();
255
+ const labels = mapDomain(domain, flags.transitional).normalize("NFC").split(".").map((text) => ({
256
+ text,
257
+ decoded: false,
258
+ skip: false
259
+ }));
260
+ for (const label of labels) decodeLabel(label, flags, errors);
261
+ const bidiDomain = flags.bidi && labels.some((label) => !label.skip && isRtl(label.text));
262
+ for (const label of labels) if (!label.skip) validate(label.text, flags, label.decoded || !flags.transitional, bidiDomain, errors);
263
+ let texts = labels.map((label) => label.text);
264
+ if (ascii) texts = texts.map((text) => {
265
+ if (isAscii(text)) return text;
266
+ if (!text.isWellFormed()) {
267
+ errors.add("A3");
268
+ return text;
269
+ }
270
+ return PREFIX + punycodeEncode(text);
271
+ });
272
+ if (flags.dns) {
273
+ if (ascii) {
274
+ const root = texts.length > 1 && texts[texts.length - 1] === "";
275
+ const length = texts.slice(0, root ? -1 : void 0).join(".").length;
276
+ if (length < 1 || length > 253) errors.add("A4_1");
277
+ if (texts.some((text) => text.length < 1 || text.length > 63)) errors.add("A4_2");
278
+ } else if (texts.some((text, i) => text === "" && (i < texts.length - 1 || i === 0))) errors.add("X4_2");
279
+ }
280
+ return {
281
+ result: texts.join("."),
282
+ errors: [...errors].toSorted()
283
+ };
284
+ }
285
+ /** UTS #46 ToASCII: maps, normalizes, validates and Punycode-encodes `domain`, and reports every error code instead of throwing. `result` is produced even when `errors` is not empty. */
286
+ function idnaToAsciiResult(domain, options = {}) {
287
+ return run(domain, options, true);
288
+ }
289
+ /** UTS #46 ToUnicode: maps, normalizes, validates and decodes the `xn--` labels of `domain`, and reports every error code instead of throwing. */
290
+ function idnaToUnicodeResult(domain, options = {}) {
291
+ return run(domain, options, false);
292
+ }
293
+ function unwrap(fn, domain, { result, errors }) {
294
+ if (errors.length > 0) throw new RangeError(`${fn}: ${JSON.stringify(domain)} is not valid (${errors.join(", ")})`);
295
+ return result;
296
+ }
297
+ /**
298
+ * UTS #46 ToASCII with the full Unicode 16 status table. Unlike `domainToAscii` in `cizgile/uri` it knows every valid, ignored, mapped, deviation and disallowed code point, and checks CONTEXTJ and the bidi rule.
299
+ * @throws {RangeError} when processing records an error; the message lists the codes.
300
+ */
301
+ function idnaToAscii(domain, options = {}) {
302
+ return unwrap("idnaToAscii", domain, idnaToAsciiResult(domain, options));
303
+ }
304
+ /**
305
+ * UTS #46 ToUnicode with the full Unicode 16 status table.
306
+ * @throws {RangeError} when processing records an error; the message lists the codes.
307
+ */
308
+ function idnaToUnicode(domain, options = {}) {
309
+ return unwrap("idnaToUnicode", domain, idnaToUnicodeResult(domain, options));
310
+ }
311
+
312
+ //#endregion
313
+ export { IDNA_UNICODE_VERSION, codePointStatus, idnaToAscii, idnaToAsciiResult, idnaToUnicode, idnaToUnicodeResult };
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { i as LocaleId, n as LatinLocaleId, o as TransliterationTable, r as Locale } from "./shared/types-DbyhfPRc.mjs";
1
+ import { i as LocaleId, n as LatinLocaleId, o as TransliterationTable, r as Locale } from "./shared/types-D5P1JMcX.mjs";
2
2
  //#region src/slug/bidi.d.ts
3
3
  /** RFC 3987 section 4.2: whether `text` can be a URL component without mixing text directions in a way that renders ambiguously. */
4
4
  export declare function isBidiSafeComponent(text: string): boolean;
@@ -22,6 +22,14 @@ export declare function detectScripts(text: string): string[];
22
22
  /** Applies a UTS #39 restriction `level` to the scripts in `text`; `ok` is false when the mix exceeds it. */
23
23
  export declare function checkScripts(text: string, level?: ScriptRestriction): ScriptCheck;
24
24
  //#endregion
25
+ //#region src/slug/truncate.d.ts
26
+ /** How `maxLength` counts: UTF-16 code units (like `.length`), code points, grapheme clusters, or UTF-8 bytes. */
27
+ type LengthUnit = "units" | "code-points" | "graphemes" | "bytes";
28
+ /** The length of `text` in the given unit. */
29
+ export declare function measure(text: string, unit?: LengthUnit): number;
30
+ /** Cuts `slug` to at most `maxLength` in the given `unit` (UTF-16 code units by default) at a `separator` boundary, never inside a grapheme cluster. */
31
+ export declare function truncateSlug(slug: string, maxLength: number, separator?: string, unit?: LengthUnit): string;
32
+ //#endregion
25
33
  //#region src/slug/options.d.ts
26
34
  /** Options for `slugify` and `createSlugger`. Every option has a default; an empty object is the everyday call. */
27
35
  interface SlugifyOptions {
@@ -31,10 +39,10 @@ interface SlugifyOptions {
31
39
  readonly lowercase?: boolean;
32
40
  /** Keeps letters from every script instead of transliterating to ASCII; `false` by default. */
33
41
  readonly unicode?: boolean;
34
- /** Language rules: a Latin locale id such as `"tr"`, or a `Locale` object from `cizgile/transliterate`. */
35
- readonly locale?: LatinLocaleId | Locale;
36
- /** `false` skips the Latin and symbol tables (the locale table and accent folding still apply); an array adds script tables such as `cyrillic`. */
37
- readonly transliterate?: boolean | readonly TransliterationTable[];
42
+ /** Language rules: a Latin locale id such as `"tr"`, the id of a locale passed to `registerLocale`, or a `Locale` object from `cizgile/transliterate`. */
43
+ readonly locale?: LatinLocaleId | (string & {}) | Locale;
44
+ /** `false` skips the Latin and symbol tables (the locale table and accent folding still apply); `"none"` skips every letter table and keeps only accent folding and the symbol words; an array adds script tables such as `cyrillic`. */
45
+ readonly transliterate?: boolean | "none" | readonly TransliterationTable[];
38
46
  /** Splits camelCase before slugging: `"fooBar"` becomes `"foo-bar"`; `false` by default. */
39
47
  readonly decamelize?: boolean;
40
48
  /** `[from, to]` pairs applied before anything else; spaces in `to` become separators. */
@@ -47,15 +55,19 @@ interface SlugifyOptions {
47
55
  readonly preserveLeadingUnderscore?: boolean;
48
56
  /** Keeps a trailing separator, for input still being typed. */
49
57
  readonly preserveTrailingSeparator?: boolean;
50
- /** Cuts at a word boundary, never inside a grapheme cluster. Counts UTF-16 code units like `.length`. */
58
+ /** Cuts at a word boundary, never inside a grapheme cluster. Counts in `maxLengthUnit`, UTF-16 code units like `.length` by default. */
51
59
  readonly maxLength?: number;
60
+ /** What `maxLength` counts: `"units"` (default), `"code-points"`, `"graphemes"` or UTF-8 `"bytes"`. */
61
+ readonly maxLengthUnit?: LengthUnit;
62
+ /** Used when the result would be `""`: a string, or a function of the input; the value is slugified with the same options. */
63
+ readonly fallback?: string | ((input: string) => string);
52
64
  /** Unicode mode only: the UTS #39 restriction level the result must satisfy; `"any"` by default. */
53
65
  readonly scripts?: ScriptRestriction;
54
66
  /** Unicode mode only: what to do when the result mixes text directions (RFC 3987 section 4.2); `"allow"` by default. */
55
67
  readonly bidi?: "allow" | "encode" | "throw";
56
68
  }
57
69
  /** The `slugify` options that shape what a valid slug looks like. */
58
- type IsSlugOptions = Pick<SlugifyOptions, "separator" | "lowercase" | "unicode" | "locale" | "preserveCharacters" | "preserveLeadingUnderscore" | "preserveTrailingSeparator" | "maxLength" | "scripts" | "bidi">;
70
+ type IsSlugOptions = Pick<SlugifyOptions, "separator" | "lowercase" | "unicode" | "locale" | "preserveCharacters" | "preserveLeadingUnderscore" | "preserveTrailingSeparator" | "maxLength" | "maxLengthUnit" | "scripts" | "bidi">;
59
71
  //#endregion
60
72
  //#region src/slug/is-slug.d.ts
61
73
  /** Whether `input` is exactly what `slugify` would produce under the same options. */
@@ -87,8 +99,4 @@ export declare const slugifyWithCounter: (defaults?: SlugifyOptions) => Slugger;
87
99
  */
88
100
  export declare function slugify(input: string, options?: SlugifyOptions): string;
89
101
  //#endregion
90
- //#region src/slug/truncate.d.ts
91
- /** Cuts `slug` to at most `maxLength` UTF-16 code units at a `separator` boundary, never inside a grapheme cluster. */
92
- export declare function truncateSlug(slug: string, maxLength: number, separator?: string): string;
93
- //#endregion
94
- export type { IsSlugOptions, LatinLocaleId, Locale, LocaleId, ScriptCheck, ScriptRestriction, Slugger, SlugifyOptions, TransliterationTable };
102
+ export type { IsSlugOptions, LatinLocaleId, LengthUnit, Locale, LocaleId, ScriptCheck, ScriptRestriction, Slugger, SlugifyOptions, TransliterationTable };