From 4d4576ebb2bac28cd1cd6d9504e563f78b4d49df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Hermes?= Date: Fri, 23 Oct 2026 07:23:56 +0200 Subject: [PATCH 1/4] Add an English link preview image and refresh the German one The English page (/en/) now has its own Open Graph / Twitter image (site/og-image-en.png, source docs/og-image-en.html) instead of the German one. Both images drop the "Pages" view option, which the app no longer has. The German image moves to ?v=3 so link preview caches fetch it again. The build sets og:image, twitter:image and the JSON-LD image per page; the checks verify both. Co-Authored-By: Claude Opus 5.5 --- docs/og-image-en.html | 132 ++++++++++++++++++++++++++++++++++++++++++ docs/og-image.html | 2 +- scripts/build.py | 5 +- scripts/check.mjs | 7 ++- site/og-image-en.png | Bin 0 -> 303864 bytes site/og-image.png | Bin 285374 -> 290760 bytes src/js/01-i18n.js | 2 +- src/template.html | 4 +- 8 files changed, 145 insertions(+), 7 deletions(-) create mode 100644 docs/og-image-en.html create mode 100644 site/og-image-en.png diff --git a/docs/og-image-en.html b/docs/og-image-en.html new file mode 100644 index 0000000..89abc93 --- /dev/null +++ b/docs/og-image-en.html @@ -0,0 +1,132 @@ + + + + + + + + +
+
Doc Diffdocdiff.app
+

Compare
documents
by hand easily.

+

PDF, Word or text: every change is marked word by word. Everything runs locally in your browser.

+
Free & open sourceNo uploadsNo tracking
+
+
+
+
+
4 changes
+
Side by sideStacked
+
+
+
Old versionContract_v1.pdf
+
New versionContract_v2.docx
+
+
+
+

1. Scope of Services

(1) Delivery and documentation as per the specification dated March 12, 2026. Change requests must be made in writing.
+

2. Fees

(1) Fixed price of EUR 145,000.00 net, payable within 14 days.
+

4. (3) Liability

Liability for consequential damages is excluded.
+
.
+
+
+

1. Scope of Services

(1) Delivery, training and documentation as per the specification dated April 18, 2026. Change requests must be made by email.
+

2. Fees

(1) Fixed price of EUR 168,500.00 net, payable within 30 days.
+
.
+

2. (4) Price Adjustment

Adjusted to the CPI from month 13 on.
+
+
+
+ + diff --git a/docs/og-image.html b/docs/og-image.html index cfaf10b..7db485c 100644 --- a/docs/og-image.html +++ b/docs/og-image.html @@ -106,7 +106,7 @@

Dokumente
mühsam einfach
vergleichen.

4 Änderungen
-
SeitenNebeneinanderUntereinander
+
NebeneinanderUntereinander
Alte FassungVertrag_v1.pdf
diff --git a/scripts/build.py b/scripts/build.py index 2930119..774b0cf 100755 --- a/scripts/build.py +++ b/scripts/build.py @@ -52,6 +52,7 @@ "asset_base": "", "og_locale": "de_DE", "og_locale_alt": "en_US", + "og_image": SITE_URL + "og-image.png?v=3", "outputs": [os.path.join("site", "index.html"), "DocDiff.html"], }, "en": { @@ -60,6 +61,7 @@ "asset_base": "../", "og_locale": "en_US", "og_locale_alt": "de_DE", + "og_image": SITE_URL + "og-image-en.png?v=1", "outputs": [os.path.join("site", "en", "index.html")], }, } @@ -169,7 +171,7 @@ def json_ld(template: str, lang: str, strings: dict, version: str) -> str: "featureList": [strings[key] for key in features], "downloadUrl": OFFLINE_URL, "softwareHelp": {"@type": "CreativeWork", "url": REPO_URL + "#readme"}, - "image": SITE_URL + "og-image.png?v=2", + "image": page["og_image"], "author": author, "sameAs": [REPO_URL], } @@ -220,6 +222,7 @@ def render_page(template: str, lang: str, i18n: dict, version: str) -> str: .replace("__ASSET_BASE__", page["asset_base"]) .replace("__OG_LOCALE__", page["og_locale"]) .replace("__OG_LOCALE_ALT__", page["og_locale_alt"]) + .replace("__OG_IMAGE__", page["og_image"]) .replace("__LANG_LABEL__", "English" if lang == "de" else "Deutsch") .replace("__JSON_LD__", json_ld(template, lang, strings, version)) ) diff --git a/scripts/check.mjs b/scripts/check.mjs index 177b303..7a461df 100755 --- a/scripts/check.mjs +++ b/scripts/check.mjs @@ -130,7 +130,7 @@ for (const doc of ['README.md', 'SECURITY.md']) { assert.ok(appJsCode.includes('isEvalSupported: false'), 'PDF.js getDocument() must pass isEvalSupported: false'); // 5. Verify site legal and domain files for docdiff.app -for (const siteFile of ['CNAME', 'og-image.png', 'impressum.html', 'datenschutz.html', 'legal.css', 'robots.txt', 'sitemap.xml', '.nojekyll']) { +for (const siteFile of ['CNAME', 'og-image.png', 'og-image-en.png', 'impressum.html', 'datenschutz.html', 'legal.css', 'robots.txt', 'sitemap.xml', '.nojekyll']) { const p = path.join(root, 'site', siteFile); assert.ok(fs.existsSync(p), `Missing required site file: site/${siteFile}`); } @@ -180,7 +180,10 @@ for (const page of [ const alternates = Object.fromEntries([...head.matchAll(/ [m[1], m[2]])); assert.deepEqual(alternates, { de: SITE, en: `${SITE}en/`, 'x-default': SITE }, `${where}: hreflang alternates`); assert.equal(metaContent(head, 'property', 'og:url'), url, `${where}: og:url`); - assert.equal(metaContent(head, 'property', 'og:image'), `${SITE}og-image.png?v=2`, `${where}: og:image`); + // Each language has its own link preview image. + const ogImage = lang === 'en' ? `${SITE}og-image-en.png?v=1` : `${SITE}og-image.png?v=3`; + assert.equal(metaContent(head, 'property', 'og:image'), ogImage, `${where}: og:image`); + assert.equal(metaContent(head, 'name', 'twitter:image'), ogImage, `${where}: twitter:image`); // Title and description: from i18n, sensible lengths const title = decodeEntities(head.match(/([^<]*)<\/title>/)[1]); diff --git a/site/og-image-en.png b/site/og-image-en.png new file mode 100644 index 0000000000000000000000000000000000000000..16c1c5211f4cd5df7925779b4f71cf04135c7b34 GIT binary patch literal 303864 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 |6U1(+n8b&1th;-9_rK2GA9L;5wCQ>tDx#hD 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%0DHPg6)$ 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 OEvhPNDOAf_hW&pwyEwc6 literal 0 HcmV?d00001 diff --git a/site/og-image.png b/site/og-image.png index 78d34dd22ce0bc165be5e760599383f9e4f4fbf3..f0c087acb3ddc80b433466798834bb9aba7513e4 100644 GIT binary patch literal 290760 zcmeFYbyQr<w<b&k3Be_}2X_xH!QEW~p>cPY03i_E8;8a<!JUNQ?gZBc8i(Neo#cJr z-@SM4%(~yKnKf(8TEjo5Pc>DiPSvhwKl|Cc!&Q`|QIQFe;o#s<Wo0DP;NV`ogM)j% zkMtC1`5eKb2M31%Co3VQ;hC|&g!m47nhfzcWv-1EbR+~1>USq+DE^f9^y!CB$a%%9 z;`c8js?8WFKM*~aO#bjpqJF<kZ)aJ+=Ptk_rI5m|lF@E*>-PGREM^dTnr6W2b>wp- z)TC7g0-p45f2*YVDF1c`d|E_!D*hiDcs~SU{QHJ)QRL*$|9yia6%x{uf8Vf(^#6wV zXFV1_xjgNR94e2DRM_HBA$6jQd6OtjJV1p8#SA<B^wz5@S8)A*t~o=8l=gWD0T?`F zYmOEExmD_aeMn#eBg`?J-WX{FNj*a;;Z0Bf7w7ob8x<u>=S^Gd7C7Znzo+>AeTX~f zfA(Gfdn?2DRdD3Re>AupEyo@V$UjT|=c*$A|E%<%1^K`C#8O)P{SK?~L*|^%e&1YD z#mV4{YKo)(A3&)-g1;aCi6edZ4@~AXPfcAahf8#R6UsrP`1{*Gmp~#hQKWz0uquUt z@f+3u_1B2`Jmg<DzdzVZjQoAS7&vEZ{^#?m4yc_|{xudt9isPt)xC@FiHVfCmXs8Y z3&H;u5Kv-@ktmz49_a5IGBdY#)HUY`3wd6X_VF}FkPdwy_`kU{Dtp;l$bR4ZZ`*SO zD~(B|YjD@kOGZxLKoBX62`lAjoT9F2RsXl(pB^dg8M&FbWxtM$<8W`${|~GxJ30M% zL2l;hCl~xb#N4vDQyJoIeNVrx{{S$h(T2!KNkMqn!0vo&dd)J?R<88zv#wnRdl%i` zoA=jc3hRI11>gPiZ>z$af4kam-0!>vTmKkGof5Zis7p5Znz$`BHGK>=7W`j1TYOWT zzecnc%_Nh@4i5c2PGF73ehbKuFuA5n8*U?73*o;sp672P|FTX|w_?t>_NI;+zejCQ z^XdJ{v~k(Y|Ldh`*SNFTe>!HQf7`GMwY7sZ*DNa^|MhR@uaVAhzY9gqT<!|^t~bSu zPJ%oLFZ3T#dJ*ZLNd<CFSB}_m8|j_F|7H@77Pz-OI+=bOa!e)_I~f+te9c(NNdKw# ze<BqWQh(8oZ!Zi2iidVtDL$gZ1H%QDsw5wQHTf&e4+uSQ-bej+hWckBqVP@5=uOs) z>FKW65*9MQ=Yr@~5)AH}onqLP(Y_-vtmw_MdoiAl@t<b%uOXV6-ZeCpvZyid(tld^ z2Zn&dRmWX{7<_@GK^*Fpjx;PTC0M4dl<Cq1E~zB`!3dV&cWjn*dXRBT4)9L0^(jqO zdgQ^2-@R36Ro~D;$3H00K;WCtkB?&qF%2~lUrbly|Na&ZPLx2yf<}5;GfIj|BKR+Z zT71?Wl9iQ3DyU_+_=S<;pM|0;vqnOqM;jU(gjkN<7-(o;UR-D~BynUpg4mt5*8=|x zXDx8k>9F~NDilMme9F4cPBJiFTtr0V=5(|a|DS;Zu{7Rt$tcHVXB(@ikPG6$2PM9| zxw`W7@?!rph9i0+rdok$ftspg-__2@>}<*|{B-PElcvI_f4C!YX+67S$wPKZ3N6<Y zPfyS1@bF&V-W-2**G|MS2Z3O&{5{6PJKNja2M5EYp#rZ%|2a|La(}-F&d|`%)ZTe* zxdsD0p+t(<pS~C>3YOZ&IbUKm+5bV;)xy%Eqa3B8!I2Rj!YJpajM5unVd1}4YE=s! z9$r^h7a>@TCIKD+K~1f%)MzRC1?JyaEBd08f;?Z&-`<{u+0(}-EG&%k&tu>ai$BIE zCl{)fSn`pR=Ma7*lKf{U?ehuq#JnT+_idx3-VTb1iD|U`?X?Q}x5huDq~J|cl~VjD zD`Wq+jZqVVy_1sqXjD~{=B}fo!)<W=^3P-3q=5c<dW0KAuTfsSFwv}1G7r%dj-&c( z4uKWGL*x)a9J+1Z=doyij<0Cb)zy`XrZ__qGG`iRF~&cO@a=pT`wK&Ic6Qac<!dZi z35gK#+;@Ks1I^c9prWEG(aY5;`*nJ%gIiX=tLE1En?Si4$VId8$){Iw!%)uN^MH4! zdhr`6N)qWoY6S+nd-PGrrzq&6gB);y*c$qhDS6+^%bE0YT*n3nKmT<UH4^0t<P;S_ zcdc81L6+-Hf!CydukDngcQ8yZ;>Nsr=92`*E?1Mn1bG)kHzY+o+6fa5j-k@~sd$@F zc2<_s%OF97Kl4=Kn-fGn5EmCOwFtrb{aUMe3N*i>To0zrlD_xVon8CL2KyyF7&(V3 z<R!|#p5T9z%hHHj(_hY+dM@QsIUftI8q`e3C&T86IkU#urSHZ>gH!RJp7CSj=AO3X z^8WX`YmpQ2QLZ4q-)vfIyqJjK_eKTshl+pSVD}>M@-C6U!YsDM*r!OLVhw6maA4~O zS*lmNP1Tc-=Il)M#dL}TGX`nd!N{k7x;Q)Mt62pjpzaP)H~jS;8^vnacz6~Z;HOWY zwzjqD))hZXB77cFr=o;5xd(>+Owe&)dW@69*E|Ms6ee<pA_D#FA)+>SN8Uz3Jv$o| zb|eQIx!*p0US+BE{?#4w^alI*B-YJtcW;j#urw8(X>5#%n*72-wJ4$2ue(M^WB%HU zH_ApvMu3%RFrcENS7q&>J)zLxg+)+LWVf^4rG%6X$nR)%u1r)X+7B;!hwJK8sqEZ8 zMg6|^@z}dums4_2tG&U^3{C|PhEf=u;-aCa{wX^Tl#llj3*G}T4OZ$Bj$f$Dq!U@p z&k|GPG2n8zre{22Po~fB?tDYVF-b^<|1!4>W?|vwcWhVJ*Vi{U)w^nC@5O<a54WA8 z?B62W3EW^fReQKd2GR4r#0G^Jpo^FEOMF&iPJn?(32O{!e`(0$=z&v4MBd~CRQ0tS z9!H^p;8e87$R2VT`R3q1l9PF*-w308Gc;77%ZX&`({}Q42|zJMgd@-6pA<{zPmGTj ze~F2S2`t552=Hxg%9?vxfKK!UI(mv+*-_`od^#p2c{z8!JYJvwvL%eWk8{$*qW+A8 z>!lFVb#!oT#aOTkYup|kP9j~MT7gvFl#CEei~3wmUg%}M(L<(wLt}&f4<*#`VWb?i z#^k*AjN;RiSa;i<&mz{27Ul`pXNvaa<H_f(>5@69gm5{}rwLGzt7~dXDi2{W0s?~m zzm};~%GtSE3UYFKij0C{HqFm5_5B|$pp2&{1mCaBJ(l@eqCQj^ad@lq1>$uRLK6{Z zhix)WG>7&2!}l{Ruu<t4yVqKU+Tf;MNmw%F+mf)4^roY)9j>oN9k%Xq1DF$@h}so$ zrdCpy!8XVE=MiD#jeIxQmYSpK4=6yR>&IRDCx~#4e$yFf6O&*C8aYHO0PO<*KH3Di z6Jod+r5`l{mcpiaoDo=*n?2iI_sj>LUgN|nKfit#8v_r9irncyu<U(RS?H%Y!D4wi z`ZoN<?~#S6G<L3BV>!f=ByzPp4I1P9)`NrF4()~S;*vQCoZ%f+zkcPdGH5YcH(Xv` zZu7Z#cX;5OH(<#j4NotG)42aE(2Jn}GiYGbb_v?`;R3bHVay8-jxLVP5>-=;t?@4^ zra@oodhAjQE+Jfp!TLoL|3uzQ1I6OvAHX)n^3XW{uX6S0v}>uayis3`h|%Q-*S@G& zr+Q*SRFWu<NRP)Qf9<MLn84839*lLUMXOnwYQX%fFNHw^IYv+~nNbt#y1pYm#z0d! zeX7tX6|u}6*VE7ap?-UH?LBBwCs*Y;!WAOI^DD%wal3>bR3e_@(G0yT1}G(T+>*;> zn{^AXIJ}q1-@5=ZH9H$-bO9Ie7#J8hHn!?+r>D6Ud3Q?|z-myP*VVFvdVe#h3G(%; zu5q#N>0W6hAj8X!jZf3MtB%IY_Mze8%I6Tso!tf(W!sMD5tOkYK=_2!8B^p4KPDa{ zTbP3;Pq2xJy9}QFkr}ivPPtG{WCo`vv!(Vd$-I&bA3lt}{Fe|>S)V9<m6ksV!w*o! z`x9Zo6`N|D)6vo8SR-*uzq~KefljU6<Y51nF%;V6(_d3jP2w6snl(sacx9lK$^<t5 z=c+VcWuJ$hNQP4B_n}>XQ=yzr2T7GI#$!4+$O&zjQ%=cl5`v|JG%DkLHV4hDo1}vz zC|-x^fz_zu3>9XEjhqgC;OR*qFzRrZ{@im}-vpEK-VZS_a8TaW+h;oL%{Mt5WsQ%k zCb23{J7u2koPQi>-9ip+^=si-YH`cWHWKpbGvnBj0D1a7T-mIIk+J5=#Dsf$4{cCB zF(L3c{RyEe{dGUkH#=z@AQPD9NxM2!&a`&bKQ!bV8i@!M^D3<nbZ+AMsjWmnaUUe{ zoK6?_+cx~4fTylfP?Kw2F&z5Uj|K4W4gX>iIT0_O<g&%SU@TA9ctgXaeP0$o3Ozeb z93T)v8cuGvspLR>Z%7~GdSFrQ(6Q<9tswZ!Sbjy!MC9%hB-9VFDNb@&4ICu@956ZY z24^|MI`c}z+>g#;p%%gkWr?H=a>%$@@Ct=mbjYtcqQpx$2HiM9r6@;7xD|E0-@|I6 z(xf!rOX*-AX*<j9){}Hh#%M5*c#p1H^oUHCf<6;6#o%i*Dod)i%Y0?I_r2)8K{$tG zlM39dt^E)b%$R(yd3WCA#CaHuj(4~a5UVME?M``iS;1n(x2SpTpGA$zV$F%n?gIZO ztTf;o+&H3!1jasymeP@TZA;SsqsthC4ycFzGQnYtIdCC}l1k_gIg$K>7CGKX!6``G znAVSYT3W5*+7CC{(^{mNdLnL}wwk_j{ligs>x6G(r=w0~X8l-h&6yh{P;-6p`;dJw z(wHCDVxHylQiu!`2g%ao;n-i#Awv0^ljt?nn$obuN)#X(rH%Px!O7FeF}@`k@`xa{ zDDlep{*VRFq|I&zwP|ncG8XPz|8c$#rk#jnUe>2m1c`9do?a0yb*FD64SYL&$b1EN zvM`C-ujBZF`}PvDvQGLol(jiXm@bt{FYgC5iC{DOx}ET3zO0Ogud#@6`V8RyI!nu^ zo<5ENIGtoNn%}lV|0U&ZuS37eQ=WSZF=ilz{0*1vd(iMsGej-i7Rze;S;S0EL=%}W zWs&U+#Rt&1%17~LlL`z3<nSCfG;tSI7CNW}WundvT3SI*o~ue_3f+ztqxzOS4j~I> zVkzz-2lN9x7Fe!?>75#LK`<6ruX2nHtVA;_lb=X$4ZgNczUe+n&=MhFuBc>aWo$L} zdE|4v+l0kzw=F!5EWgPrllGR{LL_4rbl$&eeQbm3hf@@pae({exdOgVw6^+c@j;hl zRo>MV((4J2YY)h`uTs6~tIGrZ(E%$BpqLMIwVGc2FNInEC0I5(Clw*zqP@ZzP+!L; zh*}IK93kWdIB8D3dWi<Wvc21kcIMSk$tL08rh_R_N;KpY>ySe`dwYw_x5<l;Kj~Gx zVxX#L;CXHdzZ<N{KU0joSERHfhBQJwcU*8*#(fv0&NZ6@GE=RA#>V4ZkZ*>OB@u$B z=%ABghsk6h4a&(rTzHPk81f}&PBght5LhZV$3SK9k|f_%Ww=UpFkg=kK7yuZ;$0%_ zA)^20#uCAWGZ9Yc_HIyK+c%okV%qAGEFi|$_wGDZM++W}?Al@P!m!*qqdI}1fE(!v zMdbiuW9WzMU5%?}Pk@+mYlo4G+i#-6?Hw85urDRZK7qktUi(EEMa6<Zm7+=28g9ZI zxEz*T7sAZBojWNDKK|Kpf|wB>Znr#0Mm(;TRKyS1>;Rt-(s$k0E56kFmwX~=#h_?v z*)`AV8E#203eNP`94sV>$3jTVupIH<Fj*~1IosDnfH;lZtZCV36wJXrYZI%CeEnRN zI!TqK*aWLBl0y<ZAx&|}GI`uy(dDw+&3<Q^y_&}5f$*#EG@k2v>cyQI!ZbC_MNjI< zsNIdfp_xP@#Lm~xZ&y+>*;8A>GZi9Tp?k?)##OYRFQ+R!9*h2TQEtE^q*q%Qh|8z7 zj&Qvw*YXT={m}pdp5^S~Qd3hC>Ta#9tjx;F+MIO4_M8`Pia=achKn#tucA<&{}#Hv zjR+49u)VLl)T9{IrCBs%Te><)=Txr9&qFG^%o6>Y(u_Iq>d*Df2{vP>=mVtJm=bH7 z#ynKirfkN@0it!C;N*g8{ri1!K_MIiPeZv~85vul6JnVLxp6XXYTk|gOx)lQeHJP+ z>l)a`{Rt7NRsZ7Xz-YVeZ2kFa&^^9J%30(Pp2g6O_Yy;axav9rL|RBeq&%b2IL6Ht z&krwK&}qnSsad7n(kD7P@>6j{=5G?#NSmt^{X1Y?#O6jV%FkC}<YQL9eNz_?(H4T6 z(wyRF*!BV<*XPew)KW7uGgDGh;^K1EN;-f1DC4BXW+3kl!-p3@LNW|b6tE7xh6jUs z#0I_=gbE>rwg;QjKxa~$0Af)&o72QbmDpFOP?+Z$OQf5aZleNObrG|_5G!G;rt6R@ zO=6tF0xMBy%fIGtQeb800ME%Zs6A*&y`b>8weTHiC&KjLL4H>^@IFTPY~tnUeC0UI zm9NQ5cWy56jF`{;?l|s|E*fj4-^QV}<z%5wF`dg?g(qNtaeYspD~6mT*X#Ovj<1P; z0Nksb!SB4^RWfPOU1cKTx3zfdBI5O!sXHXQbL$~)8V~UixjtU1Hv6VD_gk3|HPp1G zl{_N{B%1~h8-9F30!%AcMM6SC1=4iRVr`eR<y@h~cvk=Yorj8Bv8L`$r5re_p`oFu zi1u0WE7z&ekdUj}+oHn4(&^ohkdVGUnFUT0O%Va?1F=5qx0mhK02!)FP3;=G#M!)k z=`5QY?nICqjvLJ?2P2>L_`Ov2%zlXAp}r_4hHVS%O><%#Z;XkGddG5Adtq^~+Hg@Y z13@;XTmgTR0V_LO<xx&t2UMCM$*~|upP@7F{p^wLROmE=Tqq^^w-tMkjt<?D`_T+& zst?n<&E(f;hyO*lcid`Gjwttbz^~bWuOGzbfcXN3JYV?&1;tWDB<<DB%3QjARc{xI z@p*T&p^rrSx&0k1<u+`23F4!@g~Ds!!`IA6DOeu)JxkqP&0<V?ci6S=3-NBz*?B29 zv)>B>y|%bpaZylV{AUMSF7RVhEEN+k+NCYAR$SGHF8oc#)8GTbCIvl_E(lW$H~z5f z96#hF*@4aEL5@tBtKun~D4)h#_4m42;>8Kt`fq_v3H+R+EJ{I=FGIsrZuv8}wY3${ z2wbg$tlt{{L=i;JcX4r{=LV)<{%}J2-Hsk7!ux!;prD{cgMpuM!ui}apG97juK43u zsWOW<lM!M<!*!{zov{NNj~m2A#0fanO=+R83b3%3D3S<<)e<xcw>iY&mk7;}Gj$8K zJU7)Ti;p+W2@)AKIR;yU3E`n1IOLG0u?Q+uo%|4St;0hmBmhK9k1~+zQ&4+Ic4~Vu zZ1CKQCrvSoQ%$)D>V{ILo=t!pnqk^$^7bg}VSwoI&Sz}gTsoRm#OYKaWrRe>3y5nE zZZF@NnmRknG2DyL^Gy#9a&k}#GB8vdnMq6*M%`Yt|DZphVo35n5_w#Xl$TMGUCUzO z({x}92@MT-ju`gwd4v75spzAySWwUqh|6xm^SkuXipP;5r;(pLzCJ{vtmCS*D=^mI z_(oCQ_ft_(k(;-81VzPO42eiLaZXCVyF4Q+YgKU{Qqg|Mv?PxAd8(g+j*;+JXrF-f zaMkry(KZVW&R8e5ALXkkM$o2N)X3RR9%tw2-VdT-{F&G!UE5Ock)G6NDbCfJ2rVso zQeH;^9qE1VVMK#BezIlmw2KOp_zD*X71_%6_wO#*05w5nAx9oKXN^UPi8v8v#o^?F zf(AP3Dk`x_Ns^2ND<<8+VPK@((mAD<MUyZ~3P8@GrKP2#>+9_ed!ix4-#rcnRE{JL zaeiJYNy)FJv>DoiSQyQG004J?dmTyXYR{!Qu-mwiO6HV!#7&trmM1#^^-M$~Y<z(P zMetu16M{&nsFJH5|3YJ!TCB(*Q`E?f^K#@wQ<Lf&mgu`A)Szorl>#|GJCGHVB~Rhe z3&59*O;l3DZ1fM&K$wit#^(Q6XYLjq6LUFGK-R(aYj`Q(?!YpA+GeIguRbv8iC^Qx zucKUm<+omDKkKe~DiE+1?*^V|SwmmE?0bvOWj__DiF9z#o9#bWf8TKT;b}{Y?JtHB z4R8I15f9Ye#~rF4NpjRKsLyUM4KJ@Jih7jC_fV<rkB@?WSd1E4u2e=X-9R2QQw80m z!qJ;*lt)Lkn6Q$=gs<=!pLwIoFFK1pwlj*{|D+c%S@o}^DM4uW5QkK)^2WgSSONmb zLjew_p?7ZPEb{=IG2+}a$+Bq%9OMO8HX$Ly9SQLg6!<VC_+0OwN-w3Qa{#{wiThy9 zPYz>oaBx6SVeahg#KOjgEy`H*1;WjyO_h7|V{)VrkKjDXwPBZq(j@3oCZ#HNDug6X z^fS3&Z~#yh^g+OWSu9+ZGLng5mL04l6`rF2IosSKO!RTyj7MYmM+>+|N+P|+BAAW& z@?|zB4dA|dzyY&_0$Znu+%x=!u4o(E8<lW~BZ53iVPIu~L#RcenwDZMpd1Y$B$5oa zbMIlE$?w9#&0W!j`mlU?lvFmW&*i|-o*f(((|&S+7%tmijxxc?G3(nD<bO!Yu?lp! zy-k65n2U=~03O9>|Ej;*)|LYtO)R7&ve$9#bYa8#V#Bxj!$>B7>+xcKs5~*+iX7|6 zy7CrB;QUqvS(W~zSd+#?)7L6-EiUs9S66wDhNHLNX-LY+_Q%OLlXDf{-r)e+%r_7@ z31IS$A%tdtI$}jZNhxmmQmaJ6%F19eL9Ha;+({x>MLk3!_7t|bXfR-<rmjw3BPJqV zOe!wY84~iG|Lx87wdSZO1hhQ>3DlwoY+ceJ+1UkE%`H9qLu|T}3KDV??8UVg;x%bV z;!ETPZ<<+oC_{;Og~}@#s5QY716PE;{q*7|hyj1!s0!V5KMn!`z_lTX?y|6)AV46X z$}fs11Oxtwipxa^uSrDBC6b1drXeRhVCk+H2?Ztfdg2$SMcamDaNFY@BNoO)`1|v; zDq+J1U3hQC$NJl<UwAC6x@--0=~|#U|CNVlRU`hq0s>)4lf#Wy7TEz_$KU+PMtx=n z2dQZ&v)B&9nLBJ_!rN5Wf#H1mEV+<3B%W!AC>NZi<ITSq9Hwd;xT51n-0z5GX7X^@ zdW5>zbv_#yckx&WwY3r0I}K+hYZ7{jD+R2nt_&hz(Gq4L(6|LPcfd>ap&eI#3X-!m z_P{hLdL;O1z{}wn0?5aRgFH*%gR;xR|8r+CH6=xQyFWG-W6N}rlghOs<5lCPG9{;D ze|BO=5<vknNy6T1QoV3-T1{*GC2vbh-K`RH<ccXO<5G>mwo_{4q{SN1!YMkzQ#$%Y z#wJW@dVu!O325|h5*Da2Cpr5ef}|jw`6;`@$icdWoQ#n)hcoZ;XyYb1glH>x*_yTG zMs0JreG=4lm)tH5pGj`*3OJuNLRyfKHE>#)jhah4-xKt9(+XZpaf&!BsqQ8-YE@+l zo<ouIgSC7f7H=0nbJpoGyF9^ph$7@$9B(`8%&H+s#LY?T&yT0b{1BQ=g9$=K!mh5> z3ofWT8_!yU$|1@sMCj>!LQ<gwOfe9d^OsH%{m}y^^;5XOmfTTc>)S$_t(+Wk6V!s> z+KI_YY(PN6F*Y{lXM(NbJhctn72B5Le>>q7ubFZ>V{A|=tcf}nJXWW|-y1_S&=@BP zlNxY?a>^ALtcZmV^}UulOddpwQYcIrs9SuK2Za33aghP+MNg6tqbFbSh}Ex(Q)i)@ zrB5U*(V*4dp(ja{kHUE}0G2g3U2F}O3ZJsfTbiuyl2EqK)2HW@9m28?QLj<3eh}a` zF&LyNk5*&Axm@wMym9cSJ6YbKRT9`8zF1yVzIbp6)QnatO25B&B;+YxsgswMUQqdP z1v?$pDIgK_b=^Ii)nWo4A*a9#c|Nw0u^MRkwo85g`kt1*-eE9jD<g8aBduJnf2Qu! z>EYtfhE}H(DGPpgAzl{4^sKTNBn=*vUyT(d9R^x6Q;dA_9$V)A28AC<$C|zxw;;63 zd4WlZ(hK=~I3LZMX*g75(QUB~HLWL-t9VM!rKB&t2MYX`(M0Gbf4R<#o~3Fex%ue? zaxiOKG<<DP+uG1|rBU5exK7IhzfpH)TJ!tCraW(VvW<MMt|e(L)7_X+93iVoYi14k zkjM=2O_TKYq9-vDl<26c^Ar<CUK1+V2w6TPvLX~=^-6FY9f`X0ZIe5ElA)Qyi{F$o z)cbbp;JY1Uf)L$sBuZ9&GK(n8tKMOih#+L|)e|@aoIEjrajBI|FHUDC!XrbrRjC?* z9F9AFKtKS(s_D*`{6ao{37F{lFUDRb88}?2Z7BzbqYodR^6PthC7n0l$uS(=1=vp~ zVf=OkGPvg09(Uj!x<om}Gcx}kv4uIrCZmt$?E$&EJ+vRxgkJ&_xAqKgQwkeuPCezk z@p*!yV(kV^jo(sD?i?#vm4bbM&M}`U7E897+i_4KHGE9M_+8}LYpn1%<3eujmlL{~ zGxzl@(N8<?K74qI$J*d9+hc#v+HsgewuM5IV6|25QGeIi-gS-i-l40F_wxPL>)S`6 zv+m}qA_c-xYdw{B?|v03vKTh$t+z=>laPrVzChqM8HEj@2edogn71Dc_}hI*j&>-a zdn+gHwXjaY+i^`xO=axRlGRz{bib$A*3#}d<-t<<Zmm9DK-mmmL9!y^ELJJ%PS`uo z>-HlWYeRnGUhweO7A5naJW^__wZ7tIhr`{aCTGR04|1-qNAKGxg-KQ>#@jrG9$2;Q z=-T}kPk(i5D-jakcl1W|FdB96!Yarr@mBVCrWf5g(eR7|pp#iomPhXTW(bCeE~v-L zGLwA<1)vp)?ZU0&`QOjwiILky-`Bo6YT)H>DBZq4>`8UFq}BIPj(<l6-!`6b6v6Uf z6l371^`>^&E5CorXE&go*5u^kiYr}IgCZgF5S#s1kQ8({{|Vf;f~S1>!9ZACufcG* zuBxnT{}Jy-bZB58FVx!RIU*fvgtfD?^N#5G`FZz#s*2DKitH1LOy;ud#U1{y#$L|` z8A5@8M`f$`$|!h|nRlIT)@H102~aZpFT}vAJyFj~6Z)sIn$nb?Ogk4ubZEM?A>cBY z03^YnOr^L$t?k2vSc2^LGqqsZkw^~Cl$Qf2K&YvBw;${}cuu}~i^+jZ4Kff@z$)Qe zN*&(iI?;ur&#QTfWHsDE_9@go4s-2tS*TdO7mZ}Tp?_qA&+BGCJfW!JXz`%9;xz?3 zY?#kQ#PH3ieVbBM_Q`HKL(=>>Ha*U1t_M2o=U2lbv;$w?)+)moA@BXJ1`*qdJ=AE@ z>aD>lGCwm38ApsVtAqJEcN~nK<;H%7&Hiz!ia}n7o}-0;FI~fVdy=R-D@9i~$;0V< zHneq9%^mSZj~AsSKb@K{#kD&4dbNer2YkW2libS8LID)HIah|Vy3JntrjKtDn(VF9 zRXXBpvW=q)+peIXx)J{&qloHgqd}63wSEw`9_rpJy}KZsQlS%AlWo$y30Zof*Sm)j z<t*#(t6B^dC%MWa#4+?Hf`~~YXBRQ-3(*#~Y2)A3>3PujLLu*yGgmymKRlzX5q*5v zN_{kSo)ui^QEgDo92fL(*<UAda^E|b`laoY@Yt04Yj7wUGpG-!axj2@Dgqz_#{{gA zksKEpexp!@o()_ar?|eh_8rauizGv>GA1G%O?v=|Ky(@#p#gg&nPsqmqxFvo;O8Uf z9_4%=3TY1pc$@;@9fau<_pU)gDR^p>bmJ#N@J+%Wu)>p%q>GanU*@Y-9+9sEt5C=7 z;&5b!Oo){jnQ}3{Mktvp&)LoiiNg|WKgtQ=kfw+>qmcqsCH)&T!Y0z!<~0$xjvJZP z{Ga1VMT}Qk@9waUhDW|;UptH!F-nLFL=b7S>SMfmWxeFpQeTnnxgYoa*=+~EPc+13 z<;drO-}%fl=Frei+kU?Fyme#l>hAtNnKf$#z?T_rMM7Re!7nQt5K@1)8G)kFEY=fM zc=%G>vUX3K3&!%oI_tT`aYH^nT;i~s;aTH)mPz?tx&@p0{I3VenqL#<EmuOzwL9n| zY;iecTM&e4umxN=SBB8h`1V?CDA8HR@W~!FhoW4g+!P@yqcoUVDcG9fy2(Et`lc6q z@v;~AT3k*REdgATEn`iy%W6}sRgR5WH#HTLL%VcDuB0h%J?>9^rMyI7b^9$+u+5PF zCsQZmqOq4CjkXONk>dU^S>>(g8<gg}U?F~<+D8Om`mf*W<uj=4_HK2;UQF*OY9}xk zh0?4Ub!W5h&NMPkDUY{{sfP8X!}M}F^J0q1Wm7Fqw&VGZh+ec6sS9_QrK9m6UF<CI zunB1gT*=v^8KZa?X&owg!rBoiZ?9dY??mvJVedZE9jO?1!y0}0Q9`%{l+0T1f1Ec# z<VOZCjr;0_d4`O~dFC&DeS_*4*UoXyH{?eSy~@gPu&JNHH3ps*2FqXr5S01Cr36VG zNM{?s>+UEbtya@fX_QR^(khVaMPEaKS#FguXf7*-9J0;OJr$qLgLp_VU~Um^-dw%_ z=vOiy66#`g<enH^++O3u2O#;{UX&Brk!0Pt9O7JIP`N(iNRX?<GA%zW)g-~nO$dz~ zM1n@{vGys0=;ClM$n$9vk^K-A0fY4iQ;O?td1G_bj98w<_UkO+;^VK<kq`Cv*WFvV zyN_fCJZ@Nu;LKL&HGk{vZMibMT;yis;_|%XWZgNt!6It`?YXxE9&a1hb0Uhr{V-c) zC`O=p(n82<{l)b}`Uja817pi(Wp;Y~-ObGq3|SKO@fs1~4e=E_E$?hakGDI#cd*w* zgCvy^+TN??GgxwGhF1w+b4BmO%H0EDHxH$c=VOtM4gb%|_R$pe1s)cZ=8<mPNPT~! z#>=UwJ5bAd(Mp;iv>1ieq0!V%F@r5<S%4}XX=#>j_{KcobO=>j!Ij3;7I0(AXW_NO zQNlloZ4?ppr++OUiwmrI(U;5z&~F#GrA+=ho0%$Y+&-#M7IA0vY4aLNy9obzqc=X4 zivvOPJ_`BLYH9n~sN!iC+3hjO+S&X2?bL#8_soI(P=Jcm5AA;|oglN|@W>j%NY<CW z_2ntST|$0T=%0x)^f&55OWFTKv?L&&Pm~>dEVLxDd+kHSg|t=~R={fmJvuph#G!H( zH@x(i;0)g74nKB2`zfIJ-1pdX@&eU2wBx*E6r`-@C+5jJ+JkE=n8;tM{pJ~5AYrI0 zM#d+!m^<G=73?VkrE|<orJ`xQN{rKAZy~SYrr^aB8Vp9boA6N#4iJ_Qzjp&^uVpb8 z>cGkAccOi<n6H9A|1$h+RI0%laU-aSg<dyQ7O2{{U1CaVP0#GoFat_jWHjE*Ez}Pe zXNDZ$5{7C&5m_&mW0+;I<OCbhFe)ITO4*yKLS*|R)r1m=hSi=Wq$|`iai$h{zo>{C zXAX_=F8T05h6Fw?QD$Hhhj<s{92`D<QtBTbm-Vd@aqYseMH1oI_Z*5R>F%aKJM!bO zWnsLn<KSVk{{1>2?Mt`8^*6G|q@<!DQ+EDXPCNMGlCD)I<ni#d%!+cB8mv$Vq(2a* zEg!r02W1&dyi~$+xDytTVB{~*Rg{P|j*<`w!vzJYlso(#;=e2kPS`B$WfCs92HVVj z+iu_$2*ZtLYWCG`J)C*)BD$cV#l7Ij5U%~+N}HyO*pSb3Tp~avefjl_P@!*1tsUg| zu6_P$<9lMKGlOk*%0Pfe(dsBoL-Jbip_T|vyQ$gXhGGSbJon8pgqF$BM^kSjNWLJF zRVc@BwRL<r)HU|Rf#dGD<{vF!24E-pKB$BWTbeD{#6mm_GS}USGbDsJdL5v12fRk; zG}=UG0LubyFOZc%84}!j8jJR!v8!uSY3T^ZKjg)dw*N(e8)`HeT(M6`mn725CkDxm zpJp`lp4rRvEm$A7WbaL78RWjU<aJ}VX2CpLpAcig)37%4Wuapnf~O{B08`TsVPi=Q zz=N{j)k5VCb-w{=-mo<Nw++s129*gM!X#X}J{W}52;qxn$;aX3*)P>Z`&M=f3=k#T zYS}Oo#|WFDvup!+!!%k&*L-MY&MpqJr4rufZhI3YKPqZ)U-4d)^b#*g!d3wfRQ=%c zYZNWJZ((6?94O0D4Mtd`caED6=vDrjMiZZ39WUh`%5c6=k~eiwkc;{m{ov~K%f|*@ zkDoA?+Y^+xYg3`D%M0HKS@hs<8E8;TXqmQ)Q3J9EtJ^#V$2CkS#`GULh0Z@8J)W;c z-L*2^8g#JsH$POl=+2Zob$;7{bGY@^&YlTkU8LesDkSnQ*X~+(V&0Cl<#_DhI=lI~ zv{3TZK_ZZPpe?x+b1o)Dt=U>_Z#`@v!4E?D@|NVmZI8&#W=);>$K62-ZGG91Ky4Yw zcS}CJv`c{*IE88Il{X9%B!Ji?Ain-#E$&<Qi?HIcHQaBCIfd_k)5K!BgN=BRqo+1i zVscN0Ng0GmHfK_WtoW+F9FaF<>0fN#pbgLin*$|f2v?xp*dpO#c+KCAm@8(^L*Ez~ z+YiVdp{`>b19VHLg9ZU&&n{K??kCA#hb9u9Hn=@vVO4BcsV2#Vy7AG{UJmhv`5pBL z!r1O=tf%v?4}_Zenmrza-p)V+9)vb6YcSClw~vl`B~<x;Zq(;Jk*8NjL49HWGsnLy znYq~=R_qew^sK8WuN#ASdjA+#o^s*!Vwv=3tPi3$&7KzNqSELqKFjgXycqJ)SBy@- z#44XfePLNZ2(fBv=Hz7#RuppeY0UO`fv5cuk?yi}4*KnOX@sTGZ@5O1{cf#Hk_t}! zuv>1TD)WbFOVM|dVCl<n&%?u;jT>p)4&D|~vP~O4SobG1h6TzAfj((f-!?TCui`K$ z{wKvro!gJ|u<_Q-gw%su&s7c<ppdqh9aM$TqJ#&iBye~kffxn`Q6Ae*i!q_4-BW8K z7_QD9%<w~#eI8Iw=cUWncdfx3_Gsdqykxm-h`Cw)XU<Jhl+zOx8hHuyTneRegSCr< zK$d>o<sN<*p-DlRfP(iZr~kDDf<4yT8r{xOfj&j2KHAVwPE3v$2dOPdayv6jNyjzl zr#~W20UZ#WA8pZ3`AiSt3NMtpzoca7E82lPOxSX++;HKC^aJBbWnyA&-nN{qQ*Br@ z$$T}(mFF^X@b^{4xtx@um;PjRN}_6%aRkV@4Ea!9wTzFsXb|0nuXG2mE%ZrAN%nJN zQ+&UK-q8CAfv)dd1N-@!*JG#^sfd-9jn*~XaafRF;>bzzr!rT$359hd^eE4GUYI|G z|7=a*MONzC>@F;=F!plRFr7uOFWvrv?fBzM9)ylvo(R|Mac0a(%@k|MUg&88M>h)< zpg6f`>Pbs#5|oNdNc>zD>Oda+E+*!BdzLzmj!H&TF7}KcSZ_FunrdZs9mxbty*+jA za}Yid6|2g&otcNrmgeZ!XpFE9M$$wa;UI8wI@#pYfDPU!?|_i&LSS^5W{VYR>}?9N zHgt+p@{tHl8noPLn`*)&0Hn~=<p<Nqp<nxlxDGO_v*@G(86j7jc$wiL+jzNah&p9% zfXre}WwP-qTRAc^$`_WR{5L2_1!`6jp7@NxeMn*H)Od%+knzpUP5$M#&l!V7)8kvn z<5Xq<y+;VC4Ew&qVoNuVT+W`@Ziau}ggj9X|7sfDJ@we>@}sAb!s^3}n(Z_3bW(Fv z@h(y$1F5V6R$GmnFvu^BPuY}1#&OA?=jt8ez*Q@*bmt8T;IPWgohV$Z1zcI9J$PIa z$(hT(WSK^MyW5|>tv0|KxrG_9IH-usyGM0&7?)5%ey<yxD6W|3j-Cb<day*Lg?NA% zfuuV?!UzD(Xiu@PAUF|oH<6<PYz1{DNw5TQFemJ8aztrZ$2#4^qdJ3wIK&BrfIO^x zR4qCIXbcD#)p7x#poH239)?mTJn?pIQVcug#RNL^L*$-7UtLo=wVbY@u!aVMo45Bz zh|j%UbM@TCaSiq>Ldt}G9RdkSN&aR=YVKkCTnS9fwepM4pOsx*@tV=KIBz%`3T>nk zew6pEzLBaHUVJ?t^{v?jte8fd@QOKI0V-b_k)?eWlxnpw5`(C=^04M@9^`j70|180 z`<3_FE*k@E*V*GIK6XAhveX5(<kk9zA8>(F>+S}*eJ3Usq*pOxT}Oz@TTp31K}NQX z!mP4zX>4LKk`-V-ui&yKeSPa<j=nQnBq;FCyKU_ujI<$|W+Kn4hE>FPptSo7W{ib} z%d=GUot14s=LSlBQ!WoK(`)qxx$Dq{*|^^H`6Hkv^q)<CJPL)j`+4&?%!DLmpX+)r zkGHv%y(&-EX*L}$VAQtCbsO9oRR;H2$2=-!@cZ2mGXwR_XaVo&%AoDHRsu_ChqIha zT#a3*>saxZWH+OeZ~07rVrUH>%=xgf(-$ZXnlH7uzpE27b>3YLi1GIE5`N=~@eI+r z729N39N1~({N=<)f&%BZaIhJ2u&j7^PLMvpsKD}wP0Jw~(p+?#)-`kF8&U*NDPr#Q zs9I4NId5oA)*ueG6xD2S?1WTL481iEdu2=xn5Z#v6zTdz666fg-I1namjh{Z7uoG3 zn~H}!c1?;17A(8@1dhK<VfkEZAA*3Wn<DAlQXS?_NrLLeZ>Z(&uJSHN21_=Na!*{; z^Py8x+5>)}bxTD^{0^s6B|AJC(XBOh^$WyKB9Mb8%BC%1aEz@N3;75Yoi43~rPJI} z<s=LbZ`a1l);W5_%yc4NNt1rAd0jSD;Pyac>lctp7(@o=YY%>Fw|mOZdvY+<#~Mg> z@oP<aB$1lDHKW+sRXcC^2W*UC?W-&rS$eGIna<uVP&-{;%96}Dn`OvD0#u00%F2pY znrnW0?>q4d7q>u#PDgV3;$B-yEXaC(um%e&zT9SN_teje>h^-H(HEL_o(*I@*x7m0 zxU9NLjetC(xfTzz*$GgFTj>C`*eeFh=tRrQ`1)Khx)Z60HoogeHsO2C)oA)8_gr`R z)W6^rd`Qt~hLGnKKC@+Af%ZGYfuLY%t*YyYS9<l9Mu<;4HEo(cH5=}20ZLrz&o}cl zY~MOKp5%Uh&e?Kt=W=!hmL_d%sec~AYfm%rnd}u-NT7;A6Nk7K_m3d0rL1lWa#!Z- zMdFYd(hvi)-t+wgC)KPvvRoxf_CB+zkg5dPI)%KHek)y8UZU4D^AqGy4sjqMtWN`R z9s3r;I$#m97+U~Ddf>6(*afg`=Ot4j&ahbD5HOqqAzj4=r)Q>+huG#apabcqK%K(^ zIC?lPRk2poMm%P4yeLiC@NI74GR|->_PxTMm~2NM5NNQ<U4;a)(P#o0z0WVu-e!7- zK1-l6x0>cpNU09VXQ7ubngEADEz{#<02#J(?xTUM`_(=XdV$K5r>&d04+G<VOpyJL zcppD|L$1v~7CPy?ph}F`Ogn_tRaGIq6cdiHtMahL1c}UBlyAKMHdF9AjI})W)k`_z z+GMnk21(yL@~x2GtIK;a0h-IFjEsz_DUG<}_zw*~fBrl^J`N0wi0m;2a6tB`_0eQM z>Wvm3kRLE<Fdv*D;Ve`%frBHrp4_U4i6S1amgGcOHP@=VKfKL$M>$;Cs{mhh!mXOQ zwY=9kP$&O2VgZm`?W`_{sQ6$OL%8;nia2j5J9PuoiOOV~f|!kEo77f;DF+EC1gnxW zN2~Kp4Q$jI=}a(dEG1`mSeO?XdqiSsDrG;$!{VDSF~&bo{6)dzqyb0ZG&oug$cUgu zwTbIy*86SSOM7rzEz)u2@7&<UjRa6mV$aLUxi=OxG^79}{8!jcqe*%*+s?YT=)?oV z!!E8zc1!%6#YSy<x(E#6qf-xVJY`o1{J~zAFa>FJvMGwb<~ff?nv}-j<_>JTdR9U_ z>Yv)<6(yiUa5h>ID4FYkIJ0BRzWuAK#oZ%M?}H!9VBt?m#rMWX@}|^tPK#@Bo%VFp z`YAeZU>iRg!f=%l>6;nlFU6dxWi#Uq#RJrnW*V=*6rj5f(j6TK#``=u>_}8!zo~ls zN-PquzhVp^w6$B#EqQ?rJw1IvauiR_u;u$L^V_QYiUoH&AW|yJ00bzZfJ5Bmg3w@* zyVE^1An9Ge4p#Vur!kp2RM#obs&s98Eq>z#3$-8+t@C`0vRVi*5VBf?pzLNev!}|z zlLN;h5lN3jyo47N1kb_BLX|jC5te38orvkZ#Yqhm%qiq1dlgeVw`t^>sI@5+u2Bj% zjdhHPg2_b+=~7;%Mfs}ros;9-V7@90rWtr_1X-;qg!mfK;hu^&7evN(T=I1Elpi*` zLU&=D+r&!?fYeq0h~km4P+(!Udj=xxQF*;wb0}iKMXn$xXHvJ=lU*ON=%cUwJY?EV zrZ>;T5YN7)WIBDH$MZI9Z+o5O0>7m}{ZrWD1ib(C$W^4^ZAWM$%E7z{^An@u>^zS$ zeHtbF<sZ)9)a%dIl8L%6ALp_{LOQ2*O9VcfpX@L2f1B5Lx?kSxGVPzK>YbQ9VCH*M zF8?5yP-iBcaV~8(IJKB3GwSZBT?Po+HPz!gir89)V?_HMSQYb`v8t)3XuBBuJ8P@~ zZq&j*9`5;l`L<&?li?cQzBQI!qlAN-Vwx>S-#fpVIyI1#CfYlP;)k@>A9ch7704ae zBZ!^OAOzw0^98b*pw+B&K_i_{pOxRZ-<c6y=BSk@X9zM2g9J8u4A{H6mIVQ=P)Uh} zkrOhGpB*a`!|%35Jbk1Sl{b4g1*<vx{K=tk62@ZObg^=x4ka{U<>fu<>>fl!CyNSi z67!+kfE2Ugu^P5JpYuNpBy`^C``U4FXaSX|&~z;<sEMc?A|pQ24cIVm?F(H3e$G?6 z$Ntq-ukbED2{p4H8%w^bXcEn;q1MGa0*lvjp-{6bOK2zTRhLInYN~?rfLuamrprO| zk0M4@b1ipWVb+OB&Vf@#ea%(ovS;O!c3P>+?^J9U1eVMD%~%|LYdyWZuWmejJU?-3 z;VaVkS&^+g)%5yk&3bD;$o;fc-Kdry!qV*z3ZsxR{4BRsz$>c=Aob$AoT)==u%Ak2 z)En!(H?bq?YT#sWq;u1VE!SYGm?;-P#Lmr2G=M54f^NTB=9HIm1&J81M(F84G~UID z(asP@MtTKA>KT1-$*~bKCiPiAOPpiEt7Yto=xM{xDV4998hY&vJGkXW|Iq^M9_fXz zjpgL5gKx&mx%&IjHro0e2On^ey)0$EKv)U-L3<TfgH-}b*=?&(7z_%PZ6M7eb=~V< zk&*~Wxw$Xd%@Fo^i0QcCYi@9YAgo{0X@nXvKNH|S6>_7>PDVE#_H$jE17YiPBdsBL zwqh86xpthN@4%8IJ=|u__V&0BU1+joU{UuOMWodho-DP&4&Z-D5V>`aS5s8klmV&t zjqy4UlH!0dAIJe3+MTcRdX(!S5en2xm*K~w6gTcVW8H{E(Bz%5X()5Ll;^pXAr6bT zPhZc)=R8zPK7CN5$8!HDZ3Aq1C_AkpzS^}#*<xgF=hXq8fKq<diZ;%^BGLS}@nk@= zeSS+9B1_P5BLHh^*=5|6JnEhxIU&1O!x`(zw;Eb33W8*QrP6jWzB)bK{C>{QeG0kc zR|e@cZfu<zzUXYrLWb46CC<X4mmqGqyGuvsZGwb$6seVRrUvjO-wfQ8&7c;pY#;yr zaZeGW52#U4zj`+@F;QcA&>uztRQ)q;T-5nJCW(C=t4*=k{*^#JU{-C>6Qg^6ol-7d zzVVsIYSD4G2D{zhv0@BOe($p}mCSd|Spfv3L86(;axz1Q8%76}jmBefZo7%AAd}11 zH*RVt7P^na=#1J`bss-5>vIv^ZoZF+@lNF{9Jkaee>lC3N-sg3ZLU`Dy%>!Qu-*}B zP)I#H`c9Ql)c%_3==Qw;_bQ7{?f!ZJBSW3{W%RIW9A-Tcli}HTpub;vjH0|end4<} z=jrEB#WXIb@-MBPuu^Vg`<&1$kFzV^?mRLcd+_CnX|Cb&!oug>{HoCmBVQFUZ{wXH zqV{`s)|gwgDh&o0x9?h$MH;u=;$tOZh~2W+#&jIIh~;fDRc~~aPMiCR2x7U7ub(d| zp>X7>UW?vO?Dw?U{4U9_3KcU2?T2<QxBc%nlsk~DOf4;CR+fcUd~V&y$Zpr@;Bq3K zKfijZE$CZqshe%&p;D%*ODefN#5&{WvUAM7H>K6)v-~g=Qq=4Q+uWf@EMV4a-aU?c z-<e;*oW@)5>qo5E{bz@!lOp5xTc;W~JzZ;WLhsAfe(c`qGCZr6xwnuW=$13}qyLZX z5-XTPo50b)^d8PbXjtg7)2$t+g&-LYzGcJqPa-E*twk#rMcK0C;a)-Z-S4+YbxXD* zk6TBNml(__#E#qh+C?uJ8|)X(flRvP+OiLVayozbNP>R-VNQw?ONxi>iu)!N`m)HG zeM=F9ldny##sBv0RX!C3#dkmscii24@$ld;SrF02=Y)L8bmmoSKU@v?OBTbgG~o{G z5N)e>kL^H|p>s!=<`8gYb<pe(;x0IEcWG~El+72#r`6LibW_S=e2Qr&LwjK}`~K;( zXC1l?5z|<lD-Ul(I#wYb#^aW?@>+IpTprZyjl{~fq8#=nOwRgDgqMvv%|-0zu4hHU z64aZNw;{dC%3yYB9TCvo2FZdxA<wUu8tMMmcC%Rl@#>Q>x0fi#WMd7z*i=Ui>Da2C zJ)rDXpneo;?C}6jOk1vW`&EK1{ql0+naBQe185;DmB<MpI4*kIK675^War*af9dr4 z_F9`LCY#^mDApf+(dIfLJ~88B`3@R~X>!!cbAC1_Up9O12)#j_*Dt!L@L5?d=(56# zAr+}v3#*tlwO8whg%ffY^EzJ%1>c_6E)_m)5pug&zc~uvb9vy9tT^A3bhTWt1{~f{ z5J$UZ=aIm{9Q%_8|CRe%p$qe;Bnk4u8N=4NYmDv$RgR3aW+9bqtme=^RNGwHo>Z)6 zh%SL}$bhnMNsd~|f3B|)EfB$+M<!ni84juj>F-)fLrtV2q?YOl4e}oB%S%K`ixOv{ zTkFM3l0lvndjb4*0aUJ<&=pUp7cU+`P7OGPTFwXp-JI98P1<kDAUuz)2UQ)9POc6z zj$^Aq9`lvqNa#f!zS5ePRMIgi)Z{>+eh8$+wnK9IbA&4n#sn!Tsgnrfu(t7|<3ncw z){*z=NgOvWhT76?-P}=xfi92r=3A6fk^%uT;qkk6FIvUBald0ZrH0vP33z%CmaMNy zLo0yiBR#mArSk1YRz3GoK-%FA*(mpk$`r5bGQF{~E|6T?E3vMt+&MU0;CHlrq-*KD z@f=7NTsmEYFN(VR*g>oaA@jZ<cYqf%Q2&`3=YBPgJ-jdMYq7lII2c!(NL*R+LHxT3 zS=Q-gyfgv>E3Gce&C9c7AkD5=ViDd=%C_yP6?BgaWM-1N^<xSSS{w%h%Yylzv*N4U zY}v9#=go<ceBdEnXP`YBareAF{&pcYOxZTFI3z-lP8%tFqf_<i2;DI$gHg8hf)ni$ zP`G_fUle@?5_9Y&yTf7XFxoC{%uU9Q<nnqUJ~eX%2h;Fw3{syP^9RW15l<k@?rg0r zEOzC|#Pq30!k?*#j<H9DQ+cB4s%S$ZgUBtYrPK)#6cXCIdtkHzlA_9)!i-EE{2QS? zQH-f_Y5;cnAP-(H`80%u^~MI>2W<7?Ew%r;Y*<Mx(V*KWH9a_XI`H0~vZ|UlqVp1> zNlx=C`93?3t$GYd3R|s@aR-Fft^OOC=o0(}yXPObjWVt;+XD_}CLQkY&StZG?|x=9 z7}cPCvgX1sFUXsp>FQ_IYw<t|Ag?F-sVJgMq;ph#fRi@~3q9wX<2$ovH9ToLU=)Ri z^qdWg_~O2DA8df|u7GbhltmWyB|KKg;wCLdn2kABZkXIjFsy=4MqA&_l7$j>(W~9t zU1n!j=uGAM>F;^hNm1?7^0GP%h0uq^+*!1JHk|^>&IShtZhWDp1Ca!98g0E&(LZaU zvyqWQM7$dv*Zz}@MWl@96s{Mk7pJxh*qE827n9+uKTk%rSs2)<B9#@0FNc1G%SxtX zPh4B{lsQyfoo%$Y9er7HUW-q%>A2}}2YxDW4coSxdRJ$15HU7}v3FBjdsc4CVsp2> z^7ir8F_-%n<V$R4>(x~kciAh(BuQ@Rh`nNz`V^a3`IM>&a0bU<QLmuAAvh_C*_Y)f zT8rW~mkG#QujezT`N2YfijMO3j}2Po>^E*bqrF8P!v#dOr(k;4Ik(Qj+3WNp9#yle zgPYO3JzYJvGlbwT7TyFMce@Ml@>)OJ<<20}Fe9+=|3}wb22{~~@xq7#k_I3pAR=8- z(kb2DA>G{#0wN94-QC@ww4}6j9{SLoccYL0_q`wPd?Mz|nc1^r?X`X};m8w>Hgszo z3AJ>(y+a^zN#St#L_%?`Zs?&%r`>Y5chCK*Rq$62P7xPC$fQOkc`YBE-g`7Nu+Z_a zl6&j!2P^AtZm8`JHdqZt94W`jyF1){Bk{|HZV9Ul_19%LoU{&jTD>sPo8&UuSd$wP zCYlR^vxB|yfTr5q|F~aBy)G#49$sgN8*aTioDCKHSTJ_jeE-W!I4n(z)9M4{>*T2o zqNqZurRI$KlySA1T2xBZ`E}a;ka~4uE3)60Ct#N%`)E@*Yl7?Uz@xV9Vst{=YUU~l zimuu0etUaKg+|D6+TA~_<Xjhx+{$$QapwnmT0B2bk5saYeJ4$YtBW?%@_7rco!!LD zzW<a)^LaKEdK>KBB#jvZakbX#?}f-;upMaTc6|-QVJV!7R=RN&3$s&i$g>vU3@zP9 zVEZpJZSh$u^CifXjT<bzqwz=Shm3rpp$P!Tc2HM6Ibh^xxL2}X$=fX$`jQrFjf&Mh zjbCTFG8I<Llbe4pZ7#9Z6RL_|b6m$|cgLcw@0*v3ZJ@k(c6hkwAnYVO>vej1Ud+@J zmd5FHmzm{;@NCyelYn(eN;nDn`_#?U#CLlQ0@1E_o*rolYYkSYnVV|{7)wBf`I3bS z3wuM@a{5v^|HFLZmB)vIn$cVy9EioFeYsY|Q3qL~iyQ0Bcsjz}iER&u8ipipTp4|8 zFkQJM!u}RU^W9}FiD&nzDdqt*7)mi)<#Be52sddTfpoC5gMVFvTIrUaR_8tza#qWS zAs9bt|4W`I<zD~z>IWL$5V>l$!oXh7r%EQ%LVMDtCWd3PF|56pgSaF0dLR4iS_WWm zb2|zMZ*BE@0#S(YUr*72i49K}BMh1ln}_b|_=?5Ex&@ST{U9Okw-f4PKSn&>YI&4L zW--i7j$4`Y^q)Sr_xpusk%Z=GyjgYUUkiY>rX|~iNx~(x9&_b=oaJCk$ACt_-MD@1 z(0&BsKhiL-AjR=X3yu<;<J)r^eAYcY*SLe><m9<FL4?7qC&7sZ1u>4j>36kQ2A-A1 z)1cm_dhc@6x#h$|Ubr$5Ug~rn;WIL#F-xm>TUjX{Uq7PH&~kL84%$-iI5(W@>eu6r zJw(J>cj(PkQ>b?Fb#AAeN3(T-9fDU@?fyfU`D&D)&H*~M<7lRv7!iMRv|}}E*#Ou} zpyj4|0z3yt!nsECbsn4Ic-`epiOpRWFm8}arx0Pp&#Y|4xSO72O%mD3$&Hb6oqzj< zGcvT`g(kzkxxYUJh;OxsZ(EFurrf(=($#)xH#+3DOr(|d_YS;Vy!-7%M)4bc^fSO9 zNv5(o9(CH3sM)dwNaeXL=S+#erj56y6GPY$6by5};A5|NYN2bt?dfp#8i~|`r7G9g z!*%{}Wn5G*&7Jz4-;T4u;X*W)ky_KrbmlQ$%tq;tTj9{xmXh=2Y1i&h_?-{Y$WpGB zUn0;(U7QEdvy3-xug+fXX_h-*mT`FM8Q5LzvWX!iF<COXj(1FQ$DK3{By;t+V#2kA z3`=`SiXdFtZF$FOxz~zspiR0hrZuHsq$--8#_hDBBB8v#`~C|MP%NMZ^_I6zfH_fT zdA1lRKgmYC6_c%<ET?t#DO1@KMAjIK7F`Pr?AU(xGNe%yW;(XV5SFCbYV)g(xZqm% z7W3=yqQyiuf7?i3VJXWigShe^@jV1L>&Mc2O-(#B=dCTsG{`)f9O_@1lG^l9;WU5n z`9znFNI9C{>_(kyTg>Ehcj;9vsOOJOdr6dOTx&)Nou+xNWSlR?f3Q4xsslM&yvwzh zA&Lw4I$GXuRVjDtpJ7gGU92-=alI&Z!Xk~<$t4rp<<@Sq8ULEW!QxrFRYcO}*=D<T z;AVWgP3M)~JJyK96&ZmBlIeB}9E^^ZSIM4Elpzw7Id2XYJIE+&XRA*J>bO<-5u^p2 zd*|x3X0GP@PK&r*9dGn50UAjgl<BJ>9wV)HHdK(BETOsUv!dY^mTN&JvjzxEX3ocF z03gFCe?&F~i0ggl#L;4*?!`v>v51c)<r;hd{YaOKII3@e)K`FX*$8LtC12mMg!>|& zrD~s(ebfOC(bVhV4X@Y*AJPJAD$H1#orZa=GX^G`XE7saslf#8+pmKPHm`d&%%+0P zKQ5xA0)*Ad4x#&}%{GMa=!=Mc<<b$&2jY8}N6inNuOb_e)|TMLDES=wpOq6NTDc`t zV6(NHx0M<7{=V5EpqFGp)Aa3|?0r!M%{E6aB~}{+pbzs`J5V3bb&y^{64f=`O~wA} zMvuDHjZ1BQB~etR&U`z!XQgU-c)K`-qmT91G~Ka&{MH*P8>qG@eL)?Qa!u%20&D)l zCU>M<&r}YIF=6!vl(ye1c+vU2Vh&BCZdhi|5B$$Ouje^O`JAeiMz}eQ9JI=z>!5g3 z{eca=>r+2zwK+btYM=juFaPOBPEU`Pv0baOJ9p|9UilMt7NpbUYv(GWlzOrGVMdPD z%H{0>JeNz{tgKs^i^iQ$+Tgmy8+)T<i)P{L1p4CTe61HN${Zdy3c(8{u!|Ra>;@5& zF|DbUMgaoSI4>m|=s@YbP<er#CZVX1_q@rLtGw`BdpWtR9gZricy~9>u$7|u6d)bb z+)uO&XpL$CmuxU4x?_ZYk(=ul$W+J#?X{R4zzBzPx$U**M-nf18O3T0d5B&dM3JOn z3dv*WIPREkDbPb>R44DyhoxN%yQ?YMkM?-(a?Oi7^_;u5={)BxO)Nbvk1lY=QqkFw z<qR(eqPN=DzK*}+y18?MvL8e;8V#Q}X7z0L5LixUHq_NA3*?ZA)f1rOVPhZMeqrWE zi%U%Wu+|#jKNUbJ4}@thPKUMY1q5Fb@E>km(J6hP*qv-Rs-mN)rEWDUgyp#%IBxeY z1zULSGIa}&-m{c8`6k9y#&$t*<yJ1Y+<CpNuKn?h`NWAdqznqk=T)+nH**dLzg{#E zB*Vx!5H#N}?0e0*pWSqU3@ij7^gvl7tTtOZ082ZSBm{Bp_-s~*_Evz^jg#eaE1_!P z(qnkhUMih>dunho`huFU`T9$_`_({0pnR@;vJlx@_Bv|yfzx4bm+j)3<GFDoGKqwf z>T*t#_IO!osSs(AX6wVFb`q*!tbId`_L+$^$F>sWRX0hli{2=H<*ul_A(gs>+aUxD zdWP1(-3>{+;;eAbTc{BG@mRaM-TM4w4P#1=iV68hw#LDjzn%YH;NorlC7`V{hzFEV zX>vGaLsFW~R5nzz7x!u{=RQrLcXKt|B@z0WTLHuZ5S4&74viJ@r3EgQ-cu*vYt-9c z_GL*+V0>;t&jU0q%Z7s$Ul(M5%em+`p0&EN*R>`7r&SB?ZO#L#%XQReLUXHtWqFYw zfXi$ygV$ugv4Q1&HG<a;M{mzj?^RZXRcbz6yYV})ihru^JB-)W;V~o;sinDjd#VXi za<8|~*EbO@*0thN1@@|B#k&hN9pAziu#b1mHfS}bPx`I0gwd)zo^th%URqsUUa3rF z=NeF}bcd$g^&zkB<IE|mOlPXD-nX#b#<1|PyRPi6#O&~RTIF8QeM^Xu49}5}x*&sk z_4)OHjkFid`ud^#hFYER+v58}Biak|vBGJ*GKm+BBA}osCzX&A1-9aQgmt^w&#PgZ zG|w(sRHqw$@I6YSbK&upE`EIDu?2^Sh;;MG=Qh6z(|LrU$~Jb;tH|KEd%z;P2%V^C z0nJM)0G@R!Gwxt3-7m>E0#7n}XOC>o*6vXv1zq-i?*;eg0dpo<4G~d-IB0@|P(d=z zrQTGfP`p!wG%5-IoslF`1A4?@V*6{^KGf8o_4<*M@@mE(SRz=8%TNp*{FRDw_UQrF zWivohU96dDbkZ*`ExXV3@bn}6S>BWWk?5}Dbvm^wQ$!D0@<Xjcm%U3nI=iLT45w+d zx7u`+M_}=jb*SqM-D;BE*Q#^cpUmlW)6=#39p>;UPqyQ#U9oz?w-sN`;%r0P>9>}M zV&<=irMy(<Xui<x$?^T`E$Av^wQ`hV0ozsXi&T(Fbaqo|H6TcJOS<Tw7)auL=Q_Hy z*&hgJgEMo&=^@}<sgrM1B|@hJAKJmm<5_u`ES#tzB`1qB?y9GdE`0rk8!!$I5hjt( zRNm)yfka|!a(ZJz0phtbh|TbJ&0NOYD`+<JIuTN}?GfzYT^q-lJyZotyfWnETRa(Z zyT~9o7vtg-noOmT&-659Ir&2i1JBOntId|sx0R#YMz3oO3=ysbdIzTDjW>*WP8{2= zK4op4GdF+Ju%_37tWsn-mAhouX(;8=33a&nasB4n6-vBv|16fr!i;!sO0Wf44U{c} zfzgm+vlCFd{pDL8)XaXZsk8Rd)b7T9B%muVkg_Q_j#j(TJi**qW%)*WT;w6xOZs4y z1L3)!5iUuqt>T)_G!FVql~EIYSheC&v+R~JjL@arE=Fm}&kyi&tF@&dGDg7}_nM3E znJTGk`<faC1@q5a>IX7HA{v9Iag@uwn^~`n<vPD<#r)-LD!ud!sMyzt_td1((Qq@E z8c4XTo0!qH92}JA^@O}49m{0UXmJGf_t@%YhilrMv$7%Qia<$FvL7epzDk2)_<l}l zyN}fT?Q=9=r(NgK>v6tNvvbZvL7ENGu7kR+*5Gs{#V>jo#ny-$+;h0eAJ@q=aO^nS zzlO19H$6-`-991fw!sP>ORyX7T`o~$qO<7-1&F$Jt<@eb6E2rgZI+ZxatmGeju#{@ z7HW0X9&eb9S}w2pC%qhZf9+)~cjP|`iXFz3($V9Bb8&Oyy1WqC>9(Iq=Cs*W-yh0? zES}#mUr%gJZeXJ9E-H&4;PB`y6F=j6le}2$CM7A(<J>#?^uy6If(4I#s`E|c>Ec}k zC|yM2LEU$wa>C2Sv|Mc}9S%li!%^;?ml=qBIK1w@J%9eeY;x^XITtfuVH^f1+k6J- zZB>qY&F~gkcXOzXG#7!E^MnWhXt~Z!LY8zaQ7m=@cuoYSbank9c|ts<k_bO{r?h9z z_xW^$M2nEx48|EQx_1~=N|<-|9yt<brOedjdLQ(i;u*MHBplEEHaTBp{ElmnNG|)D z-n@6F%&XD*GI9Rnmy>;iB(!hGaiy|&Ze!i3#arnU@jYMUd7TfB9F*W4k74_=N6{?Q zWxhE<5+P3X*deQF?yO`iW#T=x{OraPWll~=Pp!Jils?r7TrdmsFi<Z|?#nu%?zY^X zw~!5MlxwQ`V3l|zy>cMMr=H@?Dvl-dGVlZVIP0x9xA8gr>>_nSj4U;8;?Qj8A2+-k z7D*s<3bAdum9P&;-lyw@d^Xf^m-YO{i5_=wxEjoGH)-Bb6GGkh?qwA-{@Mm^G=MB- z-&%7-j0|l`e{xrW?r_(ir+LYbS>kxg7fnFc)(wp|<m5=)G07D{j+zW>2-_+k$>B1U zh$IZ2w^S?GW%p-bkuo*)9gPK`{=M>O{Kj_n%eP~93WabTz@h2L<KJ&}fewG&>IPlR z%IcA7X4`liSrnM&<_K$7JGJ1fTtIy#kVni2B=|VUSh$F*#z$n}PI8P!$Osj3M;;~T zdwxZ@Ef31H6E89*ywbtse<2%3>Uq-97iil#s}4Um1dAR0$m4bO*P~oQVZ2}0*elAe zzF1v;(CzEdXH-0{LEXz*CmjF}DwSU#^#yZpUZopB>GY1OSnRwFESq=a&5e<2WI%E! zL9snnyH-8!0pQw4v*;H0{Q36D6@HT=&zbSh<47myXdtETq}Qlzi)$o3y~Y@};t#(V zELzOL^7rdMWgXq>y*B5&9=C&Hl}g@B<3=gps5(NE@np5Aii)wC8vAOZ<vk6-^Ru?9 zaJw<S(Tz#f)_jyngDXh@cAT00q81Ub!1&wpnbX;pD(9Q*8%34$xKi!K1;_KV#;m62 z&kgkrK@E*#fnoS*O%h0~PnIeG4GPpbpr}<F75a!bCX+{+J?XY_l?A|eezqH=m1$_K z7?Me;l7{6Nr`bMj>aW@2Ojoj#6e5#KtrbsVciR5sR!QQEaDooY&yF)n@!8Rs3(jHt z*N~+t-p-BD^fcR)o@KT9$iSIa(?(EGr9E8MCy5+6`8nt96V;s!wW#jU-5~rI1VWF9 zR-4|3d3=ir8j7Gv#KQC*I>7K+2w8;}la#6m!JY>3)n?C`?6@sJ&p-evOSY1ni3rfv z$y<*nORO6B>$IW`;8Axp8tl7kTXD}9n0p=d0AE9iCTaH8F~+4|#bWXe`>3TPlh-GG zL&zp7ynl1_+R96w0mIcVr@`T{xVQt%@3mTS&FWG=^IoTDKpaOK1*29t4k2!|>+2A* zyj<Zg0hP9Qw5Jz~BqYq57kL`AS#N$>CRLwEh<%h!UT5IEDk*p|Yx%8B&M7IaOiUCa z1c7=8D=VSExj8<{03}bgl3kpPBwm0^3VF!}`3xT@VMV#kVZ8R4Tbx}aEjoG)N0Kxn zAWfj}6f4^|ai5M{-*2uY8ZTU7xW|jXjn`5_*6=6V;7yvhs*0g|86U+tIcZMbD*N+3 z2@MhQ&}gA&&!9u5Ng&r~fgn`oeKm5*eR-f+up0S1ukB!W@%j#vGN@~$?or=UHyOA_ z`Rg-_S$)VFfL(=gx0l4dh}kS4BdEC!F>)Wg+$fpF4>cB3+>Fz9+i4>7-2Tg4YH8st z>*~C7x)}$NykQu#)#Tb;JC$R~=5X7+PR#KP6&?Hb^9RX`rJ+LdC$_F1lzcx%xH>!M zD-<5_gt>jfVJVupF7pnKD;od_!g6<`MXh0O#xO-##rJiVRVS<&`315anTEMQm+A=| zyrF^J<MxL=TbB2G%Dz^I5VfF(P7Z4}D>YwjqSpj1C~3H`1i0^2vYxA}SwiTC-oDBZ zg|z5ojhkhKI^7{d7Ryv<dCr&i#c@|eQVWgdI_>^%t{5aF>bQ>_*ge{QoGItZ*=0Mh z(NlEMzA0874c2Z}fRW+SO8fu`Z#$RGbUZkCsG;xAHu>?{6r(C(Y)Qs*4vv(PA6BW4 zRR`V{jN-0FipQ1y66L6|-cW$am`%<~nT7LnRQ5xFgJ-4u;Bq^79^b)bRL=19;JnIg z8u{sgkqwD?LPUJ^#&8QD4R)d~s+l*_dx+W%!Xv;fG#XtmcFmZi&R^joZQA{!g)Kf% ze?_1qW(ry1<bt;SbdGi*6}*DAKE0AuQz<tu$+95--QQ1F4rNfe!SVlY-m~X%0{9}) z2{E|OUoBSU`7T1*bIbz5WZy`QtPReoKV!QB5@j2fWnH#(ur<d4arP}?nk;-qEygvP z4OcH>bI^6B1K!aPn_(8?HokugkRq<6C-~8Fb3Hk}App$Muo{MV_XSUK9Kay4a4oDz zZ10pvPu{Evy)tl5?)AVxYIwskmF_o;MdMc-DUOii&fYsOUXe8}aKB_o7(HNh#bn2m zkwMfS=icdIVom*ybu;VPLd8&%OtM<Z^!2b$OBd~|eKvpyGHScFUbwoha^EZh1TQxU z!}UqUDw%&EecxtGTq@R2ZnM5k*=OM{x)_f^cY{%uqZ;MwW>$ArqW+YH5NlJV)^dL| zYRoidsA9-}bb6R@ccZT(MDAnpn6_qgAtd<x=mZ7bB0c-nT6DX_j-h+IM~Br`&}z5z z$A7tiya^M3e^7!Yd-pDe74LJi3W}2ZU?`p-v{fhL3<88f%Fn)+SFU@7?C-a~7MG^W z;8LS?@(d1=@a*3w;m%M9^vXE;Mxc8uSzz#M=0}b|m-<3*T*e0}J2)95nKw)(?Z3Ok z8(g}$RjYTy2uKDV>sE{I3Eq7=K1SZ1#8~`Y3nw}}oNqMGR-+nNO&7ynC2b>QdSI{d zl1e!0PGMja(`?f7w8r61t=sFM#$tAR?lL&W<*m*cpHKGhB83|P&E>iQOl#DB(y9?- z+iD+cioh{-VpMqI+i;td<xIhs#k<LzP4t3LW2U+Di1J@c5uXCG5@X`gm3d9ox|;>l z@Od1xF355+O4L7Cj8w}Si~NdPG&jV|TrN9`{FzPC+V1!fpLIvD=y7uDi%Bh@-4h&% zxRpNe-3gH?5fHX7@7!;cy&7{)q`EbIL<7@*&JfGIU0x@R7Qc8BxzE>oO0hP|$Id4X znY@JCiajLCI$(LT9A|RRFGL<GmR;>-`CPxsMgLdC88>P|($;vzZ65MQjDh8)mXp1g z;Z6MTRH;#n(8RbP;r%c>Wg~u}$*{+L$xrzd#?*@)#=O(EDi%8uB>$VxDMQvqIqbgA zJUs8CMyO*ZAmLQrM=NDcKfVL;RFZsg4+J>OJrU(I0?%T84gGtF!){xYa;aMG>`yv! zXX9}dVf7)Gd*Vj?UuDBsMLd|(%fsry-B>xVrQQWy8_W)EkcJy!j;8Z@>@YxFCfSak zG&Hz4ZoO%$x$jH&xmBB=neK{}*D{R)udKbJUH6iSiGs}^x5mP#(r7N8oy0yO!<~sJ zGAVszadFsjsC;Fn*0Kxcdrhdz%1B!64K7xi^{U|wAc<18`qU_^_OB0qxWB-ps)|>+ z4qW^e6--NEJYVQvZbx*3cl*1e%23K^NN*O$axqoAt8CsWXrIMWwZ$-{d@e&XDKeb% zca40HP$;fUl*xS)L9qm{@vIvI2}up#E%-stYOZ>=wcRR#D*f45$iQyr+Bhx#Y;--J z9D`G&jCDlRqKw!SF7wy0h8H|G1HG+WO%*|=)6G8{f|ajNx9{557(z7F5yyq-H?kmL zho14y_Jp{@a%Z$v=hn4d-w)KCl~~`HFZh{#&s(D-rsAM}*SoiXXHz#|wpol-VrgwD zq~f+gEdW+V6baoe4)Vyv3sG2qz2JU0WVh#XCH!xr5+&dfr<{IuuEhcYKp>SF>++;z z`hiRUVSPpVdd-fnUnT42>;XgMz++e?+kXDWJlFh02*|x8;V|2F;*|}PU%!4imYS9= zSJZZCNnGT&l>Qy=c#+Pg9<RvL!)?%Ge~|4yNxK^n1K;H=!DcnpHM!wspDvacL!J1> z4A&>u(BlYkX4j}6oze9XScUQ7dAkE-b;$j93y?dc!wzvMs?grYL3vgD+xXKPyAi^t z4=FZ<Rj@i4em$%i!c=fPdG7j2wYC^~U8af~YB;s;6>YN$N`__DyyVpy$fcU$786IY zksp9e(km~K>_O*L=xl8&&>>SYsh!&2SX-M}h}r%W8+5ciUNIl3H}~6KD9dK2Hsx7( z{o<Kc5NZ&QpXV5m%Ve;u#yhRvNUQ0`c$Ds#aeP03Gu+0i_lm~rOb}7Iw9djz^s209 zA^rXEaM@<ZXKu5hlr{k~*qd7bdw>qX=SihiHSK;{^z2_!0m47+rzaNbb(wb5bvDb@ zE=nLy6#Yrz+1l!P=Q+NhxbWqu)*^^jhSgzxF2%!jX2I?3M$lhlePctIq#}vDqP>`G zV7AdwtIjaN!2?JU1>*Pg4>?|S00g6(tAwmwvQkkC020riVS4s!@YyRof%C(n({9@@ z^(3*hKJ0T)Vr@vbt1(}QuPhZ;F2x#dJb`~);}e(D?^g6GR8@xvDns1x<C6?!3ge>n zKqxEFU0ohj&b5cy_pi0)4QuLR3fd6k;{lPcykV`^<7GyNWHsum(O4xz-`)M5lo*zF zy^F-dW@*h2ltvl^>sx}s8Q<Q$yGZXjMfC}O_HM-R<$y+QPbjroyvea%D1*2(pWQNp z(}=E)R<A(>e{Syu4k}I>)|Hrhn<-mp1FEYBP=5Jz{7k#$deRJ%sG~(2*T%d9@jqS! z3gWt${6BuL6Hc8sx10nL5aM$0_E@zV8{3JRH^?9wwVjQgV5J(+5>qm)fN5*@%7J+F zN8hoGwUKSgk4~6EY>%%3PbmEf%Z>uvi9C^(D;_OO$mWdTTzJd)lmSvmowe&ZpE9rZ zR#s+a-*rAvtBR?BR)V6HA@okKtOmXNqC&b@wI=&w7;NiF%&noW1Jia`D*nIW{j|M| zc#@XFG@F8XvL$z7m;G0JZZ6Mx90Ry&(C)1kK9lq-c{SWU5NY%b&|kc;)U4eJw!68Y zSVwt=(lph0bC_uWURuSS-Nc4=EbC*z`_@<={roMjMUd;5Z!$TayhM&2)oZ);l=t+Z z3Ih_uj__yuv&W8>)*~<78c=b5Yh&jHRfbBxqO0R-pi!w@DL9n>67Fug#6|2E)>XT* zf*wn)Zg5MM(&_p8q^f+bF$Pi?tn-n^$XsmKbN(>NL65yfBIRyoRgV<a&G=-KK1w3j zwoaBQpK!k7BZp4HPz&JTyH2I@oO7S8bp{Z+U6o!FOkZ9TtiPL7P6q)eJd0}s_r0y} zX<9eZV6_;k&7?=E`aLu>>2R{?6^*8%``Zk#u`m6!lrm?~IqS9Pb}Qt5=q8=gQosM5 z-m{8BMewJA2Hs~V5s~p&CB^(*^KE$Yocfn)=0pj)!9<n=9~;Jni}GrZs!5vql;jp` zNT<oQ)f=-9=C2uaZytwB|8(m9UMotWAuV=wB=jN$>Y5^T4=U1?V#W*6I|B6pxYMnE zzen!G={$a??jx_o#G*j9BLl0!yskDNSMc*4vn>!@Ch&1*C#T@7r4D@KMKvJMOY&J` z$Y@ReW2sR_0?vhfxp9AH>Sz9Ye$oL}5o!JC-U|bYIBK!WTW2w@$=djJx}r}jicP;* z!WUXB39r}457FFLzAP~MnZ{VPoiC5*k@ek?6B6!^WD&U7Y-d+$UwoXHPixgaZv#T8 zzfYT>zc+Jm!78a<rA@(I;T{U$<ePwtczZrC>7b@jvrT=cRrxxGNZah-lpl-V`|Ty} zp2Ajm8#0(9*Vq+5U8Ul@dKDWRtJDoO(G&K)nfiGfCk_CpLuvM`Y3y(&59K@+t&>9p zr)M~CFk43F*jw`@NRt>`n&*4dK7*MY%Hc&f=P7*cXrXc`8xt_vs^D4K@i8ErM!jME zk^<eo>FnNZGuUAf!|UmUKOv6Ieb9uN$>qTGaWJ<g^R53+ek@+o7paFc>L<K9{RY7s zRh1^c(~Vy@NUD3{pO3GCn6>&fx}6?mLz}_K7>Ff?n8?4PRTb?&x#m9EROv$`kLLt9 zu1jPRCq8V~{iSej)wh0LcHHrc)uOAUlGHVy`na{dj=3@@+6;mX!^3Txe)z$d7EEa+ zoE_+`iiMN`?eC4&^X>svyL{1uJes!d?gfn8BsS}d%^x3y{Vnzy%w$%Dz!dK||7Bk~ zg>9<N>7mlBT?-u;9Mp49>oW1jN|6_z0kx9LGdD})F;%Np>5ZR2TIyGW@qX*$xH2{N zZb|HOfi8BUTdSdB8}zi{fxcGz%k8hiJ)A(S22g_T@p)?M4*I_2_kIPUa)wf)^|Bw? z?MB<f7SF0J#v1K5&Q8>BYp;hv8V(-=J3eM`aG?=k494Fo`&_z$+*;p>@<KXX(Brh% z=hV#pa0m!c9_!8DUL+dbvI%v?-Sb@e`=vZ*+Rg4B-McQslGt4NUeY-CqNeY$>+bK) zjdtqA9UC1ir>?_Fi!<L6*AuCL+&rNhV}?yf=J2#zz+8jbFb`H)XY<uiPnD5`<#;+l ziG+yQrOxpX;|AT>5x8lwc^6PT4OnFP3R`u)PUmGY)5+23lpBMQdfRe;P={AHaujjb z;^EP(nuF*;zD2Wev$L;9fJa-LO_q4PJX-Ikznq4XFwG6w|H`mjAWZ%>6ofm+C6`vM z3?u-WGK69@q<#762c^y)rn;2N$o5P7w*rq_%w(N=CrowpWznmKILPN1#I<=nWBIzz z?->tF2>k=2DR60y(QJ24Z&)*LB>Xgv$SQ{TdIbYwPv>aPquu4mqim*i;yE{iU&$xA zv9<L$4Q7Ih(IVaZ?>ycY*HcAU(<Nqkd-II~g6tbCIqo(cGcoiPEFUZv8c(NEwr~>O z;*Cw^3KKMfw9!Y(U;7cQwC*QAX3JWRR)Ap5+{G9j3EDS3Oq>_o`quYu`?zyJwMYp) zKa`j}!tKXn*jtkf$sMJ60B6kbn6-5n^Q(M{EYodZJZ9$*>7&Sih{{V7liGti{_2H_ zVrU)=OpTPwItKMBX5~N*U~0)$M<pgwYI)9(a&pcsw#}h0kDuMf;dA-t<#mkAVtiQK zFj3VP@2(31TFEjhxgQ`e$N0LZzTu9ChXqTgLrP|y23;LoyVPQ_hP=E6E;js%&6dAm zwplJtv}(>)Z44pHQ&M6at;DHGc`Z+a0O0m;LrYDo_UKr%ZGUT~L0-yo??;EQzoAWc zxU18!=Hq^)C#3{T#@|!CZfe30x8{E#2+J-drfKtXC=@XRHGR0DP5*<NXrq@=a;^7~ zNo68gBR4fpZRM$j33SqFS9f#LyR~_-d(1_#At|hiMH8g&-pyYx<pT`X*ANsQ&y^GZ z;JA{cks?{VjiE=@(t}CNF1sTy7TxO#I^8HFG8u=H?`^PHZk$#yZhtSh0m;4n)>E}Z zVM!0ic4fR)AkBz!`@1ylc)bWjcC~kQlLIC$4KDoWKcE~=W8u(l5OeO12!E+UGMULf zEHpswmUg9YOMgQ|FIw;2K}k)0a*P?A{JWUx>}QXbCzPfewXN92OKT({YAEO4&FKsv z=omZ)wg-8vig<Zhoj<h&O7k=TWf_x%%I?#}n>WRIi=PwWraTS2ro{lFL3s%ZX;|_q zlVx(a8)X*D=GM4zu~%TN;Upsg5@j=uP9{9(P#h$eF1@b{bxx`k-SRn;At^`f5Tg^4 z<-r7b%l*lbu@1cj4myB%4Osa}Kiv8X_oYC9u<mkaf;89JC!D-#x5H_A3KJZJ@ML$3 zA=p0H4t`&XK#bOK*=jbI8}fCOP+S2g=<l<Otz&KTi>)|(uUd<VT_KIk_rgm9SY+-M zI`W1}Lu2wrEi5}-M_&q{YAk7obM=>Lo`;J+?TAy|Q@`~lH#gt7W45f*NqE|BZI@ZF zI8FvD#YNK-Q};{w6~B@a`U<k#OeOm^H-)X__|ZqA8P(-<Z>mCIDPK$;H>8tLV05EF zqPp7EThB9oB}EYWMq}ps^7DjBCiDKw1+=$w`x{c!u{bta?KqTZ8b1}YsnT`}^o*y< zh(DOXp=&;Aj|RnRGEx#CeoHzkDOMO4XQVIiM6qRCP>9K7wEhU|`UwIYH`lt&RRgG_ zg1~};!bJ4vPtl(R@V-Qx)J#lF@pp@rE@Ob4%yupzaJber7NCN<HC3nVl6G7A<1wZ7 zC!jN2=zl@ESu!M_#KbOtDglLGy4oD}xg+0{_Pyi9hT(-O$Uh!uJ#;C$SAP2R>A~5V zl$4ZG(FBR*5(I*YiAhpsjIL<0=yf_<d&^?BABzw$Ph1J{Jzs1xhv0TU+r0!DkWOdN zuD-G<d@e1w%Pto}x>t9i4e8HOzkwQk)~~&BlWUx+%`T1F&5k^>7VFLTEHE<@X7nd| zO?*2_G(daAgrn+HftH)WOzSOz-+KlwV!NGM&GsvbsMI@94WBCQd2i$lbaE9Q%^eJe z^AlnP@o+d8-}i-VaG5v8&b(?8J}>Q$8%X1HfNvpYPm%ii-ooQx4{w}v5GMUBp53KA zEXB<)iq|Hb^Td1f<7HQzHnKcC(q=RL`p+H$JhtY}ehz?Tw|5J-By_JoIEpcA4{!!B z;cP@b!ur!EQiGEF!wH}v4##4(Erk2cXLBby^U@m4ti6;FtD}I>rAFh*vG0wEDsPU* zTE=xxxX0(d;pB}yqQ@v-oHoaV>-hzL<xSyR4SKRQYK;TXI-UBd|EX>ylC#bBJJaH8 zov~pIUWPmLypPu(_S?92sCg*NZ7`ktHJ<pJB6B-?{1~lqyXPuo!M5yH|H6NIAcMBI zXm(YlN68jSSmQr>H&wjoe0nwb`VOBSLkl<&U>y9s*HS;5o(c#{5gRUl9U2`W>AbzX zf_}vIHcD*K1$qfd^E$rPz6S;gevbsV;#_x^uL<xy!>brfOnuTAcl-f#r|Ejwt02F< zw+H~cCDIsb-KNl9EN28O7Y9pAjBK42-vE@7myg)(X?WY{PE<rRzggl3%l9sGS%XO* zDv_TiM1iz*cE}Gc=KaFmVRCAP`D3waHJZn9hqLta!Tk*6t*b^j`t32{8Z%_CQ9=49 zXKuKcbAU7<m10l`7;7*ktg#o2_R`@EGNg=m7=PQkFep*b$z*2m|3MAekJ-+)CC)Nv zjKR)khzgK6vh{WA5jxd@k>N;bNg#~NKs}5CAm|Pl?}}hVxP;3u@I(Yqyer_MGxKw6 zE78tqh}?lnhsVTZ?zA@)kHv68ylkpSfih@%GuB4)QFDv)5b*VS!0kESAF}vMv>#P= z9fR_SivH>g;xzWI@P+l|Wt)@l1loiF+Da5Zo7{dAw;vr`2hiSJcwy+)>=`GNeZ}=( zOg^oIp6PW<PkSxBUnLDQJ(${W`@K*DkalLRa}iNdR5w+8x0_^ygqH(;^q@5LQjV9h zYCa<45)LkyNAq-SxJ`|)>q3eEy_@^6bCuY`9RAhp`LK`8Fee?gSFP^IlFzN!jRV+) zvqB-$lYH9wicUwJ6@akdeE)T%J=zCDMNOC&bNwDYRvLeHV?+G}3Ta!-6AJTGQ^}q3 z)52*Y%fx2jCZgxyXad_e{@KH!#k+WRi(Kpd4Jxc>xYl{lGX+mqkFYzZ{wFxT@E|@M z9n)lAWH=iD6pmERE(fB_?kfxR)~c4^v+_@ewmO&J7c?V3jM2jKnwwKo-7KNUc669s zSOIY}3VQkk?zkP{so)S4x_-=O(LpIq)`4<<q@j3$?kB$}$Z5H`+1O%+qN4K=i77e6 zU4;yFb>%!gACW{>9~WLf0b=Keh@yZseCOE;^tI29j;g8P;RIt4H#Uh$NzZbXvMd%$ z9dOR&ed>z8$;qc2`_u4fJ8YRsxEjX#iSmE+ovAi9J$F?~Dc+sy%*F^+!qN<{tbH!F z3ZnjKytH_UrcBN8U?gRQK@wG$OE|<p3d)*Xn-1eED)4Zle6FKN!h9zONj9R<FKW#f zeh=53yyDMmHpbL*D=gkNLPTDbYR_pcG;p8j=k8*)qkQ6Lxpw%B@xCdW-VW20v1(3j zd-3KXGa4-sn25$E3?OAC@N?(<pk{gR@ALCiLPsA7--&8Uyq<ZkQXqGAFK0Jmvj61e zjEZ5zuki6VaS8h<riVJgFMc5TA;HwdD_LD#yVp+Z?~QgoOL_W80eAH$-sQ=JBX852 zoYx)tz;gyN=Uq<iMm3C`Z7{DW3Fo)8&V)M%W?Yjk91KfAzkrxSSqxD*JWDy-AYiZs zghUkd1-gXTYce;(f?i-?{4O@pi?pt89!loo0n*%6z+<V>ZjaD$n8T{s)NP+}xaD0) zyx7@oMJR4u@IDbUGYxHOFecDM-efsF?toK-ky`!yh={i!8S^=8wCpK@-+&7a5tX{e z#+*pmHY`61{kE-A8#e1nO7$8F7f&Dg`9cy>53<3_{;yf2?4<fHJtbs;LXqj?nh-il zddwj{;}js&N62Lus1P3>QB;In=XAm1Rt9MqY)+YGA%rpY3*eu5-%0#I(vG4cUGJl| zD6`hl<0Vsaineb9sQr_y<BzxA!0?8WBjMWMetGb!nQqm@Q<4(PsZ{J=Kj}#JYj1dY z+#r^zEm<_t-8q*IDf{4FretE-)}pQ;(CPD0`0nO94QR<CCZU2+k!AGk*)wE1JIe=C zVVPi?>8Iz5+k|hbl|X^c_NFC=V*wejiS_nGk!JOnXD{|8H!Wn915=J0I8MBdwlm9a zNAaJl&(e5htV?S7g&)Y!D><80f{pjaXVm7;me0Znrpm?L?nU5X90Y-4S%|ww>Wnjm z=ma~i$LAj&BWb)olh~WYRxkW{fMTkxweC3|@_6f`LU_f4jpoxCM)_Ri$C-B*W5XwU zb&>#WL3gp~0jRz(F#b3htgThAsDc}#nc0orHU9I+HFa~jX~|YM^rv(FkZmBJAn{{B zj&aIN#`J^ur9pxpFn-W|c?D-1m_9u~mo!L9OQ-K1{;?_$&EqOBZIrluEKk|lcWU;8 zo5A>q$4M$#aX*aQV{lkg$A9%d+udG+Z?lP4ZshO4L=2{5!zhRy9U~RTnBmX??q5sZ zz_<XkYvjYZao+`kN=wPxLeE6_WG^wFf8LROiUd{DyC+*H(BH8=M;bs|w{X-#ljFYC zV(fuywg_2XrazrVG*hBEJU`ciS%NLRlE+T}CP9i`)b|MGkp`@nxAKLbhR@Zfn925J z72t{T`oYgv1EybC4sgMWb0=Dk*78G5H4kN7k*F44R$0K(X8SS(j*Al=r#n~t7V&j% zlOc%CLyIGmw%~MTn>E(uCK#O@;fA|pn>>1gfKZVbn-Jp<>^c<{2uc<tMx1>n^CQGv zYfw(k@{gRKZxBZRF}+F5y3%*)m!GJ5HWS-p>sedyIa@~z&$}=>HPYqQb$7ySYAXrg zswHQtO-J%&9~WR$eS18PJsViFva%8)q$eUGLPEv_moEomKSoA*U<Dv7%;;?@TVnTo zM(PRGJIYKO=R*$siMB#JQvTUn);iDa5F(+=(R!J>K6d3)7&=vNEIZt0?Z5uV^@+6M zX>sPf*Gqa+wpGX|WV%OOBv-CJNDajUTx&&Y%XwIR@(j_!$-YOMsJZnh7GfWqC?tU; znK(L+f3X@;$npQ@tgLJYp<olTubD#lo&uN<W70sm5C^6n9`Qbb+?~1)VvF>Y!UNc~ zmWG7MHFn7&O$gP07%|vEBVqEL*aB8Zv{b9|VwRpw&#^YOzRRSJ{?E5qnf#d`F_$`g zwbdqZoTvh6_$mt$Er}VEVVQf4Y!PDxZr3^G(z+rl8j?OO4CKW|C8)4HP4`Ve+v=2n zHq_r_O&xu!azJXR)_j~sFnC);f!}$V$MnZ!Cz&Iz$J|%3k#oK9^<;M`=ZW5BGq2cF zU<D^3q6*Zx3f9)oM|Mt8zWW28L?!2XSOwq2fox<1TpDGX0)|sQqlsSgoxq`zG<Kb@ zvOs``4?gQst#VtaaniW(D3;F~S3uRd<9WDY<bo~EO!lMnNju9_<?fakm#RvrfNg)@ zNj1}#2Sd&87Vk(%WYx_S6rzFqp<0QQsAyzA<i`(Y9({IiV&GSX@%t$P&EtGm`)}Fu zB=}bL;}wPPQ0Q@SUpb0PbC{LnBtH&i|6MFG%T~9OVRya`UOBkvsf@}f<xGI5oZX42 zYNC6nsL}hakoL7PuzV;`%JyvuZ|@L=q8xpF`rRQ621c=H9A-q8y%$Uqb0KmC<45_> zSzs}ESFoDl_NtzgU5NredliT;E8u1Hs5ubW)`fIaROtJye6&xbslu#efA)w7h8G`; zAU&P%VXm>JA~SM+P{95Ul_dwF)_HOTK)rG+&Bw>5pr8OqUjx&{_+l&#R1cl3j+jFP z%E$S%z`!PiN4?TiL04!qdY%C*Rl0&Y`Tal3-+BxqL3;xz_g8!17Ls26Q$1_ssr)lw zDM%F~=KJGK=X)4he>Cx^p8^5o`1vS+d(a@e$)_^-h^VS4TO_E2;*x0KQW~oJ&mfpr z@C`DMJ})PU6am&OCPY+J;wtF4xMEZk3>fT#F!fJ?w0wECZxos=yo{!wT~=Bep&e@e z&_9Q3YYu|~lwd2lm2qG2w3f8w<X<fnDPw*G$`mLdJwk!dv$3%mhkU^mM$mC|tc_3! z@b}mGERp|#Jtb@?6hpkJGr!hf5&Lk=R&{8)=Bo3L1q!$j4CVHu{c~t4fI+MSub}sj zbkx)m4=OfSSJ4Rwq%2m{N<I)1`zH3{@S<jPNV7iO@(%g>_4`t$jK!wAh>@ULI^(+( zGF8d)vce?>;qHIlx7$IcNgffte;O_xXld7|N#dZ?e357Bz4-YQB>jP`J1YD~aG(4c zGL$j)pg{{Vk~4APWtca25`d9ff`n^JYM5w-UXccE9x=KHLI(TDWds@z`?hKA^_yG4 zIorORuF(w*qZl4hWK0q)&ROC&pl!jCFFKK2#0J?4+J6GpUl?!iL~jryprfNJQeygl z*3r?a{*u_WGgSsWN`)U~r1roR;=_$%4A&2#STCXFC-NHcgL@4iOu;kbd{;I6R9sEo z$D?w)@4k3~Hjfh@mjBO}z|;%EH9iA2NZyz=zQTfnBxGdrLL#C%z<?8|D0W;OGU1|@ zOqtdQ5ztop6n=d1Ib>t&fsQX&hmwxFb?PdHuoXMx6OAU8Q_8ZT>EQ6zUh<y{YWnM6 z9uM73VH{VhOsfSrLm<JfuC7vGp`f5(7%m*G(ZhH*_8T)98X0XsAoO?HSOf%n>|37{ z?cWyXJajb|xtwqRasdxFI}T?cx)reol;IWdOi{ywf-=tzi;IgnQ){rWNc{QJfC*+J zU;M#0V<uei<aHrDsPJ%b4L|d1b8<syS<#8O1O7g8`d8;K#(~%*U6avH!r)JPK5E?_ z?(Tl6Ot=J(Ve)s#;j^j;b9|YT1K6+$PGaAOgGHQkp{OV;<n4d2#v6&B9ZYpHz~KRR z;Gccef-zH~1nJ2xf;YSGC^P%iPkjb|{$=pQz#djZK$U^t$^Soh+4MasJ#>ASre{j} zbPwO(m-L``$R0EE=$B~9Q%&pVvNoj*H1Gc2ZGB}W8g0-+{{x4Hm}pG2dLiRCU9&lu zf0n-EmQn>hu}*~8n5chFGOe*iWioB}RB3zrShFyW=-+v~6n*UfSr77Bta+w9{pTV( zZnFtR`14U2R8v_9GMJ7Y4(}%Pf{sL&;v){wKfsYsVNhE5b;^5NE)?OvQ(&Tf1}`#6 zl;f>51B?IOqG^OjOm;S9AB`d&OOo89e<%LA0*p6aBv7q-IP$fI65}$*Z=)fBojq7J z)EU=r{``IXg93e|h`=39F{5}f)mGcOE>+jLYCHTK?Yl4*N(W!LX{A2OX2L(VJ`W!- z`tv5h545lo=)(V-p%AIDa>V-PA37j7z6-_}kn)RG#5lb8*YD3Ee(ZGcSPurwKuOO~ zTeQGFC&zN!_1_i7`3wn)-UZ%r<NP^;H$_i-y5Qo*Tad&45DDYoRmzno3#s1%^a?og z9r~0a3ufa){`C@TVTB1AWs5p$2fa@JKc_5x?vqobP=2kla21XG?O#hM7GAL{_1}r( zD<HVM`E%a5oI*<E*GZR6DOxxt@pmx<R@G}8b>n%3#`ih@bCM?)M2yt0VE&2>2E>CM zMU0FNMTXp}Pz^9^{c{x<hfwsw8fH6Gsz1Ma_vhQ!^v0kI|NFP4aCWR(1+KX$7s^Q1 ze=jd&S~M&5tAd58Lk@!7e<s7;AA2wVT;aRNQ|9!<M67c5jDIW3Tw$_<jy>Vu84GL8 zPs-1Mh5Uc6(XR|p&jeULK8zJ`&}K$&i%wJ0IaG%E{`0~%4egr}@2~N#<isE4{c~2n zU_O%kHcX}hCgm!57QcT!1M#=X@$_6^wf5)#GEVU>#SCI4u`|1bzQKQbrgt!vLHdYX z(fb(jy<{2TBHVxH!jMcRq{s(`hK3sa`7BILkS1As;`WBJ!~cxSDPcX}{<L6vEWZQ% zKi}**fAsC|kVV1Ut5eVccrUwpdKlfoQqOydnDz!D6KjH4<cPow^Y8R@8J(0`-PK^- z|2l>>Urfo;c#4l;aQc5O#T#RHxK<3?^%3LmW7Md@HQr83N^BzSn%WuA5&RpZ<8Ywg z$z@*GxjCMY{%KZkT!mI#G0Z9L!mL&$sUgItj0{x_3=9eVye|JUxBH*7-`^cU2IoVN zx+g~<3KuYF1LDd*PybytXq)3@9JcXz;3*y1lZP0dpGN|#06p{1>3_ny*MEEi|NmDZ z53gsJCvcUSrc<W5?3?_iq}C4%2xYGb{<dhLED6U8IgcK5hM0;w#Zq?Vu0Me@fuEtJ zguESGw`s}S|L2AO-t~|{pB_$RE>fR-!TaHfg@+jt97Yrct@47(A7f2W<nkullAk~S z;`c;8BmX_o5557o|3$ce4FAv|FaGa4W{u7hm~<_YA-JlbdG=>{1G8E1^L+twEvJIn zQ@%i@qW?OCOblgOLQEsVA*#UMS{YBvX<81~f+f1J;$AVe<y_L$=?)mB-bcaV;YJs) zfv?^XIyc|v&!7Fh#4Mp!%DZWG-1XT*E_Ixp=4}C^1kg`Bm^0}L28+IoU$Fm9Eig_b zo_w@_9*K95KP5-t-|{%847c5#FZl;Y$D1PSgCsTo6&nKhuMdZ56+;MjA7z!(pS>r{ z5~&}qj9|dk8mV=}*Euu8A#CAsihn)$drJ)aqYORl<iBs(G(}9&UE}S%9qhkxE~8{n zCY*#*`QJ1J6hyz(Z#abiyOHl~zcT)gevRjalwCw`{tjkqVMDC~Jhr<y6@0w;2Rjz9 zM0E!$NDO4g;457T?61!du=o9)9AWCYG-Uref-ilQ(fcN{-G}1$Zw$%=$l}*VFAcj) zsGD_u-Fpc6K!o<Tcmmx>3!OqOl(Oa3I_|$`ff0MFR^V_*5TL->qGk0STY?kb@?)Po zIfiXRGp*(#D$GO(H-w2jO2}$-j4UuA;ny&MB}t5kzFeRN>7jxMXAFb;5)7C<&7NO( zi;&&3-)@Bdx8{C#Xpll9(|WE<nWtJbv2D)|Zz=lKj{+~(AV+R%dD$oaIZU7b(RcUI z3SK>dcTeAvGk(AsbS0MGiO>GNv`TS&8ZDZ0(fP>QVI?q~>dEKHAVp^Pz<;LdGU|$~ zu~lyA=&LP>_}bCBL^W!mml%A!Y!zB%=SN51`bVxF!5CytBvl@rlDdcRy8Jri&!`kL zLph0bqclK)(RijP_f9HN;|HxSb<VTQ)s**G@k7u5&A+^w=@X_P=o{rL7wmbAk7;lI z9>#lgtpGK_MFb(^^JeeQK9;qjP!yQ-Sl<6!-j`zE4Txfmuy1>-luUJOpSt?-E<F`W zfdghBHQk)dUoic}GFHiyEo64yU($Q;kY|XkR3jsiOlYjyaR0B{gxq3h55xeU)Ec!x znAc;*OzoY1Ffd)fUwaoe`R#YM%HvZtE(U(@nZDK)`Mdx!utWXxa%B)?C2O}St4cqF zkX@nitEQt9!LZ7u|M;G{#AHuhPz^esX=q{5jDkt%0L8!cmbYtqGJkNOQNtq(D)Z<U zBTC=rFmwr7M3}Aw3Bypd<8B|ukrxL1n<z_^)R^c=g+cwA`zrGPK3)HUao93+^9-|j zuV%({9yH6Ybu|pH4KCNW*VYV-UK;c;`6ie}-=ftXQ);CZ<^&S|TfyrUDI#?WY8JP5 zxO?AQzKagfDl-DG9=V<8Yu?8u)*6rMBjgIn)<=(cm4yE{G<c+f4qk`Qsg+2OGJWS$ z#R<h0d=9g_g$kyKjj`o=SZgjthCbsOExav#+rJ|iW=Ua!tsBkoxld)s2rNw3awm-9 zqaMW+V6*-*>YLTv*W+ggRuh>Cas~QJ-!^yB1mu!FHW&K+*Lh)*pH5iiSJ~Pf3vsdw zZGQP(@o`of%agqFaJX$x<z|ag=Q77cp5V13oiAnWauQ*i$~iL)C!@{)dN@~m;Rql` z(5cp{soWhM8vyTv>X!31^t{$vPju$DM*4<`6sMDEtq-Z6CESQrUd8-18-MB7%CFGf z?Cw5G-%oqVD6`r(09DuN%xNIw*T!i9>TG01PY$19<Uc_iI{)8{;SFlY7xS_R#gsUu zd5s$3q3YLz!|j#)L|%H`?;3zBPgUIp4P!#Rw#89>Bx)wHD(3ZZT8Gyj$J^GyuR6Ys z4yOI-jWU^I*)~}o*Ux_0%Gm;aFtrEI&rlYt>Dc&a31o(ZV(Bstm5GbJfI+b3t^QT6 zbK3;}47hItOi8<0YMS=<!Z@*#SE-5EDDbmQtyfpq&$u;=>$tjwN*@c+uoF`|Q)W}8 znm|`|?tfHxTCJR|;#6C!%ikwF`=Cp^J0ChV+!J@CTxIWGbO2)?QOJGKX``CvaX7J( zQv{VdJsAdR%#q=rQASEM+Ss@+2PnnX9>Y-%)S?q9s=p)A98qb`BAPJSb|3!uZxq#p zprf<eiQ>GWN@8bJTP3_kOKWnTxEfx~qdVE0X}vHsqSL_iGzb+k(@gl5csQJ~TAi-Y zOISaZ5Nc3hl2DsNIpW>Qg{@GA@MWHuX=?OGxyQ!dp`LJDJx<LU0U(e8IDc9ySQLv* zi*L*=faxF&plMAFK5hquguBc0H+J+UCR@m_%F6HL3uJ)V_t<9zN&}gG{Kjv3np&+? zcN4lVmO`0A%R|%hLK;4ZAy{~&yfirxsVTzaw$b>d?RM@}Y1{x!1ga-}k`tz(2g74V z!+_g)GmOWQp5$C26E-3ooZ~Nr(=e`<R#?C%bLjAQ{YWphiJsGetp%yK)w_>m=2N>I z)*&&fa$++q01+~rThfG6??dE!<>uyw*blG=5aTMq)=|HoBWNc4*rFH%2<ErtHvNsL zi!E$Mdz%$eAnb_`&WP0w?H)C~0fu_dp!c`m7df^NP<tE(5_!;9MwwB*7aRnxnu2kn z<+iH1!voNM60A9dJSS7#R#QS#!7nF!$lh7bHOKf|+pvxYAy0k(-@-$gqZCf(x^mJr z*X*u#aC$gICo|GMvTCGg8tMdD54XuwqDdU^G|>%oa&dKipRc8*mFk2_aB(~dt#;qL z=>npDps+&QI$bvFh5qWs-2(x&zUl(Lpa9gHDcD<Dwe<BB6#S@8$i$_GMMNYR5(YwX znV+H|VJxcTjdd-2?H{HC_@<Zu;ZXbl;jp{&g*oZ?D48frUENAAZ|#n&(~{65lD?s# z1{|!i6B$rMk+^9Avc=`J;kaz=Kz4#pGkYRw{q}X0t}dQZza+uS+ufxrk_F7otWPp6 z2Z6-ak<zbimww5z-y`?m?(g0%-!Ht1HDFN93xmc{C!hD~t@<$spb@437q`mYs$D|z zT41WT#RW23k&(-?k&#G(6co=|z90tvw0}1az%l8bOm^b#0d4ID2w5SGME`pGUiM1| zo!Nu3A$y@Y_21goBL9c5_W+8b>Dq=dfr5xAh!RC4Nm8O@QOP-HP;y$33`<xgDp_(~ za?TkRSjjo(xa6E!*d;Ch+_(BX?^l0)@3%EoTQ$=&)6>(_efpg1T-SAS_JDrllgHvL zW;h{<<g>+*jP6Rq?5w((*!dq9q1fJ^5h6WU`m&^AGjd9?QAzd-ow*s2oP}y6q>n~( zJ@Us{;!D^gdW^`i%Z~o~0)QZv@zfErwnx1fAtO5w*0ZWe_?abv%VMZtMYC8gslkDT zn^lk|Fg`7wy9kl-`O5EvCfBvcngh%TkjNxOh9^h=BwkqW0ZlQ)pIX8CgmJDPKk#Lx z(7HH#;!8y@r{B4JYhq27bUg5W`J6_s!mO>fc(9t=3Y=rYU^z-k)W3>lgDdsK=}t<^ z&SaN839GKUWd%r!Yj-e9R3YVh)sp8Q&arth{4K6Ls<ym2AlA>sIl<nj=`?*DvCIAa zM}zC>?48eN$uR7xN)te!#_?)GSf}2-t&Wb5Z|hK;ij>Es0^mvlxeA`&CyZVnNE)d% zypVswA`HI#sHS#$vEOSw`5e$O%5{j5%6w9F=7xYLxgj4%13^}!JvSTnM#ke>5`987 z%-IYZ(N`9&vZdkGe1J-CeVi)&1&x`9o*rfb0lKtkagNiR8aG9uP-MrgIg*dtUBJ`y zs}4Dky32B#Mnq%>{WcKf(T<T*h9(VGNTxS^pn6p0dVCT?<+^c0O-`%O=^w1<y`t$# z&{bdEm=js7OjZ+0C^D|i@v+r#%}_MeM0r4&hcWl{fvV>>i~b8LO$3*Pxra;ZEoA=_ zs@(ndz8V0ex`$b|S%i9eHUfC4bGWk!F(jatisk$;8+rn6aO?w!_oOpt8DnpD7AC+y zD^yzvC)=)A$c3)mFrLL2cx{DpJi8aC6&J~M_pmNoTA~F|Mwn$ka=2i#Q}mH}^=zDF zv~K<rr;TtjD>DH=DeAV3&djZ?qqsJ1&B|BNQg$d2hmL;(cy-FzkCi&TuDXeCW8B`X zBZKQ}?guMTo0D(N)t1_<)6t>==OAw`cKR-TnD=-<>WFIHTZm}IdAqo)iJwTFt38fq zhnv$C0=nr6^3w$#w-5@~Y0Z(_cS@~g*qT9oml0(ZkmSDlhs738*QQ{qpJvX5+Hj83 z_qia+T>^G2)$a^<=4avR`M+L6+J3~=C%7X9$4}g~MBU0Q)B}ZVH_|`vs?Wv+E6MN` zV=lKtis5H(PEB--KBB8w5ckMn{q+4^%BJmt$Mq!wd$|CK)Iq@<wtA5s74NzE=eSe( zfoAmNKwT5Z<Mv6x43C*{<oSr{GnVX3(~{xHt6Od3;~?0^9RX!@R>ZGgU;QcTZMriK zZ``20ETzxRD7v&_5zPB~t=5hvsn<;yH-v(%0B*nLcwjaZ<njy{GBeUSm;zAVRFiw( z8o7fg`6X*&LV_!yEQN;YMhJGn&%WaL#FQ#{`Qm>U9Vxf>UX$la74q6$29?aNhp>8j z3K2bI_lz7;y44J%<9gK9<@|s?DiCF2wr#8FpsK+35w^KL-VUDeQ6p|bB{(}-&Dfm= znF<I*_DWi}(z9Ickfk0}ff4h@OUeW|*hE~@?X)kION-lq42$rzRvr_9$DcTM7E=wg zh4tZ#96g?Dc`$5bJg0R=K?%rgs2l&imH?#x{>;~d8CiZGQ`gf?@xmLaC8eRE>gDbD zLOS(p=fN(Yud?(#i}l%-TAcNcN;j)S**0NRg(*a8=yd>Nsa$h(j{M;tl8gb&nhKNA z?`{?^pYOO{fEE`&0~0|-J*Z>9Ey1#S7u{EP`K!duYG3PYDh5Epnpb<gfB%T94ReCR ztU^7lW_~tL6D1@iahNoZ0uxKKaIl#7kXhM0Q_4YaonJhdMVs{gIFP)mmwY)ZUDsSM z<uU<`)>M$KXBO!dOiI?)^JP(%o@b8h@`&Q}Xz>}?yz72?Z~~+h6Op{Vu$T_;&0jk# z3T)deMzAsoTc`tMMyD+BFS3i`p-I5xRQ6zkE+s0`7PsdEwk>ExaDM|cgtLFw5+E%C zz_*I+>%b?y@vXQ&KB5_(db45v;3_nsST|4;?&J&lk{kmSHs1=0jU^McJUY6*v_!-v z*aGljGZYcBd$K`%yi|-a#aO`~Y5BMYbu-4P9`<H!VuCMb+D`7<c%Z&s#=9Y>)p{s^ zDK8SX{AjoxZ^^ht0<Zswrze#QqRbje@Htr-sD_=3J;_vq?#ji&xzuc!&oA|Ac1?<- zZ|Dn6^eb;xU|&h!%ZuUB5dw6%tObdW=6?2B(KImqxWmD%!|T!F*~1!q)fhWW*IK;s z;mc4}LO!ZB-?3W8o*_nREyP+VPu=HWz^>u>crd`9mBtYZ)wX|=pTbZ`H7{t@HBx8= zmCk%4REnHEjMZ6$l3^s%-X0%If}E4O(TAUK3*&?;KId=v6-<w%$&)9^u@wNSQkfjJ zjtu=+5NV55CFt8EzAAzTxQ~RC8C-#!;=M~y=m{f(EAf*(QuY!c2@k0m2Gt*|HN=7W zD-h9Vc>5@+(&gz;F{tSmT|3QRwmC6vvS?q7RRdgN=N5f-R8Vb$9V9ZS^l@@J(UcQy z!vd0hc;Hx>uJK@&BhtSTG-7c%NgvI;T+}mFYKcm@;XDsP%r&<o@twxC_wjBN#>A`x zRDRCYybghV0vZ#a9{dRn#2B)+TEwN{IutToE*fU%3I;ye67}T)&87_O>iV7lhHGDE zuSwMD3>2sF9794)5!qv$>^pG+6@s`n9Tf-BJ+}87MfN%iYnjX906DD0c0FUit|^5| zmjd?-wV&jS9zQ88&GL?1_r0x6ic_ouJ3NO4`VOhx1ATDK=AyWdho7b*uYtKLzI7bq z-t<bOn4{qG2*;9-;k&%dS*J-gU4-jl_sO_}LaxH#z9`eCV<5{;rKWO@`3@%4`CiZH zARrOw3d1kxt2{}2;pVV!p?f_?kWdJ!1YqR^4`3(&^Qqktc(LD_3&6J3mpDA(wt<y} zY73j2{}8R8|0HRg7^Pz<NQHhsI9TG>EODvr&*C9lzLsEQuc#WszKtdz15d=#i&vV> zt7tqXfgTKb$%Clg_w|ieY3Wlzfpv+?&d@(hEMfWzuXm%S3WoiJUys(+Z&wTN?9Cl& z56M6Y?k}%RS&Ub7eaG2<>{%d4-MyWJ63TE0Tj~Pz8=SU>yQcHkHX!tXC~ur22e{Ux zKi&}33s6xa#xtD<D1ltNt;(lh;~gh5O3LYa&4|IUPury6R5Sc5PK(j6A{6YO6&z?9 zj}cQfm$Lp!tvp!+?dse*RaxGRl<d5S;!z`$e5a1$d5VEoTQgT(R8~I-hea}VmI^D3 zW^h>7Wv-UehE@^@R?+u&BcunkMnoWNwf?h5L-1WVa-xxOD>piyTSmuYDE<NV8N=2c zO`+TJt!u$(w1Y|VY7la4KBJA_8h7(~!&BLo1_2_Sh{`4-&y#H?ON_*)sIYWy8O+Yj zOmC$GIt(;4%cCxxfjw2;Q0g&|S}e$ar6=|{q3(3)41H5A-C~(OL@S-qv(_))V@cr^ zoqNb#dC&~Cd`bBMM~<h1;JMkuXt%kcr0#=W^c%K@w{6xc^5<ndkS3*V;h9QevM)9D zR197KFEG&Eq%x1Hijn~OJ@K>Bk~L(U{XpYE8CR;2`@^@MN1T>?65@AhAwLO4_eoaE zs66XGYIp)^X}T~6qG&|Ig{{S+C<j0aH$5%tc$&|~RpblRuU3<^&>UCCSAG9CDDn0E zYB40<a`_XVFJ>C@QDb8+9dFsNM6HiZnL+gApaCaDkkhK9({O)dymZ&gL`S%J01zSv zNNw@vp^USu+daCC9>~_Iv29PHaT)imMK|md?x#Tj9C04qV{;FPRP0X|^9XaS5vq|| z*mbj!6L$kBEuTT_<6>Aj`k5`mdpFRzk5gfMF4wd$iUM;q1NAjX6mZM6cPq+og=F{B zXKHA<&&Qux#XKm?{TAfK*G<AmDkCR*jXLOZ!$GCGIbS;}+>N+->vF9@P>?-wJO2=c zNk{e!2imWoHM@_uCIUYZzjqU|#~h8M`xERTlnck*Q6nM3r?!GO2NL1$jUOfldNP8a zwBys#C%s);q`q=fGMx97o)FeMUp<+8t2UCOdKl;!jY-$8-rbpOEIcU!fV|pd%X{#B z>+N@{z&sRt3=j2L1+rrPnW=>JtyeU_koA83ibb+Lg)_^23?R@hXrurEn2D=uH#Tx| zBj_tErUYKTe9Q29u%}1)Y3XjiNK3e~lKJB4-kchX_Am1EBxHS(7PokX*?jNJ4ATpN zoyo(9ak?P@<gek@vw7l24^4JodO1;h3M7IEUGIDZJGB#tn1HOaxGdG#K*N*6P!oV8 zgW;=Dlo(tTfP5*jla%gER=PEh$ZPGVk!+#nAez$BELFXd1~#pVH8to60-vE>R-O9G zUVFBCp!9qpeSqXoNSDuk?qk(u+0_92^d5n^f-tzRyG=I!%Lnumq8vI|k00~;usI<f z*PB-bny}B9_tFuE@v4Ej<_RK6>5<Y1a7I_F>a70AWnn4G5%1(MjCa~)e&CIE$QN<- zlH#S2Z0!?sirD0Agx$-iqdb9N+xh58ztm)u(>>!=WXEPNPb2IVGn~I{D#BTeG-yqi zo+ElM02W^`ZBKXHAUlEZsL;&47$TM7y>q^_y=s?xAYF)NVdaY1ej`RWy(I|(bD{u+ zOKwUjkL&EGT9Wd}0pFcQP>r-ahA)9Q!DRF6$=ImV)in0d=7Ek*lX6eL(aJOH49hC0 z1Y}EYZ?<fYt;d+^Y6hFdwaz#t)C>1|uibJRMLW_x27BC2@V)2@G&5b@{;FYBU(S3c zTUJ3P;5@3B4KHrh`8uoq?Wi5LHpXpsk0UN<zZ|`nlNEXrkdZcg3wp71)3*_TBGt(! zI(Rztb%+acrs(UR#~v)n7qX&%94}m<iZnpA>_3ET`6`$KkgU3m;9YQ#W4TgCV*N9c z>pdK*>+<WA19@R#{hxYY3ofY`g5V~ryC@-|=*{$%a^gTAlGabJ>v>QS03VP{4?sRE z-u6(;op!{u(e`lI_;Z|4XqKSx4^P7LC*l{-x5jmYxgLOQ2U`Q0+2e9(=J2rInaUk4 z*{u)20TE#5`K?tv##b1Jv-M_5><2XfcMoB~gWOI|AIDPu|3qwS(x<0B48^gR+4bv{ zaAu$Gn%8bL$}ctpqB}o?6Q_G#G=K2A$#Tn7GE?b1`+z1WqV{Y;5YP%O)$O_1tBcUm z1I*(qFoN4~OJkAxnp~j2dtoUmHaj^<_0sgHC%Op+aAuKl<&Y3QVL$(Q!B+*6lwa9i zzWUX0t03Zz9_tREeFJ^T%$Y|uR%u9<+LUjee(sFF0RR9*;60Vi{k}YS)jMP9<zbUQ zF&=f*=2MXdoeL>gQev94$l7$Ks4yquN91o8bNvfx0<|tgDEW;yU)oOm(nH<f`T!@Q z_1&G}gw!64<!b`8L>bY_pItkO1gk!DTF)H99M76A0?%8nYBo(5U4X1Mw96iOYGL%C z&FM7LcLA2EzrKJGpG~Z1!qp0g+3CS>?dvmum}n44sR1kgbl539N{`$=Rt?;5aQkv> zB5OvEtncc|^~O0(9}SC7K)87LIWo)oz869!Q;*~5)jG``<?k||kLe|Ik4>vd)5(+1 zRLje&nd|7sT`+%GQB*E-e5cr69Sm@}-0LBjcHjhbS`SJHu2EHvdrV+^)4oJH<`M0x z>tEEL&(K{X<Nodk^JMQ0S(n|0d!hUtfRpAM8QJig6*(bd>7Fq*#A*r2r^a^lm|oA6 z<K-_fQO1z@+g|-Q=3kJ~Ej2U&{e*CGY17r}C6r5Q;3ufsw`J^)UB-{(GaXz)OXTrz zhA&sm;+$YdD0B!10m*e-Y5yaRjFpY)k8V7758Yig(gE4djUPANi5}yK@;oR{Y?miG zZGj~k)mCIW3hrZey?n$@obcT#_bFDlsnZc!8-6()v4%=4yi0}+Gz=6*vn#Oh331L; ziEvDAm^3S`YCRdW$tYPc?eN!wCaKyC)e01UsK$9dt%*6u5woG8QZyqoAUAzzq`x;7 zAxZ08abM%yfo$z2Fn9N(OVbe^+b0<3(<}z*jiog&=-Y|`If@y)9+)RQbD(Zl7^FYB zG-}ZYxLN&#UU$bo7%o2DY$j-Pn^s-8WxSlFUx1idZ@kVrxdVW^fb5=lM*=uN$ioJ` z=t=9fyM{*(6wkOhBw(727PYD7PB-QqkqkZeLn;o7<{-E|M5>Kfe#TCE-Jv|z7~_A8 z-VdEhN|#MAo7W6k4@R^9;{;4BP*aJz<~@Ka$Vv4SC}W>)&AaYSXqySr8ol9p6wet@ zG}(WAgvT)XIC>urgYW7Rbt)3YL?ubjWMmjClytl@1(u`%#WK<Z0YxONND?4Xj#!PG zIkA+Dn)l=YlI`ZO`@G_b;2XQASCc~Zirx&Vm)A*r5Otjwcfy*_3Fh5@@_s<E?iTjw zB~wNk<KBX{)7$BG<eYG1eZd;Wcz`E`!iLqTsEWP3;-SsEfY^e2{g-FUFe!4rBmMnk z9bQ?wkyG91&#z}HL9&X8ju*lx3=Q+_c%i-728&IdQtHNdWyD}V3<bUAfSz(x+Zb#N z-i`f4JW_09v%L`Kb+Hed;p+-xiISoq(%^ifDzk%cv6AVloIQYRnZtWD55t)f%(L0& zFX&5;Is^t(&r^Up?WiAdD!}0xR3g*2)a<2{TaPLd>2*Cv*3DUu=ezBZBIj|SM#lEb z_W@qE+MtCc+MdZD$g26FW$u~X^leecz1gN|BD}rLUH^nx4%EvwMN5o~OTF_)@4-g~ zQGgr==jFS2O5DxI4K$#A(n+C>2HDx>I5O9Q#4<eOwQhB*-DB+e;o9h%wcoL5Gr^j7 z&TAZGe`LOjVauvuX=JBXo?#xA-e7ZKX|waRCN_@4+Xd&Hqm-XTrsC39#Sw6(QEeMC zR$G!T(h6+(-vY9Y2=1OP_p3xcNY-ERdHDUlg+Ax7&CEvH#;Q~}U#q<N>-d2-?YetH z4i_wf%Wl;V?jA(1=e%NXOS1oG>Y?_=nJl#JlTTbExKEtSKux^~7?>3N6_3ZYJ4kkC zbG;=-s{w8|;Y$}=1En%YeBa{z#;dvm>>oM5Z~{&QK|}TCfINcLewy<^=}#J;A@NGB zT_6*6pHyIBzu{Vo=c!<~XMKPvUC;><3Gk}`<kIG&DH|jJsjdfPpTERgxM<$pwCLpG z5@)|b@)>o0WdPOsr@ycxEGc!r-r{K0dK6^|l5l6FJi*cUi^4nDc;A3t%?m4q#jmdg z)6H;OM42XLDy4GHJ|{gzd@dUO8g^9jM3#(LU%obeSJ)AJHHD`>pj!iG;obvV31o(j z!*Eri*R-T2n%{df@N+&5qGH8(k@{&>TfP5gJfqe(U2SgNkO;NaeFeL!yv~u!mY3{{ z6}m`27+g?esbS%-v{7B0XjPLKWN{6uq{;fW|J0U7NHUfzd{B8tu<EnJsBh1NrY!8b z(G6g2(Luu|tCo3Exehu@m&eWB7&gkRbre#%nGz9)tz9F|4@ga_c^1KtG{9eCZ)c?~ zEjf}UtC7iNIXyX~i_}i!bza;keZ0=51F&#EsvMZcG_0>^ECp0>N)x=az^W9~y3G<F zBLx1esW3uc=>X-2{5(uedH7Jtq~0ym*nJ3KsRQtr?Ca*!t(g5lPZ&0S8tB%0i|=r| z6RpM5;J|$#cI9{X?wn2_Sjg~PwD5{aF`uXJg4d+2^${PG)<mnW;8{?Xr#*(rR`@VZ zXMh{GNF$EcWU~NLI)V#3*CaM$IUA2lILpNL34Sj~<{wppe<!%=Is<XIu$uTm-438s z6ed#-Gv;_@UNk)n4<4>OZ=ytQZ`@xqRnxzVRCKW1nrQrH6S{_Ru2`s})S_a~Q*WJR zDXln|s4cKArn1%@$W}IlhXlLhRNw{R9({^hrjEJ$BmLKm^4d0a&xD;X=MjCK^p986 zm9+TpcOWRh!6{z6S{AQ%A!HlR>EsY2?Xh&f!SrA@^vTxAEaGma0idgQctpI-97ID| zQ{0L(ER9-AtgX_04TRN|)2Wg$&E-G_=#sqFHv%HCyuJPLN6O(0+aVlHJ9cMH4JA88 zE6q#8km1HnHW?FI*Ztjz%@Ro|xza|qbg__}17<j@Wb?;$@h{b!gnv<K9JMCvwMWr; zK?yUm?=%A2Cu<2~p1N^}XkhlTcM&%8<_&?Q);_)-I3dB$PQI#W{p7w`sb#3EHpM*i zqakiGU)+=~&(?dxSug2D*^NvO;eE6{uy7h9E!+jm6A%QSMsoqW8_;@Gci8}(AM6Fw z6N0~U+-c=K|LktS16Wd0xV|imv`MJ(3fg=)VLPd;>_7$-^1!Zds!*HLb@j}ay6IcN zql{`fdgF<Q%OH-FxYxvKEDfn^{Ptm;-w$SB&ioEOfpHMT)kGqX{>j0?B#;=msCRzH zf6gt&(U98WQI3j5lvDwZ5g44MYhS2CXBb5n6Ek=_W6VO`vudwHRvYm4X~spNWA-B7 z;{rYfmAiL00bj6t3-$>Cm7pGHV~#9;jq+$<z^g`f&em|5jyC#1UTQ9uxpQ$)Lyww+ z%FA2TJXei=!c?+7y%T_E{2zb%A^s6p^hnImN0Imz<*ByYj{D=QckdR$jAg8<Ngk<u zfU(=sfPLVc1*x6bfO`4K9-0{5L1GqMwcQZK9<>+E6={n(*IJL$*FRg9$%@-wlfZ)< zC|`-*c@-04GuBYMD)qDL!<P7MmwMDlWsrb(S8qQ((cpmdwOt`P6cyrbYNRZ0+(zH^ z3PWvO-9C`NF`GFAh>?wx=`IDz7GAXe?2?}Rf#<n2xIbTPvkx$t7`r?FnlP1He}W4G z1ZknsuPL}1nwRN>Ad3cyPZ7C>7tZssK&DDudqyEJxbC`X8ORIGMEw)-(C#Vsi8d_3 zg+Snh1P{vl`z7e6dvSDTrhFmBiGC$I90a)HR>9&yw3x+64ImroUsMB@b-LD8UgZnA ziX?-<R@qr2=0;gHr@gr27+?fz>t=iYYoPA(9C=Tq`oSkNVx39*BKC35a^rQ%o?ps+ z37i{K4ff@9_#5jnNf6NasxvJ3>dM`8z=e*6;{pg}#T2zC!dzsZj&aa1t?$<M%qN~% ztv4g8&6lyI*Ba#ByaL%DO7)&ePq3HQoLXxoAFf@}9-G{mz6|N5(;!wj?|k)&U0@V3 zK+hApeftb@x_7f6I1}&I!ENV>B~UI5HeUyWp^9ODe#)Y_ESW^k)z`m<Iq}29sDGh^ zY8xWB=n{Opk|W|$Rf;~*zwai&TnZXkgrv(5lN1Gi532V-efB=DJbQdLnx`oHnv(vl zmvL#D=+;;+^-@V>hw+rx&B&xWl)d8xN0L$Li~dY0;_Qdn4TZAT)Xgnj@d<IR9@0rK zhfy*5@87==l>-u@FZTLYGDOSUrK5{i*QV;+Pu9Y|d9dosQUM5>luAoAL%Y@Wm@eYB z0r6>~lB@+-Z5*TT^71hI-leLS`_<*s6*oUVi^p11^8AVC{9LFS)2QZV$YS69;StX# z*rYRlMsd;%Mwu*VPR6rhH7@24xPvk&u*FmAwmy7zc~&h_sW6A$?#l@Mvk``9$3aWA z{(=f`JwW|*mj_Y=e{m`P>!ZHMddZ_kYFh%hPs2GWrkAF7j>k_g$i~clf@>djS!}es zw3(Y*rP`~l#_6_4h*`2kOP^2B2)y9t;&KMG>j>bn0L=s*<tdc@<BL-hEjsX4<ap*0 z36w#5MA+lW@}qG0`Re8Oaq^0{UY4tqOBJBGMCpeZ<kiVqp>%CoCfjxL*AmaUX+OVa zc-!IOVT+jDf+<d}dF&fwo%Ik<oBUnLp_IFg*-g}OJ1=5IIOWJPnmP{#SVcsdmIxl6 zkBwMP%zJxD10=+?hCQUwJ;uuLUl636ikQS7Xy*#W@cP=zDUNcYPu8RX{_I{T&rmk0 zS_WNRP%5B0;a$5kn&dywCi4(C>9M`Cp(l<IrF^DDDjeH6ARu69d_26!ChcK&%VD|q zm0N}7SOq0yOkIBQV2XriAhrfQIr+AmX1rL}m$Kp@2C|T*I@93cNlQyF3_g#4<U`bU ze7W|Rgo=uUL_gK)p151Wli=;a=zXEO;pmDmxqcXd{?@2O5|_BNviElFQ&NoSJhSli zb3W#XZ}uYoF*d?Vi@j~yDmY^Z!3V{&F3;1%O}H(GYnl@8^wc~>_)4pfjjEi{e66&e zQu!h+sH+S9D3+<Gf{hJc79%i~`ZO}0bg2PKi0<<vpjcRmowx5?ZOIOriDA@TI_sHW z2K@rC9>o<l7ZW9p0E>~4oq>tPd(B_`D5Z7zw9$oMo`Pq~fj}Jo<w#Lj8G7qX*6f}! z400*4|5>LXheMjoVYK#36Usc>R~VW2T)ue!{`1O?gp;NVxX|Ty@IJ+}r-W=3<7dum zY|jOf%f4byLs-{ZGa@H_jC5sHJ#TAk3pRwRxEn~h$h?3oUqIjcKG6Q95rOz7@7uw& zk5uobXXaDXmzEVh7jn7jA0Rb};^%*xZz$4q_F(e_7j$`K>EfWnK9*OJq}O5b1exNC zxMhfAb+&QN!S{xDbt(Uy)I$tzFzP5YwNFLW#ZmgHI$L=BSPIcXzqT+*vQ!c-D%b5P z$j~^08guWbil%tO%)W92tF|?Il*zc@9OgI=8Q>8RV>~b5sCbKOX}dL6D609Zq-6A) z5u0vpYG&r<8B8%{mbz!fcgOSOoI<^-<Tax1vvJp>w%C^$W(phlV-q9G?S3ccf|BJa zHaGEV8DAC_Ud!Z2o{hffhv0Wh-D`8jQ{OPNwA?mR%~#rlV>{NaMg~#{yQ*1DOQ1)e zC}YBf5c6&a#AON7e|-TPzZRDTVU7l_{$D8Ny^z$XZ~8|%=@l1@i2|g*v5{DvD7zta z+P*OCj&BA5rs`9B4)HPFT|uxjsHM>3Xo&(6DTiV4u$qO&7LV`$z+zNfr$U={GUMZ) zydsveU46V>Wb2Xo)|paZpVvXkU&s)AKUwAnCmk8pw>^hdsq1@+SLn?SXb#(|Gon!! zM}9!J&U|w^X$F<FU?a(>gdz7AhGh1eL?(u_n{H;g_Ea<LR&RIr;asvvlQ?r@u2jL+ z(gx<A+llqy7mpX*Fl&MleUOtpd*4uffhWv}qstSwS3AOB&w<5q8FPhSAympRdsI_u zI(=<fQITA_--!=*kurY+fq&0M=w)uy+sF_t*yru|6K$tGUKb21%+_FuV7wb@E9E|* zSHFZy<dn$c_DWbSp>FFeKWIkTE<|6i()!p`od+`l;zu>QUqyEjK*)zep^fDHw$Z{W z@v|Kyw4uoY%LAQlwVuZh;OgQ-FMMln#xTCL-qVM|U07<a*o3cnY;>N!+bVvUFqivW zJ*y&ma9Yaueqpc@>`>9Ic5hf8u^8(#*|1X6;VUL&R(C**;+fI=#QKYW{~GyhNo<oS zBQte4M+Pjvjjvw+_>Necz*R52*N6U&xB!D7<{s^Otd+o}A=<x4dugC1k`kT<t<9Dn z?YMqjvfyJnaI%kMbH%y60hKcZM%-2M;p3QOOm5O~<7LoRS$ifTE7XJA-Q`;Fisz@2 z1Iw$}L)20g(Y236o+Z9?kuPM8a@={@KVjbs3iD^-U2ZdGh`Oysj!{0VdP};s)fb-; zN&`MQXXz%iGp3<wsjIZa1(B1IR-t|^A}P2yxr?<~&7Hz%M7@<z&hmo;`Z|cl$CyaR zot0;&7pp48TD*=IS`csuC9kKJ*#!(m1&AB%qI1hH9*`63G+HmKS%0@Fvzxlq6XdgB z&14#{bz>MR_GY#l!k0dM=k*(<`yBDpU8-5Yk<9}o0!B53x8Wv`nzEx!E2WG_N5G72 z?d^h)C`#YO_4ZQ=UboAgvB8p2n?3FL>t~~uL*1Z@&?I5oy}EqyE$0C@C+jwf*}mnO z4Bq_WIZx!l<~GPJbi{k6QRT2X`pKhS+z3Xza$!R;3SP&lZCGfr{;%DO0TWiO0m#U# zU;|V@9zSy|FIwnov|N3E!iN9jNot;6ohLLwCydChEFI$LSkV(BOLeg~8JF)Cn&@$X z>46ax!5$>8q41bD%sPkzo;a=Gs@n+0SGu$mUdS^BSECLzpIwL#YY$dygX2&8F4zLq zK+widbGdjty)wb%JGieioA#>-p<xFLi;s(D(eU%>n<ET%e3dqR#0CZi+5I}tpX$z) zd7#=^_<2Bcl@4vw>W{Dm&sw@0z{h*p`)ra<#*2%aj^6_V0|PJ|FPZN|=1N^=E1J(K z-1Qad2qJHey1Kf>=S=n51wHx9{z>KTsAbz$uuKud133|+qI!o_t)c~;nv_@$fqQ%& zrv{bN!L=P3=Jp)c3&$hQYl&@_%#9uD1GGI8M-ytrYH>`FjH+JnFYSrG^KjVH_Kptu zI3ab0w!3GVs-`V!#C`0#ZOf&!f{A0Q%GUzc@J$Z)j%<#BTOoo+7l{4=ajMJ*uVN#6 z`P9l+%3cHJj&Gqu4MoSUJw^4z$;#tvMOdSbD_KT7bqarNAx#X}eV2I1WNM~`0HW*u z?DcU@2eRT&E|)7uYw~Njy$p9%79^x(tGQZUND*<<AV*DC4VKYA6jgOOhx*=AtgIan z9o1XQQVhE-Kf5n>;=22+6cw^RwZ4h4WCTIa`Sr?kewG3d|1L!s+^TL%HbK{ojB_`P zzxo*$9qq0ItswOybFF?WEjRii_kCrvYZfa0BD*Q~UGW=+eM{VYGUh35iVA@vMUHqy z3l}{$h$f_uW?)vZPdgWFF{19{6{SdnUFK1Ie0-5LWt>pWp<-8WZQvPb@TXyRjjs|X zLlR%bVhk`DOR$irX9ck}MCt2{K=k9e&CSBNtqLL{KCA|;*7~BT1hU*;L!9~6d(=S- z-LuR=I&n%-GfsQU-MakM*&mnDL)Yci<;Ldw(>{#l>~eTX>Z|!=wD;fqlaLPlh9$bJ z!tqz(A3_2HA(xl<>P5N@@3UqyOgg)XAg8ZR$Y!0X8gq0TUJ$>EWU;;KH;j%3bTKmR zGK21)1P9;GQ)9kD8gE4-Jki76xLX#W03y5BJRHe_uIM1&?G~CBaImY*{K<rK1!EJp zfr2v~hat@e&pVWYZXXCRd6Y?7^NrWY^<u2NU&$?|`KqilCDxTF=o~Z?Boik9zDpVK zYPL?(qi7Z;Z3%^X3N>OBhu)a7&Zqe=L=$%tW#g#tjaGF5M%(f*ShddGAst6O9~dG8 zU5)~}Qe=;@@BNU>?$=-Udrf<X!iqk43vN76YBMjaX^|ti-eI1nTOObLqjZq`JxI%# zok6pYRFyuMtk!A_{0iZAkRzEdr^=*0Iy~%tguEl%E6!MY;|k0!No324>|eblP3BYR zxy&t^glB1Cu2d*?Wpf~mV$n=vpl#96DsV;T{3wj)No6=rsAi2Rp3m4Y5}_Bj-Y6eg zXWiN`3#H%+>TdDBkKWvN-uY-D?>jlEVNIma3@Z83^@@(3$PqMMvv{bSOCgq?KC+J0 z<4{ozNh_g)-!gFd_^};-baWJuwe!4QT-M^s6B84KyPWZ@p<Y)Zoepjl5G6L)?XIQM z4`@!KZ3_93DXLprTLe_XnWReOywoC^elL8;c`B1e@M9KY(JMjuTTz^PGu55nb@juQ zC)?CTkPmfcGX0FN&$%zNA8XGLOhr#8&{H$6t|&vmC8I&{pA|kfuR|ey#}<ZZuAfwL z`|}ZZL|-<dLK5u;b-#cZ`5TBElHz)q?{mgSb7lIFNBO=IE{$sWk&Q{lyixh)n_V9t z#RKG8w{q=F!$v_Nf~V>J3#nGJoH*Pv9+?(-^-&Fp9XpQrp_0ghKuz!|8CSNKc8I0< z0F|uD<>ME*P1jSc^e=5{F*Gl@PhdAk>mo}==Gb%4K`nbwccsvRwA&3<gG*oh!`%Xv z8+FWa-1x2aK6nBjqHJK0w&&GW8=J5@vcec<tw|AaWUoGu?Mcnd&K`ikZfnirVFf<C z$f5)xV{%j;<Bh32T@>zW&u~X!HS7LaSErq^^gsev6uf6zHP8+DtQTKHO0sptlr54$ zFKAw*$yOHTy!&fagfURSe42dEus%5WWaTio{Qa;S5QYs(zVa)pcyMJoVUzUM`gTtx zJB4_pwW&+3McVCJK;G*2_lTCBrv$G9f+RZ4lB%ke;8i<KkXp8wXwgCYs=dZEr?3aC zdUqzc`Lo=6?GW<Wbkz~?or2!YukZ7BtP0j-C|Tbg(Mwa%%4Az!m>g#Z4^E62AH4>f z6`Nd-4J)Xxv!(W~=1>drRatYIn6Wj<1@KL4DT@(oOyy>RZb++s`;_hH2Tli%t;>^j z?aP}Rf=aFS(Absv@o}Vh7-p&ON~`oCTiIFB7z6W|Gi7lN?fB#B)Y<i*LvI<`pxE9G z+8rGpo1xyJkq-QMnE7J&oyWn!__Oe=fxh(ny7w5XM+?kpnrNe+tc~TV^g1kmyK)1l zIsKV%u(AKK4OTXfAqJJ_V3@O2N#)NSQGCil|Lbw(mF@EUnHlGOxZCwZQ$(uw`Q~Pp zz7J7m65OS&LK80}NkF=ET8g+^_UVPNwW^Ct>n@Do%&jkp*R{3eTf5liKHHrqOwnvG zkK_0wW9j2+#h>B~x(pN&A`Jk{nf=bjRN-UQSc7z;?8fVbH^Tf9KgSPm+B*-ip|^<f zK)4$A@<8S@qn5|j8U^m!FpS%B`XlxMS?0DMcUhkWC@^3x0s9G)+Cp)Wxi52N49Y=o zx<&J#I@_GLT(u!^!yIF-6CcAfGYF6M1Jl6`fI00!5MT+{{QQ(NBcbkLg?B+?DD`YJ zkHb}CE?Z*1Zan@b@#_ioY+suAslrX=R=t$K)a2-`D(W`+YTJ~6+<QpIiD89JwUMpP z*kLtuT}sIocDi-Cm_lWN1}18KTe766hQJ`JQ&VQCA9CL_HfRNObyio<>@fc*m&%H* z%-mHLe6D#<`Taq)UNIrrD(1l@hN3n?Qh5BZo3T_(Z%v%Ii88j7NF8>j{6NvAj+K!L zQKl#0H18dF@Puip-td^TJNc-Zhl6XX!Q;aXOQt=>OyYq=7(*;Yh81FiaC44xomrzB zF7Tv3DK$R<gOew<iaQ5$Sm@?=+8=Nbn7n*WfFS=*PUQ*>z=W6WPn4kOR0xdN$cNKP z>f$g+s1vdi`Bv@$cR4*iUg&q^F+o~uMr~ZFZ=7U1koF(xpN{j`yDEBZK`06AWPQ>j z{F<FT-p=iECDESRpM}X(RJ85D6UUUXXE@c71`G@sm&g->(C_STxH);a#z#jV@-a8e z|MXVAcq`V?3cfy&m6FRcqNdQ~`tUNuv%7tD<m#r^<t?wxJ6f8tL-MJd)Q}*BM&*lf zqw_~uAruT1M%Sgs19|{qV#g$LNj#V9(`*0X=FW<t1~bXHaM9RDDFWl)K6IevwX4it zywKqF?7i;o>pi97Yd=w0Ftf05vOs{}!ILjFQqklTJ96Z6<<>1#^7=X+9#`QJ5p9U- zFVxu$Fz!N~hHu-gzfvcc0A~@->9(ltWNEseBBz2`5n~;g@g1+#muo5^;g;s+0Ak1S zVJX>rIsl*}ff4eQPg5mNqrbg<x`SR&PqV>-mPr~f3*c^0u^K8EihOolJI}(*GCNym zTz=2cFF*H+m?!=D$#`%+fO$MYo1Z^RM->^Iu@gy0IaCOC-f9Hp(HiW=J~>5pT7b%r zOps_oA{58V=omf@Xq9iOSXNRRze>58ZrAJ_8=nB*P?yq7^Yas%le4Zk2rSd5aIf)a zrWehlMx1uBHrknZi^*8C+*}OIzIUiJGtR}KLS@~Vk+U{<x%%tmU{0%7wAOh0ru|{G z{V-e@uB73Rwgr9Sk8fij9$MqGQjB@iMEFBZY)gf<n-G^`yz9N&b?4|0x2u-rIS)ez zF4Y2A&RP<txqG=vldto6I*pCFQfZ|Jz<~Ki{v>HZMsi#+6Md5Ho2r;=_)5vET#WET z)@|S$$Z0d5E8DCKo<YmcRP<iniX~rPj3^RGbzscAI^7X|5xbr~GFj#t@rK6V&N~n{ zZD(OViEJ}dx4|h;_#FdCzwBcv5VYhh(D&E2+iNDq_(TE*Sn;8o6{x?}mS$hb<zwF) zV_$mN1bfUVwbW~lP9_&yc((SRwfa<-aZq2ugQEd&(@G%^@p*)N`6Neq6yvj=n;(LX z&^>pm?-NK<D0Pi<_vjJX5mHhzvE7*b>kH_AJ|LM;^Tq@DTIyXi>taEA=E>SsjJ&=; z`0$JHRVm^mLD!lL|IFUZ#zvtYbEM_b?gartAHKBw*a}nt0^urXgsqYbUt{f42`MTL z$%UM%JWKsz|LId$RaI3{Q3$ZU2E0S}@v;#+B~SXu1`_#1zLclZ(9hO+gfb!Oz<%4Y zb}N&)n#a-KmHo2`iViQn8+l(4P!c@li)XUYgL~nHE6I!lj4G+$8oj-fHoDQ5$V_Ji zZRvcKuBB)6xi@*w4{0jx!_#I65eqc}bM};&#bDEq39Fmshf&U>#fqa6^3tpG*@NqQ zi$A(@W5kk{#B?x9FCtAV*!#QSyNQ=0O8}SV^3tm1b-_Er_4g!lR3=g%>abT~C;|&0 zNyMO#nFaXFIQl;@zI?%cG{a+a{q-H6dSrpBq8~uI6>2GR|Nb@S#_Yp%I1Z`ob;|&i zfeH|V4)XqqseB$$c?m1%bsjJfj$XBG)n@%EL*Pa5=J#y<JfA!f9A-fN$itt)?v51h zgN-rI>!D+!!3-m6!P^t#IZASM&&Z=bPrr{=!xzWl2ftqZWd2z$v|#**-&A3T9S9bU zaGW$uLJl;nWOP=$R|{EKsDwQ{*XLURH^i3&t{ipk;m_NVAAw;OqhOUbMN|@<c8t%! zqN=KA@JPw$Or4khikAY9m3N((40<`u<VERasjc!_cSt$@!S*XNTXyd!;@=(c0~(T8 z1X~e$`tqT2jNY7aa$>PIUGyTce7qJ?0lB&Nlpo}Tn*BewChAmX-)Cf|`V&;t5)ao@ zS;!_>^y|=@csz|4mq%xtB+#%=hM-L|{S=kb=IgQi{)}+>M)u<8M6wCIpyols<(6h8 z*e<28V>IRanbAUB!>Kgh_ik^nR<nxo!eb*_pHpp5q`aF8Z`Urm{&Mwfcah|ALYPXY z5-c{@n#;7Mh^y^<{+-yCg_&&zy=Y+idq&MSTI9r(^CV$U=OBj~^Yv7bEf3R0nwoMc z=r<?idG{0*sYY>5L_8G!k3YK-AzTUr&eseQ4j$}t`vXH|qz1_SY_9?K@s}P9Llrk1 zygs}i-bxP-PqZ>H=(RKWK7>XC?p+ORS6wB$vb^3+K@bS!=;(;e4p3kw3PLu6wVi#V zEiEig_eVUC->GX~;3aH6Oi%GCGyOi4GnrAc0T>M0N_Myqy7#%jOuuP{aqIs4klLo= zZJ6>uH+Nnf5X9r@W?&2a_M!HoY4oiA&ORJ7uVMCGF}jT;V}-pnXB5?gOJ=}X$SpPc z=J5$3{{OnM42+74j9u$eMcc27s}c`YyNjq&ioDZdDdXVbnW?aL{iINmz0MO_oZLiB zEf*5f7C_|mrKCsn+qB)P6jY$hpNXGulA{yBIrh`=E4(wA!l<Tb<=^UVOFCSiOkDa& zDL^4V0i(5@mgN}-mtrz&bWSM4|K5SZ$Hh|x?*f>vbE7Hmu$a%1<FFqH@32h#H&W6v zLBYON+3!EPJXLldAb3PUkreyApXz|X!oq@&kMBN~UFgoHhy*Z$7(9Nh#nl;H<(F5Q z?7nt-6KnGe%lF1_iwFvwxOco)RiX|A@1vcBCEDP7@UktDPD#a21n=o~uk6-T!=?YY zl(60g$UQ8B?8LU|8PMP5D3I(zns-BO+K-el(}FmUd?Y0$6%`flzk4YtDCqDOt5dg( zMI<&h^3lU5#e=L=VUR&nR%sep&bL^+(!;l@d&1uL9B}5-PbEE%l*__tqI&gvXy}|% z0qpmRil^_!H*iIq9%7ZHWp#55x7^NrPUXOo+H~Wq&J9TZ@3KcfBROT>5IL_vh6e`+ zM@NmY;!-WWiymTQg>ixKi9J9v%D81|`QM9Zv9Y?vQ+Y&qU8r8--S_>IKks^j_8V|B zLqPjr^NN?@W@yLA__&(#2jnd*jI6%4tZozuX;f^G$?ccf&4%sZt@y3Z2RGjpeG}IB zeS6^iwv}X(2)+?9{_f9d_q!A+CDhePrk*b>fU&S7&CPS-$;`~CJ8nHnv-B$>H^R9Q zi7#KpPfDjAP@^9~C`9{jT0hp;QJ3y<U3pPaQE_p4Mn-_f@h3)BuH`vGK{7orPs&x~ zJmv<LgoJ98X<9KQG>kkZHZd#~`0m3Ko5P2AC@@*g%ee<iro}4i%jS8xX3x3qhUI5? zCjE?w7c@E}d-NwT88(rV^%<zQQmQ+Fk`NYFSaoXB@B4Qm2AO_yx4e^aUB$+|_h(7< zFmPk&V-%<WAl~}tCp6oCSLAP3_`T~n)qi#j|2Qk0BJ$gx|MyDoSPw!&yk!a!Vgy_R z)7$@)4(-m>p$Pq#BmisWHKpMcM7(v*_t2%=Q{9L1Pc?rR#X7tDx8ANvX^nN=EoN!| z9tqpdnCoO%<7Pw!WqJLj2Z{75qn&w~N5Jm;Z<&;pjVjU0pTe}$8n(A>Dp$1s%LDWK z>Yd_Y&wr<%cCrl)5d6FI-JacY;gi2N{ax;V)Z)O#z>}8SG3~+cMC}wJm+;x1lFQqF z+bZlGZp+)ue@_b&Uzs5ze|h)!bN;!~5#iq*M{hR8hZa|>30?j@^n5@9mh{sJ>?2^y z<a3+)Pw{{M-U)gA-I3vWM{UcdDUIoOffZaOM17}SM@Hi4)8A)&ZN5YwdIPtVz}p4# z>%YEu{)Y%93~wb`4?HZl^t(DK4{Mj`d|}JWhh@cOf8%>!Z}Rf-u>%+Ca&>imQ$d4; z^_;ip&W)k}FoWHVXlQvs_lIbN+$Vu_=x+o5sqcSV^#8ZxE993;>c4x#)&UP1)!%mb zQ}Bq8>rd``t)`P_7ng79-)CfWNN6z>$a0x&AY<eA9EJa9<@5W@|Is=ULBhN^S@i$D z(yuzVQSATs*8d-OoiZM;rzM~i`iz@iSZHiyX7<VKQ{;K5h{e$0uh`_L8LXuh6|XtC zKBq_oYdgru$QXq)X^pxb*ZpSSc;{(nR6%~8D)6U6=qTB!x=ew~o9BKS9}`3Y-FJ%q z?b{W=l^kskm{6}&8T4}vc)^p?M4z79G{QY;UrIzg|G4+$Plf*ZE5m=}bM}3L#|E7E z)+3~QTrD~`t{HdrmHI3F!LFab-{0@z?=W9)e->K3=-Iz)%SV1P?`obGggNaEim9vn z|6A^z-jSO?f)%ALr#SZ8-xMPcBa>(XG0&7EFTP1Zq%)eIBhrl)0jVl7P7utgrD`Ee z;m>>ceG6BTM?PV!%*^h`Rl4}`6@beiGc*)XrvC5mYyI61LCyLGhK4{RdIENAbRQ`J z+3dj3Q1T6|ca4WzCotpuagJPv?b#yP{Ix%0E^vNivil<+ktS+p+P2YAA4Z(j0)igF z@bK_{y&Cu3wcWGw?0-aM7@rnV4JrJ0qh2H=w3)AaoeQiK5*VM(v;Ftrk(I}aLqs^A zyogl5j~{RTjB46t_18;#*=3eqEszOuJG-X_oD6T@o_suT0RrDL_ZUDPOUuieMUNgo z=KtJX07Qam>F5CF;}aUvt^aHhu!XBf|I=n*dHd2QU;g!6*6#sxh1&JPQ-RX{VOGYP zg!1rKYvi}#aeqc}kCzqK3#CH0FeDEjb`ss5_@73i{GJy|nsZeAzgva=zpWakzPfqA z#{2T_2$(%f!B{5BP~ur;VW^)UUr&-=qvuScC4!`Q{`H+-|4S8FprhhjLt-OhPh<;2 zf0PpbX^Ri+^AJgo?TnQ3&i6w0598w*daTIFN5%JU-n<D!mEO2s<^aJY4%e0o+W+n8 z`&yssgZ}McU+WnO5Cq-yB6rV33=Ec<GxKv&zLQh`w|8J+84<Yl0*AZ8i7lamkhcGM z=(+QIuZJ%qA|pASmK+fJp1=FXQ4Z0!A6!bq88Ocwynm+&@MbmlWdcPL|MOE+pCYCA zZE6W-hPOs5lZ*h;;lF(fxVjx#uShI^Y(m1OndOgpfa8{%nUh(F`Wxf?1p(A#K)=of zBlCZB@mkzRKD8|sl7{hIXYz?G>FI{=TO{6IZLeWYHp^q!^cqsLW#;9e4I01-HF=Kj z_tNDndD->e0LQ>3w8rn;s<;EV@k<{kVCXqwd3pDkl!5{TCMu~)vpdO)azkx|CnjFD zja_XX$EX+0fse<1y9UBnEqkIERr8E&e^(}~q47@ZgZU%O^vrW$&vV{?#^11k&kvgG z0h1uprSye|n<IZ2<RYZcvO9{UZ{_8iH?}Qn6o1+*A7IRDV&5<J708kh9IqEuA;H4R z@B=FJoJyjBcF|hi<(ajfMx#Ha&zW>#{Mg3f!eT@vSyi1oy4A=DST3;@S&Ig~El>R5 z+TGci)0vZ#vtj1Q#igsO3xFYjr=gTDJ-myRD=OZBzQ9pv8tnWv`0HyKTITS@3mPB< zR#{oe+}k%gYBxd!u_)ZE=4aoH5#Z&G^Ms$AC_#G4*Xvg!2M0@jrF>FVB|f*$%FY&t zj69WKg6IK8hU@&Ewh(}t`Dg0MO`!lf);q7)!fE86$6iGNFU)SM_YPfoA^&Ni7B|#5 z(8uSab7*l95JH|6n4N_K%9Yr6{9D`FjAz5kyooTCjGuG?GzGAV?eD)6NNfv$2~4qg zzp)F(6wlUNAC&I1!Sy{cgoHmYRUHaRNlD+5ywZq*d#3#L1!UU!=0!0@GighG_~6~u z(jl+Us#ABqSx$EKQ5XX0ma^+%WHhigu`o6^2N{1hHrK2vQ66c>XVh+vyft<jnD4e# z?79V~1jM%@$GebZf{_cQ6(tN>8Lv?cYNJ!r-QlZp-@b|P*dW}{=w}V?uW)W-4@3Ez z@GB}R0*F{ODst?97>I6<6~?*gn{#(UV;*9?6LLVN{xjr;J((s1nn*9Ji&(*j(2x#M z;}|1pd~$TBFaEM)1+*NUw9Ny^)}<l=S9b?6*~B(~6ctrASv~LLN9_rRd=D}jex=oV z2EZdoxeCM;KV@M7LE}dOn}NA9xsN&?>>3<>+3Y^q=E<z@MFaM5d+3>d*0&>;8I(eA zlBDrw+7uAemeK0!>RP5BFi>LD>D+{Tz`3+9|DkM3Pe=DgQbQ|NKJG1FekBs;wEILG zpgM3vqBWJmHN?k<hW2JtL2#itmdrlW3p6?z?r?J1#zd*#&^jxst(`AA(hkJyShcf= zdZ?lB8eN!ef@dEiY9K?kwN_#IdTYcRS7tr~hF<TBPb)5t8Jh;YcExiw_RHf*6E-?8 zNyk%kriNMKxwi(3qA~>W_61!W&Ua`D$!_1i-RN@SCz+XJzvy*`BF+bR@|k*b8aj?u zxDVEI{h#0x(joo;jfBm3<gTmcK4t=oKW;anv=?nmS*?S7m`+Ie87V9-E>35ocFX$0 zw+)X~l6S}lnAql*R#)2w0g|_`D>Y9(>LbE3=bFE?;AdU3eyOpWhHvt43DDJZ8}ja& ztI1>L-_k~Slut62&(Z2LZH7oZG@+uEc^J;I&e|7S&hSPtzT$~~hf^U*Z&Ewa!dc)1 z?34nGK9F>Oe=~wgJK-jvM6xqfnVy<@BLYe;|8TzH+6;(~8PKJD)F}I;HZ$JGq09AY zW5Yi*nLW4O)k$1hI#4oDPrd7iD^3M48{m+MHHbA`8^6TFaBxpHyY9)+$;@Us3E0)c zG(26#0#?P+5khWZWW<2cLk8A6cFgz9I7wfT$=;)sdhE0{D5k6&VI27Vd*?0x&?G+l zp$mV42r6+LSU<&#<MwQ_9aKgRcr`Y9LLfuKBwJT2tDSZhnA5HxLl0ZQkJ6!(8y<jW z5Ix3b9OK>bgjKgKvTIPp0|=gXXG8_EQe$<hhduB0yG>oZteQ%DcjqS7ieP~B!!%$V z=$r|APGl<H+ZcgRq%;G95i;C>y3f(oYRAe}e}n%Vm|$xRGP%o-T1}uZGH-Ai2hEPB zn9l&_2F~r<Wde(R+A%}R*<HyLiEkX;)uu!`zYhyMBM}qtVAd!r10o^A#yIzMkHtfw z)`-jj{uly-y`?owrS!lz;5&+;MO?S_c{GKqs@T_Fi<uIUKdLjiipG|mE}AQmZOo-u zI_Yzp>UP9WsG4iE)K^jA?BOkq^T6|e6kIrsN~!BY<4Lc7*$k-M<wK=T^c+Fm?e6_M zWddI?7Q@X)KEJR}_EobSB<XHRN$kwpf9<+w{BhcGPtc(i4Rq<)7mB^k6UpBA36=V_ zCV-BM)CB<0+vvO(N0<MS-5PoD&rI}CTgJ~GGj}1L5F$uG&d2IFaibC12nQo6>^3&K zAl9x6gQX92&)w1JxGwJ=fBB@k6F1Bem-7Adz*6&VR;dQ7sYdZ=5%23Ck0g*Yb0wOv z<?Q}aa=;X#K}TXnW#aive+>@V$(Xr<J+_DKe*vL7&BmX_z&rc<69sT4v3Yr0!@lK4 z<cbHaxyNPelN)z?)NMAVEeEp)ikM-o9UV4^%3@IVyv_V8ZmQh3jqpqC2NVDWaJvyl z4rIUS7MLUKqt%XnOam11?z$;`CH6v6LL#yH%NY>L|7i99QT3H!Rc>3`*h+3`L=Z)~ zK|s2syQRBJT3RWkkw&_um2L#2yE`PLyZamLea?CJw=VyxYdz1LV~%mxwB0*6y(g~J zUY=&5E%UCPj~I=RtzmI9AkJl(@D99jYz$&EZZ(O6Tn5{oR2^cnyZ7(^Fei)Qhl^Db z=?#wH_RE+WA0Hq2f!&k#V(MpYR!~y^^Z9!`%8q|Z&=N%0qW>2@{`sFx7gDeC?V0k` zA+zPJJD37S<2{4xYUMLtaMd@}@ox#NAoM$4zCov}=K<}R!lS_pt;j}1De37iuS$FX z-@AMea`AgVynV7pkjiqlGHEr(1&y%#Yq>WCFSJJ&f>cq|TAhm!LT#`fTuV@W1PU;u zPKWYsZsXy)*6zvUw@3b1BDyqi;y}@sU|6~Q%I3&Wt5xKvp{RPgkN!`$3Ey7k?#qYI zHI8WsBqal5k@fLHcREVdYR}N3of}yyll%6!+&(=(!_V!zwZ0gzSJWgV`R;f}zsO`T z=QJ>T0Z+sSf1H_=G>Wkl3UJJAnGx5G^jIjnk7zuue-Fky8Z=0HFXzp5jwX*9)*dLg zy+GQnUTew3ll1kHpI_jb)p_7!Q>zNgd@o;x?eRx1|Lgt(cY>}NoEVF}O_F~mYWR-H z4@LgsXScU6EwfOi#}i2)nsS+I8}l24klR@F_j?<HA>0D)r>9IA(J?Wv9p(cepod}n zmFZin{+d-z!jO*&6{3I2w#JAHDG-<hP1*n+e|S`wK|<Uj5gZ(>gUDjrGrzO*5VlX1 z{MzN-Fuuei>bEsE`(@MA)$arXHS3*>PS;SV)$&x!RUS{jwN-Mj^ZxIPN5H)Gi2o!_ zzIsIBe&K9|2m|*rj6gVaYH133^OaRjcAIQ{gX{S6mJzg7ZpXL6C81?fqKzxe$?4!# zjktBTb*Tq?Q=(y}()G3T1@iUkl|X9|S@`Div+u^^rlk4FbD@cDpJdk(D1xBLGE}Rg zWg%sO>x52o%+IX7ZCZ-|&>A|4aKjPw-_PG)sHwld4m2$is?gI~&5E+1{O*~4;IPfn z6@j*-aUboOu&haDo>IZM-AzXn=fBihpjG-tKqKKJGKAJgQ}<?$Q^7-givC2*XJ_a0 zX7y3=hRvU;j6704%%CgkKwPHPfLwfe#)H=7wjc5mySfYWv|6>I6#7v?gj`PU7ej1O zWOM)j8v9L0Fxffex8w6N?e8br{542I#p!w{<y%P@vMZ(jY(v_l<ECB_g-YsJR1g)k zfw*mdTJo#Q)5Q`+Kkj*ENoA4xmTyjxEqqT3`^xNLGPS*W@QYRNDD|es$*ES@4ab!u z7OL6Vb(JN!sFbOd>1q_<Ql2Kg`~QpOPV^H+DkeNmkLQ-2JC~oNF|vAObG`^NrG7gA z20JFK^4;o0YQ{jwaT|p~pY{14<}+t!Wc?@<Aez{n=L3^Ge!?4idxZG#Va@f9-<xVE ze9KeKR1zvAFJA@|^3c%Jf2M%gBUX)R&bMU&p981TA})(bJjMUXD1?{9%NI)IT@O=* z%G($wlUnBm{#%0{me~0C9F_wTXVDZ~9W4~YB5vTQNMO_>3=c}k?=G-dmkbQTZ4&?j zxKn7h)}u@1yM%v_Yf-h$X66aLyt`ZX8I44xY>r~T*6p^29}LjYblWhgLr46dk3T?W zS4ydGAA4LQkYaV5R#v)zR6^mvaGiBK^gK`<b_t_qKf{|Ir`Dz1k<mi=!LF`|rB~5t zNkYMKVKFD$n0XIDD^OjQUmWoq1(|Kj!6C?)a<OOn6D%<3eXpm&3I@jaqv@SwWMwJT zGWC7-47$4|Bqb$=h7`O2#pmbead&XLx`^BuABRFVTX&x9KCMdK3*~Qp`aHxyEK<Aj zuYVl}J}}RDM^ejf!09ZZ3iEX;>&d~mqUN1hcx<dzds<ER?ahHNTU3^$Idq1O^xzoH z6=XPI+Iq(29u*PsOCRFbf4o~=8}78N2muge`*~9<9N6@DxcGRR6J;|!BfflP$#2Ym zH{MHlx`BlG9Tg4j8113!@?OJqQ#b{(!L~m;j*X4oJG&BPMa7JylgslEvfjjiL6Aj} zNAB(P51t*GUfXs~pQE;O7my~@f*gX`>MSWGg)b9d26c6HUm3(-ZqPi2H^7KyI`S<i zrJ$!Mp{z`4xC0C6ty*kcoGfAI<m7T(d3n~Tqf?No6DT}W?xy(X_(Kd)CJ!5%;2KZd z0lI=B31RF9+Mz%s>wm3fOmuIeKy+`3`#QfLzZfAUBLn9D?NK^G^PrJboJ_d`ioY;Y z{=n#9nsAC|FvNtRAtTO|7%YQoH`W|BYk!%&?U^<8Cm6zzpR%*Rei_mJL8>#D#%!gF zUWPO7_DI?l>o>)KOgy?99q!HXzSYDd7nLDUtwijL+V)!P-P^Y(l}O4X=40qsSl#-z zOB4AXqz`L7PRz$@!r|YVX#4GTcD!1UolT+3#LQg!bvU<gVRvv@-l*$(X}LEYsLv2E zOCfKJ1{kEJ3dVmz-q5JGv;ZbKKeayGs8>s~S|@j?@bmV>;Uq?D@L%c!X=cLCpU0M9 zMF<E78p+{tn64yW)y8)Hdxt;yLv&ZCIRHzC@gWLU<S(eX4KS?7m`{{jI2|p1JhL}5 zkf?pgz{DKO>^9$%zn+&*9cvC}e~XRCn>UNeI(i-_7y68S0|OI9))|50T7Sux({9ow z@d#0@NznD9HwP4`mBuhm!G3A?i_B=Q41WNFMA+)nRA1lwwa#|jZsyNOGGfdvrz@W& zg%UZ(LFw#d6ntS&RBrheGy**R*#vyUxk}vD`qCMQOED#7ma|lP$LhPXl#bAqlA&%} z&XmZuY!HcyTb7y)&Uc*Z5logE7NtnwlccLydi|@6+#sepe~Ki_$f_Rv?%{e6WA2N( zR&6|k?0@ZFFW$YTh`K#1g@;M%1&T8srz1}T4*xJHD!T!39N{0UswRAg#VMocI(c{D z2C&y=6TduAS;pWASH;9~uB@+H%wBBQr5rhwsj=kIGcy=6eugb}a7L=@1t$_r8w@70 zmgcQd%%x_EM(B*7K&iCPAEJ2YtO2u{!MJY!1zrRZCRY!cxcFLcESqRl1lID_r7*Q} z!~dP?p(r=M0Ei{b7{dX?cK8+Rth9xi^?HoPlU1iNUj$+o$vG<Q2Pypq{P8xY+(Hcs z)6>%*$s6)`?0#+k(72QvMe|Lu_{p8-T$#GAqGsD)8&5=3QsEsjj`#IWlvq~6q&9DE zZedVqd<ECX{^XV24<ux_dBM${D4MI4v}Mp4p)1!vG^Aed><7qJxc`RU;{d(+vBwsw zEO7hlnOTkV>1|tECel0OtrXpc75{g}7Tp3Y^AQ)925J5dT-o$j$C%r9yY~5gBWb+> z$~E;EMplXY$3fVOw*SQfo^d<a?`w}6&!l3FTFvMbsc?D-fo>jGKR|Rr=&E>|C@Ck$ z^qQM1#{BCmQ<+L#r`_^GwQ8a4u;y4~PtRhBzgn7`38J10&#xHsn4S=kdfgsT!njJb zk#>b<tJZy?5z`M{`Oev4gfUJB>e0rCUpo;IQRoukzrQmOYN3x*(7m6h=)}^ZAtBY< zFLQ@CM2PBLv5_YkAFhvt{UDx>-5)@6CCj$QFDKw~|JrW&r{odT4x><-9OZoV0&^2T zhm?cF*z8B)A2AmqfMrc+=Y50L$Z<?~@6+e6J_>gUL&}Y}kax*~I>pwbBtg+YpZ%1> z$(Ldv;!#@c;tEzfqlSUD41Fipzc#Ht8nmDoXH^4a51SgBm^9qC8x|H9^-1$dgVs6? z5NrJwgxb(e>)n=bbz;Nal4B+IIN{wV3{7BbZzHNk#vA%1`q^g2etk%PAV)dN@JDKo z1i!u6sDgYr_b4GQX2fs~$8q}gz15jgJvf#?8<%moIUOXr1Vbc{V-gHdnpNxK^-uMJ zOCt>cW{WBDv{CW=>!!OW4*<fMu3*b?i|gRvg0wRzFf2KGe|HdP>-V3lNC@WkOu0ds zmdNBisM~T64l|N+>0Sj8dY5l^M5u;at~CV0A!0dmP#+Lo$dvuw*=_&q&*qADE9NS6 z*^rK^Uxdf_y%(w&o<5Eqahj=Odi%UW!P_g)-$_sgUFY_`%*xG`uQOj=rpt(*WF#kl zIk;rkWV?MuOqw6Osmj1+B2!pqSI_s6uK{o@!2pqXTP)#y(rX5j;X<|Z{_tf9%3B}# zsH1=0Y`cyR6KM(6Xis0eUVQ46z8d9z#mpRlWuM4yA`vNu^^y%Yj?1bYMu%^GrMBmf zo9_G1RJbHH%+_Debr=P2vobLm>_NvpS)_5ss*U(ojjJNTjX3SY(2U1P$??y}RgVt$ z(L_Y0YM(53#b0Q7RUsop;7&Z2Av6|7n1fpAEdjO~CKJIoZw%FAVq)H3H|UY(%aH_d zu(8v#nT*%?4L#zI8fnO|qNCu5{=Cp$j1!*O6ZHd4tk*K3CHP4T5x!y`kpbGM7*;2P zi6S}OAsP*xn<sq$+e3{R4`f7C9l8F|Q7VAP!ZE6pQ|fUK9>s`mLFk-++t#=2?DoCK zH8Ri1Nb})+La%@4j$7uz%@X7dPTLv(_Cuc0UBW*gz~y`k?o0OqM1j$@4FL<wT6o^+ z^lVdlR*U+OmV!S%smDShETW>Y{Yc{+NZxO}%fFNQO+zO@f@9dDL2ajpi-FOJ!0VSn z@c6;RmyM5rn*RFuT<AH5_3o~Os;X*i*Y&|!zW5vcm*Gkf?-zS9lqahgMH^P6&wjl+ zXf*mbjSP}v>G8mj=Xw@lja(Ex<irhUF?3iGHim|oa*l@fb`f<r=Gxd?16w?<jp>R% zTvc|hLVrC!jEP4};?zTw$+UYUAaI8?pC3Rf<f4vMO8lEXFm&N)gQF{C&GcJtx$#Ja z%V;nQ%g9vN;^LyB8LL*MgLqe(EcF-{9cp8l{rML2dU>DTWu^r(rWdyjood+=f#^Gn z?8d^sK03U_zrj@*fIHKFF{t@Lx8v2rtEB+^a6b7;(ub?Ws!eD1J@Mf-^xnNiwb+mA zT&{6nnM*+58qNpc8(lnyMwAmaA3GM6NGwr0YcB6CD!RgL34W{&QJ(3qwfQvRO6Kb7 znVl51-RX)@21%729OUYLf^K`@fpO*aeJty!Y}>dDpUT97f+3Hmx_S$5EkE2GiZ)Y` zW~`@6TpTP)=a+6@XeJ%$)G8CHp0V4cIt@|_qk2Fjh0mg=m%!8%SMXCFng!PD#kQH5 zqwywubrnS{Elec`z~}vfgMW9FvE2L98>^b5|A=yZeU%YGM%P%FSM={+{haS%?B|G- z@}w^*IxRk1F!Gjs!&`t0b~SSpa)|6b>B(QeeEo9h*VyNFEVm2%*LKL4o%%A>N{3kD z%h@?OjBO4_Wh@e^4rMHIFCSW1AkmwQw|}=%;;eIKG*K*gxx4`t=w7%O;9jugSne%e zux5Qn*7LU6*f7^`Pg+8}Dd$8+a4E$3)!qURGwU^zz5I0@*Y=bfE*3#Pu#PDygpVJ` z4u`(PXWgy<r&On=pP%0hkGtHR^qf?=<PTVGWnCwVSXIKnLq2wk5AEwq;_-k)YmV1r z<CEimHjXu1U0v&)T%u`J_zza-K!c{mRl71<WFTf@X2!tql8o&9!QBC>Aip4*HFc3X zTf0Y>M9PjKeWCPc<m3nPE9hrCyG(+U(A^qT6^@qkI6kmYV}+B<P>IK9OWMu-%-7c& zn_Sz%%82-C?B#)j$JP8FZL4TSf)iLN$w-0RGa_8>k9fIZ=WKp<h1&YT{KH*XX^e7b zQs%zCv0Zi~ouLnVdVFGPu)b`@9N6S2M479a^sg|@&;8cRuGMG!rjRmqrWn9HG>oUu zaW+KNSy3t^hr(@=Om~@QQ#8aPZ%2GEJ^4u#q!HC`c2gw^@~AVqw*C?uq15q|p)2(0 zM7yc`i?97Z4`(Z0!T>roxEpRLmGG)euGt0?J)?I_7<EItgN%j6VQ@r4I5-LW>D|QJ z)m+t%Tcg!+Uni2zFF$<v`Smc)b_t4G5_?s2Jtg<^-$Se5KiE9F+RdUF86Kw4ED;H@ zOn@8XT4*YvMGd{qkkaS1*0&Vp=hyurr&v)0@yEpvvN39VzgEYrHPK8}Su0*vm7cUt z6>smP8st{)Ej~)Sf3Vped0LITvR?b%bsbK#g{-c5%`g7`Vqka_LdGBaro)voN{E9~ zuHQV7*4o=Anw+(^X1dfF8B6cr?e{}=P${7jdL6SG)6?5mw3r=JrOR`5cZBaP*C&Tk zxrG9ja`%$xsu9kvpoG_6RL9$sdL7>V7m7*T)n%(On)}Z7rk0Z>?1RdD!Z9pnw>-=f z9V}FP61n?-^73$U>MmALTsTpgo9CS$t+nuA=}-N_!=cp@7ZaPOODTWfdBmlD`X_SG z!9+_UJ>27L%EyA^NLF2Kr$ix7#-U~Ck%4$LraJkFO-}-6a#|XbZr9@RGj3~f^0LVk zja-SWTP_ES<MRe)<oCO|GX8oOE`*XPNq9rN!q>G$Doo_rT3q~zfUx;+;&BNv9&BG3 zcR-Oy_3@Sl+Q`ET>@5kQ-w2>2;uC3b?pP7wLT9agdJ3jY{S}?|{=wnt8h4+lsJFBB zw=2_J<EZzOOiWA}+xwUKNogb{B~{$-G45R)aj8sD^a0IBsbKbVQQS9Ls4&AYC`Y1z zaZ{D%F@c3eRMzhs6vW`Wc25bARzS9XFX4l$+zH=2+czElrkdr@4OYI-`-hLKB>VbB ztx9Wa>gw%Je`5ObyEF+)*4S>R^x63L(rT8S0e%xVLW2{J;Q1^R3;BuMIfwp9MfI@{ z8cbi3%O437HD_A@2$!2|!Mu9RNVwnI5FUPNkRlz|PT`?MLUygvJWImJxCZpT9+}j# z2W7G+h)IcCrPwNrsC=kTtNXsRN+&w4cAzvA?{1vt!u6SS8n4xo89g*j04$9|<+=+^ z6df9Jl_SV1aSBKBRR_Mi6SyB<)%e%*q&`f1&>&6cSvWrwi-dWGIkkQ;j+By;f<HpN zK9*lt-I^qe0fhyJRwW}hZLrkV#XZ5N$JXY_m9&wGkxScki=pef%7pRqCi~%60N9}s zz8k!g)nlhar%@NIJ9SYyTjx@!TJ5(*0@7=W_ul|lMZ;xem(q6s2q-n+TA27afc-`6 z>LMWcI=n%+dF9Y{*xU=mLuvfhovaiu+DR`k;K_{-_$`wOmMpJl=o1<j2yyqmIO>k0 z!0T8|tbG^Dhsy9OG!uy^$yebKKc2_87y+Zt?VaM8TK?}V!*vqxH++1(=;Pr<#=KdR zNc8LPmg;9?qwB6`tmkYM&>A(6B`}1yZ#rZ#k=FYcVv`?tBZTNH(`mJFu{)Y~V)}X( zV<IelIy$hkH&ZH<%Qq#tGOB5nPLhsezD{Z#uQN;1Rw##}gsGFhuv33oX1P$-BrIK2 zB83av_TaCn1hufE&?a8ep)1R&A}>pk)g^$DE>#Gh@w`8Ii#WX(O|4d`NuQ&Z_t_TU z5ek0-Lc-^mvP*HV4On<`a#IR4YfYDE2_~`Wl)TjdniuEcr(dM(%zazzj)WB$6nM9O z!0~*`E7lgLKV)wAJ)DDgg=gXzj2<^jR2Jp<Q$AJ~HyEC+SlY*?#R*)Sm>j<vO)i+T z7hi5=3ZOuC*klut)o||ohU(c#fyc{WcO_pn^Z*6FDP(N`DI1P}Rk`ea<^IEW%QJWG zBgFD?csh8uFDSys{9q0w{6i$vM+S^-W3r^2FFf0SPIUNFe4t*a7i^;!PMgnrTiY*w z${2m>9Z2k8Y9bm=G&CA*(j_X1V&ZPBq<_JzOgS@vYDeK29E=(sR8Wv7EMs$XR`TL; zI-RAuMRQNd=wY^|zte$mgVO{ua)pT+Nt~->O*XSl-~8x;^pI}B$QrlHsjF!<)Xiy! z{SLgVwn@yeo)X&+$!g`>`<?P+LACGBc2b>~R$iMa)6Ub?zgvAGj(>kMpp(gYCrdAD zj;P$5P<mTSZ*Okx4}<-DOgY_F|E=TAiLMYjdFp}gX)h{|vyCeIR>A^_A5#7)TI`N? z=b6KFgwszszlY3~Yn*aPlk=YL?8?K*{>ky#RJHxCrwUH*)7A0(!R;V<Kx`Toe}C%j zH3;~_>0!5UILLA7?6^$FWB=!Nv(ReBbhXp(mJIoeIp)y@AF4vtx}Td(`?A;gU9)C0 zdD$i2E@R^pebXzu^2;Y?<yM-u%V(7qaY{UH@A55j5BjgkG3yM@w<Okuj4GT4uQhpU z#qE<Hc+8VKpF)iO)xH1@4Zuf#IwC0}s%<x?wl>#$6JNhOpHPv<Sg4m`44?e=62a;3 zT_-^ZOeSv`sQA3yPUl<nwPSQxm{rb*8GX8INW^P2Ta?p@4sO{^<ekce^gk$)kykWe zl=&^XpY>KzF!LFuR)2rTi8#1FNOijXH|}_gv7%bg{tcc+G*n4WR<yex93DzNn-u=t zC@*|0R}t!IrylaaKii_`g=SO&NPbTCnZEoW{v?+dM5U&pN}b3PUhn_HFBNU+@UmAK z`Pxh-TFbIO?*||Q0A~iHI((6pWnlP0tu~aWY0&p!M*Z3sjC^IM1lccX>zCQVa!uf& z6Q|UDQmiH$>Il#PR!4OE`!Q&mc0Vx|f2Ut|rhm86+Rv2-lOrD)&{IqMKAkPs!`owZ z%z_!KK7n}53hxq6NIEm4zWf&pKr)Ptjg@O?Z%<J^mbzHFIE}qpU00@KXBy5?qLj~h zvy5tS+BCkpzG}Zd@v$E7-aDr0>7TqF?TzD8C)ltlg+g!}wGOW?$=pv5;|{_l3U$Zl zD}{tsXYV+CFIW3vM|kH0buz*4=>Fig+aTT32Nlc1MsC-$M*W}H0lj3MfxZ%i0{aGH z%F1UodI}L?_dQmLdw^s(Ki+IWD2lc*?9RX-z-U?w;vR-<d3|nAo2Hvm$3{y_yEVSA ztX^q&m~%1q%m;}=<alMbm}!}=e{h*j^V28cHb(rC4Rx5tkdfy*FoW|Hi@(mP=CIw% ztbBO5S$!<{EC)c6@~w2MV$;pcaVFB(*st%T3pHOi6luWNa4!j)YORaT<sxzHD!<d^ zs<G_$7p<rx!{K}ldHTIh>v!MND#%#T1M5A09wnSRAFgx-Wf&Tn?Vqg@kSb$!UdR6N zcQ2@|rD0updikb7S)u5Swfp!&ZbjNaB#pc&Ao+OFtt~A%I|^XhtoZ9_l=@F)p;AUz z;?LUe+HO-GqYcYhboG<MP$I}H=-%Hw+f3&CG$-PQ@bjirz0v%8U4N0j>G8cY(qpbH z5p3dZK$?Zpzq}0M4vG7CJo9gaJ25GT2Ngxo__^>})&msgd5^xLsI8A=t9(l)_Iet| zb4@5jX*Qyc$Tk@%IbM)t?j<flyW=GBKj~J<kSL;@oP@h0cUuOG=lS{66zPIX(S@^e zC%ui0@oJG_VSD4l2~_ecGPL_I+vl?ipVeP9EgNO5q4==OdF=ZlV*bWrAan;I$?3;w zXodRIWcaceGsL5)WlMw(DVzOY7jGCC7(722+B;U`g-d`c8Ydk+ZdaF;HOhB#;Lx@) z0)lUHpvC3R6VnWVBwDp8`hL2YqqHhT?`zqa?|Fo7JiQ9`euAHYmT3fS{A-GcA3vkb zFfhVn7RjGp%>9;+2EftvLgL3ldOFX86mk}g@)~3<#^RzPOxLqfJgLQ`-)I*;4tPEE z&A}82J4?q_cM*0{2>3W&(7}-%fimsUPbZKF4g!IjNB!D9Pn(dAoct|b&zFG_GJx(V zK6)f3p*=HL<9k~X8s3MFCy-IpI~_@3fhTk!|0iW<g)xrNZR_{tWOk(i;$KOjKZ(pv zkG6Fr2-g^~5;TaD^wZ5pr5zecUUIk+3fveH$g=K!@_u*t2o;s#iYr%!cKEw{g4=@- zx#vVg-<{%U0sf+!S10Fuu{V<70%)7f<WRPvhMHQy(zhYoD>c_AkMTiy<Nt8O!F=|s zW)FDsPrT}7^Fj%;dNW&i1F&d{44e7cA5m8u8yi35?tbOlV{iI9UH^pCQt6ma9H)nc zm1#kmJu)Un<d&{`V9f2QfaTt<*IK@I-fPLJIbo|diT)9`b$z+q?rR&FG}SOCX`>Ge zovcUXnCUzC5(_5iL`BVLBZT6W5F>AX=DcZiDOZoRC@G!xKuAd8T{5A6mf#tml6RPL z&0s*Zcj4{hbG>ugp1!1BL3FJ~<H~PQoW7!m$SPCq+8$OotgzMoQ=Qv&0>pve8!lsC zX#dgf-&>y*urGajb(QvXX^|BnV)LwB2n=8dNv&@L-2U^YQ($wn%LHSk6fWHH&ae-d zs@)FlyT7Sg9>Zhwq|=1-w%=PavQHDtxdCG*Nw!oafI^66AVwG5XsLDq`F);}a-oRX zV>y|P)9iqMt(+t(MNS$M@iJ+3fTpV(=v~{T?U@;{M0uJOf4%n8{Sr<VXgZqN42v|8 z+vRlYvUO~XXLhv`C^1OMJ$JCgW`EMTs3<ZhC{WiT5#w+*uXrWTr7=B_Ar?WQ5k?5i zso14ZrTGf-e&=i*Qfu(4_j{LfdW1IQf4WD&uG(Do4lbjg?$JhMq^FZ8wkWXqM#xT_ z85@%e9>^b@I)MTroDa<ZOteG8k=aPv3JMW{!fg@McakVmx%Wz~I}3nsKnlJ?ODAT7 zN0sk-ek`NRAaHB>v-io<b<*7bTZb6`Q-pT^`t=$Vp=$#DEtm#h-|``1p2soi$;CxU z7S2?-UA9<2rVl^<*aUXluH~~|s@isR?3)Tkr1-YB#oV=316~~mIZ3teOC7Ht7Zf82 z@&I8<<*u##Zf)uN_je77S68<r2+3VVbyNymFBU6d_SjSI$9lgv<n;I)+nQG4mlLk| z`swcPLAWwK$!fNe&OT7R1sZqhL~d4{jfW}9k8@&_pO*q@xRX}ZA|y0O8e%b=`sg@c z9dydXFJijHBFS6CucK_&cwHe(!L!z*K(n4?jQK9Y-4p^HW8uEwWP*>J%g2{EbkZ|u z9a(x&*?u-b-o9s_NmIGWqytRvU1!^5NMLv~`nVayH_}rTbvb4v%StbO=FXHzWH~<h zGW~>&tH6yrg6H~bg~Dxwvs|WZoosRrJq*e9>i@hr-M?N-yOn0RRx%#MFzS>5`Da9@ z2|WJs$fk>WsM%%a=JV$%`-aj6Y&mw>=$NQ;b#vQ$SK+<VS^&1ev{CC}K2tWyt0k?a z)!Q*pq<21|LI7Ix@=j&Yzy<~R`B5m9v{fkvn52ZKadDAXX%vWYS&l`5`T}%v`}HK* zdoFLkgS;@uOGdkKV7_-zx?qdYGnbIZt!FVsu`}}l>a*nz0JX+ER^AqFC1l6P$Je|c z|Jqw%iRYNI*_%)we<Y>{7WTe+X*8hDilBT;uG93xP+?j8DI`e}H|~g%`nm>@wY*-l zIgM=32}{leh{pP<YNKe>P1W6`I`?&cE5vZTduO@I`4=ngOk1lb?M#m5DxKYog1@g$ z1C;0y{(AJ!Y-}t{6q0gIm+^#FF!<ODF*XC)CL4r}j@vxCH)x7_iw~o(8?k=dqTkOX zD;31b7onFRXIl6}peKx?hv1)eF>T7%elzEOczWElyc|tuX?Oe>3vW}sLOZep3)F)v z{gncfK<L@8bA1ljOssxy(9_jUInZ-PoCyaM-V=T95Lq7^gZTKT>}6I>l3s6qjQ+sL zEL5xgMM;B=hyH}!bOY19_46$^7ylCq!2oRc{Vgt>TKnUjjiEaGP1V)3E;nnqbfhD> zpr9c8)M(<N8CB=cpF{;UF53+acg}EeSN2B-@D`#&l3t6qQY-ZNNlj0nsPVXmnUuNI zbzpU(J?V2f?{TBf&u!gs5_i~`*q+lCwnu&Vu*(id_`x|$?eCU=5Gl3n9|Bg~Wo>@% zOMPse=9!}!!RB?1e>v?l$bbN;iHAa+{qhwMtSZ5XNY{fH&02GZXIFc1+-4u=qA(p; z!yQz=HX|82tPGIRlgD&C<908Yt&m&|YhIY2=XQ6Hl!y@6z$KFAhj!!c=EG+bk3US^ z264#(%+l@c18B>Vk`<LdaR*(iiVn+>9(}Q2T<=1oqJLSHesEA^Mb0TH*}b^<a<#6$ z*lqOc{-J3!jlBQTqg^)E9pa1dKmwmgQ%&i>v^e5_VDIzQbF;pkAL_A<I^_ik!{^hS zvZ146ZK3$Q)SR4+=bu8nc;}=aV^eF!4(IsTX31+iUc~$cFtA{@Mga2dM6Jtp1rsRd zg&O3qcndMDHfPHpbUvy5>3e9VRp%V;GGR1#jmXZXl&iWrO2^}l8<F9TQj!PoSRWrm zH)*&(2xf(p9H&W38X8F;J|2|Q^@FM-XKj7eTHsSZmoh+8tLm~fkx_ji0TF}cJXsRB zo9pY2zva#znj8f8dASH;?rVUOs676fYkN(RO7>-Rfbby4+kB~T$cBid)(q5b0CE2g znp&wCNdYgua*j-}2f9#TtiGO}B&z`w!knBOK;%95r3{!5zwbS`VzXW|7ZEXDl_TMH zb8tIZf!?IiC!SoWH{W8m@^~ULpd*^9>7|j8S+U-Fm1XVymS5?0a?Z6Et0Jl_R{Tci z(BMwV6Lva=8{N^r_s`C9y}=-mfZQU;xG&wtUT5qh5gqsSD>MQ-^{g)`9MKBdOHJu3 zQ+wG7wYXwSfK&Nl&X<$~*owrnI2QAnhL^(It6&lDeL9=<GR3xIr{9Q(G@rcrfaG4~ z_p&nm0Y+BVYLETfUKc2TgO(MPk(965CT#Zw@7=!#9*Q!7Nu}Xj#o*7MIi2TU;S7Tm zf6Y^#bqTXd{%yT;`_GiLXPnMr(y;taKC+++s-kU-@Ac-;Ch|~mKi~ZW(5E~i_MpJK zJM4{NKE?N<194e)rhKR_&N-^eQ^%4r4Uw;x2kyfb{+&olLSp?uL00yLRfi5JhI8kA z4VL&HRW+5TYz|+MUJO2>kgxi6(7y13_<D+Yhhs(N)zMsH{!OqTr2wlKu)YvI!eBO> zC&Z_7HJBaVVz)Mvbd93=?3q>py~EJ=JD-9tJ1T!#o;&2jU21~QO`=%XX94kFZ2*bG zC>SXP*HO7DD)!Nml7QZnPz627Sgl1<k>dIZS;s(Qjnm-GS+zN(hv31K=;^|DYw?A# zFr4ru#J8cZUqn1X@wQv0(^x839LQGq0R%+$V|yDr?ExEmTcf={mrb9}ZwJ^R;@Ii> z3qMneqDz!7cL;(|UQEiBw)FYcLyO^wZV9$uZAYtQa=x-UeEs^T84r<>!#Z(~Lv#Ou z0O{Sk9-;&tF!UvIx-nR<ZKxi`v6@Xg_0~0ASlmb3=$s`rl4UNlRG0iAf}uy;u%y2I zNqjjNpqj;`2MqLmvt`!90Qu(KH58x6ee$HwT8eO*>flnug<}#a3ysxmps!~{=<t|R z&eOOMwyT-h^{HuczU0Sze5H|Znm+AlwHNSIxn160cAPGNLfiRxe#WoK1=jS!{(i4U zzTkwN@YChSd%f{vvy}pBwa5$Dui3}C<5@oTc+DYi*?l8^;4n6J5gQ?{tZX!J@}=qi zv3zg8-%R$Ei-Y;bP)d-t<5NVPK@OYC`F7YgN81w;Wby3+Z~(02ao0IU_Uvq$8D;a5 z`Onxjgqu^m3%iA|`I+bjrGw{B&ZDWW{?yBy0We<t`g$4S?BPzFS7v+9<Z*efKPYWh z!)!^9H&x|Knp<Fxk=a!R;7hoe-@KqS!F1>18b~d#@wxm&*C(1W4opZF_CSHx&LG0& zain0HU%A&gYIVv)DDICQ1WjR%dNybHr&|KTJQC+Nv6w5w(Q`6;Vb0gT<y$Q;V-!}F z2AAVN;e5#PHdEozSzc3msZDn#h&V(mFeWPvEFhRDwj^iNgmRj<Iym@9xrd;$BHq%a zqG2iH-Tt0Q16p^7XjH&;cQHqiT@nf4q?{)%==P!s+-1`7=j=TRE@+>EvGI>i|BD6S z_NFtsckS?9x-gk6odS`yhjlfkzBeuVYeHf)-Kw|K+3_O@Kb8EIDv6BY1!IUBZ3)SC zp~m~ikF&Kn9qsJ&_gdE9D;kS-_>oE&YN=0y0(oui&ll^+y1JQoyzq%qllBN?H_ywX z>B-S!9Jjsl9~8V6slEzdgrSdwBB=BGw~()|k`nfalG57RKnNRVQs^Ayl%011J+VT| zOOHsA#%iU3O{a$O1RMJawxy1x!$lwM)q{MHVn|J&?+d%A)w<pwB;F3v5)yW{*H1v+ zjDex|x357oMU;?kf46%@>}u<BA$OUTNj{waUV@!nN$f!Kxuf&!<(=CQ>w;xxgW16f zV@YdEbN^}kT81Bs?N+KI?K1&^)t8?hX&gacg-frGshsI}G%{R_%=@LLrUo|eJ%N8t z%0*Fiq|`#IwgF3>iU77H$B#{sgIALE*^i$du`ER0mM(VQJ8q$f-H2<Jiru6=RTXvo z^;cS`Y0HKnqv3;GrEGHDx$Z_EL`IWJm-j6#EgiUOID1!3Mx-=3ehK*~^4~=lgdu4( zUH7zTx~c>si!j5Vx?#t%m^F-JJg~Wt{~W02?S6jc^$|Ty%Qm~1gU8L|dG(!t;73dv zxfpIX9{01x;o-}GxYp6a#FiEzA0#$enL^EJ)s9mVN5pzLl+_0Pg+*g&Gzgqhr`62+ zd@?JCt_3F%Xk;t#!oX5hee_hsD#*)gx_G$|v_;b572PY{rX#Pyt;Xd(t6Zqc;x;$T zNcGG6h_?RZO_CB+GDAT@L5@8DS`x0YcvQft*ON-ttEoh;?CW_SEF&24%6V4XTgV7k zzJS6$ns_WIz;PP^`4K-+t5kgD^$tULxAvD>p?D<mB%;8O5Xk$n4i`F%y-=@riWAM1 z;S<g-KG1!_QlWLt-H5VS(cfe>Q@6eS?B~nn%O()Z9u{Yb&zgiuM~%XJH@b=6EaCRB z)=U1iqB#%5z62$mR(+&0nQ~k0O*8T#44l?^%2}jbxa1^?io;IDnW%USv@c%Rk9>nJ zbU?s3?nRGJnfcp{FKK!eOQtk&taa~CCra_NS$hDy1KuLz)7*VKz1NWK;%vX&g+O$t zgjfu9Q-p<=<94W;HfrO=*6#%)aiu(iqLjRll@wGeMe?i{O%cV=f@|+BZ2fL`6Bl8J zNEUtnp)|Fuequ&ENd+xwt3L`9t(U}Lh6r=Ed&B2k#V(-=L<AF_tF@q~OtxaS`bW|A z{%|8?8y=HSgW{k57H9oZ$T!Vc#{qdovSo`RsG9&k;IOw#qAtcqXtpRfe_Ls@$_a*` zKr@KKI5MB5cNOsv^l-!mU1(o0`IEn!KCXxRrSe9!U0=&zGRTgY?B7RQA$GoFiVS+K z^NS@j(n!$TfRwS#%v%C)FbI@8x`>0Biu-u-Ee54!vQ5qh<AQ6k)J9z@c3X>lZf;zp zci=-xBVA}Ep=xbyeWS5T{$;9Am|9RkI{h-ZaJD9VVf*!B1T@X0cm7t55^*CT?E^sk z;NB<K!-KQ6)9&8h*@l?{<9;aa@%piQh<8DrR%EcB2@fPIL7xr<B?vTp0oWAghNg`` z$Ajr?9Jsd+drh;|7dHbJe))zzqpe+u)zJ4X9@ey)uS1U-$HvBpTcwSj+RGzi@^L%J zowZw0463B4<7MJTT&TUWs#@9Z>56Ch-9Cu(MNab1GKBZ_7YzeGqR$vgQV)7iangJ> z$1ULw7N6(jUlR)~VHSVJ<<#?1m@Nh3-Hui!Ap6_KX0Ogmc-1zmE|E~<M^zR3eT9Kx z@pEYqbw+;Fg#Z)-#=q4u2w{xO44DtyytR{Y_rAs=Bk;1N5Xim)^PCv!qsEK2=_cFZ z3CRd+ojv+*T6EUFX!%-&BhX;Pmate&4i`w;>Jbx@#t~E>?;GJq@h7MbV_`likj>xA zG1$L$dMA#wZ>{Ist5y*&x^yre5QIOHt5wJn9+iU3^^ii~w7I+Xo2?FMW$`i{lZ^A> z+DI5}wSdDGcORU^m9CQ89i?&NQATVwMZv)irUk;v(day9*(3yKpTw{F<OS|rvgCg) zc9oFy<*{ZYeTeseI@%8#o_BSw=68q9z|#e*UF3^(&bL_*J*t(PllDYO1)~baBY{kv zKKsp^H<n{H@=>BEZ4jlZ;ey71_sU`_l;VTrt#uT$C=+Aj&&Af|J)3muRg{PC<CvCd z*t7~thO(9Xy_oRg>)(~Gy!FHImQJb#((?J8jM49!1Y)_M7hr0?Jh-&K7#iQwV5cAN zlg625g&+xE!oYj_Rb_^Ul&754dfLgo=_D@yD6akyEb|_nIJVNY-GKrKT4pZL^ha%0 zX;j&0XpZwSCTmIWR+}BHjz_l7?evF3Inx{P4}s~<z`@*{Iy|a2A>Wgf=oK>qw#OPZ zVF;_$h(fkYJGeQzwMxQ7I~yAV+vn!KEP!DceG@$?lwNs)Fg&yycxtAEc{K@f<-GF) z_^1Eu4aeP>8cI}4jXU;O@3^gEc!SvwY?u1~SulTp)le?*9C?vn<6vWN9d@6CU;rt) zz;rOh=#X7fI4F*?HP|a2a2AnQzvXkIB)hvar0Gb=$U@>??H}Ufkg_@d4$th4bVh$8 zm87ZBj3>d2k4d}u>OJo>QW`OIae`lT8bz<e`6MJZiXzbiU&VpH!DMZtFi{iP#;>ln ziovA0xj6`zLuCN7h=}#L@TSBKz{hmxJ7MSS0pvlF)aaj1l+4%<{EgxN^Ke5^=zke+ zeRrDN0{fl+3@If$>8n?-s5w20y!IsT8g|U|IGoN`auP~kXuKL4cCp{CG2J93r9r$x z#b?$TF1p8@qloQ6=daYORm0!nP6Id)!9<z9m|k0Q9l&`z2WKtmjE)U^kOK!q2je3U zY~y?{I|HAK==#Q~IO<VZ)2D;$<*0)e$pp6TwZlndn-IjM&IlU$HJG6!D7m@o5?l^u zD-2csR`PADb0a_Dj=Dl%G-1xuQUgQ!l2s8hL&t!SO=7w6jSJ<_&OTP*<{<gcNB_<N zQ5S*wG$(iwXwUe54_VE6$oSLa7kN!gr~)M&`676#RG!0ayeg{?X@lqeVvSE{^G5pK z#nO6Nf^!15%a`^{<&Ykj4k7Kh%>F7qTS67kNm%kaaxlic4DW_)Du5J8Q=`!|nj-ov zW-^hAyej)4oI4hoykW3(G}%j7>gCIq{*_1?^mf??1h4p`hEPprh5YL7hRUy41^E4l zu#K?kiLXA;Dn5d<9T_b|Tkc=d*kt1szJ~*EUpqR3`&7avLO!1Uj|bESgCaJ&gT>M~ zN7YvrL#a*+j2UA3Q$!G?)Y4szQ>gB7vXZ@lCl50LU?ub<^4a{Av<VY8LQc^opiD4Z zttPA3!exNr(BB9aEl{tvhx_$lakAuTwa)akbPc^?BVi*aALAj~fs$LkHFYD@CUS(; zqzR4hs&a@Z706z$Qn4a*o{SYLhqs`-S<HR$;)QfV?YosWKX}aa<3ObO<a85liX(t# zQXf><C~9S<TwFlgnIpc1bua)9w%q3^YojIu-|FVj|Lsu#=blKORiR~f9E<M2+SHFt zke7o^y;C0p7xzYC==}C=%p~UbB6?P0Ow3H=@OrHe%jMf(K#-97(-ofwBEJYU12u|h zY_Q0u7rkrG$x)<)2~?~^8P0`R&R@TN$)(C3sS}f@j1Q8Pna&c^(gwHxT+Z5_^66ZW z&HHA%B({`KO&u7B49ycr#aum3twW#<UE$Ydlvh+tU^k)mdIh54Fb2Lh;nnh9t*Mpg zy7*>h;wg8Z|7&|CYm5Blsh^`zKyN(-rXnanjw2Bc2`+v-CvnEmb026U4ubgJFO#!N z>g>#!DJ%FHvsA|qA>tRraAcR*cB=XvQL3cka&fy}bRiUJTN!bfzpDpH9=+3vk*}x& zG@*3rZGL=D#QrLZ_x+b5JO$!4M3QZq_kf|6Q&fazhkOl0_$rn%KPOE0yk#Z)n6C=m zy_`#9O9;80ox$-=nnI|-QS>x5)w5o;vI(>bfSmN$+yOua20Vt7e2G<bfDEYrQL+59 zyJVhvPw=UO)P1Jbjmw8GmJ^w<uUfLxP@-~mZOvS>UR{$;#oACZ>04HAXL>0lxI&Z} z`sP5YN?JTS4XARpL-D`m=31y%cMUYgQ?TYNL$o72Z`=zZ4{6m>^A4LQ|95&JGy{)( zB`Gg&J3h}gNEQO_(dC$u{bi}#w{_I=N}PmNO9Q81HfPE(GB9CqIG`uZUs;JUDaMB3 z<a0fe20FoHx#4($&L!v#$+wyB@ROGon@ro#(9mT5!tRPy$`>QK@3B6e#w36HUqWe2 z$Y42n0A^WXv<>5F{;OJ1sDh(~Dr?$Soe=}z?q46yZnyEXOqh(OQ~oNt4ldhsG=gyB zXqe(u)KrSh(+dh%OfE!V5#6s8hUPbl=4*b*ou=Tk**Q3;nc9+#A1}kwWF+}px%kgx z<$Vldcv;ioJcs$6EnPvZ;eeiBV=Hqr78#M|Q561fdXu<HqiyVxA7czV0ihqkuQ#At zX&9b0%DP+5O5dmT%Hw{gP;HeXP{8uO+5NmPKs;Qp(=7*DrA+-Q2TLAkGw-Y5^8E2A zx)A+B{I6|i^9clYJzZUPd*1z%ECq~=jQalihNeZ1%cM)OZ>7}KfMLY~OSMjA5U}QV z&JPU-Kq(u?sOK&x7j{w&;o_B$PD!nXX=n2^3j4D#TI19=zS;>FM{}8jXBfNL+1Zjw zoR&R-qR2%`nF@Xs7_Ib6|Nh~1H!c96wPDS?-`~r2udO!d{btF|J^^y4?fz2YP7|dl z>~jYTr9|_LbYGOM^%djZ^uwd+^8^=Ev64=hJupWbB0>g+Ct34HMhEpE4^4HcBZ|Ao zs+xK<tEO+M#HiJGYFO}fR$tOmR5w1;|M$NKN9Z2V%b>$VhVrDZT5wRv)O6fU=UYxr zPdrNs{EXs1G`pv(oi_Y%?*&;feuF`Z4TV@@cM@}{@-^U0VDHTZ$vISMUCYAk>`KSh z7M(QG8t2Pkiu+3;;Q27o)4Mz;d%+i@CTqIf^~24K)qJ}6T0~3?vGWnADa!3kqyCEp zs8yQRW%#h&*`@x<GuZbNS`-Y4NB?utwM94v7HXNxymNgk=YO}!i|<H&IUC<(Ma?vJ z!bFYfL%c7ccW91ztQ<Tx9*;E{xM8A*hoeooSZLUm49#JC;G+Q@tZ8s?C9#@`74)Fm zfS;SL^W@v3M}Fa1y%`?Ov(0^d+M^@(5lZ@q+B!OQ_6s>-B>ub6$q#f2GBYxmof=n~ z&dXp}*B|eM7Gb#P^xV-($W-_RlnACQ$z*xqZ0F3o|2u~t`b+t{p<isd#i;SB(-(Pl z&^;&lI78uFzoL<L9DHk$91iJv@?WCu>Ch;^EcN`HIA5iIco-l=-A@krWt&qjn=J%_ z$B%y$m8^_rxqvJJOo4AT8LT%xPdYw>c8($26(lvFTlv!Tz^@+3XM;6Qh23MfBdt}M z=`>rT_zX}>2*bUHlargv)V2g!7jAz}>cX?=z$85f3iwQIXkDNe*`BDZtz!SmNx^J2 z@eTMOm!oHFZb$rfcF3J3|EmkHt@wF-NZzcNt;CvrHO@B8$^OPDqwCi$`a{(E>PN%# z-IRlwVS1Wg1RGR-jnjajAbU7;R%Icg2Xc=y^TeXa%N&+;LF~-o@a(nA@31!n6TcQ$ zv{}D<6pqlunJiX%hkyKd6-cqrDiPC?UTScj2;5;LrHcB62Iv+3^u$ZVP8(2-)ItV9 zd&{pe<CQsg*zSLJ-}C1}H#d`<lG2|qelA6zs#WEz2W$qUTEyP&(+Y!N-9CfZ2kZ}) zUvsF%#mcva;4v&N#_k*SXxP~Ai%3ZsvOTx~k8eI790Td13G4=n4MOo{?kh_R3QKD& zoBcv_-d-X2^)@Zk3tC-yILQN%{XRav?B%^K1f41rg?oAVZ?}H07}slWmB5rUTW5RS zvgr~+$OB>bdPP6Vi!TfL5`0nCqUh9A1xb2Qe@vEGdx3jy&`D2DR7~tEquxw*nhOa* zZ!yG2JUBA1v|itW7K_~D=SyKL=X%ZQi84#@k;SgwhsYhelp33LY)Lg{tG%A3rXaQB zm5yC#IrW9={{S$MSrZ(dcIQrIs!}F&5(l4ygRPyecc;(MfNeoVeS`wZv!4UgJ&1|Z zifkQt|62w_lTLr#?W@OD%|y1r7q=K}^A>S_@P)|x>926Eh1;QA5L^j=|LiP3AUF3@ zb*nNY%*<~Ho~GXn!$>%kN<)<n-KGkLp)|nGSAakg9F1@rIo`8pbh_d+H2F3LVv2b( zWnjpK81t?%v%mJxI<}@<c24$jSfOj*B24`8Ll>o4N+lP}OHt%X>F;+_GsH0E6B)vv zpWnd8B+n1aN#1Oe>sn-*4U{h%)K>pQPl=@P$VVq<a*u7L!I=m<9;L1M{Fy%LjD#K{ zCTfC}eWKFijbRigvfAC-0|`4qkweqAHNP0YsGgA`p%8Yr0lIt`w{J!E{?K)CUJviB z{|ldBSdN&zhpH@f&U%^Y+v+`PNS(#iz1BX9pQT@9h0S45R=sFOGX0qA;q%eHk&&}P zJ`Lx0(!?)bP@LeSKY4<Og(Z5O;jbhwKR7r@a&}M{9Gs9Jl#mdVL;0lbDYP?_#V$t9 zG9PA^mkX1V=jK8|qH#tRG4uFN!Kd7hbr6D?VZ~64^A6nfCvIgB!dvfhesS^}0}qP; zPq2Qm{~#_gG?ce~;ow{{`Y)`5!-MWFi51p_Tj~F6pidtdJXqDze_%^oTH+Yw^5B*Y zqUT<y+UojxB%IhE2L=ZQC>8p?5F+!UQ&Lib3hY1|;h**!to>`_dG<I21e@oqbOVx~ zKGVp{$*GoX9-RiPLntqVe%u7~^ab-;9ufDAHuZ{2%a1m;b@k*S-1$(0`rq)j4|V|k zLc-V6p?b%bZ(F|I9KlaHn1ROta`s1wtTUtpu)sYJKH^FsZW4$eF9L$S-g(+E#RmYR zKYuc#u(3htkib!<m{YI`eRTXQdloFIr{j87Mx7DEkcj{|uNc7msIj>C)=1&u;p?x= zMSUun$XGA9Fi}1)Kt2H+G|aDFRlNW6@D9Qw@S}J;yi|UDx-x&dJj&xz{Yg-G2ZvpC z%sy|p$fJq2Nc#RO-SvZz8B2wCWeyW(^%)Yk9Mn19ugri@!2OS=hNQ)P#yCJcYtKX0 zMst}xj$Yk&0t4#bRRf}SENAM3t^e{zKH40nS(pGq)cx!VZfcsRJ1yj!h9RW}@WbUq zFCY!hmv>FH*!f$QfMb8>BdO*H_axcDw28TCAV$Q^%?-pTqNr&5g%2iu28N&y2$xh< zW5BNMaz#naIn`6f`y*8_22AP;6&P{x5icv^)o_VtN`C#s0Tpx>E$RJb6kb^C-pK^A zHlppK0n+BL-!Ch)C~98KP)S)_ZERM3J65n)v?ulYxuZR+%|nU1`h>puVL<S_`(5$s zpJ1_m_wL~(VqZP-9_{~f<>V};io&lp;go;~-o6~FQOlXyWBLW!%k!hBOga<b1p+1h zbE##ts1XDG#<9m2Szx*V%QBF9fJP;Th1nck7zhY7u`!V{kR<2ks#SzyV7(f;esdoq zJk0mP>M0gWfyPXpr~s)~2GwY-`+k9A2(7K5lpz8_C9uHHjfEqoVm6DdYHH~!evNc> zu)h9){%L9usn_bhptmJ%5wEcPr(3*<Afo-x`#3*Y?S$J76ju7mu*!e+@@V&cXYhOE zH^Y4sDjd5td{Xc1Tve5lq60Id)o9f{3@`8uWKO@Sb35J|xB3<mvJEZ(<2!g9ifw{m zBrVY3YzHkZvav8DKSyfUjI%r31}2FT*jh%YP_565Brq6r60>Z%ow=ok`Sh_^E}@6J z)7I)?f&B!iX>1k#6DY`A=eX1M=&T%C6e%gxsW32Nfu7&Z!M>9+M;tPXzOq`p@eweo z?rdzBvE1sSP>*#tRf;1aA(7pQ_UySa>ao~xDr9<k3ardY82T4vr2{wwMW=b35v)w- zpQNRN?Ejp1(t+6`DXw27g9fs=@etbXZ+@Nv9M70z?_{6K-AO6>2Z3ox@&-|4DRaqs zM4t1z3!y6s_h`+Tjy0loigq3^_gXuT<K|Xk28u6!aNEMiGRMo)$ff%SRo}|C>JqP~ z7&%GzE|2MwYNjI=#fSlazM8*82lM|xvyewA?jjjX?*F`opEp$bHO$tZ>VHjj+0FJy zUSzr5zoHv_Ck^Us$jaZ}8=i!eJfQnXz2=(-vSd<U8@7~!4Qaf_ezf*MNce!E$iUFh zO-?u{u@JHB(5E&ahz1<6^6#BNJbaKEobX!UH=#U6xR*=0m?JsmQ=Xd6v9`~;Q^Z2j zQaY<-Ix~$1RHNpL9iTHSc$-44>~OrJ{=>Nm^oo@qDtvsL#s^5$N{t7KoG`AwsFkfl z3c>O|)1g5ko5yNHTGrIwmIlYc_MpIkGvExr@U~|>($4}38QvHVLu|+K28Vj`hse3} z9t$4B#Zc_-CsvS!F!y@_2$1Y=-#}zlq?zy)`m0{M)Iu{>OZo2ED%a$qk00GjDI=@w zOqJ^`^WD9K1|}IGgyxUrHHNHc3KLyPnRNhadpm_ZS+M0;GHtoHZY!iErZ<A-I4BT# znMU1xVML?j6zoWf`RYGFOB3rLp4w?XooTU5tL_&Nke1csg9MbP!9ay9GD7-|l;ZPV z3Gw_xWVAogNNOC2`SvB>Eo90@PK`#hFB&iNwTzQ9zQoSm-}QS`UGR+UXou5dk4KU@ z=tY^&ljuT@x%vW5Lb}0cPoi<_Hx@G&&}e0XLleKQ;1824nHY}#xIf{1VF4?iO?Ta{ zpvH7=qlzSVU-_Q*J?4b)t1DEq86)j9ONn$89Ea^XrwFQ94OcPg^<Lg=WzFftIu8ov z88%Y`wyZGq%IygTTFs<v`WnI6nL`e0?jOI0n#2_>RCNut<%-`M<k0ZgcL*;VEydDA zYfjAz88Htq=gFl{l}M$*hK#AQVkqx!&*oUkV-($(_Rzmh(K~Wrfo>m1RS*YDLsj8* zkw<lGZ1&s{%G&T(7N;q=nIWp+t$4lU!Sj#q31*|;SnS^MP>BZw@+`qUbnC2^H>qNm zALW#lsWfu#YUG02+$a?7zagLqrwLi3$G{g*Dv)dW*2{>C=PGrZUSwgeb-ennR;PYO z3*eyXz_(lB4a&V%>M07@^ZdEMeD@p8?Rb0h%yws`_hd8S00dR(ekkXUyB96o`U{u_ zF)1l_=Zk}(*!@bMdwFT;+?ZHl=-~q_0n3Rt1J3s89%NkX?6tOCkdAYXLP#+-+Az!W zVZQU=<aB>@?xWjD;VTxFC@P?f`@E<g+`A_(EA1!qDppgFcVdzT0J#Vyh-5UJ;wC58 z-??s?uCb5Kkjl;wU@-G{9`vH*bR5A<S%~L!bDtj?zsNdRBkyrp@43`a8+AKA$_$`+ z@q%BUz^Aw7uaH7bI|^UntKoC+$*bye>Fukgdbi`u&Pdw1n3ypjX9fi11-#Z%e+jQP z!CfN*Q5Pi8j<4>nhUd;1pdskqD15vr<T+jh&pY^>F1b8Q!Y;A-YeJhhZ7YIhaCji) z)7K6y;>U7N%r6R@SZAg%)J0TY;S@?Ayx+XC6rII8o2bI`SovVTpjB1Bz=IO}uy*G{ zNJM`u>bLli!k|2spQvcRHNz?o`D)=z_`&}p>@CBpY`b?~OccZ*rBMV#O1fJF1f)S) zkZzD}M5G((?hp{^PD$zR?(T*)czoXXzxUefSewHS9*C2B-gD0Dy2cpi`8&@V)JQDi z=rO`0YNu3}OT@R+@2Q&P@0gA6dM<n3SR>=IcI;3SARj0Y&yzA@Mo|K%V4E5NHZG^; zTnY^r!8u8yr23HR)WPo2reyj>Jko2g3Jd_{-MehNm$VkI^qt6*pmf8B1q&3TSF>8# zdSIfovas+4thHUG)0+AE^!s-q$OIn2-BqV3bJln%Q{jM?>2Y(K2u&w^@$%t+P7#4q zoc2L%ZDFt#jr68QeElOTwr*%t>3qy#Pc8j19F+;|(g|PkgCsLif8Un3bvVFdGv{zO z1d)+HF6R&6*YE7yM;BBrvO*L10y-aygZleW?|!L}(AHgPvjq03rM@f;%vQmc)bBA% zq1?SPoTvi3;>6j5v~<X3%#$lZEy)s^;oCRSl<5b$5P6%nx;mFp@36U+wD_V&fST3j zh<H#M3B};(@CPu_Mqm;QSCO!i*fy=ZgV<3FmwA1Pxr*7PC^dEcK<0K^KBw)W2KeRR z7{^FQXK}PW{?qmhTAGkOA(yFfB1d&;p<f2Y0tkFEB$8};zW-5+_)jkYD%zeJbPf0n zk{hua_TR?9`2GIi*QX&TBxe)Vnk3^595^VNOgTodTJJ2;<f7|RD<nm@RpFN?NJ;f( z>`0fbf2<g!8Z9zfS^g-Pel)wVhVHURDtQaRE8$vc9fev<{5`gPuU$mk@Em(TTdje5 zkTmSvUBC#bmw3)UlsU@wBP%z%Zbq`&X#R(fHZ4npo8!Ss)B&ft*q_Z;trGD$9ja#0 z&~(p!y(d8nK~pQQnzLKvJl}U{E^6S9KG0~JuWMc+tahH!$HjZHdwGUsd{XsD+)9<3 zqf}UYlYHS_^F~BN*TdfXKjdH=m#TMz%tFWNT#f>FE%r9Hys^?E&|D^8F@JT^dimSw zbo}>qC|%_hi%E|+9DDalz+r%MT4NT9pVIZfB7Y!PK}=0;3jh;j?_;ORmR!D-v$_4x zX}o2tH1DI5V#M0&>g!g??Vy_#=T5julH+@u7ap)=ksUm`cYgkR1IBXbPZ?>MMoSC| zvR32sQUOKy5L{*)9Kg+4>T5pQsX0<94U~=@WsE9bMaRIX(maWR(b)Y<bVzJ?cY?=W z>chPn3U99D5NN%#UKU!pBeC^J*P*=J22sR2cUt0ag~lVHO1dUGN;SqE&=Phwv*flt z<-i(Vup3@pO*^Fe`I;Gx&EFT^K6dSLl#xT#Mj}pPVU!UIyE7r_OC{IB+glYdg#uex z%D&RTD~uz<soH^<*~|SxSbwX|P|$RwcoaCCPS1BolFv`NUdg?za5|X9G%A-$xSB~$ zKfgVbTjjCIZ6oTw^Xc-aCh=COJNio)3kcNI5tB1@An@>AD{?&3zHWF{*}B4BHg&Nb zVPAfAC~SvbL@tw~>%RJ%LXKKlPLO`j$F{l1Ej?a&vCZ<GoD%CtCT5HD^r@r#8fh)U zDit-`$~=kXJO@@SL<;m*Rc0-G#8v$cdrDo8Cggn+-q3uHFRhj-zWq!KQG^|Hiq0_K ztD2Ux>g=+$TP&nZR=m1$mh9f6NlweFPp9`vir&en((7_DBao9k^e~BgJMt!MBd*3l zY@`nSP^RMK6I_}f)#OX^Af+wAN9;APP^RvwSo#lot?_J`+*+y>HPKU!Zt#3L+x|g7 zdiS1disc^C!zb(2v2*_qAn^b2fB&~{z6`{|!>czh3oJBE2?}}^;%zqS|LmDYtVd{Q zD4bw+3EjR0z}RR8$WVoaMRyO^Y)_9bp_E55zM5b0*_!0e_^EsOAW<?AMj(&Y!*Rqa z%+^$4iR^xa!=>r+QAR$D->Y?q*%32ov?vRidZ@P-r@KT44vEmIzAd=Z=AE=ge&=1z zPI5V(og~WIKw7<rc>D=+o^nO&fPPyeEgxf^RAzm~g96!Bl`*-FlM&vB?kC>p<S}wx zH0SOxll`bid-SXZacyqfhQnJ;BzzK~W$9Xr{X~p)EJ*g2j%DVAqUrtAqr*uyE{nNP zNH-3c<PtGuk$9-$BuEgm)CM~a#c9{9`1+Ej9(VZx&t+ITfm+)!+L9GvmlmS1LV7Tx zkNjd=eAPtcZsds8gK+#8mLjs*>oIX2m&+SXQ;YR`(aOAHvPQ-w_s>`E%gV}xA4IF` zfBa)!KP=hsHOw?b?(W^YcW&P{7g^46I6Wu9fR;~Z*F$s2BM768`8{32;lTaU<F>kl z>1!3SeR3(`&L{r^RsJts`G5b5;%j%hzSWSi&tH{4g1FUF_;(8nWB+eUyFeUwL#uVJ z*LLTHpfEwAuK7$;6zy47rU0`s`pw^WEP&(;I#%MsEWqXRiKK9aMzn=ew_-pUPg0l# zYZEk^RXLo~SUx3_m&ZxH1cS&N-&x^9TUFJmlRly<q3q!6)Adw3pG2znLc|vgDn*t# zzIV5KYc@C4PDG&WNp)toHq1^V<@gmEnJEmD&Ii}n->*=q3$u<r!H3c4M3Y)nRShi7 zOlgB(vQdLkbE~SyJ`c2z+hYm*zGzJ;zdS#sU&fL*mQBs?e&co^GW2vv`!T1s1%XPs zjBFyIU}jzY;QKEkNJ{MH?mw43YfVYs)jqyuRMq>?8D(Hi^ZVozZpv3N*+x?4y=NvX zClg5S@33AMp^kG|+DJ8{QjS5t1m+n?RPzDPrx$}RZEK;(l95>*kB1DYKQ@7&x}~sF z-XDK%0^H_Lo;{)cTM?4=k<D|oS}v!apy~g=|4B1E2*Mn~=Uv6B`;=+lYx`K|lXr2Y zgM)~vFl2kg$8-PwT(U8|2Z_`k)Q+HbR7#Vvd$SU*rf=;Hx{=O_GaU{^Wd{!V?e^CX zLV*a;jhgw0Bn_w+<T3llD|>!QRzNq+fSnS0Zj^w7y_5BV&Hws?<V~letgEk4-#cmT zWR02o?y#6Ck|4#V=ecOzpR3KahQt`ci|B3kQ^;3cJfk>x00|sgc7Z?%Q?0fGxCiP# z!qK46GJLaNh4KCBESww{RfJ9sm&bj39`R~TB#mYUU0hW-m>Btb!_PMx;!Hf_r~R=5 zn3j)*qp=lmkm7IO!gq9Hr6q@1h{&gzwJE-YOJ$>54gAM7#a7yb*pFtFYgYy<JSgoW zqqVH^Bh!wwL`8+JIBFf0JXtgkZF!)T0PwQtT$Y;lz9ThrA)s$ZN%RK4`lKIBkFV{X zz?GEv|Mw>{;whrXR|!Y>cr`vSctsXcxCcV}rWDku;$$xy6QqehxHvfXs8Y~ARDKA8 z%C2awe+&eCrC#*L%I~*0>MUP+d3riL`<3j*63en+lOft8GFJ7e;RmZvKs?*oWdoU= z#MkiD16~Mn(yN)AARm6wX@;&MZrl2bGDNoWt%?f4RBu@Q)WOdFyZCvS1U~QU*yy#x zyXo?#+h52oLo^Zpq>4jl^a&X<yWReeAubM5^Pz)=v0Q?Au89fTtL45&C8$=JE3MO> z+*oCiU*~kR*MrjjsJ)h!#^4&$f0gyTxNAS;XVklgj2GCZQ+$sb#q6@u(!vIe++*=k zzh*j3Iq&SwUnDqCOKi43Y`gV;&2aha&FN_TKyLh9>y4T0Av+g^dti5A(1LF&o`S!) zxV-hpnmB2l&a2fGAm|6+614GfAG9C9Oi2uf`(0x-oB}TPj-h!W2ZO|L${0rT<AiKx zV@~It(-R+g^wbNGn-IX6c(T$-py~1@tCaYi8P$oBLa#i!-P6NZ@*B}NS5)w%JTlsR z;bZYnJ1=NoLV=gP{#Q2sh>f1Ojm#Sv<-+{9o#SG+JM!4NYkqp1Ep06tn?bVU!Rfhq zWw#T9CgbNVBy6m7KKzb!l^W-7or^XKeZG)-u#oi2I>Dp~rTWhK$2RXXj=+eBrvwD* z9~0uuZaEN4C;!(N(iU9zmoJXcLOxze>2!GmdLJOD5ak;m%EsT=i1=e@h-7*P>881> ziccYLD-6&t!EW37*53oQqp7LfIi6rYAuuvKx_RX@mh~pr_F_(ZQfl^KuJU=;1cstG zbv0Tn(~AG&OyV;K42n=rr`;bl&Mp8cNENv+&TetCDn=X7@Q4pGO``K_-lF(<dWPng z<hr}FLSX3h=0yWpAIfn7+6|ZEZvPgn(I?nrPt25UZJQ^CLQ<=eprVezMS3JPQR;y2 z^ribZg<~40K{9t$7k!5l6-zl2Dc4&i>9MB%ELd(u&0oE8rlVEwdGaOuX1!a)i`)K< z^~uDybwoq=B_gF{C8_k}=b-~6<Fqid+cDK#H`}%SGf{HJTA6?r+msM7DVe@(xW2wV z((pLMw|B`EhG_S5QX3P~!=)VZ@1rB_iQfFDLB!)EpK2~}%1lna65EbQni$wELG2=y zYJP{5{?g&KRm~D%mTC@?2rkt|LAFxU#snt^jcWDba%;iz^3y|_>s}aWPzI|-;-QVa z6E5*5UpJ^;n$&l5u#A(_@$mdROS7adXU-2P;^@du_TPR*BtF`HSA9J_Y4rdQnL|T` zBFfHbEZ@E+q8UbP^GMihCj)&xt-e0@<5;c9=dv;~bT0+&A<Xi#*Ml<gx?0_Je`j{5 zt$wrS^Q*bLs+Z2Y&P{gTloK<Io*^gilW%r%SMZkc)TubQT|9(?+v?7OoAvt(q_AIC zk*PiL<olK9mu-?&C#P}3^}WmD&eAkjHE-J;=AMlt{_6epjyN|kG=^brTIwB=x%kST zKOChTbWFf`Yu^ETrPewd`Pq`|7ib(tR7E-w*evbR?i{WE4)g#d&);_2i3)HIo8D&L zs({30f8phUwSARW@|0bgbBmXjb7A;0-9tkK7ZZ0<peZ$8DvpeqgTBg!iH*T%y1Wc{ zVBcs4X)#}0uX*#AK&wZww0w1Zj!y7SL{@eKdTs!D)Ow((r>ECjbKkj{&9YA;0UPKU z;W1B!+Lr)Op6En?PUEz_d_M%G$}D=2T3%Wj3|U&~#uuBD&QG5{o!=SQgP3?DwnNQG zv6@hFyQ4BHlPO!GLhtu9AqpdOnY=ULnvG|r!9#->E3frfRD|7U*XsDt6nxgb`FDQ8 zMy1W6RX%SFM@o3foIDOT<R4M8=0AJ2DPG*wH)Y?mb8w!H;iQ8mYx4@<pm4ekYWBWE zDnBvLxi~2+(@|HFbCppUgZdN=138}Uh1=f{_p%Ew6c_yxzKzD0>{js9ytUusE?C{H zvZSOX=bW=#n`po_*`l{ymMl@(2$n6~MJ_4HSv<n7`8+vag{<^v?ekm*Cn+wXN52mh zyn!zpn!mII91Kh+b()Yd1oR~RX5RAhuWZOojg9Z)xWak40Oa%cm72FkCo&jLc!;q% z?nty!ZM~VgDFteKAnlnIi@$%*Wq<i=`r7oQRJ@h;QEQJ$rM^Mhqc@7h_=U5*kx@>^ znmi~-IPG?S2u?i<?FYiMucvP%B<*%z`CY{^iS=B4dpP|iC#iKo!XkHlU8=zdszS%} zeOsZI_mk(kgQ3+pr#cN=+4X)-mC_K$V!64U-=BMbp*<Xf10CzI{A#;3m4X>$*DEaf z`T0`)((>|0NA^2`YS>7L=E>)rPN&bo1kR^2&LoDzm=MmxtvmYT&bd3}#bL8)a1813 zzqQmK`cQ6)i2-K#b!J`7?}~mnj9ae_HfM)ROFP!&Ow|Ui$m}-!a0WkR(pEs+3FiVP zDJf~LV#NxS>c56QYdvX%e2d2j!f$wGjstIiYg=0VJS7rDwEGtef;aX7fYPN_cuiZG zRTe=Y0=wAg6B0eaS=3qn=lo@YjZ<@<k;ruyUY9jo9kbR~mH5l!j1`{5#9a*e8PHWI zwU<?Kr})JP$K=FD$z^m+nc3`d`L(46OxP_9Y>*aI1WeGT53Nd~Xj?e#vR3)%kSzTg zk8zjkmKyq@R?a4W_y}3QBIBxYV(*(#)Tnw-t;<g$l@8JOzdpXtU&@kH2}5yQI`B$e zWE6?QPU#x7x@st3LOv6pC@DQ!?YSDG6B8HlXmyLq8eMhWJEjTijfD0)$I(7csz@y5 z#@Q8F2T``eLVH;8FVT(sa>!x6teplTHh4V9DU}~iEdo3-EI0SPva<3Sbrp?D*?VWs zmj^;Mci;ztdV7yK0tr7p<oo+pLl~?QLG<S4az2Tg{RT8kjZFddP?*h0B`OX1Yi#mG zM&zTV>lB662RYhVZH(lEOxMG)mPUak+MHE9t{Pa{6;V+*_%F!Gy_Cjk!~;|(*y(p# z79<?)EK`M2v!expJY7lxT9+Rx*>=D%c=@8rVc-->3ai!001bb1#f3-H+8TxopI2?_ z=JuCIcUtoMEFKE_MmADmGnEoz^@nA|b-E(~-wo^!;!#W<amG`H<?5p;(%)Z&0eEj` zCYfx7Ho>H8MY^e{9!g5c<XK$yqDLo%N%OM}5p}ir_-gd<bfdu^Q}vpIxnd%a*alNI zNyG3ssn;b^?&gm6*2xih$B2;}>if|1O-f3#KO)pNkggpbZkd>)5J(byfGfnxk?FBD zCvneyEln2Is1%mtHb&f)#LP_L9bV`kb6?!s6#eIH_PUU`t>51>S={YCQ<@x_HI1jA zc$bCUslELrC%TSXFC*qrZ0>dckZ%FwLg(QW-o<v`XS-EG93efvIu+=rSEO_?kh<+` zeB(Mke*TQSs6ki4rp0|}C4}aoe(&Dm*qNI1{YMLmc`}TjIEmZ5q#{+3wGfFvC1w0b z&ZJK}sKrJMGmGx=KX**GB;Yifs#z*PM_iyRxio>;-ZARx(kJl|iaL%)6K$Of+Sa(v zn<KK9+8j-vP(c(M#p3irr3r@ZkUm5O0=nL%aiQYR+M=-AJqfwiHUUrc>28gg#ZJIe z`p8rj!+m6dJEvNdGA(*z{#6fl8U8yE`~X!V`TWsNUpR2={b3&RrwS&ZgaibMdFeyt z0@9$BU4*eEXcfWCAymV~iPv|^e@_o4ZSG&04M$d1PW-q@d_$5iK)j^HVDRU~v$MpP zMA^A%#aG?=TT{+&-U{5$O=_VO$YU~|+yUIfO;Kf;aMh3Pi++L^CO;(_D?ju+N3=3g zC^3u9j%F8-Pt7Gut*|mts=4aki7wePSJ7dCiO*!&S?$1Di4$yO<4%_`dgx85wG<0u zlc~Q|!S%voGT0B+o`@I*y?z&<#s$IHrU&=k3Ue4!F8)x_@6OJ}c)^6KPP{2*{c#!Z z`%)Jxyy4gaRVxpqzXZ1a=^WGstq^k9kNGC1lyxG38FKV$$iq=n<Gza!d~M8mlR5e% zDRpOy!0+mNPL;{}=t4SEjj1yQ173Djnb_HC$6e-?)-A1;^u)Akr<QXVki^@WlQ7UZ zX2>$i7Cpa%#FQgp{c(-}+d4?-8AUU32$R?_<J8^}-d9B&#alR*xPw22CXNE=jKxRl zRFdU#xhgIuO2p4kP1*W&6EkyJw_371Blame+J-gEJ!S^H<urFcX@C5caTJQJ^41pd zRO(?K99%F|SBL#-_%8p*>KW^{y$}q~Py4o5sIa%vc0Rk>*<0PlAG!Nn0EymKxBus) zH_4t{-qiYB2%8MeMQ>!()2pGMlj91~#arXeM0s;&YLEY>BO#PM_ReWB5PV`luM$$t zNwYR_C+uF1=!wC1p2(ec4&$=!u*w>%8G$z`cXjdb@gpmD*i<nTgU$KcY>jV2{I(HD zGchq2t@GmNo||3ur#8DR(WnJHWzrpARu|n_9tVu*Vd86&fTj75CPqf&i!oM6oHA)Z zzp1u!I@`Q((-?esXa&+z(O2HtWCE7l&St5@*~!UO$BvF~lBX4~o)Po&HGF%tIaOlK zoLB^kc04Y902nt_U>!B$8H7s6j6y`LmzUYhm-pr6yV#G!0*@X64#0VNWi=EONn$8d z#E1)jQ%hPfMuRv8{gp4jv$d;WhiLFAF+~k52u|k>+*-Q#5apHPN1JUy6XxqvZqG<s z!e`enkq;NiUvSaRD7loFn7X+7tJ03uE3Rs&9L}CSSzg;&i_VWz=cPbYxO+!T^xgUD z(S^=--c3?De@v^;X-#wU*%|lbqb~R6H(vz={%mk13cK5#%g)dS8DZ|9Va$qa;YzRJ z?giZ2IHNwMzZm<I)yeIQq*cmUZFh3Mf1T))k&rw-W^igb=fCyQL<wTh7ViI#do0DW zZR@57MfydwlQi*g5B>kyJ@)3`%tD?x&_h+-=R0JVV0UaQ1<m#4=Q+ej@%sd?$J=^m z7r)bwGYBB?Uovk(1OpJf*h_NrWRqW&1Uiu$PgFCTjm7{I4zSqkQ&b)|mJxQ{l*5TM zfi<a(T0|U4dT+}4s#mY|Be6<Dg^zd}E!y44U1StPwsb`1x7pRj#^Iwz?O2q;kr8Kv z@smzRp6w5Vh4H@~8NB2mOgz5N7YM;1v+JID-?ZZUC3A1_hparo3_`_<2g5^fU<=5C zj;1rScNqF@qi|lmz56QdoBkrHs6ZMoy=Hi5FkbLe%+SXKkx#M1g98I&A|k#t-9gwT zXN-#~_l_bJS5Xt|`Y=%|(-DX}jL7r6AWhtGBC$ElsG`DhGa-2|fTj~#lU}JE7#<na z+fW1VLVW{9&dCdpk&#h|Z*Bhl+ur`_-UFnxB9H>?Es5$N1X=^^5nH(5KVz?7n*R^E zuzn@?=i91|mf@F1vJ2drhy|{xK_jJ1ZsBp`5uq{YPtc0yM(cdX9_Wo0z-GjUyrS|+ zZ;R+w3+pm(1iqA%6zW6`S*d;cdE7n7ui8b3i;A*SXD{NjqVvz8iS1XH(r|Y2IS}J} z`xt?UK8r(EFz4n&#XG;Q@)+zMFRl`NeL+ddLC!h?2#Eb{v3)vzK54at>-4k7k8yCA zK6TcM$Q$3I%2UZcE&uKVLf@wdo@C62e_y@X5@PW$Q|^r(m~^JyvS%TF#&i{DM+ous zebyL7<c&m1r4DBtj#H@2YT}6tO?GcTmj@Uq=NdPuB%yxdsIS2`cq&Uz-oSIC+f5<{ zKZr=C^hHfVX#fGaBrPO#?LLpoE!Otp%L?oL!$?)+a{RGmd5g9+AO7i0uUwD$U_SHE zYxR+P_v^>wh;9cWJ72j#m^rKfQ23Ec{?LU+qjv=FV<MCGR1hnbJx<5p@k6meI~7*r z?-HhQL~V>X9;Oe-)7954&YSe*WlDNf%f(w$ed>6%dPGG_o+;$|W&bA~Q<wf(UJ&>5 zIpTI~jFLe*odg7-$KD0Rs9(LmFJDkh{$?amXhQ%)#yk=SM%>#n4gEWmABwlV_O9?2 zTA$*;D?+>TZUv*bzopv5oQT)+x-w|F1Czk3M$6~@(nAIPOc?8e_u9yxvC?v}*3po@ zq<hvY+L!XnjQp;*>+M7qc8!O8cf7Cm8S5I9Oz(@!%1%hAiOCC!3HqexrX~45`*s7t zJY@cBfBpqp@+Y+9B((Z^>EPh91@cyMvpnw9H@`F3*<auJ>~nd^d6+(piV^4S`mH)Q ztGGBStlT@R90@M5B^`CS%fehrRKw6hO7w$+ra6+c%@umMP|3@Uh%ckX|HP#cJtEhW zIOd%eX=Cbf<K0ZGml45cqj$k`znz%$;&LBg-1-Vp1`1J9{(-<6-V8nc{m{}<7T-vW zes2CvJ4;Q%hpXCsOLEFfA1rY}k&dQd@;`Z{Jc;WGkztwcVO~+!7lM%X-Z@RS-?G0@ zG%~2@eXz5I#7E`VCEm>uI)5JF%TiIG(Ernz36x*XUSTN6+Q6S%!@@=1KI@}-No5&V z9`vm`H7ql>nDJJNp3vi0Z_Gbvjz@Q$r-!2VQ|P9rrMJUkkS8H2-B+A1!`$t&zyDtN z-Bt?f(V>rboWFM>m$Zv#N=87B+Leq;`fP?ycDjG0Ap!zjVv{sgf<a<l;u%#h87oOu z!%=fa9@{I$yZUzj-kL;1G}QM9MC2HEkscqNqMdPW5sAwR)OZsAa)YS0;Hc`{>H^}6 zOmXM97(Q0MGz8H25GHX*IW?Esa(w4IJ%nsr1kbd*T&0%UxJzwl3gj(&WaLSSKmNDk z57Z&zed&CE$}xmE`9$0je?z9I5X46Fl3AmQ`{{9446Gd9I5$a6xaV#qp<Xdi``a;% z>gy^aKo+l(Y&&lW!j+zd6vKsp*1xsFb+qkn_>0F_gADX?%(ai-!d2p3WDYSf&T@-M z@qFnf+r+9dOwvmMMdJzr!Yo~PH~k>PJU7O<57OU<2;_do`%*_Zs7F{GRA7p7*BO<& zH|n^L`yZ#=vmgmq(bTXg<pJ!Iku<zy!9V+%=E7HK^fiMyuHOB7beLxodfcY)%LL(! zGu`W3kgIn&+bska2Oa@_{)rZ%3t=RY{qIZ1mY4VIDyOvg#T+d$7^vZ)dL$%=<i!bx z-7b?(n-S^%UXF_cIC@z{kWTs>x5ZQ7*6iM}yyfVm@RK!A<%1M@jbXyKpzIq6De4)Q zOL>LUQ?md0Z$f^q%BhV_yX{$Qiq}s8g>i!0`S4Ekt&!iPzjxaI-o=!}oU~RN<V%&m zai9n-9)U!m1)<B_`FAlGV^rayzmgs6aC5n~iYxENH{F@@xrrbosB+LX)%8`=_VW9G zx`~#7b-~&5kl69&l0Gi$)%COG-?o3&x-0TH?Pq98=!;8fS%PnfhzNn-aJITU_P&O` z`S-sD2Egr>e|4RhS}RpUS3m!?xw{lrlGyRf|K85G%kKZay#KyL0sqyo{2#ty{um~; zPq0Dm_K$Rkh+X}^m82D<M-8koAydy}ZX<nAz<4z;1H<5;diQH1ZPIfO5I;E_SnVHY z%CK0k243$K0^XjUhQoza7-{bb#&Ru@@6JZjJFkGm51EaXfc2+a+(R6$!wscyAP(jz zRulDY0FA?Laa^Fh_*zYpuAN3&WFQyM;)wlY_&>b>r<CuhcW$*Xcl*x^>k6j0S=}a* zhv2Ng&%^}+pTTTNQrO+xd;}sM<ubk#IuXo2X+$(3V#*G9M{dC(!5=OU*H5y4Zkw`? z-Tdv1sZIwH@M_yL0t}dM>FKFcm%akY-L(qSEZ^)w<J%i%Y$i=LXphtr)%O`Vo<HyN zqfx73)gKRi;kp*d#O1g-`+bes+GI=u`j&SCxfAePouFw2@q!Sl{Xc40aO!|A5?C|t zHRtC*y9T2@jQgtWE^@WTazDLA!Dq`Lyk+~L+<XEi+;&IHbUKTgq;8EVDbKEO1>OA& z!U1q0VTvK{-u!zO<-tC-XGd@Em(J*_D*U7V!89J-4-rL0T20VVbF3Axgs8@}DSx2T zB!AL~<Fqf+ZWx4f)=r3yDw{R9x&v;^<LV0jLK}UO>i++_eMGU|-fchY>dnSrtP36j z8r5Rb=XB;HZ3iSiSlKGsY;NN&eBMLUahgPlfCT7uyJE<GGSdPTI(e3e<TO3mBi)Sb z&&cF0N`;=EA?M4%>2%V08+e*;9}rFPum?9M;0HatzA?NH8&v=EX;<eU$TL_v9HNe$ zC#{bxFjW8mv>Yx#;2n-G>re#KUI0u1GF3Dcm!RuQn~j5owRF(I&cNX7MMX+F2;!$! zN(jfCb%Xv0gnYGt8@su=*{4QCNLTmGn-?LNRm9v5PQBz9&RFD~+_4OH&h!^6*n+%& zLRoY!0cf?qm2ri#C}_zF=J)w;D<B+2zSVNn?GJUnGxU8u;07W7Hzv8ZMlw`?w)6?O zMtAqmi*>GM!0~k7$aH772)sBT9_1n-agSSFT`klbaA>LJvMOfMxV$%|<^(9?6wgFJ zQlwe7=j2EU&O&ghR(<G*42zRZcz#e&H#JE7;C&d$W@Z6X?=li}UxV=^Vhk%2wY;1h zPRqq}@c2u*z&2k5&;&4oeYOz7-&z}tJ)@8_v9SD{z7dPJku96UVcGi>2yebcY>tOF ztEio9I{);ih@@MAX^D=3;qka3<R*Ys%RnM;u&{N`cnU&0ek)o(>gso6XYJ3GGy+eB z@`sqdUn(WT!z@TRQYU{-M6P>tVb)uti7>x7?|@w5V(klUtndJI>h$#eU2<iXPpiie z#xZ_3US;B~Z(K~hRB1W@a+S)oiRD$xO|5<-X`Se}9YQcg+DCWilM|DP{3TGD0AoY? zIpiDt0NDzJGNQBHnj`JBIl7#K+!I9xgG%s!xOoIff0Tj5R?(GUi$62`r`efaxGIT# zrGN#7BL7+$`=Zd{gbtiu;@lRH00q%2&{pm2_xcnevlOq^n&yWK<mkoo)NIHJEv$q| z_P+nMJ+loRCyvXYZmonGx|<d;uf9|Go=yb<Vu5aOFJ32ZZf77wV_c@i;*h3%{)1vO z`CSCPZhuqp9uN%7045@^032I?SDeQpV}n#s{fgH$0&xD`9V_b%&eD%N@9IcEXzbx1 zQ)+oOnfdAL_NOR?`^d;!?Ay+ugJWc5JlY&?5wH}t5d9-BPV?#o38~h2`&>5Goz8mV zt5x?}BXP3<*1d2$NC&&M3yOsolc3a_?Zgr%blN^%X(TToU(U?Q!9YV>TRDg&K-Zoq z)1t!iof|9FBIA~6yAO4Rdw8z$RFP3t!&aHQkOWA&mAz4or;40+ehn195fqHR*@ljo zj(7(x0DoMV@kFJ;1YK#q4PAc0L(c7Xd1CiTO2Mn+Wb$t|3!@!i9WfdC>Fpx}5iFl+ z!sfz9dtOxK2?NArdc^bm3|-Qw;s6I)YbDe5(83pwpj!h<FOYXBOJh18;J^4QHSA&4 z)RVNgb0%MW|0rt@S_TnM0f>=Gh_h2cicWtW62-Z^aE;avc)6jbtc$hN#Vs$))(Lq; zpt%*=BEI9lA_!)uQJvcDDt6|`D4e5Z&aa(`5IU5TI;UK2J_oTK>HeEVLTgENWSx;q z#}}I;pZ2Xop^fFFe1(b>PLFVmvT^TUV2Vp`?c?OXuONa(;<heOdNQU@HY%pgy?;?D z|MErx|J-Du@yP`4k~rZMw^qHb_ovI<y)ABC%{TMh-<~ADT&h)1hE?xL39QX#+yZZ- zOE!}pPu5i_O;wj3ZT@!5dPD^hEyZH}3vXFm*dWap8(oj`2&$dz(&djj3s)yE1R)#? zjiVk0pk)~v6QhhrTa&xnoeKqI4<8Wrs;Q{>-K>LULsS%<z}P=2W{t^sW4QX@A{uLD zT6|L_mO~w#%G&nI4Dxi&J07l2ny+_L=XUV|^)&MjXSwxCixCg48FjIcI&aoV>SsX{ zWv(KN8AF&bcxSwiFLJ?c%`xRA8(r(3G#Xb0?H`QVK$fl$i|wri>6cMS<)E$ux*fZj z&7%RUwI*3eY)UIK7&HM!m~vAUSa*)6XV9|#WRsPssB)EB?Px;Qjot~!f0p0mJ14%> zsVStW1CQ3ud1QDOeuc$h3oJKCSmufq>T47BkLWj_|30ZPKUf58?$D19Z@xQRoz6fO z6<Aqbe&IG+JkNokT)cSmyC(5dP<Pb<b^7J5NKq7vk^l6QMvlEC05(7bpBGZ9$ah`P z*xquPx)$?XV`^{n*d`$UJ7#eyHSBA$P2Sdp^bO{~s0xqk@jX<=FqO4#7}Xkozy=F6 zK=xCn_0l&lxGT!V;+Vp3Rx9AsL%!gAY34W{M|=1mBMHD%c+ePc>WJgb-~E!Th(a*D z)KPH+T_X<1!z4F1eD?tIdBJS(@Gf>n?VjeeL*7<gjSVA&T^U>3si39*N#ZM^#>ec8 z?W8I!{*@wu&-u+SW_zVzZRS&YX~OHNz3@EptO~;(yv<B^_me<ZN0o_cAbQR~)8u^a zT3(!b7%#->in*u_hDkJzd$E5y#;m1XHGm*w#6(9oABJUNPN|Y*({42ZoSFpro>Xae zNSYoE$F24SK-UY43{l9&T?V!QI)8eGHQ4gX+`%yb*pw(1%R>mQOYcyWsQmCGks28q z_saR21kTeeNG;R~uiF<I$i%x$_Im*V@%+@oKlb%R7kBM&%kue3!?`gh9G~>Y%5Bd& zVS_$LA5|^iyP6${{(D*pw11bU3&gz7n3Q{$Gic~|4(Hv*b}Hjpxv^u;2m7P>XSLVS zreCFd`I6}4R}7SE^v)`d2pyfyEi8``bj`1mwckBn6}gRYt;f4wd^I5yoGALgo3Tsj z`bIC=m)+fWTjyqQXhfov+ShOD-+@MP9*AMVB%WShgj?dq&sV^<xUYa*cB2_g^5ey_ zpGnEUhCQED?$8l^+1yJSo)lj%V0og*DDEdB^&_z6tGx>PXf&5?Om|Q;WKk8p6L_WE z@}s%ouTG0QJZa{}4Oh_z;BPrt?N6zKsFcnCD)X19ZSKb8%AF~EPfmQorLre-#gLt3 z!jsd|m@H?X0v!h2_aQo+$Pj*HLdK928WtwkQ26p3bZi1w65bwCEzwB)hzARB5`kl{ zfgEL9sgK3d6yO#K2NoDiMm;G)Q@aiGYqV|jN1higy@Qm;k}d9161q5BJ3kAOzPlEF z7-rP{NqWQ(F@6`}`s~u}e-2RqFc)(%1hBxrC*;z8XAk4KxjuW`abev4Yycv|PzbwZ ztC#kGeHVSnZhKoe4G{>}bNL}U9~3zX!H6U31m4Y8g()sYjPfsctX*g<Wp7Y~F=0r^ z$ef0XjIU*>6hwjIxyemFGnCC{!bjfZSenNST#{dJhEr0#Xu}xisHUTpurR+|*8}(j znz!VyLhQ1Al>N+U*u8`ofV7}29t3W39c2S`_0EIJRu(y2=D^s;XNBQ!B`<xG3-8-O z{HXkKo_dw9L3=3mvryEJy>VB;zun37lR{eYE8pz+4!L2-Zy$q2??V{<RFcBnrK25# zp+xwk8Q2R!nX=XU`C~$@!$*YLf9}dxH>)>~|G6>G-a?b+`m1qaBlZ&CR#4DBcY7^d zZB^R7LbSyCX9>o*XbYHun2bkSdly%*SsfmSPyi#9Pvk-G&CiXm_}9PVruwD&NjGDZ zBGtfo{`1i#_9F=0YV3WBn*1|1N9@L>`Dgk9U)<;@oX_r!w<UYJL?HqS26Cr!=`?^- z?yZ@szDgi$qtcPuxwv@C!ZNH=?&>(I1Xdn3-Lf)UZJLh8uc@(!-V+5sBpYK=J2<tk zv!QdMq7)&yab@5>b?D}~j-7*dF|dk0C@9>c8tN0<3afMOyCZD2SYct<PE!NGQ0HW_ zo@y1leQrQ8LHhMA7Y1EHmVf>Lnf6ADw$S6hq6`GjwThBQB0izl&N>l3zJ?Eq0j{DY zAjwSfgPuIzD-MQnAPz54y^EJvZD{TS@cG5kIsb0G82XEw?%Sn93wwRx1ka1%y!-JZ z?H*zC<<1=4!SqZBijoz?L&&{e7owFA6GL%2LMQ*4;@2bCJX7PwN7*;oHq5Yp=*5L2 zUN0XukSTFhvE<><<$M}|S&?hbx(AsptWLVt8{eons;U7;`BN-g`vF2PC^%uz0w_bs zvHG7w*^pBB(SBYCPx=k-v2PxNw-G%w%N-r~_%t=qF&^w6xXVe(gwI-YR#@)tJ%W&+ zPTvt^icpG>73QM?!aFz0h6XD2l8bW$#B{#PhGStH4Oe~w@R5v!tZWX@V1Y{JjYS~^ zdi8pDWNPI~b8wo7Dvsj@0l>P)%FYj)d3y34isgaxTg%_gcYIbhE@$@oT4_TF$RMHQ zcKqV>N%&l3x=$HMssVQkCnkZ9ST2t?JRgHchv%Oi?3#q|_f7e@J%{}WWSAoES+W#6 zSW<udZ<<bWJJ3x4mPBpbMKKJ!{9E_#b>>VgBgqSf^@C_@SKd0v7-lIn!M)Ren|aPz zo%<ErsBa`vZc_IPYf}NxS0@hvL;X6RjM5(TFG>~a6c{*685Isac*MjFHG`M<x4xs- z1U#(L!cLcdj&7go+(Gpx;vDv&FpBX?M-z~G@fpCR|9!fmuDXAWb6LDCJ3B7YdU=`c zYXl)Ts~7eO*Q8^x%e@jM0JGYcP`zIgTG@}lUCq+%bOYff+4z<xCLU^(Y`O;rDI1&i z&M!tv%W|T*C;W)J;X}Y`ymUN1)|1d)nyF8vP)>~Ep^WHDk#y7Y(Uu+`%uPas-rHYY z030wN6QFP&Dt(9+LLL3nM&}quW_<aK7ci|6_5B%Pr{#c8!NS4{H`@T$JD`{kW(RQ7 z5W3W=7VnZovsitVFr<C<Y)3%RP(>dKKp9D4ly5N=HY9VSo-HllvHv+mqo#_tz5y~C zarX`->-$v!aIQxV|It<|0#E%U&bEyWPNnbMuP0;(JnXy7g~X^JOG7Y!Pf-0Yz&*lA z0Xrc5#gfp-D%8A04-3_#JjFai_UjNp?|O#c1KF^pr}HOxGhpe7E?ixP;-d|%$qyY* z>W5f+KW!dZuZMD{o)?A#_8+9{84{^dccO3Bf2!_?WsRI_P3El{ov5%%sUJld1Hdy` zX(TK;)Q@3PzLiM4K56YqE}D%grZ6fpT>dGqI}4&r_pw<VhFk6fbq8`j2YR&i`iSpS zEu~pMU)8UlBgj##AZKEd(|u-?7Q}QEysQ_-f*zhHoy~@ENXQYDU(*Rwj<WYplMppS z>a!M*DXISO^YJScZ`hr#yMxdhkTH^`#gOu0!39(z_u{T^d+|XjI;w@1xFu#2y01bh z8W46l3yHsg%<;y?Js$s-u_L!#aJ7>ZrL!&U*#>uJW)Zc?5lYb27*8B=S<A*yiBW`8 z3@3k*Gno6rH`$@q+9>Tb!@#HlyByKYQJVV#%>wdx6eBNg>u2dxubI#xAb3qX2^Mk; zIRR!Wp3^y!BK;@2npzDoqd<BL4!mj1Vxxgd>9fHv6`>SLc3@BeY80pGv5n1}Mo)D& z@YB2z5ahPM)Q4vT7E$z0r78{erug6P1}AA^IA;(cl4mmciBz=4=I|bOZ+dR-V1_!U zHv$2R!w<+lD$<wH(vv2X>|X~V3qU-2dT2#&fD3^g*nE&TU8;S7iNx~&r#o7s4_ZN6 zllG-h>0Xnvhe5UTk<Qfgr~UTw3gj{aQdzQ0gY}?)C5oY_u+STes@~`)u-#ed$)Y2p zBu>Vxx8Nwf!EV#vQ|I4_`dgD+_e1Td_j_U$Co8LBbSrMa`L?18K)&H3Eri8U54`S+ zheKw}p~`9ZCTJX#U+b{NN_qF&+d59=FV#X9N6!shH?nz(k*yf9RS+a+wb{e{l11}; zUg1mjax=J3Y?dbZ>)c07FX@B#{~&K%uK%VuElQkb6c}DP@>E3^S<~;^*;2!Hsf0=k ze7mIbund^LjjO&2=KlhO!>_?%GT72+pVDrJ=5Qq#KCgB{qvvgrmPZRB67}`R++#^u zU-uFXZ=D^<(BsXU^eWI=$xJp<V$eVc980*knfg62bbF^_Ejw?k>X!32L4mLT%s}6~ z5o{uD@+mm$_b0~rp54H+Qnh!=pxtcfWi`UAos$#E*uG|3LmUO;TvMTY1I>-YLS`XP zwaDx+AP1_;;yWC<zp(bv#kS~d*K&abKyrQ!7{B{)z4MQjQnRxQ494sXC`1lv(34b( z40)kaAU9>QpX~iEva};F7Wew}Z~_q)g{reh1u$MUG@Reufk1dG2(wM^RF;tV7%nls z-TWv%nXGf2+rpOs-F(6MDE^BbAd0}U^fZJwAQwLXj~$<okXz%=3*%NWx{~_iDpV<c z2bQr!=yvb-wf&cJjjTkk195Gy54PYZCFIh7PL<L3bD@JmCkAgr&lb>WIvpzOtBco! z^i7FtIZo_g12Hi@y|m(3qLLa?#b<8C?bITZG4u5db<rE%nB)#NQ-=_!K3QrRe&(2n zHVk|s$ZtL%<e-~7^ya$4hO@)TGKS>_tHiO3EJdD5nUF3U!}TkB4Xxe1ZXBLnRA0?5 zw4U+W?h}b_d@!mH_4+k{$YYi7T1U%$(KtdUsUE+Iz|+(1<SKRF{~qh<^m&7L*Oc=a zDp|ww4_dQe6yjT~B+qE;m_Ph@gzMnd>P6{Xd*QE3+GKl@O@)4gQn{tIOrj2U*<!ts zKai-FO{F6iFSIiVEM!S^U&4VLsj~XUd}1FgiszH!A{%e`@+)DL0Ut^tC>(PX8D_#j zxgN_}ZPH(w396UtJ|I7|KW`?W-%YKhmQFeOoF@5nw!0?;{nmmY1_V;ksgJh+YMyQc zokDTGc9Uw~PGw^Jj?N@_K*tK5e(%bz0j3~6BI0;tzz<X3zyM`+%Ko_f2H;=Z?(TCr zF7hSR*1kh0mXnuGUS2xd;(nf-ba|2-8-sVaF<xjma0;XGZt2ZbY#bbmwQ*ivNtO42 z@GUV`7LdPJ<rS*N%tSXE_L*j?b5Ks#-aYQhH-%*n8zN$chtW-cmZXL#Kq+!Ju;!nr z5H<K{{UV%jCLb^*H?Jg|*J2YU7ou9NS8*CCtvtVK`LaH4g=eZzC>KMu!CshA=<r_7 zAi2^pchIQ4v2S+)1?3Z%?d>N#?sD0ZcZOkvby}={bvi;|C7wS(bW$kMQXwT{c8lL` z*AksSzo;HZ=J$Q&AAS|U$s7=8YtHzdpn!>bgTBggpy@&Aq{xvqr@UXNZg~6Whb)T2 z`Qvjc+d58ViNcI&ucfS0(5jL>iz0J{r{cm7HgAf2l}kG>dYAC$Sc{-USyyCItz!H6 z^ZI3He}8|`NgI53#62O_p0DJt$6vp~lFjXW**nmaUs8gR-r(`(CC)OW&ffguj?A{A zJx6&L&}V8@)jexT-Nhlv{Kby0;8m;N8#_u!_=sc#FFvxL04BtI(F&5{LhgIs)+DHW zfYky^yso}J-5uz-ZbC~AAcuf~E&y0mViBmiEpdxee3n`+@k1Z9l-eK0Um3FOA<S<7 z!w{KA+VGrKEF|`Z!Gk&8(3j;k+%%N7*3t)R|D&5|_*8E|AJ!MAeJ~HXRdgfFKCyIT zD!WC&n=j)D{vk#LBECp}kyrE6VD0-Y+fOk(2rldC5Ki{Plb$m|V|Wxj0kPc*6mdw7 zDhi1#X`YuT=3Z2aA0qnP$e-SMyEc@4G2J6QMKQ!|M8#&qW5QUp@A9WvTrI6LMqE<m znzpj=PN)1o7amCd&&L%ip4$j??tkmR6eJ)2h(h~1a3sP^4538{)}U)?_3A+dMmF>M zq<wc!Pn<>t-22_jnTFoQr%EOI_et);&+=#kt=eV$U(GS)YmU;TwxFq-POsr%BoLs= zO-8gb9xXSRXfgu2<d@G{tgNFZ$`wC8NSZA@y&i1cgFvPha3EZtZ%<UfcvGsf7l;qX zU5S?fzJ>h<l8HC=uu8<^RUlvX9efZgZ6xWX(O|;0eI1X(Q~mdF+_EJXKe01@z<51J z_}w?um#v)7!3kIBGJk!Am49bkfq9(P_62*V&;Fg4!SB5L@9!QBqd3F9zKZLwd9uId z&%7E~Hf{G;?)*EQKyWz+78?A3%eleQ0r5X$-Rqy<#r`XW+s$lDX{^{Hq#t>@x{SMq z?KR9Jt`z=nMTy`-2lTdGe2+saDg#*z9T7`@$0r6wR2^3p7M@;$6FdPx{#DM*%sR@Q zl1x&Ok(I%|cRam;gOAnlB0VRO@rOd5w|hIQ!l-vA%z^)YxuEi0KO_novEA#)OkLfl z=%2MA+m@f9zdzjyr<Lb!*Tf`U>%dD@J@A<oYY+bSip|OXbHziOTM=IkMRUOD{3A0B zPN9Flh=$;i;jcvTyU55Is5oQVMAuVl1oJ0X9b}Wu+~f=#tW0q*;ZI6U)YpW*Y~swv z2KZ<Hzf>+=K21Kl(I91U6@dmJl`g6F{`a`a2Rw&x2mX0bBtN8ZU3>ezn;jHPn%Ccn zPRWRfkS9dD`2~BPFSJ|i5+h=p;`QYj%?1*QjAaov0?*+!KMQLS2bHjmC@+E11Rz?R z4jMPxo?`Y$4rm~F1GWtwh=&UUhkWEhQ=LMPAmAEJ!^70mrHsm7&*1xjp+iijsK_QO z3jmv;fW(U!{%}R~ZYPbyIZrK*?iNCe>i>sn1@pTD)Q}L3klFK3Zsc1cTP7%dyAODF z{z5$Fx$g_#mo%eA-2fT63%t%QhO->b5>^tRz8GqKFD8yPQm5=ONoO~=k2KmB9q|<J zoykl1J#QyztCg*~g}da$RS-w&DqSZ9?U<2Q`|Ps>w`i)`;qm`{R|ja!k;J7z=mk8H z5t8%mWalEvj;HhH<IycuiSVr^GE$ezqHa2^Kr99Q^y-4~iU$e0aC)v0@(*}qeSx#* ze7Jd&!%qttVVmcknYFc^wDtAZQFZx5dByct%4C|}_{6>Y&z{vy28xlBeEs?L_+-ne zs(q7^67?Iajt(jHGkWT06xN9unLQ{d%Wv;m@H=wKlZA{9WZ+~Gj<OI_KBs4L4GE0+ z9@r=>)Ty1K{}fkGL1CVHar9UXnI5L~H&dT^v}&H-)h0{VOn=SNnmN+?Kvg@fJoh08 zR8+*phk81HW>w@C@JE&>FhbBm2hB^e@2y(-Wj`M5@Fhz07Z&P{MjfkJa;m5x;^HIP zs~{?!D@%-oU_{sMBe$qe>(sRgcTJ}il<HABy?>~pCO*MKcqQD6Vva?8%h6i?oaU9u zG;(^<>~7gJvnQ85b*{9DUV5$A3XzoW?@~|@(?|2CXRhh3EbFbT>aPI)rc{a5ezdG? zjAc!?)|avuHKKLvoVz)llr%N{MJjD@pVU+AOnsTC+~qs{w1bTMKP`6(&9XJtG?Gkw z+n(Z!8Ohk$IH(Fa%;(*^`uVkG|A((HB@>0u?>3Ee9c|MSRy##IFpr)po}RLmf3r~$ z>}qQK<^S1|;uEsWx1BrZ+l?>Jbub>IVa7)Vy2fLXAzvxvvl^mUib>xhmgcMkGt$%O z72IfVOf-9X11dY#X#bns&5thC<|4gXf5^OLBaZy7sr`CD&*D6CXrRBY3)y)+d$`nY zxD00{v_=uC?v~jCy6qZ$#n&YgW$9^|u9ubYMv~B=D>XdNOT)o;^%f#NiY1xULh#0Y zaj*R)mxmkwsyk+b0v<{qUy_IK7FW>Froe=4qZWixzfH`>9m>!jERFkgMKD?{utDh3 zurFCcC@^6c@dQUwNb=S11n-KzTGc~N_MUx<pjFf0U<}Gkbxonf%wv-qWMg0XT%VJe zz4y#YbbaS5(Q>{(c(to??o;ARSk3a9yoQB~xzCQ#sKWZ^%J9311au9n$_G}#N8vJr z+-U)7t29^ZDd<uj28vP9j6Xh2HnRxE{HGU?Qf=G!O>r<4lep=A!HccDOm2rAgSgW@ zW-lFHUY1zx(S%~Xs?jtQeR!`XX&|Vv@NmVH+iV}4w5t(*nX5PZ_N_nvp>}ac6^_-9 ziC_K(maha3<}fP{FIxVH%2!spMT(&`ze2*S-dpjK$Pczt9L>pM3{oR~!F9e8z%1@m zxpV)B-<^{>U#h(|TcnB!f31*-S>m#-o4JOYc0`ZPTI+Mc6JhRpM>D#J{$~St9QYkZ zLBD?4veGzJpFQ25V5Y0(W_z>A+T1>_ucztX_q9kRYrrgXQEyEVFP@*|cC$O@>EY_{ zyd&3R;T`jN^!6Ibklc|U?=Gy0qDp=Y4oe6UewS6|I{Mt*6<#wrXYwe9h%%+HWSJ1j zy|=bXE}YG1Y{=L+#lRB*A>j+E>6@u@^j8m7WHz73_o14+M1Y|B+(4fz+2q=mBn&jF z|GXba*rP2B@3qub?@3h}%ZwqDQ;eLoXV--wQ7y9k)QLS1(b_^o;_p(u&t;as?OBG- zm}N9%wK*sF)XtV@*VLEmc$hWjChv<(J%drpt!0MN07<{BjF#IYBg|P0(mzed>~&B$ zCW78gWKMCBxn~Nsk_wh66;q$fsG&rLp3fjl@x=PIoA#1iSv`v<bUF#U+9Xym^YY~I zX6wimY|bhm)gSwih#IuJAb9*cy61>skDgTs<3YB4`Gd89kXZdF66+jlikA%QvwkhO zN9IrUGFmL~Hk1WX%<;PUi^OkKo65XAh|aT7Nmmj{c`lAk*to{%%PHyQDdtskyg1m9 zM?)Me^E%r*(pA`Fl**%UdBJeSMMkH#$&2gB<%>4vt!n*kjyuTqVn$RF>r#*G>DN56 zJFyCn3_QD{MA$Eqz6473XXradTSfNThPo%x-3me(XIRluCvVkoS2I2TMZD|u^{RSj zrtYGvtCvneNMKzw=WQW&ce)vwkzel$5_Wu)%}U3H$CT=~rjYaE&^yjds})0r^2xSi zQ5~iP=olm6)A0?(Vq}&r7vFX8IyQDqYR*nti=#buhVDsu-}U1vl-)AJ_sFW`pAm1G zGVv{L@{`Daf`n07>oV?Ye%Ll1A|EHUJ%g&0Vuf@yLXz*_xQ4D#AtT(z?IH1jvPYaq zP*5;MKh)__YVo~1i#G_Nh?zqK$w>kae&XE?!N7brZSGge@x6MVij0wpnBz-yQ*VCB zKygu0FY=b}m$B~(J6`J<Ph+MTwk@QGhWOt-F)v%s_~5|JX2n$g{?L<8a{8&doCDum z8+6qkv!6r7bb{U_3MY{YKYq5XqknTv&rU0g{Nkbc=8g7mvL2LuOT2XkQD3B2!snOF zt9=Bnvrh;J{1XUnOsgHusXddujY!85=}P<TrfcoQpn#glNp?noE$eZ(vy6F+|F^K5 z%%U>a`vO5GmIHNEN5i4F@hZB920xdWHRasD6X31$;%$24&as2T=wQ<#1ET<Y;EQzn z=cvgiH>=ZQqi1PUEX<Xa_4%}!5KBajM04h2$a)M{3`cIdJ}1(D%*lBxbnNRhuCRJ; zirX5TM^lw=QSJzDb=1V!7bM_bVPdwi6uY=-;=gyI8M&2+sD47)668pJ<1*+%>oRLT zU@8#x_{*|V!1io+o_)^uy@5gue0=|q&~u}e)6(X=Kq*tydpd608Xv0OT^L=hl(9Td zVB6_ZJu@6_Kzbn1hH7pbB)|1`!fBrFhg#8zv`^kpG7%Zs{-5tZk%tuOW`t5BxGvQ& ze_WP1rLVQP5`+kn_nykeNj$Y&<84`K_s!!HvK*d~<d!o&9CLh{eqZI=k^B%%k3aFY zyR>a1E$Txqj?Wttj?`*eSU*ToQ)3*>Hpbi6RMv_j$8A&e`@W|7hY+8cXZJr?3|m9Y zt*Qy|Mqp;8uBvw2Ye;U5^$=fYz>~FL$uzxaaQhTM^R>}~ShhiIuqfPWv&`N>Vvm4d z>5!KGWtlMhcKkr1piW*@MR<esNIb@+p~Lo-H&%?R@w|eLWX;OvU}r|5<D<O^Q?0Im z*S+D!LiNwSeG;cub+XrS+G@RsCJ*^|mxuM*MqF)B6BRYuPF5nRWjTKwiI(2UIy@H3 zY5N%C(YdVi$|^`2;@`Y|yD)FMVsW7J$mBWE%tYyk-X(8`_||}B@MY`QJ^i|L>N|KW zJ4at+ka{hxUK_}iG$ko`U&XvX-5xPnn$g_Ko2AlcQ!MqG;WB2K_+Uk7Y;0%O-SfGw zxoeM(?l*4H#*Yr%q3nD^YB9kcACul&Uz~F%;`V2J0-MQ-r*EfA9=tOCbXTcZk9zO% zvj8mHi@2-mxpmJPtXw?>rD^S0*kH{St<1#LF6vQc5^6Yi8L2w_4CHbSYxGXk#<;~p z7AkB_8vX1Ytio)P&0<#>F}vt;rElFJ!s;i!w;J?oW`8fcIbOAqVs7*iLGQ1U{>hB_ z;T-0Nm;MiGH;8xM;-Y20D$f0ECvFjJd7;K@s=9sLCn7&Nu`qvLRXSDo$I9@GmlM}g z%JeuAjx@CFORwp6SBq3p*gKcGFv&?dX!ZAsE=-)9(Mt+UgS$FLGvf^WMmU=ddbH$y z*4Kad<e9`e*wNB%Y&}*3LYSM<Ax=+ud`!M5taON*vE{p)4?A<bnMb2XWD1UA20q8c z>bdf3PMqw|ZzmVH(mLNN(3dIV5-S(oNSaTrMaV#cvk9}4zppDLUzh66$WM{ok{{;J zbI0GGoEFS%7TuLa`d>VKWmJ@HxUPx_illU>lz{Zm-Q6W1T@ph#(hbtx-O?S>-QC?V zG(*mLzrEK!fB7-97Hginu7WImaXQ(GR!ehGR-2RvJKDK#n>Y+=o!74W<tG@k#ksc= z(HCkfK(2<iZ|5JKq44t1dYQxEC^8rQ(g!`iHrYzerDQ?sGb!9jv>Ww5xNWRtD=w9- zsu!;I6YgZxO1gSLpd$uhUwEAOcKH{r_M_aUb2RjR4GmyQAASQ{TyuLGOyG1;OU926 zAh37g2b^3Uv>G4Ju<tS~%gqAl0)A=HW|cwCZ92S3BjpU=tGc278(RmTNSX`p9_PR) zcm~b5u6XF|ZUc!xJpo}~yj4*6K@QJDePE&>*)#6aCIlimlcKXWC((Mm`)9k<zY{Is z9-Z5aW$QW{S~)CQv`^~#tKhAK;at}8Z+BM?I^?m2`**3D-3z4t(&1yKK(tU<f-hbZ z{JVcM2hAC9r5;)|^IKAC(=%F7vB_`aWSoG4&i#3o>r$>o)R~$q@bc_Qp>4WGOvRll zlbict#)X)k0(R@B1-`73kR3sMXe4Ms+hTAvc>QGV{;P;wB^iMj6gp$7OmM02*acUV zYr}62cJ7SIYoFDVSH8Ml&#N&6421?G!jPj|`k<GsLt7PLqeN(bVZD$ugx(UNciuHp z5Pm8*pORMZ5)px;6XEw<T<bH~eS9$;Y-m}d_a+2J=K|LDt{$%+iNNxgJ+tr+Of<W_ z)cyU`+x^-zJFTC~q+B|-%)oZe96l;hmvaYwzrk`S)(kX(AK$z^Mt^@RxpYB4Ef7Wa z*l+5Pe^BjlaPM|r4ZE5UL65@-#({KIrHL~!IDSCxF3N_e+%d(<CZLnY=3Y)fb+U*d zX?1!EGDVY5T23};w#L7qh1(*7gl>+`2WLjgtT~%$-bzBQ55#vKuzaVlkJAo&l;7h9 z&QsH1eyU1Wkk=zC$T?9)_1xSrEv%>g;l<)LbZ+$XQ4%8y?FS~3cb%tcZ5@Sq5#UmJ z-qyOyVZD+_&$qCvw3X<N4iK#KB|o<2O)>UoH~o%}SA8d)jC$cd<T!kq3WJD|uInDM z&$SCz;SV<JPZsma3GYunHo09mubyrinW59*%NtIQ{QIJsK!n+IR)F);U!7<8=lFt) zFw2QY?}kL9d`YPK=J%#qyTk*8D{LiF(&?i1Vyy-u)tJ+lM1;9xV!SPTu%g7O3N4~0 z@!V2%C3)_=(dOBI9wF#U?H6pe=w2Zqx!2@*?5lDq79QO2N8@~xn7Nc+dYZk+0Fl_a z8`aqQlV*Ytm+`vMclN>|OLKmjt%(xd3Rxclw;nKSmJ~0xUEQ8Ho8I&-G=@D*eA;XH zeu+?ZQflBLARt7A(%1uY@r?Xb>u)GQk~Ki~nTwVEog&#K^f^@JU~})JF{{{6${;_J z*Wqo|Y?aQ_MaNlVRYt4#QM_wamj0W|Uhp3xHR&d|E2|xwXE?R}%4pUkj3uGkueYh0 zi*rY}XN)B0>|8ZtmBHpedS^*Gs)8{2!GeP&GNR6kE8{Kag?mI<`X{evQYQq|=|ML+ zle0D382Tug@fpvM{3GG5r;pbmr`bEdi7P6JP984}8krQ9SNV6iO}~p}1f^-%iem%) zwL84AL+5V$lvGZkaT!*))pIG**zD9Ye+=*VMdU}E*TaSnGis(Z(JgqMg`CG+xl?_{ zi04A(eA}yY>8O2w41Y5ccpIGr0@N_jNXN?Emn9)0iB|U&bthN*f|Z2<hH;XMbY_$i zrCJqbV0cc(`*J@~yK4`Yk1-!!a<<wqhkbn(%-C2hX>=+GO8JO^C@`*_Dj@bra0z%6 z1r-v1Lwb`rJ540sft~H1Gaq7?gshPnh$1`JPBpbohn}$c?rGafUKwUxo-<)mrU+xm zvXqcxhskJW9y6R}l$N{K*LEfabT?4u-`jq&q0{V=j%w@|ThnFgRoltLA?2|HRp;fu z)+$uB{vWs>zdrg@>B`H>;B{D=y5`=<(u20RAy6OSOVgj&W?wv%Q2hG{>y4ZNp7vI- z8D*`1s-qmREnmucy2sr!j*ceE*Su3S%>JJ_>XlmEkM+wIjtyx-H?1$~3^uz!GXe}d zNsIJmbno{I^`GHOc!7meNhHLIc6Xsm6nHJLiTFSVF~6GqXKbwQ=5!n{aZaw5wPNuY z({a*G(ftzx6;=MiVoza4$bAD`Q;C-Ch%|8iP&Eb_Jv!gWPRCtfA&<ZEpK!HJy^al! zZAp9r-o#JPRmV=hLAtge6%7?17ANlq4oG!2B;K$8g@&o78Agd%)zO*;yAo7;z=T>4 zCYB%+{i<VU$iXv^5p*@24dA<`8fc_thP-s%=n2?7Evh;FC?!kiwr-PKxZ9Z}rPFE> z;(;t4%h;Zm<Fd5^vV^{+`DO_XzK2VEtmr5GOsYaENM@7xo(kZUEv={c$GnoFt;TgL zJ#|iPGQJphJG0|z#VI+fZzv=J9sB!VpNmi=(eqCSyO!TFDAsM3`bTTz9FV{4Z0;O@ zb5R;495axfUk6eI(sO(0A2V$jm<TZ^NX=Dy-ZY-t4Uc&&lgkUoLgrs$Yol2^9yU*n z&W+g1Y7J6cdDaHsaEjEGfAgF_A4Ci{mJmGxVJ;#F{~3E=vxUbXcY=FqXjBMq1)Ozo zan-NcY?Wa^h329iO@5mA#a)j@f(3h)JM}kn?dz~za8FYYDLR>AV+B0vHwS!lgynz8 zy5G|t&%?E5X7ouEyxt)5(n#atE>zBMufDzP)BUdXf46}5c!kI(+kJma2ZE)p-SARA zGHq}nAJOyEU0fUm;N&JZ4eToET^EHluH2u8=@;Mc9BhjSkN@Z|k$eA!hEFki5EB#U zk*}ANHTVk#$z}Hek-YlQH)rUjman2<d1Kj<r{u`GldjdK?Yu2nCu2tkgZ%7Py86lS z6*u}7{By!VV+cVvAHH+)hDVKsjefg=&_+_m5@8HwnD}ehXVAmxRnwiwrxub`j2|8r z)a0lKbJ!WHq#aAGN(Wr+UpK#WQQy&b`;1q^LY5};;&y<a4rk$-Ab4oaC2A|O*WC$W z0v0rWU*{y2tM|Lwit*g_WrZNLQV$TlTP);Qq*0Q9r;cv7>3>^stLbvNGJ<~sD$*;5 zH1IxFC?nB6VVjRBEdF*o&pYVJy45XNbHHMdAun;xsVt|mFe<JIfh4`-Rfvt~qj$x* zxA$@<t!()lX@ncnZyQhy282~y#6=fEEV#GSPiMfy?EUt^rH|kJ(reFD^%ptg#$!Dg z_1*5)>1O!bop4$nNi<zYE?2{=fvRG2JA&J}$swwAB21Z=hbOHnbc;?n#i`9g=*a7i zG>AuXFe1uh%IDW;`#^E>KOA|nKp)NMb>^}FpzedbSZwawZpuHaj)%5#@;yHqJ}fa5 zg97^{J}<Ly`KCnBy<auPuQAasF-G_pI=YL#VzvsscvB*;tUbKRpd!Q1LvzP`vC<_M zcVQJCmZeCO?&PX<X@c-k-_Iv%kt42WO#Dr}8b}lG3&DV-37sa0gOQ(47oM-Xwzjs1 zA~#tU!=K*R1dQ<|PBI}{K~nXvoxQ!Zs^jM*olP2|ZAPNXak?haDw>NlEV9(LFi`}P zXKXXmVO(DSft@W*Oe`T3|Dl`90qa~KUMg2&Vl3_mw5+C2npc&%vY68=z1^x%{PWc# zD%2EBHIHMtRS)<V^`vkmZM|GdL-%xI<<drzU1vVjgXOFHW3?V2GdT*JhE!Yijp@Pi zk5Il~vd8RsO>Q38&-@m76m@Iukg#^xx8@gHvjHa=#g45)E5@|&32D_|*Lsv_A&mq4 zp1!OxA<`wCMv)*M8q>9$gs668J*nsWYI55!@6VcbmgFf!l$!O{zSn+grcs>b+dw=i zv0^k@HnCEaOV|D0LBp@6ngd`ok+PtL$GVOjL~2OJOa4XFnp<tA%PmKAP=?>Munw}U zj+9y#EAFK54|s4ll>vH0rYkoeDnU|x4|eh^-cW6aPDNy1QV2ETq7OusPUo(O{+_M} z#!@TBgt+t(z74J;>`AEM#<I<(S9tq9a7ba#XlsbprPWeyi%Ofu(ci0|VmnG*8K@wS z^^|0b&Sv)(8ikE2N3#anzP!#CmEg%je%to81ja1=D@p4`SWebF&uS9_tpA!G$S$(J zAMG`|gkS+)a5E0hoLA-H`qrK^|5i<xvb7i!qoC+(*6AWU<mhh--n*kE+HRx642gMP znoSAlIC#~A?r*5h&NCC9tur2H?sv)yBuPd4Xra6CE9YmCR%#NzBWy=F?YFUB9tzmJ z)$fwv%T@$H3Ui9~c5bT}-h7^=H{bB7!n20lI1Ox0PN><&;?uD~dn3^<JNtGss=SHW z+jh!lJLy;zzse&lfw_NFAo`s?2usPH8}8uXouRPe(F6XK)#x~vM4@#eVMgBS)~>PD z<e|QZ=RS!(MF(XqG(W$nvboOTK47jm-DB^B@8sg@Tj<9#8F>A!0SjFZR-J?!iU`>- zqDBvS+Ctusc<G}bJ@!emn%l!N2<YS&1bAJ~uZgibH=F+YqsmX5@}s;}>~Hgefd|fC z`1v~>nsR5OVsZ=sp-K{Cs+F}#O6LU-G3#>54_%qaLiFP1;+id0^4h%+VlUkr)7&A! zWwYLYM>hO4cD=C-RH@xt>5V35u{Cb?J{PB#{S1H^@%rkZl~59T+4b5!5J_zFGn?rl zgjzu#<aMqLB&%XGC0{@9r2&R^AA$q623foh_vP^AQok<)xyIQ=&X9j`6+CyFUCdD! z%S+2_*3)+Tb)hT=HDOVqYd(iiKo}6xM2&LIZlUVay%;l=#*Urjc0KN~cO03L;^uFD zd&m<I%Y#&|p%$H?v!LJNzB3u4qNU|#Fayv&l}p^>T-Q3Cq;z$~PrL6MVWZ9Am%}xE z4mupRshwSA3y@bG>K040r+xN0SX(zp((7U{6p(O*!JX)-@kvDEP8Vr#mh>Eq>OWpD zK(uD4osTD-UkZsDA$+pqM6R`AMLgcjX&l&*wxRmzR3i(XPg^}(b{9I6+1?p=D%35l z&7`s4wAn13=^)beH(i@qR?d=Gn}r3;_D>f}j+P=Z>}83G^?@xp{7EU9`y`YHzJ|p7 zIBQY^^B^+n+TTwBTVzE{JNj!)`9RO>6<;|gx=^0<Dz&iKR3+r6l(6w5+e#>|$)23M z%p3XkQ*(|_*ztwNKQ3ODZH%Rxd>T$vKxJ(JHSVGOQew<#dQhR6!iUBCnWa*f0#dCP zPCU|7m=u)}IXb{nygeQjA$9%qq+RfUP~+Eq5jOJIn*|k|#fI@#kvE%INHH3-nONz) zH%`-Y8|_b`v9tXBhN6-wfSzEeELwrvq4+yZ(p5&t#R)RPY6#z{QWi7{gul#GA8%r} zkGHo)iNci`x4-VK<>f?38xM^2bmqMay_L!cf^_<PqLpPq<*e-aS<((%*4bv+Lr|im zj(lbcP&?Z(8|RCh2qGOkVkM3&j=r4>7|q9E^^O5U6K92TmgYUm^H)ZWYzvq4vp8O~ z&e%DkGPI9k@+iRxeP2!WjLpo}VCf6AwF*0o%3qKzr`RFi1VZ1?SpNaqVTdbVbjE|x z9=2+mfy30F*tZDs>M2}8ZF>Wy3?K&Iurxua)6{Z9qr3{;<!ZO_)-y6QoAk$@5~5FM zT>I=UpU4#k_d4*{Bh9Z87*{hr1;E}T*G~z9j@zf3Y3M58O3Va01C;xo*+6TX%=z!k z!hLWZc66D^@zCnleGCzwc*c#v-&-qY#97T_Y#Yy8dtxXWHwZPC$Lko$mQfeGPh~{{ z>va`NpA&RQ;5y}&IuRRrmGFLVG^GS5>1w$yb}J5riy^*c&e?IE=qqti{g7``(|?-j zVR?tbNpGggYj@(ZGUi{LPw3^Cqx0enR7J$!EJkCG6$A3GtZ`tvxQETDnFZSolEvD{ zke5*Fm1dub*Pd9N?r!pntBcE-o+lSJ8=6nTCT0f#L4n~&lp!tVySLM5!J^ge2vK2h z9Ra(TAJ$zV|8|Umop}~vk%9%^l`o056?Xtt#DeW|RHM0-)z$_5<s^vQ?dVh~(o?tm zyJsmhAoPk*-dWXgG*D*2`{7ZS*Fjb0Bx_?7$jtB$ii|sb{4Meav>urRytT39)cf$L zF;f}-`o9-#;Q;AHEXLf_GIdvv@cWC0E&TIM?_2ff)J?&&1gl1q56)HVO_7i<61m_* z^=He^#Qgl^EYdZ&C}==vDd9k2Uy*c3Xk<??^;fFsEM5YM-MQJ>!{cL+C**(xWPchT zCvgv$N+J_6qj&B&auY%NY~P{;`oJ!MQ0}<>n(hsIbM0iS*U-OZL+(80EiJn1tK(8e zSdK~*)XX2v5MqkyGx_KQQ}y3a3*CTON_1+oS+vy?m**2xrog}e3q*@vQTaT||LCXo znfEVc?cZ5VBMp|BnTydP<x`yfo_};?p1SX}83LOrWiQdm%WlPjg!w$^rIY@0_vGYc z$S76XTz%VXB-Np=)JUAO%3EeaKV|l@(aTPRoq|`or&n>Krvi$v^+u4-59st_eAB(P z=a1;&A-BDCyJwuJ2TcBPZZ`As{LOh002*bsXGdvvI<mj_{`m;=@RtP>HBa)tp=ZK) z&PJ+n_<6@z=E;-4>Ry1a0frnll;6kiq8>7^qril50^nwNOU`df-WxonGVoUD&Ty4S zd~=pNC{_0Oq8!)TleL`kdRF^-wXku5AKY-70kh$mw=gmNDeU;KH}LY{&*AdnucN>2 zho0EMktCH4?HmuN5zk*Vn5Wq(Yy21enI@K&-0)7`j$MnR^;J38<M)VeNUG@e>m$FR zLd6K!BVgXv-~1Ps-W!W+_U$K3s`Z>G^x-qGAsKo;1xmkv)s0et&z#xv0|#C#rFip5 zGpYuQs<5Y5Lzc8cEuP;+r<=Ue9WQ2<#y-9*B*9x9Lo`K>iwVD8?~GCvWD-$svK<Vh zgr{Y!iYTdw^t}OIEUpqHw;e{0v?L^K_hWIiXGCFqnXHINIT75n1k%-Dq2LaCaRGb4 z-7jzNOFVS{EEpH)Xo&y@Sx_10&g8U;gR{kCe0n$=KYPh3@Ym6Zx+$K6^vqhFV|O*R zC5Ho7X?Hq0T2OTB)pLVNt#d4qKjLpg`}1xr^3w2~Ai${h*HrFDlxMGpN28IbcF=q? z;MpzVQZ)&awSB%_Q6MkXDKow0Vl8R{@c<cT56@Q=pMcz|mm~iZj(PRUarvZiq8+fC zh<KP^M3Zq|&~1o^oy*vXg5A@(2=EPgDLeh2U7YO!CY2i$x&%C3yE@0=hzHK9^qi^J z5(O1y+}1nd(}kje(ULFLzsi9bx^knX6+FV2rQZqDX*4-2rBYU4$mrv?gNkmfubIiG znOhl+ZP_vEx7NF_VG}Ou)|<`*)sOU1)z*M^zD{&2>GJWdEzMAKTB<52NGvds+6|n; zb-uj2=&WQM*X6G7p(2>A^3Pg6VA|lYUW>HN<ZjScQNhHY8I!}gJzQ^=&qx*Ue${Rj zVpHy$@^8H$!a&WDk9%49EnRSTy1oZw&M9PdcIQ|U{!UyCS2!K2P3q;_iFGUDw)h%# zyp3b_7=H;E-S;wYY`ne&Z1sE~FCVi?>l3KFL-UFE{`C}fdOtxHYbu>aOhLIXk7vPJ z4mh<eEI@v|Zjm!`o5?_8JG6vMNk6@nUc<JRsqeXuUV&KY@>eeur^6V7SzwihLj7|Y zHt2(CX|zCf?g>qma+e3#@B6LBR;MNCW9Se`Ck(1E+umQNq)T3}j+UCqcsAjYO2Wg! zy&qHTl4t&TLO}njgx~ET`$X~QyvoY3pLEfVC-KYy<l~NKW_r9HfcoJX<hJ=4i?iMq z75f(oVY%pG9~>N4pmUyw2YVDu&XzCNm)F{$uT7%8%~n>7CM}jwRgK>Koap-QD!WNB z<)iQ~%Y~S@J4VrFBU5?4zfC?fHj%u?o3?AwZ#ODCT9cq=_~9kG5<_m^I*SE~1#CZS z>Zs7CnEaA0zhH7UOjphd*--WXhg(b?IrX*_#5}abAPv2?*`8|QFtNC7aqRD(AoOyU zEgh(ZLybMVuaAWsL}vW19GnZ)0pp=8V^7Q6glc#_mqzD)B)YC8oQ2+<0oNrMQ3n<2 zR}f_Dv+Nt97Ki`41^kjLM_Co{f?Ur`21w>&om%eAHd-X1S3D`ven%jrk^8Tczvudq zj?txstxA4jd%nSg!m(J7;#2f!!}nYI4{UvhLwET<&`mM9tEZ@TJIu>YNvdh<#%ZV} z5eJ2gWzNl1HXW8pQ9M|TkI!Z;$4D<SNN*X>bv!Qur@*N!GT^E87axY4%R+IqcCfL6 z>OQ7YC}NfaFjUC@bw=Q%YktAkPtAMUzi00?0}z$)M+J#JwBV5?HyQX1i~P;Il_;Iy zB;@qKVS?w6KU^(!4gWb9#bc*$uQ@tp*)!3~V<-qT<;w!gEXbGBa-e*s)@3D4i$cv~ z@9Awq`Gk-FfXHn$O5wa0wCK?{c|r{@H0I!7;r05}nPadnxHK*wHCLu~H18p4tjZR3 zgM6Ch;`Im&^GfG^PdXgs-6j_;2?c>g!5+Y{zv6NP1Z_FoujhT-5kEdOUno-v$2CE5 z06TYcQju_iD1W^QEB$b~=<3-1{jH<yc&>EY<m$%F`_=b=NtXcddEZsa>hSC#8<9Iv z$KV_r8v}UGSh$$(zzP7c7k5!lw<W8M-GIDK&*0a$LV&KwE9ObGH?i_Za9$6n!)@mZ zk9wf(8%h*WqvcfHL|06%;Ki~W5O50Qtg*7N^-fToP0+*xh7kh_>Yf6L*!!+Sj{yG} z&=E#pO7`Cz%^@Q=gIDne>^vM#D4S1?u9HBq^mH?|X;4-0CT`ZyQXIm`LInfA8ew%t zr+FW+HsCPntMtw2uF3^mJe=GEvSXL?#l)siq=^i6lf6_qr733G&;5H21D9mIl|pcj zz?ehA<-I?$0NLh8pd!6DyUy9nJGf|(deJVtwZu|o;h}=WMs;HZ+=bfmU$Js|qDaW8 z^dr&>Nlbiga~+6^!kTci-6)b7GjaG+qrf%BwE2<`+sprsp0Let(B$fYBI4Mcifw8M z6F-9q6&!;W|N3>;;C&if#rC?tJa8*hw85CF_EETWmai%PP^3t!(28mld~l0Qt{mM| zfcLbiW$Gw<&H6NZdyD>t?%gfo+vAwnatUpB_H|A-J{z$Q{Q({KFh895ryPt4(4pxb zTi(E;Gke-dbKGo1C!Dm*-9(&dQOOSF58=|{dpiHyi8r&*YV0gMg&!ux;%Y10rhze0 zLhkAxlmiFz7uk~<I`3X2S7#Tdt@T^6sx$lLaiW>DCoS?;XZIKWw9(J1uq2E6{UrsK z&vuunELUf#wgUaQPKvRw&r(gt=Et9xSmvm^^{*CzEi_W&?ok|Si`y(3sr?P-5iT21 z64=W9PEYmI?g#OlCz_nuXM&s@Pk%X{T05PVgFUn2;zy-qrCy&I?*2J|uLZ%(s99#z ztQZ?!(oC*~aOr=m0e;cMnAE~L3QT$7JM)l~$$xA$QPBZDw}jmnu~1QzS0&=V5ZCsK zGBg@lvL#@Zl{!1d9wRtv=C(}6wZbKss;jTXD}f?+Beyk~*<Pg4cPJ}^X|p;cezcxU zHl}R{d+Il9r9`<{s$PG+y?h{01uwX`%ztOeN5k>^7|3N|u>=s~Xg}{mx(+=QaP@uY zm_HY8tmn!5dz28+u%T-Y4uylG^~nkjJ(@O)vW=_?B4NDN-|DR^E**xXCI$@(w;CyK zpQ`dv^_4pwH#@<i%9Am*j1-Snv4j!A=m2&fbK35)y)@BSe9CqEEX`n6HSV;MeYL;5 z@+1T{DDKVhamv$=tL)<&N*^Zjve#QRrRO%{6QLmLx%r08O3{8O(x&I`;33;8q&%ZU zW4Hvk_L7fCH@eb-l6X%BuVi36it-+Z(o6O)f<-MAPHc5(ZwlzB0)35=N=im6GkC)C zTHX^@_MwkPXLUXzyuKiR!C`7C9qnHZ3poy3T3JFNVfoI%m|40=ipFWP)@Pvq90EAC z#4OKMdl3+Ry?cf3jjshO`|AF>ix^VY0n)O9;aWjKY4P#D5^Xn!pZ8i_jzZvCLqnyY zXfvxqq^yglt@p&+2}dgZ;lMZJM+QyUU4&dh$J+(GfS~QSbRTRg$3ZA3Pb)A$uc7R_ zrsG1Ky}Gr-yQ)j2Q13EPxm{cdRmB<0a)NEC5bAZh?=-0X#1T*dt0qkrsCW=A_R+J0 z5jU>0&fV8qoV$J3Mn}s-2F)c9#9D2FGuyAcminJpvK)ycB)iXQPKf0`G29hf3*`S! zQ%j@h6V+=C#!+>Ax77-sCix{VJk5Ua7)YG@*rO3+Xb3=4n-jln4VBM$F29}PUTbun zX}e_wsB1)r1+&5nTKr!F{-eB6p`O*Rd$-OvK5Y0!r}saQra~{0htsZ#0Y*$IfmY1` znhA=t6ZQMf$|GYBQc0Kp!ui4M7Pl<cVzatDy<7x!g4n~8EI4U_vRA9|Y)73db!9)p zS-f<&Imb^yr;X999P>GM?GcK|DN9*}ma%N2I>24g%NaL)g%M!z(XD6eztk_giwOBB z90}BOPxoOQM9xTUWoB*5Y+gSFy@$k%RBWfGoKal>v2vBgvz{-`oOL!NlmssJmKD$X z-6Jj=8o!1kLM1+Zv3J`_vhC+}{pwJa8kKlG>1|^aEIAgQZA}qYqeZ&QV*e8*4(~6_ z_~P=~IPVVRLbZEI!v>wClbY!sby&s)#`d|}+k9sWtpi<@9o}*QCVwKw(;r<OUt+Dv z!~*o&a$Nn;4m`HAI>e0?XDy(4d)$_PPG@lfg*n-JkzNDRILc4B-R;zWc+QRmdwWD( z0Ms!9PiOVP6#7h+0c>rIjn0Wj-4NcqR6VuA==xt2dDU_=Gh<Ii7VCo!kDzD0fb<qz z$D1GWmZ{tK(HkI7$y+hjm{Q<y9k@kw;RI>_QjGZH8&R5i$--n_RA5d?Xl9IW6hC!v z&*0C(d{!^=7XhfxE8(esBWc0rHyOT#RMQV%i+^xEnRy5LZDu{yXOu0aYT}*XZ3STa z_eDsBhRa7q%7)Pn_r*48*+1><TqTf3D99~4o#4{>6{;OKmag~C&ti0Dg5rwAU}-en zW3|yj8~pD*J#KErw7(+74D4J-@ihxJeAy~kXoPsW`-O>%==O}PudQ~?u6Ff~PKwf? zeP22%!8__C2mCX`Q@!uPKXuDpg3p4pF#<$BJL#6C5u~OZ;^QCV|E*<-)1(DQ1OW41 zt=q1*sia}ejNX&?p=uHPyKL1h*NtPWaFcVxTGm^8AN%kkiEc~P`xg5%bw}CLv__It zc56y4@1xviNdqRmP{vD(^}3jba(*=+m+hbL+Jt_m1Bg&Av_l_=XjD&}PU;FTO8)fe zW5TD?<D+33Ta$!Fs_&ox#8dB!S6N5pqec1tKE8S@H4Tj-aC2KDq%EBGZ@4{NJ?Jms zu-aNz=LqNDwyt}0^ewkc4kEC|-&+J|CbFJg3~g-Y3)QX>qBA>snIPK_v8`>TuF_cj z6B)^(rIuJnwD;u|SCvd3KO)l?b}_!m?*8rmUWiY5`xem#bCkbEnRgD+ra&7nMTuq> zBu<_*(U;OTwr~ejRqK=F1a`tQOh;<oP&ab6Blz+0Y%v&5P|>CW$}}g-&!@<?Erm1< zYmmCwSe(R$o=sB=4)CMY`4%~<fs!(lKfD3Lie^HqvMQ!`U4EBhaxv1hKaB#G5TSG@ zVk>ec;%ZnE(72;4d>JFMoIKPSs5IB9#RIbfgq+>Gl-^|S`%Ydfl{^c8dID7BxAqKs zX`_|ApqClwrfE7wjL$bQIpiXm<+-XC>%PKbg8P_mVR^l6%AsW6(KfdpfG>l+eEX@$ z&hEIoQi2+C6y6KxLgSZ~nE8BJrWLpSD5U7C#Liwip1R3m_<QuyAb--)sdN<AcA?$> zzD~@-TS(G?R^JC`rsm0Xm^0Cgq<bo8ax&MZ)Xqn(tu)>ti3tTy`7s<B+CHhRezP}D z|EL+8B8jvQt*{(-36}`z<dM}gxYmWwM+svuJhqrkB1Q%Q_{=t<O@7;N_3!lpZ&8Hu zUy}T7V17325_r_mUk!~9q_~1=RFx&%q~~cn%2DWw;K<B&wa+g)`?J)tPPDhUJrBXB ze-NRpuB~-m<!*C^3aeHQ9yQH(wL8NK*R)lw@~fzf)``-iS^zTUD?*Wxie&x-6@acD z`*<M{YP#Adp(|6ggqR!{!(6~T<axGnl>k5+$DQxofh4TJ-=6O%&?%njROmuPaX=`0 z8`(N*9iH^iPMziM{m>g1j+ZVgIz89uLhXcK>6)1OPkPN+<zdNZZf-WsgZ=PFqudF; z9MUmX5}kCY7w`3R*lZJ9{%NyAuI?E2wv2grG`?DeMxH!CxT`qP_Lo<g(0}721~4Yp zUGDRzUu?2oU6DTuD;ECM!~>@5r!$;Q60{IlWJttU#{PkoJ`*5Ds2a9e-2@GY*(q%J zwVn^o`vAPOO65MdU_^Ah%Vs{w4(}(fpM%NI9&sw7F<+k#hiE_Rq;)2B0W#Blre9ZP zu^hxn)b%5?vi&aEuUSaQeS4wj-xmF-YJ&B$NvAH%KZZ&bF9P1)7QkT}<QdUZv+WBd z=JgJ14EdV$I71}rS&9NbYHDU{o2Db{4gw-J@oMR}1l>MS%uOr1iwmv^_^(|)P*%!2 z5HF)LZKnZ4R3{;bxT>zzM{lD?ZJ+Gl!1$xhnnJ{&FegVbw^i)S=6c|`=y~VCA;da2 z=c(1lht8~6wlgF6**Pq?k<U|anlcCy7fOV8R_m>CDl&EBD;Eu^GuLv3iEYy;v7U`6 zY!{lW>;sIsStt8Hba(EH@%b)UpG%wS+dbsR+uQMZnU|i*44fu7I28^y(xClMBi(JG zWHiTY04N9c*ElX+BK&YI-+m|ROT3Xeggd25+N4&-&O|X&r?iF*cym0$DM|_Q0VB3h zv%9EJlN__n1aEFk)C%PKN%mZ?lV}QzY}O5+t3kE?0Ejj<bou3Ow6pa&KD48H^oe;2 z#^YR;j)xulnm=G?6Jfr;sovFQR2JHw-JEmOuM{56A7QDEV)n2!7K>x0Ogn2(@i=<O zEMIDEk}Gju$84mFCsg!hg3-F!`8QJxRbNH337pvhBq2F7g;7smz&-}V69P2;Gk|ck z5%jTlOlSQ+LqKUHN<@16RSt7+%PJu?RQQpZ8^;q{-98f&n)QtEI2sB~+qp`yp0yKT z%avpf(jy*IICGowA*A*dB_er(Qc)rfO@C*%v3D&~lCvke1Fw`X4e>F3h@gm3K}R&o zYO}|m)rqNLzRw~L+<I@e1D7Ucg3t%hv32ygubeJhLPi=fc`2y_@xXfx*MDEHhQB8p z;8c>aeAD5y_B5v#t40@~+~RNp#_^jUL|%=jDt42qt9Hm-UVRSQTQ8*Hh#hvrc`6fC zK>)q<iuczKjwo$Em|Fhd2G#cb|F01Ux@)@g2X2b>*Yi_x6O0tGz-}ziWCF3g3-hiU z{zh*U4)0Yc8O0n+ViSF9wOnDA7j>YwzUb;y<?4vjCq^~!Ac5eqJd8rxP^$hjJqmyb z(nxz#n)xGn^2oa)r)6wyDXxCWF)X0!|Cp#K^xM0wb1Zbmn`@Ro34MAEPHPH@_@#$3 zZa99zs`c+Gt%^jkvXNYUWXNjl0@kd_J<Md9Z#0=F<k9B&`MKk2HSw<~h6Zm4ARKVn z;BRm`wO37FR<&hmyr(piLEtjE(0DHo*}}fc2{yZ5=ga9Gc-^Z)1=aj^C`0@`eYbxW z%!d%=`S2*h@<$?XijD2?*PQ?kji#3Nk4{I+tB41{bHwxVm|@CSL^oqTTaSn^>U6#! zj~q1^rl;(1pce*Qy2I0BL8ml$iwU72Ep#39u>RTEHhN!vpO>gl{XhQ@Tk3%e3%`z~ zvbjGzo&m=CeZFfvE@C@+005`BnimLCd!EN77|M(tCU;54kY|*GXDk<Oj^oI|7#R8K zli3+2Ik-hiGycteEF*uj*A>6tZGw-UUuv98tGP2p%%L48k*F6~=LpWVpX?{!_c!VT zqvJ7jTRbPYSHR=NV*Ha$OY!k6xUQ_;zC$d$pGC%Ucb~Wh17mN44BU<1FFwr^APj3C z@P>dwR!X6XZUBO={-Us;C5|jMGlWD=uy7O0w?UR*soH~NM!$qUtorZG;M-fo>UX!2 z9~Xhr3dLAIGtywYDW+HtjI#u3nOhmM8;2h*tE{#xfu9bKbFNL+qpQa^G)QSHx*EmP z16b!Lp1k!uEHt25L8GJRJDOT4u4Fdbt2t0Xb#-xL<!=eX)$H}c_ROr);*eDTw4QAS z_KZ?S0?>$z`uBf|5(2R1A?~xzi9t<BRw{gv5>D2#-3)L`)W#M!MS7BFI2;!9vi340 z)L8vxp{Cnn5T!7!x{(Zu``e57UXa%Jy+L5Ef$8-2C_f*knX<&zF=Fs();)0oI(BHh z;Y@+GKatg7R9}&`)!J!qr5T?D-8wSTz=>65a`f+RyPcw?p|xcWb!ozI)^O+|weE-O zC9O}yejB7>7y;$kit1>g#BfdvOzfpfShPq0ai~hK>(fUg&s(L7KV3a$=^yT6;zp79 z-F#=?hXu{?5uEE)0ra_1qpQR8*}7~BGpujX6O%?)#kstO|6RU#rGI{fw0gXY3HE_h z5>yM?lS+tfULifnm2Ih-939DNQA!Z%`ncUMHG3$!sjn=Zbj`}Kcp&cw6MUvv38|D> zv=d7)dx1Wc`C$Z@j5Q}Mu-0N#sP|rsxY`YWec+-_xgf(iAi-_04sxAGfY0#pa&V8X z#%FWSp%OrNX}a8cOOD!kbp0qxIA6+S6G`u_3U{xqfkU$7XuT1r!HMpM+QFZ-=HQvb zU|leF#O3WdVDJgMzv_+r_O|Nz<4C^1T~k4%LxEh`pJb~~zqkLI!D6g=?zgbm+3Veb zj8z~<HLS>Ej*hspa@=acme1=vR@KeHp|%W1{`un4>+))>Xkw$o8y0F50$9ppGC<li zDl}Eina~KOW@l#P6wI8CW;-;Z8SSOHmy>#-iI47XUP5<g%d+&)gOutRbUJw;e51#A z?S4HgMCxyBoXWZvlyZ5!Hf^>9@CwAHhwBV_fCPl_?=%YjE4C@wbO70k%TX`0KN2(E za#XRE@0UQg9?#u6v01wFc7OP!#CXIMceH*{{w$`u)?nq4PHHUCkI7vu3ox-r3K=j> zPKz-oER6W5qhlSGvN~FeD|}akR_p5g`ccr09ct{KP7V*OlAnLn@<E|)ZMint(P;q< zYuuPOf>6R)$2z+aoX%4CgeeE-u8-a6b&l_UAOF`HC8Zt-pZztNIoT3MQNp%3%G*=q zjFms@!7!d{v!B5AuR20d354Nq{{E=6<!!QQtqF%uDI*7Z9xxZd5~?E3?02iLP+TT$ z$FV9N;#@zIYx_dtAK%7NEQ_ta9SOAS&)C2h=vr8^;mAmA`yEX}5m7jGRCLARcX1N# zBkU+<hYzzDGj%G7{*0n*7p|UW?$oh=YD@0dTp;}_79Zro)`+F>k7j6YIYttVg*Ds$ zZ2_Pg#*#jpLy|%`aVR-CQA-oJ?TLpE;gyqdSpBACQ^@Frs*w}}=ZBJ|^w(4U*Si_c zuF101ds<pNOKtqfds}5j9?8k-S}+Ocs_g+8{0MdXORtd`wtI%f@IscP0f@kOq4o<M zK3>IV6Z$H+c6uX6h&tD_!E{OOllC(u*n}n<6Wcya}0ZsJC=?3_e9t8oEg3q&n&` z+pl^f_UR!1`z48t5=L2|A5;3(A;6-S-ZlNucv|nd`76Ji(P<_15I=H_Pr)8BO4tke z(hUMD0Qfqp{OopB?LJrBTypR!c2Q`JB=Q14X?A};o4c_wQcMY62{6lyJMoURC$Q(~ zhZTuB|M^*NR_8Q&<(u|34u1g?Rsaonpq(}VKUMUE@TOy~vY2WCYAJNLChKOyNkVz~ z28>WCUq!p^rGf%DRRIMCo8T&v>S8mIKt|mpwp=IJBy=#m3hV5U>F(x$KoZSw8Veh{ z+9BH9b*sTz+eWW(dh#OcR7}&=SHo|i{5%k+Ew*Rx75Z>;F{PrA+1}>5CmwmM=Z|nF z7Rb!W+UKjAqc~X^$+AIKYGRYQP}RLOG_@v|@>W1K*J~vauw(h<yubDoEfI<93HfK_ zE0|qTF_)uj6{<3pHpolI{S}t3py??4?R8;v6*IvgYrh;2L1R~>ajZ5c7M6(|+wCmR zT_}KUxaqfttxr%Yj1vtc#Hl@e{?R9H{}YCPr!MI#k1sPa+?G9G&``gZ)nl|viKyc9 z`U>*ks*IeiV<$M(w3@4gj~%Honc2`mB_#`MavyLSRZKC-wGsGQDEtS1jcs?9ikzo- z$9&;t&^d(&f$E5RvET)zS4IeaaVl3KWcKFZ4JQ2mh&*D&j9<T}gfja<F@^wjhu?7W zF@c6l`SzFd;DwDxuP7r*O+1+iPPdmAugmXb6{VcweVdyvGuv8k00!@!!jj_Lxb7<% zR2G0~>BE6~dUF0Ce%tGdc=?k-u8f1UU!Mw);MhMOi5cofmNwWxyNQu`27N#-1ZIXo zAs4;o>Eok54;H_q*PH4KAH(Er-~JwsY5Iv54>pZF!MgdPk3LVNbJ9Zd#l4Kfwk9?4 zDyiR9o~Xj6c+!q0ARx&WT~T%{0j9#}LosB%s)(#&1doJdZ;$EbUo-gm+I(J;{phV6 zl0(uK941rNV^3qY?ogJG9ag7JytIYAYnq=5E4ICYqk9GL5pACTaSRu`aOB+reBN%j zDj2?#6po|2O}xqS4J*u%$mn}1qKIW|Q!n&a)%vX?;XxfUj)H-GlVNEj{Ma3p-SmBR zSI}gA;=90Cog5@~N(K_PvXGK(I%k`>)(AmLug{Nq<|+CyZ<~-q2cK*YdG~7k4Mz~h z)GJpG=Unb<>?QSS6pO3Rf@xxiC`V73<rTtzL=c1)l6m^Sp;61~@TLgzPZRJ+RaH$I z+4FjR6tS1_6y6SDj`O%9a6TE|nB~{iZTDVV4!*N?aYEM(g<aMP3#_NIVIcdy?yXFm z{=$RP_Plrnx(Dk6Tz!e6|D#jr$<4;WUELo)xJgc%4UgMLT|@9VQJ{sTrSmyW*yUQw zli;&$5sGy^r8g%BV1y@K5OyzZU}DVcL;I*srng>0yLB79xLUF*M=)<;Z%)5-N=m*D zZ_AL1#&`aZHj2BnV+))$rAMuP&Yj!x-R8oYlHmFu&bXB)`KUWap5B-bM@GOj+tq#x zG^$GHy`&+Hq2#WnysIl06FT_A3N1H|mLRg%c04O=@$Im9(cX^a`dkQ6SE~Ak{3S2( z02MQps2AWhb;AlDKU~xrM|k`*GAn$17H@t*{9kaw&pqEb<rVMvi`gfClQH-xf`orQ zrj*R{tnm&SXE52K;M(5^B+~l98L{I{(65k3fpnu0ffm!Lf|?ommz1&h)a!Thdiv(h zXjU3!&8{!IGcw9!<Q>0#4*zZVwl2$H_B*d}(dp^W+G^)436;Ce1@(SPn(#V1VW_{C zfZBqG=ZA6^4?+>LN&k?R(-g<!kHkaP$%J#7B7qApOSxWOhl_^l`{Tz)6fenD5z`;< z-hKLRyFOX%gQ{xGMr0k_v4+Vs0X@<%$CFoPQBGzaTKckQhd&*hTWLPQ+CTB`OF)xJ z6sGA^TTDmraQ_QyrAp7=mRx^CDxc?|u#cWw@d^t9t449B{N~n%&DN*V?4_UjONpjy zT%NRdr^!H%S@DT}!#Q&z2Pc+vaYUlcN#rP&Iirm(l0QIn*Xs{H;*`zWT(`E%L|97z ze~N7uE2Am?g0|`6?;!1!$}htm9+Z=ne8~+{nnseX%8zBpb+?1WgF{<w4=*1};*;73 zBF^(-Y9bszi#Je#(NW1_Qbvt?02&utXpx-q1ZTs)hKwgrx{v*50A@4TisA3{2F%|P zg1riczZk{rNq!E9g2dr|WrV#~T5AmxU+Bu2_Lq>CK6^aF`EI`&KQwbd#FKN_bR%YL zX}DS!N&~I8f{=YxdBpewI17%ZbUMyLEk1u$`NuOmKVBwiWVnrn*X|M4q0tGuxCDR! zK=aY8^J>wTj7v~&{`L5u-Q#Ir@gZ(W4`5xJnaM+y`TX`?T4OL239A1|xBcHZdzdU$ z*Tm>>#wr;b#i^}8J{@a+=(4EizX81PCW~oXt<#<ZGHNjqeC>MMOPB8$baRxP_t;NR zc%C2qf7Y73aGnm~^`;uCF<q!AiSe1X(O-d*Zt98N&d%8Lw4;up{60|GX<qc%$JuqZ zagX4SAZa~pp>R!>L<y;G_@-L*aU&BCUBmWTGuI*un4F6(3@Qgj0QO!u3~S#GP-2kp zO2J|tZI;sF$RBZ6?inw>#CA&}e?sY#@id70`cCkFFOM~r+-{)@)Mq+3R|^P3&0Ro& zPi?yQ0k#OD>reNZe5FG$cMO@Izi6t#=4JfY;%>ThOdTEd=U0s2I<jxfmc3D0mnCi+ z0X^Dx)uRk0m4&ZP13i9;3j~$n6UKtq=dL5IV{WwlSO9%pL6G-+F#5axCB?i$SxHVM zF(wY3LrhzILt>mpYpR=t06;yv^mt9`8bwmtj@U`hE7N=Ipte!3y+70}N`MMJYi<Z% zZwCZ%f4E(>#JaI_-MYMf6;4yPCLOP31XZhFO)Ec3GjdnUd)8{~j2FL|Vy+h56ZY(S zqsWD8Sm*Z_vb5Aydx1o?TWh(ny)uoQk8+vHgNNlNtotm&3te=BM>3<v*=g&=3I!O{ zl49jNb)R`%rT+oVK2YMCD>UpYVo56g2es8dVdkkR+VvJu1nps%@-Jsrwd4QC3%G2} z)(thr2#|;KAWN_(o`;?I&4tCwzTW6MrdTt}x*_X>_F@ESKu>-*lTo$q5gOz#ihqvQ zB=}xml`pRVZPsvWYaCD9IaIC1o$XYy*8mlKY(A0kW$6dTmkjde+VUhK$PhK62hOT8 zd7q+0r_M`*#>Se;^B+h~r-SPc?ustA9~d*r=RQis@-YF|=W#r!5~V-QEZf01u~Hs5 z<gs>l?Oqk#Pu4Ux04KTWUvyZuew>ZRIiUn)!CzcxhS;0pR6)`vx7IHHdq?he2MHze zoG^*?i5$Q%vf@X>n_$qTyQuN(W!!;$M*HF6PaI<OK)4W4xskPrRDtrPl0;P2KTcSq zYhU?M-09h`2T$*xii7?V6W$MDEQC&$FrxWn;he>#rJ#Ty-Dc;RveMw9U;=n0M@Prm zISZ$g*>oPO<9Q+vfb{z(wi{Q#IUuqgOI{K%_`K`d`U0|y7?I6j!%m22IMKMp1F>*0 zc1UdGlqE9#((J5kX?aYl+OXa50LXtvKe7RP`pomN*L)Yd!L+MmAR|<TI<mF~^OiX7 zSd&5}@58O#7I3_DLrTh9m2}?;y3HT{rQL{;Mdyv=en-$?x)*CIhktx@1o(UsbAk7t z#ipR^Ger@$tA9_Ubkp}q0z_v7HL2TS<VDF16<Ev~!o!?doIOS4Q$OiUb=ME(egmv| z0DF2*4C;g4o$O_Y>N$KRSSZOcF#dy$hIxN82FVD%VEWEZRB?<1!xQYb9^HiE*fx*e zXoyhr+?<&%|E-i-!&h~>9ZhcP<y`ONfKZ5QUZ(S->^WEc``9o*gn%*N?CK6LPz-%$ zPOX%mm2=B8)~UB<JSRDtEV5b*JOLEg24+=TBnJR`OR!KHMU(4jv=~UB#3|}i3hZp4 zBN{hU+0NAg<vjbP6nkPBIhCFkqjjh+h|CgL85jxgp>x3{Na+ao%q99da{l9=KEm2} z(5Axb%-3cMjZXZ|&w5K7JWxX(lWq>@Ed~;u5LFEoqyGRqSZK<k1+Gme+EH0@e3R4@ zHtsS0BEHVHg3M=%%zuw*fd$IN+Z;&a=>?{{XBb5tb?kLG_gVbcllI&DM+X`c9ZlyJ zC&Pn3!&Llf8qZh@PG~OWQm!x1o1Qx@Z1EGmYOzqTs(8NBT5aoflYHJlQn$0L9XNhh zrS8bm*xGnyOELiORpgG~ZDJD2Nd5pUeskL$ccvV`qW(uTNqY6e4-WH&UDeB+OCP3s zgPIv&(sKdtmfbFleinrbJ+ic%IN~xmN|B>+K?%>%DOyU?(x|P%n2^2sc#ostJ5?w? z!!ehJ?Pyzj!1NHilI6PQBZGi^=>JBMT@p<lZ5|#bsg_>Yj3?ip{{T;`nORt7z1~Dj z$Ff>C$;PSn-6B3i8RcDef&9eSP;TJx2WUU?_r48MdF3r&ja3yJNb0ec-!o04N3^-6 zO$JtG(Sz?Pjv`0sSau&&S8EvJgHl4tDGvS^E(uqMTVGa{)!nec1pVnsvxHIqyHx_r z9P&6rDI(>$@phf|21%#Y@^qd#i<eFM(177c)cX-#KReMA?_zVH33Ja|xQ#ram*m9` zd-|a@{sWXdaonPjrSrhCFrWO)s*yB-ba&UzTMW7YF40r;)mcY%^&}>@5Xz#p$L}|; zzp-5HYQGy0v<GOA&+gG*F6fR3Bh*|j%8xW>X>A!k%e9~Kc~W4dnrVEa;+yN6Mt_@a zDV&2gVEAb{+&@C}XXF1u1`p5&dKCR__yNW^;OKyxTNYmGrk2729*xJlz6`>)Zsqf` z>lvEzzKfupVg>`T5q(NVZJQVLfx=k#Kvh^a@P`fAMG*3vKa}2ru6P`GMGZ%WC_K^* z?sU7rD~E^4;TksS{4O7vfHe2*sIMTuHir}Us?xA1E+xnPebWJyvvUDgHk9P344Pp& z3v=_3;EJ9JtLsM?W+x{h31qs&>s;pXJyWl^4~cCqNdzINX{k&i=_NSoi<gPJBSiM| z`}>KEwA9UozmQEOS<~e@EdV^A(r@8!ZyC#E#!FCJbyQbRr`b(K$GEh(W8tC#d}wIQ zS)7FHA7<>6j{uQjK0-iS76^4uFG)&vCm1leNhMy9%D?Fy#b2o6a2c+W^SI!GLb!tN z2=gYzAR*tWnVL!p3zW>(Fj_OO7*GD8N|e7pW!Me-gQ8G*7={2ixuy}Xy_)WRPDk&R z<7!hhw}if6za9w{9GtH{-{=i@X8pP8S{>L%>KN6hI`FmgkgKs!aaj7HZVs9mAUQz1 zBzGsJQ+p<4SmCg(bAc0Um&ED)E&c8oT{)YWmKmCK4UBeXBziGpBTtLpS*I_^)glVT zS6JM&uv&#<YltlCS3&ke+cN}qBk%U~;-7hrvn+mqP0tS_Dx_tpvP1qt5%V#1RLWFp zT_RUlQ8}qX7`DOuAD8j9J*X=ywlu};jf!hf7mC11UCEQc@%`DYT(e|Q79yUZftprT zT8Q^X`Zt+4{k!Lx)wU8#@g@%2O7ru#d-B4CsU!oKVWGXh-d=%Y$%HgP18@0aK5cPI z+90VYH@ve&TPwbhX+-2z|DgBh7}ph(e~%pthRM!64gNcZ7(Lvn@u#P(!!GEcj+v1H zVe$URaIPcJqKEr~+8W@xAQrb$@^W2p43KavzogT+u!zaY1b!G2$_)bJDzihoX^Zq; z$fvFozSp17gq3<^qu2;lDp<ejPnZzeh;C6L(A6x<=SyhF8zkIDTd{;sRd}}oEGW*q z^6)gBCMUq1$0oaix`<(Rx-6%pBlmg}yR?Px=zH+9ua5p7SZ(QndTodb>i$B5sY*?7 ze)Ww1PIpY$XPYI05<d)wILd;g5v35JKwpa5Cudu{#ZFF!`}<6vpJ-9XmKGM{$=qAR zfnPGX>xcxL-%k+*{B}88Yql649bz1p2kj5;U4;}^W>%i(U*<&<F9!MqNUy^tg<j^X z^njCNaAj1);PP=oIQTUA5Q7Xwj>CF&^SCb#nxiyi@8ZA(Hde?J;9~$jp`&B{nQKOY zXst@j{@oF>RgwZB=kU;wul!YG)~=?Vm-}!g)!U7;lDwx>_OT}{={Cm?A0D9$nw{=k zbUo8>A~B_kG*0u3m9=0zn=3Ses~UgRFu4WiiYnryrALP>wwj0L7jgD$@$?=GR&s}+ zxbS`_tGX6@Rc~js&^YJa5&~Q{f!Ya&N6pmC%EKHtPvF{7n77Aa;5veYP+;nbbM;WZ zX(vj&w)nSi32waSam&+e9d3_b!gI#We53z~LpsXvli-vPANdEMg<0sf4`u8XJ#riw z+RzvcYqG+{0auDuJ!fHiM>#ILty%|{#?r4Zta|z~F2ErdK*H)-8U*_&DCLJDhyZ^j z_Xi&YgvR*HfOn0ut(@jQZvXxPSZ)CcBR>W$Jc1hbZB~a(FS(h_5iMZKg<R-F(C!R< zH;CdlEf&K?_WyW#%Ydr7wriVGx=XrKLb_8rHzm?ahjh1sbV*Bhmvonuv~+iOcYV|A zdGF7k{s8vcYpprYF~>LtGlcMAWTkT=+|sk3^%1-@?qIC|xs6_pzqP5z+KRbAbicm6 zT65n?O^a}qVZ)X*JFt>{#^L%S2P1ug#P3;A>6fcOD@kIGcOonq3&uWCC`$S3L8XL( zwxSm>1(`&@?6Z~OLX<3S%TGxdKh9cNT783j{qu3rxA%0~TP6Al;ew>b9jWNO-MaNn zH&-s&XOl{zAsU|dz4L3x4~6DK%CcH~sR~M_uj$@$2*eKe8}AsKI#iv?IrkNla*xP3 z&$E)fNh7XsyW<n;+ej!I(z8e^&3`$N)nzVeh{#DO{-sP!!N^zF<uG2|Wb>x6!K^D% zm8c!=g}Ba|pAxp-O~ksnA}1>#^e}03q38iWmfu+A#ez!v1|W(4A90AfT#Z8BK^z~K zl-{gjNXUJQ;T0K6rKDxSX@(xwflP}MMV)+n?xQ0@Ko6E)!tw5IuzJM!N!BFZT6|<7 zXKq3DZ%RsFB9BCKiA1|rB|)pI;=Q9vaWnb^v18;I?wuc49+6_qE#W05L_>`Vj)>?} zQKyrJ$2Ou;FUG=(rKHSZXP-s8t^-8mOZLSXMm9DELH5v|fnRl1PA(3RduE8zKG#^L zdw>*5D3MYw(AkE9gV*z`YmUBL>XFozG9e2wa_}dR5DZ5~=2%z}02iNgjheBzMEt7B zuZc&$Q^bvmH>peiA&xZXKHbJN?Cli^Ki?*;dngT#FXk$tp8Y7e!)$+vxG!w*fj3-R zTSM5#ER-HdA1{+W?rRqxcn#le*Cog)Ovyx{N{+*?GcTaSOTV<h8X5gn&76(F9(4V> z<WC=Sk1$%0<M7Z52=Q_=G15ei?f`#KqqacN>HXxRkMt{mFQQ>nyL7%Rix>jI-@GE+ z*`lxJbxw8aXTOZ&QC0kR_Xsi<X;JJkTTVxjzI_~h;;B%1FE;LZQL(ekwA<Sr5WpVE zyh^SW6uTmSEjs07jd|sZkEEy&dZrv4SLGrMZtJg<p+(Q3%8JzSB;E5<mgVP%<O695 zEz#0TbRzn1ef~6m9d!T)GK$_jk`FqAK}71eu0%y}?;C&m{~`y*jFz7`FS-sc`P{i! z-z^SdcE0)U+=P5_!4T<l+4OwCMXK*uDov%{8G?NGRkwSF%fixSCefI>b*=j)O-)n4 zp(6Y3I?^j#omQA^V?2^E0gqU{Oslm+A!^76-OXs2FjpXKN4j7_XlV&2BdMrC>u1W^ zt9W>@aoFD4R1ZT}Iwbf|;fJp(ZLy%ek*BUNkebI)WFUXGCK{JtUQtmjrUnIpo1_9e z<2Y(P#UsK<jojXG^~m^2$unm>CgDK-doasRtEs$ggJ>Krp81L1eP1x(t^Yu=;LivE zi~*e(dNy)dxp5JV$piCu;A%mI(zo3o44*^==SJ3QXRVL@$w4bRUxr@!<FfIVnUJ%o zB%Vt36?0QUP9sUt`+;YS9FuS92`okDLqnH-E(~X8Q+1{s)~MF%DB3gRY`g`88pEPG ztXh&}KM9p2)4U-=)7^3-G&Ssbag!K1f0v`9qLbxP(fy-Cp`eg5EkmV>anAeo%wYz| z*A=OkA>gINwvRKm)gnkSNrj7jHiC7+PLIs!;t9bOLU3$034I-_a-|?C$7r<!`|k~w zJqu`iZ^k*=CY?TL{WS<}O=2!OS8&lbRxQopYs`@g2r5IKy9^}erp5b=NWIPXXVsVj z@@5=S+~pgh_{twqi5Nc)cls=~v}x$EtS0UG`Q-T~!fan>&RPe}8Yc-Ir_**`o}!YX z09T8#e#LdljKux&Z#}-k+kyF&4Af0-Rn_wQM(9T*cbQMGpkysQnqbiUNBi^la0UaY zGP_S53vAUVsBU1v-x?~TsYk~Zlr%h=H8#*Glm3<IaU^@umEapYsNHE-$LM8eW9yZb z_hQczhHzz-rU4`(RAw+&y=eXaw1D-JcJcMDejMq#{Dgb$9^CB?*GQRAnNUW2L~(F_ zl*`Ybyh#X)RqY3D!6#?~QamSrI==3HQiaEhBga8_wH7iKoNIYaTIi-;=_v5d8I}>X z*CSBIxn{DThBZEYCyL4Z<d4~xFWoYVJv&BUj6WLMB0+5>2UaulgmlWvOgqyGHL=sH zRjtQDj)}mxmkGybuCoUBnUbzY7QfAxF%vG*JQL@Ug$ly`XyL2EXzU5$nrTdVlUO$Q z{Quu-`S))*(<P)ihbHph6l6jSP5ls3L(araGR8TY26Iag^^oEc<GT=p5zoR<&Lhye zUtaeF+TZC)=zHWJ@*x1sKy~9>Fv@!pSa~W(^|jriOG6mz;VREpoHeeS9Nd2L9MI%q zOTFStLvMBvIK-*Am=&ftx#%q|5#q?iNux5-{MA}oE>WE2)gA*W!R;gVA=wo3k~ftK z#Y9raJjoog$H_QJwMDAgF^Fl0U8Tz2K#)(^d#fjvIn;4f!Oo={iUgh`A_U}r4~_}s zH62HElEVIvU*8KQ3#M}n->c=E-3s;$z8%vjQ7`0G%Z4`U`Oz_8_#h4c6!}|z_2f?` zIO2;}(9?ow7XJNiClM1=#!(!6S)*}Rsd;o-0DzYX7BlAxp7-e~y}yxRw(v#{EoZJJ z!2hqeT<Wb*`*tQ#w~#|BA<^1g{)R0!L{PH-M`UHJ0)S2lRT(edIThJ34GBJ3jD5?J zI(Uj99&&UJs$m|+zpRXZdD#E3GSX8PNr+JMhD6Go*Vs$qMq4&FSr(R1K|vJ~7kcnZ zwa#xzbZ>T3pC|3XD51e@!E3~pn-(h9vlR%;l7mZz>cM$5k}#YD@G`s%3O27bp{`^a z3zYJRiVw8SlV>eDSF<xW|F7z@@Xt8XPl+<(5F_gBb5R|=c<<+$T|xvI86~q@iQ5-E znpcuSuQuKw7GBbynVHypWa|rJP|GO=Y}`iw3HcwN0ZllQGga2l7z-+so?Pr>^1iJ> z1b$L;Olx}!p&%lI=-_<zMT&robNUtW$mJPp&CiJ+!nHF@;>C^=B?Kb!S$kgdLJgTG z$CT~i<N^;;@uo6t)+cFPr%uw0&ILXXsW|zRG%3VOHgip<YTjJNs^>whGSJT4ERKgO zutoFEQN7~j;_qRAEFwA6FBTmG{h)knvm6#01cqkWG(uWu$*`<Mx_Bk&yzirH@7iAE z?k<JyChFsCg}q$x7#VtNOKO`uTK*cI22cf28t|Ivn!5CRZ-&a6D&4su6)VPxF24#> z40$1byf8YwVHFdJ-$mB(io2~I_m`ys(BA+12TAyMF(H<Mv=N)s)B&kY-$TV*RONsc z?ACbz$ZmMUgxYl$Hgm-x`AH0nn1Fi)K&L&zK1ur<bVF;DP;!VVu^|JEOiGQT_Ash| zA!_66<@GXHUAW1sPRkHYJ~`(1zt$!23kNX%5vJwP15_Qiytu5(I$-Hk?ANQS4awR% zkh94r?rTZzZ+;z(D=Erj<H7>e*8THDVG4RoOFQ{D3~0zaqXfD*8caMC2i4Jh5In$( z0eh~viO%c0mgdOU3XF*V`&3`q;Q-+JtLld%-wB0-smH2M&MtC{j5gwNk7q>sK9BW1 zS<0GGvfu$8iVi)UO#)?k@Fc>6ie?m01L5cF!Ue>F!mL4kc@vYEg_+~k>`KC|-|=1e z`pwK@PNs?h2L68}YN$-6Z{YJ~UTW1@EFV7yfN0ZqgEnB(Ryo_KoTZ>+4bW@Y<IHu9 zx7Yv>;X(v(e4S-haeE??wb~sE6-UigOvngm57prIqgb0f2`Rvj5^DRApq0*2mRY2N zDeEOBJ8AR3PX(5=e-|@T;qN=H@>ZA1g@&wlSK`pdmm1^o@4S`x4v*rON7CR9tvddT z#1KG&yCGyv0Y+qK2<_hAx8m(IS&*-y0oX}60ynz@;2f{8Wo(-K$t+&w*$ftx_d@m^ zC=DG9vF?VPpy}Yhjf+m@mJsYuSP$)?aU+25E~T)v0Zs`iHl-6+R7mx>NNq20zX>my z)<ydR0+h)=#5E*vm!FSwwlSgF_yd5Ee#W;o?xD?GPfQ!SeP_}3@9FvQ6qPMiUZJtL zk(jYl!FbIkS%f2G2LGN_xyv#=P-97pVh#9Q#i8h>bkvZcA=iSp_g=u_SIWfAhzTZc zjiaRr_HqC9-;ijFSTa`5oZNH<up>hX866q8zfVc&76r!Z$x?FRB%+K|Y=R1ng5qSf z$MM%tap+(46O=t5mS`wm8uqJ9wyNB)tZZ7cQ&&q)<`5calmDKAZS&+5cO|kNKI<>Q zjsRFxfa(%WfEyO7HQQ*Fx)~QJFazP@#1*8zJd8gX<jyt}RVmnO=HD`bYZXK(X(+LH zDcj}?VL*Ti09PYUEKz?&-`)qAQ7PGJxY(s!|C)5_P^gu7F^%c42xq_dt*1r|`J_fZ zJjH)da(dQ_9CTK$2%Ex+&!(mMd9v3{Qkjh6!WkJooy_d1rMN!#c{9brFi>C5SEZAE z2@~_AXSgQbO{-62Y6LgRF!H5;9bGe{b9lph61K8JOIwQxwfWzd@<D~3*4b)3uQz6H z54uzKM1;=gHudl+A|)X*RC+Nd(EzW!tlhhoG5}k@<*ChqLlv_)@E>@T9-m%Y5LHn3 z6c6qzBYkwg`G;Dc0)A_VR<=YCGsLv@_R3}|z*=Sspaul3^@{o2)^jrxTbsl3-k&LU z6e*yKgJ&I5F6jMiIo;CZwl#8ffp+auFrvTMV$IWbH~jD_;&p^MWW1^?+a939MV0&d z(Y~n$s8w_7k?85Ah5wad@ef%cM5WV#6BUL;ePyR%d>i=(jeqaA=7*kd)h$ix)_TrI zkPn<bzGuxSMiDSHqG@oVXBbGB5E9@*X=w;2{0`^G`9j`1x}reVuAZ@C0Zk#!f?lLF zISfyGWyz0zMA!Z?**EhhyeGKgG1pvO5jDqB0$xm+iWMEeu8=sfM9<!Fyc44)*x$Xe z9)AT5LGhx3-6qzef%N3YI3+g)MT8~#OLM76{q33>h|d2YZjifupZih@Buxyc%*WM> zyDxR-`;c#<mnG?gTUb16Ji_$2i{@iP$jNy52yq0rN2~djr#i5R;^f$qRGA7P{c^uw zlC5HFdcHbziVsrzr+iy60T+=*RFDvgdb5aJfgvC<IzZGuQx&z?WAzp4euOPzRdtBh z=Y8~*$&7ZbEKC{5WX3|9&JEDy^Ya;OGsh~zW&ns2(>-viWY)#TYCe-&2~~B^DHq2F zO@Rhg<`+k8uNF3Gh6JM!3l}0_R6IBT5_%itADUU5<~e8?0c_!$CMV_P`AYjA%SE|n z;&^rDsbU^;-v9f6e?i}Xei@^F)`a8=M?NiWw;~d_NaweuD32A%3E65CU$HXt83@k; z+^nGfpzmWs@{R2zyOPX{83+PlOj4ze1>{=>p?<sqoOcXXwIqcoV!tnuP^!E%e#Kdz z)vF2h|Jscyf<@pe(crh$$?XonhsL4wI3(?X>^?u*t`_8516_q``-^z)NUV}8@$7{4 zB{_-oINR1E*garCA$84(d2*zHEm048h`gc%6pnx2iop}g&3iffs$XOiHlM;QBZg7q z+K;&aJxRT@X8<}HhnOhv;*w^%4-*O^5kWZJ?7kI#YdU(IcIF2~PXiNK=q#J1ib>BA zY(XAU|N84AAn%$WY5wVXDOUNk+!-2@@bGV>fHD^Q0Rz=Ns%~%Fp6b*P`pfC>rPDCs zOrL!1i{fB-NSNm}|KTDR4SN7Z0SoR=avUV@dJ<9NpWMYdzJrX+R>--OT9s!AQ0%G9 zhq5#XfC$jw#WL5X1@)&7|I~Gn-|x>v<`|s|sc_xXC;qa+jD9#=n)V1MR3Od#B(Ml2 ziy0n7ln-~Rb^uNnox+pNC*<1QWbpc&cT!|lw6=Cuv{q#H;&3%Ob}`h$eksYz$ucQ5 z+qK;Kua5$(Ht|?CnLX_1ETW^<<ZmdTM7O{#3K5GYs1@51LTI#Lf|E<Bi-;dQg=Xox z?-TafYu`b*(EPgIm;Z#OaQE1it3UkM4A$)22Y8BrxvN8UK#yBLSJmkM4o5-W-#-rh z<W}b9zNmDIdEcC_qX@ikUWm`Kj4FzD?DY#GCOQ6%sH(4UuOpo+ojOK?Cn*g4eR0+N z!1j_nA}tcX2i-!m`tCTy3Ij^C9F%7sFFOAC*zR^+7~w3da4??N*WrX`H8R8i?1Aqy zYXFhs<aeG`et!OqjlO7)(b+jyg?_u$Qt=!}=cvqKI9+}L;i{%cm*LSvX~`}{Ga*a5 z<dxR@^`z_8=cIK&{H$L!+Tr+3)!3Nh#4X$~^>;AmufSz`(~q+a{I<6h?rPmczP1Zw zE^C4LNwN#gJ3my7mzkj?;ja+r2d@zPdk%kjy{lX<Q7O2h!lS^|a&fuPX;%(S^!;`I zWsLPTbJNh_5FkPT4J$$}bZ|R_KlsLC(p|fL4B;yhD%ST*!|d@roTjFC(pha&d<t05 zT#~u3;HV%{5c+8nZLM01Ym?6XKL<BBA}sgM*hz@LyJwbVK5I|o)xPLt&L5H|AcDP0 z%zlF#MGWvmfC5ZN*-X1ECnh2%*L*(PAmCvRt=Y#;5XeYc3TV=$khfgi^>=IwLD){C zXzjO<I+yZ4s>Va9zr(N4jfxm-es{2a^q@u?Db~ZvEi5dQ7T+1DWjp})C`DcHuF$fF zmzD@j-Xf;A2I{7(rTQPf_=V;R;+WEfF&YTd={Q&&=HQdjj!I)q^dUF68#%9^huaFf z^<<lDJXY5^#;Bb(Zsk5rgk%hkbW7vr&Cy)gK-2RVN{eolN~?1Gv`4{;ew$_N4M73$ z+{Be-ifN*zneyXRhH8a&)Q#-emqyBr{tx!uZ@#i41pb1@#RHuPoiU}5aT3B!`KPro zD0i@yrldy_nF1?sx!i&&4q@4HLOjT|Gy2GwI+YF`A==_7VW>iuA_grynq>0a2o8q| zdEuZ4Zt>sE4W2DO_=-UlPU^G+DWgbFN~4;!h2xvw;~%rJP4m4ejOa_gUHBrGs`a*@ zXDMp;*#>e@YZ9$8X3!o|4qK>F#`t{GTh@#Ku!^*_<t$1-%0r+J5YO6g<Xa0Ue^IX9 zy}9=1B`h_uRx#@u=dK@J?dj->nC-bl2231MeYY=?1u$crT)pU72MD&<^g7_h^N(-* zEh)O~>K@wgj`;DtX%g&>65vvzI-`L2jdN`cCKN8oB{>{!Len==`!d5U^$hYyS$-u= z0%N*@@2QP`7dnD2wE7LV28Kc$Z(Zlv9cBKf1q2L_-g{~kE!=*d!XK7kl*m#~<6_%> zR(r)NKM)?x7H)<X+kbf_9m-Z_u+U-wn`;S%0wf0q3@BssvD*EnY4Z4s2ZCe#jAV0w z@rQy0Orqo);50s_HYMNBqWS;W*Y#A+CUeiS<n!FK+RHbKPI10H-l5yzN0DU2eM1Dg zP9kOeKuHkJKDga(4LCR^;s^0SVIMm$_0UayyQYRR9Ahj4c3+%AR7PlMe!;@?8ck6I zn80zd0yTA|Q0VRUUD*X`qk55HGQ+=lz-3nHMXkd9yqRuksclMTbcBl)h}vB_%)qpX z66Am3qi5xC{j~qO=)Bn5Y0C}Xo9Y8#s+sK^ms{>cg0U6kLKvBVfy<9ZtMjvrvt4-@ zG@`iHBq!I?4Y4Fl0G3lFdPWJaSn!YZl2{c~)>jX%1F1VvBm_CDcSgW|0bxUEwj+TS z)px821ezaA*6M9+*gwDlV-NnRX9ZD8uhPuK_{7X~|AVHEva;G`#kYj=^t$r&1oN?( z>8a7ykZK8pINvdbTsmdvN(abVb4F5{`^kh_E<Y!i_6Fk>sgJkVHo4RB)NoeWz2%q& zySYyK0$B!mOldeX@$ed>DHM{J)79>HkshD`936oaXLiL(OUb8CJa5Cg3@e9*hmn|* zl9J+of13TMqf!(adE8}alKW0|cvzvfwiaR`W5Rysnwbu>VQj~nn!AakI?BSwM-$dn zS@R2`smb{f6F=jVp`n7NX4Sx_Y7T;;qFg0*k)9QMmPGuFAD=$kNR9HinPQ&JCe4Mb zlMubl?ZEE;{LWpA*qTT__l*x89UZgc;5bYXOhzp8=Gj?jTM0HJ0gTuOamx7etj~tI ztC)O67QvLcM1+)3aj&jq#4<_yE7bQfkpldPmSotXWh;xm<R_*HD1I|e*KGUz$;R7_ zN#AyF>f=Zy(D8YtV9*GE5+!L7>6rgj*VV(L=I65|uMD)Q-7<!^FQiV7ev_CilUJ-o zkfie_c|8#mmjEpuuKW8cE*-J}^Sy}gPX!kbbFbWz+MIP;Jg8hSC#ZkiN1{XE$l0he z#I7mTn3xY~u{St9c|`guIx#ioTr&zOZKqZ00V?{t!s4pvEd+ivZX{ZS#vvyk(}ekU zkwp9VgbYI+YFCKj`L<9K(qk;)P%@Spt^N5W4>BYUcSmXcY0|)iKt9!Yb!HDK-AxYf zuEBYQ-kB6GT{1E@(19C}N&kikYb66tSw}M$L>*gz?noJLsn*Ic2S;IZK<e&f<G~ZJ zCy^Q->pb`XO<Cl8MT-DMJ_ADNzkgGm$=$G|owhGEInBDB&XzT!14wOxcALd_rSvwt z`^7x&vSeoccRP23JVf<}C}@b-2yjYDXu~O-$()~S@&dw1?*Lt1*y++3Vn?svCpOMs zYZ*z()*yKS^CD>fcy?RlxWl3wqAWvQ*U-oxMa*sf_p7ifW<TFW;`8H`=hpa(M%jMj zNypfUi1*K-OHe=O{AER|rQUNUlA}N|&Lfy(hc$!Od3k>Rd~(cN^@iK(z8fUziFv)& z5AOym?ayv8t<-NUr?U6rLX6Bg37ju;=tghI1h2cKFS~RM3@TLoJzyVhY?i9#cF!hq zvW-CBwI9`X%vO$(;SCwT&&9P6@t#y8#UO3OzVaJ^D)(w%!{A$uqrbIe`g}fa^;ub+ zzE(UU?$_+h%zE<j)t{f5mYSXSmvY{!qM#|C2-qEhM)GiV71X?v9RCcJ4XG=-2r`;G zJZ#(Y*0kZu_sx0SG2VS5-gkALCt0AK8Yw`WxUL-RlYL|X3C}O|^-ksE4M|vwJu98$ zrGz=q#HLD;d5U&~?Tw%L?yA<YVbC)|T3n)1Xp_|ud6H0D1-~@cIT9`wWIjYSzI3|| zK8FX>6Jt+R*0b5pXAXqhC%*`HDmx|=+&`Ar8n%7bK=)z?MKXLtHI^6o+OA(BR;r~* z;8)qX5{K%{r{YpZJeFN+Zj%RX2e}K&R%A=-+kGk4?^`?G7ud1K%=*czPM!-d9G#>U z;1D;X^SQHa4w;a6F62wQ${fi(-3hFA^f#DQ1n}v`3CIfi4A>Y2{^Txwdr|&fF#ToO z=<`m6BUUVCydSboou#(PJuecfPZ*3tCTVmN4><4nBoq_hWl@)jUn$(;yrL!4i+uph zTq4hxl=>E%`kp77S72dZ_IM&6Sy*ER8`djbE07Z#8<xA;i1tFex8EI0nrZVj%l|ty zc|2D*@jbF@2vs4N89>K#T!z*WB{Y+2N~hfxW^rR~Fy0XHdmT6#+A0<lOXu72JztKu zHPgZUZlAfgZMT0TB4+5_|23(sgvX{{fzw9O)MdG0+V)X+I&CTB<BRQXOZnBgFc7+r z$NF~cQzabc5u_cPJDEMvY^Rjj6@Ly7TCj`Q9^au-;m<go&wFfiB!0>O<qyRa7fn;P zbXQ1ZK5pBq{v3yk*d2&tpngQ@SWq{j7%v4&<Y9LpW6g*DhAM*Sk6LrMCCDwqh~}-* zp%wn(R1C*uC4RUK82s~12KV=f!TU@osVPAY9MZpB+npTobO>C-3b?GPX#;Uh=`1Nj zsiRFJXfji)6R+a7jcsQBRFA;FRD_cG=^#HGXXq~azE;HqX5ZCk1_@O#%aIFwgkG(~ zpzQzsqnoGB3-sg+g_X!m@lRXVp3Uo5HIC*)jojEw&P`7u75!cd+QCt-534PH4W=_B z`=<nRh#`?x$$V|`M!b!lz<P&`gTugr>++pZ1w;7c-(PmFJc(U>N);<LB(|OH6!u@) znV4W$SA1@D`90O&zkh#@K}?`q>k@lQ8y0_dezj14((3v}i|)ef*6X=O3)zmKKZ2LO z#c7M5_~T-&HEiUU(E7ga-nEO)7nT=WZ{CrEO*v&V*<(eygtMvW<bm#HH^KBxscbJf zx&7}&j_JalA@#ev<{R`EH)O(Yva+8`wc8;3K6XPM&)MzJ0*`-rM;;D)4vgSkC8Z?S zg89OFVwf`G;sniSd5Kx^Y&)}*iJ^K1feX-7A&p$?O$G|q@F6aT;ZR)gA9`ZeiOI>K zf%O)*D?C<0Cyzv>BbCqKSheYfG&S|yRXh}h`(Y_4%I)m#%5&x#b=`-$JLRo&1J(&| zq&+&B5Z}(I0<<p63GnN>g+xT)BjJ){QHv;vuTLCz(U?uIR?Y&b`5MhsUq$Cgt$N5a z4Ij#O2}SJOn#wveuc8djzix+-WXVb2QG$yV$4kKDc9T?;4jb(^mG1p6sjvLBHFN&^ zGgnBIuBn2qlnmVS&BA%a`oqri-JdnR>=c48W2jkQ8)W~4%0E7Q6925ksOC_yS+uSx zs|1g_s1Pd%2|qj9Dalf!u2>lkRqT*|yr}0&7_lc{BY&Z=l^X6~MHnC<j_(`zbbq_? zs@<vf1FHno59q7l$yVS!C>oli61V>lKDZHDZ+g+t?P5x6b(3cFaGZv7@_WJH&Ich9 zz5ShS##}~jnjDBxu-mWr5r<54fR-9F16|L@r>SMxgW&$XlG(<HF9J{*xLA6y_oa#v z`MfJqIK9w8GzHukj-uvcT#4w(@ADw;zUg6aY>3vkMkxdz_hoTAZm5=j?;v**?T|j4 z^xtTz7LcUBseL|AKkeS#f;E%3!C!%mO$+2m{)`yC{vd``VW<6}H^J&5O1P0+7=sQU zWJX6e9O1bS*vtpxaz(6#ywZ93_;+^YQm;x+J|IJ9@(<j2zs?NjDAv+A`wjMZ>J(>3 zeVif=j!YViKvJRC=e=)Z?DM0-NE~3Kf4SwDE3%OJ+^`j*j^x|)$x8)-1Ij6=+~N42 z9``rA+P}uT9Bgd-$$cZC8ugk4lm10@j=D_*k;0xag~DyH78caB0Xfb5QfyduH1&Im z*Wjo%9*<lYB|F3Q>;|%N6#L&X+f`^qIjGIf=wT2u^>%D_*%Q@8Ki)gu-lrr)KI<)m zG2`f=7}4`Yzdo4QxSD8gZ)<xx-Cy%_&kp-ymwDRmtV1mim=P_eT_0KuEiJ2jhR=gs z%XORG9OgIe17F{BY%>j!pVPl+H=0sK?yD9}j!^~bw%V;P4Z`Cqkx}p~|I_ojwn^^L zJ1dQdr>vJt&xS0pXUerzE0m(2Pwj^;hZoS1cZMJD*BVC?d7_T>kH!?8?4R}=6Kz(! z>9x+M4qTBFpMx}uKb+0Bdk%tnn$ZmY@C*_(c;$39W%dNQ4z@Y_ShF=?@ku{E@3}Zx zY6>>!c>hqh(RH>=(u}_7Np3{GMb)QdW@fhWaPxG1y|bg4I7)JJi4pNS5O#ofJ`Ab) zQ$M2@?d?_f38oLr?UkUt8@kU4#3mzt>VTW-75#JMMqEd3k)xe@qEya5(_8ye)QO&6 zlR1m<4#4mN`z{{C!QgMM?88jL+IhddBQm}H$77`l>}KM7XX$JPBK=3*Rz=;I(Y2P8 zckl&^^!qi%)pT`D4mDk|Z^5&}UakXs64Byu^B}ipHmo>`!0R@iWl*nFVRL=yJ~gpp zQugv3gx-f(O;%#uBGF05T1k}+Vj#urj^anPVG8?GLk5BQITPpO(WV907(6A+sgbr= z$N^H-2V<BOtJRd(+<Z-XEs1hIyCN=bo6TpAb}o>vq1=(cyrbg`TknnUeQ{&_Xm#SG zFMR{UDm*9hBr&%i;@<YKnu1yek4Lx27iVJn;$2W#7SWP5kQ6Q!0DmRp1Bu$y#M{Tb zQ{@<s6lp9h&(|L<GX?3P-I|t)_1U;va0E#;bw_Z_bF_*@DG*GgWo^YxG+xEy12MFv z<Z$2r*0VmhLgzyGp)ZfHvTb`@>1->eFGKehmq4_Xb)RQ=Y!R>G%>iMP7N4wA#iwH1 z@Oq4}Z*{@}azN(k4r}<Do`6>QinVE;pPq-W{`T^<y~|%nUuJ+N)uZ38r6sn`NP9~q z=v7EkJ{mt*SU>#aV_y_fkZ#aZ@ve>MEcQ2=kYMx8GGZ!8%{%t4ir3GHvyleb1VM@T zTjP{a=l=5NVgV+q1x@P#vBF-mH|XQ6^FMzGx@^x#T4B)tRN=y!us8cI0Y}QeCHxsq zmBdB8)Q@Hg^>T_cZznkW2LU8~@4y!Lj8&scZ@(*7Col@bQbOI;7BA0EPqOnTEvnmv zDVMp{x;QYNJDGrDG@^=QN$R<jxk;C6@ytgxLvAq<+`LOLsoC$};pXCyX3(`mDPfTM zxJ7=cJ86AM44|8~C9RH=Q+d{I1>1;RZ)CeB%;?E>iyN$ze%P-L`%@`5-FBasnjc$b z@;qmh7F>^fZ#T6}O%sM>Q-r<m0*$;<rpu^pl2cL?iFp{`(O-g1DrmXy$kH$rK$BKV zyAu)4ur)FY=!#xv>$aRKjr9NJ9~6a;0H=E6b+<oUy(76|w7^|P@w@1a@Gr6G_<Oql zX#r3CCDS&Pfeb|Kg&9E)B2*j?@UNM*c+EhCwhXS_NB6<Nm;1|osm1Qk$Ea2b54ZOL z0g|g`Gp$z3$UTN83Q2rqBF%xQ`|A*fv4_r)>DMb?rfbH6$6_5D#tnYTYnFFKLztO| zi4sS7`R1{S&cY^&B`1VorJv8Qx<)IF9;Q{P&RcJuonE#j=?Ypf1@@<l8a*HG%Z1?A z-kpIB2-@|zPyH&?LGw-a+F+CO-q#f>Ln<F39ZuV9sXYA_hmGkp_(8l;Rws7GS1a}? z(oNV{v3A6FLuatJdQ{v^yaHGIW3}?5-vC2Ph5^9Tx)<AQT=W*2m4~c2Ewr>h)|e}( z<OCYD5I8@mM3^`RD}4tMd{eJ0P=TVII%lgY!a8uWf4Iu;@uym!%5H>p|GJA%-gLsr zx%(y~EzZv|!kLGe&St$g8UP(Eo;yG9l=rlIWxROV`4jG3>-M3<JC5)o2V)1dh|D2- zYtr=#QVP4boK~HC=)IXKR^m~0DD|YscyT#AB$i5!Y*ic#3+gt?CY(BTAXq;6ywLWj zptRd)<su{?Pa1$-cvV;W>m>GuuP;j9Y$;}Qbj5y<bFD|<L0=C8D)gHNwMe1#`P(ax zTnKM<K<wv&?Ju+*Cu{1uH!o5cAx*%HZKoqk<NpL0$h60LqA0&CER21;wz=(vPo5La z93#uc8~J_<xkh4c5EZFRafj=Un=Q?vD47xpc=yaPKNOVq6*TRPAg&hz$N8o0blS(h zw{9Ua;d?dgwoKD(NAM9g52J4!Tob~YWTw-nqGPEDH?%oL1`G3IUj1u%0_N_@<?)iU zY5TWMoD#mjQ9kTX!pgS=g}nYPbiP|!690ZQaD0YmBQ-A~WNLGSO7M%G!avRXB?%q5 zK>O^im-X1^w?<<vn!IDTE0QWvs;Mw7_s68d7cYTB@3WtSlX6@~D0&G^OmiivCA-4U zMFaj*c3{zYlFPYS-&Z0A!HH)?G^dcR1cY{&J&g?Q^1>mRew>0;VF)#A^s!#HQqL*Y z%JGoFt%@aJFz})O_;FCRck*xYHg#{a(fw<3T+DMfGBc)rB?`6<i{)=WAaGcAjE3eV zZA2A62FKS{7OCn-7ll4ME7EOYI|EQX?eS9v7DvaGWo{Ld0KMM!W?x2#Y>2!`0l^-Q z1)jnpMAyLsR`r8}2Stu+GQm%$vX$#z`0;9}<%e^118LWuOg<Tg2CYb)F^6(VW(1oq zbn7`HXsAufCf8N+9L=eA{Cekuam;_b$J4Qioz|wo5$vIKHZ4neu!FVx$qGaq28KB% z*V2cM%pdCc^p=8-`w~S2f%`LMLOw&mAgd;`)Zg<qn~mCTR)u&9_hBWKAhCS0!_4{S z*{G<aJfb$fIJ@Z$TKqrAoucA!U0E_2V%X``gTVW1e`)2A{tUd43>q$OZGR7EQ-zcU zlLylN2!b!yOP<-0R3My!FYS!TNod{g$LB8{-p87DQ^2Z7$n|3}Yy}4J=Du#^9v_$U zVjLc5{)svTvXkL$Gv08n^c@jsPLAv#e6!ov(=!-_hK=LiXCIE9(Y~AN>4XV>WUo{p z(F_ZjkPkm4!&{bTpNZr36mVd)PUFjF!+#KHrq<64R>rN4Gxif~x*?k>bDCN<kYjGy zWF3-~Y1-BmdASCB`PEnbekmMo(et-9sVyF-N=q)Uj*tXAQCU@q><L*xJ1v#bF;{|6 z&c}g*le<CR^m-)LJLE8fO_!U|1J6Q-WMc@0m{1JaBo%x72chf+FacuBiN!7C6D>Eb zEPK*Hj(^cpoMDo3vlRXz_4Vw3<X9f6`c_S?W{`GJ=l=M_rG&kH)tr&RvMYdV27lI+ zR&+J~tr{;K2et5FeWn>SsI3PyIE{ZCwY&QDLNV1@@sd~Xu920VFp^L?7;^aO*oeTI zq`IXml%l&M3*TU6D1*E^C^e~iVf;^N=0nD^HD@%5M7EP@y`F2-8V)cp`r50sTXefv zqaIZr!H){2y7osJsAEtgd_(HQ$jMyKR*kUyfnY}0;zjnbN}&2-HB0UD&L^J+ad5C@ z-CRRu4`uK*B|7!HL@p9I(psmj^b4qEGNwTomVs+f^Y$^Li%rL86cJMznV~sQ6MmaK zAD0`04TakeVwuE4Ut~$Y$Be5=eaUd2c%V=nfPY~HICeEq0hMdTTcbe+#|Wq9Z9-c} zo-&$nez>zhp_5<vlBVj1^Vn!og-np*VR};u#Dd@!<O-X}IW9Uzt+DbWL*9*L&!vwU z2)+{f1^i{3HA>J>^gNTdw|mHOME&uLERh%b?e3b}-#q>S*6>t`dOABZe?Sa-SjjQA zq$KTsvc9DKgSc2CgMk$wqFcr*^$s4lYHK)4JVR(dxIHZESSA(}2&j^{@(^H(J}jEy zlaex|+w5P=oY2>!OAPO`6B=Ia%b_dZbUtv5;pZAPbKecllxyhe={YH0EVz!3j=cX6 z*t@KBNkzxYi_;(QemTE!Vrr$qIT7J~*joMVY}V2OPlX0`amlIxDK1HuX_(I|R04XV zUpKv|2Wmwa3DBA1-#jE}|Gm@kuVmCleOcyQs~#U(fQ>JjvE?>?=B-{>`P^d3x5;Ix zV|PB4*I^8#VmMtzys5&}(}`(IkIa*a9}PIZK#wd?Od*D&Mi^}>Qh>1z{_IyaoE7$9 zg1)=2(=GA&XsOC@r<%_LGCoGd#H2Y(g1fsFpzl2T1-mwC353kNUzatYL;6bm*B?XO z*fe4v3p@Pn?#AKPa5#zr(X=G>oy{EnuM=Jvq|;P>+WTXpT)V!yLt{`N(xVu46i0k4 zh1kDr@OYB}X=wrZg*%=YIgE35_Om1&k=8_Uwda%s64E^(N5l!~B>Hy=@o|)!4h)-S zhfuijuOr$DUoJspi#*1`Z83muM$g;T)}wwbR5|#GYUt*6LO!a!6${~2aLb%fFF0wS zgi!o^%jGYmBtPR^#6n6YWlwB#y>0a{+N$2!QkJ;9nEY2|Id39CY8wRJ7d@V!DF5xv z(ygRM57}%)tB+%b+x;Zy`bc~|FwOAdA5z94Ge76NiD97rT&=E693FmY8LxGOFH)HY z`;gU#1u}So9{ekLc8++q$?yFcd}Z#7Eq@C#+Ub8;Ss6*jUSUW7%#u@m%#hzw%4ntL z$S1~QNv`C2IW@%FE^Z+tf4S&U2$x(_$%4@PWMMfdcP&p#ZKtW9{fOl1>)DZ9#ADK; zxxhfm4nDcgxL}J{DZ^OPW~ulwmZf5Y9t9?)7WbW{EUT5eG9At@kP4+ELRAubB*}e} zK4M~HxUfB^rnIsM$_qW&@v5prY(~qS`y>9t`uCiB(V$90V*w9*k)T$pJf3xt*kk+r zW-H}Xu6{IXuQxDY`2}<pKDv@kIlJthN_d1Hr%rNa8ySH42uv}w+-=0X!dnxr1zFx8 z=1c8u0Mp5(sj^wqSzZf(C>RTF1Yff24P&Vmm=-t_`6)pFzn)66^>dTAdyH?eN>Wt3 z>u(k`64ITtUpF-YY&YrqjRN()c9;z0CpJNsMXgfz4Bdim`$8rZ`g>b9f%mq)v{1%= z|L-yA@sO~`d!el#LVZr>h^kPCrEb5SY;lDTA^{$Mrdpnq2UocOINkBHlX6`D9WUf3 z+>B)U^jMHHI0j0f7$fcj9l(NV&F-+0&+lGDepEK5l}G)y@n!AnW)(+uLW@OaSz`Ut zWyVn;zi%HcE&|TcBk+U&+eWbWJuf}EkYPF?SIi@VZKNyq_Ig5~UQ{F!>2D;ohejLe z-(ju@^inHbQ%&y=W`jm?MX0wfq5xxPW~pJQ)ZRNcF8FPIJM%&?&dZUwn2V4x%9lbT ztFrQnKHy60q4xB>nrmnV79JUf=$R8Aown%F4{ax5?}CWzpVBwJrXze6(f(jH3F3Zc zBJoMRk7|E!Kmim8E{B|Cg_wDx6YV^joGM@BI`!WCHK5DTyC*zHW*D59uC<*gM^MN4 z(7O%Xx+r+DoA%~Md3yVtS0Fw@&#OmfqtSNiUVpP3((x0Liv)BXRkfU}!j<LHRpOmL z+)p+wzL|?OH6UMss(F3b<c-5)A~0pW1ek))EpF-#hkYF<6<#8OchB05ljNUO3)brL zfmw_kpN)lhy2#Tv>6IPE#dT|tkrbLF68U;ejChxX{j8s1u$usQO*;7H0oazU(n|-q z`Y)W<dzHIkk>U*I&4(lsJZQ4(X3|as3<&Q#%{2caZgCjx!%<OnU8T5m_x5D`%g?#x z#OFx@_5)owkyhMKH!&c`ZKS*zJpTL1tibD2{XqB`VQ--Dfvaf`?f3MyaQwIwrkcIk zUhm)U&bmG4P{s}vR0<ekNFL?42W1(^)ZVO0&^~L14WVFC;v_BLJn2G%M7o4M=t<)Z zh$)jslFWI&NG?&)$dJRhY1%-(MJzhsR#Q+ilUeR=tXYl#Oe<fx788YqPMNKO#It%e z&<+@0-|=zf)^^PcRe!!c)?gdR#$hR~s@0~9&uegBnE(bR6s0~Gbi#$SJ;|KCcVoIP z(2}QOSt;f>%eF7uf93On6i_7WgQ<D)J*_?ewlMxH#N>W<R(cdODc{7@X%V#eF==x- z@2_+fTRXmL?l$S6lhAJ`vp-S-G9e|fX)s$85m2Z<Hr$R;Rjj;6LKgN=`jNK5W}^Q5 z)*YGhPk)H-Gxy>6@b{g8T)W&y-RAdyc691(i#``C+>k&hnD==|3hqB@eaVdjqr<76 z1N==rTP6EATgO{VbxS5H3T_$-7A|Nrb4c`Btol0&xPez(#o7<r%%ChTKxSZji;2JX z`L92RS`!eODk4&qdv4yXq%5PK_`0Wmn9a=GRQj6Ix;5|90_49vPG@C-8ElR`Gfh=Z zH3Kf=<3A+Tw*&fvNl9tWHy3IxtImo|`HkNyi`qgU^fJRTeW<4Kf>c1W2XhAnIEg<) z3^{2<Ci@Bp?~99axNT;{d>@^p+p#zvuAXnKjz2Lo+HC#_K$bO-NRP_G;Ua>6m`kYF z47ILdj#C-#9c<~*w%g8_YIo+?ydf%bD1G<)lmgb{YWMuMKMb8r#P{)%i=C05MR*OI ze(_qi`_3dZIa^ZVQY_n(MkS_?jL*yr8jxq1Uoh~ZAK0!`J05P}%aXOx`rh|O2KV;= z2AzXB$AXqMwmGtTW7t_c!sR~(H}b0|P14@?<fK0Yy*HMErk4ffL70<Ncet)Xs{1Il zS4L{<DmK4uKV6VI$a%~+$u6VF2Ma!5#%v~lT4~bcI>e&uOQ#o?C3)GzGgmry+|sOa zXqe0v;8!hN)s;r0jwh$4ZhH#GN9DjS;U2!!P2*II;8F;;pAU?UNlqIA-G$-4cPs+s zN&Z6r(*k6d4{b~p_hSi{YE;<@_die7NrEDU+{oXElBw^y!kV($?8__zHH1)F7i*b@ zESmWDo0=@OlNW0^l^hu9_z2piQ*&{8Zwzh~C16Zg>}yZviZb=M(-y#rPdWBOSo1gQ z5<nyldXFRAS^S>NXp5dXmR$0Y(LG}f0<m=-|6vn6Quggi_BLj%DE#95*YWxJ)>ae8 z%Y1N*0Blt<Y?Pq5TrVSt5#(@s@`;B3JA<KkUl!^jF3BI9IQ%rrdR0m>83g(8WM8kV zdHLqUp;GH`W@`l|W|U!e-a|N3RZ9KwH@qTg$yvJvm7!@VU<V9lh#-G_mxRMP&V#1u zkAGbUng*LyqU{}c!NIeeSg}9Rf&krP5O(Un^VK5(^xy&er{t}9ZT5Wpr^l@YAbWy( zo>xKNx5#=GF(vG{X{D}L+@9T|hK9~PDBir;t+$%M!X+4Erix|WSP1V|crWR{k(F4n zte~K9es|UEQ41PjPDH#IYkMA*;aSb-q?0DpaNi2)ErGo5+N&)z)tk$^5>Wg_OIM(f zcGZqv5tr)0Ct}Yl%*Y@3(?<ad?KUs~-<g&IgbckiY=Ea5IJoVVS8i<<qEbpguduT_ zt7W6P_Gary(pY5!bHWShn-y>K`FU-;{QcLs)Kx`EDMp}_Ft#x<BPkvaLxShs-@3|7 zOB~^D9;i@%4>(*@a7V@iKX4Nhs-mxSNTAB_(6+(>x3->Q7B_O@XqvAVstx~|GqyJs zadL;RM}@CvhPS;nU~|Ygm!iB}Pe;haL^mZYnp+@DwECaJ1Iv@&e;gPO-25mqO7!}o z->l0La`t2*C|KVe+=kOqZ=Yiw{LR)&KY|6dho`ipEhy~$ip{H|TJvR$`VRYP)aY;3 zgJ1{=NNo()Ddw;H0Em9PT?L<w|8zDEea|iZ-d*Z8)*jkU4tNKF25s@Z)MEt_9sPL0 zgk4DpP~SllK>C!?;&n=p%G^Yj%OE(Uq=KwXx>kVpofyEIiR&>gSnHwFP2$%>DHzCi zCE_r7q0F`H(z!tnMr^!~T$H4y5sfWxv^{_AYGnqhG*Q_2)Q+^dUSA*3REvVs;!(Yp zft?H6#U=sUYfcGL%xxpUBl5nkvThT#e#RVE2#>Jq=6FZH`4pr~6^J(E8{~Q-GCn!! z^s8R&-QO=3455x&84-w21l^_d{I2FVEAzuiNm>Wo)*|jsWO|0PQNMl#Q}rp!$J;{M zS<pB)f=PW`?qHku_DaoI4Ty*cJv<tcN^BTQ!FUgTtDK(R)8<&~`Y|n-fx2Gb@Nl!I za$7;8DFjJN@C_vI%OZ{_p*isj(b4VnmU)7oBjW9I;TAd)OhI$HTGUWbQRs99sK#Mt zLNirWPNdVyU9%mY^M;FmKLtte^UkMm7lut12D1h?J<<F6y?e{OCYizJmiK)9a_HeA zh3n@Yd!JRn>Nuf=$hxduW64;{vpse(>iB`2F>hi}XP!F&0cr~PcmBJ{a1Df1r8sXa zFPU7?L{cw2pB{`-_Fud#3_N{Bm?#EBb)=Q$E3BSenv&<cua{hvZlzvh9Oy_fdv0G` zgBEx<?~5zg2*HDfkNk4WA)A@C1k`=1=f9i*dr#4rcH;^-W`>UW^uwNcZZbL)eD*HV zKUS=LeC2`RcaHG-1P0fjEdD}bI19^osVKs|IuHRzVWq3~>>D$VN7BIn@PSXQG|7!@ zUbrRBq{_<h!BEf%vw{5`2rs}~lfE>Xdaizp1sgY-)`wI~!YntJzg3DHiI}iVI>m15 zCXhLWUEWfV5-SWZI$mx3ylIGpQel7zM7HglBtN-@<TYe%4XZCErMtgIbD4-Zo9n9a z8Rbt0+l(Fu_*tfa7x&%sH?i(V1)*kK-k;x#LhL7KvsdnTY*#ePse~g{*58ro&(&Fp zpna7)MnXbcYE|y76%c9)ao`4P*TwU#q~#2FQRR>7^ZJ~Zx}LN~8`>efd3iVric%Me zTK(~h=R`O&du(E2sa}oq50UWHv%hq^*Aq7okf=EihwcW29#Fep6;Arjo2<_`&Md#b zdq`u_Z!;Zv%**LjHhQPQXZQ^e8__b`fsT9COH!mq=&KFQix#FXp{Q7voJgM@W&l^D zM5?8g`bz!-g^9%*qV<GVHgXcW&2OJFligd_Z~3yLUxT%YDVgW@ThQeP+Pia+;7Rd@ zmn9}9YL7qC`VfrQT)<Q$vDwRL;V~0UL`bM;uN=YO5l3#ah`G3&o*~oogdog`WokpB zz{{#_Kbk#TE$zd4%}SGea~IajNWm@J=|dGqN~9ov^HpzFHEa2v`KAU&hF{x8ME5<g zL=w7B_qYpqa#+O)yzhS8u*%&QV&k|KP+YCfu&s9BmHDiWR12CUy7^<%>TV~c(0EcB zk`ns0?Ho`?tgv_<xQ;@h=!5=E3c?%nT*V4RL2^hoL6gt6(0RXP&A$OKD{5WYZ!Ts= z`Qi~`R>w&aSwK}HnqsQGtw^YqY-N6n5n#Afi3^iy&K;pYo@b+@ZaSMXcbHbA6ov*X zr15d-px#QqmXkG;V7l10IeFOrb(8#=aUYlYrN0`_jB7>2K)7=kK4=mR2Pu*Ud-+M& zH`1idPRHa0Z!oVTLLwe6w}>c}HKom-_Ve6&Mn!(DWUBD~4mJudQrN!IaivqvNK8vp z9Oaq2{$5F?&5f_8C}O&Psb<ES|4!m!<rW_9Sj5R|srSfjX@0;#6k1Q?{9v{X^_g(f zj+ggKC~R1F?}`s}Z2s`n^t8C-bhdkJgjM1OE~vkfj>=fh)OxtqyJs<|O^;1$^_{_^ zEM&GAyw|vWJbU{$=j1Oav0DAalQ{UW`sCgpT6;q(*!v1pVeIT32dWo%FMN;)iYi;U zS!{g?cEda^0T`?UP?DLwcv|DI@r-Nyw7&(2hquE=9CmO%ssMrinBVSp<+49?$Gfkn zsd=6)TXM}zzn@LF-fUuUxzzW#NEee9L-=x7J1RByV`l%}<G$QoId?gKYu;u0QDNjl zA4q>9Yx!YPl>MQ~x0RNTe`Lqtl&)L(!zM!W<ZqNSQoh2{jX%OT{2U?<`6H~T2_KSg zdJ1gci5#WKJ}ePvU-HNIKq3LO(C2&IQT*8^|3-e~+R<$97>pSRAhJ?Wg*cN`Ac0%q zksJPQl53X7y*03jzMe1^YsPc<C&L4NdDE}5o2E)C*C7zRl&G{=lE&7=Dlju)60A-C zQ?c+9Sn{$g$7(;I>xsr)h9S*6Km6Q$ze?_(R)kx5Oh&TkrhfxXM29vnNI-`i4U_Lg zFxU1$-*yS!Aj4Ic&G<Sxegd84sLJxEtLU=9+1~{3d!8due;f2ESOvo1rbHBbdM~t5 zg3jo}r8zY7Zn%}5#uW!2NaYiG-qxn~^?5{)xldDBc@N#u0f{-P2c<ffr8_bdQBiVu z0r}IPcC?$aDD-)X^)&_u1mBi>DNCWsB?4pUHk<sFvlDBJsspbHuH~w}XWy-c6#qL) z=~wj*r>VzQQYNNvIl7%N-RC@qPB@Z2o~X7TjnUyl*#1t8^9fo{EasG?KfC$ME%^DU zd2$|p1@}1y0$jb#O5a<>6i!Yqwgj~*@8)SjLPA~{*Qf2J*H`=G=N>nQ+YbV(v;EcJ z1qvG&-YF&}#?oT7d}zU{-xf_sj)p&5ZM5+<%gBz&4OFGNjZIE&g08=S(d)~~r(~o8 z7jTUI=5PH@&s!c+L67_MD;*wuGvbMEdrM$it;`8Ln)QalCGhc^pPzp~Bkiix^TLLA zJeVrtvh4mud@*b=ySR7=biOC}sL03=5&`?y14lmJ4D=0cK`$&%#S3~-9I&H}!3q=% zYyU|7{ZrVJVj!Z<?AOI>;;zm<W}@fV{VY`p(CGq>?vi+&m9(|_eRSg<k}=Zc0r7rq zecfsIkE{f#4Gt$?)sp9Y_Mvfa-(FaBA$}%W)RoyLCu837Hty~y_Sicv3y&{5Vb4a6 zsuL{*p}lh-CdRPPKO3$z%SX^uL*~BfOmOQh^elQ~Ii4`+2S>C%uBbXz!+=I78bRMM z4lnd%SDw=CvF+(3zvI3dpCb>Q4_>K_)JLwXpxD|@J~Uej8-t9QF>gE69c=e0pw!|2 z<^O|Qw+cxa1ooS!=GlC<YGCE>V0^e)ckVL81bRN8rq8S?huT~PSXVNfxgWgW32VmX zwyWT3FsZm;wOze3QXZ*4wG6HgKKX1pGlr~OPBne@9t1x(;&Jd`8AJi9(`2a10=^nl za&+@xC-w6x(raac3IX}oL!wY|%KyYlBpj~V`-NvUo=NGRA?wF?&7>qD&c%e(tH?W? zxwcb{1Cg^ussOISxm+*XS)TD)Ly++BqoQu5j^RIu>9Mw%YQ5>QHByhoFGf23*YVi# z;(Bc6Ba<vSkRrm_mcFq)9pJel_?YsM^k<crV4y-sk>O6A**YOV^U3~vvCDC7YG?^- z15hy?AAO%v;<sPr0+O!@tXYI52NX0E&c)is&Mn-SvnE*9+2M)MVCt-wh$|L7Pe1NK zcLUSrbhmxZsot71X;e^76EKv^;}55?+lS}phgTjuJJm#y%`Y`eYhEp`WJsuMDk@rk zdReY7Pjhr|5H&8<Z*&8O4_=p~_@2AF1D?ozfXBQ6hoT=67>RrujUKo`cj4XH-qe#$ zqK}t{`*!y?7i;bHRR;TQ7Z>iBfTbl}CE~e>!p}nMw3t&<Gcze7X7>P<Qd^_GQdZ_( z-8;jQ_GP{S+6Tu=jd-dDdN)@3y3Te1sfe)c|6}g0qpIw>c5wvhZb|9blqg7dcbAkP zDc#*5EiKaB4bmkc2olmDUDDls7Cz5&-uL}}<Babc=l9RKhl9=D!0ozM%r)0F=e#Zj zVwSq9zMVE-0WO*z@yos0W{aBia%SaEVkhEd6(k%szXaz6$Hzg~LvDM*(%G<H?Z$_O zcFe)9o5;>!C7+H*QV3+d>7CF_%{GN4SE$I-7dLws-Q;3k&K+kY+%#kXQG3FP!Z4g? zp*?ll!Pm1>n~mHnPQd=u1T??~M_GB=hX1fFr0@$9dK4#s1fNOHj1<3#yNlx(cPb;V zZIwHt+1NNB`pH{i<#aO^$CGhfPSRlz*pu!=jXb=^-q#~~iiH@|8B{QtXL`41woqfx z+Zs2ye8VxqA-uNyfy#O%(u(7|<dmX)Gtk|R*nc;La`Sv34!WNu>@pT96Kj`;<=c*U zZ2~$kwTF)zyJl8tDA?jRI9#H)d3U%{w^sGdSPRGjc&Zhsx{<H(%KMXWMvpT(^Ja51 z*|DZj7T~dFX(QDr&w-!Pd@bR5Vp9A2cA!(D*4o~&*?7k!2+!mHP-}cb>H=zw6W5}C zY&J*vl+SmBvg8ff;;4EZG1ga!U`ibg>-l`HR?KXQSzrGN_?11)!iDxN*9?V84?wsq z!loTZy#xQlKUhHfa}tk~k1W=bR)H+UT;IKybG=V+D|Q?$LRHu3R}Xa1*dzFqSP#)I zn=S{$K@Au++{4hleg?gWHht0_X{8;7-Bw2SdWwrayKB0CP-}i2UX*Ee2#D3H7|4fw zHWNBJ{?G(>z%eguR9QWZ`rDb@>H8y}3)_A~7)rYZ_W5m8pS%clw!{2ui{J+Z`<HGg zKEH0PKMS4{7teU;=oN0>9B<zINZ6>$Gbyz1#})%ehf2erIz-r`ClD{hdoIgaN9Eu- zeYc*GIkckhfvqQ@KkRYGvz%q-6eWyqjc)IH%q->*aEaDUa3QCHTpq^zeGCfpm$soy z$~-|2yRn)QD^5sNy2VuM86tFypEfH7Mn*7;2=f+2ikLbXNR%35lag?W347k=x~qXY z!dGf*(Wj2;nxaPb%GG&!K{)|@XqObmAkWE1kSsi5dDG0s#xz`&oQB4FpnI!m;0rx= zPXr;W=KBK>OD!1qtWYrK<Lxb$nD9|rQZ_6k0x-_;OwazBnfWyE*_^YS1cx{*r^LB# z5>R~<avojXM*p<E4Y@?*=HY^PzXj|rbZ*C#C`qhGrI|o2v;1RPZT=i>r<81eNXT!8 z>d0abtaov$t^@{{muE_2<7~zILKBKw#lDy8Hsb|+(BJ5Jd5MAU4^*K<E^wctZ;mPy zt6;HJ8CaR9xw$?jC7GC;nOM9pt5B;O%>e8WM#_$iluD7(wJ%?~yr@^p`4lRZA7UbJ z`U4L^lI%SOA0JHoY#{k@L#F`4Q$xOs#TIc?SgC`-_H>V$Ori%oynfC)-vA>Ld2f~( zn5<yzLebN?RBc`UbCYp4bz4qlAOcI)zgHLHYY0-K>n$h7Z7yN}goZ0CQXE!ZBQm(| z!1RXhl|Y<v%5Tp08@ryB)bW)_yA<~FDcfPVrWnT!2vVfF&&_th{09(d!h{kV`<XKo z`K|Z0&WzXIotLWeuL(>3_F)`DW;?|qRhL6vcGF(4J5k0NDzc^kaG+bh>%^x1b=4fN zJHe17ecE?=)!;WwJKP%jcHS1Ds2pJ@-Qm}A2P04v383;AfGO<7YSd04ZEbpk+r?W@ zWqEm8&FZMR%C7-3F-MGZYk2p2576WfCa(?hgtwb#@cGobUJ<tFwOcc}KS`Tl92jH_ z<NA`E0oWz=6hjqNR2*C!I*=i7;DGF^luIT5{QalP9i1k}G~(}iT}XnBP-h`Hg%S`b z2N>*@%<3?C6_;9j!1s`u?F+C!oiC+KZ}hl#`J9wSZ-yns*kmJjN_838y^%q2xfC18 z-Zru+=lRaP*Lr@g3&g`^?dw$?po--|-;>Fre~>d<_#zZctKl_y5YgaHgewwA;L|im z`_Yz!t1>fgysF;H+3=#kjRB;uBKU$c<ER#or@`<Cl8ZT>EBZqsh`hDBeE5xm&FO(F zS*EgGjeT3=>1B+>Mieh^${@q1@@XI%HL%aBH`H6IHE~TO&aCBPZVIHkaM7{7R{5}} z_)pwCmKNxhTXhqDwhG;d-Q`Q6x&!_b>Rlg)f``*1IZ0VUR+H+qGE}rP6VnY*F_1MB zl7D4qZ?D;Ej|fer#142TK1L4*zc!iiTSSY$nFMuO(qL*6kJE4KkSEfvjnOGasR{ya z(Z++9(7wC?g_jPtHk-cPz5fia;A1t{^)W<T?A>gc7ognEA^L&Pqcr{&s89g>G&y7D zxz~mgh>Z{EKPhwt#pJ&(wzgT#1Do2A^7Fbwdzw-{@thvqueO(&w?TMJ0q`0X+LiX< zRE@#1*mjkh{ntF#PK|-a<_tq&LsN&ZbgrMrp2~hLpqiR<d068Sm@wVhX`b4jZEyg( zR{h@vi8FD`i!Ee#xRHFGz1EunnE^bx+_h<~G%lnQb0tDq)E;bRi`_N*0PD>Coup9) z@^V(z6DltJZfM(st|<~aeWc4Q*hm(NZGiLxDDjt039lIgJ3dew^*HE=18l-AAujAT zlde;fXK--e_*p%_<>VJIEWNl)wM>?mQdmJo^8b%MbewQfcKAGVOANG}{E*<=Yv?X? z#i63%LHVc@p!&6#$anj`^}`Qd!I<`yBxxiNMj*a+bRb|A9R607`BIhr@<ut<svgZ% z3LOO$)v#Qj=L|fXkPXYX&a@dTs@1(f13^jh;;^y${4<OCRxg^f0-MV`ZBTr6q)8yj z^<H%~S+7oamIrlT*X;e_fzYovKtW;YwYMgq8>mvy%k#WvUONKIU2&?m2RLUUD_zgM zJkB;}Wga%)s<Hvz8$KfE{h7*uG<p;|r2Azv>t>(+>&>+Wq6KstPgjgMtl;>(g1mrN zb0Tj}t(EiAS0s|QiEN(N+pB6m6bLM~-kvePpuxe7!qY=NI_7~K9=Y6_o<Z37p>ZQq z5>$XdB!B_bKfy0Qfl?Lz@Bz-l*-{$7yvPWr=m?{eljYl6%UjF&FnvtM=A5(kanDi% zjdV>tp7wtzy`=hUq81DBW!t0uQs)%<{9Vd!G{~k5iOw(1-+s~fDU@402tYqo4ffi| zbJe}aS;;KLKzJtLwVKfy>TzEey|0fm;^{==^gemA#C)s>6_pv6ksjbBoT~}9S012% zJR;=THwPP>WWu2(LRCAC(iIcMiLNi+OpsP8ao=SJ&LftEmu)vMy>69#u8uT!h0#as zD#6_Nnyp1y)8iDrP!W^ZF%+h-Mpa-`ko!CLCB15K@+TTO8JVsD(cu}^2b~XsLCWoS zdqlZoWz@<s1rg{gXUa($yf5kTXypNS7i@Q6V0X~QVM7pUc6t83^{UQbM^00KDSI$v ze^Oq0I2#3mo~3w6zu7y5k)a=R-%bI8r5uOE_ta<feWR+yic)=*Y1(_Vbg_dZ!d^)P zxe!?cRuxSYI0n>=*pK;mdZ)FgrIAcW1-}#}*rym*pDu^%Kfld}KFUzj6vm0tzr<+) zY*avh1J|Rzhtw%WwFuo!h#L3-B%8Hmc9g1?@#(Y5_kQ;0{UG9zu6($RrJd`H^e{tR zb??#w{cnzdS+R+PghcN9cyIK)I)n;GQ7BbKf{OMf;;bgW^!%Wr<b1dY_BU?=c}WF$ z;At&DIW^!5ng?_ZbS8iCqCti2!mQE`VQxQC-uxjAdNxvUyNcw>1#K;?E)B=grP|fd zro{gAUTmDq-5rju9#KRzFVIIFq1%1G-7S(3DRv>nhws8fh~u7#G2YJd349-S>aAWi zys*FGH^4MfzHEskUt$zK3PF*731g~d*2L`y<JD3~v`ysNG>U4VmoeH41Xv`#EtisW zFs1b_BXG{NFn%QCk&pxGAsYDY#@p_f@KLYj1D1`RsfoZOFlW7><bC<-wcigzyRlad zr6|_i;l<_U29|{emZBW2oew}Pwo{^{v#=0RSjzK>052<qn=3tS(8Sa@-{G*`5)xEg zP*zfqS5i?HenJPwef<%yjx)&*iq3z{QCw5l$lU~vAzX8sGu))G#HR3_S?;^Hxu$PR z-@P?_tMi24T!){7jUSSp6dm(z=zG7>vH-)!&0%R75t-ofys{$WQj5Tcd`nrzBk`wU zP#}na763?8jFWu7$$MOrBEA*(tA^e%JL6%?f8X)e>l+#%jwux7j=Fn&#o(W04xxZ3 zTNtQo$jFV@eTSe+VnFOO-+vI4HOO6|$qWr;g%APqDc@sZ7*h+`2n@Pepeu~pdbr}( z4~qm?eV(u&K*7d`U&}-m|2EtT0s7OduO>Kpkc*#=PmJ?frUC*rEm%PB^{hzNlfS3u zP=wHTMR;P2b$f!DmV$<sCT3U`-_{<34pmjIDLIROz9)76Z2+Jxy8T(O<ydD)nt+@5 zRm#BrRRc6AuHtio%q!|n36FKlBg5e{IXBz|IauIU^A-9(H9!gwqS6Blg2v12|8Sc@ zZ?gctrIgH8%IB2q37pU2C?~!nz==U+K3mSkS<3@70CcFPv1Cb4p|srgSRl2+b?|De zl1lqCAwALbln%%VwI`1(LO4&(@S&jM<pB2@`r{oRFF`T2tXX}CB*t$O`k+fA+5VpB zm&SXZk3SL<yaQA-#@K*R>j#OJsw02TPcMwe9{~QDD%IWd%=f>^*jSmhDYO2+_aB}{ zV7B_3xky#E;ZBTRrYo<olCLm~T>S5k|GLxT*Y&4=SXKV@0r;*^6acXQ@d;=vH8iMj z`Y#s*^O2|MKQG15zi6la{Zn7*N1mboa;Z}MMVj^RA7^4c(ggjND*@rZX=3!r%ET<3 z-0U*-O9-Kw8KXMfk!;0cQ+T}n+GUbSSu+X=7bbY{OPFoUZ{RQs1@$cu9MAr~1jXg$ z<?WGRDh{upRkIL-gjbSG9I9iKN5`~45hY+320iihxndL@+BPN_Ynp#+^!JgG5j!Wl zP6kIOC)F&aLY$SP?VX*+_CG3S1Hv6;u%rL;|M;fnM-uTidElx+yEio@tR+E12}=39 zKLuS|6u^b>&%pTl9A4di{@f7QO_ik>5+>*<P-Q3961VaxH5Cgax2+#XSA$h>%ZAI6 zk?;*vkE-V8V%dl`x(+^p!X+K21ji2We0k9B{~8xJAi~xLL>)D37FI9G+KRHWMrs{y z`mn{DIeDb;ZtlBG7dmlW*N?B>iGTPIOC%Q&$(+tdh=*6@xZYH;=wo7Pnv(pC!)ny_ zGTP7S{S?L`OmG*_fDgHiGheKm@OOKK<jz@zrh9|*v{UTFw9aZQcA5eMf!lE}SfgB* zmw@QG&*5R{QuGUAc|L~~-@G6$B^quT=ZCCS5O?`8Fwn_Ck0TuiszW14W?Hn~_3_{@ zPK=5<XxExS8j;~m(MkB+_IlDz9r5}}c*@^QKrYt_c`I#%hBp@iXtiB-5u-vn{WN&A ziEgV0QeTgB&N2E(Dcc14S8##V2F_uC001xnL1P6%#Ir^MTUvIE13meHswwF2LgK*2 zGBoINwCL?ZrSZ$o7M=~nOE!oqGZ+#=h06<VLZ1o>D5EO?r>`~8$9j?3hG4)mKj(FC z^0?`lWJ(FGH#IR1`Vh2=%OAy38xxa!eKa;z6=za8lLRINVdSUO&IY%eep+O#f3Sf2 z8vF_y9sbodGX)$xBuqPWdny{5J~z%Pa0(@+l^gyZJtrCeaC9<t*;ixVpkqjRF)XdD ze4J^pYPh=cZT*O^#p?l+r6yk?nbk@7zPbPM;+~*rfSj^t6{E}*8SS9$<`9!bzwJ)* zVo{kpjoB&P<NWzTor8eh$mHaTZ8a$JW!7mrf7F~$%6ao9IhMMw4HK#DH?S#lnWP|q z2-vH@iY|U8CUR%vAKm-70YIse`U@~o$7_?2O=PJ|)Z80AcN1nt6<P<=EcfWC52fg( z2kw(-1xd5%+${&Y7b7!$c7TF-qNNy+j0<?(H(718;fQa4(R%Q3-3Tj-bjrF22q@65 zJ2<j+(QRAv(Np8KeTv=7y>V+pAD+N!(7zk(!mLu1-Nz4P2or}$;@r>|+wOGQ-Qe}A zzOYG%)p(DgIW@UA*Ok3jzZjjEV10>oM%dTC5|P4-Ea7x^>S(HvF;}R>$48>u?)w#_ z_uZZ&e|>0b;&j;>mmiw9=OiX(=~2=p7Ea?g_8jX$MMXW!X!mq@SdOb$^j<+={8(15 zU!!vz?TEJnv<bXCTr#+<D7*=d_;lKwEzX*lI4hgq59Xs<Jm9IXL@FM#!$bKR!k!_F z1Li)(HbLMx&=ERz4^d3IB@s7$fCHVR$OYu0SDcibGPxbY-0}LGPZ;&;@{?)6j|7!z z4i4(s?)Ai=Zo_+5Bhxrv@ujVA?K|Hc(?<%(acSTe;0>lYZZBjE4$W1%^`?`gAhj~+ z#K!cuxa?5q>YhrCjf_}>MF{G@@ENs&L_RHJ#&GI|)~_nQYvryze*W>tu7D?T1)Ie$ zv&qxGLbFcF9C?yi+A~2=PjYf~rY$3*Qmqjf8L3u+CwGHFOds~8e15#j%c9nw#Z|Y; zeHD~t+xgYdqEA+6r%Z=rOnr_K0U|^n4wfh9;brg!CniQPpU0-Aj#el{$?d3Paj>(q z2cr`JO<BkLl?nWc#jtSt3vs&3WEd#HBQU-G7*Lm`U+}m&gxld$j|@3rlOA2le;{EI ztLCQT_DU{yP5br^^d;0<RfA7^9(B9M6EYxXL`;AisWDlmSA293l>T~BeN`O2mjNhx zQRHhu#>e~Kg(Bo=ZU~Ujd-}kC=X$|UZnrjFBx~~K?7iB>!LRIcz437OX2<umxD$hK zYYrAXLNxLf2w2!n2qVR{tKXvalYp|<u|)rUYzZZsg|;XS5bl6{+{U8A=^qVpP_o{L z<#Bl~O~UE%!7;VTBk?1h%Tr$BbLu*}J8`-@@NmA;f_(me85$t`2FW)uXVe>(l1U`C zMgxNkOY^<2L;q$aC3Zq+BxxkFduPBBPXj6euvbP0v~!Kw-_s!cdCnGB>TS=rCMIu6 zOwMjSh{h`d9=_Gy0rd;qMh*oRjv}TeZf=^MY;-+ETQebvyn-6>s0=(J{DZePE~iV( zBqUa<MryqCd38(Q=~)w0d!4P06DxE}xH09tZ-$yPZ*G_F5ZiHFjSqeKuP#=mwn3>P zzy1QswM#`hNMFqhQZ-;GX<_o~Any(vwF$I;G@yk@<CISeCBPsN`;m*Q$qr6O7fa#W ziY5?aA#fc@{c;Y9Vgiqt+0vzdd1;ZM*^B$+(V9LRIh`nSEGMhC7wQy6>k^-Z2G&+l z6Pgy*#|LYNEsXomjA!5{2lVctY=6XrYaBw}Jfo(fp|>^tJ}^%8AdZc_iX#q*>Wy=g zbap-uq_2U24v>?JP#~QTe-JAMbQv_Y)Xe;Tnp%LcctC{iQlN2|?R=PzlXLn9<6Cp` zcl``1uLvqa+uBI0I#++UGD^2&O1A(@mnp0m74pXkScj!TP>cHgHVqp?zSNYqU=$S< zund50TkzXAV2b4p!faN;po)^qKDcSBvsI;cN=;}?O{fI-1IG-fbETRfwS95aIoUQ6 zHrg)+avlAssl0x^_x6QyOf?;jv{3U?=#Jeh83FJ6;+!0>+e1<h9&J@iWtEeA;&|`; zZoZ#pZ0{(sG(<6vR)jf<&m*Hx9;ecKP%RAmXQAAX2^G3;GoQD7cNM}5Zb-t!15E#g z`9+~%b*PGZq6L$XQnyJ>jCbQcQD&Er+nL_&-ffW&q@$qhQCk#Jk%Ix99?cNmi#QyD zxj3FVdc*;NCVTG1r-c6$7?y{@H1dMa;Xp+YjzPo5^Ki4MiQDR7zf4b!PsxrVoxTpF z@e!vo6@IRYiMjPyI&$T_EiNcnA>fm_hy)GD`}byQq7>q|Gr4@MM`xW(jUG0I{jkG5 zBP1XUCXj0b<7*y9>F@Y!^F3;UB<Qy+%IuJ!H)_4>9^$@=bnc9PiWsS+%b6B1cfbV_ zM8iuYiNO@{bf6evUs7e!)wqoe18iP%132sFv}RNJ)DSJOrSUu5zto#)xo-zzF8z#@ z`yF402H3<NBK$t&lmICT`hmH*cuhNJdq)=sp|zw30&8Xncm8|as9V^!heNOx*1h0( z^@5Bq)rP(exO9p*K;NVh{?9a*^{un3QhdcaT6$LRj=hc$&{boIeT4LA#>o*}TS`9% zMl9L(9XLn6NiPPh%CS{VLTV%%?X+Y#fmPXtui{*x3w8c@58tDVX;%)UIx=?2)YWDQ zOrAf5HJ>Yd(od2&An=0jVF6@|G+#V#y*Xrk^$NLY9K=QI_U58AJ~1cH=4coAhiSc8 zLyb)F8OjBe0ixoM5^gV!ZqPH155R#Fh)f-T^59U|VUmeTAzg?Xj%<U|h0uK~@K?Ry zKJJdUKAdRSV7TR-iG#La3h@a8O{l-Nc07D`3uGr#o<643z+ARPGG|d)P>U(>O6Kc2 z1sK(Jr2Fk2{iRC_VxOdf2ecI`8kv1Hm)ZiYl$;eKDURB)FR^p615!r{$f1V4dA6UE zc+vhCvdrVoMZe3G7t|>PNtipmC{jZvlKW0SztoMt5QD<WR143)zRnivn=GA$OvF$G z43ct~|2~~T275k%oNhwbA;_?@?>lC9HNKt31Ub$LDx;G<$su|CKI9}!eBRr{6kX%p z4d&Jlv7lg^HOXAr1D{3zmFfMc(rN+g=K=ryj_&C~x3M1A_0ySfr4d$T58yQhJxq*E z?2WgfQdBf7hGZ@&8ut0oa6t*?Ws;Kragx^&P*~qYY^tRdxxeA!7ZMiIv!Yr%ad;-% zLI%157a>SGOT(pLMk{+|qkJ#3B!90L?OQEUl^7XLu1P^&Hru1;{yMDSV_c;8kzUu6 zejZSsdDmPYLCA3iXbwaq<aDaver!%*piMbBPrFERNCbpJc1cBXJ-};;3400`B%9Kz zNQUvnYRrE0Qt9el>F4BRLRPN0ChjtjtN}8PcpUDr(0*W1em`>MB~ESic&MtY!z)V1 z(4MT=er0Q9spA>dCZfTlKV9jq>*RFCqTjyQc5%26(AyvgD%W`D=hx=CexETM@rm|! zpYL*54)#-DdfKwR<|jV_u1&#^&R1BFnwwoz6#AWEk^{QkkfiyHax#OzVR^0a+AZe^ zR07^(eg$~UMi|7-6|tI{>`k-vTNErKqsPgD8<X5t?#`aLLZrneV1fFIi5=C)*^DLw z9K4~v=ZTD+|8x$F5%Z%U<S1=7*aP&d+UFfN4j23)W^BodbZZX;GM)q9v$}#&1dFi= z@zT@MBJFQ{#;vHD;{pR(=T9U!LeF4NO!$4SJ`4^K1FX6%68P8#wvuM*c%~pGJ7qmb zjyuiH!NKEf=JL>yV`t>N+fCpa4gf>Dmzsa&1t{F}flehBXlY(t8sQ}6vzmN3#OqtK zKOogjWK0f^SL?I^qxiVXb?g0E|1Cg*B%B0|z@oOeLTgxNa2mvyp$Y}ZWl`9+HO4HJ z>Zxi1o)T|aTPl_`l{fn}kpjy=79P{&Eyoune$7tCgMbrE8LQ24zp=LFYwv-G(IHAJ zaRcg;7@34~m8pqIcCB^z*SA*!r|bkLH>PZo39ar^w;W95h1MFI8&f%}3zWLtyX7c~ zODZaY4-Usi?%uo!a`|Oz=gjTqs1MxLkQ7l>{B}nNQ@Qyjb0^H^@A2y#pbcwah5y+! zB<NPcc?1zLjEs+Ruwna(0Equ0m|^W0U<ba(0on37KPQTk9gB-%lFPW%WRMe{X!-A6 z?yjlo5lTdN;U2mQKiaPZoJe7nf>E|2N6KWsybncqYA^{{MTj=4PMN8#FE7>-3UE9d zy77wAI(?j_N-2-HgQl6)VvmQ(aqwi==8|%9D3#fz+k=(012woQa62}hlVajxV~5k> z(87B#Fd!Q)<iCWLa0>7jiHwZYNlSBd{Gv2MMMWbfDsF64NwRCTw`-Yz@STQ+CP+fu z*rB>aqvX9=VgHWdk4sRuN%!P0_)iUF)j}x}V6cazr$1qpKo6pLUxe^biV<=)=W{~H zjziVT@!-Bc=x=?itx2~!4UHD-#Cg?fgbv6R!32H03bCjVes};rUMN8VC3);X@R2kL z6#_0726OVCU--8#|98N|-#7Sw4m(keBLm1>e(np!q$eAc&r_p3ZTXKouD-+nAK&x> zcC%+i|A0b}RHQjlRU!WuK^=m^<k^b--z}d0AOG|}ZrUp;M?C~@|Jc{y@<qxwtcO<{ z2~Z3<oI!9HMofVH?;7&=-TsEjz&!-jAdWXOfE*PY`<<sUK+z&16$zmJXRR@1<VGF2 zdPYR>XwM$6LO~#M5FHC_(O>VuCn1~mLx!A+LwZRb$Nefu{5po=<MPV_%~X>yu4%%S zi4du)4Gg64gbxoJ|Di|n$C1P$CH?q#Fn|&yeH7Ioy)AYB2MZurJ8u+;pSySdp9FW+ zSi9-|Y0*EgnW-R5`OlkwUjI9+EHkz0MdsuAN>J<3vI7s13|PQFm*UX4{kRDD*0=gk zlcCHWAK}Vz<@Bn%n<^Iv9lbt%p8N4{fhjRpmbeKPP=16YGeHdX@xw<bP|(fk?su#2 zSF+rAd6Hj$1A*%r6>z^vERqE+0Rrj^NUlJCKs_RibnI>IcLl?GA@MIOeGWob#VMe^ zUoK`RWVCxrNH_ZIWCL3cj2o0-Qq?=zgf|Y0CMSW9Q;-ah<bsz3;zwLCkA^mwhzLI_ zK6c2E97<AJN>1&Xk`_le=kZtQw0W%@Iq|tuy$L*4->n1-J|4TFzW?!u1gZZGom-zc z{50t*1b*lX<gh>k70s0%Z}1;i=IH-LkN<Or|L2Ur-^2U+(wjdcDn7fs{Nq1O{qw3S z{WvvzkEIn9@E-^4Ul$c9b^h18zrOqb3Few1_`VDn-Y_+)Jn9@8$Q>DXbaXs*bOOAJ z7>d%)&dzV%xN|eWRP1bTFNsNLrwC_}Wg>CuSnv0;Q!+5fh=^dfx41WPgPcVKoQU4l zP(3#1{lx}CITaNcADW{@&NO)mT+DkIS%VjW!hsLxAs`d^6kZciV3~`HORA6l@+4H? z)8!48fH5JeH_g8u);A21LO;_HA*i$RFa#9;`+j}f@)S0hrXbhI*zPznSGkB&+QP<k z2ha*F?{Dw_R{l1otFMpl=Y#mvU%&m%=lb&c_PFbz2M~0<tyd)=-gS1iFI-vP-`ZOE zVh3|;NRbJ3D~*+*cFUqC+}W8_B%8|Lr?0G=W|CQPu)7<guZ`})p@7bT&XE|Fd>0$_ zV;vO8z`?=7KMh(EI9ys%6o+8bmKozsj*fn*uW@j!{PqBNIwniBe@yleCUBHSL`>N% zw7Xut=B0Sa6%>=2N^wTs;o}QPRkIa>g0%tWdV~Zaf^5(d`<R02o7KLW#7lZwn&km9 z7+S}?e!z0s*xbDGt3WR;8I@=}$dmkEgI@T84mQX_NGUK_Vt>v9f!;##VSy7PG;DDD zOq(D=H5Uh*FoCB_VGLZ?0|osIevhlm85!azG3gHauIsb+^)|D`BD3ls2}d$7-uu9| zq1|UO{rJZc-R(w&fN)o*ib|5JL4Mw<=$3%XXoJuLKOctFB^sdPblDlY1JJlK{EADB z#m4#F&G}1qR_4M1AVx~c@BQI>m-+kz1707?$zJpD66R`*a?eN7*FNWLs;MuhcR{@n zpZE1G;D`aGAd>VT;e;ufeQUan{a!;tf~aWR<3QnJUqD=%fYmZOrR0?|`)i()v)PMB zei#-K?<X<UmX@W2lNGbMN&%o+c<Gc}IR?PJZC)FZ@yB<o$Z~Q7rm^WmojzW}`fVNh z)|U)u^aCRu<qi_J@Y7wt`mqu|R6ihU>?3R4<I~IQwtF4it!@1<Wzk#CWmo>3l_k_X z$#it1RwK?1Oma}nb!0&?%=&IZBW(q5-clEJo#Y<QeT|GEN$3=Pw{uZ!yboGdrKb6% z&&Q7+3#b3Lg)<pg2Bo6_#P~0J&mTc2*3!iPiJ(&hUYq9huQxu|x9nU&e(`Fah@Bzd z3xPByr7=^g05(0Wz<yQS2FT=1ZV!jkg7*7*vx?tRs?}a=y_d{6Jd&l$poTh^*e~1s zaEM5uprVqK`IMZ0dG>;Iq4i>Ob;E`jO=2hwRCUEkW2`)#1<J4jK6fAEv52wi9EP(* zBorbE`Hcn&$w8dt>IYbGbQk_$kH$+TW31u#x_91P(@K?!oe2%YNp<OX?$Ppd>lC2z zABkRNH)-JJQgn0}Bv#A|OPep2C%nfF%*NjvZ>+Zwz_}CaGBjK%|2Eg?yoxr&<+L?j zt}$GG8AX!7dZ}=8JdwiV{JeY1TU5_gbo^eV_amtQpX=Mj&{c_L0RmO!{vWhDjVwkZ z^>$D6b1!)uu6%ZY1B>Yfq#+Y_>JLY&-QoyTXkFFLM8PVN))vJw?ex=+^3Ej#Z+&_H z?2xMV(PWHxY=mVN8)&q{I)c(}SJzg+xUtHeodUXrTt;^GTI)0(vRGl^E_70UyN!EF zVp)me^YvNumL=ZaHN+eqCo`EmWhMG$TO*equk)2NpsZ~RK`T;ql->Qb=V7NvimRoL z2X9KxtlwG%f)s#;FsFYHFpa^ZWhioQKqTblhq`))k49U}SHbceFV?ct+Xet53Aa7g z19i6HR}<3}DmuOQswGX9eV({98DR)Ml9Sfczc-$TguxYT+8X<*WbxFMTY!{Rh)KdS zHnYQ*_v+$3=V>>?`c3(c8KkVYe!V{c(;1DzvjFhq@x@s@-Yuw#zh9DocTj(Dx6Dz7 zT1)AmsTvQ{+|q%8(kUB(%$1|fBZpi@;+EI!>`E=XlnGouBVpF9@QY11nVi)DhC&@# z4)^t?+6Uyou8QVSJ(#uflG@A^pQ)G(Xt+5a0_t*IcQj=wXGKP?AXfXiaS!x(;)-f$ z1Oybq7mm9PeKlc}E)-i}F$a8z0<5X>I-byw4Pf-nNZ61B5)J#&q_3}bE_}(~sh2Jk z>bUSt{A%3zS*a8kmQI4xwZ(AzQm@sU2sfqw1aWv#>1L1Tpu80>quI4~b4G~umf&-} zt=oN(9@shJKd%lOk`)7NSJ3<)2aAzet;7|__>zC!#EU^y){+>ln$j51DTy6*0@Jd& z;BmOujIQ=9I)R0a(Q~sf6hyUD`VfMRj30<-Oln?%ni8L@ZMj_K$GV?zjWV5@BF^m5 zOMbg_r-!U}g|Qt)I=7`asHAsez4!_7U^LG*d2k;5GLI2`-qaoZ60n`-TwJ^_%w1xM z3s0<Y*=NOg&@P=K{$Bs?!f)mBRYyh_HN)gSr1Q4ce!o%Kt26J~!RKcGmGSQfEGhYs z;t-w-Qq<?KsJRGwD1oTPsNInjU~&LY3Zfp5V~W^mI9|dN>X;nA!LooO0ar-38os@? z4RWxBV`3TAds>2i02l9br=%D)@&-EEbDjyG!)FODzZg`{+sU`C!qr>6Z%B(&g$+l) z8oaYvXp9OQ8{!MbW4x+RjV;ZipkgC7Z9J^`ZSPiSwA_w!%az1#W9QC|oWKA|tFBRq z-44G?0slpsI4-Hq@T}*FNbe`3CK=1wAullJ1;3drcDzHzt59ApsKWB@tf6wp0MgI$ z>8vb1=r(FsM<@9AbZ}2$ADvq2eGgZz8(0ADX3G8vg+ci~HDKNTl?M|fEF|6cwq~*I zAw;!|jszR5!kq74LO`jsh`4-%!vQ9Q?}?ufAm?FOUKXc@`Dr?&>wdn%u3VIxyB4#W z4+j^Nx#9xK_vN%*vZR+*3n~IWB$_>MxCQp}wdd)Y{W#**)`<oHj38IUEjX#U#B83o zpsG<3@t4o$bXHD*B5SkT#{CB-o*0PgkOJq%Fmd3eP_IH#<g5Nd&Tl>66p~m$fas6i zQ5PnRI6(oE&+UItKJia@zvT!gB>I)F=yDK4r54+6$c)bv->QqHzIw*%=?U10Ay#0V zrlnpjw4I1k2c6Igg=F04mo>*o=e<yth|ItvB@LDC2LKiz>-_*>ORay#VNP=o1b=|! zHLuZH_vg>{FIxH<!!^J-YkJ;QNn#>AJ;5udlkPQB2AYcJB#c>4T!(cVR#ta{!}3SH zJ3~o9R*%i-sT;uR3NM!n>Z~^S|2c(#kr2Fk0^p{J9Bta%(t=_AB4^QtUWIf@<C$NY zQza@g-btX)_d`S~27ZPw$oXO%0&&L-UXM^|QD^6cJk#cLQsuqNRN&bGhzk)BRf5`L zE3B3{H0B!e`2@dWFugr@HzJpi0GH2kygPQ_34_5#dcZ^3yiQo$!+P(=iRrNZwax^I zv+=JlRtlk!qx3jP8n^XXbd(M1zZE#`8hg?_qP%gr`idKB@XJ*%!y%80;IB(i4EnL* zZB`amR!q4#cnqtp^$-aHFV#Tr*PLVYJ`LlAo1go}HWF)##%<Yr_Wjq}@1PZrD6dt4 zV^`E7Fb0_KWnK<2;b9WAdQCl1#a!OK@!5I3N{j-LS;5A#lTJxcy1r{Q;`TZp1v`|| zOxNm>$$;+Z@fnZmfONIQ%Ma}hwnK>Yd9gm7HPzL&gf~kuafL=|yZ_Nh*hergs3w3@ zA|(E7^9YD&^wCEEj|JGIO&S|dCE`Os=wl55a#f_M^(p+O26n?j)b5$YO6Z*;#b{E1 z@%b1KOc%zda(f&BvtMX<gpQC544~GJG>lHlY&=FiHMn8ag2hRj1;2g>b0UY=c_)_q zQi5-q2ii(5Aq67;GN;VNW?y*aA%bc(m>@2De1ZRTA$X-jzaL)Eg%Tb4@&t;sshLPs zxKg`{r?MGb0*_y`RZ(!dq4RLI_N^}$n!la395?vFEN-+f+E}|dC(X9G*_gZ#q_fLD zeR+M_s4e8@>i)&S>o<*KuP;!d|58`I#9m)nX*+bgZoK#;e~E%JXM_0-`Ia{(DEJ^p zaXVPXrr^hz)U93-Q1;FwZI6Z3U0DU&8K~=HYAy3jZ*_G#3~^*1N4~s&H{@@uJW)ee z(9+UE{|aAFNs1ceveyF2Ze=Ea2~GpJh#w`jJ4H2#{Yw{g2;_kn!hd}UMS}^%nkt=2 zRR0GH0H*;;5f}=bLeo>%hnSGAcbITwyM6UnOGhdjdaZ6UxkRFk@~PYkRP-Di7mc$P zN<Ap6UoO5XneWurW@}g5r=6n2_5IlQlHm6_A|HJMZS!h_889QqxZ9#JYgfs)Y`kss zxZX7`;>RRij`#g~kjwjZ$lmKdmh6AGiJa<e4KenGme$PvJoj@xyAKGk&>ll_M3^Ij znMY|G@Dw;=utCgezfO{gNHH4^mh33dAdvn@qDhxh>xz<+oPv@#eZ}b1)Y$0g)2*5d z(}Rla`rJ96OV<nQG?XCJ$$K?ByQ4e6c6Ryn4yDn44-XUDi*J62WOimoo&BZ1Rc1y; z#&beEOgvIdJiMc!F^1R7>9;WZ0-nd)wXXg%m3(O_uj}gSevVB{jE?pX3<P$uLue*X z?t%{lys<{UR(-KvJ^!&0b@KeO#*&!V{v{PvL<o`2GwKnlk&To^P_+v<#bqJkYw__> z87)Mw3mGI$csuht044hM`M&%=BLl`L)_MgIgNBA$Bq$?2ojC?=R6SjtDJ=*MgWt)k z%CL_Y*cA%ssSTDOYqha_CkG}bIX#D|(#7OB%J=%t6MI$?k<Ui+RCvV1#L5X?zN#Tp zbYD6|L@>iN=#Z}4<E}KHN1|Zex8V!Dv|OmuX0*zBWRWu-ou-N0t|1Yteb22F3T9IY z$38KiHx1w>P!)tuKQK4n+TjQ{z~Kw2`AEW7`XL9VVp?2qDQec`xn7&|D?Yve1Y~Gk zaM)wIc+nM=xdiIkvF#K!R4k_I)NbmSCdS86P900sYv~yorKP0&a`wUQV!Pka?xE0a z0LqZlc<R_$UsD*1Nl6s}Qh2=I`L-Cv#l<w#)V;J+UxULUB4}2i@NI>l1F^U}xrQqm z8ZH^8Y%+KqvQ|i!CyIY@s=2&)@pEcoLP}B=<=y=o3Qj6E0euuN_x3YabZv1Fk+gVt zPtsNNA6?Hs1q(2u`+y_2B56Z8*59+QSZC=5Uo}px{~*8+;j!;y426x1u(0ED4Tz)+ z+=?}|f6b^Nqu`j>GEUDZj?CpM!BF^1D5PT=ob4_oOfimVmzY^t45sjv$;p^b>nrB; zTlf?e6`k+Tlm*Ld$Y|JD&$YZ_5y(JTpG><EfjckKErHA6EiyM3)im6leL;5EJj>uh zK^US9SpUqsfBIEd-*RJrXxNSR^SU|PvID6MVCTli$BzpWIXv;Y*@r<y3>AF}bb@!L z7#&Kj6)rzX=qtDk6lTF(pYyt%cLvE!g;qN6^8c(7AwoSnMtp@~@~UFJWGbBW<;cjS z9;b~s2+u6}=3Z#n+av9=g#7%9EZ=9B6D;!L_~%HR%RV1Pc3)o~m(%Z+?5kIyYg}C1 zvgt2=HJZP}#WfykT+sKr*cG5~k81-bN5o@0D!V`jzIGH;)O>kDWc*Ki%@-P_lsbBP z-j~t$K-;IjOg+ef`KjYF_Pht#HfObMKd;A8>~NWi{h=GmkAU@#<M_nfHKSr)DXBhC z|NHcBGX)8cJ<zYNPB;escMqA-rw^E_(Xnlvxz)TtZ=Af-{Z{mH8Rp4TKthi&!zQ62 z(H!KUQeN{G`C!2(FeLLm?#_>mk4hs#Lg$I8sl?q?L+RW`mPV3+wH60i?Q79Sjwr<i z<nF59dYbg+-&nn2ciH+?<xwwRT9GV2QIrbU6REP5)YbXDEEfxx1Fj_C&BKt8qTN=T zaG`%E;`yf?0KpiF^Qm7|UMVL9XeUu<)t@AEMZDHWVRzJ7f>31wW1~Mip5Njsd+W7% z-)z+s!hEZ>ncW_WJZW`z4B8}H<vX}jD=QxSgj#~WyU<zCSM6J_(@wqB!Lxk(rp9n2 z;iPvN#y%3w{|!5F)b3)HC!iZme#C$dgl<nHw-Gj4+u0z$Fs*G&J<d8qgHBAq??S(N z6=#()sRwx6Ra62(erK7vSS>G~JoC{cy|3iGHE_F(t2_SN;6^v7ZXf6ynh7B&Nh7=w zHaN}Aks;V(L?3V67jV^Sz%x-uZ)DQu)!3{Yd{wU@T>oTyv@yUR`XXR02pE5HngFuJ zpfQO;_i5!lmO=->Xrcc=o)fe)KXf<mL04B>OI?AI4Np5w2Z2nMsFX;p!T|@cVp)~M zFwjSrih<$gd_Gw8DTeHPtrg!xU98TT;}!)2WwY(pd#MO?T0~%RfD4P4=S3^(VBmrD zQjbvE4Oq$Y;^LPc_b(~pftZy1Galh?(hot8XK{+;Wf6ErUCv;qe*FuLlu0J$G`>ln z!_8Ba<>rckfq^F1bvR3I3WE3Vi{URUv2As}W(8d5<>&7$xO@&-`u2mvxlZlMDEcSn z{nVYB(nnha&vgDaeW0pb!L?kC=(jC3_B(9!)AeAAOC?YL{lK>k*1!9+>-eysq$Dmr z6=i*7Vx(NtOX;8e%%{E0r%x5wlNEDFZb1n$3k7>_C2yTt37gI2X9Q|~{^hO$7E#S? zHo@JA08?7?UWE)=3e8qS%z5dYFE>Aa^&9T=u=|TzG;sTD5z=F0jFG%<cwm@nrj6Q9 zWAj!``^63$istWuPHJjof`!SL%8{cMZX!wt^e>Y6-eDDS-n-ul7H(~y&5CLg5^k4# zV!^p}eaD~xmVIv|seB+72{v*JxiYC|+m&0}gQV!s#&@&dPE76OA9n8jv58-EVh*0A zxP%yejUjV&jDG3Xxd~X3urLFIj)=U~vL!C{FA`6mFaI{l55BO%r{b3M3*Q)*0y$8} z$0u>Iu~Ked|Fes7U|9VB-r*ADsqgtUv#zm9m)xBXgafHh$@~EpR<Y1RDO_auPVU0B z@AnQz`-NUcNG13Mh~s4#bU1P=pUqqw;587TDh11xqdZlw&b1sv4(mA|ZjlE!4}kLE z&nPLLaal$uB_S3u0-AIt>90;BElJ`Z;J`eyt^M+XR+zrV^>xZSTG99Xn{REJ-R>Y+ zvwSW)qge_p_!R!pKM$9p6)B#8XfU0cWAux6VR1cCG!&AOYa9(^q|3Kun%oLNvP3mJ z;`u9`?hZ^qPK@xkH}z<+lu=*;jSF;BJ_&1Z@;f<Ump7BvYuFqgABQMjvORBcyWz*g zQypj4dJ!ICIohDq8T5Q~>=h}$Gj;5m=KTG1$NYKSgydGo{qgl-QpnpQe=Q1UtAfHp zPK!5U??t~aMryl+RwnasY|S?FV507RJnD3Ix$2pxq<9$?&%`N_&hJ1;p;`U*HL;lJ z(;s+)wRP2G6t2MhU~-6v1kAjmi5s<;$WEerP8(zM1u@E&e+j0}Qg3@PhmM}!X@C4< z2pK=Q-#=3qJQdZq7lNA3&u~AI%wlDAclUVRA1B18|CB>FHZp2*+3B{}KS`_ztyE`D zWBFuvUs}e*^Tk3eaOJ!|O%g>^@M7;*X?C`3;PFw7i~Pq!RAS)m%zm*Gp?H~CPGWIr zCh(?8R9xKW;V2FP)_ElvH#~&%bbDb!aa#Nh$RMCL-kC_LhlLeJ(~<rx@WE`nk`yzt zxVXQw@l^;ydMk#HZ>0?jewKn2d8aBH|KP|W!iLSZC^--E`Uy6H5Ea#1WZ{4FDJQ^# z<hwV-o3rH1%y0>7w7fPS|Jpqrvcp&y@d08^fg>k}ia?6NYR<4*yx``Ji;IidH+{N@ zq?aO(@#rKWh;sF43I)3U^j*kZ!KVI<nx(FS{f+_+3F(+AEd?tp#8nbuxiRIC2z4Nd zD=0)Ht_Kwt7bm2$?fN?Wjt!sMY`n7(5fd*1FVHpc#K7b|#p!0$+0G>1dOhRxH@bgK zpji87WQ;1P+f$hCX7#k?ERyuC?kDP-9p{%3hZn+u*Jg$GxbB)S<p%?;Ac?WD*Mls+ zlD<KWNe(qVqE9p0E-?&**zz3U$+e5@-%sXZ7F~*(GySUcD;!+XWVe8<EpIPhWmQ&2 z$0zvvLo2;be&=*ktX3MzSy)Jy==?=My|J;;zyMR!vzTXEOABdH&McC!lcR6&$FPEo z%mz0ym@(W=W+I}BWnrk8c+RY0|8iGziQy1_#79KPMp+BLJ`9TpJHOx7E*1*}RZQFK zJarpd71!H?JQR#alM+PFHjzofq7_pTNSV_@%>c$2T1oc0D2sfJGci?GE~2cANlNTf zV&cZ~vRL3mr8fx$e<Tq*nXuIG_rr7g`9_v77XC$`LiZG8k9$z?GbJO>&_!ZhQig;m zpi00~K$BQmfzhNW?WSU88U@p0xH0Ll?6nXsrto}dXx~46#beXyKRoHI?kO-{&`*FY z!Q=J<3JG#yfX0G(hE&mb|70<=k}#x}pHTD7XY4FjuUlEFOb?D2=s<#`q@$zGdY&S! zu9%Pn2bGvNBA=QwI<nlZu0-j!-@l(A*$uhe+}bWID#CjFJJJ5I3?DK~p^cAwA(vk; z>ZYV&VckHI&gW@P3Vt+-=jf9ZY=Q%Qee0<q5}ZEgb!uR~nIkjwD^~y8VJ+c_n}7eO z+5|DcP1WY=L!EbV*>`ePQ-JvSDzaI^!~_ph8ht@&prOGvOB-KkzDmW(gF;<6>Kvb# zSh`zILYwHE1yjgY@)@R(lZQ5i`d~5}ugfx0QKk1&SZsrdG8Gwl`Hvw9RWSxXhcT4h zDM+8?VV$a6Mw*zI7+RZ1cf(V#4W^~6{r+7{$52vS+{rGgrKKgOCYB%st7zV%!+x28 z<iHH`6d|->M!if}G^e0IrW@(e#Q2w1R7i-DouVs(E>}Zyb91u|4*M8dTm7QGx*Eeh zGqC0M_V6$S=(ea}$3b4J8@4}4zj6)B$v_3^7|YE>o{52SLUOFEto}FbLI_#XNC%YJ zT{pn!N)du7Cp5gT8;FeYK|=KU8kQ3Y@14i#DHmo~OqS4C53fhq4Y}$%ix|b(NGBWu z$a-4Vl2cNO35jZJE3AFUqBv!d?jGq3jZ7+v7BP`VR5H}fj_~dc4-KuVT*f}?t#P{o z1Qn4c8gjXC+BzhBm2r~rOiar>2zi3Hu_3sm%buzwkXr<Q9E8`{z}7sZXJ==>qa8|b zwT0b&9v&WE6e=w(4ZQPk{DJqX$(Y!4i*D8nO*bVK0;O@u(C9E=n!I^!!)<lUdA}HO zzAIqA)sG6{GZQ>8kLx|@M-1AX_i+_Al(JcqK;L()#6L-d&I$^WXgVd8%?n1`uXkRL z1>ptL0WDcMzxo$3WPyt7{uh|6o&V~aDfvAP%Y~Q>eL?AikvLQTrw9h?!+I?g!dnYv zuQD=#@9^{Ox4SaaGB~DC%@K5|JXjGt1m1tJ0Cd4D1I)S!Q7f$Oe!(x35HfbANCX)r zA)(Fl_?D2DM#*d#d0rFyUcncnoYLJ8{pkfV5n<6V;>7-o%nVV@bLR=k^}KSLZKw>- zCTl!2&|M+kSITN#P~^f0cMhPAz;r<G^d81zaSE6n{g!q#0#<{`(@>yRd1t|ZamoGK zVqpb7N@pe?q%e72@1nBUWY{#<+pLZ8xSW_oy6o}`=CSBDaygB15)crSbG7n&=l2%Z ze|eFZ{ziA1n9G}nhldEOGA8Rf1$0f2|3!>_@C9Zd1_T!c;}eXPRhc?dY6jRa^WdL! zg01m^eO4P?A&UokZz6{wqcO{%Q)5;51q%yHlw@S|&lg8<2xn)as2IxVteqo2G1%QZ zq_kziRgEgcLo1Px0uh&GB<-c8-@i}(^ob_s#U;-nMQ3#lt`D;CR#thrxM)skuIQiT zFg_tVuU`x?MBAhQM|^Ku1^rA5C$Lp;f3bn7rv<(OfPoNCb_ULM;ftrI9rxzaAKdHq zr@ORDerz|+?)Y`}EHrq2&}iQT5K?vZm&`U#ppPW7XVrB*r~LpBRbTm&2Z#naF}FPh zJy+0+;P{>}UGVe)|MB!u>GRD9_+%)EsOSi{);1T3S-;bHy@Uc+);7PkYroD~{isaG z%NrY#P+pFPDQA*@_(YgJ#-fX>sJQqmc7ko0Zk`Y*V=Q9qq@b{n<`?|@iFp*!+R#!K z!a_|Q<3aWNC_pZ28FMJOIJt0{4;Po!1u+~$Sn`_B^S1f*`Pzt=oOfi4?cw*(!P#@g zEdYfcS4?|tEIX}T5?osW!aY;jG_b?SsX7h-t-H+q&&m5c__hbjt9tWp>feN!_R3p> z3s2LU(Hqrw@o;eFd=BG{W2{A!RjaCwJyn!>jg5O)^0@14L==>Id#-`SfIpyI33?p* zST->9Q2<2&q~IzlL0byPfUxBjCNL-{NC6N!3ooC%73%vwK$Rfo{^9e^<ocQzi2*AE zLpXvA783&EyE*o<z(7%DR$~*ScD_8hnLz*Q>OgcQY`ZU2B6$F3dk&$9x}-a2rNjir zsS%(jo1ZnW%ltYH7K8vZ#ChkQoQe9U;;^vnZ0NbVOI{BVC#JM=-IAUeZ1^IBY!sB! zWvln^uYr$O)CdC1*p-GCpt6YJ(@<if>BIf~uX#!?>LBT<G8J$v@MnS<zXe85D6KlR zw6v(G3itpKX6>3t$Wgwy$w|q!_e}DK9cO3v&+>JF#j}!b42g(9Lq)IHTKoRMgTrfa zhl1wkW6-<I5{x1213E`&$qVd^xk$jI250*V*AI~l={Jf0F&jYSZz-;0Y=_dzg$1|a zz<F=f&xaIq6<%2kNkFC?LAMe@M~8u^SoB?OElDeZ)-yIPPJ~LKyRdP(cUt83aUKjT zil1FFXxY_YiUOx{J#(na_$1#^g2e%!QNQJ_Ge|04(#G=iYIarsS>>_Vc9J~?{?FX^ zPUeGYL}R$kRaJJLlkbepl`5>u0BD9-!?O=c$ZE|eQkjPLc-n8kdGjR7<hiZQywBz( zNMP3V*@MSz?)rf8jL-0e1&N)fr@uo=?DaZ1%nh^N3yZ0RE|Ak284<QW+uVE2{-aQ9 z|9}_R$*aMs40nt7hI2(Cv((6@!`fe<x6_J3qxN;Gs;aU_({unWXuM<a{mfY8nULM_ zsayH5jQ6Pf-DnY^{6t1`YdWVBn!y$<pFsQ9a&byXSy|coRq_!nh~q(Jge1F~Ejmx4 z+8>_=ffJSD7C5R$kg!KckA<7PFZ5{jItOR8#&C7TSy6TM$-WT-kXK6btCq&6e{gWV z!D%Xwful$Q2Y3yI92p!Q$>krNH}+u)d6{*&trw4<gKbg&kYD(a{}_2e0z()V7L1}C zdg4$gEP@YQ@GSz;?=j5H)q>$r#W$QBBRAT#Ks>Y%)<C^(92P;0AX`?rS$ubo@rSIl zv%HcLW)Wk5e%a?jCWMJfSc91kN@8%Z!D@a`XOfbVI=j9k7zMx&eAKgwtgM9=t<_IV zsh~p6#M0<;iv8=nTldc==34}ZIBDtWBZWeIbtt7>#G0C)PxQ4bNaqW~bUTSD!^#Zt zN#RJFKY5-7Buf;U=9&tXZN?Lv=(l)w-A_?cfT1|*+&jCU*VdGH$SYA<W*7})C#ukC zRy(#sk|BK!oF72EMWgC68ZIi<o670MPs>rCnHjw^-2)pG)Y8MtY?P#?qa%9<xQ5e( zX_3OirtxxdaUasvR8KwdS|!B+DZ59M$*{h(fRIq<M#%xl)gDUYRc+U^a>vv>nG5=H zAaFasL29W0R4RMrk{iwEr9XAz0Fdw+dqLt)Kl@`8D}ob+_4atVxv@DZA)e5ml`>KM zah)64T3$gXh+sY%;WeI}N#1)QI;XRdY__ldw73*ca9yHn`o|l>;wP3NEBZ=m-=0AA zgPjq$dC}7ZgoKutHf|s<c`JYK@Wt&?3_}aq{1>~f!5s}C_j;%mP+GbhVi4duh<Z!v z_<N4}+DfiqJFvo9m%CKAJ%|wVHgpHMu+Mleb9W{@@wB4(O}%A#S(#W~)-Rl5maR9s zPVBY6YEv`4u_2}gs4v#bdT$=%t+Ta3CoFJJ?|qx(>q28<MpkKuvn`xJ0oC?oc>;hm zxL9<W@@YPjXTEI~nrAam&l<%pq8F9*%3E9CIN))`X=CYvQ&Lh3jZ&aXN>Ahfb#pEi zq+>qTCv|+KwM}Twbtb>_^`7$soMlk^i$6GB+PFUNxIqB_gbRf`pbXp$&*8j3$CExq zD3D(vCA&S`3b&=~F*hr$x0+w6n8CrN9*r_?jP7I>pAZeHkfex(PeDjWmim^PTPO*M zDc!B!G*ngk5(yXe?G%PJmW{U)SYPrgkBwz^yI;h`>iETkd&O#M>Pl#6h<R{P!Ph^5 z64CyAW0BZNer|kNcsNiOZ#DQa6d$kpJ`Aj@ly<L&(UD2(iO!_$GPLvo-Hhf&$34;E z)^DRMIu)eA+RWBo{JaaM_NtvI(mna^m!>Mf%35W&N;7zRhV09xswOgMv-4@l(kG^P zVsENI0<~b<B%j74zvs|-@R|w4JykydCOhJV_W#A#TSZkFZGWI5-QC>+DkUu-4I)T) zh)9=G(jaUa>F)0CM!LJZyE`QA;&{#-<9{FSlMmw9xWDzyHRrFUSH373D)KRxvC>zC zv*Qq{0Drku8YqF}pi3@`gvbE`X6R(bJch3@xch<I!$e$$wLw7xW<NvZ*RvIhK7=bO zG(RC&7h0m52tNG*N)?6M&5ey}ORez=XZ*Ipx69@F$Ez7RJ5{*Ix9XU}QH0MY7qo{E zxlXD*1b#^z01?p%{~}iCDY2}bMObVx2AB}6KdMspTbOgl3njT=B~cTh*tj_QHVhvv zM6TGZNQ{1~kxU6UH-WJCm|PkLd!A}{tC+!{srO$5IDVe)B6w!YwJvv$htku`NoUqS z7aQGhFPU;Lf`XtWWJ4A1)*h;UKCL3h6ledZ<v}}~r<BySDdecGITFYmmzzGg%Fnd$ z&CV8Y;H0(dkb9C0DTXopoFW=R1?6tpKDT*MxX*QL{SZhzUF0#$_jTtFNI2u2nQx8! zoFZMH<JEUGNUSn0^QrLln`%o95k|D_?B87>q?GL>hP5EzjKAUONT_=|fjlbp?;5mR zmh|KvmLcu&{p|SOWRVz#upd`r2u5Sb^F64P_Qj+0eOy8uXQ6Hk!scp(Q6e_z=Tn}0 zB;n<<8|*CfPZz3luSsi>DOa2^Fbe?p6OM$O%oi0Eg~*7?G3o|I;az0S#QN_ro`NEN z>GBlzk&nwltHOsm%7>`Q&DF_vUyF@x+_~g4U{zigvor7*jE-?M!3Uif?pmQX!;$ed z`r4IJ3Cz`4AXW`1-E9_dDG}qGoRl#w25L+Xk?t%z-ML(5IY$DxY;mCuaer<_WYo<0 z=qliRSm?LSG1=QfMXHSST|;u<l`gF=|B{4Eod42}VzgL>X{rW{CAPe;ayJ5p@l#4J zI&>DF2)v+!A)qHl6h=7pxW)u$r7?s8!bk*KrV27o?@ez0H9U&@wFeG5&fv)8EN{n$ z`j`A_xdjE-G^`+tSQMtY`BAj+{vKLVEW238k*F~m)ozq1D@z}_t=wCJ`x#CW2lEh! zkW;z?peJDAE(+JyzCQgSS0XaKh9T+OImb`2<c9}DQbh90epv#pv(d$ZXXdZ<!*2^P z%H+M9*bs0~V#^-2h*qI!a(=WV1x9q~9BQfzqIVXmEmE3Os)mNWwJo75B$+SvJZBkA zTO8ao#__fc&2Kk1H}x<Tgb0YAMkl&@Mm%Kk?}^l)nia>f2YCcaEUFkm_v7&AKV|7Z zS12kPp7IcgYi_WAP@#14xj08h0j<>^vVGBFc@d$D@0gVpit@Zw`oRRR#Y6}gd!!dn ztt<?rL|697B|G*KtUA#!^7Ha(FeqC^7~eZ$=TYj?d1D&jd;-kmCpp5lf0t?rIKatZ z^#RuDDWbMB+QDp7L6XH}<wX!6RPNv--<#B!FDZ#_9{;{cscnu0G0%(K(C<v;tR@4z zL0!#^bh@^!v#rXszX2{-FSrZ;-+}JiyJ9k|T<jKdC1^=J{+o`kL;Q#1*Rip7d?;{W zgDJPi+1*qh@ob3SO64cNy3r?A^xBV6oa(b28fId4)uqG~R)9UG{!f7x&i&e2pupqx z_tks;k(OnKD1c3e5cA)MFcdTU$-$sw#K#k0>e=m1Sk7lx!JNXKs)~p}PwB=*_3?#V zi@F2^1PD~zALUU2StKHAAce4cv%}G!$EIFEaiHT({^?CNa3&!q*}pZ2z{unPp#}r= zTGcbXL2Yw)Al7y;dDyXgZcgZQy;E&J8QxOd{kPzFpiX*6Lt9xnih~L7dUsP8G6q~{ z?1~XRxyF*t%})f_#6OQ)_3MYqR6~j<zDVL|lUndv=<83m)iI=SAdfXQru`B~+HyJZ z_zL8r;VpUvl-|rlqTkH-U%$p_=S4g}A8R^;c>B()J)I&C0lymns~cBcA>h_m+g<~8 zfyM${`j0EJueCf*M%RrBq1sB8@4>((wL1xX$wjnO<jMsz7<!#uNQBpSIe#*|MxcZp z#_sMrb7T+WMM)NxoyH!9ROOWO)mm^ljfu`blNDQATLTv{)URcKxtA?Z6l>AZ(P%(e zCm$WvDNr{1-};LG-mXxiIyFanTjFzypyS<pZknJsUUhZ5x(Tiyyw}rd3xH%Gw+6gg zfEU2dl4i}VIb0pP1>UNOzT*XF+v7)Sr?(Rv6^7Z)HPizib#Ayt-*J$TroK>mvxk3N z@@v`az`S70hMeEAYwjH+s&L@gw<dC;cO-TEe^`LhRI%|_?}uh;roRnH31s4dR2M&A zaRQcj6xvn0&OX7e^wkW)bn!AJ0%ZsBk_0#S){>t`u27t|7kalgmUEJyRq0vtCbZ9Q zS*Se?4e2K40dI<(cJX?U+ix--iJT%R_&4p2)!sz@>gw$;g#E1~_%$R9fR=bDeFyix zQTKg;Z-E5|G3HB%kmy4FHK8#79TONl7?|?@{A8e|H85~sV1HEhWEl7v<i5MxH(?9! ztU1Nn&P4vN2215?=HN8~6FVUm(b4YZs(-;eP?6@v5Ay#Fp`p(yRIiI2UXz>NecCrc zBKs0dy7cDGL!`;MUJkcmWn=ezl$G}SbdDnl=x)_)rV3Xj-5V}$_wWgEEeuVChfzUk zxCDK?nQ<;LG2tax<Z9&}2UMk877HT}N%WWYM{Sz`!$}v{K0`;)YH(vJft3kD^>Tw# z-1YcFZp#XE9nDWSy=Dxvx}<}f+xUNSJciqNr+ZGWS3ds|d~`T-Vags-s&B9ra9%}< zay!}CjXRG4{`L>CMarD!OS{YmHf+K>DWGJl{CjmJ<MljB?|b|E0k09Zm(f^B*3b-w zq3=?6c`VQvjEs!-w;XC^6tCY5;Nonk|NVfkWp3^wBm`w&GpJiZ_Zy9rUkqY*+`2wH zPH$pjf;F0%nb}7DI&URk8C$>w6kU-=De%yqI@cxSzJpcskZr%%%&e?&L6m|1VPE`h zj2#z1!{vm-Bb*{gfZn!)o{Ei;V#V1BfQjOGN}ZghYQuAVFLeM-edhA?<HYY&Y4PaL z868*%dvdJ20O_++85Px8WA%8l7O(jEbB&#}5tWCjvPB{ZY4a`Hl*sfRmbkYSS9Riv zMS*TgvTtxQ%|Ka(;jm`CbGNuYwYaOX^~b)T*}xq`RDB6lYR}n|<+EmJ2|5}&%r1(} zM+@Go!d)ePF0ScmL5$|*Q;oi{G0$3Oxn2IhXk59f5<sn=ya~274d#eAW9w7b<3|7m zmka?PR&@Gy+fnMcYVp$Ea*o6#BWJ0u{UQIxK7I1&IPp{opW6Y5@|VRnR1AqS<0RvE zgS(=hkP(S`Cxk$`bRy6OrZdolVT5ZC<cA^gH~hqW`{8D%m!0tg0mhAXZCEad0B+?> zW^q4B{bFIzyPd=9@<)4lzPko+T`;FAHI{GuN=CG$BJticw(1WCWS#pP+aK_}vL(#) zeTAyi<k~F6{V{CbZ#*jDRm&%cku5-zfI?8DW5YR=C5A{t857L|2`c0}sI-zn0IBTy z94C`?d1;%%-<<VmW=xyAF*!Q*@uMu|06B}dgs6tP#)-yoi0&Zi3m2>S76;mr#FIhE zKVXC_Y|mn}H#wOc$Rds@+t?n8KV#?KK(ujjDhWwRBb#bn!fOr`nxyAn!kUN<Cgg}j z=xSRy*hyOi`%C+W3|)jgN)V3)Bb9U-Y!6{H*ZWJt`VD%Hi|2WNn*V%UQ)YbV+}6z4 zA|3ejyPY~cm4;|<uaP&hqNZT$ykO4}q_sRth*eZTkM8zxFYxJy<y5Q=-d-LEMtH&Z za!*qa>7X!Z;1d;E;MQPJaB$P#f+zkPj}uRrd&J!H#j?L2dVQmws}z8d8$qvkOpQR9 z=Pkl31xqghzq;or=zf~!c0+CZlnw}b+N_COJy)vN_0mus$P?3Cpd0jCY1`a4A9l&w zJRdv;Qtiw&FNqIR#fQ?cWSWBRSCmi5pt<*Bn@jmloqu+=Tfv1XG|4!XsnGuK#?KH( z-J4a@RM>@dWFjgW>Nfm<H+6=7=?*08-uaWX1KoC0r*Yg5_k_ZLYM7QaM>i?bcsD*d zx;21^+YI98%$EvTFFCom@ELVhfzqY`IRpc2d0u^Dm;r^;VeLd`YT1d1kSK_Z^;>uJ zlbSSbd$`ZbN`REOCB($wlVHJB)t9bBO6fa1qydnbfst{{DsA9oBs?lfCWeG<#0D7| zISq-})GiGr{YmufIwv%2w*JTE4QqQER$Tnc1RR0CdHR1rkrpy)$1KMbHV20q{=bJ> z)`2!0PZ(zJ)daH>89!#WyF9-(>75&M?bMriOg%jhISkVI8agVEoRrS~>F9iVaTP$L z^s5x-kpE@momx$m-d}#N1%SEz=^`1(<=SRKVWBw{U5NL?F7(KVT#h(L?!w8xYGQm; zXkuHm#)n>V8>q@@HC`nh0`&}}o_`|X3aHu&L!A&77Z<}u1X>`gqXmc^Qc6jvT${*W z`yg^Y&!Vju(}wR)S6O>#_L-4H9ECqG+j?u5$+ZRC?{C*NL)DtUB?G0%{<eYh-CT<^ zGRFzl{zs5iVr85<yk7#Cpyj3?Y0^3NpsTcQ=?eP_yQy2_lo!x<EO0nD_zC@RajMXS zno6J)3ZFUl@OG=WolkY;+{w8KGOSZ0`(_H=><0b4DHY@+@-el`f6pHSL_6ps7>kmC z^PX8$X$!O#pzVc6ygW|_vpo_k)fWJYt_pm#LzdGZ7j%SoL&vJ`MNWvFsr`$d3>t7D znh!EEQLN%@Q6BEf$_9+)nyxd<37`d-)bynILj5_O^Li#tJBt+cEf?2MfLlRD84qks z6(xp{2+BafzTGB<h^~MF^sdh-u8l2jUeHQOzkZCg{Xnv!r0f#<+mS9)ux0y`JS!?9 z!sfK^H!HO-Mp&y2JAd^r3?hzPiASh^-P_j*5atBfM4;F}2^mkcS<S9Co%LMe*S;x) zYJT-_@gzyJz7f{sY2*|BI$6+csn8@%Z*_E(^<=YWU|<3W>CUInmAmfy!8UIvEAr*Y z$ce}arRp~)3x{?KC72mSMX%NNHGhSNkL}?GZVe}qVVqF&@y*Z8VKM6I@w$+2R1g*@ zSIyR#A*Y<7kj>OsrH}~;wT`lu$zh_n$K0v(Un+ih!_rt=44)sugMWM9Y1F=zbRwmw zFrNDIuJ3mJBI1*t-s+}V%}!!4+7*}v9wFD5#Q^OYd?r*Rk-!1g0NxKyi-kWx+oJH1 zT+lhC;k!42Sgm0o=yd^|_N-$>*aX5UknK*p2Jr1(pmMiKf<=EDL}Z$utkFbcif}4o zND{_6+BMgwUMPr$MGbmcfW;@`+Se!uxZJVXO|=yftL__{A=gT3XxuG$GpR|mM;msE ziFtkl`WYW!yMON!J{I^pu;s`3b2shZ13o*tNTZu66#aAh#cH2Rp4sC^_KZc-XAarG z_|KT>c>V3xp|f8p8i~MCgOO@0`g<MO<hl={6gQG6xJ3W3Cx_X2<p#UU15NajKYz%f zmc85_QKm*mee%2VmCZG3Om$Z8=;h=>ecM#AExv4l8kW)^$A&afuDrkO=$5ORgXi+o zqXeQuE;v3b{(I#SoAriGr6u`<ROve`$UY!FfEc%&sdAWc1H;-q!dH|Rc;qQ8#xvYA z$0{m#$;W~M&ZkJ(a<eOvJ7abH;I2e-AYTRF{`35qi3f*}g#eN!5is!Z@l#rCe@Bu{ zbn&X-pVcsu@>OE;esFkN9S4q0|0O>bHpaWT-}8-IZH7{xhgZf2w+eS7GC4mWr1t4_ zyr6VgKN@Yi4vp%^vo)T+D~Z$dExxm2f5@bI`1*AnwwI2ce!5wvpr8>Q_c546aJ)SW zdH(YZ<ayvuF>Ho~g$>djI}JWf6ts(tq(n$*C+xd~5ApOkw><u(-;X~`OND?OvV!}F zFBiBa(<}HQ<OC^4^=b9H1Ge6qWWfU9Dg$RKl!k$Up~`aiKIDEz6638lAFy29oGOYh z9|Ki_YVl%y+t>?F7WX8cpHoWJIxCE?9BP3I?6kwgCigfTz^*)hD?KDOy_{<T3y9$W z-{*CW$>~6@*AM=LgkJn%MaYu$wYLy0$-*V+p!P2XJ2$NUG_+VfQrL3oAAOa-8_pyV zu;&$Q@jxg5w~J_i&`mYas)&9AsMNR-GZCBhOVO|hMFnp5KcWcjC}1Ag8-T@q#VZ*L zMFVAnMoxE6Z7BNf`LX*MgL8L9`d%Djpl8{|8~k$?h;A@2TY=&b@`wthXWvlfw1_7! z`@MVb3hejYSoV-`=mc)&q$t{Zrj`#k=P#c@WweQTvV{hV`D_rc84oH(+CC@{fd9*@ z6?tE3GFICf;XDoCk4_$G9UZb}3EdXkIY4~?2oVcqNy69x;NDWi=0dN;l$4cutIcfo zkD#d>zmFdRauYK;-Lq{(=)wMoM-qaCg;o8fcdv<$)0*_H8U{KUf0L7T4<37}P!lg0 zMMUcdQ`jFi&3?*%rKtq`!fKV}y1flMHZ`>f&_W}OcXiTtbawgzvW3Mb5?h%Am#UCl zs8!BQ$j7$2rf6%Sax|ePS@adya`Geph{bS1jtXaHg1Gts$1+kbK-v+eqM^ZdsqQ*- zgjL^<U{Jl3gzR*GDo^U8)!<!`)dIgC0v!5|$RpvuDw>OOakRSzwvrmF-3+f_IDjj9 zZhm%dUU__aoHh#0rJuXeUE-?(+j+ZBS67$1y2i{r2qn<ZNcE@!%5EBze*hMZ_enU7 zwo|R`+k_W-6?CX#2iGpZ7zrPe2vi1?!j3>m3WD9LEp(VVJ{SOzquS-NVQv&%+ul;q z%LxfhO?4E~3Ed9888smamUpjT>WG>en;K*2wU*Vmoew2x!kXT{Grjqe)=vNB{EGh+ z5%JvcGn0iRarG@Y8embDgy=|n773avP-?G=z?m;sr64dpUp+yN^IT8xstF2jsw~HY zfqD-M^N%uYan^<|V9%aKFnu0s;_3MxfZ=up2tTyJ{4GiH+%XG}!8H&>y_FFQo=42} zMR*8QsI02GyWEu(U3olmZE4NWZE>W(p~AqPb6(l$t4a{{N6XKB_48;ZSP2H4r_t$Y z>Zq9NXgti;_U__w!#60X$WLZNU>XG9EfyxA5cC!@)w4|La6w&iy`sX@r+-%HmsL}3 z>VdBfDCb0B7#Q;O=|1UJSW2s?R8!o#Hs7L>aLRV<Q0Sqo&Pq#3`QJ<bYft{CiHSn0 zrigr7US9rokr(h4(UMq`F$|cqK@8Yr0@fh)nyL-xnaQ{uRe*?(KA04$Ro=iLS%d|U zdOEeXhjW7sd3h$H@36anug&e&;edr=GoTZTMPvsro}>Xxs|Fy0<m=^K?*<NM162XS z938!NSKs2Cm8;#*1q8$DHpN=J?maz-qA*tcOAQxf3*dUj6oCiBD}oVINg`+@fNgAZ zG-4Z;Dg+NWQ*9MwS56Z6Z2Iz_II%|)TWk-@_5*<n&~|^WOvQNH;`)DB0II|g$}S<{ zag#t&gM)I1r5FRo1c?d*94GUef3x=gbXT73FVZG<cgMuWpxS~D=RbV$@k3dI2bXtz zjWI0d;5M^BgwcSil3cE4jmlxXEZFM|jIfM-eE=GiXDu5YEd%0O0bN%y6AsA=7A|6T zYlJ-R_;;o(u6?y2ekbA#3`v++ch^^r=`5_AXvp|^(~5q{!uJF^h1keQ$TKe?mwQu0 zBPB6@MdK?Jjn^xPjVmiw3#H9X+8o>}c6J1d8(ke8Vx1j-R`1xk-*MAK`guuD2g{i& zfVu71b$clTJ*61~<blv6^EzYdfCvBp;`_kez4$8K+sgntm*&S`Ur7*bz!J(R>la=v z|3JOxWBhysXt+@@K9T}SBDnqlDC*yFfm7!$Po#9bRBNXiSyo~U#6o1r<SSw{Canv* z;Gt#;$8lRubbl5A8c13LaH34QqwN43Oc4&V3WW&`@dVE%V4uCFBl8<od1d7VP=|qk zEUvEZcvP5|sny%lQ>asxd+o8BUU~KnR^HtK(?4%l$rYU64c&kE>;ImM<OgoJw0C<z z=MYAKt)D^nn+W4nz0Uksb~aodLOiD>Xco;BMtl1Dj%LfCkUsZKjd@p4YRS+Px;61; z78;wFw5@(*^aFS9pV^OnnpOFn<2im4KMdmJ<>hr6Oc7IpS(*6%?@4&s_5yt1RGk;- ztiytUu><_J7^h{GEX#FvO&dtB-)7TwB~1Cx5t}+btF23oq$}tQ@Tm``vf4e|n*266 zUIW#L-c<>oYo7zvrN%oeUbmoc^Oi`KZ8Mns^>%b)GD1Rb$H6iH)!tb4`BzK+`yNVS z5Ku&l-`zPqBgws?qUWLrT5mMp#YnQE+FgqLttKWS3PlPeq+Xb-)7PYO1W!w)L`}30 zQdO0uZ|AJw1H|m}U`I4nCq-YCO+T-rBg5XyyOv4mOvgf?JBfQkJjKmr_6g%ZeboP6 zeM+b=9&#V0a$`n;io9S(4I7c*ed(}Y8nnNXr|FLNJlBj$fiNRCEp1kk=5&cx{fG4S zS7^jzPh+zgKs}aO_=!j`AhHP6ECw)45t6j})FKFm1wcz?^3r!<DJkL2n*o0%&=<(h zb__8g{oil;9`vantAOPZ3o{;cmKgr(<=?M>Vb?!0EFwa)#?VCFeu%*YBe2Q(F}BHq zgUS-570CT)F(1|Phoj)JGoG$D#Whp#p_p(wSSj8blJScKie`aI_l7VfPCM`NBtg5L z-qBx@aX@%>c|0FMf%os)`tPBK++ct9U}0t8VP*A~{QXgm%)nq1SZgrL!ee5N=d!57 zHm>4$EY|w6kiQvZ(Vn1SmSFo{U)Y9yQL9Axe#Gp|H&3i8Yjtns9hZlQ83F3^QoU0( zP&5}}gC5(z6efhNuczm==KGo;-!dR>=dU#?fW+@1<zy>f7T|yWNOi&V7CdRAU~=Qt zg-FTYr~2YSr2Ih?XbzC4gcHZ0XUoSw5j-tz4h=2svuf-4H_x|aJiQiTg|Wtp2$%f9 zI&mu9%bEXfb9Z$t&QH02OUBNwlD5ee4*j6w=QbUxot?sx>7;GF{jO4m&*jG|B~uNe zFuKMod{Mo$y{FbgX=(f+%&azT5fM`R+0FBApxcL9C9kdnHB(e=Z!gREB~Zb(M@er- zl*3ZmAe76-al=tXW;R~#FRlaa0eBTe>w(gSWTpZ(m{4J9#kAVwp|7qY8>0i7Z1sug z|6^e3RdQqz_xtbv;~V4kwa|~s3r54r7mS9{{*qpO3dugGd+~ApMXm&C-5inkS0?lI zorn9|6l79;!>LfNL&@)rfg$3f^bMU&c<WDh&~TuU^R7%)Rh$s<ImH4AKPCzcN@4=X zQnkt9zR|VHTWz@lAL?myz*>o_fuOLgKEYJo66@V``>qMZ?a!omF5~`5&tuvq@{?v$ zW{|TzE)gVYC6=ery}`c>lYt&YnYOs^D~MT<XmOq(Jo&Et|5+2xM8AQ10izPq2K1B| z400xY(3FW}z!}Ev;^_x1Y6gZA**??1A2wD_9!a?@7d2ZPC7kL{ibfzKxq3~G6*;E? z4i8b!qAa?X;DF7Wo*RAkQgssdDY5#)rTa8;f`D+`s>#>`U#8#?7fX;pz>XCijaSb* zw_&BAsOVn`ArQ6Ms`Qr)M(bC#kd&38G|06~imxe7oNapQ@mJgi=TcHVEGp`7eB59z z@<*F!dA}y$G>#UyTMYg#Nvm3hvcdc+=IF<dsx~+gL<>1_hY<)l_1#?kuL((8I|-Ox zUV)*EtvMS=!k*8goWbe--<VHX_X4kcK-mkr$d=BO%3}EZIp!_E#O?RTgye;O`Kct2 z?JZVlf@$M(Qk}!<Sk*J?rB^+fKaj*x1prfpx=2%ZliUI>OC@q0QIeN0-7)lbji2~m z^yYz7H;jeFQiEyWI_qN#Ps_}NSykp<2bO3%Fif%CjDJsUTSbC@lUGUs*XVTH*4)%U zF5tAc%g#lm_Z>EY#ge9RN170e1RO_%|8pGcc@<8T3IAPykPftFcd2#+fp@HK<T#%_ zFr@sdstk(aWtRk&{d$~inSfmR;?fqthirNWem3|e$vi(9<X=KZ^Z?5dm&HVdGgwJA z*V`A6F|Bpc?;E1)S9)*=At4+c8TkUREkJDoVS?Lb*I^{iswQi6G+@q(h^Gf)c~@t8 zZMZC#fNGh34Nj;E?NIZ2e>}r&aV}HA!{Z3lPfs@=AP>AddgumIo#+A(UO8Xy@TTfA z+psHoihBH?>%-3zO4tM>1mKTCLsX)-KwC(&DIp@_3WD-LKHv}c>!r)Md7GMP#5Dq8 zY=KDWX<2RFD*VivPf8k{ot?lROx0#>TS-sF!p;%L<-C^|7vT;A>;AZQz8m=2Sk1xI z6a>n^-2-q=f~IS%&E@jU8-yymtX^&Hve$4~@dIAR&lm?6N2A&p&etqKWe6~+nPYhx zolfiSOk0D=a7J8->)*2jn?v4laDd(j^xZZ<d~kN=P=iJMe{Tjhpt6KXD_2%hf;lBa zA4dPR><$C6|GXt|@bHkzQ^V4Jf&0z@c)b1~FNM2H85*h}v5UezeU_2=EMw3prPru; z-+yEEQA1CDb<?I>Sy|byhr*i0VoI2*@Y*U__)Dyk3kKgWgud?KrR5fQ*QZl<UOJV~ ztZ(1G6&AftA~_@_Jt$DEDOgp~7HMKLM};ylFle!NhYwpk7HTbB1S2?%`bVIBS{Rt< znkyH2;FTfbvdy;)vGDAF@qD?`APS>*cDoA+*whU%^fI?Q|A=NVXAgXe?F^^0)$oZQ zidNhT5&JeaPS_-*rm2bjBVza3&*J0hq$~_2*_kl)In_Fn;#hz+&5fprl29)rQ=f?$ zV>}_FMjR%Mfv~VJ!jeQN4#IG7@SxPE-r*i*fcmUS2&u?x3N1>i4-0ofQmw@nh2FiZ zL^x+cnUpX-ErId=$o}-^R)Jb%X4^VD&dRarmfeOm#=!A)hsEjG@S8(V0t(Shpde-5 zF_P4B0hpvA+`S+Z@gr>z*an+8x$<<P>kt=Du)i-gZOnwVc6fdW^nL@cD5wu&!e6oq ziF30E>ZT46Zx4LC*!?I9oJ__kR&JuN0AGl1sY?|l@8r}4JeHA>kr$u1wb<jzad2?n z<+bBJ%By<4>yYih$}S>VK`=D01g^{I-vHjoft!~U6H``JmzM7D8(UZy_#_0Si4@KL zd`=`^vwZM_5~krtVy~zWyxZyyOhYGD+GQZv$)B)^RBVUWW&m%3(os2*O`{@o#JK{3 za8_DIuC{c)tg>uesx|maA-s-!HKj)!T-*Y_nbtrGI#Aojx8EXam)PD<)KPlf<rm~( zVv_Lx5Z~FM*qN*2&&#CvpwLWur6LNh5zwns<x>6m4@@o`^(i{%vygRudUbaAuj0gj z@}NW#p`Fj2K&Uy(!}G%*L-MWLlX8Zg2pA1pTx3tB2R~2CDRIe-DMu@Y$8>^6my?>y zlEcFFmLAcw@B7KS@d9a#@UJt@#KH<7!?m)`2Air7AdKqg(E)6^Ge8<wbGY#Nd1_?` z@Y8b@PP2|8CV?6if_;O^L5%EZ#}R}^RlM@Yqg|vafR=<2R*K>K3<d<_E7EXqcDfhm z-qs#cJ^`tyJ1jgR38V766%Tn|FL*Rc&rqCaz4MqcXv0NefU1+2%S45@B4<j0;nk~| zy6qJ}X+tbq5ca0>fRIe+-!%@R4>u)Px>Qv-$LJ9dJ$RLJ+u<l7AHLbYzc<S*l)zx5 zrN-^j6CnjE(>Ev>R5ZUeYHT^#-ceAU+}+eYt&D=;09hFsY#MhRw@09$y+b2%1=$qx z>0V!MLZJW(^`B4a)70Z#mx!=t<i1D8@=Gkoy0x1D$VyMoFvLA-69-W^E3@Ohd9KJa zJ)-~oAsZVTch`q?!0i1Wm(&xd<#MB|)i#<%0*3{#wq=x*<dgsxTmkg{aDTtojGmT@ zXHCd4P?rFKmCUD)bW{bJIfg*D@;|#&R84x~`x{kpJa^*XFv51i(xjXSlrU$3=c~Fr zga_(4QStB3OViMRC>20}nBfYb+&0-9>lw%9dXayiIJs)_JxR~$>FIg(>eU}xDkvbb zr~CKll+}a;y&5hEa`W@g`Yw}we0Wn5K`mZ%LcKyqcwcGd>}y|yD7+ROlNgVQ6`vAc zY-mz!YDrb_N)0=DZS5d-CMfi~WUjh;emnsdlt`v9v)U2uQ^LT=Nze+50kx~ld_LQm z8m<owK=AzvGA}kxAi0@AO4Jsv$gb?DxK%B0!&O6{*y-M}^4G=tqrMjFQ<486|4Bhh z^sB9qURqsqUS4rpV`A#`a7Sh4NypAa;X6fbY8!rRTrq$wEqFHOcEp}Qj5%m=U-_g( zlPQ^l;{0lJo0*fgRdCI>x<0!q%{w|DPAHeEJ%<XCiSz!W<!r6t$;l~rIYbLrpp=A1 zTcIADCi7P%{~f3NQV^V@A}7b<Hh?gsvDgG3tkdY?3Z_=jh|v#_FAc`=IJQO3?sHmN z0drXT3(8P4uA_q)*Oii4vW2?Bv|`yusrjFWzQ2Ky!~JPWtZS_U1aM)zkP;PAQlMMt z9+bU&T3Q<rup=&L`Sym<iO<okujYkhb(7;qsT5bq{O-d$ysfP>b)j)D%_=i)45*Hl z^Rsz7n$~q{elb~@ti6**`*k0tJ=1fI{MuBCgD%&n2YNOU_op$X&WRqkvse3%{5PVz z5S`Km=^@>Kkd&v#b${|k8|?60hL3Pg)%w0OG6X^x;RKCf18;dtNTQ?LA!MIcGH9R0 zL9$>ek+4zZ{%V2$s%tpV?o&!O+U52|yjuHMGP}FI&ec_d#QPTaJ3?#~IkgWm6Drfz zEG4|<7Ee<g@t9DxuFeg2ZD@~<7aVrX%-lUZ{OnwR#|q|iw3s`y=*F-qu{dj$OE4|& zc5}}gV?{n4ozmA(hYbDofgi)({I;n@R82npg9XAPW%5Dm1hT(baCB{bX1(LD0=K2l zhq5=DS&`oOvIN8#2)aXs38M4AKj*p8v{mSpt3t9yDl+5L95E`dYep2x{o3|iM36l# z#_2*9tFBq{5WoNedIGe6)hf3Qa1UpjOh2_r59Qn8ZH6A!&fhTd(y^aktFax<S9|)} zAD1+D%O)qh*SpZ2M(=MUdW<ismCO`sg$)ah1vv>^G#XX5DoSz`3e?o>*nM<Ns`g2B zw2e<%p~>=**Vkl!?ytxK-Oj>4;^X3!4h~9x>_tFZZ}FjOb;~1kIGLCpbe^TdGc<%J zdr#`Nuh(w_KT-Imu6RLzZfz%rc{bZfq7xXP8P0y0RZ#QQqIJKz@Z8j~exxFQe;Hqs z&+<1U)WXtbZThz}1&aF5Ln^8$*I}pTr`Y&tLp{sAFIL^W{B)c{+Xc)trAcv-?SCcf znEw9lnPzck{2Ce8Zctfwy)5{7uH_XISAxZz<`en@m+Xvyy+O>Kg?f%Jy{L>}<!cHy zzc=n5#rOE0LQdjGT@Nyc+MnhE-g0v$2J4?HsHy$oVdbRNJ2<KnVx=@6SF9LA7vQ#8 ze0VG)oUiq{J3~IlPgJ`;S+}`rQBZQ|UmxXXo*vAIE_YQE_|hQ5Q_4+EA86rZ?9vf% zu4&ccUhX~yS6syM{9u1B3u?PrBAexgvk0C=3|pqS-H{}gkNRsC;#2PWLJ31M=fHw) z-ImjvlU?L6OMo&t|1?)p>JUnJ*0Dn5V5^T;SZ{ugcnAR7vUvsYirP8f`q+fAX7~)o z*KG8hjst}Q?ujD-<0a?^yXd{j%dx^(0L1UFNGN#x_v9!py*gAdD+b1uzX>QPz&;Sa z4P1O2mwEda>0X}SWKV8ZYJ8U|PSxdUm9M6toj~FHKA7><RP>Q<=fZ%oE8A30!}X5) z!N(4#ii2I4TKMfUTAd3MAMcRGNv8eJq3_kY7l~jmZrLtJ;W~?BWON28iK)piL1^@( z0Ov!(<D*RhH`ze;zX%dZ<s-<^&b_xcKkgf^>q#?X%LWUE6H}K{IZ3wjpq3x5$wGd* zle?^n>u5Nw^Ar1B%vM@(!Dx%4kk*>s3Qz4~a6_a~X*}-*dLj)KQ`vlgrA0OR8WV#E z|8{OVVp_}Zr7TY^B$%<cuP1(=*tb(+ln^gv$yoo}?iZckP6>%&Y+uGRBL|dtp<kzG zWh0L7GBg~M^bZUrP8+eUGBKVW|N17|8<*E!{rR`#P1EapJ4c?nj>>O)7FwojCx`6J z1Itzx#zWNyh15(bj!yz@QMgf6lkfBu*YfNmV7*~&LQ29SqW0BlCYL`72|V0$x*dBi z+%LDBuuP2g5A^ok;~HJwJsJ!Y&w^#OilK@as<*c@_U9*~-P=1gXVzy<@w{cdrxWv# z%1lf?!y}@W>N<T9PdPEK=Q9$Yn7ELA$>jSx9tWFPA~UMGdg@U-fl~bcE%7c7FG1wW zFVSV4#XN?xAE!XY&Dg_?5E2A@?`!o+-B(4ElM@OG3dj5|V+|5qR4;&gPbl91J|X)P z2{bd6)MzpDgFQLJz)&wj;A_0pRf-;&Pd*fQ46muI%Y)qO(x4%eT_~fK1s@^d386O@ z`vQ{2yffAH4w6C@-@Z{Nfj!n$i6{wNXR+1X^qgdC@t2&h^|e{HZufJ2hbi=CYc#zE znReCU%YQYe*<>)ARl_AU!u%>bnMZ%)WRKbZTnz-Q*VbArXFrR<&o8%p!0$?xf_7+1 zD93pGy3v$#>g7!Q&P)^oi@Y&J(u=JkhMmS;y(MMqZd(+)EEb>;<5@vJrSnIXBR zm>4`IOSQ{Np(W~k0aJl+<?+y8dg5XhH+d-5QvJ_w%?X<lH8$1?=51|9rX~!nV=xEv zxh51Q5&Te`&UQDO|I+8F8!cLX+F{dD^wwoAAC;oT_0M+dVuBl7i<giJ=BH@dKKj91 zuQJ}JH#l;ubb{p>|D-*4+cyn8Cf9Zu^OHQeI?k@umpo;BR7e~3kV9mvrf3r-?BL>H zKm=Wu+_`V(2$#y+jQP-fZ^Yy2CeT~VyWp*P7FaM#^fPhUxx6|1tsW<nmYcn_@%s$+ zy%IgBoMdgnX+1x+zTxie6)Rg?IZYWe`IfvzqDn6UJq`P=qxtTkI&I%w^}5;qAq%Ja zt@K(S9?{$ZN&TNl2$U+opdT|#3P!IaNm?M61W6TA7N`H31FR7cm$kY)S7kbLPZao; znfZ913kb@O8%^yHGopN~LBmGzBe|}212{i@AU-0f<rHz}XXov0)Eyib+!H&U9bIDG z9pz}rG>L6(Z9P54xvcn3%B9S0)KmZ(@hd$GS5R=dA9sf!5RgKKk2$PpVQRkN;F4sY z6ow541Z8988@8c~ZnRuG2mxgn4cBbVFEq2!0p6Md-bO(h;o^m%8^S)`K+Aen_XmZc zX#1*|VeeW}>iKBbjbR!3|6C&iFVT{Lp$<;n3j9Rdgw}g6qKT94UTIO1l?e}a+0ew@ zUBd5pMg|7hQl2(6+%&KGMN+fNBpZQtMVhuD!~w=d=ZD*VSAla$V>9+JTOVmccZyE7 zVYd9Pg}w@k`6zU{SLl@dG}&mjU`G>$eCG@!12t_+=?2jm$3%*b%YH1b_FfIh^2j_K z%$KzxTx^nuH^qY)_DmN+)E(`mg%Tzf2~?4lscVkso-oqhF#5EU6;qQ}S)P6t{G(tu z`*$>4_Iy|Iy9q{<muO+tTyDp^u#}lKw|B>Btdux&#r8J&MeH3fw=d&R+ympILZdt8 za6$_9t&ZWvA2Y{JTBlJpCB@){MCN%D#F@cvP4ZfI-ngu)tdY%aE98C&O?F$I;jX0I zR}?VDF{p{Ng-+0>D(2Sr5yQ-g!nmkim6-W2KxWGjiD2pX-94c3#WwkBrFnSri&T8Z z9^*g5g0jnJE!{sYhjW#gIRrcVNdna=ZhY1YO2w05hjZ19E{9tHoe2+Dw6*J49-IUI zwUDIu+xz$*nkJ{mNoQKFYe(CGu4mSIYa3sy*5&Y~*GBFVQA}Abw8YX%HAl8+SFvmV zVb2^jzzLY94-UdH#Fl?i8yHB#nL2&{%l7)EKhJrLqx)qNucLWP@F7SNbl>fhVVp_L z&7EnsC{Q1#S1!2gUg1w^xf#%`#A57t23!+PfjCR<1;6&9O%B?qW21nZ!1tY-{%NZ; zOZ+895O=UYrgsJzRW7(M%U3jdo6O@rJJxn^v&vsM4hZlo^7m*7FFDy7l~olBl(F+U ziDiidKNd$q%MezXkKNn$ayx=6uJLKUSI~VWZM@9Vic;RJ_q8&+zRqke9wdNQ<Ba41 z3F++_<~nhTdJgAaOFFXo0UZiDuZ=eju88d4-i%y-!qzkssG!mOgD&)lRbH&vprD7$ zuw$b){lNh;cW25#?uUv0`a1kP44W9=WtEPm@Xn6QbT*RRE8bguG7P$zoQL>)O-AJ# zN{VYAA{7$Ync&soPwfntQLx_P>>^GRxKRTFtk-=m0Rg==caNNoNiUn?JA=N+9ts5S z)V`=h?@~iv_jCKbZGs0LTXAt#szI*f1^2_F*81=u-Ha)_ow=BgV2oO5zG_G&{VMqV z?t=%?kbr4`f7$5DFIVvpf_%C*R{xJcGXB)#D*8cnX(0<sHu@@QugWl?!DK^WNbJlV z^*a+2wdQ2(gSDxVX?yrNbBna!Cq@%VqkQ@u<)cyhn)J2sT80kl!AC6&VOQz9;aEFc z+RLj}-|eAEX{U+%`*ULcCCZMMeA8y_)mxihhK_{~q8!;SH>bA;$=C>1*MjdeurLs` z_`ki?OlX{&3ii^x;yt$aVwpc|y4!<FQ^5q9)cu%gaxa%$+rPYT_$EwxqxDomPLJGl zl<p1!%{<Y|{X!%EfDRiM+GTmB%Hkn-5guTnGMO)2eiL$hJsHTuUilRShGWo>DYb%x zJX#tSBB%*{{|~R2n7Dpg3b%L%Fc#xB*zHHYK3m$?&q4cIOfdKJWCnzys^x%v0<9fj zW6FogoT$y?vZK^C+m4xDK>h77$PFW3R-8CpZXE&(D5b^=Y{hUzVAvaR1eplCwyX@d zwixLi??Grm!L&u4?Iv6jB{MVn<59u1)$vjz*gPcudAM)L=Uz<AJJj*?tZG73G2#<% zJJ7{}u*VOMI}8{DwQlD}fbs^)LDTVk9)5mShPWz+$eG%kqbB%v_?(;%r5!+^-00GL zceGR{A7*Cm4{ty%;vjEQ*W#Kab+_|i!I!b?p+0S|EP>)@zd6hOf=UfC>Qb7?TTa2w z#Qs`KTvlgtLQO~eHv+{ZGX;G#YigLz!(8K8ZY)7NQUz5yu%_&?XbvF%WK2^{F}e>* z#$CUPMyo(<`cfB@7{Yyht#mGwAk^fr`6HfhR&UQ378O<DuJt~5o&EKD>yB84w9-I> zZ!5xKNlE8xo5T(b42%jgt;XNK$|h8e98Qu`4+Egl2E?xpFX|jGHDfj(JZab%%gXkC zFaZ3-$(rJeHWUmns9E!vEsX)idD&J_u>WH7zDLe<&bqICf4@F#Y6lRj-?Lwb8KPZs z1*v_?T35ifU*K(vqkk>1=ek1A$Y1Ix6;pxH93UGot~9wa*`1xFj+;;Xsb?4eG{Yy0 ze_tzQBpid8M6x=23Q}{>cn}#Bo^7`^z)eWvP{x4B%J4(OG@g#vrw>WX(%n*bd2BbW z$jQdggC*xzG})vv7F#=SUY84Vb92TyirILKjga4DRne}?lNXboWn2ntnsQLxQ#=hd zegA#~SCo(17Ykzgq4(_?*J&>y1A-6HXc$P^Zn7)|seV67g}5V<xf{B<>x=01;C_G+ z)Kr7#^{ya42a|}5x|p^)E?X&TAUN#p+t3h3lv)!o`gfMq^Ft6t+NmUOfsv?5@30*7 z0sz^19zGahKbM3+ZrN++IHVsU3rcd3s}jLtx8&naEnu))qRv;LP3DmP9~MxfjJ*9r z-$%8q%yZ7j4+=o+M5gIE1F`P=d+PN|<a7#E^{!5JK?IyVGb0r5srHg`rh${&(@R7m zIO*(Wi6eGC!#T$3($xL*u^uRJ9GnkEEKz@l3kBgkqEIe0JnaMy*Ti#>{JlDQ_MKi_ zpwy@yfgMaB79^I{d35ufKG%@yonM&wTs3iih$g3%#$v0iv~*xR*#*19*hQUO0rE2S z)<B|Gd!Cbyj)0P<)p8Yi{*RnNjgy@tWdQvP%<HX=O@beDHhN4n0k@rkswy(d{g3O` zb@0Xsy4|@P-n}tXeM^ZIni9XqsxS3JC@sE9>_JdsXkE05LWzUj|L66^q9ga{zH~1N z;n#`sy!Og67f++eZz<u)n-fKEZoYZdVHiq3?sb=ck<wV~3!hfVrxPy^2oM9bvcOlh zXMh87tC@hC46Ab>TWn=Bv{%lxKfYV9&v*ti)B{(cDG2Fs=ad~Ik-OB$tN?Ftg#;L~ zEN=HuAEAB$AHA)$?U&!Rg?CoiqVTIbq#y<f=o#qfx<IB&&aigl(@Ea`c?@yQfffju zio#B3#=ugmw$@&`P6Zq-sC1E+%*{WpJ!}ZEVunaFOe;6lG{}q9YrF%{u8wxc3Y=r| zl`TMJ0%@^MM{ScJ<xi;Apx<W_Mv7obqDRn%{MQN|>GB=fLxh<J3k##4ELUa0`Ax<A zDLp<kwYwp^=IE~3p1swKo=XlT@1FZR0@Bgyr_Je_@e0DQQOEA7AWOkge^*y((udDN zy4o#`Zuh;v`#3WVtg2yWJ7~JcO-MP4ywHado!q?92pJh(+2t)8`t%cEYg6+QLpof9 zKfc}anY+`X_WL8e3_&WT&7|$5>6SM;K|9T2kKMO9Hkxl+xwbvV5Y&MZZaMkm+4l0W zfNh*TP5)3JtvNj=WgH*}`qu*n2{RUh2vao{W<19Um1J1$^B2?z%4z`1&-MIuj0jxW zV7F0kYdbxUI~J|U)KoNfcksbd5%%N#f4e2RiHs`1rhIoj6^f!&I(S4uqg^|ve&z6( zjvESe0LS%{w4`A|RSXlAZDv4?>-P8y|E(^$z_%A1``*ME{^4<Xy<JZ#av}Qw3%J~$ z1VPlv4PST)QB6(Erfu0c*&wP{CGsP{dYqOq*c6U=CXxv4iDx@#1#)5bCi6JH9^k}Q zfkb6ko1BWRkl%qd)#bG=N43q(Wc+2Rsb3B{;y`5t_A!v2mCZ+yr!tvs5NMdxa6LRQ z;7QO6=rKfekkJA{k0_y9qkzam9($Gg&l(0roh`Vh8qi~y<8<@8$X}jml+y7rs;Efi z^)8{FwQ#;<R`OuspxBu#&2t}kMF(1<b$$U(!7}NVAFcvsV4BRva!0OE?`pbwJ<!K6 z&>N;`_)ef-`s?dl^KTU0W0^rog@y4^>UY;G3z;}h@&ADecyRIYaW^;0Wf|58_+%!v zZdNI08!sK6R;Fm35_z~suMTELinb{btUl0$pke6L*&_?vhR!tKwt!%vJpb<(z-MB0 zSwE;G;U@xjSy7`O6fVZWr>Ll3$;9?<#0psC_H}~-7<b=bWLI!F{%WzlBhh~^#!XBA zo0*Vq94z`$j}S+*x9?XiX|Z3I1zu~6V@k<zFgEP!HivYSLw2r~1?{@e5%;zHWRt!( zUCa%iZw!#u6Y*Zyio9uJx4AlMcHM{zaR#tZKJq-m`t%EHZ!uaySC3i>2(IsUGqP?* zHr8m_<GP<9cC=&Rej(wQ%njv?hu^s-tXhDBm4p5FQOdY*icux5rwzGRv%+pi5Dw#? z=tLcBSD%82II`=|gu10;rtb=H!@pP})D2G=eE^^cd6D-fF*2Fa>DF6c-&hDE|E4s6 zJS_l3t`|$x41vf10k^v~;0=2=ok3c4A;*j$HSHKIAJ`{A{4auz);oad4;o27Ionud zz#Jim*Oiu*D*rud+`2lRw*lb<p<tmbh;|gfG1+b7F?R&9Q1i9&u7FnjdCZ^AWS@~v zc<PlcLsb3{TcQ~g94e!%%)ua)x>h#V<m%Ox@~aF;OL!~I9y%^Nlm4R5GTOIB`s=Hk z*&$Xa)|P%3zoy@xeydNM{9-Q^<kU5TtVWRNY-nImaE5@{Nl$~v(*4bJwvlkYP)`Kz zgGG6Cw4tpnidn)N0hg)cd$$Xc?TZ|3xO0unS6tJR1_bjR@Pk^lhC?Wb+s)yL3o%~w zn62+E>E$#bn!#_>mbW^(bW6^zS0lq)T=e_tE<6+aYB#brIgDr<XXxVXE$6>I(J6dv zs{dJaYg5??1kncv`K}LJ*N4+ARx4x5;`9y}kkkyXN?031t!5|emjOTt3hrj%j7KDh za#sjpE2r7cirY4`wl~EHNT*=^@X7?}oAb{WC17x3;y>i%?W6{zTOTq8mrA$@-{&PW zwn)H+Eb#p87&yF(ueUYiQzVWNCly|!cJGQ54cvX^&QdMr;|HTQp2pyKd3k(f6-R{> z`PbuB(DY8jpfH7$C{V{Tehv!oJL6wYW3#&*YY9McPO1Bw&<2k53pf5&g-<9%rpr2i zAG%|QC5|lY)|vVe0-%FgN1jp(F$TdLUS$%iH+)cpT?cP@eroV=B#r+KNyA1}yCM?C z#Rp_eelCUFG>8fWn{^tU&aZmM@tJk%y1VHy%GlW1O_mC!Kt4~xJIho+9sH+{z{t-8 z(GNNn6ptS@edWs%A`_{;Jf8STw$;$AbV`d$2jdON)J{2Yn#!Rw+JhXQq26A3Lr$PQ zA7`Lq+XHzSrPfowk^l`JOgbm?@w2u}ks%Nv?n2*PdIl`^^z2*&p;VV30_oNan_^1a zpARj-ZkbqM3L@k5st<2YPHlil0+CDZ33M<Cp|LO=iy&xLe~}1?I=a!1DG{Q0oSolN z@=GJzAYeS+oJKe$BqyJqV(Zfs$sW#sH&l_AFW%kQ*}Xg+)C}Qar^nVCb<c8N)&bVd zL_)Z${i?l|L2&;9)gma^Fj7F8%>B@R9d<K8GgT8&kCHNFQJMI9on~-gFxmP`8NCgp zjeNAV;h0R9{To@-8y;$d)jYeBX2&sPBGY|<SAk1Qhz4aT+4;vq{ND#$FT-ogvAAK~ z5ZQo?ao)YT?rf_fOFii(nNQM04MsX2Xfog@R%S|*YC`V0%qcUGkpg$bB5@qxD3o#B zyN!48oI%M!6bO?xn1T%qa4=x{;_t)AgrtTduA7k_nG%s7o}XkA^(t%mhsql})L3Dl zg#tvdTqhkh^?11>y94Xp+~d~u<Aa3m(+k~}KOhOI7+UuU*G1Yyt;G^~I~ydl%&TdF zY@O$R@exW%dotzWD#{Z@?=`~;Huw8>X5IH8(^?V|&WxDY?K|Ws`H%1@gza%}C|Seq z0_E1FP#a<NJaUSe0smirMe;n))BOfHfvODwzpH{uQ~IW=8K-wKVAHUmehJPv3B6lG z5bWq+6M&r%uzA3#YvKJB^gEEg5tW$j3kXjyS>)%n-=8m*>F<&&(5{It3!`LcikCKQ z4RlMmd8{C|S*gE5e{1}Rbc>T|RBKNjO^BDLGns!lIDYoJ30AzJ*@Z8e^_4vSbpvBp z%U{}lka~Cj2Vu;3MlE06hEVpn`_yLX=@23sSn(Gno?}ge^Qo!ZrG^|LdOci>6dw<P zZ_)OBuxIUR*jrr}k2;(zWjH-LuF9XUZupsea%Fwe0TU83$3Z%`#493$>C|e?%##CX zMJql61Id${NNi%}k~G7Gt~d^_!bTUbqOZih!z;shvN(Pp{<Pe}(q<U7_Da$YB{sOM zPw@}kw^9ae3H@+Ee{4yALMrL{9Nm&F(cJ~)f9c?c%2Qa9fQgKc63>CJI^e1J%Y9cA zAKv%aOI%+}MAU6QfBmQ5uJe!jnRSrHU0wHd<E0S_G~&Dqz(T3#QAd;*5L4Yy?&?qH zbW$){5*rg~bGQghcX?E|XLIM~M!tRs4Cl;-PHX`9W@=8J^VhAbU?w=Djc=@vcfQ*I zCY6s=9T~qNotKrAUaK;k`jb;!KUD&;H>F!Yr#sVO`IS|dTnsntQ|%O=#RLbT(Q{_Q z!%4eObP;}-)?L#6<dzaL+_a3c#OBR0JalTdgQkI*U;BJ2X`w>Us!X}3?k@WaK^6)K zjf<VRsl9=@X%35xjf{})_41`xCnN+5h=KE)bW8d(yfHK|p`oIhGyGG?J@VAo2Vr`I zD=PTQDa0ZxFx@hNpmBL>xbtCXj%p=6ASznzq&EWkdgZeDbjR_E95k7fDhx&`t3}5b z%(1y?#Y@?C=cCj<6UEA2k>MO64qj<OQg&+JzrWJ#d`q9t@yW@_XS#d%zWnsC+7jsD zPP`3(%}9Qf)o4i92VV~@W3o=a0dZZN$e(ZPRIiuU53Min6~}CYyiRFZ2L+?yLN-qd z%H06xTZ+zOzLFPd;g(XHhW4M{r?6<+zs|tYQjzk1n-HFiX5&P%8mJ-XzxfLH-#KcW zsPvl;*{y-yjVrYJ<%HY&^msW;fwUOVpK@GE;h%L}5w@?pYDYCP9sz3^?*jpj5!t5$ zR~X~G$7TZi{P6&bw;h#4N(DAx?98N;!;cC7l5cdsaW2isi$KB4y|@|TVce9@fhMy! zvEMSPr1s;mGYMTaW&Lv6`P~r$vyP43M3vb*chjl!=U8o9aoSD|;&`)yhqvE7Q-25~ z=^`Gk%&<si8W?ThZTzs1=&6?_wM*`<E1o;%)^#yuJN_D3D5F~OO&OFVMJJUm0CKy3 z>K*!)1k!-}=?DDfV1d2_!bq>IjO)y&>G0ojGqSw1$HJJY04bW0k=46;okRU?*g6pi zj^4eS7#|yJus<3pkWdxiQ7_O<i@%(#a0aoWcJBMTyO*QW%oP08>mYsjnp{A;&bD== z_2qALi9kcnxfRiC4<l1k;YV>r5$MMvl}W?a1wxl{<)W`5H((ji3v*v!HEcY;0LEq3 z*YBx#>8?Od!OtT>-co0?2d66kSW$jAOvhseJ)eyGD-wf*1Z-8d!uA{k;?2mYAWc5a z%l)@Krl2NZ@u(}PMPjG)FokTD{Mum?ZsRxvdWGm#k}bLMAs+)F@f;(^-n`qqJS2^U zeWpNbn{s`EAKWtYjOovUgzZdIQw8Ts7s<?<8(*C!Xn#|ExB~UKr=dS%YwRF~?W~m@ zRt9x(PBwolTa@h`hqRk3pL5r@AsuX!wrVc@Cnl-)UBwyDp%cA+G$0=>@p14kf_If& zycbW5tbakAMnt$Vg;eiHuNP_4*UT3SN55+!*R~Ut8WYCWho~81*2XR{kk$)tQn=xv zN+ev0Z}*p<=5)Ri{0|G@HXhvE+$bQ@gztp>i3A`9&uv{F(#J&PJ8yUeL>XK=?4)qI zSbIZdf%}uks8wfDfN8+GQonS6vSUx4J~z#7xy}&mrz-rah=t|;`>U~$LOG*+-*8?) z*=9KuJLQk<hY04@=82BHMe+T6BoRg?#{Y+{zYNQ=?b>Kzkrbp;kOmQu?rso}?rxB7 zknU~?rMp|Yr5mKXyBlfN;d|HfeQW&`++g$aJdc=j?qf`3)6jC&agY#8NQo<HiCD_5 z6ry;M!zsN57q`DowZxa@*{(YvJ2yHq0!G!}<znFW1iPP_Q4zltg7heurJ<!YTd9p- zl?1tYz#e+3?LW8tvPhurc=rCWcNAdL+04g(_2gkh6zpbB&H{9;+$&xNWZbDwAk@{M znC?pr2FiI`G*_Wb3#J@Bp6r161@PGwOlZFRK1W53P0=B3G7;(d8KzSE-K2a?$4JP7 zx&sbnn>^Q0q<b?z_sk6cJ3`Ic&{|B~mzk%7=~4*d;)iO7VCzIDi(wWSV^v{a*lf|c zdL<^;EL&=m6-!ughF2|4b@SgdHL+i}UF5u{z(x~Y|Gy%FxVTQ;{wYK_9|jth>jr^^ zrJ9I{8GL@<eHqGnfbhbC2^lsKGyQwhSdiMMygM5W%hVHxW-CYC+eM#-yT^{FZ;rCL zV>=<m&`7{h)twv_b#k0z6n^*E+P!Pe=t_eW7L}E6gJ@MLg&Y>OiAm)CFh|46!OKL! z)kg0H_7KJA+~%i7A7k<KelW$5`_f`>E>VWJZGX9fXF(p+VSP6`3ahIONL_16Q<Ai8 zn#6O<8&-B+qZscP@twL}A9U_dS5#AQ|6EL(p7IcUAbRW>rRJoZ7M=;F8I7nz-W~ap zIdtieIXK#{+H3RqfY<*GTn?na_?!NT#t8kvTbd8v@N+NSs{RaQVMc!Vd!h>*Pb?#F zr-Qse#u;Sg<DKS!gJCtAep_N6^~`kIAJy#cw4aNO?VJ5EsGx#c;n-toLyIeu;ikV; z3rv82;DifUR{-JI<9L&JzchbFOdc2H=H$jSNeq7z(7ReO1N8uAMy{m7cK$~R>9zU6 z^{5P8)#Q7wQIKTTHfMLZ+yq*uz{nKUQ}fSk9f#Ofv#U=46Hh)wyr{}o6FfO21@1(f zSL1~W<DF@8gYQn24`wO?D$9A&u5g~rW+x4;b;^pR?qtWS1^t}GzA@U_O;)&!jp|&4 zN<DEqN8qCN=RBT-+F4S#VJe6|n*LJzKIrkHDuYR7RR@|z3Uu&=b^cVCf|6=-jYdbJ zZ#*w8LZb*x0@ph_R>RncGWT?gwK{!1hNqQ9;@iKdtvgw^AASML*F~}Vfr!L=;+M~y z<F7y1MdNz=DAenUYI-)Ndp89dGWfrrmbmQ?kWjpj=U^`puF&@M5X)szoV-kYG~73R zIzBsZ_>DK>XuPvkfB)2)cDhG=QFC&CrE-1PXz%d+sDQ1#Y?zFf{PlEtCG6?olHc{{ zpgQ9s#jfSG9M5zvd>A}3fU*^u!X^ww936}skn^6}A%=wM-iMi_>-a@|dd7UpR(C4U z8aHAShCt@w9Asr<pxGNgSWv_zaW6H0dO8XQ4Y6#MSn1k#<Po^Ua1v~BIruIQZm*X- zM`)okLt!BO|6V5ipB$BnRS!Nh6;bkeUeg}^AmoexFb?8qB)m&a48Ct=&0ThPDQneQ zJt0VYr4qS4md|3zm9&&BN-~RPM)_=hFAG^D#>d4MB-JlAbGv30ne`Ld0Czo1UJ{Qr zrMV-Oo^rQ#n<F+_srsq;h=}>pxSB%j7}uiLK^^Av8;F6vp|}5MB@f&Fph{c*^FrmJ zk&{!_>v4MHu_oDh&X|%io;jz_;Px{KquEr+UZ!QUHj;vv!W<Y>fUz!xz0O)rs<o!f zANWka*>qrYmag#{!_e5JeC5?E5gyBIWpYb=_^KZhZO{HHqBieStM0;W87nB^!?;a8 zjK~<B6wvRFU1TT>*;WxLstum~e*NZ6uNwNR>@&@qd`vuXIn)JT9k!E9L8GbssCXqs z4BPg_F2kbDIflwDWxLiQ89ZuIIu%XX-5Omf)ZWUqy8Dj<GcP`>{yq>TD+!XszQNX~ z2fdG3<5Ui>H%L!su_g^|SGuWXc}0TX{dy|5^7H%(-e22DjuM2oop<jn071yCaf|yF zk`KCQ+ObvvC5rIv(*{Lzfei*4DR}O#ke9{YyCyZ#yv0-4V;U__b@7a+bq9k!9kJ#c z3X-lV$72PtC9ktXTO)^01~+=l-RN4I<71z>e&AuCGhX!BHA1Ac=9M+1F_0;1&(2#2 z$m~1rDT!~EXgt<l`nsK@eL251Qg?#6x)yUdz3d#^wb26I)V)9lM~jsC8QNFL9ta3H zZO#z>XoYoPc*H)k)am{@!BwMkyj7uP`Vx>TWRte#?YxGDh6ySS0-ZnhpD?YGzV)!v zyDuf3)KDUi@7EF?N4Qqy3Z-?|RTOud$Sl3b*^8_G5-3ysG+?DlafQYE6r5V6|5Z}7 z41c;Ps&eF{c1-YFIx>e^LqiM2m^F5)w%Bhd4Mk0d&9S-O^u>ZY33!PmJVzopCFcL# z{QQbWoh&s3*MYe~UV=`W5vx$CbL=O7daw*Qw}3Hx_z>VlD$}fDAYp{x$I3R)2RLkA zqn?L{hnLXMx4_aTpGY$_Y{sq>)CHzWL7ZG5!U#I%1!xffuUQrq`N7O1&(E*%O5$`* zAZY5n4<?fpM{KJMjf_^jZkWxN(ctI-GB7{ig#RXUWmWDpe{GaThcOC{Uqs~gXIiPO zqH6yyIrO&MyUukGl|d$Kl1}1e`;ao$_kuSd%lBnD3y5v2Yp2OMH(2&A|4|;8?4WE{ zm;s>ie6=IC9;*$gWd_Dkb0}d}jfBt7&hA)iM<o$Fj}*WECO7g>U0u*ir`d$q9~vAO zt+X_Su=`$Rog$qg6{h0=)Y&gxCoM}XdXapD$Megr{N9Q3+4_Bc>pv|2`10X5fg778 zs(;hwq@o$EK4I`+kqq0CD+@8I`|({<Vc7agE8WltC~1nHKHPYYg#Pr)*GtIrm@4YL z4{KeGip4JY>a|p#|Msty_efPVDAyE%ZxKd1*lpt#HCcCeBC(#fy~^DQ2TWD9xpLj{ zO6<p3FcYR;qg!42mdW-GNP`O2UOYm+TqDzJGlk8Ok_v~tJm_wObF^x8y*PgA%m@51 z8~yD~`bctfb4jYsGLN8_ZLsZ^latJ51EBl9z|f?f!eGKsl4w=|&5#ND-I3{xVf4u{ zQpwzD1FtKKrD-2mS-y0A@%@8E0fF+Wf)z#1>)NM*G-CueX})TUhh>*k6-19?1+>B+ ztkpO(ws7&sWA(8Cp5l@#&Aty)*mYcVyK@_Dazb@dmUZqKgGn)eN*dJZvo7p4=iwzK zo8cJy@u}%T!<L^_ddGi;O9*|o=~>$v-u}H?XDb+l3F-F0Hov2CIWkf*0A}-42b(KS z6cI65s2<mXoDax7xJuu4z-<hl2#9rHY+)uKCrLrGn1W8P-QAS!`z~HstF+DLiXCq$ zbiCoc+M^x;&V>?!jn_4oyLBja*$6tas%RgTmE^U?y*N{0JBlN=9gdpx+>>)3o62yn znesMOSipdf0z2meM&pBfb<tRkhM$unCke6fP2`)SZ^*u>FAw~GQaGCZoL5Fn%gzlI zYRL+P?fv&;>E8zuw_wg0Q7KV&;j^h8?W#Pep(`SL`T-xsIt)u1Dr(HPvSn`jC&uQu z`1nFu2)*gX<N4b5{xfITkb5Uf0<hx$CgiKLSb?MiOb9UTm8B!~qbCx#CrM35rVe;I zW#teA;J(PAKYDPhQmb+~Tijo#V#f;rxUZEK#8gR>v&E#W3WcxfeEnLFBlQlg>eEPP zv0FNE1^Z+kCKi^weQ)?%PIvGwg_)b1<8#%U&zA)J75n$41fjz>iR4m*8KPhghNXh# zqf2p}m94Fu?aeUk*|GL138S#K7XE%kVFP0*e1vl;)6wL1`9UFrm%6rudS7?4DTIJE z1*6%hQG9%Xz>RlvVA92z)_#hCcmDt<;li2gX1JmCN`ctu8uZ!6S<dcT@~cu@Cnfci zIf_m-AKJfWK?Bs-wZwI1OghUp=~lFn)8U(hq(vI&i#IRFN;NufyR2Lg1)}sa+s9g+ zck+N-k^jbUYF_G8pC@dMncM#1#V0*2!`%!|Y`PWi3CsBs=*hT#bkWgtrWP|yJOF}R zZocv##At@geoPpci3*p71GG#h>jiqlt{Y$zD3~C8Nu>w}HM^k1Rq+i~llbHL|Isp) zmBLF|Bh-KFZU#PdxOZ5v_f5|fWCtw8m?rO~2@=~l8qU`;xNQrQCop4-3=BUJbmwBP z%UQy{Hi(SwMd&J~9a>;J*e&|KBH0*C^MUFC3+rc6zV=koJ%zPym}%lca!Oi@+v2iI zh-v?1T*VDv51W#b{2ZID7R|xFg%@g8yjZ?<YO~ka&gxfMr`U0Y)$Sw{tMXT!3vdq6 z&LtCO6MeaoBNqPp=*Aj6E2sR^uUP}JdW|iz4SYa9tBof6+d|SjIA4Xs!-~EW?F>sR zCM&PEJRERpa}^Z<ct5Ovk31-a3Qc(ijy+K;Aihs=BVRVElbf3>L}P+%EMui#=QQ<| z61|sy>s=1O$OfZpHaQg8_d1nufc>CMn|rP)KP-g7K(-E?a{+KQuUxCau)kx@!hE^j zs=LcJ8$i>()HME@o^EwM&~IW5hhcCiE%Qq~ih<-Zn{gn?9cvP+1Hz(NdOsl$$WkmV zi>TR3!^itZlXgGTt-);V`gl%xGpR^t?@(&x=jtepzcd39$|TT+@o{)oItuoCAC&Bk z@1yhu#b8;A)Y!PHm7;fv{K7xAI7;qYs+Sonp=rGjsq7#4?r6TUJ^!lZuBL%DKO=W) z{m?UL&!Dhg#a4hA(;!wsp)!@ed8%7T;?8wlE4pQLl#!0Z3yhbuay3ge<w26Jt9~lj zCCV8F@0zDsxv%k?nhRMFLbd&ZobpmJIFd7rIEM}B;}>Q|7i@$-;U6B2q_M-Tq3~#3 zk9C7q6|>z95w#@3$Y(-fs3?N@rE(c$k!|VBEI$-skTkvRifPg8qz}yvZy*6MZhypO zvBqg@XS?Z<cSwgql7b)mbBPVG7TA521C8qv(!L)v_RRnCtqMub3w2cpx}z{TR-Lup z*Lh|xxxERuG?+(bo-iQvQj`+U^}0Al8Qqv)A8v1+kB1I|soT%Z$>`$Ll2$Hr%SKYc zA~0K*O+V0?RG#4GwZ{{NxMFdfGiIqM^)Q^Dw#5%ZTUNw)zNrz8>cJl!UYclxapSA5 zK<#nHb+UTm1<lv815~hP@?*H@@2myoTlw^5`KG+AjvVm)rxvh~&c$tsAPOtjP2TAk zr~X%|7)7u{506Mp6X85@&{104^UZQt)hE4VwTIph3Cx)jjFS$vDU4npNMh4Qb}fhI z=aYhyKedTjD1??fk&ra~UOfZQW-zw4n6{YLOTKQs`l}LT?UGns9zen_q>I00e>D16 zK><#|9H2O?hrg{5mli*}FnO3>2Klm~NvJH;9OeRK7DL%Kz_s?N0~3Ot5I!yqE&!q+ zEA=Ttm>i0o9<;hiNwYKZhI<CayShFGW8ncF!HU;|f06@&y~3=*0~3Xg$?N_+g*u0+ zUs;17D0hbV2^n5#a%{Y!a?-AvB3DII_4_{FcU0W8^n@}qy*#yH_3kd!XlMjRMuo@L zPTz`dV&(iTU20wWPp8o6+<dKXnJdp)5skIx(J9|^cm=4<fdIw0U#DXDYezFBm2J0K zGB5pVkFh<{C)*sNml$tx6HwB1Ei4Qzjb8Z(kwAcB6Q7^Z#s)gbRj#RL=H~V%!U_ss zB~>4-<o5z>Qt%|gt5?Kd2vK31qkc&^61t#Vpgoo59`FmJV-a34v68)`)Rq$%la*|% zjUY8SU}JTGzRf&aYiC%ad}BH-y3Hz@0HfaVpzcfW_69K=4nFi%08vUzttSnhSncPx zDwK()d|AGo=-J?gJ#_V{C~@9K^r?P;rVk+)F7#u##NZJ97*jQ4MFs2TT*mcwQ&5<U zb%C+Iy~(Y3*_*6beLwvU67+1PIK>Z_Qb$8Y{NAx}{JZBDu<0Xghi<xt(FsYSm<H5b z6IAYuZWOnjZCc?PXo>^{T)}~XSbClTnPuGFZD<%&!w+?vk`b@<(gzcbTeq&ZM~AvK z6SgW*>bfQQ>Z%d+z5nXd11#YyNPkQ={*RthrnFkjCWi%jUc(P}!%e6L`GEA)$lF|) zb^g1tHq^INziyqX{DofbPK%XT-<Ae#8nRJ5)u^6KjHb7&Ydv^t_>8XOFDUkBiluV2 z0}xQqnxp8IlJ0}+U-}1s>%YftyV-BeIEfoOg83=|3+caw0B{Z;g0;f`4*a4Bk}H2m zMb=3JvTcwhew-Ova5@U|!X8OhOEhz&MprWubq?!p>nRjmM?1P3s5Uqlz{bx(!UQ{V zS6Y1|fP*Ur@9IJa{EitA76=?mHxyu479%6!;hI=_ZfQ<&j|z-GHF-1ncVz5sHqPG} zFchk_&E3<prHhU%5|QpU#a#?+Y(lPTJT#Dhh7u>|K)lLI$>~VZbm@240nyLrCnhGc z=HsM*oN-D+q@?%xnbK6{z<B~_wMe@&VMHPA_aBY2$}$pCzJ1mBPC-W}TbEFvnC8~j zPu*v&(-e@#&iNe23UYJX#KItr_ut*b-*bc044VSr6b96Do6g!W0U55*3oldRj#7zX zG)iV5L`t??Up)GI9~BkzZ0$gXDWv?KVQ&}uww@4G`Qc%T$b|_9pfE&}t$E~(FN&2Y zN)hqne2e{@t({o@daGM_#-{t{9O9u_%)onAiWqw2e{y;M-1t4KDl18V6Dcvq*N3(X zj>$8S5^ryilDfaIAC(N3g&N^Yj6_a-Mg~0_^2>f`(>L%vcQ&)p1CmlwHNYC?8}0w+ zKRe_H2<k9*!FlD0;S}yt_EQZEu6qbu;LcC`U>9nhhryqRo*Pu5Go3SC#yhN`kidyE zfb`x!%VB|?eCbB?{v9hH3%)iKaVwE$iTcbR85aV@uvs}eFMkCr__9wwS_7_nEfn!y zASj6c)m#Nu9qAvqW}GeaI{~8GB0ZRSIbdi4)&GgCxa56)Y2jz%g3m^xD1y5(xaURS zo$)sj>)j^H+ceq4Uh{xD%O)x=D9y0SDKW|PO%2O}fAL=-1f^(*=+v*05d0!RKV9S= zHx$A6sQ>C||NQz#CeWPu=MR5BTEF<9{^#fXX%2$F@F?{E^%sS?Av(HpHoLmWNLc>z z69S*!e+l`2nGHZ(_}4e+C^^U}DHH!1$n=-ZRS0QA9su*{Xk%o5l%1-vuPJG#Cnm_Z z5dTjrsq0d~txE6#IRW<XKMquKgFK+{`v>ftZ95v|nJtOwcb#rq9~5Sdv7Q;i$fb6x zUz@l9`;gI-s_;7=9?T~Lpp@#8%3C3=rR-MW0<5jcK7@#&uyE>6;?x8Er26Fl`$@|h zVWXh|83T|6Om<Xd8`z^MoHLz=b-DL$%KUGjSW$EmUsy;ejJ^%b&C|CQVmwR87BF9| zd@bi-^!K2>@(>eMPPn?q9^{-|e$bAN{#r9&W4Kxi*0Bb032Ch3d&Zfm0rW8jNywEK zx8Ir$b^rN%{_~suYkd6o6HTv<hb2~A1}Wbke0N*DlKVl|D7GI$#rvYf`w+t93RSeE zrQ-j5vY4{Q0<|*pzc-sP<Ozrf-lQi(mG>RqBqi0Fol`;CDiyYQg=9h#XZjZS@9rf$ zkGfI*zkk`^meqg1L2c<mHt!p4?lMpbO$^fHsMN%uv=v@n==H&u1`hQOJD2bG`;XEJ zlhcZfzv30-5@KRW^_4V%KO!|2{oD8SB---g(y>Njfq3j%aQ9NuKMqNkznEabm_m$m zh~J9aH0lN)a``{eUrJIwAxVMkL~SkkhTvjoVm;4iU*?0~<#rYVaP|TBtwSw1`mg?d z1G7GI^7mO{ojiO+M)|P~cyWTy^^2>)B{H7y>bUz#A42?%9$x$5WSTAQOR#Q3Darp? zzm$~M=Eigs+Jqc_iMFJi=<`jG5{aq`4c30WVxj7JLA(}R7H{nx4Ht0W`{SSF?VmR# zW=pKAqisO+PWZf_P4H0!eBcH8Aw!WtUWoBmA6=N_$Fc|go><m#{QlXj{=7aH@Dog{ zIvkirBrbLX5|=uE8XHsz;SZl~RMezn;@HTI-xQo@cp-ujjlbVGfSkj@*xGDwWBg$> zriaPWNPLA2zLyzF-o{S&6dy}DVGG;v)g-}(3i)nE_urlI@0a;wC<Yd0&%0j0CIG4K z`9!6$sb8oz?cpgU!Ttr`<Jdi<ctCE|l10iFh3$V<bF$omf&wEh?2jedtrc1e%7Q!T zoc2%HC)NO|n#$&e8-oNYOKKHg$jQLv!PHbwnkosIux%)%2?wpNJbh+r?45qM<5n&Y z4i)*cN3Sp4qD=}<e^GgucOtQzTQ~PaWU096V!fmD!pP%GW9`PzRzO_<Cs@#o&trQH zSj_-Nzax#0M#eXjY+$M)&k8E;H;-bn`H_}0WtxIiL?OIEiW!fp#-O(p$<6D0b+xqU zyMnmo$Wr|$z;VEur#*$+jP-!_aCDk&Kia%fA#L$l#o0ZGm?i}mtg8P1ExaFn0Y-Oq z<uK)~+&KjqS^H(&Br^#Musx!o#S+P>stQwOEH-PJDPUt_q1kTKoR1T{j+Z&dUO6n7 z^&Ki{+Ya}-Uv};#mREee*KueeFYzW(ZE_k**lBMjN_Ou4X~X2>=kG~LW>xRJCeJ&k zW{={z$iNYU^g5j@uClt?f!#hn9vZ(l?qImGnwk=?pR&+q;!}A=XP(3*N6yQm-XCWp z&z(7sVX8uYaXFW9bx(xNt!{Mq^ai?N1Stq<u1-c9Q!ObIE3lrvGr_EnSXaql>O%<S z4*GvqZYm%GsR6k`qRfH}eiStR$xagnt7G5IA*qk9d~VQ~_!!bl^DH}~i6flk0KfRq zT^x<W;U1mo199*H5OsZ{C!1XEmwh@Z4lRm#o9zP}T_q&;y9(`zY>y{1^CIxj$l?Ko z8fX+F!e74<bcgN@9OnMvTe_Cv+bpOlA!y66QTtuzd)t0TEjVbjm%3Kc_F>`2#l|yD zPRo3h@_m?$n;0#}!o(J`i6Oc~_@4(~(F_2ecv_t!h`LmyEmH3N8$@mc)KFuf-*{QG z_sMELcpitQ)I$|4k#*F{lmaEKc8LP7=Xu^sf5`hQyNWu%1y&41I$jb*LHk*mk3I22 zQa!2G#-iDHm)iheRFi{;%l=>(@|(_5rZJfP>%%1q{}euFdjJ=o5EGNQ;5PnCxg{Pm z4)iUoUAUi4#zzjhMNgnjbTsWvXUl3M&;^3U6aL=70OU?JM7$pi2~1iyLSx{gCnqOM z3di;z3RD(+%s3SnH8xiLBJAl2L1_;n-rx@6Yn=|xJV5jZ!33T<0E`Pgu*bx}5Eg}3 zS0ujXQaMG{Rm%AUYOS4m{En}wGscg3Y0divWzNoIE}m&WJ48o&`%!FYyYP3|PD9BP zNI15FZ2wPz_p6B?QP=AO!e9=0eW{W*<1iqa;tW&FW5z(9FiS`224$UuDCDJ~QGAwy z4oGZt^`MUZ+`^aUgpeU2hNl$uC1k>Ar$ahjMMc9+`}$R)3o4Xqb-t@cT(X8x<Xc<{ z8ZK7aw{HN`m%HSV5*iw&eG|uAqavrM&1C_Bi4TQKWoGXtC9nKp&z^;wn3HtpcZB24 z5oyCM`DlWl`t{odPZVL;S5^3W>3Ldtjp2FrR*kh$;Q##3PVm>E<Ffn$(8T*gpKo>m zYsC!M7I*8~+cSZj+{Wz|M*r2RvWQ4Squ)}83lo5K51J#&T2`AK<zZV{k25iX1rB_1 zqA6c8U7I$CIpg@|rqEs{t@Y++4$o`=17kB&aU%ayhU>jyY*Lcb?rtFf>j?3`Tpk!4 z)KF6o$K$ckeO|WU*csB<ew=ci`T-poiFA)laDR9NOt`FGBh_G7?wqP0K<_TFO8vXy z5qce~Yt$(A_x3e8onNz#0dityiY#SedH%s-$=N9}<iS*FcjMQ;vPlh=2iuZZBQD3+ zt`pN*e7?TK)B3<`kfjzYjxLI4e-J?f=H$RgXWj8)z8Rj8p<xn>DZAcbA0TM`F!sB0 zIGjdC15Ose(Bg2|BrAElpER1r-B+vr?EMpHMQ(0x1Z%PZTeigVGB^{A9B)5N2p&3@ z>CPN-eYu=Ub_TOotEGUUbQssaAtvPe><eJUPp4;L@wvB^LQM_EID9V3z$|I8158C@ z=qEg1+z&S!=$3T~XZ^tP<ts^@{ZB0b*cvG!@k{|Tw9&%UIh`mD@iHm>X=!8bKyKpJ z`EAnfRRF^!5piDXf-)XQpYwu%yfPG@&iklzUOo`t!cMo2o}QfiJYE2?X)#fByL&c~ z3GX&CM5)D9XELlazj56a!(+n?X4ba=tLQ!6TZ;(1>67E}2InX%aG%*1<TStQveM!t z;I=ylY+dli0X!p+7yu$Gx6wKddjb2mb0D}v%K28lg2fp0K}lYIA0X%eKCM{!)<a3B z(JnP;Cn(3TC+d};V8^`kUT0%qhmJw&h)(raf(py$V;W$P-s66$4F$z)IsNk4o6wyR z2X{XmAY(ldoQpw<fDnWtUMea=0L|$dR3eW7{M*@PWjg>}vgG<LAI8tIM#XGDFAT7w z^0+p4nhj0|z@lz578qLw@I@f|Z$6jx#zeXuL0pS!jn~oeITAnsX?0p&<u|959XBWh z-NgBGasx9jRJyNamUnOXFYF+^y5o-J-&Y73%N^wSw8|Tz$R<r2a5rQx@XStpvccqe zRFsUj)c)q~uSTPbHwwM>1j`*q&Sg+5Q6;UnccUpyP-uhShAe>&iK%l?<=A}MI-o0( z=6MP@5TyLQFEg_#K*jJ|LV~oE&nUZV7s?1M>zcI7lVR{sM0YQvT@~XGrg#jDi0Uh~ z9kZeWE*0z5yDgS0*7PyNLMk#4*xe0*QFpC!t9WiUHca+(<|cp@h7q`%7`0~Tw{=)V zecbr(%CM{REiwLziQV5Tt@_e|^YOIu091i?In_EW)=$r3fB(!h02>h!W>ZQS#k+UT z$Gk7hCg7@!S(%s)hBajVpi}`^Qy5A?RrW>vSJ??Mnf_6_di#@@dyUa#l~G{Lt1u3{ ztAFwntE`pwD{9P0ZwCP9fS)~}PML`mmWKHT6H(*ElUAiM<OkLBn2GUQjCa&r$@8BB zpaU$>GqLdW%M2)ny`u`@7(Th&0>Hb5GXYTC?{CLfu}&wnu}R7^ZU(6zlJ<^T%r-;j zfm|K`4OEuG>D^`b&Uu4@tk%e#vmPE2E-TXhD#(T%eY6|`*~a1TcVf9XN`eLGK^1S7 zwuzocdtl2~TtBG)z}*%UU$f55$q_8QG<QaZqgJl0G#;kx^4tOWMi)T-1j&L+3}9e% zznt6|<u#Fh>#u*RR%>;XBr6V|j^IRY{^0!*Z}{p~@?-cL4*xVb)U9XMhp`&`!*3u< z!s`Yk)LRoJmE&Oh5a^?%#$&a9xNix6eaN7lcp)#(Z9+ps`(Ck%(YnHvgHkA$Q|D(5 zp7S=Hws>1WEcB1|cbuM|omIcEcYU6icxLzTXSeF?AQcNw1iJuI%^J#;kKYk6uAj=w zD;~}_KnjcpHAZ(#d3H>4l#MR-l^64L#jeJG|6c9dO;Rhe?D8ezEn7eh2c`ceVCW#I zB=c~w3N!<D5<b4rO3tc&_d#H{t9NCs0`>z5QATj^`zN;H!^0KJZZM-87?t?2wt;<a zA{Uj$et)wUCb<)78*zKYV`F$<2I=pj0C-~oaEky+-{yJI<Z%6cwUYcMd{DVGf2Bhl zc5QYHJ?~FVWSy;qLsIGEzPy^E;uj!ltrwO>my%+<#SY};UQcY}(@lPV!$8{At+&!{ zu;BDGrvI9DkN)hblLCwwSN^Ehr5@5rhZ2oQ-hLWEM*~g+P^+s@SdCBl+U&H2Hf{0u zJ7)pR%K(fe@bhH<ic1sHf5vLrC+anMrdU=$)6dnl4ZQ`hp7U=si%^r0WY3mO38tKT zLEmGLxWfoXsRW+-zo&wjbC{I$Oxt>Mnz%23acMR#A|w)FN$J9I+fL(F+9+#>|7GpM zNp>&|iuix34_Et>jqXqEGirbx)avn@m@FJovPjkgoUcc9VB|=EJ)D<EE5i<+#NLO` z7eJMFFQ%OD%N{`(X4_)adH)caLv8M{sg55LQ_)J0$Yi8r3#H!ITL+Os%$yp5#2YL^ z0#o$<0j|Ffr;9|Gf>l9ixYb|=qF^+M-spM?fnv{0A-FPvfDbWG$U9%=<XE;3I2AMX zj{zPDMb`cJ8rSzz%2AedY6G03FHI6#0HXe90FKbcC&38*X}MH6vs^YGnv0N9v>>!Z ztN3n2t>Oa@59Git2-?@GA}D4ZEjt(Jq!TdZOEWVug@gfm`u%cVX_KB?nOd9U(tfUk zbO8)Ln+ujZ3L@gw+yn)i={UcT)Dj&L3M=m+_D!Ao6qUtr?a#nrE=&x}`8sp0ro7n3 z#-zwd)`P_*H)IYDC7ntKUJOjC?PV9w?>t_nf`aSy;!IkE%W-;8)j0kOCz_=z)sWZO z_7kFj4`)4}Bj+yo@=&ed^Y!Ijz1>mIm3hLM8Wxq8%3~b|$ao?R0wZnJaEnKjZApjp z$#gC$3v`k9jO8Ly2xpDCG!775@W*~t;O1@y0uVUIJmB(Zb9lm0JpWOaQ{5yJ-n?Dj z9~lb9Gc1~&vzr551w`LbqUZAHXt&zwR9hgDy)9mlNoOQ@iU<vLxtQJ<x*Y^0-i<}x z4*WW?sB|BkQ6C<SHNznKBXDU0nC4StIRBqyhho!a9%M>H(ibBW=3~u?VElf3dio9( z<8>u1yWZOAXW2HZ-&Sp2s4r1>#V2+I9V$X2u0T0{tzd9)(Cg$1wT!}s8RRxsfz}HU z38L-KeCHJ2MYPzQ;cDW6P7=UT58h!b$jh%S`gcjNo1{vtzr8%c^RI_{m<oJWHZ-=~ zV`c{{8<6Rs5HYZ_W>L_p{zwW%19PWELQTq2cx?XPCnij+V3F{V5u#@6jdmhw4rZrg z6Vf~ZiytryM^ji)YhU;$m1(xM0Ie6CaOsov1!$HAzW}rXq9QO0_lhga=)%~h`{}aV zZLpT-v=AtY9X19`r&m<r<UX>Ovso@!>RU|ya8Uq)Zc|fKy;q(?vQTa8KQY5Ykvgh+ z>lr!$?zMgC2-udzBGZ9#FqzTdskGQ+PQBsG3(dys02Lp-&Sv@b`=ZENC*Y{rE^VUI zY61VGDOX4HDpoxV{a8DtqQ^d%GT^Io=5e^p0f{}E)F54^1I<}KnMAo3f~6+e8Oxp; z*YQumNFA&`=1uk!Jt$n4SIF!xcO4p0zimocSr`IMFl*c7=a(o_I<h(dKw@U`|8N0$ zLpE=OMz4^rawo9vdNgNrGp!}^Jp><NP{CRN^WS=KHzUxEKBGIkbRSi)y9y}!yJ;nn z>6~IUL$fWGLV$W&5P~voHeWArPwPPhQ*p8?H)2K?OvqhtA7JHSWMBZ@-jQ&mNi=>j zveDuVAs9?0;IRKtC<FsTt|cvyYj~8z5*V4ZyF*y7cM-`#jjb?|Df<2H@qV&@BjamW z5*((+DFXsLJUFHWxYCZi$n;wMog23O$CnxmV-}S8@{eK=#R_<8CWTHdy1(9n<7goK z8OSEoCb)n$kS{J<qvWTXaKO%ne|Wm+DQyD$f(jV8%mkDyTNGF$%K;cXLK037m`KA( z{PG3BT*c$y;F!J&@()PoZB18cRuEOb?noq6l!NFxN}x+)vp?1^AP&HORQdBFw|fE! z%UOT+eF3ic4SEFbq+d%Fh}(gqLgxqGqfWqK1ju@q=QRa(b`D5?S?t%(wU!fK_t}w( zD8c1GSyOWngdAF$SQXMyvk*|;TTWNYJrf(~M$u{hz(o?7j*oNt9WofTv7@i4Bak(H zJ~uCYo%1?=-`$6QFD~(dSaGpl?lD&ETAoHzuef6Y<fuf$(}p;B6Kr~ECdK&b9bc7U zPA=SCnVrm4W@?NI$Ob(2EI~s0%MTt+B?Ca_uNGA0VzVkxWanLZ0O8v;Ur{lH)nB;4 zsOtae?V$y6p8!Z1KiD+wEw=EbgrEq|HQ6(LsxDQAe)4$owe|h!)8)jH-D_D>RXo5d zSs(UOr@b`Do&-uaFdPTDJMjA)NDzXj1Ku|blMLKK91Ne4IGMUCK{ZvSbjjgh#P5v) z#Sa!Kz?M0X5&-aOfTVkZSOF-{>-8x-5}e@X0Y<NHkeQTb@QY@|OU|o(yWeN~Cw9P1 zUMfzor>DCUo-UoM?2l5Obd^B}{dE0>o7WSGD81w9&(_OSjBDv(+{ja3nin!i;A|UY zIoN3TB=gcn1Axi8;AYCTo}M~Q>N)CL+=XD_0v2*KU$qi8_+|-uqv#KzARGeVuVcc2 zJ=?5)I5&?ZFOp_4FbD=no`IwFZd&J>`cj^fJzT3`;<u6;WF*hV2IAc6rt<2irslz= z-yWJ~g2q<jotos(xpO?dzwMuvwoL7MPTGlRE<ZJt^?o{W=0g|X)5i-%Q*!uvH;nyH ziB2)Iq3t52DSE7bEn47Fl`Ec+k=dIwFLC1CxEu-mr0(_65<VKlqNp(-cH?P?;3$sE zWiNVMT~WOB+r_}g&tW!Q^u{IZ16GphJy{hn=Kd{YL#(n?52uO>#f()!VPe)eF)=Ba z06*tbDt7`>gIwc-8PU}+n>Q1mNlBQQEc8^DVp|CjDboc(6(B*fTi_{xWFLt2`On2< z_ueC?6t7R<+Rc+iW;vOO1(<<b!5De~co765_REg&X6F;z(-;k}>w0PlIpkO>+KKg0 zRP|GVvYY>kcc#fi9P?;+A^ctbsagU}+TisYb9N;{?r4VaIRITGe%p6VA<=aIMI7PA zwnai{8k_Qi@1BmbrCu@;-O00)yrhSAYe<q^ld`$l!2KNcuEp6&b1)Q~XDhe+p#&mH z{pY6-wNKW>zqtI292i1>^;(u6Ywf*wkqc%%xSGtOZ?;uJTf7Hw{7q(isQikBo2F^t z40<11=i4q$eTm@7rpvW@oQT?Uzbx*q`7<2POYZBUC;h_q8Tb7{0X5Rnc4ua4n#SEY zx~YQDQGes_^XLiy*{(-L<Q8GC34VQR9Eb7Tu{+yrrgSiI>O~y;<<IA~w+VT?<e(U$ zZ(+!8yZEu=b=nx{k4FOu0VWUUM<`z7&o8y#7POQDFRzw~YP*3DQ2P+ue!HzgQ+`N? z0;RCIP%2W=jq&&~<Hv)#6%kC=SUd7n&rNvW14Zr=q^bZO>V0fol+!8`E6zK0#NV>D zwgGGEEnl8Kh=_==kCZPpch;tjAGeN&N<|_^BIIZL0j?B?<Pgl&@|mY~Rj)i6Bp+PB zqu}-r#BqNiGbTg#|Nh?%3$D^nbugzeJZ%N|)2p^ei4C_$6I<;M?h@bXz36+bBp3~c zgh)+mOlUMbQbx6-!@y$f0D1KY6sX}vMG~DbjvV<4_}YMwA>S5|pJ%aDZwwgr7AzgI z^o>jmeWSGm^x@lI{;37PT15!@Z|Ir~vWjQ{$gB!18fdN?Cg)~mT6K&Q;s;nkp79ir z@lEC{SXO~E)8H-kA8kg&^6#D{KTBoD*7U)&?1GAr*WVpm0m~L!ss3?93Ahx9MEh7# zuN9Gvx%{lX5OC@&);`gUC@+a$(ZM^mmue)0Yh16BXBSFU<wayje6#0)yk|)2!o<XE z@w|w%R4#PVA(t(>=swsm>9E*QZ^}d8DZ-sJK^8&qSe#!_*%*>J8X%0frBlRps?{vJ zP8dQ^|M(FH3a5Z_a?eyZLnq%!YUE)O85I<PdFi9rGGBS1zQ<%&z@pW<IFIKN=8Phk z6{&Fs!v`uRonF*Hfjcs%{DFlgV*fPp!Z;^$WGhb>q>so?gEH8Lr`up`4X5gy#j#@? zPDSelzqT!DLQ(v+>hT{vg3#n_<8%(Q*-!SKRo{fz*iO#W=hzoBSxMjN35<2o$NqhI z0`A6!24{{-+QK9xC7lgwMUNhfZ;3og3Ai(mcO+JmRubM^*t_*F2iAbYqc94BrmOKr zJ<o;y*NwdpXpuHCF=b`N^~Q|mlxAPeetg6cS6>u#Cx+0!y998L#M~rylQ*WIYm0a= zvs7crQ;s@A#CW+E#^!HN^k<(3^>>s{K6`*bd<zY25d#D1;W5JU+02Z7n$%`1Ce@O~ z^&_`3Flza$i5w83r~*+|Z3F#TSX4P-RrIOvsECw|%&6|5X_rO&J1m$*T&3N;y?5`( z?UfU3m)KohITf>r+Q_^dK7EK+t#@Eq6Ah$imA262UT}Cy4>On3n*pUt+tL~8DbJly zCNl9#UFDNMzUw3|-i-$V?n1XZX+TG4bbCI_x~(b@dU^fSavw#!Hl9n0Y4eg{h{kw0 zn@)mS(tg^aM55;Y=2vz3^v(_;B1!oI>$?Dv8kOO4&UNQ}Cjtd*5nh{kC1o?WNB_Le zlL&?A7;zR7i+Y0ykx|;5PY+k_nMm}K+v2^2jXZ8kjlX(nW?C}J^Cczh$M}t+N@LhW zWWH5yta9fbY#HdkfraTZhWQhf<YS|YlCUAb$tAfI$xvjqT=3YK)~Yu<nyZX4do!w} z=rGhPqvQUFW0Fwr^<s%L1w2O9KOcX5BHvAZ>1AVCU8){n-<XtC1l-p0cJOgIN(d&I z2;yDN6Bwu8Z&P(D!XRrj_&m?IUBk)A-pL=xeEgIZ*qHOM71>`}kc5ld94aBvAkOis zj!^AtciIJ{*=+JXZ)W3<KisXMs}x;~r?uVT=ax??D=%{K))=PIjWO6-Oh`7}OPC+b zVg>|2$A~i=dlD`_Hfwtt_+PBtw4~eFoNYnFZY47C@kFe&aY}rY9G{uo(v(qm615WO z4-ioix*=wgBmV=w`}+~wWrOnxf6GNqOguJHyASFybFQA*^gXL{mAyytZpOw~2M#ne zQX`&Rl#A=G&3Wft#b0MmRkkKU0E3hNds<AT`DiAX7_OS41H+HGIdP-2OpLj=&5D!$ zO6TR$r_DF4z{f+S)vKl{+3lExa-T{~P3?J)`Vt0I+p)OUW#X23ngqO2%$W2PWO*_L zFzG*tsNP{i_YdJ)_GQ<q0G1wr{TF?Xm518blFf??D)#nFYk4^)@NrVD#hZmwwMW9O z^>iNB!6D(@_J%T}8-zISj%T*(l|Q;{Gd45pdJCM5<ND=or<ja@KDdqoWas+O3y814 zPzsD!G^eB6=S4+Sx34v`JW^)7w9#+9`M-sRGR~+4!oXBKu0>Kx5R;cq?%bs#@P7`S zzqc{ZI7VvzX@G3*eQNFHe}Eq=DQ#;xE`KCec6oJ`#Ad#Jy+54l7Pb3=c&e_*zN*LJ zOH`vWxTGEIf4-o4rMH|7F=hXPP`_D`x}O@&MMNW(>J)db_IbI9;(Cei)x={*n~sZz zvrVyf^t95m);35w!_p!KitDSRrA{l&5W_L({ntsP0s}2PP8|-xkcl{WsoafGR^>nU zhc!lRV~w{#%ig$6-qC!f<XBgwrLo1Y<*0b(ByU)qpX?nKXW)T@>&<)4A}ELv0*|1c zE=JECBqeo3yh%SnPUSj#hl+2p->iRC(-e9au)^zt;;Tb%REmQmnfwuX&m%#1c3DDM zDl;SFX46agCS^oCyyDf>U%(P64<T68BnQe8)9-R*uhJ6|MyP*Ae@jn~Y5z<hW<C4k z8+tlFBG3E$ER2I~B)aK_?f`O+yhnCNj{T72qD1lGZl(~ZxPAA`{a~TQ>|R^=SBM75 z@~yozU)3jl<VuT%eH)l=42#vf1B3a;u_1!%OSIbJ>4RS92+@@gePVI#xKt@$K{Jk} ztJj{gDLU3g-uc!NpX;)7{761yZY!vd=FVSM+6ewl0S%@N*z$HnU&W3d%Tl>6_s8O8 zq_x|4&;oGS3RmxAqCnP+i2r7K!^7SEr7+Z5k__VSh5Vh9O31>hjEsyIg4-2)^$#4| zE>PsR<_@x1Ftxh^&~WX&>C1}VzeWz7NhP0ye_}~Tuw!2$BIiuh8Y{sGe)^v-F3$M{ zLf%ly$>WrYq~yh9<zvsHFEcn~ge8;)zDE_-M><(~<=9kW4^1d5#{T59(jc9W2g^T& z7e8C!LLtlrIwr`+OUv7%?QXp84}w(hggU>b-vT($Hs@y4X0US`EY#B~XX<<uFc!d# z%b1=JEd3$7J+H-LO6~}W(38Ops!CwM83`QOd=Vy_VG$PTmi2oVT4_EvJ|HvrUf(Gf zOa<V%ti-F-ZjS1#<?iWf*fYfV%cs(T21cvh5x8hIkE*NyV9?w)@0YG8%7L?bk@0Xd zhS$WfWu?bmB3alz0I<J9qmC2;*yK{_jA`a+)HBv{a#`Ty4V)YaH6b*M_CP@z+{K@> zvoop-xXE6`^TJnl00tm?91!=Oy+`*18yj2v5@$mqJX!Jdu}=)3rHQ1$JQk4W#)4RJ zCqBB>0eE$R`7-n37oz2wduDo`s)#USsHJX!4B1{M@`+@*waL!5;g(U96<Yxye%8L0 z2$isz$RAnk>-xG9!J%SJMn|C|+xPjK%i~e!S!$qd*=^Fj2j^0rsDdv_?0?fZPcE`k zKR)m6e=A>%kBf^WnC-@b$P&1cH6$YqWikVWdF~VLWq?3T;(hk!AKCkT%;Y)%a1EKs z+^rXvzFwKq(KPcA%M$g`UnhX{6f6sMC-v@7v+RHf7sP`@F(0j^83M!|XHQAsq``_x zMO{clIO8fVjY32=)RPT(F?xPvWQ>hS2IlX^ODMAu+mq`ELKf$dms*~qCH~w|;?P}` zjAD^!Tw1~x;$BndYE3{a<1&}ZkYy|GNCL25rurMS1GW=yT(fC4(6$qkNzohBi3Bf} zu~ag>v<!Pd!_zqs4xhHbMlG$l02&B7>c?Y})8QGf@oEl~Lm!mEB+RfcMi-|y{NFve zrBj&`N+Fl&cs0xX*RLXPXXbv!C%~7nbIwW%5tHY?xxl$U?N2tlAK6X~`s2a4`E5hZ zd}bvN@tc%zU|;}L>4Lf}jm_QmR{$KT(n)(B;7!afb<Aj!FT=xktjhb#OQ|?eo|`sq zH}}4&0G3=GH-U}um!ks#4;$Sat#budzyg1F?O5pWQS;^z`H)ZP_VQvu<N52bYWFNW z80C8RU%5rlaH4jJ&1%K3F%uNFr^{86Rajlw8OTLMYSlnFoO{`e42{)bM8EcKJ-wZH z#(F70m?xo?yf7vRg99E2tv!J@SDs<-V2_i{{B_9EJ(4{VLY-l^m;E*!9*bwvdq2}N zlI2GNJnS}$Dc9N%KyE@r(z}%IZzR0+{$i62b46sk^OVgs1ZNAzt7k=N5BJ8QpN2<9 z=4y6`7S>TBIX(Be$#ltqWGp8IfZf=5sv~BK$I2WPSr-_DRxOXV>_ZH}k~sEDcBL(B zOsxPk$v_vSsl_!mIvVGa>E<win&+MY*HTt#h*_Ml4yEPkPlStT`lD?3SYs~JRcz$* zv~_mzJta6nZoC^#;dL8Jfgapa^QA5-D)M)MpaiD+2UaB(B`Q?R?qx(rQ@WRvl~8oG zt8B@q!F`}WZ(?lBQljHLQ+s96%S~MbYcWDifnnNP1}WT8dpO(4`hsAQANegO(kn<v zkNQwF%J(^&4ky!z^v;*W+e9%X0G=xvnat>N*9@?^sIO2?-eKDCor@v<y1xxW)@%f) zqjzsDkFOjY)mcrdi@EHN(M+-z{DNd;XH=gaYeLH!U049Foyy~P%Rw2Jm{-rkaqcQW zf!AO=k6Gi*O=nJ2xk+b;1#5n>d!&gHQ}pY|TF?5n!rgOn>j9a%;6@^_i~Zlja5tmX z>U2S0b!P!6WGF^H67D0|m<d%?rJ_^*1iYS{?DaVV?-(fGWWj-&E!(q_<kr=i0zuVA z*SK%ILYs-#!5VaNKoRqFLnu5v=oC{(r#{~7*%u@R%%IO;Kf*+fjMCAwGHTZDIv+*( zwb1BQBe^_)O+-!(Rc|`4#r4tY*QxC(MM3(7*WEg#IT7Z-G-5GG904k(>m~l(;t`Ac z`<ufP?&gFtO)-|XgZYLQzf>C3y76OYFe+j;5cbV_b=61kM;YQZsXyema_y77tICQB zlnzONdD8~P=OMGP=Dj~wFWrLukzScJK5&(9Gg8WT8Wy?0@w*l{G@EWFw>kaU9-S7m zcK2Wu<=L5`D;fyHRa-{-+&rE}2kc!7)mG4C09qJHz}F&ofrQ_9tySqNByDx<v!uZR z8G*)Q1^O8C{keqA1xlHrFKMq}uPp+y2Om>+{!W<5LF7}UjKt=RAQ~XqaX5~vP9p`C zmf{$6=jP?%v%9~1iDLsV<oP|TEDy%^a|ibXNU#YnRlz3;eM#6Sd0{KIuj-3EWt>D^ zKM?Vj3z}9F++8$S%L4B)W|H4IQYks>UV_{tCZf;#{YV(-`@3Q5%Nx@Z?v{cT=9^pC zanikn1Y9O|coUL`S7zqFbSK(%Qs|9X7uPqw%T0ke3Jek+!kP@+>B;=vy$bGET0@sY zo$~8NH3i~I`_Xow78ey36?o4H*aPcZ2MWeRK^urjeC$2JP;pMNp+<b?GdXgQz+3)t zNTaLXwNpVsAu_Nkd8V9^jVXX{rfQ`E&?p(XKGOsy^J*5a<@mjx$Pc%kuP2Tn1Chc2 zkNk0K06(9w91docyhonpE?i5YWr`~K*#F@+GbGnX?Zj9MIC8O^{vZg)QE)XK%sjFi zmSC*XCLOeYhumWsZYMm{mUtXtS(<aA`+K%C{5y^Ic;Nmhad)&>?a0<#znwV5Zud_u z;LU9L45;z*#~*{>8!`b01g7Xw<7Hqd83#whuL_&KjNIG?gTclpp&ovKRgsIGE>~my z%uguq3N*I?eO*91y2|1-SpllVzp9KsCBxM;S}(hHAnaekBZL*;sshtm=e;uy&I19q z37~QqP>gur)n}4Y2(}Zkqu%hqEelo~{JxI3N5;RnLh#1z1gk6;beU!>3?TY|{@otm z7iL9=4p_3GQEBHinD|T$))Hbg+4)B+jT-n*L9P$blF9;Ur1#F%25(-PEo|2mPg`+1 zuTeFt4q6)+)HwIPQ?2sO-Jfsh1a8WLM#TcbBhb<@Ndq7dQIXyhUgtePqBzxmw3j7D zz>6)Sf9!o_+X_6OSw%&S&%bO7#@-E02O;iH0T?NL7ZS&ejyBj8?NCf->#epHp$Cc8 z7h6VAf}Qx8ec=y%fS(zOkkOmPYhjvZc<2+6L!H5Ih%fDNjgDqoO<&N^NCOcUTMvF> zpOixeC3Lx2Y4J!##86&`y%4S!5`3e=2Pa>9{L4>;)wwPR#qSMk&U3su8+z<l;MS_~ znDGQ<HDK2$3`R|%`@#65S0>f%>|AOl4RWQ$U09-A&(F1jJtdH4-pSt1q2B(Ho2OXn z083Of5a7EstK)1v+r=fGZA`Ytp-WndBpRc);MTqVf1`1G$2@CywdM;j0x+lOf~IVR zs@J4mjEsz6bTELOkY&+2>R5|iqjmq_AeFPR95fzK*3wwbA@r`LB&;jJiP(7b`zNw; z5P4b7d{S9i%*_Yn!1gc}8S4BzJTV$MWm)~y`ht~e->eP<E4IQqfV^5J_AGfr#98ln z2=9x6U?K4DBy)U6^PIvCa4g9|bsR1tX9>&pLRBVG{4Sd+Q!-e{s{wO{!cfW6rTzft zmceeacW?k|g&?YT4Z6Fxx6q0XzbYFa!Ce(pJWYn@8gnn6mNbfh4A9sfo$r~yz@bd3 z6SXK@@9Ze~*$<w*Ap9L>bgHG&ESy6sk<vtIA&A$FTu$^NRYX#dY3I(LfMX;D(uofa z8V?m2bwLfE+qrD#og?vp<jiE9`Na86=F%Tescv+`V|l$nQ!P!y6HSHw-UB$yf*GS| zo#Zfjn4V(i^FH397+ADp_r1wX8pE6Or!BvQZ*9%aTyEz?hmk-bR>V5ju^x4-J$O(r zB3}juXMoMRvQjS`78peMMPMyUXnr5g)>|;Rr8nB7q;R<ufbt1A7+6$Bh;N9Mt1_-E zm*KMTzr!P@eHj`GFZ`Bh(Q~`YXM0H731GuPhu!aeOiX6`@ey9ePZTTQqJy4cMEDHq zuQq5?`hkLT1w{oV>b1H9T?{DsWJ7^b{&S?{!tr1bPbDGXgO0fhjZZ{IX(_ZR=kyj3 z@774>b2?jyk!4pWD}J~?D_6b8IJz)-&SGYNBSW~bve@wIDq&vV<{(JHqI3QSLTM>J z=W}0mDa(hsAQgZ5{CJ<+MQwDXPjeZidHt-|B<0jFBg>q|4J~R)wQ2y%O$|Fd$KhG? zwV6a9IN<e+fW$vzwXcFK$%t)f`b=nNILL2}zR-;@23Q)O5mu>=`%4eXPR!X2JX8jM za^=iMCj%7+5-Y~XS+5Qq_ZoCcjZ;fbGG=Z@s`+31E4AvF<mBYF4e;>r?tw;VsQxe@ z{+yqaqptd0A$8<z01J!Y4JvA3LBX!B^&l31)?Ev*r51P~boX=%#nA#p*TDGOT1ay- z_phYOk4P+0K&jT(KOn&ET?0`-#*cY4x*82aP%KJHl9KkXSl)hW9ogNI&o4u#MDI^; zWq8s|M-qMu#jQg^n%(;;B`xJEr%}guaBZn7-CQ%6p=8?b#BFZTw!3DL7}%>Xtp}E@ zk6SHK4^I=_-Qft5h8T*^3#w{K-*Lp(uZdShbiv3;NQijUai~kR`hMSN|43z3v8aga zXPf=4ot-Kz>28Fl%h6TY*$RM4xJ_}`()bwSTR%S<EjxQ}V^mcMCOo^1_?wdze?Gp) z0yH&Zy)}@_LOCqaHy{tudM4T?f6$Qprb9aNee(v)9|w2sX07XMC?uP`o2CkV`Ixck zb~$=_v-^FM-GfF8fk%O>it4nYoubY8E8oLHcRhKb@PAREp3fhi;xlATx7)~d%nae~ zHAk2)Xv*2VjA^%je25CDr_sJ^$kjsmcMz6L8i(jX>?O!cN@H^Jzpn@8KW<wOi1rSH zplewvL%56a--ow@w_qFCTy8MUW}-ksBm3b+#{Zs2USR^4*__S%j_ehpR1iwmD>R}H zOyGx^K>D-85dYHy0!nL0HKXpVl;-sg!8bl)@)+t2RZOBcVL3xI-?^3+b~G$BAA%WT zL7RMN=#!oOMMozo7&3;d3Tmt=PC)ag$^f}gcmxEudIw-ZdZiF8*GD%(_ntQHTg(l9 zEZ=)bB?8|kp8vmJ$gzzR8o*&Rrh$2-vMIr2mR+w{s(-P1y;YXFAjHW{at>}r`J>B< z4izF7c{6lr>l0^mg5yJ1i5e}9HAII}D1vBtWf?Hf+gRH%=c4g{&5$GfTeJhtHW&$| zp^J@JJAL%YVpX(PgOMTmPb8GcK=bS7Y!w+6_8S5268WaAsAzvz_e9saI4@5ErKm!) z(Fq(?$l-|ltK?b4M<hcA#jEA$((&HVfbb3#vcNOJf2U>e0W!$aGs)Bc3c%6p`F}`z z%c!=xwQUqi@nWTv;#BbB#jRK=R@{n};x5G{Y0*M)cZvpgm!!D6ySoI}K+fv3-@W&H z&Nx55F}{B=$VkXqbKP^^*L}(G-+(3oQ@V;Pp3i#9%84nMoISqPPtc8hfGdf3K~Das z2!KC*m2*cLjD>s&nThH9Ffv0%311_UsEu;6Aa9Bo*>&@L!nR0BHb^$R%^1u!%y(FJ zB|NZhul`@`_~0Nb+q(&K_^I0Xsx%Ny7g6X!`8U`~om0R{(<kPbXzknat4*2sp2?Bo z4<llL(Cpt*BY^EIY{E0?;#o8NUkM4(*^XRgUx?FOa)?=Ah$g=RIl$4!QBX4|`Q`ZQ z_+V!ywIdc0ipb)kictQqgaloP^xo}%L2VLP!NgK<j_*N#wE`p^+Z<9seZT$-5c~(O z|G$*$r2pkDe>?>Y{|y?!zsJJyH4Y0utL<Vc8EkEBN=j(S6q#0G{BN;?|C=ZOe1Bz~ zpTUYVZs)>r)I!DVRJ6jbm!4Li1>Y3TYqSD#i~nAs{3l;Xv;X_+zkd4v7Y{vddLa$` zz0Wr=&~rSnrl2~hfJmgpsD(T!NhcC8sQI5vuzwMR-+25B-|F)XNIFTT<K~C3rwWAs zhlUNjk22X)CDLqwjSUnsDXae@MUA1Vlbot5*Z;T-Wy(RGf@z*f{!PIRenv`6M#ePz z;XeYH|HyFuzseZk4*)}2Ar8~{e-=unT%Hr~J~E`)osZ?z^z_~W%>0}m&an)lFD-Y$ zO@Gw|AC+QbV(!x7<A9h2PEKA9PA(2^&f;AQNLJQ>c|iBD0eJf&VE^rP&Yo3aGPzYU zAY!q7yFXQE*J@5%BvwbDKQv}FTijZXx)`iHWiLkg^to*A_9wE;va)_KxMZQ6PmniV z?&@H!R<~OdF%8~cJrg1@#7ajJY&s(-MSLdDvI*XtJJ;|PCo1+e2@Bsd6U1I_wU|#- zyY!or?d(Q6z5H`I3x($(ufDwU758bZww;ywU5q@wAS`u>*)Gi-D@mik--S!`)d+Js zVzW%aGsm(6&#k8N*_ftJ%Wn_XVaOTuTh>%jho^DI9`0Y`x6=}?E`*fw@3cJ94<2Xm zJ$z8uB;&TV1njNfSn<ydWrzl1mAu>ZxVUUjlCLXpF2Lu`u>au|o|-)twl_`5*G#jj zo6c@{Kdj#%Lp2<NbK1nq8nDeNy3fwYm|9^$h0u)#uRonK7l`^eenLz|48Hqet!^V> zqbC87?=Q#_hSDrdjrx+vE+@uG?F-JQkk6Hc_EV4%gH7RpN%Bp(WQv)Tlsoh+Xw!&m zOf^(-5YQ0(Gr@Qx5O;f*@ZypGf1+&T4Rc@OGBGKE#Kj#f9wUXteA{=bYvZ@dQP~y+ zYvU8P4NjhAB%V)`jQy_6Q@X-uOVedxVX7GXIxp%Q8^gj7R4An_IF~$Z=%Kt@-lOf~ zLnV60BJ%p|@NU?lL(P6sMD(6#W&7wR=|LIsHFqI)`UEZNbKyXe&a4zpUpuZo^~}rj z4{SZ`w3||qhr}er><i+b<Q0brIksWmA|@hlQYj0gPT7=<#9!(ITw4XzrA?!YomuNC z<ELW|LiuLKOljRpW`Hh1>K#umrIM@fFa`K^>8VtAm)Z%38nNUnU)4AURuRd1uaKHJ zosZgYE+QjiV)_~0e~jDipGLWL#}M<CIJC9BE*9fp-0)Inj4M?e7q=M|w-f}GE_*m3 z7A_X_E*a(RsIThftv-9ID^SMefiW;CGSU;H;-sYlw}rrCn$-Ujo*Pjb&U-&%fU&1- zEqojOPb3mk`PYj;K$nW0c(d0T)Aiw%h|Oz%LS}9l6x^%c2lrdE5bv=#%aP9su8xx- zWGb-qib#clws#jSv#kVXiAOsa=xGE!Zq_a^)w=QQ#<Mu*7o3(wFRX<mY@fwlK0N<} zG~Y732bF8S^S-z<&{pr*zIssBx)?-a#%Zdm7TX!_y{D%hMgWq<7z+>8aV~06)|<Z3 zdT~~3`6?Kj@7*t0CA*UAr=t`%npt{LpOfd0{H2)dB7hvsC~|ki@fAV5jHLcxX`#lS z2*S1}wq2bJ<m5X<OPknFaE#N|?pY(j-$%A}Y12w|s{{cRUF~pKlhWDgDK<CPTs?^O zRi%<B2s7O9jVksq`$JBNaHHVnv4)2#gZw`mXY^B9z+iWj^O2d^q0JLOB6jWvHyj)D zj+6~u#_S}fl|m$?kSCE>A-S+546uWHPq1all3-wSDiY#4v$G$PLYlj~R%bd!*`7Q) z%YgQ#yQ52{yF+p#)CDN#x3`Buev+?c2o70$hz4p>o3(WiB3!NViZVg~$!gD|Cna|; zj0IlyP;6gS`OVk2{h;vkSs(AE-_pOa0OY#4wyP`tebBRw6I$f7z|1To6SG4adQI<Y z6rIvBVWO6%>PGV5%*gkTL9r9n+2*CHmiqdv;*b14&eeN)`@VP?7g%H`rT+F!I_#8E ztWpeFicch=H(8*OhC}#tOH%r7O3`D}pP}^kir6E6L+H&Fd@}fW>z?)d1wquQ>rtP+ zd!wJ!w(DT$Q(9rCJ)E>sE922j7w$7deRiw|g`dhEyOTZTYPKSwM1XoX8bd^{kze59 zq#hW>+ynSEkjHAKkoG5DM@`M|@7AJ<V$5KgX{@{5>eF<R40s<q9bU!=5oD-obScBD zET>1qShoB6oCtOS+rhX{%?pUHuY_6k>$%1CvuyLS-CfesML%UqbrIsxKBf=M%zgN^ zyy`+?KZ7M=C*Eh6kIZ)`i1=bng1sO47ZY`R)=*;KZlCNr9*u=z$|xmt%x@`>S(;e^ zdTWm91bDuGMdrhdk&l-Bl2Rg{uhJ3-Z;zkIzmG!rhcez34^K}12_ub*wI<B@9yKn| zojL<0vkXa4J467x1+g<TZ(Vd~Xse%3!iC~A)ihR@r^;XTu`~XDokvI|T<;S{D}Qk` z1@(xzRsXCd^Gj|<qiU(rOf;@5g^5{Ss9U{^`%2MHeD=cnFLA(evciX=mg#t-_X#2M zr*w|we=Zd^1xu_L;NALjiE5!jPG2!D`O#!YF_9>$_{vDzK)p_O<5^zBQnMNLJ{-!v z?0r47j~hjQVTHtBJh7BYj7vMaH)oues^tx^fqLJG00}ynKtQbOYbJq<_U$tD#<*|o zA1<s53K`YxGa6c6W6A!Q<2l%$aQ?1EVvVaxG~ryWrp{<d|FCI|l98JF4baGf1N~3> z2wJO(4Sk+YI8_#T+j?hbt<#Fi<?8ZUGp?u-BD2E@-A8o|B=y76Eq*hQWOMxn`}-w* z9_kE-K&B7IXL{6Sg8zOu66LQ?v%OSNyH6D5<s-s_=^nAXeH$7Y8XoqG)I0S{*DIA# zQ-M+r;M{lmH*y;Fq**6MX2c$Lb5Hv!U$^RZHLXaf`az_2c}j%A$?040#22cbpc*6_ zui-s(Ttn*}jU6!)N7|C}-)%n0*b{iFV;#KC(xKipcB3CvR9YJxMfMK&-Dq<5n8TE% zQMaRFBzc&DCpsZAaexI<$DTm*=Hw=Bj0TNRvr81)$?0sTdb2EDnyBz+U>#QrFYMDs z)YRWYT_Ha}8U)}R^&-%(z`;2l`|+9&BHJK8nHJ=6u=SR&ukY*bPjwdaC7-f2hf12> ze{GG{_$yedpMlELxQl;`uq7&s$msr*x~g0x`^$APx%OZ~8!`(p+I>M7Ri<}{PR!>t z{LXJRasYg8Du0@CYPsGcX!a}tgxCN&4lE6Wna=!YmZQ}_qNBgERaMe6zDfOwp~++0 zHgc5#&CAInG8@i~&@%)MF5w@8_AWKz;$rjXj@g^h{EP2@@!D$N9eRBb>In@kUK#mW z$gB667x4rS((PQVHvVI{=NF)`gEu$BFax@}7~ar9tgNkGknPQDCkgNs$RH`xS@Jz{ zK9r1)C>LF_py((oW5q=W%Q8g<##vZfI<Z~%&J(PqjdGp@_c9SSzvCTqvs0gLEyamK zF+|d2z%V+x=sM`$FtIST$@pP8_nTcbJP%DM|G86_o{??5ZoEz$_l)Gpxy$~ftCe<L zU~@AiQ|?On$6<n{3ddm1ijz~E(=Lo#v%C)_DSQ)a^M}xpl+R-T(dcD78V!ypQL2t- z<6KwZEl=8kcKcHC?>~_-a*}59--tz7f?mhe)RJ4ZWF85ziE?rY;xDy9f13vc%Cw4i zHrfD-pH<OCl_=Jg!YM8}{$#C2#zdWxG8Y*3I{ci|sIr?aMqMP=b?9ZXWM5pC>Fj9N ziAga0V)EPC#$u${Q6JZFI#JAH^%LEIVpx85qsCd_M8`p@o?C>HtuF6s75@UQH=1w0 zGoFmDRj5XNB<Sq!WZit`DkHP}sj;L8|5G4v=FznFt3)TU+0`$B`y6i+Lh)8U{-!rG z-<Fc<R84UHu+G{L-8Q0yv0`DU5!^kJ=`YY@p<weUt`zXAETNF~6e-8hCg33oLDhXx zYohG%!p1-ntwoThh|f}4{x~Wh{5Z(N)1y5j&{~8t<k&Hpx3HZYnpKL?*C#iL4t;3P zd^np{Lp`AS2EFG4ou0fNc=7H)uG<itz)~LrtSB{0OkIjN!!Vsy&A1H1_lYespLG%| zS?SK>bV7s3AV3GsEy_<Ug*snrF_45g6b^?4GTUgEZFRFlC$xJEp%~}8OF#ClbTX8* zy+l_YXW$MQc0qp0`}Y$qtgQ~s=ZM=rkb2*S2BJNo{+u5SSQC^7=U*r{Q4FCY;dB@L z>Pgt^=37iQbtsZ(`rO1nZZG}EanixG;u&)O9;byBdcsC9pmZ7QhlnbXJln8VuiLD8 zpb?WC=YC-hwALX$Jl3@hxq{38fLF{#K@s{d1wV={5^WI^Nv+c=^MQw)hYVx^N-Ll_ znLpRX!fcxdCWKToO^4<VSPGfxtH9)<8JLf?33BrBT><_m$8G=wH~~;$Jv}vD0VJGB zVD{|3yCTNS#LP^*Cb7BMTjJ|ji4Z}0i@VENpALmJ;$GyhNyQ7=*jLJKmbOOZe~Mdh z@P7G29uw`$sB6Rq5gb%(AM5NL0;hW~XG<1$R)`cQOS;WVknD>Ho(kDsCcuy+b#~_? z_5|<c&RjSSAr}PG0gv$E#u$7Qg^}Og?0R=nf;mjf)gwS^RRPRysVC}i%Nj4PXnbnn zV$z9Ww0vbrm=$5!kTOw^BjCIyWvboaV0A`+p-p;nd@Aa(x<wEURb@A5vNtw`e(6fI z(kT9!*zA1O=zK5!MHy?m*sq&i;=pJJg_QU;+5^jvz9wVyGI2$=`SX-3J)=7XD!zKW zx<;+i-&r>cn?eQ|FvlT5?^CW~^Yf7<LdvzqVnX0i{mpd+?8<dC!a;2gLjlR>FYg;2 zG28)vL@oO{K-q?8>EbfkE;N0-3pzwhdO_Hivc`tO_Em#UfU-?M3G0a`c6}#u@O%?y z%1tp{CJhT1XMVfpw#h!BHtr`K_j<MVWeQN%Vo2?Toqf{!#}McXUI(@Co*Sr$VEBuP z7%U8{)nNnZ;oc=1?Du!usZnk%iU~(@f%=5{M>mADnarE0K2Imh4s!}J)8o@ocY%N4 z6nTIx+l#Admpir{Ve?}JwIgiGMgT=ir8X7lFKPI)3==L{v49S^(y-ojIBvF`+2+s) ztx<BtYB=g!@$}igxvO=4LTHeTA=#ha`~4d!sq_|aw^M{7v(NS#sJ2M3g<8$HT@90$ z(ClvL@b1%?zFa(FS4fFgqRL^b9!8BpxGUgsgh7>;)rv~+a{k7lpsvFE`kcpGyG@uT z;_xN{E3dr#`x3k+^`P#)?z`5f8E0J0*bRS~pVkn!f`Y>1z9-XkdkL83rnC$qKKHef zCj%ec3C#@NSqsmrO6VnZx+k8r-OfMCutx>NR?7(RNPxe*sir0`&-2O%d)kf-{*3T1 zYg)_Es938+0o<B$KVohNHs|3>;MD`)-JSxLi+z5)!)?{^-thg(b22>e{mDgk=yr@y z#IRw5JdHnqlcfmSeKb*^^g$U}!4C2KnT5AAsS}9`!TuKEP#OunP<F27Vb7Rp6$}tn zT7B;Nu%o$D#1N#UpXr-GNVU*pDlosGng;);kBo~hGyDUfjK7zLM@D`tDJ4v?rVT16 zJ_0{JT=+J!T?D_>zXR-v^-K2PsO5EVK>)4SZ*(OeDI@jY2T0pZElx0p-MQG^GyZ9s ze??*uQUTbii22qAAhrU!hh;Axe;x*UI;DSWbil&PTie_A|65-L<ODVXZ1t)yI-Z_g z{!CRgi!HBocW>uquwF`Wyl1q1_fGCJ^1X)32eaCpupf;sHXi#>mI*mxvv%~4$AzoR zUKdtEV=lUcST>8zM7n{g3k%;3#gfYO+o2yWtOzyz_qf}xTVP=Ogv-=@lf#l&Yk+mP zI&CL#JR7vl7^pn$anwhZkD^~?B3RaFBWDK!xw;OWqwi-Kuiuz7Il^}zvPs<s13W7% zai>^Qgra^H=jUIK^vWwI46>k6sz;=^fVMA8FV-wSHK)YA*VqlY@Y)GXwE1#ZybR($ zmigI$!dgTNs``dxYLtjq1oCZSx3lZub9CJGfnJu6?5t$vWflEc*GaEqv@r6W7R%Rv zBCl3tvoR}bHMn>uG6XF7ZTQ+kZEWYgzP5+V>PcP@N{hN}vc(17?#!xvAR==2KK@~W zdH?(s<)JPg-KN}*Z4Wailj+IcVXIM;-gcWKdJQ1JLmx<fmx@sQ6A`(&?@9;BIq5@L zEoC=E+ft;tpH9rB)mvN|v%C$#OsILTxG!lzJVpb%mN5ElU=Uf;N_Kxeo1%|7{6}Uh z6?a;2=5CiPiI97x27^g>c2$=p72QF@<o;zzPHVjX$k5X3ZCblQ9!V+n0|bfgG+UZ@ z-O1YHR{fckR3kH-4o7p=rE;64H?N-6lfQQ#%kWrxuYj8+b3PJhBP@11VmT8?n6rAp z64JAy4a5YHPq?V6Z%jL<v!Ip@d=(zJE-x`FDb16+CoyOzyhYpqC(>v+bgb2PKfE}% zzyEq^6veTx1v+Yam}QBu_4?!>g2_Z93I+u8e5MPL)cSLTODkCZ-6<FI1TCI-KM>q~ zo8G`G``d8=W5<3|*Mb_a`M?i&^64|cm@}EzZUicyk-wAZgBfu&QyHH8uvN0XgeF7F zX^GeYvak|NczJebpkZ+VH-I2$M$<r9nZtE$0I<=(6q={d`owa7oB2kHQn%J(s=*66 zFi;$(>w2`<kmSMyL`$SPAus6)wODz0G_X`lwYk7RP#mG%6Kp&`?biVCr@p&VCYFP% z9<GL+Uq~#k^#hQdQqA*^+xvj-pBs>u<8QaSJf<~7(l!oZJ@W69lbbx0^ZemQ&~~Hd zlPKXPYh{w(JzM;So5iau>!Ns6d`47Rcd=I5*h`n9uu4?!i*nC7I#Nad%Sm)b26*FK z<AEfbFwOKAeqlc2bm=NeE5?WEr~wGuH9&2rjCd+=USrg4RJ%i4r8|nDjMq1}{%WFY z$PgM(6^4txM)yn8-n^tYK+!~ZvQWQ>zMOi{5cQy_js{ut^sH+ULWrG>hEYz9^{LLu zZU#7-5U(#QzE~%YHe;WC-&yWKWTGZdu1-9xSN(&hGB>vXb@b5;m$GA7o2m{0jd%A$ zjLok)%h7ttlxR-zOz8ENh}Mu8YGwcck&SjEnk}<;exV$QbE~~}A8n~1GJ}IBq;7Mw z-dZF?Z%TC7e*7`gbAU`_do1*CEMT^Ypq??D_sNQ+jAs<R^!uEd@~?2#S__4PU=`zt zuKWsVVzp56v)L@puH+YrZ!0=yyx6};imNC`zG}I;ZE?fhcQO@OA)MGoHYGMJwwT)4 z+Y@XxBqhPr>8WDzzwQDVH?N^?HY@Eb%b?{!DRhj00lnjF4yv5?{qbU=v|P4Nmx%J9 z^G0PekJAGZO-|<@g5OpJwelDx_>aGIyRz0lYB3zrZ_Hf72QE>)^GHw6`#CZD6^L<A zo%Leq(doR+!&ycoBm}d#G~NF4;DB<qX=O4pl>g8xK^}9ra<<4Ts5j#Y#o6k6L4lj$ z0KiG6QJE#>O?31ejh6k>Jil|Yi7p5>)#EF{p@lkBU|E50J#eQrswwAg->q7E$@HS9 z$~Imtvin@6SF+weP8*(!J!n=?Z{R9Ac}EP%Ett)RVrt<>glb-&3?lQyNtHa&c<qi~ zov9@<;gB*T`bIO2%@c}eXcaJ-7OyPlBEuo&Df}%wQ#LaX(_%qM`7!3~EJ9f4^N+x3 z+b{tm3uVcz*Y7Vl>n@ysxmnnn_Oe%3a}Xa54oxL%R5E+O&`?lN)G^P!W}1AKlXy)Z zW#BsjjN@f+84U^07~TZj;eUjFu(31}H67DVx(}tfb8M=uG&E~*U4-knKPGt&hP^L4 z=U{%u5>CZ>!+co4P0E#<O^NLzxJ#TQ;O5z)hL}Wrf1mpe4He~&HJ%7o5s?*S3$vw~ z=-sS(WXa$!sUPHncb5k}g_v6Am?4<;Mi}rVt&v<MepDml-5sN6#7?*cVLb1IL0 z=GB^$qdzZP7CO*Z;lbcrm}}X*eX_=ZmwQX;$U_D(*h-rQEDnZf<w5PHds8x7Z@hZY ztAKs0AJYG1$DGGnFXJh`myop;)>e0C*4Eu1_-L~Z;@aMj5s}T%R(AxD>Fwt|0O2Wa ztcS4r5=4%~oK25-3uoewh}{OJw<2Sb`!mW$_s+n43t2FcRi{D4<rQ8Lv_z$mK+ec$ zbU2o8W9uZyVr}PTi<k2X0TGV_(haeYCx*;4c2OIB@7w${KT&c1VHK|WSjcfe*$BoM z@<r>uF^s~FlSL?KEFkXJHq$=m<(T9>&PZ=Nl?eUeAoop7=EV7MSuVyJ!2TWylgA2A zgHAvdzgf{gKQh{@CqgCgZAcs8%wc%N%{Q4LgxvgA_R!K)O(@(flThnyJQm}9VBXnY z6Gn9-e)Y+AW<PtaJ5m<2)r<Q6Rirz_x(Pcw@Hpy4+MbpVym+zPZwa;rVZ7%T+`lH0 zW9m#2^~iB3Uk04s4C@ZomNoZzk&6>e>F#A;9k0-6WV)XZ2TeCP2U)^z(_^(AqPhyc zX_2@_#MfOd$DF^NtFz-ZUBChz&!GA=s*;}!M%PRu-k@=fr+ALniU8IqksdZRK2>*^ z7^6+!mlpK}tBbc+HHX_L7Zgq>`Z&vS_JBV5ic<I!rqRxyrFP7VRf4witGf~NzMQ0G zCz`<uN9<<-V-iV0-5vCZ%3bycHvK#^#XG4)g3*_A$K6Lod`BY;q-it7dUMq_l^$Lv zm^iuLabCBC4iw)J$ob%Xd_&u;@|14OdiC{-WNjDrmcI|68oH^wmfgZu-+7Vm@o8I5 z+T=ASc0FSS6heXiX92xi>^KT>S2~gS*a@aS(%%T$XM121xfdAk!hr<k6pe%!g0}r; zY{4|gmQ#@#H7ZN3+2%WjGG6npCCMHh6OJW^023mY{eBM9M;r0b|JAOFK=dK?t}}S) zjvEqcwka_!XcrW_@+s*;q|PDaoC4#3q%islD6J^(T{x_})C2l=?TP!al1%Cg%n=;d zAU-<SCLmQEdp~-P%9_m6;Cz$p(A$8UuxrRtlpNMV(Puv_9Sul$`0N)gmrEyTCDV^8 z&lD)g$W=L#A`{Q~>m_V8QBag^U(yzT06iQkK^F=G_|#%lsra8h)u|DO?Yy(w@p!0Y zkNGqR*d8#SZMr@5KTI&f8L7Mnntp5p6sVBtB`_l~Ax_gv-jh;>v-P6|ua7E}TD+XR zx2{XE7zVkZi_Ca_t2tNK;+mD9jE1chc`bVbD5%L+zEhv2zIC?I*@EZltO6(KSI!3| zE4=MK7d=WC@|3$M`FR`Oj)!6fg0m*~Xbv2!fx;t*e6<7NcR>VkNhYaW2=6r(>+ojK z7{vL8ln7laQ41;5&z_8v-t^)YXf6-j$HF69N5{u~kc-rpH8#)LbR=0}ebya}1S>)s z3NLuB{T@V2d4CI=4OXI8K_7xsTp2kS{SBy0cQ51#Tuih5y7=~ioV3!r<!SG3Qv4dX z2+BEFI%K}tUdusVvkZ9_;Ua%+V4*PQ;k<P2m@%v?af8RB!LDC(vYmT&gO|VQIsNcj zFKN!V8!VjIqBG(2r2Ta^0m3Z=CUg^H#ASQy?5XUaI$tq0fZoseUCV%~_er?7R_&B% z7%Yifn!Yj%>)XQsc8yI*JxB~V5W?=Ecl~7RIv#1z<28F;Xg_Tb$T^62umO~NPMrhU z&2Mw~6&s-Z{kCQy;YIa39`jFRJVv*CdTZ|UNb%2}feOh6w#x^4;O=31?{j8YzeIP? zX^tZeK{QSH<V43$HX%dr3*u?>`?k20Q`FTm-G?pn&}?h?Mn!v#oYIhZ=BQQ`{osw6 z0M!pCxA?67N1gTyog-!E1K)%_OH417$VkvRxH94t$Rp2|`z=>C4WLB02A-yx>y~*T zc}s0Z*uEx@Bm_^c+0vKBpni>wg0bz6Oe-SN?Jth~*m};Z*FO#+q7SOPws|v@$eGS; zt#N|E+Q$N>?OsTc)|`7RWSv=mSwAWB-LveN<=I})P1Y>ebQhm?T=Oz2@OTuG$UU}S zz97KzesN8^)7mZ*;U{T<9pjzA76kIy1ht2T#dwcT^p1+JQa1~mLYl(EqrACAg@nA0 zk2z20w>O@H6?y43UEdNGCF9&OYk&T%{64YFgbN)7#eLD}=cv_>x#xTj729Jqx(oVN z!h6$I+-k(20TFuHXfCPRClNoPN84q6inEW!Oz9}A<jrDLte_i0lO747Xqv-S_{%5^ zV$21{{SR%K?fgh8vF-#Jd><`(s*MIgAyta2Uouo`!gM4-s&%s&VJb5-328CkPWpaT zv_TWOJ_D}`dvN$|+_`0t6&XiUTk5lK)<-Xx#oMi;)_v^Qf5M$$lBX!>an$+Pk_P{X zVLZCudUD||t@JR-DYofYarpeH+Fe=OU_PEt*M<tBLyKY9;Q1`1CliG3&oE4?*2QSu zV!Koif*(=UJK5;@A~?RMAC=M&(EN#`3G%;hxHBwOC>iJnEe+H}jN`tu@49vxz@#s; zOPhPvaKd-eu*{tDIec~ZZ2H>qEz_jh)cDZSkQt)eFVV?4|K>I^C21fLQBjF+OM~x` zkWqIrHksm$udaD+AO!AAU>UchZGQXB-v>ttJCFI9_-bG5$?IpOT--dXRcwM^-8Rki zONQ((f8001Zma*~*0$f>H?rtSV?s2}*6>|hmD;XBd#S)Y$r|d`P#Ms`Bz?!VODiLz zdpF;p#_V2TuRmtZ0ZhbIO>Xe6AAHZ9ukC7ZgosqByWBEt*T)m%60YNP^dU(hjFOvo z*L}!%RZoRSN=c7e!Vxdvlt*6jdJUGZXUizDhY`u~Tc^9UL2Pf&DbT@qnZgI+%2;X= zhD!FkZDjUJf;|QQuF{0$&qX)SW)*c^$ZuC?;G{@<_=99Dk*c5tGoPJz?-QXA@cz_j z)ZtxJ;+vaFo6nycmrI0B>%6Yee(}jGd}YorbOjQ*+<8X)jx|2Y4+HFrNF8m!O*1l9 zfpukq{$ly$tj!}he^Phmu*^3!>`B-Yyn3?l{%0t?LLNsri-|b-ao_sqXtV=(SVi!R zfckLLBp#7|dZMw8(OD8QfuglM9+o1eBucxHg49brxIw+*pLi<QK(CdD(P2P`?Jof| zxe$gP9@x?)`2ApOpQo1ceNA=sv(iSND^x?U9GAZ&Y2WXujaK-@XQ(R+3%k)%*|73g zx}SA*E_W8<_hn^Ox(DY`OXQOScb`0Q*Iv-|4L8W3{)*=+i3#{e8}~IibVjg)Pe(Cd z!4w52DlO+LcV~Y^2hTq8lUO5;w!-P!Bz`I|5vS;W3IvdJ@G-Kyv-l%~h-&b@*F2-g zGvR%4Y5-4hd(;rWndU`MXET+bE|XRQKHT=I3Zv#!HhI#>m3g0UtwoYkYV5uUXEUT0 z*wBwkbGBP{+7G`+M5c2+q88qQFj7n)siK0L7^lfbAoBo-n&@m}P>6Dv6t{>chCDxC z>$fMB_BuYzH#WBI^-)a~0NYNKqq5&~7aNJV-TaPX7|2?CDtEuCHMo4hn#^lbM%lvn zO6vutU?Lq8Es%N~?C?-YL-U!y2ga9M+vh5g(MkM)K&RY-ho!8RH3jkQm|yF%$;VLC zZlmfCuc+dyjBW?Cjiq`IC8&9heE<XP#!tPZN%!Qq0?~ys&as!><AD3vjfOXkI3Q{T z(T;TC3D;Hl=_PSVi}o7l!ki}5?H)<2CMgAJ8431e@^u~)+`iRmh-&hB2r(2<;tSAi zY~<H8AzYtU|98Dy08He%KBdOLPFv|}u}h<0!fO#;Y-tu27TGgsb`JBET<zkW(gc#@ zhucVo*^uYE+(~rwUD1Yqi+lA0={IC*rQt=mXei(7s2{ay84dqfcUE&W&d9@K2qkZu zkQ=j?oO9t2gQfbVXguu`FZgli5o)51h8!Cwyv3z|fBC!vdkIgZ{yT>NT^tt)=y~1G z{1?zpLy)(MCl+57ZKj!ARIM=meIFR+CRjHAmaIDFGsu47REu{!<zvEIm=JriA?D@b zkW@oMyjW-E$d%pulgu-_mEAo=w82-jTj$Mrqq2qiK}`Q=0jIB<M_)d*+%g*@4OdFr zJgIuGvR>?!Hm4Aq(8Q8J#$lP_Qf3!&7o~0l=UeR^mtZ@NF|s$eH8J@kEk13}yi+e} zKAmcr5t;#wtj$DwST9sm>yB8#_-#C<b?oQnRmm6rIowFq$;zSEP&91M>!<&b!W<)f z?cn!Y+6^U@vF2U*JxK_oA=Gi-;O3D8RE<`nxFt&mYT?n%%j!zQ-<5OUeuOD%r@gH2 zozXTsv@u!fRS}P$=Agj?u4>ZgOj#7Kwl`$eZEaOxa^XOG{OzH}>LI$KHN|tfNJUbt zsQF%b-=kh7anQv&8;x<??{c^5qbRoBY_p1qy5oCyWb67sv5nst_Yic)ddI{tiv3OS zKP#)CRQ5IdgV(26tW)kil|~xEX9IBoFco*tdezSQq1ad~oV(>SLy4@byt)N9@@wu4 z5bWu&Xp+fCql~}3fI)o`)Qvujtk8kGj`?syUt?*=91qxs?Hk(AhvlUIjRmx|HQ+*X zoktpK*8^RO7<-9JeaOk_t9;J#!kB2Aoh~r$nN+gR*)KN$zYs3@;u0$^OUza~eGYY? zD{X%KsLe`BUfz1<t|f?IugIpn=`_>TLsWp9tGKn0%xcIBr23Rlbv>`VjCz^Z+}2d5 ze=2!-NteTQXYr2U=6m^h!o4Y4+x94XpyoEst2UK#MQ4TP%E8o4de^ni4!ZmYVk+xd zRbrFgd?Hg~(u^Lyw!+hi1N2N^4$;*-eRUtP@XJ~PYNqs@WO?r-lcS0`l`+{uDXhD- z4hBZ56^RXHE#8M+4oenZo~B>+N@etJCIG#2CpQW#q&r!i$mucR)<2~pz%1zckfpI8 zuXMOxB}S3GR0rnCj5lUXmC%S&i>+<&T*oIai3qNUDy^+`_W>+dYHDig?X@~Oi{4@U z3avg5-RJuyq^w$9P`s_TeJQH<z9)zHIrJTEbsaG-mTj@&0Ckk1vQ^{HJ%kzLw@Qwr z`DO*FqVA!M)#+y2SPX(L*1Ort(yC8Mjlu5|otN(Zmj?Um!k<f6CCPkiTc<e@u!RNT zRqYP%Et&3-_QBlv5|XP5Re(0Gljgv+m^kB4O6*Yk7JMa6|F5%LW0!9!$PLZ+`a8$Y zi5dv{e$}4nJY?d^xyeO~t0&swiR$WNV`+_P-m!_V;S-w@YpAo7g&?2Rtj;%7BL$o0 zwqbO70lAtP-MqpjIIvz&G+177F>|S&;@;#(wVRHKI~_Kb4MhKdU(6%ntJnS=H88tW z9^*oX$yP}j`|G9XS*Qz3#vvFks~`uu-l>2z9h?iczEtv~7UAXNvtG#0{2^Xr{pK;s zcdaL=Mm6tQw`{$W&-bPb_?zPzvCdde8f=%qbuzH@v_zch>Pg<2*XaJ<LA8ME=eMxL ziRU!e<?iX!aEx3t*3;ts!ZJwr#fL1yie;hB<*RKp39Df1H`C>82k+0uc=f)T>#MCA zn_94l;R91vy&uW=rd>jD5C}v*EVPYK+Qs|qU4_bO!S3FU_UA;pH*$eFO3#Efuix1| zRx%{B>QkRdOi9QXCdl3Kx_ii1f|)S0EN7P5v}LR3t)do?@YC@OE+~lao8L_hdb+?J z)IGP(ZjL6fX$qa3py5C>5daA)!GT!VZk8M(N>#_l`rSkF$}5GyvkCAPMRpOfSGi9} z&1JlV_CHz<xITpZJ;-<53GN4XJ&pBN#%j&bmzca6EG<&wfyMts>P0<fgqkej15s1~ zRRnz;oCPCKzMU66A|+H^kk0UILv_FTJ_50n^xS3gJaKZviyd;8De_0nZ0sU6&C)V+ zNi#G3YHB$YLC8iKq^BK!lk0mb!A6_Y|4by3qMql}<4J}QUlfI5?2xzIeM2R)QrOIA z9SqS}XQO8~dijMhFr1bEB{E<&e19Xmjb#!I+cgQA<@eb_xHSAJv$f7(is@1jyxtEi z86B-?4}`+E_D<ivIz5hBr>H|%+L*+~8(3wX17@uNuN{(?$NIS$F<b(}G57sA-19=n zajxnZ%i6jK7lJh2Jms&yzPg;Nq3T3hprd@>BLFACa7uj0`y&b=nVFVWUro%c6fDEa zgHq>2NFV#3uS?bD-2S}E%74-}+jF!8?&0|=ii5q0`Nn3fTz#IBM~3&<>8y$PPwYFS zM`KeTK?AMLlop+IRb}N$e=r@aF;3RXs&P*&TvkXamYw$P#YC~jt&V!`+IQvSnb-;E zRSfpU;F#<+>X)*zo3hFwG%0!y-J0npn-!b=G%3-A<u4QecB<z$Mc$Bjv#@<Prs<iu zGV~hCcJ)=J!nOjoF-uvq*pHKRar?okqTn$0vc-BoJ9Zx|bbCGoVxEaSw0iB>ObZg7 zzD%x=3x#=j+!Q}b_MBc1>c~lrAix6XGH~?g1g>+H9@%RWRUh=;yRT~&tcKs)kuK-* zALgR9$EP%Ys;bPA>_GQdl4xh@S{Fo~ETSIT6q}eG*}Uz+g)b4T0Y?ve(o<9;RWevY zd(O?tuOJ2p<DK5$$NPKT4=;T_Ma99kwl+N7+M9Rwduy+5(u7}f?p_CvFTee~^~Ii) zoIc5J1ip2+rAV<aC)q(ZP7e&!4{x{sJb($t!<OSp!Y;H7hi;wc-mX3rC>~7nASrk* z$62QBLSOJ0J*1MI6IXq!WH)Sp-j|8Q;*arWd_v@S&l-S0pkXMD!zLiespn4scTu9C z<l_?(LU9a^O1)+3wAeor3VBSqm`;W!6$BSmz2@2A6leeA)dxEmev_0%3aou+QZf?B zOnPZ+goW9ut%t%>7AXJZx3klkeyn+ifC!DWy!bpssg#L4g?GQW%=Ltm;lqS~3N{VP z0ajMu%RV5pwqDP@9%#n<CuY@+>><ny-XGYh<UV~UJ=Fp)XU4Qm|C%dnZ_8%RCOBbH zW88Vc!2Lb_b9m;lp6aIhu&Pst++KFB#?fu;<k?RBov-Ddy4xONQVs{}#7rwYIsUmG zWH_<j-?yzT!S&TfWsy_1b9s`RkKH3-F>#qc^A7|#ImQ{P=oV;pnM!9LbdhtzIoUpe zqQ5o*(FOq<)lKC0`QJ54#;bL~lk)ly9UUG^b@)mYw_Z|d5l}TpqE;axvB<Et>{59= zACV&`M|RqL`{8f}LdG$O2^#yXcv9aj1v-mQFY_`x$={oO-1Qs99>G9Uwp@R)J6>Me zvh=OI49KJ+xl|Z?Yi4Ctc?zMyz@w2ASP06dXM3;%BAn40WLR%qp;cAmG~lDq@Zil_ zz$CbHTaCfg%(NHzbBa~>?Y+_Jz^tKu)6um3io-2QY>Ll!U7@XYA{soJ0pLS{8;VyS zFZIcXolo;#Ij8&YI(<Dh&JCE8|9xId3Qet9#dfmFf57eD6QcXKy;lJ}l6XbA!A;M* zn!8Tig=0oo&EeIHl8KX)lI%d7(%Ho@!fy2WGrOhWwz)s^8NpL^CH|94ED-mqu_Ahl ze75nLq36$7jl`#hpfBy=hu*-1uiM~TTg-M{+_GSPc7pAn_LajXBneyQ)_NxkF91=& zKI4rz4#JOUz*Hamdp^qdC-S(2x*K%5$Zz(9nia<zTbRA#mo{EEY;5WA>T6pF?YFf0 zoQ!PQ1s8LrHMobx^<Shscq17u+EVnx-pUWzHV%zr1}VVbkpZ|+FViMmvEOpMlJlzK zQyH#Ls$+}g&588B*JSRna_Pa=nv^*|pL!m=<WBGXN74)+@5|0_ij}-dF1vKRxVU-W z>lm`RcqjghP!u0~9mYnR`aM!IW9S*GQ+w%c!iFz`ouoQMLMJH*YuMWpI}wNZK^_1_ zfYX^QH1VMzDr&WhbzW6f_4TXl#0}lr<Q7j?U4F3UU~+sv7y;_sbI~*D$u`tu2&Iy) zyS{#WTh%t1Tbp;jA8bCPZ!$J(Vk3{_JY8z?(N-CqyGUUQ%&Cvk-B~+$XFRtd+TzIp zd=S%PfBV0OP51%}{`?a>tNJE^s=c5`Z7s<3FVUHEAx9$a2jj&?-<=Do*A_?AKzEIH zLl`{g+_{RW52)fTO>QePXyeo4XQ%nEk&&uQ$!|U%f62;1R|LgBH!D849@Q(r<Kz`p zX`Tdj+?IusuC~2`=;RT{bq1xUqMC`&j*b>@F{4!#oCLKhCZ2SsZ$kmXK3xXjwu%+T z-ctAXA78eP#ZfeLnW_<IM@eE9&z7gn-^3r@(T7vF72@IL5$T=2`tYGU#QyC7WKh2D zd(q|#95>b0?~%(SrVIdyIgh@pcq~=WEskY`#)jq`e3N1HGIMqM9+6ZHnZD@<>4E7l zJY$v)1hRa})W*5A>58^@UANX;O1;;&S^%W~r;YbT7nP<_NwU}3ZtQZ}osZ|oAwm$L z3eZc1D~$&(yoJTm;**cWU}s6)zR<YFE@Img9PA4@9c^?;^`i#xs@DOheq~&AF!gtK z8=dI>&f-74sk2LR2MvwLS;%AFdv2vTwMTU4JFtHBHDulq{KHURR#u#v;C!V}gs7ti z?$G-SK99B+jZAvdv(zQGCKEqL%8z^Ux2H6D_8S}ac6S}E?=E&_>rzuGsdh<!Mq~(A z+1w0UTJ8dbm`gkDjHgnKCrynGvZoB@<9SQBx0O|g&C@XWcelHbpvR_><m7BMX$J>3 z?>0Y(SdRB?_qOXQ1ZN|Uo-a*KO+B9lz!C$Y<R?pdKnxuPXt{Iwa4}o*B2}bbMZ^v2 zmxjC#nixsd8G~gyqM^&C$LE>(c^-Anlky=+F#YlNo2*&Lw}xtJMGWzAKz#;**18+@ zSky&=n7hIsQZXaaf7&C8AK_(BX+B4!{%W&gdA-mzyW9CaKD-SFvn8huJs^NcMGmuX z{kDLk_lxJS2IWPy;CcqWni|gOnf?6D)V3wD40OKe+jMwIeN$}gax8v^uA(+B{dy>9 zmNKbr<P*K7RzGKTO=&NziAK~@RsB4glUaI6lg;<`u~<Qe2@50tJBhiNMA>dHN|CQC z^7d+7VJkGCTZD!tw!sx&Q`B!QQ}3)9%8F-~<#JO6`nV5g`(<E!a~6V6JJ$|qAWg!} z*$a_hm@OM0$nbog_Yzbp2LE<27G-a~S|OTt9H}$;GWJ}NVo!ZbJHbjASQa#vsinL? zRdGWLfzg`+eXyw|8?2>V_vO86EAm5Y?32$!k74Q^T@206S!=)~<!5xJY5x_4G>?&q zHeyO%Y4{l!20O>4`&%OZyy3>$@u+Wd*`0uj`>=~rJuBU8YYso0A1SLj|FvCBb_RI3 z-r!YMRq@%~e4D>aQy@QOLJ*P1;tC4=HHg(uiNCybO-{DJ#6bD3dfa+UKi>eyTIN;E zocq3{uTvv+6QAI9vhj0*ciYhFkwoV`MRKh3qu-jNUZ@dSa>-fA%$EJYW3N_~qjNm7 zE3cP8YRZ_7xUx8T0$3C9B)d-=n@$%t@EJbbWwfsubsc&UXnUya%r|bB2L#BpR0s8y z-pkxL1x*d!IAvo{^PK+z(}*~3Ii)(Q3!3gEZf}z^>du#HsFf;fYdZro5@MI#y}`lx ztA{gqaEy7`n>Wy$q#C)2Glwb;_VA`5!xLhUH3hB&lcC#^CcpyNd1ppPOj>2R_nX#G z{5fBiUU`f2$PkmU%<<rqSjlX3bn;Lkrk4<fU-Wg76Z*;akXu}Kkz%`NuGyh#KW7du zI#?VlA{6R=k=OHSXBZ;$GP7?Ar&~_M>jZ=N;@#V|x@9-`oZI<MFYdyZo<bp?Bk8v3 z8XtKLY6$@gpW(HN-*7Q^1j4kzMxgn~{_=C}l(&F*_30{+Rex%1W__uKES8M;Xr3*S zG1VaIx!tufAI-XkGDXH(rnvng-dje-;}(t7o6+9aPu7z*s>XiFqwY%Q5ReNVAOsd_ zO^G#=CIIw`q_3Vp_up86h;=C~Sv>8E${)WqPHb{Mbp(ZPN)fTo)HhS)cUsVIl_*Ej zYiq2Q%BD*i<1Bn?0l<g*aQ>Zn8LOQ3jgy}5Sd0KK+Yg$q=YQ80^Cv??@G3&5v9WQu z?X{o_xbCV+Qj}bz0`ArBJ?CmzX+vi_QX}8ZNfYq}c)4lN_v685R20a~t0E9`9|dO8 zu>v}cxzV6el$WSqff!BSA32!@edg^8yn2QaG=D|8)*lx4*q@x7{7{#KZ+mlV>rj+- zD%EXgM+ZbW1R!>O)7@?TE#U>SC+}=BhhIszg#tk`cK(x2`y;jJh7VQe1Fl@u!k%qz z%79At{B5sk(mRU{!+>T4LjNxO=fSqyD2M}~+UBAS#qr(WD19)CuVgJ4biS~kcRLa} zouAUT<~xea*eehm0m2ie3+w4bxR}kB!3@&85AYcQPoCY9E1<%l$$#kEREcgeYsW8D z2&Uci)tl|<`O*c+uIH**DZAcuGrgOh^clt0_I8l2`AstoeIp$ntjO=V=Ud6j)VBt~ zzp&e3;>OHu49|49?l^3E&`9iXaD|J}JFN)_%m6Y68nJJ(%@Jj9#s%F|hc-y|9~j3Y z<6;+5ThvoURmWD;JP%}u($H1bW^t#J8e9HZNbDbMpr21YUc%c*VEI~OVU}ZwM&99{ zR7MbRtuYP#deoMJZBSLJCMS=j2AA6xGfmf(c0$mEa)ue6X>E>ni;Ap__gpAkG(R_Y zGRso(Un@xit*jB@j*S_f`f0dlqi+fCSp*x~{ipU{M%V~>HdE)F>R9jg<SfU=V#m#P zhM`~H`;06?=F6F+G$)7B=1v*`P|%4NL({3)BNMDD54$%e0UhAZN5IPX?zD6N=?Z*x zbbRgr$R#|lcTNCg^byVDTyvA19g7I6`&E1E1d3SibpYP_tpJ=hRq`7U9tsOkNrrBv zyJUM#lQGW94^Q^GCv3aZCI1f5!19VL;5tYboyenIrsEiT=DSL<g7vkI;k9r3cC=c* z-<O70Wmg6@PnS_Fr~JSts!?NE2>pBuLN?Xss_N=mAA7;eoig*<AAH$Tkh)D5g=M~h z2gSt)0rFF3ng>mn0CZEhu8QaY#xp*3HdHkq`|O{;cy>BCW_aDyz65_=)#~NbbY^PR z|L|=Zh9e|eI)Co=UGJRE#K>;0NY|@WVK7hZzF9y-L=9B6(A*3M>2)hXXW(f=9|9+x z&FBTWyt!l=Vk-kxVDndXM~tE#=NIR<2}f1(j-%0W6gMCe?!3_FLsFB?vVKqzA;(P? zKD%*`{9_sAf#C@A>#+*XvgLD9sANB%yJZBM?KM~0Q=FiRu%9714MzkIc6H$;n{_Jv zoCkB6Bs3zTKF=E*ddUOeRC0l?xSoB?@4hM<LJ=??-B?BKdcf5lTKFuVkF7t|7UcHm zdb~-$$gD8p_$^sY<(qhZ4T0=X=#;%HPRq59e%Z~^rcfWQ3J+tsNtu6GO|HWiZO_G^ z&~)*PHeh<y>^#|}l*jf$^a!^!r9L-6C;OJVxQ)_kcEa^7HSI0H8}T9t@oKKI$)ok( zB3-I?SuT4+o5OuWqGvzp0#q`6t359gxAsl2<d?qgH(z`WCBCjdeU(AF-KQ9feEQYu zs{({mYpAz3?QGB~V11UJUbfN*s^$)GZ3D=3Z;lzjJ>%xD45Ra(d<u8<zWK8{jw9qV z#{LpXCDaY9LX`K53;R<y_DDlW1eJD^)oiF`%tPII(`!t(C78=*zW_If10xDbtS;Rr zF|@dx-@ldf7OTq3Ip}#`3a<&&Sg8mV4_xByHw<S8L?H{C$O8hzw(p*B_F|dc6gM|7 z>??aR5L*XVcaD!|Zqsq6(xZoX8$S1#$m88=zXH#mlg8i+)dHDMzavLPMFbnC3lyUy zKbSr5WQ7bHig@n5LPoCAoX3%smM8=^Pw#IuuncF@y?(6v_WWWkBk0M&WEUhDsN~Y< z6FKfcn^T*H*<d2^uv--VG@CsyG@Z*@McnA+VvGBQnUu+SPv-splw)4}K2Qor%0F7Y zxnGB)dC-*+)p(74OPGytLnE+)3afFU&`*Yi%fbxOL>BcJ`?9?ESJxpzmxylD;WZNK zs}ou|NWIEqc0(A|GsH!G6pg#bL`6-hY#EWrahD=^ZgRXF%kB=C+QDJ-ei~X6l*p5E zR0`xwd(NWxb42+qFdp4OnR2a!tiOj4w_N1coc9EuA&96i#c80pOhMt>?a}F0_g-$6 zOZCtJB{DH9jur*I49JD9tBNk~y<U<nBVT1zK`-5_?oawT#0Aph7|~S#L^rPVEKm8_ z4Ayd{y1AxnthqCMB5=rrnSl-hdf1HSe7$5p**3p46bPc9oDy3Z4P16R^Ksq@n=Og) z{jSW~9l2C!EJ|6w2c!n*dtxf4wOC9XUkNXyG709UDf=)!h<PJ~TSysKARN9!x&gyQ z@<E!w9cp?hlC&$rZ`oCM9&b6@93{!B>q*PwjfpO{*l^WT6OC_m&UUxaex;)WjIqMl z-R$7mw`fdW7JK>;`v)Y{WK_>6_cBdV+nu}?mk$7*4d7+P5@Rr64!$4Ps$%fMzLi{V zxQc9RsK1s1$Wx*R1?r1Jbw=bio9ti*bM`dQvoGU{^>{6OyAt>CiYf)Fo$NOXg8f?n z)4)*xFZU}B8i%Y>>mZoh^1O36e!4M$ugLrFS+h{~b=mwwZr72kQ+c+q?(F4K2x!@Y z-YxEV7VaZ`nw>g!dMbu5eFxIjIX|@YWiW*l@$dvssD*K6D}4;TduIyIq3Ob|FN!!C z<DHhXvwpR^^@DbS%{L7(H<pS2#A=5^bBnKg_logheFdo32LVXk<IcyRYYR{A2e0#k zKrz?x8)V;-CrYz9_<`7EMSE>hx5bZ*6PUi5?$}GPD(01RI*&A7Gb<AU9jO!_22lU$ zud%@Q%ESYuJ~A2$^;%c>z$}PynKr5HX-$t>se|OmeiRc8UZ~_C_!RXev2=j~AVd&D zTgWZqW0#eAc*n<`xglxxcTBc<Hxq}=Gp+jV7}yohVhBcYW%%UC87~RLKYrje0N`ns zvE|Oen#&xeKovyq#qjUIUHgO*<FWU2+${22)(-$J#9V<a*Fg*zE9U9>+fO$+t@AD> z=43?b$jLF2zUQ*k=5lEZ>esZ_RHZUAvEbM~tH4bt-V_{A!QBO_cvAH~K}~djC`<;} z3_#p52I!h$DmjkGR^x|QA=lfdi;30p%2rmM2D{FwL)EJ^v4S25G~Wld-D)etezSuf zf(`KFng}qb%Q?Va*^$oqX4V^mSCjyfwZ}^u6x~^lk?+~roB>}yTfElz^;|)1CLrH8 zU**nVC3|Paoj$EMbPl|mR|bLP<}z{TylH`sGk}ZVLdsS+Hvq8y#~LGuA@<ORL1c3G zZI&NBrK`(Ak2r8FBq6(npY_tH)pq2TG<bNNW8_d!In0rW$jwX!rvnyc>wObGkwb|7 zu`B!-*D5vM+X}8&!_#c>bWt~rL)4dEz_3<CuujC`TD?cD*V)q%TXuYlt<==~P<8&L z5X+sc_T#H8U7cjublu%tn9vN1cq?}9mNU*Gu|jr#cF_@noxXnBQPc4K%r(3vDCwNF zmo-!AeE?dWYP!^P>c?G=As|=DByy}T?=Q3hNS5jX4vE<;UjaMK`hkUwNlygZP|h?R zi1us1&J(25?e&dV@s{V{7_4X-*_)%E0hqCw2=a}$0er;VvkVPw<dS|wdSi#r#gA7W zjVDDI1nxnPyfl+OfccNxG{lbN<TG$-!ZXz7E1sKXJrfhd`?Zqpa@KW02U+-56IOsr z%f|h7ZR%R5f`JVHQrs_gBIs}NV(dK7iv!ulm64?50CDEGY9{e5ML$F*yGG21$N02+ zQjBWj9aB>A&-DWndo$*#p9|WhMN(?;gm<mqN)R;o@l>`NqEtB!YfU#9z2@Aelljo@ zN;ot!DI#p{!aoz8hZ4+ZU-)qtgG40_mc|!H^C2!KIi4*BUzPCgEaJ?z#F}{ln`f?6 zPdH-jL((Q-+u$wFc8_JXW1|kIL)+xB+^O;We<*v)u&BDeZx{;@1Vl<fKt(zwr9}j! zyJJMUyJJvFKtSp4PU&U@M7leNhM|UrA>YM$-q-cs?{U1(hi8BAfWg_bXUAIq^{aoE zKzuwa{reveA8jC5uZ#m+`7NE&vhz`WN%RMTseokj?;@_k#@n8_8Yye@pHav>99B)N z{T;*|cQr*js!_C;J6PCu^9?MCE=_CR0|>~Ks|o5Fg;uP^F8|hmI#Q0F790;nh55dY zgon1#MSkZS!V=xL9`>MIF^U;+qn5$Iz}Z0Q!L8lvKNHL;`XicN5L^sh_-|6lVBp}G z4@!?KvW?_2u;@0lPvjaT5^EVfKghP~q4At_*ge3xp34<4Jx)xP^98!VgG??d_cZZ# zoqG2Xq#T-yQ?~j}U}-L6VtaMO=wV*P=b<F0n+x|z5D!{)2&k28g#s|Fzz1$Dw^&2y z$+N7mq*yw&h{zsvW|oBXRuG`<eR>((hagi)e{KiSKgDuZ@o!Yb01q<^!82@*9R1+0 zaH~>Fpd^``i6-TWDhXvre3F$u1maRon_-{)dsoh!?teU@-!S<xY?Sj_Y{rpNM_LbO z^PeFqDo9E(1RkxWR25b%gQ4Fd&F-<@OE|vr58S(GDotPS#$;Cyy#Uq9LbM28E6@F^ z()hTiijT#tN<+!q6(eiP@8?A*Xy-OJ3l;k0WRorbX~1JQBLm<%zHk+uAVf9iBwf5P zJP;>seE2F*9#Xr+NRTo#4ZujShR!K@zmykx1~AlZLC1r=phL}UGMv!RM-5Kqvd8Jw zmi{BA(L}4_Wa`ix<Pe91ye{F1--2r`FW$yTXhLzjue<{XfqA!p`@zz@C~a-ai0jd< zu0lNg>4rj&cn$*cGIkmlR(uw~Aga1_p88NR5%EpL%frcHK)yh|PtkY#&yXn4XHP-T zMx(cCRyh)JtrEgXuTwnVSA*HuZa+xJ4Tw;qUVXbHG)EmbIfau6*q&Y+Feh+Exv>sv zp3lXm>K-<DoSmWaHZ=Ht)z!HbMJN)MU0zIqVN1|)yT~(5PEqYtu2|yHrbKD}nRmC> zBmderP6(CRrW?~w3g3FC(e<1Hy#_k~%SHp*Y<(E=um#$p_0ltP0Z%P&^`pJhb4N1v zUnEw4yEl&fNtQ#L5rYxY_*JkP^Ifl7iKe&j;#xA=?z8*}i!0;Y)LQTMRxUD^Bmobx z+NAz6px5%`T+uyO_@>g~R8_P&o-fN|WYLzHQTM(tfw<^yt$g84Sn6`@Hw?cE+~gIc z(q*sSORf~-f=syNMmPPo?nGX5!<i_ZNS012Y$hvRs>wTl4aNd--9F0pl^EzuwNc|@ zK0n<YF7)t-M?O>?{Bi1z;<Tu=fdBlpw+`A-VmZg!0!rvHn&bx&724|}0rHt@TL&kt zdUFC{Q|^wmfNP8^kLDX|JYQ0xbF0T`GOg9SGC#c4?xMXLW27^5Lp`-11b5zX#?MG! z<k>ra&zq4_l9DsU<zqaESHB+P=<{diObj&KLT~8XM@J|Bc9&Nh6nAggMf{9EUNL*i zl}!7ZM!C|=%4q6WbA#>Qw_M#_U0zR!MdX=jSVSQ5@)0T1njwKK2O!t$Ykun+I~5Zz zL0yZ&gec3d-iNsvt*sff`irBS&&gsHR8(F+JLvEKJD#()^#rFo(}9NRRd9-&l2So- z_A^0pcco3MyCo?H2ZyB>s6YuJ;2dXVV#*qc(~}4;@5WEhUwtYR;wl$<;25klZfazv z*U>KNy(CVg_)-1~<5=K)fit&SC8hfW-PRT=z^xd*9U*OD>e@MCi-RLcE4Dt3tHz35 zFh&PbW!me70rNXD!jY7`P1282$wCquHTg=&uXlTSI45xLQ=M=tE}N<03{72gGJQ=U zO}=#G&4ANc7BM4&Ra#0i#xz0Wf~GY6fsF6pA8qdx=_ZpKxm$hx#Zga6Nms76n6R|N z6(y|m>w~e8V!rBE_T?VZS^IcqE-AqeRLru&H8WFF@%b~WE&(0Sg;{mj*^b`;MNq+e z*dbZo4PM^hpn@82DitZ^^H@!#BYAmHK-pmJ68xE*jFP<ZThy`)mcn{o!gN)07EX#o z)1cPO)Ks`FhX@S;G<laVp<v^-MbG)W`+f>9qlg=Y?X}d@PG$!>oOULI!Nk=l`&TBO zl0tKq)wVUSh4M&!Hs{?C;wz=vMT|_<McY?1p=dS(Iy4nZOiYN#JJ-o^e%c(B8mIey zKynZyg!X;(#{cE*FA74Kn5u3s)?WBw)h*xn42uW~&T*GIcd`R$VDr<TG?K$<>vIPr z&^Lk`!>}5Jc>om`Q7Z2AjAl)q-y4HFX!G1abO<~YW%k~;H6mKUBXo>Fth!B)*lQp% z%nG>He)E_T>`eiHz}B-z!Vdd<kzpBiU_FWh-OgX$ei0v`EK0>9wC^U9Wb4eQOP;Km z>ZP=6<8iBN{b$R2aQ8hO3^daPG)UfHwx~4tm_4-wey^m4#KSe=)3w!g4#cdbqjIeg zj#twZcsCIF{rBA}fI(644o~%Kr+p3b+_`LKeQwWRG$$wLtrS8T=`O8i?MX_UZc8RB z8wv(ZAnP#)K9T=?I$8ng?Z*QnjQNw|<?X!U;&$+-`Ohp><m07hAoQJk1yMnpz6fZG zXU{Z^bN+&8LBOywCwe3%JO$PCznjnIojWh1AYj$)XaHV$u|op}<^XFj2z>gV|AB@! z7DsdIM)~jNQ-gl@{eOQ0Kls#O{$IV|8ZsHTd3z;m$o|*+TthgWxsAc@Y<TX2JK%q| zJ>vMuk)Yc%GxzxMEi&}a_FLP~C)`Qi=ATnetStX7?nhkIj~|@{IHMBJH>q%s@dMAl ziF*A>7g|!Fw95;B`@de6mXVT^k@*bvQyQ&m(0EkI1;`4YJf1V82-kf-kh@ou_sz^y zCDOp}|G10)?m0+OQpf8D{#~@+TkRwBY#t`zR?1|!mS)O5I^p1$JKZX7C`OHm)c@ph zg9rdp(y?V}p8xOB{C8LX>t*%1O>n{$h$)?l#Qs^|43b@)#*(@})&c_P>^$}u;<X~u zcmMz2?tkwOTaxSbaTy!W?Ue<a%@3Xnq(~?rd~Tlyu$e2VsQl>`yZrLXf~bUkUQZO& z_CVTDjW}A1nvSEnsD(LpN-1+xlyi7kX#?8d-!C(FVm8^s^epZ??he{JB6jXio5ZA~ z-3;pv_raZKIZOMktSrBBfPDFUhA5iwt&Zlo%|0a;sf=^6r>495RPrzx3B7Ak1O~mk z>(oTd@fY(A5zK#&<bVDx#s2S=&t6$uLw^vM)Zn>eHd)cy`d-bcA5ynAok8x>K(_bJ z+czu9@aA`5M1c^ty2jW-Zn~4_w1dZ6&jZeX@6}H-iT`=j3<!T&&6hb`%-_RT96${z zA0HhF%x(52a!=(-8mO@l&V|NvGqMVYH*9TgS6cN+sZwYtDEx9gX4R=P*ixH6ZaPy1 zc{|V@;j@`)*yrUXl)s89Pwey@e`V@HS4ToZI|S3&!ESe?X$wj#r-<sP+G=pIEG;Z# zymkQ9ROMdo66wj-kX8Sv<iX4~pRH-%8ocgcL*G~EnNXDKBmZ)3m)-p)FCL~>42=9C zF>iS%Z;rPH9{qDl81DS{0U;(JxtWT^_Cn4^Ysx9k&iQ~Q#ljb!mvLR05(h1b!N8Rx ze6u<8>l>zb(9iVr;PC9nyZe#3I&RZvL#+kgY|ftzRX8IH&40H^ID(SM<rohhmzZGJ zlM7-R79(@%53&{xPm^!HQ}XIut{WR0Nr-jWuC9!#fYx3n#(OhaIoTD#l0dk#w|_>f zuixq)<#J$T#@bb=Q|A<t!%XVI@y`M0p*?zo_3zdE?G3LBl*e##ay)lL@?Bot0d9{v zYLE)TIBvt|ye7byxw^$Oi|yIj9d^)oJmYL@gml*nB^zDu27z-1CcQE882&7}r(^=o zQX(RETxv=Rr4xz!Y7hSIK$VTV3gWpEp|O$}MhfB$=55BiYaTPH|6K5Q?P(Y<|L1-p z2!O(F8XHv)b9CIUC}(1ebqAtvrd@uy)bz_3#oC-%O`ec2#!63kQe~t#tX?;{@Acp% z3y|;a;j51i4xX6~{yt&WcAYp4mY2CSIBnL&z_lxU|6X)Jr+&D};9^Ozam1HF)ZZ^F zD{`GR2BFz_m!xEVp(phb<@qAUJur7yaaDn_1#Bv~M=!uL0ydu-U2E&z!%2<n5>;93 zW&z`~$Eh@-TORc_rrX7ZnaMc^wh2L9T^umYKiwAVEzr8JIXTAgUEQ-)+5z2#9#Qn8 z3*+&l67uP>%F3f6ZI_{0R?Fhzv#L`{^!?S8Wd1#6yj=m?A5BjX&z_02yj(BUX}Ebo z$E>?uE9gbsPvq$2Xe{$wduFI*cy@Ml)UQcvYHF$mIR}0Eym#PT{-gG?W|!S_3?U{a zCc}S@xAf)zd*tN)CgfVEq<Y(+27ZUd47XIT=|(#$W@hH#B4=xjo^I>@Q)z?cr8@gq zXRCgl`iye}V1*yhVMwtr{gTVS3cW0-OO;J|yV-Vh)cd{nJGW4uUwFp!$<DmfNLcdh z9I$M9N0<FnbU=!$dr~K3mY&ULY{(twKkiu^c7nsJcNWf>4gfUVmmrW18L+;L$kiWk z$0e8azr0*hln45s#)ihWXpE!Hvh6KajIfk<lC;7)44T(l0jgx&4y&cco+m?TUsN`D zSEz)H8XeB_zKGy>Ur1K0r#8FBGa_dWwC}OvG5l$#t=u^ks<FMUr1!lzO|CFS{8Ton z{XNjyTV${m6SCG<pePDi%lDTMXV$7)TS0})>KYhij`t<7B=8@O`u9LswOg1kz58Xl zt#7q+Xz#cJd>;REF426L6E4K;r3&D>U6;<+U+@BDlcc8P`BT@(wQ4eoK2CDT6G3;U zT<Tw27p*Iv_6!KG-g}RO6B;XYdEFMsOTC}sa^>EtYR%IB3h#SR_<B!@(-x*Wm-PbB z2Sk0DJHa!BPY0@oL8>h?AIW>WeHcA7!*1sF-0VG1B|gMPnJRcoiZs6_WTIpGF_n{- z_YI<?GW>-VmiEqDz5N2e=!rAV3JFba4ladoJY{XPqz80Y*j<2`%D12(AN6@Vdu1g` zF|}_c@?%6yjQ7&4e_mXiw_yD~|A(4?s)4*~wm$$2|7WYHE~qnXvGlqk5&TPc!RvlL z+bAYIbL3|8C(8^p0%F+RRP2mwFN7|3gII72VrXt|W=D4`GE5kf^GQBB@V+pPZq4z) zja<^&u2R@!t_8^=dTZLyX^C**^Fa9&;v8S&oE$+ur#v&%=T5cY5wMo~3m=PkvMW;P zmlKoK^<G<A8~9D)h85#uY<Xmvxq6jdk9v7o$Q|>Ha*MB)LPm30bf)Vac%VEytTs#A zsMaBcL=PVGiE>_|U17{~w-L2}rpUeXcX;oQ8%Xv{`~H&aOyz2}l~H=VXl{b<T##K) zwnaNRRjS{-g-9zi)dJ<#ndL4XYPeKMsv2^h4P-3VrMrNPAimt=P^aLngo3`Rnp5O_ z&L^q9w6zDowpCv@ZfsL?^u1RTa;5U(%zk&+e*~n`>Ye|NZGLX<)>PnI2QT?3BbENX zaBUs{&~)XivGC&Wo-FZ>xjEUW1F?!a|C>vXrNN;J9k-#cW<VFct-6ngS-<AO!_E++ zhrLTZJ~48I>Od9Q=Xs|wWSl3dC)OaFc4^HBD%p5+>uu2)8{R0dkq~~=i$y=)>`&ke zP_>CInVYUww#=cXqVi23UIX7lEoSY+nY%BM`|-^SK>72Galy0+jG^(#$$eS)Q4NLI z{{B(u*;zTm5ry779^p@`ocCQ=cU)s5BRQ;EYCLaXlxzL=cJ?ZQIxBvDLd!k<VPUVd zm0r|1?v%zqo06pOx_pmS5(91UNp<{XD2(fglGJ#r+?T!8ylm1R4Y_7wms&i5A<qL@ z!zp<^PjU$mpForb@@)NgO^>==kNQ>hYLi}s-3MKBe!*tv6s!{FX}iJ=QPkgk(N^-^ zx$+cA4?`BFXTKf({;`Xcfc_Z`ybH9@EQxBD8>SFOE-tIJ8sWVrVbBfxuxl?}$E{=j z3N#Q|>;?;GD5Pn&XD;-g2}vlmz4UYT1^quYsERx$=GZ`8wbw?)$6e%??d_ykbid{r z<Sp2TL=W_H8+F2;x>o$SvHW8Rwo1x#^nve8tFvcd9kL2y64Y3t0>#8S>{n+SJx|6P z00FZ%V$w>z&Vs@P;8`}FC!!}kW}=YKm6(Dk_Q!_@z=6HbY{s#>{iNDx&|zJk*Jzn5 zA50_j128LL@3n~D1JZM&i(#+$|6Ju;U_=&(?KJ8H!h@EZbCr7f6I4CS5YJi%ree#h z%eUbT(nxD^y0>7A-{VHP9U^B<D$B}-^50~<`wtdyQdLMgerPy6M1M-jD+KK-Z*07* zJUW8ZSV7I+)vl~Ve7}m;9{jlWf_ts6!qU2>WxRi$#K*^dvy4xPr;ZdFme*nPGMB~1 zj%V(ZmA!u<uU`=4Ng>Na#M9r|S;@&`vo#_>#UTwEB2~zXI|$wYg?(W2gw0g_v8HCk zC6@p@NEIEqP)(<7P7*`BAd->!4olg8M)`Oi`t*;DLyxcz>p+6Q7io;3FCw8_A+Q~8 z)BDLU|EZc5xW4!(Tmci-+}0>A7Ov4S&FEz9eRFfdsd?drpS`;KK6@#jE@*I6NzHSV zc5aY_TpJu_?9=6%ROmL53$*$?$ouxI-c5XDjnlBb0i9Z!ij|eR!UC{dOTKD4{pHD* zr!bb{y@#HOw;KxGMp+C%g>T-%yIR74m44<WE$#Z>;w6etR@$8F!y+`~y9d7BO~Ccy zwlHZ&gYsUV8y)5B{t>ma-kZ%h<4od`?ohg1zZWu~S@$}-5pz#QR<`><;RIP032F%q zP8VaOb#}m0F8uqUk_;GrMxRYhUnD_(Nbqh|bkdnf1Y(4Lt)rGt^`AJ*>nXr+7fJMh zof*VLyzjnb=cvegPEIC~Pb<jE0LP)bUR4$qU7kys^Yi#sU^ex8WVrw?`|l{1@a~-k zJt@xtPz=-HT!QWf#g;u_So$%no3@KC@SHP^R=HpJ#m6&W4b_>lbr?`oFf@)-k>72t zk^SBFLl#QR19h}U9x@P+nzz8f0W>Wr^w7Lw2#_SmG{GMjO1nAF2<ZacOkH_Sj(Eji z9KI?meRBpgpGeAsGAwyvSFf?dJOe|z8CEtyju28wf+vx6$Oc<>_KIe`^0nC1W_HfJ z7JxA^r{(6Fm>BdqMK>UztlTW~(*-m&1t8H~|D#>_yKZbJN5`n0*DON%CpGQ+am~%w z)70>XCY(%>t*s=>e5UL;KbbvT5Gy0Kidy1pU<`}(^eRQo^$!fl%SpzwBe$%?#doxt zHjsHQC*{*WrFq+df^}<5^~Z|8*asmjw^s+h&;0zbCp@q2QO<fiK3cG2<8fwWrDl#+ zC37Ax_kA@vTGTbb^$|f6d4l-<&Ap$wti+6-!;>+8YxC>B6@VTUCMKg;WPqM08PBTQ zt2_D&ZJ*-19s;9Lj_`wgBb~()AYD796j<vXHKd=Pcs$RhJ6&^NU)mOJ!9V`lrlx|# zW)GPR;A^?Wnm7wlUZ-92)xMXf=og>6H;OE~IC<;qSxFn`5!20*neIAM<9~xyn`zVW z-KY)XPmps?2efTZRivd!`d8+CX#NIlSF!7lF1V*yW2p~u)I0I)!3fq_b(yWFL%s)V z9&c5nIB0JP3Vuf`xbw_zlT5<lF@;dU4Zq;*R&7>JZfc$5>f-W}w+*NX>Byc&3P~Az zH+-Wct-Rr%TPApd_&XQMNYB<aq3~Ltf{1kNkX_+GmJpjmxj88+!JMX+v2AkloAq#$ zTNoJCZ+>QSkX-*R*4kS>aJX>U*T&-Dby($(8tTslO{pDLVr{N1*6|o87(BlrlN*Ff zP{%PhUMC5UuW@^ShJW!F{ll2_Nr7wxdRu(_ws>$yKigDeKv!LYmPdXV{|j;@>&N9Z zkj2ra56tRVFwP1AXr#Aj38~9nfMkJZqtAch9*=P}c;U2psampt*p;fu3Ef1^{p`iG zUt6jgqM9EW9Q>p}j0Lm$WMU!4bAlxp;@Tg}Uv1TrR)1i<&@%tlan5wSR%q^e-ov%$ z#A~*djOQx9iX@g0)cb$bIfOFt?pymPbfc<wXPJQxq{-b|_!Qd+Z=kog-mxzh*0A;a zWj*~Y`>RdVp5#%*<WCs%)KU4ek4WDqHbN_)-}#<<Q-$qR!O^2GnYMvfujscc3(V+Y zl-L{`YP{Fe9-mr<Z}wfB94nhP>lF#5YD8(}bsOD%RfXb97YpWfmHeFg5<G!SOV1m( z{a5G5|I{{(D)f#{PMfig3g3dmLghayRcAvNs2*V7qoAK@9=-2JE$9JYw3qU2qNzkT zsJXgi!@;buo!~&Z;2_yrlCy6uTas^oXJ$4r-^;@S3YU>z&HU>9z1`jv1VB8oumd{H z9QPFsoLXxNd#~7%&`O|io^S7%Hx?-NC6hx`UNBvX9UKYJ#I&}biibi?Habs*D0278 z>c7t0;157N?=UjGlKKV3P<u!he(AkRdcAw}(4drp*LERX7Ty<+5`oQ6Y4R2go0>P8 z!auT*=l}iFQGt~iJKxtH4{JEx8&VQ}#d5tgw)O9%aQubBFFHG@W&#KbYuU4Xz>^gP zr(xt@x9d{z2VT)eC!QaPGYh*{X~5UaIJ=|Ua^Fw3sr~MI^T9^@EAA_4H%Wc{^kP|H zhDZRaUYMi%tvzXdRWjhr!Np;XR!>S!GSrho+Uk_+=vZJ*7kEu5g}l3qmo{YpHD+@m z{CKx}y1Nyq4DxAcX?fW4TtA0{qHEJsTCN}X$$SD^fG#?HAft$>kDkqRETc@6dCCh! zCO$wHbUUM4vHSS+YRXu5B%?|m^f^}DS$KjH2uN`<RAI^nAv~J6C)IMeRp$JYV~0hV z)O=Fk89IWa$zj@`6+}~!(_)eiu7;fICF_b3^7872wDPH9^R)>1Qg26@r0THhVpZ7- zE$-y$DmJb+#BPK)RNq5!=5&&3{Xy>)N5hTd>~d)<4-VzXTz&j5`iLM}s*DU&$1tOq zyiP3-5<R6Gy{9-$dA-E;0a&X5f<`%Aw<o7?!X~po33Y_BC;-i$MOaU>EqD-dBX@Eu zhK5^v$LnbxJd!0X;FG5Ff81QNJ7foL8cMR*wA?~z{&a$r6mp_T#-AxE2$yxCCh`p@ z87ZlBMs!`4JY2n9C$O;oK+&06M!c4@<O`Q72_9y30M@?8%|8)RMC4RvRYAdFizM^d zo=iz<gR{MVrn*wFRK3sNAT|bFb}`!j{O$NlySarJE(0EfxpY|$cNaD;MQ8FK`wK$^ z^}9ob#K!_^+S=0R5mR-e&UwpAoeYs@A^i}^4R$dSM(dX(^CS0`mk1D<EkiBU4i_;8 zBX@=y7DNUkF~Z-!%J|$X6N>olyffI{98*9^y*d0Vh5sfr35>!jIPo~$URSImxeg$e z26!Rs4y1*Zzoz<SXPelsp6glHe?Byzwm+<9M?5b%@{XE%!N)y+<Na8boq>;qp11wa zWM^w{REpV*nruF)%maWYf|D<ViItxFEH&-}E2l0IqSA7r{@E$2L`K6^<+Bo2<jJR; zKwE4?4Q_$0d%((+WPto{G;1`4t^`iYcQtj&w1Gk)wRY?MU5By#I*q-@AGIqGF7<3m z<LwNP5E|As7Z}0gNtilbi44i^1>V<M+^;L=eKX97T=+tR$P!`UUivbk-V&E}@3c=h z^F>bvSA}VF-#*9+mL=y8hD0YPd-1&Z5gluLmK68)0R*0o7xrUNq2%&RGOtN@zou`A z;K>Gya-fTcvv!#`fqKqYlR3V=CTdn?DXGn)QrPm}$9H`uR6wT`Ev<y!_a-JL&Cj*$ z{eMEFQ}Oiy0Hr#rq1fPTr8+)L`CuSLkf3C2bkxz_Udf2Ls?$F(5PM>{v^$I%&WaC7 zOiiW4$A76)SX{ibpl~_&v$3(UbGRu3)C=1?JF1$AiHT%HMASNkg@xLMYRq7dw4Dwu zr&>>WM1LhGGgu&$Y54fGYSkbR_;~eM#S75UmWD>Wwpu)tl$)Eopa}F4`5wwVw(tpT zx(E9V&D>N}R3%3yG3n{)(b3Ti79%4g%hJ%6_Rh{cV@VglB_OhhO1QYWt1By2jI7Mf z%|Cz6uq_S>3IgC5gN3q^QbdH*vELh@JK*6_H?k^^vMr7$RL{W}Zu7T5d^xgJ9ar*K zmWJ|tV~`nBGb+CHNW~>2X935J{ed;ombvNO5xbp{yB&v=xBl{Ah%{>%_zqba%F?wl zatwS`Dw@)?9LdA2RgUZ<^u^s;?gU*jq_Q@zyv42D?;XI_>^5*d+K7U^k)_UGUozA` z9~y{G9eSoGc;7Et?CGOfY)qx6kCj54MY<Gd!M%`S8XWVn8qYJ!_8o_otMD(^yYI0b zIE--iM>Q_jccDQ47yV4l-}2HxzT)q(gy&!^lI*3;{sDX`OP4~ODM2(*x7qswsG<eK zS*~j{oYz5eQ|R}w<fc6+JKj-~SE_X@wJ$~^$L_L-4A-bnC-Sf~R9Ml2dX*Y}bHvEQ zN@{a>(gdvKWW1HaaB(-pbTKs}4<<jwPw2Iv2+mJPU&8AY1trFlFu}mEltzsgPaOiF z#Fc?S0H?-1%c#7gQN})9b+Z8!)wV|F^H+<70}z$%@g^XtUFe3DY8P$iD^?tb%>~x( za~oNndGS<rhEwdPl=lYR;5*)Bz1YR>uFqo!*&U1F1FgKN)fQupTab&=`C6*ON#HW- zWJ1}jmoCv8qZC3=Q_}7C2o$NjWu?22&!Rq6nGP=$Aaxl4;eLv!U3?X~Z2qBzyUFl| zLQuLx%A2`KG7vhL3$$dfJkk^n2g@p;R}OI*4^Y5*J2mw;ci)6SDC22>Dycg$kl)VN zAwRmi=Ui%GMdyAeo6pY*&k?u|9jr1a1gaGRl!yaNvtO2o*Yw@MJ|!NgsheC4w!*yF z$)FXLqfy*|?$Ow5|G=QKgOD(p0F^qWzh8H$7R-pYX`BlEw5o8=GxXKO9f~o1P~7kk zHH|zJ>j9RBG?i#o+<lT{ScF2!Nk^%4-rhvY&4xdLrG5DI#WK=2GXO|-OeC!Fy^M#5 zQc_!DPuEMJh_O^&qsri+D6L72rl$j%iyjrvCvNOL`II|>UfP+(Dw{(eo+`}9Ux-NN zI-Mb+&u@puGikAfdY68ZvV?nWfE+NL_)XSFm<Xk6g8`_c;!?BCOHpW(9?<1%sAh5| z(7P=48u11CQ=uQyeSp@euj?aE6{`bbrxZe7*Q7*36x<7KEmtW4VntK6qM$<|`F(@T z3ClHUG*{gZ9|ZBRa3wQy622GJm-GwClJWEN4qELscmW9!hvkyW?%iu-kTSeCp(Nk5 z1mm7BDGA<nrsd7R@@I_j<lbn2L0Db5J&5$oF3&07Y1(qzKUBl?6+9p6Bjpl+9+SGb zbT^iEJfa*<kCqn<uit+d1TyK*tlQ1K4M2UQy+s0xpT%LC4>$a@6M&;Z{rFn#IdH(= z=u6A5RG{FPRGh(Dnwpc-jUV~sQ($kipu(&!Jd2RNDsplb_}+52Ma|_r2!H|@suqCU z#DuZPvKT&JO0==+9UeDPp)#p>sf{+y=qapAa%gByDFk{uI}OqH_(uM`76NP-fZ4zF zGn&=;$G(53p{Z7QwEiC~V6&bVgj3nVoz=N<76nCIe$#|DK8aKYK@rS?zFL2Dl8r8) zenKHxs?;+c472O;ArrBsQw#@VV&<~V%Qv46CKpHFcYIh~StS>+ci;I7n`DfQO@#u9 zf+|q1|43x~n!t3!>ngxU6BfZx-*5v{j!Ns~0rMbTRBE4Qqy4^)Q8Eqvd+l1oP?>VN zia`1b;?SqF$jp~WcEwFTwb8up+`C!{35T$_!P<0__>;8lTDy%uZ@t%snQwk0VV5$E zzW9QfK&qWz0nH0A*aArDN<Bw}+>V}%@<hIuG_XXU-sX!q7bliUiI=rZgiHvy9(|ZX z2L`iS687v20dy!tC&roThJRzFeWl!=^kh0Dehu^qd>H~eZ?q=Q)^rk6XzTlq5*F`Z zAa@SZa`V=>Cezh!PI{vUL5@*#j^R9Di$dGscT}1}cU;Uko#28s!21(h!`XFl3v@7m z@#N?Ng7Lxmy~rBKPl3g;*8>Nrn$t$y;Hv3Pzzzr}Vui)X6^{WC%<6j6L@t>XYGgpW zUr$AV4cO6|6^F_SV|qutRAEBs!fyM_x{T7;Kbch<uVXJp>O$oSux8?p?Cp47bOITR zKOU6uGD;pJ2%wm+?!3Gad<r~r=Xy@4ReZ%a%Ii!@XJU8coaJy;*Q#%PDPi&XzYNMc zd-~FQ)_{T-v7+<Vq&%n$UpY)D**DcsHva0KumWHMjY5Khp7A)asF#@OdmF>$G9y^+ zlr>DP&AXj?q-ABX!@n04n|jJ&6>eMPbBgnMWi&ZT>*~%qGixW+y?(~KeBJiq9C2Cn z1>${;2<3Mv&x#xYsqt4wJ?{004b#Imygk5M^hlV3TG!j<vd%u_?>tQgRY;Wfy#W%4 zv)dD5Zp+qDXXZrV@X&@$4-QU&jF@6sB`GZRL)O^KsHh~qCEq&?yHj&x{wdg}xe!N7 z9XOuE$jjm3;Ur<J?!8lLez#nQ4%i9t%~!{s8}A;yd(XEmQ^h_Eo6t2yA+ljv5TPT` z#>Q+P!+=)!r!zVO6O-p2U7WV+#8|djCi-PjWZdtk3ss;uOWUdS8xD@;3tsxy+p=`N z^9QSX(k+H{6Xs@S(H_Os)zzI^=C!P+TJ<V19?VV8SM>@@OIgcrtBF-Ti%*{vcB=xE zR<$i&XImDRsi4LaK1SOV=Yt=xF0i{fVj19C*!c&=RZ$G^=>(<jaV<&k=c+0$WjRk~ zII8No1xl_4YoFY?rz{3Z*Q+?mi&b#HnOs>jPc@cug-w7xfs9oeU3el5#4`D7gpxIy z-c`E|uvAK;gSGrmf~6(&RuTL6gSlR1xu+dY_DKU5S@q5FfIba_zya#7RWJ;V@yd5R zpkco(Fda}RFI^Z<O+Dn>Ud5KqNgZbiI_^wvRy?G{eKuM6B@O=&gmZzgFp)Q#^?lHh z2mbFvV*1EruMH<R@bAr3nRi1VKr5qO4A0q<5O|1l<2}Wv&-XEii9C;GN85eWX%T}v zi%&s0CpAKdPvECPc0E{Gt6v`QLtWOQhEyokhzVouJ3<?zVc6r&MPp@FA!>b1JC+d7 z6@?d^S3T5N7tVWt8QpkB4?;p6BcMSDiOwW6(rAv~%LwdtNNkSFGoEI;T&Iw~p74ao z^^$TaakHz+I%z*dT7J-*2fU7d-Rm2$Xmisij8^O6M7t{!ef<82wB%6LkQ|%_7jxx- z5!t8hijn87*%n031_fyVWk7|fVULJ3<2pVdI1z4eU+#x^;8t|&TN?gO=4gFsYcZvT zEl=A#W1*Vt4MrCb`<UGp%$-|UW}75~)nx2-Od$NnQ8VA3JngAc9PZ}krfXe;v-!HH zy08hYN3#L3E?VqWV;#F3*_dLb!^$5w78d(FBaSrr2{QuWO?X3yZRa4odKaW{bU{1% z?GP`L0RcN?EDA^J%KxYUZsNj54h3}bdJteTBkxpM)sAtZvU(2rDZkFm3`s)s&Tc?p zcO5O9HaW>p#Q+NxLfMD0#(X~R=5a3GAF-PY)i~VYj#m$QkIFWd3|XI#?I?bvYa*|m z|IJQ(Wz)n)UX)%cL75L?Bh7~grCkL9ACd6pM&c*y23r@J2rp1Ri}PWkl}5-%{=IDU z-4BvnhQ-yK!ZJY<9Y9yYnIV06(~?lEsVR*L_0N+Y?QrF+t;NMile5(*G3I1p^@gLg zK6XS}UH%lZF!mHN9}TfTxD;cFrxKmt>R|{B)J{IVI9Wo@*Ls<>pUXm#{2vi7xE!Fo zR#MC7$91ZNRYD=(6}$#;tG3ZkSygvtXLa1gQK)wLq=V6ZEA2yzii!%~)PUjj(ooet z$xI>OATc&R??_l}YH(WQCsRD1EEa7bhm};bc?`V{F8PQy261;kKU^O`wcHz0!9m;W z#$>H?<my-GAgN399Q6J5M6qx`nyjYopy{_n)ClH;QiFy<7pJ#Qlm-w3k-j?2g3g~| z2)UQq@Whj!V|zUB?z1AsC#v`-!II0gKb~9dZI8On`zKZWhkYS4*Fp;;MK6U1k{XwD zSyxw9NXecljZjnxDU(rF9hsR)UiYWJJv@aFJ0yDT?XS<Wv4hyK%xcRVTph+s5YqV_ zl&*X3BARol4cE-`YcS<Eb`e9BiCiT&bFs?)b5eQwj{CtlI;VZWstFP!=|*k>aIe3L z6>>;l3s}$BUY`w#-iDLml$SePpI!XEzLB%XN!#MSs?r~Gc|}za^qi3h<o<e|j+A;< zOX!=N_FHLa4nF)PIrvdlww|El5fOK%Qsiy{q(+g7|MWh+lun&%O1b1TfU4zEqCK_a z`#Jeq9r>naG)F92aJIQYqU5YGMtG8DgB^zYHQc45sF+EUx~IP@-8GJp2jp7zMsCC@ z6S@PLWi*JP%BAt%-=!z2Ts)mq9BR+()s9O9<4oS3pd2$k|0zW}*=d-N^SROmcb`%H z^?jj7*T^&85=%ovHjB-t-EUC@Dg8}8f#I+l#6*^%<Zn@&a}3<nXIwgCHX4N+P>UL+ z!TxCa-E+rnHcF9FDk(V7fY;j1P_S^EtuO3@kZnGdR!iHfd4voP!#1z2XB%Zhoxep) zpZXb=S{K4)t+mR5`rb^0-W>mTGSnU6{+Hx=5-sVDQ;TvB-G|hRuDsd`Z2Wo47*y(T z?+ZWFuG?)trI_Cuv6{s2@<TcXdrVwbUj=YdX7nro8@sV5U$82^dA@+-5tFV-Gsxv! z%omGI6BEAbR*ldSz@rdsOAZ9FgFN=8&_yHYL~~~1HB)o>4zH`_#zhlD0~w<ir)QI^ ztfkJrC5~W2H5V6tLqy}zIiyA2WI7kj4X0dGKYjMZ5g*tN+$>iPpZZfNUd+3fMS?NH zk!{Xn<3s1j(le=z+<_!^skg1%Ue+mm(Bt)EsQo(aRc*s5Ww)m~0vM8FOXgR)k1l%m zM7)3@i8{&d2m2>J!dZuh*x?xiM`cvPpQO$((19{Rl2$Ypml;H6jUC!@#a7pM4`@F` zOB3gy4NWcE^RRx~ZQ)(BK?CbM`$?rY<w&1AU7cggNF#TkTjJXx=gDdM0#*Pd0YIyx z2I#<reFFC7d<D+Q(S{b63X{(J@s$`QpFV${ZICumGxI*P2NF~*pt_O7?>!y)-D5B` zs~NiKR&6?K3aWFPb2y_4`)1HL<a+N>-f}&%v&`hDVt%mr8RT?118~+Thk=l?Ew2Rb z98vtognvdm=KGy@B9M7^_3?ia-gh5oPN^4CVoR>>Tqr|RkhR?zio1i2mWH*uy4v2+ zF_EVzn#IGc!T=W2dHF7a%`#IdGVea(w75}2oQ`5n$fJ(#?&q~-`?MmQT~DQGUR0JE zQNao2rtofzJk6D_J%>NWr%wWm@HT~$s~LHveh~YzYX8cnF9s6Js&Yb2Z%&srzLO2_ zwJlxl)nn$v1a8)!k{F<6Es&5mgES}y^s4!5m+j}-YKJCrKiqNv^qHk*+$?fZfFzIi z*&9CAo}E>cao>Y6C$qAfjdI!@J=Quq)svJD+w0sg$Ynj*nUd7>XLKz}5fixC3{1@r zif@pPjtvilNZH?wa+Hr}Gv5P};cm-!PTCcgEk&i!rG6H^d*MlqzXz_VeMvzGt~oO0 z0ySxV%vI0Gv%3fJBo1TMD*qFRjd^&8&7uPg*<B3ZluWuWYs*8cR_kxPm<f!Ax<qp= z1m$bo;3W$&MS3^ulv^>F25T31zNmxVu1rI|V8t8&wOw?#I|!%NL~Y%728#b<biX5( zTAhe$rN5}<8V;*sX)eP-X?TMNM*Xzyz*iPc!lV)YuqGoq%WI<%_@%BCoe}z%tb1Z* zkEs&~H-_t4vgqf=$uDTb$^WY4EIBQ}me)~2s$eF)>Iy{mSiWOj0vhLQR3r6l+!*2h z@YuVlk3G@MU`b>h<#--Nu^UlR2I))TbOiX2OjqyZIxA{;YAjv$Fg&m;Wig6PQK>(a zLMGL&2AFEUizw5F%S*`xh013=jk_ycqLu}qMX<(x4BeJ4y&<}E%z<iiov!6P%EF`K zt1_I=m6^7QzUjsf|N8DiDEMycOuOQ%tMQkYV*aTsaWT--Rh7j*ezWiENfkbv0y|(G zwPP6(x*vT$VylJ_x(%|&SZ?&gVs!?j`BLU_1pdlue?-#LT=m}}e{4j+;9#~2&;_Lv z-Unz3&)i+MbULQYroY-y`qMoXou8cCNMy}vnrI+lB)QP4miJ_hM!Y2C552P8z+<E) z;D8^%D4!nHrgVfTswO?(R`<LatEtFU)&gX9^p7~5nW2>16k)7pE+S$IyG5=2nq+Yt z)H|dRq&6Kb!g^`OliibUZY6evcFts3T>dF<(g8;|=+ygtE-5)w+FLtkb7%TY+S%Fp zy;AwFf`aGIt*mwwMKOkCr_hfYo0A0%#&Ze2eoY0vV0ig?`9>oyiC6SGRImLrQ&|o~ z!*^8J2>aj{xVyZLeqRSxqADqpXISHf10h7@WG*N6`*buB5ZtYAp@0S-6Oog{jSPzc zirchcTX^{rOQ!-g+ol+G2D+xVi~#DTDDpw`H#F2)Fsp(AM8g#{2{Y$klL)q$&P(Z? zH{H2Kc<p7S9Z)9{xMBdH+YhxHJwJIt=SR<jJhUqnA~yuxlq=U{l#`?t?@>c?(2dOV z*ZKE5EsaeTd>Jt?KR@m7;)q2ZMA@}P%bIg-U(I`V;G?S5pREe15f1lWSW{1ENu8hW zGQdAvE432%Xj#IcHGv>ecE}kd%8vH;%n7=kly?fz?*ac!+$MMDUqnQiD5&^msx28R z#=%O^+jVkey|hfK?evlgBJ(V>sPHrJDWN!GUhVK_2PS)}u-DRg5ubCaC(mkl{|5^Y z(2i?LmR)xi(&1%ipgEI#s+<b2|2;Sl<+X?nYV?cfK!%tkyd!NPcY8-v1oH;h3SJ*y z{!j<O3F37grQW%<t{b-UK4Z|spc7i*XIIMMmqJy2Zryn4S!WL63hpAJNj`UX2L<F( zx8s}K<&*Z&H&~}^AZ^qWb?w_x^m*eg-sJ{Iyf#u~InbN^u!2{3o8K`)9s|+Ge|l&) zTUx+6m3y!S(-KPdhf^p_f_{X+e$gazu^70l_O{zp%^CM*OM(OG-nttXF3rM9Va)=B z;-ya5Hr`)XLey=rI&KJ?WyK%uu4fzSsPWkdGe7L7#}ahXvwXV&m?0|i`#$OeZN>d9 z!ra!H$1s4R!zM1sfpjr>x{{RtGo6?St+N%Y3!jEHC60UQ*LNk2#)rrQGKD=g_{dc< zOR~5pTbgbUG1iF4LC?6APPia2Gb{@~?`NPiaw6<;vYx4zY(xKR4`bfi+M1b}QXAfG z6%PpLYb2|-SZ&MpH6Kk^?fIQ10XTo!?AJ&jCv7D;<ldQ-^be|N-sU!S)#{R1<k#gJ zFIT<EBSTBmn^ncXclREe%FEqXI$>X^-|2#))Lt>d<siv0NnGlJ?vMaCu=5nZvYc~0 zkkn%Kw*wh}XEePsp?9&~+h$Ycx`&voI{V8#0E4AE2qaz=Y!lw7FkBVi-9<5aw@Rk? z<t3MCE}s`Myyc%}Buf}*_!79sQf0s}`<-HU+i*b4m!7`dci;#yR8}PqoIs=F!}i4A znHXRME<7Y9p<F;EK(D@Q5FL~92024?so^}Tb8V(s|9sz%_BSoiT19LQb&1!J@=U0I zQuyfkUP)HE-QjY0s!*!utPrf~-75@*J_Z-9U?gO2N2ZXU=48HDbaPCyJrHwB|FKpN z*}pUt>Lcwsl8+XdLZ3Je)M@rEbc;kkm{FkeFgA`U$zQ6m3NNw34#C2~!IAm?$jCS$ zKP}*RHdp@oEf-gEi5#%h5={*^G-I5Ke+vrDWs;D%*g4;>bzP-_T-(|T|70#MX7X^f z?rB;A4Pkj~F!F}yWRJJdsKZia&)BG$1*xg$va6dq`9~{Cu)!)R%wj3Fv|F4@u{yY9 zJuobJwfo3TT@+%cj=o6f(-n+Pz)0Y2Yi6`@Z?qwO{nwW!vT+v^hR3k$!qt&F5Dd!q zHfraM8SEXZdFb*i<5+O()@&4_h@6Ffq(!?4ecTVQqr<}x<tA=>c-g`pZ|ZwM%aWh5 z0dL2TlHZPODCEYTZ^*E{`zwGcbAS@n15lH75?!ZXSF7j*nK;mXGm3Vp<yIGO{4Kb1 zz8%M5G@R=|qJTP^I>ht!6`Y&xu8#y6LRS)D4y*A59nYdXBcF5wqHCwOYZ<C@$T;!c z2`t9yyDUcvEpm+@UjLdE3Isi6bL<~Vz@LPXN-=NW5ow>BZhV0Fnj2V{qPM@X-ugko zz2<CjG+=|7<l|l>xsvjWY>13XhqI7zPCJ2`?r~G5B}brEH9Jm7>G#CK;dp#{!_}ET zRz=LA-=q4){;cbD+27IUH=}%EzCn5JZ9~)DpHnNZ>S|coX}rp>7RBM!<cb4Vtu#6m zU)?S1NJVq>oZT8FhHFfgwW*`Nt2yaB*W|i&2zt9$_wRTST8}8Q?QS5jqlbg`PMR>L zs0HELbXb>uz=?yZI6CiBB6mLv6O!R`EGQSOt$Qo`jOR13fdSJ-;KvkQT$L~LbNqu1 zpTK~Io>8$n71M~1g&mTS(otR`=`OxD=L57sV8%u5DtABH7>Q;*w2{F#s>ih@m;<oh zOy1%>!+_!#5s!riKk;vR%?yd1$Fr@oQLG`)HL$W!lEkZ}>*f;lOzn#t#Fu9~<xWFo z`>b<%m*=H1@+R(<6%o=ny3jMfa8aZbY^EKaWI9!ZFFZk??d!QNmICQI%NYJCE$yUJ z0<jm%s8D>ZvOC&uaxke+iQ{(K)I4|QsBp$@Hru(C4PjY?&58<tOYK!n(LTO-dKWG4 z3E^8*@@05K-P@S;X;TB$!}BuVSqh<ziA0eH-!E(@=liy{>KV?k2&qdQa^<d#5U)gg z<FIcP8Kw7*UKHtsKDe_u=kuaFyVibiIrsAWhuQmn&&|<`k%+&2Wwg(IRa|RIEUZu> zT$u*JWN-4t&ax$=K`<0EzlHVh;kZdxbM4VlmBFXQ^K=<9I?*)`l@e*H2s@-r9vAJ< zsfl7&Eaj|Ue)Uu%&No8<$wI1MzzEDmN=sc?X(Vq<Lvuac{y8I7y|+el3MEUazSn7~ zi7bmtc+>hDJDo4XEwO7nm$mt?n+;jS-Bexg(m8Be?tgNO%B(S8EVfNFo<ElT9$HJm zmfH^@LLya#E{ABGtJQw8Zl$bh^qjO%b#Zb(43ccE(e`y`y$eDstTTC*e|%|b_pMhC z`dSEh^Oxxnr(bQ8=7A8+$RVKV=Mo^0RhPR9dRI&!TkW<=tf8@^9^{`Qq}^Ky+{aRc zGRcHT7z7`vIc?I(Ujt3(eLogCTp8YJc6!Z&cvTIB-wZim##$U$B_byNOG`5{^J9KN z=dKHgIs*6@=xk66MY6o&CxodKY~2FD1|=bSYHH4(6l^okS@}kUaUaUkBQy{rjX$fR zv!$&t+z;8!TtwsLTr2$;2U*EHpLUsTsKz26yfqp>RqlXJf(R?30r7gKJsX0FX<XJO zhH1<-#jp_h+Y~=oXns(c3=VKy850{D7u^Mt5@tuIXL&&`zV02))*<c`hp)Gv%?)#K z2+ryVZq|Zy@j`0?PBb4(!07@hifUicXV}L32cX%74v?Ax6|2rV2UG;_y}qV#uS_>~ z-E9MSe~OQIx%OZoD%5HAil^BWq)2MHqpMddvWLVy(q`;=XBHw{wV~Md3eGF~Q6jfn z4$o^y7=l{Fi4K+M7#dZo^0hQpJDKyqqeK_Zra1<5d^hPxh?JHvkxKq{hxzfjaOwH{ zD$>~uUNC#bg}DDweqf~=2s*>hD<9pPwzb;D+E>n3B{*_+C4ABy4Jz^Rp&@z&PNAxR z9C1L%hf8(1W{I0)Eel44+iD0M&9C%e6BnzY?8<F;u;iwzE$vbDS-y&jibIf_=ks0* z8Xz}EMSq~a<ft?{VhF-02^<a&zTkaLxi38r`r|1M`3Lu-S~Fgqa7#XJoNZMReWpuJ zE{)A$efD87KSQA%JW)fo7xTUyFZBsAhp;;!Sbha3)XNR+Jp^H@g{7>{Q|il&FF>@r z8uu^mK)otKj4*OO?=bd*+1W;?#G3-`TxY>>zV2$0y6eLIkvgLaaY9Oa62ba@?0fG) zLY*Whoh+j^w+%=a1yb0=UcE=^WcWmFP?*Tu(wDgw9piv;^rm2*dO^iufhY*I;Mp-% z8SpI;qp<EjD*buT|F~7zYo_1V(STujT|Fkf&=;<F2QBS9<HcZe4D;M{&58c)u%Mua ziCIWY3SrO%W;c+6h_gGY(CKu&+;DGtN@Ga2*2_Rd&-K*%G09`BdtxXbw*2oq6Mv@9 z+l@gNORRgXJQVFO1Azp^afhbqIXhLgYBlIKLe3l?8&<IxJ||1+Ha!z<!f=rl>;L$3 zxGc+!0i;ZMz4T!9FxCr^)14`o(vWfD!=~w0aDLE{lXYOjW3Cp*?=@TB2l{|~>2Cvw z(Qs&k_Q-IO(igcMPr646lYQ#Cw@yLtwS(e@FCdNWkrY9*gk_Ox{qJF?+P5zVy`ZWq zd_NLmnokG2w!B?LQvx^?7_l8j9%crD5WnLwJYi*fd6BvBLhfP+D)dZUiBM@dw<4%a z5rp5({z&((*~MPpIb?o_iLh@Wao!bd&4NS#W!CD&I%?kgO?TPlc3cjPIMDB%A=a5a zW7WD7Z`0JnBQ{q)O_VrQl#pw6xn#>q(ch@Pd4s4zfkFG<%{B7Hiy}u^(lLJ5l}GA1 zFA4x7B*~K;G0qde>+9G0$lSlTJEqsx`M*J;o2C}n>&(lh*nIjcYpZXF_U<Kh3taB( zzkO}l&I-d2_M(AFX>0dP4b6|W5B0SpKn9G-s9^Y98At3rX>`jhXKm~AY{0i=gKw%O zQ1d(!8w(=BEGt`Fessym<SFRxtH^N$vZ*wul409CX1#;K->2y0U4QpX!x?!>M}2C* z0)T@CI$NlH(bh4bywW9a)fpuJk<W8UU=HN2<jS3WyEfVsmpufXkBXVBs%k2noxnVs z*LYldwO#yrdzGfqK6rs=MA6%+xYKE2Hk%A)d9JMwWAr6GchX7PP%T{Ew%yx!_9t*v z{MightvjU@5;Jml+E8vl_0T+z&YhQE2mJtS@4WP~AL5TqY<WY?l`NEd#^>;WHJtCS zc!18jSTNqjDN71TBqb#3iBO;xmc1z-k@_Xu`qEfphaBXf!3&n>2p<9Z*PH1>$~nFo z8(#g<PtqYIAaE{a^XQpY4n-=~#n=BBE8iK3zSBT7X6r(0pRVm*y}-hxPgpt-R&&4m z9=8fx`TmB7_HghzBm#S$5h3!ia3#=!19annegLg|l|?LPL;9Eq`~DsoXJ&Fbw1i(4 zzT2#Q3pyyRZK`xk4Rxgx3)im!$k%A|Z|+^-4~=0>Xfm4-mdI-QMj_;0ZnfSrM1@|? z{v-vBd<NB<C=}LYw=3+*l!TIZBFva=Bv?=$wk{#oX%M*0Qf06-VI^R7QLp#nUTgzd zjI+?ajceb9v<`XH&xeu<wj1ABW3SJ4WKc*9l@B5!Eg(qcp@BV_MGufv*42#zr(D)y zg?N|WHz0T0wxUidWucMF#%6-W*BumE)Ro=?km031%H~qHUW4n%z7)Ai)AxXU+p_2^ z-lkuNNj?X+aZPs9;m*s44{=x}-sOQS1sEUt{`GE0&8_*m&@5XXpOAfEb0Xzox(@w% zx1Ly*)Ry*lsP<`{&yS3b2I`8<YO|>inh!QE5ra9rb9C-m6;a-Jz(D*E_aOm#k_oF` zuEl5p_2C(A7#PJi&+t54kiY+VjtXjkbvhs(^A1{pmVLP)A<H99E!D@5)%bu@;x@H2 z3$nK^j@3kR76;h^k*C)$L&@Ci?&yP63z)a8n0G+Lig)zo$>_DIv3Ww=Yd6;RC`)>l z`mF4T1j77)ZRU#e8ex><j|36WtiiI_aIXdkt<`uz)fvl@1lXguc1J(Jpk#j)2vnw7 zZp-K(Co|SeeVE|4A6Yi@2St#S@AHe&q;!`YG>>kt8R+a?^4JBitZdVrblZ>fzzR%+ zhY1wIe4zTQ)oUMJq9mqpTK$_0<_5bqZ>6nE5P&$&qWybx9T-&39DlGMfR;pAmKjw* zSC#V>_>6y69c47KAeP1+{s#*XRP*<n%gRu#{S6F*hl?e9WmwV2d_PiB>Wr6hONz3y zZ&3?h_*S;%Mo&~!cfDs5_45b!%!D3>elh~jm<hi&V{l|$*Mlo-`1;-3iAM^<A5LjL z)rb#Lp6NcS<4w<yGXP96D%D3JB|k{fBK7a=$1I>q#QXZbU$5To><{m*uFU$TFh+Rz zh3n&*vONm|N7a9gYv7VG09||4ZL&0&4D9Z_^ye8Jhw`MIF<y>xTK*?M(<r$0XF~!V z7G{uzl}E`#c5b0BSj20ek#y!c;XmX;I$tNNZ%=6lunRYfMdKcSWu-YFw_Xtw3^$7Q z(L1Arp}txu7AuNE`zz&h1|U+!C5DJiSrBNEQ<Ps^5h+OWI6y)umu8_n%tNyeF!!m9 z&+bLG)&Zt&SV{k~o~&k9Fg(VQuMwmK8F8aiCoeLDg>gf2c({yui?%l;v$Kr`AAD(j zjmJZ>GkmXYm{(HR-&(MtQWtbAAz6M9=x1bPG@$?|0G)lY)YD!sbl4atB+!NGQf0Q! zV*+OtNYYXH_&8ab2}Hen;Am=V4!+5yl3z`WD0?o3S!3s1KwZDi4#BWSVH^-t<J_bT zfE2LkoyN3ZY+6;<VQJrg4W!z+!6Y-mrNTO?_1RmSL*rB3sOUjDqt$fhYKkt#^pWx` z@UgC~tenH~%;&Sd+%7RxFy!mvH7gwKYZ;&DCd_WV?J0_OR4GQv)c~-q_u82E)Oq3m zA?>Zhs$9G7QQZa#0xBgSpwitStsp3|=uYWgbf+MoNOyO4cPP>gi|&R+cf<PK=yvb- zz0Ud0_q(pcA6vGftDa}xbB;0Q7)Tr+2YcHt*VcYW%yjQ$|30U{lDB3jgYcs;l~C`N zY(mzH85DcW-6VUR>Q+>&Oc!W@I4}sUDsg-Bc=rB#l<9CW{*eM3=7Kl*pZ@Wtl&~3T zP#teIrlsNbrMEL$B@RI&%S@YTIC0O$7gX(Ph!*b2z6=4HcYxyl4A)+KDxW{w+L@)6 zo1ywi{Fd%P#~z(peKqi01M)G8{mt;t%{ua1(^U@iJUpS)GI*Kk6PxnDN!a|J5m9Dl z_fTen5B_YY+cgN7bN$rbdZ@0_Xfq0=W@rRl8+PRG8VzTC^#ZNkr#kB%eXF$9HtcW4 zf6~%+J6aodg;VZ7q`-|VSpWtGuTp$5YBOez1aB5bq$G7rX;q91f?oJP41dyaq)uGJ z$(bMPWToqftY9|vWY%@`I@P&az&IUeY+nuOb6XM6h>2B$hNBu2sgrhY{@eC-L2p2w z>d*yzDnnPhASfi}`ZdX+)Q4w$Sm|PXh9Xxy)8Dx6&IY-Xx1QMUv1?D9+IP9_LJ<3H z^NV`^2<LfyE9`?&6$cPFby>&)BD>BSP7m4UsUKrrvM{Za&fXt$nHwW=BN{`@f?UZ$ zSoxP<o44RY{7wxVJ>?AM<RT|}tM)$;XI9_76P<Pu<I}W7i7-$sv^VEKxWB(94ZY85 zG?z?+m+bsOrnIVl2N=tI?Y!8Nw3-3_ji<F+q7!so5RFEAvC_>r)nm>t-`s*V*VZYv z-ic~<)5l(8_qlei0{PEG7pe${WqYl2CaTD(cwBXNXNqZ8hO_4m2zTsg@0PA0E$1z~ zHofSrfA2b3W4zT$urH$=@er{d8aKr)&mkUeZLLj@BKY~UN&>c@q_V}Ky76d^y*sZF z((K8saIimu%NDxRNDiz?zk^jPbj)Ta8#UvDWeokoFPm>q@c^a6%qlD<zC5{XW8Lf+ zO2lo+xs*K?^{IT*_fAvQ=d_Qco>S7CC9B^pGUN+a4v7gSD(1S}wy|R)4}YYRvx{nd zL`G0Rq$+gJ3hr2VJdn>A&6bq5Tn7Z-Gub!0p+$|?9Nn||GTZKw`H8*Oj=OizPiGqX zPQ2|bi%Lt2L&mFgg|$|xx5RtgUM9(XYu$G$P{};?eHZCf8rj_NSTa>;FR0>>Qt8F% zmnCYk#Mn#KugLfA`9LqV`#?mXK`H31j13L{@q(~lzNwYqfH<n3s=8@$FD>UKQ<(4~ zyCKi;BOfa<b?Rb}@}Nbh6}nr103fU7xVR~fSsI1cF&bLZ`%`8SnPFn&Bk3-p4I2{G zd;TFWB@*kgG5m&Yof-3odboU@pups8VYxBB)>@#7fn9><;pd8!R!O6m@mwy?`B*3f z?R4=12b!kJ6e^EZqw$hJKx=6e-HSuah6@XV*~QPjxWqq^d)`o*gt%Uki0O0@IH9@h z4NF|ovO>~1wxX;D%QsxFTljiMM8-)R_Kmnk7Pzjaj@=#?rdfdiVo?uMFZ{aEN-l(! z>Fg1`h5)W><qinsPNd%0fFJElhid@m%sa|W;granHrqK(JpE20V^;$L(2sAhI{MHQ zVNHHJ+0OL4QUxLIrXVE1nEjem^%aqH&4}$>7vi~W90;&-jKRl~@|WeilFc;7Ymx84 zAGV<6jU@bK2&xv5(gVV@8kEja-0T#E?cR8G+7V=J?e2Fe@N4bkXwYIDvjVUsLApp; z_V66?NGZF-%JLXtx8Aj*u-E2aqK@-JSe?uWVGV_qoK8M$axc=gx(CYxhIWFUJ^_i# zonY+%GeB;pAq}51`EXmQ*(&3~@NRGY0zIu173K4LkyJtoYQUa+q`vX^GILkK1Ek0h zT~{VFa_M}em$#jzQ)zRHp;4)i{&O$C8P`N>QusWvNRjfGE;)h~x=!g;hfmdx2J`}b zVK>f&V0&tLMGV;mn?v{bmGa>C+=5ik_zds+>3-;hUMAxWfq}wV!<GPE`sL_p-s3eN zJTOapkuETa4V*|O1|2X^jn)nxzB`)VTuMsKkB_8($N_}t;;1o1kJdWu_H;thn4P-< zT-c!^uZTce=WYmY@->%hfw2$R&7?iuez7jdXACm!su;W%e1Pn?K%GhAr~qq`m(cnu zgO6QjZF!^8)1#4)eg6(<+bc#`Sy@;Nd=C9=H_rmmZ@l~)fv=G~Bbo=DWTWXc0WQ`e ztSs3}aBnvj^X=Xh-p{7QSz0(s7m1pf?AAlOYhN?<j@HYpWUBSS<mFIF;Zb(qH@)h0 zj6hTy;u|f~Ql+}o98Ilmqee^H1Ah*7DWom#I4%&O<G<-y6Fb+UJ=HwoQky&iP<TZs zPkAHk4xGSlZWm5W-g^*E1RO4}=fya0eVn!9+_RV{No2p6uI9@^a9QJ-pFJ+mN4kG+ zhr>Kh>lPFrxIG4c^X5OKvU2H#p7AANd~X?-5~v9h&g95b$z(fOaUmqA)EREgUKDz8 zA~A~WD{M;?^vIXOnK-W6yr-oj!M4fHbaSd<85Dt(v;)ipkWeyn6x#Y|@uE^{>c-^w zMsCRAp3w^SNW~!Fa#j~vdc$Z4J!uIWkkO;1qM%8u#VMTe`{H-A*F4SHi%Bpb`Wz42 zVFNk`j)ggmZ8FsQHRq4I<gNsBwGP3+o>M6*y5iVj0N*diZbSS#DB%kY@=c9Kn)AV7 zax&_@jSZJFsadW&$)Q^+tgxX$7IxMr@bJ^t*VdO)SQ_^ho3XL6$;i@y!TF$|^yxj6 z^SV=`ktJWT&77P5pB4{PUT<V{BClN(6}E$j*$`>d+z^b|nXaj(6$st~z8!nOa$6TJ zUQ&>R2}^M2EPZd7o`sL}=49Msx4zwye)!}7D3i}VWy2{SoV-CY0#41miItygEumM& ze5Mj+7&+e2*$+blCS3M6<!aJ)HKdbgjn;U&I_Y*bK`<IIwF|+o4n{J*w3PYAYe`Q} zuQh4?#S3S_Uv`7xc)O5!g;NKcI0E3E1{-8PB?Wuc;vNme`$j|ke=G-;+2FIo8wj02 zS5Zs@-G~G~U+ms1=e*NAZ7QJa+8B_DtSUyPj7-6AG}?8yqbS!JepK#`PBau5vtM01 z^rafHYshZ&gN0dGSQv;gK~e%h=dJ*I2Fw(}8vPx*X<JjJ-afueTWbce?A&I9{Lt~z z8o)HE?;pwT6$A5iD_){n^A2U`0;7>}hQTLciAP3g;=&LNs2KfK;A}Tg1!`gm_@szl zMChks3`tqh%0)phClI#R%0FI;DZvNc%7I}RmYv^sqo!ZJ0b6dr9QK_EtKK9z6&@Sn z;A4P4Qs<+I%2>Gnd0`lAPaQB15^%YEg^HcaLm-eo>Uejsrl@<0RC3iJgo^+88D^6| zmk4AXGk?Ipb0|uDN6AP4=eRMMswb8=AzX?8Clkz{lAn5gf#QxC?u6*?wV6_OB%VUC zZ}w6Lb7b1bZs5*m13{@#?LYf@@-V{|L9g$Zcrr~@pp>}4STpdn^Ir8;zmx9_eD+## z%3*spRUiIU^0}bTf>QH={u8Mw$$DVC%HcLH;eR_BPl9jnP78_5&yj?~4u;N|s@+9+ zX}ejZ@JP%vd|i->;wLB;8GtJzRJ{MR8g1w#M>HCF)GjDwv@kL+c`S+-@6jV860(fX zg75Z-6>Uu>Q#5%_%JJ<O49B>4YQwEX%&yW;jaF6`nh~#k&EP^_!1-}GStn+a{cFig zO{W+kSDlBCV0~h*Kfb;6{lwtt77e1ch1n#Xu)lDvhi{;fP_&B<TEj)yyYYn8o@Ww! zgeRJB%|3%ua=_onzz`Y{A4+}c^?7Wx<ZLPRME6*-FSWNS*puzDIJQ=Fv=Vp?d>oXB zo2uiE7G|uUQUk_iVSgV5-&H_p*KpJ0)WR<+@e@qi9KL?^ooVq-I(ihC=$IT}+im2s z>ibN=P!&j-pn+X0!Umm}7dU!iSw61MZR+sd_!<sn7limd8>%$z!tqbTbUK}Wm?W<~ zJ9%<uT?97TmcQvajo4t>_B-6ubLI4Xg;a2PGD8dyf*igIVS&P7(G@Vf0F`QNo*3r` zc*~%f-j~&$oLC0OqHfAeA;5uzeYDU;jyv7kkktXnkP@qBBrI|K1g==D=im5_)A0=q zja-@aeVysMK|>GprDpzs%5}>zFvHYvVK*~EskVC+AB1`E0QT0`o-&BK?KFi56;8fc zLE$MLwU>JTz|P9*V9h|L;(hk&Vh}^YUx)WKu75uFZEJr2m&s@jeD3znt{r7P*oj;N zSd;Zwwax-?GXCX04pGZYJpHsF*?F;5mko~S&nPmmK@h0Mx$Jsv(U5Ngk-yzpaL0ON zAo`>Jg_g;1`)V=B{2t7;1$ISrz-Mx;B?h=>5=^itu!-sVu+icHM({<B4ayEHU+>Oj zDL2ns-K;%W^!_P!y3@3jUS3`y2VW<JPcN#MXRsv&zj}>%O=^9<`AapVg{L7pgCMB# zpamH7C8qFu-am}vv+@ul7d(FyB8&u*3so+Mt)uNQ{u#zZfJxgEqwvs&mw5Gg7V>0o zF{9ljzu=v^sx_E{UE)owRZd1=aq`<c5Vb~E4yLvFp6Ie-AKz$Of1P=$UVTHsb+TNW zdLrLkD8=a8{%E1Tn}~lDvH+8jGs0+uL<E|ZA2AqzkD2^<d*)MxtV>msZ&4Y;1yDH^ zsLIM7E*iCzKBQWdo}915n)O527d1J1Bn*^&B{Eg2{V?X1<w4Wk!**3?Fc_5_ra3vT zXyG}K-4%^8dS(g4WJ=>UP=uE3Aj~5{pa*|6lVKQ09z;=EW~CkA_r>t8A<ubqT2eTG zLQ>|mnKF4EEubXShd;YTLqY@W!Z<cki;V+QQOU7`RWm-{!;2?x3w!DLT&96lJF+k4 zNKligNU1Uf-g4kf*Ub?>`U?}g_)*K#>cZXrvquS}<cV>%Z-o?QcAXTavk%1?YG+Ci zworYl5pRqnq(CFRG0l{a$|?>{zEtLXeJB>`a?v7M+8POpha{E2jzvvK7Xp*hYu%|P z|7upDOkP2uZK_*mZ#1#;*w93dDJjdmiwN6Uys+?FsEgqJKIhPW#^k^coHvWD&jAa1 zo^-k0)yJJq-lz;N5T(<5IAoE3A+ti4(o?Ur^1cWi@n9y@aG%2)^UouU7B+PX&F?sJ zxdBXXc9ix>^!F+mu0+(_Mi(GV_0smM9koy|F>eKjfHSQth>rOEW$$UYw6w%vk0BMi z4=ehzHg*bnN{=Rfd}>jE_i@sRulJa#+j)5j&Ik8_e5S;<W~|~@IOIsc&%&$z)dz8L zsO#IetZ{NuFCC2}nwsFlf&QXNp`Ru)wzf=6OpS7QvtNb@YlY~zzvr9~7S4`{(6cUs zM^SS{Vu}bu&>b&HC`nm4Nd5U=JN}$d90p3c{K69|&hh^8SL+TmSFs7f!WLD=rby8R zS#=&B9w2a&Sm2IVHaR<DA++DzQ9^1()65tW8P9H}$5n&J{qWnDWE2zCzv|zFwT+gP zM!+49kk@x<7C7p4tnYzv%lY+%rA<ZA@vI!&Xr&2dWh|n79I9=bGwT3nLJZ(>Ny!1S zedDzRb29V&vEo;AMw!8Kv7y21`uAFk7^tX^){Iu(FuFoe?(f>pd8f%=+z}k1QkAKz z_ultGiD=KGp(+=V)N`)3Z_@kM%JD}%(~84H=F1CH?@!r*;9iq`seR=3kcNdNOs;qJ z!}8Y6Z$-w%byMjlNo{kQnV58@xiy*7MhlYOLsN*jR=Irde?L@>S|egc&NlO~RS=ml zcj>J!q55&TuFH!*-eNZVZ@vJ7f;rRAH#P;GStW%B4<57-ed+xNN&EGAn>{(Y@y8Q> z`0#7q#Q$zTSJj-h)Z9$+YuOxRkU4lF2xWghP6Y;gs(oVevO0!JM>1VWyjke$p6CDl zi>#&#mCY9^ucPdymqK1gjO^@A(>~97{Czw8Av7N#^xYl0H?D*ZClz@$KOUz7CP`@6 z?Tgg*4go3zGC!*!_qy3YOIrHuT3x<M#Z=y6aN>hrY(K^7T&9ut|L*BGoX@)~7Ze?T z#PFK_rPuEx(0pdCv2m#1Gsxm4m39QS9O6hF?SHWuq&9Y;Do09gI+xW%=Ra52CzWpn z)r!<DBf_zLW5|<X%iGOWB&HzxYeKk}JgN&SE$#hVlC-4LXdi#M;+cJ3TGBZm1=7Ln z*c!*jOz>F^S?ud8IWL|EhNd^KOck~Kk6GUL>`iyc0jlLm1=lweQ~Ru_53F8kF%jL} zh{D6K=41qpnW(p40&qq&oAHH?C0u#<{^vYZD$_4gzi(srQF(Qf=U2IAGNHd;Z5_cM ztHtjs`7e0BT@U9Z_x=9a8MFrg|GxQ}%a@M|6-5{s7y&0od#;bW(%^BD_E%oqm3#5G z*V*sC;;w)Ux(EI@e_Q<}y&0Q9{G|XE0rjQ>w};r+Quw>8yIe~fQ~5L9*zh?yigH4) zNj4YSC9?aCrkM_ej>1fBO$RsAoIV}%)Uuo#-Ov4!lG4wE5F+G>C&ZSDip|Z=ojmB~ zJ#OvrbG|n3$q4iL!SV1b*pDW}cwg;$db^SB?D}Vyc7{~)(Rm_G44W^f#rClWsdZ&n z<D}8pL=p0$hKvOylBURT);C;EbAAAAXApt!#x+@BjC34Rdkvpzu04sre^`KM(HSPP zS(!#JO<9aXs#kFv$+UihR=F;SQqPM|?i{YMetg+7uv$1~106lRsJ`(XNOBbT_l3I( z>B-A>i?UNwQ7s|gt9Ibn`x-)e?_Qn=*2=O4D}8ql#yAZZ?<ck{VG%v7#YO|&-I2z# z+89Si=V-JK3tLXIMewm04}s%}lsh&#Cq<WKk6eXa9lgyxn=Tg=647`=15{KjnJ^h` z=D-WOr!=0YS`{C8F+YrKr?r}q76zB%_}Xz8vMj72kL+F@S@@#X1c`*4QFuQ=ByY{> z#<gz_>&-vUHZDWxDq8C*s7z#^!BpVRVhvr$`?_9XMWtmDl6z*8g7><x{ioa9WPgqb z2{1%!?|Z&iAa{Q2)xa(RZ|L<|9%wZULo-@iAG$Efv#FKGQ&wg*F+yhV9~@m&cge>) zKP(I=*4*nzN^KeH)IEK3$B9eV7?Q?^+4-Y=Jb0$*Ts}e;Sn$oM^Qtk++?0@A?|-kL zFz<|vwlt|66T|6|%!|G0P1?}&*PpRIoJ+FBAgUcw&o@!S_ZgyuHM9adv@xL{*Wq-| zN2Z+RTQk|Txp&3yII6In=p{k7DiP-k0U0YQr|RGl+$;V6*qpj6q-Q0)U}lQJ%4XTu zQ8!W+S}XPFrjf@&wz6VQ5d4BTyz~<*_^6tRd|sf-6PO{AQ=+SGL}l9DNzEs~w4WwS zpnr_Fp#C1(-EB$T-rM^iP{+$Fhc8V`-%Ole+Ey%&N=2GrEj?{3y3;aL+A>rQ?^q_> zDnTJE@_kzx1G!Ij9s_x7z*pb!c}yK${kB#{Np^k88>K|2nD1LGpp5u^W8Gr?P-oR= zHc~0OR_0V%P@Qd_oZ#iqriKqo^q#&pGHl9s@)`%3M6`L6=R;=(L4q)${o0fv+S8N9 z#OreU4F?Myt<CLqHp`-}{*x%ZbT?Qf1s~sGqCg-!R017E-%C);bGWF~Vr@Eq=J4y( zX>{CJ7yGtzsb8RUZ{5Wc*ie#(k_&pG9N*{dvy%aD)5|zp{aK>?WI5G??f2Is{R7ES ztMB@LSdThgTjN*v+Oq4r#hPCv2ox3^>4{OP%a*uI(&ip@i|x2Ja<310)h)@=-nojQ zjpaDrm}g0<Y+8L<ceE2^T1%QtqkaFlLOx%mDiHBubZYam-=ZvSddJxCrOfvF=V(KT zCMIGM^vs|8mz$(ehthNnCAQGRC7IKj1M%bMs<Mh>=G*$VYFy@`Ra^dQMwK%~muDRZ z5_Ux0eqRPlS?Gs7A&^&SiH~OX6&9v%b!>bveIs-~;A+-_h;OieK>aBGUHogD!;Kx` z>)Ux>;88J(<won=RgI>rwvlaOsrGr-eqWF4YaUk8!^UH=FIhgGadJlP!$^fo8~nqo z?ReT6c%Gjh2Nep3xP9zD=SxVeRwRj6Efu20=Nw-Tz!fKVZ;FBCB6cHbB@i=-1o#r< z<fbN*+4-YG#ds4F`zkq>y$4U7ceoWx8IOJGP4kj-wP*UjvDxDD_)(siAm-atuEifd z(i+^k-;ed(;e*>rF|oCnXgu>vw@u{nhPDE$T5k<kLYL#gD_vt5&%_cBe&W#ywk_ov ziRVf`N4!BbucHh?lc)W2n%pvaBc<f{;aTY6lkP~RsMx6IZi^$~#W2cy14F~Z{R6#U zB_08G_<VD@_o5Q7dI)<vGb?HCe8_=uwcr6x29Kkq(~rSbefr8vhvKGYe$&2JTo;4w zln-6)?qO*uNihbpZ++o(Xjtr>Jv7a$ZaIVFP8}?#@wv2ORT)lNhK6_<GxPt{*euNY z;OX?m+OzKP(V3BskRVK1xPbV(Y2qHu{$QI7Dc8_Ye@?POP&9$nG1GLJwauoJUF3LQ zK0S`lmDO4clsFX*-CW+tcU6<W)LO1jyQ3v^YIXfpl2Dkvpj$r?S;J0U`2&US2M0s= z<x}WIibqqw8WObU;*-h;B^()c-}_fM`IvOcupM}S%YZ(e%|xwWOB|)ijvIUW9yvKZ zDeL-a^{PHy`E(r>F^z}%VI4>fKGx-Q(xy{S4GYFki3laYIJs<gs2O<p=52;K`Pa%T zdcP>KdCtbq;-WPJu~`EixHdv)5rvoOQi&~6-tYZ2T7}LG;T<=!lNmq%#zg8Vu_LPl z0VQ}#u*_+IXP7+M%wZ<}aP<e_zPThDmA|ePsBUFYzv-t}Ar6d#*6N09nzrF|VT7(7 zwr8oV?qzJ9MC4_}7~qajw6}}6Jr!aX>EYU%`F>M7hJfkw?;7%EnX0=B<#d)41D$=R zP%mcqgrdDSd8)~7Wz-?t5LEPmt1&vwzMR_GOOg(SGL~r}G>f&#eD8QvL9LgQwlWcq zUCtNk)A`u1ZP{{J*jJtVNJ(v{Imc{v42E-XN#FEIs69A8vP1s7O{)geT0WVIV0DSH zovNq&vC|8#M>w>W&uw53mg*4@eEVwS6e`h`F(Z6^0^a<TT2r>dAx5?p!mRAnpHy>u zD+FOZl1=)s;_{3N+l6U&E)7J~{#^0w=1%vz6LM+9_wbEs>;7a7^wl3%{&DdkcL-Zm ztIiL1Tt><Ir1sj%PiLDhyEkL48d4ejj%8L;7hZHW*YgYH4060_^S68(dz>#;KV<`f zL@5gra=;rEEtf!yfH~1gu%QdOugPM;^dr^smm3b7%ZxCtt%*0q(Wl~TiqkQbUyu*Y z3n>$$My&dLeFN&9iFGdcz(bDo4~4jWS=Xn(*WJL}kYX)4+nO_9XNc`jilImbcAjP~ zalA}VA`2LcDy`OJ;!gEG^VTv!z0)@G!*#EsLuu+ZaF&)p<sq^-C5ewX6tIE#6I`4; z9U(a`F_X78@#K(!r;oC-_drCd8%-c<1)dVNo8<;0AI4^7!DS=tQU5s?Lm!6wfsu~@ zW8;_>-W<T;<`ptD*W)I2N$)213N8MDBAqZ2I2N-nIv!{%WX7GQwJ+)unNEn450^`< z+H&mrh-J3MeQrkLGt0Yj<tsE?Tzjq4*2**Kc6c3V9J0exb#W!KdNQjksX0C#Qa%`z z_Xi8`)6i&q+Gqw!i)7EsKh2;duxg{ArV<)ghVZEIh=SYp3?9uP+%b)Yvx+p~eLqY< zQt?B_J7seNM}w+hV+-=8A|8aa`&%#UuEtb9e-%YgtOl!UXRqj&PShkSb}R^ZgGz)l zJp6Va5NHeN8lUl+(^t4*KiQjoNTpbAIN<ox(v`z2rUpC14(A%vbvJ5MU%Q$v5VJ;+ z?W7kXJYP|4Fy)?rgLs_7JiT99A~M1jM&w%RyihQ+X{&=YyERx6UD?<7P2vPsDkvH< z9xf{U=EJg&F`LW}mxVS|J&Ad2ys^m<pil4bNZ2RGa*H$MK__$QF#3=X=8wgrn}Iey zQ0(0s5N~TXlxx^A1PF`l9X~Tg&0w_?G}=*``Cd+e_fDX_&7VAt!{=r@n%8dRn5|Sk zNo^OWsBbui$E93)0H>+)$r=$EiNs0ao`{~j$;z6;fv~12v1p$#_$H(VCo1+uv~M62 zgR8axInt!KX<q|7Co9EklUYr=7c^89RhJ!yQ_Yx;^PJlg-%nOkGr@I_9$@E^sD4iF zwiWvD0VuVx2(x6^_l7Ao&Z`)@1fm@~avl=DS7N*`XkZ)?&|bB7g#@HYTZl`q1f0tL zssQG#UD?F>aYl>%LNA@W6R%d7oIi#N9{2`+jn7vSpg-_dA0_J%f9QN@z3MuOj`WZy ze9kHJ7zrHg7csTDW~R%$nmX%?LHZW~@8Y=wLA+K<D(T{VZ9IMen}^fHN8;S^m&fvt zE9p-E<=b`Z)<PI6qrwj)-#odh40|WkWpo^xU?nA4qwu8e(~|p@s(PaS(&z&pL_^=b z4<ER!kr1%GUk-+4B?r>@Ix$2Hdp1G~Q9%0)`0$Pxz$2ld?@NtZ#@w@23=Al8<NAU- zCxLTyRsooKTU#^4&dL3}y_e|2Q$qgop%z8ZUZ)Cqb`*rui|$a>$~Z2*x)&(7|3VO* z{$iqpw`g#c4e56o{rz9}^*aK7e~a$In0CL?U*VUSo=ls$YAMI4p<iX2h?)ur2(&G1 z`&lSJRWEmCs1B<w{D|14=lN%{)dgfc`A-=cV1#@e<5mx_#JD#sna?^txSi9GzwG!v za~%K8C(1JW?T<`H)Kvb`MC_PhJB5nqS)AF7yS$dq`*T}-ca}!=1Y1a^YGR+CQY_DF zPtb6&C8%sO8p>WNCGN-a@VU&dS4GR(pUgPSKTeH{`Zh}E#vP9AVwMm>pjB36o(N2@ z8vFYAULS6~Jox^NNZhw}VU_!IIzzNkTGz=jeeI~kU@!?blRp)5=V$^;Z`EELSH`TB zglzRJ8%3c_G-vvtTU|h({Fq69=8ECWRdTwR7|->rx|?b*(mpX3otnm|VL`=JOmuH6 zd|m^_nd*bbF+n{gG};u0pL@`VJ#B>%qQ-}pW?s_?^hTaX6Eev^rn0ve--}>Va#lpX zcf+>2&e65n38-c7*dd{3-I83SlQpQ(X*dYFo%dYd3~c=dlEHGt1WUaW*a(zW%1!iU zvJwKm7I)t%l!(T6SSl;7&DE(8$BH9jqWf_YVE#cueW@5WO5T^=<c<`{k}ji%Tz?oB z$mx1KLDKPZYte~+eypjj_EGl()XJUV@@0C_YSJm=w|zC<@&1>`<9lDrc(7)w&HKM6 zV~2{zotgLOrE-=##a+JFTbxP@L&Vsm@~0N+DYHQhW`Ic^xJa^Y{nKTM7#bKvIo6bR zN*iS*#--^L1f5HoG!Ml!lVsqfP6WIPAI(WF{Aj4D*?#Pna9tl5(j|?LKSI&nMc>(@ zJsf%&CEP+hO-1M>EVF83if*wsyp?|NLOP_Ggqdtawn|=9Ba#2L$Z1uNI{*0Xp<zvW z@5K;`gYn$t0o$&1aCAO9?@L~CLWg4?cF9j<W=Ga)Hzq(+y?1Y`@4<=-Iy&D8%rgm! z%JHtk5<UytrljVZtVjv8DXY#YfOv#lXFVO3=_pHU#VU76KOv5`!kZCI^1(k{MR}68 zRx{Q*B=HU7*TJn$j)O1AzP@yU(b!h=cv$8Bk7!g_7z=ka*X2gLyQYgO7CY1hV1zuH zg%5q(m=Xl_J_}N)#$F%dI$6P=;jgBrt&osVtAcgz*vN$5yQ{JM=Oglm^aKK4#xQ}z z;z0{Jj$U<$+RbIUAIHhIemZVH%eCiP39crYzla8C*PF-XH(ZA*i&swKLZiB=1eAIm zz`WT(45DD9Wo*R6mh2+1Fcj7syzieVkDb6*h8iP3(E1s1G1!+M9vuOQ?fc{}0OjT` ze^Z`hrrUyL-7U6RWAm|4b&b!bDy`Xg!oIH~mBrfnR8G*rA$mSI@9C1hUI%?QL|hk3 zd%QcgDSwQ*0gUAPE~LbPiMs33gKczt#4>vA{dGX(r+BZv;n37bnj-v3^662hukVUc zi=cZaIH=Gj56o=ERQKzV^ib<{MuZ4MdEA$IohWUr@R{SFVZ-UbnACP|ZLx>zsoCs_ zM#+T!FuF4jGjRg7v;A8=d69l?H5r*ZPWX^|ruV$MoU1)`>y}=AyQ_Lfx_6pVE}hTj zlx8PF)KNI+<n{yZKLPF}pz7wtL`UO#=A?GqykPK^gx6on!VcDwNnk@~lv6Jjc01OX zabO;aAU4NsD<ch0J|ZD80Go`IWDolBtvs3xF$Cg*FT5K{3xoT5M0j`{7MaU4ir=~D zZv>DB`Y1F)3Cnd?@$yJT3}Q5<Y~_^~Lb+iNm-wkDR|JK5T>FD2iu~;lgR*%<{1UQ! ze$2Pc<_3Lz+Mjr`Nl66^><U%B38RaUN!<$ijq#0(GY_ksz+;5w@;6!*7BTKAyzc0A zrbC_@9Jj@QUAW`~p4E2AC6rhqj_2f>oZRtIX8^qf&QGTJ1EGTQ>Q54h1g~E;=8_=3 zr_?z|dyV9ihD%f}Yea?8B7&-nU8UOk$WEsL-gwK5l$r9r+}(e!ahrM2uAVC}Ei4?x zGUX<i%vx!$M=G@TeyLyRqC#T#kBcY>=-&6p+x#xKp)_uYKQxCN9gJM#X7Q7XmybI3 z98ArXFNnX%`Prxt^<^hYzFZrfz0#vgdql?05&bI8NmTx#_f%wZ>`V67WC7X?QbV<` zyiUS;a=Rn(c~l>IU!lqeMPGe9x*sh!UTpD01(CrINhG^}ti_XME#{|kwV&!8z$R$0 zdf(rl!;O@j_a!aKVaKss@1s-260e91kHp-4P!00K?Jrz+cer4Q?X6kL=OK>^7z$s9 zm%+!BN2kJ&Z&SNbx6@&jVy!HhBSrJS+sjN9i|%y*SY_#b!jQ~T?Lx70(aG7ki~7rJ zg7c%KQ4i_eq}l5*rSPZEtPO|sK_}o^w@m*Fzv=wXMzDzCa*i=r#a4_)hUmnCXx!RJ zz^g0KnQ(s<T7ab3`SX34<r%#?WErpABo3(&_<Ce#>fCMVZZ{C2q1Xk=LFbMWB6Y$m zrK$2*Z}H<YlC$|m)o^`J=A5l|ERPXH!v2dduQ+S=jJKR@(%nM0r`!%F*<3Z7=R;2- zF2&%OxkZjJa!z!(gqQwBU>p(mabw1GAKK~ZUh5XCNq+2Am3#JA?*Q?9C_yyIoeT2g zeN?EXl&kBUuLf~I+ydu(y%x4VK3f!Xcy7qfDhf&bF*3>lY%sM?l^cctl^@eZWdobK z(P{4%1VVeKV=nHH3P#yhf7qNMu%Rc4BiRt{yz^su0ETu^XH{~M1gf!OP&^EPooABy zV)}&wJJ1jW7Up^HDd+skbV?mJS@b@`tIb3K3A^pg65UXtsR-rs^ZXG+T6V7J@avNw z<YmQa?CP2?@0o<X9^{{B)g5!nQ|)x@Wmn<Wm~2mC;9A|h(0&yd*DVT34`N!GS~iwh z$++huO{#lrHr`!(-7PGeRCL_iq#ON2Dldy-!-0jT%{Z}_wzCJ;KfHHo{m4^+PUTm+ zQwzhNYz=oyFTn;_<5Q(s+b${>eB%r<09JsumV-}6Rb(!;7R4<kRvwkdHBO*D2K%Oa z+<z+1vF`ku!lbV;Y-38JhRnRhjEu0r@MZG7=n%F;&<q$E7~C~G<67BVmT~buX>fcO zP9W{Ibz%LD+nH*=-LS?21&O<^dzqr(Clc@Y9(oJa3D`L_0AN=D8g5^c6^2ZnGW%$0 z$(PfUySYVV-&SxrxV%gz!;e%$7T2Sq6)T}qI|qAbN?2RT6hr2{VQW?j`!HsDm&5E& z+O%rSu(F^`>nZL`zlW1{uc-y%`9uXl=K=bu&nA-u*MN>QT;GriXh}PGDcvw^d*F*_ zn|?kyY%=p2ID2HeZKcLelK;f-0q>ffV_{&$ryoCURH~ng%SiMAU-3#Q0ZOhgL^8k! zOl!*u`8Htgh^vq#B74_<#f<D^IpERCkz;H)V({Y-XV`ck?F@lE6UCNzEQW7vU~Fh$ zD4GzQCXP3Q(pa=J>>n<w)aS5RQ$QQxW@od2<Is^kn&~VI&(0_yRKS=l*n&){el}!p z)83Er+sy)?M&f0)541_Usf<OXKv_qA*7FB74gmoK!O6vS)A@3C3>F4xh7II+5Ptqu z?E$s&r6T#ZSAh7=(MZs7|3b-Kk#})EXlwgBY{Zchd4oe)y0GoO@{uj)ELCtOJMX+C zB|Wbg;pIcjT@81GJ8Qz$P+^45q9=mJJn^+OlS8cPDitb0d_XPRxXsR+<*Cn0X<R2( zGJ{5L{e{DYT`c9p2VQ!hsGK|`c2eV=T5T=fCbvB~;2PhLOb^>zY9=34&IxJA$7@m( z(9Z;*)3Z^VWJ^7JOkG1v4XJZE(1FU^)HNo+SxxH_(mBFWO25H=035Mm`n)td(&W{! zHT<v6dz8~*vl96U@wLyVMs|9mq3;o{C%xInlcVD{8$pQ)QbDvF%&4L_AZ;PQmh(pu zeRWbi9nG#@f-Uf*h>XQr9x(OmtS!Bm8cQ|{#HPl<t>s`AM(X*ibBP7elEwLM7aH+_ z_e=Mw+BnQc>$MLOvGHDy32$Qxdvm0Fib)g=(~H{pp<-Q!k<IoUMRCXAQ-n((<xiel z&(x-maH)ZynD3KRN&w&;Xz!5Pc)s}i!!WB%NqHqtw}6hRlxq&zJI3oIqEmcTT9P$H z^)`A>7ZqCF9f6llm=YWj(L|N$*2;_O6is?ZhNyI3gp)G*PG6m{i+s;gdPatiw|*Px zP*FLfrES`pS3T7@V==t%6-r47WJ(R58L6zGs2CNQo1NLK?pF;0XwV4_*A4J%IX8yO zKCVBux!eS3&B5T{q=~ZT%!lKa`im_I05Db<P1juoXhfgu2)#?^b>+7RwjhX9ID`7| zAOFDu9KR;@Q(p-y>dCSUxAk|ZXDlXt>26<*<U8YLr);qr%;HS-?#%NCi9i!e9GIK+ zPOD`kGodmWrIlGp?o`oF2(!&h1;a6kKC)dID(dN!MKm-x2%xhj_~`PiX7_^fVI2lq zHR<d8&cGxJ#w$3pBds+E3jp@Tn-$MPph*3VE7OxD>#d4ctIq$wN504Z%y+Wy!(O$M zs}y=S_?Hh_$gr{w$D%z|Lt);i;1$a^;jCyVHCGaMUhp?WnJ`r`UQ>Kdg`=a-H-0VA zUNJ3OVFZiI4*w)TTT{ILPDWw0xwPP`bw)iCz=Bdg?wqBPUyHi26>OX@+@qp$bX{4< zKl>J~^HJK&3;u$75uDoTf_xs(921iz=~|}qfrz8HOwQP<(PVrXT!P&FdhDAkC;T6X zuWp#-$Qs4U@*6U8R!icKSbkBB*^3R_2Ij_|2j5=LobiBFd>7G!xTP>Z{U>LJxMiQz zD$#7-qw6QBdMe3;ToUQLZ&N>ClMx_y@_mG2X$cy1%R6Ow)g#dTtKUgth2(#xnq7Gq zQ_kDlns05zS#dF*4z)Dc*=e&Y%)&L&x$Wc5cP)%MEK$`6DuX@od$0TqjhG~Rs{*Vl ziMgQkig*r7EXy9&)auDUOn~dXQvHXvp|IO^35Q3+Qy6%FoGSPH?V=B|#*7@%Y#km_ zjx+8F6^K8Yp&{G0sUe(5AjD4C-?dQw5cQT8ALh7CW}^yP@@H9ZM!WNtC(=Qigjtfo z{b+<OPjh`4x~_y{$XT~-Vk#FO2sAHLfxnvG|9A|}kqFL+jIbved=43AGBTnX=-U1b zQY@_0h9fnVJ`Lqq)8KQ~ym_<NJ>83p{`5EQmGPf^j62J@94HNch3bJHFys8^9jbt_ zurTaQkg-#dv9lGwV6A5$j|9OHvD92#v6^In+Oe<w^Do^B>d)5|xJiIBt65t!I3ESM zj=*YhSXf+K@0mdv&==mldGx=(e)Ft@|IOL&j{L*u{r<6C?6-d?zCXY5<N2S$4`?>* zfzeTY@F)L<@a@WraymrcuDb^=qjE7n>wH>k<8cP}%GmsTFw_34b^P;O><>V@h}}xM z(n7i-)Hb|p4P$zPP6htSETAXK#r`8YxTQCf#(T#;6$=aV7t2MqM4E;<?PjtG3j(+y zsD&bbv(e!DSaAVS(aHAy_F>_+q1Sw*tmLn}Z`b9Qq~8=xAWr)m%m&}To6R7*ip9Zi zyEP*}Abm5-$d+JwQl%ugGrVM^eEBk14*x%b_Wp;Ez{seuxTvURkZPKoUicn?ou+@I zk$2BIP`>-wY<Jev=)nVwrx;37PhkC7WNi=rzrqH8$MHQ44XHYRL44QV-@w3dpwWxt z7dLz>%n8H;%DzW$dUZZ5o%%tUT%I85|0S^SKO_By-mBW=qJw7xo=;8PfSX(P%NJ#3 zWl17Zx-_)iO04exyS@QC#OTAiwkEVy-3o^<&U!3!HNG%{$)12@s?MoQO`~R+EQf_g zPO0)2v}OM*z;GSl5I=G-{v$;3zn{}Tk&C4ah1hOX3aU_P5picNb!ATK#HOazO!`4Y z555C@Qjs}J$BTmlkU+8&R5V$BTes(WG71ZCv<0$n+}sRhGv}p;PEV4+*5j|2c*}h> zCOOna)3u?&l%tf#adY^ghGg<`P5SYUH5kbx{l_OJfchZINKdcuih-n%_0L^)D{r`v z@AqPZ{mqIVNPzkiHMr|dP1Eh`+aU_k4Nog#U}mZb$!MeQ?&+}yT7uAneaJW8675C6 z%SLq~Ta_^LCoYra${sKceJ;NA>-H<!1w(TN9<Z$2=K$;Z>Z(VU3m9^fHIFji{h@ZT zu`v5fgG}=FF@kwXYF<e^zj-M${QqPfes|V)j<=@oFE*0^koxB??Ou(Cs`ZQ<3|SQH zfrbpA#lrUA7{%pi2K@)rbI2#K5E9=eG8kPuoBu%Znpy!`aY)^zH?zRUe!TCGl*>*6 zB;eM*+w00vBZr17^&f@&mD!qlp6*N?#2(RNac<4z8AGW`LqmCxaImo1;x3}qM$s;t zQtIl+xlWKkzfH^?f`x6kwjSj$0xYS&TXib(h>k}SQ(`$)K}CU9V;{z}W*FmGtx{<? ze>7fYKRbE-O#!YlytzB-812J7>2|so(J1qmXVq$f0<7r|0jZm-kP#!f@T|nNFO<Lu zu;znm5FQ>G3HIEPo^=R*W_G51Z&8>};I?zUAD6eaIq2Q(@Od`V->Xvqcwvs#jdTVz zX?;M=l=x2D^-fhFk>Q#FedC^}#6xxEU6}jw#u{m_L|<C%Ih*{-%+d3UWAn910oO{v zGJ3jB<5}$~OEu_3yo0##`0!41lLaspEYeK*abX<NbaQP_L|wCN9xI4qK&Pp@dy^N< zfQ+E`y(f@{Xx-Xn0)cpsm~SFI{{?++b@@3b5I&6{Afi`&R%LnhlQmXjie3vY(X@u` zaA^{Y+Lf<dnWTHKy87^qYv|@04nfO4b7`|%79s@;GxlNR5?RJO0xk?ExN@$BTS}de zhI&wR%T-v)U-x*{2l@Fa$2&zu-K1b19^Z&0{2Of#T0*AkNDyyoT2$+1uKUVaH`Tiv z!xJN1;fs`%Ks7DFOu8Gqbi7*(b5}pKI$+jG{Lo)RdmDIjR(*cenxs)7M947>#<HIi z0n51$scGsMU0xD=!U1P@$oBnyT0kIe9CeA9(g^NN_HcZoz)PD7<}U|hYt9|hDTf_w zKo5)E!$du&SEf|ucbI_@T%`1=u9w+~qE1Q+=Tl|g^+{;}a++cfepg{zv8e-$Rd@t0 z76hJZUTHCUN#}nq7V>&uf}3k~eCB6xTW=ZQfdN;3X}K-d4iO7zwAknzgUiZ6)YMQ3 zOgXRTkpcx1>!%zL@|`rex4^o4K!#g<eEf~DEnWvsfe8+}oPQ2F$rpPOh@a&l6zwU( zo?t~Bx0Z7`BaLj<=~>a`=;qidcv>f~j{-l{=Yu{Jz{FT9t7^}Azp@puTcyZ#txOS$ zO{u**MjRH_t8yBQeE*qjhCYdwPYD;Ua)_KnY~2&BA)3t2&TQ*k22g-1+3KNdA}0}Q zfu?cz6GAMvE4{gO|1do%?BT0ZC{)yUq(D3d0#EX;h-h0Hs31_;P>O1sts<~E)#>&! z2C9T5J3@=KyQ89m88WdoiGE4Mp%{tp9*(C%CSi%Zwa4%&I;89V{t-H3$QJ~9Zk2Vv z;YYK!>v})6xCIxp_flE5=llTp!x0kOc5tMJ^*@&PJ{Cagzu1V@JK{Ew1K0;37JI*n zR&m?bT(<6m0sl~=&R1AN7a%IpBPZ<;k&O7e1rtF>+!5-_;<aoB`1lt1x%MIq!p%|h zT#M8qNJpl5c)hWD1691VVrY*X>&^<BW3T^klCbzm+T~gR;Uru4XNhl}!^oppcd5F2 zQppLcv|Pmb2amE3z}uxeCn>79)l^sKj>u=;Ge5XC%209%^w^B6qHX{^X0IrumUA9u zBEe8g9DJs?vbJx^@jrDM`JF};6)v}oOzN4$thvj8(b#y5W6h|^_~E<2AK<8X;v)g> z{cKZ%kK<FZ_%Fhqjap>X($6|cNdYOv8lombZ>u7InAQ+GnMh}(|G>I2kg4fa0>SHb zZk=1yk!x1KZ4fy(hF0mjt_=W<BYNtLhf0oOiy5}|U?hlJ2SOo3>+|#~6e=nFvHsMc zotr0wDozd<eoO@9sbFFQMd@nUTxQ4*@o!OGyPqJ~J&V|b!HmXhx-<P7c)I?d0u#2U zcFyOMN=BB(uYdkfA^mFTIW99r?%K^W)sY+lb8@LFh`>#rw@`4&pE!N6k(!)6K3{kg zmTzeXCO>=nC=2Zg=ZV)mhtc*LoQ`zh^VIYbv<1nss->SNzb2>h47b(z_f`MUmLcLj zjy-V6wc*3&!x<KTsGML;&%pk6aBi8^G!D$B-vV<&Jxwz!^k?zo@i3oP>@eUw#$I04 zz~$nhCmn7sg+^YfoNCJYPpg`6mT?Rle{gkN0knOkYOSoIm2y;Q*wogphH5;Vq-<j* zxTy)S<Ps=o5Oh?9;uDga^Q*3$#ZopF|JPXt?o6rwIXL*>V3YB`r&9e}l`eQC%s)}Z zT)I1r6NT08?_wKNY;H^t9WHhXSKe9EIM_DDb+37b&tQXsimDraz#;A61iIc~xnmn( zH+U0EJ`fZ@B_%68XRZrxY;hYhU>Gmo*M+O;+KHH{rp*<L5T>oo>uRWsAZay&?eu@Y zKs2@YvwOe(-@Q_KwZ0M7crB_xdOBl)%UINL((+SJk0+3q-M~a%_7Q9d=<8Z*Yz|^* z@nRjT4^owou~t?Hcf+h(jjEy9S6pgJN??*EJ)IVI-KALmvAFd8J#ODC#pI=nR%{5q z?YTZmC1ffbABXQU4A}+x9F}WHS?c2g<vk2qp>D9j>yK4=YPB~pY{8r@KOuA<D3TP* zq0sT}$+7Z^?$L0JohdGM^G8?{S7+Y<Bz#t5q3yIjseIC48KttX@ol^MVFyq_v2L0y zRrUo)07@#ei3<nK61I}97+TgQ0i;f^INTd)iUCAa|H$o)qXu7&nVgK?)^BDJT$58D zk1;bYZ&~)W9HqYXZ;Yo!5F?kAqK_C$c-^<kw7laJF&{=jRdYJ9R7LG7%VNA{2um)P z>(X2CUx!CM>oT!->6~gO&NQt4TAS;^xwHhz?)SU#h~~b#XXI$Nkl`B}08jeQOz(T( zZnouJ9jE?-1<X_)fg%5E<#tP4y%@W47LYOxr+hsKx<+$xDnkBNZ+!)B#;4F3+D`g8 z9HTV@W8AfsO#KpMpv=s<I<^_*yI|ttWCPG~%>citHgRpQ>9i0!>k0HlX?@8LUlto1 zk!gCWPDqH~^H^M52z!RAxYkpg$2p3jH~d<XnQ2QWf5&T4D%6H%o=7}4R;+^I!O_gA zfCUvOvwVgOzd-6%#IRk%H6zf#-RN*=*CO*}DMc^{E{?46S>MS>NGKv1esETBfRMI@ zW~arair=m?H8C~4IjdMpLmaA-MgBdh{F-va5hlX>=wEo9NM}xL7fcZzc{d8WDwRbu zed<j}R*Fxf37Tp{0y5r&azsyk5B>=AQI4^E-}G2d3&KZE;(F>QmG|-ZM$?Zd6b0?V zQ|aZ<J4DNw={^W2?u9kOokIPZfK&I1Y)#W1)3|Gz!5n{&c%Y+_2Sk>4K(U3oNDfF( z5x;W!dTE_Hfu@`DHQ?)$N(-nKlapN4YDj3(DLMAa%1U}B^V?}fCGm$;ENbWBt3$<r z@o2r6`Fc_t9~%_+^z;i<ioCZ1$Pya-SsSf@3=~!GEAWUckolFbU8nS4<y@;9e>f9A zluSt2?hcXZ`N3HSN^&h)413NhlgSI}$iqxcba}Hh4*)RqM7X4@)L48T>EumHOH_3g z%IN+c0whOML23IeW#s@S&BU)%0u<3nWTB|j;Zm;xpK_(4CO|yA<I6wQo9gKt9>8$a zyc@_5cBht>s&d(NvDZ~pq_c$hf{l7*kN0E3-i71N2P2;ZVPBRp&@1#c#dQr2@q_u0 zC(`dh3m+pjRSZ|remtHWAL*mbt*O>WnfTOHA}*Nwo8Jf8V(my~8g?3W%KLJNNVp;c z0%Jm>WHT0j)fUOOF@H-FZi#gH22`^E82ReGH^M1SBP%=Ccs#{oV>SXGV3f6c?9kGE z-xF#=`Lb)AP~E{FpzHn|TapSHDWVl`DbZTgmG8*>$_PT5pEJU(XP@9E)1M>2y*6pH zGp2dL34PqT&}nS&8g)|u5y<Pp2(sv;ohYf0PYvTqTxfb~Y*5bG=Of%S#o0nJ?0V?e zPnBHD#D<Mij5YNZlp>MmeZ(0A3;bd&YWjRW<+3pxC7Xo&;nr>?{NdJ0nG&8hB+|b= zxi&x$$v2F}dwYNNQ33Lz>KAO+t?>)-mBE|b>@PWhKIM#4k_HcSH=xGdi&lDcYl!@B zR^X3Z{8oF8rg7-?p%Q3YZg-7JX_1!#BAV%ws^<2$<rq%Rsj-j+=7T+7q`{#iq)xOg zj3P^yxAFnq`~p78Vxs%x&WGcoOt~JF+hIytOUhipDI8D<-xJw8@&*TCi=4#RODmS5 z+<XMuq&*!4e(~44kv){?L{ifW1?Pj)nQl9yY-}Opo&t@8vRj)`RsT;Ws?c(%IUB)s zXf`<Q-cC%e%ND?CO9te7$mM)%Z9{E)(+P*F$V{a~c@aGXrP_-gmDdoj7+wf)uC@vf zhlhb)O{C6+@AM=dbpDuT(F&J&rd$=njI7B`(}L8LVOY@U#DurSYyR09=e?KSw(Xsy zTYDJW@`{#mx82`~f_XGcx<mR=&VxVW?X7#8Hv|>)&(upjx5y{h;`0zGS6<zZpQuO4 zXPrLe(!{bl7ngf`C(F>DyN&VrP^fi5L^>ei5rM(>8R{W3mU&<9<tZj&B(~G0C0d@u zCKBe)>aA^3RO1td<34FYMj@>o9mpQeC&o%JLHwezoN^?7vsi;nc`v7`lT+)J1SF_F zBb;ae`<TrnOV{4*dr}YS^TKC?m1MJ5GA_peC|pN*HkE>&&;0BhR{#ETwC<wiNoZ=H zdIfZ2k#}1lItDD=7Vud;#iEd{Ej5o$^A;3T>Pt-owA&V}TCmyyuZ9zoGa{ADrY)do ziwf8C@Vx9^nFTm;L%nr?i14EK+`E&E&}J>O)N+80X$g4%_{q}y3od%2u81uM<N%6o z&?9khpjSdPkk@KY3=x=J0r&=5dDpg`cSkZ!$#(1=2xMdzFjku%(48y-fU+O{7D?o9 zs*LqeC0|7ZiFVs}rv;sy9O>>rt1MFIyF&4}mX;L2Thq;&M9S8O^7xon0$lp$&Q9Wd z3yfp_rMmt)%8=;(VlU1CIsKt+o%-OtfIuljW|di@u9ey7lO2@GLT1bM_(C@^RODo9 zf0e=GKvuRb70Rh<n~fD9cWeeTfy1fnQm_nokyZ-})t~4nr4Hg)&cRv8Vezny^Ki%F zoCwVQWp(p$l$g-vO#K_Y^-h~|jb4V~O9>RFQl7tQsnnszVYH)k^-NHqiB$62d{_MJ zB9Bo@tSAZ>MrvG`rt%t)8X3Lxw<@kL&9_$i>wS>ZE|RY%tqq3Fx68=6u7eBf+LjnG z)xEblPnY_5tYJCHCn;U25qe#6-#&9G)RO_7KCJ@6+;!}(Fg=g!V#uoC6TL|YwW33G zRW%^dmPj*a;%FaUDx0Z7N9CAS6E9AK!`?~X$Nifi6IRzUe9vo2>{$`3FjQ2!Y?pFQ zsX3YM0`y1sFLxpV$$sG3$^=10{_AWt<rm>)?OF+h-7G3K-_2T^s&ZZR&t0;TQ)&GP zQL4(J+TPW!uYa41WMMfz{##l_@d7?^)HMjkKfGEFnQghS*fznp6Rkqq7<|xDL$8d4 z26HE5pBTDm366-0;(1ZKg5=a2c6BxRPMYCkQJ2%G!MC(`TmbmOxizl35l?5+=9Z=a z<3D};n_e=vn%4DxFXfw&oDQLst;Y>rIx$-_n04sW%luRi=7;3k5Cf5z4qVQ0_G?%1 zRC>P1@dVe16ZX=XdaL7j6eQBh1Eg4IK8eYG_bwV#0^<&o*`<qW!qE2{F|i`H>LF;# zl}GS8I~2KwDb@idVAp&=m3eYuPOwt-4l-M#w}pOgJ5~L5wlyX^Qm0QvUW&D9kK5~i z<hR~u$A>M4?MAWW9GxSg*>eE0(uVxa7Y6*++CaA6L^;qWzOB;Fyj>qlk7#X|3%QH4 zyle$e3jP+_7t`X8-Tm=bcf6hv45Dj(eS7N-#8;&6RYt-8h33wW9KN~PJ!G2bUEdw@ zU#dI$63AP5+x65r04xBtjX<U{)4)f;-%QkMGdUgy7vN`^Adu)p(d4jh0Vd)UX(GPl zH(gZ$D7yCaS5IWO!jRs|GMHxx9*y=>vBs)>muUQqu=8*g$(+UqfskJMg7@y}-*=9C z`grN+%)YR%wPPoGq4+Sfk0~_;{wYk)0#~Kl_*GbBOa$S%AKJICKKP~`R2rI4=y@oE zBc1gJ$~sKj=dvG;WIWJ_w>XHorDrF6kMp#(@~krj1rPH`VTwiu{T&}a>JwY>W=Rch z-8vtwb5gmVMAu5+_&i+hf8>&^*Ejxe)Pw(0Np*LZ^;c#<+*gu8Po0!Ya3Xc1WJm$W zkQNn;mA%|(G1VmBWe56p!!7gp8yL*Yju%Irox_1&IijsR3{84mx#K76(IL<a4*F-O zlJU!;{vXo50w|8H3lkz}fCMH;2p-%a!JXg)8Axyl?(RAySQvu4ySqCixVyUs8{B=H z_x`-izqPe*YqzV58G5E=y3alGo$uTe+6u-4oZ;RRbwz%1D#Uk1JCf`#*~Xb{a{B|R zP~jpawY1C^kAY|H^x>aWgOh9Q__-B6E05E$7T^H_$P-0u{@@f9EgJ(bUD^XOS>lo` zTVl4?zk~)>B*tq|RFI7ZF!<l@FDol6!bim4NIXzCHhi=7PVH^&>3Z5+TLb`RdDI5^ zTZiv&aGmV@T<Qmh(8pSc_U0h`#fszlGcn*<tx-srXvSSBf$9+l5E*H?CffSjE0XGg zaF}-gEu~zdzDVbAvkQ8$j*ZxZz~&_V<9~SSVe*Z-5ZdV;_|o(YGIn+M2l)@mewZvR z8!D~RgR{(s!OZ@e!EI^R_jfYM^P%Pr&JqzwKtGnn0b<jDKOiWAJ(KUw+W9E|SZq)B z<gBEkDF4u+N*@b){J(f_<2844asbTyw|@Ge*8d<Ue+{Jrw&6eWF_u7iqC~opwl>LQ z&--#moCEpS=D0s7_ZXgp30OHg(tlb?kI<o)p+;|?pQi>@llrVYg$fU^?8Su$%*`J+ z)=EUJ(?$1coLsW=b5%Rox^mlAA20O5tv%O7K1RW_c_PF6*GV7#fQUs!MNce+gn+5P zJzuxbYHN}R2mN@cmHf{l=c%l$oRN`%i;D|1dF~<!4GonBldyJ?ApKUeaBu?fIy59a z8J|;wg3y7(nCY3C=4WS976p>Tll+lHdKw)ZEbHdh;N+j5Py0^oxFS0{d(6y7Bmny* zML)RdY_&5O<PIvP|5On3{CkAP&aYn-8N56^Q<HDYqLM<Blp3H%!nHu(&PK3H<4Wa; z<ko3k85=cqcW<v$L(~9MqG6JZwDir%R=87PQ&UqwKmd&?7A7Vi<c{v4U)B-~Rsb}y zTx@J?Y&QjF@eTk{r}fO#)Ns_<w3!Be|Biyg&^KCIS_<sCQrXebAtNJ`R}kp$e|UV1 zRs4>bnOZR?gvK;IJ^l9fw%wHaYGrdXr)MT7C&$wh?obsFYeYoEq#&T@?6YTz?uE6r zwT+FuvSRPwKY9Ape^OOhd1`t(w~UR4hlhhhxnW{tB<ztC4*@V;2_|ORl`7CG6dxZy z2|e<8ab=X8K0QGcI)kQ^U#3@nS(GMvBh{g550k!HWTjo&rk(%fh(D&w(y-c(>$TjP zs0Ct|c&E4pmpZsM)2;r@YGvSC^23?rno>BC&(G3(BN<c=RqMvKz8Z#Yi*RIykUb~< zoq>b%{2HL6^bC%Ln*F3+WKnC~X2bQ(X)98fAeXhZ^?zcQx9@kkHP^XmRA?PP%$#vS z9dYPGRb!9FY2@ROjR~66O{5Zw9ftkCiQjHj)ChZJy&krXQXL_`dC2*_)=Rx)UU6dQ zFn0?A#N@7nUyzQjAZ88Qx070-30?W9Vr{V^{uKd5<0m$H=bX)-lla+P(@H;kjP$dA zV*xTp4udx{eS0~*zeVz|*OVUuzX#^u+f(2K|35Yy;ie0n0l(M=gWzFAI-@@F{`;^Y zoyto2U2t&3=R@PVz^0IF;@=|eEPY7g4rCVB2z{>}Zq^a#$$x5IiG!&}YRyyGJ^&H_ z8p4%J?nA@zkZdCg0bI~)Oc1Eg25n7@^WWCmrI4YerRPz*c?C)Nrg{$-(TSJNh5+|D zL~DKZS`h6ClGj%+6-kuQ;coH`q)U19e_I(i-gs|NUh8^euS?no*%w!ueh6jQ{f>&G z16*FBogLT}4Qw>j^7b7X@ITS|{<YwT?-)s8SBb>r<RX;OZukNo5yJnr_HNyPcIPAS zfI9;$o*nBu*NkW<#1-Y`nbPtGFf(&y2G1KRzkgc|<KqIyZl-3G0kG)dIBstsix}H& z?d^Z3>)?h$A|gOp*#8%jiIjd13`bx$&%Wb>gU=VQ;emIn$;8;$pThVYzn@o2Nyu99 z&|k9eW{LVq6i0rLBBXISIPIXeIr~@=-Z0PF%vR2AlJc9;_SfYA&-LXW8t`Eoi1`0u z!(W2)_YqT;rX7#>!!Z~aobNZ6M_2)os*v^D+T7aQ-r3yRA?Ay0J^0&NJbYi^=L+5$ z?{;u(wC3Dr;AsVdl_hl~F>klF-r()L0yl&RqW?J_P@)9YIu>2dft<Mjx`d<z^aGT2 znAIRe_@C$nI3|d=zL-eR?l~Z5<fUtE5$_Q=pTPeo!wP&%B@i^n+YU$}j<~pl4zOz* z6|nX11w<^{pb6aKuBTxyi2FGIxDx{Kn9m8@{@P1BMEB2qfIS7^zry`a%Kvqs|ECRU z|0z0$J1R>_N%{5-Dc8rs!a``KwN<!#CYXpnD<dPPsY<z2hl`7gXLoBWHX(sdQ?0^C zUPD9U<AjT|GdVfA|72ZV-S*a2ZrRyrwk*(Nd8Lwpf#K@P`1~T7A0i_z{=C@U!GVp5 zNlw48y4vx<jG2d$iabL@`>3+Bx{8H^L#e4&W2FtWbpAMTb#(<;5a=WqCnp|0{&7We zvKBx!axza9@{yL7R#e&9-zOp<px4|1*cv7#c|9|po}NI_)1fM0LjX(iaRLDW0kF%^ z$(h+%pzHK;1x&;gm;@c@E8jD-w6t_^V0Eafrluw(CG~N_*W26M$H#wiW@<`V1(*zu zO;M;}LiKC5vDl18LzF|t{6`fjyezYTNw6>VY+gYomPj^WE@eQ83=gfF-&=+|(Kia7 zupPc_tUbXFm>h|hvMdGqK&Pci0bgUFsjC3`K;y7#jI31JF^`f1eV}RHD@L@L=02B~ zUoocfRD9NMnhOVJR@A3|=|*!04SLXo&M*E^pVi1D?0{Gh<~RXtjUz6C+~oZS+6M6G zKZ&2RjgAFLPV{JmS2YH$%!^26e9CgGl#DPCQuSkuo&j&<YuJ&Jg6m2BU003efacdj z+6<?;qxC0%5VLh9L8H&_CptF1t*0D;r5f1h0Xj+uR^O>~Y}TRdb5vAXidvuLWEJWy z<e+Tw`>gq~O{T5NGUIMx5san<4v~Q-6o;^C*I$zc4q`V`e~}n~3ykUN>XJ?7LnZ^0 z0__Jw`n{p-e0)hXdb#lSz-1Gk3;(t;N4R{4_$y!G;5Zoo>0xG;H{p{3epT1)KLcuw z*{$r^<HwJIG0O>6YL96}0uC_v&!9Ytd6>9CNeRbm1yCkTnlFz{9`asC&*wh;eS;ou z60rPl)C#T+=<m;taM{@(Xg{@H;o(?-hwRya@W*(S3ok8Y{(I{`bhN+s`#&EO0|VnP z-`56FOH1pocW_6qew#Mn00JKXH|bduHWAVNaBJ@*<B#!7@nIc?x;m4f73}1YgXx`P zL(9b$8J{^Q&iLr4Zfu3gx-Y@(8MvjR<Ermcn1UiUiRozQOY_EniYT(MaO*1NJ>5!z zA?eQ(1~;es&}_74CsI)~1HhU7R6m{tk}@(2mA3a^nuFZ$VBuk5EjX|6@FJ<zY+yCo z?@T``+{#s3E~=H=tOnp%ZpOIzmzG*j+ho3ao5SiPuJw}4XCc}Be2=ed)cyKg5tBf@ z%&9*URmsP1)bNARTn(YD<5kgZRDZpj+YQx1mBDETd9OkF_nRt%QGUvSZU%N1HV1oZ z7<eobyl%5Q3rQDkU{%;$cifpt&PK&yusdtf2A%}zADRzN&%YV6)OJ`-I0vDt<Y8dg z+X}~dd>#CX&Fx3ZPj?pBhnSEM4(Aov@dkqweQ;o)`^_faEidHEru&G~z#xl`EMLhy zBZrW@ps>*O1eRu09)MGXWZhP=0lgfd9UJ=bc`0S#c!NIsWJ>|ZV|%{PCK5$DcWB58 zg{ntmeK~0&)3P^fUbhp?e4^pSgEy9DaPIK806hF%I@{x<dXGq*Gm&N9OH}8Gjj$#y zBcoaEu;X*A#KJQ$^A2A>-AhNQcmcNP$kF~H7Obh6Jebh*V>GeZ($d6))RC3H*>jpT znu=dBd%)bsX|1ZzHHJbi!)okXH~W2kD<JNEe_Bm}D0R@&dp0vo`Fa_&q=hE?!R?Ru z&R0uXkZOxj^=`qv1?LjmPLE~n!kKZuXFE!1HSxj0i@6FLJ{}&$noYc}XF7i9<`J*A zyOyzp>RPK8yXJjcq7*3l(NIwhB>_cSZ8pAkv1mx;zJ3%4cQ1e_=9(4vY4I(sLe?8u zF;P)@^@FR^*_N7I1<FBgyAup<ZndnZMIwp!jV=k<_NPO#2yg<g{!v_=HGlaGT?7dU z3Cdq^h=}%gb{Kgos_!umuW~KVO(!ix#KhubVsKw=175zWattlkz;t=Ex7|9;%PKRq ze#-4~$C7lvW$hP~LCMRembZ>d5<rIv=EJFB1s;tu#X}Z-sor_B>xo7{CiQ48s)S7m ziKQha)5z{`q=>R!LFq=CR>&<E8g>?4-@n&;lj-$Us7U>?SSlKwE`0N;$JN^E&Q5lA z{*GczNPyG}0s?|u^UX183|?>o3o&t5=PV-|LzP|bio=<MH1*8FBLC2JxvZPe*Zh2d z<C6{@r5cgAK3E_lWyu4tANe96<iRir2@jWVJ7cDBU5p0?d?JIT@$p`+A5TvX^8c9V z=%|b-_o=Nt^78Zcy>humMD&w;7OD9SmW!2+v$L_Yzq6X1U96R5CSl9UnnjS8oSBnj zgyASlqYz1>B*#)t0jG!b-@1wU)n;sJs<xM}J;S|gB7Xv#{@s*yYyM<`5d0eyd)S3; zBDAyC_FAgOqN@ZRd<c{?njpgqL7D}~JDrc#MC3j*$+BC3W%t-*lN&DF=RYN7<;cd` zWa?4MfyVMQyfn#@hYuE|ls;lS@1ar18k2ReGgod-<afK>CICu&Y^{4ToOv3ZwhBzf zX&JTZ_U>-QNPeasV@tnG`wr+gwQ3lj+ot!yBV>``y3>oj>;?YK9f<KB`ZFYx`EA#v zBDqpn5<fd~K9x|F;pCTF*Wd#VazjH)wIcN``E&@iR_b@fB;#v$SB(AZV{v7pn3AC% z0?i-dqjWpa>~HG$*B$S7Ziia~F#F@!Rcl@Ds_0$W%;zMg4Z>Q$jV_tgqaAfG8EM#) z&1b4&nyqF=+M5aZoDxWF-Ly+rM8pDL-F(<FknZS@cXTwHcioxbJrqKr3VL-cRex5P z!It$niNnEVc7ivV&lwf9zfZb1f_}Wv)i9TXA=PSrqQ71?k&E%<;*Cf^onoP?_03u+ z+r&gm%hTgeL)<N+`I8JLBN<I4Ci{C{v{Cm1qq-gFTcg!}E{6U<P_0&J(;6yFc^P$r zt(g1CcrE8A8{4Nv$GzTa<Jqe97IIcxpnCC-C+$fW%WUhWtbEamC`)w<o6d*76$3`g zWWH9ucDf51{y4p27fCCb9B!83;65p78fiM|)?(bdd`a_z>0U8$?s{x_n;gIMWTY+0 zNSZE-=XfvQIj<ySWW2evnwaySES|@F<Xy(wLxri3suL@Qkt~0;-djC9%nYS?rzmoW zsr87TaF58Dl#>%M(&jqtUEjI{AB#d%BEzs#B*n#Fvm0DhnpS6^i@zw2?1eOYoK8T; zj|&RueAZjweUy5@_4EkmFgEeIRaSH7&j*1!)mv}qRQR%0%6(gGAooA`_|XpUV6>II z`oGq?%cB`I=1YwAPhUkg^B99MAq#+i2Ti!Gyw53twy3gOF5t82-6Xlk17MimF&-9H zz5ZyCJA@FMe^|_M@KD##Y_6=#<923cy<&Z4k&P8Eng3ckj_Dc}E0qsX17=grH|_gI zJy|T3Tn7xUI-{-qRk332Rz#HE{YCea;}mA0jweY;$(#F!s~bCPbhfs(>!{&j;Xd>V zU~t>)s4HbbT6K*6GTm?}^@+zGthoi#1(hl}-B&h_)$%C%oQu;R-qVEX0$@u1XAy|v z;FuXqVwImuW+5d#x~c6gH)OcWYIpRy3XTe7k{BKz-@VkG{3(1DM8NJg0rLmHsByI9 z2kgarC*@Kh6>>k9izO+oA3Yz}o*?1$t8J~H#%9+$Tx-Qw(W{7h3y?jXP2zJOC|e4r z8Zp+@rLX^)>IFd^7KG>BkC3qS*-QcEhj%<RoBoXjG`dupOy-h2V{zUXxUDUZF8kgW zQz!Qg{nabnv0R1n-gAPUDBAXDxo;LH-@1twTo3#}O88g39EYw-wLoVbdsF0A8*qW$ zSpm6_B|o#JWwS7%0;OPuV+mGppTu&X3Trfzvu2Z1qjf8~q+Cq76EeFtXFE{soq&(~ z{0$wa>#sBpE+c*O@icub?%}DbXa-GQ>y_^ZRvSU?E1REdk20I@Q?U|xwGT!DcN|}H z9k9zPj9I~oM}0!@^?$`r^f&De)mbeIxgobBA)XRZ@2TXljSr3hR<M2eCyTx$oB6`G zBWyxKX7}w!2yn4}zYA?bI-Q)HnEKuW4k`D=RaS=#6V~!PH%7<zxE?XSj1;L{aC_i~ z@BA)KK0ZFI60mJQhTEvZgxM5rf+z{lYc7YAv7VPZK8N&xsjo49OkQ78?|Ss)=@0Le zprz#S4VeUv-cgW#>|1A$f*|0>X$9T?4F9SpO%F<#t>5rG2w@?v?=Lqj24*D#ex5Ke z6_uG;VQ-{VqOf)A)$Yc~hEV~ya>a57`*=^^!vmhoPuA`9h(42=RO&@rN8k>%%NYQ& z9eO4}VAFD?V9q4$tI}cQ?A05V3ZhKQ#iskSe%GcinVIcB$+#~sPtMK=n9WE<%*hQ~ zS7BSI1l*P3E(}oXk$mMQ6N_5}d#bNBwzJ7Q6Bf()gmbR%fk|U7lY@hkladzV>;vN8 z=E@>NThWME?p8ZxD`+@4^acvZO((NO1kU$(-@wK#KNmCW`VM^*BWVO2F?!94IL5^i z3)jvdbLXq=$b0YI&LE<NVu)-~mcXjFb-B}3-<A}JJ}TiJhlC{6jU;i6bpzw5i~T7& zBF5|6lPxKVE#=FDpW$(pd8GyNhjfh|rxu-6jc%NYv6raXhs^TSW(@}Y6f;sBOOw2~ z@B(=M<wf(nLBMB+eg7t&I5g1G;&wbS&I5Zt9Dvn1I1pd{mV|_vl*I<n;jw7X`P`3m zhQCIFn6RSc`YcZ^10sS|UcCy#maM3#icme>3P1l^OY1Z<Hs-Ap1;mZgPbboZkvj*6 z=Ib$5S5}<k27>FaJ4f#mg8e1x4W2zaxu2{}glSSxbZ|Qq1Kv?YiT6MTQ!fD?n_CJK zFpCIOrJV8<#`le%=kOel9A1dXl0Q{9!7IJ-Il&vicjmFZBIT_t_4kjSq-+|R>;y`B z39#@92<9tIDM@BjGrlRzR?$yLJn~)xgtS%`n5(J=C%nP*G30J*Gc+8~X$K0+>!-Cw z@;K8Po0;z{7rtd1du8@+INWQ)L7cA7ynw(6<q0@tV4@>Svr%=JnYqrTPT2Qkg8=^Y z^c0Z6)wpr|OT4V}ILrn=^7dCg*+x+wZc$u2+Pz~^>^xuD0-!-Fv##zpbY^nJ9`vbN z1+lTl!I~O;^tbbE5i()j@ss;ygv5%6bi5uX(o=V{=!;0K6yOr8lT9r`UZ<AM=BJ+0 z|HNs4Dim-B;L!7Z-j%JoQxjxuN~osYUD0i#+PQ3!^ls_-(%tI80g{vy>c=2FOw2l$ zby1Y4Z#Z1sI7#mu!<;&}Rd{f_M^}(9WAuvZsl$JXii#ZijT(HX*KEL52)vLZNzFq* z3VzLH{T?)hl`b$Awr&f9?dmCg%u^S9P4H$gxe*2B*)QYjmG*7+3llazu4Pd4I{b{O z(!DP9CH*fQZHs|HSx?B)z%B&b7J&FeT^*`^y&o}lwrGDDb*C4M_3D)Yi3`y@zgxt$ zU4I;8Yf}P87*H9`n*nYY2l5u4C8LusMvq?hC>DXgth7mEem_6Cf&Ka=`GxE7=IbMr zbdRH>tjUY3aqgzIbU&rqqug6Y+D}xj<c(O%`=-@0NnA4n4CXu|>5%;>E*a-xxGKOX z*STGahEtq6KP%JCb|`ZvFBgw2KY>l7YU7h|QNcz^w0VJ{FqRSvr!8lNBqi};JL2`f zB7(pda9(3dUcT^X#{fwEaCmrloSd94uGv9VSDV8MP##W>nd6Vt)YO&>S%LBrp%20L zNA!!e!{bujtjlXe6e**{h1)s|0xp3V8`)6Mnf`YXZC_4{Ro_G*Svsh?0mBH{D-2fh z-tfWUOO^9$Fw~=4L#<94IhVYp;7c3eK97nLWU_sOLa{MH)EQ1B;eImW$5DYn_lazr zi-3xSsFlZ-$)^gbK%wtU)CZYw1H*+%t2={}7n`p)*L&F+H5<a><ik2C^f|F@K>QUr z1U#J75)Q7=o9;6-Kpdzro`+RiE+}})HLy`JZFU6K0}tQraOGY5(@d8WUor3F_q~>J z$nY(I6&}$##I%T{iA+Dxo_Bed*-~0DG(H|X2$mq(m2ahtjgS3U1a6`ep{4z3G*p7V z9&Q{&W9T1j+Vj$yfz;kREOQRmb7JTg=Og6u$V2Wid`rsG(ijE-L1IeE(wtRL2+<ni zrJ%?E@{$aD@fx$`80+<G9bMgiU|^u+W%a+>yFO+jfAsikox|3-x!**l<V%d;Zw)T% z&Fsaab++<)<gEvUm**pufPeGm%^MUclZiYw{TbX`svuGz>;N?{!<Wm+D>YxA6PnLA z1Y}cth`va#cO*nIef;RF_ep*A-ltDdC*7KPC(!~LPRcbQRaK=rdBdU4lPb)nN7iX0 z7}T2VZm%jM-NKpQhFDZ$XSI<XVoI0(_(3cJF9ggm0^)Y%))uO7YkQB<jQpYo2ngff z8K%|L>)F}$Wd(8vzvjcsvT2t1lA5}#gu#k}fn#G6p<!ftzHX?T+|b~2;&mOYR6LWS zGsp==jE}+XPiPXyT^zslLcC4nNP0y}uTV9%LeA<_9iKMrdTyD-V?6)?x|NfM%F6=| zUpoI?+7;U7JF^S8+=KENMNX;EwC85fzPDa3SGZI!D#&*Mnkl>10)|Q2nz#*_<EQb2 zFaL&&1LGii_6PuWLWC(~2t|_pug?f|!i*-8<`Fa4Hm6GaD`Hn!c?JNJP4OXy>^<U# z4<E8*h$gon<|+otYHEjY+RB^JIScEMV#@6En}BcMUUQnIrOi*?HwE6APv>pry+if( z(N28<REVpN!!5V8vt}T8D+UKry-_J}8b&~i_^@sSz!Q4(BF!EI+z|^w<%W#&_1Bx1 z<w`4>jyMBa9)~OA9sT)EV!SBdPl1Ngt*ug1KYk83fisUz3^zV=yLRYg$=@}>m!S%O zZGIxAp+3qrNN}?=)ll2(vyOmprQaKsr<}`ko5<-dhy?SmG@dOp=r`FIxN|*j<_;!m zMnb!_QHE-tZ!<d`j>OWdvMoz(VyZS<UpBg8FecO=9V~}eTk;{{V2Bv9Th3i>{v17x zkCJFVi;+HIpr+1G{J@Eb$j#qe5q`WiYM5&gp_zt<4gZ!-YY}2hEFdl~iJ}TNfZ240 zuyh66{Oej(#rBhgB!Wl{-*j5b)-*Ui9v{G3=6-f}`+s=@d#k@4bGECd(O`Fa)NZ;G zf~nM&Y1NVLm6g$#R4V>W2~c1bQx$1?xhr(xP+-=R@)~)%&P9H?;gZ<cqpeZO;X@6T zGnzNAe8Rr^*yX8AM9^q_b&QdcmUg>5+6Bz(-BfAtxx&dE%=KnpAzk!dXzSFp8rf3+ z5=GyGfV}`PpEt|9v*$5c@;od|#9a%^`ObLr^SnNGTP)<U8PVG#<fcA8tzyr%C(_HA zqFPJS@2R->2x=!~HMW9BPU-;U>Skj>xWSKB!=BsmhWZIotRBY%m%YgdQMg^Y+s(yv zB`y2;KDUtJ_o%sA+xxplu~YI;RgHPZFVKS$q(fE&s7sc?)2DpY4g;f|K?x>fIY}i@ z$^Jv#Y&=hgj77-STJN=B|4CzIc|U!6@xR~gu3${Nd^1yBvJ3@CPh8Sxy6Y7mU?6yX z4`d}|Enmt}EyTPHB;bYt?%(-7|JC`(X?`?NiZ^67Q^NZ8joHk1Ye|P@r{$h_c4I7T zAZ#d@El~{IB+gYS-|oNPJ31Mq98{|^=_!MChgV1}QCTQfx{yaT(tM(czADdHdM?@Q zbOvDZ)#9Oyp~j5GgR@n8r4>x9?Cg$oYg3o?XV9Qypy^Wf9jENil9-qpqB{HS`Rw|p zCXe-=^{rw6I0OQxU-9!z_Q?`qfJX{COJvg4E94sY@dH309aXE9i|M<^uE-c#%`WF_ zhqg&saJIu~0})PFFnx9P*ILT?4yRhaXINF)(Pwn-HHtrhm>MuT5=VKuy%E%vc9&*R zSGKfDSEl#o`J$(@$0TY10D$-MrMZCtm*Lq65Sk5jSeKR_<H%%70p4N;5Nn<o8dyjw zvGBtR)y|zghlZDX8~pbdAkX>V0f-+(h3O)6fg5Q2v8M%9INO}|8R_osrj0Jfkwo+S zKDHh0SoM%Q%RB#(eqF5oP92J{kI2ly_&a=r^St7NoH<|ra(^SDM5-$pWtXo~uUe|Z za59-G<#+8!gto~a)`=vWT*st8Q!Hs<;c9j7AL2m&>*%Om?JB%JvoP_)YR4&vAloI7 zM(C<L9EV4M!^kQ*sj-e`M!)^Yeq&JM*VYzm2RmSGr`p7o<0B$YRxVAG7!;~9YDbuP zD!;Ti-Cq~+CUb<OsQ^HsMxC2Xs!*<VZphG(#Hu0keDBrCZt5C`NI)%*TZls#_0V{e zJ1zHh#h%MxauYTiD?97D|G@#{?ee2X&33-^?$--M+-Im5?Fw%UhU+ThrK0JFOSCmm z#E0zPY2VOke@x_hchOF^mx+UmOZSWoH#vmK`o`=^Nm+{7_$nIx;-nju@afILg4d%Q zv{zYy!&hhhh}uG8fS*E^K1L#JZeB>lFBv~$^-%d%T>$#^)GgE_No89_vi=#M9I&wo zx!tzw2X+IZt<u#2Fza?)>JrDwU_3{qa?vx1yLw+YjKK?aqj;{;w%JsEquP?+C@-8; z0N(qL9GmBroBNGuU`*dAkj<i$*~ihL1kqJgRjt6kfwH+@t!Y%`1f;FHT`ZAgEH>LF zGn;=&qtE|Xobd)=I;xV>n&y`bjV%oUI0yt#{g@A?Iok+FK>>@z+|*E`?J_@9muLY( z`pj*nLPa<VOEl<ex^@0|QEC!=e7q##=fF#)7#kBKPC})fU@IjRkbGsQVDlVWIz2s$ z@Dzcydv>_&((z;7Cn}|)XYH{`S&n16x${RR2k(7Q)*JY*Kj+Ye{Kf)~PST#{1M#EQ zRPIoC=b*)6ovd{YCiy(oLdP5VY733){e}ABuC8zTU%q_t5E5D`(dw9;nVFiMZF1dU z=(`b{9PgXP8nyi>I@R8KyXxsdwli70zJp_Res&9_3|}&+Q@wplM?rCV8^`UcVkGVa zG^LAYGbMiF>GzCq=Tn37F4y?2`z;Zl8_nxHms3g5x6JoI*i&sb(~h%He_djI>riQ` z<Vdx40NV<fEMD**0INcJ>P}68nNr2xi-Nh{zO9hjXetuX`1<Ip5%S9?C<&||F6?1U zTFIWQ*^CE%iV>T^5-SlvymbSBn@z8ebsp!)02SbWEo;<-m=A0PcrD~lCF2Dj`}^t5 zRhv>$LWaq*ZrouN0B%0Zz8_7eNoL2$`j*Mc#zxWRHO8=+t%|mh(M9up<?0rD@uGY| zsD6JpWZ=*{C}_Y@gR3M#pfq2f_Ltn7@BH5b0$i`w+Iw*<y*E=TD^IHkOe2%Ed3hTP zXD8&GzVl}s%%=Mdp6zqn+%J%&u4>#OR9>TRc8?1Cp0Y~qe-KYCCi9b#Bi^2=RI9KC ztWlQC{YMU#c4{DP16VNzg|I<u+}E#<e)YSOaEWKT509vzZ`n$W7~Jp7$xH>XG+XRW z2qWHQZKf0z?bRTY(I^#lDM{#z<c5n4#IfcYAB(myfIjhDOqS9r-C@;<k2uHkT0*UE z#+&IuU*|xk4KAm@mc2RwTqU&?L9tjqHru?Q5OS9pTtY)l?H?pNEZEc6Mx7q(J0t<X zt0v8Nyi~Z|(L>~dp+{)(N<bteI3+ECp#c~2b>z`M>dXWh`T6O>H+e5=y3SF@eV!O* zbHVsei;#Pb#m0IJl-U#fi}aE}I+Ru?S5vyNEB8r8?FPt5tLt{^=P93)0YfzWiI=i> z(fymSLe2UbV92tuO{}bgdeVISg7)atiWGejsa5hWk|E|<OxZAj+;(WKbOMh_|BOh> zw>bTth?xd^`}w-cHlSz)4~=ld@q8iBetRr|O*bJk^Xcew=$FFTk_es8pe_(L80I_; zt>v+zieYwLDOrA;S?B#JN7-SpslRactyY7bL15g+_EeUhHA_>RKs@e<;9eS0#MJWY z>%k8`s5qF|RYucmgOAm=B%G6lm{I(SmES=&58zjPZV^u6I8DF$cSqw%BqpLNM3h=I z#!1_5KEmbpXv@rp5OG$SZtR`j&-0a=4tC^?(_DT-3GzxOcnmkbi8LDf_q`ODK<3w- zg#B0Qcdbx5^qR>hQ+zk<XxtiX_a2puv_-`vKMH^J?Si`;z8C^P+8EJHENCQCL#JV^ zY;zrTkJ7hXY)F1<Jy2gwq^G2!93z{=RR_eIboha<nJ;^qC#kg!EnR=j308_V-&{`_ zYnP0gb9>}#WFzz%1I-CElak%sZ|&`rmq~pBIJl8Xc*n^pD4HM}K$L@tj|F7h)w;Te zhle%Aej-J}-+j?cZXhE|r&8Zo0l&|Se^ofnJ`|0jmPf@zoFh_xe`wb(xqfyV$)!l~ zbbhhv@;Nr)-imsL5i^cR<4TVCV()Qzb#QWIrig!-g<UK_;u8GoCA>=j%a953^HWNJ ze0F;89hsS#9_|&cK=Syp4{NB1s7Nj30ALtM$;dFQZOY}8cm-CrL`#(Fou3oA-`;3w zfXnIe)fHy}^`}&%OoWXs13^c3fWR~@%@VM`1G%K_S=XuXlNUNT^s$#fX!h&~WXr3N zWqgCx)<XL3+d!|qq{~;Vkroz$EV4?;Jz<J>VTB2mExa)|^RXkPR`wA=;rZ!%RCP9v zZGTMt0H^Y?PP*G2VqR;zv0Tqiw9t6Hw0t)_GXrg5YY)IN9m{Cay}AgQHh|Tn0*Wu= zKtk^G!Lk>n%k5aCKH+YY{V@^Ge1&uR+;alGu-dE5wh^M<M<`mkBdZ~{RuztNH|ShO zSN)lr(N0s+B2=4dd3MNG3U<$H=Xt3+sK0-UC$VKM?}_ZquVEG;-HOQb`1DaMRRINj zghxc3!IiR)M56%Y^!68B-A;QT72cMjnXq`aemuCGKU3pyXepi#uEl2X`Xf*bY@+eF zi62A3<+_Sjquw6O@*|ftTPE@Tg4rIE8&G-HtG>*h2?EiJ6<fNU-{W4rcp-t2%<C!w z0nf^%*p0{en4FM5r7HP@SO?eT*CG3wQ%@O^ge_~DU58B{r(Ww3h6!*?z^n`Kdf7Af zCa<}h3>W6sqsbp{K!KV#Abq0KQGlG4Mez(y(f2<VTR<>7y>%>+liBd|nII5Vv;t9u zpoM<QUYpY+R#t^8-IR9|Y@gf~1a(YI`UIE}#jY18=+V*953SBm4i1jaQLX5=)$64F zSK8+zq|=d7RJLUv#o(t-{iD)6<Gu&J7=e>Z27FXNesOd9CMJCEOvVa&;D}A_9ta8l za{=N0o|^zDul{L$G%=L+_lLED3q)q1-#MQyU4Z0>Ye4!0u8Y9U-5u}Y9bA{`pLge7 zdq>AZmZ8h^AGXBbM*`?Szd`RyoMde|zb$ctF7fUnJjAUnFjGCrU*B4zN;FHLKIpYw z59KB~A^wNW`0yc>z@O*&Yr}8KkpN#rzb@3ndBn_F^uK8nUGrtO1;Yt09eqN-=^enH zV|r$0eZVVm@n5||fOo%_r%3-~iH%!4Icp(n|EYI{-_z%K#{AGB0a%>B`}rZZN&`H? zTCd__#=qXdIivmF)fxYO+Efyy7lBKf(nr6S72vcGzQD(SU^yPK)b(pmlPcM(wEe-v zeK_VHXNH%43lK_x<x=xY-Qj;-qRKix{&Nr!cIflSkc1xqOyk*sUWvP=@+UVThmnGM z&)i!~S?CFXBy{~xR;V#Rk^(R^I@Ag-jz5Fhmrli`eD5jVtKi0Q<4(WY!Q0x|23m%= z?MfWbM(ya|M!kUqb3p&_G;_MArea>2@s)nz;ZmNPd+3m|_Tu*?tij(@=c~ZRqtU1! zmzQEy!0%vrq~o=zC8o>$KxhFc)kt*TEkJ*N|KW$`P;)W+-o2Y()dT)<_G1998(2Ia z$%^^q-Uf`r?hEt%fFI+j{zK{O%g@Nv{wKvr=)VX6Iea|U<lNmups?rtTe^T9Q?dZY z6mTwQb+ApCmiUis;>ESK43+_MGkP=JHOJp)27Tt@lJ0j#Q?RqMv$;?B2JBhe_QjNv zEoq*fCt=o9C>^B|PXN1(lA<E<mQ2>s{9w1_%w6Tz?a_5cHQ!zY(+E2ci+zB9s(%_i z?+riNg*lyUb<T*DOZ70u0zZDUZV@aB!R1N>hEhAj9Zd~hxklK{2#QSzn==u`NU~5U z+{!3wjs0cDTYWy54>>;Z$AiS+#WK-vmKn(zDRPj<ead6c?^KT330&km|LJEKp?uzZ zgHoiQF>&RCV8K~^K6Dyx?SI%Jq=vdvHb5@s#+@SCElHOgW=F1g?m(e+LjL{_p%<t} zzjYj;oRW2Nf=w7dK_UqND?_d1eZ<6=D#sWUPPdQMc-*(T11(J}!4>Pdt~fr~`ASs? zxA@7=DVy@zc^>mE>R?cnUc!=I>|Q&X&dE1?nxcI}^W9ic*)GEB06_M$2%1RXNkUU2 zko?E2?kd;ruCtp+?xZmlqg3s8#&1b>C<BDO)UDoc_A8z5H@dSF&gSd|ax-@Y|D!7O zzM}VPv04HT!YH{ud1ExVxJ`<IulB`DoK`p+RX^22Z|dp0T35mDD9X`E)mRm_T;<?g z3Sv5=iKcak2KNB5pWIxu7^1%X_*<7=>D(YMAG6oqQluo*+GkBKuZv#mUaEd+{P|D& zjIJ2yW9U);b0I*{Jm>b<crClRy$LjnJ~M#^2J_w@NN%{8;|T=Wlvx)jWX<eOVo<y9 zw$F#;FyXV(PWNj%HKu;Xl&#L6o|9V?F!AE+uV>4V3&>u@Txs;Wm07GmX<H@ND%%{Y zi_4^mrcqB2th(4=ZyXflJF#dwb>P2Vf~NIXX-p9jVs(!O(vBrwuR7HcQW3nss=S%< zeLN|1@R6HgZ-2UiwYMBRB8t@?Bh!S-p=keGd<6(sfBotJw3s6h1n8tFN=o*0*Kau2 zsbsone&KWLVTZoT!zGrMmUP>{mX}phI=$%079fHSDaWeR&2Y!QiltfPVB(3<LGGsR z>mQ!(m{Yy%km#21Ac5y2x%)-&i#!p!y`w+W^7=g@##wraQ7maYYoGs&BEQI;wqWw3 zMuI|^1`L(;!@;uybbpk>O;w6kh0xq%X;R&Ee#A>(5ua#=m8_mKbw%|)wS5ek33MQl z01c{CJBA}k?6Acs>LQQ@&()SFB(jy^M_4mVSLnDOhI!D}^<SHwCMyM%jfH5>#Ud(+ zy2WS0X&30dSGXS%5W`2r;ii1d`}n2f_n-ie<;#hI5#I&7@$;3<1UHl;WF%A?jSTO~ z*i5LaJo6#)**WqdD+`lN6}_IJasEn>9p|t;I4vZ<@={5Arl##eNz)QF_oiyE+2Q6U zowlbs73_Su1>rH*G2+?J_V+2+y%a{pDz{Gbd)@5L$Ho^$2rd*+O0O-g>S0{_hZ2s0 z^3oL^aDQ_K0Im213=I8S&}Q%Gu1RIa(0m-08nye*>Eq@hfm9LAA<O=lY{J~tQ1t66 zt>j;ej9e9aU4aU2&jehhW_{O92R9G%V?+H*Zh;XZW){~m>PKN2^vyr68Zyp0IO&G$ zBV6~^h&`_rP7M`5ml7q|f6j4zlPDVfaC(e`Rv{oc&Yi!+UKRyc+<bre-ne&~w{t%s zI|NxvC&yAQOWeQX<qrCNRdP~MlGAF*=C}EK!Ufw)ruOO!%qzl`Uz@6hPVN30zECfs z9hto;>qEw*rn1d%97xu`em0LfFfMPIr+*r1+D;_h3%x#m*~vEVdL6@WSL$e@S-afE z&>BUk0=Z~ba9b?5z0-pts}w3_UF{3w5Hwipv=4vK4(q;`4wN>D%;Re6Wz0m4{;a}1 zxK?_7+;4cU>ERN7&aNNk;SmXq#J|puQuF<d1vDoI;LzkzxdNI+!GW>ibQ>NbZdh*) zOta06u7hW+(MT<FMCB_6<VhL25Rj<x@8_D^Mnwpqij4B1xdwWE@H_(Inh=-HF_Hb5 zU$(AAyv<~E!{ft+stq@5MP&IkkxFG`yF%Q2R|g4N6(Gai#Unq#LWp8%`qV<N7+dnJ z6p6%LiQV$bNs&Z<HWfJqpF{6-Bcf$O21jy92+MTy$MdRpaRJpJ$)YbwcZKVe#mzO` z=I5j+pN}gEOsW&ETB&-Nd_)ZQG#q~2t$SyTZ9Uf5MRhEiv{1foqU*Jb85pLXC0$J; z(@g`)OER}frLc|xInZ!(OXQapr`JMyP7{vfN<{j*FyX<t(Rc1=1u~kL8O^0hKE5yc z3~<YKRh;%)ethE1s0t1Y4v3PL#eG4*Y_;oMZ%K%f4*(VCyX7RI+B<#>phq_T5)#8( zqj*<7Po!rm<-Qp*b%S&O-FdfgzB(|R-^SdKa<HUHE9!*c7UklA;&|&}vT?|5cpq0G z!85jo6&&5D6!cwI`njbv1~sMxgt2j<5SK%ElNk5a%LVr>#w7TKmB6jjx@+eVA`xkJ zG%eM>;aJ9CDe31&jHgl*hf+Yq^XVEC%DzB^P#iBXte}l7VovRihlgeUIb|>yn{10N z(>r8*X!BboWpy$Csb2{+O3U42C$YHm?r?{o0Oq|O%R4BIDNk7A;0BwFJw!XqZdNPa zqu=8$)E^fub4G<C-B}F(80uou_V;U^>=>=57D~`&>TYQ(5Q+57CMOX<X}^4O{j!Sw z&BD^cETx_Cp<U-pVQf!9Ki$^SO$FrHMcY`}@yHi)KaXftapqn>q9jKxE<Nz%@~x^} zc>QX#?0tNbD{^qYH7H%<@;s`ht?k9)nJ!-HSJwL<uMWci&!GH_K3G;#t^$>JGKRi< zQ!+$VrhQ|wuzdfm``gA@BNX!^pOxP0oAmq&LBK&N>Fut^aTk7E9jwZ1w0m*ApM=!g z_{e>827q^PPd+eaP09Ax$(gr~vTH5!dt4{L*g!*RrsH3xsky!>eO7&u)vvhUisJn3 zx7VaDAm+XPD7HsbFun+Iqy$7jLfo$REWo^5ipfGo7C{Uz1ESWYWV%c%anvE!(L!3E zvamnUOyoy2p{5?RRvllj?XkEnN<z_J;o-h3QqC6b?rC{%4LVIt`C5Y4zU*reL;Ak3 zppUM(aJ&pCYw$Vbq(&;e=|VWn$F0=&eNI5P0nUT;?(x67ZpsM9*Rr{shMbJ0nH4-w z^8%S%HT|sSufEKciQRTXehR(1Kg$;teJ6Jay7YUBroylC4L!<{e!kpzqvPfFh(DLh z&PlB6eVKF`+*%MSL>^Z7X)6z{XA*Ou+%aT7LL<PtpT#vPRxhs^a4wLCe~$PBuotUq zZKC1f;q&T@R!GTObQx^TwdR8e?5b$z@>H>`v$<Rr+n32j0E|ym95wOjQ&2bd2*HjX zsQ~Wl7o-Ueu91Gzp!$;&Uk)zueHIPZUDGNMf}MuFS$TbP^qhP4O=$?JgWcKYYj7%7 zQ}Ny1AbRbF-1oF#RP-AP9zYqUVM%32kD#I#AP1s^&->^^DcmW)d5^fIahEFJiC(D& zuqb>c&NMiyj#mV0Wvh>-44~*E`RQS_b~Kqf+>ZAqF4uj5AGXLNtnWrR?E%GE%-?JX z9j8_(v~8@qDVAi`Po&eAmmzd*h`HQ2Vo&BjAW!Fd_W4pov!Qc%!JYJXjr5u$b*?ay z@oEj{JA>Rm!WGNyrPvsMxlr0ciz5;$mF<f(<Hygc3a4*s^^oLDRv@dlsnVgCHs_h< zH1&~-9Cj~=2u^y+)j(V;`4){HOf~(oW%Y8fz(>fm2m`;EeU*|I0C)I3pV9KKa@Y7z zCO;7UGD2Db$L)dvw1UZn1Ad#ipEnG8m3k5ypY2z<zhSn~7EESGY$~6*yf2J>WM?Kc zH@HJ_Ajr+g*Cc}xi1wXI+UEAsya~SDTc&^J1L|e#x)}RWO`>ecqSv{sX;fZInP|Jh zTgQ7z7ty4<%w1W)5UlLN1ebsE(-DvsfD`MJvnylAi%NT)6vGCrI&0lqbV+01<b=mW zbhRo0x&tJIU%^%wPuA$wi`bV@-v4Ifa_JNc6{Bd~Z^m^UNsB>rd6p>NKKAC;>TYb7 z0fr+KT)oKCcc92lqt)3l7l-lH<!IniaPb60bUD{rF%8RmSxjYj+xOgEO5MXQ{GjBk zDPELwJ%hV{jyZnq*OpQq_w~zul4jXo)3YuP`(GEr_0Kb<te4muMIB%L*dXA!-`u{~ zwRKK#9T~V(!Y25{LjB8|;Mlv!Pk8neZ`_(#cGO;mS+!QnlRa_zc(5^mhqtCbIGr19 zCGn|ndW)ZBf+P-4CWO1GQg`>$3SU+Np!IyU1L8hP?jE0y?3f4Z3p?{+%yXzr)UGul z?>PG>K|c2b#_fVZc1~-ECQIJ#=3aB|6a)3U<o=Af;EC4#x$UGcfpQaB?vn~zvT(;N zyCG=|fJG3JlJYsql$gJV<lok(e%=U(en3$vRgMlhE|t~IfO8TPJDWMUlu))B=YxpD z&6zWK{op2_Xbg9Wai&Y9l+x-Jj;7_h#lDe#b;=+p6%ouC4GynE-!Mioo^x`J&Ia_O z>L+u>Vs$iV(T80wFfKHFg$mRF3OXB@Or&gh)cieUy20i#$%oM9h5jZ+oejl2t3$BQ z{DMoi1rdml^gYgYbUyWaM2Y=h8i{7F0jEOJx)P&_D3(Ic2}&j4da9!Oqs&`@8G3@$ zXa%D)S3*x{A7jb+z?eEnn&{wS%tH{3d(U^9sei_!@LDD&+v@X9k`RdLl!twvhG!md z*BZUtGLICxI<$qNQ-zwjT(syu^r_6`I<>M0aaR>jf6b=0xE<)!P`1BaC(tJC1{$ki z@SVGSxZHqrS|-mrxt!l)pYXfvyw#FQEwc#ZDwR&_%1Nv>Uq!JujVPE)@4olmBo2T7 zws6$XU>zrkt`4`u;VxDTv73E7?q-O|{OU*7)aGRJ{7YU&5jVj7K6oqQ;Im1b%3cAe zXnn`jBm096iKHUsih>7h&id2FEytJats{<jLi3lV3h8*k=qwT#lYoPWl5cQ!@sVm+ zc=imtXaOgAP3e)!G7jd_-adJR7Pl0>%UKh>$LFVNd`(1S0uN&GxqDFFo=VoiVcQOC zg6@AuE+Ja;Tct;u*;xZPK0;#I*{Qgxf&J0`5*6e6FM#kxHq<-I;>a!_FVI^KPh<=j zP8VIgm5-;pT{ozGN!l>msD3EaDsvu&t;iHPF7iq8+9*1Gb}E6z1fum$hQ<vQeK<8Z z?wdTw-STEe<{q;Ufs_s665yEYT9EPBogbU1mhwrVIk|Or+?jUnL>6x8XvOfG0gmIX zKgP;u{S71Y!41KNvzviLb_}1NBB&~}_w@pI&jYsQ*FlYUCo-ET6HT8`a}_>VdNWCA zX1%3TlG=9mIdRp(Sg52e-?%&)z4!KMjI)cHF?Bf~p46Os$IkqYl?AB8i&9k^FZ>$X zlzK2ExA<fHXRM>*?b1%S;!x=xyK8aAsSLOCc}t88|M3aG<A_VUd`4j+RS~uRVx;Z~ zrDJ4nXm`(-@&GQ7cI<l*gZ3Y>HcHNj*O68<J@xCg*WHjW_xZD;+q-~S5nF!ObmY>@ zJ=WuLx|JAmSGwg0Hl3X`sl8ro1*7I#A#2F1DOr-9Hh^NYY+ev=^}3!;7beHqht4#P zOh#MBl9Ds<H4TieYe*sYQfHVOY767ADO{TOqoAD0&Ng0*H3l3*;@0$5e;j4eEg<>t zH^X*6HWH03Ol8D1@{a>RR@mGSnxRFk?W2FIQZ4da_Y2CCWRmyW$~bT}cfRb-wH5== zBb#_z3<lKWGkGJ)1}NbXTq*$C%(Dk?M-`IPyOP9WJB!h}k|f4Nys4K$mXCpsj*ios zXn7+dEp|z(iV{uB@;B9;?{!NRPY&`fx?H&W^S8C8k06MxA5$C|VclN$_YsmO&gDfG zC=X{!2ZAH@J2}m?(%T255S6!=pxW+A!KqH#{b3(zK=cZk%C)b^X;B;J%48xH)+qgZ ztQZ`8^fAD7;)jU)$)yFnr;~%U1dR%ZJlDP#$3UnV8CY96CYXm^EDn*D_bAxSj8cxv zItA)IWOQg!o~OsB=lkjLHAD6?pCYBN=rHhph%YL(Zs(f#^$95Um<KGZwe#c%o$2PQ zyZzHfL&D-@*T&Q-LZYF_fbW4aG7?dNWzlr%(kA{+Ze!8Oi_|Vf>}em{QM(D-L>zFE zPtJp2HC9W5`6HzxAzc;5sO}<aC>d$lpA4dS1hqx5gs~23>e!q-<=U&?DMVo;#70D1 za88{!1NC*T&cTD(POIzl+W6V8V`}8R$l2qmo9##B?|M5<t_d{e-JJMyzBoptMSv<Y z`lhC5O4Q;0?fC*_$^!t(ywN$)@k&q-2v(>ei=31h(F6-MfTOdlZFUoFts*<e%g8Q3 zHT$|anNKv6)W;mPo1vmy9QB<$%E^lrs#0X@_(2$_)#`h>8cAWF{VV&^v3aQhzM4Lw zrt{O3=2jSyB#y0B?DVSA;XyE9BdRM)RPEhp?_HLNUO8RekzeVC9dt16dTdXo;g5Rv zC6U%@DV^Aj8^4*ncVQGk>>hJQ50VTZnO4!eicd0gk`BBO?BrT3;H^!})TC*`;O8mU zOw-vO3)`C9zTd8rFDq`$EEKs)$r45I1vzAfSUrs%c?per$Ihm&axis!32m;PgIsf{ zWG!ac3{;KSroY0+l{cVD5#I{FO9t(3zBtgA)<BfnI&bOd>uDR}pt#FVjr6%73U6zV zU17-m^1`O*Np7zM`)%WBcx_VURet-JOwN@r5Fw{D1FBZp(WY}h+kvIK;u~UdG7Lb2 zXq}GEZ&M6}njES)`A33qkJ4ZN%Ssk9`)+8WL$q7<0aV?w4cWhSl=b!l$tYBii_B*^ z5|Jh4%bGWZec{b~lI_Qku#0lY1eSJ_J|`Dmg#L=9T~$xBDYbd2(ObvGao=Fk022fv zc_oav<F?iHT0bSi2FOv%vAMbqkJc&k(rAkPYNrDs&t|-4%h`jguhAc6NO<SE(cenB z$Jm-S%GE6o)9X%M+;4U-vl*h(w&4&7dv`eABLDU|t&g}qd&&*#ZWqkCimh@j9QA!0 zvB7UF072we-;+Th&kzZ&7hunW<a(S7VIW@4irk@{c9hOeZnhjsGM)ka%<O#?Qn&63 zmhys?PenSzWs%S*?&GBqAk2z{?GV6rKI>Cz3gOTPqhl(y3nyV$-j_jFoU61tO}BKS zpy-&Uwo)YXX*OP95h&}^?{DQt%Eit*5}iClcrFg!5IsR+-IUDvYz`Q}zI=BfKzjj; z0IT9_rMK+Xwzj$eXNjAGlao1QV{QJJ#zNvn03><NNU8j3FN<TWad((PSmUEc=eh#h z89f7hnf(`OpFmizCYp-lb!VnB08IwAxuLOG-wKv^L_f%*so~*ZI+^+S&>tDptm0^6 z2)Hlpqf50@I9VYix5G2+3ww?WJX1D%vV3T>KAn?<?oOKZcJHEQRJMB$Thqztr2D-6 z;FksIdVA_3(!}2+`yRB-9}CZ(zc}xyyWDPSZpg_K)jQ+ip5|ycaA|$hY77ST^o$8L zobAnuAr>VwF|#nUzTHx9)==5Nlpa;z4H%<R@yDofxw^~Lnz^xCUDs&Jvkx>_0UERq zIV)RzMhixtQJImx@^~M={Q>QCbfpK7TE(VoS1s9GK^0z+pG!vrnV?-|Q9FxV=}79M z@!Ycz_Vv{8(`XXIUL1Pvm01tE$@=@fZmr4S&bD^Z&dw9d>2!IY88ALB-YaB&_!~N8 z4dFO-mfQDHf6hQ+!otR8Ks<QJZ4562U}?_$A429mS4?!P2bQt?6KiZ`$lzPzi}%Ia z-uvsCfuN{CNbAPhWj|akiH@F_b7oI+9KJCGoQo)4*iG{Ua4QH1aPo_@n|CJ1vqZB% zw0SCdD7PwcF-147sODJF&(Ak+%j@(_U)Nb5P3@M0?7#U3sEj~d)^*mYIs}I4uJU1@ znl{R`Z(^!7`Iq2Zgwnd8e$CP4^U)#4>3y<jRJ}8OWq=WgPRfwU*uXn*?p|J`bR_uc z3id!biG_Sd8;$Er+Q@pjbL>_&wmEqSKvJOM+v~I1@UT0#6NYCN*JPtXGWIhEa3mUR z<@f3g(st*~T!kuCu6w5xTnxV15R)r+0M+pR2)gt*SoS}fzi)D{vTbBr`Ki>-EJ8j? z8byDkuiDRFOb9rCu}-_wh)Q~n)EnTQ;hq64%=@OJljh~!YiND?Q(r_&-t+8Q|Jux4 z70!(j`yNHzTDbOmnG7X`s$ZYV;9GVWEl}OrQB}BEx*UI}6+Pp?c1OMYhQQ!>yBWK& z1322wbsGJ@`f1*U+?r|>8sFL&D`054TC=}liO`P)VtG1wIlrTlwF4Jz^Tv}{^wu;o zXHo_dJ}x%Vgk1n3M8ZfPLDa3NEb+KlzT6qyPj+nrpv!L;cv>DVj2VGw3Y{``wswtx z+@Kb-@7-yd23fweyy@9V3}IuI#y2X>@d_w82$n*`499ei6VeCG>%}pZcPeW;bO0de z9!K%w39l3YxK8K~3oM(D_yRY7;$0ld&w1d~3oiD_*;@%Ww)-u^@!6NH6fd`@V$@i7 zQ$EKqo$O?0-yeFHYiOe&l$+rs@v+daVqIsZZ!Uf3{U21FbyO8VxAsv4rI8K^mF`Bm zq(Qn%K)R$GlolkUyX(;1A>DldY3c6H^NsJl?^@sWU)J)#oS8j)Kl|Cgk)_3BVt9>+ zj@x{`wR)%09FT;<EOdYTyB3?@#@bxBw~<2STNz&8MWysEIkCbqp8ArTyX$ryJSeXT zsz9yJFMoVIAF~j+op<)(HZssxm-psgh!2lMx8PTF+3QU`nIytIgi?j&)`qQab$j~{ z*C&H5j|QFF&N2lEoO~nuv!B;sJ9gup_US$uTFVrTfgKyK{@dk^Vm|qhX4;3W=BX_* zED4&82#Y@!wgWEeYqja-OT0_fXAN@ESEXKOPF=$er!V;8Iqy8~3XTn$PS-v?p4Dcr zXM_IDJGpqS3bjb>yy7z_gxN`cEX<5V7Ne<)t6J@3q9lGNUzei}6XYfwW>u&jTgci< z{a7*qVdU<GW3x760AyF4Y~`+V-zLw<WE~qTy`jD3?19SQ)2|?8@gYUOchaD9^C0>> zks^80ajpW?B}9ZotruR7m$!^>i)$y>(Kuz)YwByzP%-i^YPVgV>OTwP)}LkgdmXoV zf3dZu<35Se0{T5ShQZnT+3QtS$ZI~2Ls9a8HAAIJr3bz7hT(KGEB2xAu6R^kzJJm_ z7eS4!==2(H>S1bG*jk@QlSgZ^v!S+_ySX+bUDdqKI8B}BET!VC%p~CA`#yDabPTA= zE;`0y%D#qbf_&r@`C`kyVU@Vx(=KnepSfom^v%AaobAeV4%*=K1rn0m%~KL)jn25| zJ3T#_bPwqjiwlX9LjWQH6+IB-+>dUz(!LC98jfpM{vttaId|Dsnno*dP4jfC)&3D` zIPuzbg&$|@FT=6+9f+)&N5Zp{xyQj{4~{&(Quc~>j#c(f6;+Pck2Fjk;v}i<R^t%` zV%ePm#jL;-wP{OBIKo#L&|7}1d($lQ-^Thk{$4RZ(41!aOWz?(LCdoXeU#-tv^3DP z#N((`S0hF_Zz5@Tj4+vtly9G!p2%bQGxsuq_7By^m&Lf{AGUmjP*Tt=W_3a$_#J%P zPX5|WT{G}_t&<_kD7o3`ZX4Xtg<9(RBoo2tk9O|vqXJtTb!23aNxXojg~Nse#K1&d zPIIPXcZt%y1<A6^orJGm^A5Ma&~S`iH+iAi%ob?hS+H`lkxW@cMRA7~k~BL9W&6jb z&)aZJMJWe{*^$&{`!ptZVucz#{izu`dt!H*Bp%=-#Q?d3DP(nW(CX#bwplb&E=b$c z8yxjR`ZSXh?TFfP4R7b=Qg~+`B`l>2QV9%V^R6VEcjqhM6{dPxw$D~87q&|H8vV2V zod)D@4ZrXt)VRL@yZwOVfO>g$aM-~xW8fkkQ8FOC#q;#3nOfB8>tAkxg;{IJ17tt0 znCGh50AyD9xgVG!(IbvN6t)zn-lEXT(j$(PspRwe-Yn0qpZLOb-JH~b)alIBXtUvP z8dbn^6f8j!$Ub}<bR%@>MjL_7RjLUq|3M7&FoF%f|91Rv$a%5k_*fQc09^$Kd}kXV zk9YU|5YO9ISe1l8yD^ii?49m&@YLA_!yY0+{`A1(qlZ*r1eQqRq1-lw(|=p(LR3?8 za=_+(M{UiVP!<iEq?l>jw-d)$%$5D3C%fB9N7dqHHdh|#!H!a79!ej4_V?tke?FFi z%c@g!@b`D=ls3B?8>N?Kkn)#mVH%pOU$+V);CoQo?M@D>p4hupsCnl;lo4?>yKf@O zInv?N*Ly<;VewC`zH33%j#qm6;BDvY2`6oucb(i{D{731@_OB=!s(#-G@lPIK46=f zSxkY<%Nu*fijP+cG{EglECGM)oGQSxdS#f@Si*%sctY@0G?a-fxg`%sN5#JBDiCw6 zMgtMrOmU4Tpsw{K6<8f4)Cq+j@+U$*e=a7yK>U%By!N=>jGEU_UYYgKsIe<e8@pWJ zgP}~Augreb{MNG%R@Pc+IL&q3homFHP%uSPn>uRA`ZB>j?WG+-UH{#FLX4!vB^6EN z^2^=-k5hyhj#>)YAtxl&J-UOoI(><!`6F*CAG#P!Ye02)W63eWOq`qhF`(cR?!Qhg zN4P5)wD;FDIP&Tm4Qi|7{&@dES;o_4rwqux_HTi^`cNC5crnnSV!ydY;+OA03f)lZ zr2capUf&#-6qw>4R@)et?fobUFNEMB*(;%f+0(NuU1WzH$Rqz#E<kJW#akuA<5q#} zbz>lKh5q5CB`ad361-|X?)z3j9{LNX&ZVNdMy<xgNO|q0kizk21Kxa4oMyE>n~HMx zE%iBhve0yTA<&avxgW}l^IBct)NRgjj%B(2pxNUP?<#4yM!5A{j`~m~%Fa#BEvb_- zfCmR9|4+b&^50|29X>Pp@sud|2~8VDYsT-4vuT5h3LQz)R=3mb%>A(fb>+k5v`ohl z9y+d#KY#oR5(yBT)fVZQSf6rW)ES?B-+RO3--B9^<kIO<^Jt40OITyKfIMR(Hg-}x zG=c8GG@BfKPyoqC9LD8R*i$vE%j{?uN_RsY5||f<*@WG9((Q=3$HGJ0?^(F>U2ca} z+=qp&iy%9jCPyMW(gDMd=YRQKe^HtoRj~rQH~c`>?*6<dMiq%x>9?5laF@Oa%UJKQ zOyVeu7>;q&VJbyJTe=U>Ms^}Cv>zQfVJ!}^1;Hg5&_?}~B3oQ9G59k6X6M6OM#GH( z{gEo(m$~ou(#(({GMBRq6+h8_%HT7J_&Urc6C{skL@({4a+j(`LIRooh8F4lHj=mt z(r!wu4PJY^DDapVHH&?@dba<8_P^&`SUtBtoXDs_2`H%Ks7@Ey%2?Pc(HG7Ro)}rr zi`Axk4=w9HFeVX9E{!=(uju4*v2e0!L0x6?hWoz5k#nnz#~jOEcRWXT{9lkC4jgR* z3h={>Bda_@%Vh1PPf;Bz<KWF04~4p9mQ^kD!f;?#Ye6&9$!u`nO8Tv?b$3J(7xHp* zyZid60RxAcnp*l55+XoRT~IhVJNNt}yF4uMz{Rm_IMX!JG)BG03ICnsFV41ZFM=CM zKUhs&;7>j!J<zydFf0g0n>|52ROwe5^21nDG{Dzd(cTe19=j;6(CzD)X*$#1-(lhJ zz!y*pS%$LzodSE))j+|~xEfemWcd;**lIt+DU$E9i0h%o9mI4T>X2GGh<sy703-e( zvVH%Y(v3Fz7vCjEk|nSZ5s6ax`TMf4g1q1<@yRu46~(cDNebQA*jT+{j(AR!P&1%M z(ktXfwZD5*YF5#JTc?kxmW8$JPa+)~l$%Da;lm?vK0U{H*11T@#l-~-Q-XqmJUlj* zx&SBz_)V6y<8hci=5jEwP}be|D<Lp>fPV@N#hPD(=x1Na7gZH{$85?M2E2ud42TZ| zzR4;q*MDM)CUjK>9+UodnPhx#%(HiFZ=?S~)Hc);Y4lLRXZa-~ii(LrY{G<cxfm?* zSvWa+A}ip?6aF3^D5D%6928olYjZ)I)3tewDGTMN1_xyfgqXd%!O)!|r5x-m7<}G} zV(W&ooS%&C@?L8|xkA+Tm%T3N<fQUZFeLk#P<2d;=4WK%hAH5+^&65~$*mNVU-|Pb z^QIyspfF(L1=t*ovBL*QJS3dM5L9yE#PdR2@^|n2lHqT}P*6}D9nV|t>3!g6%zsiA z+Oq?E78_eM9f!=#{k;mYfSNf}f6RefwNsI0AYK=_8sWu@%#G(8AuUga$?yN;6Ks7B z9D|C~D5*b5b|OJhuz~Ojb1N56-kNSBLqpeu+Bw<Tt7~g}9);jGl)TO;=;@22qA-`y z-hn}8-FL1o%aW9+zZKskIjsCw3vhVmKxqFfSIQ6_PuinSS5Vj7+M40tbk;LxU_ab2 zzI9Vne(}mt&dA8<>sOXXSqp4zY|Di~9e<B!aQ%7Z<;Q>jezviZS9?=yq0A@vD66Jx zOKcxov;rt&06-BWLm;d_kXI3qmZrzV(0FtA0^u2RG!E79CRsj%v!YTOj{ExgXExFQ z)c*Yf8&7|g3x1D9e}gj|4T+2_Xnq84D1ZyI^k(Pa0G77fSDbVBbgDE=Oc8s$cib#2 zQF~2`QxOVrEaERAhtYI~mUcZA0dQ}a8v&j~)d7;IIFR=|+OsY1?>;sT$NUq^h&2I* zq0s+)+BF-Wi|o-GA8GL>)GCtN=7~cAPCG3f9egHTf)O3KC<CSUg3}JFvr6HTm-<YE zE>u)hL2P33sV!I%PME@>fSd&2W&zQ%;z66w|NUX=M-MD&6bdU~whjCfehMPS1A)l2 z9^kUT8p)h|Zy|sa_K|c>1Jp}|jl!$2&`=|uP`Xv{1<5GJD<Z+uh#+*2jz(a4*^0*J zoLnN2tB~b8jTLX%*qL6%x>|)lfiW)dFKTEY>D_mT)RHIT<?%!fs@PA{;))8ECcs!K zQ_K<tR5et%%+D;`+_O_t=hxQ-mVl@;F*q2y`9if5F3AWG(#p#tqfw${rMwfhwYAwU zb1SS9&EFIEzIO)pr+=zT=BGBiuaO<Is7`1MsKW=SrC_^(-#ub5Kf>Sr<Yf#9YTnuZ z0vG^<`fV|S-3*Xz01hhWOg<d|=%)+|Sy+gQ@G?x_Je)QRwc>l;CCynEHk6Lep7vT3 z*Ys)rCt3c+OZbJ7g8D^YU|aaj4aJ4CobnrZxPA-edOF^s$FFQE*WAfXmqYKS?W89B zSyH-tdxHW4SqCDE06rA_HXX+1=2Fg?05s?3_F+0;j^{Q*5eaOLS8*)D`QUr^TVG#~ z@u$Q$$bfsnb7MHDx`&_0_=pV-jYA$?-6lb<tlTGn_&bk8LzfM4!#&Mva&`xi`J8QM zGl96%a}G)1RkfIr(YuVZ!HJ1qw!4II!Xo0%nf_vXJMTI=I#ju<tbavC{iZkc*t52k zLg*(e{QJdspl6mEPTXOmOBD^_a0a}z2-kh#d^wCJC#%_zNSr81_3^eF5rn+dZ^YP? znB>r=jg1X(QosQQcvBS>6+}2iFx8l(<SkYEj?+pRZJ<U@7img`9ZoS!(E%cC;`pBr z&`Q2z8KH##TiB=Z-<6D|`C=pqL+nNbQTKsTVMW3I6{aQ0QVqCuz%bFDKYu_I@$=6; zu_9b>ej!0$<|$sV@9Y9<79rf1XSnY`T)$KA5_6SH`M2-Hv>#YT9vI6$eL|%tqVE8$ zC4AvDR2hQZJoJ}XX#`zh3DKNw4bO}fKE8NWOV7r}CMdZ4`}c3KPM`|nEy9J^<`PBk zN#}DaDJdZ#Azgd~ero~+IP$PU%+qMuo={}`DIzcL=YL}rsK%=HyEx9<9=^emwSncz zEYFdIQRQwd+fO_rC%eCk|JdB_Jkx+`hg6OJOq5YZTKY#w$meJs*F|v5LQbXNDGSq~ zlV1a!G_$Z~rhB$Yz9A|qt+8iVly9u<V}IMLTJ7TCP7r-sO-J)51!2vhg|1fs9|Sg` z+cquHjPEl6!NDr;69D}3`}b$y=jBREU~m@?7Z;b1(89uEfFoR6RtX8-JT)sTOI?<! zP4L;5&}6dwhu~_<rF~^pWr8o7siQssD8b6g3jWgA&*1zx7SfqUTPESU<<t**-JQmr ze0_?<CXOx7GhYu$EG!FqNl8J8Bs)5Ct73p5Uke8}C-X4%<<d7lwXccF=eq)ljkJu+ zT8^FJ5wJ{)7Y6-|&g=#6y$R&=h*JK9ynMzH5sDirVgA2=V9m8*GVOo-(N=%QJ3IZJ z2b`XsnnxqT^=o<MS{21>eaFXny@q{2&Cl<0|1%nH6^NVs@GU*E$_}pZ=lf%1WvvY( zQ)&BkmGw0y|2)GKHwivnoh<rFfM-`57#U$=VUgtTx(n{L)V4Ok>6q2kRVP^s6O$ee z$-;nLS^_xpSTH_T_n);X{4^0vy966Vo7}Xn7eZs><Yd%sV9E9ec)w8)*#v(UYMY+a zhDDb5b@wF_B=_rio*lWz7w})YRj%zwq?Z}gA^!7zE8{o|509+JX3we8V_{<hpzyAr z@E9%}+-6~VZWP?{btdF<x+0Plm(w%2=XARB^#3lFOyt$Am~3yY2bMT&HdP!wRg)EK ziU{;c!dJ-1SO6LPcekRV0>s)=?V`Sb(Lo%2G<0;l^1Q_2($Z2oE0c^_uz2%>fCS09 z^!vB)sWw0Zd3t&R0OSG*CMLPQ?6F`5RlK6}-tjTBzAW0cSMMO|Y;Sk>&F$@v+2q7T z96D90xLR=S{9ib7SlIdL>Fe^m>jb0U{3L*ocKE0!L=4itcjBRiRa|f1uAXm?t<@qT zB7y}1=*h8sg$%(Tv&yd>?d_FJY?PIw6A}{KO4HNR0T5aN<d2>n9-*^)dwY0{+NyE2 zsyl){4>bC+l$8M8SyVzvN=kZQ1;C!#+OlKxs_L=ykUh~`ZI9N@R2L_%T&g#?<$33+ z6hyhd#@+FJtaH5>Tm3HtLuV)XXjF5ntaj%yB}5A7gE2~JT^aRaoJ_z^IHfi6>8v0O zia#*Rabcw3f1@)|odIymSS2kL6UI1Oy7jeM)h5VKdTsh;d{=!3@xC5iFRvW2L-nfS zhb}+cR*&BxfJmAc$tfi<I&-|fo*LNw`<4oG23e37&s(4q2T&3Q!Sm2|RPG~?*I<i( zl7iC~4V3l#Pv~ZoB__*%KF6mXDD=}LIk8ntPq_nJ5<a|I<{ySmXIODJ<Gd{W53I(> z9w%xKyGd@BUMMWJC#GiaQEPm$z5x5%wzUa1+9$xvlnfbW|9xNC7uKEIjarY2iUA7z zht=S1V6;YsBVW0-%ofRyS>@W5)od$xe_8#0{FRVUJIG;9ndiZE{`v{q!rR+>wP0Us zV}D<^4+q9U0LKyG`ZH6R%IVF(J1=iPFNMP()lI&$S_dIH+`|MHVUi?D13L<4TC@A| zNdqbcnSCt+yySU1g~dLg6bd`Hm=$peN;15ROVD0x-4#@st^MYCaXgvUzT$iRu|-!w z<9IK-s}64x+uBu+|E6)<3KFO=qt7zVj>(*rxdd!N%tEcSAF(a`XQoq7EoPflSJ&1U zXVVrd*VhbU3;(ZabOHi@lR}gPrBieEN-zL5)!WOTtE|6(mHTmh@~yq@_#kwxz;p$} zdTFYgr8Icw1Wm=Z)m`d)?@f1&ezgRmgvYMIe5Bl*I&dM<UQ*oPJ}&&p!h?s4>eE#? zUspX>z@*=Y5@}An2rxiEk9+wl4u(l5{`4B>py)4ol5X)Y64vg*EigK!d>#*gc5N2R zcNcT_mnp8XEZpqHItBTQHeQbp8SQR8Qvj<s6h}LP932MJ-~7Q_Yo(c(QoTsQ!Ex|A z%lKHZ!PE1;sR;+7S}9tZJUtjs+f(%|*|SU^cKqbum(l9&?d3f(Je-Qc*Vx4CyHHlE z@^<8fn?uS?K)`JI%B1+y#jUJsWaNyx`lnA3jLBSO2IX9$idvGjl+#HdaH{&6dY6du zzT%9Ye0DyfgH4F*eE(@a%`!#;4Hb1GHM^mqVIP(!k8fvcsa;;id#y(%&^oHuFic_a z9`O?PV-ua(p!M`hnk1q`%CO*UbC719frVw~bZR@6Wqj6dvf<efkt@a+#t~`k*RK`j z%8=(nCj6~}t=`w)vFf;Hri;}Kc>+QcO=WEb@9!=y=1^eYpq0<`^iqdnnP^>8G|E@T zsc987iZt7za^Qzra(pvTQDxA6LyMHu)@QpeiR;(eNa5spJn}9)wEn%OaZM&@ngqeL zU22mgJB|Iyv<7WE<YvH_JP3wJY@`gJgJg&;%*dMcv=Zl&tjs4~Z`cZOY`rdbzCH)K z;#GXz_tg#u4AIJ7k$tM}USCc+Yf<G+p=+jPH)p%CKPxi4jYvc5SlHR?%6;F^!Xq?2 z9q#W`d|wrt-%fAWFW-6`khL#&41Uri#UWj^>UlNxZA^Jg*05(q;gH{F`@kTEYc4Sl zT?sRVU<~7Fa~G@4>BH+s{#T&#rt63Q4-9c+eZ3JSr)ImM6n5l!46D>>jhGHo`(oMX zbUT0GE=wa~*sjtCi(Vq9;JD~(^M~-nNzW@s9>Dx@S%ff1y0Bqy7RqxUdG8;+*Dgxj z!@9cO2T=Nw@Jbv?o|`EgPL!gk0DmQh^+IKEa)F5kqkdh!T3G(NFNuEDNBj6le$OX| z@p0Ctr)SDTu1E8dBbj`4C5%do;UY7NY0@^yIGckWDW<l?0V_9Ne_Tv_=Q=4Nq+Hy} z+t-RXOZaq2!S&2KT3RwT!p|luu?sQ;J%33Xap`cCm|D7@Up;2$6>Bn~U>^Os+|GL6 zM>|m~TabrhMn8Wr5o6{b{5Yt*?ZW2kbxk*vj15cGYIS)}*=8|kJ#|d4#Uy6G7$~dk zI9=hBw#3I(l^SCpYx~g}n#{g%;dJT2y|-qhlL#?ck0)tSy*gYno~ij!Ma=K<P@}P8 zaD!5=Q?Nz0FvDJJy;K>zwiA2f3{?z&`KnJooe&eV@a~E|KjL_$0Ds6rHRaS&<q~=I zp=U^SK{4BBY2KYfxF1RrP5aYg?UUA<S5QM<b4pN-vv6{is^s_HN@~z}uN}EV;Ideb z3d0+nf!ec)E_OG3ei?Nc<K`44XgP#KyQ<!QnO5HiY(LsqM1)+QNB#(`&os{C|C(o| zV6*NEY)8F7Es8JvTxj?8_|SOyaE!0tb+AlaN0MnfWy0)w98CpGTgN4t<eb&oFqYW0 zd7O;)rNz4;+%X7M8HyYa#4;J}t2TW-tw?+Y8?Uho0v>jP-GUJ>i^AY76S#i%8a75z z{kCVKXl3p#S$$B|^H!tjikt3Z6qvr`kCB8YuhxgE)<DK74v$v<pr5M~A}T5|hbcae zF6z~^@@N>Of^!w_d@(Pm@JG`|g*T@6xv>jIWu&4=t<sH<RLn*T;@?}^m?eoE%E#o7 z@c5kl%tnijjvh^KzgQXJ+gE3{SS%DA!Y}OkI(!3RWvz6W_3*x1tTpp(Iw)2v9VSO9 zlxJsP__>D-G?IAE#v-gM3=He`66QzQ-TJnpuqFjl?TXK*GNi%e=ce)&Gr4c!`|)n8 zHk5Uw$DF&$+hh)-@5ge&X3a<qwf~+@SdB+bJg6lwsToZ*#Q~BKD!CPhCWXqxQq|g% zFWm(?RPlxpH?QcwTEIUOncbdlIT{A0po{P61gzQ(bJX`p@9z&V%M{C3@Yzjn19(h7 z_U4zdv2y6MepNpowD5oT=II!E;7t!&f{$H(KKgvC(1WEWUW4%8t4G@wHm0>!2URlS zLz80jCF_fVPQo%O6;UqGgzodBcF(g5<9VsiwK5t@JRWiBwtEEpNYY5&8sR=SZ=Idu z-*YQqSgnlBjan>6V(+YG5mTET==Hj4@qBd=A2@vmcNT)`=SKJf<=l=86e65Ik77X0 zx9b7w5hI?%+X8M`g?wj*Obj>6y*=e-k|`Qw&TvAZ!_^$<vzg0_3m=2(8lyl524aL4 zh-a$;VNFdeH}lEPDeg}HFr*rhWsE7D?pJG@@ixt3qAHT{LQi8!!-%hfBi{Jl?xBIf zbgrX2y}l-AOJ021H-v<nPZQ_kzt$BpS~JyN|N8a#GIFuj+uPs6S(Eho;CATk``*(l zW)#PBA8(JDBBhbZ!Lyz)jmUI<zPoE7z)}adV(Z;gm04de(X^v=X1mw7GMXY_2$!#w zQAZ@mU2><iHaG8g`2OP_?`(&h2X>Im^*ms~<!H54zyIVd{PfWqIq+@(F=t^)a_1kE zOrpEGoL|u?#chH%?PvIr=+V^a%<!H5Zx{{}B@hsTFJSH;ze?@(Rp#V$U5!{VGBPGM z6=@V3nWgX+0Q~J%-_=9DNp(fV*VE{+Wx+^NA(Lp=b`Tns7w}!_d(ZN*dY0S}G~2vL zZTFNPyJA-!L*IK1!uvcJi-fO=vL*ud7>;H*{Y)iSJ#sjzadgOEFz<JJCV4a_0N>(% z=X*JS(Cnb<vT}}5enK*kInxR}nYV2sp1jX{_Glh~^#%AqiQ~%|Ywt6;TIup6kKdFY zcyJ%z-9yqCoCzjxuG`3lcnczYj){rJt1NR08+Ho+BtrBg!OFx8+yALEbtEOHIQCki z748S4q70X|(rk;;dll~2y)VJR9}<B7LRml&InT+?N?UrJ2+5LOuS$-b8P;ofSPb-a z_jpRRkSESrkYVb4`Q|;;r|%`V6|_Phu&|oYz!1{$(|csH!L(sHrcfBL$``58+00eU zFCWPUtMWP=>n}x+!ptV2JYI+m15;b+Joe*Ij(XJd!t}J}>(gE~%O(MruaP>e8f`6> zo1p^DzAIUJ`&l`?Q?z-0?T?YIKrwnfoeD<kp(ROibg?em!GmaI!)6)!JPy}2Clxkv z`EpaA(i$ti4$!4Pl}**J_oA9<3D2IC9TF3K8!XJU$lcgVFIQ+Yd{&KKj!8Q6wK(^5 z=d+yLLFU^WArB9w`Qc#>=bgZJT0|a(PX`b=t1loA?xrOruc@rlZnk6{V)i+hi+j>s zF8K8hf{2jwGaLIY_%?NMEbi;nhguU<f^$CDZ?|BQ^Sg7G-hY;+u9rdPUDfmPP?5T} zJ`;k})&M)<Z9MQZ1Z}n@$Fw!X6i4|S?{~llfH9tIA*%PhO!K{q5^g(3+tW2hf`sJA zaL5(R^>m%@9^!wAeN*gO14npeaoo{lzy1Em$BltMb$U}Hy#A}rT%FZy`Xj%9(azXX zvx|BSWg1>NIBl)o;XlI*apmHISS$r)m%94;`o{~Sa>P#8h;Brh$}@yW*m>!iz8V%7 ziR-EQrkM9#lkpEG&>LGBk3i!dsXK(cCo_A|+P#wKHR^swkxiS0WD)#%=&?Y{&y$V& z)9e_t*iY6&je2n@8J;F;F?id{$k!V|n!i!e@ivQWQNYO9NKY?qH{i<$1N2&QPY>^_ z)5}_x`mfHkYkxnFsfsaQZSL2r9%~dSGO2j$rVIEEVC%K-gFyy_aN_9<R_D&xT}Lo? zF$!q4mU|}1Y*BNr2C~neKc{`KG{L$#7>^h1hO2a+TKqkfqSk_ng5pb_Jo~k3r;`1I z@%1n+Y11FPbSSIr1fQ1cvCtbndtSRJ8^!X`HH7L|>k=0P8Vv`Bs^-4F-@pHYeM&@3 zY}Vkdso794Tkt#cv*gSB>@p@iye)?9FLhf=e)xqIC$9=b(aV^aLM`Dc0kDx5SEQq( zjA^t+HmH3vL_zB0;$dTbU6$+_)2Mi&B`D3ky&enarDfzCzE;pHWj9;}l@FUyx^`xq z-`>c6RM4<<KAw}y0r#Ioc*@z$0DEt+zGiEU-`bNUQTg}XGtb+-@R%6m%Iq=**M93C zpQFDcx3mbpe1X`6OD}UNeYFBL*^@<R{c%K^E+WzqM;BjTS7$U&twu3@bX$OoD?x|= z`a0vhGq*u6UkN<4ru%rQHEK43@^0#y`Lq^RT>N$3I0Mr+y@IQ{iZ#LZ2c7=TkSov1 z1!E8L+=mb{UTyDNqNK!FhFVtdWR>NkR?oA^{Y%HO`dGEoZBI8<Feu%BT;pnxbe|Ii z)HDJZW*#0{d`^ql!`2%uO8yd!qB~|r-!DYYXV5wEA@y^ogi#W(HRu5J9rjIL$CXsj z!B5*UAdpfP=lERZn#|KFZlUPxX7@bKYQ~`1N2Mid{;MzPpMtT-r9jF@UsCt`qsQC} zrf6uBYSw(hTl_M8ep+;&Hv&&%btInpEnbWal{GatSwpa(CpKZaElIQ^@0a;pYxP!3 z4n33ZF#SeBlU{yb7+hPtQ2=az-1a21je)(!6)Tp0Z|`C2&{IZ{udU)_{u1VvtvVoA zgKyC0k(PYo=5h5?TILSH#e8LJd;(jeJWp__a=oDYndnozlF@$eG-YVBw5fcvupwgG z3?%A(D@o|5{_QbA;<|$mch}OVy5DLoRqss{SK`^$Q;-y#&UP}u8&@i3!$OWn?>H0K z2k!L&spf~VWD$W4u6}K}-=DAdT&1QXS|1s2pwHc&CO1b(7G!OrAg;cT`G+mOW<y)@ zUz$yZ6RS^7CZJ?US4Wp!u|L`e+m?-Ax`LNJ7<C%2K&glGV|V)TepjUzDJ6~9(Qsi@ zz)SdZME2-(k$O7su7+iNoVP_1?>13~)hGiO=T@{#BEyHe8Tx)5w;P>|M!eqS#Mg97 z_ZUb2GVLxplcCu83fso)Am?fN-+b4k7sMQXSnBb3+~w)G@hBQw!;tl6*vZl{alO)w z5HD{~ydtM^j>NRcqi4POjOJ1G)U*__$_qU=Gg|W5trWbjU~~qJe2%HM5-7h+DzBr@ z!f5N-bMb<;g)5sN^dp7Z;zd0s-KHv!Ly1#j5q!%>kJ|0wMBT;G!h<VSE1S7C&pt9w z$cJ-ERnru1D}K+rkNE`Re!C;QZa0Z;&$U4oF`727kixG{{JP;m)j>hv>H7G7J0Lh` z9<@-t<lR)^+<Ag-i&J0$NK%(`?cp0!Oo|YX_{?vXJTYiRE^ieCd@<uSN|wKk7N@0+ z)P}(ne_Dck)QjRP)vbhxf`Iqg2ke-i@DE9pUU8O7MRR+bC>X$bdfeuJL?*DC++u$l z8}6)K8#9L`lFsj0X)zSxh|i>w8pm8&!BVc7wOG*sPsCZ$r+PKE>j={0tyu;Wht0`b zRd~e_312z3qfR?|d?e!H$2`B~=4mVLgZq7{FRC~Oq8)!fk<35xXV#y57qlI&`2Of) zM3ndI-EGh86ee9-EG7_$bJd)S6&EL_mxP>mLSkG;Rlc3{4taLGhO7^(7(4axmf{`~ zV8wB@6{ZD-A7}&Lw#xgMod$x_c%!=}gC*j<-NAOXpYkCKUZ!K;iK+cM#X$QoHzs0l zbH6R<-yyfF=s(3Pv-ceh3z4__3CIKwtt-zVv|-gdS75H3dSqia=yIPSnOo(^6x0HQ zY!14gKSx0wEN219_O!>hyiBiAvxp3d^GjsP2eB(fph%dG>8t^$H&MHrln|3(M5Gke z&7PshK7zPyzFdZ+ytVSn+}{`ovY<q$v6-?1m(ER<fdjG-dZ6RepH|;dzr3|p{WcFV z-`-vcZ=bym)tu>=%r^*0Zr@J+{#x(yAv8BJao_ke(2h>BZWWA9`dd|^k}^G$O574f zrOkf!nD-2BwP0*{EWN!%wUXa}sl|kpG(DzZB(HX@wNNSLlN5M&EhI}wmL$p#PfYUX zwhDFVlIO|Ja)qRr&ykSf!K+iG*XjKWeRd}mmEgV$P`hZGN_n~)S;%?mGKFMFm~}%~ z3(qDU;`E0Z{)+-%t1DmqQ+jNw+%KN(&dK#Nv#X^7M9FkV(#v1bm>F$cZ$(;k-CCcX zefLI0$6lLjxn*<i3;1Xmy?i}u2!U5Vi5~4O<-4XKR+cYL5&*~dJ%?y@xrc)^<-^YU z`6a#!5{9q!iC(cxc;eQJ7cZ{v-Ctx7ltg`b&K?RkU>iS&%)&#PWFQ+9Wbo)A+`yJ& zY$WkB39tdhPgNG1ypLCN3huA1OSQFlW2>yjo*GdSP$oXCnnQUNW?`X}=kv7|pyP6w zEcx1Fpn8h|Yft&qfp^+$R4;ROx~}$OKij+;l<IkSlbaroy`?TBzM5@cY=f_C+6G;8 z7f&XzX)EaTrA%C4-``(g?Lmv)a@zsIn(u6>tEy@Z)Zy;q!sGUL?&D=U{dSq7ylC9p z{0)g-@ks2;JH|s*uRWLqOZa?+d*8Bmu$u?;q(jIHCIn9IoeDG4;X4H!@xUYsVR2Yc zu()EX&+os#)>a_n+{kx|uh7u+>OCO6^ykb5dGFrUTQ5*Pq{}f>Q~D`prSO;;cFvan zO7|<u<Z~q(=eade6w3D_=05(J_92ZdxNVX_??Z|~7gF@f9ZOQ==gT(LTo+stzNE1j z#!T~_bNuohzM_-w>9L7<e(yE%!zf^bB|nOVMS?{?;yi=P6y8^@A4$fBwAb-F!zR0r zgVS0()0xY4>Y8H0bFy1Y<bl5IMf)0umf8s)n`|h@AEJ|NvRL(2<9|KzcMT}AgC7zy zF-^s1tIE(vh02M?K*Em1Q%^zE{Cf1h9yqovHEnN@9)7&shPmJ5UAo8=tU~*HIJOU) zG5mvJgJM8~iPdjc_o>IV^xT7;zgi{|r_QzS@`$5Te-#;$DUqsCuCm>mLoiv6oo}<$ z08n;IU5@j^2>dq2HcJ&EOY^lwDqjQFenB-QP$1$d*|gAniCqb_JsuujkNdmHXS-Pt zi1dE^NT3)Pg+1-=q%02TwYO}^rwNIR!!`NaEo4?`6Oyd;@`+96NYx#>Q*C*OXl%Sr z*5pK|(ga<&CL1-lneCg6ls45bQOwdUC7RZhsPV>%-Crq~Eo=2vlC?KCC#db7TUbDP zn|-9m=ejo@4>^d~s6UsRRHE$)9}4wASZebG1MJA^<qIFnLzq(LIjx{YTH&JU8f8nb z(4}pV^jck1(&jmPY*qj{eB85pp?UZ4#vr&ZPbTgaI{NMPAes+4x9yx#Zb(eSSim<w zY-p55t9BgT2$72B^<DUaMmbC}5W1f8F$y1mc`)ImKZ>Z%?wqQ)+G_Q&Dc8HmlalAo zOq1O|R+%rO&Kb__O_x%-8gMQ@GHBNuqC}!kHrCcxSJ%ijD*yt0>B&s<2Yd^~@`x~5 zLsyJ)poyqdvmqqWKtGy^g}gT1Of^F&=gISvPKqO@Tg~0b{pC9>_et9GZAAPPO0$Ad zvY6e-Hv@@@g^w11Vnw1egXcm=;VN58FDzd8_Ng<EepDP;1wpx?VhWVlJ8w6GnQ}Y2 zd<0-)h5#>aXiUdfy<PCw>*pZF%8sA#PCr91<6+zSvmy&;L?kJ9Uc&;Z;i9q4km^WI zceIHWkdlhS9Q{3NK_~m+Y?`=8KbzK%2%FDnIJfKGRlQVM`j5%s9iu2i_ws0+^g5y% zoklL*TK@#LNXOd?cV5RMqoTvWbhR&=cEq5BO`FaSCyu2#lAundQwz;pY=%j38RNK< zuo(eI0_YJsTh5wmmZN)bdOuv;?pEU$nvZYyGk5hp-S(O0D}iV*Dp0lO7{aVD<$e!t zo%i1IE)D!HYtX7VEB7X=gipp2=)anidaeF8+}y0p*yUs7T-oSMmnenrd4+1{1wjaM zKEv`$`DoYrYu?k)B$j<iudA)hABu+Q%ZFo$xNpIGuuK2QWd42;7!cvR^+0*|H)qIh z;A|y3+Xx5E{B0(_;FoSqQj%QlU!q$@uEitJgivT%_U?oT-OmeWKe`O7S-U0Qo5Xkd zqodkyEOg)h^8~?h<Qb>gxqV|{;lG)TA;u>&*dF4Ww#fOyOidh&uMb&y6n)>-nf<;* zj<MTH0KV;EZ(?Bn7sRA%S3uM$ijAkl+km^TW-FqA%zzbS^8_5&<hd#Cmh+V=hP=fG zzx;1kg=R+%q)do#NU?dI#%?>iEPLo8EMtB|7!jVGV@QR&f6VRWPetajU8z!6G6=A! z#yc5*Rl8mSvmxxExN)$o&}`dtwOlrewpb`^l_Q8dJ)7QtxQ04Ck0f1GgH8uB7xX3& zI^sPx3SCNGzl?ksF*fe<k@nUz8#7pYCW;(fqRVAKhk*lqZ7ThS&*Kl!S^^DTqLM5E zSi<+WSy|AJpU})=`Xb}!ua6#sUFx_bF%Iy08}HnOkLyT$Gr9OYkf2m$GT#&zs6}`} zUyY^+I3EP;#tQnLR#kW@!ZPyZ9@H+$WX9FfwDTzj<3`-1gn5mDRL38{FzinwVRHf9 zbA9O7H>4A6Dnmpglpk?%GL?u-bGW;CW|*E1sopwwQRc;McD2St?8@bK>WGfxb3M$t zh~BiC_nGq3FNb0)Eu`M`pdVaMEd~zVFwK^&<mNx1uD@HUyEh%W(pwgU$oJw9frgB4 zt(CgnOwDUfUG*|e{aYT@^`)`w=4(>ruFb`y7}{LMfI~7N_d4gk^oxWkkGbr*&Y$+s zsQES(*Fg%C-N;s7KwU3MJuexTN->Sl==|~+s23?<@CrlYI^D!LztX(`3kw@Unaq8( zzrSB@(5$QUjgcNV^POt`-VB8HLNo`nrx69FtQacI%PHt~k*gIG<R#lwW;(3jKgFoS zq1S5tokeIR@wHfC%Zleo$a8H7$s3F#)46vloRRPT$+DIE3hD85igwFw1vwM6c{$-} z9P5h%Vh_>zQL9@vz9%+BGv(D*_lT?E1ZR%zpY(ik8>Gz5{{+b|6nr8YN&uz%{Hf%8 zbu6u(!+tMk=YhXddi!Hpfpz;As@vO$@p=m&m#p~CDrq{eWmMxtm_&R0bSS*j4JuMp zc2I)}#;;Rex7|<4CtM+81lK%3^dWn4j<(Bfd=`7w>G^{$tBbp#bx=37H)LeK>+K6E zJ_fh)L#AE>AzA)SPRB#ka{``6(O1s{6f)X#i@lFZXl=AP@u?J5b3TqEC9xTkDyZmw z9SWN6<m7kn+*yVXQg)WyZM{d2cym=9t%VAtorwfZ9}n3Cx=Q0AUbQVW+`^~4HIS2t zYADU8w+WwJfFy6F#kqd$x8VamDN%Pd1$s^KjUnCiHZ#2=^4XcKRSFksGWwLX$chL! z*1f>LZ<$c$a&5E6{IGRofQy|m|JT^ae6gviDv2*yy+mQ+W4fT*<4xv_fjqI(NiWjd zrCenyL~Z=$>#Mg4nu&=cyPTulC$i`LOZAbPNAGOmfBgIb>_zUOpYRYr{jyw%vcy&| z7cx@!V6|j<%KILa_>Zr@`o`JGZ*seTK#M1Ztn}%{lS;){i?P*A>Jlj-eyMp1kEHr- zK)$?U379ErgFU}Xu#i%9y7<=d-n}9~dOjbQvqbU!J=vFNxi@^uufX#==PTXz?*k)< zeDk?8qd*7n^dkuNfxii2V&j#%CJ}v6PB6THnyWI>25-@tPsCX$J7Tz|tWovx6cRIO zYR~6z5n#=Z+!_ZZpiV~!o{zo1JQ|o9qa3ju+zg8OyRk!)ZVm<lJ?^(^p=<FF<dD$l zaqV20Z&6G?m3RH|5D{MtESXMM-HH+m#Qgkqvk)rIuL1o6JD#q|fVz9%G01f{cn#>D zs=BKVQYjF0t&m$D@Ht=k9aN92{3PR3elVhb;Ek^8qc}be(<s-HD7<w(CQG5Ap<&4C zKLxh}pX(#U#Xo+XYP7-OFlaHK;}YD-bO);D+cVC%^s(67kx#d?hUsG3%?`U>ZxcHx zwzm^9?oTf^>1W|7CKege&rABTAEP3KK5%<nmv|m2;Mn{n+-Uv#M|*YEwRYa6a5>Zh zU3@7(HjK%JUKT}M$29M`Y5=<EFY41{QSEw5&>2=s_n|5xpxyiJtNGc^tl4Yg&1o<~ z;BW$Cde=%$pF+m@uc+$aP|irKPAx{|Khj0QN)&bjom%{dM^C3SX*ChEuEzo_pxMF7 zn(xPBw)F+n!_Q<5l^3YT+Frx~d5;|R^~1to&zc*lxRyFYIz6{t`Etu95}=I2oUN(# zr%xBSydpSw50$&(P1CZYQy|C2+Ki1j55&!`M-!fA0Y0tDpfMr))e95%-{_F#)T zl?t%WsDy%_2#BYKp|QSL1Cz>Vi&@@QZ+ZJE$fmIS!q;{a%2$x_Q+g+8)41FZ{*}ww z{&J;Q_D7wRZ)w_Grm^gQWU_rQ5!JTA!y@u{>+K_{<rL5cAAC+Iu-kpK-1fGM?1hxl zqim1C%gD2jtxdHc(Wv;yFHo`PG-=Y1SLca2IO3<c?C;O&51KCDYGBjyDOTVLJq)ui zwhSNn8T+W;=p3GpQ@_6ZKa*1in$A}poBp#?&jZ8{Qi)=V2cTGZX<ScUx}siA);}vA zz;M|AjCUEe*9h}!dfzI$ZmpU?>}JUxg}4)Mgq~(i)xqn1Q988kmC<@hkEc|d+~1N% zBB^{JY0=4>IMV5wwoy5^tFG(XcSsM+3slT}jrP4ACYPoz(R|3aX&8}p`peY(Zx)WW zWtdEowiKJ=J}`;DjoPio>t8x^x{Gzj`L#En7ju9pgmKV?eND=bl`luH&(BD7y|onF zUs&!Fwz0Ew@^_}aJbgL8{cKZ}C=$Fhu=@}=#J^N(Wj2Qv0K{=dj}xg+j=txn;d$|~ zG^@SX%=)HpGKNlLDnPXcf?nu$G3Zk>sj*G1kAzmQ=6<FSqwV|_yqZlI`2yND2c(YO zz@D&L^W}g7gVs-0TY@oy(^@~)Y^(IRXs_l<q~}{~x0xU4??0juLvi~gk!q#zq%&ww zdWL?&2jprh%|3e89W7QxJbw#4U}C^PM-uRO$aoTpw4Tb^4^MH;y;42~ccM0DvGnCm zp7QTtDN6XeN1BE5Y~Kw1rMBb6?E+G<m)96b@@WhFVcY!lZX-!OT=J#ro!rZdj~0(R zBpT>7n&aLhbB7M~x6aoGJ2y2c^g8VOo2~im;k=$t(NXzsT|4$FU#L@!lMCTC>Gt;I zI>aG?lwk#o?zEO<_)IM`D>YGR$1$O}fm3dGsrk$l;;QBDI9b&mM_$^t_t%G%I+=U3 zrHrUWUc3T6VhSGndvn_uFwfH+DqMPqUVwdyP=hZHp1ySCvwzCf2PMDW@V%inl-vLv z*7T6Du$af!1C{X2v>0|7D~IRCuK7yHvbLsek-$$U(If7vyKDz!`8(T(+U=%Q2j9uc zqlZzmj5gg?tNT%Q_Q8*RRj7}y`w?zWLUcV<F`W+DMc-4n<DLXn*dFiYz=Oay^HU$* zc0K2m31E5cFoY*>(%uU#)Hk^ZF`z-^+1P%PkT~l@$+Kevsr|*pT{nf&73gn|yVAu= z)A>L$x3d*o(&Kd&pJua2rl`Wb5`8HBQ_KeD7hQyap(ZM&rfhk*|F=}j$J?81IkxJ* zy@s;#s4BjZ1h26<&6fhmG=3)5dD_?KiS=5i;btVxj~W}>wwl~1*LotTewDv}<R-D{ z&fjf@33vhg+SD}@NyXM|Md8U>;N*P%Q=7NT<tZb--XtWk;{K`Fmpk=OV_#L)#Wr#D zywY19N?I_12}6(!0Parycm8BXlk;9Auu0(+Ha<R`|Gbtl865kcTdj$@fY`xO40==k z7dsluwxzLeDqSSw-kRY2`j5@p@w1wa{xtUXiwinsOQYZ{Ig~>CT;t%n;K=+Z{asLQ z5_6X@6T@!){+cOKDYGVQjA>SdsESB=dR?rIa9r-?j%-StM%%$=*9-KQ_NF0PSzcN` zZ0z@9c9xfT^XoL}+w1Gp&EZK&w01hzCnvF%KXR=3LVZp~k@OVa<!p4f=58EFYt|bM z4RTsw!&J*uJNjmsSy*To7#<Q<jWLc_20UBGZ?)=-N^^2r{ad{Y&<_jKWRJ3}t=r_D zUp)B-(-{{dcP-A%_0tCB$;3xBYix#YGRyefGjmL#Y)75dnJh5P>D`n>$vHeXnGJ3J zjJzYiArD-`Md%?S8Q9QFX<uNXt3O(7cR1_?-SwrZ1*Vl&*W)GM5I0oT{G;X!@wGX! zMshlY*A}yuaf7&k$%5VN)**Kq{qH&(?<eq|FAf-JXSPM&)e2Tubzxk{78N^13_f~r ze40x*(vtO*cdUSJ(3Ct!-X|4w@zbYjMXBCm)MuK?V+aHJXqm&1>fIOZ*V$~8s?UMz z(}9`dd!M92JmbG}_BunY5g}B1PiHws`2+m()#Tj0$DU&DF@qKlP*+TuSu8O@Lh;IU zKx67w^z>tp5zdl3tV7Szum^c_cx3oSf!E`L6k6^&hIqL@Q>Y#|dx(d3)(1bvD^AI+ zveH+h;c)Ej_U>o%*SphA1mE(sW%pP&_-nZGKwsY^fik;wvgEk(v6|mKjUg#I6Z_n@ ztOH+qYc188^<?gnp~`4-S>6!Jz&9ipmzVA<BGW=>>_fnPUYb~(U0am!DvLv{R9ECE zi$=H~Crm+#fXyqFh3&k|W`EO1pg$_qfbQYpA+WY*DRkh-$izX|uJylKfXS|E|Aa<O zlIZ|rw1pBsrI=6tvLRcobeyY?ke`wSa1ng~bjNr#qO_)rD-{+=`ewvU_M<C}oG*E` z?ZaeshR6sfV9pcZ4P<=RjBQC8O8_7!zwGUyhk?(XL2j=9-}l$s7t|$SI9vu6zw{5- zsLV$sq3h$}C|3Y|T?$gsHh?5p3-PKRFRW0!hOQ9yQFXI}Aq9B?1J&^F0=RW{G_6Y$ z`YcM-r_3X$f)-{eI;LbB4lF|RR;z5|>^EiV3tg^Lf<fi2ZS0SKt9k_TUlEt^R6pjq zYOm*)MI7Bdp`c!(fhS;IYu9=iF3d1Kf9`+7;tJ)`tM*V6bV(v7_uk^kTGb3~ZA~*z zZmKy_fnqh8KMfOB<12^Zaz-*~H-$=TC(!V#x7(JYAL`I2Tgo!omoo^iq+op)nS5_Z zL`XO|gTFSh!4~UJy}DV<-Ts(<g;Eac_flP6*g!RY>m6#o@nn$&JAR2~GH=3|nO%m! zJzxoqYw+vD;aJhrXAz!WrqmM(ddkU_jDOwzOHR%EZh>MDNvI1yc{k8e>d>RbLg5#j zJG%pT<`>eSDDL!(!)h{Wtm<m(@P5hniBgX3<FV?cWn3Uln8&dX-as3NkP<CsWJ%#i zyfJt66Rr^k^>l4COl8WJvy1rdTxeAk0POlsHPEx8H_jDs5(a+^l%H>x`qN+&XS%fK z@>zSl-ZfHdiVBZ$ugXi!Qgyw*GA5jOCV@zq?cX`-m5`ug!r3AdaNhD8znAQ&Hk-OZ zEt=&Iy(w1A4A^{nG8p-t92Mnu)R`xnP;LM_R{z#Aprz#z!z+t+7);}fmvx^&paun% zEdjq514+i-Dq4!`I9XhXGG*9op?<A*iaOff?1Tiq041fy<*_kv0oTf^=ZWsUzWE`f z>){|)YlPbk4|{6z{A4ZqMghOhC3VH-`P6e_t9_xmQqW1Xo`vw~Nr7kUa(X`rx_qsl znC+32<*YcU$LC!IFD%Uy>&Akq6Gf-}I0)8TuXxCf$knt+v`Vjh>gh^pO~lhhG?}2s zy9<?J9Nc!*fS@203vq1GhNcfze8Pn;N>~bJiL{M}KA>kouCc3Hf7#PFJ2_<onf?^l zN)%t->V7kMS>U?ley*q~MK&W(KSQ>hWq>d%$MI``Zg->3`=UtA*RGA0s2vLJ|ME43 z?4{R~KhfJhC!(6iho_Uoavw6G>b^f%pKPg*(_uI}B;PGwJ<I%!dF1L;gMU4Qini=) zVeP{EcgHq0ne-;DvA1-WeS5b+!_G_aBzT|spy)^);@Jvq81;lj%6=-ruY2<(zoOk! z%)*$+X(QUq#YkJ}b-H+!)}++MR4W=m#Jzc9;2RRGhn0*QEB}<FpV}>t3A*r1dR5&( zaRRQ#QM3Il2@cD_toF;4x+xXrbRpRuTg<f}G{9iroQmr0qh^sG>WC3GgkRp<UegW8 z_74gQ!fD73>HNuqVzD~04g=5ZLjJWvKZ%14p~^uPO%ciaDe#Su_mwFfM`ks&Lum!2 zytSg`tu$_}BFa$UQs9ePV<JLR%s)AwQ=oqglCelgj4kN|1cZ|&DYr+G=W~_(f$i?x zR&yJm7@h}Mw%;emolRFmE}q5vZ|lB)CJGWWT)n}P2m9Vaz3LmW&{tR5+-sds@BHZ9 z#R4*2Jk0c&FLoA2fQe+CkAQQQ!NbY<jdf$&hx@77`}|6eDk(8)ZE9_qv9aKJ?oIIb zwkl>~X~IC7f1qR$Ex|yfWt{NJ9FLKl5IO`IO{OF6^NqQ%A1bEOBXyu>qgCnEC>r=C z^2uBI?neOf$Bz5_ow;Il$Vb)!XX3gi$2(m&w-+&}>{4U0zV{e!Ac}1VphE#g38(or zB+G<5CeY<`Z)#tjcmsM6Co|HpPeO`yU-$l$-rJG3U#taHobD|<mdG)HnC4}BzqN96 z@x3^H1O{2b^awL(cds|!-J4^l`cXejnc*>?@A5-&9X}Dg$ENy*=Iup!TD`gZ5^rsH zjGR?`=?-<OkI&Q9nNh%UTbrB}n+}Cq=&OA6qL}QzN_($y4kJDR%f90H0b#TH(OG`n zp1|E<%c2^JheEzkzVK2N=MFOq{~!8sY6>>!=wyCkYjtg7YDZqLGpU@f1BNoVBNFz@ z`<cphOBSz`=)qJj?L0mqv0jU!622$(Ten-;h2;xL1)F!tOcRPLpM{H$E~q^@=Jk%M z!4Ss>$`K=FG=@p;G{U8Tt!Otxb#mcC!<IB9S(_>7+QV%B<;b=xO8BRHo3nl)(^z`t zD$5Dv9M_RhS-JfQgU-rA=!sUca?zJlL7~gP7M91E1cvPyk}LzqiwUKgd^TsAhO&lV zN5__z9WZclaNdw*#IK4PV3cX*c*M!Km*+NsRBG%<z|C#@$p0RLY)UMiH*ZSZQYg1p z4gqL~k)(f0dlx;m{zZH(k9z-j#^hJ)I!}M9_ovL5(ccJ4?B0f{E6TFkvAvHqmEp9T zH^0t!nMfflH8L`IpV@-x>|s8in{|K)dPqY{r`7cs3bFJlT&nqB(c3NNyq5MT89bL7 z+|9ZZf4qME>mr&torkKP^)w}Zgtx}-e6}Mew#|8aXzZx!?1&vf<t5TW@h4s6oeMm5 zL*#)s{M*SyMzI#9SX7V6PM%l0BU`ebw_U(ygt5Zv-N#H1($ePpy9DVTJf{@RZizf3 zK6b0oVcLhGm#vd=LtFL7Pyq^#SnXEH$P|y0u|v^ZA$-+u=wt#ao>)_oU7%q8tVP}u zADNyJYrVA_H)B5s-UvBD1mT}>D}a_sv2!B8LEdgW(?H@hA{yuU?jppymA95ojb^MF zf9hqS^@jjK!(01+9BGg}`O^wFYO|Ql0}&F^)CT)IaoBvli%miEp;mS+ETP;JgTUi( zP5S@!^%g*J2F=>&MsN=hoK0{E1P{So7k78J;4TRkoZwEd#VuIy0KwfIg1hUY{|nza zf8BF#-8)59C{p{rvoqa2J>5?~O-_Ent=QjpPgy55dYTIV;jqdc)fb-tZ_#lPF%)ZT zTn1)US)ozaKr*Ld(^dU*&y^%_)NpUQl-KFY<3*|>HS=Q4Rk;}2UXA6b@(ha^|HZFh zLQ0_mIiNe2fu;SIibt#A+GIyOomTs>7MX~2rh|ViBsVvj^%xFx>k@6BeVCQ-e*<Vj zMWTSfKu=FAUV(zVdN&mcT$XhVNxt7eWf`ak3jkD~cUR{`*YMsmcgg{E52rt?LojmJ ze1B8^NQkYAgvHd(L#4Ui-Wv7Lt!(iC1YXTPVA%XDiJIQx+ge!jvKL=eWtXILzxmkj zwx19DC+D^4o@Ls%r$k-`L-Esg%P7rUe=}O|-U!oCC1(bakxdv1MPyAR#Uv$}8yaet z+m>Pp`!3aZcQijTUTjYV+Iem4MgR=|(3h6_K;h_yg(a@ZEMvZ`kce?Elcw6@oL+<# zzw4Col9(g{n8UIi=!0~+v0Qr}L_1j~GiPoMU>0v5xU!A=0d##Sx67GRycF(wB>d&! zJwp90vYis_+|;A)JZYg{?ej5u0*!9?5;|!yxBG5M_F%wqk>|~V0;JS6Qxd**BSgU6 zsGAlUmu3YBBH5ZIT!s&CgsY0X?;Yz5ANg!AHa<opU}RPh^KQA52}rzk&0MJV;sq*^ z8uJs<7dUsLJ}P}4n`?=v!g-@4q&GnuAS5r1H@LaeEti2b9{EdK{sn+2Dk?Pl7^54} z<a<;`0eQF+ox?^F4w6!6-c+FIcuCnSHs`Q{x(_>h7Zr$4NSMKE{{?_e+q77`N9DUa zK2e(WM`Yhx%m0{kH%&%8BWZ7_$M36&OG+wuf`lx64lC?FvPxL2w>JR7yk0~_TBJN4 z?QC>%aSKB=bC5$$ZMW;8VWZ=z5F8TJPzcfB<Wjqf#jpj0`~19hx1Zf~J=#)*{_Om3 zVO6J*;MRV=?xlQ=2qOQ80^9y>0BseQ%g$ug@UZV8KSkrz+??grC7NxgcH##KBEJ=& zxB$q@7|aRkEfI1Q^p9)R9>pAJ*4g*Vvcn%M>s-D@RB0`pl59qhThuHD140K}lqsRP zK4?rMf}e0fJ$!fYA`YLjcNeAG!b!;h^XbI{E?okBDj(5Txccai;Rfd}$NyW|jkCag zILO4ZYM;etzeftUKR=Ip5GR|^hO#4?MN(^hbdB1?b>SBSLy&Tg2kz1!87D=x>HXUX zEwA}9rMeDrx$mE#(1erL$bS~0{Jhxg7)S<>+e!F^`6JWQcs}v1k3Z9rrUvI-TaQNV zfaJCjHAIc=QAX8xUNYKHDiu1+L4m87-Sr#ID)DTzj7H7tWfPF3RV+!QRcTap&O#Xb zrD8?vQ)u4b*{|B@>2~T=o}sg0dj<f7(i<^y-};=NbNQaI$f4Z3&3VPTpzkEriQb=a zA}<1f;2O2%Hk|#qd8#DQz;t9JqZ1OIySnV;vBM?lR8#?CG?leQYEhkWvOv-dT}1;? z<iVC6FHh!4iREhRu5p~s#L^U?zCwBw%aYDJnvYruJ;PB3O}VF98)<KE=aJc11*!WZ zuhbTa*4fmsf4&Tw%+zIi_b+Jx<rEOPm|A;?vpL%bL#}W}$>0P4Q##FxR)uUA*B0`b zUpvGi(#brNB`ub6-`nj(eh*)$(0K3)1&|y(&QvykN$q_<Fi%>Min4r=2f%;15)5*6 za*sNJOwLwerV%724Jdl8_R^Oj0bH=vJbJrj$!_-YN7vhXgwHS9%Xn|t&F5+_>XwI7 z>eQRk_-H(x_Q)V@ZjWt7PzCqAb=e)ZCZ&j}c7TES<5455?)Xb*6sz?hz>M{CwcfN- zh}0T7cCr^>Ayj^nc0bWiY8i*PLVf|DX9JJ$Uxt3q<Z+HP40h_uh5j{-k+#~JTJDdN zB~eJ=o1!J{O?+&zCwkNf=Qux{jG*4W9h)FHTNUjfAD<2(@!dC>%k}wj=P@ClK+sn= z9JG80NUVVE+r+pVVL2slY#@ZGqYT?IPO$Yl?bk+rg6y<zPT(UkDFxL6jU+46M#92u zRz5FB8O`>L{Lvo_74`C{1vq!@W6e&NMev-RE!11lmrZw0mvd9dr)_4)stvF9FL~wU zC#1FyFXxX^fo|Y`8=G)tl*tcCR^#~Ei2@Cbebttl_gs1G_b!_O?>5Z0Tqf(c9yP@G zdb=06$}RBnadFZR%L?KO(W8R9BKm7%-=z|~FR8IVLzgQrhu_FipKwj*{+<ZI=Z-N6 zh^%*7vG#FSlGd&RBiuROq)jj-wfH>XSj^O0fqiFw>ZaQ+yC!(Dd60`mrhho35Z{Ve zLiZ8y^lXI65T0xRioZ7{$^Bl*Y%tM-fv9eu$LAEaxgO^$4Ow}y;S?GPj~_Lk_vPVO z=`eyTMj_e*ms{K%y}Kq)MiJo=pY#F6kGJnoQBe4u)}{N|y>l5fYg2}uk~DZ5T(NZ9 z<H}QM@9$qh2Q~kU+i2CTk_<T<r=2y4q*?uUEC5B9{64x`2WdV<<B{E=Ij}N$zeq#J z$GOVYVAg#1F92DE4#~<<TJ8TOP_94Om{onzH(Bc}E!{s+zd-ZA?0%ztGAaF;fZu&H z-4lc6&6kz2coq{WI)0o$Oq%FF<3t=bi4g;%D8#_ks$5{3<?tBbe(na0v_bYB6DNg; z7bYcK-&zh{vtkCL>O_rC^W09b)UBV}`L)IBG&W<IPOE5vfCR*2`q-sZ3z-0)*S09C zJhK9=+12SXiD$W1I?PAmz4ygtG0d=V2}+lepB_eYcP%fcOIv@=>ofjGG+uihwQw=Z zqxi_O#$>i<veRAAqfWNLFR;fo(s$S7RgIJgz17}Ch)V&E()S6yiLID20y?ZaGABmG z-@56VigM!13dPDr?|Amd>R&ygy}<P{KsJc5nr-UMJ+a8Se{|kf@8?LTMTLNWr?))X zk5zw`?Co{Qc1LEH5EqjCF)(&ypycaXy!r4<F(&^9)(Kq-#AUVz*bin!w*`A9VgtF~ zC5#T@wYnPBzv6PW!p}Tn;NVc5AGZcBGMid@SE+WbH_k9S@6A4&im9SiThXndwDx)W za-G(C=i9?fgv+e+c6Zh}=iRp?B*LZ1K-B?ckU5@S1ra6exA)aU&iP3W0N%U02RtNU z@2gfjAfYOaWQlqYy}w#)aDl#M1IVcE)@SqRrvvh_ySqa1=%oaumH=#1{@07WN&AYr zobw6E)|Axb$zrWy&*`BFHeu<6a!uEV_EsS3UQ=7!0!-rx<7Edq6@Ca=tKu@rDVD~v zB!vE5w{QefaMQW=_m?q(0FZ;CXZJ>jdMPY0rM1;!IZ$&qtPwXSY`lMO95{(}n|;Wa zu8%8Y<3(-ELY0d(-3NN!(@&S=JBf&__vldrD3n5#oRliZmG3<TQQ&6Vg(imTa|L{d zlW)nP=q84S#F&^f=c$o6A|*OiH{#`Ti4V<v-Re1tRUWXHTB#owIo}SYk3RS=7S{AH z-jk;fL>|m5a;}`2Wfo7{A$yzC;7mi7jDt0%ffSV8a`U728V6MfLiNtE@J<XRo$3ei zt;ccdqo+g?b*#__{;MN~CAA3G%yu63BDEE7Lg=vW_332l?j#)oe4xA*Q>Oy}VnCL; zE6QQLGa4@Qyvn;||LnBR$;-}5+w2Nn;3wsN!1xFU&^vg0UR}qWrEzXesP@mZ0fmX` zZxQ3a1jU+|DgYH|b!fUv-Um$f|4MCpEnBPaewcjp=xr_47C9I?FDhL0T8-1t`c#(n zteGYzCZ9dKax1YFh2KrAE<=T<r<U11?yjDm!}_g0*&-`67__2RR1W=~pIXpRBIWUd zh=y3+!iA|FE_wP%DOF}O0=R6uWnWC!SDI{gL4o!43;xDMn^~cW)HDtJ<~`=fibE+J zZ9t1rm%G9(49`mv<Ls9zGrc>L#h>sVnuVOn`RB$&s{+B1!1jeiDL^({X9|!G=Dmft z0KdlUak0tqWVslJx}vgjQ#dFxlg;t?PYb)1GSCQqMy|QxV6G}NZ|Lp@y5`EORco&K z>-YR3LX_>DYwD6Yazf8#|NclBd#73fDb(th*6<4eyApYo;&HkUtJ$k_TiPZmS1P6& zCyq$eF7@$dVP#q5ckr%)@xK=H+QG85v8><CPyR4Jx`h%C*APn6>~YWqe_^Rst{S*; zp0CRR_-E?sNyDk^fh}$$?fJvHUi0<hK;Ei9ffg4N{~Q3mw*L+AN4QYgSk>Tk<%-{n z9+3}i1!_gDd%tNwP<#j`qICa(8<nI_%<RAhA_#pezd9Y!!JmEBHc6mxmUxnd8n0C5 z0}Fp6JU1f1fgtsUob)33Fbn=b`oSSKbt$F^i@*Uoc{L?#if_~kvZs)pc85PfSd&^_ z>-Yk61W+gxVg*DsFVSyHckaMV-<n`CU?Q*SB1Q59>;|X9FBdnyfP-vMxF%PYqiSK< zkT*5SK%|NR=KVp)jQ!>fkbIT!U2Wc-D60ex{F9h69WK%CzXMvo(=;(@@H>nY3=<OG z5>1!le9Yn?x5NOTVDx!~&9{KB;RTyf5QhEJVa=C8MTz=(jT{U4EbP0wSop&Aps4d= z&(v9dDss7YBX-v9_L`K_YhYm^90Bo3-Lw5L;XnnG;gVFz+$T|Ku(Rzu5iwDPZ*xDT z<3GsCEPWs+4?=%RaL*0Ec*vw@bNFWmi&P7%VOQ}|Hxw7J%5J^j$g$5^P=OolazZ|1 z%$mipM0qx+@dn(95BOL>cNCzjgxapTv*qMWlMnkideL@w1i|6zDv$TnH;NE7yCo^- z!S^^c_uhkwo|0cQe|9y>LFGurvux)w=5}Zh+tx4x`fzkiQ4&jxlf}Dp|4`UP=c%d{ z&h~Go&ovm-a7v_+Z}Cu3G3bh_za2SLF55}Zmhe}lHyEpxssfynba!(&U-MkM-z|?q z29Y!SBBE}a6DLn)gXeku(*=?#;$BtxFO_p0yDyiPTIf|DW${=iBZRIDpRRifrP+O1 zG+eTYPf$}go~V?IJP%do-u`4xTV()*ibF!7#EuboPvao@{x#L-yz`^D5F;7^i4cp} z?jUiI<0zilm!e<GI#Em&i51kxif^yPA0L9R>|4L=^aY*|(`IZH#&#?I@dvL11)o4t zA^!_v9(5!M>~IlbX)=i{2LZ!(M-hT6``E%iHXH5n6-RZU%5m*j0sGrG;R284T1Sl7 zO6yT#gI}K_M)Z3Jfg&W)gV2%beDwZXYKpvz2ki+XsrU2<3D~A`nNE*w<gOTUMZd(N zQg4QrZ)uy-t1>-i1)ATS*fdV@wLF9+mO?@JIx9RCbU(w)Mw<v$!3#8k;HfiHITB_n z=Mn`v4TcnU+cOyyC>$#^{G(FQ`q1L-wLqJxDfE2FIV+{ordT+5{IvY!R#FC6l3gMY zzY_!N-D`lgX$|Pc2hZY^tV?^A4HW(p<)JatSwdqQ9{a#6%_SX}IVs&lm^nE$ET%t_ zngb6Cks4`ewyoDD8b_~+J*+nHM(DDkZ<m(8X<h-7Zx6Q4cG+4BzH&L5(@1&~l{3}b zyC#0L)S^(kCXoqlJesYnv`tR|nn15^Osvo4XeAmUTp?D`Ao-B6$7%A=(oohBg@%MM zi`u>&NTz~hbt~YG0Ov`56nI3Ucm#m#M3L}Tt1GC@66pN`^h2}8nvXr<b3f6y@a!U| zF<b4=yg=5}t2YfM4fyt{g?^gL1#nfa<+eNzba{%Mr(v7JcUHry8{}`fxaKl>?JJy% zH&+7zl$sLN1DD5N{n>+5Hrp@zBc!3iXN*)YJ)D8E=*1eNSIzy9)a`@$N_U%@qIeTE zT-tpR!N_J`>xA2wNw=#V4fLZ&VV<xzI>pP*H!kyC?50r5$Z5IwF#y-EFd~HSnLxk3 zEif1dVBum8gi`Le(&{Xv(rGS^{f&hwAzjrZ)djcfF_E1`Z%dD-3oi1~L#v2|;)NT} zEr2$lI-R$*rgCrve=GFh_vcy!@om-Q0kmqm)|5;-TS8%p*acmjL6KK3ofs7o9gyNU z9%&)r$Jj1iM@%kqH;0uS>=At`8b*-9&3Rel0c!_ps?UDtbk3U3H*Boja~Iz0HKj31 z6bS%jZj;A*=)6vEWQk{`^HMEed2r{_sXSNv`sRR&I9~x3`Hy=uw%rNNp<UFu#~sVT zS7Y;<oZfdfg5zCiR|j)KjjR!4fT-7&%UwuM^YEBr$Irfr6y17cI_ZW_*Fev5h1JD} zp`j|i`V16*%cUlBY&rr?q(!_3<u^$m#R}IgszMC_StrFl0A%4*!qFYhXQ}U!^!viy zSDB^Rzh@f)^?|;Z>se+Pw%R<7`zr_i^BnhLa)XM#atTveBeE<E)$k@Y5~iGJS(<et zcYBo+J+P+>{t>}8;S8ZhVlB<oNLE8-*?XXpNzCgFHoGqu?NJxCo~(d`)0bkXz0(OC zJiKC#z-achGlVb{&*#h4@#P6SGY51;!oJS12=#tzZ|iaQVjdtUvIHne7!55`CTGKW z`G7LFOMr;yXAUm?W|28Q7enul*y!l!>xT}6a=AjC`)zj}?X;bDPBcrz$+)AV%zzJ> zleo6FCtm6{fqwv$<1Wa|vM(1O{nM&DQZVeAIJv()&lV9eUhh}4YwsY})((w}M*UWF zCu!jcm<cdg4<Jqh>i1|k^Cy`pOhzw+37`ogT$MQ1^m=9C)+IuW>`UGr{kp9_R;H$^ zzXDR>^S|G2Cu<^a9~7%+rCB2is@A4E%E=7_bYcL11nNhB)T}oN^k(#b{QUkz>1Mus z`Hh%le@7^0*EW^*1PKWP%y)8m0eDum)l9BVPCpUrnpedxOQw0G+&sLqvkBk6T~Y37 z8!Rn2T~Q<_BU|K$CQu=G-U1gHsZRca3=AZ+s$bR7H(8QE-6a44H!qK&43&oSh|j^3 z0E4p(43x)q;)__~tV|U$nwy&B9crk%`7f%an%}fhjLUkud5pFKsq>#vJ=)jB!wmB- zB)mR!JUnT11^110-=z_n%RbpH*X>P2T$OQq=&McA#jBgrfDz;PAVBBvI2=hz&wLUM zanq17VF{ZUvSyCJM<T)$uFT@p)F*1P9tsQ$3}`wAR=?mzUV@ul1Aw@HN1e21;lT91 z0ReV>LQZLIJvJ8>=L(K%DOF|=C|I{;>-daF&_4!Gpm>i6co=~|uhyDGTv|nny#o^v zEXbOb7bKo30x<kdAZr)McQN;)jwXWm`T3RG|72~BlIl9p8gHzx|7Cljm-)^Yh%q$F z1cSE?O=Gg~Od$jxo#0v=F1kwGrTILdvf4Vekizk945peMv_&LQ#opk;Q;k<j7{!60 z_tFsv;uKU=@?8+fuN!}W#*N1Osg*4aA{)`W@W{x^t1EyKj_H#e5JLt!HMqZ)Jpg4v zeO?yd*fSwysp1n6jjKqwwgU}TTw{RGzALCTCM3*@mgIX0FgzK*(sf{;SpbO9V8Xp` zIz1m}4x$!sX}zzvL)NI}@LU{N*w_Hw*ziAQ?bTl^PWY%#nAaCf+bRiBu;C#tw18_R z7CLzdH6>$X8p#K}$Nlp9KSY@V^VjPr@H^OA#<rJjs5$;0syw$Wll<lB2PlQ>Bz@>o zfeK}T%7B1?o*oIQq~6pSMczAkWu);o0+9Jv4k>_fO0b35YVPlo8M9Xc+%jH(FU0eR zl!T;Xda6)mZKjPEsDLm{$*Cku&W_(<Lq%0=gfkmH{{z?oAT9GpR8+Kb0tpc<smo$3 zk`^HgScvVtz0{;6`CKjviob1bUtfTXmR%3k0hqs(a=B*mi`*QKm<M)tb`{4ZeRqIs z&5e?nkT6v0x1aD}4&~g0{RF@T^`9C6nkU{RnB+8LIuLohJ=(CcTk>`T5@X8BPO~g| zeen!BE!N2?>_sNt9Okq_Ki2tUWF$v7d960Nv37TMc6N8EC@DL;yNyr{o+mp(+OQ)b zD+?vU<jeD(YQ(UNmOb3l{|?HkRaaM+N5O+DE-fkfLWKH<V*HrNuYA;u<48`xnQENo zKVla2`!{EtwjV043*AJqxEdvqIbC>uA%+snDAcqftmst&kc033D-s+WJU>6r`us-F z0U`>DQQ@a|Vsy6UVgrnLU9gFvH$nK5Zvm<wzIKd9-j9I7Afuz3#+-~?M|rRT<Z^zO z$A*DV^m*nF9c;Xt`Aag;h34%CZ8fz|EG%zwe4p9>{1O1hPjOMvQHGEoKhkDrt33Q; zTjB9G0LnKqfCjR`1E5n}U0nrg&%7dbyMPdU5jFb~Qiw1m>QA)FH#GI2`T#;Ol<>O7 z$`rlLE`LYQ$Ov2NH5?oOk$)Nt|LTaSsG#jO5>zfjr|F7^d+JHd09}`an%eZjLfRXE zkgK=17Zn5=Qz*s9#Qa0i1}b7m25yN=yjXMwpa=;mscbv;4_Z&+^}?8jh!4V=d&A3g zBqFf_;d@8-{0={OKy*4gJArMoaP}JY0(yfVWWQy6^~ygW;I*%>FObpL0RSUF5ilAW znmdJnv>PQvP9(kp3iWtNQ&E7appgAiv@;arbrIzgI~Q4mZ_=)W1cQMF74hrz|I!Vj zg5Ga(E&7Ir?TO}>x?*lgDAex;kby4}#)!ww{nS?+SegOoE6|@&1Q%^>;>n2G+FD3z z!5e7)zk6JO>GO%b&O7$U-CMcDmU;6F6lUQ26bJz}1O8Bx^-dvT`}&t$-u7%ncsNam zkRA|2c^VNvwNM*If6k)`3k%m1^(^Ij)x7H<Dk!<&?y3193cOv`TpZY>Cw@kN(4A;9 z07x|OfTGdXvPM6>0yq>k@CXQ!)1T?7;(lghk&vXvlS#Tli<Z-h9Kfk7RPBNT0|PXJ z#W=tc0VCR^X~)l&ZD3%mOSSiyQ7oQ_Y*N@GxuHYxT>JAIK@mSDZa^dF0gAp}9(90& z2w-pgnaveFoFGy|HW~3j3m+dJxZVTb{*@mj`&&ojtvs-@oxk9KuS%1BfT5&vBpq){ zb#zr<D1Cl@E+eDVO#{&FMTUg@N2@>@0(H1v$L~YY0i9#+{6vmi=z<V8{49(ER6saE zRaG_a_~Js891ny8QNC3mkw7ZKC{#6`l_&_fzq<p7DUFeF3FtUKh(B|@A^tk*V2c&r zF5nv}$jW-3iT8JTng9KJz>I*_Un59Ax26_QZMSvu6{*98uq@YSgW1fOeizXF;%G6q z4FVZlGRFd1etCJ>rLO_xjpdugYrvCVn^=rz(E;rulm{3|<J0J32*HOz%gy<@x$o`( zI*HGDp;n)t$W{HyB1x4{9xo^sRS{bSC*riZO@4O07f32Cp-3{W_^@<@3;Ox)Ct(yu z5S6n3=a)}pkWU<{bc7#cq-@<L8wrLgu(Ph;gCD7BX?p=yUM{W_VCKf<Uk5z^io_l` zRHupLPhV}xwpGbKe@?cgzy1K97ULOxP6<Jivi))DM1l39ecu!qW@h5kN<avpwUxiK z4j_ko5Uoke%mh!mDIX~uB$D$+|NR@!WD?#Y#srEM6eXWd&;}^NUP?4$D52f0s-%iW z{4z5z=)J{KtcR)r?7N^}3c<UjnyS`4Abij|g*OTB{lL{bR5Y}Wh*$7IK~7p(i%UKl zEew5w=~!6r23`Q=M8GcJ+}z-7081$=B?ZVT3~SO(xxe%8-|d|pg{NihhXa&SBRd=h z@M}_0v4AkMgn+5I{%0yQS6)fGJ$vtyMqipBWK}2E*Z(l4>I4|_0v=z0-la0^Fi*-a z`vHWGL(F6B0~42bSAjV1AdAy8GXn#V-M7N9Lx-vU`a)Vv|1bwG07irAAmre{vIsv8 z%SVaCz*hcQ#slhEE(irw2?YZqKg!0kuezpY&_;!LgNc)qlaG%S*lq!B2f%z3uJ7({ zmVske_OREf3E(@F0VY+4G}KHX*iH4KGe8H<8@f;R%QGY~w*u#eGcp0fQdC}UXJiz+ z)|>#$6~Hkb|MXp4SV)@MZ-ia-2ICzy`JR8-ApitsF2BR++{ua38-exHZ*yg3oEjux zDaO)&gcQ=UYi~1|jJAb$<HfrMUrg%Ko<_xvGUI^dH&l|dFYPhk4Hy7K99URbl9G}W zAn^$8goFh1t(Sg05h-_WR#f2E3+?Ug6BBV8ss#Zrp3a{Ae4dJYj~@e4eoWr1d5wEL zS_MwNg>VG$h{?G*#>OJA^<=MLE-o(hxwlW`x+T_6MAZU^ctB5k-)%VyOJpWix%AOA zNyCVC4&XzRJA4If0tJRjuU`iIL|uee+U5r6f)5{eRsk~zr2<tuz7WU|t|4GIQS_%O z9~>AQ%xi#c$rc1;`3d*J_0T%xxLV>!9>5`vM@Ad?MO*yDey{h22wV8-&MO|EoB@ar zzrGOjc?EDNJiAf<-n@B3!-kKI-9cf%L~dw3VE3bX$vZl4sh9@sh*{;G03tySmEZU8 z-)VYBxC(iVDIqd4?i9qJchgb;cXMPUba)3a*Gt*rGRYH)ne$>)%78-SumPvpXIbL+ z{Zc=a4Tu#k5C~Puv9mm02r+*C3=qO`37(GYQ|-t|1g3;?aN)cJY|zu9;6QNdR_i2A z+DpIwz*;;Bdu2d~foWQF`>ucPUpAfXPqNpDXGoS?q47Vj0+(5VilXuR3gFZ$d(G~K z^vo$Of~yRWCtm9<rAQ(rJYbU=g*0gi0({nY2$Xn~cn-Ms2J63cDXK`{8Eb$|;w)Ii zB!<PQDH7TPkdWHRxZW$5(drgZx1q4(x&T51BYdKzgb^*`9CMSeFouwQ0~!+qw{yV5 z2T?((oDlwqxT4LDdq<ntcqzO_6qHeB+AhtC5qJzmc?A+E6B=|BD{Nhsyw~ydAzZ)! z$iD5KPWZ2wr2U3JCM^Aqix-{O8I-@^!0oYOk>{!?M`J5dQczJ8aBBbOC|-Z%WR_cQ z7k!iYH7im?6(~iZ%SbeEViKLr!T}2ddO9Z{3h+Ri;jre<8=hc9xC185n0#gWrv2m9 z#l;1nU>ZKbQuwEAaoTa(Jt}`iW3Ijo0%Dr}LMQ<y8vxM_m!E-*&9ksWl48<sz_9@s z$$e)ZUOpXO0*rsjwF+MqY;SL$J}Mq1o$o|SB6`q<ptCSIgGKzFD)NExOK>VjdzKmd z{kTWCJe>edv+B)1TCUTm9CCJ+qEmkwcdqo0R&m54;wQ`-JP@sHax*=W&c=dTdFqaX zaaCrO@=r3IdMckIm4yLQ5Au6c<dxa`FcKDX#L9vosnA5X7DzjWqI5lmDr|B}+BYnz z$#wAOR5kCYV4b!lS1C7Bwn-yY3Zb{FO_UvrWFTndr&!sSf!XJ&0R=~>ix^=>0e35E zJ8{*~$!_t6v=9aV$W?Z)nu!xwM1zy5u>+%I-uF*$GsJfhA(Mf6aNMoc;NB*eEJ@0a z1olEPgqpR$A~xNhtTezQ3uKkr_#=q5n}5GkqGzMw`<vLK5qd|m(Y@QEnSG9;9-6Y3 zo5?JyVX9btXZy|J|8|OrJ%wNhK`(&iJ`u=)2yQi5?~2oC6y}28_gDDlW;6Opd1A9{ zc)w8DwJONz)76_QT4<GjIQ)JF98Us_37zV3r_31ZB-(@Df9}&wdZMw!3;9DdmfPY! z$`u{7_|p-K`z#A4C_vb}Lr%L{Jo9L{Q^q=I_@J6Z#uDUTRsQQb0&-BaMZ{#uV{ZQ_ z-oqqteeo6NFD5(32u*D0N^b-fltio(KkGc!2RCToA16UDQoPMi@<+tJU{aM|QYV+m zC<H#UAFL`nP|+iM$etDh(#VUbLImUK`0{g%K_wIg+M`#dm?#L<HIGL6(Oo`8x2(`> zkKg~dCmUkH6H^JnVC>5!b4MPkxAv2V!9n{bgWo^lhk@}<P2MJHQ2VRxt?1VR)UK<6 zfATE;zI0qjdgV8}l7R+1&NGRZFX70)LwmdvP~{#He+W4%ws;hnvr>vjYtYywmU}>0 z3KIxBHR3Hlj9WL!7Y}+pJy)uL5AWAEyAR3VQCKF0{E-vr_t=wGvT{AvnB%$8e|-$Y zCDk4+`rz9g3nm%ZI34+<_1|q>dL(B@{N>|qSa^bfY*ak4M5k=P2b6n6+$i><9G-cC zi-U0m&V_<?KdDBJUE`VfXp@mt`5}8JmN}iy8Y$Na1*?xH)pHk5IwHVWvnDB(!%b_s zAFtrbR=BJ$St^B9E^i|*b0O>xd8o*ym5MAU&mYcIwpB`k0NCxw9Lr_FPLz0l)eM`! zUwkbEq4Vaqh^V~()qdfWi_*KF#Sybh84)`)Q#sxYV)I2p!EyP++5u6_mekSPg5QsN z@ac~M)sbU0?MnT;g#Ft#H<m={)oX~-EdjhLoIh7d1Ns_KrGPf5hn*~r&4pt;!S9~; zRJJO;mj$`H02{{`63-cXI`R%1<EqeQfOc*B-!y@Iwd&y;+#LTosG<`S>n+_<l1aMQ zOV5;Vq=1Qh8lNSVvRG<vW4)UR`mf({u}HIUNhMH|8~^e?jk_X`OCgcJ@Co>J+h<#T zHrWSpr8Fks-<j?o4}KZnr~z%jE&3f{sTNiwLp1va^~r(0mNIQ;D!SWda2(}Rsg+dt zEeJ0hQZ!~2U5HPp%v4g4#^)uKsjTZHKh#11<d+<((mM+ga2anr^l)ER5+ZR~(g_s& zSOX5P=gCFK{-PF0O14qv{MICqdYaQ?TQK`oELnM5)`LjlCu4s{#INx7fFfeSnyq+^ zhl?sp3f-hx2G&+@#+!IH;0ZYRbWtwRy#iso^Ja`>G&ilGS%U1V-#+Aw=u<_$i<kXT z)woX}&oGjd*Cq-C^jM$;)8tAO%>B`GB)pS;|5w(jX^B55AC6?x9n$L|#}b?<9)ADH zMZl*Mn)Y2qtRn*2vnU`QSA(h-xqxPj(T{_HoWh}MIhT!7Ki^Lh6jz8jti*L_4nJ>J zokMj?{$!{NNbh2^T_BXPuN0*0(hST5DR1dC%M7a_5AcMc=srIb%wr2NN#ghtke!sn z<_cTweDae?1Ar=aC$PSmS-%6qy7=e+{~wzz>MGtkoDFd$UPKKlZY)I~MU4H;{r`>y z#Kdl7f_Dz>L!+Q>lBTy<&~&gCk^8)H8DQVce=AVU+bD>8`2UNR*EBXVDqVjUnvqWH z-JiRJ_@2@g&!9MZgefC)K-WzQJp(r@4xC^J5KKD+k1%oZ56lt5eqj91hM8qQH>j(! zNFKa9=H@i3f>o;3q~KHYa=pQ^>*Bq!MWip|4&1ue;V%_i`f@7-5xw<HXaSE&5kaA} zPOr-wL5an_dcp>FWyY<gB}zoE*>0TkwMYbkb(c@#3eV|KxgI=_K^k!9)4jA5X_5?3 zQUfelcb0vWSI0dVr~Y^E`2XiW?lk<#p}&ojz!8v-`5u1JThyYzlx2M;kTF?IUPZ7# zomkrcMPs(SvN5Ko7Q1%-BAbq%)sDLTJ(AWM^9><g8n_Vuz0zm0f;$E!?{kF=aQgY4 zcuy3(kxw$OGEI7>@}t?2ZWVEN1e;&buG_0c-rMD@VjdzUo%p_BiWq&+Yp~Sftx*@{ zR{@DazTnk-(8pve7jAjEWRJcHC1?iAMO<M%gx93*;_hNvZ&Z>6FI>UniaO#}V#{_2 zBXLWw4<&J|?f0HqlO%#~^Zl(j>SHsnudNiq@}o{;mH9$I*z_4}kB<nPys>K4>RoYn zRA?0TV&&p?Xrue|s?GX#lPhx>!FRak;npIGL2S7Qc2?X=`my}gf4z5?R_T9FWtX6S z9`}sgCUm0Qgqo$je|0F$mt(w%go$Ur__N0Fk)ZIxK{brS^f%EX7U9y+F%xWpykq{= zc(C>ofJbV~^O|skovfM0&(^Fyw71=+<%n-~`J(<Ny<lJ8D_oJgm>wQxV(n1pyDWZG z*X84TyLElE7sa1h7v^F5ycGX6CEenTKBdU0vxsE^^;XJ+)jz54fpzg+N&wsC2ZkUr zjp}jYbop+4QyTrZRZw?)-kN!_-rj_N5Y82jfDwWO*6Z223R~Txjz@<^G2GY7-FhF3 zcW$}MmNSU?K0LHyFk~Vq{=dHZf3HTZGjENI+J;Ai6Q-Cl2bS0!@0H_zh|g~r(iWK3 zj?LqCIMa^*o6qtu3zwn5W-)RFMM%w?B|UEU5^Cu3qx8U|jwLwL?UIl7?&6aCX89t{ zl}u)Ep~H;V9{qo>_y-L+EgDWPOZ+Gw{4@Ds%JB`3lk4`Qt}f;!CSKFu8RfdeTU9&% z1_vB>^aoxCus+_=olg(fd2G%j0Ds=SY%9)eRa{2E<L7TC>)N|2f4toy)(Qu#PK9pb zHf8!F!{+x&o(_|93Bxj&f(n6w$f{3(YpO3_WIcbA738{N`?@PYArnW;N}ZG0+9|@s za3DOWm~fF*6yzt0W-zcy+kc<dvEJ6}Y$e<#vGwgJYGLaeGd3FIFe_}>pdq)W*?$@# zCyq*Nr<DHDbMyE;_I~G>pNj7}oi`By+|!|xU$IsCkHu;u6%h=E46u_X)xXyh7Q<ib zYROY=HxEUkjw1Yovl-K_j*5~)E2T~9o_ybZejSi84cz!02xUvmvJ(wXeZ^#yW53_` z4WlQ&8fWkyB}Egfwf_R`wX@;kR66+kGl@kO!3ZXY8Ri0XKIK+9uSa+fyt;hnVe?&L zJrS}lV;FBpY&RbdXA9UMoRJJ-7Er}J$<#t=V2}X|EK3w*#Q5~FX^*O@9;DFJy)wP+ zK){ON!;707`6omR--j=;0jDNStefRM87O)h^C3b8jzQSHa?Y9x?;#$cTHJp$1$~I| z(}(G|KkB*H&Sz?!zBuId;EZe-ov%9q_a#tTdj?6s4s$)hrsol|Bc+`f{)Kk{^LT;U zHn|s%v1Rw@0($0n?}Cn^8*4>T7L&)FiJH#<6}n!FR25J5S}+)Ned!>$D1Up`w^R~u z|L;DD!J(}&E16ezE2phsmjtpASGw~rMGK>g@xZ^AS(59?58+%gOkM2QmO!=LC5M#x zx=ZZXLesY&Q`6oj<dh8evtTa<xJHEAJr-EfG|ApR96^WLY3fj^*qktBUC0<^Q9w*~ z>iov{JL2Ws!|}E@oU9$jPKif^kT?ZW)*tBTJCan;gGp}udPup;(2?}hdjFw4x5?gh zAZq`<A#dl!+CDZQeuX8bLceks)~D>2o;^aIWI+=i*s4rbH84EI>A*`801{ZrsFzJ7 zLL0&$O@N2+aw5YSaflE@&1m@4_p6J|iNnXw(Yq$Xq+ZwkP#^%6=lKH;n_rE?{TGW* zgZ6o<P1@j<fh^}M@(*tKT=P<#kJ&8gk<&;hyx)?8+SRY6(N2!%56)!}&d6ierjO5T zK>sLimdwBS7%Q>i_cQo2XY$!5qE8jbB2-z9wK2A|5tN_{0WVORsrRpNP`8bNfDOt* zm|Tv?!=b9}J(HiAw-lKJGuqo5ToLMg3Z{H<oL|2LZB@?OW}k^qc7Ao0i$K@0oVMzP z%b_KN;IQ%z-}=+Lyyd-{@(+uhK$qU-NqxGN{X<1ZLOdf6yA6_kZBfZZp2po|B!(YF zIcyg2NjR3kVB&AU_-$lYU(&H{OFXzjhL!&-Ab52aTT^|#u{Pfnz-WvIRD`|eOk|!) z9gwwu(4BvGcgev}bh+07-s5dWKM)3}fYb|!Gga4J66if86QFlyoPuby$Jahn6wj1> z*%fdmr(?J?IT;jqW+fw|%-oXl2Lr?z#qhFoG|f4+ZWvu6_?to|idZfOPDBI|f>HTW z+jnw1-X!92t5S|bLBL)6^DC$k!Pbej{bV5L7ONKGoa}LYN#$$vi7L%^*F(pIjH;<w z=HIpJT$n3yTAE|^`Co?(i{c60PE4AYAouwVN_KkFVO>U`C345hkd}s_oqwET{h!dO zE}D+?bI03iV!h>_#aPyC7`?qfgVC9_eJVoCNC#|CGGoh@;7S}(WZSN;X}+%L=2Dx_ zq#$NcTP+<W2?7n7Q;8LEPZl0hr!MHXa%#QD30IE$E#K8=USXg$s_v7A5w!(QU(&Ab zFGaxHDkQ0$=fP%0dD566)2&;qOJqbNXEAkLOtI-^F{AEqrWC{W;O>3{gDYz{m%O3z zmmsIwxbkW{5rt1B_{d^Pt@;zys9jk*`njG6({_w=(dc5+e#Zk>Bu%LrPj2lO4sL`1 ztVNdga(CGYar`}__L&c~ANV|b!Q8$k<{n;4j26qPYP=x7BlEM^Sm+`xwNPQDL+U^C z+N^79icFg!IHOc^Kmtj^z2^}!Dc?C^00IhXfHll6MWc96EruW4b`Fc1+DdY^nCL_D z^rj8gPLD8rTmAn{lYc^h#5vK5dMD1N;-O=?)={MKxZLgkJ!%$TLvb8pQ1H}`AYqXJ z`5_JNNV8ytYp4F(o_)_ubul5f^G^uX{npJ`TvcKyS{gww;aM%lcb2LqT|0V*h$4m{ z4GxW?+Y?gwdkskBi`Pj$moaG+WR;XV`wQc-*2alcqM(1NGw=74b;<18V}@UfztViu zCINMosn_41<W%?KIUBj-(fNc|x};o-4HyEzNOl@dFMCQac;hX3WojSnCf4gVh|sTK zvQE=(Y9blc2Nl}3)3D=ojWsIl6E-y)D&f0)8g?5vHwiK@{EJQ!;4_W}A~sp!F+K^l zSE-T-w-|s!G1}CGCr?CIh4|$Aa;aO5I~{9{JxT8u-Dbn26fM+C3$k$k8$|L+DbCbl z=N+o>CA2^ob6}z>H>^mSG9F<MP@~hLvs_$i!j9cZ*2W-Nv@)VtbAs>|9e?J>v7$>H z-dfi$7E>^oXZV6y#@L&ePv&EMmne<6YSetfIAF(*$&#hr;KpIVY3<)`_!ra7h18KF zJ7w?kwt+WVI(cp@VB1%q$y%7n=sC>LTY{C#xPVyiQwb(omvX<plPm)DF#g94BS$$C z(v)Os@4YrwJ4U)E-FCAuLq{~q31_MeMI!fBYwuYkXG(rL#_@@&eIgT&t_iF%q=2?` z>+G40P7rNNr9ZG&T4I|*Z4#T`YOXl7eY@N8@>wtj<tDjF1|TZzB}duC37F4^mFiU~ zo~tcccyfeT&aWt@6qfd#L7s5}1B&d%{yQa%vu;LagYj!X*;Hp889@JL4=~dxriwT{ zH7e<M#*|7&^(n^MR&}BMJNgsn<V!s9zD}k^{v3D*50yAi&u^-ZMF^-QBQLQb3%9vN z%*l$csMs;5xFU&Y*sh+I&5~x+F?$7ad)dhYy}>EyUdrvv52|OLHD{tz8#toX<USiz zf{B}%?xmwsne}7zWB=!w5vNH5)v3k-mAgIxox##od0I$0rKwDzXn{YDXv6zd`xpFV zFj}YGaD@+nMJYv;ZAf=0LA86+sJDsT))Vk;v?0q}S<HX5(w>Q<{z(5^7U7fBsS6_F zBhc9f#B_Q~WWiDkyPtH9^~(2Is!u6jE(2#Y=nmm`26Qa&#K!V`xc8YgsrMV+W6k;8 z>ND!?YVE!=?~8t6H`hT<zuGY6iD~N#dj+}{yL_-1y>X1cWUS8ODIp^ahjz8pbx#9t zz9hB9ZQ2m`IdfEg)(5$NS_kZe^R}M|FB+ZRHXs@K2el`6gbDtm<R6~<G067vCCIF{ zJ0oI;(o}qk;+ulDy>q|*J|^1boGM%7Hpu`+|NO<<)MtS_<MtK6Z!`-StzI<WkH_j7 zlR@4xo8h3<_EmO`5e2<FqVU$SF*)ypGtz0*H~3?_qu)`RU8%;El*Ytga@(LYV~7KY zwZ?`wySV@S6`{_|X!Wv7jza6&w)4l4IT>*~gt$6V5*e1b43fi8QaN^ZgE;yU-l9gk zR&Q+3F`AR?Yx2!nDVu&cBWE`Jd)rS*?k<N(L)cKN!`eQ_(I<sGe$63e+h8Z3oK{{L z#l&UzNz<)1D~rj}1DV|N(>rgT?4<mzYz96B!WS?6Sm(*EB?mvRW7t7n=Lpl_!?c;E zME%j`L%SN5+JKf`RVooBhG7c8z8&&N3*grfte9+`^uf6dAR2i?@Iw~Gv6XZjI!L=X zKGwbO1rAnMWq&o7#m=)|jqX7U6|<raT2{3p{`Q+rOiR*-spy;3C4?HHPqzF|fKg-1 zjcI_ROu%RgRu??;ilG>O<KKWEvdB4l>gvqzL4U3kNya7uzm2A$h&`G!6^*q$jOthC z`;XpE`FBJ8Z>g7`_apyA#5>?5joH9@L>?cPsG4u#ZRJfgZQ_k^A9e|u?Q2l&$Y<?B zUY!(m?*e{fgHWfs1<DiU;e<A~2Xm$|JG;pqx~J!WOi4&F#dK1Vh%ea)3`)X~$Tfe> z6z#o6b2qs8Qv`sGhDu=zW*nV6hJPY}%r`3g6L(-VV&v9tye6=dC)GRphJmY^>F{7a z8w=4FPcB^5Oxf-3Bul$nE#Q1yRxb!i&#PbDPaxsE@MAdVHPDE(Oqebn^qjkaTl+hz zFM(jS55|0;2d1J=)Y`gkI+nMr7qqNYu)-{G<5A=g(V17i{0Ai#4_^CY4x}?c*z|Px z<73$D{DH|g12&J7H|^JS9TTC&J_ouaVB2{6S0H6|WTPTE4Z^W>gGGv+bK3_e*M4)R z3<?r2lV^7zV}RfW(aLHjC!T4p5sCHeBO6>o8QEf>SEXV6x`Iwwu=ORgV+}lLrkyIE zQ75G#Me9{@WCM8Q4RY6Ly*@D(8mZ4-n~a&Ry4ur*9&6X4AR1MLGx56smNYU7$tXCt z;>*668VSce+e?tOagK!PcC%`^HdAB-yivXrQ=P1R=Oj51F)rrZvq}t7UJ*vb&qusf z>zk<f{kMH7t4b?M7wsq~VKXGfMgpbVhk=K+|3(^X^3yaH;P?>D@EayKQ#waUF;3dg z1&!)^K;|9Kq^;A?v!6WMe;PJ%HN-8W=GL>~`01KRtVUcMII3v<^HtNBpnsCiM=0UA z*q4BsW|}jtR`2{<Iq*-+IfMLX=eRls5!ZeuF`e#}%{#H(<he?_uT17y4$TpISm;XJ zAcCy3V8rHi(NLGH(d&)G8A_}Yf~m`eF(I>1c%y!~?@ykopBQyLfx&((mYCJ2l`#)* zqxS6t95LZA17T+Fs!keEMPNr&0>a?MI??M^^qn{qu|)GPupL-U&}vn&s#Wr5jt6a| zCs#^+<2XW0t6L3Cw{Fecu=n1m-CPQ}cr#O1Sp)$zqLR;ftdyzEG(?Cdmd`6{_0~F> zhpc69Gh6KuptuC#!|qFK=p>84U<Sd-WBdf2R-OEW79WgE0u8TUCiTPR_knGhiOvZz z?FN=NT@UT;7vBY45J5~iY6asJuG@<%I*x6e!ff~vT7UU0xZFtpBRKQWtf4PMeC^*O z4yBSjTO8{9PK5j6Vx;FaYbd^h{<zi{m8)MMsZimB55BC}P~bh}#4jJ^{@t<e{`~nQ zmC?*;PG3<mH?;w#A6TZ1_=yd0u_`7WuZg;rbwN_WfgKB)QEOB8w9|V1n9MIhTAU9q zwpDO!8Fv)IZ8MxVbNTia50rmhTD;f(<@3E*Y4v@$@s4~P=J)OXT<{bF`rna(=Ra}# z@@kp6sa#ChvJv)MEV|w0MPohOU1Tmh-rry8C5IrRsHvz(JW%oT!xja>jHr`rc(PHz z|37AW`MTWR@o0Z3y!Jd0`rl8#C^hrO<W!U6!wQFDS{+8$A92r%`7@`YC$#$31iD(W zw6-iGOy@_D?Cn%^ZUa;Gx>a@g-0Nz3Q6SE{s}SWekwg0Yt9zSAExH@k){)lm&4HNR zUg2-}IQ8F`liK~oH+R+daK)G8_prU`yW7|X<<To6)sijH|NZz@{GKHBr()S)zP<Xp z!u*?C(QfTyORts`%`BxgeMqi<-r3fTT5E0duiLA(_!kDt9v)7ZEh=ZX((M{IjFbP5 z@Y(-dI$k;6`6D<kcHhbj87-uvl*^zHk5e6wC^bSTJarHx?rO{IAOF%W?1Vf4htDYR zCbpH$*EdQkb8F&u>3q4(<RPT|Y76x-q>y@|>YIlUFMYxDFQ%yAi@)N$VH@Y4e=ufd z=mgb0vZCfW=Heb{T~rEdvmD6{R);b8qZmPl)aI9B`fq;SdV}}RGKHs)@=3T5*9bMm z?#`}G`170pzXMN~+85S%m_rPe*ALc<Qr8uInI4Se7pU<Jp*ms_%bAS6Ih&F`Et8J7 zju-Da9tUvlU|9D@9uHi@Z;f|p75+y&%R0=XsP>ij@fW@+>K%)n4_=R8l&!NyQGaHw z;fDzS4Uf6=zJ6{W{)1-+>I*#g>j1Q3HrtGPGO7>Sm4%E@B}Gn0<+|4CP0s<+6d;bh zZzOY?n9{1JW-_ll>wg1h?RZ7F@H4b4@Y2GWw?BjJ)9WWMetGc0J7BSUnHax@BLvAY zuf%=r(@pU~EI}f2G?2AyoafroV$@G%GhaN+X@=(|w$C<al1)a>U?ObVwST_b&{+Pa zT<QKgSvWtfnTeoF)g@x%mhfAA^}zKp=ogrDC*~l&TznrBOzPu~4$?=F!}_2C8DS<Q zcIfb!8f%%NAAj~I(9$bHz6>f<{)#`|jUh_N@J_7^l#I0K<ZeR10_mHHZ$Q!y#eXku z5Bs-BvR(Hb_-8$b7C0DW+#2iNblC(>Kk|>u;M)NHqtv5i*ITOO-@hxwQT{cA5uS>I z^nJIEDE4$$e$?wbeTO$%c9Jh&vEv7v+o$11P>T;VKe(>Fv{>SL)Xl-B*Bv9LpPq4W z^U;*?1cA&d6{<8ZN=i*WOz`K5CnS95$Y0c8%gB-(eVYS(ykxA_YCEM_EQeOJao+y? z?6`ldr;mN<QT%WwI1Ikoq4~5E@#H;7K+h9ScGOVRM(c={u(*iZnd=(oIoRao*a#<t zhEiH$GdSwWhO-30l0hFhUH=XOAp}Vt(3h9F2Pd?t>ue?;abJHR$bGumfo{yrk*$v= zJ^6XE*+q+OXqpH$@xoGR$!xrA4C-derk&9Q$w3vZ`Fn4)w2r2-^qs5-!pXDS+}fl5 zqW|ZmzMesB^tOz@YkO?b0xL(9@JW`(WY4~@08U7`meiz0HgzA|bV-XD*R_ab?sE`C zC5@kIUvZ`HGnM5G!-u;hMh|T8la$4}73}5KWa*cnH#fxjK6JI^TPaopXAcN;&u;yR zu-KLOK8eCml;RTB`A{6b3ZFY_f-!cxLkia5H9Iv7BnGy3$Y*C5o<8qa@e*+61BXo1 zO=}$(IF_D96Y6t#v?<!)inQ{To#ZvMT*-9Bk@^0aZRW2XIchS{7gFj2viX*hoCf%u z<uK3er8cvD)&E>w((uBOa`Y@G-@Y9pZKRbX0sT?9lnJMMS!5&BwtW*S>d*b<NrwFr z$6fsY2&<<3CfD~wJ7HESVYcsX3r6}_Xmn&cBhl$hra%S~X#YI+vq9ccomY62z@d#X zn7=cW<oWc}9la>t&tP8Z!{vUvKu;S!iu-l0iOIB#c7J(wcB>&W4hzItwKd?NNmdYn z-4=zELq7WN!3Ve$K8<6R=M8Bp6TT#Deu(M-A|<zaysqv<iom{j4YyZS<4$=zWGcJ@ z5f@a_+H7-aDO}NJmf0WAIN!ec&t2-CwSCyx=pr&_^drX}>07atNdMTgPkBM(XRknC zSiH&d4Ax-zW|4<eYM%NcSG;3w70=rPyu1nL`RY=BSU}aTz9<gdMc;IB0OW40!$%}s zb@GE4acBHyQ&xzeiY3)S;|{E_B?c_5ZADlmn%6Sao9Wqt{N-TQI@qO8T-v7O(S9+r zdO)jfa($-xR?WIWY;<od=qDD)O$?!%Cj`47oqoZoMz_4PHrspl$sc<fy5FBAx`nu9 z(fr(sG92w@zKfq^>3mW1uF#>V^Vqg)dr#{ji4gQtbK~>M=&f<r6j#fi4mr-&J%aLQ zABbCr<4#*oAd!#*4TV3!&C7V$wd@A!zi1VU@e(v_o{C-TNF~{bJ9)K{xiWaS#2@tJ z89k3C%;&EU;cSXxYN&nF#Rz<L6d4}3Z6cUBK>zLA{8hY_5#-0-q7gRpP!7E%a*Jv0 zp|{R0f3iJK<G&_vdU3F#r6*=RB7@)9)X**$jbX=VeT>Xs2oK`SH<J5X%Zb4=T)!cm zzJdJgZMg)Ih?m#S&^md&*B@4EaKl|Cz!m}ERcUnDbBs*fS~yqV`2GI(EREBRyGP}; zoUkL!mJA>0YFbUF>=6Osmzzkgb;esnYCP9<-?{_fW}wGMi!n}PV0!RR7YLwS;c!Oq TaM70MX~vSGvLa<d`rrN!HSp~X literal 285374 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\FGqVig`_fTTewg*w-Xh>TKeG=Ddy9_N zZD~i@3GQ1CiBc5u<ichq{&j{^o%hkCc&RZz)gK$sN-9X`NPhL4#?Y{j)XO(lQ!Ob@ zZUNpURMr&w)HVir_SeXYg*wwQug{-<0+dj+UCCrb28FC{<K+*VPoGetiu+`BX|=zl zlN*jEE;Tq^wp0W8Zl<7Al6n_sXJniAN3lSo*JY&a--1Ru0OO-GDpw-nKz_2{vzMxA zl44%*(4|p(;CT0ogSaib3B(yN0IK8tbiXeIzQ}F<I=5HSWS1+_mDZ8{vx^Z|RFo}c zHc1S+GNn1aXJ~q@Azf=WJ62d)RwxeME3CF~nMQJbSe@yo6#*pSfQzyx?8^F&@tEf+ z0C}2Fu~2E)6+f)$L_<S^yi@hK{@&xFb7*J?@Zw8nFzJZNNJ_p@nOTwqJ}cUs{o%SY zF@hcQBmkR^br;oO#MqsY%-1{~_tJ4~(W|A$_x7J+4M_u9qd{(HD}1W-oW9ZbK?nzn zNGJU_g3hik%wPZ_ssFI{f@KQG-uxgd-TZkb7SoRKapq;{XLTD>%Id+GtLRXfzH2fB zCFK(By*mjU_Y$fm3Yr~i8E8}_WUV*J)5*J2R28P;DV@q2%4lkox=@*+*}7lO%pyIp zCMqB|J!-0xBmD9SP=O+fLZ2T}O;}EDhHrZYXL9rNnfAImJB@}lckg~uNHe6e3;9%y zfcBOxP`;sE@LXuKC;=^IZ$?XV3+M6_-I71p+$=RCUJMNYxCKeyC~))=@wt)vCVK2l zm~G6>mnz3&e1rs(;sA{3uQk+y5iI~*c@p+WK)rYyviZHge_UnRvK5xc<AIv;11S~N z{6h`21v0PWZ`$Gam0nhBqmdZux`7DVw~QeX6@1|J08-<B+2vZIchnrp%HJeZeCa`` zHIYMIV4h=YDKrGaCnzz~vp}L%Jg=qJ$L)#f6no@3POFPr07F38xn5hx&WPkkt<|f| z*1p#|jjgG5zW&7)qto(n2Dqdss4@N#>H4OhKx^9L;v^05seti5y?`$ICl|0lILI9r z_&*d5nnM1XVJl0n(5RQYVxB6r6xDU=4|b^4cJ7Rwf3BIrYSL)x!aGU`A<_l0wut~o zCtyE<l2gcp1$)4sL$6A$x!xj?)1<WNhOg#(LPHgAi&tN4&}XqICU)jlo9oa#m`hK> zg;X#w02sF!A663Zc2~BW-QN0<hl?#K>47<@y1sq}G{A!yMbE&Ham4)gMt2q3t)8i` zD<?CPKVqvps&(ktGMZ`=19&P7PgN^m6=_RjW6^+FcsdlKlaj<qiQPqsH0_q7(=y^N z58cgPuo*to1TjcEo4l*hA*9&L&{jJ+SqkziEh`JEt-9euQHyb@Lyd|CAz=XlJxf-3 zxl9T#pz;!{ii(O7&~y+I>;(Nhv_r#*ukv31HrH+Eu>F8bCQOEkN&?7hI5<u$N%CiJ zLb{x8-VSw{Dwi0Wh+8=RT6ZUc%Cx?^x<ZO2Q2<UX)Bs%mi}9%`a&=|Q%{}`6lQjK5 zw4ssYK-SmwDF+c8gn|tM^Do4}+E8+RLI7^ee;r?#p2$W2<M_Yl14y`-kiL?=zCIci zn>BamnzL`$30%NWWQ0Bv+;GtkxDnPL@YnwH3wml!a%$@2e?3erXI>*Or5}_YNL}?0 zk<zL#a)|zq^Z)l30>G7FT*Oble=Z|85PJwH!d;OJQCwM))cYX8(Erch`@gvkjb$J7 zp9>Ju<uyH!`9Wp1wc+zny1u`0ZOX;`>;L^Z{=Od1p`LYwsH|$h-w#Bb*UbA}LR|ds z#Y0H8w8&vlnG;#|&9Z-FbimE2jrBPW^W%JX0(lEdh&n@L%=svN>D86mO-5ZEYZRNx zqv&%prV2-5V1S$cHOGK4;QcefMt1E))zt3~m>x+nr8xIi_a)#%;4FueMqCqTzj`qn zZB|?1b8XZ&UupI%%X|OphW`G^pX3eo&wBpz5kHpC|Ir8h;toKwEOP8UaTE}zXmZ%$ z|F7$2?mwl^GIN_;e}>1@yonO)yRi6^UHTF|sHRE9!WIY46?+QuprD=udP#k5Pq(u9 zN<Xn&%`Jql53^vG|JiQQoTjZ61R25Qd%AMwT%kqT^>@bT|M5RjP*C{1u0=={YD8F{ z6Ov!9>Y#Z20=4GYxVWcH6%8?lGft=r?6yzxk|2`^yqiA<rMxRU%dV1S#(%rspReS8 z@8c>et9w7C#z=wmDoAR4c+2?u&v#H{vgmdW7d_!dIxx$%h_~DLLg4f6Cu<JQ`X{ZJ znTx$L5c;pw=AVSw&>!O4e_i3}=l`$yMKCVzhnRoAho`$iLIs2HpNGK{Y3qL;{~te) z(;_7$CkKBiC@4tDt77H{1|)WOcTG);v9WiPv9Vutqh&-QVc=v$CL&>EWM*e)m*o|K zs5dW9oFDtxCXQcA%l(rA%2BRC8og`h)Z4db;#BCEn7H`J9iOUdYaVVu9$4&^JR9E{ zGIA7hl>FIXj1HY^PiWZNr?LNY@KgB#k@T>kAt@^YT~Uezke&drj;5w>pv3okpfoe{ zBS7U1V>_}I&rg>tFZV74vo)e#sq%jW9LE=yK=c0Y?tE~Vgp7=A)*PK?>{PW}&}DCP z7@NINHQ);zxJRj(9osyL&~z3jL|GyZ)~RV}=`d;OP-$uD?SL3hrV^DRDT(C7#JK_n zomThrk-k|5Zek`jHhLp`$v1X1G=slqRL*y2ESIZ`s;il(UJmS2+#NJWT;lUy@9g4Z zp$q4H<zOD$X1(W+uc<ARFEiZ=Kd_E~`RDOsu}fRB;pC8XR(L@oh&&qb$%rk^&;<?+ zsaJAy6Z?pDmj@rL!_)-k66a*Ew%s0YE{kFhfWkHr%J}T0#Y(C8;HI<&iy7_trUpQ) zo3WV_t(z@2ZEPcd_1g*x4|2KLk1I%!HP^z0#|Ps$;pp=4)<UBWli3yyc``)R3Wyzw zKazc7Vq)4~$~pk1-`>9Vbf5;{-?8mU*GqI8MutpKeYdVJmR*hmPawpfMG;f@+_0na z)*o$JLHEt{UPBOMb2wR}#L$7*!rQxJRHrT9Xn%66qQBpqm<nj&fGk*p>3FSZ!$@&4 zHAJFUI$ij)AcQzPLw5svG$bShv`uw@)A<&>h}Pxg<xM7wuaAiyOEe3}sb1%uzu{Q5 z`b=Sz;D(q!HukYxK!6AcwKHW}jfMjk7V66#++A<XOt@hEW)m3~AI;J7^$eW((47&g zZu0R2tzj#_%nV<1<@(RhJ6<z0GhmJLyYuq${@J(!Bd7#eSnI@9(EY!4@cf_H_VKTB z<mRPicX!VPyE=m)EUYa07=&jRC#{diucDL+5G;Zq#%B9Fb_uv?o{`UU!WJ41mq1Ga zyT#JS{X#vEc_CJaj*JA1L;#BlI?{+V89=TN<YfRO5`^-mpJ+YPrUOux-dw{X1^N2< zO@`Rsu5<~X8eSaEv(9p}a8k~{8lR?O%%R#;Qs6BoBGQZ2#-k>0c(6bLGV@yuI?Z6W zPG~@kdWkLIb+OK>&1N}2U*ncQ1bw@pQVt2mS~wGbeCc$+L#l2cmR<{3&L;9a7FA9S zWozoIN&WKdy@*nhk~i!6XGgtylBF~D+fjl*gQ+(?tC^B!y|X1y{RS`aUq@y)&^{zL zeqXN|K_3v2MvmfgdI)XtK}9}FqX5ejk${gRT0u^3d%P}2tr>)aOCHBpfbs~`IfCA{ zJYFTypYKj3Gntszki(0Qi;Ig7JKR^H8p)>e5+Gv<=k5aaO#uHoKRF?Rd54PHY&@R~ z!Z`EA7L{P_I*IJ+Q=7PK-|lYaE&2=~>d7h6NpIXqMo|MWu>uJoGdPsUnI&_8o$Gvc zxZPrV;AMG;pZixjuh%)~51gN*2*YAk%I|WBkCJtkkf7IA1>LKnvZ)-_R}fQEYAQ@H z*B;@qn9YyBz}OYgP*EZO^T=ON#KOOrpB*j6hy~Ywe#%#W@BLZ85R|J?XIxxXM&{}n zU?sEcil|fR92bh6<I?77hs$Nt``tzn`uSHe<SfSJR5Smu<XVG1ogEQa&_muQo6ci3 z{u=b!yQH_fGaJt}{)m)QP>CywD5(V%pjPQVo#qStXnFg{)d1NH*a%En*)+hCm|K|E zYHcufe4-G9!1MtZ;l3P`Sx-b?i6ttm`t;Q(NBu#=(ManJVh+KSk0`9mwo&Hg7vyT* zB;afWGgtWBSX^83J^;lAC?o<<1%RTg0jYvGke6gFRwj#f{k;zp^=v_F?`AMftk~!h zNWw^oi_g~@%#O*UwtBdW>s{+V)&cGgkRm1&CSs)vd(=}<`2F2xvh9OAg@UjUNh|DI zFEAIPp0P))Lcff7*dVV<1VEjaeC040m}uOe_G6Xz9zr5y3H`R0VQ-%a_3kgYC5lXm zA#=EFb~c4A2EH95+&&(U$-}pxGt02PXpf<3cRls|{{7Vi_FX)Ihs@0opY}5F1kjLI ztsM*MbVc@U+8(G_C^`MWNCiSaISH{ga7Y7@+iSI{V1Z@Sh-!48>$}TKOUoOH*gM)B zj5|?U2#pR6k@|)BZ>W?nb9)Z#zZa+Y607$5HX|dNd5bP;;7;d`cfkvb+udEx8ZIg+ z@OvRhtN};GKNid2^rr^W86=Iz>zn8*(e+3X6$us=7Ayimfu5i)pO?aR{o$PGR||-t z@sP>XoQaLi2}EMx2SsW-EYUrFI<H&Q{t8#C0!gowjjbc_+~m;w5AEIeF~z~{|KqK^ zfHNpGx*V~!MM+-+krFlu>4Zw;iEy*iL1AIyV{RM}TE=EEPtEXxqT&Q;fNd`8T-uuu zxDJ9b9*;v5o|nYR0D7DH-ld+OPgp(EN`H3<#vr$~dB{_Xtar`Ya7eucfXA_KiG&Bv z6S#P+K>Cc_&$#ap8Y~1Nrp?V0x5G|!2=>4xMe3!+{?9!=%ipwA2sFthVAWN{7{-^r z=Y!(kv0iui!Ns10Xo~;^m52T`m!QCXi)m_>0KyfBLPUmyORW5YyLx1yECVtpM5oF2 z^TT=^Na5!e3PVKT@i>a!r{pR=)Cx>C_INE`AQfegcZg4Jp$pnaMkOV2Sd9+|x_!%5 zi03Ph&az1en%v}dxrjzX1c0%h6r-M3SKqdqE7fR;sdU@F2#Lx@37%{&2Y@{x#)qmV z!`e~B>+qNUMWZ<L8zVTa8|s>^r&_99BYo=|a&V*3e@d2Lpt8)*_g9j{cIQK8C&I?K zDgV0426~@$X46RNMn~Q`PbRrX#9r#HMYQAPF{z)=y;0yeNc)RBIo7VGuK-4RhF@5- zcX!bB2Xmql6-*Dn<pBwZKt{!t)<;M%>Wvel+rvb`sBTbVJE4#?;H!*7%P!-(M9)>! zP=D~HFghn(aynMy|A<6I3u08zx8w~>6w%EgNgXl})X04M&uwa^OZ;0$z`V|CQ3K?z z#Xw;}xT#BtmkQkV{f#|F`r6qy$y%OdH0D}y*CF4XwKZhO#rApjBPU1mnBga4o=2l2 z`oFS`JE5QumzN3Q$O8%ImdoarwcD5f96=u`B!DUy@$&MqSKqp;jtva%RqH4ZX9HI= zdjos3+mI7;Ok5oNc*pCVA*aLj=?Y8yT<XqU>cW<mJMqa)=j$uverQI%K;&SL0a-`g zwx$@{7YVV@oih{Eid}wt$4O~vc*w{O7lJMUdkFX($QhAhNP=*235l`Qco1wNU%6@j zOJra05wx#?q>K!(E#(lk@X;Q&0m|B;V3hrx*#eA+I$f>h2C%?LQCMb2lG{rwD<fm8 z_Sd1-fZYvJqtpIY{(K8jv)WzTvOKa%9NFKNR#Q#euhRYerPZnxM1gTVVRB0)-UavC zX>SCYXa#NNxVHA}bHPZQU4@wf_vQhh2Za-aBYL`xryp_8UcwEgQs#tmwz|`m@8sa~ zIS_Z6PRy-*AN#Vn0JeoBy9BY1VqZ7cc3SNi+H(wE<IM~V4@-}JM>-mc8ev%FcB9`c zqJ())P(FrN1Hl}qdaGQutHC>x+Wz~;I5Y7)Avuf5f>z*IB=rmG-4n$vn1x&*jFiPd z5|REPIv9#^`Fo+U&)+u#?kKXm3ra7^Y~p)cau6f(YZk|L)X7j?nUTAZ@t$&71|7x` z7)h0a++37?$D4h!r|l@dy1E)KqaCeETPK)`_f^%J1=l4isfwC53_2!S%je5y3RwIf z4c*A7s2@{xTadSnh}F7)lTPiANhI)J??G(6A4TZ`*VTa!@U9^T=S&U)7FLvTQZfp! zhjj^GVg`oQ8aE6}Ge9e{x3(kQEugDgp%}n6JuFpM%i`c*4<b4glxX0?5<;-gczgrR zf6i#Dj${xT>;&a7BWIYg9|hZ3%Lghr9V~%YD<`C=Eh<UFNW}qi3dBsWKT)rz?J7j; zIiREY=Es++QS>j5t7$dc6sTU(OQ*1qDhq44-cVr7f^zro7%a0!(nim{m7$%OTvEqK zgMWq+JWR0Omr8D6!WFlnvL-`j_f#3;qN0e1oe$3>w#gqxK;K3orJWW!K}O~0Q32v= zfE<@i`p`R2jnG#o2^SO?*kt!Oo=3w@G$HQ0akzH>D+#sb-I00r+fXXk+_LS<K_deL z0&d#$8M~_&ePLKDjahgNZ;`0DJ$IMl%o@bwRLDxq)VZ8a7T6#8i4h#kW_K6zglh7` zYU_Y6$zoqy_vsVx3)a1aAx+=hJRa8H0gB9Sy~XnThVpc>jgq#yxS*=6@cMet+itGq zuI28N(oB)s1Hsj4a~+iZf@JpLu{a5Hwp<ySmjMs2Y&)@0x1HGY?rnsu80k7x-9p!7 z-^z$T;eWjk(vEIaLMbsRpYQ(R;cQWFqgC+H(b0{0FHY`7UL-_E4|rW7Tc(G+Z!^{n zz+Y0aSal$zqe~0SRFMuD#!&&8^po(xq(sc&RNhzkw}^Or?o!|7Xy(3c$@z(DUD+RO zrgf99;jB^t{0U9`5Drrz!I8O$|4TC!+H@wH{a(7}RNXeBIQWdM=EmX@i+k6W8Y*fk z1Olea*Gj5^xJO*hp@F5|7Wd~R2~%Z?DXtP8I+5?kX1~H};Q&MULYB|{#`bEv2<$=- z7C`!0vFeG``jeFp1dkM<IIlKl4N5#YI5@1=c$|Mh<|3?#leb1HROmJ3OzWA7*Y>wm z^V$ey)8FR<4>sPxtft~M+)bOyV)`h(;6=UB#afJ{Fbv$uEvA(k{z@fxi=K<~XLlPq z>WP^d;=fmgQr%yxx(dEZ{q3+l?_u>o6G2X$ssy!wRC^mnlzx1H=4?3FzGN7J;3k-v zR=m(`iG?iahG*zfY_!ndU7SAT6hK}Kr?9ozuK5O45j|$i?my-OC)Xd2hL~x$GjFfu zG&eW?;7psEdf?{9b#v1Y3BzP!E`38!XE}7habtmw7~45+adspQP__#s9*?yhaQnx^ zNx7#VtrwT)iNGceDk4nRNu_;oz|Yo#ys)*c21V{>+lLQ|_K|yA)7369Z;Zn4*e!^W zv0_tWTd@==TAUr7rj9$BQZ0Lt(vOyF_F7XgU=jBvA*iT0s=J{c21;En8M<*L{wbI^ z+Re_k0QG{K^EJ0IX75`}z{TOx+YCJ9u(8jsA#m*xC;l62@Pl1A@c|9pxunJ1LB~ea zfA6cxM9Q~E0ybxaw8V1B+1bS6Nj9RygOf!biypAy8(Ukb9Xt;9I?c9KV^*TEC&GBH z4qI$ZJM$r`L2wK8mNs|C_+syOs|YhxS66rlx7H2Jg5>CRn^|3dA?a{HFh9kT7@Jud z8!grbc}$XrneS-|eb1ee=Kbb=f1;Q>51U1Gw^SrFEfpH{#nDomf{yO|xQe8R_KIt@ zM_C(&PBuw(mMJDN)_w0#h!{Jt&VG07qC%LPk3sE&S?{l8)*%pR2}6#jhr6biYoa`$ z71*Yxr^9jQ`bQtu&Q>c8v9!FcmR<NEKhD;}9C#%0u?C9$6C6F2<FR!Bb9y7GsflTP za*f+bg$p2xm4W<NBT7#qgz;bPbME?m{I7SGk{bv6w*l(TlX$!*^T+q?;lavcfrv8s z$3_kPHa0GFFrH0@14)hPjSw8<_?%N3;!;l!S6i+0)KuHO5f5V8)7^YGNAv6nL3f=e zj+7>84wn7CzENFg{jo7QiciEeG;cQC_wJ5|f}jDa=!^ApzHtHTgI;Ygsf3BLzw&En zxNgmy15b!B?gihuXy~+Z;O|%y2Rbec23?G*+aH}Sk5wYD*S9UMjz`rtX<}<w*7ut{ z3WoIQ9Mp1WHj_>0=VfJqaBbJH$7-66tf?8JlE2NI;oqFrP+SKiC=iN#Fzx<G?6cI; z5*SFSaCrQmD~$$UJyst0|DFu>|Ex7Cr30|cKn{{~Vd0n%MTlwe=U532@{FC{SNHk( z`J)vtQbBJKWtu@wTvhExcOC}W#Ffa{<wf@5Ldr>5zpIva!x@0aThiC|pchZ!BAM0V z?D%2>U2+r1&cCYF^Ym;xeY3U|`T{AGg}F=wQfavHNx>yn!>e0U+mABhm#XSJ>*Yq; z1;PeEC!WsY$<n8MmwNQ|=F+<o6}e-t;YfTwk;_aYZGkoDOTG-YBqTDm(`@@EQ`y>` zyAFy@7kh;+k@45_Y!_xw>jQ5kz&ASh%YPg5`uKO;|2Q7X9LiTm0w*uvkoh=k&2sYd zC47IMU58{7>-DzTyPk+_`~MWU$7?KWveCR+p$0rpWk$*gfg(CGmb-w6oN_cx7bx6E zRlo3_{u$tyl9Gbl;bG%2Iy^|y>0@{U7*>(TSuBlVpW!Pge*_j)i#<9<F%W1DqpQ-U z$wHXD4&TlpBEO4WonDR!O!4=>$vw#l{K4sD-sgqL<|r=Sl5gLMJp!#Yu#Y{5^o)v< z(*9t{JMc%}sP%vPDKCJZavc>D<Cm{S9D8;3f*p~8xN&QQAxJJaFYorl*^kCuH|xT& zgKuNuEyfSD#0Ww!FEPqTB?JV#DZ9$!C4gwbk93Q%HYwlVCoy8shhYRfS~@!Ef#!g4 zBiq-A6jnu*C~)rH5;WB|ab`dG_l)tkd#$EJUVw}i$vT_4wU@fO-sWLkboB0A7Cf>F z%B3^ijP*)y1fGEJ`k3OC%p)Nu=YKbb@A=irZ!Qi6d^fJNe#q%MI$o5p69mcu_W0hi zpvP&PwUlKy`#tl_3eoOo$@Omb2M}N4fz<H4g+@!ipde)A843(l;^&rn+5#PYQ_{5v zEGW-QN-~3kgCVcV1l(Qs3$q}&H<t&}kRLl6Lfx-@+;jZj@Ud$5U39|2O-@X_dGm&& z9K6}DNhYj|H|K$JKgbL7sr3uIB4c7C|H}hJivEa6NUQ1yZw`z-Y8D(L{Mudvft{^w zpq#V4qx-$e_e_%QsVX|;jNY*QKsjD7n~j+TdSVZc*7CGPR6TSww5uymlFoJH8Fayr zO=+=>fN5p9^22n{-wsh*Znj5jx}|*scc7N2O40cm$Txff(zs-2Qf|3dH?qDk@{8TM z`r##&{-<Ll0g<g2RPWw(s<wv?N&U~UcflEx{m#o6B|omS()Qe9ef!J@PFP+2mBuwk zxsRci6QUI{8XQio#j;PJ>`##k2;d4WTD^l7$J$<O4gfJP^33S5ZZ=D7gXMf`pzL1! zuoxM*QMhtTV(I1C0w*URoW@m8(kUS(HSitDD6)59Av%y>R8uk*-$V|64&xL2R#~2L zyKSL*S1KG07gx%Eb9=x@uYi#d_B|gG{~|A9clukW71@@!%5v!z3MRn!$p&T3%~VjV zm>dA#%)!ASP_CurUJMJ9yAlyuKx`Y4__<k06U6<;+)R;njFKUUFp!Y0(%{~#e5R@D zjkDO*L`Dw$tuv=ST_yziY^V|j7xLN3x^%52$QcGT58BMq68}GaYaifSw}rliPiCop zT;G*>arvug5^NRMLw67N6j^SgXB)f`X_WAXtdQ-nj<ED{8F%;R$Xa4*n8@sO($dU| zYtT@HEK<2pS!H37H5N9L)h?5NWqwpJ0seC5<qss{Qs8uiOni+`OS8C-A5Nj9q~xcR z6cEs<y5b`v>scpz9r{@4n@vosL_2c9Rp3({9o_hnD=!dbC1=~%47uuQPPVnB`}=bu zdwaJXlME35hYPs|-sLk87ogJfV`8BnT+(IYd$o4I*tPsV#IIYS9wV|e^YZ1ZReaF( z0fWqL9P!R_pskW%4YG804zZAamj|2W=i+d30ZW`6R!Q-yvgtK70|Vc7^YODzPKWNL z4YW_(1rY><(E>u+xyGne_^nBS=rh*%;AI6GD+yzwy!&^g21oQN;92MEu@ceQFioee z%}taJ4$jtJ6#Qy(a>q;8=*SZ7ygV*v&rrymD@_(Hoss&HP*6m=rC0eQ0!11}*wH3U zdm&3xQ`AnkA5>HY1pX>2EDVGzaV#6)A*ZtfH4g~O>(`$U);_~;3219ijY<j&CxJ<I z6M+8i9cVlQJ1#&O;$UG1GD!)Vnrc{!Q7)xONtXb<uqZDPL&Nxj2E;hFso93gLIkg) z7x(xTot-UBS>C(?a9Px^k4Un+Zo&2+$NCmY1<KfNf39s<QPhaIkzzD;b0k^Cv_2xE z4UVU6`>zLtQUN#ne{ccZGa@2Ak<>&_F;Xp1afZ0tJJbdlS93@+_ZC!d?`Ny@bB%#b ze%&t+Zg-|gxR@SZTHXzbnktBcKae#QRv8_g7<>Hk3zA?V(?EYehv)9yS5et6Pv1$q zdunRxnIh%S``dc=w-=jUs@?(}ZWjbL4ww25=$YEkDNoT6CYK-p-}TiOjB4B7@sLXK z1*CWRzx@&AvbofA@+wHl^?uhNnmOWXRJUCuJWV1`6rP~PbGZ7FKpT+U3($ENR7Mhl zxZmdznX&WV&mY>>+WZEC@b2Uk!<~=vT!rrJD!cxC?<8HAfrlhb34Qge&^2yFoGc*m zg0Rf1&qLG<#uqE9FA2LrF5>L$Eio<FON#Foc{tSNj}j+7rDaBagx?ZB!}tBrO(_U> z|CN|HyI1Chfs`fGz{SzAJ|SY&hpa@qt;tHKy?RQA(9h5BNqWF$5C4`LQP#@&183_8 zS8Mi&>!7`<@;aMAdTKm$^sXGe*}lugp9L~X8k&+dj%C=nOkA$(QYt5_5D;<K7)p`D z5h)e@@W}04^LRnz`+`_nPS|)cKd-*BgS2nL$4gjPIK1;E-0j)n2-jE26KHW%91PiR z35j1bkEP~o(7wgR>qq;<H;KXMZ-5o?J#>-kMvf5hd0LFy;M+jA5izg~qpg4jf_+JO zON)C0Jst=;E!7(k($*HjxQ;0u_y8O7`dqQ3ox>?Eqao9BjjwjeJ8Aec$xQ~hNAzc9 z4NJBwZpXed0G=u;vBW1vZ3LjJeAZVlxDoI;#KD}X?zk26`!g|Ly>LTPd5eXWl+M!x zlG9(|5PZCt0WLJEV<SXULV_AOwY0QUs6yenZ&8s+Zt?ebMA)h#zZ<<8Xq4683NcXV zehaAY1H)5mzvh-3Cme`<;t!_Z_+x3@CdVg4LAb19*kpA+FPprKl_uAjrgXA6Ufa8& z@MYLSmRgSA_=N}Oi<clfnU%q2qTg=ZQR*7+kY#gmmuD7{!CMdy>w)O9yS>zG#2(J& zjiXKwfKMTlR*){ZXW?N+b72l%wG+@6%|O^)4G=>a<g63ATTV<kbJ%`{2+Wo;@``9T z!Vw7=u9-?$J-?m3u^2eA_mm%qeP+4!1f2-XXY=#?Usj0MGcnivD1k1buCDRRIIak# z{7!?UmzNjhRoQVC3f|wVk`kl|;a5o1pTAUU>A{Nv-?f{Df}#PWs5~`F@?p}_c@0{G z07+vCi*G<t(W_G}xqX@RHvR&$naW1z3$>sAj-b9;dC<|i=#Q`~TH*0H?$_s;sA-aQ z9{<zh5g<`t1&J#yyiS(q2zvvI)#844*9H^Fr1FA}oq>VyxVa+3%hHm*sP>1Pv+Fg; z%$$zAJYNHD8JNTJp27i0H%>o1d<mQhfawYH;en$G4Xaaze`9xH(|>*P<D|wUrq4zT z=JM94GlD^5z{;A5+O9EBTPD1_P81-~Q1tTRIzE1lYw|(?o|nF%_zYn~AZ+Oxc*sa+ zkT#iZsLzJg)2#lqd^0_`EiiR?u+X{X>Ek1`bGD?exbf@ZCa2jT#BkPfC2s;a1>6_V zWwqy}yMkY7sVr0dRDJ*xRrTxJ<qyWR!_@}%Q)*-HR`-ofzrk6-F3*WK7JIWee2%1& zt08l9jhhydoSAP4IIYir`+*q_s3~xfu~?lyu3Dtb$dzPrxIJe51iz<$@N=l^^P>__ z#Q<c#Hm)bG=S|UHYrys+-vz6<Bg1nO;Qx?0u~L4NDEgSr^cmk=IPYkwaqO>N?DS5- z_}{aY=3;rQtgK7Cj1S+n+gyKwT4#}8AL7x@QWaj><J5deO8sH}ge1mD5|asSTt2(J zqT)G_QaSwEH}?Bsm@m?lG60&%ZF35gDkIy0Pm#glbiEx^WB=0%<b2+Zq!ndlt<=r( zn~GQ9Ya{N@OCSkuv$sSbwM5)K<w4~PyulbnkEN}<oFUs^9&g?Yky`%X?epaOOhlua zM?5eejY){+IZ;|2_%2qsqTBW>aF42qLyHm<5=7-VI<don&lrSPyONBFBfkU4$w4`= z$mwxy%=G%I2sLAw{PmkRYZWa387Guuw5Kw>SZmr5O$6xaWCjNZPggYCd0V$x>~QE| zu+?_FH=msL^J`{^w5{zxAY;s|)k?=w@f$D&!9HH~@ub+t=eaA<Y2y;exQu1PhvkkH z54L0#G*|)bB!kX3fx2CV3eTgC7#)uQVbQ+G0YWaWTd;UfG0J@FZJTi5aRCwW=8_(^ zP6Qfz4$xXM84Pb7(iY-vZbZQ1Slifh0y}6U*oam{!5@&7ef<)SMj>NmIY{n@O1DMq zxY4LCQr6k-xN>>zrXjq8gMy#fk3dI>;Lc0JU-w;%Yf8KLzQ9S#EG>oj#?gm&h#);y z`jdeD^OKRDC7aQvQqn44(!l6wKzmCjs~s?27sCsq$qg*UwIWi+AGPa^598rW5Du3e zAExx0e!}(ez264V!m~-vR1w?HFD>dSg{Yshfy;#wE{AuZb0<VXh@`qaoK1WGMA7iu zH@9&Pv+3IRWrl)$evU(cB5Fc52{!Ew+#Lel0&UM1@^P%1cfCD5laf+Wp@mtenLDRf zN3Y6BadBH)VZ#LlWn~+hlBiCL=@u`3F-yN}H@sJIir^EKRaEQ(JEc34b>=ozH<Dl= zNlOG+;Xi=6Q7ZcQrIHv63!BAiArWq)D2KUk!ydy;;QT<_)k&l=33w&QN{05pv90uJ zgJni^WO%pMPArz^2j&npbtfWfa#GN<PFp`#T;N}!aBX2!fUsZkGWb1nnV|t-<B30E zmN32oltfi-M;*G$+<`wbrH^~d+;aM)bG*C@N=sQjZ4<6&3TV>R&MBA}cY)Tfy}ryL zy2_ztUIYTJ0}ue^0hZL8nd_*ZIhqw|_}pIZCF#oArq|b!vtZP#+p{Y&`0f_-9YPF3 zwzRq3?Ee>6U*Q*Jw}mSLQX(DFAs`LX-7O(0ARt{*(yeqO-Hdd1w}dp(-Q5h`akt-h z&hOrH|ALu$XTNK&_0$3@wvNva{OKJ+Ycsw-`pzd5c(!_;<hRz~*vI6Lfaw%(4f+Dj zOd==#*A<Zk5`Vtks(3<bYNh#N$gmBu9`90<(=N7vmX3#L=70tl-5~&}ukyfrx>#q4 z(#+dz?3|#{8Tbl&AVmUEP2YvI{qI==2Mq-rv_w#|#orRq5S(8=bdUK%6ajd2c=+YI zk5=~nSzO2_jr8-rfdRBvNR$R3L`RB_t+>=j86yKh|HUO4gY(Bu41jx`%(Xlr#*K`R zdtM%I6>VRUF1GCLKf-9i7My_5Z#;oPZ(u>qhx8HVyKg|GUZsJKr~zgT+-0rdfEyN8 zmU5kOdi>gwFO361t6Pi9MZBySp<QHY+K$?Y&wDB`ErIeO*(N(gfXi1~d>3<gDG*Us z|8>^Ko(4@mou$$EEVmqqp}`(H+-nZ#{<>0AnH>4Ba0QZClrmAeU=YM7vd$1^4M+vF zaT_B~&xeAp#XIkS75kmZv`1eZc{Rs}y&TYi0di&yT$FH7%D<P08XZ0vhyrVJqI2xB zjQ~NqK!g1eSI{2&tH&tNDxW3AxGH>p<7ARcEe^N*{CV(4R<vNH*I*`zeOvXpW0?n^ zlEL)fhr{Y)^KSWGu2lgHd(D?nyZMa`qYMt)jq+$+f((73Bm|jtMm|1wfNQ;im3-%2 zrmmtQ;N_wiX`OaGD>iJMwkxut*WwCEO%=@{<#&_468$Db2j<-TYH)@gQbxfXyc>ay z4X~keGe@GH^wAL|QXvz#v*^LW;-66RbCs<Clb>Z}(-ofD$}(UgjlMA#7-)3hy}UBr zJKB|JHoD;{3kw@u`ThVpbi40Y7@%EkjwJJ=Bh>Vv!)Av%9WFes8cKm?J>rj{6zZL2 z9~%ut?4zgqNz(X;@RNr48;t(BxX?h<*TU$|Ta!aUh=LvtyW?`b!Hl!6E^cDK0{>2s z@Wy6l!s5pQ+}Yo)Jbn66rfflZk`BYh$#7I9rwL?bJZeIN{6vatP-AC5KuFuFS`I8q z+3v_G^1gp*syhRO9yoH_geMO<C?Rl%wRKRzH@`c_1-x!O#O<)oS^~Y@zOy_nupRU$ z@`B8~9)ft(hC?0>4n{@+@c+iSW>iFxPxkoZcAi(M!g>l^Lh3@U342bn%gP4sv9)G) z9lS(j=y}eDZHL}#_Ba=a+u)L`J{}8-9t(np0q!baa95@KmSYh2Y<q{lBS6Q0vv8d$ zPcVP>^t+=YlNUq%rFMc;7npdCfm>WEFJXe~Lj^jMHRA^`@fE70+Ee)aTtWBg$N0~$ z2AUCG$G5v(=y-U`t(Fkr-&<^W0<rJRAXm)=v_)Ez&6<X0%M6Y-31v$}{098?MNA9z z%n&{=TPP<bjCb^88x-QCZQ)Q4=rgx1nz!#mP2_i8%Ct2F98*#UT--e)f+M-nob#Za zoi(_F%`UE}mL2Gg9V6*@^s1_?Li+Fj9M$%>d4F>Q`oiCqi<L>W@g@e!?=XH8HJN_- zlKKd>!BHgkPqmxQ$a{81HdSaY;)g?wC5NtfEYV+SZT0kxj3RdJb)FuQKm}EmkB`q? zWO}shE6~obxMgN!q(?`~`e9<;`Uc_LgNW~|&p0^7R1y;K67XPO92m@(&0Qs4NLF4u zCx?`Wxb^pH+)qs9rpM<}7c~BRd9BreW+rvv)AkzcxU$N)^+Kc6aHsh0Na;mH$-dlT z<k<ihV6bx`vT}0F$wKyH*Q3oT@(t#*%}CWt%0fpsYkRLs8qpG4^Tn!|?eDSz8hO)d zi&dKBwlDcFi%WB5WwXkz^6KDX$+@@^a$I8@%8(!{HmDTV@HcC-dFkm)4}67yVfyIR z{u-D17!=M2m1DsUP#^{^PXv9?quD`yaItlUjyLtpqG$xI5T)sb69^{C3OVCa3nMyj zf(*w~NL#Ky4~9B})5le@0bF_iSLi-$+svU<!q=A%G}laWbUekSqWL;i-5OkI6tU3d z-wVD!lJm(ZDOKucQNcDTy&71*|5VtqsWE;#m*KLY-li+k7Pqsd#m=Vuoie)>fRkC? zr@IHIfJ~WiZKqMi$q7|O;`wDj&tc$J&tLA3@6YsAO^gGL8NbVUnC`$kZ8-ZfY_M+~ zM3G^Q=7Z+8RL%ER{e{%}<znDqR%}lXO|$D&)Ox^}viGf8c6RQ&;WQ!~95KJ=@*57x zn`LpmX5?3W9e-+DBcWV$p8H3>Qzgl4Wi3woOrZBZ`rn7d-IXuCGo43+(Qm)4p-KTz z`l}Tsih8i0?%lG1oSK*)24YL|!^c*9a;Fk4c1nulJ6z##24>{zcWx`kFD1TY{uc{C zQoaGj)#oh&Dn+OP(MCMWbH8@+kH<7h@)*1`YRLaQrHsmFC3RqKYjxc$zT4J7xcuU{ zGZ}tVVYhmEQA1dFva~R|OC>-7hPeX}yCq>hne*}hDx5c*+IB#SE}a9~a9?$et<<Rt z2Cy+Dzq$^}W#(e6OGt2QIN0^NYK!r2n|u<pjp+STGf4q3cntR%aB&K<3cB@QQ0uIT z2IU98i+HzAv~N9r|KyF1Bo!vRfrnl0t)ahUiaxG5PPPs9>;!YOaK#FF93URvQEm1O zFSqUs=hq_)3L~n?xRC1qTYmk1WOqEv5HBy*ZVCYBXTcOtqdo<*`#STF_*+k6H^kWG znO-GGWX2eeteoQ2<q2g_9(DM^PMJZ+cV=yh7v><b6S}{xNGAkNmzkNVoL^j0(&qUZ zDh8y?I$iuDxU(qIWuwt7xxv-_MskGUZX@ZeCdFAXwe@)SOygr_Y3UTenSkqcq0KS) z$lmtiHm#UJ7Yk9q*-Jief2trZE#?fs7ZGTUfg%MKlhyeEpqFK<o4ho>%P9y6`3hO~ zUTY_XFPgH-cw(29kx8qvy=l6FkO<f{yFEBbQnyjEhmo=^bae&E_H=b$fLm>5M+RJe z>{gSTL-S}0U=%Hq%=@c&s~IyfGGfxJ`QBrhg#TJO7@YCE2<DGh=C`JhD^kG>KJPD! z4a^5p+!zS%eA;e7#Aa3L{GLqBv)?<rXF07w3-=n#zzeIMeuRI!M^Nl4Y=b_?u;#aQ zUM?blmlo1S#9QB%HBL{#4d_cwZ)eACsf36_;4+u-I|XV~Z9+?*`j~_S=vc!;7R_*Q z`O3f);C4BSbrk$ge@}V>8BKQKFEILpG3eJa<FR})B7Cd<)!wLokeHifH&FHkm0L^} zi#)>o`ySibIi7v0ci@PtEzpBr*4R4)qJf(m2=^ymwvNmoAOYp1^_|_#nrxou!@X2Q zT0f&{RsgE?r>(k@a_?nbujS{73BQ~<19cZ??U^*W5spqLY}ba<+jbTVpG`6l;$x?R zK4Eiobc%q@0)I6!Gjpw7U|upDA{l<0o)~*@`a4{UikW6Q!;{bj=d$FM=iG10knZsQ zR37@+37U!(#*M8l5K_0by>0JN(&%X6?sliV`?ST7iJ6>CU=6{?vZ%J14@qa?qvOrh zc+&3<2!Ih;&hSs@5rnU?z8L%U6RJ9ld0oHDg#u7hLy`nEa=*lXpZ-V@xJ^OXobgps zKF27hAw2}UbK58=+HMdq+uN_6k#B*O)1@33Q)zdRLDwEPdtSE(Ip9JRbaVhR(%<t} z^O2BM)r5XotC<xTads~2<>eMA3r4E9@W{l|Rty~+xOf0rNx+5absjx!BLo+0PAz&3 zE4;%^g;7FpMCJ2ux1Rva!NLQSahI1TghH-crg+m}{hgWQLJJgevQRFhhl!1qbE7r} zh`ob)-zvYj<vlk_=RvBr99PzmN)e!8pG)U%Mj#L?$WtOQOZG!pEG#N3b6)S)?3KKp z`c?b5Y2U-RKVhPaSTdh549VC3kfuvPbGJ>?3t$l=lF}EC1{cTY0qQztNol<140U+P zf{y$H^F}Y`nKW5aya+HbE`Cp@?LAfeC5@=(w34Tp()Y#+1kOY`)Fv-1<52;|quX(B zf*~3NW+9sYoav-v**CN+@e5#{sQW~{wYj=@r&xD{$g`blYfoBhJ^4vflNL;Eh_9?$ zK<7j>QpSZ5$U#`^?-yYADJL_txb%f8P=>3isjYAp>)sPR`se+qt}GtnFaIVEIC+x( zOSXGFjCLU3adfEeIel<vQYKPgXf!Odg?zbLx4&fvWoBoj6!i>k0j|dDECMAj5<M!d z$u=(NXA5Ffl`P!9h32n$JQQzmuH2R8;(Rf1`1tcMr{NwP@Tyz$$=oiw&^>~p5mutr zY?4eK>?%ux%XzUcQ19ppv@}3xkkrQ6S>oJL9|e}CeQRRDKtDJ;d9buT(&cFgtJsRg z#yKRI5nfyPP47U0Wk|Ut?_{%VW@GApd2j5tPz&G}Ms5Dc9)}k|vIAYJFNdzMK7IR{ zzk`1X2}LD*_tVXB{E+WzoLHQJp^!P5YrMO0DgMwsC{eiTx<ahUS4`A!eQmX%I<~r{ zrKCCauij;czk6Z+3PbdXx;gR~AR2#L<~Qgs5UGN|JS7T;*dDc>7rbIIU8rxY8HkwU zJZue61u9V<;KPHXcD+vxR0JaW)hT@W5Cp0~1P`2*_|@|h*ysfk0h5g%0OH3Q{W9A+ z4b@($l(64{c-qB8M>jfb-h$Q4QT>#HOy7r7K~udsQni2N8F+f?N2I+zpm7C&0;l~k zKv#m1cwmL*d4Y++r>X#+8?Mi&W#XBJ2JV-{vf{RPdp!0>z8HUJUyN!O0E}DBH$)P^ zhWl4mjz#<1gYbzCLo{&q$R9hNMndY?Xy6iKI=Z@cK;DGyJ`(Dk2)@4t=g9Q<^tf>w zbbo*Ugz0P)%k*f$JvKQxJ~^IK|DYG%{wYi2cXu~W8$*(hmZW5^u7KPYYEE``cNh^e zS}!g!AwVWxFb-t9<hO{x-rBl1+)k;}L>z2>NXH#YUTCl*7oenk`*vn#rg!Bkc93ZK z_tpjdYP+3Ki<?7EUT~&}<>Qu>``Fmn%7Z9R*(YuosE?MKl9KI3H}Te2Ou$<ZE=h3% z%)JJ14}d!HgAqj<E3pr(A*_wlek$>L)!{&z4HkYX?_BPHkQS?jO3RB732``pjU%8z z-gNjtwHcE+s4>4B|7xWf{*;aI6Me1)AyTi+bGb=sI#-^c)?)NMU`VJs0~PhaqFv;6 z{3R8mgsA1^C_fBf|1ebmL-N?<<nDaa_7LAya5>2D)~Zur1hNJ3x2zR*`&@@)6lT-4 zI5(z$|CzreYV!adE|Sm@6S$JS!UzQGfp7<nl&{tE3S*A7z#oW=O0?Pcm&>?%GG^W+ z0b+$e$c%uadcL(NTmEKbR7GE?BZb2XuIb|Rvc>Iz)6;Sv)Y641o+FsKhzoD7wvf=m zkPy$;FKL&5P4T{?3n8%nvspC%b9KGR$y%>TeQ0Gx$!zfw?PX@AxrGH#g+u`I2V9xu z|DaOnqL?VKewc8rOb)vfFciGm2QqSUSBI1y-^u}Uvry}QWb1S@$7pESDYGtxrC;)? ziRT`#?S$OvIPJY`?2PKHZ$FF8pL42#X^bc;n!HcVUtvjpaF&=TR|PcqH)t9dd^MYi z{JHW2IT&ROIHQ8gn>}0Gon^g5l>n;6qQ8Ln;klpEKK1(~$Fn_6YrP}a-l3s1PJ0o9 zXleUt)U8MDjzWZgYmBZ|a&nf`%hkosb;wwD)I*0WoAVKmw1DS%7X}G~>(31P*)`Yf zQxz38fqK*V*rzR1Q?^H?uUE%D2=2AvmKwc%`u518L2Tfc|GGnT=ltib_RG%-AwMxl z_pEzg^JP@EOOG*}nDN(!(}B|wPqqHpAAk;0{B;MphN>^M(r;9U#=?01X4_Uz+5=?o zh~clVu;JHWg%nsK-`^6b2v9{jPF_Sm{HpYL2&BzwTTqbA&=E%!h)00U6dglcQUZ-c z@G-QgNmx6_)Mzlh?I6XQ3_}E<sto&6)K8fIpwj4cDr~t5+}?XEJ*3+J2@8A8ad4Y6 zj;m&jegN8Wp+@^0pi@35QdLuRyV!AiJda9W<ii3pw+Hw~;s3rAGQL7;KN!F<2d{Ey za5$y$V1@=4Me>$B;XFtA$?-XLN29}qiIQzE*oJunp?m3rP&94jc{&&z^wT<RF3$LC z<>UY!$WcyG)k!AU`>RZ7OL=Fw1PX}kgK$M7vi@9l1yCzcQ3M5r5r9d31IZ9~Fs)tD z3sGxWyPAT6A|%LU;cZl=aooRSF<=MHjyxW(FEunGhxI<8AR`0hCp<h15PR@w%9|fQ zs<zo~nF+64Y1k|oo0#<V_Y)B8Oc(3xTdJUq0RZ*K%D>b454aAwXrrj;=&w7I0JTKP zW}u~~cZ7~b1${Z}|NZa+MTm~r_GWFWXt^A4e37Jl9kpHpBs{RbKFpt5AAxGMFtGJ4 zP`QZFA-VIVoEQc`c)a~pKY(`>Fpv!m4dNedmOT9e0beXW#gW(%K9tO!%;Sk^|M!)* z_^j>S`_oHQ(OQZRtl<TnOrw*<a+doxXwPTaemQS4mmb-6{Z&tkPmL_8ceO^wVgG{( zfFBRoClh(XcHeu#LW?R6QA9QDzlZNfcKfr8E}#uI)kHvSayt46Y{%jznst{Te?=j! zL0bF_0JHqn>>MdvmY;?TBXR=*YHM*l%&&1UUgO~b!^y?ER6Q7EC|&_E-qCCeN&$a7 zL+aU(&`!*NhBC(9R4ESnd0H$Ls7&Zz$TERj#UCuo1?hqD{NUXy|NJKmuWYHihX#H0 z7YUG|!K2lmPL!&3Rwv7FV6AV&#$Nk%1qDfu(m$)>pvQ~x#{Bo!{Fk<VViA682L^=l zQqx^9ko1S)oARb|c#dWDM2xalh#SfD^{IBU)3O0du}FjAP25m=8sXh50%Gk;*x|~N z$<cH+%e}DK&>*Gk?CX9L8&mqFYjiYl@8x7<w0fK@+=Oaiu=e%!ot!*uQRW_FHdSN= zh^VIA0|Cch^!q>RD!=PD@;^3q$D8<Q*}wv4@EoWOGV}B6ZKgr|gU4lJl$gcG#F&0b zIhC`6U|950%1uPU@rR~5y50dGD8V_28*2TIO3Mr$#|VI-0QMKt|EsIZ3`81jkOutI zRQ~sqx@caa%VvVXUsf(*QfhoUBM=+n*>pV)`ocyvxu7oJuYb}6(o_{j!n}4DSV5bj ztjk%VH#)KuAKP;3ibDXXr!OC?ic^KC$$^T2NT3{r!f0dp|N9Iy@EH_3#D~BeA5+O{ zCQM3U4SUBI_L?VFngy|hn6F+=S0O@G3p6@qI=t{Dd)Wu=d9!tOGu;`RLxa^?fHG8$ z0I-y-q~z9dEAd~YAl!V7mFJ-r2jai1%76d7HCWKis6r}{hJjcF0i@l%h-XS3&(y@C zhys1K0`YuVL4gPzPY{tFue-zb2u${1Z-4(E2%F*TT0=I`P$KX5SZ44}_?)J4S4wGW z21{o<7R5Up%|!fM{@?${rSn;a-`+xnm1gyCzH_>wS=5}I95m?iXyYKSAhNuI!sSf+ z;!TJyaAKf8lMxqD-I|n_iF*dq%t4Q9^RelZjLf|lt?2P}zdsfTvc`atRp;!@w94~b zJplPW9Lm|=wgU0g*u)!5le616F@!6cAf*32rZ)Iwu}a{I6=-rKH-N9m5o{Tt6GkL6 za=afoYBy%_D;NRH1rtO_-^Ns|5SP1`IejsW#mTR^nI9vD-1l~|$#rxKIx2{QjPh4# zhJ8KUY}`qg56LD1h{bc&$P|q~6UF)pZ(#k}oxW&t{nWGZnfd$=f%@MwdP0`|3`lI1 zMMWv1@YS;T4bZk~tQJK<sCVq<$@j}!RLcZr9rnD`rk{2bEtYwAT+Fkv(0eE2@9Wz+ zIRy<a?FV>@&@e)QPl}2Oh;kZIgwMkxp*lKkZnW-YUH@nXK+fhP8(=ZDs=l()>VdQT zj5U2fL4nJ1E=ZL<{}MbQP%gvCn92j5eE&zSDED4g;r)Ax|0)$XRagH}Dgs^g8wm+< zSy|DD4{@}L<J71ipCIU3>5L%0^W^)FNiYWiPKXRgTus6ls3qN<t-&r)>gTdD@>J1& zSKB#7MX)7LHff~kLXIxS-vpmaAU8Q!cyIjr<IGGd_Ok-O9zFcDwC3U;fgAVvX5eWg z0c&DxldO&oJzVVB;0dhK37xHM2T<t?);ku+P`dlb`f}VafB%0)huXlKt40!r@gF@; zVPfIK)lcs3bNc`2a(A+RDf#!0x7m~dTOy|2H#2!)a+F{|dpbD$a`dUqcJJUf$luu5 z*!XcuK|{j_QXznd*uoNtPeltOis9Z<7hNF$;f+sgpoi1V?M<lmS6Sp1bshPk-jQFw zgcbGlhVhke-Ar;P5lO|75(*2DMtpx%e%*bJsAj#`%EiST8Ji{hNryfN<d^xSH98+w z1L;K`UYQJ!4|4P8BkvZsAXm7pLR8D^w&(w^-k3{<9taBlc}Iig;vVnhUc!hH6I&r_ ziRuH1eGpu}?B?r{vby@`exOzMuhmkH=t0o6p4+fPU*`u`Qn>cjK!zHD!3&_425gt8 zxNvv}9S__?GniChB0o?DpxYt7LZa$;$N7%Thmh6bClFNud|D(s27FyD9eP~9WVEBj zt)o@XotXk4JBWHm4HQjw3)0t#*l<Zpm><9aLiwKqG(I&Y`(D=P)XdVn15yAk>VFP> zVaT$#w~X3fb@`|-dVh9_{2Q4#+DIS{1c(c>jUGj%U`u1DE(tmQ&VI?K#?NybCm`yi z-fdk$U7Zty%if+XFntjW=lLcE?+Y`Li-$oQPt{RbtPN(ZbhSm0Eawdngu^X>*fS4Q zagl@4Ix|0;%3nD>&;#u%I0GuusCOXakrN<6z52fL@52x=VWy7h(EjIHTQLS-tGxct zSMGZC_!ynPs@!#b_0#3KU;e@Q?xN25GjjF`&gwcU94QSc_r4AuAdR^JCRo5`fNP%U zk=`fh1;xf<ljG5R6JM7S5*;k))YsRsf|P(Fb*Lx>6NBCS3tD8VBM-Xk>E+GV;W{1$ zMpE*NF|2+UH$pI2mzU^4f2IG8@PP_?c-<YX2Szge6*C%@XmbRPe7-78L&PNgw<Y}V zHB@k#8i7czC2ckXS}7Zt@4%J^w1+nf{ng3AI=;84U-r2wZ9W^*8X?rk((&=}0V4_( z70#o~3)%u&T3Q*IV?_&D3p)NB+^K4oHisj8j6fZCGzhn6IwJh@v4mk_8Z~(EIP2YA zn%v#QjHaiDpG>cr1?zmcW8%~nB`<5k31_*?jTDs{e*I<X4QS4#Q<}LpD&p6Zqwkd$ zxJ<P=Dl2!&)ZXt3sW{1f7|{GG`%n|CszqRE@WtNVp2Aw$H@$*^wsAHb%piqY0P_2X ztVBeLX!Ol5FvlLAlgelMCeen4O{a5j(?`mo?B~en-gr%0N8@eEv{ufT5YBDIbgd=A z)kWf$Z!l5L5{U3H(K*gXOACUB*?=_sv2SoNHY)0ay1KHel9H;jDu~zm@S#+vD7Q4i z2sKw#@<_-HIs5|s*3j=EdSw|K5qWEC>$Iw*sA(I_ds>_}qT*Pj5Hbe`^uGkODmf^p zpKVNG(dg2WlV9lPfraYt1HN<%X=)CJ2U}QJIPOnWRu+To02!r*&VPgp|2a`3Z7*Q` zq$y@N%E@=?I(#|++J&hPHspNjdImJxj~zLdL5Sdtld0hW$zDNG5eKN&KV_f)GwS#i zrZ13UG+<P~_Z9fhdOVzBKB#2lY#OsqZpxo;7NwvAHuDWXJsmY4IS;cy89J0Q2#?3y zRh~x;R)ScCiqhvtR}9c_A&r+QDkA2i>o>T&K$n~ogFgS>lZSk2#njiFD$!YdpN)k0 zm*D+N)-fQzs~lTyG^xMcl;|;ZK(~X#fh|N(#muKu(g)NbYac`JW9-gm3?_C$Owg!^ zDqa2?CAFU&!ZqLf#n7X_%=n^{%S;SsYy%EFs2o7ldLKVl+b(&F3j-<L8E(n-=_D}U z03-c>OT-)D+)!sP<&fswMxXTBu;|R#u$Lk`Hh@2Z*PNZLKytMUmeBK<m<#1KMG(!W zJCS~jk50&?E-TFYS@JfEj6VDdqf5?9U&Kj7;fs@jvh_RF^myJ&IC7)_0Yr>wams*K zZ!-Vdau03>KoLJq5~Ag~nd!3!E)8r}-u%o=ewWXB|JD8CFw&gki6d;XPpC4yH&#<) z;SJ*U34xgus|k3m8h77il+Ovic8I^J#D`H4lu3)iul@MM;yFID&((4Q2vqUa^7)ng z5k)ayx}#IP2_75*c6sw10LBLW0*nMd0ax|@a$N#2RCsy{STV|5sJTf>8c=k>sbppv zJ^+)!3-~sVhlrp~kYKQ@0Z5j=H8cY`_KN<+qZ<1N72*j@p{%Yffhr+<s0H{Qh{3%f zzTOu&j)<bq-zkmB49f-5`Nd#R$OOQM`n{Q0yQvC@NCqcgSo~~q2$m%Klkm&0_lc|j z_rZ&3@!r#CWlN*4`G#daztOP*pO?LD{HrbG-6<S73@x?>VIlIrSi0XERZq*J*(Z7O zxc+GPs?E(4KCJ&77z%8YZLn%&Z07v?wJ55noEo7Y`g2zaS0FCKj$jCZqt^apl}`su ze;qb`h%%+LSUv3KpUh1viFrJ1foKSvslPuoZWiFaj(c1n2aSS<$KUx6n6#bJh%G*H zdK}${kg2{vepjUo+e*{uYAh*^gY>R3Y=m&Di-y|WTkiC9AR?58BLDa~i|=zIzX!jL zjhtLezkU)RevpFqhZi!ST<~e}&FWOHy51{Dje!ti<E)Xa5vE}y)cD6TyZpYM5Qjiu z(lf%IW8>nSwpo3Zv=A0YY}RxcaD}Ik=v}FopcZd}zw<yrla*DZ_Q1-yZ+4c8LwIC- zLW3u-=p>iKi2ek;fqZqP&iE`8930`&wP40$)Z<V1SFo+xSMsriR!GQuXT=NP>kLJ} zLu<eNm<8sTtDUJ}Y;PS1x7WlR>O7~-{CKOCB~QcHQ>)kM;0?ezb4>Ug9oj-d-rdlY z%vV1w_!l+u&M`sLq#KSuHBnNnxMx`vsSe6Qoc`D^Mqocdf0#La4)rPJ9MFPTAz%u4 zxO}k|tS-}ROZP*Q(QR$zd)3qGoRQF5STI2#)cmI_s?wrxZMi)E?fv)lx(AvuF|UyU z)xq}+rV0RtirLfX$wOv-R%Jx${nTk{u;lT!cQ7|Tf3lW^bRqB34+HKlF7uu5RaA)D z<5iTDURr5$143|niQARcRJed|)ppZ>&5;M{>EO^47M<m%ruJq*6@sba;dIiDz-_$+ zhf9zBr+vN_C3%?~%|%JDNyuEM3~AL@?q|<qV4lnNsPZT`izDUTSH$<a-ghgp<8g`E z+-?~GA-9RId?lUn;iy(ChVho5k%EHIhfWAU;3=o`G^ck3x)XQsF-6{FQ>VLmUF^-f zYc|ZDi=udr7YIo5u^&<}{=Rs}Bzxof?Z>uEk6f9jV6HI;J3wx-&}jP|dqinTI7x=6 zrhrc-E}i*$XWweM*=cSNUfhSn+{oMLN#XTtA{&^0UQIRYKg_z`*IkHT-lww!cpd`& zE`ixvpwTHe;U&q4Gq9oyc?CcOyj@SbSaXhqI5}TkDp_!vX;K?A(DKX*ks)G+6V9ED zztQoR;P;FoCe-_pq-OEwha8vhuuk5Xe*@92n0VXm4}#;g9+H=HoHQPY4KAIALr$m8 zb$<8NFP|Q0I-!E*_9x|EISg5?KgL3!@0^Xh3{B%VUkg!w!Yhk(SzEY2<}`<gS2m%- zGlWU>*KOUbaFY7)sP}+3?jzd51r2q*E7&~I5k06Pa=E((I28WgzV=5|Q(Y1~yeEM- z*qDsTCpd({H~>m|B7?GcPeXNom|0E6dLG_dx|cS$4zv=j`BOSS)Ol@mw3iSiCWw8u zxjc!ZO)A!bCwsfOaq@yh=V0zIxgI&w+K;A9@4IS&%gFSIzFuN%I=|QQ{kNdc@td@- z3lK=sTR~Jt(yaU7IrpbQlu+b^^!fW=n>+)j%|6ZAq$C3OYt=TVw@w!~jcCuo%Np~F z!4J<^lZ1fqRoPeQS(Vs0Cw(7%NX30~nx~!T_F)#hzxT3A<+~M60Y~>5x1ELd5@JNr zIDp(^L_2_#>qfWLu5-=Ml_tC>{t_)tzDjQd1%aS{d)9BhQVJbyVBI?_oAKfMt*xVr zYg)?`U?p7(()U$J<@Mg^N;)x=>g_+hqq!`89phT8rpj<u?;n^q48jY^Pd0t4B5HA? z@V87%039?jF+#Sv2KKt66K~L%T6`{_?rv#5Gm@0-Y~z(bIM-s|N)*YfAf}Z+zS&Q= zbQTsJRcc#Wpe?7DAU>RcW{~6AJl5YlGcYL&R5)^hHv5!D)N|hRTWW4pY5W+eEVALS z%#4>8pnaWW)b{MjH*Za-Nutf;$!;!F-Sjd+r|-AgGZTHTqo%S2WTYCcE%hoI%lS!- zZyj)6S4)*bOTPs!54V}mrrG(b<D}DpIMmJU2H?^z56Q-Z1Iw*X)wa79(tg(oBt)V( zh)_zL(o`rV`oq_Amrkq09F4l9EZ@p^l^m!=Php`yo4QIGng>Lei|r0yOpNbj*P90> zusA1<PXp3v{8a?<Kp%4w$wfoYe)#m{G^(DoOUU~mY9F~j(!{lfFJgb_KCfVh*Yt;u z>QC4vm(OSLY4bYW{}&6$UHtSlwS{lxV7(|+V0l#0aiZoW$AvG2SiV;bk1G#b1Op$p zl?p;id=73W+l2E%>&<Liq;FXDdn-efx7rTM3^f~BZTnphXUu~_&x*R#yhtL1n(DWg zkZucd3ne+MI)5ZWl6b=O@HX)_%37OMfOGKkfG%7{KWN<$)t&>RlC>@m+h&_<JGs7i zG{DEbh9ko7y}c#=ZJG?=U%&$nRn!15R};}d-aCteZ*>k9I0D}gk!kX4K8u;YaXesA zBN4Pa*#0%W6E)(;Zgc72!~L4i4WD0HGsNqL>G&F6dgBdM9(=%Ym5hi9ZdX3C{nzY` z&5*A=!#S}D$;puJM3q9V;XfQbuc$=(B7!ewyMz2_HQ4rSw^Mx-WKx>qty(1KH7vQR z?etoC=;@|R@5o)~;!!Cftv`M21BkWj_*+9sTvXcBR9rmL8`#$>><9NFg{%dN1<Rc^ zV?TX@{~UipxnOwVWI<E%=OE_x0k25i_tuJuSpQtzV*~r7i)Sr3MkW&UZYS+`L2up$ z-UUhJLoFeZKcoi+T{h2H=~x2{YqQTcbetnc6*XQZvHdhwq;i!Aq9Jy7I$7yt%XSfM zLMgKzh3N=owiz20N!g1hlwvM09K>(J<ZJ-4<1Ipjd^N6Rf#hk^klYa7NKwg0rnriT z)$XWJo~;i*3?CYv{xnJL?r2$2h7x0`Pjl#FlTnbnoy?+Iw}<Ih$Be5?>CU<uY$<G^ zLYw&WvU~~X_V%Ti4lJf$jU7AHE(?0pxFAk-WOk?})Cy_Z2Vapv(Cu~HtWk)G557!0 zbq4vP$M~KnkVQ(Eaw)?GHU?g&+cokQ>`Pa~LISUrTSrDkg4{|;8}hT{>6Q7x<1kIQ z65y68@lniE@#Sn5!uETE{;DBDY4fvzfy2Yt?o`S3VX)p5pgYtVlG?nlaKm2x15{)b zt`6P|9G4lV%`v7Vyu^r)N!dUBjY^WPD@dg6_`M=ZfA~m;%<f{&O4(#(($HXiVWFkN z%MTA5`}j{P*dg~w-!VDF#(rR0kaPpXcaHY*^yJ~i;j}nAaE<5+dX?7!x|^aNC}2Pw zkBcQ3E5$#~o&=vj7FXI$9nd{=Dg`MSK52=xyDe2mODGp#eBTp9jFk@yD!;!>d)sS3 zl(Z$~G{VZ6{JZ=y*Rx4%t!D_K;Cs8l?1=lF$hF1?y}H@&j0fYV9J4hFv$3qNQlJrH z68!th{&?S#h9kt#hvLSSY`k1jCYHS`WczyAmntN4c(W|0>tOSOdx2&fs2+ggZ`&#O zCy<njapt!GoH%<>*cF&sR@7D~$l}LIk$^&z-|1uA5v8uamlWjFx1OBoI!esUdSkwQ zkF<zO5eHkNJD7<diJ$;IT@Y=LRELK6V2VQxqStr6)B9$5kEKBI+meAzHzn+dCExpu zWI`pV`XLCFhF^jz{*%SvMNv)pm#&l1@?6w2>hDqHbxT5-W4Voz+uP8*Ov_*5J;xix zIu}EG%8JW3p02wO-<QzW66URmv&T*=ze<^Y$;tG6wse}Te->D`FC`!^Ezf&;O|*)X z8LZ#7tb>q(dq-22m+AXc#;OVIz0RkP8#Hr2Ueyfh2+{Q-S;^A$Y<Lrk_<b1V>{4Y^ zM0ugiPAhU0i#Or^&098_{e{r|zqLpE5~GkE1m`OfEuHQ3oq>cH|9}TFoIK5ONo~$z zpR)3Qd-;sQwE{{*<mw3Gxe>YZ3kT-3yR-Qxut~t~%hDkb(q+*^FzGE~#zfcDum^u^ zr`K)%x_;ef4_G?+AIHw^<?XO03XtrK_FMXk>hp8oK#(Nm?Vs)maw03_@-Bhcw#?c@ zma*aKcz4s1E8}~d8}CJ%>$%P2ABZ3Yb5G*9+0bnX(1-Ly5G-Zr6oK0_UC^0_uPHmY zN+(5~aEhtO<aByNU_`yib>5n7++v=q%=2osD(0*R2v_Ikv=A=uUw52<ygBz*L_ju? zn+`r$#P|Asc3hKMtH}*0JrN?qQBj?tGri43TGh@6OHUiK5c9qBbBDXDLk`PZBW^Nr z^ngRH>IR2I*}NBU?xoAW`Mi5`QZOP@$@JUwgPXUYtotF^A1jR?>5$M1Rk1jQKdNHi z+~eHaER?k5I_gAd7UTUv^gez$7eGm@S1?^byB1IYvrK-B6wIsA)BDygu@A{0Q@x71 zfk_uaObFT8DjDxmXr{u`hDkK)=?4893{vRogYl&5EL-nex~XKA1^b~0)u*3f$A~y8 zSRGtJv0+49IGDiA4uVy{a*UNCF6g^Zn(~RsQ4%hbuCM~EnL3|wtK|$sF6+gC-rnr^ zU$4)XtAl+JF5^r>f+JG+u@tJI?P2vbS!YGRpxzS709`8R0x7}3^q9E@bZ)yZ%g+pH zhJknumPvd9vtB$5pVxLS_Qax)C<2xa#f9`n>WI?A?Yd^8hU_E!s7QRxd{2qd@*8^S zuwVV;g=U$;)(h|MlA&HE<GqF6>}bUNs9KoSVXSF92RD&6bB454{ESu%lovK>q5__K zm(e5)=W;(x4Yc~=OqGh3oN%WY+;u0sZ)3`sW7zOlSEWk-gd+SQTM)4KmZ!ot+MJH~ z2uI3(rUlw?8J$2V)6rN$4CJn3UqGNdZ)9^@Gg0IGbICd%Y6T06VIND&cD-ELkrM2$ zrJHkyh|V`YN;y7YsHMZIrv*WBH6T_B4J;=DD^xui$Ty2JS`H^<*5_(yA6|w0)50lH zoeFTrTI{ozJ?8C7iHKxKR8gO+Tyy@Z(68%;=E@{6mjcN*#Tx8k6@VoC)D5@%(O+;o zUapOA|DkyWtpNC<ZhAt3kjJ@En+?ohQdMPT2Gv!=Sy8BI#N7OBNA%7Pegd=i7K^?8 zRpz*azrSk7u+Xo`A*`jlJ~q4sf#yW#>)XRS-G_kor7wHaS$Mg*x$T1MYgj)uoo@D` zUua^j3)xlL<CT`qSEsoO*}hrz<Z1J$GVUyFeI>B73FK1x8Vn^Z$AOWZ-&P%L{W0<I z&<+<PhV>R2ofPC$zFj&<cnY{EnHP+`5YNaXDHhCkz7To!LE#fka{uk(Yl#N#71bYU zX(X3bEL@6{3#tlfWiUO_%@1F(@KK8;iRWzxvc4E(>ud7;W@gzMk{U?Dl2~B5b(DER zT4y?}w=x@Rq3qhuA6!_o$I*Re@_~6t1RoPK*R%2KfQtP&x(j-{NK1|aDUjBHoF3LI z{}4s#g@*0Vy1GlLNh(QP!QtVAY<7~LNAyMo^S6Nu@tghG@guQ=-xe?}aO>}uth86W zJijUG!dCXrA4^0U*HrMX&lPEE{~P6)DwsLIc|nQE*Btr7drQ#3Qr89)Mpa&N#+&XY zgag;-lwv!-#(F`lw78^#`e*T=h-7sR9Wis-SFm?UyJ~ktD+)PchMna2-OZeS1>X9o zVr(5c>efzQ-TL4QlR4K}aIta4-*k25QSaoNcNSH>UzBp)e29{LOaIof!e$^nqg7J} zY#=LiUnX20KE_ZQZAw^z?(%!4I2taa``D))&MkO6p^sJco!Hv${E1>vt{PhmMR*P` zzdy5YX<P3kB5r#HWfju9@yLYr6HR~w=9QN1p8uG7b?{mhCvH0YQ(|gVVQF!0Msa)! zgoc@33cZk@ML0-llai5faXN#B9|&w5u4i_S^)RvzYQ8KPjrp-2Gye+)<@bNjb*1~z z*^!EvZz7LEcQQFC){NQ&0`_vX91&1=*i1G?v^W?6nv|BRcL>rX0Q)|=<$guC2)hfM zKB`65!$)a7k*_s}3z_&mZ*C8Po+rcgs*NX9PoRw%q#qTTY7nNlfgWVunKkzv@7K?H zjg15~2s{mK$<<7s8ee=sFyl*SvzG-T=kam26;vjj1|~*E;^!oP6rqp1TgnSdX(=%% zFqqumP`?z1hof?MJJ<TwelAq2vlDA-sLIpS)->7P_yx1vY^CV%{vaA>9{^-#M!iMe zonturKh^M-c0na{zufsW)P+yry;?@j%{{W!WN{ep>s}Z2PU%OSyu3iZ`h161C+1QT z8znw!`>7Ve>(#c_LG3hxV;V9zeMZFK*VVMf9YFvKQ58)v#ebjo0T!_;2hIb}Q>^eu z$P2gr$*=}1s-nV7-8$+Gqt^tg3{-d;Fv8IZ&;hUY#02guqQ2-Ji$6w1JSsul2Q!Ys z>XIe{-IK>$mC1#BGzn$4&%Msj_`e>or<ORV!fHWG2Q}e9SBN?EXd?^kt020^SFD3c zx54hPJ1r8@2KLJs9Tr9xI&NKybboZ(uYD2d=LF`5g~Zjtvg@M<nxIP&pQ8xLI%sFn z`#T#!$6IEw>_~e%f|^<~>H{kXY@Mw))&PQtzVU6*doeA7yw`NvE~Mm7gPvV~I+Bmx z;Gts-vI_5<tt+P1XcFILDKafM+r12@4L&x{&quQyH#JDWV5m9?-(@)-#mgHcl7#+( z&zrI$X_=_hVpLvGJ38IxyAl-2s=P3tnpBd5*y1JO%jcn1pT|R%Z;wM&bVd4z8tIT_ z(N$BX?8D+iUZj<j=c6y7#MRc6ui>}Bp)%}!fZ;?G?tarlXu;}byZ%&UBo-8|nKHRr zPfo-NDArbg1UnRTue;ZXRJ60%0USO2a~4|Eypj_urQh2I7-Vl|TP_@vzM5eSbi{|= zy%Re8Jid19Ac>|C!TQ0E4&@~}g=+8xbRLBSC}2GRH<EHi+VJp83Hxxa`e32Jb34Kc z{+1EvKR6-^`>aYZkhEgJh`2mU=FUK62NvldG&rOPh{51EoAVSqBBK%t<KPgrB9Wn$ z6_3RNyV+IS)v?TzAeB(6_th%az2)?;tzYR@6U=Lb9ABQHu~k{fX%q)iPxK6@{*}^> z!1GsD$>myGEcEJ1X@?rZtPlgpeh1K%Ks_=s@31pDG@|6a(;EzWarY}y%{G(Q_K!ej z>e3*$9WlVhfeyNO2EE@qC}WwLF`=fB%J9CIy-Na395!?HmQaztKH57p5?^7I)#q9{ zZT0UORo*AFxIL!sPIUZLAB(B0Zvhh(unb2=Xnr>PRaBtLt%p}OfQXXtLD|gCA+Xwq z0y;QB<fmL&X(Rc5SWdxMH}3fN`ooMSZs*;6i5>+NWv3My4-%E3bfGHO=80&(WSHdf zeRWvJ!Y6ZA*HJE2PFmwrL@G+ypkd=Dk~QT6D!i6w9?BeClm?i$>)T-6^x%8BfIHtH z1u?$)+BCQAt<A-jr|ULzDxEjv$kL9bK4<x^RoxS!`)=`|O&uGb1nE^>zy(XAh;OLO zZ$l-{jqk5&EROQ>{35X_?R$QHG*cnNK!L{1-WCi}5QivSkd~S5B3Sto1riHF6Ur{m zFAp{N=KqTYwAk+6&Wv^<(#ZiS{T1`FluwrE?)j89!mii%*x0ZMLq+B#XIC$mITJcK z=>lUTJI9mNBq@!@u+VRBwVsBsX0P~5*MIoK=3=B%U_A~xHeNjj&uqAC)x74>+}2z2 z*gA20+CZ({QlIGPsy1qLFDgyutP|Kb-x=GjpMazLg$s!mX8b-v+|wE?{8Wb8pgWwT zv1@M29MH&#Ll*XwrWbpP((}HIKqUXP^BK8loGz#eD=@*|evv6M>s`BTZ<9WIQpO@j zl$DT}UHXIjSZi*y{H(S6pVUBdzegCE-(v89PeSCvi1L?kG<zX$Kw$GDu%koN4VTsF zFT6N+0<`om<aI`LdF**Dw?G<3t>yS0FqcO{ct=s2qCSK@i}Qpfj6bQoz1n?P*o~{L zjgN@O#TeOgq%Tm{(Tb701PMTHr-QGxRHutSF`PNqTQ2OZo_afz-keSf6uKM?fn60< z*zYwoOo3%_-kJCt?soXTdarG8Dsa9k$$O!O2G$yKn&0n)g}n!4Mq`>**iHcgp_NX_ z?Uj-vkugq>&DS;j@N5%UH$Wt3X)e>z^K$mhGoPOx`jw?;XdFq?)3JZ7`8H4T6*GE8 z@3pZ+hkX|t&rmc5ZPhwv!ASBkA@w`X*y*>%aH=<Jts)J-lYW2t%8K*MY*q^m@#Z;F z9!V!zve`_5`~X&yOw#L_<?j)%lz)<NntyqE%nGfGByB+#Wj<yW7vI?-vziL)1KAFK zLh}%AUPS_-kf0S{Z$7qhWE%%2>Z)P__MgL`ZF}zPLyiW55($8&^wtzg$@-oZB=_Z) zW?K}RMyI7<CE=&V4d5$s)3KV2wfj5Ar;QmBNLST<2#*unTDrSG58jt+WG4PC-eaa3 z2$N<tZ;R3~n&^(MJlY<>u|Ka`haC3u1o0$CSAd$<dM|^jE+OqFHEoz_$Y8<aVp&vD zz$rw{+sA&F3JbmPt!>Hu9-TL}nEd-qHvvWIyDC|=C`;A}FFZ;%noxpCmDtm&A{*VS z^Ml0?G8Obpv4cLdtzHAH#0ae01*J5<uxk-z82*+`M-VzkNOC@2Uw@sSI0JH5cM=o9 z1}TshdG2sM*GWdjSW=kz{)2|f<ml8pmJu#?c9x0h@$qr0f61o@LuHlMI;{+Ya*?oh zM!JiG0CS-7FALD=U=PLTqaTQ_XwYrbAKV#lHaCobh2<=-2?$sOasgm5P?FE&U?>EE zA}wBb`ZCs~9(Gp@A*rbc!IbX7D?e-Id{jPv5f(x)oADQ72DZz?C+jaIrpA5IH=8NW z+1ySYb{bB#oX5=f1#7Fj<N5lq9l;=-sM#N+bb<uDMyI1+&Hat(n<t&_L1Z4aq=@`( z>7ETL!x#&kc1cywNf=Nd)kpI6cdmD={4)s%kOpM54iyoT%R>T>p@ZY<aNm!dVO}@s z5L7lV$>TrjtMJ#BkUuszgI^|ctU?W&g1#|uJ4#MWn>q-|N;8<-1qihjun|+R9wcR` z&rg(H&He_9rqMFt5LeY&8{ajefxN$O>oo?~KfdpCT3wx=%E&5oM}6<dUXq$o>$^jQ zRDONDw;)|}4a~DKw_FT!L)LF2u8T<Zv?CrvDv&`SNz)WEAg`fgq&HmMy|D2R8YN8L z!Oy2J@TU>aG0K*FBW~5?YWDP?k|N2xJDN`!sqqwdOe371QS4+kw<TF48)2{Db<~fd zP3mPA;P6$lzZD^`HbUo5rK^_+Or5|s-hHqpE-r3mG2`2fMtzv^0RGB{3#~7ArgNPT zwS)0TBpt8h_z+2y0ZH;vp&cr)BfH#>Om*|~H}niT6j9IPa^vK)|Hvb{d^3HXV*om8 zo#t#XT(5a3nKfyiuIUA*>Kd?!-rr3Q`5JOXU9YX;f-ol#1X&QAaC^S@xO+DJW2F32 z=hoqHtipUf0H{y*_x8~BCkxbK)=&3Ls5+%3#U(4)4+`JXR~SVEeGYpDf_{chbT+o) z2LsR9_*1nznb?&9TXyr<nOAqjkN6VVdOBAvE1*`MfJ4>9ozbs9JmOX0$$tJV1fn;_ zLi`#>-chU3_U0C-GiS~M{oW;~cXm<+A+E4z&(#;%CH0I>RA)yH3?C!DM30AUj%2w@ z0G_}0lF>s1fJ>4wQVEnT$ATf&?l+~q;O$zq_4V^Y`;Ai+?cJS~E+)#{E26ASC1vTl z&k&9TXRk=)q5h$CZ;P~mN;kQp?gib&sfDk9=axo|b%mNRh8;EJ%G07iMwi_S@+@w@ zo9q2hM@qa7QQ{h*MKP=f=aNuG@Q!P=7-2E04aE+!cL$h%YI@O~M_q2ytB_KFk7T|e zMe!hzUr-!YTu8CLfRS^5(A?2#)#k~~EEK7G+OhwTzgU%cc92}&EsW)^`BN4R;MV`J zRNzK&1f=7})iXO$>GuXNOLIzwre`dHs2%`2%pBUHC*MLwn&oPazlw1kydr$}Oe<b7 zRq%=Jej4a5S7A^rrwd0bJm>YrZpTY1?p2scrlZmxp(0Yit0`?B9TNF+V`FsIpCv#@ zW~IXE%&ptcYT9P;;_@V`+s4muX5<g<Tv_1DgMpG%qDeh|6i|z<nU8D&-feB}-CtKW z8u!^UKuj4!T{hkn6)x<K8sm(&y+9BB>UL&_Y#25|0wtk)O^7bSeSx1&aJ*Qr9k?Y` zYd?tYwpn`@!pPvSf8{tj2dN_g3e!up>$htGO!gZ0jnKDcIivHF!M0b`R**rx4=)b2 zYk6BDgK9R`=$=WRo_fyO5JjftPZcj++{jZ<D~lIS@T+bj0N0g^QD}H5C57~(=j7P* zHh)ZfJ9IOczsF4CZ?aJnoh#{TOzs|}J?5@v=TD`&u6k*U`~V@8<j0!GJHzPpmo?`) z&jnKXmy}+UHFNc>mVGnpOuk?qoZl|DBjRA$DjeWT<@!YV$)Um$1<l%WG8UxnaJg?? zB9FPkyM72}-MY<f-1GLjLLV0RgO@T$v`vphVp(MF_d7t0f`dM-MM$qNfYzIHVoOl! zXKi6O#30)?^6Y^mdqP+R>a6d_EYuVm#ttaDLAmI$7@am6Hs)0fJ@I_ZcF=|Vdl)jj z)70%cnVt-rDx?)ms$cJ#g;o_v%c-!@@-&o*MFN%MNw2!Ed2dZrCqjE?=lI=Z$`z1_ z++KU3+>$(x1j*DTnhh@3Bj3f*L0mXdLeKAn!J_P3b+^z$lap$DM~i8{=f}M!>Lmn` zH6R9tKK_qh^XJRIDk;{bByBLnfS}W3ZuiI2$3<<zxp_?1U<VHgd4ab@#RrWp0t0gk z%kod)IK;&#aP2NtY|UicA11!tVJVbyVwg7j5n#+nhXLK|qa4JAb|enS4s^@DB%CUF z2<6_Q&dCmZT;UuxP<ME5Vs}N1dgNYu{QQ}Or_R7^Sob-0n{d#&XotbZGx%IDFS_@{ z2bJq<olpU_iSbeMFL_@K#QOufp$#|*jLF(<tvGdG#+1jz;r0lq^7I)J3USWdc^u=! zj1i!e2aiK{h!S#}!>={u6T}eo3`>OC-pNSIfi0m`+uCk@zi?Y-xJFec%}mGFrraeX z!OrcSo$QY@A&CArlUU=*U^gojm9hS3T!J&KcsOxCqfHaQTULHiQ&rt~y(O2!p*j&> zBj=<%Fw?;}6DZr{d1dj({H;PHIw>#EdFpid*UUoH()GQF&isBq%H9g>XBgK+>lS9l zLedJ-StsGgM;}lHMs|Xn9wy`DOq5kWC}o=ZEZ9S@uX>d@j5$8?<;=g`Qlb)#{-655 zVaX!791;;c^yiPdsw%d_*+@C$Hy<m_T2@gJDr(d0EDzv;`Je>9OTVLXv=XuVx!!s4 zd7Q_B1Z5mc&dDOv*<ansPY>dfzio9%G~ZQ40V6(bcm!uw(o0cnpH>tnklRW;R}+As zA4Z#SH~ZTWn7u~62<Yz>Gegt#88HG6W?Xnh@@A<T*$8+!ioF7hfxQ$nn(P|<GjH?S zd0xh7dMsc&)H|n?S4F9449Lm*&Zvb)`EqZ`*j^02G(CrV_hnl792IrG=6KN#5mU%o zs8W~3cRfJJMu<Y<cM@MU#TrvXJ@T{Im#BL~X~@CVKhf!g^VK_>r><9t*q+>0c3P4~ zUsqh*_!{GpWh0ox#>8N?JlbdFX^&xnB->=e7mfRg=_IfGHEMzJ`DnR0QfW`UNFpyQ z#=wFgxymT${jI&NLx}stL)hK;sET@ky}pq*LXNPD$D6um8FD`n{Lob1jU$I3cRLbw zq_3LZL)yc4zo~;8SM?hs4Rg=vgX6Nv;*8TiNy?|Mre8phK!A%=T|9q%JCC4xyQ)ER z`ApwQHzKA-`*w3L*_Ol|*Q_vqnzIry1lj+5noKdsmtenKJsN>2!lBXg0oOrm=d_A# zx=iw7WkPjy#_f!(W<*#8Z_S&52L%}gs5DaIe+T)CNq;^0_8KljRw5fh`=7f4BuNR! zbYEuIQ%x+6ry#y1XQicx9_=jnAjU@_sJebIe?>YzHa<HI?3%3(n_C0Z(EL2GDT9#H z4U>N?snJq+AOVCR^VODSCI1riew2k<JzP(Sit1|x;dNQzin<Da;v-EA_H@9yY_GNR zJwR0fGn?yqSJXPn2d4wUXHZM9{cR9sb8~aP+PcC;(6D@DVuD@BTUU%5S^R^ZMxCaZ zHQGfZl~wZG<;7}&#YHsCRdlllDaYZ~g8M||d?e2iCygL02w9NMPqrt`Qk3n_c1O4t zS}ig)f!qG9c)duY+EK5KFv>NNuc47s&%b&F!C>;jwaNdPmo+}34rW~d>E}<DW-R{r zu>brOq)%~s#JzxphVPofu=oR_#U6*HbbnYxZM->0H+s!*s;=$evp5LB@sFTqy8g%& z%^nZ&h5>lLX^Me)ODGEe4KnZ;-El!FW1Zf|yaHoFs<D-u)0Wf|v#OS)mZV<HiTiWn zTylCqF_|oz>WVDUJPEBA@0r^Ylb`*{8khTHHRoaYRGSj$lPUUfN|LI(`OGn6tRGpn zdyeWuH|Lc6E`NgVa$o<D$x>l?{&Ddc>aBUCB=N2TN>TUMcT}ArqDB!sV=_=i8lePP zKK5Nv7Xzkl+PoqLOF)$#c`-E@zwM=Uuoy{R4|pC23H;9J{=uHeXIx=A|Jj==duD6p zQIV0QT&lWWrhm*~|F@;!U>Gde%~}wEvz~c4t;wz_RSPu{_qaVjf_XAAF#(IJeT{Ld zDTno%EhZa>&`1;RgLEY%euJQ2{-Z_jj%ZCSSptIMzGZung0~6PPR6Fj_VmIcBJE(o zvnH-&PnT|s*Z*PcEu*qtyS`mS6p(H~x+SH%8>PDiBn2d;8w3QTySqCjrKG#NySrhZ ztaZEY^}PFe$KGGmG1h_$F8-V`=lmVV8&va|%C(#dk(hyfaG@ZyI$Kk_xGzz!_lAH2 zKGVN50*?0^c(Y#*RAfUptNpxM1s!xi|Kt`Qw}&>QE`BOIgz;deX+KJT4&Ro(#t^!? zRl&(c4xxavJU>VX$7Na60@d%?%f^}m?`jEg#a*qDcj}>0Ntn1VLxM{Aih`AGa>RR? z5Ib_P1E()fchmH@&YeTw?Jg=b4(QC&`z(|`2>xa^j9U&1I#z^(dz^t^!7ZrHbVc&c zJonm`XC#|fCLF=OJci>Q@e-uUgvj#hJNhCmIMQhn2tr1x6HZ@vLQ#IlQWyO0@|3r> z&ZIfF`<U2~qNO>{)1ay>VD^&g5mZH+UqCU^t0>ERxmT2{$$ZFKSr1Y&+uZYTYh2dx zPx=K{R(NuB<_0{Aq&MtmsgT^Dd<2H1JposRLO{>=66NdThO19{QTF&m9Y+-Jy2JGF zDoZ034XaB}i*NJFdpGIfmTC-^G0V1iR@-DLHbhNFS2hxgKy6fH6z<)vd;+WH+?;Rf zH`yH|F~tqFMIGt9W6xRBCRhvQQWh*nJVlOn#wcJwRsMmi+6!^=+-xr3he=h*V!5XX z57j>2g?Zn>^fMH)$!ncsxlu%V$MsWBr<uwhuFwg5^DX01ik)AnwsT;H%XPW3o6qgu zQqp+jbYth;5+u$zf?TJvf{4E4C128!I_>snmJGb}qkA>fjHD?8cD#uCyPJWY_p^B> zSlGjt$ct%Q*&^hTxOH#mMNRWeN1V~>?zs6S47omJj(`E9jLSZ^<@02xSL;8IP9~ae zDROg=iIW!XUkLy{;6KMBB4H=nUHC`NMhDuhZzbAH@!tVsIWs-|LwgR0*@1~5&-R7q zVgp)Nr*KY>9>3l)Z5S9C0j}KBEl7PTTgiq*=(i##@K?>3I_4zQtB8sk3JZ@#7!8aX z(Py48e?BqlDlu)|)Sm?$B_2p3E(a}RUTJ`?w^g)--zysY6$XN5$R?`nmwc_zAPFvV zY9t7mj^3+W>}Q_0URGuWI!38C(zI&q8p_e1-yAPJbIolpl|z$B{<%f)8thph@O1>J ziEnBSzO91{6tI9~3JRDNE;N{gdUTBz2%za{H|D6U=NQ$}O&?X%8l|}vWUE(`%^RT3 zH6+_(!-ueu<c!8eflcy*Ze=2vt#szFblDo`%6kwf^^2V(Xkb0~8rPUkNw1?Wm-e7H z;Z1+`jhv_6m`(4j@7C(HrQWK-jmNSt$iF8*=IVUw+7I-s=^1d2SqgVS8A#|0>eu^+ z*)XQ1W%n&xU-VQ(C))Ti++O4SAGb#xd6(k9dEG@YH$G7~Uc1IOv0u&Esb-m(YC5lo z%l`&RJ+Y)%@HSds<300YUGJ1hq1Ud)905buI70xnM?UuRdhR+397q5}(&=Yh9&FT9 zlQUntimG<UkjL;d<Gprlu+zXI+&`mGp9(nwNSR=q!Q5yNR%gookji*_<@Sc-D;2ll zz&cCP8&pJabHDGs3|sd$Qn=rF75HisSEupl?56QjCTO0kX0vV>c`N;dvYVQ2i!Dm> z(qyJXvF6jz>fYSm`Q!z2(qcvLPMUX(v<YLgShEzG_N`l{J#R+mYg5FAv%S8xAoQKE zq!ghdyhX>@Z<5{2xuBbLv=h8x=XYPJ!CQLx`*^X{drQU77}q9l5<WpD$JOoS*(@`@ zo`aSO(r&ra)a+ss;<B9zQbO;Eq0t#`Mu{5Z4=Z`6lSrY!_`btwqqbViK-?eP95O}; zi}vLkhhA3C%f{6Z(YA8Hkb`MOrF+S_emwmikKQJHowFW`R$G9UT4xw0_>FlQl}NJd z=FbLoiAOxG1wE@2qS@?LqInm6cMG@fLD`Qf<F>t~eWpG=h+m!lo_+$GLKjfArSSkY z{cY#q(T-uZi^YrJAS8S~-}a%F`+!>W`AWmF+B^VX1@#d>XaGip<#GI!a(zfdx4fO4 zlpq?C@)E@tFmu|x4OB*Rf&gDunvaE*(QL7L95l)g=bT}XOqbaPLlo%|Bu9TEEX!)v zS)<|8IL|h?kwLM-xc?5pUS8flJvy%V%y!u7ZLkj#!OrJfJ^H8dEHs3J13b`Z5#elK zX8V(MJEQG{A;It~HwDq#rK7mBp_D@kOJhex#*r@#pUv}b%i>wyg0b4MQ#Rz!wmMC5 z2DHM&8p%^d#;Nqb5fbpG?hM;)r>HKH;J8%-&CP~Zwh&ug)5*KvLR7pgz+59G7czcF zOF3pR@G80rbehytrs+$HBzj&$IfK|QuT!h7|0no2ECB{Z0Rh86IG~!2lkp9y$!=4? z)O4mY4lb8Wfjn5N&hkf;0iHj;>sKpZOE`>eIeGaryGQ=Uo?)SSv5<u5=;S81Q^aT$ zPne<M=k>8%ZfWJ-Pi%sB1;t;=UGKhM=S;{oUgEpj84gystr6SYn<}a+i(a(%X=QvJ z%;f9~Tj^RUx!Th4vD@0vHNQo)*#C7Oh0S!0mt5`G+H`Fz(^5ERmXhL*knyUe7a`-J zfwQBh@}lYOZcOt0hmgUz*l2hpPVa`oxrOfC=^RBL)zv&TE+Pj}=%bHFV~SptR(O6# zbgbsKw*tuDxgPdV8%arTplx2lh$hGWRCt;^$OSEb^T#m+<WE^#gycCnzq~ox&hYhL zR_#b3=lhgG|GBRc34<_nS<&F@xSfst+q*C4V2Z!6&<xlO7q~Sjd@~9%T=!S<K<`B2 z9uIGOB=3F{dJ;rr`x=mEbPwn2#z2fQI*H%;U}rrLv(#=35O62Kz-HRCVsbBKAd6`% zpR+@SLg&{$xLpm6BwjcERAn>DyC$uK#{|}}ETaz~ti9@Y`Q&07<Ka(kyS0DE_Ca9@ z1|%J8><Tu78CB^Mhwru!4HWdF*S~+eIgc6G*>QO<r&BVPB;MU!#a{mWq}QbMqHM@~ zqICWo?WQRHyS)&ZkoN_fG{f)N$a`ma8I!ynZ(Pnf-VC$WpYMHw%H=ySJ+Mr+vu|0a zi{t4_PF2v6wOd_On+Ify^Cxnpdwc=3_$kq6I_2S*2K2yC-1u{Kg@ejuV9uc4_1*=r zahK1Gv_V_e^=8Vm8%<OrHlge?((ChNFtyPV@vri^g@KFT>r4py93K{Q?=Cz2+93}~ zXpVSC8g>2d6<AfbZ2U3VN^|Y)hL;zlIGN~uVpr~!j2?G61|k)7m|?c7DotJXn)mze z*J@2vM>hs~MtR=Y$%iU@RLjcG<<7t7-wd8~Vmat*(p9Pd$`+099bQplsy~0$diQ+p z<z^vh$Cw|N9fLwy=l;_EUSg?fH=(wxXcWeyOYKp>;4asT1rxjo9GdCOtW4<Y9XtJQ zD;w7V28XoX!RJ00A$?QjdR@4#)u0k%!_8(-zytqQFzSb*v^3&>@)AU(<YzSWEAye9 z>OVe9p1ikOOf-S*?MZJ|X2^m~icXKNSc|;*jFwl){ClvVzrR1ARszB4cX{TPAsaCx z2<GMV#pYz?T|bQL1K_S3>o%8hWKGCoxNk)c*nxUJd{R6MNeNOLt*ol-`%v)q?J<>x znVF`g@oQ4%vGL#__@#a1X9)NV3*-GZQ=!iiCQE#Bz^Vru5MY|04??(k*wsD}VPV_r zZLbxjz<GG8E0pY^1u36YURY8^rL!`g!G;gxN4N!_pL^9_k;Jtm!d3FhBM%d!I^vIb z-#G1xZ}R1kNK26^Vc3`3pACg=-9*2oCl@=J!xg<e@3n2~^UoEwKP=o*W%t8CIIG$( zRO-vO>cf7VKJPy=K}KK!r(wZYgdXX{Q$~^>EiL3<LE)UoPuuKuh`+ZsQj{xtrsZD? zawx#b(JS7&wY}Y%*FHG*Suk|~g$e|lo*h$NaQ}34{3<nrK*0EM{KQvy1+X;0!sGvZ zL5$LCK`dFg+0)&;iZ;NQThLWVzg0hcMG-wJe;a33L-lihv^8!zs(#b`4SpDMR9I40 zPMUtUk(s_l7G)0M*85G2HAkN-(53U2k{FUzW*TQPQJ%yn*3PncjdMDBY4q`fq>HXV zQ&YA!-YSlAb`>lE>S%bA+vRtOAMXbT#*`-Wv-ROi#QQ6{4lX(=sOijnjTa-Tus94Y z;VxhU5kjPXs3^+58yc#rC}kaCC3HcqyKA_9fQRvi@wA6-X?4oBb2uEO9wvC$*PV(^ z{mwrx0B)Y*$0_f|4oSbeQBW$@T`h+5nP$T5s$bY1D_F=p3~09NYS6v0n$bL}^0M$3 z3i^jB4-dHhpXc+Ra9GkQ^?foSPyiP=l&>-02fCVanKS}Sl-yT+g(W39gJLo)590v9 z9~v+G30QLW@D!*rNe!eLEodE(hr9AA-`JsMOUP{@5V`#}(rL`aI{c&*70g*ljG+ke zOkBc*t<o1d&p6tyedwJQmD@lVApaN|8C_C&512l&gWwuM_*LQXA<ZFm-|>>@HgtD) zvE-RUBM}qAJ!b-gJSGJuc2!?GjSMM}ekUe*tJ~nEROt5K91(hf^K%2};rl`h<mUeZ z5tly|MAThnP@jtirg<}Pyv>WN*`Gmrq|;$63F3TCgd#!BC<-QzDG9|3)3qCXky9fz zxAA1Du=4X|$FpBKAMX?aplqj=SePn+ic^I}=xJ`91Rn9qlb2gpfIDzhbojw!<*SEJ zp82eb7=q$@%Z-05GRRcAx)vAnhtw%?Nhxzg;$Gdkd6<S2n4dPg9(c?#P(^+Z>TI|0 znPCnRD<LXk$ZML5M{NM&RmuVn3>A|DL7t@Ix?;F>gv~2!0|ToW>0{^RbGj135~)T* z&K<}QOzP{@na~v~;lI=r!hbHhLj=I|B>i574SDy<8bdHmw5p-DeJ|Ew9A|~#(_Ttc zN|-K(bGYtpbY@TY_a7u3<KGmuEKQN{#!5;+u3m0BpYbwmr$-c-FsNU;RJN!`<=gl4 z!c^{}&aI1cjnI5baxPDF6(X-tU>f;n&+~c6{bDYX55<A@oP)>QA0^xGPLX*iN=`8} zJd8-38AsV}Ss*_&{qD{yQ4@xAGbg(jdq=Q}NGS%)r!-8D!U`G`_RNU|p`W{Ti3tR~ zBi)bj4FBO(*-*#~7~$F8Qtur?^T|ry@zuPeC#NRjq1RFoc$1GTAnv8>f&AYxP(*o> z!S~b7hDc@yWFH5wtFrP&GO)&yPwZ4Jbkqx$LgPabHA$ew-QZNg3Wg*6x7~o8AD=m{ zSb1YNaE}u921O$@Q9U;4J@QRLWqLzUc3ne2lZzc1NZh$AL?|8TPLcoL(~G#8=t__v zhx6x$A*=M#lOX6GgsM<+pq$?=cq8X;Vv3*tsRcNJIjX<L|Ni^O5FgaPzOes1!uLY| z+y5vW?=SQxoBxk4>mQvFP(ZQKApO^)1^z>HY-D0=tnhzcEVn1G)g9?O5r1rGtoZlu z{*jSBxFr9_NBm=x`X8SPMDNpkycq<a(tf}nh@nvRh>zZhoFM`wsi3I%<VPfZ_WyqM z|K)Q@s5=6dKGCI^u!XRhfVHXaS2`3n6A?#jDLY3r*Xtefr)lB*zSfF#y>hhh(~;9x z9qyfLQqt<$3ew~Ja-E9Z{)86!XNx*|TLQTm83?{!txxI<SdTvvtpD+4|DSKoOpxBY zo{XX_fZX>F^$O}ct0~4Vc5@s)HbB9HD%F_cXn<-!Zoqxorm50`?h0iBw0YkOSaAfb z6W~D|r5}yRLQuX$|3)aCf3fH-4-njca*Cm`AVZCkcC_&SxusVECd1rZqJP3zsu9im z?-pO5pirR~CpK>K`TvfWqST}Vj%nfE-jok`yw%L5sxG8p^3(rBkd?;#pe`dDm{}Z^ zcwU%`V82i^IbLLN?4_saqU#Fimj*L6lc5Tq^Ymr%k#`W&v$N&qHh;+8@BjbVBq)If z>(Ap1e%|Xo4_;fTiQnSC`{otqOR5P&Kik9nTCCm%uT9CvfUO<*6d;U}bWldez^jxk z%BITEd>9shpnpZLC4}%Q^_8zDG0IuUzX}-OSHrtOhvBFs-IMMu))<@|{nJFO5;2OJ z)lo@PI${{aOUWQTSrNfUbhSUJSMc?OcD))IS=PZO6OpI;gpRR=^>nkN3Oj3n2gClN z$>I>cD}R3w7%KStIemIq87TV(eBHA$drf{(nZhXSh=5HZO_H>P66ql-EZ-wcWV#y@ z%bN=ICI_^V|5;i7`u4@W*09z(vq;;s$T2Z6K(~84|MTfjU1>LqPkJBpOvAJD>%yX& z%Dor`{L%jPng&_GmA+P+7aGf=FA0viz5{?GKH-sin8aC`z^%(11}}q`WYnh(1=}fB z1Bf()QNcirv0+|MWVQB78hB=im2vIqj16+bTZ`xK9WN#N%Y;7E*;DbH2H%2SftT<+ z_A0^*GliF>t&`);92qZ@OcHakQ2hj;kq;MZKWV=8^@ZBzxmZskQdaxrhLR#fl3o3- zp`k8zhR;EOKNFQ|^pGfO%Z7%nd;9GzK~mGjhMTS&QKPJYbW7{6N|lHKeJ;fCh_KaK z-H)HTTKtTXxEI0mJq)Lz${IiYSr9Y~VFlg)wHqiZr`r7nbyL!nRW#x5!%c#voeecG z0!qjr0dkXwcG|^P&|@pLHUiW_QRtV`v=0>t5|=-+Ha;N0U#K=VzN3I1+3?2m_jqc? zXY_{vunn3I=>iDb0)at~q$Gmbqv`r!f4`mGrH?QmM&sb@WHR1jpuidxgW)6IQ=0~k zS9NIZA&mF<UMVDS%}2kEoj0=#%LYmlB4SoSe3M%faxUb)MoLohJ6T&1Qi!tFObaef zrpuYVZ|B%S#>Pe52V}jc;qAYcH}D7S2VmDViTDOQ(Tb!n$3(;Z)GK97d>nA)<$Tf_ z!XnVV`U=eph1l*a-k=b?P-};T3Un+(qvN{T2IdA5$l(qu#f!XdCz^m|lg!i5-N4NY ze!8lnhihQGuF81AhcMui!XjXZR55<76<eoaCDXlG&gvT$P|zYFdyy5om2&;!dMv!g zErq_Rj-{@Ra03DSqjCF&_a-mAK~Jh}N4IQwdpd3`91M~HLMA=#yClN1Hy}CqpZ$Y~ zv@|>Tjdr7DIAOcOSF^<4#Hdipu5PK56Ea_sJG1pVTOm=^+Q<gYu+n?3H&d!@-i`qY z^;j5$xEyAoc055a#6CUa)l#2f1YOwgu4vj}@@$RjtEv6^7>34tZIvx9(!@5Ud73{I zao(=HwDC9+Gix8172C>Tat=wEF^?>SC%Lg%Kc6?RL0n(k6ugNX9Ur(b-=`^r73|0a z(C7dBqWOda5a=Z>1U?ATyI9C8DxUT8y#ol<TL{@Z?-)=b-vOPOIFLBq*xNJf+FRa6 zfR#V6wz1)9bkWmaz3Kxba>(mZCPvAA*e?|CC|@tAn403CKtBXhwQml{NlX98siAk_ zbacGV-0SG1__gd6<89xwN$%z5vPVewT8F#PINT2@Ww>Riw+7S%eSG%IImiO1MCGWt zyprhw9Pa>Mo56(uoMP?>_}aAQxij?juIDmKONS;0393=o(><x6Tud!n2K%Xb29kgP zZGCkU)Hq25JE!Ggtx%9jYKQLOA74a)IDgz@(b6j<gMqFt(kBX;*J)(Ra*{7~=Idh} zBY#3H=q`wuw`}(GS2si}Nr9LsC@)I1ckbT@`9(es%Gn;F`1pKl>4mk0M&DXp%}p)+ z1v;ovtfNc|Tqd*_c%&UXkXRQfrUvQ>PB?MMNpYu}4O5PrFc^?fAl`6QvdK=x3G=OH zx5i+Pk#jTqGw}a3>mvR0us?Dd*UXe{LL72ObcP&^mEql^tLJUdt6u~BrxO)Dh0)|M z!|Rdj>hoQz*){-u#;Zqa0AzgAt+CNjJU+uKKmy3hdU173XI6jtYZ!ndva@1>c*cv~ zcXCu@t54+hCu0-i?y~OJeqBXu%#_}bSD*;lUChCHKftnE^AgH6h0j^ENS&p4vEjM7 zf1Zhn0!8o>F|a0_U*qCmtKx<)=Zw1F#s1Y%x4~n}DiEnDYJ4h+#{?YDgFajM7LW@) z<aL;<GpL9grO>H$xnEh|6<8F?RiaH`)2cUx?Hr!+5)!=J<2zZ4W11(O$qeJcg_`o= zc++suWfi1*DUCmmg@)z~niPDG5XLTx&7T9Cn(%F;V@fP66`Sjv_>W#Dt4|a$eYvQl zOPZ-@u0&4Z5*t#l)4y!V`7too;&~5Gz>16riOae021F+Ca0m(#;;eUr%0G2*8m9t? zX@y~jp40NV27nvaL39Q?QIU|0)*DT7Fy+Lluo)~U4~2vfNZxRQBx80;6W%?+;X7TB z#NGVH^VH56b+IHEwBwR+Tz+&(n{&T9d$MB46{)r9wN9Y`pMnn#DmGrfbq8SwN~){h zkNH}=5JWpgCWePEGwm(UZy9x<ww&sXI?4T4_<0=9H}K9CAON__N?#Ndjywqigtf$% zGrlYo!fMJN@HpV6gu?WK_9hU5YSdc?fJv%bW#BoVvst2S|CO5qFakXF_Hlg9oTp=- zL1WAQ^6V8-h==V}NtbR01;ZiHrM=iJaBl!ii2SzHt}=g8=IN0m%F<}L(i<R|IqKrq z5{->X<a9=%V#14MW@LUnRB{QNtUcXU=1EOoPY<R~W1d4cE6B`NnN*n_YqC=Z5H1Z^ zuZ%g?KFZ7Jo&uuhs)OTZbLd#sNMGg5MgQkT*Q>p?yH^LAe<iid*5y$1od7w~;>2f| z2JX5Lq$_ZjL>-TNf>$X9TkZqZA#ZV69ex3Cv8rL=+Gzqr!%A8P#g_#~K*5*6sB%w9 z?!_EbP*EXi#UGJ}J>wW5bo;3bw@S|FJ`e;})p8?``o{y;Ag-}|1Gw$vbxZFB_bqnK z<-8Io2x&BSAXq%tk2{sARY+#THi_GOQ=Dy>nf)odySt}VAsT-CJl_=#DSbqZW4h;6 zP)t|<p!5D|fV%4Jl%7jY8jZ%e@!0W2XXoKv6aUPn5x=5d5Xd+Q09E&&MN?MZy1W;Q zZNU-Dd1sCy6X5VUlG_|M&NXlw8{)kC)VG5X2+*cIO&slJ%7xQifI(jfgu+Wk4($M3 z3hQodZ4Hh12H=_d8jhw<vA!(2b332N0wq#kFB)pZx1iSqI2RF)L}v9sHiJdKSYD|w z*tcDf0F7?FJTh+keD0SUBKNC^_;5+QO73g{!aQGOdLQ<!wQZZYTV@v|L;%BVxgPb4 zYjZeK4<(2XUzWw?vHIrth@6VU@U<s{ONB7JrvbNz!>Y%OlULGH=F?cM3E=3eR=E(J zTIc)l@-B+X#7bYreY`e#ycZkH6{qOuBedLcKTUg4T_S`Ot%7o9vq{NLYPLQj)rY6| zk#Cbu)AjP<GzyL)H7TaEdWaN(W7)Moj$<6utqjaRDKfKsC-(`?BLhXC!04hzn?oWS zR(AADd~VOdt+{R?<fY6QxSQi+A$0+{k{6?y#z7NG#m@wtb_A+sFcH}3sr%?@)Z{LB zHla9mmLTY~n|`e43T_#6#7haZ5GC_ArKR!3mb@lpWwiicb{Y!$F?X0sex|eKd#<f$ zC-yzX#&aYX_0msD*4D3*2;!3g0u*S2pi_7S!aM(tV+}NAPz(xsX(JAYY1rfc>U3Sd zgN>G2vi+9JcZ!+|0qo?Qf5on-Zcx!*pCvU(2#_YsBES`E*>c`rVu+>&LZlELtgPM! zi@kiFO`yyF%&<>;ZR;$YLrBrKFD)bI<MR3`1^dH0z3ZJ|m6An6?US2*=a`aWq(jZB zcWfkgYIS-%!lH38zc^rGE&)dq<f0NCfAaf&kdpEaA*ADdCJD2ii3!|B$8_*YJb+JF zLBCcp0Apq4fjrqDLY*ecK<`tJ)V>e$l)P3BAqMlDXVz{_u)p4)z2Sa!0MjSpD|?{A zHrRPt%;0zLb34be@@Vr(7hoeV4~YUKx+g8>)?X9)tXqnM;3pA96%-Y#W<gvCEzB(n z;-o3e%fsn1IpvE%XY`fGO+OHx<z|0*l!^!?8h!UeQb<iotZ@yl?aiVL@Hi}*-!Sj? zSk<`3+vPy|{OUfP-$Hy2EBKd+?(g%)*ichTmQ5!+FBk!kUQe5SaQpV?H3cgi@UeSB zs$h|m@8s_0rS(Kjwbw>z|Lg^S=(l?^=|tX=!c3^LUn+x#w{`9wcZ!Sb#@Zmvyi$<} z@_oLdpcg|!_;vkcp?iJ)Gy~c`FE3wEms~30xztBnX&80^O1N}9aPF*lOgPy(P_iT- z$N5tW;0r-Qve3z1K&-^zb-PJ)92DtbNa$7h0#1})%@$u0n*)GXG2q$5yud-8G@E+W zZ=UmG-_N?0Xr|PVqn&T*s&KK=+m*BuBvd=4llR9nc9V8D8?_dB8f*-9GOaQlm>Zt^ zJ(_9)q-p|t6bc?Q^N^qS(ZRYt{bUVbXMLIR89uV#xC4F4q=$yQMfyqrfJLyY0(90k zi)Ggq6#a$GCU3DKnqAOKxIEPmtC69%H(%s8n5r~qJMA)Qbv?ipphTYm0%!}Xhcgt1 z=8`0Q8o;(j7mGC<Q0sG^edg+{(AaOW=-Sm3tqy}t_@?R;fYd8~gg`u8bq+E;T0S2I zt&3lsVNa#H75Ba8TCZ-71BNF%b{Sh+4I<Iiap#|fiO6e1@#rksX8$l1a-OYcqi@CD zzgrvd`uPZ8ssarZbgan+kCsD*AmKz&;^ozveqE86JePgJXKU%MdV72t!*d%_8e`g7 z{JflzQG>Pk8xAB3nwP(<9I)o<=WHkQi$l)WIu7>E+Hah7%Mi?YpyATVg5;&wI+$`$ zTVX~%PEYp+5ES4>8oNI&2>Ft{zu5Sq_zUt2&2l|FVTIhpz>Ptl0;$8~c|vnNy>{yq zFR5HJFjbg?H33kIwCF3uviTsGVA-HANb6ex!T6ft-bJ@9I!Q4y*L`t;jV{F#lAW)S z%Y6V?|FCPX4*48{Tpt-2$}Da603>zI?-cGJ!E*cCx|-TF*ZbWA891=l=At(AufN}D zqi)?@Xt0jn@u&s8Hul3<COGA;mEMmQ(sb=>giDjnG9{1MQfqj5E5VPPLd%aUrJoOV zO_97`p8a&+MLlndrj3W2Ob1?Qf4o-T`@z|j)r4QbhUrh(dh2TacmtZ5md)99$1V4} zJyi+9TS7fa{NR4&K<l^CdsVSHuqTw(imHkT+x477;+VcBcZ*PQRp|EXFMD{0pPiQ_ z2wR=CS*>AnWt)Vz1u!?qu(aTs11JbY!(>VJVpWf5%Ne)mkj{ZOxNKikR|ii#{12hh z^q$~cf8WD~nx%p85yWEmdeh8zTQZD7Jz}5v*yQ>SK>*N1c2=I_?F>hq%^Nef^VaUK zNzN3c<aoSaomOYoY3h3h>1*At;dx@;tnoS8>fF+~61pBfp!NEKlKjc(X&T=3TwWXU z@6>4ERBl-ca(isaNE08Dm#`Q0VSStL4BhbRexh(!?O^^Vwz`i_lUt3^qnxp`!E`gY zQMCIwz*G0+oCU%2xXyF2(RKB9%e@yxB*@IkVKU!<^bf23>C6IpUmTA>FybF+HVvdQ zulmD|04mzoV{zXZNrg^F{LrZPf=AX(ODhT5zIZ4JDW2`KOV)Nk8VQA)-Kj^lJ`7ZO zBn9bSCrC1-^(X0@1j8f52ELMN^nLNPjd>oe-G-#h)|iXXVjb9Q!tjc14Ez9<`3Q=j z=<x8F2J@O;l^UQ~DLvEt^fEY8HWQ$87u>HtZJbHaeAXqpgTu}}Ft+@NgwFvBdsRr} z!yg=Mn41gZ2O0kvq`?r=l>M&-RvAyFq3*BR$<{{t{l$W=EHa7;l;U2h&_F{b(Lcq; zkZ>~?HQ8MwIk9PJ@`VB&>se``5eNo(y*H}f1hw1{T5ViC%Pl^8NE_JQ-ofX#UTIz5 z1z(`&FQilDG(I<8XNR`FN}O|a^~5(b)7AT9Z(8F(F5_Dai8wLn@9Zy>g&hdKN@3?- zvOT@UwA|m&@*k1w1u*955<Od9Zz||vft|B4La20)C!X+(GqUhoLVrjBLV4~323;t0 zzF*CtbU?#Kb2ABRx&BFwY)&Lq5f@r%pt~EJ)l?pcV!`pgQHb)5a6i#A7EG_LF+pIw zsC8+<Fa-W9tdhA{2J`fm#WvnH>DVu?EHV2Mc<@@Y*uZ(|;0{Nc0SH~?acW0e%~v+Y zE5`dJ4;qk%{iv(kJW!BDG|HS-1C1_)-;(Y@(S3^<z{{bJ5?rkq7`kd;=N~$_%CiXt z5_24v;IzfbwE+FXB3iNF1We?s`-L_NnheU*2l7xbj;N`aYb}Nd3V=l*<f~&(z>N(& z8daLLLOm#tDI{XZ$v)xy!Pd4;E!L#Euq>qfkBfYH(_m>%v<GwZK-Q2hhFevr;0)yQ z$mrkrZvzxI0g0f4F}FUIASLzdJkJ6CN>Xe*I?fwudfegS#~^L}?HsGT09$nxEx%Q_ zpvp%VxbN>JNMSJA{#6bH5Tpg5pLt6~g~MG+&s;p*3q%ZQKaFn2U}=POsHmwCaE4;u zy{tUbUz`OBT^a=*fl+)GN=lx$=zP`Y+V91n--6g}-bN0%Gxasrr*?lC^5EU`931W- z(QOT6M2eEg0|Mi%VS%2xxKY)a4_wt>glLaXjtvHzKMuf0lg-yNxOpJ?!awjtswpd1 z16zuCUjj?8fia`;xptG!Fzl0o<@T4otMla&CLR>nL3Q8ew;ft!^brJGf(zSk(Qn{v zZ=l9*arQ1h51m(RA>nej&DhuH>*JRP&%WN}w=8>aqCC;<ImkM+D8c&J%V;AHZkgbU z<>7PMJ4v%zh1$Z$JDm0MrL*}Q9Bd%U^L!5fnM5k6he50>kKF6Zi9*djYesO0i03un zz8yHkfVKelsEiEnN;M{OAq+33OW4^>L@WeO2!7An_h61S^k}2LJnaN}STFjSAuNec z+w1em-rK?L)Aa(baRJMx<t!(sxOf2Evk8x{;?Q_l%PoDHU|{k~OD%W$ULb48D=0MD zUQoJr2L}Y;F_sd{sgVc0=`M#&)RZO7y~7owHfVl(w%vcV4&@W*b_YXo7sqGx5>F}J z*wpkx688`EMVc)XHD9{5+Tk{l5Jc3bUHIU^z&3BO!PK=QwbIA<OrW*fpLqu;kaPRV zt+xpf&T>SFFR|Ffp_qcXsLqJi{RaobNMH;VBCO<_FZD!eJ*yOd0hs6Qw2f#?XUp>& z0Hnd0tIB((NCeeeE;$q;BfCf<q}A*^JS@P0{Zm3qtQdz=MSVx+6NTqn{@mg|4j07h zsI~V8Y5^t^U`O~@cSTiz`{Q2bBfy`}R+~uJ>!s2pvYmpGX2kChy=kcU=(Tlh1mBi4 z-94@~cB60sD>PF*)aHI>WVfYS0xH7D#Ke_LS`T%|;U8MFY-WoM(PR`h8cfa~!*Mb` z(3qB<LqtSHWeI+Ug)MB>@S}ud_OGDHoQ>HA)gO0HZ}@;{TJ{g#Mp}d4O&c;er{Ase zC{sDhrM1LR$>^=5goxG-CS?GQJClr_uqWA=M>GL%-O)mWMvU|rp_@Iy-S`Iy9$%$U zPxU96&sB~2E+&oEDCO8yv~2gH`&D1LWNJu=U*%HiEKB@5KJjPz>|Ef&uNKW^N1z-V z@w`BgelZ(sp~ggPe{;9h?yMDzy7||_+BO0BX~fEgL$n&-+r1<aMn=XwlQwqgMVP3G z>{|1iey)kjj$=SZHA=*S4VbzXvIcrgBb{6w+y@zOz`w$*S_5IWF>5&KdxL#5>{H0> ztSo1T8)Ot1R}|ziaA99)xQ95u1{Wno?r(ZujOy)1cN97=KAV`9o1vzJrh<lhK<E$w zO#%A?dJz13i&uRrhWLc9I?7Hlc_2@37qK*!UrD@X!+KAQ=rVzglY-?3+#_wxV8zaU znQb`yYXav1+}?o6E&h`2*$)vG=8t{R(7J|oxq<}pU+>(1%*j6YX#&+I#~mH<HdH5C zU6;<Qcm<a?IINLvYc2pYn8f+cLgLGU8(84CIw{fti7nzs3^|@^Y<S#n1|i-{9gMY& zm_7wnSw(SVs&D^lf4c_+1`=>s;8gapmX`5;wZ!U-W|5yu>mToL>pV<Ytl@w32p`bM ztR07)iA6_8k7e53GOjrEG$o;?T&jut-8bg5YJC%P&gb@^cRkI;eCK$3<tXsB`Nb79 zl<O%{Uq7`8{&%CmGfHY|GzQ%-v$P9*B!wLdwjE{81X{5Ti@~4I#w6b>7m_53V?4(5 za&vnb{0t9AMF9iS!|k0E=;+p0#!xqN9E|HH9PyZ!FrKUvnQNaeM3r!uTe!{uPxyBd z@Pp84vHR^{C@LyK$-rhLsM}M?O1}16!MfAvZ;xGd>vLC0Na1rYD@5H|Es(t8&`H<F zMyrlfUUgC24p=k>#dXEW1vubw`T6MYik2Uh*tlTbV4N$PBIu^{fKJ6lN1)mL0%7O% z`K^aP%<mUZYDi$m+Pk)~c~7-4cw{N}@*Lxam@xFYpUfO6fftJa%~{3gk8QLXA7$Sq z>bP}KU?qOCjL3?vfNtPeKxcN>!MJXC)ncHjr4{VTq1i(?_1uX0R)Rv7sQd6#&emlj zZsepw8`n)lxV2elo|}E5?8@Ocm)ESanPx*++Ox*Qr)Pw|C@*iIC|CHGP>*!&V3-<^ z&D(>ae9t=QkYo@I^H7H|p|Tab{E76aR8BBzI(IM}w64qNR!)O;wu&|uh8-j!N`$*b zfPdC?-qC-Fw48kMFdJjy7p<x7;D3XdT6AHg>I-0-JP3$v$7?}jUajFfX&KoP;Nkgi ze_$)*EGTFgEgM8f<KmRLoKKKD9YS(q2J57_mUK3Vc+#GA{o)TXJvE>Z$@K41tnI7I zd~_b_jf_Nh(*0mI2Pm4_O>SZce&Q9Sx%fScgBK!1Q}t0R)Xwtqj8UmK`c`OI1Ts)g zR!ugqj(^&;n_tj0F6#bV%S6Y2CMZ9*`V7(su&8vJ>e$RjLeY^_U}Rtwj9^-~5_{P7 zX!O%ZK(A(8QHcmYE;bP?EAUZOvFcK%&xmwlW9EwIgV51gRVzwCZfPtWa2$D*&Ao+B zNoIrV?LH19ri4k@5t}vG1W$V`WYPrex^&;-$z~3pM;|Qp%9&~6_M*Nmb4AS6lz_Ds zcrPVIz3zn>!!JyDCgR}^s;_euk1(XHMH<6ZHqaOF$OcbVEX{IIE{uzLv$dO*nJstU zswNSTc2ba^Z>{kH8Vd5g#D_!mSi$chksgOJgMmVVRx0md(B#7eEmR?WvKp8dMKC6b zFt%*gU>2T?>Wl8Sjz?SA3Lc>hO_Ve_i_X^8-E5TRv;&tqJN1~6iR+#G^789eMH8~h zpOtHfxch8_!9fS{Js9*UY5K|5pv5N|r^K?ASoRiHIUCoo`p5hG(|vI<sRTkr_<t4H zV2uak-#IFOlr1g(agkNg$;>=9eadZT`|xEz4+cdbA`}qOCMKe*StmeIe7vIE*4ByP z^Mbs*Vd~qsRclUC(Z?QMV#a*nfL1I>1d(9$k|w*xm(>#pW;;T?$`R2?;$)fEx2rhD zap8Yz0kxJJxs{dZmu5Jb@czd(n-?7N_Z%LaIo~@AB}i^f$$t-RI3F&fQSpoSTSLR? zVkAi^C_Go^UR_}q`#^*$D#e|xHq#rGlz0VYx+7pB;(KUR((3JKK78mV_#ig$ZQdbO zPq}EgS}7AA#<oe;ynVTuovjwy&!>zgjh>_zv%g4Z@w;UUcLMqimTXe-&RFqJ!*xCU z>Arj=65>Y5X>BON>?Vh6b@2}g+{uWI?|KIZ30O_T{V4Q5YO`Z4m7D0B8%+NC4MdE^ z#nLqk-hg5pS{@c2-(#+%$xX7CpH{5B>`S8nlsL%TySqdBz)ZqjKEA}<Rpj69Ab$Ob z>j=z@SWqxvHAN*zfq3EJP9#N}b2@bE8A{UmTG#B@k(7j_ZBX`^L5@ttfuaX;?Mr95 zXRVy%EL-pZhqJ%KX0$kTf13h}vKu!}4vwt<om6RuC?oKPaJ4&?m6PLj-+<}FPDt&4 zO7Mh^f^c?T#%(T#q4D;I(b-5}pp3(f87+IoGaqh2{D$?=#~8XH3@F4(;jfe(jp#GP zjz@+kDhsKrw^6T&76y4ddN;-GPnITJJ=GqY8WC}MkGBF=Z^nbBNJ(>j`y9_~?Fd<s zu`&9skN|1j-Ds2ygOrUUD&DE|9Tx>qAh;=lS)iq`PO?%ePS1fD(F+8Ng(iYGZ$J+T zoO+_G06xP=O)zAVih^Pi42gQlGT@nmRhXQ$_`_$BIBh5wmu9Jys?yR@WI<Wb1zCyR z1Q#sDNRa1TC-FnlQ%jJGW|LyiTjn<SsTr}d>*!+jF@Tqix-`@P%<;W}^Z}8%b@z3Y zRigDro3%9i!D8wOGcW(Ed1x8(V1gHqt%AUZrYgPZ*(O2;961~dz9iodhrt0FjD|TJ zHuav4^^HXaoq<4qO>yVV^mhIuwiGjC+1i+e!MV|oS%BIF!G=$Zr)?$Dwsi?SegjQg zi$2ZL|1|$zPZTch+^tjr<8Pk+?ey&ZTfR1TxzWu&5L9UV+0!{05}5@uenj9j*PFt@ z8L?7ES5zq3YIx9rU?cSMLO%tur*}3+QToi;ap%g*)m%^h1l(~B=iJ+!X;_y1FKygU zFN7Wr129a6x(>G59dwRZudz$aKDtB8&tV^r@7f=wI+4l4nE(iVTQdldW*dDfJ#4vN ze?v7~8-|xh$SC=}t{=zRd5f7Y&Pl4u(9R*hyYV*39~6R}&i5qk2&Stxk$b6(i+F7w z7<&cr%xO(U3yh?3cW6O)v<LKg8eMxXc05TDl%@%<j)Becq6$RGWElvL==E&#_vj#z zHF24&UJ7dxURB!cI$2E5@w}!`;VG!wlOy)O5f<qTEkB#PX1Q&J4oQ)N1ug>OXTCIC zig?bq4<zF<ksS(Ro9|UDngESE^4T%IJTIRZ{!;pUg@%zl_c`G`J&o=GoUxIH^}YM? z4(%;|c|`?4r9uUKyQt0tPSH&rH`mQ&tWD5i#^Ygcu)6$6z*&@`jfy+2C|8rG&G_Pc zuvYv6p|Q2e74{@`1Rw@+jFqR5yq_dM{|tc%|48C?KJGyf-<vLbO3crdXJy4ymI*Td zFi--SlKpxl32corLxq+@E3CJG?pM562OR)J8Tt3g`F^jkx_innQCH+a?UE!aBA^U~ z#cktfph`u#Y7RZ8<<(U*o--DWc2rD^OuJM=3Rh+D0iSK6!Sb?x4j}}50DebsY!)L^ z(L^m#h7<vg#35FV9joaS1SaF=_U=#w`sFyg-3D>*1~M)98}jWB0!20^G7RDA_T0as zRsbEEQ?4dW04>vN>>@|Jbe*1`UJhIrne4TU7AGHI*7(hXegybVTxj3>85tUub=u!@ zo_V+f9&4SmLs_9$(ZrX9GTV+D;4~1Xlzk4ge9K|#hCDQKYFi^ec`y>$ola<ascO4G z6bzf{cXiS&2Kw6eIw(jS(cg}Ts3WG{Je|sjWkJgu=u3B6oWIus{sq7xl2hdHLv6K( zHG-4;oV6i3H2L}`4tPELt1Ik{Yt7!)<a<9N+>Qn)>GAnn#E2Cu`q@fTI#}>vxH>Tv zbIVeL4n<2j6)~gf!-^8Hp1NI4h5dOv7G9!1di<X4JOmV$F(k&9clQxEAaZc{+Gs#0 zdy^!y1q*4%UT{o~ma7``{8Q$8>0A&S-)pd;;kcL4<#oB`yj;V%G09MOcN=5O86@T8 zxonSzqyJ*C_KpsQ<N9Yv6KC)&SB!SO?a&9WAt18(GZS}K0_3MCGrB}&X2%U+4*s}H zt>&v#{`q6y&-Z;rm4^%N@$c*~@#4Q<*OLXh5A{*e4;mvPKAs1<0>L3}`|AxlO@aNz z$wBwcWN(t+AJWKwCx8oV5*m*A@?!lZfzXkM_G?reR{e`~k6+=(wE92$B+0s!X*3`X znaRlP#;#0kv7n5*c&+dHe!>N9?}AF*CtVBCcB!F3Eg;U5yo1@i;{fHUlcTaxS!)=9 z#>Xv2n}hKA+aIATgj*mq0_&dpOeBS?+1jaPi~3#amoL%qKoGn?SB6J=fyZ5Kc(45E z!S5hqtm1mSV?M|$1m08K@tt+JZa$fzQ-hV-Fi<=o?MM>1MZhsIUo1DMKM2K6CkG9I z^xQ5^o^gN$41z}>WN^J8_TN%~Tds7yJG)*n_)Me)G<_E#Au<5}w>4rz$UP;-CKCPu zNaBZGM45QT(haC5H#auqdx?-Cu^g#9%04ZdZ4i)wrZ0JiK1vF&eZWtd*zD|Y<%}ev z4mW#bPn5tC;vo?T$Ow{7=`4J?;j%eNM3sgzw8y}p@83LnrX&1vV>Yratn6K6zUXWu zn*w5i<teB8G1d9Oik@#Xc3y7oujXaV;>x3!oicIjpy!1C$oO2lOl47b%mmT?181?? zgl{3`(Y8HkU!a2eV46i3dhSaF!#?kLh?IGdYLLK2J`4T6ZnK8);~NN{l48;tKur-M zyjMLb)U4)LSLbA5DN<?Hwbb{OL=@}hduKd4F+Wz*4%Q4i<H`6)GDo$aKV2W-k)3v~ z*Q4LxeAQrb89Pwpnfwv&@KM0UwENfOjA^`(`u$I<%5u|@JOPR6rHAtC-w)ZR&KL8{ z_zzmZ0<Ub*tr7!b11$MU)k%bM>s~hh%!}Pj3XBCy0^21tKJF<z{*?V}HVfcojgp6W zTcShR&Die?b)<tCC!%Nw&&DK;$w94J+~~@~5hGx80`otFkY1FE5u#s9ZD6ok^jB)- zp1J^&(g}<YAQ*x?kV&4XUv1byOx?>jdeWcBYqBynja<AnXT$$o<M);ZATcLv2kGWT z)5p0VpPZ*GH>XP6tWv}@a<N79v{kz`o)^Rvsn<-;w-qQkPv{&ARm{&sy%z`Xs7;Ah zeRlqLNnrUM3JWr90!<ZJ^Rq~$UaX?U2D}-G<(50DA!TP^Y<Hl2c-67hS!&qEO7#(T zzX-RU#cZ|#<ep4`mIX-X5Rsy*c9rR?YTCXDdJbZ-%dmmde3{nn{B6juvaGL=Rgf3J zQgn!xGgz@l0QuYR!kmCdm$TjNTX1}PIc7S|rZj$dR0nIF`@j_g2{*SZKCjzXP`Gs{ zE!1NFVhBtMaWS^rbNHrk?INre(?F&-cYQcuC+eE;?(0|!2?ej)!$|$3CDm!t8!Q}j zq(;h%Kz>to9G?&3R)^!+MYR_WZkH!zWns&?DBdMtUgQ}*d&eHmR9A0r7%^b*BqhW^ ztB9D>7VXv?EC7vt8$}Fg*PyhpSWH0>7g`z=>rR(8RgK?k#B3?y&D3-c4%)k2XM;#1 z=(_JMIF23h@pVw{3M!`-B`l4m;Jij}uo(U7@UFz`^FTMrZC^o*1d_D?Ql2WP8ZOn% zccyg$1NREr>u0Ru6_*#lqKs6$|3s2}N7^o{HZf7Gq~94`mANOi!+D}2cve+&nU{mS ze~XO;i?qQldGa0Lc@>mp4Yg|>`^o|AuIcnvkcXCr3O)!%cK{--#g61iMPQ5mzwHoY zR0!r7!9IQ+9i&!RI-R+tXL7{7oK^HmJQF$g_QvWf^GWH7&R;F?rxpc(uFEwl&GVru zFb8xo80i7R^;_3^tXx|xmSFDQ+OTUV69t7I6{#>6;bwGj0YxxDmHj5UaSd72XxFkg z;@)(Ryc@e_K{P%0S7Wvm9#|j3p-sf$7HTZ%N|SjnM>i7ng6Mu}JT3?V=u^R|ao<s~ zT-dfNDBT>oB*~Q@T3j_b^|XwmBV!F;w-x#Pl1E0|S)R2#^J!yuYDf0+;nCr=GrI)c z(3nf<nvx{v$DM%F(RyS&pWJsC<>O;xpwcU~Hc6jkF;@EQR4}&~nb^s4m+`hedP@i5 zIKZ`@^^wh-xVKxQt@Z9|nFq)xKX#X7=R588sMRik*=Dk81~8=4zpEmMXV|;}V~--c zZp(uL+0X-K1c0{?!o(kmVW4D1x)QAugcQDXwq7&k3E=s%y7u@0c}QCJ^{2GlTnJA` zKW+EmSA-N4a1`@RS{kuPAJwqRAzSR=n^?~drh~Iu0b%`N+k3Y^frZ>aXh?`Edaz9K z`7MX#2c|ciwU1%Xx$+k3m>n=EAvD|U?CivUs&cusWW9jir(yq40=P)5wN-5y<D1(O z&?Y;Q`JIomWgs<#XGa^Yl>fcQ2A4c3t|Eaf+dmZD<(%lx>_@xs)=yK1FJ1byoh)S6 zS+!pVDt!zLhII;JM|`CJhrnnA{XYUDRrgjM+ln`D!SNR$x`|0LY^-g-e$%_fb~Sf( z<(API^V!&_m*JHN07Cun_xI{UF3&eos@YpHS}z2XZsYSze0)0E(hEbfi(Nw=S^M=t z;C|}YTJPu}$0SMBMa^7EKb!0V>Je$We7Th%_(pR3(!i=c+=5B;=U90S`8rwme9ZCp z=XJ<dOPemRH~5UM6Rm(gkMKE0Ap(xk#@2}gG|j{t9KMF=pC2K?OG-*cheZ#Mj{341 zb8zgjcfD6teVtc#iSp#`jX}yFFUZa1|Kz(q`Fy2yQ{-d&)Z4r~6EMs`q!*QtaJ#x$ za^(XBmeQMZn(IR<+BzMSu;pgrT-zcXOv@dsUNui&n$Mu{1*{iBf*S98`zqtZ<vAKz z81UsE_{4@=8u6R-*VfnNWS0HoUcW)Haz?#>`A{`py%t76M@Ga>MZ<n0W+<JVR;`Qh zd=$iSBoP8PFxFhp>;ol(0AgiCQI2hF;)`-l+IPXXd^)F+XMXO^udB(FUf4m)DU1?! zxVOr77H!#k31$U8(q3nXelIOHkip_xzql*5|5FRNSUc<!!L42|N6G1bp+mj(?Y~DU zt5%3*K2&hBDl6D~Cg}EytXRLsZD_0*^g@^WP)r{L<+&MVZ8l@T6oJput6pSBapOmE z4_Ryeee<b?wmS}{satwtpZ35M2wlfk2;J^*cN%_wK81hoWWbR{SVXB4o1~#AOQ=NW zsucMBR;M*E+!|{Cv)|?6YZeQ2Kmh=P_Pp&Xun)Gm-+R3#dW-+@E7$-5q+<)9c)*;E zD~FWvcVtw0j<-J>(i`s5A=UD}6U;yRF7Q22c!=-i=07Jx(C5`7%*cNAi1{gI)L7|h z6kI*IkY<;=$-PJcT9ggW)Tt<R=p7ZO>U`hXM3v2XQ4tVi4E0WaDcV(wkM(zF7V$xb zQ{uq5V#^_n5r@cstr#}M_X3!W{+Z+@Vvx<1qot=~;3C%shNQR7YQt7z;2SbZEwNwe z(k58^0(`g`g5IEKhOlp@!Tg1oI<Uw*x4gWn>|ip7LI5VJ5oBW|es-5l!(!%RSYqj; zL?rS5{f#u2|LxBC>%|yCnHWMxN58$+b?TB4d9H;m;#>aub0sBTGa&_5Yv^^}w)MBV zqx4L#v6|}E0k2#tY(7IM@af@5L>dWB<d8|=C2kE;GcyQj>8Z6A^n*7rHa0OgIzEwQ zZf5OL84HEM+;skr5%mB+Ywx<Z^t|g?nJwOt4F0@SvueOMEtrd%pQC;1+VBQyb4h?I zk~u7|L_09m9bg0h84mUdbr3HoFg@Q*yd@!KBd#XosCuVyS3xa7-2;;Dy$M?Yg8a1R z$gXG76^yi%N;xPie)uYAt?i_(>o_PzNkLokHpetIS3lp!JMbane?(Q<VFm49HwuA| zmVD8|5j2?g{ojMt|7q<%5dHm3_XydV-J#{wDAvh&J5^8E<()-ogp}L7_7>mTHa<U? zNdDIw>?4c)cUeafUvCwaZqY$J3uA3<3t~CAesE-jiBPU4n&aQ!BeLK+#D9x=e<r*C z_h8N62^?8RSvlqEJQY95-EEW6-lCm}zMh_MK58r^|B4|X3mW{*C6aZ_HPNke9!0%a zPf#BCXNi7#A;lm6<1P8?wf`?MpLR4tAh0AB5#i*V5oQz@bX-|MtJ&ia$T~eafqfeu z5uraoNJa+Kn#DO8StU8oA3?W5Q9)_BtPO7Rpx)VawL$uOF6CR3+yWER-0^(fiLQb8 z%i`D&BpZ$wBMlPXME7-QX?vUw<iu3blJqHjB9h;a9vZ3v{}2yNCd=8*d@@hVCb^zs zP{++-<t$p#et#<8IcGu`8AINEYY>aKeLT=8^gA6AlA<G|xBEivWsrKgUW+20xs<$s zBo8mNj3y#190l>#Xok@3gw%E4-JmuS;P+q^%?M;UY7+Dmara@>q}@9+e>QthRmt6V zch{WKU>WF^Uy$)arS%mJ5|V6ki3RVVwp(hl@?N*}(XFUSyL_^5!B=!lOu=*@DmPj6 zLq$2#Ne-dIZ=F|YxQ86ntP{$5Gd=!>W6JZ0CM3oEC`oK!Ou^CdXVK@4h!Gm?3MRg0 z2vkPK5v~b(;uR8(a|&we+ffynFU=kV%W@(jWN@3(1Z`G&V+ogdd@f&eM$Y^&kkOs? z_Uug4_}QfJk6bpTMtUM*BjMMFCnkvhv-v7k{aVyPZpjV*Z-nagaj}n&umrm(s(f<d z9Jg`h3SV>n_md^Jd1y{sIly~~UEVCAe6UxosqXMtNaCtAA@6``y7yhbf>D=NXF(Gp zrtyy&p})CUovfzCIlgLOtSC>?cBQ$Q*Um~WR5bNC8t1}tdL(&yPVAMNdn4rDg#3;i zRTkf3>*VeZLxNx}aZXcS;EID684tZUd{mvaYL#h|&y|OUDm{d$W>?5D+7IZZvs~fi zhu3v4uC6trIbl_(Y?#ox3;DWDOu{Y8(e9e$wAVc;<#dTwli`k;h#@_DB0?i+G+7EP zOh0@9L9sp(e(|Wz@zId$y<7Z~4CUY*?hAq=o}dRuWu9JjVHeVz2W~4T=Z%s5%r(X6 z^|&}S+*2{(-=*%Vc_!Ouf)8KfxtFfBe?GmP!ci0q3=;1Ph~35h{6eiLom|FL+D6?u z%f|Z`*D?oPA!yL#>xrv7UPUB_!4@%*<j~xljYs&?5K`LqCZnMl7F%8#?%Gm5>&!_j z!brL}McUB9r(cBN<b-j#^M;WbD%@Vz7!f9;p#H4UOosw9VYKiN=_l^vzIQ4qEx}`R zjd*^Ae^YUWP|AC%jI!Q6Nbhj}0N2}UM8BY-=;-kFEm9b|s=LE2MQ=uNwy9hrPSlT} zAHJ`NmerEKJZtIe<#vUHk<tEuy=PwN{~FfK1*+-AQOl;r(1DQAbcQzu(jfgpDfgcz zhW9^7H5fU`zpSXF`r_C?nmRN(3<}Agu=UV+TO-FR$12Yv$84R5GT9C}zuFF}>kGN! zb5(+6$UsG+`)z>4TeWG9zFv2c-!$5dHdnv2^~KI2!suXMp0e|PyQy=kyZfD3004x# zEaes1qXI;HOL#|D4XQYYBcn`da)r^p*vrK1XGUM8yRAyA^U3HbRH0!C2OEah<>Zvf zQ9V*t724(^XY*^X+P9{{hd=L*F>g+|tEl)bdh1N2U}+NnwbDw#pF1YPtSjIP=sNzo z9ke)Oc|}FR@~~fEPp8m{5H__+LR9+j{}A?;QE^1wwkR411WRz2-~obLa0~8k!7aGE zLxA9}jk^SQ4=#;6H16)st9<94bI+eQZv6p@(Yva4?^=7wTyvh^f|CZu`&q6BnCMPU zZz@=miF*~Y^kWrs1SnE)JRa}Sj;9j`#`(No4xD=5ZGJ#UviE{(hd<w%2pe%~iEVct zp+YIeOa4G_Ic(uI=@7VwV;iSNY;9ffH~%wDbVHJ9EZj@wf4AI;-aMT#mC!u^3aGoJ zGm}XPlj^i_YFTTmOVPM1>B~#MN6Vk&^;X>XMPIxK0=&>ERvMj~0WyMtXNQ`aR!)YE zCOR_a#c9s<vUIdM_Pw1wW#p<AkA$QwX0s)89)iZL={!dQ;vGy1O3J>L`cc@9P@xt# z7GVqGT9j%u)PtQ*U3rQhqM$OdPX}H#K<;HuJE`36aE+=HQy#kxL))q&yYd*6$78<k z!+1%djh9T|D|O1N2RwqqXp%+W*}|8YDEaRWSJzex*;#PJB<~;Cq2Q0uYz=9_bL_~) zx8Baqs^n>x-29RF8okLhbSFCmT?~SV<awJK!Z>RXDZHev>DF!OV4z8`ULzEj@}q(; zpc)<E3!YqVFxgU#D7>njg$iY~)?&+@YUzB#FVS8$Twa1#(fY!v9I)qU@wwvLk`~r^ zQH_6ymyDEHly@YsNlgOjtXm)*$<KNQsTb4N2Sne|OFyrlG0{rmGm8BN>>jn?FVURb zayG9YOo-#M8TEARk(24@<Yp5}EBQGn80bNZJPj7_q7OcWp71%mj)hjuT!w=67PaON zCJOOlaa|hJfZC0l+mmCu+E-4_GtYChq+nwH*9opZlL2&o<JW3mKEN`3q+sCNDr;p* zw3#n`ud}DBngI0pY?MqNMY|0N$91i#mBU&j@jbm$W0{(Q4-U@f5*(zUe)7vbI7scz z*<feja%FoPXQT3ubSARtTq$ky5$m78P~M#+a${v@W;01Q2egr~s(utdFQ%69UCEFF zuWJn4J<x3g$Y6p;v3Q$#fjwLlkOI%2m{HJY^MsjAgu6!wM#3P?2hhFcT5K=tVIz0M zyvov~t2HHjjTo3Cp!Uew`epfIHnu&0Mqc<!jOC?K|60*`Reh%?tYEF@>Jm1va6gAk zmqi1;PAV-{18V5A=8L0i)ow67jU+mIas(7iObf+>h-B{E++{87-r;Aj7>d=jB?tIA zk3jD76-r;Y2_A984n}w=CNWXAC@~T9y>Q}KosH>#T&d4wfN--$Z!XW(M*wY&2GUs{ zIh+~V(qJhoEBVLT{T=3qpF#ke?TVn98kGQO(&ZQjT}Jd4lD`2!@f14?<z=OPx9`&= z23j3V&5UTN>7^qB4~JgvUPrCn|Ad8d=DGgx@StjAia4D8M^zi#t3_vRq#G&$)^|H7 zlCu@@75!Y0Z<=ogK)@_5O4HMDZ}z9uBo+Pba6mEF07D2Zv1cUl0cP3)dES<i(lnxx zQne-esmWq#aq<4nGWfij>T^NYNVgRp!GWv!^l14{s{4oa&C`t?G+PvYS4~Y#1{7y+ zz7yii<#U07&p@2$esy8xCG6lJRT^Fsm(yWG!E5D)I0;&se|rM#)BE>Bv=#^G7?V>o zUnk}dRyu-Xp{vN)gLr3lNLlHhCTr(06q&<@XcslP6~4)$u#YUU^VC@kSNp!-{vF0( z(LOahx%rZVgN^O(=9>qaYb-^<$XjR%(vM|6XXD_H)q_VE7@LlEUrxg|#V1F5ufY$; z7ed%a`I*nfiwO3OvPeo=nqdDxW3Is*QdpAB8Xd5|a8E5~n=?#FT?D9mSQeKZ99Xhj zn;Ti_CjXj^XawY_RbVYKJ8mn|6rg*KGcsI3t2~#-hney5$Y!4sL!=3H#3V0v;Dssl zSG;_JBzh77Tt)^HUu#`30n&ziFzDDofZ}7k5-Bu}xSO-3fuWLvj1D<gm$^bGqb~D4 zJ?x)`^1iK5CPij@#YuaW7XL^}J{+bI9{?(FI9nkJNDYiQ+TVoynE?Ny;kvnYt|#Cq zo(I<U2Ej_hnvYX(BW$uhyDFA9A5nkzPlafnl<Qf)2Qg`QjH>kskP5!bpy#vrV~xV0 zbXR5q{xYG)Y)Q^FFF)KYEhlI6*LNRgzH+h}EK2Ru*W#Ap@p@|0gCGKE4malq3rW3I zQR}ka$RBd1>@26fQTV){pYBda?Hfn=P~BalkzepOo*#`24W%3`wJ>x<*k+vS*p}<e zjWvtjMOW;zYDsB@qYCzDez?J|6c-B?n;BrZ)rRs?M*4snDC#E4*8cU_?DG}SglMd3 z+Exfw=3-x8`)l+D5%I|{H2Ft~yWm?&Iq?vMZu^pU=xUYyUp?+|+3L}i?H<qd+dxeK zofOcgP2o(h@?ZJaJA4@mEj*-@*FrmMEW!yL0fWD~JBG{q+PO0`ZRMJEd$On~yrh$j z3jhOL?hN6C$;pkHUe+MXjh_XJi?hG}kyi(5_~8<iK-0svBTSEHbY|6>4@^bIaTz1T zi>uBT4DCIUq|f}{xqy~GY?Rad-Zv|**DwZbKQvEQ{vf7#pk+0|As>7w!vSaS?b5pA z`1ps)>jvMlB<bq5y+Ub0lEyRP82m(KIy~;PI^5`gS?j3vxLHNFIR9k#F@94Dv^+12 z%4)wo&7&W=1bpBe2HTDD_Y-as_pmn)*L};C#2v?F<NEFM`8i|1!+M+9U6AdINAUli zRYBYxw$@lJWxku<4MrH5RiPa&JDa}|e<?FIF`l>KOGzBVEs|3ed${hFMJL<6{g`a? z&5uH)Acrr_GS25}gZ?;!a<86Oe!aWRcq^QH41ak_K6Q(xYh_eJJL1R~v?JbRGzg<L z3)bs!Ji9>ls8JmbEMh{-YWrs6Ch+R}0lH$!j0qBqPULB}W7P-}#I-$aB9kRp{Alk- z<?{x)2)nIFR|*Spne!FL^M3Gm^+OMMCp~wXJC!Vd>=*Nf!+9oBR4IyyfR>`$eq%mf z$2@xDPw}36k!jWK{xB2yvpCubtEq;5lj$k9R}{CC{Zo$*VuPZ^<1o}X;nFCD*6#Ho zg*V4)tJklBK+JX$Bas(Ji3Y*Vagm~{`P0cx7TU%0iwKXTdhD?@g~K{a^k-hL%kYSF z&VRF<HHq+Pb3*0J{S(DYZD=F<E0AWI1o4VCxLE6qGVI+=fSlwkEJ|9FQ7`U?MwTi< z$@7fJpoQjmanL44I8VQ&#iYoDTOEYMD{D4<+#LSWZ`qFmhsdPUDqqm<1q(#J?I}JE zGr5w1$H#<+1US+9wC)dy<pJ>t+Dsx`Rq|P#7q7LvPo+n$AdZIGtZy!MD30UHETBp7 zSw_Gz+>AzXsFT1}2OsZP#y8<6Z74J{fu4i;g6`G5sYn6&jk2D|TF=*U1&6Fdb1OZ* z`iOzooVpnt4n#7N#rBYsU^p%a2Hou1do>s2wY_bee>+aGLqMlwULKzB#B7Cf*$h=H zz+C_+21!Z|)mzRgsBRq5D@#coMxX0nUOHgUj*)5&fvEs)L7)%;VBPI<MFHRAGXH(t z=floGW1#oJ;s8*ZpU8eM>!yO=;rNU4l!kG%may5w!CZNKY%GspnqXljSWS_~d~b+t zl9W~cOkjk2yb$(Dr+ufZ`%^NvID(|TMC8_9C7@Qr8gH>u(V2Md?1!ywJ`HMjVs-4L zX~nVSXV9t7<m377?^0cIHTM{H;MnYNG+E=^3Va%xjSDDGnD+Oej0#b>kQr>eF=&C; z;-tf(BK7M$271k^5J~u(n!uVZsYYFXFx8Qo(i~GD7J_b6XU#ym>L0VWtjTA8BpPUj zXiKQUkd?Y4T<PK=L4C9C(F+y)hSi3%&yC55Pk8nRkFazoWLE`_)SobbmSw6Rk3#a^ z>i$9eA)_oTwb>tq&HX8XTa4I?omK}j1&V{-Xlwum=eJ)9N@H^12YSwve;fHP*uQ1_ zY<#p|bmo@oErkm<qz2y-1v;|<w93E^!EKEMFdgd#JB8k8pbNU@?Tlk5lA4uo;v`k@ z^o^_%$irGf2GA;g&dX>d{LaDut|xtcOqss#?#LZr2-c~K1!gG+b@wWn<d=ezbKT(# zThSCh1g5rWE$dgr5eN{e#`bo;+el*NVDt}1joXBfE3_*<P%I>B{+|6E>fvlf_iA&z z{)pml!R^If^FoxEA42&9jD~#h*k$d*Uwrk(paW*+`TlUY!E1Fv#U;d5X>!W@{%-$f z8C8fYH3}8GEPy#WoDZTnYh;ld=UspFpveK7hKFl)F}oiIxU!PJehn4_%@iCqlhptY z>-<lH75C4X&rBo&QK=iP)3IA-X@D+Ijuix2WMGNIlGX4y0nAtl6g+#y<pU&C*p5g- zfR5LojN7rLI|8;+Gf>XWvDSE6BO6;n{Scxa2FIK2IQe(q`)wGLKMl6CzJn=1tFrS6 z`@})8+bf|sBH8EEKL|O-ITW10>fU_3aT+Ofamv#WR7hEn82zNx`);m?X{~T-tpob_ z#kB1i=0MHUlYriYvQLY>3;{0q<7wwzQL>d~aV^?5;zp4BNTU+pJDNuip54NJ)53nh zcR^3jLCCwhMDg2Qhh0_!#Q)-o^6MEnnMkza$&RI(9DQCaj@CY1E1P2mD$Rc7oSmEc z^*j9H6&o%xdZMf4=L@k>p3-As!r^+D^c`_$Hc0rzAE(qnkAaesVS9kd+&gcH5YU1% zV_a+U+}hM)FReY>mT=pC##$zY5@GTeQOWaQ|HUTK28~KY2&kavdP^`ZENWabg5&pW zT}b#P1cGUPiQQP<e6cDlFndG@o(RQ{>gt*0T~}~C{7Bc8!)P@@j;0C|h1L#tsFA6) zOC|mY?8!Z`05fc=(KC?su&_8Vxq1yh5rRWpnkczPXQP4mUe?G*qkdt6u6RgKg)xdS zmCxtJ7k2Z*KV;yg4n>7Z$0abgviy1`BrBWSs`Jb311<U%sP!juM#c3<Rn?s(z{rfr zu+-G__=qY{bHVM#hll>zf{ywOcb4jl^y6o-eq%#0;7nG%-TeV|u74uygLOOQb0C&m z%hFx?I4M|CEXsh)x_fGVqQ#kG7;_%3AlVe@G6=&MA_3N+=nK4Ow_3@zVQ{2?ZU1xr zi}S40=Z%k$QU@D<rpn6FaIm9UH1qgeScROI*Yzmt)AjUaY_huD+XXUR0Q|ro3ySn5 z_A-$=+H=o^f8L;eyx_XabY)%<>d$T5?^h4laLjI&8gfeCD6_<zKQ;9Wvxksov?h~y z)%<v?j&S;_p}>&7sOU`KvU7Ma-{LM3wWvWJfS$ZFH}=S<JSdgTtODP{5>cIYK}A6U z_?)3g6R(>rU!eJ@pfk44F{mkv1lgjrdh9h|&<a6>%y0Q&@6=1jTBE0DRfU8)JlKtz zPK06T<oBZyn+)SO3p3cYQ5jRXJAg#t7tbG+`{<M}!(@NQe-(tiU}xu+%ba{=rKjg& z%g{o^LE43Wr=ptheX)4qibz#8ZyB#Q@IQnx132n;7x8AMEZ(Z7qps(()?G2oW$It> zSsiE`cY*ql<n$gu>2IWW4<M)9%C*~P0DchzujXL`J<rpgS?BZyRwn;5-T!Hi1yl)r zLrws?kzhV^3rhep?s9qEJgN`wKnRsfZ(e^s=mmHH{z=A^l7B##iYY(NSZIo)W!sn3 z6g3-Sdy?+DQy^zPoGF(>E8p887|iNUcW;~6Y~XHvOj7ZSx$t}gVPN}$BjK1~9|v9| zPq?2K-u^ZdI60x?`>Hdf^|Lr+gWm422<{Zc0!+sOshOD4*!}Hd6Ej}`fnueVI~Z~V zHD}8|zcJGiGFsji;2&v4g*YlRMhLO|+=d>??rhdvgV5m{8AH4r>~9RCP^0kXT(2ki zNAa>zT!)rcRW#uBT&F9I2JR}%Y!B9)&p)ijAuApNaXzQ*ik}`b$}~6wLd@m!UbteE zq3Af*a1%AFNk+i>r&+uCE!^$}Lr&P$;6d38VLUqaQqA7q*j1}0lq0Rf97Y6*ah*I0 zZS>eQejknbsEYl1bX>oXUBH!9n56mzTW>p?FQ&}9%Qu?EGCaUU!^4q<sV;^n{3l}< z@a+&^i0%$2n`K!GhZj4Xl`Tc3XnOM(%Zh_3-rX8925x_P!3{v3KVy|ZSS)Mt{eh@L zEw0l4L=fF0*yeS0Y6Q%l92jUW`3g>iFB(0FaLwxUkPm(zozb%Nx1&R_)~&`bn<4{8 zC5=)FPMyO%SzgXy^xfWb8U$+NK>9a{2AhRBt8c%?FA@dhjbA7v3&=2`ji<aywpV{2 z2#%7+3?Vu!@-Bn#Ktw@Ct<FDZtF5oJ*hhyA^1F|ZkFVx&DPmC%m#uq>p|686_zSCh zpBS{-1Jkf@g*5?>)0m{afy>41cNA)a%_O1?;b?Da|6i)EA}Ac@U#DE{A8S4tjF_ST zj;eG48PXuLAR>g^>m@KH+3slaJ8pGvoI)-D=WVp3uzl7^?Nc4QH-Kalzxa^RNJno< z8xY6)Jr*QnR$$GD9CG660h_=c(N#?TF&`qC!v}l&mK(TAv@&e)58?@SfzBTzSzEUJ zUIkgiTrQLSr48@z{4Ifo6zT9@pBGQ(kh5<w+47&NAuyI&DW_|7L74hq%@`I%8G=S= zM}+9DupBxl{?(@>0{}n?DJIY~_sJ+v^G()fwk@?K1pn__!%qnEo6TB7k>h|%zqqf@ zezW<5799^zsgIeY2vuWcMnZh{*;zUPFcqh3t|{JcRgexqGZ^TI9n0h!TN?iOiVFyG zq1+M@eQGuCYblh)$H#lUnPp>QvK<SlNOHDf%HW(X^l8sH&QP~q188!;0-&syLL&K7 zeVmb%4d9LZjDpHcCp50pB3s1$s;0|D)$iM(^!FK6PzvVWMo69)NFS(3S@KA~v+axv zk^4oVbanStUU_??Z|M>I%|k<E+2e~9*}dyt4iG0d+`lX*)q?5Oz%_F@nPvM_asxPL zop!dmk-vWXzZ<xqc(m1Sg<6VTBoNOLOF<RTm@BdW@g$W*TMmHpi=s$)9R9#!ps;nG za@mFWwETR<Op1B$cl-FVtTu6TsBS#k46z=o19HXQPpdviq5EA8SfdQh`AtO463Gom zNn=598x{lp)6MRbV>`X?ZdYnd`A3dj>#fv6=Z5-kZ%T@QWXr1WWx(>96yJ==*fjO} z&=seOmbCKA{o2i!v6_i<K0`ZOxAg0{b_uY^(N{;}`zCdUEIIc39`&oS)+pvT#%Omt zMPQ3bjhBck75g%Pe#o%8h43YnHLSg~x4FUSrANt3yUl59qY6UdxU{U1xzOp)&GS86 zJ~g<uUmlk`#si6DF(*Db3^9d5gy{A3D+-PXk1_5!-!V=RnaHA0+i-u&_^zts0ia1X zyg=3;@~DE(XsGG?7MJk-e2DlXHX{W^t<g&^JnKO3O{rHdyj_l*JUD27aK>Il!-oTU z*5ROS$O&Kz<BEj;+qlnMM#j@>dhsD?2o>epS&cE{U5-Q#?s(mGtSxuVS62TQg#&P< z9^q9}lZWEPPc30X7DA=ljPuyZI|ZweCA)aa0Q#H%#5&R9D6cDb8v(sFb9>t8-seEG zQajep&h~!oTHthXK5?h7F_hV-Cvbxc5s!5A&EZ6QFTi!KS?CGKn*00F=*$%t*^M?j zkm#pjs=vN1wj!U?MDc%E|Ae!78uIDm$CXv2y6^r;h6NMk!G?WH<OLf3!X@jNv<fts zPj;@!=$|!yBig&Zyt<};Ngr8tkYxNEb9c7_>)7g<+}z&YZoHO>w<K`n`%>*19VLg_ z5H5UuCmHOu1`P!TMHk3^^a`LFIM|sN8$FM@qMsI)m+|p&>&)kj=OF}uPXb8ys#QHj zKvJeUq?0LoF}!*HK%yN@=Za5DyWH3+{yP^?R<_(#`x+PQ=#%!On|m##oU^jBa%Reu z4a2u_N|dg}VQcyGr?IukVwpsv$lJ+RX6C}Zx07gRmS`zS+1a_dwa&dW)Dta$Y*#Vy z9opgBmGF?)6gcY%(!MtW1qBds`u$NF936f1yd&f9Aoup9n++7jn_2JC-=$!&$B1`< zYxaDrX5p;l6<c&iHv9(4UG?6_!LO_(jn~@+W8u5aY^09{CEwzFasS-5pwB_N;=BDp zpP0Y6u??DmvY6<+Yy(zLK<c~@Q=;O^YZ>$#$Z|O*+t`^by(JjaSU%*cS#;2LI_)D+ zV!nzmbU06M2G%<ipEx{nQj`qEwMtuGv&ha4$m{Qph`jR|46f;8x7eR7u|_V$g@=0n zZo{sVDeg5VKbfT5kFsYL$>Xk8ZWK9K>4SVr!rzzNNhHuyqe0wTqTb3QU}vu5Wq9G# ztmd4I5r};Iu0H*2&Gk1uG6GIP-p-TlfWnvV;c`=FoF$9rv9Z}$Rl>yMUgf>Y^H_uB zq)6VzWM4uh1!hA#{X$%^+GmOMfaQZv5_D;P6}}*wXM~L<1`;u4>JE(d<~>F%V`)r- zOG&gU@1uEdqyrNc$_X>~!zS=fWo}b}JXlUA^>$&*&|S&o^$*%(Qz$^0(%8E;o;D@h zTt@R}&$EW#oj66|8hn<&joA@_OIhD5aMX*LeH=4xRQ}=KUywFBfj99Bgf=FMnLmFU z2kGIPTaWz4Vs01?J;McSZ7C`%<>Wk%fN-I0wf$glCz+ck=Btt-mn19Y-=4}L8IRSE z0#rg58}bx+h7XfE3=E?k#O&WEZ)QMfhrMWSuiKhXZxOQgv)4EK>hR$VnyN}<AONKT z<%eWuV>5RZSZO5TYha<dEzIWa-TwOGp}djvgQ_Pm^s_7i=H*x#zvQkvO|R9Gh6`7W zcH^1-6$WF<UFK+22{!hwek7rIa2~ZBPUfSQ;nY1dOJ@|oc@d($`J}Mnbp-`=E+-<W zVNl$jqLnwU-_dL{(itf3-D*8A<fGacRU!5+hmO{gmV+)MDI^_L0*K}q!6|nUER6-Z z>fQA6T&Bq~j>J2@UR9V?J^d7q?fEt*hdPTz3-|tLNE9NLzvB;jgk`rmZ6JHYGf8(s zdmJ*%NW}MlPuE}tHnt^MT3i&kTIR=i(SjsH0yjAm*0Q0!TWVR>(~Ax`J2wI!fBlp^ znRjxs-?{!hx*QO)wVf~{A+HB4WU=;^MjUtIi}KT+#APq{m0}@sU6Fl+3x+c$n1JRD z&Yh2ovpbP4n2?^+6U|1q0p%Q@c0Du!w}Z#bO@a@{%bB+6Yb{4moZGv%zGxSL5vYfd zS{D?YLZs_&6#Pdc5SmT{EK$`bg#~-5XN4kIabqq8DT(`H+aI7)Y@{hEs!X}F-cxvg z%AF>4n-!A+hm%4yUn&bGTkMucXRFH`S`y0eyq_Z5>B6`ch<o0~iLbqD6${_2ZJ~+2 zh6@{RYTgrxPCD3qk2MDFU;7y{+sl8#uy%A*`)blMEX0LgyizSv1-acok|pq9qdzXA zc9k}`UMqDEqaytxyggdp(<|ftY@qL@0rScUhlHVvG(gS7@<nKpS+0+o^c&?qx(r5g zNXR>7zm8-CG%r56F871%atB4IpFb4RDl^XNkRIA#f#s#rWJ?|W=DicAND(sl1w1&o z&WLjh5U${?wK6@Nv;&Q^A@APxflAfEHZ0QPx(PbPW+o;Fhle^|o=oy+kDT1xeS00p z1wl4_4f8WI+vKAQ3taD@paAJSp?i*>Yt0}VDI1xM?)>WB6sd#nkJjI{hK>7=%Iq-H z6<ZCQesAA>NQLeuMr69habn94Sqk-u%aKr4nkt@MUYv~52DU&9P>hO~=Qsd%x)-|D zVzVHfN*c%?a|eoTOYQm&Vb~|tfacJ7PTB_vPXaM{hnFNY{X#RN++wM+xtb{eX16h* zR$x4{Av@_XV!9?Fr?)<gQ@Lh2*F;*{?DNDguvuV?6UN~<EnnSOkK~C(>3Y&v29J^* z@@|&q_DAmFjMGl57QfG7mHDk~tgi0be#Lg};imHDP<EHNzI-x))|@;b`ODMNk^VS4 z_`dcaGB3}n`?8*u+Pm2iY+z&UtUj;-x-~c>0<2ofg4<hHK=;RkK(Om@Y(!jXzuxJ9 zoPJzul7OgWnW^n}iNiUEtq~u2Sj<e6znRT;kxZ`U6uwDS4Hap2pAb62e;0o3&08bz zNS`!QFs>+gIPzj+WtDC!W$|4&*e>s(bxXVp$+WoT5l(6z-_3y_cRcqi^X<qySL-4< zeV_0tT#uA2B0GLlRNq*_@n?GY{#)+Yg+py+&1e7acgL%-cxRjH!c!!_l*vI4<1J-z z3$Vga_>L}nyB@!tZ%LdMpeKX;6mXF|n&xwVq#Vf{Jnhp$&XTa&%}Wem7xn2F5gj_@ zPSz$~6jP3;U?qI{6;4f2OIulvbrlu=%ajdM@bPVp>w-d~Ux=UhJTI>ok>3KKsR89c z7FO1R3imH;G7f!3d4cUKX2qww<h7r_$T%ocm_&k5iB!EjeQvLl$;cw{u~T8XdW6Tl z7#|-!u5IOPb}Z%KprBNR1U16Ut*pGK?gHfnPP@@yO6X{(ZbivinUze|cNF(#xQ7z& z6K;XFk7~v48-<>TmtaXKYj6?m%<}+3P|thB2>s)?Z=@+qyfhf>?;G7uNy=$HqNg%Z zf1fas_%=kkYf3f4QoQ}wh$X8Xag#bzsnA_fBNYdl>A^wa{AhAEVNpzv*m;LzS4o;a zxL#**tnWgvx`f;WaiH~AguF_fCcK>N=N0Me_btHAet$c&B*$>0vi`{m&*{7To9Q+h zvO4p@Oklhz!|pqr0+&OQ4x+NS<|aCV#A6ZPZWYU6!b80*XDs+2CZxcAOW?^VHb4D6 zjHgbaV*%2BiG=XN^EO!5KMDnfC!c>2X>snr2vep0IZyitowFcUtR@@HbQLJ+Kz9|I z`G({+LU{c57WR&sS;CYsYrhBC0w9)vaK)1Z8#izyd5!BT)xoB7+H~FMUU}aq2)l0F z3vixcIw1k{amA{ued8^pw|Pvzv|UN+tQS)tEOa~^<>yDck^b#m)l5QIM5dHI`j<WV zonq(E8+p`B_g0ue&}5unpp)U(=y|?Clc1})I_K-s>4>!^kVGe_wO?@3Khk0b+P9nL z8Eq;lO>N&|vK4!<o~zF65dkJDo2BXO>3kq~WFO+y4a!JMO9T2rb$SMr+0ytVc0Ck6 zk}y5AveVK&>@rl7+2!ULnIyG^Mq&W_8WkcUJ@F3ojpe-g(qNuZ`feX}Asz3dYT#Mb z4|AG1?CEypBUGfqs`wo3IwoOFw(If%_#l}j;(?p4Z0v;rc_a_ip?vSGo1pn8fuq$t z<qacb7%@wKYmG0YGM_$tI{Z;48ct<ChKXmWqHCXwxFN4%+NJR{^)9IAkaikTdMx1? zRYuzPMZ=&7+r%X{Hz)*D7bdB!ZD98#uGr_pw^LH4zTh_4(_Z&{Hzp+@cR80|WVSzK z#apO$yvD~v{LLfjJ<sPz;)|iDr9e^2Ck3wHQkKw`yv;%CdOI&gk5{}a9|I|XamtL+ z^>!15U)6HHCM<W%a^9()jWaUo^%t_bjqJVUulqjo%}=URkeKV89(_Jil~jS_P2a~P zlJGmxx$riOXEHJtg^CzJqK`f>Nw&SoFJ^q>?)2&X)mI;>wq4oJ>d?w?s#S8415-l$ zCNMo#0jQ@HX-Pg_id3(Z#ksxZqBP!np5%{6A(ZH-iW7hKabXj195hLZz)T|g_VW`8 zevck9FldVqnmA;p7Nw4*Yb-EYS$akq9Ve+5Qxz(P`v0*GNUqP@sa4c+MYlYUk;QTq zX{V>o-}qMej^@kM8^?#H&8TIvXjc~I`gs5WcN+%~-B%h7Q$PjS*z^=g<bq!ec$7zn zy8WS{1QSF3&aKZci$zYHSdg2u;25KB$K_mD;-SitzPfxogZ!|v*7PE*xD+3v(J!R> z#z^Y*JfnZw_bS6fn&`QTzp^dp#Uw(N68A?9C3!PeM(Xg$t7oV?sy!@z>&QANa(#G9 zf~}yvbo5F4&`1y$osJuon%&%ib?v==+8<{1RNef7f`|Uc1eJppvqa8~Ze=CRTbe@w z9z(m%UTVhk=2(e#Elj+cy9BA*oO5*5T?L#WuoPdv(N8Z6)X7?$s;eCVj^pfQ0uo^m zg_Qjom$AvgdT*t$Ww83<uH+MRr=ocEh^KVEX8gMZHHW-lNXuOe8sY)L-emk9{4(bF z#bSAmgpi<H)!;Vyvo5Rh7Eb_%ld808sHUX5C-${yeie5q?0maC7nT1gCGR!C5~LN) ze#f)JXJxTpf{RM18WN$Tq>m6JHI94o!_0AD4?}&INdb5fq5Mi|sj1ES?*x>1_Vud9 z3+v0u%fAF$DTlwbEDW|n7X+$TuEpSq208Bg4j3n;q)YCm1Bq~(NtunC65!(*NJk0E z1#X@*L>HR+smp)lJzXszHKxvc4zdWTpMQGtiA)g;w0J!Mi1~X1;RlTNzk9D13Z1Cx zzvRDr;L+i^ksZ$-MZC0!>mGyi1352EOc<wd#F6pw3m#I;vE>|#x8X0j#Ri~M^kS0> z3sqDfXmNubnUVAhSz5nOdL=EHm~S&kuPONaeX<Dq<iZwPZL;UHp%DzYi-1qQ*!o2s zJ;of9FG!^ZErKvtitunTTtK;?Ql6F(=T}tNC%xh9w&}g9>PvsLRwTv#eyrSF!(b6u z+K<@8-NSxz_mOQY&6fb-)cp?U*}X%%*a3?5)Sva5bkj&=D$E?NB$D|A{-PBu4jC5q zAF2H~SVg71<@rIKuq%nC4o-#MDqO0@6imQdvT`)D-YNbNU1}!-BZY24O#WOiJ5;5+ zL5vQ9$NTp!ta&nt2*<}$PKV0l-WAC3d?)6Q%Y@0(hoGezr-cMn_@2dSI`6LZJ)sc~ zeYv(IeTX1sW<Gd~TrS6jghn_1eA*kVj&HI<fr7&IKv#pGx9K33DR<*lH(5W?<ka9X z(pT8Hc|{|}xeoeMUGt|t>BTxsuW!y5X?SKrvZToFGxOOy2N+>xWr_|$3_K$XgMQKA zkanA1RflyhJaO@NRpfc8+qo6EHZzD9C-HI0nk6Y|h<aKZh^Cw5$Ov~^=?$s*`h7?K zXTXLD;O!ie(~+`jMbb?nvJc_yTQZUQXB!N@j5X?gTyA&7_e5L{;!U6VD6Wc3%6y+5 zLZ#S;R{&p-<7`3Rm*aC$zU+fX(>?m%grEx(BMOQQI$*clh^KKZ2KdS7wM-0+@9Bgu zFY@K@1PGFAFP$z|u+-={Pwy{ZKq|;2E?Ar3F3h$`Zpe7Ql(CVA2-b<rPW{hA@2v(V zkd&q6f9C??b?`o6VG&uG(Bh>&&#eZ?`DdNh-yjV@Rh=H1+nDw^&$YSFC!exdP;>jl z#U;s(Fq5jx8mKAt7z~{Wcr3Mu0i=_#56thw^@T<4GebQYYz$RiH}gY%;5&nw<|{Ox z=@>U`;mIkCkl$CmWpf7qOJoRQ_3OizmC!EJ5n$h1Li~GKkhL3s&XtI055wRv>88fS zOf<SONg%YItH&0B^)wzwY_C7FsAsqytmsKdP_wc+p7b*S-7?sf!(%}1&~`E~G@9u6 zq{W$bhgAF(+FvK9C7m7?%FmV11HEJK<Hz_)Y3+}x*TQbL;Fj`Bi-qiL0XTSzneWNT z$zc6s`7xKi#wzU*S@oi9=me|rD~7g1eQD+C+N_LF#P~nI_BkbxtH_Puq8Vhhi3KJx z>+$JXZ8h!8x#+PBl=D~^5@+Ow-&p9p%1f$$;Lyf)*rnRoUt^zBEIuN17@zSQz�L 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�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 T?x6=uu=7<@)>0}{unhh`U5XXk diff --git a/src/js/01-i18n.js b/src/js/01-i18n.js index 92428ce..4b17488 100644 --- a/src/js/01-i18n.js +++ b/src/js/01-i18n.js @@ -743,7 +743,7 @@ const I18N = { metaTitle: 'Doc Diff – Compare PDF and Word documents without uploading', otherPageHint: 'This page is also available in English →', metaDescription: 'Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads.', - ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface).', + ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green.', footerSource: 'Source code on GitHub', githubMenu: 'Source code on GitHub', footerLicense: 'MIT licence', diff --git a/src/template.html b/src/template.html index 977e197..55cd328 100644 --- a/src/template.html +++ b/src/template.html @@ -45,7 +45,7 @@ <meta property="og:locale:alternate" content="__OG_LOCALE_ALT__" /> <meta property="og:title" content="__I18N:metaTitle__" /> <meta property="og:description" content="__I18N:metaDescription__" /> - <meta property="og:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta property="og:image" content="__OG_IMAGE__" /> <meta property="og:image:type" content="image/png" /> <meta property="og:image:width" content="2400" /> <meta property="og:image:height" content="1260" /> @@ -53,7 +53,7 @@ <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="__I18N:metaTitle__" /> <meta name="twitter:description" content="__I18N:metaDescription__" /> - <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta name="twitter:image" content="__OG_IMAGE__" /> <meta name="twitter:image:alt" content="__I18N:ogImageAlt__" /> <!-- Structured data (schema.org). A data block: browsers never execute it. --> From 1d7af9bf4a44f1cd513644b72c513ef6f65d2e1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Hermes?= <remi@MinivonRemi220.fritz.box> Date: Fri, 23 Oct 2026 07:31:52 +0200 Subject: [PATCH 2/4] Export the final version in the original Word format and make exports trustworthy - Word: export the final version (clean) or tracked changes on top of the user's own .docx, keeping styles, numbering, links, footnotes and layout. The result is read back and verified; if that is not possible, the export falls back to the generated document and says so. - PDF: final version, side by side (landscape) or inline (portrait). - Export menu grouped into "Final version" and "Comparison" with short explanations; HTML, Markdown and text under "More formats". - Reports count changes exactly like the list (merged header/footer items), with page ranges and unique anchors; header/footer changes go into a Word comment instead of the body; no cover block in Word documents. - Diff: changes joined only by a hyphen or a space read as one replacement instead of misleading fragment pairs. - Rejections keep heading markers, so headings stay headings in the final version. - The imported .docx is kept in saved sessions so the original-format export still works after reopening. - Text fixes in help, FAQ and export wording (DE and EN). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --- DocDiff.html | 1630 ++++++++++++++++++++++++++--- scripts/test-app-state.mjs | 10 +- scripts/test-core.mjs | 38 + scripts/test-export.mjs | 134 ++- site/en/index.html | 1634 +++++++++++++++++++++++++++--- site/index.html | 1630 ++++++++++++++++++++++++++--- src/js/01-i18n.js | 98 +- src/js/03-state.js | 2 + src/js/04-core.js | 93 +- src/js/06-compare.js | 10 +- src/js/07-interactions.js | 2 + src/js/08-export-docx.js | 130 ++- src/js/08-export.js | 222 +++- src/js/08b-export-docx-source.js | 915 +++++++++++++++++ src/js/09-import.js | 4 +- src/js/10-controls.js | 5 + src/js/11-session.js | 35 + src/styles.css | 77 ++ src/template.html | 20 +- 19 files changed, 6139 insertions(+), 550 deletions(-) create mode 100644 src/js/08b-export-docx-source.js diff --git a/DocDiff.html b/DocDiff.html index 3f54b2b..6aed4d5 100644 --- a/DocDiff.html +++ b/DocDiff.html @@ -42,7 +42,7 @@ <meta property="og:locale:alternate" content="en_US" /> <meta property="og:title" content="Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload" /> <meta property="og:description" content="Zwei Fassungen eines Vertrags oder Dokuments vergleichen: PDF, Word oder Text, Wort für Wort markiert. Kostenlos, Open Source, ohne Upload." /> - <meta property="og:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta property="og:image" content="https://docdiff.app/og-image.png?v=3" /> <meta property="og:image:type" content="image/png" /> <meta property="og:image:width" content="2400" /> <meta property="og:image:height" content="1260" /> @@ -50,7 +50,7 @@ <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload" /> <meta name="twitter:description" content="Zwei Fassungen eines Vertrags oder Dokuments vergleichen: PDF, Word oder Text, Wort für Wort markiert. Kostenlos, Open Source, ohne Upload." /> - <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=3" /> <meta name="twitter:image:alt" content="Doc Diff: Zwei Vertragsfassungen nebeneinander, entfernter Text rot durchgestrichen, neuer Text grün markiert." /> <!-- Structured data (schema.org). A data block: browsers never execute it. --> @@ -90,7 +90,7 @@ "@type": "CreativeWork", "url": "https://github.com/tschnorpfeil/docdiff#readme" }, - "image": "https://docdiff.app/og-image.png?v=2", + "image": "https://docdiff.app/og-image.png?v=3", "author": { "@type": "Person", "name": "Tobias Schnorpfeil", @@ -155,7 +155,7 @@ "name": "Kann ich die Änderungen in Word weiterbearbeiten?", "acceptedAnswer": { "@type": "Answer", - "text": "Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung." + "text": "Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei." } }, { @@ -858,6 +858,45 @@ .menu-label + .menu-seg { margin-top: 2px; } +/* Export menu: section titles and items with a one-line explanation */ +.menu-export { + width: 340px; + max-width: calc(100vw - 16px); +} +.menu-label-2line { + display: flex; + flex-direction: column; + gap: 1px; + padding: 8px 10px 4px; + color: hsl(var(--foreground)); +} +.menu-label-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); +} +.menu-item.mi-2line { + align-items: flex-start; + white-space: normal; +} +.menu-item.mi-2line > svg { + margin-top: 2px; + flex-shrink: 0; +} +.mi-text { + display: flex; + flex-direction: column; + gap: 1px; + min-width: 0; +} +.mi-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); + overflow-wrap: anywhere; +} .menu-sep { height: 1px; margin: 5px 4px; @@ -3337,6 +3376,44 @@ font-style: italic; color: #444; } + /* Final version: a clean document, no marks */ + #print-view .pv-final { + font-size: 10.5pt; + line-height: 1.5; + hyphens: auto; + } + #print-view .pv-final h1 { + font-size: 16pt; + line-height: 1.25; + margin: 0 0 12pt; + break-after: avoid; + } + #print-view .pv-final h2 { + font-size: 12pt; + margin: 16pt 0 6pt; + break-after: avoid; + } + #print-view .pv-final h3 { + font-size: 10.5pt; + margin: 12pt 0 4pt; + break-after: avoid; + } + #print-view .pv-final p { + margin: 0 0 6pt; + orphans: 3; + widows: 3; + } + #print-view .pv-final .pvf-item { + display: flex; + gap: 0; + } + #print-view .pv-final .pvf-marker { + flex: 0 0 2.4em; + } + #print-view .pv-final .pvf-body { + flex: 1 1 auto; + min-width: 0; + } } /* Landing page on phones: one column, nothing wider than the screen */ @@ -3563,16 +3640,26 @@ <h2 class="sr-only" id="files-pop-title" data-i18n="filesTitle">Dokumente</h2> <span id="i18n-btn-export" data-i18n="exportBtn">Exportieren</span> <svg class="icon tb-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg> </button> - <div class="menu menu-right" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> - <button type="button" class="menu-item" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span data-i18n="expWord">Word mit Änderungsverfolgung (.docx)</span></button> - <button type="button" class="menu-item" data-export="print" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><polyline points="6 9 6 2 18 2 18 9"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect width="12" height="8" x="6" y="14"/></svg><span data-i18n="expPdf">Drucken oder als PDF sichern</span></button> - <button type="button" class="menu-item" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span data-i18n="expCopy">Text der neuen Fassung kopieren</span></button> + <div class="menu menu-right menu-export" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> + <div class="menu-group" role="group" aria-labelledby="exp-sec-final"> + <div class="menu-label menu-label-2line" id="exp-sec-final"><span data-i18n="expSecFinal">Endfassung</span><span class="menu-label-desc" id="exp-sec-final-desc" data-i18n="expSecFinalDesc">Neue Fassung mit Ihren Entscheidungen, ohne Markierungen</span></div> + <button type="button" class="menu-item mi-2line" data-export="word-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWordFinal">Word (.docx)</span><span class="mi-desc" id="exp-desc-word-final"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="M9 15h6"/><path d="M9 18h4"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfFinal">PDF</span><span class="mi-desc" id="exp-desc-print-final" data-i18n="expPdfFinalDesc">Sauberes Dokument, im Druckdialog „Als PDF sichern“</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expCopy">Text der neuen Fassung kopieren</span><span class="mi-desc" id="exp-desc-copy" data-i18n="expCopyDesc">Reiner Text für E-Mail oder andere Programme</span></span></button> + </div> + <div class="menu-sep" role="separator"></div> + <div class="menu-group" role="group" aria-labelledby="exp-sec-compare"> + <div class="menu-label menu-label-2line" id="exp-sec-compare"><span data-i18n="expSecCompare">Vergleich</span><span class="menu-label-desc" data-i18n="expSecCompareDesc">Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben</span></div> + <button type="button" class="menu-item mi-2line" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWord">Word mit Änderungsverfolgung (.docx)</span><span class="mi-desc" id="exp-desc-word"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-split" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="18" height="16" x="3" y="4" rx="2"/><path d="M12 4v16"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfSplit">PDF nebeneinander</span><span class="mi-desc" id="exp-desc-print-split" data-i18n="expPdfSplitDesc">Querformat, alte und neue Fassung in zwei Spalten</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-inline" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="16" height="18" x="4" y="3" rx="2"/><path d="M8 8h8"/><path d="M8 12h8"/><path d="M8 16h5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfInline">PDF als Fließtext</span><span class="mi-desc" id="exp-desc-print-inline" data-i18n="expPdfInlineDesc">Hochformat, Änderungen im Text markiert</span></span></button> + </div> <div class="menu-sep" role="separator"></div> <button type="button" class="menu-item" role="menuitem" id="btn-more-formats" aria-expanded="false" aria-controls="more-formats"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="7" height="7" x="3" y="3" rx="1"/><rect width="7" height="7" x="14" y="3" rx="1"/><rect width="7" height="7" x="14" y="14" rx="1"/><rect width="7" height="7" x="3" y="14" rx="1"/></svg><span data-i18n="moreFormats">Weitere Formate</span><svg class="icon mi-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg></button> <div class="menu-sub" id="more-formats" role="group" aria-labelledby="btn-more-formats" hidden> <button type="button" class="menu-item" data-export="html" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M2 12h20"/><path d="M12 2a15 15 0 0 1 0 20a15 15 0 0 1 0-20"/></svg><span data-i18n="expHtml">Bericht als Webseite (.html)</span></button> <button type="button" class="menu-item" data-export="md" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg><span data-i18n="expMd">Bericht als Markdown (.md)</span></button> - <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Neue Fassung als Textdatei (.txt)</span></button> + <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Endfassung als Textdatei (.txt)</span></button> </div> </div> </div> @@ -3695,7 +3782,7 @@ <h2 id="how-title" data-i18n="howTitle">So funktioniert’s</h2> <ol class="how-steps"> <li><span class="how-num" aria-hidden="true">1</span><span><strong data-i18n="how1Title">Zwei Fassungen wählen</strong> <span data-i18n="how1Text">Als PDF, Word-Datei oder eingefügten Text. Die Dateien werden nur in diesem Browser-Tab gelesen.</span></span></li> <li><span class="how-num" aria-hidden="true">2</span><span><strong data-i18n="how2Title">Änderungen durchgehen</strong> <span data-i18n="how2Text">Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.</span></span></li> - <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Ergebnis sichern, wenn Sie es brauchen</strong> <span data-i18n="how3Text">Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.</span></span></li> + <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Ergebnis sichern, wenn Sie es brauchen</strong> <span data-i18n="how3Text">Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.</span></span></li> </ol> </section> @@ -3747,7 +3834,7 @@ <h2 id="faq-title" data-i18n="faqTitle">Häufige Fragen</h2> <details class="faq-item"> <summary data-i18n="faqWordQ">Kann ich die Änderungen in Word weiterbearbeiten?</summary> <div class="faq-answer" data-i18n-html="faqWordA"> - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> </div> </details> <details class="faq-item"> @@ -4032,11 +4119,28 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> listBtnLabel: 'Änderungsliste ({n} Änderungen)', exportBtn: 'Exportieren', expWord: 'Word mit Änderungsverfolgung (.docx)', - expPdf: 'Drucken oder als PDF sichern', expHtml: 'Bericht als Webseite (.html)', expMd: 'Bericht als Markdown (.md)', expCopy: 'Text der neuen Fassung kopieren', - expTxt: 'Neue Fassung als Textdatei (.txt)', + expTxt: 'Endfassung als Textdatei (.txt)', + expSecFinal: 'Endfassung', + expSecFinalDesc: 'Neue Fassung mit Ihren Entscheidungen, ohne Markierungen', + expSecFinalOpen: 'Neue Fassung mit Ihren Entscheidungen – {n} offene Änderungen sind wie angenommen enthalten', + expSecFinalOpenOne: 'Neue Fassung mit Ihren Entscheidungen – 1 offene Änderung ist wie angenommen enthalten', + expSecCompare: 'Vergleich', + expSecCompareDesc: 'Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'Im Format Ihrer Datei „{name}“', + expWordFinalDescNew: 'Neu gesetzt, mit Überschriften und Nummerierung', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'Sauberes Dokument, im Druckdialog „Als PDF sichern“', + expCopyDesc: 'Reiner Text für E-Mail oder andere Programme', + expWordDesc: 'Offene Änderungen in Word annehmen oder ablehnen', + expWordDescOriginal: 'Im Format von „{name}“, offene Änderungen in Word annehmen oder ablehnen', + expPdfSplit: 'PDF nebeneinander', + expPdfSplitDesc: 'Querformat, alte und neue Fassung in zwei Spalten', + expPdfInline: 'PDF als Fließtext', + expPdfInlineDesc: 'Hochformat, Änderungen im Text markiert', moreLabel: 'Weitere Aktionen', clearBtn: 'Neuer Vergleich', textBtn: 'Text einfügen/bearbeiten', @@ -4055,6 +4159,8 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word-Datei gespeichert: {name}', + toastWordOriginal: 'Word-Datei im Originalformat gespeichert: {name}', + noticeWordFallback: 'Gespeichert: {name}. Das Originalformat ließ sich für diese Datei nicht sicher übernehmen (z. B. wegen Änderungen in Fußnoten oder Textfeldern). Die Word-Datei wurde deshalb neu gesetzt; der Text ist vollständig.', toastHtml: 'Bericht gespeichert: {name}', toastMd: 'Markdown-Bericht gespeichert: {name}', toastTxt: 'Textdatei gespeichert: {name}', @@ -4065,7 +4171,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> toastUndo: 'Rückgängig', toastUndone: 'Rückgängig gemacht', toastRedone: 'Wiederhergestellt', - copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Neue Fassung als Textdatei (.txt)“ unter „Weitere Formate“.', + copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Endfassung als Textdatei (.txt)“ unter „Weitere Formate“.', announceCompared: 'Vergleich fertig: {n} Änderungen. Mit J und K springen Sie von Änderung zu Änderung.', announceComparedOne: 'Vergleich fertig: 1 Änderung.', announceIdentical: 'Vergleich fertig: keine Textunterschiede.', @@ -4118,6 +4224,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> movedFromHere: 'Verschoben – von hier', movedToHere: 'Verschoben – hierher', moreDeltas: 'weitere Änderungen', + moreDeltasOne: 'weitere Änderung', pageLabel: 'Seite', pageShort: 'S.', pageOf: 'von', @@ -4157,7 +4264,11 @@ <h3>Lesen</h3> </section> <section class="help-sec"> <h3>Prüfen</h3> - <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft, springen zur nächsten offenen Änderung und Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück. Im Word-Export sind angenommene Änderungen übernommen, abgelehnte zurückgenommen und offene als nachverfolgte Änderungen eingetragen.</p> + <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft und springen zur nächsten offenen Änderung. Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück.</p> + </section> + <section class="help-sec"> + <h3>Exportieren</h3> + <p><strong>Endfassung</strong>: die neue Fassung mit allen Entscheidungen und Bearbeitungen, ohne Markierungen – als Word-Datei (bei einer Word-Datei als neuer Fassung in deren Originalformat), als PDF oder als Text. Noch offene Änderungen sind darin wie angenommen enthalten. <strong>Vergleich</strong>: alt → neu mit Markierungen – als Word-Datei mit Änderungsverfolgung (angenommene Änderungen übernommen, abgelehnte zurückgenommen, offene zum Annehmen oder Ablehnen) oder als PDF nebeneinander bzw. als Fließtext.</p> </section> <section class="help-sec"> <h3>Tastenkürzel</h3> @@ -4246,6 +4357,7 @@ <h3>Ihre Daten</h3> exportTitleFmt: 'Vergleich: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} Änderungen ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', + exportCountsFmtOne: '1 Änderung ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', exportReviewFmt: '{k} von {n} geprüft ({a} angenommen, {r} abgelehnt)', exportLabelOriginal: 'Alte Fassung', exportLabelRevised: 'Neue Fassung', @@ -4257,9 +4369,9 @@ <h3>Ihre Daten</h3> exportLabelDetail: 'Angabe', exportScopeFull: 'Vollständiges Dokument', exportScopeChanges: 'Nur Änderungen (Filter „Nur Änderungen“ aktiv, unveränderte Absätze ausgelassen)', - exportHfIgnored: 'ausgeblendet (nicht verglichen)', - exportHfIgnoredCount: 'ausgeblendet ({n} Zeilen nicht verglichen)', - exportHfIncluded: 'mitverglichen', + exportHfIgnored: 'unveränderte ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIgnoredCount: '{n} unveränderte Zeilen ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIncluded: 'vollständig mitverglichen', exportSummaryHeading: 'Zusammenfassung', exportCountTotal: 'Änderungen gesamt', exportChangesHeading: 'Änderungsübersicht', @@ -4280,8 +4392,10 @@ <h3>Ihre Daten</h3> a11yAddedStart: '[hinzugefügt:', a11yAddedEnd: ']', docxSubject: 'Vergleich mit nachverfolgten Änderungen', - docxNote: 'Offene Abweichungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen. In Doc Diff angenommene Änderungen sind bereits übernommen, abgelehnte bereits zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen.', - exportFileFinal: 'Neue_Fassung', + docxSubjectFinal: 'Endfassung', + docxNote: 'Offene Änderungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen, angenommene bereits übernommen, abgelehnte zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen. Diesen Kommentar können Sie löschen.', + docxHfHeading: 'Geänderte Kopf-/Fußzeilen (nicht im Fließtext):', + exportFileFinal: 'Endfassung', exportFileRedline: 'Vergleich', exportFileReport: 'Bericht', sampleLeftName: 'Vertrag_v1_Vorher.docx', @@ -4311,7 +4425,7 @@ <h3>Ihre Daten</h3> how2Title: 'Änderungen durchgehen', how2Text: 'Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.', how3Title: 'Ergebnis sichern, wenn Sie es brauchen', - how3Text: 'Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.', + how3Text: 'Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.', scopeTitle: 'Was es kann – und was nicht', scopeCanTitle: 'Kann', scopeCan1: 'PDFs mit Textebene, Word-Dateien (.docx) und reinen Text vergleichen – auch gemischt, etwa PDF mit Word', @@ -4343,7 +4457,7 @@ <h3>Ihre Daten</h3> `, faqWordQ: 'Kann ich die Änderungen in Word weiterbearbeiten?', faqWordA: ` - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> `, metaTitle: 'Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload', otherPageHint: 'Diese Seite gibt es auch auf Deutsch →', @@ -4405,11 +4519,28 @@ <h3>Ihre Daten</h3> listBtnLabel: 'List of changes ({n} changes)', exportBtn: 'Export', expWord: 'Word with tracked changes (.docx)', - expPdf: 'Print or save as PDF', expHtml: 'Report as web page (.html)', expMd: 'Report as Markdown (.md)', expCopy: 'Copy text of the new version', - expTxt: 'New version as text file (.txt)', + expTxt: 'Final version as text file (.txt)', + expSecFinal: 'Final version', + expSecFinalDesc: 'The new version with your decisions, without marks', + expSecFinalOpen: 'The new version with your decisions – {n} open changes are included as accepted', + expSecFinalOpenOne: 'The new version with your decisions – 1 open change is included as accepted', + expSecCompare: 'Comparison', + expSecCompareDesc: 'Old → new with all marks, to review or pass on', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'In the format of your file “{name}”', + expWordFinalDescNew: 'Newly typeset, with headings and numbering', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'A clean document; choose “Save as PDF” in the print dialog', + expCopyDesc: 'Plain text for email or other apps', + expWordDesc: 'Accept or reject the open changes in Word', + expWordDescOriginal: 'In the format of “{name}”; accept or reject the open changes in Word', + expPdfSplit: 'PDF side by side', + expPdfSplitDesc: 'Landscape, old and new version in two columns', + expPdfInline: 'PDF as running text', + expPdfInlineDesc: 'Portrait, changes marked in the text', moreLabel: 'More actions', clearBtn: 'New comparison', textBtn: 'Paste or edit text', @@ -4428,6 +4559,8 @@ <h3>Ihre Daten</h3> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word file saved: {name}', + toastWordOriginal: 'Word file saved in the original format: {name}', + noticeWordFallback: 'Saved: {name}. The original format could not be kept reliably for this file (for example because of changes in footnotes or text boxes), so the Word file was typeset anew; the text is complete.', toastHtml: 'Report saved: {name}', toastMd: 'Markdown report saved: {name}', toastTxt: 'Text file saved: {name}', @@ -4438,7 +4571,7 @@ <h3>Ihre Daten</h3> toastUndo: 'Undo', toastUndone: 'Undone', toastRedone: 'Redone', - copyFailed: 'Copying to the clipboard is not possible here. Please use “New version as text file (.txt)” under “More formats” instead.', + copyFailed: 'Copying to the clipboard is not possible here. Please use “Final version as text file (.txt)” under “More formats” instead.', announceCompared: 'Comparison ready: {n} changes. Press J and K to move between changes.', announceComparedOne: 'Comparison ready: 1 change.', announceIdentical: 'Comparison ready: no text differences.', @@ -4491,6 +4624,7 @@ <h3>Ihre Daten</h3> movedFromHere: 'Moved – from here', movedToHere: 'Moved – to here', moreDeltas: 'more changes', + moreDeltasOne: 'more change', pageLabel: 'Page', pageShort: 'p.', pageOf: 'of', @@ -4530,7 +4664,11 @@ <h3>Reading</h3> </section> <section class="help-sec"> <h3>Reviewing</h3> - <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed, move on to the next open change A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back. In the Word export, accepted changes are applied, rejected ones are reverted and open ones are recorded as tracked changes.</p> + <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed and move on to the next open change. A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back.</p> + </section> + <section class="help-sec"> + <h3>Exporting</h3> + <p><strong>Final version</strong>: the new version with every decision and edit applied, without marks – as a Word file (in the original format when the new version is a Word file), as PDF or as text. Changes that are still open are included as if accepted. <strong>Comparison</strong>: old → new with marks – as a Word file with tracked changes (accepted changes applied, rejected ones reverted, open ones to accept or reject) or as PDF side by side or as running text.</p> </section> <section class="help-sec"> <h3>Keyboard shortcuts</h3> @@ -4619,6 +4757,7 @@ <h3>Your data</h3> exportTitleFmt: 'Comparison: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} changes ({mod} changed, {ins} added, {del} removed)', + exportCountsFmtOne: '1 change ({mod} changed, {ins} added, {del} removed)', exportReviewFmt: '{k} of {n} reviewed ({a} accepted, {r} rejected)', exportLabelOriginal: 'Old version', exportLabelRevised: 'New version', @@ -4630,9 +4769,9 @@ <h3>Your data</h3> exportLabelDetail: 'Detail', exportScopeFull: 'Full document', exportScopeChanges: 'Changes only (“Changes only” filter active, unchanged paragraphs omitted)', - exportHfIgnored: 'hidden (not compared)', - exportHfIgnoredCount: 'hidden ({n} lines not compared)', - exportHfIncluded: 'included in the comparison', + exportHfIgnored: 'unchanged ones hidden; changed ones are listed as changes', + exportHfIgnoredCount: '{n} unchanged lines hidden; changed ones are listed as changes', + exportHfIncluded: 'fully compared', exportSummaryHeading: 'Summary', exportCountTotal: 'Total changes', exportChangesHeading: 'List of changes', @@ -4653,8 +4792,10 @@ <h3>Your data</h3> a11yAddedStart: '[added:', a11yAddedEnd: ']', docxSubject: 'Comparison with tracked changes', - docxNote: 'Open differences are recorded as tracked changes (author “Doc Diff”). Changes accepted in Doc Diff are already applied, rejected ones already reverted. In Word, use Review › Accept / Reject to process them one by one or all at once.', - exportFileFinal: 'New_version', + docxSubjectFinal: 'Final version', + docxHfHeading: 'Changed headers/footers (not in the body text):', + docxNote: 'Open changes are recorded as tracked changes (author “Doc Diff”); accepted ones are already applied, rejected ones reverted. In Word, use Review › Accept / Reject one by one or all at once. You can delete this comment.', + exportFileFinal: 'final', exportFileRedline: 'Comparison', exportFileReport: 'Report', sampleLeftName: 'Contract_v1_Before.docx', @@ -4684,7 +4825,7 @@ <h3>Your data</h3> how2Title: 'Go through the changes', how2Text: 'Removed text is struck through in red, added text is marked green. You can accept or reject each change.', how3Title: 'Save the result if you need it', - how3Text: 'As a Word file with tracked changes, as PDF or as a report.', + how3Text: 'As a clean final version (Word in the original format, or PDF) or as a comparison with tracked changes.', scopeTitle: 'What it can do – and what it can’t', scopeCanTitle: 'Can', scopeCan1: 'Compare PDFs with a text layer, Word files (.docx) and plain text – also mixed, e.g. a PDF against a Word file', @@ -4716,12 +4857,12 @@ <h3>Your data</h3> `, faqWordQ: 'Can I keep working on the changes in Word?', faqWordA: ` - <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting.</p> + <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too.</p> `, metaTitle: 'Doc Diff – Compare PDF and Word documents without uploading', otherPageHint: 'This page is also available in English →', metaDescription: 'Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads.', - ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface).', + ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green.', footerSource: 'Source code on GitHub', githubMenu: 'Source code on GitHub', footerLicense: 'MIT licence', @@ -5063,6 +5204,8 @@ <h3>Your data</h3> rightName: '', leftFormat: '', rightFormat: '', + // The .docx files as loaded ({ name, bytes, importedText }): the Word export keeps their format. + docSources: { left: null, right: null }, alignedRows: [], changeRows: [], listItems: [], @@ -5333,7 +5476,8 @@ <h3>Your data</h3> const meta = []; if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf'); if (block.indent > 0) meta.push(`lvl=${block.indent}`); - return metaLine(meta.join(';'), block.text); + // A heading marker ("## ") from the source stays, so a rewritten text keeps its structure. + return metaLine(meta.join(';'), (block.headingMarker || '') + block.text); } function parseLineMeta(line) { @@ -5955,8 +6099,11 @@ <h3>Your data</h3> (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) >= 2); const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter); + let headingMarker = ''; if (!isHeaderFooter) { seenContentBlock = true; + const m = line.match(/^#{1,3}\s+/); + if (m) headingMarker = `${m[0].trim()} `; line = line.replace(/^#{1,3}\s+/, '').trim(); if (!line) continue; } @@ -5988,6 +6135,7 @@ <h3>Your data</h3> sectionRef: currentSectionRef, text: line, kind, + headingMarker, indent: entry.indent, isHeading, isHeaderFooter, @@ -6380,9 +6528,11 @@ <h3>Your data</h3> } } - const cleaned = mergedNums - .filter(tok => tok.value.length > 0) - .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })); + const cleaned = mergeFragmentedChanges( + mergedNums + .filter(tok => tok.value.length > 0) + .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })) + ); if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned; // Never show a diff that does not reproduce the source texts: fall back to the raw diff. @@ -6391,6 +6541,84 @@ <h3>Your data</h3> ); } +/** + * Joins changes that only an unchanged hyphen or space separates into one replacement, so a + * rewritten phrase reads as one change instead of misleading word pairs: + * "[Standard]→[Echtzeit]-[Berichtswesen]→[Nachtragsmanagement]" becomes + * "[Standard-Berichtswesen]→[Echtzeit-Nachtragsmanagement]". The joined glue goes into both + * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of + * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared + * by both sides at the edges stays unchanged. + */ +function mergeFragmentedChanges(parts) { + const isChange = tok => Boolean(tok && (tok.removed || tok.added)); + const glued = []; + for (let i = 0; i < parts.length; i++) { + const cur = parts[i]; + const isGlue = + !isChange(cur) && + isChange(glued[glued.length - 1]) && + isChange(parts[i + 1]) && + (/^\s+$/.test(cur.value) || !/\s/.test(cur.value)); + if (isGlue) { + glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true }); + } else { + glued.push(cur); + } + } + + const out = []; + const pushEqual = value => { + if (!value) return; + const last = out[out.length - 1]; + if (last && !isChange(last)) last.value += value; + else out.push({ value }); + }; + let i = 0; + while (i < glued.length) { + if (!isChange(glued[i])) { + pushEqual(glued[i].value); + i++; + continue; + } + let rem = ''; + let add = ''; + while (i < glued.length && isChange(glued[i])) { + if (glued[i].removed) rem += glued[i].value; + else add += glued[i].value; + i++; + } + let lead = ''; + let trail = ''; + if (rem && add) { + const leadRem = rem.match(/^\s*/)[0]; + const leadAdd = add.match(/^\s*/)[0]; + while (lead.length < Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) { + lead += leadRem[lead.length]; + } + rem = rem.slice(lead.length); + add = add.slice(lead.length); + const trailRem = rem.match(/\s*$/)[0]; + const trailAdd = add.match(/\s*$/)[0]; + let n = 0; + while ( + n < Math.min(trailRem.length, trailAdd.length) && + trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n] + ) { + n++; + } + trail = n ? rem.slice(rem.length - n) : ''; + rem = rem.slice(0, rem.length - n); + add = add.slice(0, add.length - n); + } + pushEqual(lead); + if (rem) out.push({ value: rem, removed: true }); + if (add) out.push({ value: add, added: true }); + pushEqual(trail); + } + return out; +} + function coalesceSideTokens(sideParts, prop) { const out = []; for (let i = 0; i < sideParts.length; i++) { @@ -7410,6 +7638,7 @@ <h3>Your data</h3> state.rightName = t('sampleRightName'); state.rightFormat = 'DEMO'; state.rightText = sample.v2; + state.docSources = { left: null, right: null }; resetEditHistory(); runComparison(); } @@ -7420,11 +7649,13 @@ <h3>Your data</h3> state.leftText = ''; state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; document.getElementById('file-input-left').value = ''; } else { state.rightText = ''; state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; resetEditHistory(); document.getElementById('file-input-right').value = ''; } @@ -7797,6 +8028,11 @@ <h3>Your data</h3> return pairs; } +// "1 weitere Änderung" / "2 weitere Änderungen" (the number is written by the caller). +function moreDeltasText(n) { + return n === 1 ? t('moreDeltasOne') : t('moreDeltas'); +} + // Word diffs of a list item: the row's own, or (rejected change) recomputed from what was rejected. const ghostDiffCache = new WeakMap(); function getItemWordDiffs(item) { @@ -8008,7 +8244,7 @@ <h3>Your data</h3> const pageLabel = pages.length > 1 ? `${t('pageShort')} ${Math.min(...pages)}–${Math.max(...pages)}` : `${t('pageShort')} ${page}`; const head = item.members ? `${ref} · ${pageLabel}` : [ref, pageLabel].filter(Boolean).join(' · '); const delta = renderSidebarDeltaHtml(item); - const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(t('moreDeltas'))}</span></span>` : ''; + const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(moreDeltasText(delta.more))}</span></span>` : ''; return `<div class="nav-item ${cls} is-${item.status}${isActive ? ' is-active' : ''}" data-row-id="${item.rowId}" data-item-id="${item.id}"><button type="button" class="nav-item-main" tabindex="${item.id === focusId ? 0 : -1}"${isActive ? ' aria-current="true"' : ''}><span class="nav-item-head"><span class="nav-item-ref">${escapeHtml(head)}</span>${moreHtml}${statusIcon}<span class="sr-only">, ${escapeHtml(getChangeTypeLabel(item))}, ${escapeHtml(getStatusLabel(item.status))}. </span></span>${delta.html}</button></div>`; }) .join('') @@ -8022,7 +8258,7 @@ <h3>Your data</h3> // Replaced at build time by scripts/build.py with jsdiff + 04-core.js + 04a-align.js + // src/worker/compare-worker.js as a string literal. -const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n return metaLine(meta.join(';'), block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n if (!isHeaderFooter) {\n seenContentBlock = true;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }));\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; +const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n // A heading marker (\"## \") from the source stays, so a rewritten text keeps its structure.\n return metaLine(meta.join(';'), (block.headingMarker || '') + block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n let headingMarker = '';\n if (!isHeaderFooter) {\n seenContentBlock = true;\n const m = line.match(/^#{1,3}\\s+/);\n if (m) headingMarker = `${m[0].trim()} `;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n headingMarker,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergeFragmentedChanges(\n mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }))\n );\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\n/**\n * Joins changes that only an unchanged hyphen or space separates into one replacement, so a\n * rewritten phrase reads as one change instead of misleading word pairs:\n * \"[Standard]\u2192[Echtzeit]-[Berichtswesen]\u2192[Nachtragsmanagement]\" becomes\n * \"[Standard-Berichtswesen]\u2192[Echtzeit-Nachtragsmanagement]\". The joined glue goes into both\n * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of\n * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared\n * by both sides at the edges stays unchanged.\n */\nfunction mergeFragmentedChanges(parts) {\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n const glued = [];\n for (let i = 0; i \u003c parts.length; i++) {\n const cur = parts[i];\n const isGlue =\n !isChange(cur) &&\n isChange(glued[glued.length - 1]) &&\n isChange(parts[i + 1]) &&\n (/^\\s+$/.test(cur.value) || !/\\s/.test(cur.value));\n if (isGlue) {\n glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true });\n } else {\n glued.push(cur);\n }\n }\n\n const out = [];\n const pushEqual = value =\u003e {\n if (!value) return;\n const last = out[out.length - 1];\n if (last && !isChange(last)) last.value += value;\n else out.push({ value });\n };\n let i = 0;\n while (i \u003c glued.length) {\n if (!isChange(glued[i])) {\n pushEqual(glued[i].value);\n i++;\n continue;\n }\n let rem = '';\n let add = '';\n while (i \u003c glued.length && isChange(glued[i])) {\n if (glued[i].removed) rem += glued[i].value;\n else add += glued[i].value;\n i++;\n }\n let lead = '';\n let trail = '';\n if (rem && add) {\n const leadRem = rem.match(/^\\s*/)[0];\n const leadAdd = add.match(/^\\s*/)[0];\n while (lead.length \u003c Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) {\n lead += leadRem[lead.length];\n }\n rem = rem.slice(lead.length);\n add = add.slice(lead.length);\n const trailRem = rem.match(/\\s*$/)[0];\n const trailAdd = add.match(/\\s*$/)[0];\n let n = 0;\n while (\n n \u003c Math.min(trailRem.length, trailAdd.length) &&\n trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n]\n ) {\n n++;\n }\n trail = n ? rem.slice(rem.length - n) : '';\n rem = rem.slice(0, rem.length - n);\n add = add.slice(0, add.length - n);\n }\n pushEqual(lead);\n if (rem) out.push({ value: rem, removed: true });\n if (add) out.push({ value: add, added: true });\n pushEqual(trail);\n }\n return out;\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; // Small inputs are compared synchronously: alignment takes a few milliseconds and the result is // on screen in the same frame (no flash of the previous comparison, and synchronous callers such @@ -9766,6 +10002,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: template ? template.kind : 'p', + headingMarker: template ? template.headingMarker : '', indent: template ? template.indent : 0, isHeaderFooter: Boolean(target && target.rightBlock && target.rightBlock.isHeaderFooter), }) @@ -9827,6 +10064,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: row.rightBlock.kind, + headingMarker: row.rightBlock.headingMarker, indent: row.rightBlock.indent, isHeaderFooter: Boolean(row.rightBlock.isHeaderFooter), }) @@ -10300,32 +10538,34 @@ <h3>Your data</h3> return replaced.concat(tokens.slice(1)); } +function isHeaderFooterBlock(block) { + return Boolean(block && (block.isHeaderFooter || block.kind === 'hf')); +} + /** - * Builds the WordprocessingML body for the comparison. Pure function of `rows` and `meta` - * so it can be unit-tested without a browser. + * Builds the WordprocessingML body. Pure function of `rows` and `meta` so it can be unit-tested + * without a browser. + * meta.kind 'tracked' (default): open changes as tracked changes, accepted ones applied + * meta.kind 'final': the new version only, without any marks + * The body is the document text and nothing else: running headers and footers of the source + * (page furniture of a PDF) are left out, so "Accept all" in Word yields a clean document. + * meta.comment (lines of text) becomes a Word comment on the first paragraph. */ function buildDocxDocumentXml(rows, meta) { const date = toWordDate(meta.date); + const final = meta.kind === 'final'; let revId = 1; const revAttrs = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; const paragraphs = []; - const metaPara = (label, value) => - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/></w:pPr>${docxRun(`${label}: `, false, '<w:b/>')}${docxRun(value)}</w:p>`; - - paragraphs.push(`<w:p><w:pPr><w:pStyle w:val="Title"/></w:pPr>${docxRun(meta.title)}</w:p>`); - for (const [label, value] of meta.lines) paragraphs.push(metaPara(label, value)); - paragraphs.push( - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/><w:pBdr><w:bottom w:val="single" w:sz="6" w:space="6" w:color="A6A6A6"/></w:pBdr><w:spacing w:after="360"/></w:pPr>${docxRun(meta.note, false, '<w:i/>')}</w:p>` - ); - for (const row of rows) { const block = row.rightBlock || row.leftBlock; + if (isHeaderFooterBlock(block)) continue; const style = docxStyleForBlock(block); // Word semantics: a change accepted in Doc Diff is plain text (an accepted deletion is // simply gone); open changes become tracked changes. Rejected changes are already reverted - // in the rows (they compare as unchanged). - const accepted = row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'; + // in the rows (they compare as unchanged). The final version applies every change. + const accepted = final || (row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'); if (accepted && !row.rightBlock) continue; const tokens = docxApplyMarkerTab( accepted ? [{ value: cleanExportText(row.rightBlock.text) }] : getExportDiffTokens(row), @@ -10349,7 +10589,16 @@ <h3>Your data</h3> return docxRun(tok.value, false); }) .join(''); - paragraphs.push(`<w:p>${pPr}${runs}</w:p>`); + paragraphs.push({ pPr, runs }); + } + if (!paragraphs.length) paragraphs.push({ pPr: '', runs: '' }); + + if (meta.comment && meta.comment.length) { + const first = paragraphs[0]; + first.runs = + '<w:commentRangeStart w:id="0"/>' + + first.runs + + '<w:commentRangeEnd w:id="0"/><w:r><w:commentReference w:id="0"/></w:r>'; } const sectPr = @@ -10362,7 +10611,23 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - `<w:body>${paragraphs.join('')}${sectPr}</w:body></w:document>` + `<w:body>${paragraphs.map(p => `<w:p>${p.pPr}${p.runs}</w:p>`).join('')}${sectPr}</w:body></w:document>` + ); +} + +/** The Word comment with the summary of a comparison (one paragraph per line). */ +function buildDocxCommentsXml(meta) { + const date = toWordDate(meta.date); + const paras = meta.comment + .map((line, i) => + `<w:p>${i === 0 ? '<w:r><w:annotationRef/></w:r>' : ''}${docxRun(line, false, i === 0 ? '<w:b/>' : '')}</w:p>` + ) + .join(''); + return ( + '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + + '<w:comments xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' + + `<w:comment w:id="0" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}" w:initials="DD">${paras}</w:comment>` + + '</w:comments>' ); } @@ -10371,9 +10636,7 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:ftr xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:tabs><w:tab w:val="right" w:pos="9072"/></w:tabs></w:pPr>' + - docxRun(meta.footer) + - '<w:r><w:tab/></w:r>' + + '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:jc w:val="right"/></w:pPr>' + docxRun(`${meta.pageLabel} `) + '<w:fldSimple w:instr=" PAGE "><w:r><w:t>1</w:t></w:r></w:fldSimple>' + docxRun(` ${meta.pageOfLabel} `) + @@ -10417,7 +10680,8 @@ <h3>Your data</h3> function buildDocxPackageFiles(rows, meta) { const langTag = meta.lang === 'de' ? 'de-DE' : 'en-US'; const created = toWordDate(meta.date); - return [ + const hasComment = Boolean(meta.comment && meta.comment.length); + const files = [ { name: '[Content_Types].xml', data: @@ -10429,6 +10693,7 @@ <h3>Your data</h3> '<Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>' + '<Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/>' + '<Override PartName="/word/footer1.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml"/>' + + (hasComment ? '<Override PartName="/word/comments.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml"/>' : '') + '<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>' + '<Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>' + '</Types>', @@ -10452,6 +10717,7 @@ <h3>Your data</h3> 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' + `<dc:title>${escapeXml(meta.title)}</dc:title>` + `<dc:subject>${escapeXml(meta.subject)}</dc:subject>` + + (meta.description ? `<dc:description>${escapeXml(meta.description)}</dc:description>` : '') + `<dc:creator>${DOCX_AUTHOR}</dc:creator>` + `<cp:lastModifiedBy>${DOCX_AUTHOR}</cp:lastModifiedBy>` + `<dc:language>${langTag}</dc:language>` + @@ -10474,6 +10740,7 @@ <h3>Your data</h3> '<Relationship Id="rIdStyles" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>' + '<Relationship Id="rIdSettings" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>' + '<Relationship Id="rIdFooter1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>' + + (hasComment ? '<Relationship Id="rIdComments" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" Target="comments.xml"/>' : '') + '</Relationships>', }, { name: 'word/document.xml', data: buildDocxDocumentXml(rows, meta) }, @@ -10489,37 +10756,66 @@ <h3>Your data</h3> }, { name: 'word/footer1.xml', data: buildDocxFooterXml(meta) }, ]; + if (hasComment) files.push({ name: 'word/comments.xml', data: buildDocxCommentsXml(meta) }); + return files; } -/** Builds the complete .docx file (Uint8Array) for the current comparison state. */ -function buildDocxRedline(date = new Date()) { - const counts = getExportCounts(); +/** + * Summary of the comparison for the Word comment of the tracked export: the documents, the + * counts, the review status, how to work with the marks, and the header/footer changes (they + * are not in the body text). + */ +function buildDocxSummaryLines(date) { + const items = getExportItems(); + const counts = getExportCounts(items); const lines = [ - [t('exportLabelOriginal'), getDisplayDocName('left')], - [t('exportLabelRevised'), getDisplayDocName('right')], - [t('exportLabelCreated'), formatExportDate(date)], - [t('exportLabelChanges'), formatExportCountsLine(counts)], + getExportTitle(), + `${t('exportLabelCreated')}: ${formatExportDate(date)}`, + `${t('exportLabelChanges')}: ${formatExportCountsLine(counts)}`, ]; - const review = getExportReviewLine(); - if (review) lines.push([t('exportLabelReview'), review]); - lines.push([t('exportLabelHf'), state.ignoreHeadersFooters ? t('exportHfIgnored') : t('exportHfIncluded')]); + const review = getExportReviewLine(counts); + if (review) lines.push(`${t('exportLabelReview')}: ${review}`); + lines.push(t('docxNote')); + const hf = items.filter(item => isHeaderFooterItem(item) && item.status !== 'rejected'); + if (hf.length) { + lines.push(t('docxHfHeading')); + for (const item of hf) { + const { pairs } = getRowChangeSummary(item, 80); + const change = pairs.map(p => (p.del && p.ins ? `${p.del} → ${p.ins}` : p.ins || p.del)).join('; '); + lines.push(`${getExportItemRef(item)} (${getExportItemPageLabel(item)}, ${getExportStatusLabel(item.status)}): ${change}`); + } + } + return lines; +} + +/** + * The newly typeset Word file (Uint8Array) for the current comparison state: + * 'tracked' – "Accept all" in Word yields the new version (with the rejections applied), + * "Reject all" the old version with the accepted changes applied + * 'final' – the new version with every decision and edit applied, no marks + */ +function buildGeneratedDocx(kind, date = new Date()) { + const counts = getExportCounts(); const meta = { + kind, lang: state.lang, date, - title: getExportTitle(), - subject: t('docxSubject'), - lines, + title: kind === 'final' ? getDisplayDocName('right') : getExportTitle(), + subject: t(kind === 'final' ? 'docxSubjectFinal' : 'docxSubject'), + description: kind === 'final' ? '' : formatExportCountsLine(counts), reviewStatusOf: row => row.reviewStatus || '', - note: t('docxNote'), - footer: `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`, + comment: kind === 'final' ? null : buildDocxSummaryLines(date), pageLabel: t('pageLabel'), pageOfLabel: t('pageOf'), }; - // The document is always complete: "Accept all" in Word yields the new version (with the - // rejections applied), "Reject all" the old version with the accepted changes applied. return buildZipArchive(buildDocxPackageFiles(state.alignedRows, meta), date); } +// Kept for callers and tests written against the earlier name. +function buildDocxRedline(date = new Date()) { + return buildGeneratedDocx('tracked', date); +} + /* ── Client-Side Multi-Format Export Engine (copy, .txt, .docx, print/PDF, HTML, Markdown) ── */ function downloadBlob(content, mimeType, filename) { @@ -10602,23 +10898,17 @@ <h3>Your data</h3> } /** - * The changes of the comparison with their review status, in document order: the list items - * (including rejected changes) when the review index is current, otherwise the change rows. + * The changes of the comparison with their review status, exactly as the change list shows them + * (same order, same count: an identical header/footer change on several pages is one change), + * including rejected changes. Falls back to the change rows while the review index is not current. */ function getExportItems() { if ( Array.isArray(state.listItems) && state.listItems.length && - state.listItems.every(i => state.alignedRows.includes(i.row)) + state.listItems.every(i => itemMembers(i).every(m => state.alignedRows.includes(m.row))) ) { - // Exports follow the document: every occurrence of a merged header/footer change, in - // document order (the list shows those after the body changes). - const pos = new Map(state.alignedRows.map((r, i) => [r.id, i])); - return state.listItems - .flatMap(item => (item.members ? item.members : [item])) - .map(item => ({ ...item, members: undefined })) - .sort((a, b) => pos.get(a.rowId) - pos.get(b.rowId) || (a.sub || 0) - (b.sub || 0)) - .map((item, i) => ({ ...item, index: i + 1 })); + return state.listItems.map((item, i) => ({ ...item, index: i + 1 })); } return state.changeRows.map((row, i) => ({ id: row.id, @@ -10655,13 +10945,24 @@ <h3>Your data</h3> return status === 'accepted' ? t('statusAccepted') : status === 'rejected' ? t('statusRejected') : t('statusOpen'); } +/** Reference as the change list shows it ("§ 1 (2)", "Kopf-/Fußzeile – auf 3 Seiten …"). */ function getExportItemRef(item) { - if (item.ghost) return item.ghost.refCode || ''; - return getRowRefCode(item.row); + return getItemRef(item); +} + +/** "S. 2" or, for a change on several pages, "S. 1–3". */ +function getExportItemPages(item) { + const pages = itemMembers(item).map(m => getItemPage(m)); + const min = Math.min(...pages); + const max = Math.max(...pages); + return min === max ? String(min) : `${min}–${max}`; +} +function getExportItemPageLabel(item) { + return `${t('pageShort')} ${getExportItemPages(item)}`; } function formatExportCountsLine(c) { - return tf('exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); + return tf(c.total === 1 ? 'exportCountsFmtOne' : 'exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); } function formatExportDate(date) { @@ -10695,7 +10996,7 @@ <h3>Your data</h3> if (row.type === 'equal') { return row.ghostNote ? `${t('statusRejected')} · ${t('exportRejectedNote')}` : ''; } - const parts = [getRowTypeLabel(row), getRowRefCode(row)].filter(Boolean); + const parts = [getRowTypeLabel(row), getDisplayRef(row)].filter(Boolean); if (row.reviewStatus === 'accepted') parts.push(t('statusAccepted')); return parts.join(' · '); } @@ -10809,11 +11110,7 @@ <h3>Your data</h3> * furniture and are always left out, whether or not the header/footer filter is active. */ function buildFinalText() { - const blocks = state.alignedRows.length - ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) - : parseIntoBlocks(state.rightText || ''); - return blocks - .filter(b => !b.isHeaderFooter && !isInternalMarkerLine(b.text)) + return getFinalBlocks() .map(b => cleanExportText(b.text).trim()) .filter(Boolean) .join('\n\n'); @@ -10845,7 +11142,7 @@ <h3>Your data</h3> if (p.ins) return renderReportTokensHtml([{ value: p.ins, added: true }]); return renderReportTokensHtml([{ value: p.del, removed: true }]); }); - if (more) items.push(`<span class="more">+${more} ${escapeHtml(t('moreDeltas'))}</span>`); + if (more) items.push(`<span class="more">+${more} ${escapeHtml(moreDeltasText(more))}</span>`); return items.map(html => `<div>${html}</div>`).join(''); } @@ -10914,13 +11211,22 @@ <h3>Your data</h3> const items = getExportItems(); const counts = getExportCounts(items); const title = getExportTitle(); - // Anchors: every changed row, and the row a rejected change was restored to. + // Anchors: every changed row (all pages of a merged header/footer change), and the row a + // rejected change was restored to. The first row of a change carries its id. const anchorIndex = new Map(); items.forEach((item, i) => { - if (item.ghost && item.type === 'inserted') return; - if (!anchorIndex.has(item.rowId)) anchorIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) { + if (m.ghost && m.type === 'inserted') continue; + if (!anchorIndex.has(m.rowId)) anchorIndex.set(m.rowId, i + 1); + } }); - const anchorFor = row => `c${anchorIndex.get(row.id)}`; + const anchorUsed = new Set(); + const anchorFor = row => { + const n = anchorIndex.get(row.id); + if (!n || anchorUsed.has(n)) return ''; + anchorUsed.add(n); + return ` id="c${n}"`; + }; const reviewLine = getExportReviewLine(counts); const changeListHtml = items.length @@ -10932,10 +11238,9 @@ <h3>Your data</h3> .map((item, i) => { const n = i + 1; const ref = getExportItemRef(item) || `#${n}`; - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; - const target = item.ghost && item.type === 'inserted' ? 0 : anchorIndex.get(item.rowId); + const target = itemMembers(item).some(m => anchorIndex.get(m.rowId) === n) ? n : 0; const refHtml = target ? `<a href="#c${target}">${escapeHtml(ref)}</a>` : escapeHtml(ref); - return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(t('pageShort'))} ${page}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; + return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(getExportItemPageLabel(item))}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; }) .join('\n')} </tbody> @@ -10951,7 +11256,7 @@ <h3>Your data</h3> const inner = renderReportTokensHtml(getExportDiffTokens(row)); const tag = kind === 'h1' ? 'h3' : kind === 'h2' ? 'h4' : kind === 'h3' ? 'h5' : 'p'; const tagText = getRowReportTag(row); - const idAttr = anchorIndex.has(row.id) ? ` id="${anchorFor(row)}"` : ''; + const idAttr = anchorFor(row); const tagHtml = tagText ? `<span class="row-tag"><a href="#changes">${escapeHtml(tagText)}</a></span>` : ''; return `<div class="row ${row.type} kind-${kind}"${idAttr}>${tagHtml}<${tag}>${inner}</${tag}></div>`; }) @@ -11092,7 +11397,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> const counts = getExportCounts(items); const changeIndex = new Map(); items.forEach((item, i) => { - if (!item.ghost && !changeIndex.has(item.rowId)) changeIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) if (!m.ghost && !changeIndex.has(m.rowId)) changeIndex.set(m.rowId, i + 1); }); const reviewLine = getExportReviewLine(counts); const lines = [ @@ -11126,11 +11431,10 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (p.ins) return renderMarkdownTokens([{ value: p.ins, added: true }]); return renderMarkdownTokens([{ value: p.del, removed: true }]); }) - .concat(more ? [`+${more} ${escapeMarkdownInline(t('moreDeltas'))}`] : []) + .concat(more ? [`+${more} ${escapeMarkdownInline(moreDeltasText(more))}`] : []) .join('<br>'); - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; lines.push( - `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${page} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` + `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${getExportItemPages(item)} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` ); } } else { @@ -11176,11 +11480,16 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `<td class="pv-cell kind-${kind}">${html}</td>`; } -/** Builds a print-only, paginated rendering of the comparison for the current view mode. */ -function buildPrintViewHtml(date = new Date()) { +/** + * Builds a print-only, paginated rendering. kind: 'split' (old and new side by side, landscape), + * 'inline' (one column with the marks in the text, portrait) or 'final' (the new version with + * every decision applied, as a clean document). + */ +function buildPrintViewHtml(date = new Date(), kind = state.viewMode) { + if (kind === 'final') return buildFinalPrintHtml(); const rows = getExportBodyRows(); const counts = getExportCounts(); - const mode = state.viewMode; + const mode = kind === 'inline' ? 'inline' : 'split'; const head = ` <header class="pv-head"> <div class="pv-title">${escapeHtml(getExportTitle())}</div> @@ -11260,9 +11569,44 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `${head}<main class="pv-body pv-mode-${mode}">${body}${emptyHtml}</main>`; } +/** The new version as a clean document: every decision and edit applied, no marks. */ +function buildFinalPrintHtml() { + const blocks = getFinalBlocks(); + const html = blocks + .map(block => { + const text = cleanExportText(block.text).trim(); + if (!text) return ''; + const kind = block.kind || 'p'; + if (kind === 'h1' || kind === 'h2' || kind === 'h3') { + const tag = kind === 'h1' ? 'h1' : kind === 'h2' ? 'h2' : 'h3'; + return `<${tag} class="pvf-${kind}">${escapeHtml(text)}</${tag}>`; + } + const indent = block.indent > 0 ? ` style="margin-left:${Math.min(block.indent, 6) * 1.6}em"` : ''; + const split = extractListMarker(text, kind); + if (split) { + return `<p class="pvf-item pvf-${kind}"${indent}><span class="pvf-marker">${escapeHtml(split.marker)}</span><span class="pvf-body">${escapeHtml(split.body)}</span></p>`; + } + return `<p class="pvf-p"${indent}>${escapeHtml(text)}</p>`; + }) + .join(''); + return `<main class="pv-final" lang="${state.lang === 'de' ? 'de' : 'en'}">${html}</main>`; +} + +/** Blocks of the new version as it stands now, without running headers and footers. */ +function getFinalBlocks() { + const blocks = state.alignedRows.length + ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) + : parseIntoBlocks(state.rightText || ''); + return blocks.filter(b => !b.isHeaderFooter && b.kind !== 'hf' && !isInternalMarkerLine(b.text)); +} + +// The print view requested from the export menu; Ctrl/Cmd+P prints the current view. +let requestedPrintKind = null; + function preparePrintView() { if (typeof ensureComparisonCurrent === 'function') ensureComparisonCurrent(); if (!state.alignedRows.length) return; + const kind = requestedPrintKind || (state.viewMode === 'inline' ? 'inline' : 'split'); const date = new Date(); let view = document.getElementById('print-view'); if (!view) { @@ -11272,7 +11616,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> view.setAttribute('aria-hidden', 'true'); document.body.appendChild(view); } - setSafeContainerHtml(view, buildPrintViewHtml(date)); + setSafeContainerHtml(view, buildPrintViewHtml(date, kind)); let pageStyle = document.getElementById('print-page-style'); if (!pageStyle) { @@ -11280,15 +11624,18 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> pageStyle.id = 'print-page-style'; document.head.appendChild(pageStyle); } - const footerLeft = `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; - const orientation = state.viewMode === 'inline' ? 'portrait' : 'landscape'; - pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: 14mm 12mm 16mm; + const footerLeft = + kind === 'final' ? getDisplayDocName('right') : `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; + const orientation = kind === 'split' ? 'landscape' : 'portrait'; + const margin = kind === 'final' ? '22mm 20mm 20mm 24mm' : '14mm 12mm 16mm'; + pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: ${margin}; @bottom-left { content: ${cssString(footerLeft)}; font: 7.5pt sans-serif; color: #444; } @bottom-right { content: ${cssString(`${t('pageLabel')} `)} counter(page) ${cssString(` ${t('pageOf')} `)} counter(pages); font: 7.5pt sans-serif; color: #444; } } }`; document.body.classList.add('has-print-view'); } function cleanupPrintView() { + requestedPrintKind = null; document.body.classList.remove('has-print-view'); const view = document.getElementById('print-view'); if (view) view.remove(); @@ -11344,6 +11691,55 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (typeof showToast === 'function') showToast(tf(toastKey, { name: filename })); } +/** "Vertrag_v2_Endfassung.docx": named after the new version, which it is. */ +function buildFinalFileName(ext) { + const base = sanitizeFileNamePart(state.rightName, 'DocDiff', 100); + return `${base}_${sanitizeFileNamePart(t('exportFileFinal'), 'Final')}.${ext}`; +} + +/** The .docx the new version was read from, if it is still the loaded new version. */ +function getRightDocxSource() { + const src = state.docSources && state.docSources.right; + if (!src || state.rightFormat !== 'DOCX' || src.name !== state.rightName || !src.bytes) return null; + return src; +} + +const DOCX_MIME = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; + +/** + * Word export. With a .docx as the new version, the file itself is the base (original format); + * if that cannot be done reliably, the newly typeset document is used and the user is told. + */ +async function exportWord(kind) { + const date = new Date(); + const source = getRightDocxSource(); + let bytes = null; + let fellBack = false; + if (source) { + try { + bytes = await buildDocxFromSource(source, parseIntoBlocks(state.rightText), state.alignedRows, kind, date); + } catch (err) { + fellBack = true; + if (typeof console !== 'undefined') console.warn('Doc Diff: original-format Word export not possible:', err && err.message); + } + } + if (!bytes) bytes = buildGeneratedDocx(kind, date); + const filename = kind === 'final' ? buildFinalFileName('docx') : buildExportFileName('exportFileRedline', 'docx'); + downloadBlob(bytes, DOCX_MIME, filename); + if (fellBack && typeof showImportNotice === 'function') { + showImportNotice(tf('noticeWordFallback', { name: filename }), 'warning'); + } else if (typeof showToast === 'function') { + showToast(tf(source ? 'toastWordOriginal' : 'toastWord', { name: filename })); + } +} + +function startPrint(kind) { + if (!state.alignedRows.length) return; + requestedPrintKind = kind; + preparePrintView(); + window.print(); +} + function handleExportAction(type) { // Commit an inline edit that is still open so the export reflects it. const openEditor = document.querySelector('.clause-inline-editor'); @@ -11352,28 +11748,19 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> // the current text, not the rows from before. ensureComparisonCurrent(); - if (type === 'print') { - if (!state.alignedRows.length) return; - preparePrintView(); - window.print(); - return; - } - // Exports need a finished comparison. The menu is disabled until then; never substitute // sample content for (or overwrite) a document the user has loaded. if (!state.alignedRows.length) return; - if (type === 'copy') { + if (type === 'print' || type === 'print-split' || type === 'print-inline' || type === 'print-final') { + const kind = type === 'print' ? (state.viewMode === 'inline' ? 'inline' : 'split') : type.slice(6); + startPrint(kind); + } else if (type === 'copy') { copyFinalTextToClipboard(); } else if (type === 'txt') { - downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildExportFileName('exportFileFinal', 'txt'), 'toastTxt'); - } else if (type === 'word') { - downloadWithToast( - buildDocxRedline(), - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - buildExportFileName('exportFileRedline', 'docx'), - 'toastWord' - ); + downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildFinalFileName('txt'), 'toastTxt'); + } else if (type === 'word' || type === 'word-final') { + exportWord(type === 'word' ? 'tracked' : 'final'); } else if (type === 'html') { downloadWithToast(buildExportHtmlReport(), 'text/html;charset=utf-8', buildExportFileName('exportFileReport', 'html'), 'toastHtml'); } else if (type === 'md') { @@ -11381,6 +11768,25 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } } +/** + * The descriptions in the export menu that depend on the documents: whether the Word file keeps + * the original format, and that open changes are part of the final version. + */ +function updateExportMenuTexts() { + const set = (id, text) => { + const el = document.getElementById(id); + if (el) el.textContent = text; + }; + const source = getRightDocxSource(); + set('exp-desc-word-final', source ? tf('expWordFinalDescOriginal', { name: source.name }) : t('expWordFinalDescNew')); + set('exp-desc-word', source ? tf('expWordDescOriginal', { name: source.name }) : t('expWordDesc')); + const open = state.listItems.filter(item => item.status === 'open').length; + set( + 'exp-sec-final-desc', + open === 0 ? t('expSecFinalDesc') : open === 1 ? t('expSecFinalOpenOne') : tf('expSecFinalOpen', { n: open }) + ); +} + /* ── Export availability ─────────────────────────────────────────────────── */ /** Really disables the export triggers (not just visually) while no comparison is available. */ @@ -11403,6 +11809,922 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +/* ── Word export in the original format ──────────────────────────────────────────────────── + * When the new version was loaded from a .docx, the Word exports start from that very file + * instead of a newly typeset document. Every paragraph whose text is unchanged is copied byte + * for byte, so styles, numbering, tables, images, headers, footers and the page layout stay as + * they were. Only paragraphs whose text differs are rewritten, run by run: words that stay keep + * their character formatting, new words take the formatting of their neighbours. + * + * Two kinds: + * 'final' – the new version with every review decision and edit applied, no marks + * 'tracked' – the same, plus every open change as a Word tracked change (old → new) + * + * The result is read back and compared with the expected text before it is offered. If + * anything does not match (an unusual document structure, a change inside a text box), the + * caller falls back to the newly typeset document. Pure string processing, no DOM, so it can be + * unit-tested in Node. + */ + +/* ── ZIP reading (all entries, as bytes) ─────────────────────────────────── */ + +async function inflateRaw(bytes) { + const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream('deflate-raw')); + return new Uint8Array(await new Response(stream).arrayBuffer()); +} + +/** Reads every entry of a ZIP archive: [{ name, data: Uint8Array }] in archive order. */ +async function readZipEntries(input) { + const bytes = input instanceof Uint8Array ? input : new Uint8Array(input); + const dv = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength); + let eocd = -1; + for (let i = bytes.length - 22; i >= Math.max(0, bytes.length - 65557); i--) { + if (dv.getUint32(i, true) === 0x06054b50) { + eocd = i; + break; + } + } + if (eocd < 0) throw new Error('zip: no central directory'); + const count = dv.getUint16(eocd + 10, true); + let p = dv.getUint32(eocd + 16, true); + const utf8 = new TextDecoder('utf-8'); + const out = []; + for (let n = 0; n < count; n++) { + if (dv.getUint32(p, true) !== 0x02014b50) throw new Error('zip: bad central directory'); + const method = dv.getUint16(p + 10, true); + const compSize = dv.getUint32(p + 20, true); + const nameLen = dv.getUint16(p + 28, true); + const extraLen = dv.getUint16(p + 30, true); + const commentLen = dv.getUint16(p + 32, true); + const localOffset = dv.getUint32(p + 42, true); + const name = utf8.decode(bytes.subarray(p + 46, p + 46 + nameLen)); + p += 46 + nameLen + extraLen + commentLen; + const dataStart = localOffset + 30 + dv.getUint16(localOffset + 26, true) + dv.getUint16(localOffset + 28, true); + const raw = bytes.subarray(dataStart, dataStart + compSize); + let data; + if (method === 0) data = raw.slice(); + else if (method === 8) data = await inflateRaw(raw); + else throw new Error(`zip: unsupported method ${method}`); + out.push({ name, data }); + } + return out; +} + +/* ── A minimal XML reader that keeps source offsets ───────────────────────── + * Elements: { name, start, openEnd, closeStart, end, selfClosing, children }; text between + * elements is not needed (Word keeps text inside w:t, read from the source slice). Offsets let + * untouched parts be copied verbatim. + */ +function parseXmlTree(xml) { + const root = { name: '#root', start: 0, openEnd: 0, closeStart: xml.length, end: xml.length, children: [] }; + const stack = [root]; + let i = 0; + const n = xml.length; + while (i < n) { + const lt = xml.indexOf('<', i); + if (lt < 0) break; + if (xml.startsWith('<!--', lt)) { + const e = xml.indexOf('-->', lt + 4); + if (e < 0) throw new Error('xml: unterminated comment'); + i = e + 3; + continue; + } + if (xml.startsWith('<![CDATA[', lt)) { + const e = xml.indexOf(']]>', lt + 9); + if (e < 0) throw new Error('xml: unterminated CDATA'); + i = e + 3; + continue; + } + if (xml.startsWith('<?', lt) || xml.startsWith('<!', lt)) { + const e = xml.indexOf('>', lt + 2); + if (e < 0) throw new Error('xml: unterminated declaration'); + i = e + 1; + continue; + } + // Find the end of the tag, honouring quoted attribute values (they may contain '>'). + let j = lt + 1; + let quote = ''; + while (j < n) { + const c = xml[j]; + if (quote) { + if (c === quote) quote = ''; + } else if (c === '"' || c === "'") { + quote = c; + } else if (c === '>') { + break; + } + j++; + } + if (j >= n) throw new Error('xml: unterminated tag'); + const tagEnd = j + 1; + if (xml[lt + 1] === '/') { + const name = xml.slice(lt + 2, j).trim(); + const node = stack.pop(); + if (!node || node.name !== name) throw new Error(`xml: mismatched </${name}>`); + node.closeStart = lt; + node.end = tagEnd; + } else { + const m = /^[^\s/>]+/.exec(xml.slice(lt + 1, j)); + if (!m) throw new Error('xml: bad tag'); + const selfClosing = xml[j - 1] === '/'; + const node = { name: m[0], start: lt, openEnd: tagEnd, closeStart: tagEnd, end: tagEnd, selfClosing, children: [] }; + stack[stack.length - 1].children.push(node); + if (!selfClosing) stack.push(node); + } + i = tagEnd; + } + if (stack.length !== 1) throw new Error('xml: unclosed element'); + return root; +} + +function xmlLocalName(node) { + const k = node.name.indexOf(':'); + return k < 0 ? node.name : node.name.slice(k + 1); +} + +function decodeXmlText(s) { + return s.replace(/&(#x[0-9a-fA-F]+|#\d+|lt|gt|amp|quot|apos);/g, (m, e) => { + if (e === 'lt') return '<'; + if (e === 'gt') return '>'; + if (e === 'amp') return '&'; + if (e === 'quot') return '"'; + if (e === 'apos') return "'"; + const code = e[1] === 'x' ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10); + try { + return String.fromCodePoint(code); + } catch (err) { + return ''; + } + }); +} + +/* ── Paragraph content as "pieces" ───────────────────────────────────────── + * A paragraph is flattened into pieces in reading order: + * atom – one character of text (or a tab / line break / non-breaking hyphen element) with + * the run properties and the wrappers (hyperlink, content control, …) it sits in + * opaque – anything without text (bookmarks, images, field characters, comments, …); kept + * in place, never dropped + * `cmp` is the comparable text of a piece (whitespace as one space, soft hyphens as nothing). + */ + +const DOCX_WRAPPERS = new Set(['hyperlink', 'smartTag', 'customXml', 'fldSimple', 'dir', 'bdo']); +const DOCX_TEXT_LIKE = { tab: ' ', ptab: ' ', br: ' ', cr: ' ', noBreakHyphen: '-', softHyphen: '' }; + +function docxCmpChar(ch) { + if (/^\s$/u.test(ch) || /[  -    ]/.test(ch)) return ' '; + if (/[­​⁠]/.test(ch)) return ''; + if (typeof LATIN_LIGATURES !== 'undefined' && LATIN_LIGATURES[ch]) return LATIN_LIGATURES[ch]; + return ch; +} + +function flattenParagraph(p, xml, ctx) { + const pieces = []; + let pPr = ''; + const chainIds = new Map(); + const chainFor = (parent, wrapper) => { + const ids = parent.map(w => w.id).concat(wrapper.id); + const key = ids.join('/'); + if (!chainIds.has(key)) chainIds.set(key, parent.concat(wrapper)); + return chainIds.get(key); + }; + const outer = node => xml.slice(node.start, node.end); + + const handleRun = (r, chain) => { + const rPrNode = r.children.find(c => xmlLocalName(c) === 'rPr'); + const rPr = rPrNode ? outer(rPrNode) : ''; + for (const c of r.children) { + const name = xmlLocalName(c); + if (name === 'rPr') continue; + if (name === 't') { + const text = c.selfClosing ? '' : decodeXmlText(xml.slice(c.openEnd, c.closeStart)); + for (const ch of text) pieces.push({ type: 'atom', ch, rPr, chain, cmp: docxCmpChar(ch) }); + } else if (name in DOCX_TEXT_LIKE) { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: DOCX_TEXT_LIKE[name] }); + } else if (name === 'footnoteReference' || name === 'endnoteReference') { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: ctx.noteLabels.get(c.start) || '' }); + } else { + // Field characters, field codes, drawings, comment references, …: kept as they are. + pieces.push({ type: 'opaque', runChild: outer(c), rPr, chain, cmp: '' }); + } + } + }; + + const walk = (node, chain) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (node === p && name === 'pPr') { + pPr = outer(c); + continue; + } + if (name === 'r') handleRun(c, chain); + else if (DOCX_WRAPPERS.has(name) && !c.selfClosing) { + walk(c, chainFor(chain, { id: `w${c.start}`, open: xml.slice(c.start, c.openEnd), close: xml.slice(c.closeStart, c.end) })); + } else if (name === 'sdt') { + const content = c.children.find(x => xmlLocalName(x) === 'sdtContent'); + if (!content || content.selfClosing) pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + else walk(content, chainFor(chain, { id: `s${c.start}`, open: xml.slice(c.start, content.openEnd), close: xml.slice(content.closeStart, c.end) })); + } else if ((name === 'ins' || name === 'moveTo') && !c.selfClosing) { + // Text inserted by an earlier tracked change counts as text (as when it is read in). + walk(c, chain); + } else { + pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + } + } + }; + walk(p, []); + + // One comparable space per whitespace run; none at the edges. + let prevWs = true; + for (const piece of pieces) { + if (!piece.cmp) continue; + if (piece.cmp === ' ') { + if (prevWs) piece.cmp = ''; + prevWs = true; + } else { + prevWs = false; + } + } + for (let k = pieces.length - 1; k >= 0; k--) { + if (!pieces[k].cmp) continue; + if (pieces[k].cmp === ' ') pieces[k].cmp = ''; + else break; + } + return { pPr, pieces, text: pieces.map(x => x.cmp).join('') }; +} + +/* ── Units: what the reader turned into one block ─────────────────────────── + * A paragraph outside tables is one unit; a table row is one unit (its cells joined with + * " · ", as when the file is read in). Paragraphs nested in text boxes and rows of nested tables + * are "locked": they are matched, but never rewritten. + */ +function collectDocxUnits(xml, tree) { + const noteLabels = new Map(); + let fn = 0; + let en = 0; + const noteRe = /<([A-Za-z0-9_]+:)?(footnoteReference|endnoteReference)\b/g; + let m; + while ((m = noteRe.exec(xml))) { + noteLabels.set(m.index, `[${m[2] === 'footnoteReference' ? ++fn : ++en}]`); + } + const ctx = { noteLabels }; + const units = []; + const paraText = p => flattenParagraph(p, xml, ctx).text; + + const cellParas = (node, out, state) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'p') out.push(c); + else if (name === 'tbl') state.nested = true; + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') cellParas(c, out, state); + } + return out; + }; + + const walk = (node, locked) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'AlternateContent') { + const fallback = c.children.find(x => xmlLocalName(x) === 'Fallback'); + if (fallback) walk(fallback, true); + continue; + } + if (name === 'p') { + units.push({ kind: 'p', node: c, locked, text: paraText(c) }); + walk(c, true); + continue; + } + if (name === 'tbl') { + walkTable(c, locked); + continue; + } + walk(c, locked); + } + }; + + const walkTable = (tbl, locked) => { + const rows = []; + const collectRows = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tr') rows.push(c); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectRows(c); + } + }; + collectRows(tbl); + const tableInfo = { node: tbl, rows: rows.length }; + for (const tr of rows) { + const cells = []; + const state = { nested: false }; + const collectCells = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tc') cells.push({ node: c, paras: cellParas(c, [], state) }); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectCells(c); + } + }; + collectCells(tr); + for (const cell of cells) { + cell.texts = cell.paras.map(paraText); + // As read in: the paragraphs of a cell run together. + cell.text = cell.texts.join(''); + } + units.push({ + kind: 'row', + node: tr, + table: tableInfo, + cells, + locked: locked || state.nested, + text: cells.map(c => c.text).filter(Boolean).join(' · '), + }); + // Nested tables and text boxes inside the cells (read in after their row). + for (const cell of cells) { + for (const c of cell.node.children) { + if (xmlLocalName(c) === 'tbl') walkTable(c, true); + } + for (const p of cell.paras) walk(p, true); + } + } + }; + + const body = (function find(node) { + for (const c of node.children) { + if (xmlLocalName(c) === 'body') return c; + const r = find(c); + if (r) return r; + } + return null; + })(tree); + if (!body) throw new Error('docx: no body'); + walk(body, false); + return { units, ctx }; +} + +/* ── Matching blocks to units ───────────────────────────────────────────── */ + +function docxKey(text) { + return normalizeComparableText(sanitizeExternalText(String(text || ''))) + .replace(/\s+/g, ' ') + .trim(); +} + +/** + * How a block's text relates to a unit's text: { prefix } when it is the same text, possibly + * after a generated list number or heading number ("(1) ", "§ 1 ") that the file does not + * contain as text; null otherwise. + */ +function docxMatchBlock(blockKey, unitText) { + if (!unitText) return null; + if (blockKey === unitText) return { prefix: 0 }; + if (blockKey.length > unitText.length && blockKey.endsWith(unitText)) { + const prefix = blockKey.slice(0, blockKey.length - unitText.length); + if (prefix.length <= 24 && / $/.test(prefix)) return { prefix: prefix.length }; + } + return null; +} + +/** Pairs blocks (in order) with non-empty units (in order). Returns Map(blockIndex -> { unit, prefix }). */ +function mapBlocksToUnits(blocks, units) { + const LOOK = 40; + const keys = blocks.map(b => docxKey(b.text)); + const list = units.filter(u => u.text); + const out = new Map(); + let i = 0; + let j = 0; + while (i < keys.length && j < list.length) { + const hit = docxMatchBlock(keys[i], list[j].text); + if (hit) { + out.set(i, { unit: list[j], prefix: hit.prefix }); + i++; + j++; + continue; + } + let step = null; + for (let d = 1; d <= LOOK && !step; d++) { + if (j + d < list.length && docxMatchBlock(keys[i], list[j + d].text)) step = { di: 0, dj: d }; + else if (i + d < keys.length && docxMatchBlock(keys[i + d], list[j].text)) step = { di: d, dj: 0 }; + } + if (step) { + i += step.di; + j += step.dj; + } else { + i++; + j++; + } + } + return out; +} + +/* ── Rewriting one paragraph ────────────────────────────────────────────── */ + +/** + * The target text of a paragraph as characters with revision flags: + * { chars: [{ ch, added, dels: [deleted text before this char] }], tail: [deleted text at the end] }. + * `prefix` characters of the new wording (a generated list number) are dropped. + */ +function docxTargetFromTokens(tokens, prefix) { + let chars = []; + let pending = []; + for (const tok of tokens) { + if (tok.removed) { + if (tok.value) pending.push(tok.value); + continue; + } + for (const ch of tok.value) { + chars.push({ ch, added: Boolean(tok.added), dels: pending }); + pending = []; + } + } + let tail = pending; + if (prefix) { + // The generated number is not text in the file: drop it with whatever was deleted before it. + const rest = chars.slice(prefix); + chars = rest; + } + // Whitespace as in the file's reading: one space between words, none at the edges. + const out = []; + let carry = []; + for (const c of chars) { + const ws = /\s/.test(c.ch); + const dels = carry.concat(c.dels); + carry = []; + if (ws && (!out.length || /\s/.test(out[out.length - 1].ch))) { + carry = dels; + continue; + } + out.push({ ch: ws ? ' ' : c.ch, added: c.added, dels }); + } + while (out.length && out[out.length - 1].ch === ' ') { + const last = out.pop(); + carry = last.dels.concat(carry); + } + tail = carry.concat(tail); + return { chars: out, tail }; +} + +function docxStripHyperlinkStyle(rPr) { + return rPr.replace(/<w:rStyle\b[^>]*\/>/g, '').replace(/<w:rPr>\s*<\/w:rPr>/, ''); +} + +/** + * Returns the new XML of paragraph `p` whose text becomes the target described by `tokens` + * (diff tokens of the new wording, see getExportDiffTokens). `rev(kind)` returns the attributes + * of a new revision. `markPara` ('ins' | 'del' | '') marks the paragraph mark as inserted/deleted. + */ +function rewriteDocxParagraph(p, xml, ctx, tokens, prefix, rev, markPara = '', defaultRPr = '') { + const { pPr, pieces } = flattenParagraph(p, xml, ctx); + const target = docxTargetFromTokens(tokens, prefix); + const tText = target.chars.map(c => c.ch).join(''); + + // Comparable text of the file with a map back to the pieces. + let xText = ''; + const xPiece = []; + pieces.forEach((piece, idx) => { + for (const ch of piece.cmp) { + xText += ch; + xPiece.push(idx); + } + }); + + const diffLib = getDiffLibrary(); + let parts; + if (xText === tText) parts = [{ value: xText }]; + else if (diffLib && xText.length + tText.length < 400000) parts = diffLib.diffWordsWithSpace(xText, tText); + else parts = [{ value: xText, removed: true }, { value: tText, added: true }].filter(x => x.value); + + const items = []; // { kind: 'text'|'elem'|'raw', text?, xml?, rPr, chain, rev } + const lastAtom = { piece: null }; + let nextPiece = 0; + let keptBefore = true; + + const atomAfter = idx => { + for (let k = idx; k < pieces.length; k++) if (pieces[k].type === 'atom' && pieces[k].cmp) return pieces[k]; + return null; + }; + const contextFor = () => { + const prev = lastAtom.piece; + const next = atomAfter(nextPiece); + const base = prev || next; + if (!base) return { rPr: defaultRPr, chain: [] }; + const shared = prev && next && prev.chain === next.chain; + if (shared) return { rPr: base.rPr, chain: base.chain }; + return { rPr: base.chain.length ? docxStripHyperlinkStyle(base.rPr) : base.rPr, chain: [] }; + }; + const emitPiece = (piece, revKind) => { + if (piece.type === 'opaque') { + if (piece.raw) items.push({ kind: 'raw', xml: piece.raw, chain: piece.chain }); + else items.push({ kind: 'elem', xml: piece.runChild, rPr: piece.rPr, chain: piece.chain, rev: '' }); + return; + } + if (piece.elem) items.push({ kind: 'elem', xml: piece.elem, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + else items.push({ kind: 'text', text: piece.ch, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + lastAtom.piece = piece; + }; + // Pieces without comparable text up to `limit`: opaque ones always stay; empty atoms (extra + // spaces, soft hyphens) stay where the text around them stays. + const passThrough = limit => { + while (nextPiece < limit) { + const piece = pieces[nextPiece++]; + if (piece.type === 'opaque' || keptBefore) emitPiece(piece, ''); + } + }; + const emitDeleted = texts => { + if (!texts.length) return; + const c = contextFor(); + for (const text of texts) items.push({ kind: 'text', text, rPr: c.rPr, chain: c.chain, rev: 'del' }); + }; + + let xi = 0; + let ti = 0; + for (const part of parts) { + const len = part.value.length; + if (part.added) { + for (let k = 0; k < len; k++, ti++) { + const tc = target.chars[ti]; + emitDeleted(tc.dels); + const c = contextFor(); + items.push({ kind: 'text', text: tc.ch, rPr: c.rPr, chain: c.chain, rev: tc.added ? 'ins' : '' }); + } + } else if (part.removed) { + for (let k = 0; k < len; k++, xi++) { + const idx = xPiece[xi]; + if (idx >= nextPiece) { + passThrough(idx); + nextPiece = idx + 1; + keptBefore = false; + } + } + } else { + for (let k = 0; k < len; k++, xi++, ti++) { + const idx = xPiece[xi]; + const tc = target.chars[ti]; + if (idx >= nextPiece) { + passThrough(idx); + keptBefore = true; + emitDeleted(tc.dels); + emitPiece(pieces[idx], tc.added ? 'ins' : ''); + nextPiece = idx + 1; + } else { + emitDeleted(tc.dels); + } + } + } + } + // Deleted text at the very end goes before trailing spaces / bookmarks. + emitDeleted(target.tail); + keptBefore = true; + passThrough(pieces.length); + + return assembleDocxParagraph(p, xml, pPr, items, rev, markPara); +} + +/** Serialises pieces into runs, grouped by wrapper chain and revision. */ +function assembleDocxParagraph(p, xml, pPr, items, rev, markPara) { + let body = ''; + let chain = []; + let revOpen = ''; + let run = null; // { rPr, rev, content } + + const flushRun = () => { + if (!run) return; + body += `<w:r>${run.rPr}${run.content}</w:r>`; + run = null; + }; + const setRev = kind => { + if (revOpen === kind) return; + flushRun(); + if (revOpen) body += revOpen === 'ins' ? '</w:ins>' : '</w:del>'; + revOpen = kind; + if (kind) body += kind === 'ins' ? `<w:ins ${rev()}>` : `<w:del ${rev()}>`; + }; + const setChain = next => { + if (next === chain) return; + let common = 0; + while (common < chain.length && common < next.length && chain[common] === next[common]) common++; + if (common === chain.length && common === next.length) return; + flushRun(); + setRev(''); + for (let k = chain.length - 1; k >= common; k--) body += chain[k].close; + for (let k = common; k < next.length; k++) body += next[k].open; + chain = next; + }; + + for (const item of items) { + setChain(item.chain); + if (item.kind === 'raw') { + setRev(''); + body += item.xml; + continue; + } + setRev(item.rev); + const content = + item.kind === 'text' + ? item.rev === 'del' + ? `<w:delText xml:space="preserve">${escapeXml(item.text)}</w:delText>` + : `<w:t xml:space="preserve">${escapeXml(item.text)}</w:t>` + : item.xml; + if (run && run.rPr === item.rPr && run.rev === item.rev) { + // Adjacent text joins one w:t. + if (item.kind === 'text' && /<\/w:(t|delText)>$/.test(run.content) && run.lastText) { + const tag = item.rev === 'del' ? 'w:delText' : 'w:t'; + run.content = run.content.slice(0, run.content.length - `</${tag}>`.length) + escapeXml(item.text) + `</${tag}>`; + } else { + run.content += content; + } + } else { + flushRun(); + run = { rPr: item.rPr, rev: item.rev, content }; + } + run.lastText = item.kind === 'text'; + } + setChain([]); + setRev(''); + flushRun(); + + const openTag = xml.slice(p.start, p.openEnd).replace(/\/>$/, '>'); + return `${openTag}${docxMarkParagraph(pPr, markPara, rev)}${body}</w:p>`; +} + +/** Adds an inserted/deleted mark to the paragraph mark (the pilcrow) in w:pPr. */ +function docxMarkParagraph(pPr, markPara, rev) { + if (!markPara) return pPr; + const mark = markPara === 'ins' ? `<w:ins ${rev()}/>` : `<w:del ${rev()}/>`; + if (!pPr) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/^<w:pPr\s*\/>$/.test(pPr)) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/<w:rPr\s*\/>/.test(pPr)) return pPr.replace(/<w:rPr\s*\/>/, `<w:rPr>${mark}</w:rPr>`); + if (/<w:rPr>/.test(pPr)) return pPr.replace(/<w:rPr>/, `<w:rPr>${mark}`); + const before = pPr.search(/<w:sectPr\b|<w:pPrChange\b|<\/w:pPr>/); + return `${pPr.slice(0, before)}<w:rPr>${mark}</w:rPr>${pPr.slice(before)}`; +} + +/** A new paragraph modelled on `template` (a unit paragraph) or a plain one. */ +function buildNewDocxParagraph(xml, ctx, template, tokens, prefix, rev, markPara) { + let pPr = ''; + let rPr = ''; + if (template) { + const tpl = flattenParagraph(template, xml, ctx); + pPr = tpl.pPr + .replace(/<w:sectPr\b[\s\S]*?<\/w:sectPr>/, '') + .replace(/<w:pPrChange\b[\s\S]*?<\/w:pPrChange>/, '') + .replace(/<w:rPr>[\s\S]*?<\/w:rPr>|<w:rPr\s*\/>/, ''); + const firstAtom = tpl.pieces.find(x => x.type === 'atom' && x.cmp && !x.chain.length); + rPr = firstAtom ? firstAtom.rPr : ''; + } + // Rewriting an empty paragraph with the model's properties emits all text in its run format. + const fakeXml = `<w:p>${pPr}</w:p>`; + const fake = parseXmlTree(fakeXml).children[0]; + return rewriteDocxParagraph(fake, fakeXml, ctx, tokens, prefix, rev, markPara, rPr); +} + +/* ── The whole document ─────────────────────────────────────────────────── */ + +/** + * plan: [{ block (final block; null for an open deletion), oldBlock, r0 (the block as read in from + * the file, or null), tokens, open, markPara }] in document order. Returns the new document.xml. + */ +function patchDocxDocumentXml(xml, r0Blocks, plan, opts) { + const tree = parseXmlTree(xml); + const { units, ctx } = collectDocxUnits(xml, tree); + const r0Map = mapBlocksToUnits(r0Blocks, units); + const unitOfR0 = new Map(); + r0Blocks.forEach((b, i) => { + if (r0Map.has(i)) unitOfR0.set(b, r0Map.get(i)); + }); + + let maxId = 0; + for (const mm of xml.matchAll(/\bw:id="(\d+)"/g)) maxId = Math.max(maxId, parseInt(mm[1], 10)); + let revId = maxId + 1000; + const date = toWordDate(opts.date || new Date()); + const rev = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; + + const edits = []; // { start, end, text, seq } + let seq = 0; + const edit = (start, end, text) => edits.push({ start, end, text, seq: seq++ }); + + // What the result must read like: every unit of the file with its new text (null = removed), + // plus the new paragraphs at their insertion points. + const unitText = new Map(units.map(u => [u, u.text])); + const inserted = []; // { pos, seq, text } + + const firstUnit = units[0]; + if (!firstUnit) throw new Error('docx: empty body'); + const unitStart = u => (u.kind === 'row' ? u.table.node.start : u.node.start); + const unitEnd = u => (u.kind === 'row' ? u.table.node.end : u.node.end); + let anchor = unitStart(firstUnit); + + const planUnits = plan.map(step => { + const hit = step.r0 ? unitOfR0.get(step.r0) : null; + return { unit: hit ? hit.unit : null, prefix: hit ? hit.prefix : 0, kind: (step.block || step.oldBlock || {}).kind }; + }); + const usedUnits = new Set(planUnits.filter(pu => pu.unit).map(pu => pu.unit)); + const templateFor = (kind, from) => { + const usable = entry => entry && entry.unit && entry.unit.kind === 'p' && !entry.unit.locked; + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k]) && planUnits[k].kind === kind) return planUnits[k].unit.node; + } + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k])) return planUnits[k].unit.node; + } + return null; + }; + const targetText = (tokens, prefix) => + docxTargetFromTokens(tokens.filter(x => !x.removed), prefix).chars.map(c => c.ch).join(''); + const insertAt = (text, expectedText) => { + edit(anchor, anchor, text); + inserted.push({ pos: anchor - 0.5, seq: seq, text: expectedText }); + }; + + plan.forEach((step, k) => { + const pu = planUnits[k]; + const unit = pu.unit; + if (!step.block) { + // An open deletion: the old paragraph, struck through, paragraph mark included. + const tpl = templateFor(step.oldBlock.kind, k); + insertAt(buildNewDocxParagraph(xml, ctx, tpl, [{ value: step.oldBlock.text, removed: true }], 0, rev, 'del'), ''); + return; + } + const finalKey = docxKey(step.block.text); + const changed = step.open || !step.r0 || docxKey(step.r0.text) !== finalKey; + if (!unit) { + if (step.r0 && changed) { + // A change in something that is not body text of the file (e.g. a footnote). + throw new Error('docx: change outside the body'); + } + if (step.r0) return; // unchanged and not in the body: nothing to do + // A paragraph that the file does not have (a restored deletion): a new paragraph. + const tpl = templateFor(step.block.kind, k); + const marker = step.block.numberingMarker; + const tplNumbered = tpl && /<w:numPr\b/.test(xml.slice(tpl.start, tpl.end)); + const prefix = tplNumbered && marker && finalKey.startsWith(`${marker} `) ? marker.length + 1 : 0; + insertAt(buildNewDocxParagraph(xml, ctx, tpl, step.tokens, prefix, rev, step.markPara || ''), targetText(step.tokens, prefix)); + return; + } + if (changed) { + if (unit.locked) throw new Error('docx: change in a locked unit'); + if (unit.kind === 'p') { + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, step.tokens, pu.prefix, rev, step.markPara || '')); + unitText.set(unit, targetText(step.tokens, pu.prefix)); + } else { + unitText.set(unit, rewriteDocxRow(unit, xml, ctx, step, rev, edit)); + } + } + anchor = unitEnd(unit); + }); + + // Units read in that are not part of the result anymore (a rejected insertion, a paragraph + // emptied by an edit) are removed, with anything nested in them. + const removed = []; + const removedRows = new Map(); + for (const hit of r0Map.values()) { + const unit = hit.unit; + if (usedUnits.has(unit)) continue; + if (unit.locked) throw new Error('docx: removal in a locked unit'); + if (unit.kind === 'row') { + removedRows.set(unit.table, (removedRows.get(unit.table) || 0) + 1); + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } else if (/<w:sectPr\b/.test(xml.slice(unit.node.start, unit.node.end))) { + // It carries the section layout: keep the paragraph, drop its text. + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, [], 0, rev, '')); + unitText.set(unit, ''); + } else { + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } + } + for (const [table, n] of removedRows) { + if (n < table.rows) continue; + // Every row is gone: remove the table (a table needs at least one row). + for (let k = edits.length - 1; k >= 0; k--) { + if (edits[k].start >= table.node.start && edits[k].end <= table.node.end) edits.splice(k, 1); + } + edit(table.node.start, table.node.end, ''); + removed.push([table.node.start, table.node.end]); + } + for (const u of units) { + if (removed.some(([s, e]) => u.node.start >= s && u.node.end <= e)) unitText.set(u, null); + } + + // Apply from the end; edits never overlap (each unit is touched once). + edits.sort((a, b) => b.start - a.start || b.seq - a.seq); + let out = xml; + let limit = Infinity; + for (const e of edits) { + if (e.end > limit) throw new Error('docx: overlapping edits'); + out = out.slice(0, e.start) + e.text + out.slice(e.end); + limit = e.start; + } + + // Read the result back: the accepted text of every unit must be exactly what we expect. + const norm = s => String(s || '').replace(/\s+/g, ' ').trim(); + const want = units + .map(u => ({ pos: u.node.start, seq: -1, text: unitText.get(u) })) + .concat(inserted) + .sort((a, b) => a.pos - b.pos || a.seq - b.seq) + .map(x => norm(x.text)) + .filter(Boolean); + const got = collectDocxUnits(out, parseXmlTree(out)) + .units.map(u => norm(u.text)) + .filter(Boolean); + const at = Math.max(got.length, want.length) === 0 ? -1 : got.findIndex((text, i) => text !== want[i]); + if (got.length !== want.length || at >= 0) { + const i = at >= 0 ? at : Math.min(got.length, want.length); + throw new Error(`docx: verification failed at unit ${i}: ${JSON.stringify(got[i])} vs ${JSON.stringify(want[i])}`); + } + return out; +} + +/** Rewrites the changed cells of a table row; returns the expected row text. */ +function rewriteDocxRow(unit, xml, ctx, step, rev, edit) { + const newCells = docxKey(step.block.text).split(' · '); + const oldCells = step.oldBlock ? docxKey(step.oldBlock.text).split(' · ') : null; + const filled = unit.cells.filter(c => c.text); + const cellTokens = (oldText, newText) => + step.open ? (oldText === null ? [{ value: newText, added: true }] : computeCleanWordDiff(oldText, newText)) : [{ value: newText }]; + const writeCell = (cell, tokens) => { + const paras = cell.paras.filter((p, i) => cell.texts[i]); + const first = paras[0] || cell.paras[0]; + if (!first) throw new Error('docx: cell without paragraph'); + edit(first.start, first.end, rewriteDocxParagraph(first, xml, ctx, tokens, 0, rev, '')); + for (const other of paras.slice(1)) edit(other.start, other.end, rewriteDocxParagraph(other, xml, ctx, [], 0, rev, '')); + }; + if (newCells.length === filled.length) { + newCells.forEach((text, i) => { + const cell = filled[i]; + const oldText = oldCells && oldCells.length === newCells.length ? oldCells[i] : null; + if (cell.text === text && (!step.open || oldText === text)) return; + writeCell(cell, cellTokens(oldText, text)); + }); + return newCells.join(' · '); + } + // The number of filled cells changed: the whole row text goes into the first cell. + const target = filled[0] || unit.cells[0]; + if (!target) throw new Error('docx: row without cells'); + writeCell(target, step.open && step.oldBlock ? computeCleanWordDiff(docxKey(step.oldBlock.text), docxKey(step.block.text)) : [{ value: docxKey(step.block.text) }]); + for (const cell of filled) if (cell !== target) writeCell(cell, []); + return docxKey(step.block.text); +} + +/* ── Entry point ────────────────────────────────────────────────────────── */ + +/** + * Builds the export from the original .docx of the new version. + * source: { bytes, importedText }; finalBlocks: blocks of the current new version (all of them); + * rows: state.alignedRows (old ↔ new); kind: 'final' | 'tracked'. + * Returns a Uint8Array (.docx) or throws when the result cannot be verified. + */ +async function buildDocxFromSource(source, finalBlocks, rows, kind, date = new Date()) { + const entries = await readZipEntries(source.bytes); + const docEntry = entries.find(e => e.name === 'word/document.xml'); + if (!docEntry) throw new Error('docx: no word/document.xml'); + const xml = new TextDecoder('utf-8').decode(docEntry.data); + const r0Blocks = parseIntoBlocks(source.importedText); + + // Old ↔ new rows by the position of the new block; final blocks ↔ blocks as read in. + const rowOfFinal = new Map(); + for (const row of rows) { + if (!row.rightBlock) continue; + const block = finalBlocks[row.rightBlock.index - 1]; + if (!block || block.text !== row.rightBlock.text) throw new Error('docx: comparison is not current'); + rowOfFinal.set(row.rightBlock.index, row); + } + const r0Rows = alignDocumentBlocks(r0Blocks, finalBlocks); + const r0OfFinal = new Map(); + for (const r of r0Rows) if (r.leftBlock && r.rightBlock) r0OfFinal.set(r.rightBlock, r.leftBlock); + + const plan = []; + const pushDeleted = row => { + if (kind !== 'tracked' || !row || row.type !== 'deleted' || row.reviewStatus === 'accepted' || !row.leftBlock) return; + if (row.leftBlock.isHeaderFooter) return; + plan.push({ block: null, oldBlock: row.leftBlock, r0: null, open: true }); + }; + let rowCursor = 0; + for (const block of finalBlocks) { + const row = rowOfFinal.get(block.index); + if (row) { + // Open deletions that sit before this row in the comparison. + const at = rows.indexOf(row); + for (; rowCursor < at; rowCursor++) pushDeleted(rows[rowCursor]); + rowCursor = at + 1; + } + const open = kind === 'tracked' && row && row.type !== 'equal' && row.reviewStatus !== 'accepted'; + const tokens = open ? getExportDiffTokens(row) : [{ value: cleanExportText(block.text) }]; + plan.push({ + block, + oldBlock: row ? row.leftBlock : null, + r0: r0OfFinal.get(block) || null, + tokens, + open, + markPara: open && row.type === 'inserted' ? 'ins' : '', + }); + } + for (; rowCursor < rows.length; rowCursor++) pushDeleted(rows[rowCursor]); + + const outXml = patchDocxDocumentXml(xml, r0Blocks, plan, { date }); + const enc = new TextEncoder(); + const files = entries.map(e => (e.name === 'word/document.xml' ? { name: e.name, data: enc.encode(outXml) } : e)); + return buildZipArchive(files, date); +} + /* ── Import errors & notices ───────────────────────────────────────────── */ // Error with a translatable message key (shown to the user instead of a raw exception). @@ -12085,6 +13407,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } else if (kind === 'docx') { result = await extractDocxText(buffer); result.format = 'DOCX'; + result.sourceBytes = bytes; } else { const { text, warnings } = decodeTextFile(bytes, ext); const looksLikeHtml = /^\s*(?:<!doctype html|<html[\s>])/i.test(text.slice(0, 2048)); @@ -12124,7 +13447,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> fnLabel.textContent = `${t('readingFile')} ${file.name}…`; try { - const { text, format, warnings } = await readDocumentFile(file); + const { text, format, warnings, sourceBytes } = await readDocumentFile(file); if (isStale()) { if (seq === uploadSeq[side]) restoreLabel(); return false; @@ -12139,6 +13462,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightFormat = format; state.rightText = text; } + state.docSources[side] = sourceBytes ? { name: file.name, bytes: sourceBytes, importedText: text } : null; resetEditHistory(); if (warnings && warnings.length) { showImportNotice(`${file.name}: ${warnings.join(' ')}`, 'warning'); @@ -12328,6 +13652,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> trigger = trigger || document.getElementById(MENU_TRIGGERS[id]); trigger.setAttribute('aria-expanded', 'true'); openMenuState = { id, trigger }; + if (id === 'export-menu') updateExportMenuTexts(); document.body.classList.toggle('menu-sheet-open', isPhoneWidth()); menuItems(menu).forEach(item => (item.tabIndex = -1)); if (focus) { @@ -12773,6 +14098,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = ''; state.leftFormat = ''; state.rightFormat = ''; + state.docSources = { left: null, right: null }; state.activeRowId = null; state.hoveredRowId = null; state.sidebarFilter = 'all'; @@ -12846,6 +14172,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> [state.leftText, state.rightText] = [state.rightText, state.leftText]; [state.leftName, state.rightName] = [state.rightName, state.leftName]; [state.leftFormat, state.rightFormat] = [state.rightFormat, state.leftFormat]; + state.docSources = { left: state.docSources.right, right: state.docSources.left }; resetEditHistory(); runComparison(); btnFiles.focus(); @@ -12880,11 +14207,13 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.leftText = sanitizeExternalText(textareaLeft.value); state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; } if (rightChanged) { state.rightText = sanitizeExternalText(textareaRight.value); state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; } if (leftChanged || rightChanged) resetEditHistory(); if (state.leftText.trim() && !state.leftName) { @@ -13500,6 +14829,20 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return { kept, used }; } +// The original .docx of a side (for the Word export in the original format), as base64. +function bytesToBase64(bytes) { + let bin = ''; + for (let i = 0; i < bytes.length; i += 0x8000) bin += String.fromCharCode.apply(null, bytes.subarray(i, i + 0x8000)); + return btoa(bin); +} +function sessionSourceOf(side) { + const src = state.docSources && state.docSources[side]; + const name = side === 'left' ? state.leftName : state.rightName; + const format = side === 'left' ? state.leftFormat : state.rightFormat; + if (!src || format !== 'DOCX' || src.name !== name) return undefined; + return { kind: 'docx', data: bytesToBase64(src.bytes), importedText: src.importedText }; +} + function buildSessionPayload() { const redo = takeRecentHistory(state.redoStack, SESSION_HISTORY_CHAR_BUDGET); const undo = takeRecentHistory(state.undoStack, SESSION_HISTORY_CHAR_BUDGET - redo.used); @@ -13514,12 +14857,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: state.leftName, format: state.leftFormat, text: state.leftText, + source: sessionSourceOf('left'), }, right: { name: state.rightName, format: state.rightFormat, originalText: sessionTracker.originalRightText, text: state.rightText, + source: sessionSourceOf('right'), }, }, view: { @@ -13640,6 +14985,22 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +function base64ToBytes(b64) { + const bin = atob(b64); + const out = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i); + return out; +} + +// Optional original .docx of a side: { kind: 'docx', data (base64), importedText }. +function expectSource(value, name) { + if (value === undefined) return null; + if (!isPlainObject(value) || value.kind !== 'docx') throw new SessionFileError('sessionErrorInvalid'); + const data = expectString(value.data, SESSION_MAX_FILE_BYTES); + if (!/^[A-Za-z0-9+/]*={0,2}$/.test(data) || data.length % 4 !== 0) throw new SessionFileError('sessionErrorInvalid'); + return { name, bytes: base64ToBytes(data), importedText: expectString(value.importedText, SESSION_MAX_FILE_BYTES) }; +} + // Returns a fresh, fully validated object; throws SessionFileError otherwise. function validateSessionData(raw) { if (!isPlainObject(raw) || raw.format !== SESSION_FORMAT_ID) { @@ -13684,12 +15045,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: expectString(docs.left.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.left.format), text: expectString(docs.left.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.left.source, docs.left.name), }, right: { name: expectString(docs.right.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.right.format), originalText: expectString(docs.right.originalText, SESSION_MAX_FILE_BYTES), text: expectString(docs.right.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.right.source, docs.right.name), }, view: { mode: view.mode === 'pages' ? 'split' : view.mode, @@ -13737,6 +15100,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = session.right.name; state.rightFormat = session.right.format; state.rightText = session.right.text; + state.docSources = { left: session.left.source || null, right: session.right.source || null }; state.reviews = cloneReviews(session.reviews); state.undoStack = session.history.undo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); state.redoStack = session.history.redo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); diff --git a/scripts/test-app-state.mjs b/scripts/test-app-state.mjs index 242124d..e9bd3ed 100644 --- a/scripts/test-app-state.mjs +++ b/scripts/test-app-state.mjs @@ -270,7 +270,7 @@ let groups = 0; // 8. Saved work: version 2 carries the review status; version 1 files still open. { const session = read('11-session.js'); - const ctx = {}; + const ctx = { atob }; vm.createContext(ctx); const consts = session.split('\n').filter(l => /^const (SESSION_|REVIEW_TYPES).*;$/.test(l)).join('\n'); const start = session.indexOf('class SessionFileError'); @@ -320,6 +320,14 @@ let groups = 0; bad({ ...v2, reviews: [{ ...rejected, pageNum: 0 }] }); bad({ ...v2, reviews: [{ ...rejected, leftText: 5 }] }); bad({ ...v2, reviews: 'x' }); + // The original .docx of a side travels along (Word export in the original format). + const withSource = side => ({ ...v2, documents: { ...v2.documents, [side]: { ...v2.documents[side], source: { kind: 'docx', data: 'UEsDBA==', importedText: 'B' } } } }); + const rs = ok(withSource('right')); + assert.deepEqual([...rs.right.source.bytes], [0x50, 0x4b, 3, 4], 'source bytes decoded'); + assert.equal(rs.right.source.name, 'b', 'source belongs to its document'); + assert.equal(rs.left.source, null, 'no source on the other side'); + bad({ ...withSource('left'), documents: { ...v2.documents, left: { ...v2.documents.left, source: { kind: 'pdf', data: '', importedText: '' } } } }); + bad({ ...withSource('left'), documents: { ...v2.documents, left: { ...v2.documents.left, source: { kind: 'docx', data: 'no base64!', importedText: '' } } } }); assert.equal(({}).status, undefined, 'no prototype pollution'); groups++; } diff --git a/scripts/test-core.mjs b/scripts/test-core.mjs index 86038dd..99b4ecf 100644 --- a/scripts/test-core.mjs +++ b/scripts/test-core.mjs @@ -91,6 +91,36 @@ test('word diff: delete-only next to a number keeps the number unchanged', () => assert.ok(parts.some(p => !p.removed && !p.added && p.value.includes('14'))); }); +test('word diff: changes joined only by a hyphen or a space read as one replacement', () => { + const parts = assertInvariant( + 'Modul C: Standard-Berichtswesen und Preisspiegel-Export als PDF-Dokument', + 'Modul C: Echtzeit-Nachtragsmanagement, Preisspiegel und automatisierter Soll-Ist-Abgleich' + ); + assert.deepEqual(plain(parts), [ + { value: 'Modul C: ' }, + { value: 'Standard-Berichtswesen', removed: true }, + { value: 'Echtzeit-Nachtragsmanagement, Preisspiegel', added: true }, + { value: ' und ' }, + { value: 'Preisspiegel-Export als PDF-Dokument', removed: true }, + { value: 'automatisierter Soll-Ist-Abgleich', added: true }, + ]); +}); + +test('word diff: a single replaced word next to unchanged punctuation stays a single word', () => { + assert.deepEqual(plain(assertInvariant('Gerichtsstand ist Berlin.', 'Gerichtsstand ist München.')), [ + { value: 'Gerichtsstand ist ' }, + { value: 'Berlin', removed: true }, + { value: 'München', added: true }, + { value: '.' }, + ]); + assert.deepEqual(plain(assertInvariant('EKT-Aufgliederung und Zuschlag', 'EKT-Kalkulation und Zuschlag')), [ + { value: 'EKT-' }, + { value: 'Aufgliederung', removed: true }, + { value: 'Kalkulation', added: true }, + { value: ' und Zuschlag' }, + ]); +}); + test('word diff: partial number replacements expand to the whole number', () => { const cases = [ ['Betrag 145.000,00 EUR', 'Betrag 146.000,00 EUR', '145.000,00', '146.000,00'], @@ -706,6 +736,14 @@ test('hf filter: identical running lines stay hidden, filter off shows everythin assert.equal(compare(a, b, false).changes.length, 1); }); +test('a rewritten text keeps the heading markers of the source (no heading turns into a paragraph)', () => { + const blocks = core.parseIntoBlocks('# Vertrag\n\n## Allgemeines\n\nText.\n\nOhne Marker'); + const lines = blocks.map(b => core.serializeBlockLine(b)); + assert.deepEqual([...lines.slice(0, 3)], ['# Vertrag', '## Allgemeines', 'Text.']); + assert.ok(!lines[3].startsWith('#'), 'no marker is added where the source had none'); + assert.equal(core.parseIntoBlocks(lines.join("\n\n")).map(b => b.kind).join(), blocks.map(b => b.kind).join()); +}); + for (const f of failures) console.error(f); if (failures.length) { console.error(`\n${failures.length} core test(s) failed, ${passed} passed.`); diff --git a/scripts/test-export.mjs b/scripts/test-export.mjs index 6100c4e..30b4e68 100644 --- a/scripts/test-export.mjs +++ b/scripts/test-export.mjs @@ -22,6 +22,7 @@ const sources = [ 'src/js/06d-review.js', 'src/js/08-export-docx.js', 'src/js/08-export.js', + 'src/js/08b-export-docx-source.js', ]; const harness = ` @@ -31,6 +32,7 @@ const state = { filteredHfCount: 0, viewMode: 'split', rightAllBlocks: [], }; function t(key) { return I18N[state.lang][key] || I18N.de[key] || key; } +function formatMsg(key, params = {}) { return t(key).replace(/\{(\w+)\}/g, (_, k) => (params[k] !== undefined ? String(params[k]) : '')); } function compare(leftText, rightText, opts = {}) { Object.assign(state, { onlyChanges: false, ignoreHeadersFooters: true }, opts); const l = parseIntoBlocks(leftText); @@ -50,6 +52,10 @@ function compare(leftText, rightText, opts = {}) { const context = { console, TextEncoder, + TextDecoder, + Blob, + Response, + DecompressionStream, URL, Intl, navigator: { language: 'de-DE', languages: ['de-DE'] }, @@ -96,8 +102,8 @@ function readZip(bytes) { /** Text of each body paragraph after accepting (or rejecting) all tracked changes. */ function resolveRevisions(documentXml, mode) { - const body = documentXml.split('<w:body>')[1]; - const paragraphs = body.match(/<w:p>[\s\S]*?<\/w:p>/g) || []; + const body = documentXml.split(/<w:body>/)[1]; + const paragraphs = body.match(/<w:p(?: [^>]*)?>[\s\S]*?<\/w:p>/g) || []; const out = []; for (let p of paragraphs) { const markDeleted = /<w:pPr>.*?<w:rPr><w:del /.test(p); @@ -116,8 +122,7 @@ function resolveRevisions(documentXml, mode) { } const normalizeSpace = s => s.replace(/\s+/g, ' ').trim(); -/** Title + "DocDiffMeta" paragraphs before the document body. */ -const metaParagraphCount = documentXml => 1 + (documentXml.match(/<w:pStyle w:val="DocDiffMeta"\/>/g) || []).length; +const isHf = block => Boolean(block && (block.isHeaderFooter || block.kind === 'hf')); let checks = 0; /* ── File names ───────────────────────────────────────────────────────────── */ @@ -156,7 +161,7 @@ for (const lang of ['de', 'en']) { // DOCX: valid ZIP, required parts, accept-all == new version, reject-all == old version. const files = readZip(api.buildDocxRedline(new Date('2026-10-22T12:00:00Z'))); - for (const part of ['[Content_Types].xml', '_rels/.rels', 'word/document.xml', 'word/styles.xml', 'word/settings.xml', 'word/_rels/document.xml.rels', 'word/footer1.xml', 'docProps/core.xml', 'docProps/app.xml']) { + for (const part of ['[Content_Types].xml', '_rels/.rels', 'word/document.xml', 'word/styles.xml', 'word/settings.xml', 'word/_rels/document.xml.rels', 'word/footer1.xml', 'word/comments.xml', 'docProps/core.xml', 'docProps/app.xml']) { assert.ok(files.has(part), `${label}: docx part ${part}`); assert.ok(files.get(part).startsWith('<?xml'), `${label}: ${part} has XML declaration`); } @@ -166,15 +171,28 @@ for (const lang of ['de', 'en']) { assert.match(doc, /<w:pStyle w:val="Heading2"\/>/); const ids = [...doc.matchAll(/<w:(?:ins|del) w:id="(\d+)"/g)].map(m => m[1]); assert.equal(new Set(ids).size, ids.length, `${label}: revision ids are unique`); - const metaParagraphs = metaParagraphCount(doc); - assert.equal(metaParagraphs, 1 + 5 + 1, `${label}: title, five facts, note (nothing reviewed)`); - const accepted = resolveRevisions(doc, 'accept').slice(metaParagraphs).map(normalizeSpace); - const rejected = resolveRevisions(doc, 'reject').slice(metaParagraphs).map(normalizeSpace); + // The body is the document text only: no cover block, no running headers/footers. + assert.ok(!doc.includes('DocDiffMeta'), `${label}: no summary block in the body`); + const accepted = resolveRevisions(doc, 'accept').map(normalizeSpace); + const rejected = resolveRevisions(doc, 'reject').map(normalizeSpace); // Arrays created inside the vm realm have a different prototype; copy them for deepEqual. - const expectNew = [...state.alignedRows.filter(r => r.rightBlock).map(r => normalizeSpace(r.rightBlock.text))]; - const expectOld = [...state.alignedRows.filter(r => r.leftBlock).map(r => normalizeSpace(r.leftBlock.text))]; + const bodyRows = state.alignedRows.filter(r => !isHf(r.rightBlock || r.leftBlock)); + const expectNew = [...bodyRows.filter(r => r.rightBlock).map(r => normalizeSpace(r.rightBlock.text))]; + const expectOld = [...bodyRows.filter(r => r.leftBlock).map(r => normalizeSpace(r.leftBlock.text))]; assert.deepEqual(accepted, expectNew, `${label}: Accept all yields the new version`); assert.deepEqual(rejected, expectOld, `${label}: Reject all yields the old version`); + // The summary (and the header/footer changes, which are not body text) is a Word comment. + const comments = files.get('word/comments.xml'); + assert.ok(comments.includes(api.escapeXml(api.formatExportCountsLine(api.getExportCounts()))), `${label}: counts in the comment`); + assert.equal(doc.includes('<w:commentReference w:id="0"/>'), true, `${label}: comment anchored in the body`); + assert.ok(files.get('[Content_Types].xml').includes('/word/comments.xml'), `${label}: comment part registered`); + const hfChanged = state.changeRows.some(r => isHf(r.rightBlock || r.leftBlock)); + assert.equal(comments.includes(api.escapeXml(api.t('docxHfHeading'))), hfChanged, `${label}: header/footer changes listed in the comment`); + // Final version: no marks, no comment, exactly the new body text. + const finalFiles = readZip(api.buildGeneratedDocx('final', new Date('2026-10-22T12:00:00Z'))); + const finalDoc = finalFiles.get('word/document.xml'); + assert.ok(!/<w:(ins|del) /.test(finalDoc) && !finalFiles.has('word/comments.xml'), `${label}: final version has no marks`); + assert.deepEqual(resolveRevisions(finalDoc, 'accept').map(normalizeSpace), expectNew, `${label}: final version text`); // HTML report. for (const onlyChanges of [false, true]) { @@ -185,10 +203,14 @@ for (const lang of ['de', 'en']) { assert.ok(!/<script/i.test(html), 'report contains no script'); assert.ok(!/https?:\/\//.test(html), 'report contains no external URL'); assert.ok(html.includes(api.t(onlyChanges ? 'exportScopeChanges' : 'exportScopeFull')), 'report states scope'); - for (const row of state.changeRows) { - const n = state.changeRows.indexOf(row) + 1; + const items = api.getExportItems(); + assert.equal(items.length, state.listItems.length, `${label}: report lists the changes as the list does`); + items.forEach((item, i) => { + const n = i + 1; assert.ok(html.includes(`href="#c${n}"`) && html.includes(`id="c${n}"`), `report anchor c${n}`); - } + }); + assert.equal(new Set([...html.matchAll(/ id="(c\d+)"/g)].map(m => m[1])).size, [...html.matchAll(/ id="(c\d+)"/g)].length, `${label}: anchor ids unique`); + assert.ok(html.includes(api.formatExportCountsLine(api.getExportCounts())) || html.includes(`<strong>${items.length}</strong>`), `${label}: count as in the list`); assert.ok(html.includes(`<span class="sr">${api.t('a11yRemovedStart')} </span>`)); const tagBalance = tag => (html.match(new RegExp(`<${tag}>`, 'g')) || []).length === (html.match(new RegExp(`</${tag}>`, 'g')) || []).length; assert.ok(tagBalance('del') && tagBalance('ins'), 'balanced del/ins'); @@ -300,10 +322,10 @@ checks += 2; vm.runInContext('state.reviews = {};', context); api.__compareFull(sample.v1, sample.v2); const date = new Date('2026-10-22T12:00:00Z'); - // Exports count every occurrence (the list merges identical header/footer changes). + // Exports count the changes as the list does (identical header/footer changes are one). const total = api.getExportItems().length; - assert.equal(total, state.changeRows.length, `${lang}: one export item per change row`); - assert.ok(state.listItems.length < total, `${lang}: repeated header/footer changes are one list item`); + assert.equal(total, state.listItems.length, `${lang}: one export item per list item`); + assert.ok(total < state.changeRows.length, `${lang}: repeated header/footer changes are one change`); assert.ok(state.listItems.some(i => i.members && i.members.length > 1), `${lang}: merged header/footer item`); // Nothing reviewed: identical to an export without review semantics. @@ -326,12 +348,12 @@ checks += 2; const files = readZip(api.buildDocxRedline(date)); const doc = files.get('word/document.xml'); - const metaCount = metaParagraphCount(doc); - assert.equal(metaCount, 1 + 6 + 1, `${lang}: review line among the facts`); - assert.ok(doc.includes(api.escapeXml(api.tf('exportReviewFmt', { k: 7, n: total, a: 4, r: 3 }))), `${lang}: review summary in the Word file`); - const acceptAll = resolveRevisions(doc, 'accept').slice(metaCount).map(normalizeSpace); - const rejectAll = resolveRevisions(doc, 'reject').slice(metaCount).map(normalizeSpace); - const rows = [...state.alignedRows]; + const counts2 = api.getExportCounts(); + const reviewLine = api.tf('exportReviewFmt', { k: counts2.accepted + counts2.rejected, n: total, a: counts2.accepted, r: counts2.rejected }); + assert.ok(files.get('word/comments.xml').includes(api.escapeXml(reviewLine)), `${lang}: review summary in the Word comment`); + const acceptAll = resolveRevisions(doc, 'accept').map(normalizeSpace); + const rejectAll = resolveRevisions(doc, 'reject').map(normalizeSpace); + const rows = [...state.alignedRows].filter(r => !isHf(r.rightBlock || r.leftBlock)); const expectAccept = rows.filter(r => r.rightBlock).map(r => normalizeSpace(r.rightBlock.text)); const expectReject = []; for (const r of rows) { @@ -368,4 +390,70 @@ checks += 2; } } +/* ── Word export in the original format (the new version is a .docx) ─────────────────── + * The file is the base: untouched paragraphs stay byte for byte, changed ones keep the run + * formatting of the words that stay; the result is verified before it is returned. */ +await (async () => { + const W = 'xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"'; + const P = { + heading: '<w:p w14:paraId="1"><w:pPr><w:pStyle w:val="Heading1"/></w:pPr><w:r><w:t>Vertrag</w:t></w:r></w:p>', + bold: '<w:p><w:r><w:t xml:space="preserve">Der </w:t></w:r><w:r><w:rPr><w:b/></w:rPr><w:t>Auftragnehmer</w:t></w:r><w:r><w:t xml:space="preserve"> liefert bis 12.03.2026.</w:t></w:r></w:p>', + link: '<w:p><w:bookmarkStart w:id="7" w:name="lh"/><w:hyperlink r:id="rIdLink"><w:r><w:rPr><w:rStyle w:val="Hyperlink"/></w:rPr><w:t>Lastenheft</w:t></w:r></w:hyperlink><w:bookmarkEnd w:id="7"/><w:r><w:t xml:space="preserve"> gilt.</w:t></w:r></w:p>', + numbered: '<w:p><w:pPr><w:numPr><w:ilvl w:val="0"/><w:numId w:val="1"/></w:numPr></w:pPr><w:r><w:t>Leistungen werden erbracht.</w:t></w:r></w:p>', + tab: '<w:p><w:r><w:rPr><w:i/></w:rPr><w:t>Preis:</w:t></w:r><w:r><w:tab/></w:r><w:r><w:t>100 EUR</w:t></w:r></w:p>', + table: '<w:tbl><w:tblPr/><w:tr><w:tc><w:p><w:r><w:t>A</w:t></w:r></w:p></w:tc><w:tc><w:p><w:r><w:t>B</w:t></w:r></w:p></w:tc></w:tr></w:tbl>', + }; + const documentXml = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<w:document ${W} xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml"><w:body>${Object.values(P).join('')}<w:sectPr><w:pgSz w:w="11906" w:h="16838"/></w:sectPr></w:body></w:document>`; + const bytes = api.buildZipArchive([ + { name: '[Content_Types].xml', data: '<?xml version="1.0"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"/>' }, + { name: 'word/document.xml', data: documentXml }, + { name: 'word/media/image1.png', data: new Uint8Array([137, 80, 78, 71, 0, 1, 2]) }, + ]); + // What the reader makes of it: list numbers and headings are added as text. + const imported = ['# Vertrag', 'Der Auftragnehmer liefert bis 12.03.2026.', 'Lastenheft gilt.', '(1) Leistungen werden erbracht.', 'Preis: 100 EUR', 'A · B'].join('\n\n'); + const old = ['# Vertrag', 'Der Auftragnehmer liefert bis 01.02.2026.', 'Lastenheft gilt.', 'Alt entfällt.', '(1) Leistungen werden erbracht.', 'Preis: 90 EUR', 'A · C'].join('\n\n'); + // Edited one paragraph, rejected the price change (the old wording is back). + const current = imported.replace('Lastenheft gilt.', 'Lastenheft gilt ab sofort.').replace('Preis: 100 EUR', 'Preis: 90 EUR'); + const finalBlocks = api.parseIntoBlocks(current); + const rows = api.alignDocumentBlocks(api.parseIntoBlocks(old), finalBlocks); + const source = { bytes, importedText: imported }; + const date = new Date('2026-10-22T12:00:00Z'); + + const read = async out => { + const entries = await api.readZipEntries(out); + return { doc: new TextDecoder().decode(entries.find(e => e.name === 'word/document.xml').data), entries }; + }; + const paraTexts = (doc, mode) => resolveRevisions(doc, mode).map(normalizeSpace).filter(Boolean); + + // Final version. + const fin = await read(await api.buildDocxFromSource(source, finalBlocks, rows, 'final', date)); + assert.ok(fin.entries.some(e => e.name === 'word/media/image1.png' && e.data.length === 7), 'other parts are kept'); + for (const key of ['heading', 'bold', 'numbered', 'table']) assert.ok(fin.doc.includes(P[key]), `final: unchanged ${key} paragraph is byte-identical`); + assert.ok(!/<w:(ins|del) /.test(fin.doc), 'final: no revision marks'); + assert.deepEqual(paraTexts(fin.doc, 'accept'), ['Vertrag', 'Der Auftragnehmer liefert bis 12.03.2026.', 'Lastenheft gilt ab sofort.', 'Leistungen werden erbracht.', 'Preis: 90 EUR', 'A', 'B'], 'final: text'); + assert.match(fin.doc, /<w:hyperlink r:id="rIdLink"><w:r><w:rPr><w:rStyle w:val="Hyperlink"\/><\/w:rPr><w:t xml:space="preserve">Lastenheft<\/w:t><\/w:r><\/w:hyperlink>/, 'final: the link stays a link'); + assert.ok(fin.doc.includes('<w:bookmarkStart w:id="7" w:name="lh"/>'), 'final: bookmarks stay'); + assert.match(fin.doc, /<w:i\/><\/w:rPr><w:t xml:space="preserve">Preis:<\/w:t><\/w:r><w:r><w:tab\/>(?:<\/w:r><w:r>)?<w:t xml:space="preserve">90 EUR/, 'final: italics and the tab stay'); + assert.ok(fin.doc.includes('<w:sectPr><w:pgSz w:w="11906" w:h="16838"/></w:sectPr>'), 'final: page layout stays'); + + // Tracked changes on the original. + const tr = await read(await api.buildDocxFromSource(source, finalBlocks, rows, 'tracked', date)); + assert.ok(tr.doc.includes(P.heading) && tr.doc.includes(P.numbered), 'tracked: unchanged paragraphs are byte-identical'); + assert.deepEqual(paraTexts(tr.doc, 'accept'), ['Vertrag', 'Der Auftragnehmer liefert bis 12.03.2026.', 'Lastenheft gilt ab sofort.', 'Leistungen werden erbracht.', 'Preis: 90 EUR', 'A', 'B'], 'tracked: Accept all = final version'); + assert.deepEqual(paraTexts(tr.doc, 'reject'), ['Vertrag', 'Der Auftragnehmer liefert bis 01.02.2026.', 'Lastenheft gilt.', 'Alt entfällt.', 'Leistungen werden erbracht.', 'Preis: 90 EUR', 'A', 'C'], 'tracked: Reject all = old version'); + assert.match(tr.doc, /<w:b\/><\/w:rPr><w:t xml:space="preserve">Auftragnehmer<\/w:t>/, 'tracked: bold word keeps its formatting'); + assert.match(tr.doc, /<w:del w:id="\d+" w:author="Doc Diff" w:date="2026-10-22T12:00:00Z"><w:r><w:delText xml:space="preserve">01\.02\.2026<\/w:delText>/, 'tracked: deletion'); + assert.match(tr.doc, /<w:pPr><w:rPr><w:del [^>]*\/><\/w:rPr><\/w:pPr><w:del [^>]*><w:r><w:delText xml:space="preserve">Alt entfällt\.<\/w:delText>/, 'tracked: removed paragraph with deleted paragraph mark'); + const ids = [...tr.doc.matchAll(/<w:(?:ins|del) w:id="(\d+)"/g)].map(m => m[1]); + assert.equal(new Set(ids).size, ids.length, 'tracked: revision ids unique'); + assert.ok(ids.every(id => Number(id) > 7), 'tracked: revision ids do not clash with bookmark ids'); + + // A change the file cannot carry (text that is not in the body) is refused, never dropped. + const withNote = `${imported}\n\nFußnotentext.`; + const noteFinal = api.parseIntoBlocks(`${current}\n\nGeänderter Fußnotentext.`); + const noteRows = api.alignDocumentBlocks(api.parseIntoBlocks(old), noteFinal); + await assert.rejects(api.buildDocxFromSource({ bytes, importedText: withNote }, noteFinal, noteRows, 'final', date), /outside the body/); + checks += 6; +})(); + console.log(`✓ Export builder tests passed (${checks} check groups).`); diff --git a/site/en/index.html b/site/en/index.html index d66f008..d2ca49e 100644 --- a/site/en/index.html +++ b/site/en/index.html @@ -45,16 +45,16 @@ <meta property="og:locale:alternate" content="de_DE" /> <meta property="og:title" content="Doc Diff – Compare PDF and Word documents without uploading" /> <meta property="og:description" content="Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads." /> - <meta property="og:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta property="og:image" content="https://docdiff.app/og-image-en.png?v=1" /> <meta property="og:image:type" content="image/png" /> <meta property="og:image:width" content="2400" /> <meta property="og:image:height" content="1260" /> - <meta property="og:image:alt" content="Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface)." /> + <meta property="og:image:alt" content="Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green." /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Doc Diff – Compare PDF and Word documents without uploading" /> <meta name="twitter:description" content="Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads." /> - <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=2" /> - <meta name="twitter:image:alt" content="Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface)." /> + <meta name="twitter:image" content="https://docdiff.app/og-image-en.png?v=1" /> + <meta name="twitter:image:alt" content="Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green." /> <!-- Structured data (schema.org). A data block: browsers never execute it. --> <script type="application/ld+json"> @@ -93,7 +93,7 @@ "@type": "CreativeWork", "url": "https://github.com/tschnorpfeil/docdiff#readme" }, - "image": "https://docdiff.app/og-image.png?v=2", + "image": "https://docdiff.app/og-image-en.png?v=1", "author": { "@type": "Person", "name": "Tobias Schnorpfeil", @@ -158,7 +158,7 @@ "name": "Can I keep working on the changes in Word?", "acceptedAnswer": { "@type": "Answer", - "text": "Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting." + "text": "Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too." } }, { @@ -861,6 +861,45 @@ .menu-label + .menu-seg { margin-top: 2px; } +/* Export menu: section titles and items with a one-line explanation */ +.menu-export { + width: 340px; + max-width: calc(100vw - 16px); +} +.menu-label-2line { + display: flex; + flex-direction: column; + gap: 1px; + padding: 8px 10px 4px; + color: hsl(var(--foreground)); +} +.menu-label-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); +} +.menu-item.mi-2line { + align-items: flex-start; + white-space: normal; +} +.menu-item.mi-2line > svg { + margin-top: 2px; + flex-shrink: 0; +} +.mi-text { + display: flex; + flex-direction: column; + gap: 1px; + min-width: 0; +} +.mi-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); + overflow-wrap: anywhere; +} .menu-sep { height: 1px; margin: 5px 4px; @@ -3340,6 +3379,44 @@ font-style: italic; color: #444; } + /* Final version: a clean document, no marks */ + #print-view .pv-final { + font-size: 10.5pt; + line-height: 1.5; + hyphens: auto; + } + #print-view .pv-final h1 { + font-size: 16pt; + line-height: 1.25; + margin: 0 0 12pt; + break-after: avoid; + } + #print-view .pv-final h2 { + font-size: 12pt; + margin: 16pt 0 6pt; + break-after: avoid; + } + #print-view .pv-final h3 { + font-size: 10.5pt; + margin: 12pt 0 4pt; + break-after: avoid; + } + #print-view .pv-final p { + margin: 0 0 6pt; + orphans: 3; + widows: 3; + } + #print-view .pv-final .pvf-item { + display: flex; + gap: 0; + } + #print-view .pv-final .pvf-marker { + flex: 0 0 2.4em; + } + #print-view .pv-final .pvf-body { + flex: 1 1 auto; + min-width: 0; + } } /* Landing page on phones: one column, nothing wider than the screen */ @@ -3566,16 +3643,26 @@ <h2 class="sr-only" id="files-pop-title" data-i18n="filesTitle">Documents</h2> <span id="i18n-btn-export" data-i18n="exportBtn">Export</span> <svg class="icon tb-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg> </button> - <div class="menu menu-right" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> - <button type="button" class="menu-item" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span data-i18n="expWord">Word with tracked changes (.docx)</span></button> - <button type="button" class="menu-item" data-export="print" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><polyline points="6 9 6 2 18 2 18 9"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect width="12" height="8" x="6" y="14"/></svg><span data-i18n="expPdf">Print or save as PDF</span></button> - <button type="button" class="menu-item" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span data-i18n="expCopy">Copy text of the new version</span></button> + <div class="menu menu-right menu-export" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> + <div class="menu-group" role="group" aria-labelledby="exp-sec-final"> + <div class="menu-label menu-label-2line" id="exp-sec-final"><span data-i18n="expSecFinal">Final version</span><span class="menu-label-desc" id="exp-sec-final-desc" data-i18n="expSecFinalDesc">The new version with your decisions, without marks</span></div> + <button type="button" class="menu-item mi-2line" data-export="word-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWordFinal">Word (.docx)</span><span class="mi-desc" id="exp-desc-word-final"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="M9 15h6"/><path d="M9 18h4"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfFinal">PDF</span><span class="mi-desc" id="exp-desc-print-final" data-i18n="expPdfFinalDesc">A clean document; choose “Save as PDF” in the print dialog</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expCopy">Copy text of the new version</span><span class="mi-desc" id="exp-desc-copy" data-i18n="expCopyDesc">Plain text for email or other apps</span></span></button> + </div> + <div class="menu-sep" role="separator"></div> + <div class="menu-group" role="group" aria-labelledby="exp-sec-compare"> + <div class="menu-label menu-label-2line" id="exp-sec-compare"><span data-i18n="expSecCompare">Comparison</span><span class="menu-label-desc" data-i18n="expSecCompareDesc">Old → new with all marks, to review or pass on</span></div> + <button type="button" class="menu-item mi-2line" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWord">Word with tracked changes (.docx)</span><span class="mi-desc" id="exp-desc-word"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-split" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="18" height="16" x="3" y="4" rx="2"/><path d="M12 4v16"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfSplit">PDF side by side</span><span class="mi-desc" id="exp-desc-print-split" data-i18n="expPdfSplitDesc">Landscape, old and new version in two columns</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-inline" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="16" height="18" x="4" y="3" rx="2"/><path d="M8 8h8"/><path d="M8 12h8"/><path d="M8 16h5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfInline">PDF as running text</span><span class="mi-desc" id="exp-desc-print-inline" data-i18n="expPdfInlineDesc">Portrait, changes marked in the text</span></span></button> + </div> <div class="menu-sep" role="separator"></div> <button type="button" class="menu-item" role="menuitem" id="btn-more-formats" aria-expanded="false" aria-controls="more-formats"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="7" height="7" x="3" y="3" rx="1"/><rect width="7" height="7" x="14" y="3" rx="1"/><rect width="7" height="7" x="14" y="14" rx="1"/><rect width="7" height="7" x="3" y="14" rx="1"/></svg><span data-i18n="moreFormats">More formats</span><svg class="icon mi-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg></button> <div class="menu-sub" id="more-formats" role="group" aria-labelledby="btn-more-formats" hidden> <button type="button" class="menu-item" data-export="html" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M2 12h20"/><path d="M12 2a15 15 0 0 1 0 20a15 15 0 0 1 0-20"/></svg><span data-i18n="expHtml">Report as web page (.html)</span></button> <button type="button" class="menu-item" data-export="md" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg><span data-i18n="expMd">Report as Markdown (.md)</span></button> - <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">New version as text file (.txt)</span></button> + <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Final version as text file (.txt)</span></button> </div> </div> </div> @@ -3698,7 +3785,7 @@ <h2 id="how-title" data-i18n="howTitle">How it works</h2> <ol class="how-steps"> <li><span class="how-num" aria-hidden="true">1</span><span><strong data-i18n="how1Title">Choose two versions</strong> <span data-i18n="how1Text">As PDF, Word file or pasted text. The files are only read inside this browser tab.</span></span></li> <li><span class="how-num" aria-hidden="true">2</span><span><strong data-i18n="how2Title">Go through the changes</strong> <span data-i18n="how2Text">Removed text is struck through in red, added text is marked green. You can accept or reject each change.</span></span></li> - <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Save the result if you need it</strong> <span data-i18n="how3Text">As a Word file with tracked changes, as PDF or as a report.</span></span></li> + <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Save the result if you need it</strong> <span data-i18n="how3Text">As a clean final version (Word in the original format, or PDF) or as a comparison with tracked changes.</span></span></li> </ol> </section> @@ -3750,7 +3837,7 @@ <h2 id="faq-title" data-i18n="faqTitle">Frequently asked questions</h2> <details class="faq-item"> <summary data-i18n="faqWordQ">Can I keep working on the changes in Word?</summary> <div class="faq-answer" data-i18n-html="faqWordA"> - <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting.</p> + <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too.</p> </div> </details> <details class="faq-item"> @@ -4035,11 +4122,28 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> listBtnLabel: 'Änderungsliste ({n} Änderungen)', exportBtn: 'Exportieren', expWord: 'Word mit Änderungsverfolgung (.docx)', - expPdf: 'Drucken oder als PDF sichern', expHtml: 'Bericht als Webseite (.html)', expMd: 'Bericht als Markdown (.md)', expCopy: 'Text der neuen Fassung kopieren', - expTxt: 'Neue Fassung als Textdatei (.txt)', + expTxt: 'Endfassung als Textdatei (.txt)', + expSecFinal: 'Endfassung', + expSecFinalDesc: 'Neue Fassung mit Ihren Entscheidungen, ohne Markierungen', + expSecFinalOpen: 'Neue Fassung mit Ihren Entscheidungen – {n} offene Änderungen sind wie angenommen enthalten', + expSecFinalOpenOne: 'Neue Fassung mit Ihren Entscheidungen – 1 offene Änderung ist wie angenommen enthalten', + expSecCompare: 'Vergleich', + expSecCompareDesc: 'Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'Im Format Ihrer Datei „{name}“', + expWordFinalDescNew: 'Neu gesetzt, mit Überschriften und Nummerierung', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'Sauberes Dokument, im Druckdialog „Als PDF sichern“', + expCopyDesc: 'Reiner Text für E-Mail oder andere Programme', + expWordDesc: 'Offene Änderungen in Word annehmen oder ablehnen', + expWordDescOriginal: 'Im Format von „{name}“, offene Änderungen in Word annehmen oder ablehnen', + expPdfSplit: 'PDF nebeneinander', + expPdfSplitDesc: 'Querformat, alte und neue Fassung in zwei Spalten', + expPdfInline: 'PDF als Fließtext', + expPdfInlineDesc: 'Hochformat, Änderungen im Text markiert', moreLabel: 'Weitere Aktionen', clearBtn: 'Neuer Vergleich', textBtn: 'Text einfügen/bearbeiten', @@ -4058,6 +4162,8 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word-Datei gespeichert: {name}', + toastWordOriginal: 'Word-Datei im Originalformat gespeichert: {name}', + noticeWordFallback: 'Gespeichert: {name}. Das Originalformat ließ sich für diese Datei nicht sicher übernehmen (z. B. wegen Änderungen in Fußnoten oder Textfeldern). Die Word-Datei wurde deshalb neu gesetzt; der Text ist vollständig.', toastHtml: 'Bericht gespeichert: {name}', toastMd: 'Markdown-Bericht gespeichert: {name}', toastTxt: 'Textdatei gespeichert: {name}', @@ -4068,7 +4174,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> toastUndo: 'Rückgängig', toastUndone: 'Rückgängig gemacht', toastRedone: 'Wiederhergestellt', - copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Neue Fassung als Textdatei (.txt)“ unter „Weitere Formate“.', + copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Endfassung als Textdatei (.txt)“ unter „Weitere Formate“.', announceCompared: 'Vergleich fertig: {n} Änderungen. Mit J und K springen Sie von Änderung zu Änderung.', announceComparedOne: 'Vergleich fertig: 1 Änderung.', announceIdentical: 'Vergleich fertig: keine Textunterschiede.', @@ -4121,6 +4227,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> movedFromHere: 'Verschoben – von hier', movedToHere: 'Verschoben – hierher', moreDeltas: 'weitere Änderungen', + moreDeltasOne: 'weitere Änderung', pageLabel: 'Seite', pageShort: 'S.', pageOf: 'von', @@ -4160,7 +4267,11 @@ <h3>Lesen</h3> </section> <section class="help-sec"> <h3>Prüfen</h3> - <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft, springen zur nächsten offenen Änderung und Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück. Im Word-Export sind angenommene Änderungen übernommen, abgelehnte zurückgenommen und offene als nachverfolgte Änderungen eingetragen.</p> + <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft und springen zur nächsten offenen Änderung. Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück.</p> + </section> + <section class="help-sec"> + <h3>Exportieren</h3> + <p><strong>Endfassung</strong>: die neue Fassung mit allen Entscheidungen und Bearbeitungen, ohne Markierungen – als Word-Datei (bei einer Word-Datei als neuer Fassung in deren Originalformat), als PDF oder als Text. Noch offene Änderungen sind darin wie angenommen enthalten. <strong>Vergleich</strong>: alt → neu mit Markierungen – als Word-Datei mit Änderungsverfolgung (angenommene Änderungen übernommen, abgelehnte zurückgenommen, offene zum Annehmen oder Ablehnen) oder als PDF nebeneinander bzw. als Fließtext.</p> </section> <section class="help-sec"> <h3>Tastenkürzel</h3> @@ -4249,6 +4360,7 @@ <h3>Ihre Daten</h3> exportTitleFmt: 'Vergleich: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} Änderungen ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', + exportCountsFmtOne: '1 Änderung ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', exportReviewFmt: '{k} von {n} geprüft ({a} angenommen, {r} abgelehnt)', exportLabelOriginal: 'Alte Fassung', exportLabelRevised: 'Neue Fassung', @@ -4260,9 +4372,9 @@ <h3>Ihre Daten</h3> exportLabelDetail: 'Angabe', exportScopeFull: 'Vollständiges Dokument', exportScopeChanges: 'Nur Änderungen (Filter „Nur Änderungen“ aktiv, unveränderte Absätze ausgelassen)', - exportHfIgnored: 'ausgeblendet (nicht verglichen)', - exportHfIgnoredCount: 'ausgeblendet ({n} Zeilen nicht verglichen)', - exportHfIncluded: 'mitverglichen', + exportHfIgnored: 'unveränderte ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIgnoredCount: '{n} unveränderte Zeilen ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIncluded: 'vollständig mitverglichen', exportSummaryHeading: 'Zusammenfassung', exportCountTotal: 'Änderungen gesamt', exportChangesHeading: 'Änderungsübersicht', @@ -4283,8 +4395,10 @@ <h3>Ihre Daten</h3> a11yAddedStart: '[hinzugefügt:', a11yAddedEnd: ']', docxSubject: 'Vergleich mit nachverfolgten Änderungen', - docxNote: 'Offene Abweichungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen. In Doc Diff angenommene Änderungen sind bereits übernommen, abgelehnte bereits zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen.', - exportFileFinal: 'Neue_Fassung', + docxSubjectFinal: 'Endfassung', + docxNote: 'Offene Änderungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen, angenommene bereits übernommen, abgelehnte zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen. Diesen Kommentar können Sie löschen.', + docxHfHeading: 'Geänderte Kopf-/Fußzeilen (nicht im Fließtext):', + exportFileFinal: 'Endfassung', exportFileRedline: 'Vergleich', exportFileReport: 'Bericht', sampleLeftName: 'Vertrag_v1_Vorher.docx', @@ -4314,7 +4428,7 @@ <h3>Ihre Daten</h3> how2Title: 'Änderungen durchgehen', how2Text: 'Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.', how3Title: 'Ergebnis sichern, wenn Sie es brauchen', - how3Text: 'Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.', + how3Text: 'Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.', scopeTitle: 'Was es kann – und was nicht', scopeCanTitle: 'Kann', scopeCan1: 'PDFs mit Textebene, Word-Dateien (.docx) und reinen Text vergleichen – auch gemischt, etwa PDF mit Word', @@ -4346,7 +4460,7 @@ <h3>Ihre Daten</h3> `, faqWordQ: 'Kann ich die Änderungen in Word weiterbearbeiten?', faqWordA: ` - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> `, metaTitle: 'Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload', otherPageHint: 'Diese Seite gibt es auch auf Deutsch →', @@ -4408,11 +4522,28 @@ <h3>Ihre Daten</h3> listBtnLabel: 'List of changes ({n} changes)', exportBtn: 'Export', expWord: 'Word with tracked changes (.docx)', - expPdf: 'Print or save as PDF', expHtml: 'Report as web page (.html)', expMd: 'Report as Markdown (.md)', expCopy: 'Copy text of the new version', - expTxt: 'New version as text file (.txt)', + expTxt: 'Final version as text file (.txt)', + expSecFinal: 'Final version', + expSecFinalDesc: 'The new version with your decisions, without marks', + expSecFinalOpen: 'The new version with your decisions – {n} open changes are included as accepted', + expSecFinalOpenOne: 'The new version with your decisions – 1 open change is included as accepted', + expSecCompare: 'Comparison', + expSecCompareDesc: 'Old → new with all marks, to review or pass on', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'In the format of your file “{name}”', + expWordFinalDescNew: 'Newly typeset, with headings and numbering', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'A clean document; choose “Save as PDF” in the print dialog', + expCopyDesc: 'Plain text for email or other apps', + expWordDesc: 'Accept or reject the open changes in Word', + expWordDescOriginal: 'In the format of “{name}”; accept or reject the open changes in Word', + expPdfSplit: 'PDF side by side', + expPdfSplitDesc: 'Landscape, old and new version in two columns', + expPdfInline: 'PDF as running text', + expPdfInlineDesc: 'Portrait, changes marked in the text', moreLabel: 'More actions', clearBtn: 'New comparison', textBtn: 'Paste or edit text', @@ -4431,6 +4562,8 @@ <h3>Ihre Daten</h3> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word file saved: {name}', + toastWordOriginal: 'Word file saved in the original format: {name}', + noticeWordFallback: 'Saved: {name}. The original format could not be kept reliably for this file (for example because of changes in footnotes or text boxes), so the Word file was typeset anew; the text is complete.', toastHtml: 'Report saved: {name}', toastMd: 'Markdown report saved: {name}', toastTxt: 'Text file saved: {name}', @@ -4441,7 +4574,7 @@ <h3>Ihre Daten</h3> toastUndo: 'Undo', toastUndone: 'Undone', toastRedone: 'Redone', - copyFailed: 'Copying to the clipboard is not possible here. Please use “New version as text file (.txt)” under “More formats” instead.', + copyFailed: 'Copying to the clipboard is not possible here. Please use “Final version as text file (.txt)” under “More formats” instead.', announceCompared: 'Comparison ready: {n} changes. Press J and K to move between changes.', announceComparedOne: 'Comparison ready: 1 change.', announceIdentical: 'Comparison ready: no text differences.', @@ -4494,6 +4627,7 @@ <h3>Ihre Daten</h3> movedFromHere: 'Moved – from here', movedToHere: 'Moved – to here', moreDeltas: 'more changes', + moreDeltasOne: 'more change', pageLabel: 'Page', pageShort: 'p.', pageOf: 'of', @@ -4533,7 +4667,11 @@ <h3>Reading</h3> </section> <section class="help-sec"> <h3>Reviewing</h3> - <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed, move on to the next open change A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back. In the Word export, accepted changes are applied, rejected ones are reverted and open ones are recorded as tracked changes.</p> + <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed and move on to the next open change. A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back.</p> + </section> + <section class="help-sec"> + <h3>Exporting</h3> + <p><strong>Final version</strong>: the new version with every decision and edit applied, without marks – as a Word file (in the original format when the new version is a Word file), as PDF or as text. Changes that are still open are included as if accepted. <strong>Comparison</strong>: old → new with marks – as a Word file with tracked changes (accepted changes applied, rejected ones reverted, open ones to accept or reject) or as PDF side by side or as running text.</p> </section> <section class="help-sec"> <h3>Keyboard shortcuts</h3> @@ -4622,6 +4760,7 @@ <h3>Your data</h3> exportTitleFmt: 'Comparison: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} changes ({mod} changed, {ins} added, {del} removed)', + exportCountsFmtOne: '1 change ({mod} changed, {ins} added, {del} removed)', exportReviewFmt: '{k} of {n} reviewed ({a} accepted, {r} rejected)', exportLabelOriginal: 'Old version', exportLabelRevised: 'New version', @@ -4633,9 +4772,9 @@ <h3>Your data</h3> exportLabelDetail: 'Detail', exportScopeFull: 'Full document', exportScopeChanges: 'Changes only (“Changes only” filter active, unchanged paragraphs omitted)', - exportHfIgnored: 'hidden (not compared)', - exportHfIgnoredCount: 'hidden ({n} lines not compared)', - exportHfIncluded: 'included in the comparison', + exportHfIgnored: 'unchanged ones hidden; changed ones are listed as changes', + exportHfIgnoredCount: '{n} unchanged lines hidden; changed ones are listed as changes', + exportHfIncluded: 'fully compared', exportSummaryHeading: 'Summary', exportCountTotal: 'Total changes', exportChangesHeading: 'List of changes', @@ -4656,8 +4795,10 @@ <h3>Your data</h3> a11yAddedStart: '[added:', a11yAddedEnd: ']', docxSubject: 'Comparison with tracked changes', - docxNote: 'Open differences are recorded as tracked changes (author “Doc Diff”). Changes accepted in Doc Diff are already applied, rejected ones already reverted. In Word, use Review › Accept / Reject to process them one by one or all at once.', - exportFileFinal: 'New_version', + docxSubjectFinal: 'Final version', + docxHfHeading: 'Changed headers/footers (not in the body text):', + docxNote: 'Open changes are recorded as tracked changes (author “Doc Diff”); accepted ones are already applied, rejected ones reverted. In Word, use Review › Accept / Reject one by one or all at once. You can delete this comment.', + exportFileFinal: 'final', exportFileRedline: 'Comparison', exportFileReport: 'Report', sampleLeftName: 'Contract_v1_Before.docx', @@ -4687,7 +4828,7 @@ <h3>Your data</h3> how2Title: 'Go through the changes', how2Text: 'Removed text is struck through in red, added text is marked green. You can accept or reject each change.', how3Title: 'Save the result if you need it', - how3Text: 'As a Word file with tracked changes, as PDF or as a report.', + how3Text: 'As a clean final version (Word in the original format, or PDF) or as a comparison with tracked changes.', scopeTitle: 'What it can do – and what it can’t', scopeCanTitle: 'Can', scopeCan1: 'Compare PDFs with a text layer, Word files (.docx) and plain text – also mixed, e.g. a PDF against a Word file', @@ -4719,12 +4860,12 @@ <h3>Your data</h3> `, faqWordQ: 'Can I keep working on the changes in Word?', faqWordA: ` - <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting.</p> + <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too.</p> `, metaTitle: 'Doc Diff – Compare PDF and Word documents without uploading', otherPageHint: 'This page is also available in English →', metaDescription: 'Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads.', - ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface).', + ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green.', footerSource: 'Source code on GitHub', githubMenu: 'Source code on GitHub', footerLicense: 'MIT licence', @@ -5066,6 +5207,8 @@ <h3>Your data</h3> rightName: '', leftFormat: '', rightFormat: '', + // The .docx files as loaded ({ name, bytes, importedText }): the Word export keeps their format. + docSources: { left: null, right: null }, alignedRows: [], changeRows: [], listItems: [], @@ -5336,7 +5479,8 @@ <h3>Your data</h3> const meta = []; if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf'); if (block.indent > 0) meta.push(`lvl=${block.indent}`); - return metaLine(meta.join(';'), block.text); + // A heading marker ("## ") from the source stays, so a rewritten text keeps its structure. + return metaLine(meta.join(';'), (block.headingMarker || '') + block.text); } function parseLineMeta(line) { @@ -5958,8 +6102,11 @@ <h3>Your data</h3> (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) >= 2); const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter); + let headingMarker = ''; if (!isHeaderFooter) { seenContentBlock = true; + const m = line.match(/^#{1,3}\s+/); + if (m) headingMarker = `${m[0].trim()} `; line = line.replace(/^#{1,3}\s+/, '').trim(); if (!line) continue; } @@ -5991,6 +6138,7 @@ <h3>Your data</h3> sectionRef: currentSectionRef, text: line, kind, + headingMarker, indent: entry.indent, isHeading, isHeaderFooter, @@ -6383,9 +6531,11 @@ <h3>Your data</h3> } } - const cleaned = mergedNums - .filter(tok => tok.value.length > 0) - .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })); + const cleaned = mergeFragmentedChanges( + mergedNums + .filter(tok => tok.value.length > 0) + .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })) + ); if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned; // Never show a diff that does not reproduce the source texts: fall back to the raw diff. @@ -6394,6 +6544,84 @@ <h3>Your data</h3> ); } +/** + * Joins changes that only an unchanged hyphen or space separates into one replacement, so a + * rewritten phrase reads as one change instead of misleading word pairs: + * "[Standard]→[Echtzeit]-[Berichtswesen]→[Nachtragsmanagement]" becomes + * "[Standard-Berichtswesen]→[Echtzeit-Nachtragsmanagement]". The joined glue goes into both + * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of + * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared + * by both sides at the edges stays unchanged. + */ +function mergeFragmentedChanges(parts) { + const isChange = tok => Boolean(tok && (tok.removed || tok.added)); + const glued = []; + for (let i = 0; i < parts.length; i++) { + const cur = parts[i]; + const isGlue = + !isChange(cur) && + isChange(glued[glued.length - 1]) && + isChange(parts[i + 1]) && + (/^\s+$/.test(cur.value) || !/\s/.test(cur.value)); + if (isGlue) { + glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true }); + } else { + glued.push(cur); + } + } + + const out = []; + const pushEqual = value => { + if (!value) return; + const last = out[out.length - 1]; + if (last && !isChange(last)) last.value += value; + else out.push({ value }); + }; + let i = 0; + while (i < glued.length) { + if (!isChange(glued[i])) { + pushEqual(glued[i].value); + i++; + continue; + } + let rem = ''; + let add = ''; + while (i < glued.length && isChange(glued[i])) { + if (glued[i].removed) rem += glued[i].value; + else add += glued[i].value; + i++; + } + let lead = ''; + let trail = ''; + if (rem && add) { + const leadRem = rem.match(/^\s*/)[0]; + const leadAdd = add.match(/^\s*/)[0]; + while (lead.length < Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) { + lead += leadRem[lead.length]; + } + rem = rem.slice(lead.length); + add = add.slice(lead.length); + const trailRem = rem.match(/\s*$/)[0]; + const trailAdd = add.match(/\s*$/)[0]; + let n = 0; + while ( + n < Math.min(trailRem.length, trailAdd.length) && + trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n] + ) { + n++; + } + trail = n ? rem.slice(rem.length - n) : ''; + rem = rem.slice(0, rem.length - n); + add = add.slice(0, add.length - n); + } + pushEqual(lead); + if (rem) out.push({ value: rem, removed: true }); + if (add) out.push({ value: add, added: true }); + pushEqual(trail); + } + return out; +} + function coalesceSideTokens(sideParts, prop) { const out = []; for (let i = 0; i < sideParts.length; i++) { @@ -7413,6 +7641,7 @@ <h3>Your data</h3> state.rightName = t('sampleRightName'); state.rightFormat = 'DEMO'; state.rightText = sample.v2; + state.docSources = { left: null, right: null }; resetEditHistory(); runComparison(); } @@ -7423,11 +7652,13 @@ <h3>Your data</h3> state.leftText = ''; state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; document.getElementById('file-input-left').value = ''; } else { state.rightText = ''; state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; resetEditHistory(); document.getElementById('file-input-right').value = ''; } @@ -7800,6 +8031,11 @@ <h3>Your data</h3> return pairs; } +// "1 weitere Änderung" / "2 weitere Änderungen" (the number is written by the caller). +function moreDeltasText(n) { + return n === 1 ? t('moreDeltasOne') : t('moreDeltas'); +} + // Word diffs of a list item: the row's own, or (rejected change) recomputed from what was rejected. const ghostDiffCache = new WeakMap(); function getItemWordDiffs(item) { @@ -8011,7 +8247,7 @@ <h3>Your data</h3> const pageLabel = pages.length > 1 ? `${t('pageShort')} ${Math.min(...pages)}–${Math.max(...pages)}` : `${t('pageShort')} ${page}`; const head = item.members ? `${ref} · ${pageLabel}` : [ref, pageLabel].filter(Boolean).join(' · '); const delta = renderSidebarDeltaHtml(item); - const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(t('moreDeltas'))}</span></span>` : ''; + const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(moreDeltasText(delta.more))}</span></span>` : ''; return `<div class="nav-item ${cls} is-${item.status}${isActive ? ' is-active' : ''}" data-row-id="${item.rowId}" data-item-id="${item.id}"><button type="button" class="nav-item-main" tabindex="${item.id === focusId ? 0 : -1}"${isActive ? ' aria-current="true"' : ''}><span class="nav-item-head"><span class="nav-item-ref">${escapeHtml(head)}</span>${moreHtml}${statusIcon}<span class="sr-only">, ${escapeHtml(getChangeTypeLabel(item))}, ${escapeHtml(getStatusLabel(item.status))}. </span></span>${delta.html}</button></div>`; }) .join('') @@ -8025,7 +8261,7 @@ <h3>Your data</h3> // Replaced at build time by scripts/build.py with jsdiff + 04-core.js + 04a-align.js + // src/worker/compare-worker.js as a string literal. -const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n return metaLine(meta.join(';'), block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n if (!isHeaderFooter) {\n seenContentBlock = true;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }));\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; +const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n // A heading marker (\"## \") from the source stays, so a rewritten text keeps its structure.\n return metaLine(meta.join(';'), (block.headingMarker || '') + block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n let headingMarker = '';\n if (!isHeaderFooter) {\n seenContentBlock = true;\n const m = line.match(/^#{1,3}\\s+/);\n if (m) headingMarker = `${m[0].trim()} `;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n headingMarker,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergeFragmentedChanges(\n mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }))\n );\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\n/**\n * Joins changes that only an unchanged hyphen or space separates into one replacement, so a\n * rewritten phrase reads as one change instead of misleading word pairs:\n * \"[Standard]\u2192[Echtzeit]-[Berichtswesen]\u2192[Nachtragsmanagement]\" becomes\n * \"[Standard-Berichtswesen]\u2192[Echtzeit-Nachtragsmanagement]\". The joined glue goes into both\n * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of\n * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared\n * by both sides at the edges stays unchanged.\n */\nfunction mergeFragmentedChanges(parts) {\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n const glued = [];\n for (let i = 0; i \u003c parts.length; i++) {\n const cur = parts[i];\n const isGlue =\n !isChange(cur) &&\n isChange(glued[glued.length - 1]) &&\n isChange(parts[i + 1]) &&\n (/^\\s+$/.test(cur.value) || !/\\s/.test(cur.value));\n if (isGlue) {\n glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true });\n } else {\n glued.push(cur);\n }\n }\n\n const out = [];\n const pushEqual = value =\u003e {\n if (!value) return;\n const last = out[out.length - 1];\n if (last && !isChange(last)) last.value += value;\n else out.push({ value });\n };\n let i = 0;\n while (i \u003c glued.length) {\n if (!isChange(glued[i])) {\n pushEqual(glued[i].value);\n i++;\n continue;\n }\n let rem = '';\n let add = '';\n while (i \u003c glued.length && isChange(glued[i])) {\n if (glued[i].removed) rem += glued[i].value;\n else add += glued[i].value;\n i++;\n }\n let lead = '';\n let trail = '';\n if (rem && add) {\n const leadRem = rem.match(/^\\s*/)[0];\n const leadAdd = add.match(/^\\s*/)[0];\n while (lead.length \u003c Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) {\n lead += leadRem[lead.length];\n }\n rem = rem.slice(lead.length);\n add = add.slice(lead.length);\n const trailRem = rem.match(/\\s*$/)[0];\n const trailAdd = add.match(/\\s*$/)[0];\n let n = 0;\n while (\n n \u003c Math.min(trailRem.length, trailAdd.length) &&\n trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n]\n ) {\n n++;\n }\n trail = n ? rem.slice(rem.length - n) : '';\n rem = rem.slice(0, rem.length - n);\n add = add.slice(0, add.length - n);\n }\n pushEqual(lead);\n if (rem) out.push({ value: rem, removed: true });\n if (add) out.push({ value: add, added: true });\n pushEqual(trail);\n }\n return out;\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; // Small inputs are compared synchronously: alignment takes a few milliseconds and the result is // on screen in the same frame (no flash of the previous comparison, and synchronous callers such @@ -9769,6 +10005,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: template ? template.kind : 'p', + headingMarker: template ? template.headingMarker : '', indent: template ? template.indent : 0, isHeaderFooter: Boolean(target && target.rightBlock && target.rightBlock.isHeaderFooter), }) @@ -9830,6 +10067,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: row.rightBlock.kind, + headingMarker: row.rightBlock.headingMarker, indent: row.rightBlock.indent, isHeaderFooter: Boolean(row.rightBlock.isHeaderFooter), }) @@ -10303,32 +10541,34 @@ <h3>Your data</h3> return replaced.concat(tokens.slice(1)); } +function isHeaderFooterBlock(block) { + return Boolean(block && (block.isHeaderFooter || block.kind === 'hf')); +} + /** - * Builds the WordprocessingML body for the comparison. Pure function of `rows` and `meta` - * so it can be unit-tested without a browser. + * Builds the WordprocessingML body. Pure function of `rows` and `meta` so it can be unit-tested + * without a browser. + * meta.kind 'tracked' (default): open changes as tracked changes, accepted ones applied + * meta.kind 'final': the new version only, without any marks + * The body is the document text and nothing else: running headers and footers of the source + * (page furniture of a PDF) are left out, so "Accept all" in Word yields a clean document. + * meta.comment (lines of text) becomes a Word comment on the first paragraph. */ function buildDocxDocumentXml(rows, meta) { const date = toWordDate(meta.date); + const final = meta.kind === 'final'; let revId = 1; const revAttrs = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; const paragraphs = []; - const metaPara = (label, value) => - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/></w:pPr>${docxRun(`${label}: `, false, '<w:b/>')}${docxRun(value)}</w:p>`; - - paragraphs.push(`<w:p><w:pPr><w:pStyle w:val="Title"/></w:pPr>${docxRun(meta.title)}</w:p>`); - for (const [label, value] of meta.lines) paragraphs.push(metaPara(label, value)); - paragraphs.push( - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/><w:pBdr><w:bottom w:val="single" w:sz="6" w:space="6" w:color="A6A6A6"/></w:pBdr><w:spacing w:after="360"/></w:pPr>${docxRun(meta.note, false, '<w:i/>')}</w:p>` - ); - for (const row of rows) { const block = row.rightBlock || row.leftBlock; + if (isHeaderFooterBlock(block)) continue; const style = docxStyleForBlock(block); // Word semantics: a change accepted in Doc Diff is plain text (an accepted deletion is // simply gone); open changes become tracked changes. Rejected changes are already reverted - // in the rows (they compare as unchanged). - const accepted = row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'; + // in the rows (they compare as unchanged). The final version applies every change. + const accepted = final || (row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'); if (accepted && !row.rightBlock) continue; const tokens = docxApplyMarkerTab( accepted ? [{ value: cleanExportText(row.rightBlock.text) }] : getExportDiffTokens(row), @@ -10352,7 +10592,16 @@ <h3>Your data</h3> return docxRun(tok.value, false); }) .join(''); - paragraphs.push(`<w:p>${pPr}${runs}</w:p>`); + paragraphs.push({ pPr, runs }); + } + if (!paragraphs.length) paragraphs.push({ pPr: '', runs: '' }); + + if (meta.comment && meta.comment.length) { + const first = paragraphs[0]; + first.runs = + '<w:commentRangeStart w:id="0"/>' + + first.runs + + '<w:commentRangeEnd w:id="0"/><w:r><w:commentReference w:id="0"/></w:r>'; } const sectPr = @@ -10365,7 +10614,23 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - `<w:body>${paragraphs.join('')}${sectPr}</w:body></w:document>` + `<w:body>${paragraphs.map(p => `<w:p>${p.pPr}${p.runs}</w:p>`).join('')}${sectPr}</w:body></w:document>` + ); +} + +/** The Word comment with the summary of a comparison (one paragraph per line). */ +function buildDocxCommentsXml(meta) { + const date = toWordDate(meta.date); + const paras = meta.comment + .map((line, i) => + `<w:p>${i === 0 ? '<w:r><w:annotationRef/></w:r>' : ''}${docxRun(line, false, i === 0 ? '<w:b/>' : '')}</w:p>` + ) + .join(''); + return ( + '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + + '<w:comments xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' + + `<w:comment w:id="0" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}" w:initials="DD">${paras}</w:comment>` + + '</w:comments>' ); } @@ -10374,9 +10639,7 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:ftr xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:tabs><w:tab w:val="right" w:pos="9072"/></w:tabs></w:pPr>' + - docxRun(meta.footer) + - '<w:r><w:tab/></w:r>' + + '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:jc w:val="right"/></w:pPr>' + docxRun(`${meta.pageLabel} `) + '<w:fldSimple w:instr=" PAGE "><w:r><w:t>1</w:t></w:r></w:fldSimple>' + docxRun(` ${meta.pageOfLabel} `) + @@ -10420,7 +10683,8 @@ <h3>Your data</h3> function buildDocxPackageFiles(rows, meta) { const langTag = meta.lang === 'de' ? 'de-DE' : 'en-US'; const created = toWordDate(meta.date); - return [ + const hasComment = Boolean(meta.comment && meta.comment.length); + const files = [ { name: '[Content_Types].xml', data: @@ -10432,6 +10696,7 @@ <h3>Your data</h3> '<Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>' + '<Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/>' + '<Override PartName="/word/footer1.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml"/>' + + (hasComment ? '<Override PartName="/word/comments.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml"/>' : '') + '<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>' + '<Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>' + '</Types>', @@ -10455,6 +10720,7 @@ <h3>Your data</h3> 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' + `<dc:title>${escapeXml(meta.title)}</dc:title>` + `<dc:subject>${escapeXml(meta.subject)}</dc:subject>` + + (meta.description ? `<dc:description>${escapeXml(meta.description)}</dc:description>` : '') + `<dc:creator>${DOCX_AUTHOR}</dc:creator>` + `<cp:lastModifiedBy>${DOCX_AUTHOR}</cp:lastModifiedBy>` + `<dc:language>${langTag}</dc:language>` + @@ -10477,6 +10743,7 @@ <h3>Your data</h3> '<Relationship Id="rIdStyles" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>' + '<Relationship Id="rIdSettings" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>' + '<Relationship Id="rIdFooter1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>' + + (hasComment ? '<Relationship Id="rIdComments" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" Target="comments.xml"/>' : '') + '</Relationships>', }, { name: 'word/document.xml', data: buildDocxDocumentXml(rows, meta) }, @@ -10492,37 +10759,66 @@ <h3>Your data</h3> }, { name: 'word/footer1.xml', data: buildDocxFooterXml(meta) }, ]; + if (hasComment) files.push({ name: 'word/comments.xml', data: buildDocxCommentsXml(meta) }); + return files; } -/** Builds the complete .docx file (Uint8Array) for the current comparison state. */ -function buildDocxRedline(date = new Date()) { - const counts = getExportCounts(); +/** + * Summary of the comparison for the Word comment of the tracked export: the documents, the + * counts, the review status, how to work with the marks, and the header/footer changes (they + * are not in the body text). + */ +function buildDocxSummaryLines(date) { + const items = getExportItems(); + const counts = getExportCounts(items); const lines = [ - [t('exportLabelOriginal'), getDisplayDocName('left')], - [t('exportLabelRevised'), getDisplayDocName('right')], - [t('exportLabelCreated'), formatExportDate(date)], - [t('exportLabelChanges'), formatExportCountsLine(counts)], + getExportTitle(), + `${t('exportLabelCreated')}: ${formatExportDate(date)}`, + `${t('exportLabelChanges')}: ${formatExportCountsLine(counts)}`, ]; - const review = getExportReviewLine(); - if (review) lines.push([t('exportLabelReview'), review]); - lines.push([t('exportLabelHf'), state.ignoreHeadersFooters ? t('exportHfIgnored') : t('exportHfIncluded')]); + const review = getExportReviewLine(counts); + if (review) lines.push(`${t('exportLabelReview')}: ${review}`); + lines.push(t('docxNote')); + const hf = items.filter(item => isHeaderFooterItem(item) && item.status !== 'rejected'); + if (hf.length) { + lines.push(t('docxHfHeading')); + for (const item of hf) { + const { pairs } = getRowChangeSummary(item, 80); + const change = pairs.map(p => (p.del && p.ins ? `${p.del} → ${p.ins}` : p.ins || p.del)).join('; '); + lines.push(`${getExportItemRef(item)} (${getExportItemPageLabel(item)}, ${getExportStatusLabel(item.status)}): ${change}`); + } + } + return lines; +} + +/** + * The newly typeset Word file (Uint8Array) for the current comparison state: + * 'tracked' – "Accept all" in Word yields the new version (with the rejections applied), + * "Reject all" the old version with the accepted changes applied + * 'final' – the new version with every decision and edit applied, no marks + */ +function buildGeneratedDocx(kind, date = new Date()) { + const counts = getExportCounts(); const meta = { + kind, lang: state.lang, date, - title: getExportTitle(), - subject: t('docxSubject'), - lines, + title: kind === 'final' ? getDisplayDocName('right') : getExportTitle(), + subject: t(kind === 'final' ? 'docxSubjectFinal' : 'docxSubject'), + description: kind === 'final' ? '' : formatExportCountsLine(counts), reviewStatusOf: row => row.reviewStatus || '', - note: t('docxNote'), - footer: `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`, + comment: kind === 'final' ? null : buildDocxSummaryLines(date), pageLabel: t('pageLabel'), pageOfLabel: t('pageOf'), }; - // The document is always complete: "Accept all" in Word yields the new version (with the - // rejections applied), "Reject all" the old version with the accepted changes applied. return buildZipArchive(buildDocxPackageFiles(state.alignedRows, meta), date); } +// Kept for callers and tests written against the earlier name. +function buildDocxRedline(date = new Date()) { + return buildGeneratedDocx('tracked', date); +} + /* ── Client-Side Multi-Format Export Engine (copy, .txt, .docx, print/PDF, HTML, Markdown) ── */ function downloadBlob(content, mimeType, filename) { @@ -10605,23 +10901,17 @@ <h3>Your data</h3> } /** - * The changes of the comparison with their review status, in document order: the list items - * (including rejected changes) when the review index is current, otherwise the change rows. + * The changes of the comparison with their review status, exactly as the change list shows them + * (same order, same count: an identical header/footer change on several pages is one change), + * including rejected changes. Falls back to the change rows while the review index is not current. */ function getExportItems() { if ( Array.isArray(state.listItems) && state.listItems.length && - state.listItems.every(i => state.alignedRows.includes(i.row)) + state.listItems.every(i => itemMembers(i).every(m => state.alignedRows.includes(m.row))) ) { - // Exports follow the document: every occurrence of a merged header/footer change, in - // document order (the list shows those after the body changes). - const pos = new Map(state.alignedRows.map((r, i) => [r.id, i])); - return state.listItems - .flatMap(item => (item.members ? item.members : [item])) - .map(item => ({ ...item, members: undefined })) - .sort((a, b) => pos.get(a.rowId) - pos.get(b.rowId) || (a.sub || 0) - (b.sub || 0)) - .map((item, i) => ({ ...item, index: i + 1 })); + return state.listItems.map((item, i) => ({ ...item, index: i + 1 })); } return state.changeRows.map((row, i) => ({ id: row.id, @@ -10658,13 +10948,24 @@ <h3>Your data</h3> return status === 'accepted' ? t('statusAccepted') : status === 'rejected' ? t('statusRejected') : t('statusOpen'); } +/** Reference as the change list shows it ("§ 1 (2)", "Kopf-/Fußzeile – auf 3 Seiten …"). */ function getExportItemRef(item) { - if (item.ghost) return item.ghost.refCode || ''; - return getRowRefCode(item.row); + return getItemRef(item); +} + +/** "S. 2" or, for a change on several pages, "S. 1–3". */ +function getExportItemPages(item) { + const pages = itemMembers(item).map(m => getItemPage(m)); + const min = Math.min(...pages); + const max = Math.max(...pages); + return min === max ? String(min) : `${min}–${max}`; +} +function getExportItemPageLabel(item) { + return `${t('pageShort')} ${getExportItemPages(item)}`; } function formatExportCountsLine(c) { - return tf('exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); + return tf(c.total === 1 ? 'exportCountsFmtOne' : 'exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); } function formatExportDate(date) { @@ -10698,7 +10999,7 @@ <h3>Your data</h3> if (row.type === 'equal') { return row.ghostNote ? `${t('statusRejected')} · ${t('exportRejectedNote')}` : ''; } - const parts = [getRowTypeLabel(row), getRowRefCode(row)].filter(Boolean); + const parts = [getRowTypeLabel(row), getDisplayRef(row)].filter(Boolean); if (row.reviewStatus === 'accepted') parts.push(t('statusAccepted')); return parts.join(' · '); } @@ -10812,11 +11113,7 @@ <h3>Your data</h3> * furniture and are always left out, whether or not the header/footer filter is active. */ function buildFinalText() { - const blocks = state.alignedRows.length - ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) - : parseIntoBlocks(state.rightText || ''); - return blocks - .filter(b => !b.isHeaderFooter && !isInternalMarkerLine(b.text)) + return getFinalBlocks() .map(b => cleanExportText(b.text).trim()) .filter(Boolean) .join('\n\n'); @@ -10848,7 +11145,7 @@ <h3>Your data</h3> if (p.ins) return renderReportTokensHtml([{ value: p.ins, added: true }]); return renderReportTokensHtml([{ value: p.del, removed: true }]); }); - if (more) items.push(`<span class="more">+${more} ${escapeHtml(t('moreDeltas'))}</span>`); + if (more) items.push(`<span class="more">+${more} ${escapeHtml(moreDeltasText(more))}</span>`); return items.map(html => `<div>${html}</div>`).join(''); } @@ -10917,13 +11214,22 @@ <h3>Your data</h3> const items = getExportItems(); const counts = getExportCounts(items); const title = getExportTitle(); - // Anchors: every changed row, and the row a rejected change was restored to. + // Anchors: every changed row (all pages of a merged header/footer change), and the row a + // rejected change was restored to. The first row of a change carries its id. const anchorIndex = new Map(); items.forEach((item, i) => { - if (item.ghost && item.type === 'inserted') return; - if (!anchorIndex.has(item.rowId)) anchorIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) { + if (m.ghost && m.type === 'inserted') continue; + if (!anchorIndex.has(m.rowId)) anchorIndex.set(m.rowId, i + 1); + } }); - const anchorFor = row => `c${anchorIndex.get(row.id)}`; + const anchorUsed = new Set(); + const anchorFor = row => { + const n = anchorIndex.get(row.id); + if (!n || anchorUsed.has(n)) return ''; + anchorUsed.add(n); + return ` id="c${n}"`; + }; const reviewLine = getExportReviewLine(counts); const changeListHtml = items.length @@ -10935,10 +11241,9 @@ <h3>Your data</h3> .map((item, i) => { const n = i + 1; const ref = getExportItemRef(item) || `#${n}`; - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; - const target = item.ghost && item.type === 'inserted' ? 0 : anchorIndex.get(item.rowId); + const target = itemMembers(item).some(m => anchorIndex.get(m.rowId) === n) ? n : 0; const refHtml = target ? `<a href="#c${target}">${escapeHtml(ref)}</a>` : escapeHtml(ref); - return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(t('pageShort'))} ${page}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; + return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(getExportItemPageLabel(item))}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; }) .join('\n')} </tbody> @@ -10954,7 +11259,7 @@ <h3>Your data</h3> const inner = renderReportTokensHtml(getExportDiffTokens(row)); const tag = kind === 'h1' ? 'h3' : kind === 'h2' ? 'h4' : kind === 'h3' ? 'h5' : 'p'; const tagText = getRowReportTag(row); - const idAttr = anchorIndex.has(row.id) ? ` id="${anchorFor(row)}"` : ''; + const idAttr = anchorFor(row); const tagHtml = tagText ? `<span class="row-tag"><a href="#changes">${escapeHtml(tagText)}</a></span>` : ''; return `<div class="row ${row.type} kind-${kind}"${idAttr}>${tagHtml}<${tag}>${inner}</${tag}></div>`; }) @@ -11095,7 +11400,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> const counts = getExportCounts(items); const changeIndex = new Map(); items.forEach((item, i) => { - if (!item.ghost && !changeIndex.has(item.rowId)) changeIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) if (!m.ghost && !changeIndex.has(m.rowId)) changeIndex.set(m.rowId, i + 1); }); const reviewLine = getExportReviewLine(counts); const lines = [ @@ -11129,11 +11434,10 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (p.ins) return renderMarkdownTokens([{ value: p.ins, added: true }]); return renderMarkdownTokens([{ value: p.del, removed: true }]); }) - .concat(more ? [`+${more} ${escapeMarkdownInline(t('moreDeltas'))}`] : []) + .concat(more ? [`+${more} ${escapeMarkdownInline(moreDeltasText(more))}`] : []) .join('<br>'); - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; lines.push( - `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${page} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` + `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${getExportItemPages(item)} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` ); } } else { @@ -11179,11 +11483,16 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `<td class="pv-cell kind-${kind}">${html}</td>`; } -/** Builds a print-only, paginated rendering of the comparison for the current view mode. */ -function buildPrintViewHtml(date = new Date()) { +/** + * Builds a print-only, paginated rendering. kind: 'split' (old and new side by side, landscape), + * 'inline' (one column with the marks in the text, portrait) or 'final' (the new version with + * every decision applied, as a clean document). + */ +function buildPrintViewHtml(date = new Date(), kind = state.viewMode) { + if (kind === 'final') return buildFinalPrintHtml(); const rows = getExportBodyRows(); const counts = getExportCounts(); - const mode = state.viewMode; + const mode = kind === 'inline' ? 'inline' : 'split'; const head = ` <header class="pv-head"> <div class="pv-title">${escapeHtml(getExportTitle())}</div> @@ -11263,9 +11572,44 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `${head}<main class="pv-body pv-mode-${mode}">${body}${emptyHtml}</main>`; } +/** The new version as a clean document: every decision and edit applied, no marks. */ +function buildFinalPrintHtml() { + const blocks = getFinalBlocks(); + const html = blocks + .map(block => { + const text = cleanExportText(block.text).trim(); + if (!text) return ''; + const kind = block.kind || 'p'; + if (kind === 'h1' || kind === 'h2' || kind === 'h3') { + const tag = kind === 'h1' ? 'h1' : kind === 'h2' ? 'h2' : 'h3'; + return `<${tag} class="pvf-${kind}">${escapeHtml(text)}</${tag}>`; + } + const indent = block.indent > 0 ? ` style="margin-left:${Math.min(block.indent, 6) * 1.6}em"` : ''; + const split = extractListMarker(text, kind); + if (split) { + return `<p class="pvf-item pvf-${kind}"${indent}><span class="pvf-marker">${escapeHtml(split.marker)}</span><span class="pvf-body">${escapeHtml(split.body)}</span></p>`; + } + return `<p class="pvf-p"${indent}>${escapeHtml(text)}</p>`; + }) + .join(''); + return `<main class="pv-final" lang="${state.lang === 'de' ? 'de' : 'en'}">${html}</main>`; +} + +/** Blocks of the new version as it stands now, without running headers and footers. */ +function getFinalBlocks() { + const blocks = state.alignedRows.length + ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) + : parseIntoBlocks(state.rightText || ''); + return blocks.filter(b => !b.isHeaderFooter && b.kind !== 'hf' && !isInternalMarkerLine(b.text)); +} + +// The print view requested from the export menu; Ctrl/Cmd+P prints the current view. +let requestedPrintKind = null; + function preparePrintView() { if (typeof ensureComparisonCurrent === 'function') ensureComparisonCurrent(); if (!state.alignedRows.length) return; + const kind = requestedPrintKind || (state.viewMode === 'inline' ? 'inline' : 'split'); const date = new Date(); let view = document.getElementById('print-view'); if (!view) { @@ -11275,7 +11619,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> view.setAttribute('aria-hidden', 'true'); document.body.appendChild(view); } - setSafeContainerHtml(view, buildPrintViewHtml(date)); + setSafeContainerHtml(view, buildPrintViewHtml(date, kind)); let pageStyle = document.getElementById('print-page-style'); if (!pageStyle) { @@ -11283,15 +11627,18 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> pageStyle.id = 'print-page-style'; document.head.appendChild(pageStyle); } - const footerLeft = `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; - const orientation = state.viewMode === 'inline' ? 'portrait' : 'landscape'; - pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: 14mm 12mm 16mm; + const footerLeft = + kind === 'final' ? getDisplayDocName('right') : `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; + const orientation = kind === 'split' ? 'landscape' : 'portrait'; + const margin = kind === 'final' ? '22mm 20mm 20mm 24mm' : '14mm 12mm 16mm'; + pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: ${margin}; @bottom-left { content: ${cssString(footerLeft)}; font: 7.5pt sans-serif; color: #444; } @bottom-right { content: ${cssString(`${t('pageLabel')} `)} counter(page) ${cssString(` ${t('pageOf')} `)} counter(pages); font: 7.5pt sans-serif; color: #444; } } }`; document.body.classList.add('has-print-view'); } function cleanupPrintView() { + requestedPrintKind = null; document.body.classList.remove('has-print-view'); const view = document.getElementById('print-view'); if (view) view.remove(); @@ -11347,6 +11694,55 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (typeof showToast === 'function') showToast(tf(toastKey, { name: filename })); } +/** "Vertrag_v2_Endfassung.docx": named after the new version, which it is. */ +function buildFinalFileName(ext) { + const base = sanitizeFileNamePart(state.rightName, 'DocDiff', 100); + return `${base}_${sanitizeFileNamePart(t('exportFileFinal'), 'Final')}.${ext}`; +} + +/** The .docx the new version was read from, if it is still the loaded new version. */ +function getRightDocxSource() { + const src = state.docSources && state.docSources.right; + if (!src || state.rightFormat !== 'DOCX' || src.name !== state.rightName || !src.bytes) return null; + return src; +} + +const DOCX_MIME = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; + +/** + * Word export. With a .docx as the new version, the file itself is the base (original format); + * if that cannot be done reliably, the newly typeset document is used and the user is told. + */ +async function exportWord(kind) { + const date = new Date(); + const source = getRightDocxSource(); + let bytes = null; + let fellBack = false; + if (source) { + try { + bytes = await buildDocxFromSource(source, parseIntoBlocks(state.rightText), state.alignedRows, kind, date); + } catch (err) { + fellBack = true; + if (typeof console !== 'undefined') console.warn('Doc Diff: original-format Word export not possible:', err && err.message); + } + } + if (!bytes) bytes = buildGeneratedDocx(kind, date); + const filename = kind === 'final' ? buildFinalFileName('docx') : buildExportFileName('exportFileRedline', 'docx'); + downloadBlob(bytes, DOCX_MIME, filename); + if (fellBack && typeof showImportNotice === 'function') { + showImportNotice(tf('noticeWordFallback', { name: filename }), 'warning'); + } else if (typeof showToast === 'function') { + showToast(tf(source ? 'toastWordOriginal' : 'toastWord', { name: filename })); + } +} + +function startPrint(kind) { + if (!state.alignedRows.length) return; + requestedPrintKind = kind; + preparePrintView(); + window.print(); +} + function handleExportAction(type) { // Commit an inline edit that is still open so the export reflects it. const openEditor = document.querySelector('.clause-inline-editor'); @@ -11355,28 +11751,19 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> // the current text, not the rows from before. ensureComparisonCurrent(); - if (type === 'print') { - if (!state.alignedRows.length) return; - preparePrintView(); - window.print(); - return; - } - // Exports need a finished comparison. The menu is disabled until then; never substitute // sample content for (or overwrite) a document the user has loaded. if (!state.alignedRows.length) return; - if (type === 'copy') { + if (type === 'print' || type === 'print-split' || type === 'print-inline' || type === 'print-final') { + const kind = type === 'print' ? (state.viewMode === 'inline' ? 'inline' : 'split') : type.slice(6); + startPrint(kind); + } else if (type === 'copy') { copyFinalTextToClipboard(); } else if (type === 'txt') { - downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildExportFileName('exportFileFinal', 'txt'), 'toastTxt'); - } else if (type === 'word') { - downloadWithToast( - buildDocxRedline(), - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - buildExportFileName('exportFileRedline', 'docx'), - 'toastWord' - ); + downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildFinalFileName('txt'), 'toastTxt'); + } else if (type === 'word' || type === 'word-final') { + exportWord(type === 'word' ? 'tracked' : 'final'); } else if (type === 'html') { downloadWithToast(buildExportHtmlReport(), 'text/html;charset=utf-8', buildExportFileName('exportFileReport', 'html'), 'toastHtml'); } else if (type === 'md') { @@ -11384,6 +11771,25 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } } +/** + * The descriptions in the export menu that depend on the documents: whether the Word file keeps + * the original format, and that open changes are part of the final version. + */ +function updateExportMenuTexts() { + const set = (id, text) => { + const el = document.getElementById(id); + if (el) el.textContent = text; + }; + const source = getRightDocxSource(); + set('exp-desc-word-final', source ? tf('expWordFinalDescOriginal', { name: source.name }) : t('expWordFinalDescNew')); + set('exp-desc-word', source ? tf('expWordDescOriginal', { name: source.name }) : t('expWordDesc')); + const open = state.listItems.filter(item => item.status === 'open').length; + set( + 'exp-sec-final-desc', + open === 0 ? t('expSecFinalDesc') : open === 1 ? t('expSecFinalOpenOne') : tf('expSecFinalOpen', { n: open }) + ); +} + /* ── Export availability ─────────────────────────────────────────────────── */ /** Really disables the export triggers (not just visually) while no comparison is available. */ @@ -11406,6 +11812,922 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +/* ── Word export in the original format ──────────────────────────────────────────────────── + * When the new version was loaded from a .docx, the Word exports start from that very file + * instead of a newly typeset document. Every paragraph whose text is unchanged is copied byte + * for byte, so styles, numbering, tables, images, headers, footers and the page layout stay as + * they were. Only paragraphs whose text differs are rewritten, run by run: words that stay keep + * their character formatting, new words take the formatting of their neighbours. + * + * Two kinds: + * 'final' – the new version with every review decision and edit applied, no marks + * 'tracked' – the same, plus every open change as a Word tracked change (old → new) + * + * The result is read back and compared with the expected text before it is offered. If + * anything does not match (an unusual document structure, a change inside a text box), the + * caller falls back to the newly typeset document. Pure string processing, no DOM, so it can be + * unit-tested in Node. + */ + +/* ── ZIP reading (all entries, as bytes) ─────────────────────────────────── */ + +async function inflateRaw(bytes) { + const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream('deflate-raw')); + return new Uint8Array(await new Response(stream).arrayBuffer()); +} + +/** Reads every entry of a ZIP archive: [{ name, data: Uint8Array }] in archive order. */ +async function readZipEntries(input) { + const bytes = input instanceof Uint8Array ? input : new Uint8Array(input); + const dv = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength); + let eocd = -1; + for (let i = bytes.length - 22; i >= Math.max(0, bytes.length - 65557); i--) { + if (dv.getUint32(i, true) === 0x06054b50) { + eocd = i; + break; + } + } + if (eocd < 0) throw new Error('zip: no central directory'); + const count = dv.getUint16(eocd + 10, true); + let p = dv.getUint32(eocd + 16, true); + const utf8 = new TextDecoder('utf-8'); + const out = []; + for (let n = 0; n < count; n++) { + if (dv.getUint32(p, true) !== 0x02014b50) throw new Error('zip: bad central directory'); + const method = dv.getUint16(p + 10, true); + const compSize = dv.getUint32(p + 20, true); + const nameLen = dv.getUint16(p + 28, true); + const extraLen = dv.getUint16(p + 30, true); + const commentLen = dv.getUint16(p + 32, true); + const localOffset = dv.getUint32(p + 42, true); + const name = utf8.decode(bytes.subarray(p + 46, p + 46 + nameLen)); + p += 46 + nameLen + extraLen + commentLen; + const dataStart = localOffset + 30 + dv.getUint16(localOffset + 26, true) + dv.getUint16(localOffset + 28, true); + const raw = bytes.subarray(dataStart, dataStart + compSize); + let data; + if (method === 0) data = raw.slice(); + else if (method === 8) data = await inflateRaw(raw); + else throw new Error(`zip: unsupported method ${method}`); + out.push({ name, data }); + } + return out; +} + +/* ── A minimal XML reader that keeps source offsets ───────────────────────── + * Elements: { name, start, openEnd, closeStart, end, selfClosing, children }; text between + * elements is not needed (Word keeps text inside w:t, read from the source slice). Offsets let + * untouched parts be copied verbatim. + */ +function parseXmlTree(xml) { + const root = { name: '#root', start: 0, openEnd: 0, closeStart: xml.length, end: xml.length, children: [] }; + const stack = [root]; + let i = 0; + const n = xml.length; + while (i < n) { + const lt = xml.indexOf('<', i); + if (lt < 0) break; + if (xml.startsWith('<!--', lt)) { + const e = xml.indexOf('-->', lt + 4); + if (e < 0) throw new Error('xml: unterminated comment'); + i = e + 3; + continue; + } + if (xml.startsWith('<![CDATA[', lt)) { + const e = xml.indexOf(']]>', lt + 9); + if (e < 0) throw new Error('xml: unterminated CDATA'); + i = e + 3; + continue; + } + if (xml.startsWith('<?', lt) || xml.startsWith('<!', lt)) { + const e = xml.indexOf('>', lt + 2); + if (e < 0) throw new Error('xml: unterminated declaration'); + i = e + 1; + continue; + } + // Find the end of the tag, honouring quoted attribute values (they may contain '>'). + let j = lt + 1; + let quote = ''; + while (j < n) { + const c = xml[j]; + if (quote) { + if (c === quote) quote = ''; + } else if (c === '"' || c === "'") { + quote = c; + } else if (c === '>') { + break; + } + j++; + } + if (j >= n) throw new Error('xml: unterminated tag'); + const tagEnd = j + 1; + if (xml[lt + 1] === '/') { + const name = xml.slice(lt + 2, j).trim(); + const node = stack.pop(); + if (!node || node.name !== name) throw new Error(`xml: mismatched </${name}>`); + node.closeStart = lt; + node.end = tagEnd; + } else { + const m = /^[^\s/>]+/.exec(xml.slice(lt + 1, j)); + if (!m) throw new Error('xml: bad tag'); + const selfClosing = xml[j - 1] === '/'; + const node = { name: m[0], start: lt, openEnd: tagEnd, closeStart: tagEnd, end: tagEnd, selfClosing, children: [] }; + stack[stack.length - 1].children.push(node); + if (!selfClosing) stack.push(node); + } + i = tagEnd; + } + if (stack.length !== 1) throw new Error('xml: unclosed element'); + return root; +} + +function xmlLocalName(node) { + const k = node.name.indexOf(':'); + return k < 0 ? node.name : node.name.slice(k + 1); +} + +function decodeXmlText(s) { + return s.replace(/&(#x[0-9a-fA-F]+|#\d+|lt|gt|amp|quot|apos);/g, (m, e) => { + if (e === 'lt') return '<'; + if (e === 'gt') return '>'; + if (e === 'amp') return '&'; + if (e === 'quot') return '"'; + if (e === 'apos') return "'"; + const code = e[1] === 'x' ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10); + try { + return String.fromCodePoint(code); + } catch (err) { + return ''; + } + }); +} + +/* ── Paragraph content as "pieces" ───────────────────────────────────────── + * A paragraph is flattened into pieces in reading order: + * atom – one character of text (or a tab / line break / non-breaking hyphen element) with + * the run properties and the wrappers (hyperlink, content control, …) it sits in + * opaque – anything without text (bookmarks, images, field characters, comments, …); kept + * in place, never dropped + * `cmp` is the comparable text of a piece (whitespace as one space, soft hyphens as nothing). + */ + +const DOCX_WRAPPERS = new Set(['hyperlink', 'smartTag', 'customXml', 'fldSimple', 'dir', 'bdo']); +const DOCX_TEXT_LIKE = { tab: ' ', ptab: ' ', br: ' ', cr: ' ', noBreakHyphen: '-', softHyphen: '' }; + +function docxCmpChar(ch) { + if (/^\s$/u.test(ch) || /[  -    ]/.test(ch)) return ' '; + if (/[­​⁠]/.test(ch)) return ''; + if (typeof LATIN_LIGATURES !== 'undefined' && LATIN_LIGATURES[ch]) return LATIN_LIGATURES[ch]; + return ch; +} + +function flattenParagraph(p, xml, ctx) { + const pieces = []; + let pPr = ''; + const chainIds = new Map(); + const chainFor = (parent, wrapper) => { + const ids = parent.map(w => w.id).concat(wrapper.id); + const key = ids.join('/'); + if (!chainIds.has(key)) chainIds.set(key, parent.concat(wrapper)); + return chainIds.get(key); + }; + const outer = node => xml.slice(node.start, node.end); + + const handleRun = (r, chain) => { + const rPrNode = r.children.find(c => xmlLocalName(c) === 'rPr'); + const rPr = rPrNode ? outer(rPrNode) : ''; + for (const c of r.children) { + const name = xmlLocalName(c); + if (name === 'rPr') continue; + if (name === 't') { + const text = c.selfClosing ? '' : decodeXmlText(xml.slice(c.openEnd, c.closeStart)); + for (const ch of text) pieces.push({ type: 'atom', ch, rPr, chain, cmp: docxCmpChar(ch) }); + } else if (name in DOCX_TEXT_LIKE) { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: DOCX_TEXT_LIKE[name] }); + } else if (name === 'footnoteReference' || name === 'endnoteReference') { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: ctx.noteLabels.get(c.start) || '' }); + } else { + // Field characters, field codes, drawings, comment references, …: kept as they are. + pieces.push({ type: 'opaque', runChild: outer(c), rPr, chain, cmp: '' }); + } + } + }; + + const walk = (node, chain) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (node === p && name === 'pPr') { + pPr = outer(c); + continue; + } + if (name === 'r') handleRun(c, chain); + else if (DOCX_WRAPPERS.has(name) && !c.selfClosing) { + walk(c, chainFor(chain, { id: `w${c.start}`, open: xml.slice(c.start, c.openEnd), close: xml.slice(c.closeStart, c.end) })); + } else if (name === 'sdt') { + const content = c.children.find(x => xmlLocalName(x) === 'sdtContent'); + if (!content || content.selfClosing) pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + else walk(content, chainFor(chain, { id: `s${c.start}`, open: xml.slice(c.start, content.openEnd), close: xml.slice(content.closeStart, c.end) })); + } else if ((name === 'ins' || name === 'moveTo') && !c.selfClosing) { + // Text inserted by an earlier tracked change counts as text (as when it is read in). + walk(c, chain); + } else { + pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + } + } + }; + walk(p, []); + + // One comparable space per whitespace run; none at the edges. + let prevWs = true; + for (const piece of pieces) { + if (!piece.cmp) continue; + if (piece.cmp === ' ') { + if (prevWs) piece.cmp = ''; + prevWs = true; + } else { + prevWs = false; + } + } + for (let k = pieces.length - 1; k >= 0; k--) { + if (!pieces[k].cmp) continue; + if (pieces[k].cmp === ' ') pieces[k].cmp = ''; + else break; + } + return { pPr, pieces, text: pieces.map(x => x.cmp).join('') }; +} + +/* ── Units: what the reader turned into one block ─────────────────────────── + * A paragraph outside tables is one unit; a table row is one unit (its cells joined with + * " · ", as when the file is read in). Paragraphs nested in text boxes and rows of nested tables + * are "locked": they are matched, but never rewritten. + */ +function collectDocxUnits(xml, tree) { + const noteLabels = new Map(); + let fn = 0; + let en = 0; + const noteRe = /<([A-Za-z0-9_]+:)?(footnoteReference|endnoteReference)\b/g; + let m; + while ((m = noteRe.exec(xml))) { + noteLabels.set(m.index, `[${m[2] === 'footnoteReference' ? ++fn : ++en}]`); + } + const ctx = { noteLabels }; + const units = []; + const paraText = p => flattenParagraph(p, xml, ctx).text; + + const cellParas = (node, out, state) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'p') out.push(c); + else if (name === 'tbl') state.nested = true; + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') cellParas(c, out, state); + } + return out; + }; + + const walk = (node, locked) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'AlternateContent') { + const fallback = c.children.find(x => xmlLocalName(x) === 'Fallback'); + if (fallback) walk(fallback, true); + continue; + } + if (name === 'p') { + units.push({ kind: 'p', node: c, locked, text: paraText(c) }); + walk(c, true); + continue; + } + if (name === 'tbl') { + walkTable(c, locked); + continue; + } + walk(c, locked); + } + }; + + const walkTable = (tbl, locked) => { + const rows = []; + const collectRows = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tr') rows.push(c); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectRows(c); + } + }; + collectRows(tbl); + const tableInfo = { node: tbl, rows: rows.length }; + for (const tr of rows) { + const cells = []; + const state = { nested: false }; + const collectCells = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tc') cells.push({ node: c, paras: cellParas(c, [], state) }); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectCells(c); + } + }; + collectCells(tr); + for (const cell of cells) { + cell.texts = cell.paras.map(paraText); + // As read in: the paragraphs of a cell run together. + cell.text = cell.texts.join(''); + } + units.push({ + kind: 'row', + node: tr, + table: tableInfo, + cells, + locked: locked || state.nested, + text: cells.map(c => c.text).filter(Boolean).join(' · '), + }); + // Nested tables and text boxes inside the cells (read in after their row). + for (const cell of cells) { + for (const c of cell.node.children) { + if (xmlLocalName(c) === 'tbl') walkTable(c, true); + } + for (const p of cell.paras) walk(p, true); + } + } + }; + + const body = (function find(node) { + for (const c of node.children) { + if (xmlLocalName(c) === 'body') return c; + const r = find(c); + if (r) return r; + } + return null; + })(tree); + if (!body) throw new Error('docx: no body'); + walk(body, false); + return { units, ctx }; +} + +/* ── Matching blocks to units ───────────────────────────────────────────── */ + +function docxKey(text) { + return normalizeComparableText(sanitizeExternalText(String(text || ''))) + .replace(/\s+/g, ' ') + .trim(); +} + +/** + * How a block's text relates to a unit's text: { prefix } when it is the same text, possibly + * after a generated list number or heading number ("(1) ", "§ 1 ") that the file does not + * contain as text; null otherwise. + */ +function docxMatchBlock(blockKey, unitText) { + if (!unitText) return null; + if (blockKey === unitText) return { prefix: 0 }; + if (blockKey.length > unitText.length && blockKey.endsWith(unitText)) { + const prefix = blockKey.slice(0, blockKey.length - unitText.length); + if (prefix.length <= 24 && / $/.test(prefix)) return { prefix: prefix.length }; + } + return null; +} + +/** Pairs blocks (in order) with non-empty units (in order). Returns Map(blockIndex -> { unit, prefix }). */ +function mapBlocksToUnits(blocks, units) { + const LOOK = 40; + const keys = blocks.map(b => docxKey(b.text)); + const list = units.filter(u => u.text); + const out = new Map(); + let i = 0; + let j = 0; + while (i < keys.length && j < list.length) { + const hit = docxMatchBlock(keys[i], list[j].text); + if (hit) { + out.set(i, { unit: list[j], prefix: hit.prefix }); + i++; + j++; + continue; + } + let step = null; + for (let d = 1; d <= LOOK && !step; d++) { + if (j + d < list.length && docxMatchBlock(keys[i], list[j + d].text)) step = { di: 0, dj: d }; + else if (i + d < keys.length && docxMatchBlock(keys[i + d], list[j].text)) step = { di: d, dj: 0 }; + } + if (step) { + i += step.di; + j += step.dj; + } else { + i++; + j++; + } + } + return out; +} + +/* ── Rewriting one paragraph ────────────────────────────────────────────── */ + +/** + * The target text of a paragraph as characters with revision flags: + * { chars: [{ ch, added, dels: [deleted text before this char] }], tail: [deleted text at the end] }. + * `prefix` characters of the new wording (a generated list number) are dropped. + */ +function docxTargetFromTokens(tokens, prefix) { + let chars = []; + let pending = []; + for (const tok of tokens) { + if (tok.removed) { + if (tok.value) pending.push(tok.value); + continue; + } + for (const ch of tok.value) { + chars.push({ ch, added: Boolean(tok.added), dels: pending }); + pending = []; + } + } + let tail = pending; + if (prefix) { + // The generated number is not text in the file: drop it with whatever was deleted before it. + const rest = chars.slice(prefix); + chars = rest; + } + // Whitespace as in the file's reading: one space between words, none at the edges. + const out = []; + let carry = []; + for (const c of chars) { + const ws = /\s/.test(c.ch); + const dels = carry.concat(c.dels); + carry = []; + if (ws && (!out.length || /\s/.test(out[out.length - 1].ch))) { + carry = dels; + continue; + } + out.push({ ch: ws ? ' ' : c.ch, added: c.added, dels }); + } + while (out.length && out[out.length - 1].ch === ' ') { + const last = out.pop(); + carry = last.dels.concat(carry); + } + tail = carry.concat(tail); + return { chars: out, tail }; +} + +function docxStripHyperlinkStyle(rPr) { + return rPr.replace(/<w:rStyle\b[^>]*\/>/g, '').replace(/<w:rPr>\s*<\/w:rPr>/, ''); +} + +/** + * Returns the new XML of paragraph `p` whose text becomes the target described by `tokens` + * (diff tokens of the new wording, see getExportDiffTokens). `rev(kind)` returns the attributes + * of a new revision. `markPara` ('ins' | 'del' | '') marks the paragraph mark as inserted/deleted. + */ +function rewriteDocxParagraph(p, xml, ctx, tokens, prefix, rev, markPara = '', defaultRPr = '') { + const { pPr, pieces } = flattenParagraph(p, xml, ctx); + const target = docxTargetFromTokens(tokens, prefix); + const tText = target.chars.map(c => c.ch).join(''); + + // Comparable text of the file with a map back to the pieces. + let xText = ''; + const xPiece = []; + pieces.forEach((piece, idx) => { + for (const ch of piece.cmp) { + xText += ch; + xPiece.push(idx); + } + }); + + const diffLib = getDiffLibrary(); + let parts; + if (xText === tText) parts = [{ value: xText }]; + else if (diffLib && xText.length + tText.length < 400000) parts = diffLib.diffWordsWithSpace(xText, tText); + else parts = [{ value: xText, removed: true }, { value: tText, added: true }].filter(x => x.value); + + const items = []; // { kind: 'text'|'elem'|'raw', text?, xml?, rPr, chain, rev } + const lastAtom = { piece: null }; + let nextPiece = 0; + let keptBefore = true; + + const atomAfter = idx => { + for (let k = idx; k < pieces.length; k++) if (pieces[k].type === 'atom' && pieces[k].cmp) return pieces[k]; + return null; + }; + const contextFor = () => { + const prev = lastAtom.piece; + const next = atomAfter(nextPiece); + const base = prev || next; + if (!base) return { rPr: defaultRPr, chain: [] }; + const shared = prev && next && prev.chain === next.chain; + if (shared) return { rPr: base.rPr, chain: base.chain }; + return { rPr: base.chain.length ? docxStripHyperlinkStyle(base.rPr) : base.rPr, chain: [] }; + }; + const emitPiece = (piece, revKind) => { + if (piece.type === 'opaque') { + if (piece.raw) items.push({ kind: 'raw', xml: piece.raw, chain: piece.chain }); + else items.push({ kind: 'elem', xml: piece.runChild, rPr: piece.rPr, chain: piece.chain, rev: '' }); + return; + } + if (piece.elem) items.push({ kind: 'elem', xml: piece.elem, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + else items.push({ kind: 'text', text: piece.ch, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + lastAtom.piece = piece; + }; + // Pieces without comparable text up to `limit`: opaque ones always stay; empty atoms (extra + // spaces, soft hyphens) stay where the text around them stays. + const passThrough = limit => { + while (nextPiece < limit) { + const piece = pieces[nextPiece++]; + if (piece.type === 'opaque' || keptBefore) emitPiece(piece, ''); + } + }; + const emitDeleted = texts => { + if (!texts.length) return; + const c = contextFor(); + for (const text of texts) items.push({ kind: 'text', text, rPr: c.rPr, chain: c.chain, rev: 'del' }); + }; + + let xi = 0; + let ti = 0; + for (const part of parts) { + const len = part.value.length; + if (part.added) { + for (let k = 0; k < len; k++, ti++) { + const tc = target.chars[ti]; + emitDeleted(tc.dels); + const c = contextFor(); + items.push({ kind: 'text', text: tc.ch, rPr: c.rPr, chain: c.chain, rev: tc.added ? 'ins' : '' }); + } + } else if (part.removed) { + for (let k = 0; k < len; k++, xi++) { + const idx = xPiece[xi]; + if (idx >= nextPiece) { + passThrough(idx); + nextPiece = idx + 1; + keptBefore = false; + } + } + } else { + for (let k = 0; k < len; k++, xi++, ti++) { + const idx = xPiece[xi]; + const tc = target.chars[ti]; + if (idx >= nextPiece) { + passThrough(idx); + keptBefore = true; + emitDeleted(tc.dels); + emitPiece(pieces[idx], tc.added ? 'ins' : ''); + nextPiece = idx + 1; + } else { + emitDeleted(tc.dels); + } + } + } + } + // Deleted text at the very end goes before trailing spaces / bookmarks. + emitDeleted(target.tail); + keptBefore = true; + passThrough(pieces.length); + + return assembleDocxParagraph(p, xml, pPr, items, rev, markPara); +} + +/** Serialises pieces into runs, grouped by wrapper chain and revision. */ +function assembleDocxParagraph(p, xml, pPr, items, rev, markPara) { + let body = ''; + let chain = []; + let revOpen = ''; + let run = null; // { rPr, rev, content } + + const flushRun = () => { + if (!run) return; + body += `<w:r>${run.rPr}${run.content}</w:r>`; + run = null; + }; + const setRev = kind => { + if (revOpen === kind) return; + flushRun(); + if (revOpen) body += revOpen === 'ins' ? '</w:ins>' : '</w:del>'; + revOpen = kind; + if (kind) body += kind === 'ins' ? `<w:ins ${rev()}>` : `<w:del ${rev()}>`; + }; + const setChain = next => { + if (next === chain) return; + let common = 0; + while (common < chain.length && common < next.length && chain[common] === next[common]) common++; + if (common === chain.length && common === next.length) return; + flushRun(); + setRev(''); + for (let k = chain.length - 1; k >= common; k--) body += chain[k].close; + for (let k = common; k < next.length; k++) body += next[k].open; + chain = next; + }; + + for (const item of items) { + setChain(item.chain); + if (item.kind === 'raw') { + setRev(''); + body += item.xml; + continue; + } + setRev(item.rev); + const content = + item.kind === 'text' + ? item.rev === 'del' + ? `<w:delText xml:space="preserve">${escapeXml(item.text)}</w:delText>` + : `<w:t xml:space="preserve">${escapeXml(item.text)}</w:t>` + : item.xml; + if (run && run.rPr === item.rPr && run.rev === item.rev) { + // Adjacent text joins one w:t. + if (item.kind === 'text' && /<\/w:(t|delText)>$/.test(run.content) && run.lastText) { + const tag = item.rev === 'del' ? 'w:delText' : 'w:t'; + run.content = run.content.slice(0, run.content.length - `</${tag}>`.length) + escapeXml(item.text) + `</${tag}>`; + } else { + run.content += content; + } + } else { + flushRun(); + run = { rPr: item.rPr, rev: item.rev, content }; + } + run.lastText = item.kind === 'text'; + } + setChain([]); + setRev(''); + flushRun(); + + const openTag = xml.slice(p.start, p.openEnd).replace(/\/>$/, '>'); + return `${openTag}${docxMarkParagraph(pPr, markPara, rev)}${body}</w:p>`; +} + +/** Adds an inserted/deleted mark to the paragraph mark (the pilcrow) in w:pPr. */ +function docxMarkParagraph(pPr, markPara, rev) { + if (!markPara) return pPr; + const mark = markPara === 'ins' ? `<w:ins ${rev()}/>` : `<w:del ${rev()}/>`; + if (!pPr) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/^<w:pPr\s*\/>$/.test(pPr)) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/<w:rPr\s*\/>/.test(pPr)) return pPr.replace(/<w:rPr\s*\/>/, `<w:rPr>${mark}</w:rPr>`); + if (/<w:rPr>/.test(pPr)) return pPr.replace(/<w:rPr>/, `<w:rPr>${mark}`); + const before = pPr.search(/<w:sectPr\b|<w:pPrChange\b|<\/w:pPr>/); + return `${pPr.slice(0, before)}<w:rPr>${mark}</w:rPr>${pPr.slice(before)}`; +} + +/** A new paragraph modelled on `template` (a unit paragraph) or a plain one. */ +function buildNewDocxParagraph(xml, ctx, template, tokens, prefix, rev, markPara) { + let pPr = ''; + let rPr = ''; + if (template) { + const tpl = flattenParagraph(template, xml, ctx); + pPr = tpl.pPr + .replace(/<w:sectPr\b[\s\S]*?<\/w:sectPr>/, '') + .replace(/<w:pPrChange\b[\s\S]*?<\/w:pPrChange>/, '') + .replace(/<w:rPr>[\s\S]*?<\/w:rPr>|<w:rPr\s*\/>/, ''); + const firstAtom = tpl.pieces.find(x => x.type === 'atom' && x.cmp && !x.chain.length); + rPr = firstAtom ? firstAtom.rPr : ''; + } + // Rewriting an empty paragraph with the model's properties emits all text in its run format. + const fakeXml = `<w:p>${pPr}</w:p>`; + const fake = parseXmlTree(fakeXml).children[0]; + return rewriteDocxParagraph(fake, fakeXml, ctx, tokens, prefix, rev, markPara, rPr); +} + +/* ── The whole document ─────────────────────────────────────────────────── */ + +/** + * plan: [{ block (final block; null for an open deletion), oldBlock, r0 (the block as read in from + * the file, or null), tokens, open, markPara }] in document order. Returns the new document.xml. + */ +function patchDocxDocumentXml(xml, r0Blocks, plan, opts) { + const tree = parseXmlTree(xml); + const { units, ctx } = collectDocxUnits(xml, tree); + const r0Map = mapBlocksToUnits(r0Blocks, units); + const unitOfR0 = new Map(); + r0Blocks.forEach((b, i) => { + if (r0Map.has(i)) unitOfR0.set(b, r0Map.get(i)); + }); + + let maxId = 0; + for (const mm of xml.matchAll(/\bw:id="(\d+)"/g)) maxId = Math.max(maxId, parseInt(mm[1], 10)); + let revId = maxId + 1000; + const date = toWordDate(opts.date || new Date()); + const rev = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; + + const edits = []; // { start, end, text, seq } + let seq = 0; + const edit = (start, end, text) => edits.push({ start, end, text, seq: seq++ }); + + // What the result must read like: every unit of the file with its new text (null = removed), + // plus the new paragraphs at their insertion points. + const unitText = new Map(units.map(u => [u, u.text])); + const inserted = []; // { pos, seq, text } + + const firstUnit = units[0]; + if (!firstUnit) throw new Error('docx: empty body'); + const unitStart = u => (u.kind === 'row' ? u.table.node.start : u.node.start); + const unitEnd = u => (u.kind === 'row' ? u.table.node.end : u.node.end); + let anchor = unitStart(firstUnit); + + const planUnits = plan.map(step => { + const hit = step.r0 ? unitOfR0.get(step.r0) : null; + return { unit: hit ? hit.unit : null, prefix: hit ? hit.prefix : 0, kind: (step.block || step.oldBlock || {}).kind }; + }); + const usedUnits = new Set(planUnits.filter(pu => pu.unit).map(pu => pu.unit)); + const templateFor = (kind, from) => { + const usable = entry => entry && entry.unit && entry.unit.kind === 'p' && !entry.unit.locked; + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k]) && planUnits[k].kind === kind) return planUnits[k].unit.node; + } + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k])) return planUnits[k].unit.node; + } + return null; + }; + const targetText = (tokens, prefix) => + docxTargetFromTokens(tokens.filter(x => !x.removed), prefix).chars.map(c => c.ch).join(''); + const insertAt = (text, expectedText) => { + edit(anchor, anchor, text); + inserted.push({ pos: anchor - 0.5, seq: seq, text: expectedText }); + }; + + plan.forEach((step, k) => { + const pu = planUnits[k]; + const unit = pu.unit; + if (!step.block) { + // An open deletion: the old paragraph, struck through, paragraph mark included. + const tpl = templateFor(step.oldBlock.kind, k); + insertAt(buildNewDocxParagraph(xml, ctx, tpl, [{ value: step.oldBlock.text, removed: true }], 0, rev, 'del'), ''); + return; + } + const finalKey = docxKey(step.block.text); + const changed = step.open || !step.r0 || docxKey(step.r0.text) !== finalKey; + if (!unit) { + if (step.r0 && changed) { + // A change in something that is not body text of the file (e.g. a footnote). + throw new Error('docx: change outside the body'); + } + if (step.r0) return; // unchanged and not in the body: nothing to do + // A paragraph that the file does not have (a restored deletion): a new paragraph. + const tpl = templateFor(step.block.kind, k); + const marker = step.block.numberingMarker; + const tplNumbered = tpl && /<w:numPr\b/.test(xml.slice(tpl.start, tpl.end)); + const prefix = tplNumbered && marker && finalKey.startsWith(`${marker} `) ? marker.length + 1 : 0; + insertAt(buildNewDocxParagraph(xml, ctx, tpl, step.tokens, prefix, rev, step.markPara || ''), targetText(step.tokens, prefix)); + return; + } + if (changed) { + if (unit.locked) throw new Error('docx: change in a locked unit'); + if (unit.kind === 'p') { + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, step.tokens, pu.prefix, rev, step.markPara || '')); + unitText.set(unit, targetText(step.tokens, pu.prefix)); + } else { + unitText.set(unit, rewriteDocxRow(unit, xml, ctx, step, rev, edit)); + } + } + anchor = unitEnd(unit); + }); + + // Units read in that are not part of the result anymore (a rejected insertion, a paragraph + // emptied by an edit) are removed, with anything nested in them. + const removed = []; + const removedRows = new Map(); + for (const hit of r0Map.values()) { + const unit = hit.unit; + if (usedUnits.has(unit)) continue; + if (unit.locked) throw new Error('docx: removal in a locked unit'); + if (unit.kind === 'row') { + removedRows.set(unit.table, (removedRows.get(unit.table) || 0) + 1); + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } else if (/<w:sectPr\b/.test(xml.slice(unit.node.start, unit.node.end))) { + // It carries the section layout: keep the paragraph, drop its text. + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, [], 0, rev, '')); + unitText.set(unit, ''); + } else { + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } + } + for (const [table, n] of removedRows) { + if (n < table.rows) continue; + // Every row is gone: remove the table (a table needs at least one row). + for (let k = edits.length - 1; k >= 0; k--) { + if (edits[k].start >= table.node.start && edits[k].end <= table.node.end) edits.splice(k, 1); + } + edit(table.node.start, table.node.end, ''); + removed.push([table.node.start, table.node.end]); + } + for (const u of units) { + if (removed.some(([s, e]) => u.node.start >= s && u.node.end <= e)) unitText.set(u, null); + } + + // Apply from the end; edits never overlap (each unit is touched once). + edits.sort((a, b) => b.start - a.start || b.seq - a.seq); + let out = xml; + let limit = Infinity; + for (const e of edits) { + if (e.end > limit) throw new Error('docx: overlapping edits'); + out = out.slice(0, e.start) + e.text + out.slice(e.end); + limit = e.start; + } + + // Read the result back: the accepted text of every unit must be exactly what we expect. + const norm = s => String(s || '').replace(/\s+/g, ' ').trim(); + const want = units + .map(u => ({ pos: u.node.start, seq: -1, text: unitText.get(u) })) + .concat(inserted) + .sort((a, b) => a.pos - b.pos || a.seq - b.seq) + .map(x => norm(x.text)) + .filter(Boolean); + const got = collectDocxUnits(out, parseXmlTree(out)) + .units.map(u => norm(u.text)) + .filter(Boolean); + const at = Math.max(got.length, want.length) === 0 ? -1 : got.findIndex((text, i) => text !== want[i]); + if (got.length !== want.length || at >= 0) { + const i = at >= 0 ? at : Math.min(got.length, want.length); + throw new Error(`docx: verification failed at unit ${i}: ${JSON.stringify(got[i])} vs ${JSON.stringify(want[i])}`); + } + return out; +} + +/** Rewrites the changed cells of a table row; returns the expected row text. */ +function rewriteDocxRow(unit, xml, ctx, step, rev, edit) { + const newCells = docxKey(step.block.text).split(' · '); + const oldCells = step.oldBlock ? docxKey(step.oldBlock.text).split(' · ') : null; + const filled = unit.cells.filter(c => c.text); + const cellTokens = (oldText, newText) => + step.open ? (oldText === null ? [{ value: newText, added: true }] : computeCleanWordDiff(oldText, newText)) : [{ value: newText }]; + const writeCell = (cell, tokens) => { + const paras = cell.paras.filter((p, i) => cell.texts[i]); + const first = paras[0] || cell.paras[0]; + if (!first) throw new Error('docx: cell without paragraph'); + edit(first.start, first.end, rewriteDocxParagraph(first, xml, ctx, tokens, 0, rev, '')); + for (const other of paras.slice(1)) edit(other.start, other.end, rewriteDocxParagraph(other, xml, ctx, [], 0, rev, '')); + }; + if (newCells.length === filled.length) { + newCells.forEach((text, i) => { + const cell = filled[i]; + const oldText = oldCells && oldCells.length === newCells.length ? oldCells[i] : null; + if (cell.text === text && (!step.open || oldText === text)) return; + writeCell(cell, cellTokens(oldText, text)); + }); + return newCells.join(' · '); + } + // The number of filled cells changed: the whole row text goes into the first cell. + const target = filled[0] || unit.cells[0]; + if (!target) throw new Error('docx: row without cells'); + writeCell(target, step.open && step.oldBlock ? computeCleanWordDiff(docxKey(step.oldBlock.text), docxKey(step.block.text)) : [{ value: docxKey(step.block.text) }]); + for (const cell of filled) if (cell !== target) writeCell(cell, []); + return docxKey(step.block.text); +} + +/* ── Entry point ────────────────────────────────────────────────────────── */ + +/** + * Builds the export from the original .docx of the new version. + * source: { bytes, importedText }; finalBlocks: blocks of the current new version (all of them); + * rows: state.alignedRows (old ↔ new); kind: 'final' | 'tracked'. + * Returns a Uint8Array (.docx) or throws when the result cannot be verified. + */ +async function buildDocxFromSource(source, finalBlocks, rows, kind, date = new Date()) { + const entries = await readZipEntries(source.bytes); + const docEntry = entries.find(e => e.name === 'word/document.xml'); + if (!docEntry) throw new Error('docx: no word/document.xml'); + const xml = new TextDecoder('utf-8').decode(docEntry.data); + const r0Blocks = parseIntoBlocks(source.importedText); + + // Old ↔ new rows by the position of the new block; final blocks ↔ blocks as read in. + const rowOfFinal = new Map(); + for (const row of rows) { + if (!row.rightBlock) continue; + const block = finalBlocks[row.rightBlock.index - 1]; + if (!block || block.text !== row.rightBlock.text) throw new Error('docx: comparison is not current'); + rowOfFinal.set(row.rightBlock.index, row); + } + const r0Rows = alignDocumentBlocks(r0Blocks, finalBlocks); + const r0OfFinal = new Map(); + for (const r of r0Rows) if (r.leftBlock && r.rightBlock) r0OfFinal.set(r.rightBlock, r.leftBlock); + + const plan = []; + const pushDeleted = row => { + if (kind !== 'tracked' || !row || row.type !== 'deleted' || row.reviewStatus === 'accepted' || !row.leftBlock) return; + if (row.leftBlock.isHeaderFooter) return; + plan.push({ block: null, oldBlock: row.leftBlock, r0: null, open: true }); + }; + let rowCursor = 0; + for (const block of finalBlocks) { + const row = rowOfFinal.get(block.index); + if (row) { + // Open deletions that sit before this row in the comparison. + const at = rows.indexOf(row); + for (; rowCursor < at; rowCursor++) pushDeleted(rows[rowCursor]); + rowCursor = at + 1; + } + const open = kind === 'tracked' && row && row.type !== 'equal' && row.reviewStatus !== 'accepted'; + const tokens = open ? getExportDiffTokens(row) : [{ value: cleanExportText(block.text) }]; + plan.push({ + block, + oldBlock: row ? row.leftBlock : null, + r0: r0OfFinal.get(block) || null, + tokens, + open, + markPara: open && row.type === 'inserted' ? 'ins' : '', + }); + } + for (; rowCursor < rows.length; rowCursor++) pushDeleted(rows[rowCursor]); + + const outXml = patchDocxDocumentXml(xml, r0Blocks, plan, { date }); + const enc = new TextEncoder(); + const files = entries.map(e => (e.name === 'word/document.xml' ? { name: e.name, data: enc.encode(outXml) } : e)); + return buildZipArchive(files, date); +} + /* ── Import errors & notices ───────────────────────────────────────────── */ // Error with a translatable message key (shown to the user instead of a raw exception). @@ -12088,6 +13410,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } else if (kind === 'docx') { result = await extractDocxText(buffer); result.format = 'DOCX'; + result.sourceBytes = bytes; } else { const { text, warnings } = decodeTextFile(bytes, ext); const looksLikeHtml = /^\s*(?:<!doctype html|<html[\s>])/i.test(text.slice(0, 2048)); @@ -12127,7 +13450,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> fnLabel.textContent = `${t('readingFile')} ${file.name}…`; try { - const { text, format, warnings } = await readDocumentFile(file); + const { text, format, warnings, sourceBytes } = await readDocumentFile(file); if (isStale()) { if (seq === uploadSeq[side]) restoreLabel(); return false; @@ -12142,6 +13465,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightFormat = format; state.rightText = text; } + state.docSources[side] = sourceBytes ? { name: file.name, bytes: sourceBytes, importedText: text } : null; resetEditHistory(); if (warnings && warnings.length) { showImportNotice(`${file.name}: ${warnings.join(' ')}`, 'warning'); @@ -12331,6 +13655,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> trigger = trigger || document.getElementById(MENU_TRIGGERS[id]); trigger.setAttribute('aria-expanded', 'true'); openMenuState = { id, trigger }; + if (id === 'export-menu') updateExportMenuTexts(); document.body.classList.toggle('menu-sheet-open', isPhoneWidth()); menuItems(menu).forEach(item => (item.tabIndex = -1)); if (focus) { @@ -12776,6 +14101,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = ''; state.leftFormat = ''; state.rightFormat = ''; + state.docSources = { left: null, right: null }; state.activeRowId = null; state.hoveredRowId = null; state.sidebarFilter = 'all'; @@ -12849,6 +14175,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> [state.leftText, state.rightText] = [state.rightText, state.leftText]; [state.leftName, state.rightName] = [state.rightName, state.leftName]; [state.leftFormat, state.rightFormat] = [state.rightFormat, state.leftFormat]; + state.docSources = { left: state.docSources.right, right: state.docSources.left }; resetEditHistory(); runComparison(); btnFiles.focus(); @@ -12883,11 +14210,13 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.leftText = sanitizeExternalText(textareaLeft.value); state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; } if (rightChanged) { state.rightText = sanitizeExternalText(textareaRight.value); state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; } if (leftChanged || rightChanged) resetEditHistory(); if (state.leftText.trim() && !state.leftName) { @@ -13503,6 +14832,20 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return { kept, used }; } +// The original .docx of a side (for the Word export in the original format), as base64. +function bytesToBase64(bytes) { + let bin = ''; + for (let i = 0; i < bytes.length; i += 0x8000) bin += String.fromCharCode.apply(null, bytes.subarray(i, i + 0x8000)); + return btoa(bin); +} +function sessionSourceOf(side) { + const src = state.docSources && state.docSources[side]; + const name = side === 'left' ? state.leftName : state.rightName; + const format = side === 'left' ? state.leftFormat : state.rightFormat; + if (!src || format !== 'DOCX' || src.name !== name) return undefined; + return { kind: 'docx', data: bytesToBase64(src.bytes), importedText: src.importedText }; +} + function buildSessionPayload() { const redo = takeRecentHistory(state.redoStack, SESSION_HISTORY_CHAR_BUDGET); const undo = takeRecentHistory(state.undoStack, SESSION_HISTORY_CHAR_BUDGET - redo.used); @@ -13517,12 +14860,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: state.leftName, format: state.leftFormat, text: state.leftText, + source: sessionSourceOf('left'), }, right: { name: state.rightName, format: state.rightFormat, originalText: sessionTracker.originalRightText, text: state.rightText, + source: sessionSourceOf('right'), }, }, view: { @@ -13643,6 +14988,22 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +function base64ToBytes(b64) { + const bin = atob(b64); + const out = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i); + return out; +} + +// Optional original .docx of a side: { kind: 'docx', data (base64), importedText }. +function expectSource(value, name) { + if (value === undefined) return null; + if (!isPlainObject(value) || value.kind !== 'docx') throw new SessionFileError('sessionErrorInvalid'); + const data = expectString(value.data, SESSION_MAX_FILE_BYTES); + if (!/^[A-Za-z0-9+/]*={0,2}$/.test(data) || data.length % 4 !== 0) throw new SessionFileError('sessionErrorInvalid'); + return { name, bytes: base64ToBytes(data), importedText: expectString(value.importedText, SESSION_MAX_FILE_BYTES) }; +} + // Returns a fresh, fully validated object; throws SessionFileError otherwise. function validateSessionData(raw) { if (!isPlainObject(raw) || raw.format !== SESSION_FORMAT_ID) { @@ -13687,12 +15048,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: expectString(docs.left.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.left.format), text: expectString(docs.left.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.left.source, docs.left.name), }, right: { name: expectString(docs.right.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.right.format), originalText: expectString(docs.right.originalText, SESSION_MAX_FILE_BYTES), text: expectString(docs.right.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.right.source, docs.right.name), }, view: { mode: view.mode === 'pages' ? 'split' : view.mode, @@ -13740,6 +15103,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = session.right.name; state.rightFormat = session.right.format; state.rightText = session.right.text; + state.docSources = { left: session.left.source || null, right: session.right.source || null }; state.reviews = cloneReviews(session.reviews); state.undoStack = session.history.undo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); state.redoStack = session.history.redo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); diff --git a/site/index.html b/site/index.html index 60e0641..a955f80 100644 --- a/site/index.html +++ b/site/index.html @@ -45,7 +45,7 @@ <meta property="og:locale:alternate" content="en_US" /> <meta property="og:title" content="Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload" /> <meta property="og:description" content="Zwei Fassungen eines Vertrags oder Dokuments vergleichen: PDF, Word oder Text, Wort für Wort markiert. Kostenlos, Open Source, ohne Upload." /> - <meta property="og:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta property="og:image" content="https://docdiff.app/og-image.png?v=3" /> <meta property="og:image:type" content="image/png" /> <meta property="og:image:width" content="2400" /> <meta property="og:image:height" content="1260" /> @@ -53,7 +53,7 @@ <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload" /> <meta name="twitter:description" content="Zwei Fassungen eines Vertrags oder Dokuments vergleichen: PDF, Word oder Text, Wort für Wort markiert. Kostenlos, Open Source, ohne Upload." /> - <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=2" /> + <meta name="twitter:image" content="https://docdiff.app/og-image.png?v=3" /> <meta name="twitter:image:alt" content="Doc Diff: Zwei Vertragsfassungen nebeneinander, entfernter Text rot durchgestrichen, neuer Text grün markiert." /> <!-- Structured data (schema.org). A data block: browsers never execute it. --> @@ -93,7 +93,7 @@ "@type": "CreativeWork", "url": "https://github.com/tschnorpfeil/docdiff#readme" }, - "image": "https://docdiff.app/og-image.png?v=2", + "image": "https://docdiff.app/og-image.png?v=3", "author": { "@type": "Person", "name": "Tobias Schnorpfeil", @@ -158,7 +158,7 @@ "name": "Kann ich die Änderungen in Word weiterbearbeiten?", "acceptedAnswer": { "@type": "Answer", - "text": "Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung." + "text": "Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei." } }, { @@ -861,6 +861,45 @@ .menu-label + .menu-seg { margin-top: 2px; } +/* Export menu: section titles and items with a one-line explanation */ +.menu-export { + width: 340px; + max-width: calc(100vw - 16px); +} +.menu-label-2line { + display: flex; + flex-direction: column; + gap: 1px; + padding: 8px 10px 4px; + color: hsl(var(--foreground)); +} +.menu-label-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); +} +.menu-item.mi-2line { + align-items: flex-start; + white-space: normal; +} +.menu-item.mi-2line > svg { + margin-top: 2px; + flex-shrink: 0; +} +.mi-text { + display: flex; + flex-direction: column; + gap: 1px; + min-width: 0; +} +.mi-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); + overflow-wrap: anywhere; +} .menu-sep { height: 1px; margin: 5px 4px; @@ -3340,6 +3379,44 @@ font-style: italic; color: #444; } + /* Final version: a clean document, no marks */ + #print-view .pv-final { + font-size: 10.5pt; + line-height: 1.5; + hyphens: auto; + } + #print-view .pv-final h1 { + font-size: 16pt; + line-height: 1.25; + margin: 0 0 12pt; + break-after: avoid; + } + #print-view .pv-final h2 { + font-size: 12pt; + margin: 16pt 0 6pt; + break-after: avoid; + } + #print-view .pv-final h3 { + font-size: 10.5pt; + margin: 12pt 0 4pt; + break-after: avoid; + } + #print-view .pv-final p { + margin: 0 0 6pt; + orphans: 3; + widows: 3; + } + #print-view .pv-final .pvf-item { + display: flex; + gap: 0; + } + #print-view .pv-final .pvf-marker { + flex: 0 0 2.4em; + } + #print-view .pv-final .pvf-body { + flex: 1 1 auto; + min-width: 0; + } } /* Landing page on phones: one column, nothing wider than the screen */ @@ -3566,16 +3643,26 @@ <h2 class="sr-only" id="files-pop-title" data-i18n="filesTitle">Dokumente</h2> <span id="i18n-btn-export" data-i18n="exportBtn">Exportieren</span> <svg class="icon tb-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg> </button> - <div class="menu menu-right" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> - <button type="button" class="menu-item" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span data-i18n="expWord">Word mit Änderungsverfolgung (.docx)</span></button> - <button type="button" class="menu-item" data-export="print" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><polyline points="6 9 6 2 18 2 18 9"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect width="12" height="8" x="6" y="14"/></svg><span data-i18n="expPdf">Drucken oder als PDF sichern</span></button> - <button type="button" class="menu-item" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span data-i18n="expCopy">Text der neuen Fassung kopieren</span></button> + <div class="menu menu-right menu-export" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> + <div class="menu-group" role="group" aria-labelledby="exp-sec-final"> + <div class="menu-label menu-label-2line" id="exp-sec-final"><span data-i18n="expSecFinal">Endfassung</span><span class="menu-label-desc" id="exp-sec-final-desc" data-i18n="expSecFinalDesc">Neue Fassung mit Ihren Entscheidungen, ohne Markierungen</span></div> + <button type="button" class="menu-item mi-2line" data-export="word-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWordFinal">Word (.docx)</span><span class="mi-desc" id="exp-desc-word-final"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="M9 15h6"/><path d="M9 18h4"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfFinal">PDF</span><span class="mi-desc" id="exp-desc-print-final" data-i18n="expPdfFinalDesc">Sauberes Dokument, im Druckdialog „Als PDF sichern“</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expCopy">Text der neuen Fassung kopieren</span><span class="mi-desc" id="exp-desc-copy" data-i18n="expCopyDesc">Reiner Text für E-Mail oder andere Programme</span></span></button> + </div> + <div class="menu-sep" role="separator"></div> + <div class="menu-group" role="group" aria-labelledby="exp-sec-compare"> + <div class="menu-label menu-label-2line" id="exp-sec-compare"><span data-i18n="expSecCompare">Vergleich</span><span class="menu-label-desc" data-i18n="expSecCompareDesc">Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben</span></div> + <button type="button" class="menu-item mi-2line" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWord">Word mit Änderungsverfolgung (.docx)</span><span class="mi-desc" id="exp-desc-word"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-split" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="18" height="16" x="3" y="4" rx="2"/><path d="M12 4v16"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfSplit">PDF nebeneinander</span><span class="mi-desc" id="exp-desc-print-split" data-i18n="expPdfSplitDesc">Querformat, alte und neue Fassung in zwei Spalten</span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-inline" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="16" height="18" x="4" y="3" rx="2"/><path d="M8 8h8"/><path d="M8 12h8"/><path d="M8 16h5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfInline">PDF als Fließtext</span><span class="mi-desc" id="exp-desc-print-inline" data-i18n="expPdfInlineDesc">Hochformat, Änderungen im Text markiert</span></span></button> + </div> <div class="menu-sep" role="separator"></div> <button type="button" class="menu-item" role="menuitem" id="btn-more-formats" aria-expanded="false" aria-controls="more-formats"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="7" height="7" x="3" y="3" rx="1"/><rect width="7" height="7" x="14" y="3" rx="1"/><rect width="7" height="7" x="14" y="14" rx="1"/><rect width="7" height="7" x="3" y="14" rx="1"/></svg><span data-i18n="moreFormats">Weitere Formate</span><svg class="icon mi-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg></button> <div class="menu-sub" id="more-formats" role="group" aria-labelledby="btn-more-formats" hidden> <button type="button" class="menu-item" data-export="html" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M2 12h20"/><path d="M12 2a15 15 0 0 1 0 20a15 15 0 0 1 0-20"/></svg><span data-i18n="expHtml">Bericht als Webseite (.html)</span></button> <button type="button" class="menu-item" data-export="md" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg><span data-i18n="expMd">Bericht als Markdown (.md)</span></button> - <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Neue Fassung als Textdatei (.txt)</span></button> + <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Endfassung als Textdatei (.txt)</span></button> </div> </div> </div> @@ -3698,7 +3785,7 @@ <h2 id="how-title" data-i18n="howTitle">So funktioniert’s</h2> <ol class="how-steps"> <li><span class="how-num" aria-hidden="true">1</span><span><strong data-i18n="how1Title">Zwei Fassungen wählen</strong> <span data-i18n="how1Text">Als PDF, Word-Datei oder eingefügten Text. Die Dateien werden nur in diesem Browser-Tab gelesen.</span></span></li> <li><span class="how-num" aria-hidden="true">2</span><span><strong data-i18n="how2Title">Änderungen durchgehen</strong> <span data-i18n="how2Text">Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.</span></span></li> - <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Ergebnis sichern, wenn Sie es brauchen</strong> <span data-i18n="how3Text">Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.</span></span></li> + <li><span class="how-num" aria-hidden="true">3</span><span><strong data-i18n="how3Title">Ergebnis sichern, wenn Sie es brauchen</strong> <span data-i18n="how3Text">Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.</span></span></li> </ol> </section> @@ -3750,7 +3837,7 @@ <h2 id="faq-title" data-i18n="faqTitle">Häufige Fragen</h2> <details class="faq-item"> <summary data-i18n="faqWordQ">Kann ich die Änderungen in Word weiterbearbeiten?</summary> <div class="faq-answer" data-i18n-html="faqWordA"> - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> </div> </details> <details class="faq-item"> @@ -4035,11 +4122,28 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> listBtnLabel: 'Änderungsliste ({n} Änderungen)', exportBtn: 'Exportieren', expWord: 'Word mit Änderungsverfolgung (.docx)', - expPdf: 'Drucken oder als PDF sichern', expHtml: 'Bericht als Webseite (.html)', expMd: 'Bericht als Markdown (.md)', expCopy: 'Text der neuen Fassung kopieren', - expTxt: 'Neue Fassung als Textdatei (.txt)', + expTxt: 'Endfassung als Textdatei (.txt)', + expSecFinal: 'Endfassung', + expSecFinalDesc: 'Neue Fassung mit Ihren Entscheidungen, ohne Markierungen', + expSecFinalOpen: 'Neue Fassung mit Ihren Entscheidungen – {n} offene Änderungen sind wie angenommen enthalten', + expSecFinalOpenOne: 'Neue Fassung mit Ihren Entscheidungen – 1 offene Änderung ist wie angenommen enthalten', + expSecCompare: 'Vergleich', + expSecCompareDesc: 'Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'Im Format Ihrer Datei „{name}“', + expWordFinalDescNew: 'Neu gesetzt, mit Überschriften und Nummerierung', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'Sauberes Dokument, im Druckdialog „Als PDF sichern“', + expCopyDesc: 'Reiner Text für E-Mail oder andere Programme', + expWordDesc: 'Offene Änderungen in Word annehmen oder ablehnen', + expWordDescOriginal: 'Im Format von „{name}“, offene Änderungen in Word annehmen oder ablehnen', + expPdfSplit: 'PDF nebeneinander', + expPdfSplitDesc: 'Querformat, alte und neue Fassung in zwei Spalten', + expPdfInline: 'PDF als Fließtext', + expPdfInlineDesc: 'Hochformat, Änderungen im Text markiert', moreLabel: 'Weitere Aktionen', clearBtn: 'Neuer Vergleich', textBtn: 'Text einfügen/bearbeiten', @@ -4058,6 +4162,8 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word-Datei gespeichert: {name}', + toastWordOriginal: 'Word-Datei im Originalformat gespeichert: {name}', + noticeWordFallback: 'Gespeichert: {name}. Das Originalformat ließ sich für diese Datei nicht sicher übernehmen (z. B. wegen Änderungen in Fußnoten oder Textfeldern). Die Word-Datei wurde deshalb neu gesetzt; der Text ist vollständig.', toastHtml: 'Bericht gespeichert: {name}', toastMd: 'Markdown-Bericht gespeichert: {name}', toastTxt: 'Textdatei gespeichert: {name}', @@ -4068,7 +4174,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> toastUndo: 'Rückgängig', toastUndone: 'Rückgängig gemacht', toastRedone: 'Wiederhergestellt', - copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Neue Fassung als Textdatei (.txt)“ unter „Weitere Formate“.', + copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Endfassung als Textdatei (.txt)“ unter „Weitere Formate“.', announceCompared: 'Vergleich fertig: {n} Änderungen. Mit J und K springen Sie von Änderung zu Änderung.', announceComparedOne: 'Vergleich fertig: 1 Änderung.', announceIdentical: 'Vergleich fertig: keine Textunterschiede.', @@ -4121,6 +4227,7 @@ <h2 class="dialog-title" id="session-dialog-title" tabindex="-1"></h2> movedFromHere: 'Verschoben – von hier', movedToHere: 'Verschoben – hierher', moreDeltas: 'weitere Änderungen', + moreDeltasOne: 'weitere Änderung', pageLabel: 'Seite', pageShort: 'S.', pageOf: 'von', @@ -4160,7 +4267,11 @@ <h3>Lesen</h3> </section> <section class="help-sec"> <h3>Prüfen</h3> - <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft, springen zur nächsten offenen Änderung und Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück. Im Word-Export sind angenommene Änderungen übernommen, abgelehnte zurückgenommen und offene als nachverfolgte Änderungen eingetragen.</p> + <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft und springen zur nächsten offenen Änderung. Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück.</p> + </section> + <section class="help-sec"> + <h3>Exportieren</h3> + <p><strong>Endfassung</strong>: die neue Fassung mit allen Entscheidungen und Bearbeitungen, ohne Markierungen – als Word-Datei (bei einer Word-Datei als neuer Fassung in deren Originalformat), als PDF oder als Text. Noch offene Änderungen sind darin wie angenommen enthalten. <strong>Vergleich</strong>: alt → neu mit Markierungen – als Word-Datei mit Änderungsverfolgung (angenommene Änderungen übernommen, abgelehnte zurückgenommen, offene zum Annehmen oder Ablehnen) oder als PDF nebeneinander bzw. als Fließtext.</p> </section> <section class="help-sec"> <h3>Tastenkürzel</h3> @@ -4249,6 +4360,7 @@ <h3>Ihre Daten</h3> exportTitleFmt: 'Vergleich: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} Änderungen ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', + exportCountsFmtOne: '1 Änderung ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', exportReviewFmt: '{k} von {n} geprüft ({a} angenommen, {r} abgelehnt)', exportLabelOriginal: 'Alte Fassung', exportLabelRevised: 'Neue Fassung', @@ -4260,9 +4372,9 @@ <h3>Ihre Daten</h3> exportLabelDetail: 'Angabe', exportScopeFull: 'Vollständiges Dokument', exportScopeChanges: 'Nur Änderungen (Filter „Nur Änderungen“ aktiv, unveränderte Absätze ausgelassen)', - exportHfIgnored: 'ausgeblendet (nicht verglichen)', - exportHfIgnoredCount: 'ausgeblendet ({n} Zeilen nicht verglichen)', - exportHfIncluded: 'mitverglichen', + exportHfIgnored: 'unveränderte ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIgnoredCount: '{n} unveränderte Zeilen ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIncluded: 'vollständig mitverglichen', exportSummaryHeading: 'Zusammenfassung', exportCountTotal: 'Änderungen gesamt', exportChangesHeading: 'Änderungsübersicht', @@ -4283,8 +4395,10 @@ <h3>Ihre Daten</h3> a11yAddedStart: '[hinzugefügt:', a11yAddedEnd: ']', docxSubject: 'Vergleich mit nachverfolgten Änderungen', - docxNote: 'Offene Abweichungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen. In Doc Diff angenommene Änderungen sind bereits übernommen, abgelehnte bereits zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen.', - exportFileFinal: 'Neue_Fassung', + docxSubjectFinal: 'Endfassung', + docxNote: 'Offene Änderungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen, angenommene bereits übernommen, abgelehnte zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen. Diesen Kommentar können Sie löschen.', + docxHfHeading: 'Geänderte Kopf-/Fußzeilen (nicht im Fließtext):', + exportFileFinal: 'Endfassung', exportFileRedline: 'Vergleich', exportFileReport: 'Bericht', sampleLeftName: 'Vertrag_v1_Vorher.docx', @@ -4314,7 +4428,7 @@ <h3>Ihre Daten</h3> how2Title: 'Änderungen durchgehen', how2Text: 'Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.', how3Title: 'Ergebnis sichern, wenn Sie es brauchen', - how3Text: 'Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.', + how3Text: 'Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.', scopeTitle: 'Was es kann – und was nicht', scopeCanTitle: 'Kann', scopeCan1: 'PDFs mit Textebene, Word-Dateien (.docx) und reinen Text vergleichen – auch gemischt, etwa PDF mit Word', @@ -4346,7 +4460,7 @@ <h3>Ihre Daten</h3> `, faqWordQ: 'Kann ich die Änderungen in Word weiterbearbeiten?', faqWordA: ` - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> `, metaTitle: 'Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload', otherPageHint: 'Diese Seite gibt es auch auf Deutsch →', @@ -4408,11 +4522,28 @@ <h3>Ihre Daten</h3> listBtnLabel: 'List of changes ({n} changes)', exportBtn: 'Export', expWord: 'Word with tracked changes (.docx)', - expPdf: 'Print or save as PDF', expHtml: 'Report as web page (.html)', expMd: 'Report as Markdown (.md)', expCopy: 'Copy text of the new version', - expTxt: 'New version as text file (.txt)', + expTxt: 'Final version as text file (.txt)', + expSecFinal: 'Final version', + expSecFinalDesc: 'The new version with your decisions, without marks', + expSecFinalOpen: 'The new version with your decisions – {n} open changes are included as accepted', + expSecFinalOpenOne: 'The new version with your decisions – 1 open change is included as accepted', + expSecCompare: 'Comparison', + expSecCompareDesc: 'Old → new with all marks, to review or pass on', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'In the format of your file “{name}”', + expWordFinalDescNew: 'Newly typeset, with headings and numbering', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'A clean document; choose “Save as PDF” in the print dialog', + expCopyDesc: 'Plain text for email or other apps', + expWordDesc: 'Accept or reject the open changes in Word', + expWordDescOriginal: 'In the format of “{name}”; accept or reject the open changes in Word', + expPdfSplit: 'PDF side by side', + expPdfSplitDesc: 'Landscape, old and new version in two columns', + expPdfInline: 'PDF as running text', + expPdfInlineDesc: 'Portrait, changes marked in the text', moreLabel: 'More actions', clearBtn: 'New comparison', textBtn: 'Paste or edit text', @@ -4431,6 +4562,8 @@ <h3>Ihre Daten</h3> // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word file saved: {name}', + toastWordOriginal: 'Word file saved in the original format: {name}', + noticeWordFallback: 'Saved: {name}. The original format could not be kept reliably for this file (for example because of changes in footnotes or text boxes), so the Word file was typeset anew; the text is complete.', toastHtml: 'Report saved: {name}', toastMd: 'Markdown report saved: {name}', toastTxt: 'Text file saved: {name}', @@ -4441,7 +4574,7 @@ <h3>Ihre Daten</h3> toastUndo: 'Undo', toastUndone: 'Undone', toastRedone: 'Redone', - copyFailed: 'Copying to the clipboard is not possible here. Please use “New version as text file (.txt)” under “More formats” instead.', + copyFailed: 'Copying to the clipboard is not possible here. Please use “Final version as text file (.txt)” under “More formats” instead.', announceCompared: 'Comparison ready: {n} changes. Press J and K to move between changes.', announceComparedOne: 'Comparison ready: 1 change.', announceIdentical: 'Comparison ready: no text differences.', @@ -4494,6 +4627,7 @@ <h3>Ihre Daten</h3> movedFromHere: 'Moved – from here', movedToHere: 'Moved – to here', moreDeltas: 'more changes', + moreDeltasOne: 'more change', pageLabel: 'Page', pageShort: 'p.', pageOf: 'of', @@ -4533,7 +4667,11 @@ <h3>Reading</h3> </section> <section class="help-sec"> <h3>Reviewing</h3> - <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed, move on to the next open change A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back. In the Word export, accepted changes are applied, rejected ones are reverted and open ones are recorded as tracked changes.</p> + <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed and move on to the next open change. A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back.</p> + </section> + <section class="help-sec"> + <h3>Exporting</h3> + <p><strong>Final version</strong>: the new version with every decision and edit applied, without marks – as a Word file (in the original format when the new version is a Word file), as PDF or as text. Changes that are still open are included as if accepted. <strong>Comparison</strong>: old → new with marks – as a Word file with tracked changes (accepted changes applied, rejected ones reverted, open ones to accept or reject) or as PDF side by side or as running text.</p> </section> <section class="help-sec"> <h3>Keyboard shortcuts</h3> @@ -4622,6 +4760,7 @@ <h3>Your data</h3> exportTitleFmt: 'Comparison: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} changes ({mod} changed, {ins} added, {del} removed)', + exportCountsFmtOne: '1 change ({mod} changed, {ins} added, {del} removed)', exportReviewFmt: '{k} of {n} reviewed ({a} accepted, {r} rejected)', exportLabelOriginal: 'Old version', exportLabelRevised: 'New version', @@ -4633,9 +4772,9 @@ <h3>Your data</h3> exportLabelDetail: 'Detail', exportScopeFull: 'Full document', exportScopeChanges: 'Changes only (“Changes only” filter active, unchanged paragraphs omitted)', - exportHfIgnored: 'hidden (not compared)', - exportHfIgnoredCount: 'hidden ({n} lines not compared)', - exportHfIncluded: 'included in the comparison', + exportHfIgnored: 'unchanged ones hidden; changed ones are listed as changes', + exportHfIgnoredCount: '{n} unchanged lines hidden; changed ones are listed as changes', + exportHfIncluded: 'fully compared', exportSummaryHeading: 'Summary', exportCountTotal: 'Total changes', exportChangesHeading: 'List of changes', @@ -4656,8 +4795,10 @@ <h3>Your data</h3> a11yAddedStart: '[added:', a11yAddedEnd: ']', docxSubject: 'Comparison with tracked changes', - docxNote: 'Open differences are recorded as tracked changes (author “Doc Diff”). Changes accepted in Doc Diff are already applied, rejected ones already reverted. In Word, use Review › Accept / Reject to process them one by one or all at once.', - exportFileFinal: 'New_version', + docxSubjectFinal: 'Final version', + docxHfHeading: 'Changed headers/footers (not in the body text):', + docxNote: 'Open changes are recorded as tracked changes (author “Doc Diff”); accepted ones are already applied, rejected ones reverted. In Word, use Review › Accept / Reject one by one or all at once. You can delete this comment.', + exportFileFinal: 'final', exportFileRedline: 'Comparison', exportFileReport: 'Report', sampleLeftName: 'Contract_v1_Before.docx', @@ -4687,7 +4828,7 @@ <h3>Your data</h3> how2Title: 'Go through the changes', how2Text: 'Removed text is struck through in red, added text is marked green. You can accept or reject each change.', how3Title: 'Save the result if you need it', - how3Text: 'As a Word file with tracked changes, as PDF or as a report.', + how3Text: 'As a clean final version (Word in the original format, or PDF) or as a comparison with tracked changes.', scopeTitle: 'What it can do – and what it can’t', scopeCanTitle: 'Can', scopeCan1: 'Compare PDFs with a text layer, Word files (.docx) and plain text – also mixed, e.g. a PDF against a Word file', @@ -4719,12 +4860,12 @@ <h3>Your data</h3> `, faqWordQ: 'Can I keep working on the changes in Word?', faqWordA: ` - <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting.</p> + <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too.</p> `, metaTitle: 'Doc Diff – Compare PDF and Word documents without uploading', otherPageHint: 'This page is also available in English →', metaDescription: 'Compare two versions of a contract or document: PDF, Word or text, marked word by word. Free, open source, runs in your browser without uploads.', - ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green (German interface).', + ogImageAlt: 'Doc Diff: two versions of a contract side by side, removed text struck through in red, added text marked green.', footerSource: 'Source code on GitHub', githubMenu: 'Source code on GitHub', footerLicense: 'MIT licence', @@ -5066,6 +5207,8 @@ <h3>Your data</h3> rightName: '', leftFormat: '', rightFormat: '', + // The .docx files as loaded ({ name, bytes, importedText }): the Word export keeps their format. + docSources: { left: null, right: null }, alignedRows: [], changeRows: [], listItems: [], @@ -5336,7 +5479,8 @@ <h3>Your data</h3> const meta = []; if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf'); if (block.indent > 0) meta.push(`lvl=${block.indent}`); - return metaLine(meta.join(';'), block.text); + // A heading marker ("## ") from the source stays, so a rewritten text keeps its structure. + return metaLine(meta.join(';'), (block.headingMarker || '') + block.text); } function parseLineMeta(line) { @@ -5958,8 +6102,11 @@ <h3>Your data</h3> (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) >= 2); const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter); + let headingMarker = ''; if (!isHeaderFooter) { seenContentBlock = true; + const m = line.match(/^#{1,3}\s+/); + if (m) headingMarker = `${m[0].trim()} `; line = line.replace(/^#{1,3}\s+/, '').trim(); if (!line) continue; } @@ -5991,6 +6138,7 @@ <h3>Your data</h3> sectionRef: currentSectionRef, text: line, kind, + headingMarker, indent: entry.indent, isHeading, isHeaderFooter, @@ -6383,9 +6531,11 @@ <h3>Your data</h3> } } - const cleaned = mergedNums - .filter(tok => tok.value.length > 0) - .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })); + const cleaned = mergeFragmentedChanges( + mergedNums + .filter(tok => tok.value.length > 0) + .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })) + ); if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned; // Never show a diff that does not reproduce the source texts: fall back to the raw diff. @@ -6394,6 +6544,84 @@ <h3>Your data</h3> ); } +/** + * Joins changes that only an unchanged hyphen or space separates into one replacement, so a + * rewritten phrase reads as one change instead of misleading word pairs: + * "[Standard]→[Echtzeit]-[Berichtswesen]→[Nachtragsmanagement]" becomes + * "[Standard-Berichtswesen]→[Echtzeit-Nachtragsmanagement]". The joined glue goes into both + * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of + * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared + * by both sides at the edges stays unchanged. + */ +function mergeFragmentedChanges(parts) { + const isChange = tok => Boolean(tok && (tok.removed || tok.added)); + const glued = []; + for (let i = 0; i < parts.length; i++) { + const cur = parts[i]; + const isGlue = + !isChange(cur) && + isChange(glued[glued.length - 1]) && + isChange(parts[i + 1]) && + (/^\s+$/.test(cur.value) || !/\s/.test(cur.value)); + if (isGlue) { + glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true }); + } else { + glued.push(cur); + } + } + + const out = []; + const pushEqual = value => { + if (!value) return; + const last = out[out.length - 1]; + if (last && !isChange(last)) last.value += value; + else out.push({ value }); + }; + let i = 0; + while (i < glued.length) { + if (!isChange(glued[i])) { + pushEqual(glued[i].value); + i++; + continue; + } + let rem = ''; + let add = ''; + while (i < glued.length && isChange(glued[i])) { + if (glued[i].removed) rem += glued[i].value; + else add += glued[i].value; + i++; + } + let lead = ''; + let trail = ''; + if (rem && add) { + const leadRem = rem.match(/^\s*/)[0]; + const leadAdd = add.match(/^\s*/)[0]; + while (lead.length < Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) { + lead += leadRem[lead.length]; + } + rem = rem.slice(lead.length); + add = add.slice(lead.length); + const trailRem = rem.match(/\s*$/)[0]; + const trailAdd = add.match(/\s*$/)[0]; + let n = 0; + while ( + n < Math.min(trailRem.length, trailAdd.length) && + trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n] + ) { + n++; + } + trail = n ? rem.slice(rem.length - n) : ''; + rem = rem.slice(0, rem.length - n); + add = add.slice(0, add.length - n); + } + pushEqual(lead); + if (rem) out.push({ value: rem, removed: true }); + if (add) out.push({ value: add, added: true }); + pushEqual(trail); + } + return out; +} + function coalesceSideTokens(sideParts, prop) { const out = []; for (let i = 0; i < sideParts.length; i++) { @@ -7413,6 +7641,7 @@ <h3>Your data</h3> state.rightName = t('sampleRightName'); state.rightFormat = 'DEMO'; state.rightText = sample.v2; + state.docSources = { left: null, right: null }; resetEditHistory(); runComparison(); } @@ -7423,11 +7652,13 @@ <h3>Your data</h3> state.leftText = ''; state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; document.getElementById('file-input-left').value = ''; } else { state.rightText = ''; state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; resetEditHistory(); document.getElementById('file-input-right').value = ''; } @@ -7800,6 +8031,11 @@ <h3>Your data</h3> return pairs; } +// "1 weitere Änderung" / "2 weitere Änderungen" (the number is written by the caller). +function moreDeltasText(n) { + return n === 1 ? t('moreDeltasOne') : t('moreDeltas'); +} + // Word diffs of a list item: the row's own, or (rejected change) recomputed from what was rejected. const ghostDiffCache = new WeakMap(); function getItemWordDiffs(item) { @@ -8011,7 +8247,7 @@ <h3>Your data</h3> const pageLabel = pages.length > 1 ? `${t('pageShort')} ${Math.min(...pages)}–${Math.max(...pages)}` : `${t('pageShort')} ${page}`; const head = item.members ? `${ref} · ${pageLabel}` : [ref, pageLabel].filter(Boolean).join(' · '); const delta = renderSidebarDeltaHtml(item); - const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(t('moreDeltas'))}</span></span>` : ''; + const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(moreDeltasText(delta.more))}</span></span>` : ''; return `<div class="nav-item ${cls} is-${item.status}${isActive ? ' is-active' : ''}" data-row-id="${item.rowId}" data-item-id="${item.id}"><button type="button" class="nav-item-main" tabindex="${item.id === focusId ? 0 : -1}"${isActive ? ' aria-current="true"' : ''}><span class="nav-item-head"><span class="nav-item-ref">${escapeHtml(head)}</span>${moreHtml}${statusIcon}<span class="sr-only">, ${escapeHtml(getChangeTypeLabel(item))}, ${escapeHtml(getStatusLabel(item.status))}. </span></span>${delta.html}</button></div>`; }) .join('') @@ -8025,7 +8261,7 @@ <h3>Your data</h3> // Replaced at build time by scripts/build.py with jsdiff + 04-core.js + 04a-align.js + // src/worker/compare-worker.js as a string literal. -const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n return metaLine(meta.join(';'), block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n if (!isHeaderFooter) {\n seenContentBlock = true;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }));\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; +const DIFF_WORKER_SOURCE = "self.window = self;\n;\n!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?n(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],n):n((e=e||self).Diff={})}(this,function(e){\"use strict\";function t(){}t.prototype={diff:function(s,a,e){var n,t=2\u003carguments.length&&void 0!==e?e:{},r=t.callback;\"function\"==typeof t&&(r=t,t={}),this.options=t;var u=this;function d(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}s=this.castInput(s),a=this.castInput(a),s=this.removeEmpty(this.tokenize(s));var f=(a=this.removeEmpty(this.tokenize(a))).length,c=s.length,p=1,i=f+c;t.maxEditLength&&(i=Math.min(i,t.maxEditLength));var o=null!==(n=t.timeout)&&void 0!==n?n:1/0,l=Date.now()+o,h=[{oldPos:-1,lastComponent:void 0}],v=this.extractCommon(h[0],a,s,0);if(h[0].oldPos+1\u003e=c&&f\u003c=v+1)return d([{value:this.join(a),count:a.length}]);var m=-1/0,g=1/0;function w(){for(var e=Math.max(m,-p);e\u003c=Math.min(g,p);e+=2){var n=void 0,t=h[e-1],r=h[e+1];t&&(h[e-1]=void 0);var i,o=!1;r&&(i=r.oldPos-e,o=r&&0\u003c=i&&i\u003cf);var l=t&&t.oldPos+1\u003cc;if(o||l){if(n=!l||o&&t.oldPos+1\u003cr.oldPos?u.addToPath(r,!0,void 0,0):u.addToPath(t,void 0,!0,1),v=u.extractCommon(n,a,s,e),n.oldPos+1\u003e=c&&f\u003c=v+1)return d(function(e,n,t,r,i){var o,l=[];for(;n;)l.push(n),o=n.previousComponent,delete n.previousComponent,n=o;l.reverse();for(var s=0,a=l.length,u=0,d=0;s\u003ca;s++){var f,c,p=l[s];p.removed?(p.value=e.join(r.slice(d,d+p.count)),d+=p.count,s&&l[s-1].added&&(f=l[s-1],l[s-1]=l[s],l[s]=f)):(!p.added&&i?(c=(c=t.slice(u,u+p.count)).map(function(e,n){var t=r[d+n];return t.length\u003ee.length?t:e}),p.value=e.join(c)):p.value=e.join(t.slice(u,u+p.count)),u+=p.count,p.added||(d+=p.count))}var h=l[a-1];1\u003ca&&\"string\"==typeof h.value&&(h.added||h.removed)&&e.equals(\"\",h.value)&&(l[a-2].value+=h.value,l.pop());return l}(u,n.lastComponent,a,s,u.useLongestToken));(h[e]=n).oldPos+1\u003e=c&&(g=Math.min(g,e-1)),f\u003c=v+1&&(m=Math.max(m,e+1))}else h[e]=void 0}p++}if(r)!function e(){setTimeout(function(){return i\u003cp||Date.now()\u003el?r():void(w()||e())},0)}();else for(;p\u003c=i&&Date.now()\u003c=l;){var y=w();if(y)return y}},addToPath:function(e,n,t,r){var i=e.lastComponent;return i&&i.added===n&&i.removed===t?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:n,removed:t,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:n,removed:t,previousComponent:i}}},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,l=e.oldPos,s=l-r,a=0;s+1\u003ci&&l+1\u003co&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&(e.lastComponent={count:a,previousComponent:e.lastComponent}),e.oldPos=l,s},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t\u003ce.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split(\"\")},join:function(e){return e.join(\"\")}};var r=new t;function i(e,n){if(\"function\"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\\xC0-\\u02C6\\u02C8-\\u02D7\\u02DE-\\u02FF\\u1E00-\\u1EFF]+$/,l=/\\S/,s=new t;s.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!l.test(e)&&!l.test(n)},s.tokenize=function(e){for(var n=e.split(/([^\\S\\r\\n]+|[()[\\]{}'\"\\r\\n]|\\b)/),t=0;t\u003cn.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function L(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\\r\\n/g,\"\\n\"));var n=[],t=e.split(/(\\n|\\r\\n)/);t[t.length-1]||t.pop();for(var r=0;r\u003ct.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var u=new t;u.tokenize=function(e){return e.split(/(\\S.+?[.!?])(?=\\s+|$)/)};var d=new t;function f(e){return(f=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function n(n,e){var t,r=Object.keys(n);return Object.getOwnPropertySymbols&&(t=Object.getOwnPropertySymbols(n),e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.push.apply(r,t)),r}function c(i){for(var e=1;e\u003carguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?n(Object(o),!0).forEach(function(e){var n,t,r;n=i,r=o[t=e],t in n?Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[t]=r}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(o)):n(Object(o)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(o,e))})}return i}function x(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if(\"string\"==typeof e)return p(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===t&&e.constructor&&(t=e.constructor.name);if(\"Map\"===t||\"Set\"===t)return Array.from(e);if(\"Arguments\"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,n)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function p(e,n){(null==n||n\u003ee.length)&&(n=e.length);for(var t=0,r=new Array(n);t\u003cn;t++)r[t]=e[t];return r}d.tokenize=function(e){return e.split(/([{}:;,]|\\s+)/)};var h=Object.prototype.toString,v=new t;function m(e,n,t,r,i){var o,l;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o\u003cn.length;o+=1)if(n[o]===e)return t[o];if(\"[object Array]\"===h.call(e)){for(n.push(e),l=new Array(e.length),t.push(l),o=0;o\u003ce.length;o+=1)l[o]=m(e[o],n,t,r,i);return n.pop(),t.pop(),l}if(e&&e.toJSON&&(e=e.toJSON()),\"object\"===f(e)&&null!==e){n.push(e),l={},t.push(l);var s,a=[];for(s in e)e.hasOwnProperty(s)&&a.push(s);for(a.sort(),o=0;o\u003ca.length;o+=1)l[s=a[o]]=m(e[s],n,t,r,s);n.pop(),t.pop()}else l=e;return l}v.useLongestToken=!0,v.tokenize=a.tokenize,v.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return\"string\"==typeof e?e:JSON.stringify(m(e,null,null,i),i,\" \")},v.equals=function(e,n){return t.prototype.equals.call(v,e.replace(/,([\\r\\n])/g,\"$1\"),n.replace(/,([\\r\\n])/g,\"$1\"))};var g=new t;function C(e){var l=1\u003carguments.length&&void 0!==arguments[1]?arguments[1]:{},s=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),a=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u\u003cs.length;){var n=s[u];if(/^(\\-\\-\\-|\\+\\+\\+|@@)\\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \\w+)+)\\s+(.+?)\\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u\u003cs.length;){var r=s[u];if(/^(Index:|diff|\\-\\-\\-|\\+\\+\\+)\\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(function(){var e=u,n=s[u++].split(/@@ -(\\d+)(?:,(\\d+))? \\+(\\d+)(?:,(\\d+))? @@/),t={oldStart:+n[1],oldLines:void 0===n[2]?1:+n[2],newStart:+n[3],newLines:void 0===n[4]?1:+n[4],lines:[],linedelimiters:[]};0===t.oldLines&&(t.oldStart+=1);0===t.newLines&&(t.newStart+=1);for(var r=0,i=0;u\u003cs.length&&!(0===s[u].indexOf(\"--- \")&&u+2\u003cs.length&&0===s[u+1].indexOf(\"+++ \")&&0===s[u+2].indexOf(\"@@\"));u++){var o=0==s[u].length&&u!=s.length-1?\" \":s[u][0];if(\"+\"!==o&&\"-\"!==o&&\" \"!==o&&\"\\\\\"!==o)break;t.lines.push(s[u]),t.linedelimiters.push(a[u]||\"\\n\"),\"+\"===o?r++:\"-\"===o?i++:\" \"===o&&(r++,i++)}r||1!==t.newLines||(t.newLines=0);i||1!==t.oldLines||(t.oldLines=0);if(l.strict){if(r!==t.newLines)throw new Error(\"Added line count did not match for hunk at line \"+(e+1));if(i!==t.oldLines)throw new Error(\"Removed line count did not match for hunk at line \"+(e+1))}return t}());else{if(r&&l.strict)throw new Error(\"Unknown line \"+(u+1)+\" \"+JSON.stringify(r));u++}}}function o(e){var n,t,r,i=/^(---|\\+\\+\\+)\\s+(.*)$/.exec(s[u]);i&&(n=\"---\"===i[1]?\"old\":\"new\",r=(t=i[2].split(\"\\t\",2))[0].replace(/\\\\\\\\/g,\"\\\\\"),/^\".*\"$/.test(r)&&(r=r.substr(1,r.length-2)),e[n+\"FileName\"]=r,e[n+\"Header\"]=(t[1]||\"\").trim(),u++)}for(;u\u003cs.length;)n();return i}function w(e,n){var t=2\u003carguments.length&&void 0!==arguments[2]?arguments[2]:{};if(\"string\"==typeof n&&(n=C(n)),Array.isArray(n)){if(1\u003cn.length)throw new Error(\"applyPatch only works with a single input.\");n=n[0]}var r,i,l=e.split(/\\r\\n|[\\n\\v\\f\\r\\x85]/),o=e.match(/\\r\\n|[\\n\\v\\f\\r\\x85]/g)||[],s=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,d=t.fuzzFactor||0,f=0,c=0;for(var p=0;p\u003cs.length;p++){for(var h=s[p],v=l.length-h.oldLines,m=0,g=c+h.oldStart-1,w=function(n,t,r){var i=!0,o=!1,l=!1,s=1;return function e(){if(i&&!l){if(o?s++:i=!1,n+s\u003c=r)return s;l=!0}if(!o)return l||(i=!0),t\u003c=n-s?-s++:(o=!0,e())}}(g,f,v);void 0!==m;m=w())if(function(e,n){for(var t=0;t\u003ce.lines.length;t++){var r=e.lines[t],i=0\u003cr.length?r[0]:\" \",o=0\u003cr.length?r.substr(1):r;if(\" \"===i||\"-\"===i){if(!a(n+1,l[n],i,o)&&d\u003c++u)return;n++}}return 1}(h,g+m)){h.offset=c+=m;break}if(void 0===m)return!1;f=h.offset+h.oldStart+h.oldLines}for(var y=0,L=0;L\u003cs.length;L++){var x=s[L],S=x.oldStart+x.offset+y-1;y+=x.newLines-x.oldLines;for(var b=0;b\u003cx.lines.length;b++){var k,F=x.lines[b],N=0\u003cF.length?F[0]:\" \",P=0\u003cF.length?F.substr(1):F,j=x.linedelimiters&&x.linedelimiters[b]||\"\\n\";\" \"===N?S++:\"-\"===N?(l.splice(S,1),o.splice(S,1)):\"+\"===N?(l.splice(S,0,P),o.splice(S,0,j),S++):\"\\\\\"===N&&(\"+\"===(k=x.lines[b-1]?x.lines[b-1][0]:null)?r=!0:\"-\"===k&&(i=!0))}}if(r)for(;!l[l.length-1];)l.pop(),o.pop();else i&&(l.push(\"\"),o.push(\"\\n\"));for(var O=0;O\u003cl.length-1;O++)l[O]=l[O]+o[O];return l.join(\"\")}function y(e,n,u,d,t,r,f){void 0===(f=f||{}).context&&(f.context=4);var c=L(u,d,f);if(c){c.push({value:\"\",lines:[]});for(var p=[],h=0,v=0,m=[],g=1,w=1,i=0;i\u003cc.length;i++)!function(e){var n,t,r,i,o,l,s=c[e],a=s.lines||s.value.replace(/\\n$/,\"\").split(\"\\n\");s.lines=a,s.added||s.removed?(h||(n=c[e-1],h=g,v=w,n&&(m=0\u003cf.context?y(n.lines.slice(-f.context)):[],h-=m.length,v-=m.length)),m.push.apply(m,x(a.map(function(e){return(s.added?\"+\":\"-\")+e}))),s.added?w+=a.length:g+=a.length):(h&&(a.length\u003c=2*f.context&&e\u003cc.length-2?m.push.apply(m,x(y(a))):(t=Math.min(a.length,f.context),m.push.apply(m,x(y(a.slice(0,t)))),r={oldStart:h,oldLines:g-h+t,newStart:v,newLines:w-v+t,lines:m},e\u003e=c.length-2&&a.length\u003c=f.context&&(i=/\\n$/.test(u),o=/\\n$/.test(d),l=0==a.length&&m.length\u003er.oldLines,!i&&l&&0\u003cu.length&&m.splice(r.oldLines,0,\"\\\\ No newline at end of file\"),(i||l)&&o||m.push(\"\\\\ No newline at end of file\")),p.push(r),v=h=0,m=[])),g+=a.length,w+=a.length)}(i);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:p}}function y(e){return e.map(function(e){return\" \"+e})}}function S(e){if(Array.isArray(e))return e.map(S).join(\"\\n\");var n=[];e.oldFileName==e.newFileName&&n.push(\"Index: \"+e.oldFileName),n.push(\"===================================================================\"),n.push(\"--- \"+e.oldFileName+(void 0===e.oldHeader?\"\":\"\\t\"+e.oldHeader)),n.push(\"+++ \"+e.newFileName+(void 0===e.newHeader?\"\":\"\\t\"+e.newHeader));for(var t=0;t\u003ce.hunks.length;t++){var r=e.hunks[t];0===r.oldLines&&--r.oldStart,0===r.newLines&&--r.newStart,n.push(\"@@ -\"+r.oldStart+\",\"+r.oldLines+\" +\"+r.newStart+\",\"+r.newLines+\" @@\"),n.push.apply(n,r.lines)}return n.join(\"\\n\")+\"\\n\"}function b(e,n,t,r,i,o,l){return S(y(e,n,t,r,i,o,l))}function k(e,n){if(n.length\u003ee.length)return!1;for(var t=0;t\u003cn.length;t++)if(n[t]!==e[t])return!1;return!0}function F(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){var n,t;\"string\"!=typeof e?(n=r(e.mine),t=r(e.theirs),void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)):(void 0===o||\"+\"!==e[0]&&\" \"!==e[0]||o++,void 0===i||\"-\"!==e[0]&&\" \"!==e[0]||i++)});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function N(e,n){if(\"string\"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return C(e)[0];if(!n)throw new Error(\"Must provide a base reference or pass in a patch\");return y(void 0,void 0,n,e)}function P(e){return e.newFileName&&e.newFileName!==e.oldFileName}function j(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function O(e,n){return e.oldStart\u003cn.oldStart&&e.oldStart+e.oldLines\u003cn.oldStart}function H(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function A(e,n,t,r){var i,o=M(n),l=function(e,n){var t=[],r=[],i=0,o=!1,l=!1;for(;i\u003cn.length&&e.index\u003ce.lines.length;){var s=e.lines[e.index],a=n[i];if(\"+\"===a[0])break;if(o=o||\" \"!==s[0],r.push(a),i++,\"+\"===s[0])for(l=!0;\"+\"===s[0];)t.push(s),s=e.lines[++e.index];a.substr(1)===s.substr(1)?(t.push(s),e.index++):l=!0}\"+\"===(n[i]||\"\")[0]&&o&&(l=!0);if(l)return t;for(;i\u003cn.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);l.merged?(i=e.lines).push.apply(i,x(l.merged)):E(e,r?l:o,r?o:l)}function E(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function z(e,n,t){for(;n.offset\u003ct.offset&&n.index\u003cn.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index\u003cn.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function M(e){for(var n=[],t=e.lines[e.index][0];e.index\u003ce.lines.length;){var r=e.lines[e.index];if(\"-\"===t&&\"+\"===r[0]&&(t=\"+\"),t!==r[0])break;n.push(r),e.index++}return n}function D(e){return e.reduce(function(e,n){return e&&\"-\"===n[0]},!0)}function I(e,n,t){for(var r=0;r\u003ct;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==\" \"+i)return}return e.index+=t,1}g.tokenize=function(e){return e.slice()},g.join=g.removeEmpty=function(e){return e},e.Diff=t,e.applyPatch=w,e.applyPatches=function(e,o){\"string\"==typeof e&&(e=C(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){return e?o.complete(e):void r()})})}()},e.canonicalize=m,e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i\u003ce.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n,t=[],r=0;r\u003ce.length;r++){var i=e[r];i.added?t.push(\"\u003cins\u003e\"):i.removed&&t.push(\"\u003cdel\u003e\"),t.push((n=i.value,n.replace(/&/g,\"&\").replace(/\u003c/g,\"<\").replace(/\u003e/g,\">\").replace(/\"/g,\""\"))),i.added?t.push(\"\u003c/ins\u003e\"):i.removed&&t.push(\"\u003c/del\u003e\")}return t.join(\"\")},e.createPatch=function(e,n,t,r,i,o){return b(e,e,n,t,r,i,o)},e.createTwoFilesPatch=b,e.diffArrays=function(e,n,t){return g.diff(e,n,t)},e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return v.diff(e,n,t)},e.diffLines=L,e.diffSentences=function(e,n,t){return u.diff(e,n,t)},e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),s.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return s.diff(e,n,t)},e.formatPatch=S,e.merge=function(e,n,t){e=N(e,t),n=N(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(P(e)?P(n)?(r.oldFileName=j(r,e.oldFileName,n.oldFileName),r.newFileName=j(r,e.newFileName,n.newFileName),r.oldHeader=j(r,e.oldHeader,n.oldHeader),r.newHeader=j(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,l=0,s=0;i\u003ce.hunks.length||o\u003cn.hunks.length;){var a,u=e.hunks[i]||{oldStart:1/0},d=n.hunks[o]||{oldStart:1/0};O(u,d)?(r.hunks.push(H(u,l)),i++,s+=u.newLines-u.oldLines):O(d,u)?(r.hunks.push(H(d,s)),o++,l+=d.newLines-d.oldLines):(function(e,n,t,r,i){var o,l,s={offset:n,lines:t,index:0},a={offset:r,lines:i,index:0};z(e,s,a),z(e,a,s);for(;s.index\u003cs.lines.length&&a.index\u003ca.lines.length;){var u=s.lines[s.index],d=a.lines[a.index];\"-\"!==u[0]&&\"+\"!==u[0]||\"-\"!==d[0]&&\"+\"!==d[0]?\"+\"===u[0]&&\" \"===d[0]?(o=e.lines).push.apply(o,x(M(s))):\"+\"===d[0]&&\" \"===u[0]?(l=e.lines).push.apply(l,x(M(a))):\"-\"===u[0]&&\" \"===d[0]?A(e,s,a):\"-\"===d[0]&&\" \"===u[0]?A(e,a,s,!0):u===d?(e.lines.push(u),s.index++,a.index++):E(e,M(s),M(a)):function(e,n,t){var r,i,o,l=M(n),s=M(t);if(D(l)&&D(s)){if(k(l,s)&&I(t,l,l.length-s.length))return(r=e.lines).push.apply(r,x(l));if(k(s,l)&&I(n,s,s.length-l.length))return(i=e.lines).push.apply(i,x(s))}else if(function(e,n){return e.length===n.length&&k(e,n)}(l,s))return(o=e.lines).push.apply(o,x(l));E(e,l,s)}(e,s,a)}T(e,s),T(e,a),F(e)}(a={oldStart:Math.min(u.oldStart,d.oldStart),oldLines:0,newStart:Math.min(u.newStart+l,d.oldStart+s),newLines:0,lines:[]},u.oldStart,u.lines,d.oldStart,d.lines),o++,i++,r.hunks.push(a))}return r},e.parsePatch=C,e.reversePatch=function e(n){return Array.isArray(n)?n.map(e).reverse():c(c({},n),{},{oldFileName:n.newFileName,oldHeader:n.newHeader,newFileName:n.oldFileName,newHeader:n.oldHeader,hunks:n.hunks.map(function(e){return{oldLines:e.newLines,oldStart:e.newStart,newLines:e.oldLines,newStart:e.oldStart,linedelimiters:e.linedelimiters,lines:e.lines.map(function(e){return e.startsWith(\"-\")?\"+\".concat(e.slice(1)):e.startsWith(\"+\")?\"-\".concat(e.slice(1)):e})}})})},e.structuredPatch=y,Object.defineProperty(e,\"__esModule\",{value:!0})});\n;\n/* \u2500\u2500 Document text encoding \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n * Loaded documents are kept as plain strings (state.leftText / state.rightText).\n * Structural metadata that is NOT part of the document text \u2014 page breaks,\n * header/footer lines, list nesting depth \u2014 is encoded with ASCII control\n * characters that cannot occur in user-visible text:\n *\n * DOC_PAGE_MARK + n starts page n (own line)\n * DOC_META_MARK + meta + DOC_META_MARK prefixes a line with metadata,\n * meta = \"hf\" | \"lvl=2\" | \"hf;lvl=1\"\n *\n * Every external input (typed/pasted text, text files, PDF and DOCX text) is\n * passed through sanitizeExternalText(), which strips these control characters,\n * so document content can never be (mis)interpreted as metadata, and\n * docTextToPlainText() removes the metadata before text is shown to the user.\n * This file must stay free of DOM access (it also runs inside a Worker).\n */\nconst DOC_PAGE_MARK = '\\u001E';\nconst DOC_META_MARK = '\\u001F';\n\nfunction sanitizeExternalText(text) {\n return String(text == null ? '' : text)\n .replace(/\\r\\n?/g, '\\n')\n .replace(/\\f/g, '\\n')\n .replace(/[\\u0000-\\u0008\\u000B\\u000E-\\u001F\\u007F]/g, '');\n}\n\nfunction pageMarkerLine(pageNum) {\n return `${DOC_PAGE_MARK}${pageNum}`;\n}\n\nfunction metaLine(meta, text) {\n return meta ? `${DOC_META_MARK}${meta}${DOC_META_MARK}${text}` : text;\n}\n\nfunction serializeBlockLine(block) {\n const meta = [];\n if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf');\n if (block.indent \u003e 0) meta.push(`lvl=${block.indent}`);\n // A heading marker (\"## \") from the source stays, so a rewritten text keeps its structure.\n return metaLine(meta.join(';'), (block.headingMarker || '') + block.text);\n}\n\nfunction parseLineMeta(line) {\n if (!line.startsWith(DOC_META_MARK)) return { meta: null, text: line };\n const end = line.indexOf(DOC_META_MARK, 1);\n if (end \u003c 0) return { meta: null, text: line.slice(1) };\n const meta = {};\n for (const part of line.slice(1, end).split(';')) {\n const [key, value] = part.split('=');\n if (key) meta[key.trim()] = value === undefined ? true : value.trim();\n }\n return { meta, text: line.slice(end + 1) };\n}\n\n// Plain text for display/editing (paste dialog): page and header/footer metadata removed.\nfunction docTextToPlainText(docText) {\n if (!docText) return '';\n const out = [];\n for (const rawLine of String(docText).split('\\n')) {\n if (rawLine.startsWith(DOC_PAGE_MARK)) continue;\n out.push(parseLineMeta(rawLine).text);\n }\n return out\n .join('\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\n/* \u2500\u2500 Header / footer detection \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// A line that is nothing but a page number label (\"Seite 3 von 9\", \"- 3 -\", \"Page 2/7\").\nfunction isPageNumberLabel(line) {\n if (!line || line.length \u003e 40) return false;\n return /^(?:(?:Seite|Page|Blatt|S\\.|p\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?|-\\s*\\d+\\s*-|\\d+\\s*(?:\\/|von|of)\\s*\\d+)$/i.test(\n line.trim()\n );\n}\n\n// A page number label without a word like \"Seite\"/\"Page\" (\"3/9\", \"3 von 9\", \"- 3 -\"): the same\n// shapes occur as content (shares, table cells), so they need more evidence (see parseIntoBlocks).\nfunction isBarePageNumberLabel(line) {\n return isPageNumberLabel(line) && !/^\\s*(?:Seite|Page|Blatt|S\\.|p\\.)/i.test(line);\n}\n\n// Text-only header/footer candidate test (used for pasted text without page geometry).\n// Pure page labels qualify on their own; longer running lines (\"Vertraulich \u00b7 Seite 2 von 9\")\n// are only treated as header/footer by parseIntoBlocks when they repeat within the document.\nfunction isLikelyHeaderOrFooterLine(line) {\n if (!line || line.length \u003e 130) return false;\n if (isPageNumberLabel(line)) return true;\n if (/(?:\\bSeite|\\bPage)\\s+\\d+\\s*(?:von|of|\\/)\\s*\\d+\\s*$/i.test(line)) return true;\n if (/^(?:Vertraulich|Confidential|Stand:|Fassung|Entwurf|Draft)\\b.*(?:\\bSeite|\\bPage)\\s+\\d+/i.test(line)) {\n return true;\n }\n return false;\n}\n\n// Key for \"same running line on every page\": page numbers and other digits normalised away.\nfunction normalizeHfRepeatKey(text) {\n return String(text).toLowerCase().replace(/\\d+/g, '#').replace(/\\s+/g, ' ').trim();\n}\n\n// Key for comparing header/footer lines ACROSS versions: only page numbers are normalised,\n// so a changed date or version label in a header is still detected as a difference.\nfunction normalizeHfCompareKey(text) {\n return String(text)\n .toLowerCase()\n .replace(/(?:\\bseite|\\bpage|\\bblatt|\\bs\\.|\\bp\\.)\\s*\\d+(?:\\s*(?:von|of|\\/)\\s*\\d+)?/g, 'seite #')\n .replace(/^\\s*-\\s*\\d+\\s*-\\s*$/, '#')\n .replace(/^\\s*\\d+\\s*$/, '#')\n .replace(/\\b\\d+\\s*(?:\\/|von|of)\\s*\\d+\\s*$/, '#')\n .replace(/\\s+/g, ' ')\n .trim();\n}\n\n/**\n * Decides which margin lines of a paginated document are running headers/footers.\n * pages: array (one entry per page) of candidate lines { text, yPct } where yPct is the\n * line's vertical position as a fraction of the page height (0 = bottom, 1 = top).\n * A candidate is a header/footer only if its digit-normalised text occurs on at least\n * 50% of the pages (and on at least 2 pages) at a similar vertical position.\n * Returns an array of boolean arrays parallel to `pages`.\n */\nfunction detectRepeatingMarginLines(pages, yTolerance = 0.03) {\n const numPages = pages.length;\n const result = pages.map(lines =\u003e lines.map(() =\u003e false));\n if (numPages \u003c 2) return result;\n const minPages = Math.max(2, Math.ceil(numPages * 0.5));\n\n const groups = new Map();\n pages.forEach((lines, p) =\u003e {\n lines.forEach((line, l) =\u003e {\n if (!line || !line.text || !line.text.trim()) return;\n const band = line.yPct \u003e= 0.5 ? 'T' : 'B';\n const key = `${band}|${normalizeHfRepeatKey(line.text)}`;\n if (!groups.has(key)) groups.set(key, []);\n groups.get(key).push({ p, l, y: line.yPct });\n });\n });\n\n for (const members of groups.values()) {\n if (new Set(members.map(m =\u003e m.p)).size \u003c minPages) continue;\n // Cluster by vertical position: keep the members close to the median y.\n const ys = members.map(m =\u003e m.y).sort((a, b) =\u003e a - b);\n const median = ys[Math.floor(ys.length / 2)];\n const close = members.filter(m =\u003e Math.abs(m.y - median) \u003c= yTolerance);\n if (new Set(close.map(m =\u003e m.p)).size \u003c minPages) continue;\n for (const m of close) result[m.p][m.l] = true;\n }\n return result;\n}\n\n// Position of a header/footer line on its page: 'T' before the page's first body line,\n// 'B' after it; '' for documents without pages. Returns one entry per header/footer block.\nfunction headerFooterSlots(blocks) {\n const out = [];\n let page = null;\n let seenBody = false;\n for (const b of blocks) {\n if (b.pageNum !== page) {\n page = b.pageNum;\n seenBody = false;\n }\n if (!b.isHeaderFooter) {\n seenBody = true;\n continue;\n }\n out.push({ block: b, band: b.hasExplicitPage ? (seenBody ? 'B' : 'T') : '' });\n }\n return out;\n}\n\n// Longest common subsequence of two token arrays: returns [matchedA, matchedB] as boolean\n// arrays. Uses jsdiff's diffArrays (Myers) when available; otherwise a multiset fallback that\n// only keeps tokens hidden when both versions contain them equally often.\nfunction matchTokenSequences(a, b) {\n const matchedA = new Array(a.length).fill(false);\n const matchedB = new Array(b.length).fill(false);\n const diffLib = getDiffLibrary();\n if (diffLib && typeof diffLib.diffArrays === 'function') {\n let i = 0;\n let j = 0;\n for (const part of diffLib.diffArrays(a, b)) {\n const n = part.count !== undefined ? part.count : part.value.length;\n if (part.added) j += n;\n else if (part.removed) i += n;\n else {\n for (let k = 0; k \u003c n; k++) {\n matchedA[i++] = true;\n matchedB[j++] = true;\n }\n }\n }\n return [matchedA, matchedB];\n }\n const count = arr =\u003e arr.reduce((m, t) =\u003e m.set(t, (m.get(t) || 0) + 1), new Map());\n const ca = count(a);\n const cb = count(b);\n a.forEach((t, k) =\u003e { matchedA[k] = ca.get(t) === cb.get(t); });\n b.forEach((t, k) =\u003e { matchedB[k] = ca.get(t) === cb.get(t); });\n return [matchedA, matchedB];\n}\n\n/**\n * Change-preserving header/footer filter. Hiding running headers/footers must never hide a\n * change, so the hidden candidates of both versions are matched against each other as\n * sequences of (band, text) tokens in document order, with page numbers normalised away\n * (normalizeHfCompareKey). Matching in order pairs the occurrences page by page, also when\n * pages were inserted or removed. Only matched occurrences stay hidden; every unmatched one\n * (a header changed on one page, a footer changed on all pages, a repeated line deleted on\n * one page, an extra occurrence) is made visible at that occurrence (flag `hfVisible`) and\n * diffed like body text.\n * Exceptions, which stay hidden: pure page-number labels (\"Seite 3 von 9\": they change\n * whenever the page count changes, not with the content), and the running lines of a PDF\n * compared with a version that has no pages and no header/footer lines at all (DOCX, pasted\n * text): there is nothing to compare them with, they are layout, not a change.\n * Mutates the blocks; returns the number of header/footer blocks that remain hidden.\n */\nfunction reconcileHeaderFooterBlocks(leftBlocks, rightBlocks) {\n const hfL = leftBlocks.filter(b =\u003e b.isHeaderFooter);\n const hfR = rightBlocks.filter(b =\u003e b.isHeaderFooter);\n for (const b of hfL.concat(hfR)) delete b.hfVisible;\n if (leftBlocks.length && rightBlocks.length && (hfL.length || hfR.length)) {\n const paginated = blocks =\u003e blocks.some(b =\u003e b.hasExplicitPage);\n const comparable = paginated(leftBlocks) === paginated(rightBlocks) || (hfL.length \u003e 0 && hfR.length \u003e 0);\n if (comparable) {\n const candidates = blocks =\u003e\n headerFooterSlots(blocks).filter(slot =\u003e !isPageNumberLabel(slot.block.text));\n const slotsL = candidates(leftBlocks);\n const slotsR = candidates(rightBlocks);\n const token = slot =\u003e `${slot.band}|${normalizeHfCompareKey(slot.block.text)}`;\n const [matchedL, matchedR] = matchTokenSequences(slotsL.map(token), slotsR.map(token));\n slotsL.forEach((slot, k) =\u003e { if (!matchedL[k]) slot.block.hfVisible = true; });\n slotsR.forEach((slot, k) =\u003e { if (!matchedR[k]) slot.block.hfVisible = true; });\n }\n }\n return [...hfL, ...hfR].filter(b =\u003e !b.hfVisible).length;\n}\n\nfunction isHiddenHeaderFooter(block) {\n return Boolean(block && block.isHeaderFooter && !block.hfVisible);\n}\n\n/* \u2500\u2500 Block classification \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// An ordinary sentence is never a heading, whatever it starts with (\"\u00a7 2 Der Auftragnehmer\n// erbringt die Leistung fristgerecht.\"): it ends with sentence punctuation and has several\n// words, or it is simply too long for a heading.\nfunction looksLikeSentence(line) {\n const words = line.split(/\\s+/).length;\n return (/[.;:,!?][\"\u201c\u201d)]?$/.test(line) && words \u003e= 6) || words \u003e= 14;\n}\n\nfunction classifyBlockKind(line, isFirstContentBlock, isHeaderFooter) {\n if (isHeaderFooter) return 'hf';\n if (/^#\\s+/.test(line)) return 'h1';\n if (/^##\\s+/.test(line)) return 'h2';\n if (/^###\\s+/.test(line)) return 'h3';\n if (looksLikeSentence(line)) return classifyBodyKind(line);\n\n if (\n isFirstContentBlock &&\n line.length \u003c 105 &&\n !/^(\u00a7|\\(\\d+\\)|\\d+\\.|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s)/.test(line) &&\n (/^[A-Z\u00c4\u00d6\u00dc0-9\\s,&/-]{10,}$/.test(line) || !/[.:;]$/.test(line))\n ) {\n return 'h1';\n }\n\n if (\n /^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i.test(line) &&\n line.length \u003c 115\n ) {\n return 'h2';\n }\n\n // \"1. Haftung\" is a heading; \"1. Der Auftragnehmer haftet \u2026.\" is a numbered paragraph.\n if (/^\\d+\\.\\s+[A-Z\u00c4\u00d6\u00dc]/.test(line) && line.length \u003c 115 && !/[.;:,]$/.test(line)) {\n return 'h2';\n }\n\n if (\n /^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+[A-Z\u00c4\u00d6\u00dca-z\u00e4\u00f6\u00fc]/.test(line) &&\n line.length \u003c 105 &&\n !/[.;]$/.test(line)\n ) {\n return 'h3';\n }\n\n if (/^[A-Z\u00c4\u00d6\u00dc\\s&-]{10,}$/.test(line) && line.length \u003c 105) {\n return isFirstContentBlock ? 'h1' : 'h2';\n }\n\n return classifyBodyKind(line);\n}\n\nfunction classifyBodyKind(line) {\n if (/^[\u2022\u2023\u25aa\u25e6\u2013*-]\\s+\\S/.test(line)) {\n return 'bullet';\n }\n\n if (/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+\\S/i.test(line)) {\n return 'clause';\n }\n\n return 'p';\n}\n\nfunction extractListMarker(text, kind) {\n if (!text) return null;\n if (kind === 'bullet') {\n const m = text.match(/^([\u2022\u2023\u25aa\u25e6\u2013*-])\\s+(.*)$/s);\n if (m) return { marker: '\u2022', body: m[2] };\n }\n if (kind === 'clause') {\n const m = text.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\([ivx]+\\)|\\d+\\)|[a-z]\\))\\s+(.*)$/is);\n if (m) return { marker: m[1], body: m[2] };\n }\n return null;\n}\n\n// Numbering prefix that only reflects the position in the document (list marker or\n// heading number). Used to align blocks independent of renumbering. Returns null when\n// the block has no such marker (or the remaining body would be too short to identify it).\nfunction splitNumberingMarker(text, kind) {\n let m = null;\n if (kind === 'clause' || kind === 'bullet') {\n const split = extractListMarker(text, kind);\n if (split) m = [null, kind === 'bullet' ? text.match(/^\\S+/)[0] : split.marker, split.body];\n } else if (kind === 'h2' || kind === 'h3') {\n m = text.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|\\d+(?:\\.\\d+)+\\.?|\\d+\\.)\\s+([A-Z\u00c4\u00d6\u00dc].*)$/s);\n }\n if (!m) return null;\n const body = m[2].trim();\n if (body.length \u003c 3) return null;\n return { marker: m[1], body };\n}\n\nfunction extractClauseRef(line, fallbackIndex, currentSectionRef = '', kind = 'p') {\n if (kind === 'hf') return t('typeHf');\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n if (secMatch) {\n return secMatch[1].replace(/\\s+/g, ' ').trim();\n }\n const numHeadingMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (numHeadingMatch && line.length \u003c 115) {\n return numHeadingMatch[1];\n }\n const subHeadingMatch = line.match(/^(\\d+\\.\\d+(?:\\.\\d+)*)\\s+/);\n if (subHeadingMatch && line.length \u003c 115) {\n return subHeadingMatch[1];\n }\n const subMatch = line.match(/^(\\(\\d+\\)|\\([a-z]\\)|\\d+(?:\\.\\d+)+|\\d+\\)|[a-z]\\))/i);\n if (subMatch) {\n const sub = subMatch[1];\n return currentSectionRef ? `${currentSectionRef} ${sub}` : sub;\n }\n if (kind === 'bullet' && currentSectionRef) {\n return `${currentSectionRef} \u2022`;\n }\n return currentSectionRef ? `${currentSectionRef} #${fallbackIndex}` : `#${fallbackIndex}`;\n}\n\n// Words for the similarity measure: lower case, with leading/trailing punctuation removed, so\n// \"Services\" and \"Services.\" (or \"(Zuschlag)\" and \"Zuschlag\") count as the same word.\nfunction tokenizeWords(str) {\n const words = str\n .toLowerCase()\n .split(/\\s+/)\n .map(w =\u003e w.replace(/^[^\\p{L}\\p{N}\u00a7\u20ac$%]+|[^\\p{L}\\p{N}\u00a7\u20ac$%]+$/gu, '') || w)\n .filter(Boolean);\n const counts = new Map();\n for (const w of words) counts.set(w, (counts.get(w) || 0) + 1);\n return { words, set: new Set(words), counts };\n}\n\n/* \u2500\u2500 PDF line joining \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Words after which a trailing hyphen is a genuine elision (\"Vertrags- und Zahlungs\u2026\").\nconst HYPHEN_ELISION_NEXT = /^(?:und|oder|bzw\\.?|sowie|bis|als|wie|and|or|nor|to)\\b/;\n\n// Joins a wrapped PDF line onto the paragraph text, undoing typographic hyphenation:\n// \"Vertrags-\" + \"strafenregelung\" -\u003e \"Vertragsstrafenregelung\" (lowercase continuation),\n// \"Ost-\" + \"West-Verbindung\" -\u003e \"Ost-West-Verbindung\" (hyphen kept, no space),\n// \"Vertrags-\" + \"und Zahlungsbedingungen\" -\u003e unchanged with a space.\nfunction joinWrappedLine(prev, next) {\n if (!prev) return next;\n if (!next) return prev;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]\u00ad$/.test(prev)) return prev.slice(0, -1) + next;\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df]-$/.test(prev) && !/\\s-$/.test(prev)) {\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next) && !HYPHEN_ELISION_NEXT.test(next)) return prev.slice(0, -1) + next;\n if (/^[A-Z\u00c4\u00d6\u00dc]/.test(next)) return prev + next;\n }\n return `${prev} ${next}`;\n}\n\n/* \u2500\u2500 PDF text layout (pure; fed with PDF.js getTextContent() items) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Fraction of the page height at the top and bottom that may hold running headers/footers.\nconst PDF_MARGIN_BAND = 0.12;\n\n// List bullets drawn with symbol fonts come out of PDF.js as private-use code points\n// (Symbol U+F0B7, OpenSymbol U+F095, Wingdings \u25aa \u27a2 \u2756 \u25cf \u25a0). At the start of a line they are\n// shown as \"\u2022\" so the line is recognised as a bullet item, as in the DOCX version. Other\n// symbol glyphs (e.g. checked / unchecked boxes) are left untouched.\nconst PDF_SYMBOL_BULLET = /^[\\uF0B7\\uF095\\uF0A7\\uF0D8\\uF076\\uF06C\\uF06E]\\s*(?=\\S)/;\n\n/**\n * Groups PDF.js text items of one page into lines.\n * Spaces are inserted from geometry (gap between the end of one item and the start of the\n * next, relative to the font size) and from `hasEOL`, not between every item, so a font\n * change inside a word (\"Ge|samt|preis\") does not split the word.\n * pageView: [xMin, yMin, xMax, yMax] (PDF.js page.view).\n * Returns [{ text, y, yPct, fontSize, gapBefore }] in reading order.\n */\nfunction buildPdfPageLines(items, pageView) {\n const view = pageView && pageView.length === 4 ? pageView : [0, 0, 595, 842];\n const yMin = view[1];\n const height = view[3] - view[1] || 842;\n const lines = [];\n let cur = null;\n\n for (const item of items || []) {\n if (!item || typeof item.str !== 'string') continue;\n const tr = item.transform || [1, 0, 0, 1, 0, 0];\n const fontSize = Math.hypot(tr[2], tr[3]) || Math.hypot(tr[0], tr[1]) || 10;\n const x = tr[4];\n const y = tr[5];\n const str = sanitizeExternalText(item.str).replace(/\\n/g, ' ');\n if (!str) {\n if (item.hasEOL && cur) cur.eol = true;\n continue;\n }\n const hasWidth = typeof item.width === 'number' && item.width \u003e 0;\n const isNewLine = !cur || Math.abs(y - cur.y) \u003e Math.max(2, 0.5 * Math.min(fontSize, cur.fontSize));\n if (isNewLine) {\n if (cur) lines.push(cur);\n cur = { text: str, y, fontSize, endX: hasWidth ? x + item.width : null, eol: Boolean(item.hasEOL) };\n continue;\n }\n let needSpace;\n if (cur.eol) {\n needSpace = true;\n } else if (cur.endX === null || !hasWidth) {\n needSpace = true; // no geometry: keep the conservative behaviour\n } else {\n const gap = x - cur.endX;\n needSpace = gap \u003e fontSize * 0.18 || gap \u003c -fontSize * 0.5;\n }\n if (/\\s$/.test(cur.text) || /^\\s/.test(str)) needSpace = false;\n cur.text += (needSpace ? ' ' : '') + str;\n cur.endX = hasWidth ? x + item.width : null;\n cur.eol = Boolean(item.hasEOL);\n }\n if (cur) lines.push(cur);\n\n const out = lines\n .map(l =\u003e ({\n text: l.text.replace(/\\s+/g, ' ').trim().replace(PDF_SYMBOL_BULLET, '\u2022 '),\n y: l.y,\n yPct: (l.y - yMin) / height,\n fontSize: l.fontSize,\n gapBefore: false,\n }))\n .filter(l =\u003e l.text);\n\n // Paragraph breaks: a vertical step clearly larger than the line step. The line step is\n // the small end of this page's step distribution, capped at 1.45 \u00d7 font size so pages\n // consisting only of one-line paragraphs still get their breaks.\n const steps = [];\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n if (dy \u003e 0) steps.push(dy);\n }\n steps.sort((a, b) =\u003e a - b);\n const sizes = out.map(l =\u003e l.fontSize).sort((a, b) =\u003e a - b);\n const bodySize = sizes.length ? sizes[Math.floor(sizes.length / 2)] : 10;\n const lineStep = Math.min(steps.length ? steps[Math.floor(steps.length * 0.1)] : bodySize * 1.2, bodySize * 1.45);\n for (let i = 1; i \u003c out.length; i++) {\n const dy = out[i - 1].y - out[i].y;\n out[i].gapBefore = dy \u003e lineStep * 1.25 || dy \u003c -out[i].fontSize; // upward jump = new column/block\n }\n return out;\n}\n\n// Numbering such as \"4.\" or \"3.2\" must be followed by whitespace; amounts (\"145.000,00\",\n// \"1.000 St\u00fcck\") and dates (\"12.03.2026\") at the start of a wrapped line are not numbering.\nconst PDF_STRUCTURAL_START =\n /^(\u00a7\\s*\\d+|\\(\\d+\\)|(?!\\d{1,3}(?:\\.\\d{3})+(?:,\\d+)?\\s|\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\b)\\d+\\.(?:\\d+\\.)*\\d*\\s|[\u2022\u2023\u25aa\u25e6\u2013*-]\\s|\\([a-z]\\)|[a-z]\\)|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i;\n\n// Does `next` (first body line of a page) continue the paragraph `prev` from the previous page?\n// A capitalised first word (German nouns) also continues when the previous page ended in the\n// middle of a long paragraph of the same font size; a short unpunctuated line (heading) does not.\nfunction continuesAcrossPage(prev, next, prevSize, nextSize) {\n if (/[A-Za-z\u00c4\u00d6\u00dc\u00e4\u00f6\u00fc\u00df][-\u00ad]$/.test(prev)) return true;\n if (/[.:;!?)\"\u201c\u201d]$/.test(prev)) return false;\n if (/^[a-z\u00e4\u00f6\u00fc\u00df]/.test(next)) return true;\n return (\n /^[A-Z\u00c4\u00d6\u00dc]/.test(next) &&\n prev.length \u003e= 60 &&\n typeof prevSize === 'number' &&\n typeof nextSize === 'number' &&\n Math.abs(prevSize - nextSize) \u003c 0.5\n );\n}\n\n/**\n * Builds the encoded document text from per-page lines (see buildPdfPageLines).\n * Running headers/footers are detected by repetition across pages and emitted as\n * header/footer lines; wrapped lines are joined (with de-hyphenation) into paragraphs,\n * also across page breaks. Returns { text, emptyPages } (1-based page numbers without text).\n */\nfunction assemblePdfText(pages) {\n const candidates = pages.map(lines =\u003e\n lines.map(l =\u003e (l.yPct \u003e= 1 - PDF_MARGIN_BAND || l.yPct \u003c= PDF_MARGIN_BAND ? l : null))\n );\n const hfFlags = detectRepeatingMarginLines(candidates);\n\n const headers = pages.map(() =\u003e []);\n const footers = pages.map(() =\u003e []);\n const paragraphs = pages.map(() =\u003e []);\n let para = null;\n const flush = () =\u003e {\n if (para) paragraphs[para.page].push(para.text);\n para = null;\n };\n\n pages.forEach((lines, p) =\u003e {\n let firstBodyLine = true;\n lines.forEach((line, i) =\u003e {\n if (hfFlags[p][i]) {\n (line.yPct \u003e= 0.5 ? headers : footers)[p].push(line.text);\n return;\n }\n const structural = PDF_STRUCTURAL_START.test(line.text);\n let newPara;\n if (!para) newPara = true;\n else if (para.page !== p && firstBodyLine) {\n newPara = structural || !continuesAcrossPage(para.text, line.text, para.fontSize, line.fontSize);\n } else newPara = line.gapBefore || structural;\n firstBodyLine = false;\n if (newPara) {\n flush();\n para = { page: p, text: line.text, fontSize: line.fontSize };\n } else {\n para.text = joinWrappedLine(para.text, line.text);\n para.fontSize = line.fontSize;\n }\n });\n });\n flush();\n\n const out = [];\n const emptyPages = [];\n pages.forEach((lines, p) =\u003e {\n if (!lines.length) emptyPages.push(p + 1);\n out.push(pageMarkerLine(p + 1));\n for (const h of headers[p]) out.push(metaLine('hf', h));\n for (const text of paragraphs[p]) out.push(text);\n for (const f of footers[p]) out.push(metaLine('hf', f));\n });\n return { text: out.join('\\n\\n'), emptyPages };\n}\n\n/* \u2500\u2500 Parsing \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst LATIN_LIGATURES = { '\\uFB00': 'ff', '\\uFB01': 'fi', '\\uFB02': 'fl', '\\uFB03': 'ffi', '\\uFB04': 'ffl', '\\uFB05': 'st', '\\uFB06': 'st' };\n\n/**\n * Text normalisation applied to both documents before they are compared, so that differences\n * a reader cannot see are not reported as changes:\n * - Unicode NFC: \"Gr\u00f6\u00dfe\" with a precomposed \"\u00f6\" equals \"Gro\u0308\u00dfe\" (decomposed, common in PDFs\n * and text from macOS); canonically equivalent strings are the same text by definition;\n * - Latin ligatures from PDFs (\"\ufb01\" -\u003e \"fi\");\n * - no-break, narrow no-break and other fixed-width spaces -\u003e plain space;\n * - invisible characters removed: soft hyphen, zero-width space, word joiner, BOM;\n * - CR / CRLF and Unicode line/paragraph separators -\u003e \"\\n\".\n * Visible characters are never changed (no NFKC: \"m\u00b2\" stays \"m\u00b2\", \"\u00bd\" stays \"\u00bd\").\n * Line-end soft hyphens in PDFs are resolved earlier (joinWrappedLine), before this runs.\n */\nfunction normalizeComparableText(text) {\n return text\n .replace(/\\r\\n?|[\\u2028\\u2029\\u0085]/g, '\\n')\n .normalize('NFC')\n .replace(/[\\uFB00-\\uFB06]/g, ch =\u003e LATIN_LIGATURES[ch])\n .replace(/[\\u00A0\\u2000-\\u200A\\u202F\\u205F\\u3000]/g, ' ')\n .replace(/[\\u00AD\\u200B\\u2060\\uFEFF]/g, '');\n}\n\nfunction parseIntoBlocks(rawText) {\n const normalized = normalizeComparableText(String(rawText || '')).trim();\n if (!normalized) return [];\n\n const rawLines = normalized.split(/\\n+/);\n const entries = [];\n let currentPage = 1;\n let hasExplicitPageMarkers = false;\n\n for (let i = 0; i \u003c rawLines.length; i++) {\n const rawLine = rawLines[i].trim();\n if (!rawLine) continue;\n\n if (rawLine.startsWith(DOC_PAGE_MARK)) {\n const n = parseInt(rawLine.slice(DOC_PAGE_MARK.length), 10);\n currentPage = Math.max(1, Number.isFinite(n) ? n : currentPage + 1);\n hasExplicitPageMarkers = true;\n continue;\n }\n\n const { meta, text } = parseLineMeta(rawLine);\n const line = text.trim();\n if (!line) continue;\n entries.push({\n line,\n page: currentPage,\n hfMarked: Boolean(meta && meta.hf),\n indent: meta && meta.lvl ? Math.max(0, Math.min(8, parseInt(meta.lvl, 10) || 0)) : 0,\n });\n }\n\n // Text-only header/footer candidates count only when they repeat within the document.\n const repeatCounts = new Map();\n for (const e of entries) {\n if (!e.hfMarked && isLikelyHeaderOrFooterLine(e.line)) {\n const key = normalizeHfRepeatKey(e.line);\n repeatCounts.set(key, (repeatCounts.get(key) || 0) + 1);\n }\n }\n\n // Bare number labels (\"2/3\", \"3 von 9\", \"- 4 -\") also occur as content (a table cell \"2/3\",\n // a share). Unless the PDF reader already marked them as running footer lines (by position\n // and repetition), they are only page numbers when they form a running sequence: 2+ labels\n // of the same shape with increasing numbers. Otherwise they are compared like any other line.\n const barePageLabelKeys = new Set();\n const firstNums = new Map();\n for (const e of entries) {\n if (e.hfMarked || !isBarePageNumberLabel(e.line)) continue;\n const key = normalizeHfRepeatKey(e.line);\n if (!firstNums.has(key)) firstNums.set(key, []);\n firstNums.get(key).push(parseInt(e.line.match(/\\d+/)[0], 10));\n }\n for (const [key, nums] of firstNums) {\n if (nums.length \u003e= 2 && nums.every((n, i) =\u003e i === 0 || n \u003e nums[i - 1])) barePageLabelKeys.add(key);\n }\n const isPageLabel = line =\u003e\n isPageNumberLabel(line) && (!isBarePageNumberLabel(line) || barePageLabelKeys.has(normalizeHfRepeatKey(line)));\n\n const blocks = [];\n let currentSectionRef = '';\n let seenContentBlock = false;\n\n for (const entry of entries) {\n let line = entry.line;\n const isHeaderFooter =\n entry.hfMarked ||\n isPageLabel(line) ||\n (isLikelyHeaderOrFooterLine(line) &&\n (!isBarePageNumberLabel(line) || isPageLabel(line)) &&\n (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) \u003e= 2);\n\n const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter);\n let headingMarker = '';\n if (!isHeaderFooter) {\n seenContentBlock = true;\n const m = line.match(/^#{1,3}\\s+/);\n if (m) headingMarker = `${m[0].trim()} `;\n line = line.replace(/^#{1,3}\\s+/, '').trim();\n if (!line) continue;\n }\n\n const isHeading = kind === 'h1' || kind === 'h2' || kind === 'h3';\n\n // The section reference (\"1.\" / \"\u00a7 5\") follows the numbering in the text, not the derived\n // block kind: an edit that turns \"1. Scope of Services\" into a paragraph must not change\n // the references (and thus the alignment) of every clause below it.\n if (kind === 'h2' || kind === 'p' || kind === 'h1') {\n const secMatch = line.match(/^(\u00a7\\s*\\d+[a-z]?|Artikel\\s+\\d+|Anlage\\s+\\d+|Section\\s+\\d+|Exhibit\\s+[A-Z0-9]+)/i);\n const numMatch = line.match(/^(\\d+\\.)\\s+[A-Z\u00c4\u00d6\u00dc]/);\n if (secMatch) {\n currentSectionRef = secMatch[1].replace(/\\s+/g, ' ').trim();\n } else if (numMatch) {\n currentSectionRef = numMatch[1];\n }\n }\n\n const idx = blocks.length + 1;\n const numbering = isHeaderFooter ? null : splitNumberingMarker(line, kind);\n const alignText = numbering ? numbering.body : line;\n const { words, set, counts } = tokenizeWords(alignText);\n blocks.push({\n index: idx,\n pageNum: entry.page,\n hasExplicitPage: hasExplicitPageMarkers,\n refCode: extractClauseRef(line, idx, currentSectionRef, kind),\n sectionRef: currentSectionRef,\n text: line,\n kind,\n headingMarker,\n indent: entry.indent,\n isHeading,\n isHeaderFooter,\n numberingMarker: numbering ? numbering.marker : '',\n // Whitespace and the table-cell separator \" \u00b7 \" (DOCX/HTML intake; a PDF has spaces there) do not\n // make two paragraphs different: such rows are shown as unchanged, like renumbering.\n alignKey: alignText.replace(/\\s+/g, ' ').replace(/ \\u00B7 /g, ' '),\n words,\n wordSet: set,\n wordCounts: counts,\n });\n }\n\n // If document had no explicit page markers (e.g. pasted text or flat DOCX), paginate cleanly by section/length\n if (!hasExplicitPageMarkers && blocks.length \u003e 0) {\n let autoPage = 1;\n let blocksOnCurrentPage = 0;\n let charsOnCurrentPage = 0;\n for (let i = 0; i \u003c blocks.length; i++) {\n const b = blocks[i];\n const startsNewMajorSection =\n b.kind === 'h2' && blocksOnCurrentPage \u003e= 5 && charsOnCurrentPage \u003e= 650;\n const exceedsPageCapacity = blocksOnCurrentPage \u003e= 10 || charsOnCurrentPage \u003e= 1850;\n if (i \u003e 0 && (startsNewMajorSection || exceedsPageCapacity)) {\n autoPage++;\n blocksOnCurrentPage = 0;\n charsOnCurrentPage = 0;\n }\n b.pageNum = autoPage;\n blocksOnCurrentPage++;\n charsOnCurrentPage += b.text.length;\n }\n }\n\n return blocks;\n}\n\n/**\n * Parses both documents and applies the header/footer filter.\n * Returns all blocks, the blocks to compare, and the number of hidden header/footer lines.\n */\nfunction prepareComparisonBlocks(leftText, rightText, ignoreHeadersFooters) {\n const allLeftBlocks = parseIntoBlocks(leftText);\n const allRightBlocks = parseIntoBlocks(rightText);\n const hfCount = reconcileHeaderFooterBlocks(allLeftBlocks, allRightBlocks);\n const keep = b =\u003e !(ignoreHeadersFooters && isHiddenHeaderFooter(b));\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks: allLeftBlocks.filter(keep),\n rightBlocks: allRightBlocks.filter(keep),\n hfCount,\n };\n}\n\n/* \u2500\u2500 Alignment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nfunction blockAlignKey(block) {\n return block.alignKey !== undefined ? block.alignKey : block.text;\n}\n\nfunction blockWordCounts(block) {\n if (!block.wordCounts) block.wordCounts = tokenizeWords(blockAlignKey(block)).counts;\n return block.wordCounts;\n}\n\nfunction computeBlockSimilarity(blockA, blockB) {\n if (blockA.isHeaderFooter !== blockB.isHeaderFooter) return 0;\n if (blockA.text === blockB.text || blockAlignKey(blockA) === blockAlignKey(blockB)) return 1.0;\n // The block kind is re-derived from the text, so it may change with an edit (\"1. Scope of\n // Services\" + a sentence is no longer a heading). Kind alone never prevents pairing; a short\n // heading and a long paragraph are kept apart by the length bound below.\n const lenA = blockA.words.length;\n const lenB = blockB.words.length;\n if (!lenA || !lenB) return 0;\n\n const sameSpecificRef =\n blockA.refCode &&\n blockA.refCode === blockB.refCode &&\n !blockA.refCode.startsWith('#') &&\n !blockA.refCode.includes('#');\n\n const maxPossible = (2.0 * Math.min(lenA, lenB)) / (lenA + lenB);\n if (maxPossible \u003c 0.28 && !sameSpecificRef) return 0;\n\n // Multiset intersection: every occurrence of a word can be matched at most once.\n const countsA = blockWordCounts(blockA);\n const countsB = blockWordCounts(blockB);\n const [small, large] = countsA.size \u003c= countsB.size ? [countsA, countsB] : [countsB, countsA];\n let intersection = 0;\n for (const [word, n] of small) {\n const m = large.get(word);\n if (m) intersection += Math.min(n, m);\n }\n const wordSim = (2.0 * intersection) / (lenA + lenB);\n return sameSpecificRef ? Math.max(wordSim, 0.42) : wordSim;\n}\n\n// Minimum length for a deleted/inserted pair to be reported as a move.\nconst MIN_MOVE_TEXT_LENGTH = 12;\n\n// Pairs unmatched deleted and inserted blocks with identical text (ignoring whitespace\n// and renumbering) and flags them as moved. Rows keep type 'deleted' / 'inserted', so every\n// consumer that switches on row.type keeps working; `moved` and `movedToRowId` /\n// `movedFromRowId` describe the relocation.\nfunction markMovedRows(rows) {\n const deletedByKey = new Map();\n for (const row of rows) {\n if (row.type !== 'deleted' || row.leftBlock.isHeaderFooter) continue;\n const key = blockAlignKey(row.leftBlock).trim();\n if (key.length \u003c MIN_MOVE_TEXT_LENGTH) continue;\n if (!deletedByKey.has(key)) deletedByKey.set(key, []);\n deletedByKey.get(key).push(row);\n }\n for (const row of rows) {\n if (row.type !== 'inserted' || row.rightBlock.isHeaderFooter) continue;\n const candidates = deletedByKey.get(blockAlignKey(row.rightBlock).trim());\n if (!candidates || !candidates.length) continue;\n const from = candidates.shift();\n from.moved = true;\n from.movedToRowId = row.id;\n row.moved = true;\n row.movedFromRowId = from.id;\n }\n return rows;\n}\n\nfunction alignDocumentBlocks(leftBlocks, rightBlocks, onProgress) {\n const totalN = leftBlocks.length;\n const totalM = rightBlocks.length;\n if (totalN === 0 && totalM === 0) return [];\n\n const sameKey = (a, b) =\u003e a.text === b.text || blockAlignKey(a) === blockAlignKey(b);\n\n let prefixLen = 0;\n while (\n prefixLen \u003c totalN &&\n prefixLen \u003c totalM &&\n sameKey(leftBlocks[prefixLen], rightBlocks[prefixLen])\n ) {\n prefixLen++;\n }\n\n let suffixLen = 0;\n while (\n suffixLen \u003c totalN - prefixLen &&\n suffixLen \u003c totalM - prefixLen &&\n sameKey(leftBlocks[totalN - 1 - suffixLen], rightBlocks[totalM - 1 - suffixLen])\n ) {\n suffixLen++;\n }\n\n const midLeft = leftBlocks.slice(prefixLen, totalN - suffixLen);\n const midRight = rightBlocks.slice(prefixLen, totalM - suffixLen);\n const n = midLeft.length;\n const m = midRight.length;\n\n const rawPairs = [];\n for (let p = 0; p \u003c prefixLen; p++) {\n rawPairs.push({ left: leftBlocks[p], right: rightBlocks[p] });\n }\n\n if (n \u003e 0 || m \u003e 0) {\n for (const pair of alignMiddleBlocks(midLeft, midRight, onProgress)) rawPairs.push(pair);\n }\n\n for (let s = 0; s \u003c suffixLen; s++) {\n rawPairs.push({\n left: leftBlocks[totalN - suffixLen + s],\n right: rightBlocks[totalM - suffixLen + s],\n });\n }\n\n let monotonicPage = 1;\n const rows = rawPairs.map((pair, idx) =\u003e {\n const rawPage =\n (pair.right && pair.right.pageNum) ||\n (pair.left && pair.left.pageNum) ||\n monotonicPage;\n monotonicPage = Math.max(monotonicPage, rawPage);\n return buildAlignedRow(pair, idx, monotonicPage);\n });\n\n return markMovedRows(rows);\n}\n\nfunction buildAlignedRow(pair, idx, pageNum) {\n const rowId = `row-${idx + 1}`;\n if (pair.left && pair.right) {\n if (pair.left.text === pair.right.text) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.left.text }],\n };\n }\n if (blockAlignKey(pair.left) === blockAlignKey(pair.right) && pair.left.kind === pair.right.kind) {\n // Only the list marker / heading number differs (renumbering). Such rows are not\n // counted as changes; the renderer shows the old and new marker in a muted style.\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'equal',\n markerOnly: true,\n oldMarker: pair.left.numberingMarker,\n newMarker: pair.right.numberingMarker,\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'modified',\n leftBlock: pair.left,\n rightBlock: pair.right,\n wordDiffs: computeCleanWordDiff(pair.left.text, pair.right.text),\n };\n }\n if (pair.left && !pair.right) {\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'deleted',\n leftBlock: pair.left,\n rightBlock: null,\n wordDiffs: [{ value: pair.left.text, removed: true }],\n };\n }\n return {\n id: rowId,\n rowNumber: idx + 1,\n pageNum,\n type: 'inserted',\n leftBlock: null,\n rightBlock: pair.right,\n wordDiffs: [{ value: pair.right.text, added: true }],\n };\n}\n\nfunction escapeHtml(str) {\n return str\n .replace(/&/g, '&')\n .replace(/\u003c/g, '<')\n .replace(/\u003e/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/* \u2500\u2500 Word diff \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\n// Invariant of every word diff: the unchanged + removed parts spell the old text exactly,\n// and the unchanged + added parts spell the new text exactly.\nfunction wordDiffPreservesTexts(parts, oldText, newText) {\n let oldOut = '';\n let newOut = '';\n for (const part of parts) {\n if (!part.added) oldOut += part.value;\n if (!part.removed) newOut += part.value;\n }\n return oldOut === oldText && newOut === newText;\n}\n\nfunction getDiffLibrary() {\n if (typeof Diff !== 'undefined' && Diff && typeof Diff.diffWordsWithSpace === 'function') return Diff;\n if (typeof window !== 'undefined' && window.Diff) return window.Diff;\n return null;\n}\n\n// Upper bound for the work of one word diff (Myers: tokens \u00d7 edit length). Without it two long,\n// largely rewritten paragraphs take quadratic time (two 10,000-word paragraphs: ~45 s; a 1 MB\n// paragraph: hours). Normal paragraphs are far below the bound and always get the exact diff.\nconst WORD_DIFF_MAX_WORK = 1.5e7;\n\n// Coarse but exact fallback: common leading and trailing words unchanged, the rest replaced.\nfunction coarseWordDiff(oldText, newText) {\n const a = oldText.split(/(\\s+)/);\n const b = newText.split(/(\\s+)/);\n let pre = 0;\n while (pre \u003c a.length && pre \u003c b.length && a[pre] === b[pre]) pre++;\n let suf = 0;\n while (suf \u003c a.length - pre && suf \u003c b.length - pre && a[a.length - 1 - suf] === b[b.length - 1 - suf]) suf++;\n const parts = [\n { value: a.slice(0, pre).join('') },\n { value: a.slice(pre, a.length - suf).join(''), removed: true },\n { value: b.slice(pre, b.length - suf).join(''), added: true },\n { value: a.slice(a.length - suf).join('') },\n ];\n return parts.filter(p =\u003e p.value.length \u003e 0);\n}\n\nfunction computeCleanWordDiff(oldText, newText) {\n const diffLib = getDiffLibrary();\n if (!diffLib) {\n return [\n { value: oldText, removed: true },\n { value: newText, added: true },\n ];\n }\n\n // diffWordsWithSpace yields about two tokens (word + whitespace) per word.\n const tokens = 2 * ((oldText.match(/\\S+/g) || []).length + (newText.match(/\\S+/g) || []).length) + 2;\n const maxEditLength = Math.max(30, Math.floor(WORD_DIFF_MAX_WORK / tokens));\n const raw = diffLib.diffWordsWithSpace(oldText, newText, { maxEditLength });\n if (!raw) return coarseWordDiff(oldText, newText);\n\n // An unchanged number sandwiched between two changes is shown as replaced as well, so\n // \"1.000 EUR\" -\u003e \"2.000 USD\" reads as one change instead of three fragments.\n const mergedNums = [];\n for (let i = 0; i \u003c raw.length; i++) {\n const cur = raw[i];\n if (\n !cur.added &&\n !cur.removed &&\n /^[.,\\d]+$/.test(cur.value) &&\n mergedNums.length \u003e 0 &&\n i + 1 \u003c raw.length\n ) {\n const prev = mergedNums[mergedNums.length - 1];\n const next = raw[i + 1];\n if ((prev.removed || prev.added) && (next.removed || next.added)) {\n mergedNums.push({ value: cur.value, removed: true });\n mergedNums.push({ value: cur.value, added: true });\n continue;\n }\n }\n mergedNums.push({ value: cur.value, added: Boolean(cur.added), removed: Boolean(cur.removed) });\n }\n\n // Expand partial numeric/date replacements to the whole number:\n // \"0,[5]\" -\u003e \"[0,5]\", \"[145.000],00\" -\u003e \"[145.000,00]\", \"[12.03].2026\" -\u003e \"[12.03.2026]\".\n // Only for groups that both remove and add text: the unchanged digits are then moved into\n // BOTH sides, which keeps the invariant. Pure insertions/deletions are left untouched\n // (\"Frist 14 Tage\" -\u003e \"Frist 7 14 Tage\" must show \"7 \" inserted and \"14\" unchanged).\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n let idx = 0;\n while (idx \u003c mergedNums.length) {\n if (!isChange(mergedNums[idx])) {\n idx++;\n continue;\n }\n const start = idx;\n while (idx \u003c mergedNums.length && isChange(mergedNums[idx])) {\n idx++;\n }\n const end = idx - 1;\n const group = mergedNums.slice(start, idx);\n const firstRem = group.find(tok =\u003e tok.removed);\n const firstAdd = group.find(tok =\u003e tok.added);\n if (!firstRem || !firstAdd) continue;\n if (!group.some(tok =\u003e /\\d/.test(tok.value))) continue;\n // Only expand when both sides of the change start/end with a digit at the boundary.\n const remText = group.filter(tok =\u003e tok.removed).map(tok =\u003e tok.value).join('');\n const addText = group.filter(tok =\u003e tok.added).map(tok =\u003e tok.value).join('');\n\n if (start \u003e 0 && !isChange(mergedNums[start - 1]) && /^[\\d.,]/.test(remText) && /^[\\d.,]/.test(addText)) {\n const prevTok = mergedNums[start - 1];\n const prefixMatch = prevTok.value.match(/((?:\\d+[.,])+\\d*|[.,]\\d+)$/);\n if (prefixMatch) {\n const numPrefix = prefixMatch[1];\n prevTok.value = prevTok.value.slice(0, prevTok.value.length - numPrefix.length);\n firstRem.value = numPrefix + firstRem.value;\n firstAdd.value = numPrefix + firstAdd.value;\n }\n }\n\n if (idx \u003c mergedNums.length && !isChange(mergedNums[idx]) && /[\\d.,]$/.test(remText) && /[\\d.,]$/.test(addText)) {\n const nextTok = mergedNums[idx];\n const suffixMatch = nextTok.value.match(/^([.,]\\d+(?:[.,]\\d+)*|\\d+(?:[.,]\\d+)*)/);\n if (suffixMatch) {\n const numSuffix = suffixMatch[1];\n nextTok.value = nextTok.value.slice(numSuffix.length);\n let lastRem = null;\n let lastAdd = null;\n for (let k = start; k \u003c= end; k++) {\n if (mergedNums[k].removed) lastRem = mergedNums[k];\n if (mergedNums[k].added) lastAdd = mergedNums[k];\n }\n lastRem.value = lastRem.value + numSuffix;\n lastAdd.value = lastAdd.value + numSuffix;\n }\n }\n }\n\n const cleaned = mergeFragmentedChanges(\n mergedNums\n .filter(tok =\u003e tok.value.length \u003e 0)\n .map(tok =\u003e (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }))\n );\n\n if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned;\n // Never show a diff that does not reproduce the source texts: fall back to the raw diff.\n return raw.map(tok =\u003e\n tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value }\n );\n}\n\n/**\n * Joins changes that only an unchanged hyphen or space separates into one replacement, so a\n * rewritten phrase reads as one change instead of misleading word pairs:\n * \"[Standard]\u2192[Echtzeit]-[Berichtswesen]\u2192[Nachtragsmanagement]\" becomes\n * \"[Standard-Berichtswesen]\u2192[Echtzeit-Nachtragsmanagement]\". The joined glue goes into both\n * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of\n * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared\n * by both sides at the edges stays unchanged.\n */\nfunction mergeFragmentedChanges(parts) {\n const isChange = tok =\u003e Boolean(tok && (tok.removed || tok.added));\n const glued = [];\n for (let i = 0; i \u003c parts.length; i++) {\n const cur = parts[i];\n const isGlue =\n !isChange(cur) &&\n isChange(glued[glued.length - 1]) &&\n isChange(parts[i + 1]) &&\n (/^\\s+$/.test(cur.value) || !/\\s/.test(cur.value));\n if (isGlue) {\n glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true });\n } else {\n glued.push(cur);\n }\n }\n\n const out = [];\n const pushEqual = value =\u003e {\n if (!value) return;\n const last = out[out.length - 1];\n if (last && !isChange(last)) last.value += value;\n else out.push({ value });\n };\n let i = 0;\n while (i \u003c glued.length) {\n if (!isChange(glued[i])) {\n pushEqual(glued[i].value);\n i++;\n continue;\n }\n let rem = '';\n let add = '';\n while (i \u003c glued.length && isChange(glued[i])) {\n if (glued[i].removed) rem += glued[i].value;\n else add += glued[i].value;\n i++;\n }\n let lead = '';\n let trail = '';\n if (rem && add) {\n const leadRem = rem.match(/^\\s*/)[0];\n const leadAdd = add.match(/^\\s*/)[0];\n while (lead.length \u003c Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) {\n lead += leadRem[lead.length];\n }\n rem = rem.slice(lead.length);\n add = add.slice(lead.length);\n const trailRem = rem.match(/\\s*$/)[0];\n const trailAdd = add.match(/\\s*$/)[0];\n let n = 0;\n while (\n n \u003c Math.min(trailRem.length, trailAdd.length) &&\n trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n]\n ) {\n n++;\n }\n trail = n ? rem.slice(rem.length - n) : '';\n rem = rem.slice(0, rem.length - n);\n add = add.slice(0, add.length - n);\n }\n pushEqual(lead);\n if (rem) out.push({ value: rem, removed: true });\n if (add) out.push({ value: add, added: true });\n pushEqual(trail);\n }\n return out;\n}\n\nfunction coalesceSideTokens(sideParts, prop) {\n const out = [];\n for (let i = 0; i \u003c sideParts.length; i++) {\n const cur = sideParts[i];\n if (\n !cur[prop] &&\n /^\\s+$/.test(cur.value) &&\n out.length \u003e 0 &&\n out[out.length - 1][prop] &&\n i + 1 \u003c sideParts.length &&\n sideParts[i + 1][prop]\n ) {\n out[out.length - 1].value += cur.value;\n continue;\n }\n if (cur[prop] && out.length \u003e 0 && out[out.length - 1][prop]) {\n out[out.length - 1].value += cur.value;\n } else {\n out.push({ value: cur.value, [prop]: Boolean(cur[prop]) });\n }\n }\n return out;\n}\n\n;\n// Alignment engine and comparison pipeline.\n//\n// Everything in this file is pure (no DOM access) so that `scripts/build.py` can bundle it,\n// together with jsdiff and `04-core.js`, into the Blob Web Worker that runs comparisons off\n// the main thread (see `06a-compare-async.js` and `src/worker/compare-worker.js`). The very\n// same functions also run on the main thread as the synchronous fallback.\n\nconst ALIGN_GAP_PENALTY = -0.22;\n// Middles up to this many DP cells are aligned with one global Needleman-Wunsch pass,\n// exactly as before (~500 x 500 paragraphs, \u2248 20 pages against 20 pages).\nconst ALIGN_FULL_DP_MAX_CELLS = 250000;\n// Gaps between anchors up to this size still get the exact DP; larger ones use a banded DP\n// so memory stays bounded (the exact DP needs 5 bytes per cell).\nconst ALIGN_EXACT_DP_MAX_CELLS = 4000000;\n\n// Global Needleman-Wunsch alignment of two block lists (O(n\u00b7m) time and memory).\nfunction alignBlocksExact(midLeft, midRight, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const dp = Array.from({ length: n + 1 }, () =\u003e new Float32Array(m + 1));\n const ptr = Array.from({ length: n + 1 }, () =\u003e new Uint8Array(m + 1));\n const GAP_PENALTY = ALIGN_GAP_PENALTY;\n\n for (let i = 1; i \u003c= n; i++) {\n dp[i][0] = i * GAP_PENALTY;\n ptr[i][0] = 2;\n }\n for (let j = 1; j \u003c= m; j++) {\n dp[0][j] = j * GAP_PENALTY;\n ptr[0][j] = 3;\n }\n\n const reportEvery = Math.max(1, Math.floor(250000 / m));\n for (let i = 1; i \u003c= n; i++) {\n const rowPrev = dp[i - 1];\n const row = dp[i];\n const ptrRow = ptr[i];\n const leftBlock = midLeft[i - 1];\n for (let j = 1; j \u003c= m; j++) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n const matchScore = sim \u003e= 0.28 ? sim : -0.5;\n const scoreDiag = rowPrev[j - 1] + matchScore;\n const scoreUp = rowPrev[j] + GAP_PENALTY;\n const scoreLeft = row[j - 1] + GAP_PENALTY;\n\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n row[j] = scoreDiag;\n ptrRow[j] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n row[j] = scoreUp;\n ptrRow[j] = 2;\n } else {\n row[j] = scoreLeft;\n ptrRow[j] = 3;\n }\n }\n if (onCells && i % reportEvery === 0) onCells(reportEvery * m);\n }\n if (onCells) onCells((n % reportEvery) * m);\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[i][j];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\nfunction alignBlocksTrivial(midLeft, midRight) {\n const pairs = [];\n for (const b of midLeft) pairs.push({ left: b, right: null });\n for (const b of midRight) pairs.push({ left: null, right: b });\n return pairs;\n}\n\n// Same scoring as alignBlocksExact, restricted to a diagonal band so that memory and time are\n// O((n + m) \u00b7 band). Only used for gaps that are too large for the exact DP and have no anchors.\nfunction alignBlocksBanded(midLeft, midRight, maxCells, onCells) {\n const n = midLeft.length;\n const m = midRight.length;\n if (n === 0 || m === 0) return alignBlocksTrivial(midLeft, midRight);\n\n const slope = m / n;\n const minHalf = Math.ceil(Math.max(slope, 1)) + 2;\n const half = Math.max(minHalf, Math.floor(maxCells / (2 * (n + 1))));\n const width = 2 * half + 1;\n const lo = new Int32Array(n + 1);\n const hi = new Int32Array(n + 1);\n for (let i = 0; i \u003c= n; i++) {\n const center = Math.round(i * slope);\n lo[i] = Math.max(0, center - half);\n hi[i] = Math.min(m, center + half);\n }\n // Make consecutive bands overlap so a monotone path always exists.\n for (let i = 1; i \u003c= n; i++) {\n if (lo[i] \u003e hi[i - 1]) lo[i] = hi[i - 1];\n }\n\n const NEG = -Infinity;\n const score = new Float32Array((n + 1) * width).fill(NEG);\n const ptr = new Uint8Array((n + 1) * width);\n const at = (i, j) =\u003e (j \u003c lo[i] || j \u003e hi[i] ? -1 : i * width + (j - lo[i]));\n\n for (let j = lo[0]; j \u003c= hi[0]; j++) {\n score[at(0, j)] = j * ALIGN_GAP_PENALTY;\n ptr[at(0, j)] = 3;\n }\n\n for (let i = 1; i \u003c= n; i++) {\n const leftBlock = midLeft[i - 1];\n for (let j = lo[i]; j \u003c= hi[i]; j++) {\n const k = at(i, j);\n if (j === 0) {\n score[k] = i * ALIGN_GAP_PENALTY;\n ptr[k] = 2;\n continue;\n }\n const kDiag = at(i - 1, j - 1);\n const kUp = at(i - 1, j);\n const kLeft = at(i, j - 1);\n let scoreDiag = NEG;\n if (kDiag \u003e= 0 && score[kDiag] !== NEG) {\n const sim = computeBlockSimilarity(leftBlock, midRight[j - 1]);\n scoreDiag = score[kDiag] + (sim \u003e= 0.28 ? sim : -0.5);\n }\n const scoreUp = kUp \u003e= 0 ? score[kUp] + ALIGN_GAP_PENALTY : NEG;\n const scoreLeft = kLeft \u003e= 0 ? score[kLeft] + ALIGN_GAP_PENALTY : NEG;\n if (scoreDiag \u003e= scoreUp && scoreDiag \u003e= scoreLeft) {\n score[k] = scoreDiag;\n ptr[k] = 1;\n } else if (scoreUp \u003e= scoreLeft) {\n score[k] = scoreUp;\n ptr[k] = 2;\n } else {\n score[k] = scoreLeft;\n ptr[k] = 3;\n }\n }\n if (onCells) onCells(hi[i] - lo[i] + 1);\n }\n\n const pairs = [];\n let i = n;\n let j = m;\n while (i \u003e 0 || j \u003e 0) {\n const move = ptr[at(i, j)];\n if (i \u003e 0 && j \u003e 0 && move === 1) {\n pairs.push({ left: midLeft[i - 1], right: midRight[j - 1] });\n i--;\n j--;\n } else if (i \u003e 0 && (j === 0 || move === 2)) {\n pairs.push({ left: midLeft[i - 1], right: null });\n i--;\n } else {\n pairs.push({ left: null, right: midRight[j - 1] });\n j--;\n }\n }\n pairs.reverse();\n return pairs;\n}\n\n// Patience-style anchors: blocks whose text (ignoring renumbering) occurs exactly once on each side, reduced to the\n// longest chain that is increasing on both sides. Returns [[leftIdx, rightIdx], ...].\nfunction findUniqueBlockAnchors(midLeft, midRight) {\n const leftCount = new Map();\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n leftCount.set(key, leftCount.has(key) ? -1 : i);\n }\n const rightIndex = new Map();\n for (let j = 0; j \u003c midRight.length; j++) {\n const key = blockAlignKey(midRight[j]);\n rightIndex.set(key, rightIndex.has(key) ? -1 : j);\n }\n\n const candidates = [];\n for (let i = 0; i \u003c midLeft.length; i++) {\n const key = blockAlignKey(midLeft[i]);\n if (leftCount.get(key) !== i) continue;\n const j = rightIndex.get(key);\n if (j === undefined || j \u003c 0) continue;\n if (midLeft[i].isHeaderFooter !== midRight[j].isHeaderFooter) continue;\n candidates.push([i, j]);\n }\n if (candidates.length === 0) return [];\n\n // Longest increasing subsequence on the right index (left indices are already increasing).\n const tails = [];\n const prev = new Int32Array(candidates.length).fill(-1);\n for (let c = 0; c \u003c candidates.length; c++) {\n const j = candidates[c][1];\n let loIdx = 0;\n let hiIdx = tails.length;\n while (loIdx \u003c hiIdx) {\n const mid = (loIdx + hiIdx) \u003e\u003e 1;\n if (candidates[tails[mid]][1] \u003c j) loIdx = mid + 1;\n else hiIdx = mid;\n }\n if (loIdx \u003e 0) prev[c] = tails[loIdx - 1];\n tails[loIdx] = c;\n }\n const chain = [];\n for (let c = tails[tails.length - 1]; c \u003e= 0; c = prev[c]) chain.push(candidates[c]);\n chain.reverse();\n return chain;\n}\n\n// Aligns the differing middle of two documents. Small and medium middles use one global DP\n// (identical to the historical behaviour); very long ones are first split at unique identical\n// blocks so the DP only runs inside the gaps between them.\nfunction alignMiddleBlocks(midLeft, midRight, onProgress) {\n const n = midLeft.length;\n const m = midRight.length;\n const totalCells = n * m;\n let doneCells = 0;\n let lastReported = -1;\n const onCells = onProgress\n ? cells =\u003e {\n doneCells += cells;\n const frac = totalCells ? Math.min(1, doneCells / totalCells) : 1;\n if (frac - lastReported \u003e= 0.02) {\n lastReported = frac;\n onProgress(frac);\n }\n }\n : null;\n\n if (totalCells \u003c= ALIGN_FULL_DP_MAX_CELLS) {\n return alignBlocksExact(midLeft, midRight, onCells);\n }\n\n const anchors = findUniqueBlockAnchors(midLeft, midRight);\n // Progress is measured against the cells that will actually be computed.\n let plannedCells = 0;\n let pi = 0;\n let pj = 0;\n for (const [ai, aj] of anchors.concat([[n, m]])) {\n const cells = (ai - pi) * (aj - pj);\n plannedCells += cells \u003c= ALIGN_EXACT_DP_MAX_CELLS ? cells : Math.min(cells, ALIGN_EXACT_DP_MAX_CELLS * 2);\n pi = ai + 1;\n pj = aj + 1;\n }\n const scale = plannedCells \u003e 0 ? totalCells / plannedCells : 1;\n const scaledOnCells = onCells ? cells =\u003e onCells(cells * scale) : null;\n const alignGapScaled = (gapLeft, gapRight) =\u003e {\n const cells = gapLeft.length * gapRight.length;\n if (cells \u003c= ALIGN_EXACT_DP_MAX_CELLS) return alignBlocksExact(gapLeft, gapRight, scaledOnCells);\n return alignBlocksBanded(gapLeft, gapRight, ALIGN_EXACT_DP_MAX_CELLS, scaledOnCells);\n };\n\n const pairs = [];\n let prevI = 0;\n let prevJ = 0;\n for (const [ai, aj] of anchors) {\n for (const p of alignGapScaled(midLeft.slice(prevI, ai), midRight.slice(prevJ, aj))) pairs.push(p);\n pairs.push({ left: midLeft[ai], right: midRight[aj] });\n prevI = ai + 1;\n prevJ = aj + 1;\n }\n for (const p of alignGapScaled(midLeft.slice(prevI), midRight.slice(prevJ))) pairs.push(p);\n if (onProgress) onProgress(1);\n return pairs;\n}\n\n// Full comparison pipeline: parse both texts, reconcile and filter headers/footers, align.\n// Pure and structured-clone friendly; this is what the worker runs and what the synchronous\n// fallback runs on the main thread.\nfunction computeComparison(request, onProgress) {\n const report = typeof onProgress === 'function' ? onProgress : null;\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n if (report) report(0.05);\n\n const { allLeftBlocks, allRightBlocks, leftBlocks, rightBlocks } = prepared;\n let alignedRows = [];\n if (leftBlocks.length \u003e 0 && rightBlocks.length \u003e 0) {\n alignedRows = alignDocumentBlocks(\n leftBlocks,\n rightBlocks,\n report ? frac =\u003e report(0.05 + frac * 0.9) : undefined\n );\n }\n if (report) report(1);\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n };\n}\n\nfunction countPages(blocks) {\n return blocks.reduce((mx, b) =\u003e Math.max(mx, b.pageNum || 1), 0);\n}\n\n// Tokenized word lists are only needed for alignment; dropping them keeps the result small\n// when it is posted from the worker to the page.\nconst ALIGNMENT_ONLY_BLOCK_KEYS = ['words', 'wordSet', 'wordCounts'];\n\nfunction stripAlignmentFeatures(block) {\n for (const key of ALIGNMENT_ONLY_BLOCK_KEYS) delete block[key];\n}\n\nfunction blocksEquivalent(a, b, ignoreText) {\n for (const key of Object.keys(a)) {\n if (ALIGNMENT_ONLY_BLOCK_KEYS.includes(key)) continue;\n if (ignoreText && (key === 'text' || key === 'alignKey' || key === 'refCode' || key === 'kind' ||\n key === 'isHeading' || key === 'numberingMarker' || key === 'indent')) {\n continue;\n }\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nconst MOVE_KEYS = ['moved', 'movedToRowId', 'movedFromRowId'];\n\n// Fast path for edits, reverts, undo and redo of long documents: when the left text and the\n// options are unchanged\n// and the new right text differs from the previous one in exactly one block (same block count;\n// every other block identical, including page, section and header/footer metadata), the previous\n// alignment is kept and only that row is re-diffed. Returns { result, changedRowIds } or null\n// when a full re-alignment is required. This is an approximation of a full comparison, so the\n// page re-checks it with a full comparison in the worker (see runComparison).\nfunction computeIncrementalComparison(prev, request) {\n if (!prev || !prev.request || !prev.result) return null;\n const pr = prev.request;\n if (\n pr.leftText !== request.leftText ||\n pr.ignoreHeadersFooters !== request.ignoreHeadersFooters ||\n (pr.labels && pr.labels.typeHf) !== (request.labels && request.labels.typeHf)\n ) {\n return null;\n }\n const old = prev.result;\n if (!old.alignedRows.length || !old.allLeftBlocks) return null;\n\n const prepared = prepareComparisonBlocks(\n request.leftText || '',\n request.rightText || '',\n request.ignoreHeadersFooters\n );\n const { allLeftBlocks, allRightBlocks } = prepared;\n if (\n allLeftBlocks.length !== old.allLeftBlocks.length ||\n allRightBlocks.length !== old.allRightBlocks.length ||\n prepared.hfCount !== old.filteredHfCount\n ) {\n return null;\n }\n // Header/footer reconciliation looks at both documents, so the left side must be re-checked.\n for (let i = 0; i \u003c allLeftBlocks.length; i++) {\n if (!blocksEquivalent(old.allLeftBlocks[i], allLeftBlocks[i], false)) return null;\n }\n let changedIdx = -1;\n for (let i = 0; i \u003c allRightBlocks.length; i++) {\n const a = old.allRightBlocks[i];\n const b = allRightBlocks[i];\n if (a.text === b.text) {\n if (!blocksEquivalent(a, b, false)) return null;\n continue;\n }\n if (changedIdx !== -1 || !blocksEquivalent(a, b, true)) return null;\n changedIdx = i;\n }\n\n const blockMap = new Map();\n for (let i = 0; i \u003c allLeftBlocks.length; i++) blockMap.set(old.allLeftBlocks[i], allLeftBlocks[i]);\n for (let i = 0; i \u003c allRightBlocks.length; i++) blockMap.set(old.allRightBlocks[i], allRightBlocks[i]);\n const leftBlocks = old.leftBlocks.map(b =\u003e blockMap.get(b));\n const rightBlocks = old.rightBlocks.map(b =\u003e blockMap.get(b));\n if (leftBlocks.some(b =\u003e !b) || rightBlocks.some(b =\u003e !b)) return null;\n\n const changedBlock = changedIdx === -1 ? null : allRightBlocks[changedIdx];\n let changedRowId = null;\n let unmatchedEdit = false;\n const alignedRows = old.alignedRows.map((row, idx) =\u003e {\n const left = row.leftBlock ? blockMap.get(row.leftBlock) : null;\n const right = row.rightBlock ? blockMap.get(row.rightBlock) : null;\n if (changedBlock && right === changedBlock) {\n // Only a matched pair keeps its row; an edited insertion may now match a deleted block.\n if (!left) unmatchedEdit = true;\n changedRowId = row.id;\n return buildAlignedRow({ left, right }, idx, row.pageNum);\n }\n const copy = Object.assign({}, row, { leftBlock: left, rightBlock: right });\n for (const key of MOVE_KEYS) delete copy[key];\n return copy;\n });\n\n if (changedBlock) {\n const changedRow = alignedRows.find(r =\u003e r.id === changedRowId);\n if (!changedRow || unmatchedEdit) return null; // hidden header/footer, or unmatched block\n // Keep the old pairing only if the alignment would still consider the blocks a match.\n if (\n changedRow.leftBlock &&\n changedRow.type === 'modified' &&\n computeBlockSimilarity(changedRow.leftBlock, changedRow.rightBlock) \u003c 0.28\n ) {\n return null;\n }\n }\n\n markMovedRows(alignedRows);\n const changedRowIds = [];\n for (let i = 0; i \u003c alignedRows.length; i++) {\n const row = alignedRows[i];\n const before = old.alignedRows[i];\n if (row.id === changedRowId || MOVE_KEYS.some(key =\u003e row[key] !== before[key])) {\n changedRowIds.push(row.id);\n }\n }\n\n for (const b of allLeftBlocks) stripAlignmentFeatures(b);\n for (const b of allRightBlocks) stripAlignmentFeatures(b);\n\n return {\n changedRowIds,\n result: {\n allLeftBlocks,\n allRightBlocks,\n leftBlocks,\n rightBlocks,\n filteredHfCount: prepared.hfCount,\n leftPages: countPages(leftBlocks),\n rightPages: countPages(rightBlocks),\n alignedRows,\n },\n };\n}\n\n;\n// Runtime of the comparison Web Worker.\n//\n// `scripts/build.py` concatenates jsdiff, `src/js/04-core.js`, `src/js/04a-align.js` and this file\n// into one classic worker script and embeds it in the page as a string; the page starts it from a\n// Blob URL (see `src/js/06a-compare-async.js`). No network access, no storage.\n//\n// Protocol (page -\u003e worker): { type: 'compare', id, request }\n// (worker -\u003e page): { type: 'ready' }\n// { type: 'progress', id, value } value in [0, 1]\n// { type: 'result', id, result }\n// { type: 'error', id, message }\n\nlet workerLabels = {};\n\n// 04-core.js looks up a few localized labels (e.g. the header/footer reference code) via t().\nfunction t(key) {\n return workerLabels[key] || key;\n}\n\nself.onmessage = event =\u003e {\n const msg = event.data || {};\n if (msg.type !== 'compare') return;\n const { id, request } = msg;\n try {\n workerLabels = request.labels || {};\n let lastSent = -1;\n const result = computeComparison(request, value =\u003e {\n if (value - lastSent \u003e= 0.02 || value === 1) {\n lastSent = value;\n self.postMessage({ type: 'progress', id, value });\n }\n });\n self.postMessage({ type: 'result', id, result });\n } catch (err) {\n self.postMessage({ type: 'error', id, message: String((err && err.message) || err) });\n }\n};\n\nself.postMessage({ type: 'ready' });\n"; // Small inputs are compared synchronously: alignment takes a few milliseconds and the result is // on screen in the same frame (no flash of the previous comparison, and synchronous callers such @@ -9769,6 +10005,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: template ? template.kind : 'p', + headingMarker: template ? template.headingMarker : '', indent: template ? template.indent : 0, isHeaderFooter: Boolean(target && target.rightBlock && target.rightBlock.isHeaderFooter), }) @@ -9830,6 +10067,7 @@ <h3>Your data</h3> serializeBlockLine({ text: line.trim(), kind: row.rightBlock.kind, + headingMarker: row.rightBlock.headingMarker, indent: row.rightBlock.indent, isHeaderFooter: Boolean(row.rightBlock.isHeaderFooter), }) @@ -10303,32 +10541,34 @@ <h3>Your data</h3> return replaced.concat(tokens.slice(1)); } +function isHeaderFooterBlock(block) { + return Boolean(block && (block.isHeaderFooter || block.kind === 'hf')); +} + /** - * Builds the WordprocessingML body for the comparison. Pure function of `rows` and `meta` - * so it can be unit-tested without a browser. + * Builds the WordprocessingML body. Pure function of `rows` and `meta` so it can be unit-tested + * without a browser. + * meta.kind 'tracked' (default): open changes as tracked changes, accepted ones applied + * meta.kind 'final': the new version only, without any marks + * The body is the document text and nothing else: running headers and footers of the source + * (page furniture of a PDF) are left out, so "Accept all" in Word yields a clean document. + * meta.comment (lines of text) becomes a Word comment on the first paragraph. */ function buildDocxDocumentXml(rows, meta) { const date = toWordDate(meta.date); + const final = meta.kind === 'final'; let revId = 1; const revAttrs = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; const paragraphs = []; - const metaPara = (label, value) => - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/></w:pPr>${docxRun(`${label}: `, false, '<w:b/>')}${docxRun(value)}</w:p>`; - - paragraphs.push(`<w:p><w:pPr><w:pStyle w:val="Title"/></w:pPr>${docxRun(meta.title)}</w:p>`); - for (const [label, value] of meta.lines) paragraphs.push(metaPara(label, value)); - paragraphs.push( - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/><w:pBdr><w:bottom w:val="single" w:sz="6" w:space="6" w:color="A6A6A6"/></w:pBdr><w:spacing w:after="360"/></w:pPr>${docxRun(meta.note, false, '<w:i/>')}</w:p>` - ); - for (const row of rows) { const block = row.rightBlock || row.leftBlock; + if (isHeaderFooterBlock(block)) continue; const style = docxStyleForBlock(block); // Word semantics: a change accepted in Doc Diff is plain text (an accepted deletion is // simply gone); open changes become tracked changes. Rejected changes are already reverted - // in the rows (they compare as unchanged). - const accepted = row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'; + // in the rows (they compare as unchanged). The final version applies every change. + const accepted = final || (row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'); if (accepted && !row.rightBlock) continue; const tokens = docxApplyMarkerTab( accepted ? [{ value: cleanExportText(row.rightBlock.text) }] : getExportDiffTokens(row), @@ -10352,7 +10592,16 @@ <h3>Your data</h3> return docxRun(tok.value, false); }) .join(''); - paragraphs.push(`<w:p>${pPr}${runs}</w:p>`); + paragraphs.push({ pPr, runs }); + } + if (!paragraphs.length) paragraphs.push({ pPr: '', runs: '' }); + + if (meta.comment && meta.comment.length) { + const first = paragraphs[0]; + first.runs = + '<w:commentRangeStart w:id="0"/>' + + first.runs + + '<w:commentRangeEnd w:id="0"/><w:r><w:commentReference w:id="0"/></w:r>'; } const sectPr = @@ -10365,7 +10614,23 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - `<w:body>${paragraphs.join('')}${sectPr}</w:body></w:document>` + `<w:body>${paragraphs.map(p => `<w:p>${p.pPr}${p.runs}</w:p>`).join('')}${sectPr}</w:body></w:document>` + ); +} + +/** The Word comment with the summary of a comparison (one paragraph per line). */ +function buildDocxCommentsXml(meta) { + const date = toWordDate(meta.date); + const paras = meta.comment + .map((line, i) => + `<w:p>${i === 0 ? '<w:r><w:annotationRef/></w:r>' : ''}${docxRun(line, false, i === 0 ? '<w:b/>' : '')}</w:p>` + ) + .join(''); + return ( + '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + + '<w:comments xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' + + `<w:comment w:id="0" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}" w:initials="DD">${paras}</w:comment>` + + '</w:comments>' ); } @@ -10374,9 +10639,7 @@ <h3>Your data</h3> '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:ftr xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:tabs><w:tab w:val="right" w:pos="9072"/></w:tabs></w:pPr>' + - docxRun(meta.footer) + - '<w:r><w:tab/></w:r>' + + '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:jc w:val="right"/></w:pPr>' + docxRun(`${meta.pageLabel} `) + '<w:fldSimple w:instr=" PAGE "><w:r><w:t>1</w:t></w:r></w:fldSimple>' + docxRun(` ${meta.pageOfLabel} `) + @@ -10420,7 +10683,8 @@ <h3>Your data</h3> function buildDocxPackageFiles(rows, meta) { const langTag = meta.lang === 'de' ? 'de-DE' : 'en-US'; const created = toWordDate(meta.date); - return [ + const hasComment = Boolean(meta.comment && meta.comment.length); + const files = [ { name: '[Content_Types].xml', data: @@ -10432,6 +10696,7 @@ <h3>Your data</h3> '<Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>' + '<Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/>' + '<Override PartName="/word/footer1.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml"/>' + + (hasComment ? '<Override PartName="/word/comments.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml"/>' : '') + '<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>' + '<Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>' + '</Types>', @@ -10455,6 +10720,7 @@ <h3>Your data</h3> 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' + `<dc:title>${escapeXml(meta.title)}</dc:title>` + `<dc:subject>${escapeXml(meta.subject)}</dc:subject>` + + (meta.description ? `<dc:description>${escapeXml(meta.description)}</dc:description>` : '') + `<dc:creator>${DOCX_AUTHOR}</dc:creator>` + `<cp:lastModifiedBy>${DOCX_AUTHOR}</cp:lastModifiedBy>` + `<dc:language>${langTag}</dc:language>` + @@ -10477,6 +10743,7 @@ <h3>Your data</h3> '<Relationship Id="rIdStyles" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>' + '<Relationship Id="rIdSettings" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>' + '<Relationship Id="rIdFooter1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>' + + (hasComment ? '<Relationship Id="rIdComments" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" Target="comments.xml"/>' : '') + '</Relationships>', }, { name: 'word/document.xml', data: buildDocxDocumentXml(rows, meta) }, @@ -10492,37 +10759,66 @@ <h3>Your data</h3> }, { name: 'word/footer1.xml', data: buildDocxFooterXml(meta) }, ]; + if (hasComment) files.push({ name: 'word/comments.xml', data: buildDocxCommentsXml(meta) }); + return files; } -/** Builds the complete .docx file (Uint8Array) for the current comparison state. */ -function buildDocxRedline(date = new Date()) { - const counts = getExportCounts(); +/** + * Summary of the comparison for the Word comment of the tracked export: the documents, the + * counts, the review status, how to work with the marks, and the header/footer changes (they + * are not in the body text). + */ +function buildDocxSummaryLines(date) { + const items = getExportItems(); + const counts = getExportCounts(items); const lines = [ - [t('exportLabelOriginal'), getDisplayDocName('left')], - [t('exportLabelRevised'), getDisplayDocName('right')], - [t('exportLabelCreated'), formatExportDate(date)], - [t('exportLabelChanges'), formatExportCountsLine(counts)], + getExportTitle(), + `${t('exportLabelCreated')}: ${formatExportDate(date)}`, + `${t('exportLabelChanges')}: ${formatExportCountsLine(counts)}`, ]; - const review = getExportReviewLine(); - if (review) lines.push([t('exportLabelReview'), review]); - lines.push([t('exportLabelHf'), state.ignoreHeadersFooters ? t('exportHfIgnored') : t('exportHfIncluded')]); + const review = getExportReviewLine(counts); + if (review) lines.push(`${t('exportLabelReview')}: ${review}`); + lines.push(t('docxNote')); + const hf = items.filter(item => isHeaderFooterItem(item) && item.status !== 'rejected'); + if (hf.length) { + lines.push(t('docxHfHeading')); + for (const item of hf) { + const { pairs } = getRowChangeSummary(item, 80); + const change = pairs.map(p => (p.del && p.ins ? `${p.del} → ${p.ins}` : p.ins || p.del)).join('; '); + lines.push(`${getExportItemRef(item)} (${getExportItemPageLabel(item)}, ${getExportStatusLabel(item.status)}): ${change}`); + } + } + return lines; +} + +/** + * The newly typeset Word file (Uint8Array) for the current comparison state: + * 'tracked' – "Accept all" in Word yields the new version (with the rejections applied), + * "Reject all" the old version with the accepted changes applied + * 'final' – the new version with every decision and edit applied, no marks + */ +function buildGeneratedDocx(kind, date = new Date()) { + const counts = getExportCounts(); const meta = { + kind, lang: state.lang, date, - title: getExportTitle(), - subject: t('docxSubject'), - lines, + title: kind === 'final' ? getDisplayDocName('right') : getExportTitle(), + subject: t(kind === 'final' ? 'docxSubjectFinal' : 'docxSubject'), + description: kind === 'final' ? '' : formatExportCountsLine(counts), reviewStatusOf: row => row.reviewStatus || '', - note: t('docxNote'), - footer: `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`, + comment: kind === 'final' ? null : buildDocxSummaryLines(date), pageLabel: t('pageLabel'), pageOfLabel: t('pageOf'), }; - // The document is always complete: "Accept all" in Word yields the new version (with the - // rejections applied), "Reject all" the old version with the accepted changes applied. return buildZipArchive(buildDocxPackageFiles(state.alignedRows, meta), date); } +// Kept for callers and tests written against the earlier name. +function buildDocxRedline(date = new Date()) { + return buildGeneratedDocx('tracked', date); +} + /* ── Client-Side Multi-Format Export Engine (copy, .txt, .docx, print/PDF, HTML, Markdown) ── */ function downloadBlob(content, mimeType, filename) { @@ -10605,23 +10901,17 @@ <h3>Your data</h3> } /** - * The changes of the comparison with their review status, in document order: the list items - * (including rejected changes) when the review index is current, otherwise the change rows. + * The changes of the comparison with their review status, exactly as the change list shows them + * (same order, same count: an identical header/footer change on several pages is one change), + * including rejected changes. Falls back to the change rows while the review index is not current. */ function getExportItems() { if ( Array.isArray(state.listItems) && state.listItems.length && - state.listItems.every(i => state.alignedRows.includes(i.row)) + state.listItems.every(i => itemMembers(i).every(m => state.alignedRows.includes(m.row))) ) { - // Exports follow the document: every occurrence of a merged header/footer change, in - // document order (the list shows those after the body changes). - const pos = new Map(state.alignedRows.map((r, i) => [r.id, i])); - return state.listItems - .flatMap(item => (item.members ? item.members : [item])) - .map(item => ({ ...item, members: undefined })) - .sort((a, b) => pos.get(a.rowId) - pos.get(b.rowId) || (a.sub || 0) - (b.sub || 0)) - .map((item, i) => ({ ...item, index: i + 1 })); + return state.listItems.map((item, i) => ({ ...item, index: i + 1 })); } return state.changeRows.map((row, i) => ({ id: row.id, @@ -10658,13 +10948,24 @@ <h3>Your data</h3> return status === 'accepted' ? t('statusAccepted') : status === 'rejected' ? t('statusRejected') : t('statusOpen'); } +/** Reference as the change list shows it ("§ 1 (2)", "Kopf-/Fußzeile – auf 3 Seiten …"). */ function getExportItemRef(item) { - if (item.ghost) return item.ghost.refCode || ''; - return getRowRefCode(item.row); + return getItemRef(item); +} + +/** "S. 2" or, for a change on several pages, "S. 1–3". */ +function getExportItemPages(item) { + const pages = itemMembers(item).map(m => getItemPage(m)); + const min = Math.min(...pages); + const max = Math.max(...pages); + return min === max ? String(min) : `${min}–${max}`; +} +function getExportItemPageLabel(item) { + return `${t('pageShort')} ${getExportItemPages(item)}`; } function formatExportCountsLine(c) { - return tf('exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); + return tf(c.total === 1 ? 'exportCountsFmtOne' : 'exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); } function formatExportDate(date) { @@ -10698,7 +10999,7 @@ <h3>Your data</h3> if (row.type === 'equal') { return row.ghostNote ? `${t('statusRejected')} · ${t('exportRejectedNote')}` : ''; } - const parts = [getRowTypeLabel(row), getRowRefCode(row)].filter(Boolean); + const parts = [getRowTypeLabel(row), getDisplayRef(row)].filter(Boolean); if (row.reviewStatus === 'accepted') parts.push(t('statusAccepted')); return parts.join(' · '); } @@ -10812,11 +11113,7 @@ <h3>Your data</h3> * furniture and are always left out, whether or not the header/footer filter is active. */ function buildFinalText() { - const blocks = state.alignedRows.length - ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) - : parseIntoBlocks(state.rightText || ''); - return blocks - .filter(b => !b.isHeaderFooter && !isInternalMarkerLine(b.text)) + return getFinalBlocks() .map(b => cleanExportText(b.text).trim()) .filter(Boolean) .join('\n\n'); @@ -10848,7 +11145,7 @@ <h3>Your data</h3> if (p.ins) return renderReportTokensHtml([{ value: p.ins, added: true }]); return renderReportTokensHtml([{ value: p.del, removed: true }]); }); - if (more) items.push(`<span class="more">+${more} ${escapeHtml(t('moreDeltas'))}</span>`); + if (more) items.push(`<span class="more">+${more} ${escapeHtml(moreDeltasText(more))}</span>`); return items.map(html => `<div>${html}</div>`).join(''); } @@ -10917,13 +11214,22 @@ <h3>Your data</h3> const items = getExportItems(); const counts = getExportCounts(items); const title = getExportTitle(); - // Anchors: every changed row, and the row a rejected change was restored to. + // Anchors: every changed row (all pages of a merged header/footer change), and the row a + // rejected change was restored to. The first row of a change carries its id. const anchorIndex = new Map(); items.forEach((item, i) => { - if (item.ghost && item.type === 'inserted') return; - if (!anchorIndex.has(item.rowId)) anchorIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) { + if (m.ghost && m.type === 'inserted') continue; + if (!anchorIndex.has(m.rowId)) anchorIndex.set(m.rowId, i + 1); + } }); - const anchorFor = row => `c${anchorIndex.get(row.id)}`; + const anchorUsed = new Set(); + const anchorFor = row => { + const n = anchorIndex.get(row.id); + if (!n || anchorUsed.has(n)) return ''; + anchorUsed.add(n); + return ` id="c${n}"`; + }; const reviewLine = getExportReviewLine(counts); const changeListHtml = items.length @@ -10935,10 +11241,9 @@ <h3>Your data</h3> .map((item, i) => { const n = i + 1; const ref = getExportItemRef(item) || `#${n}`; - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; - const target = item.ghost && item.type === 'inserted' ? 0 : anchorIndex.get(item.rowId); + const target = itemMembers(item).some(m => anchorIndex.get(m.rowId) === n) ? n : 0; const refHtml = target ? `<a href="#c${target}">${escapeHtml(ref)}</a>` : escapeHtml(ref); - return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(t('pageShort'))} ${page}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; + return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(getExportItemPageLabel(item))}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; }) .join('\n')} </tbody> @@ -10954,7 +11259,7 @@ <h3>Your data</h3> const inner = renderReportTokensHtml(getExportDiffTokens(row)); const tag = kind === 'h1' ? 'h3' : kind === 'h2' ? 'h4' : kind === 'h3' ? 'h5' : 'p'; const tagText = getRowReportTag(row); - const idAttr = anchorIndex.has(row.id) ? ` id="${anchorFor(row)}"` : ''; + const idAttr = anchorFor(row); const tagHtml = tagText ? `<span class="row-tag"><a href="#changes">${escapeHtml(tagText)}</a></span>` : ''; return `<div class="row ${row.type} kind-${kind}"${idAttr}>${tagHtml}<${tag}>${inner}</${tag}></div>`; }) @@ -11095,7 +11400,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> const counts = getExportCounts(items); const changeIndex = new Map(); items.forEach((item, i) => { - if (!item.ghost && !changeIndex.has(item.rowId)) changeIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) if (!m.ghost && !changeIndex.has(m.rowId)) changeIndex.set(m.rowId, i + 1); }); const reviewLine = getExportReviewLine(counts); const lines = [ @@ -11129,11 +11434,10 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (p.ins) return renderMarkdownTokens([{ value: p.ins, added: true }]); return renderMarkdownTokens([{ value: p.del, removed: true }]); }) - .concat(more ? [`+${more} ${escapeMarkdownInline(t('moreDeltas'))}`] : []) + .concat(more ? [`+${more} ${escapeMarkdownInline(moreDeltasText(more))}`] : []) .join('<br>'); - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; lines.push( - `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${page} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` + `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${getExportItemPages(item)} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` ); } } else { @@ -11179,11 +11483,16 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `<td class="pv-cell kind-${kind}">${html}</td>`; } -/** Builds a print-only, paginated rendering of the comparison for the current view mode. */ -function buildPrintViewHtml(date = new Date()) { +/** + * Builds a print-only, paginated rendering. kind: 'split' (old and new side by side, landscape), + * 'inline' (one column with the marks in the text, portrait) or 'final' (the new version with + * every decision applied, as a clean document). + */ +function buildPrintViewHtml(date = new Date(), kind = state.viewMode) { + if (kind === 'final') return buildFinalPrintHtml(); const rows = getExportBodyRows(); const counts = getExportCounts(); - const mode = state.viewMode; + const mode = kind === 'inline' ? 'inline' : 'split'; const head = ` <header class="pv-head"> <div class="pv-title">${escapeHtml(getExportTitle())}</div> @@ -11263,9 +11572,44 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return `${head}<main class="pv-body pv-mode-${mode}">${body}${emptyHtml}</main>`; } +/** The new version as a clean document: every decision and edit applied, no marks. */ +function buildFinalPrintHtml() { + const blocks = getFinalBlocks(); + const html = blocks + .map(block => { + const text = cleanExportText(block.text).trim(); + if (!text) return ''; + const kind = block.kind || 'p'; + if (kind === 'h1' || kind === 'h2' || kind === 'h3') { + const tag = kind === 'h1' ? 'h1' : kind === 'h2' ? 'h2' : 'h3'; + return `<${tag} class="pvf-${kind}">${escapeHtml(text)}</${tag}>`; + } + const indent = block.indent > 0 ? ` style="margin-left:${Math.min(block.indent, 6) * 1.6}em"` : ''; + const split = extractListMarker(text, kind); + if (split) { + return `<p class="pvf-item pvf-${kind}"${indent}><span class="pvf-marker">${escapeHtml(split.marker)}</span><span class="pvf-body">${escapeHtml(split.body)}</span></p>`; + } + return `<p class="pvf-p"${indent}>${escapeHtml(text)}</p>`; + }) + .join(''); + return `<main class="pv-final" lang="${state.lang === 'de' ? 'de' : 'en'}">${html}</main>`; +} + +/** Blocks of the new version as it stands now, without running headers and footers. */ +function getFinalBlocks() { + const blocks = state.alignedRows.length + ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) + : parseIntoBlocks(state.rightText || ''); + return blocks.filter(b => !b.isHeaderFooter && b.kind !== 'hf' && !isInternalMarkerLine(b.text)); +} + +// The print view requested from the export menu; Ctrl/Cmd+P prints the current view. +let requestedPrintKind = null; + function preparePrintView() { if (typeof ensureComparisonCurrent === 'function') ensureComparisonCurrent(); if (!state.alignedRows.length) return; + const kind = requestedPrintKind || (state.viewMode === 'inline' ? 'inline' : 'split'); const date = new Date(); let view = document.getElementById('print-view'); if (!view) { @@ -11275,7 +11619,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> view.setAttribute('aria-hidden', 'true'); document.body.appendChild(view); } - setSafeContainerHtml(view, buildPrintViewHtml(date)); + setSafeContainerHtml(view, buildPrintViewHtml(date, kind)); let pageStyle = document.getElementById('print-page-style'); if (!pageStyle) { @@ -11283,15 +11627,18 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> pageStyle.id = 'print-page-style'; document.head.appendChild(pageStyle); } - const footerLeft = `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; - const orientation = state.viewMode === 'inline' ? 'portrait' : 'landscape'; - pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: 14mm 12mm 16mm; + const footerLeft = + kind === 'final' ? getDisplayDocName('right') : `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; + const orientation = kind === 'split' ? 'landscape' : 'portrait'; + const margin = kind === 'final' ? '22mm 20mm 20mm 24mm' : '14mm 12mm 16mm'; + pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: ${margin}; @bottom-left { content: ${cssString(footerLeft)}; font: 7.5pt sans-serif; color: #444; } @bottom-right { content: ${cssString(`${t('pageLabel')} `)} counter(page) ${cssString(` ${t('pageOf')} `)} counter(pages); font: 7.5pt sans-serif; color: #444; } } }`; document.body.classList.add('has-print-view'); } function cleanupPrintView() { + requestedPrintKind = null; document.body.classList.remove('has-print-view'); const view = document.getElementById('print-view'); if (view) view.remove(); @@ -11347,6 +11694,55 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> if (typeof showToast === 'function') showToast(tf(toastKey, { name: filename })); } +/** "Vertrag_v2_Endfassung.docx": named after the new version, which it is. */ +function buildFinalFileName(ext) { + const base = sanitizeFileNamePart(state.rightName, 'DocDiff', 100); + return `${base}_${sanitizeFileNamePart(t('exportFileFinal'), 'Final')}.${ext}`; +} + +/** The .docx the new version was read from, if it is still the loaded new version. */ +function getRightDocxSource() { + const src = state.docSources && state.docSources.right; + if (!src || state.rightFormat !== 'DOCX' || src.name !== state.rightName || !src.bytes) return null; + return src; +} + +const DOCX_MIME = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; + +/** + * Word export. With a .docx as the new version, the file itself is the base (original format); + * if that cannot be done reliably, the newly typeset document is used and the user is told. + */ +async function exportWord(kind) { + const date = new Date(); + const source = getRightDocxSource(); + let bytes = null; + let fellBack = false; + if (source) { + try { + bytes = await buildDocxFromSource(source, parseIntoBlocks(state.rightText), state.alignedRows, kind, date); + } catch (err) { + fellBack = true; + if (typeof console !== 'undefined') console.warn('Doc Diff: original-format Word export not possible:', err && err.message); + } + } + if (!bytes) bytes = buildGeneratedDocx(kind, date); + const filename = kind === 'final' ? buildFinalFileName('docx') : buildExportFileName('exportFileRedline', 'docx'); + downloadBlob(bytes, DOCX_MIME, filename); + if (fellBack && typeof showImportNotice === 'function') { + showImportNotice(tf('noticeWordFallback', { name: filename }), 'warning'); + } else if (typeof showToast === 'function') { + showToast(tf(source ? 'toastWordOriginal' : 'toastWord', { name: filename })); + } +} + +function startPrint(kind) { + if (!state.alignedRows.length) return; + requestedPrintKind = kind; + preparePrintView(); + window.print(); +} + function handleExportAction(type) { // Commit an inline edit that is still open so the export reflects it. const openEditor = document.querySelector('.clause-inline-editor'); @@ -11355,28 +11751,19 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> // the current text, not the rows from before. ensureComparisonCurrent(); - if (type === 'print') { - if (!state.alignedRows.length) return; - preparePrintView(); - window.print(); - return; - } - // Exports need a finished comparison. The menu is disabled until then; never substitute // sample content for (or overwrite) a document the user has loaded. if (!state.alignedRows.length) return; - if (type === 'copy') { + if (type === 'print' || type === 'print-split' || type === 'print-inline' || type === 'print-final') { + const kind = type === 'print' ? (state.viewMode === 'inline' ? 'inline' : 'split') : type.slice(6); + startPrint(kind); + } else if (type === 'copy') { copyFinalTextToClipboard(); } else if (type === 'txt') { - downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildExportFileName('exportFileFinal', 'txt'), 'toastTxt'); - } else if (type === 'word') { - downloadWithToast( - buildDocxRedline(), - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - buildExportFileName('exportFileRedline', 'docx'), - 'toastWord' - ); + downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildFinalFileName('txt'), 'toastTxt'); + } else if (type === 'word' || type === 'word-final') { + exportWord(type === 'word' ? 'tracked' : 'final'); } else if (type === 'html') { downloadWithToast(buildExportHtmlReport(), 'text/html;charset=utf-8', buildExportFileName('exportFileReport', 'html'), 'toastHtml'); } else if (type === 'md') { @@ -11384,6 +11771,25 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } } +/** + * The descriptions in the export menu that depend on the documents: whether the Word file keeps + * the original format, and that open changes are part of the final version. + */ +function updateExportMenuTexts() { + const set = (id, text) => { + const el = document.getElementById(id); + if (el) el.textContent = text; + }; + const source = getRightDocxSource(); + set('exp-desc-word-final', source ? tf('expWordFinalDescOriginal', { name: source.name }) : t('expWordFinalDescNew')); + set('exp-desc-word', source ? tf('expWordDescOriginal', { name: source.name }) : t('expWordDesc')); + const open = state.listItems.filter(item => item.status === 'open').length; + set( + 'exp-sec-final-desc', + open === 0 ? t('expSecFinalDesc') : open === 1 ? t('expSecFinalOpenOne') : tf('expSecFinalOpen', { n: open }) + ); +} + /* ── Export availability ─────────────────────────────────────────────────── */ /** Really disables the export triggers (not just visually) while no comparison is available. */ @@ -11406,6 +11812,922 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +/* ── Word export in the original format ──────────────────────────────────────────────────── + * When the new version was loaded from a .docx, the Word exports start from that very file + * instead of a newly typeset document. Every paragraph whose text is unchanged is copied byte + * for byte, so styles, numbering, tables, images, headers, footers and the page layout stay as + * they were. Only paragraphs whose text differs are rewritten, run by run: words that stay keep + * their character formatting, new words take the formatting of their neighbours. + * + * Two kinds: + * 'final' – the new version with every review decision and edit applied, no marks + * 'tracked' – the same, plus every open change as a Word tracked change (old → new) + * + * The result is read back and compared with the expected text before it is offered. If + * anything does not match (an unusual document structure, a change inside a text box), the + * caller falls back to the newly typeset document. Pure string processing, no DOM, so it can be + * unit-tested in Node. + */ + +/* ── ZIP reading (all entries, as bytes) ─────────────────────────────────── */ + +async function inflateRaw(bytes) { + const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream('deflate-raw')); + return new Uint8Array(await new Response(stream).arrayBuffer()); +} + +/** Reads every entry of a ZIP archive: [{ name, data: Uint8Array }] in archive order. */ +async function readZipEntries(input) { + const bytes = input instanceof Uint8Array ? input : new Uint8Array(input); + const dv = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength); + let eocd = -1; + for (let i = bytes.length - 22; i >= Math.max(0, bytes.length - 65557); i--) { + if (dv.getUint32(i, true) === 0x06054b50) { + eocd = i; + break; + } + } + if (eocd < 0) throw new Error('zip: no central directory'); + const count = dv.getUint16(eocd + 10, true); + let p = dv.getUint32(eocd + 16, true); + const utf8 = new TextDecoder('utf-8'); + const out = []; + for (let n = 0; n < count; n++) { + if (dv.getUint32(p, true) !== 0x02014b50) throw new Error('zip: bad central directory'); + const method = dv.getUint16(p + 10, true); + const compSize = dv.getUint32(p + 20, true); + const nameLen = dv.getUint16(p + 28, true); + const extraLen = dv.getUint16(p + 30, true); + const commentLen = dv.getUint16(p + 32, true); + const localOffset = dv.getUint32(p + 42, true); + const name = utf8.decode(bytes.subarray(p + 46, p + 46 + nameLen)); + p += 46 + nameLen + extraLen + commentLen; + const dataStart = localOffset + 30 + dv.getUint16(localOffset + 26, true) + dv.getUint16(localOffset + 28, true); + const raw = bytes.subarray(dataStart, dataStart + compSize); + let data; + if (method === 0) data = raw.slice(); + else if (method === 8) data = await inflateRaw(raw); + else throw new Error(`zip: unsupported method ${method}`); + out.push({ name, data }); + } + return out; +} + +/* ── A minimal XML reader that keeps source offsets ───────────────────────── + * Elements: { name, start, openEnd, closeStart, end, selfClosing, children }; text between + * elements is not needed (Word keeps text inside w:t, read from the source slice). Offsets let + * untouched parts be copied verbatim. + */ +function parseXmlTree(xml) { + const root = { name: '#root', start: 0, openEnd: 0, closeStart: xml.length, end: xml.length, children: [] }; + const stack = [root]; + let i = 0; + const n = xml.length; + while (i < n) { + const lt = xml.indexOf('<', i); + if (lt < 0) break; + if (xml.startsWith('<!--', lt)) { + const e = xml.indexOf('-->', lt + 4); + if (e < 0) throw new Error('xml: unterminated comment'); + i = e + 3; + continue; + } + if (xml.startsWith('<![CDATA[', lt)) { + const e = xml.indexOf(']]>', lt + 9); + if (e < 0) throw new Error('xml: unterminated CDATA'); + i = e + 3; + continue; + } + if (xml.startsWith('<?', lt) || xml.startsWith('<!', lt)) { + const e = xml.indexOf('>', lt + 2); + if (e < 0) throw new Error('xml: unterminated declaration'); + i = e + 1; + continue; + } + // Find the end of the tag, honouring quoted attribute values (they may contain '>'). + let j = lt + 1; + let quote = ''; + while (j < n) { + const c = xml[j]; + if (quote) { + if (c === quote) quote = ''; + } else if (c === '"' || c === "'") { + quote = c; + } else if (c === '>') { + break; + } + j++; + } + if (j >= n) throw new Error('xml: unterminated tag'); + const tagEnd = j + 1; + if (xml[lt + 1] === '/') { + const name = xml.slice(lt + 2, j).trim(); + const node = stack.pop(); + if (!node || node.name !== name) throw new Error(`xml: mismatched </${name}>`); + node.closeStart = lt; + node.end = tagEnd; + } else { + const m = /^[^\s/>]+/.exec(xml.slice(lt + 1, j)); + if (!m) throw new Error('xml: bad tag'); + const selfClosing = xml[j - 1] === '/'; + const node = { name: m[0], start: lt, openEnd: tagEnd, closeStart: tagEnd, end: tagEnd, selfClosing, children: [] }; + stack[stack.length - 1].children.push(node); + if (!selfClosing) stack.push(node); + } + i = tagEnd; + } + if (stack.length !== 1) throw new Error('xml: unclosed element'); + return root; +} + +function xmlLocalName(node) { + const k = node.name.indexOf(':'); + return k < 0 ? node.name : node.name.slice(k + 1); +} + +function decodeXmlText(s) { + return s.replace(/&(#x[0-9a-fA-F]+|#\d+|lt|gt|amp|quot|apos);/g, (m, e) => { + if (e === 'lt') return '<'; + if (e === 'gt') return '>'; + if (e === 'amp') return '&'; + if (e === 'quot') return '"'; + if (e === 'apos') return "'"; + const code = e[1] === 'x' ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10); + try { + return String.fromCodePoint(code); + } catch (err) { + return ''; + } + }); +} + +/* ── Paragraph content as "pieces" ───────────────────────────────────────── + * A paragraph is flattened into pieces in reading order: + * atom – one character of text (or a tab / line break / non-breaking hyphen element) with + * the run properties and the wrappers (hyperlink, content control, …) it sits in + * opaque – anything without text (bookmarks, images, field characters, comments, …); kept + * in place, never dropped + * `cmp` is the comparable text of a piece (whitespace as one space, soft hyphens as nothing). + */ + +const DOCX_WRAPPERS = new Set(['hyperlink', 'smartTag', 'customXml', 'fldSimple', 'dir', 'bdo']); +const DOCX_TEXT_LIKE = { tab: ' ', ptab: ' ', br: ' ', cr: ' ', noBreakHyphen: '-', softHyphen: '' }; + +function docxCmpChar(ch) { + if (/^\s$/u.test(ch) || /[  -    ]/.test(ch)) return ' '; + if (/[­​⁠]/.test(ch)) return ''; + if (typeof LATIN_LIGATURES !== 'undefined' && LATIN_LIGATURES[ch]) return LATIN_LIGATURES[ch]; + return ch; +} + +function flattenParagraph(p, xml, ctx) { + const pieces = []; + let pPr = ''; + const chainIds = new Map(); + const chainFor = (parent, wrapper) => { + const ids = parent.map(w => w.id).concat(wrapper.id); + const key = ids.join('/'); + if (!chainIds.has(key)) chainIds.set(key, parent.concat(wrapper)); + return chainIds.get(key); + }; + const outer = node => xml.slice(node.start, node.end); + + const handleRun = (r, chain) => { + const rPrNode = r.children.find(c => xmlLocalName(c) === 'rPr'); + const rPr = rPrNode ? outer(rPrNode) : ''; + for (const c of r.children) { + const name = xmlLocalName(c); + if (name === 'rPr') continue; + if (name === 't') { + const text = c.selfClosing ? '' : decodeXmlText(xml.slice(c.openEnd, c.closeStart)); + for (const ch of text) pieces.push({ type: 'atom', ch, rPr, chain, cmp: docxCmpChar(ch) }); + } else if (name in DOCX_TEXT_LIKE) { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: DOCX_TEXT_LIKE[name] }); + } else if (name === 'footnoteReference' || name === 'endnoteReference') { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: ctx.noteLabels.get(c.start) || '' }); + } else { + // Field characters, field codes, drawings, comment references, …: kept as they are. + pieces.push({ type: 'opaque', runChild: outer(c), rPr, chain, cmp: '' }); + } + } + }; + + const walk = (node, chain) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (node === p && name === 'pPr') { + pPr = outer(c); + continue; + } + if (name === 'r') handleRun(c, chain); + else if (DOCX_WRAPPERS.has(name) && !c.selfClosing) { + walk(c, chainFor(chain, { id: `w${c.start}`, open: xml.slice(c.start, c.openEnd), close: xml.slice(c.closeStart, c.end) })); + } else if (name === 'sdt') { + const content = c.children.find(x => xmlLocalName(x) === 'sdtContent'); + if (!content || content.selfClosing) pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + else walk(content, chainFor(chain, { id: `s${c.start}`, open: xml.slice(c.start, content.openEnd), close: xml.slice(content.closeStart, c.end) })); + } else if ((name === 'ins' || name === 'moveTo') && !c.selfClosing) { + // Text inserted by an earlier tracked change counts as text (as when it is read in). + walk(c, chain); + } else { + pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + } + } + }; + walk(p, []); + + // One comparable space per whitespace run; none at the edges. + let prevWs = true; + for (const piece of pieces) { + if (!piece.cmp) continue; + if (piece.cmp === ' ') { + if (prevWs) piece.cmp = ''; + prevWs = true; + } else { + prevWs = false; + } + } + for (let k = pieces.length - 1; k >= 0; k--) { + if (!pieces[k].cmp) continue; + if (pieces[k].cmp === ' ') pieces[k].cmp = ''; + else break; + } + return { pPr, pieces, text: pieces.map(x => x.cmp).join('') }; +} + +/* ── Units: what the reader turned into one block ─────────────────────────── + * A paragraph outside tables is one unit; a table row is one unit (its cells joined with + * " · ", as when the file is read in). Paragraphs nested in text boxes and rows of nested tables + * are "locked": they are matched, but never rewritten. + */ +function collectDocxUnits(xml, tree) { + const noteLabels = new Map(); + let fn = 0; + let en = 0; + const noteRe = /<([A-Za-z0-9_]+:)?(footnoteReference|endnoteReference)\b/g; + let m; + while ((m = noteRe.exec(xml))) { + noteLabels.set(m.index, `[${m[2] === 'footnoteReference' ? ++fn : ++en}]`); + } + const ctx = { noteLabels }; + const units = []; + const paraText = p => flattenParagraph(p, xml, ctx).text; + + const cellParas = (node, out, state) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'p') out.push(c); + else if (name === 'tbl') state.nested = true; + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') cellParas(c, out, state); + } + return out; + }; + + const walk = (node, locked) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'AlternateContent') { + const fallback = c.children.find(x => xmlLocalName(x) === 'Fallback'); + if (fallback) walk(fallback, true); + continue; + } + if (name === 'p') { + units.push({ kind: 'p', node: c, locked, text: paraText(c) }); + walk(c, true); + continue; + } + if (name === 'tbl') { + walkTable(c, locked); + continue; + } + walk(c, locked); + } + }; + + const walkTable = (tbl, locked) => { + const rows = []; + const collectRows = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tr') rows.push(c); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectRows(c); + } + }; + collectRows(tbl); + const tableInfo = { node: tbl, rows: rows.length }; + for (const tr of rows) { + const cells = []; + const state = { nested: false }; + const collectCells = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tc') cells.push({ node: c, paras: cellParas(c, [], state) }); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectCells(c); + } + }; + collectCells(tr); + for (const cell of cells) { + cell.texts = cell.paras.map(paraText); + // As read in: the paragraphs of a cell run together. + cell.text = cell.texts.join(''); + } + units.push({ + kind: 'row', + node: tr, + table: tableInfo, + cells, + locked: locked || state.nested, + text: cells.map(c => c.text).filter(Boolean).join(' · '), + }); + // Nested tables and text boxes inside the cells (read in after their row). + for (const cell of cells) { + for (const c of cell.node.children) { + if (xmlLocalName(c) === 'tbl') walkTable(c, true); + } + for (const p of cell.paras) walk(p, true); + } + } + }; + + const body = (function find(node) { + for (const c of node.children) { + if (xmlLocalName(c) === 'body') return c; + const r = find(c); + if (r) return r; + } + return null; + })(tree); + if (!body) throw new Error('docx: no body'); + walk(body, false); + return { units, ctx }; +} + +/* ── Matching blocks to units ───────────────────────────────────────────── */ + +function docxKey(text) { + return normalizeComparableText(sanitizeExternalText(String(text || ''))) + .replace(/\s+/g, ' ') + .trim(); +} + +/** + * How a block's text relates to a unit's text: { prefix } when it is the same text, possibly + * after a generated list number or heading number ("(1) ", "§ 1 ") that the file does not + * contain as text; null otherwise. + */ +function docxMatchBlock(blockKey, unitText) { + if (!unitText) return null; + if (blockKey === unitText) return { prefix: 0 }; + if (blockKey.length > unitText.length && blockKey.endsWith(unitText)) { + const prefix = blockKey.slice(0, blockKey.length - unitText.length); + if (prefix.length <= 24 && / $/.test(prefix)) return { prefix: prefix.length }; + } + return null; +} + +/** Pairs blocks (in order) with non-empty units (in order). Returns Map(blockIndex -> { unit, prefix }). */ +function mapBlocksToUnits(blocks, units) { + const LOOK = 40; + const keys = blocks.map(b => docxKey(b.text)); + const list = units.filter(u => u.text); + const out = new Map(); + let i = 0; + let j = 0; + while (i < keys.length && j < list.length) { + const hit = docxMatchBlock(keys[i], list[j].text); + if (hit) { + out.set(i, { unit: list[j], prefix: hit.prefix }); + i++; + j++; + continue; + } + let step = null; + for (let d = 1; d <= LOOK && !step; d++) { + if (j + d < list.length && docxMatchBlock(keys[i], list[j + d].text)) step = { di: 0, dj: d }; + else if (i + d < keys.length && docxMatchBlock(keys[i + d], list[j].text)) step = { di: d, dj: 0 }; + } + if (step) { + i += step.di; + j += step.dj; + } else { + i++; + j++; + } + } + return out; +} + +/* ── Rewriting one paragraph ────────────────────────────────────────────── */ + +/** + * The target text of a paragraph as characters with revision flags: + * { chars: [{ ch, added, dels: [deleted text before this char] }], tail: [deleted text at the end] }. + * `prefix` characters of the new wording (a generated list number) are dropped. + */ +function docxTargetFromTokens(tokens, prefix) { + let chars = []; + let pending = []; + for (const tok of tokens) { + if (tok.removed) { + if (tok.value) pending.push(tok.value); + continue; + } + for (const ch of tok.value) { + chars.push({ ch, added: Boolean(tok.added), dels: pending }); + pending = []; + } + } + let tail = pending; + if (prefix) { + // The generated number is not text in the file: drop it with whatever was deleted before it. + const rest = chars.slice(prefix); + chars = rest; + } + // Whitespace as in the file's reading: one space between words, none at the edges. + const out = []; + let carry = []; + for (const c of chars) { + const ws = /\s/.test(c.ch); + const dels = carry.concat(c.dels); + carry = []; + if (ws && (!out.length || /\s/.test(out[out.length - 1].ch))) { + carry = dels; + continue; + } + out.push({ ch: ws ? ' ' : c.ch, added: c.added, dels }); + } + while (out.length && out[out.length - 1].ch === ' ') { + const last = out.pop(); + carry = last.dels.concat(carry); + } + tail = carry.concat(tail); + return { chars: out, tail }; +} + +function docxStripHyperlinkStyle(rPr) { + return rPr.replace(/<w:rStyle\b[^>]*\/>/g, '').replace(/<w:rPr>\s*<\/w:rPr>/, ''); +} + +/** + * Returns the new XML of paragraph `p` whose text becomes the target described by `tokens` + * (diff tokens of the new wording, see getExportDiffTokens). `rev(kind)` returns the attributes + * of a new revision. `markPara` ('ins' | 'del' | '') marks the paragraph mark as inserted/deleted. + */ +function rewriteDocxParagraph(p, xml, ctx, tokens, prefix, rev, markPara = '', defaultRPr = '') { + const { pPr, pieces } = flattenParagraph(p, xml, ctx); + const target = docxTargetFromTokens(tokens, prefix); + const tText = target.chars.map(c => c.ch).join(''); + + // Comparable text of the file with a map back to the pieces. + let xText = ''; + const xPiece = []; + pieces.forEach((piece, idx) => { + for (const ch of piece.cmp) { + xText += ch; + xPiece.push(idx); + } + }); + + const diffLib = getDiffLibrary(); + let parts; + if (xText === tText) parts = [{ value: xText }]; + else if (diffLib && xText.length + tText.length < 400000) parts = diffLib.diffWordsWithSpace(xText, tText); + else parts = [{ value: xText, removed: true }, { value: tText, added: true }].filter(x => x.value); + + const items = []; // { kind: 'text'|'elem'|'raw', text?, xml?, rPr, chain, rev } + const lastAtom = { piece: null }; + let nextPiece = 0; + let keptBefore = true; + + const atomAfter = idx => { + for (let k = idx; k < pieces.length; k++) if (pieces[k].type === 'atom' && pieces[k].cmp) return pieces[k]; + return null; + }; + const contextFor = () => { + const prev = lastAtom.piece; + const next = atomAfter(nextPiece); + const base = prev || next; + if (!base) return { rPr: defaultRPr, chain: [] }; + const shared = prev && next && prev.chain === next.chain; + if (shared) return { rPr: base.rPr, chain: base.chain }; + return { rPr: base.chain.length ? docxStripHyperlinkStyle(base.rPr) : base.rPr, chain: [] }; + }; + const emitPiece = (piece, revKind) => { + if (piece.type === 'opaque') { + if (piece.raw) items.push({ kind: 'raw', xml: piece.raw, chain: piece.chain }); + else items.push({ kind: 'elem', xml: piece.runChild, rPr: piece.rPr, chain: piece.chain, rev: '' }); + return; + } + if (piece.elem) items.push({ kind: 'elem', xml: piece.elem, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + else items.push({ kind: 'text', text: piece.ch, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + lastAtom.piece = piece; + }; + // Pieces without comparable text up to `limit`: opaque ones always stay; empty atoms (extra + // spaces, soft hyphens) stay where the text around them stays. + const passThrough = limit => { + while (nextPiece < limit) { + const piece = pieces[nextPiece++]; + if (piece.type === 'opaque' || keptBefore) emitPiece(piece, ''); + } + }; + const emitDeleted = texts => { + if (!texts.length) return; + const c = contextFor(); + for (const text of texts) items.push({ kind: 'text', text, rPr: c.rPr, chain: c.chain, rev: 'del' }); + }; + + let xi = 0; + let ti = 0; + for (const part of parts) { + const len = part.value.length; + if (part.added) { + for (let k = 0; k < len; k++, ti++) { + const tc = target.chars[ti]; + emitDeleted(tc.dels); + const c = contextFor(); + items.push({ kind: 'text', text: tc.ch, rPr: c.rPr, chain: c.chain, rev: tc.added ? 'ins' : '' }); + } + } else if (part.removed) { + for (let k = 0; k < len; k++, xi++) { + const idx = xPiece[xi]; + if (idx >= nextPiece) { + passThrough(idx); + nextPiece = idx + 1; + keptBefore = false; + } + } + } else { + for (let k = 0; k < len; k++, xi++, ti++) { + const idx = xPiece[xi]; + const tc = target.chars[ti]; + if (idx >= nextPiece) { + passThrough(idx); + keptBefore = true; + emitDeleted(tc.dels); + emitPiece(pieces[idx], tc.added ? 'ins' : ''); + nextPiece = idx + 1; + } else { + emitDeleted(tc.dels); + } + } + } + } + // Deleted text at the very end goes before trailing spaces / bookmarks. + emitDeleted(target.tail); + keptBefore = true; + passThrough(pieces.length); + + return assembleDocxParagraph(p, xml, pPr, items, rev, markPara); +} + +/** Serialises pieces into runs, grouped by wrapper chain and revision. */ +function assembleDocxParagraph(p, xml, pPr, items, rev, markPara) { + let body = ''; + let chain = []; + let revOpen = ''; + let run = null; // { rPr, rev, content } + + const flushRun = () => { + if (!run) return; + body += `<w:r>${run.rPr}${run.content}</w:r>`; + run = null; + }; + const setRev = kind => { + if (revOpen === kind) return; + flushRun(); + if (revOpen) body += revOpen === 'ins' ? '</w:ins>' : '</w:del>'; + revOpen = kind; + if (kind) body += kind === 'ins' ? `<w:ins ${rev()}>` : `<w:del ${rev()}>`; + }; + const setChain = next => { + if (next === chain) return; + let common = 0; + while (common < chain.length && common < next.length && chain[common] === next[common]) common++; + if (common === chain.length && common === next.length) return; + flushRun(); + setRev(''); + for (let k = chain.length - 1; k >= common; k--) body += chain[k].close; + for (let k = common; k < next.length; k++) body += next[k].open; + chain = next; + }; + + for (const item of items) { + setChain(item.chain); + if (item.kind === 'raw') { + setRev(''); + body += item.xml; + continue; + } + setRev(item.rev); + const content = + item.kind === 'text' + ? item.rev === 'del' + ? `<w:delText xml:space="preserve">${escapeXml(item.text)}</w:delText>` + : `<w:t xml:space="preserve">${escapeXml(item.text)}</w:t>` + : item.xml; + if (run && run.rPr === item.rPr && run.rev === item.rev) { + // Adjacent text joins one w:t. + if (item.kind === 'text' && /<\/w:(t|delText)>$/.test(run.content) && run.lastText) { + const tag = item.rev === 'del' ? 'w:delText' : 'w:t'; + run.content = run.content.slice(0, run.content.length - `</${tag}>`.length) + escapeXml(item.text) + `</${tag}>`; + } else { + run.content += content; + } + } else { + flushRun(); + run = { rPr: item.rPr, rev: item.rev, content }; + } + run.lastText = item.kind === 'text'; + } + setChain([]); + setRev(''); + flushRun(); + + const openTag = xml.slice(p.start, p.openEnd).replace(/\/>$/, '>'); + return `${openTag}${docxMarkParagraph(pPr, markPara, rev)}${body}</w:p>`; +} + +/** Adds an inserted/deleted mark to the paragraph mark (the pilcrow) in w:pPr. */ +function docxMarkParagraph(pPr, markPara, rev) { + if (!markPara) return pPr; + const mark = markPara === 'ins' ? `<w:ins ${rev()}/>` : `<w:del ${rev()}/>`; + if (!pPr) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/^<w:pPr\s*\/>$/.test(pPr)) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/<w:rPr\s*\/>/.test(pPr)) return pPr.replace(/<w:rPr\s*\/>/, `<w:rPr>${mark}</w:rPr>`); + if (/<w:rPr>/.test(pPr)) return pPr.replace(/<w:rPr>/, `<w:rPr>${mark}`); + const before = pPr.search(/<w:sectPr\b|<w:pPrChange\b|<\/w:pPr>/); + return `${pPr.slice(0, before)}<w:rPr>${mark}</w:rPr>${pPr.slice(before)}`; +} + +/** A new paragraph modelled on `template` (a unit paragraph) or a plain one. */ +function buildNewDocxParagraph(xml, ctx, template, tokens, prefix, rev, markPara) { + let pPr = ''; + let rPr = ''; + if (template) { + const tpl = flattenParagraph(template, xml, ctx); + pPr = tpl.pPr + .replace(/<w:sectPr\b[\s\S]*?<\/w:sectPr>/, '') + .replace(/<w:pPrChange\b[\s\S]*?<\/w:pPrChange>/, '') + .replace(/<w:rPr>[\s\S]*?<\/w:rPr>|<w:rPr\s*\/>/, ''); + const firstAtom = tpl.pieces.find(x => x.type === 'atom' && x.cmp && !x.chain.length); + rPr = firstAtom ? firstAtom.rPr : ''; + } + // Rewriting an empty paragraph with the model's properties emits all text in its run format. + const fakeXml = `<w:p>${pPr}</w:p>`; + const fake = parseXmlTree(fakeXml).children[0]; + return rewriteDocxParagraph(fake, fakeXml, ctx, tokens, prefix, rev, markPara, rPr); +} + +/* ── The whole document ─────────────────────────────────────────────────── */ + +/** + * plan: [{ block (final block; null for an open deletion), oldBlock, r0 (the block as read in from + * the file, or null), tokens, open, markPara }] in document order. Returns the new document.xml. + */ +function patchDocxDocumentXml(xml, r0Blocks, plan, opts) { + const tree = parseXmlTree(xml); + const { units, ctx } = collectDocxUnits(xml, tree); + const r0Map = mapBlocksToUnits(r0Blocks, units); + const unitOfR0 = new Map(); + r0Blocks.forEach((b, i) => { + if (r0Map.has(i)) unitOfR0.set(b, r0Map.get(i)); + }); + + let maxId = 0; + for (const mm of xml.matchAll(/\bw:id="(\d+)"/g)) maxId = Math.max(maxId, parseInt(mm[1], 10)); + let revId = maxId + 1000; + const date = toWordDate(opts.date || new Date()); + const rev = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; + + const edits = []; // { start, end, text, seq } + let seq = 0; + const edit = (start, end, text) => edits.push({ start, end, text, seq: seq++ }); + + // What the result must read like: every unit of the file with its new text (null = removed), + // plus the new paragraphs at their insertion points. + const unitText = new Map(units.map(u => [u, u.text])); + const inserted = []; // { pos, seq, text } + + const firstUnit = units[0]; + if (!firstUnit) throw new Error('docx: empty body'); + const unitStart = u => (u.kind === 'row' ? u.table.node.start : u.node.start); + const unitEnd = u => (u.kind === 'row' ? u.table.node.end : u.node.end); + let anchor = unitStart(firstUnit); + + const planUnits = plan.map(step => { + const hit = step.r0 ? unitOfR0.get(step.r0) : null; + return { unit: hit ? hit.unit : null, prefix: hit ? hit.prefix : 0, kind: (step.block || step.oldBlock || {}).kind }; + }); + const usedUnits = new Set(planUnits.filter(pu => pu.unit).map(pu => pu.unit)); + const templateFor = (kind, from) => { + const usable = entry => entry && entry.unit && entry.unit.kind === 'p' && !entry.unit.locked; + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k]) && planUnits[k].kind === kind) return planUnits[k].unit.node; + } + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k])) return planUnits[k].unit.node; + } + return null; + }; + const targetText = (tokens, prefix) => + docxTargetFromTokens(tokens.filter(x => !x.removed), prefix).chars.map(c => c.ch).join(''); + const insertAt = (text, expectedText) => { + edit(anchor, anchor, text); + inserted.push({ pos: anchor - 0.5, seq: seq, text: expectedText }); + }; + + plan.forEach((step, k) => { + const pu = planUnits[k]; + const unit = pu.unit; + if (!step.block) { + // An open deletion: the old paragraph, struck through, paragraph mark included. + const tpl = templateFor(step.oldBlock.kind, k); + insertAt(buildNewDocxParagraph(xml, ctx, tpl, [{ value: step.oldBlock.text, removed: true }], 0, rev, 'del'), ''); + return; + } + const finalKey = docxKey(step.block.text); + const changed = step.open || !step.r0 || docxKey(step.r0.text) !== finalKey; + if (!unit) { + if (step.r0 && changed) { + // A change in something that is not body text of the file (e.g. a footnote). + throw new Error('docx: change outside the body'); + } + if (step.r0) return; // unchanged and not in the body: nothing to do + // A paragraph that the file does not have (a restored deletion): a new paragraph. + const tpl = templateFor(step.block.kind, k); + const marker = step.block.numberingMarker; + const tplNumbered = tpl && /<w:numPr\b/.test(xml.slice(tpl.start, tpl.end)); + const prefix = tplNumbered && marker && finalKey.startsWith(`${marker} `) ? marker.length + 1 : 0; + insertAt(buildNewDocxParagraph(xml, ctx, tpl, step.tokens, prefix, rev, step.markPara || ''), targetText(step.tokens, prefix)); + return; + } + if (changed) { + if (unit.locked) throw new Error('docx: change in a locked unit'); + if (unit.kind === 'p') { + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, step.tokens, pu.prefix, rev, step.markPara || '')); + unitText.set(unit, targetText(step.tokens, pu.prefix)); + } else { + unitText.set(unit, rewriteDocxRow(unit, xml, ctx, step, rev, edit)); + } + } + anchor = unitEnd(unit); + }); + + // Units read in that are not part of the result anymore (a rejected insertion, a paragraph + // emptied by an edit) are removed, with anything nested in them. + const removed = []; + const removedRows = new Map(); + for (const hit of r0Map.values()) { + const unit = hit.unit; + if (usedUnits.has(unit)) continue; + if (unit.locked) throw new Error('docx: removal in a locked unit'); + if (unit.kind === 'row') { + removedRows.set(unit.table, (removedRows.get(unit.table) || 0) + 1); + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } else if (/<w:sectPr\b/.test(xml.slice(unit.node.start, unit.node.end))) { + // It carries the section layout: keep the paragraph, drop its text. + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, [], 0, rev, '')); + unitText.set(unit, ''); + } else { + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } + } + for (const [table, n] of removedRows) { + if (n < table.rows) continue; + // Every row is gone: remove the table (a table needs at least one row). + for (let k = edits.length - 1; k >= 0; k--) { + if (edits[k].start >= table.node.start && edits[k].end <= table.node.end) edits.splice(k, 1); + } + edit(table.node.start, table.node.end, ''); + removed.push([table.node.start, table.node.end]); + } + for (const u of units) { + if (removed.some(([s, e]) => u.node.start >= s && u.node.end <= e)) unitText.set(u, null); + } + + // Apply from the end; edits never overlap (each unit is touched once). + edits.sort((a, b) => b.start - a.start || b.seq - a.seq); + let out = xml; + let limit = Infinity; + for (const e of edits) { + if (e.end > limit) throw new Error('docx: overlapping edits'); + out = out.slice(0, e.start) + e.text + out.slice(e.end); + limit = e.start; + } + + // Read the result back: the accepted text of every unit must be exactly what we expect. + const norm = s => String(s || '').replace(/\s+/g, ' ').trim(); + const want = units + .map(u => ({ pos: u.node.start, seq: -1, text: unitText.get(u) })) + .concat(inserted) + .sort((a, b) => a.pos - b.pos || a.seq - b.seq) + .map(x => norm(x.text)) + .filter(Boolean); + const got = collectDocxUnits(out, parseXmlTree(out)) + .units.map(u => norm(u.text)) + .filter(Boolean); + const at = Math.max(got.length, want.length) === 0 ? -1 : got.findIndex((text, i) => text !== want[i]); + if (got.length !== want.length || at >= 0) { + const i = at >= 0 ? at : Math.min(got.length, want.length); + throw new Error(`docx: verification failed at unit ${i}: ${JSON.stringify(got[i])} vs ${JSON.stringify(want[i])}`); + } + return out; +} + +/** Rewrites the changed cells of a table row; returns the expected row text. */ +function rewriteDocxRow(unit, xml, ctx, step, rev, edit) { + const newCells = docxKey(step.block.text).split(' · '); + const oldCells = step.oldBlock ? docxKey(step.oldBlock.text).split(' · ') : null; + const filled = unit.cells.filter(c => c.text); + const cellTokens = (oldText, newText) => + step.open ? (oldText === null ? [{ value: newText, added: true }] : computeCleanWordDiff(oldText, newText)) : [{ value: newText }]; + const writeCell = (cell, tokens) => { + const paras = cell.paras.filter((p, i) => cell.texts[i]); + const first = paras[0] || cell.paras[0]; + if (!first) throw new Error('docx: cell without paragraph'); + edit(first.start, first.end, rewriteDocxParagraph(first, xml, ctx, tokens, 0, rev, '')); + for (const other of paras.slice(1)) edit(other.start, other.end, rewriteDocxParagraph(other, xml, ctx, [], 0, rev, '')); + }; + if (newCells.length === filled.length) { + newCells.forEach((text, i) => { + const cell = filled[i]; + const oldText = oldCells && oldCells.length === newCells.length ? oldCells[i] : null; + if (cell.text === text && (!step.open || oldText === text)) return; + writeCell(cell, cellTokens(oldText, text)); + }); + return newCells.join(' · '); + } + // The number of filled cells changed: the whole row text goes into the first cell. + const target = filled[0] || unit.cells[0]; + if (!target) throw new Error('docx: row without cells'); + writeCell(target, step.open && step.oldBlock ? computeCleanWordDiff(docxKey(step.oldBlock.text), docxKey(step.block.text)) : [{ value: docxKey(step.block.text) }]); + for (const cell of filled) if (cell !== target) writeCell(cell, []); + return docxKey(step.block.text); +} + +/* ── Entry point ────────────────────────────────────────────────────────── */ + +/** + * Builds the export from the original .docx of the new version. + * source: { bytes, importedText }; finalBlocks: blocks of the current new version (all of them); + * rows: state.alignedRows (old ↔ new); kind: 'final' | 'tracked'. + * Returns a Uint8Array (.docx) or throws when the result cannot be verified. + */ +async function buildDocxFromSource(source, finalBlocks, rows, kind, date = new Date()) { + const entries = await readZipEntries(source.bytes); + const docEntry = entries.find(e => e.name === 'word/document.xml'); + if (!docEntry) throw new Error('docx: no word/document.xml'); + const xml = new TextDecoder('utf-8').decode(docEntry.data); + const r0Blocks = parseIntoBlocks(source.importedText); + + // Old ↔ new rows by the position of the new block; final blocks ↔ blocks as read in. + const rowOfFinal = new Map(); + for (const row of rows) { + if (!row.rightBlock) continue; + const block = finalBlocks[row.rightBlock.index - 1]; + if (!block || block.text !== row.rightBlock.text) throw new Error('docx: comparison is not current'); + rowOfFinal.set(row.rightBlock.index, row); + } + const r0Rows = alignDocumentBlocks(r0Blocks, finalBlocks); + const r0OfFinal = new Map(); + for (const r of r0Rows) if (r.leftBlock && r.rightBlock) r0OfFinal.set(r.rightBlock, r.leftBlock); + + const plan = []; + const pushDeleted = row => { + if (kind !== 'tracked' || !row || row.type !== 'deleted' || row.reviewStatus === 'accepted' || !row.leftBlock) return; + if (row.leftBlock.isHeaderFooter) return; + plan.push({ block: null, oldBlock: row.leftBlock, r0: null, open: true }); + }; + let rowCursor = 0; + for (const block of finalBlocks) { + const row = rowOfFinal.get(block.index); + if (row) { + // Open deletions that sit before this row in the comparison. + const at = rows.indexOf(row); + for (; rowCursor < at; rowCursor++) pushDeleted(rows[rowCursor]); + rowCursor = at + 1; + } + const open = kind === 'tracked' && row && row.type !== 'equal' && row.reviewStatus !== 'accepted'; + const tokens = open ? getExportDiffTokens(row) : [{ value: cleanExportText(block.text) }]; + plan.push({ + block, + oldBlock: row ? row.leftBlock : null, + r0: r0OfFinal.get(block) || null, + tokens, + open, + markPara: open && row.type === 'inserted' ? 'ins' : '', + }); + } + for (; rowCursor < rows.length; rowCursor++) pushDeleted(rows[rowCursor]); + + const outXml = patchDocxDocumentXml(xml, r0Blocks, plan, { date }); + const enc = new TextEncoder(); + const files = entries.map(e => (e.name === 'word/document.xml' ? { name: e.name, data: enc.encode(outXml) } : e)); + return buildZipArchive(files, date); +} + /* ── Import errors & notices ───────────────────────────────────────────── */ // Error with a translatable message key (shown to the user instead of a raw exception). @@ -12088,6 +13410,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> } else if (kind === 'docx') { result = await extractDocxText(buffer); result.format = 'DOCX'; + result.sourceBytes = bytes; } else { const { text, warnings } = decodeTextFile(bytes, ext); const looksLikeHtml = /^\s*(?:<!doctype html|<html[\s>])/i.test(text.slice(0, 2048)); @@ -12127,7 +13450,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> fnLabel.textContent = `${t('readingFile')} ${file.name}…`; try { - const { text, format, warnings } = await readDocumentFile(file); + const { text, format, warnings, sourceBytes } = await readDocumentFile(file); if (isStale()) { if (seq === uploadSeq[side]) restoreLabel(); return false; @@ -12142,6 +13465,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightFormat = format; state.rightText = text; } + state.docSources[side] = sourceBytes ? { name: file.name, bytes: sourceBytes, importedText: text } : null; resetEditHistory(); if (warnings && warnings.length) { showImportNotice(`${file.name}: ${warnings.join(' ')}`, 'warning'); @@ -12331,6 +13655,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> trigger = trigger || document.getElementById(MENU_TRIGGERS[id]); trigger.setAttribute('aria-expanded', 'true'); openMenuState = { id, trigger }; + if (id === 'export-menu') updateExportMenuTexts(); document.body.classList.toggle('menu-sheet-open', isPhoneWidth()); menuItems(menu).forEach(item => (item.tabIndex = -1)); if (focus) { @@ -12776,6 +14101,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = ''; state.leftFormat = ''; state.rightFormat = ''; + state.docSources = { left: null, right: null }; state.activeRowId = null; state.hoveredRowId = null; state.sidebarFilter = 'all'; @@ -12849,6 +14175,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> [state.leftText, state.rightText] = [state.rightText, state.leftText]; [state.leftName, state.rightName] = [state.rightName, state.leftName]; [state.leftFormat, state.rightFormat] = [state.rightFormat, state.leftFormat]; + state.docSources = { left: state.docSources.right, right: state.docSources.left }; resetEditHistory(); runComparison(); btnFiles.focus(); @@ -12883,11 +14210,13 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.leftText = sanitizeExternalText(textareaLeft.value); state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; } if (rightChanged) { state.rightText = sanitizeExternalText(textareaRight.value); state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; } if (leftChanged || rightChanged) resetEditHistory(); if (state.leftText.trim() && !state.leftName) { @@ -13503,6 +14832,20 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> return { kept, used }; } +// The original .docx of a side (for the Word export in the original format), as base64. +function bytesToBase64(bytes) { + let bin = ''; + for (let i = 0; i < bytes.length; i += 0x8000) bin += String.fromCharCode.apply(null, bytes.subarray(i, i + 0x8000)); + return btoa(bin); +} +function sessionSourceOf(side) { + const src = state.docSources && state.docSources[side]; + const name = side === 'left' ? state.leftName : state.rightName; + const format = side === 'left' ? state.leftFormat : state.rightFormat; + if (!src || format !== 'DOCX' || src.name !== name) return undefined; + return { kind: 'docx', data: bytesToBase64(src.bytes), importedText: src.importedText }; +} + function buildSessionPayload() { const redo = takeRecentHistory(state.redoStack, SESSION_HISTORY_CHAR_BUDGET); const undo = takeRecentHistory(state.undoStack, SESSION_HISTORY_CHAR_BUDGET - redo.used); @@ -13517,12 +14860,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: state.leftName, format: state.leftFormat, text: state.leftText, + source: sessionSourceOf('left'), }, right: { name: state.rightName, format: state.rightFormat, originalText: sessionTracker.originalRightText, text: state.rightText, + source: sessionSourceOf('right'), }, }, view: { @@ -13643,6 +14988,22 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> }); } +function base64ToBytes(b64) { + const bin = atob(b64); + const out = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i); + return out; +} + +// Optional original .docx of a side: { kind: 'docx', data (base64), importedText }. +function expectSource(value, name) { + if (value === undefined) return null; + if (!isPlainObject(value) || value.kind !== 'docx') throw new SessionFileError('sessionErrorInvalid'); + const data = expectString(value.data, SESSION_MAX_FILE_BYTES); + if (!/^[A-Za-z0-9+/]*={0,2}$/.test(data) || data.length % 4 !== 0) throw new SessionFileError('sessionErrorInvalid'); + return { name, bytes: base64ToBytes(data), importedText: expectString(value.importedText, SESSION_MAX_FILE_BYTES) }; +} + // Returns a fresh, fully validated object; throws SessionFileError otherwise. function validateSessionData(raw) { if (!isPlainObject(raw) || raw.format !== SESSION_FORMAT_ID) { @@ -13687,12 +15048,14 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> name: expectString(docs.left.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.left.format), text: expectString(docs.left.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.left.source, docs.left.name), }, right: { name: expectString(docs.right.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.right.format), originalText: expectString(docs.right.originalText, SESSION_MAX_FILE_BYTES), text: expectString(docs.right.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.right.source, docs.right.name), }, view: { mode: view.mode === 'pages' ? 'split' : view.mode, @@ -13740,6 +15103,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> state.rightName = session.right.name; state.rightFormat = session.right.format; state.rightText = session.right.text; + state.docSources = { left: session.left.source || null, right: session.right.source || null }; state.reviews = cloneReviews(session.reviews); state.undoStack = session.history.undo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); state.redoStack = session.history.redo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); diff --git a/src/js/01-i18n.js b/src/js/01-i18n.js index 4b17488..053b4c2 100644 --- a/src/js/01-i18n.js +++ b/src/js/01-i18n.js @@ -54,11 +54,28 @@ const I18N = { listBtnLabel: 'Änderungsliste ({n} Änderungen)', exportBtn: 'Exportieren', expWord: 'Word mit Änderungsverfolgung (.docx)', - expPdf: 'Drucken oder als PDF sichern', expHtml: 'Bericht als Webseite (.html)', expMd: 'Bericht als Markdown (.md)', expCopy: 'Text der neuen Fassung kopieren', - expTxt: 'Neue Fassung als Textdatei (.txt)', + expTxt: 'Endfassung als Textdatei (.txt)', + expSecFinal: 'Endfassung', + expSecFinalDesc: 'Neue Fassung mit Ihren Entscheidungen, ohne Markierungen', + expSecFinalOpen: 'Neue Fassung mit Ihren Entscheidungen – {n} offene Änderungen sind wie angenommen enthalten', + expSecFinalOpenOne: 'Neue Fassung mit Ihren Entscheidungen – 1 offene Änderung ist wie angenommen enthalten', + expSecCompare: 'Vergleich', + expSecCompareDesc: 'Alt → neu mit allen Markierungen, zum Prüfen oder Weitergeben', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'Im Format Ihrer Datei „{name}“', + expWordFinalDescNew: 'Neu gesetzt, mit Überschriften und Nummerierung', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'Sauberes Dokument, im Druckdialog „Als PDF sichern“', + expCopyDesc: 'Reiner Text für E-Mail oder andere Programme', + expWordDesc: 'Offene Änderungen in Word annehmen oder ablehnen', + expWordDescOriginal: 'Im Format von „{name}“, offene Änderungen in Word annehmen oder ablehnen', + expPdfSplit: 'PDF nebeneinander', + expPdfSplitDesc: 'Querformat, alte und neue Fassung in zwei Spalten', + expPdfInline: 'PDF als Fließtext', + expPdfInlineDesc: 'Hochformat, Änderungen im Text markiert', moreLabel: 'Weitere Aktionen', clearBtn: 'Neuer Vergleich', textBtn: 'Text einfügen/bearbeiten', @@ -77,6 +94,8 @@ const I18N = { // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word-Datei gespeichert: {name}', + toastWordOriginal: 'Word-Datei im Originalformat gespeichert: {name}', + noticeWordFallback: 'Gespeichert: {name}. Das Originalformat ließ sich für diese Datei nicht sicher übernehmen (z. B. wegen Änderungen in Fußnoten oder Textfeldern). Die Word-Datei wurde deshalb neu gesetzt; der Text ist vollständig.', toastHtml: 'Bericht gespeichert: {name}', toastMd: 'Markdown-Bericht gespeichert: {name}', toastTxt: 'Textdatei gespeichert: {name}', @@ -87,7 +106,7 @@ const I18N = { toastUndo: 'Rückgängig', toastUndone: 'Rückgängig gemacht', toastRedone: 'Wiederhergestellt', - copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Neue Fassung als Textdatei (.txt)“ unter „Weitere Formate“.', + copyFailed: 'Kopieren in die Zwischenablage ist hier nicht möglich. Bitte nutzen Sie stattdessen „Endfassung als Textdatei (.txt)“ unter „Weitere Formate“.', announceCompared: 'Vergleich fertig: {n} Änderungen. Mit J und K springen Sie von Änderung zu Änderung.', announceComparedOne: 'Vergleich fertig: 1 Änderung.', announceIdentical: 'Vergleich fertig: keine Textunterschiede.', @@ -140,6 +159,7 @@ const I18N = { movedFromHere: 'Verschoben – von hier', movedToHere: 'Verschoben – hierher', moreDeltas: 'weitere Änderungen', + moreDeltasOne: 'weitere Änderung', pageLabel: 'Seite', pageShort: 'S.', pageOf: 'von', @@ -179,7 +199,11 @@ const I18N = { </section> <section class="help-sec"> <h3>Prüfen</h3> - <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft, springen zur nächsten offenen Änderung und Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück. Im Word-Export sind angenommene Änderungen übernommen, abgelehnte zurückgenommen und offene als nachverfolgte Änderungen eingetragen.</p> + <p><strong>Annehmen</strong> behält die neue Fassung, <strong>Ablehnen</strong> stellt für diesen Absatz die alte Fassung wieder her. Die Symbole <strong>✓</strong> (annehmen), <strong>✗</strong> (ablehnen) und <strong>✎</strong> (bearbeiten) stehen oben rechts am aktuellen Absatz. Annehmen und Ablehnen markieren die Änderung als geprüft und springen zur nächsten offenen Änderung. Ein geprüfter Absatz trägt rechts ein ✓ oder ✗; der Pfeil darunter (<strong>Rückgängig</strong>) nimmt die Prüfung zurück.</p> + </section> + <section class="help-sec"> + <h3>Exportieren</h3> + <p><strong>Endfassung</strong>: die neue Fassung mit allen Entscheidungen und Bearbeitungen, ohne Markierungen – als Word-Datei (bei einer Word-Datei als neuer Fassung in deren Originalformat), als PDF oder als Text. Noch offene Änderungen sind darin wie angenommen enthalten. <strong>Vergleich</strong>: alt → neu mit Markierungen – als Word-Datei mit Änderungsverfolgung (angenommene Änderungen übernommen, abgelehnte zurückgenommen, offene zum Annehmen oder Ablehnen) oder als PDF nebeneinander bzw. als Fließtext.</p> </section> <section class="help-sec"> <h3>Tastenkürzel</h3> @@ -268,6 +292,7 @@ const I18N = { exportTitleFmt: 'Vergleich: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} Änderungen ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', + exportCountsFmtOne: '1 Änderung ({mod} geändert, {ins} hinzugefügt, {del} entfernt)', exportReviewFmt: '{k} von {n} geprüft ({a} angenommen, {r} abgelehnt)', exportLabelOriginal: 'Alte Fassung', exportLabelRevised: 'Neue Fassung', @@ -279,9 +304,9 @@ const I18N = { exportLabelDetail: 'Angabe', exportScopeFull: 'Vollständiges Dokument', exportScopeChanges: 'Nur Änderungen (Filter „Nur Änderungen“ aktiv, unveränderte Absätze ausgelassen)', - exportHfIgnored: 'ausgeblendet (nicht verglichen)', - exportHfIgnoredCount: 'ausgeblendet ({n} Zeilen nicht verglichen)', - exportHfIncluded: 'mitverglichen', + exportHfIgnored: 'unveränderte ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIgnoredCount: '{n} unveränderte Zeilen ausgeblendet; geänderte sind als Änderung aufgeführt', + exportHfIncluded: 'vollständig mitverglichen', exportSummaryHeading: 'Zusammenfassung', exportCountTotal: 'Änderungen gesamt', exportChangesHeading: 'Änderungsübersicht', @@ -302,8 +327,10 @@ const I18N = { a11yAddedStart: '[hinzugefügt:', a11yAddedEnd: ']', docxSubject: 'Vergleich mit nachverfolgten Änderungen', - docxNote: 'Offene Abweichungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen. In Doc Diff angenommene Änderungen sind bereits übernommen, abgelehnte bereits zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen.', - exportFileFinal: 'Neue_Fassung', + docxSubjectFinal: 'Endfassung', + docxNote: 'Offene Änderungen sind als nachverfolgte Änderungen (Autor „Doc Diff“) eingetragen, angenommene bereits übernommen, abgelehnte zurückgenommen. In Word unter „Überprüfen“ einzeln oder alle auf einmal annehmen bzw. ablehnen. Diesen Kommentar können Sie löschen.', + docxHfHeading: 'Geänderte Kopf-/Fußzeilen (nicht im Fließtext):', + exportFileFinal: 'Endfassung', exportFileRedline: 'Vergleich', exportFileReport: 'Bericht', sampleLeftName: 'Vertrag_v1_Vorher.docx', @@ -333,7 +360,7 @@ const I18N = { how2Title: 'Änderungen durchgehen', how2Text: 'Entferntes ist rot durchgestrichen, Neues grün markiert. Jede Änderung können Sie annehmen oder ablehnen.', how3Title: 'Ergebnis sichern, wenn Sie es brauchen', - how3Text: 'Als Word-Datei mit Änderungsverfolgung, als PDF oder als Bericht.', + how3Text: 'Als saubere Endfassung (Word im Originalformat oder PDF) oder als Vergleich mit Änderungsverfolgung.', scopeTitle: 'Was es kann – und was nicht', scopeCanTitle: 'Kann', scopeCan1: 'PDFs mit Textebene, Word-Dateien (.docx) und reinen Text vergleichen – auch gemischt, etwa PDF mit Word', @@ -365,7 +392,7 @@ const I18N = { `, faqWordQ: 'Kann ich die Änderungen in Word weiterbearbeiten?', faqWordA: ` - <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Übernommen wird nur der Text, nicht die ursprüngliche Formatierung.</p> + <p>Ja. Der Export „Word mit Änderungsverfolgung“ erzeugt eine .docx-Datei, in der jeder noch offene Unterschied als nachverfolgte Änderung steht. In Word oder LibreOffice können Sie die Änderungen einzeln annehmen oder ablehnen. Ist die neue Fassung eine Word-Datei, behält der Export deren Formatierung: Formatvorlagen, Nummerierung, Tabellen und Bilder bleiben erhalten. Aus PDF oder Text wird ein neu gesetztes Word-Dokument. Die Endfassung ohne Markierungen gibt es ebenso als Word-Datei.</p> `, metaTitle: 'Doc Diff – PDF- und Word-Dokumente vergleichen, ohne Upload', otherPageHint: 'Diese Seite gibt es auch auf Deutsch →', @@ -427,11 +454,28 @@ const I18N = { listBtnLabel: 'List of changes ({n} changes)', exportBtn: 'Export', expWord: 'Word with tracked changes (.docx)', - expPdf: 'Print or save as PDF', expHtml: 'Report as web page (.html)', expMd: 'Report as Markdown (.md)', expCopy: 'Copy text of the new version', - expTxt: 'New version as text file (.txt)', + expTxt: 'Final version as text file (.txt)', + expSecFinal: 'Final version', + expSecFinalDesc: 'The new version with your decisions, without marks', + expSecFinalOpen: 'The new version with your decisions – {n} open changes are included as accepted', + expSecFinalOpenOne: 'The new version with your decisions – 1 open change is included as accepted', + expSecCompare: 'Comparison', + expSecCompareDesc: 'Old → new with all marks, to review or pass on', + expWordFinal: 'Word (.docx)', + expWordFinalDescOriginal: 'In the format of your file “{name}”', + expWordFinalDescNew: 'Newly typeset, with headings and numbering', + expPdfFinal: 'PDF', + expPdfFinalDesc: 'A clean document; choose “Save as PDF” in the print dialog', + expCopyDesc: 'Plain text for email or other apps', + expWordDesc: 'Accept or reject the open changes in Word', + expWordDescOriginal: 'In the format of “{name}”; accept or reject the open changes in Word', + expPdfSplit: 'PDF side by side', + expPdfSplitDesc: 'Landscape, old and new version in two columns', + expPdfInline: 'PDF as running text', + expPdfInlineDesc: 'Portrait, changes marked in the text', moreLabel: 'More actions', clearBtn: 'New comparison', textBtn: 'Paste or edit text', @@ -450,6 +494,8 @@ const I18N = { // ── Toasts & announcements ─────────────────────────────────────────── toastWord: 'Word file saved: {name}', + toastWordOriginal: 'Word file saved in the original format: {name}', + noticeWordFallback: 'Saved: {name}. The original format could not be kept reliably for this file (for example because of changes in footnotes or text boxes), so the Word file was typeset anew; the text is complete.', toastHtml: 'Report saved: {name}', toastMd: 'Markdown report saved: {name}', toastTxt: 'Text file saved: {name}', @@ -460,7 +506,7 @@ const I18N = { toastUndo: 'Undo', toastUndone: 'Undone', toastRedone: 'Redone', - copyFailed: 'Copying to the clipboard is not possible here. Please use “New version as text file (.txt)” under “More formats” instead.', + copyFailed: 'Copying to the clipboard is not possible here. Please use “Final version as text file (.txt)” under “More formats” instead.', announceCompared: 'Comparison ready: {n} changes. Press J and K to move between changes.', announceComparedOne: 'Comparison ready: 1 change.', announceIdentical: 'Comparison ready: no text differences.', @@ -513,6 +559,7 @@ const I18N = { movedFromHere: 'Moved – from here', movedToHere: 'Moved – to here', moreDeltas: 'more changes', + moreDeltasOne: 'more change', pageLabel: 'Page', pageShort: 'p.', pageOf: 'of', @@ -552,7 +599,11 @@ const I18N = { </section> <section class="help-sec"> <h3>Reviewing</h3> - <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed, move on to the next open change A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back. In the Word export, accepted changes are applied, rejected ones are reverted and open ones are recorded as tracked changes.</p> + <p><strong>Accept</strong> keeps the new wording, <strong>Reject</strong> restores the old wording of that paragraph. The symbols <strong>✓</strong> (accept), <strong>✗</strong> (reject) and <strong>✎</strong> (edit) sit at the top right of the current paragraph. Accepting and rejecting mark the change as reviewed and move on to the next open change. A reviewed paragraph carries a ✓ or ✗ on the right; the arrow below it (<strong>Undo</strong>) takes the review back.</p> + </section> + <section class="help-sec"> + <h3>Exporting</h3> + <p><strong>Final version</strong>: the new version with every decision and edit applied, without marks – as a Word file (in the original format when the new version is a Word file), as PDF or as text. Changes that are still open are included as if accepted. <strong>Comparison</strong>: old → new with marks – as a Word file with tracked changes (accepted changes applied, rejected ones reverted, open ones to accept or reject) or as PDF side by side or as running text.</p> </section> <section class="help-sec"> <h3>Keyboard shortcuts</h3> @@ -641,6 +692,7 @@ const I18N = { exportTitleFmt: 'Comparison: {left} → {right}', exportVs: 'vs.', exportCountsFmt: '{total} changes ({mod} changed, {ins} added, {del} removed)', + exportCountsFmtOne: '1 change ({mod} changed, {ins} added, {del} removed)', exportReviewFmt: '{k} of {n} reviewed ({a} accepted, {r} rejected)', exportLabelOriginal: 'Old version', exportLabelRevised: 'New version', @@ -652,9 +704,9 @@ const I18N = { exportLabelDetail: 'Detail', exportScopeFull: 'Full document', exportScopeChanges: 'Changes only (“Changes only” filter active, unchanged paragraphs omitted)', - exportHfIgnored: 'hidden (not compared)', - exportHfIgnoredCount: 'hidden ({n} lines not compared)', - exportHfIncluded: 'included in the comparison', + exportHfIgnored: 'unchanged ones hidden; changed ones are listed as changes', + exportHfIgnoredCount: '{n} unchanged lines hidden; changed ones are listed as changes', + exportHfIncluded: 'fully compared', exportSummaryHeading: 'Summary', exportCountTotal: 'Total changes', exportChangesHeading: 'List of changes', @@ -675,8 +727,10 @@ const I18N = { a11yAddedStart: '[added:', a11yAddedEnd: ']', docxSubject: 'Comparison with tracked changes', - docxNote: 'Open differences are recorded as tracked changes (author “Doc Diff”). Changes accepted in Doc Diff are already applied, rejected ones already reverted. In Word, use Review › Accept / Reject to process them one by one or all at once.', - exportFileFinal: 'New_version', + docxSubjectFinal: 'Final version', + docxHfHeading: 'Changed headers/footers (not in the body text):', + docxNote: 'Open changes are recorded as tracked changes (author “Doc Diff”); accepted ones are already applied, rejected ones reverted. In Word, use Review › Accept / Reject one by one or all at once. You can delete this comment.', + exportFileFinal: 'final', exportFileRedline: 'Comparison', exportFileReport: 'Report', sampleLeftName: 'Contract_v1_Before.docx', @@ -706,7 +760,7 @@ const I18N = { how2Title: 'Go through the changes', how2Text: 'Removed text is struck through in red, added text is marked green. You can accept or reject each change.', how3Title: 'Save the result if you need it', - how3Text: 'As a Word file with tracked changes, as PDF or as a report.', + how3Text: 'As a clean final version (Word in the original format, or PDF) or as a comparison with tracked changes.', scopeTitle: 'What it can do – and what it can’t', scopeCanTitle: 'Can', scopeCan1: 'Compare PDFs with a text layer, Word files (.docx) and plain text – also mixed, e.g. a PDF against a Word file', @@ -738,7 +792,7 @@ const I18N = { `, faqWordQ: 'Can I keep working on the changes in Word?', faqWordA: ` - <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. Only the text is carried over, not the original formatting.</p> + <p>Yes. The “Word with tracked changes” export creates a .docx file in which every difference that is still open is a tracked change. In Word or LibreOffice you can accept or reject each change. When the new version is a Word file, the export keeps its formatting: styles, numbering, tables and images stay as they were. From a PDF or text, a newly typeset Word document is created. The final version without marks is available as a Word file, too.</p> `, metaTitle: 'Doc Diff – Compare PDF and Word documents without uploading', otherPageHint: 'This page is also available in English →', diff --git a/src/js/03-state.js b/src/js/03-state.js index 5edc839..b2a1bc6 100644 --- a/src/js/03-state.js +++ b/src/js/03-state.js @@ -37,6 +37,8 @@ const state = { rightName: '', leftFormat: '', rightFormat: '', + // The .docx files as loaded ({ name, bytes, importedText }): the Word export keeps their format. + docSources: { left: null, right: null }, alignedRows: [], changeRows: [], listItems: [], diff --git a/src/js/04-core.js b/src/js/04-core.js index dc52328..9733646 100644 --- a/src/js/04-core.js +++ b/src/js/04-core.js @@ -36,7 +36,8 @@ function serializeBlockLine(block) { const meta = []; if (block.kind === 'hf' || block.isHeaderFooter) meta.push('hf'); if (block.indent > 0) meta.push(`lvl=${block.indent}`); - return metaLine(meta.join(';'), block.text); + // A heading marker ("## ") from the source stays, so a rewritten text keeps its structure. + return metaLine(meta.join(';'), (block.headingMarker || '') + block.text); } function parseLineMeta(line) { @@ -658,8 +659,11 @@ function parseIntoBlocks(rawText) { (repeatCounts.get(normalizeHfRepeatKey(line)) || 0) >= 2); const kind = classifyBlockKind(line, !seenContentBlock && !isHeaderFooter, isHeaderFooter); + let headingMarker = ''; if (!isHeaderFooter) { seenContentBlock = true; + const m = line.match(/^#{1,3}\s+/); + if (m) headingMarker = `${m[0].trim()} `; line = line.replace(/^#{1,3}\s+/, '').trim(); if (!line) continue; } @@ -691,6 +695,7 @@ function parseIntoBlocks(rawText) { sectionRef: currentSectionRef, text: line, kind, + headingMarker, indent: entry.indent, isHeading, isHeaderFooter, @@ -1083,9 +1088,11 @@ function computeCleanWordDiff(oldText, newText) { } } - const cleaned = mergedNums - .filter(tok => tok.value.length > 0) - .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })); + const cleaned = mergeFragmentedChanges( + mergedNums + .filter(tok => tok.value.length > 0) + .map(tok => (tok.added ? { value: tok.value, added: true } : tok.removed ? { value: tok.value, removed: true } : { value: tok.value })) + ); if (wordDiffPreservesTexts(cleaned, oldText, newText)) return cleaned; // Never show a diff that does not reproduce the source texts: fall back to the raw diff. @@ -1094,6 +1101,84 @@ function computeCleanWordDiff(oldText, newText) { ); } +/** + * Joins changes that only an unchanged hyphen or space separates into one replacement, so a + * rewritten phrase reads as one change instead of misleading word pairs: + * "[Standard]→[Echtzeit]-[Berichtswesen]→[Nachtragsmanagement]" becomes + * "[Standard-Berichtswesen]→[Echtzeit-Nachtragsmanagement]". The joined glue goes into both + * sides, so the invariant (unchanged + removed = old, unchanged + added = new) holds. Each run of + * adjacent changes ends up as at most one removal followed by one insertion; whitespace shared + * by both sides at the edges stays unchanged. + */ +function mergeFragmentedChanges(parts) { + const isChange = tok => Boolean(tok && (tok.removed || tok.added)); + const glued = []; + for (let i = 0; i < parts.length; i++) { + const cur = parts[i]; + const isGlue = + !isChange(cur) && + isChange(glued[glued.length - 1]) && + isChange(parts[i + 1]) && + (/^\s+$/.test(cur.value) || !/\s/.test(cur.value)); + if (isGlue) { + glued.push({ value: cur.value, removed: true }, { value: cur.value, added: true }); + } else { + glued.push(cur); + } + } + + const out = []; + const pushEqual = value => { + if (!value) return; + const last = out[out.length - 1]; + if (last && !isChange(last)) last.value += value; + else out.push({ value }); + }; + let i = 0; + while (i < glued.length) { + if (!isChange(glued[i])) { + pushEqual(glued[i].value); + i++; + continue; + } + let rem = ''; + let add = ''; + while (i < glued.length && isChange(glued[i])) { + if (glued[i].removed) rem += glued[i].value; + else add += glued[i].value; + i++; + } + let lead = ''; + let trail = ''; + if (rem && add) { + const leadRem = rem.match(/^\s*/)[0]; + const leadAdd = add.match(/^\s*/)[0]; + while (lead.length < Math.min(leadRem.length, leadAdd.length) && leadRem[lead.length] === leadAdd[lead.length]) { + lead += leadRem[lead.length]; + } + rem = rem.slice(lead.length); + add = add.slice(lead.length); + const trailRem = rem.match(/\s*$/)[0]; + const trailAdd = add.match(/\s*$/)[0]; + let n = 0; + while ( + n < Math.min(trailRem.length, trailAdd.length) && + trailRem[trailRem.length - 1 - n] === trailAdd[trailAdd.length - 1 - n] + ) { + n++; + } + trail = n ? rem.slice(rem.length - n) : ''; + rem = rem.slice(0, rem.length - n); + add = add.slice(0, add.length - n); + } + pushEqual(lead); + if (rem) out.push({ value: rem, removed: true }); + if (add) out.push({ value: add, added: true }); + pushEqual(trail); + } + return out; +} + function coalesceSideTokens(sideParts, prop) { const out = []; for (let i = 0; i < sideParts.length; i++) { diff --git a/src/js/06-compare.js b/src/js/06-compare.js index fc245ce..ea0dcb2 100644 --- a/src/js/06-compare.js +++ b/src/js/06-compare.js @@ -182,6 +182,7 @@ function loadSampleComparison() { state.rightName = t('sampleRightName'); state.rightFormat = 'DEMO'; state.rightText = sample.v2; + state.docSources = { left: null, right: null }; resetEditHistory(); runComparison(); } @@ -192,11 +193,13 @@ function clearLandingSide(side) { state.leftText = ''; state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; document.getElementById('file-input-left').value = ''; } else { state.rightText = ''; state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; resetEditHistory(); document.getElementById('file-input-right').value = ''; } @@ -569,6 +572,11 @@ function extractDeltaPairs(wordDiffs) { return pairs; } +// "1 weitere Änderung" / "2 weitere Änderungen" (the number is written by the caller). +function moreDeltasText(n) { + return n === 1 ? t('moreDeltasOne') : t('moreDeltas'); +} + // Word diffs of a list item: the row's own, or (rejected change) recomputed from what was rejected. const ghostDiffCache = new WeakMap(); function getItemWordDiffs(item) { @@ -780,7 +788,7 @@ function renderSidebarList(bothLoaded) { const pageLabel = pages.length > 1 ? `${t('pageShort')} ${Math.min(...pages)}–${Math.max(...pages)}` : `${t('pageShort')} ${page}`; const head = item.members ? `${ref} · ${pageLabel}` : [ref, pageLabel].filter(Boolean).join(' · '); const delta = renderSidebarDeltaHtml(item); - const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(t('moreDeltas'))}</span></span>` : ''; + const moreHtml = delta.more > 0 ? `<span class="nav-more"><span aria-hidden="true">+${delta.more}</span><span class="sr-only">, ${delta.more} ${escapeHtml(moreDeltasText(delta.more))}</span></span>` : ''; return `<div class="nav-item ${cls} is-${item.status}${isActive ? ' is-active' : ''}" data-row-id="${item.rowId}" data-item-id="${item.id}"><button type="button" class="nav-item-main" tabindex="${item.id === focusId ? 0 : -1}"${isActive ? ' aria-current="true"' : ''}><span class="nav-item-head"><span class="nav-item-ref">${escapeHtml(head)}</span>${moreHtml}${statusIcon}<span class="sr-only">, ${escapeHtml(getChangeTypeLabel(item))}, ${escapeHtml(getStatusLabel(item.status))}. </span></span>${delta.html}</button></div>`; }) .join('') diff --git a/src/js/07-interactions.js b/src/js/07-interactions.js index a676f34..c301229 100644 --- a/src/js/07-interactions.js +++ b/src/js/07-interactions.js @@ -409,6 +409,7 @@ function rebuildRightTextFromRows(targetRowId, replacementText) { serializeBlockLine({ text: line.trim(), kind: template ? template.kind : 'p', + headingMarker: template ? template.headingMarker : '', indent: template ? template.indent : 0, isHeaderFooter: Boolean(target && target.rightBlock && target.rightBlock.isHeaderFooter), }) @@ -470,6 +471,7 @@ function rebuildRightTextReplacingRows(replacements) { serializeBlockLine({ text: line.trim(), kind: row.rightBlock.kind, + headingMarker: row.rightBlock.headingMarker, indent: row.rightBlock.indent, isHeaderFooter: Boolean(row.rightBlock.isHeaderFooter), }) diff --git a/src/js/08-export-docx.js b/src/js/08-export-docx.js index 4412107..515dc94 100644 --- a/src/js/08-export-docx.js +++ b/src/js/08-export-docx.js @@ -163,32 +163,34 @@ function docxApplyMarkerTab(tokens, block) { return replaced.concat(tokens.slice(1)); } +function isHeaderFooterBlock(block) { + return Boolean(block && (block.isHeaderFooter || block.kind === 'hf')); +} + /** - * Builds the WordprocessingML body for the comparison. Pure function of `rows` and `meta` - * so it can be unit-tested without a browser. + * Builds the WordprocessingML body. Pure function of `rows` and `meta` so it can be unit-tested + * without a browser. + * meta.kind 'tracked' (default): open changes as tracked changes, accepted ones applied + * meta.kind 'final': the new version only, without any marks + * The body is the document text and nothing else: running headers and footers of the source + * (page furniture of a PDF) are left out, so "Accept all" in Word yields a clean document. + * meta.comment (lines of text) becomes a Word comment on the first paragraph. */ function buildDocxDocumentXml(rows, meta) { const date = toWordDate(meta.date); + const final = meta.kind === 'final'; let revId = 1; const revAttrs = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; const paragraphs = []; - const metaPara = (label, value) => - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/></w:pPr>${docxRun(`${label}: `, false, '<w:b/>')}${docxRun(value)}</w:p>`; - - paragraphs.push(`<w:p><w:pPr><w:pStyle w:val="Title"/></w:pPr>${docxRun(meta.title)}</w:p>`); - for (const [label, value] of meta.lines) paragraphs.push(metaPara(label, value)); - paragraphs.push( - `<w:p><w:pPr><w:pStyle w:val="DocDiffMeta"/><w:pBdr><w:bottom w:val="single" w:sz="6" w:space="6" w:color="A6A6A6"/></w:pBdr><w:spacing w:after="360"/></w:pPr>${docxRun(meta.note, false, '<w:i/>')}</w:p>` - ); - for (const row of rows) { const block = row.rightBlock || row.leftBlock; + if (isHeaderFooterBlock(block)) continue; const style = docxStyleForBlock(block); // Word semantics: a change accepted in Doc Diff is plain text (an accepted deletion is // simply gone); open changes become tracked changes. Rejected changes are already reverted - // in the rows (they compare as unchanged). - const accepted = row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'; + // in the rows (they compare as unchanged). The final version applies every change. + const accepted = final || (row.type !== 'equal' && meta.reviewStatusOf && meta.reviewStatusOf(row) === 'accepted'); if (accepted && !row.rightBlock) continue; const tokens = docxApplyMarkerTab( accepted ? [{ value: cleanExportText(row.rightBlock.text) }] : getExportDiffTokens(row), @@ -212,7 +214,16 @@ function buildDocxDocumentXml(rows, meta) { return docxRun(tok.value, false); }) .join(''); - paragraphs.push(`<w:p>${pPr}${runs}</w:p>`); + paragraphs.push({ pPr, runs }); + } + if (!paragraphs.length) paragraphs.push({ pPr: '', runs: '' }); + + if (meta.comment && meta.comment.length) { + const first = paragraphs[0]; + first.runs = + '<w:commentRangeStart w:id="0"/>' + + first.runs + + '<w:commentRangeEnd w:id="0"/><w:r><w:commentReference w:id="0"/></w:r>'; } const sectPr = @@ -225,7 +236,23 @@ function buildDocxDocumentXml(rows, meta) { '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - `<w:body>${paragraphs.join('')}${sectPr}</w:body></w:document>` + `<w:body>${paragraphs.map(p => `<w:p>${p.pPr}${p.runs}</w:p>`).join('')}${sectPr}</w:body></w:document>` + ); +} + +/** The Word comment with the summary of a comparison (one paragraph per line). */ +function buildDocxCommentsXml(meta) { + const date = toWordDate(meta.date); + const paras = meta.comment + .map((line, i) => + `<w:p>${i === 0 ? '<w:r><w:annotationRef/></w:r>' : ''}${docxRun(line, false, i === 0 ? '<w:b/>' : '')}</w:p>` + ) + .join(''); + return ( + '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + + '<w:comments xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">' + + `<w:comment w:id="0" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}" w:initials="DD">${paras}</w:comment>` + + '</w:comments>' ); } @@ -234,9 +261,7 @@ function buildDocxFooterXml(meta) { '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n' + '<w:ftr xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" ' + 'xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">' + - '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:tabs><w:tab w:val="right" w:pos="9072"/></w:tabs></w:pPr>' + - docxRun(meta.footer) + - '<w:r><w:tab/></w:r>' + + '<w:p><w:pPr><w:pStyle w:val="Footer"/><w:jc w:val="right"/></w:pPr>' + docxRun(`${meta.pageLabel} `) + '<w:fldSimple w:instr=" PAGE "><w:r><w:t>1</w:t></w:r></w:fldSimple>' + docxRun(` ${meta.pageOfLabel} `) + @@ -280,7 +305,8 @@ function buildDocxStylesXml(langTag) { function buildDocxPackageFiles(rows, meta) { const langTag = meta.lang === 'de' ? 'de-DE' : 'en-US'; const created = toWordDate(meta.date); - return [ + const hasComment = Boolean(meta.comment && meta.comment.length); + const files = [ { name: '[Content_Types].xml', data: @@ -292,6 +318,7 @@ function buildDocxPackageFiles(rows, meta) { '<Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>' + '<Override PartName="/word/settings.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"/>' + '<Override PartName="/word/footer1.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml"/>' + + (hasComment ? '<Override PartName="/word/comments.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml"/>' : '') + '<Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>' + '<Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>' + '</Types>', @@ -315,6 +342,7 @@ function buildDocxPackageFiles(rows, meta) { 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' + `<dc:title>${escapeXml(meta.title)}</dc:title>` + `<dc:subject>${escapeXml(meta.subject)}</dc:subject>` + + (meta.description ? `<dc:description>${escapeXml(meta.description)}</dc:description>` : '') + `<dc:creator>${DOCX_AUTHOR}</dc:creator>` + `<cp:lastModifiedBy>${DOCX_AUTHOR}</cp:lastModifiedBy>` + `<dc:language>${langTag}</dc:language>` + @@ -337,6 +365,7 @@ function buildDocxPackageFiles(rows, meta) { '<Relationship Id="rIdStyles" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>' + '<Relationship Id="rIdSettings" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml"/>' + '<Relationship Id="rIdFooter1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml"/>' + + (hasComment ? '<Relationship Id="rIdComments" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" Target="comments.xml"/>' : '') + '</Relationships>', }, { name: 'word/document.xml', data: buildDocxDocumentXml(rows, meta) }, @@ -352,33 +381,62 @@ function buildDocxPackageFiles(rows, meta) { }, { name: 'word/footer1.xml', data: buildDocxFooterXml(meta) }, ]; + if (hasComment) files.push({ name: 'word/comments.xml', data: buildDocxCommentsXml(meta) }); + return files; } -/** Builds the complete .docx file (Uint8Array) for the current comparison state. */ -function buildDocxRedline(date = new Date()) { - const counts = getExportCounts(); +/** + * Summary of the comparison for the Word comment of the tracked export: the documents, the + * counts, the review status, how to work with the marks, and the header/footer changes (they + * are not in the body text). + */ +function buildDocxSummaryLines(date) { + const items = getExportItems(); + const counts = getExportCounts(items); const lines = [ - [t('exportLabelOriginal'), getDisplayDocName('left')], - [t('exportLabelRevised'), getDisplayDocName('right')], - [t('exportLabelCreated'), formatExportDate(date)], - [t('exportLabelChanges'), formatExportCountsLine(counts)], + getExportTitle(), + `${t('exportLabelCreated')}: ${formatExportDate(date)}`, + `${t('exportLabelChanges')}: ${formatExportCountsLine(counts)}`, ]; - const review = getExportReviewLine(); - if (review) lines.push([t('exportLabelReview'), review]); - lines.push([t('exportLabelHf'), state.ignoreHeadersFooters ? t('exportHfIgnored') : t('exportHfIncluded')]); + const review = getExportReviewLine(counts); + if (review) lines.push(`${t('exportLabelReview')}: ${review}`); + lines.push(t('docxNote')); + const hf = items.filter(item => isHeaderFooterItem(item) && item.status !== 'rejected'); + if (hf.length) { + lines.push(t('docxHfHeading')); + for (const item of hf) { + const { pairs } = getRowChangeSummary(item, 80); + const change = pairs.map(p => (p.del && p.ins ? `${p.del} → ${p.ins}` : p.ins || p.del)).join('; '); + lines.push(`${getExportItemRef(item)} (${getExportItemPageLabel(item)}, ${getExportStatusLabel(item.status)}): ${change}`); + } + } + return lines; +} + +/** + * The newly typeset Word file (Uint8Array) for the current comparison state: + * 'tracked' – "Accept all" in Word yields the new version (with the rejections applied), + * "Reject all" the old version with the accepted changes applied + * 'final' – the new version with every decision and edit applied, no marks + */ +function buildGeneratedDocx(kind, date = new Date()) { + const counts = getExportCounts(); const meta = { + kind, lang: state.lang, date, - title: getExportTitle(), - subject: t('docxSubject'), - lines, + title: kind === 'final' ? getDisplayDocName('right') : getExportTitle(), + subject: t(kind === 'final' ? 'docxSubjectFinal' : 'docxSubject'), + description: kind === 'final' ? '' : formatExportCountsLine(counts), reviewStatusOf: row => row.reviewStatus || '', - note: t('docxNote'), - footer: `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`, + comment: kind === 'final' ? null : buildDocxSummaryLines(date), pageLabel: t('pageLabel'), pageOfLabel: t('pageOf'), }; - // The document is always complete: "Accept all" in Word yields the new version (with the - // rejections applied), "Reject all" the old version with the accepted changes applied. return buildZipArchive(buildDocxPackageFiles(state.alignedRows, meta), date); } + +// Kept for callers and tests written against the earlier name. +function buildDocxRedline(date = new Date()) { + return buildGeneratedDocx('tracked', date); +} diff --git a/src/js/08-export.js b/src/js/08-export.js index ec419ef..1d9e282 100644 --- a/src/js/08-export.js +++ b/src/js/08-export.js @@ -80,23 +80,17 @@ function getExportTitle() { } /** - * The changes of the comparison with their review status, in document order: the list items - * (including rejected changes) when the review index is current, otherwise the change rows. + * The changes of the comparison with their review status, exactly as the change list shows them + * (same order, same count: an identical header/footer change on several pages is one change), + * including rejected changes. Falls back to the change rows while the review index is not current. */ function getExportItems() { if ( Array.isArray(state.listItems) && state.listItems.length && - state.listItems.every(i => state.alignedRows.includes(i.row)) + state.listItems.every(i => itemMembers(i).every(m => state.alignedRows.includes(m.row))) ) { - // Exports follow the document: every occurrence of a merged header/footer change, in - // document order (the list shows those after the body changes). - const pos = new Map(state.alignedRows.map((r, i) => [r.id, i])); - return state.listItems - .flatMap(item => (item.members ? item.members : [item])) - .map(item => ({ ...item, members: undefined })) - .sort((a, b) => pos.get(a.rowId) - pos.get(b.rowId) || (a.sub || 0) - (b.sub || 0)) - .map((item, i) => ({ ...item, index: i + 1 })); + return state.listItems.map((item, i) => ({ ...item, index: i + 1 })); } return state.changeRows.map((row, i) => ({ id: row.id, @@ -133,13 +127,24 @@ function getExportStatusLabel(status) { return status === 'accepted' ? t('statusAccepted') : status === 'rejected' ? t('statusRejected') : t('statusOpen'); } +/** Reference as the change list shows it ("§ 1 (2)", "Kopf-/Fußzeile – auf 3 Seiten …"). */ function getExportItemRef(item) { - if (item.ghost) return item.ghost.refCode || ''; - return getRowRefCode(item.row); + return getItemRef(item); +} + +/** "S. 2" or, for a change on several pages, "S. 1–3". */ +function getExportItemPages(item) { + const pages = itemMembers(item).map(m => getItemPage(m)); + const min = Math.min(...pages); + const max = Math.max(...pages); + return min === max ? String(min) : `${min}–${max}`; +} +function getExportItemPageLabel(item) { + return `${t('pageShort')} ${getExportItemPages(item)}`; } function formatExportCountsLine(c) { - return tf('exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); + return tf(c.total === 1 ? 'exportCountsFmtOne' : 'exportCountsFmt', { total: c.total, mod: c.modified, ins: c.inserted, del: c.deleted }); } function formatExportDate(date) { @@ -173,7 +178,7 @@ function getRowReportTag(row) { if (row.type === 'equal') { return row.ghostNote ? `${t('statusRejected')} · ${t('exportRejectedNote')}` : ''; } - const parts = [getRowTypeLabel(row), getRowRefCode(row)].filter(Boolean); + const parts = [getRowTypeLabel(row), getDisplayRef(row)].filter(Boolean); if (row.reviewStatus === 'accepted') parts.push(t('statusAccepted')); return parts.join(' · '); } @@ -287,11 +292,7 @@ function getRowChangeSummary(rowOrItem, maxLen = 70) { * furniture and are always left out, whether or not the header/footer filter is active. */ function buildFinalText() { - const blocks = state.alignedRows.length - ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) - : parseIntoBlocks(state.rightText || ''); - return blocks - .filter(b => !b.isHeaderFooter && !isInternalMarkerLine(b.text)) + return getFinalBlocks() .map(b => cleanExportText(b.text).trim()) .filter(Boolean) .join('\n\n'); @@ -323,7 +324,7 @@ function renderReportSummaryPairsHtml(row) { if (p.ins) return renderReportTokensHtml([{ value: p.ins, added: true }]); return renderReportTokensHtml([{ value: p.del, removed: true }]); }); - if (more) items.push(`<span class="more">+${more} ${escapeHtml(t('moreDeltas'))}</span>`); + if (more) items.push(`<span class="more">+${more} ${escapeHtml(moreDeltasText(more))}</span>`); return items.map(html => `<div>${html}</div>`).join(''); } @@ -392,13 +393,22 @@ function buildExportHtmlReport(date = new Date()) { const items = getExportItems(); const counts = getExportCounts(items); const title = getExportTitle(); - // Anchors: every changed row, and the row a rejected change was restored to. + // Anchors: every changed row (all pages of a merged header/footer change), and the row a + // rejected change was restored to. The first row of a change carries its id. const anchorIndex = new Map(); items.forEach((item, i) => { - if (item.ghost && item.type === 'inserted') return; - if (!anchorIndex.has(item.rowId)) anchorIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) { + if (m.ghost && m.type === 'inserted') continue; + if (!anchorIndex.has(m.rowId)) anchorIndex.set(m.rowId, i + 1); + } }); - const anchorFor = row => `c${anchorIndex.get(row.id)}`; + const anchorUsed = new Set(); + const anchorFor = row => { + const n = anchorIndex.get(row.id); + if (!n || anchorUsed.has(n)) return ''; + anchorUsed.add(n); + return ` id="c${n}"`; + }; const reviewLine = getExportReviewLine(counts); const changeListHtml = items.length @@ -410,10 +420,9 @@ ${items .map((item, i) => { const n = i + 1; const ref = getExportItemRef(item) || `#${n}`; - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; - const target = item.ghost && item.type === 'inserted' ? 0 : anchorIndex.get(item.rowId); + const target = itemMembers(item).some(m => anchorIndex.get(m.rowId) === n) ? n : 0; const refHtml = target ? `<a href="#c${target}">${escapeHtml(ref)}</a>` : escapeHtml(ref); - return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(t('pageShort'))} ${page}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; + return `<tr><td class="num">${n}</td><td class="ref">${refHtml}<div class="more">${escapeHtml(getExportItemPageLabel(item))}</div></td><td><span class="badge ${item.type}">${escapeHtml(getRowTypeLabel(item))}</span></td><td class="status ${item.status}">${escapeHtml(getExportStatusLabel(item.status))}</td><td>${renderReportSummaryPairsHtml(item)}</td></tr>`; }) .join('\n')} </tbody> @@ -429,7 +438,7 @@ ${items const inner = renderReportTokensHtml(getExportDiffTokens(row)); const tag = kind === 'h1' ? 'h3' : kind === 'h2' ? 'h4' : kind === 'h3' ? 'h5' : 'p'; const tagText = getRowReportTag(row); - const idAttr = anchorIndex.has(row.id) ? ` id="${anchorFor(row)}"` : ''; + const idAttr = anchorFor(row); const tagHtml = tagText ? `<span class="row-tag"><a href="#changes">${escapeHtml(tagText)}</a></span>` : ''; return `<div class="row ${row.type} kind-${kind}"${idAttr}>${tagHtml}<${tag}>${inner}</${tag}></div>`; }) @@ -570,7 +579,7 @@ function buildExportMarkdown(date = new Date()) { const counts = getExportCounts(items); const changeIndex = new Map(); items.forEach((item, i) => { - if (!item.ghost && !changeIndex.has(item.rowId)) changeIndex.set(item.rowId, i + 1); + for (const m of itemMembers(item)) if (!m.ghost && !changeIndex.has(m.rowId)) changeIndex.set(m.rowId, i + 1); }); const reviewLine = getExportReviewLine(counts); const lines = [ @@ -604,11 +613,10 @@ function buildExportMarkdown(date = new Date()) { if (p.ins) return renderMarkdownTokens([{ value: p.ins, added: true }]); return renderMarkdownTokens([{ value: p.del, removed: true }]); }) - .concat(more ? [`+${more} ${escapeMarkdownInline(t('moreDeltas'))}`] : []) + .concat(more ? [`+${more} ${escapeMarkdownInline(moreDeltasText(more))}`] : []) .join('<br>'); - const page = item.ghost ? item.ghost.pageNum || 1 : item.row.pageNum || 1; lines.push( - `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${page} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` + `| ${n} | ${escapeMarkdownInline(getExportItemRef(item) || `#${n}`)} | ${getExportItemPages(item)} | ${escapeMarkdownInline(getRowTypeLabel(item))} | ${escapeMarkdownInline(getExportStatusLabel(item.status))} | ${escapeMarkdownTableCell(summary)} |` ); } } else { @@ -654,11 +662,16 @@ function renderPrintCellHtml(html, block) { return `<td class="pv-cell kind-${kind}">${html}</td>`; } -/** Builds a print-only, paginated rendering of the comparison for the current view mode. */ -function buildPrintViewHtml(date = new Date()) { +/** + * Builds a print-only, paginated rendering. kind: 'split' (old and new side by side, landscape), + * 'inline' (one column with the marks in the text, portrait) or 'final' (the new version with + * every decision applied, as a clean document). + */ +function buildPrintViewHtml(date = new Date(), kind = state.viewMode) { + if (kind === 'final') return buildFinalPrintHtml(); const rows = getExportBodyRows(); const counts = getExportCounts(); - const mode = state.viewMode; + const mode = kind === 'inline' ? 'inline' : 'split'; const head = ` <header class="pv-head"> <div class="pv-title">${escapeHtml(getExportTitle())}</div> @@ -738,9 +751,44 @@ function buildPrintViewHtml(date = new Date()) { return `${head}<main class="pv-body pv-mode-${mode}">${body}${emptyHtml}</main>`; } +/** The new version as a clean document: every decision and edit applied, no marks. */ +function buildFinalPrintHtml() { + const blocks = getFinalBlocks(); + const html = blocks + .map(block => { + const text = cleanExportText(block.text).trim(); + if (!text) return ''; + const kind = block.kind || 'p'; + if (kind === 'h1' || kind === 'h2' || kind === 'h3') { + const tag = kind === 'h1' ? 'h1' : kind === 'h2' ? 'h2' : 'h3'; + return `<${tag} class="pvf-${kind}">${escapeHtml(text)}</${tag}>`; + } + const indent = block.indent > 0 ? ` style="margin-left:${Math.min(block.indent, 6) * 1.6}em"` : ''; + const split = extractListMarker(text, kind); + if (split) { + return `<p class="pvf-item pvf-${kind}"${indent}><span class="pvf-marker">${escapeHtml(split.marker)}</span><span class="pvf-body">${escapeHtml(split.body)}</span></p>`; + } + return `<p class="pvf-p"${indent}>${escapeHtml(text)}</p>`; + }) + .join(''); + return `<main class="pv-final" lang="${state.lang === 'de' ? 'de' : 'en'}">${html}</main>`; +} + +/** Blocks of the new version as it stands now, without running headers and footers. */ +function getFinalBlocks() { + const blocks = state.alignedRows.length + ? state.alignedRows.filter(r => r.rightBlock).map(r => r.rightBlock) + : parseIntoBlocks(state.rightText || ''); + return blocks.filter(b => !b.isHeaderFooter && b.kind !== 'hf' && !isInternalMarkerLine(b.text)); +} + +// The print view requested from the export menu; Ctrl/Cmd+P prints the current view. +let requestedPrintKind = null; + function preparePrintView() { if (typeof ensureComparisonCurrent === 'function') ensureComparisonCurrent(); if (!state.alignedRows.length) return; + const kind = requestedPrintKind || (state.viewMode === 'inline' ? 'inline' : 'split'); const date = new Date(); let view = document.getElementById('print-view'); if (!view) { @@ -750,7 +798,7 @@ function preparePrintView() { view.setAttribute('aria-hidden', 'true'); document.body.appendChild(view); } - setSafeContainerHtml(view, buildPrintViewHtml(date)); + setSafeContainerHtml(view, buildPrintViewHtml(date, kind)); let pageStyle = document.getElementById('print-page-style'); if (!pageStyle) { @@ -758,15 +806,18 @@ function preparePrintView() { pageStyle.id = 'print-page-style'; document.head.appendChild(pageStyle); } - const footerLeft = `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; - const orientation = state.viewMode === 'inline' ? 'portrait' : 'landscape'; - pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: 14mm 12mm 16mm; + const footerLeft = + kind === 'final' ? getDisplayDocName('right') : `${getDisplayDocName('right')} ${t('exportVs')} ${getDisplayDocName('left')}`; + const orientation = kind === 'split' ? 'landscape' : 'portrait'; + const margin = kind === 'final' ? '22mm 20mm 20mm 24mm' : '14mm 12mm 16mm'; + pageStyle.textContent = `@media print { @page { size: A4 ${orientation}; margin: ${margin}; @bottom-left { content: ${cssString(footerLeft)}; font: 7.5pt sans-serif; color: #444; } @bottom-right { content: ${cssString(`${t('pageLabel')} `)} counter(page) ${cssString(` ${t('pageOf')} `)} counter(pages); font: 7.5pt sans-serif; color: #444; } } }`; document.body.classList.add('has-print-view'); } function cleanupPrintView() { + requestedPrintKind = null; document.body.classList.remove('has-print-view'); const view = document.getElementById('print-view'); if (view) view.remove(); @@ -822,6 +873,55 @@ function downloadWithToast(content, mimeType, filename, toastKey) { if (typeof showToast === 'function') showToast(tf(toastKey, { name: filename })); } +/** "Vertrag_v2_Endfassung.docx": named after the new version, which it is. */ +function buildFinalFileName(ext) { + const base = sanitizeFileNamePart(state.rightName, 'DocDiff', 100); + return `${base}_${sanitizeFileNamePart(t('exportFileFinal'), 'Final')}.${ext}`; +} + +/** The .docx the new version was read from, if it is still the loaded new version. */ +function getRightDocxSource() { + const src = state.docSources && state.docSources.right; + if (!src || state.rightFormat !== 'DOCX' || src.name !== state.rightName || !src.bytes) return null; + return src; +} + +const DOCX_MIME = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; + +/** + * Word export. With a .docx as the new version, the file itself is the base (original format); + * if that cannot be done reliably, the newly typeset document is used and the user is told. + */ +async function exportWord(kind) { + const date = new Date(); + const source = getRightDocxSource(); + let bytes = null; + let fellBack = false; + if (source) { + try { + bytes = await buildDocxFromSource(source, parseIntoBlocks(state.rightText), state.alignedRows, kind, date); + } catch (err) { + fellBack = true; + if (typeof console !== 'undefined') console.warn('Doc Diff: original-format Word export not possible:', err && err.message); + } + } + if (!bytes) bytes = buildGeneratedDocx(kind, date); + const filename = kind === 'final' ? buildFinalFileName('docx') : buildExportFileName('exportFileRedline', 'docx'); + downloadBlob(bytes, DOCX_MIME, filename); + if (fellBack && typeof showImportNotice === 'function') { + showImportNotice(tf('noticeWordFallback', { name: filename }), 'warning'); + } else if (typeof showToast === 'function') { + showToast(tf(source ? 'toastWordOriginal' : 'toastWord', { name: filename })); + } +} + +function startPrint(kind) { + if (!state.alignedRows.length) return; + requestedPrintKind = kind; + preparePrintView(); + window.print(); +} + function handleExportAction(type) { // Commit an inline edit that is still open so the export reflects it. const openEditor = document.querySelector('.clause-inline-editor'); @@ -830,28 +930,19 @@ function handleExportAction(type) { // the current text, not the rows from before. ensureComparisonCurrent(); - if (type === 'print') { - if (!state.alignedRows.length) return; - preparePrintView(); - window.print(); - return; - } - // Exports need a finished comparison. The menu is disabled until then; never substitute // sample content for (or overwrite) a document the user has loaded. if (!state.alignedRows.length) return; - if (type === 'copy') { + if (type === 'print' || type === 'print-split' || type === 'print-inline' || type === 'print-final') { + const kind = type === 'print' ? (state.viewMode === 'inline' ? 'inline' : 'split') : type.slice(6); + startPrint(kind); + } else if (type === 'copy') { copyFinalTextToClipboard(); } else if (type === 'txt') { - downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildExportFileName('exportFileFinal', 'txt'), 'toastTxt'); - } else if (type === 'word') { - downloadWithToast( - buildDocxRedline(), - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - buildExportFileName('exportFileRedline', 'docx'), - 'toastWord' - ); + downloadWithToast(`${buildFinalText()}\n`, 'text/plain;charset=utf-8', buildFinalFileName('txt'), 'toastTxt'); + } else if (type === 'word' || type === 'word-final') { + exportWord(type === 'word' ? 'tracked' : 'final'); } else if (type === 'html') { downloadWithToast(buildExportHtmlReport(), 'text/html;charset=utf-8', buildExportFileName('exportFileReport', 'html'), 'toastHtml'); } else if (type === 'md') { @@ -859,6 +950,25 @@ function handleExportAction(type) { } } +/** + * The descriptions in the export menu that depend on the documents: whether the Word file keeps + * the original format, and that open changes are part of the final version. + */ +function updateExportMenuTexts() { + const set = (id, text) => { + const el = document.getElementById(id); + if (el) el.textContent = text; + }; + const source = getRightDocxSource(); + set('exp-desc-word-final', source ? tf('expWordFinalDescOriginal', { name: source.name }) : t('expWordFinalDescNew')); + set('exp-desc-word', source ? tf('expWordDescOriginal', { name: source.name }) : t('expWordDesc')); + const open = state.listItems.filter(item => item.status === 'open').length; + set( + 'exp-sec-final-desc', + open === 0 ? t('expSecFinalDesc') : open === 1 ? t('expSecFinalOpenOne') : tf('expSecFinalOpen', { n: open }) + ); +} + /* ── Export availability ─────────────────────────────────────────────────── */ /** Really disables the export triggers (not just visually) while no comparison is available. */ diff --git a/src/js/08b-export-docx-source.js b/src/js/08b-export-docx-source.js new file mode 100644 index 0000000..b2f538e --- /dev/null +++ b/src/js/08b-export-docx-source.js @@ -0,0 +1,915 @@ +/* ── Word export in the original format ──────────────────────────────────────────────────── + * When the new version was loaded from a .docx, the Word exports start from that very file + * instead of a newly typeset document. Every paragraph whose text is unchanged is copied byte + * for byte, so styles, numbering, tables, images, headers, footers and the page layout stay as + * they were. Only paragraphs whose text differs are rewritten, run by run: words that stay keep + * their character formatting, new words take the formatting of their neighbours. + * + * Two kinds: + * 'final' – the new version with every review decision and edit applied, no marks + * 'tracked' – the same, plus every open change as a Word tracked change (old → new) + * + * The result is read back and compared with the expected text before it is offered. If + * anything does not match (an unusual document structure, a change inside a text box), the + * caller falls back to the newly typeset document. Pure string processing, no DOM, so it can be + * unit-tested in Node. + */ + +/* ── ZIP reading (all entries, as bytes) ─────────────────────────────────── */ + +async function inflateRaw(bytes) { + const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream('deflate-raw')); + return new Uint8Array(await new Response(stream).arrayBuffer()); +} + +/** Reads every entry of a ZIP archive: [{ name, data: Uint8Array }] in archive order. */ +async function readZipEntries(input) { + const bytes = input instanceof Uint8Array ? input : new Uint8Array(input); + const dv = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength); + let eocd = -1; + for (let i = bytes.length - 22; i >= Math.max(0, bytes.length - 65557); i--) { + if (dv.getUint32(i, true) === 0x06054b50) { + eocd = i; + break; + } + } + if (eocd < 0) throw new Error('zip: no central directory'); + const count = dv.getUint16(eocd + 10, true); + let p = dv.getUint32(eocd + 16, true); + const utf8 = new TextDecoder('utf-8'); + const out = []; + for (let n = 0; n < count; n++) { + if (dv.getUint32(p, true) !== 0x02014b50) throw new Error('zip: bad central directory'); + const method = dv.getUint16(p + 10, true); + const compSize = dv.getUint32(p + 20, true); + const nameLen = dv.getUint16(p + 28, true); + const extraLen = dv.getUint16(p + 30, true); + const commentLen = dv.getUint16(p + 32, true); + const localOffset = dv.getUint32(p + 42, true); + const name = utf8.decode(bytes.subarray(p + 46, p + 46 + nameLen)); + p += 46 + nameLen + extraLen + commentLen; + const dataStart = localOffset + 30 + dv.getUint16(localOffset + 26, true) + dv.getUint16(localOffset + 28, true); + const raw = bytes.subarray(dataStart, dataStart + compSize); + let data; + if (method === 0) data = raw.slice(); + else if (method === 8) data = await inflateRaw(raw); + else throw new Error(`zip: unsupported method ${method}`); + out.push({ name, data }); + } + return out; +} + +/* ── A minimal XML reader that keeps source offsets ───────────────────────── + * Elements: { name, start, openEnd, closeStart, end, selfClosing, children }; text between + * elements is not needed (Word keeps text inside w:t, read from the source slice). Offsets let + * untouched parts be copied verbatim. + */ +function parseXmlTree(xml) { + const root = { name: '#root', start: 0, openEnd: 0, closeStart: xml.length, end: xml.length, children: [] }; + const stack = [root]; + let i = 0; + const n = xml.length; + while (i < n) { + const lt = xml.indexOf('<', i); + if (lt < 0) break; + if (xml.startsWith('<!--', lt)) { + const e = xml.indexOf('-->', lt + 4); + if (e < 0) throw new Error('xml: unterminated comment'); + i = e + 3; + continue; + } + if (xml.startsWith('<![CDATA[', lt)) { + const e = xml.indexOf(']]>', lt + 9); + if (e < 0) throw new Error('xml: unterminated CDATA'); + i = e + 3; + continue; + } + if (xml.startsWith('<?', lt) || xml.startsWith('<!', lt)) { + const e = xml.indexOf('>', lt + 2); + if (e < 0) throw new Error('xml: unterminated declaration'); + i = e + 1; + continue; + } + // Find the end of the tag, honouring quoted attribute values (they may contain '>'). + let j = lt + 1; + let quote = ''; + while (j < n) { + const c = xml[j]; + if (quote) { + if (c === quote) quote = ''; + } else if (c === '"' || c === "'") { + quote = c; + } else if (c === '>') { + break; + } + j++; + } + if (j >= n) throw new Error('xml: unterminated tag'); + const tagEnd = j + 1; + if (xml[lt + 1] === '/') { + const name = xml.slice(lt + 2, j).trim(); + const node = stack.pop(); + if (!node || node.name !== name) throw new Error(`xml: mismatched </${name}>`); + node.closeStart = lt; + node.end = tagEnd; + } else { + const m = /^[^\s/>]+/.exec(xml.slice(lt + 1, j)); + if (!m) throw new Error('xml: bad tag'); + const selfClosing = xml[j - 1] === '/'; + const node = { name: m[0], start: lt, openEnd: tagEnd, closeStart: tagEnd, end: tagEnd, selfClosing, children: [] }; + stack[stack.length - 1].children.push(node); + if (!selfClosing) stack.push(node); + } + i = tagEnd; + } + if (stack.length !== 1) throw new Error('xml: unclosed element'); + return root; +} + +function xmlLocalName(node) { + const k = node.name.indexOf(':'); + return k < 0 ? node.name : node.name.slice(k + 1); +} + +function decodeXmlText(s) { + return s.replace(/&(#x[0-9a-fA-F]+|#\d+|lt|gt|amp|quot|apos);/g, (m, e) => { + if (e === 'lt') return '<'; + if (e === 'gt') return '>'; + if (e === 'amp') return '&'; + if (e === 'quot') return '"'; + if (e === 'apos') return "'"; + const code = e[1] === 'x' ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10); + try { + return String.fromCodePoint(code); + } catch (err) { + return ''; + } + }); +} + +/* ── Paragraph content as "pieces" ───────────────────────────────────────── + * A paragraph is flattened into pieces in reading order: + * atom – one character of text (or a tab / line break / non-breaking hyphen element) with + * the run properties and the wrappers (hyperlink, content control, …) it sits in + * opaque – anything without text (bookmarks, images, field characters, comments, …); kept + * in place, never dropped + * `cmp` is the comparable text of a piece (whitespace as one space, soft hyphens as nothing). + */ + +const DOCX_WRAPPERS = new Set(['hyperlink', 'smartTag', 'customXml', 'fldSimple', 'dir', 'bdo']); +const DOCX_TEXT_LIKE = { tab: ' ', ptab: ' ', br: ' ', cr: ' ', noBreakHyphen: '-', softHyphen: '' }; + +function docxCmpChar(ch) { + if (/^\s$/u.test(ch) || /[  -    ]/.test(ch)) return ' '; + if (/[­​⁠]/.test(ch)) return ''; + if (typeof LATIN_LIGATURES !== 'undefined' && LATIN_LIGATURES[ch]) return LATIN_LIGATURES[ch]; + return ch; +} + +function flattenParagraph(p, xml, ctx) { + const pieces = []; + let pPr = ''; + const chainIds = new Map(); + const chainFor = (parent, wrapper) => { + const ids = parent.map(w => w.id).concat(wrapper.id); + const key = ids.join('/'); + if (!chainIds.has(key)) chainIds.set(key, parent.concat(wrapper)); + return chainIds.get(key); + }; + const outer = node => xml.slice(node.start, node.end); + + const handleRun = (r, chain) => { + const rPrNode = r.children.find(c => xmlLocalName(c) === 'rPr'); + const rPr = rPrNode ? outer(rPrNode) : ''; + for (const c of r.children) { + const name = xmlLocalName(c); + if (name === 'rPr') continue; + if (name === 't') { + const text = c.selfClosing ? '' : decodeXmlText(xml.slice(c.openEnd, c.closeStart)); + for (const ch of text) pieces.push({ type: 'atom', ch, rPr, chain, cmp: docxCmpChar(ch) }); + } else if (name in DOCX_TEXT_LIKE) { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: DOCX_TEXT_LIKE[name] }); + } else if (name === 'footnoteReference' || name === 'endnoteReference') { + pieces.push({ type: 'atom', elem: outer(c), rPr, chain, cmp: ctx.noteLabels.get(c.start) || '' }); + } else { + // Field characters, field codes, drawings, comment references, …: kept as they are. + pieces.push({ type: 'opaque', runChild: outer(c), rPr, chain, cmp: '' }); + } + } + }; + + const walk = (node, chain) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (node === p && name === 'pPr') { + pPr = outer(c); + continue; + } + if (name === 'r') handleRun(c, chain); + else if (DOCX_WRAPPERS.has(name) && !c.selfClosing) { + walk(c, chainFor(chain, { id: `w${c.start}`, open: xml.slice(c.start, c.openEnd), close: xml.slice(c.closeStart, c.end) })); + } else if (name === 'sdt') { + const content = c.children.find(x => xmlLocalName(x) === 'sdtContent'); + if (!content || content.selfClosing) pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + else walk(content, chainFor(chain, { id: `s${c.start}`, open: xml.slice(c.start, content.openEnd), close: xml.slice(content.closeStart, c.end) })); + } else if ((name === 'ins' || name === 'moveTo') && !c.selfClosing) { + // Text inserted by an earlier tracked change counts as text (as when it is read in). + walk(c, chain); + } else { + pieces.push({ type: 'opaque', raw: outer(c), chain, cmp: '' }); + } + } + }; + walk(p, []); + + // One comparable space per whitespace run; none at the edges. + let prevWs = true; + for (const piece of pieces) { + if (!piece.cmp) continue; + if (piece.cmp === ' ') { + if (prevWs) piece.cmp = ''; + prevWs = true; + } else { + prevWs = false; + } + } + for (let k = pieces.length - 1; k >= 0; k--) { + if (!pieces[k].cmp) continue; + if (pieces[k].cmp === ' ') pieces[k].cmp = ''; + else break; + } + return { pPr, pieces, text: pieces.map(x => x.cmp).join('') }; +} + +/* ── Units: what the reader turned into one block ─────────────────────────── + * A paragraph outside tables is one unit; a table row is one unit (its cells joined with + * " · ", as when the file is read in). Paragraphs nested in text boxes and rows of nested tables + * are "locked": they are matched, but never rewritten. + */ +function collectDocxUnits(xml, tree) { + const noteLabels = new Map(); + let fn = 0; + let en = 0; + const noteRe = /<([A-Za-z0-9_]+:)?(footnoteReference|endnoteReference)\b/g; + let m; + while ((m = noteRe.exec(xml))) { + noteLabels.set(m.index, `[${m[2] === 'footnoteReference' ? ++fn : ++en}]`); + } + const ctx = { noteLabels }; + const units = []; + const paraText = p => flattenParagraph(p, xml, ctx).text; + + const cellParas = (node, out, state) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'p') out.push(c); + else if (name === 'tbl') state.nested = true; + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') cellParas(c, out, state); + } + return out; + }; + + const walk = (node, locked) => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'AlternateContent') { + const fallback = c.children.find(x => xmlLocalName(x) === 'Fallback'); + if (fallback) walk(fallback, true); + continue; + } + if (name === 'p') { + units.push({ kind: 'p', node: c, locked, text: paraText(c) }); + walk(c, true); + continue; + } + if (name === 'tbl') { + walkTable(c, locked); + continue; + } + walk(c, locked); + } + }; + + const walkTable = (tbl, locked) => { + const rows = []; + const collectRows = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tr') rows.push(c); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectRows(c); + } + }; + collectRows(tbl); + const tableInfo = { node: tbl, rows: rows.length }; + for (const tr of rows) { + const cells = []; + const state = { nested: false }; + const collectCells = node => { + for (const c of node.children) { + const name = xmlLocalName(c); + if (name === 'tc') cells.push({ node: c, paras: cellParas(c, [], state) }); + else if (name === 'sdt' || name === 'sdtContent' || name === 'customXml') collectCells(c); + } + }; + collectCells(tr); + for (const cell of cells) { + cell.texts = cell.paras.map(paraText); + // As read in: the paragraphs of a cell run together. + cell.text = cell.texts.join(''); + } + units.push({ + kind: 'row', + node: tr, + table: tableInfo, + cells, + locked: locked || state.nested, + text: cells.map(c => c.text).filter(Boolean).join(' · '), + }); + // Nested tables and text boxes inside the cells (read in after their row). + for (const cell of cells) { + for (const c of cell.node.children) { + if (xmlLocalName(c) === 'tbl') walkTable(c, true); + } + for (const p of cell.paras) walk(p, true); + } + } + }; + + const body = (function find(node) { + for (const c of node.children) { + if (xmlLocalName(c) === 'body') return c; + const r = find(c); + if (r) return r; + } + return null; + })(tree); + if (!body) throw new Error('docx: no body'); + walk(body, false); + return { units, ctx }; +} + +/* ── Matching blocks to units ───────────────────────────────────────────── */ + +function docxKey(text) { + return normalizeComparableText(sanitizeExternalText(String(text || ''))) + .replace(/\s+/g, ' ') + .trim(); +} + +/** + * How a block's text relates to a unit's text: { prefix } when it is the same text, possibly + * after a generated list number or heading number ("(1) ", "§ 1 ") that the file does not + * contain as text; null otherwise. + */ +function docxMatchBlock(blockKey, unitText) { + if (!unitText) return null; + if (blockKey === unitText) return { prefix: 0 }; + if (blockKey.length > unitText.length && blockKey.endsWith(unitText)) { + const prefix = blockKey.slice(0, blockKey.length - unitText.length); + if (prefix.length <= 24 && / $/.test(prefix)) return { prefix: prefix.length }; + } + return null; +} + +/** Pairs blocks (in order) with non-empty units (in order). Returns Map(blockIndex -> { unit, prefix }). */ +function mapBlocksToUnits(blocks, units) { + const LOOK = 40; + const keys = blocks.map(b => docxKey(b.text)); + const list = units.filter(u => u.text); + const out = new Map(); + let i = 0; + let j = 0; + while (i < keys.length && j < list.length) { + const hit = docxMatchBlock(keys[i], list[j].text); + if (hit) { + out.set(i, { unit: list[j], prefix: hit.prefix }); + i++; + j++; + continue; + } + let step = null; + for (let d = 1; d <= LOOK && !step; d++) { + if (j + d < list.length && docxMatchBlock(keys[i], list[j + d].text)) step = { di: 0, dj: d }; + else if (i + d < keys.length && docxMatchBlock(keys[i + d], list[j].text)) step = { di: d, dj: 0 }; + } + if (step) { + i += step.di; + j += step.dj; + } else { + i++; + j++; + } + } + return out; +} + +/* ── Rewriting one paragraph ────────────────────────────────────────────── */ + +/** + * The target text of a paragraph as characters with revision flags: + * { chars: [{ ch, added, dels: [deleted text before this char] }], tail: [deleted text at the end] }. + * `prefix` characters of the new wording (a generated list number) are dropped. + */ +function docxTargetFromTokens(tokens, prefix) { + let chars = []; + let pending = []; + for (const tok of tokens) { + if (tok.removed) { + if (tok.value) pending.push(tok.value); + continue; + } + for (const ch of tok.value) { + chars.push({ ch, added: Boolean(tok.added), dels: pending }); + pending = []; + } + } + let tail = pending; + if (prefix) { + // The generated number is not text in the file: drop it with whatever was deleted before it. + const rest = chars.slice(prefix); + chars = rest; + } + // Whitespace as in the file's reading: one space between words, none at the edges. + const out = []; + let carry = []; + for (const c of chars) { + const ws = /\s/.test(c.ch); + const dels = carry.concat(c.dels); + carry = []; + if (ws && (!out.length || /\s/.test(out[out.length - 1].ch))) { + carry = dels; + continue; + } + out.push({ ch: ws ? ' ' : c.ch, added: c.added, dels }); + } + while (out.length && out[out.length - 1].ch === ' ') { + const last = out.pop(); + carry = last.dels.concat(carry); + } + tail = carry.concat(tail); + return { chars: out, tail }; +} + +function docxStripHyperlinkStyle(rPr) { + return rPr.replace(/<w:rStyle\b[^>]*\/>/g, '').replace(/<w:rPr>\s*<\/w:rPr>/, ''); +} + +/** + * Returns the new XML of paragraph `p` whose text becomes the target described by `tokens` + * (diff tokens of the new wording, see getExportDiffTokens). `rev(kind)` returns the attributes + * of a new revision. `markPara` ('ins' | 'del' | '') marks the paragraph mark as inserted/deleted. + */ +function rewriteDocxParagraph(p, xml, ctx, tokens, prefix, rev, markPara = '', defaultRPr = '') { + const { pPr, pieces } = flattenParagraph(p, xml, ctx); + const target = docxTargetFromTokens(tokens, prefix); + const tText = target.chars.map(c => c.ch).join(''); + + // Comparable text of the file with a map back to the pieces. + let xText = ''; + const xPiece = []; + pieces.forEach((piece, idx) => { + for (const ch of piece.cmp) { + xText += ch; + xPiece.push(idx); + } + }); + + const diffLib = getDiffLibrary(); + let parts; + if (xText === tText) parts = [{ value: xText }]; + else if (diffLib && xText.length + tText.length < 400000) parts = diffLib.diffWordsWithSpace(xText, tText); + else parts = [{ value: xText, removed: true }, { value: tText, added: true }].filter(x => x.value); + + const items = []; // { kind: 'text'|'elem'|'raw', text?, xml?, rPr, chain, rev } + const lastAtom = { piece: null }; + let nextPiece = 0; + let keptBefore = true; + + const atomAfter = idx => { + for (let k = idx; k < pieces.length; k++) if (pieces[k].type === 'atom' && pieces[k].cmp) return pieces[k]; + return null; + }; + const contextFor = () => { + const prev = lastAtom.piece; + const next = atomAfter(nextPiece); + const base = prev || next; + if (!base) return { rPr: defaultRPr, chain: [] }; + const shared = prev && next && prev.chain === next.chain; + if (shared) return { rPr: base.rPr, chain: base.chain }; + return { rPr: base.chain.length ? docxStripHyperlinkStyle(base.rPr) : base.rPr, chain: [] }; + }; + const emitPiece = (piece, revKind) => { + if (piece.type === 'opaque') { + if (piece.raw) items.push({ kind: 'raw', xml: piece.raw, chain: piece.chain }); + else items.push({ kind: 'elem', xml: piece.runChild, rPr: piece.rPr, chain: piece.chain, rev: '' }); + return; + } + if (piece.elem) items.push({ kind: 'elem', xml: piece.elem, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + else items.push({ kind: 'text', text: piece.ch, rPr: piece.rPr, chain: piece.chain, rev: revKind }); + lastAtom.piece = piece; + }; + // Pieces without comparable text up to `limit`: opaque ones always stay; empty atoms (extra + // spaces, soft hyphens) stay where the text around them stays. + const passThrough = limit => { + while (nextPiece < limit) { + const piece = pieces[nextPiece++]; + if (piece.type === 'opaque' || keptBefore) emitPiece(piece, ''); + } + }; + const emitDeleted = texts => { + if (!texts.length) return; + const c = contextFor(); + for (const text of texts) items.push({ kind: 'text', text, rPr: c.rPr, chain: c.chain, rev: 'del' }); + }; + + let xi = 0; + let ti = 0; + for (const part of parts) { + const len = part.value.length; + if (part.added) { + for (let k = 0; k < len; k++, ti++) { + const tc = target.chars[ti]; + emitDeleted(tc.dels); + const c = contextFor(); + items.push({ kind: 'text', text: tc.ch, rPr: c.rPr, chain: c.chain, rev: tc.added ? 'ins' : '' }); + } + } else if (part.removed) { + for (let k = 0; k < len; k++, xi++) { + const idx = xPiece[xi]; + if (idx >= nextPiece) { + passThrough(idx); + nextPiece = idx + 1; + keptBefore = false; + } + } + } else { + for (let k = 0; k < len; k++, xi++, ti++) { + const idx = xPiece[xi]; + const tc = target.chars[ti]; + if (idx >= nextPiece) { + passThrough(idx); + keptBefore = true; + emitDeleted(tc.dels); + emitPiece(pieces[idx], tc.added ? 'ins' : ''); + nextPiece = idx + 1; + } else { + emitDeleted(tc.dels); + } + } + } + } + // Deleted text at the very end goes before trailing spaces / bookmarks. + emitDeleted(target.tail); + keptBefore = true; + passThrough(pieces.length); + + return assembleDocxParagraph(p, xml, pPr, items, rev, markPara); +} + +/** Serialises pieces into runs, grouped by wrapper chain and revision. */ +function assembleDocxParagraph(p, xml, pPr, items, rev, markPara) { + let body = ''; + let chain = []; + let revOpen = ''; + let run = null; // { rPr, rev, content } + + const flushRun = () => { + if (!run) return; + body += `<w:r>${run.rPr}${run.content}</w:r>`; + run = null; + }; + const setRev = kind => { + if (revOpen === kind) return; + flushRun(); + if (revOpen) body += revOpen === 'ins' ? '</w:ins>' : '</w:del>'; + revOpen = kind; + if (kind) body += kind === 'ins' ? `<w:ins ${rev()}>` : `<w:del ${rev()}>`; + }; + const setChain = next => { + if (next === chain) return; + let common = 0; + while (common < chain.length && common < next.length && chain[common] === next[common]) common++; + if (common === chain.length && common === next.length) return; + flushRun(); + setRev(''); + for (let k = chain.length - 1; k >= common; k--) body += chain[k].close; + for (let k = common; k < next.length; k++) body += next[k].open; + chain = next; + }; + + for (const item of items) { + setChain(item.chain); + if (item.kind === 'raw') { + setRev(''); + body += item.xml; + continue; + } + setRev(item.rev); + const content = + item.kind === 'text' + ? item.rev === 'del' + ? `<w:delText xml:space="preserve">${escapeXml(item.text)}</w:delText>` + : `<w:t xml:space="preserve">${escapeXml(item.text)}</w:t>` + : item.xml; + if (run && run.rPr === item.rPr && run.rev === item.rev) { + // Adjacent text joins one w:t. + if (item.kind === 'text' && /<\/w:(t|delText)>$/.test(run.content) && run.lastText) { + const tag = item.rev === 'del' ? 'w:delText' : 'w:t'; + run.content = run.content.slice(0, run.content.length - `</${tag}>`.length) + escapeXml(item.text) + `</${tag}>`; + } else { + run.content += content; + } + } else { + flushRun(); + run = { rPr: item.rPr, rev: item.rev, content }; + } + run.lastText = item.kind === 'text'; + } + setChain([]); + setRev(''); + flushRun(); + + const openTag = xml.slice(p.start, p.openEnd).replace(/\/>$/, '>'); + return `${openTag}${docxMarkParagraph(pPr, markPara, rev)}${body}</w:p>`; +} + +/** Adds an inserted/deleted mark to the paragraph mark (the pilcrow) in w:pPr. */ +function docxMarkParagraph(pPr, markPara, rev) { + if (!markPara) return pPr; + const mark = markPara === 'ins' ? `<w:ins ${rev()}/>` : `<w:del ${rev()}/>`; + if (!pPr) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/^<w:pPr\s*\/>$/.test(pPr)) return `<w:pPr><w:rPr>${mark}</w:rPr></w:pPr>`; + if (/<w:rPr\s*\/>/.test(pPr)) return pPr.replace(/<w:rPr\s*\/>/, `<w:rPr>${mark}</w:rPr>`); + if (/<w:rPr>/.test(pPr)) return pPr.replace(/<w:rPr>/, `<w:rPr>${mark}`); + const before = pPr.search(/<w:sectPr\b|<w:pPrChange\b|<\/w:pPr>/); + return `${pPr.slice(0, before)}<w:rPr>${mark}</w:rPr>${pPr.slice(before)}`; +} + +/** A new paragraph modelled on `template` (a unit paragraph) or a plain one. */ +function buildNewDocxParagraph(xml, ctx, template, tokens, prefix, rev, markPara) { + let pPr = ''; + let rPr = ''; + if (template) { + const tpl = flattenParagraph(template, xml, ctx); + pPr = tpl.pPr + .replace(/<w:sectPr\b[\s\S]*?<\/w:sectPr>/, '') + .replace(/<w:pPrChange\b[\s\S]*?<\/w:pPrChange>/, '') + .replace(/<w:rPr>[\s\S]*?<\/w:rPr>|<w:rPr\s*\/>/, ''); + const firstAtom = tpl.pieces.find(x => x.type === 'atom' && x.cmp && !x.chain.length); + rPr = firstAtom ? firstAtom.rPr : ''; + } + // Rewriting an empty paragraph with the model's properties emits all text in its run format. + const fakeXml = `<w:p>${pPr}</w:p>`; + const fake = parseXmlTree(fakeXml).children[0]; + return rewriteDocxParagraph(fake, fakeXml, ctx, tokens, prefix, rev, markPara, rPr); +} + +/* ── The whole document ─────────────────────────────────────────────────── */ + +/** + * plan: [{ block (final block; null for an open deletion), oldBlock, r0 (the block as read in from + * the file, or null), tokens, open, markPara }] in document order. Returns the new document.xml. + */ +function patchDocxDocumentXml(xml, r0Blocks, plan, opts) { + const tree = parseXmlTree(xml); + const { units, ctx } = collectDocxUnits(xml, tree); + const r0Map = mapBlocksToUnits(r0Blocks, units); + const unitOfR0 = new Map(); + r0Blocks.forEach((b, i) => { + if (r0Map.has(i)) unitOfR0.set(b, r0Map.get(i)); + }); + + let maxId = 0; + for (const mm of xml.matchAll(/\bw:id="(\d+)"/g)) maxId = Math.max(maxId, parseInt(mm[1], 10)); + let revId = maxId + 1000; + const date = toWordDate(opts.date || new Date()); + const rev = () => `w:id="${revId++}" w:author="${escapeXml(DOCX_AUTHOR)}" w:date="${date}"`; + + const edits = []; // { start, end, text, seq } + let seq = 0; + const edit = (start, end, text) => edits.push({ start, end, text, seq: seq++ }); + + // What the result must read like: every unit of the file with its new text (null = removed), + // plus the new paragraphs at their insertion points. + const unitText = new Map(units.map(u => [u, u.text])); + const inserted = []; // { pos, seq, text } + + const firstUnit = units[0]; + if (!firstUnit) throw new Error('docx: empty body'); + const unitStart = u => (u.kind === 'row' ? u.table.node.start : u.node.start); + const unitEnd = u => (u.kind === 'row' ? u.table.node.end : u.node.end); + let anchor = unitStart(firstUnit); + + const planUnits = plan.map(step => { + const hit = step.r0 ? unitOfR0.get(step.r0) : null; + return { unit: hit ? hit.unit : null, prefix: hit ? hit.prefix : 0, kind: (step.block || step.oldBlock || {}).kind }; + }); + const usedUnits = new Set(planUnits.filter(pu => pu.unit).map(pu => pu.unit)); + const templateFor = (kind, from) => { + const usable = entry => entry && entry.unit && entry.unit.kind === 'p' && !entry.unit.locked; + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k]) && planUnits[k].kind === kind) return planUnits[k].unit.node; + } + for (let d = 0; d < 60; d++) { + for (const k of [from - d, from + d]) if (usable(planUnits[k])) return planUnits[k].unit.node; + } + return null; + }; + const targetText = (tokens, prefix) => + docxTargetFromTokens(tokens.filter(x => !x.removed), prefix).chars.map(c => c.ch).join(''); + const insertAt = (text, expectedText) => { + edit(anchor, anchor, text); + inserted.push({ pos: anchor - 0.5, seq: seq, text: expectedText }); + }; + + plan.forEach((step, k) => { + const pu = planUnits[k]; + const unit = pu.unit; + if (!step.block) { + // An open deletion: the old paragraph, struck through, paragraph mark included. + const tpl = templateFor(step.oldBlock.kind, k); + insertAt(buildNewDocxParagraph(xml, ctx, tpl, [{ value: step.oldBlock.text, removed: true }], 0, rev, 'del'), ''); + return; + } + const finalKey = docxKey(step.block.text); + const changed = step.open || !step.r0 || docxKey(step.r0.text) !== finalKey; + if (!unit) { + if (step.r0 && changed) { + // A change in something that is not body text of the file (e.g. a footnote). + throw new Error('docx: change outside the body'); + } + if (step.r0) return; // unchanged and not in the body: nothing to do + // A paragraph that the file does not have (a restored deletion): a new paragraph. + const tpl = templateFor(step.block.kind, k); + const marker = step.block.numberingMarker; + const tplNumbered = tpl && /<w:numPr\b/.test(xml.slice(tpl.start, tpl.end)); + const prefix = tplNumbered && marker && finalKey.startsWith(`${marker} `) ? marker.length + 1 : 0; + insertAt(buildNewDocxParagraph(xml, ctx, tpl, step.tokens, prefix, rev, step.markPara || ''), targetText(step.tokens, prefix)); + return; + } + if (changed) { + if (unit.locked) throw new Error('docx: change in a locked unit'); + if (unit.kind === 'p') { + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, step.tokens, pu.prefix, rev, step.markPara || '')); + unitText.set(unit, targetText(step.tokens, pu.prefix)); + } else { + unitText.set(unit, rewriteDocxRow(unit, xml, ctx, step, rev, edit)); + } + } + anchor = unitEnd(unit); + }); + + // Units read in that are not part of the result anymore (a rejected insertion, a paragraph + // emptied by an edit) are removed, with anything nested in them. + const removed = []; + const removedRows = new Map(); + for (const hit of r0Map.values()) { + const unit = hit.unit; + if (usedUnits.has(unit)) continue; + if (unit.locked) throw new Error('docx: removal in a locked unit'); + if (unit.kind === 'row') { + removedRows.set(unit.table, (removedRows.get(unit.table) || 0) + 1); + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } else if (/<w:sectPr\b/.test(xml.slice(unit.node.start, unit.node.end))) { + // It carries the section layout: keep the paragraph, drop its text. + edit(unit.node.start, unit.node.end, rewriteDocxParagraph(unit.node, xml, ctx, [], 0, rev, '')); + unitText.set(unit, ''); + } else { + edit(unit.node.start, unit.node.end, ''); + removed.push([unit.node.start, unit.node.end]); + } + } + for (const [table, n] of removedRows) { + if (n < table.rows) continue; + // Every row is gone: remove the table (a table needs at least one row). + for (let k = edits.length - 1; k >= 0; k--) { + if (edits[k].start >= table.node.start && edits[k].end <= table.node.end) edits.splice(k, 1); + } + edit(table.node.start, table.node.end, ''); + removed.push([table.node.start, table.node.end]); + } + for (const u of units) { + if (removed.some(([s, e]) => u.node.start >= s && u.node.end <= e)) unitText.set(u, null); + } + + // Apply from the end; edits never overlap (each unit is touched once). + edits.sort((a, b) => b.start - a.start || b.seq - a.seq); + let out = xml; + let limit = Infinity; + for (const e of edits) { + if (e.end > limit) throw new Error('docx: overlapping edits'); + out = out.slice(0, e.start) + e.text + out.slice(e.end); + limit = e.start; + } + + // Read the result back: the accepted text of every unit must be exactly what we expect. + const norm = s => String(s || '').replace(/\s+/g, ' ').trim(); + const want = units + .map(u => ({ pos: u.node.start, seq: -1, text: unitText.get(u) })) + .concat(inserted) + .sort((a, b) => a.pos - b.pos || a.seq - b.seq) + .map(x => norm(x.text)) + .filter(Boolean); + const got = collectDocxUnits(out, parseXmlTree(out)) + .units.map(u => norm(u.text)) + .filter(Boolean); + const at = Math.max(got.length, want.length) === 0 ? -1 : got.findIndex((text, i) => text !== want[i]); + if (got.length !== want.length || at >= 0) { + const i = at >= 0 ? at : Math.min(got.length, want.length); + throw new Error(`docx: verification failed at unit ${i}: ${JSON.stringify(got[i])} vs ${JSON.stringify(want[i])}`); + } + return out; +} + +/** Rewrites the changed cells of a table row; returns the expected row text. */ +function rewriteDocxRow(unit, xml, ctx, step, rev, edit) { + const newCells = docxKey(step.block.text).split(' · '); + const oldCells = step.oldBlock ? docxKey(step.oldBlock.text).split(' · ') : null; + const filled = unit.cells.filter(c => c.text); + const cellTokens = (oldText, newText) => + step.open ? (oldText === null ? [{ value: newText, added: true }] : computeCleanWordDiff(oldText, newText)) : [{ value: newText }]; + const writeCell = (cell, tokens) => { + const paras = cell.paras.filter((p, i) => cell.texts[i]); + const first = paras[0] || cell.paras[0]; + if (!first) throw new Error('docx: cell without paragraph'); + edit(first.start, first.end, rewriteDocxParagraph(first, xml, ctx, tokens, 0, rev, '')); + for (const other of paras.slice(1)) edit(other.start, other.end, rewriteDocxParagraph(other, xml, ctx, [], 0, rev, '')); + }; + if (newCells.length === filled.length) { + newCells.forEach((text, i) => { + const cell = filled[i]; + const oldText = oldCells && oldCells.length === newCells.length ? oldCells[i] : null; + if (cell.text === text && (!step.open || oldText === text)) return; + writeCell(cell, cellTokens(oldText, text)); + }); + return newCells.join(' · '); + } + // The number of filled cells changed: the whole row text goes into the first cell. + const target = filled[0] || unit.cells[0]; + if (!target) throw new Error('docx: row without cells'); + writeCell(target, step.open && step.oldBlock ? computeCleanWordDiff(docxKey(step.oldBlock.text), docxKey(step.block.text)) : [{ value: docxKey(step.block.text) }]); + for (const cell of filled) if (cell !== target) writeCell(cell, []); + return docxKey(step.block.text); +} + +/* ── Entry point ────────────────────────────────────────────────────────── */ + +/** + * Builds the export from the original .docx of the new version. + * source: { bytes, importedText }; finalBlocks: blocks of the current new version (all of them); + * rows: state.alignedRows (old ↔ new); kind: 'final' | 'tracked'. + * Returns a Uint8Array (.docx) or throws when the result cannot be verified. + */ +async function buildDocxFromSource(source, finalBlocks, rows, kind, date = new Date()) { + const entries = await readZipEntries(source.bytes); + const docEntry = entries.find(e => e.name === 'word/document.xml'); + if (!docEntry) throw new Error('docx: no word/document.xml'); + const xml = new TextDecoder('utf-8').decode(docEntry.data); + const r0Blocks = parseIntoBlocks(source.importedText); + + // Old ↔ new rows by the position of the new block; final blocks ↔ blocks as read in. + const rowOfFinal = new Map(); + for (const row of rows) { + if (!row.rightBlock) continue; + const block = finalBlocks[row.rightBlock.index - 1]; + if (!block || block.text !== row.rightBlock.text) throw new Error('docx: comparison is not current'); + rowOfFinal.set(row.rightBlock.index, row); + } + const r0Rows = alignDocumentBlocks(r0Blocks, finalBlocks); + const r0OfFinal = new Map(); + for (const r of r0Rows) if (r.leftBlock && r.rightBlock) r0OfFinal.set(r.rightBlock, r.leftBlock); + + const plan = []; + const pushDeleted = row => { + if (kind !== 'tracked' || !row || row.type !== 'deleted' || row.reviewStatus === 'accepted' || !row.leftBlock) return; + if (row.leftBlock.isHeaderFooter) return; + plan.push({ block: null, oldBlock: row.leftBlock, r0: null, open: true }); + }; + let rowCursor = 0; + for (const block of finalBlocks) { + const row = rowOfFinal.get(block.index); + if (row) { + // Open deletions that sit before this row in the comparison. + const at = rows.indexOf(row); + for (; rowCursor < at; rowCursor++) pushDeleted(rows[rowCursor]); + rowCursor = at + 1; + } + const open = kind === 'tracked' && row && row.type !== 'equal' && row.reviewStatus !== 'accepted'; + const tokens = open ? getExportDiffTokens(row) : [{ value: cleanExportText(block.text) }]; + plan.push({ + block, + oldBlock: row ? row.leftBlock : null, + r0: r0OfFinal.get(block) || null, + tokens, + open, + markPara: open && row.type === 'inserted' ? 'ins' : '', + }); + } + for (; rowCursor < rows.length; rowCursor++) pushDeleted(rows[rowCursor]); + + const outXml = patchDocxDocumentXml(xml, r0Blocks, plan, { date }); + const enc = new TextEncoder(); + const files = entries.map(e => (e.name === 'word/document.xml' ? { name: e.name, data: enc.encode(outXml) } : e)); + return buildZipArchive(files, date); +} diff --git a/src/js/09-import.js b/src/js/09-import.js index 7c93152..1e1da8d 100644 --- a/src/js/09-import.js +++ b/src/js/09-import.js @@ -680,6 +680,7 @@ async function readDocumentFile(file) { } else if (kind === 'docx') { result = await extractDocxText(buffer); result.format = 'DOCX'; + result.sourceBytes = bytes; } else { const { text, warnings } = decodeTextFile(bytes, ext); const looksLikeHtml = /^\s*(?:<!doctype html|<html[\s>])/i.test(text.slice(0, 2048)); @@ -719,7 +720,7 @@ async function handleFileUpload(file, side, opts = {}) { fnLabel.textContent = `${t('readingFile')} ${file.name}…`; try { - const { text, format, warnings } = await readDocumentFile(file); + const { text, format, warnings, sourceBytes } = await readDocumentFile(file); if (isStale()) { if (seq === uploadSeq[side]) restoreLabel(); return false; @@ -734,6 +735,7 @@ async function handleFileUpload(file, side, opts = {}) { state.rightFormat = format; state.rightText = text; } + state.docSources[side] = sourceBytes ? { name: file.name, bytes: sourceBytes, importedText: text } : null; resetEditHistory(); if (warnings && warnings.length) { showImportNotice(`${file.name}: ${warnings.join(' ')}`, 'warning'); diff --git a/src/js/10-controls.js b/src/js/10-controls.js index 53e98fb..a98f135 100644 --- a/src/js/10-controls.js +++ b/src/js/10-controls.js @@ -85,6 +85,7 @@ function openMenu(id, trigger, focus = 'first') { trigger = trigger || document.getElementById(MENU_TRIGGERS[id]); trigger.setAttribute('aria-expanded', 'true'); openMenuState = { id, trigger }; + if (id === 'export-menu') updateExportMenuTexts(); document.body.classList.toggle('menu-sheet-open', isPhoneWidth()); menuItems(menu).forEach(item => (item.tabIndex = -1)); if (focus) { @@ -530,6 +531,7 @@ function clearComparison() { state.rightName = ''; state.leftFormat = ''; state.rightFormat = ''; + state.docSources = { left: null, right: null }; state.activeRowId = null; state.hoveredRowId = null; state.sidebarFilter = 'all'; @@ -603,6 +605,7 @@ document.getElementById('btn-swap-docs').addEventListener('click', () => { [state.leftText, state.rightText] = [state.rightText, state.leftText]; [state.leftName, state.rightName] = [state.rightName, state.leftName]; [state.leftFormat, state.rightFormat] = [state.rightFormat, state.leftFormat]; + state.docSources = { left: state.docSources.right, right: state.docSources.left }; resetEditHistory(); runComparison(); btnFiles.focus(); @@ -637,11 +640,13 @@ document.getElementById('btn-apply-modal').addEventListener('click', () => { state.leftText = sanitizeExternalText(textareaLeft.value); state.leftName = ''; state.leftFormat = ''; + state.docSources.left = null; } if (rightChanged) { state.rightText = sanitizeExternalText(textareaRight.value); state.rightName = ''; state.rightFormat = ''; + state.docSources.right = null; } if (leftChanged || rightChanged) resetEditHistory(); if (state.leftText.trim() && !state.leftName) { diff --git a/src/js/11-session.js b/src/js/11-session.js index be942bd..3e66488 100644 --- a/src/js/11-session.js +++ b/src/js/11-session.js @@ -362,6 +362,20 @@ function takeRecentHistory(stack, budget) { return { kept, used }; } +// The original .docx of a side (for the Word export in the original format), as base64. +function bytesToBase64(bytes) { + let bin = ''; + for (let i = 0; i < bytes.length; i += 0x8000) bin += String.fromCharCode.apply(null, bytes.subarray(i, i + 0x8000)); + return btoa(bin); +} +function sessionSourceOf(side) { + const src = state.docSources && state.docSources[side]; + const name = side === 'left' ? state.leftName : state.rightName; + const format = side === 'left' ? state.leftFormat : state.rightFormat; + if (!src || format !== 'DOCX' || src.name !== name) return undefined; + return { kind: 'docx', data: bytesToBase64(src.bytes), importedText: src.importedText }; +} + function buildSessionPayload() { const redo = takeRecentHistory(state.redoStack, SESSION_HISTORY_CHAR_BUDGET); const undo = takeRecentHistory(state.undoStack, SESSION_HISTORY_CHAR_BUDGET - redo.used); @@ -376,12 +390,14 @@ function buildSessionPayload() { name: state.leftName, format: state.leftFormat, text: state.leftText, + source: sessionSourceOf('left'), }, right: { name: state.rightName, format: state.rightFormat, originalText: sessionTracker.originalRightText, text: state.rightText, + source: sessionSourceOf('right'), }, }, view: { @@ -502,6 +518,22 @@ function expectHistoryV2(value) { }); } +function base64ToBytes(b64) { + const bin = atob(b64); + const out = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i); + return out; +} + +// Optional original .docx of a side: { kind: 'docx', data (base64), importedText }. +function expectSource(value, name) { + if (value === undefined) return null; + if (!isPlainObject(value) || value.kind !== 'docx') throw new SessionFileError('sessionErrorInvalid'); + const data = expectString(value.data, SESSION_MAX_FILE_BYTES); + if (!/^[A-Za-z0-9+/]*={0,2}$/.test(data) || data.length % 4 !== 0) throw new SessionFileError('sessionErrorInvalid'); + return { name, bytes: base64ToBytes(data), importedText: expectString(value.importedText, SESSION_MAX_FILE_BYTES) }; +} + // Returns a fresh, fully validated object; throws SessionFileError otherwise. function validateSessionData(raw) { if (!isPlainObject(raw) || raw.format !== SESSION_FORMAT_ID) { @@ -546,12 +578,14 @@ function validateSessionData(raw) { name: expectString(docs.left.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.left.format), text: expectString(docs.left.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.left.source, docs.left.name), }, right: { name: expectString(docs.right.name, SESSION_MAX_NAME_CHARS), format: expectFormatTag(docs.right.format), originalText: expectString(docs.right.originalText, SESSION_MAX_FILE_BYTES), text: expectString(docs.right.text, SESSION_MAX_FILE_BYTES), + source: expectSource(docs.right.source, docs.right.name), }, view: { mode: view.mode === 'pages' ? 'split' : view.mode, @@ -599,6 +633,7 @@ async function applySessionData(session) { state.rightName = session.right.name; state.rightFormat = session.right.format; state.rightText = session.right.text; + state.docSources = { left: session.left.source || null, right: session.right.source || null }; state.reviews = cloneReviews(session.reviews); state.undoStack = session.history.undo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); state.redoStack = session.history.redo.map(e => ({ text: e.text, reviews: cloneReviews(e.reviews) })); diff --git a/src/styles.css b/src/styles.css index 00a7c06..e7b6c2b 100644 --- a/src/styles.css +++ b/src/styles.css @@ -683,6 +683,45 @@ body:not(.is-comparing) .topbar { .menu-label + .menu-seg { margin-top: 2px; } +/* Export menu: section titles and items with a one-line explanation */ +.menu-export { + width: 340px; + max-width: calc(100vw - 16px); +} +.menu-label-2line { + display: flex; + flex-direction: column; + gap: 1px; + padding: 8px 10px 4px; + color: hsl(var(--foreground)); +} +.menu-label-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); +} +.menu-item.mi-2line { + align-items: flex-start; + white-space: normal; +} +.menu-item.mi-2line > svg { + margin-top: 2px; + flex-shrink: 0; +} +.mi-text { + display: flex; + flex-direction: column; + gap: 1px; + min-width: 0; +} +.mi-desc { + font-size: var(--text-ui-sm); + font-weight: 400; + line-height: 1.35; + color: hsl(var(--muted-foreground)); + overflow-wrap: anywhere; +} .menu-sep { height: 1px; margin: 5px 4px; @@ -3162,6 +3201,44 @@ body.list-open .toast-region { font-style: italic; color: #444; } + /* Final version: a clean document, no marks */ + #print-view .pv-final { + font-size: 10.5pt; + line-height: 1.5; + hyphens: auto; + } + #print-view .pv-final h1 { + font-size: 16pt; + line-height: 1.25; + margin: 0 0 12pt; + break-after: avoid; + } + #print-view .pv-final h2 { + font-size: 12pt; + margin: 16pt 0 6pt; + break-after: avoid; + } + #print-view .pv-final h3 { + font-size: 10.5pt; + margin: 12pt 0 4pt; + break-after: avoid; + } + #print-view .pv-final p { + margin: 0 0 6pt; + orphans: 3; + widows: 3; + } + #print-view .pv-final .pvf-item { + display: flex; + gap: 0; + } + #print-view .pv-final .pvf-marker { + flex: 0 0 2.4em; + } + #print-view .pv-final .pvf-body { + flex: 1 1 auto; + min-width: 0; + } } /* Landing page on phones: one column, nothing wider than the screen */ diff --git a/src/template.html b/src/template.html index 55cd328..9b21084 100644 --- a/src/template.html +++ b/src/template.html @@ -243,16 +243,26 @@ <h2 class="sr-only" id="files-pop-title" data-i18n="filesTitle">Dokumente</h2> <span id="i18n-btn-export" data-i18n="exportBtn">Exportieren</span> <svg class="icon tb-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg> </button> - <div class="menu menu-right" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> - <button type="button" class="menu-item" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span data-i18n="expWord">Word mit Änderungsverfolgung (.docx)</span></button> - <button type="button" class="menu-item" data-export="print" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><polyline points="6 9 6 2 18 2 18 9"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect width="12" height="8" x="6" y="14"/></svg><span data-i18n="expPdf">Drucken oder als PDF sichern</span></button> - <button type="button" class="menu-item" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span data-i18n="expCopy">Text der neuen Fassung kopieren</span></button> + <div class="menu menu-right menu-export" id="export-menu" role="menu" aria-labelledby="btn-export-menu" hidden> + <div class="menu-group" role="group" aria-labelledby="exp-sec-final"> + <div class="menu-label menu-label-2line" id="exp-sec-final"><span data-i18n="expSecFinal">Endfassung</span><span class="menu-label-desc" id="exp-sec-final-desc" data-i18n="expSecFinalDesc"></span></div> + <button type="button" class="menu-item mi-2line" data-export="word-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWordFinal"></span><span class="mi-desc" id="exp-desc-word-final"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-final" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="M9 15h6"/><path d="M9 18h4"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfFinal"></span><span class="mi-desc" id="exp-desc-print-final" data-i18n="expPdfFinalDesc"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="copy" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expCopy"></span><span class="mi-desc" id="exp-desc-copy" data-i18n="expCopyDesc"></span></span></button> + </div> + <div class="menu-sep" role="separator"></div> + <div class="menu-group" role="group" aria-labelledby="exp-sec-compare"> + <div class="menu-label menu-label-2line" id="exp-sec-compare"><span data-i18n="expSecCompare">Vergleich</span><span class="menu-label-desc" data-i18n="expSecCompareDesc"></span></div> + <button type="button" class="menu-item mi-2line" data-export="word" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><path d="m8 13 1.5 5 2.5-4 2.5 4 1.5-5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expWord"></span><span class="mi-desc" id="exp-desc-word"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-split" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="18" height="16" x="3" y="4" rx="2"/><path d="M12 4v16"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfSplit"></span><span class="mi-desc" id="exp-desc-print-split" data-i18n="expPdfSplitDesc"></span></span></button> + <button type="button" class="menu-item mi-2line" data-export="print-inline" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="16" height="18" x="4" y="3" rx="2"/><path d="M8 8h8"/><path d="M8 12h8"/><path d="M8 16h5"/></svg><span class="mi-text"><span class="mi-title" data-i18n="expPdfInline"></span><span class="mi-desc" id="exp-desc-print-inline" data-i18n="expPdfInlineDesc"></span></span></button> + </div> <div class="menu-sep" role="separator"></div> <button type="button" class="menu-item" role="menuitem" id="btn-more-formats" aria-expanded="false" aria-controls="more-formats"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect width="7" height="7" x="3" y="3" rx="1"/><rect width="7" height="7" x="14" y="3" rx="1"/><rect width="7" height="7" x="14" y="14" rx="1"/><rect width="7" height="7" x="3" y="14" rx="1"/></svg><span data-i18n="moreFormats">Weitere Formate</span><svg class="icon mi-chev" viewBox="0 0 24 24" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg></button> <div class="menu-sub" id="more-formats" role="group" aria-labelledby="btn-more-formats" hidden> <button type="button" class="menu-item" data-export="html" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M2 12h20"/><path d="M12 2a15 15 0 0 1 0 20a15 15 0 0 1 0-20"/></svg><span data-i18n="expHtml">Bericht als Webseite (.html)</span></button> <button type="button" class="menu-item" data-export="md" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg><span data-i18n="expMd">Bericht als Markdown (.md)</span></button> - <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">… als Textdatei (.txt)</span></button> + <button type="button" class="menu-item" data-export="txt" role="menuitem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg><span data-i18n="expTxt">Endfassung als Textdatei (.txt)</span></button> </div> </div> </div> From f85f2c3b53fd190323d95df37428452f42d6ea02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Hermes?= <remi@MinivonRemi220.fritz.box> Date: Fri, 23 Oct 2026 07:31:52 +0200 Subject: [PATCH 3/4] Add product launch gallery images Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --- docs/launch/1-review.html | 92 ++++++++++++++++++++++++++++++++++++ docs/launch/1-review.png | Bin 0 -> 369708 bytes docs/launch/2-export.html | 93 +++++++++++++++++++++++++++++++++++++ docs/launch/2-export.png | Bin 0 -> 384219 bytes docs/launch/3-private.html | 65 ++++++++++++++++++++++++++ docs/launch/3-private.png | Bin 0 -> 262926 bytes docs/launch/README.md | 17 +++++++ docs/launch/launch.css | 37 +++++++++++++++ 8 files changed, 304 insertions(+) create mode 100644 docs/launch/1-review.html create mode 100644 docs/launch/1-review.png create mode 100644 docs/launch/2-export.html create mode 100644 docs/launch/2-export.png create mode 100644 docs/launch/3-private.html create mode 100644 docs/launch/3-private.png create mode 100644 docs/launch/README.md create mode 100644 docs/launch/launch.css diff --git a/docs/launch/1-review.html b/docs/launch/1-review.html new file mode 100644 index 0000000..9372f7d --- /dev/null +++ b/docs/launch/1-review.html @@ -0,0 +1,92 @@ +<!DOCTYPE html> +<!-- Launch gallery image 1: reviewing changes. Render: see README.md. --> +<html lang="en"> +<head> +<meta charset="UTF-8"> +<link rel="stylesheet" href="launch.css"> +<style> + body { display: grid; grid-template-columns: 430px 1fr; gap: 48px; } + .left { display: flex; flex-direction: column; } + .left h1 { margin-top: 56px; } + .left .sub { margin-top: 20px; } + .steps { margin-top: auto; display: flex; flex-direction: column; gap: 12px; font-size: 17px; font-weight: 500; } + .steps div { display: flex; align-items: center; gap: 12px; } + .steps b { width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; font-size: 16px; border: 1px solid var(--border); background: #fff; } + .steps .a b { color: var(--ins-ink); } .steps .r b { color: var(--del-ink); } .steps .e b { color: var(--primary); } + + .win { height: 648px; display: flex; flex-direction: column; } + .progress { margin-left: auto; display: flex; align-items: center; gap: 10px; font-weight: 600; } + .progress .track { width: 120px; height: 6px; border-radius: 3px; background: hsl(0 0% 92%); overflow: hidden; } + .progress .track i { display: block; height: 100%; width: 60%; background: var(--ins-ink); } + .main { flex: 1; display: grid; grid-template-columns: 1fr 260px; min-height: 0; } + .doc { padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; font-size: 14.5px; line-height: 1.55; border-right: 1px solid var(--border); } + .doc h3 { font-size: 15px; font-weight: 650; } + .para { padding: 10px 12px; border-left: 3px solid transparent; border-radius: 4px; position: relative; } + .para.active { border-left-color: var(--primary); background: hsl(212.8 100% 36% / .05); box-shadow: 0 0 0 1px hsl(212.8 100% 36% / .18); } + .para.done { border-left-color: var(--ins-ink); } + .para.rej { border-left-color: var(--faint); color: var(--muted); } + .actions { position: absolute; right: 10px; top: -16px; display: flex; gap: 6px; } + .actions span { font-size: 13px; font-weight: 600; padding: 5px 10px; border-radius: 8px; background: #fff; border: 1px solid var(--border); box-shadow: 0 6px 16px -8px hsl(215 30% 20% / .35); } + .actions .ok { background: var(--ins-ink); border-color: var(--ins-ink); color: #fff; } + .actions .no { color: var(--del-ink); } + .tag { font-size: 12px; font-weight: 600; padding: 2px 7px; border-radius: 5px; margin-left: 8px; vertical-align: 2px; } + .tag.ok { background: var(--ins-bg); color: var(--ins-ink); } + .tag.no { background: hsl(0 0% 93%); color: var(--muted); } + .edit { outline: 2px solid var(--primary); outline-offset: 1px; border-radius: 3px; padding: 0 2px; } + .caret { display: inline-block; width: 2px; height: 1.1em; background: var(--primary); vertical-align: -3px; margin-left: 1px; } + .list { padding: 14px 12px; display: flex; flex-direction: column; gap: 8px; background: hsl(0 0% 98.5%); font-size: 13px; line-height: 1.4; } + .list .hd { display: flex; justify-content: space-between; font-weight: 650; font-size: 13.5px; padding: 0 4px 4px; } + .list .hd span { color: var(--faint); font-weight: 500; } + .card { background: #fff; border: 1px solid var(--border); border-radius: 9px; padding: 8px 10px; display: grid; grid-template-columns: 1fr auto; gap: 2px 8px; } + .card small, .card div { grid-column: 1; } + .card small { color: var(--faint); font-weight: 600; font-size: 11.5px; } + .card .st { grid-row: 1 / span 2; grid-column: 2; align-self: center; font-weight: 700; font-size: 14px; } + .card.on { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); } + .card.ok .st { color: var(--ins-ink); } .card.no .st { color: var(--faint); } + .card.no div { color: var(--faint); } +</style> +</head> +<body> + <div class="left"> + <div class="brand"><img src="../favicon.svg" alt="">Doc Diff<span class="url">docdiff.app</span></div> + <h1>Review every change like in Word.</h1> + <p class="sub">Go through the changes one by one: accept, reject or rewrite. The new version updates as you decide.</p> + <div class="steps"> + <div class="a"><b>✓</b>Accept what is fine</div> + <div class="r"><b>✕</b>Reject and get the old wording back</div> + <div class="e"><b>✎</b>Edit the text right in place</div> + </div> + </div> + <div class="win"> + <div class="bar"> + <div class="dots"><i></i><i></i><i></i></div> + <span style="font-weight:600">Contract_v1.pdf → Contract_v2.docx</span> + <div class="progress"><span>12 of 20 reviewed</span><div class="track"><i></i></div></div> + </div> + <div class="main"> + <div class="doc"> + <h3>1. Scope of Services</h3> + <div class="para done">(1) Delivery<ins>, training</ins> and documentation as per the specification dated <ins>April 18, 2026</ins>.<span class="tag ok">Accepted</span></div> + <div class="para rej">(2) Change requests must be made in writing.<span class="tag no">Rejected · old wording kept</span></div> + <h3>2. Fees</h3> + <div class="para active"> + <div class="actions"><span class="ok">✓ Accept</span><span class="no">✕ Reject</span><span>✎ Edit</span></div> + (1) Fixed price of <del>EUR 145,000.00</del> <ins>EUR 168,500.00</ins> net, payable within <del>14</del> <ins>30</ins> days of invoice. + </div> + <div class="para">(2) Travel expenses are reimbursed at cost <span class="edit">up to EUR 2,000 per quarter<span class="caret"></span></span>.</div> + <h3>4. Liability</h3> + <div class="para">(3) Liability for slight negligence is limited to <ins>twice</ins> the contract value.</div> + </div> + <div class="list"> + <div class="hd">Changes <span>20</span></div> + <div class="card ok"><small>1. (1) · p. 1</small><div>…<ins>, training</ins> and documentation…</div><span class="st">✓</span></div> + <div class="card no"><small>1. (2) · p. 1</small><div>…made <s>by email</s></div><span class="st">✕</span></div> + <div class="card on"><small>2. (1) · p. 2</small><div>Fixed price of <del>EUR 145,000.00</del> <ins>EUR 168,500.00</ins></div></div> + <div class="card"><small>2. (2) · p. 2</small><div>…at cost <ins>up to EUR 2,000</ins>…</div></div> + <div class="card"><small>4. (3) · p. 3</small><div>…limited to <ins>twice</ins> the…</div></div> + <div class="card"><small>5. (1) · p. 3</small><div><del>Liability for consequential…</del></div></div> + </div> + </div> + </div> +</body> +</html> diff --git a/docs/launch/1-review.png b/docs/launch/1-review.png new file mode 100644 index 0000000000000000000000000000000000000000..e3682976c937c76d3ea6b6db16daaca89d7c00bb GIT binary patch literal 369708 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�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¥sGno2X_~#<Jl^*7}1e_OAoo;$1$fS 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,{Ff+$>z3>_t8FlHZyOS03YfX1XhtmA-?-pKf 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%0DVGmB#YY=HK1P= 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 =TjBL9B(QaaN_-0m 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 literal 0 HcmV?d00001 diff --git a/docs/launch/2-export.html b/docs/launch/2-export.html new file mode 100644 index 0000000..154cce9 --- /dev/null +++ b/docs/launch/2-export.html @@ -0,0 +1,93 @@ +<!DOCTYPE html> +<!-- Launch gallery image 2: exports. Render: see README.md. --> +<html lang="en"> +<head> +<meta charset="UTF-8"> +<link rel="stylesheet" href="launch.css"> +<style> + body { display: flex; flex-direction: column; } + .top { margin-bottom: 28px; display: flex; justify-content: space-between; align-items: flex-start; } + .top h1 { margin-top: 24px; max-width: 900px; font-size: 50px; } + .top .sub { margin-top: 16px; max-width: 760px; } + .cards { margin-top: auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; } + .card { display: flex; flex-direction: column; gap: 14px; } + .label { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 650; } + .fmt { font: 600 12.5px 'Geist Mono', monospace; padding: 3px 8px; border-radius: 6px; color: #fff; } + .fmt.docx { background: hsl(214 80% 42%); } .fmt.pdf { background: hsl(0 70% 46%); } + .label small { font-size: 14px; font-weight: 500; color: var(--faint); margin-left: auto; } + .page { background: #fff; border: 1px solid var(--border); border-radius: 10px; height: 300px; padding: 20px 22px; font-family: Georgia, 'Times New Roman', serif; font-size: 12.5px; line-height: 1.6; box-shadow: 0 24px 50px -26px hsl(215 30% 20% / .35); overflow: hidden; position: relative; } + .page h4 { font-family: Geist, sans-serif; font-size: 15px; font-weight: 700; margin-bottom: 8px; } + .page h5 { font-family: Geist, sans-serif; font-size: 12.5px; font-weight: 650; margin: 10px 0 4px; } + .page p + p { margin-top: 6px; } + .page ul { margin: 4px 0 0 18px; } + .page .lnk { color: var(--primary); text-decoration: underline; } + .page sup { font-size: 9px; } + .rl ins { background: none; box-shadow: none; color: hsl(214 80% 40%); text-decoration: underline; font-weight: inherit; padding: 0; } + .rl del { background: none; box-shadow: none; color: hsl(0 70% 42%); padding: 0; margin-right: 2px; } + .rl .bar { position: absolute; left: 8px; width: 2px; background: hsl(0 0% 40%); border: 0; padding: 0; } + .split { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; font-family: Geist, sans-serif; font-size: 11px; line-height: 1.5; } + .split > div { display: flex; flex-direction: column; gap: 8px; } + .split .colh { font-weight: 650; font-size: 10.5px; color: var(--faint); text-transform: uppercase; letter-spacing: .04em; border-bottom: 1px solid var(--border); padding-bottom: 4px; } + .split del, .split ins { padding: 0 2px; } + .note { font-size: 15px; color: var(--muted); line-height: 1.4; } + .note b { color: var(--fg); font-weight: 600; } +</style> +</head> +<body> + <div class="top"> + <div> + <div class="brand"><img src="../favicon.svg" alt="">Doc Diff<span class="url">docdiff.app</span></div> + <h1>Export the final version in your original Word format.</h1> + <p class="sub">Your decisions go straight into your own .docx: styles, numbering, links and footnotes stay as they are.</p> + </div> + </div> + <div class="cards"> + <div class="card"> + <div class="label"><span class="fmt docx">DOCX</span>Final version<small>clean</small></div> + <div class="page"> + <h4>Framework Agreement</h4> + <h5>1. Scope of Services</h5> + <p>(1) Delivery, training and documentation as per the <span class="lnk">specification</span> dated April 18, 2026.<sup>1</sup></p> + <ul><li>Module A: quantity take-off</li><li>Module B: cost estimate</li></ul> + <h5>2. Fees</h5> + <p>(1) Fixed price of EUR 168,500.00 net, payable within 30 days of invoice.</p> + <p>(2) Travel expenses are reimbursed at cost up to EUR 2,000 per quarter.</p> + </div> + <p class="note"><b>Ready to send.</b> Accepted, rejected and edited changes, nothing else.</p> + </div> + <div class="card"> + <div class="label"><span class="fmt docx">DOCX</span>Tracked changes<small>redline</small></div> + <div class="page rl"> + <h4>Framework Agreement</h4> + <h5>1. Scope of Services</h5> + <p>(1) Delivery<ins>, training</ins> and documentation as per the <span class="lnk">specification</span> dated <del>March 12</del><ins>April 18</ins>, 2026.<sup>1</sup></p> + <ul><li>Module A: quantity take-off</li><li>Module B: cost estimate</li></ul> + <h5>2. Fees</h5> + <p>(1) Fixed price of <del>EUR 145,000.00</del><ins>EUR 168,500.00</ins> net, payable within <del>14</del><ins>30</ins> days of invoice.</p> + <p>(2) Travel expenses are reimbursed at cost<ins> up to EUR 2,000 per quarter</ins>.</p> + </div> + <p class="note"><b>Open in Word</b> and accept or reject what is still open.</p> + </div> + <div class="card"> + <div class="label"><span class="fmt pdf">PDF</span>Comparison<small>side by side or inline</small></div> + <div class="page"> + <div class="split"> + <div> + <div class="colh">Old · Contract_v1.pdf</div> + <div><b>1. (1)</b> Delivery and documentation as per the specification dated <del>March 12, 2026</del>.</div> + <div><b>2. (1)</b> Fixed price of <del>EUR 145,000.00</del> net, payable within <del>14</del> days.</div> + <div><b>4. (3)</b> <del>Liability for consequential damages is excluded.</del></div> + </div> + <div> + <div class="colh">New · Contract_v2.docx</div> + <div><b>1. (1)</b> Delivery<ins>, training</ins> and documentation as per the specification dated <ins>April 18, 2026</ins>.</div> + <div><b>2. (1)</b> Fixed price of <ins>EUR 168,500.00</ins> net, payable within <ins>30</ins> days.</div> + <div><b>2. (4)</b> <ins>Adjusted to the CPI from month 13 on.</ins></div> + </div> + </div> + </div> + <p class="note"><b>For the record.</b> Every change marked, with page and clause numbers.</p> + </div> + </div> +</body> +</html> diff --git a/docs/launch/2-export.png b/docs/launch/2-export.png new file mode 100644 index 0000000000000000000000000000000000000000..c9609139d1aef27e01fb057f07b927e8458908be GIT binary patch literal 384219 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ⅇ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�z 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�}F22Q!zFTH4ICqPPh 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%0DP9W5-1#|3s&wS^+AtIhljrez6A9# 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 LS3j3^P6<r_%$z*b literal 0 HcmV?d00001 diff --git a/docs/launch/3-private.html b/docs/launch/3-private.html new file mode 100644 index 0000000..83fc8dd --- /dev/null +++ b/docs/launch/3-private.html @@ -0,0 +1,65 @@ +<!DOCTYPE html> +<!-- Launch gallery image 3: privacy and formats. Render: see README.md. --> +<html lang="en"> +<head> +<meta charset="UTF-8"> +<link rel="stylesheet" href="launch.css"> +<style> + body { display: grid; grid-template-columns: 1fr 520px; gap: 56px; } + .left { display: flex; flex-direction: column; } + .left h1 { margin-top: 56px; font-size: 58px; } + .left .sub { margin-top: 20px; max-width: 30em; } + .facts { margin-top: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } + .fact { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 14px 16px; } + .fact b { display: block; font-size: 17px; font-weight: 650; margin-bottom: 3px; } + .fact span { font-size: 14.5px; color: var(--muted); line-height: 1.4; } + + .right { display: flex; flex-direction: column; gap: 22px; justify-content: center; } + .win .bar { gap: 12px; } + .addr { flex: 1; display: flex; align-items: center; gap: 8px; font: 500 14px 'Geist Mono', monospace; padding: 6px 12px; border-radius: 8px; background: hsl(0 0% 96%); color: var(--muted); } + .addr svg { flex: none; } + .net { padding: 16px 18px 18px; font-size: 14px; } + .net .hd { display: flex; justify-content: space-between; font-weight: 650; margin-bottom: 10px; } + .net .hd span { color: var(--faint); font-weight: 500; font-family: 'Geist Mono', monospace; font-size: 13px; } + .row { display: grid; grid-template-columns: 1fr auto; padding: 9px 0; border-top: 1px solid hsl(0 0% 93%); font-family: 'Geist Mono', monospace; font-size: 13px; } + .row b { font-family: Geist, sans-serif; font-weight: 600; color: var(--ins-ink); font-size: 14px; } + .big { display: flex; align-items: baseline; gap: 12px; padding: 14px 0 4px; } + .big strong { font-size: 64px; font-weight: 720; letter-spacing: -0.04em; color: var(--ins-ink); line-height: 1; } + .big span { font-size: 16px; color: var(--muted); } + .formats { display: flex; gap: 10px; } + .formats span { flex: 1; text-align: center; font: 600 15px 'Geist Mono', monospace; padding: 14px 0; border-radius: 12px; background: #fff; border: 1px solid var(--border); } + .formats span:nth-child(1) { color: hsl(0 70% 42%); } .formats span:nth-child(2) { color: hsl(214 80% 40%); } + .cap { font-size: 14px; color: var(--faint); text-align: center; margin-top: -10px; } +</style> +</head> +<body> + <div class="left"> + <div class="brand"><img src="../favicon.svg" alt="">Doc Diff<span class="url">docdiff.app</span></div> + <h1>Your contracts never leave your browser.</h1> + <p class="sub">Doc Diff reads and compares everything on your device. No upload, no account, no tracking. Safe for confidential documents.</p> + <div class="facts"> + <div class="fact"><b>Works offline</b><span>One HTML file: download it and use it without internet.</span></div> + <div class="fact"><b>Open source</b><span>MIT licensed. Read every line of the code yourself.</span></div> + <div class="fact"><b>Free</b><span>No sign-up, no limits, no paywall.</span></div> + <div class="fact"><b>Save your review</b><span>Continue later from a .docdiff file on your disk.</span></div> + </div> + </div> + <div class="right"> + <div class="win"> + <div class="bar"> + <div class="dots"><i></i><i></i><i></i></div> + <div class="addr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="11" width="16" height="10" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></svg>docdiff.app</div> + </div> + <div class="net"> + <div class="hd">Network while comparing <span>Contract_v1.pdf ↔ v2.docx</span></div> + <div class="big"><strong>0</strong><span>bytes of your documents sent anywhere</span></div> + <div class="row">File upload<b>none</b></div> + <div class="row">Analytics & cookies<b>none</b></div> + <div class="row">Third-party requests<b>blocked by policy</b></div> + </div> + </div> + <div class="formats"><span>PDF</span><span>DOCX</span><span>TXT</span><span>MD</span><span>HTML</span></div> + <p class="cap">Compare any two of them, even a PDF against a Word file.</p> + </div> +</body> +</html> diff --git a/docs/launch/3-private.png b/docs/launch/3-private.png new file mode 100644 index 0000000000000000000000000000000000000000..cfc788cada9b02d176dbecb2499ab53af4e83aa1 GIT binary patch literal 262926 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ξTqDH~Rc*DmMQYEA?NRHm(wKD!T^M&qVk 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 C+{xGg literal 0 HcmV?d00001 diff --git a/docs/launch/README.md b/docs/launch/README.md new file mode 100644 index 0000000..f67d0d5 --- /dev/null +++ b/docs/launch/README.md @@ -0,0 +1,17 @@ +# Launch gallery images + +Gallery images for product launch listings (1270x760, rendered at 2x = 2540x1520). + +| Image | Source | Message | +|---|---|---| +| `1-review.png` | `1-review.html` | Review every change: accept, reject, edit | +| `2-export.png` | `2-export.html` | Export in the original Word format, tracked changes, PDF | +| `3-private.png` | `3-private.html` | Runs locally: no upload, offline, open source | + +Render (macOS, from this folder): + +```bash +for f in 1-review 2-export 3-private; do "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --headless=new --hide-scrollbars --allow-file-access-from-files --force-device-scale-factor=2 --window-size=1270,760 --screenshot="$PWD/$f.png" "file://$PWD/$f.html"; done +``` + +The link preview images are `../og-image.html` and `../og-image-en.html`. diff --git a/docs/launch/launch.css b/docs/launch/launch.css new file mode 100644 index 0000000..e651d6d --- /dev/null +++ b/docs/launch/launch.css @@ -0,0 +1,37 @@ +/* Shared styles of the product launch gallery images (docs/launch/*.html). + Each page is 1270x760 CSS pixels; render with device scale factor 2 (see README.md). */ +@font-face { font-family: Geist; src: url('../../vendor/fonts/Geist-Variable.woff2') format('woff2'); font-weight: 100 900; } +@font-face { font-family: 'Geist Mono'; src: url('../../vendor/fonts/GeistMono-Variable.woff2') format('woff2'); font-weight: 100 900; } +:root { + --bg: hsl(0 0% 97.5%); --fg: hsl(215 20% 16%); --muted: hsl(215 20% 30.2%); --faint: hsl(215 12% 46%); --border: hsl(0 0% 87.4%); + --primary: hsl(212.8 100% 36%); + --del-bg: hsl(347.4 100% 93.5%); --del-ink: hsl(351 100% 34%); --del-ring: hsl(347.4 100% 35% / .22); + --ins-bg: hsl(134.9 61.7% 93.5%); --ins-ink: hsl(138.7 77.3% 22%); --ins-ring: hsl(134.9 61.7% 43.3% / .25); +} +* { box-sizing: border-box; margin: 0; padding: 0; } +html, body { width: 1270px; height: 760px; overflow: hidden; } +body { + font-family: Geist, system-ui, sans-serif; color: var(--fg); background: var(--bg); + background-image: radial-gradient(hsl(215 20% 16% / .09) 1px, transparent 1px); background-size: 24px 24px; + -webkit-font-smoothing: antialiased; padding: 56px 64px; +} +.brand { display: flex; align-items: center; gap: 12px; font-size: 24px; font-weight: 700; letter-spacing: -0.02em; } +.brand img { width: 36px; height: 36px; } +.brand .url { font: 500 15px 'Geist Mono', monospace; color: var(--primary); padding: 3px 9px; border: 1px solid hsl(212.8 100% 36% / .25); background: hsl(212.8 100% 36% / .06); border-radius: 8px; margin-left: 4px; } +.kicker { font: 600 15px 'Geist Mono', monospace; letter-spacing: .04em; text-transform: uppercase; color: var(--primary); } +h1 { font-size: 54px; line-height: 1.12; font-weight: 720; letter-spacing: -0.035em; } +.sub { font-size: 20px; line-height: 1.45; color: var(--muted); } +del, ins { padding: 0 3px; border-radius: 3px; } +del { background: var(--del-bg); color: var(--del-ink); box-shadow: inset 0 0 0 1px var(--del-ring); text-decoration: line-through; } +ins { background: var(--ins-bg); color: var(--ins-ink); box-shadow: inset 0 0 0 1px var(--ins-ring); text-decoration: none; font-weight: 600; } +h1 del, h1 ins { padding: 0 .12em; border-radius: .12em; box-shadow: inset 0 0 0 2px var(--del-ring); } +h1 ins { box-shadow: inset 0 0 0 2px var(--ins-ring); } +h1 del { font-weight: 520; text-decoration-thickness: .07em; } +.chips { display: flex; gap: 10px; flex-wrap: wrap; } +.chips span { white-space: nowrap; font-size: 15px; font-weight: 500; padding: 7px 13px; border: 1px solid var(--border); background: #fff; border-radius: 999px; } +.chips span::before { content: '✓'; color: var(--ins-ink); margin-right: 7px; font-weight: 700; } +.win { background: #fff; border: 1px solid var(--border); border-radius: 16px; box-shadow: 0 28px 70px -28px hsl(215 30% 20% / .32); overflow: hidden; } +.bar { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border-bottom: 1px solid var(--border); font-size: 14px; } +.dots { display: flex; gap: 6px; } .dots i { width: 10px; height: 10px; border-radius: 50%; background: hsl(0 0% 85%); display: block; } +.btn { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 600; padding: 6px 12px; border-radius: 8px; border: 1px solid var(--border); background: #fff; } +.btn.primary { background: var(--primary); border-color: var(--primary); color: #fff; } From aff5571952f160e9063952b3ae83b522bb92934c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Hermes?= <remi@MinivonRemi220.fritz.box> Date: Fri, 23 Oct 2026 07:33:32 +0200 Subject: [PATCH 4/4] Prepare v1.6.0: version and release notes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --- DocDiff.html | 4 ++-- docs/releases/v1.6.0.md | 32 ++++++++++++++++++++++++++++++++ site/en/index.html | 4 ++-- site/index.html | 4 ++-- src/js/11-session.js | 2 +- 5 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 docs/releases/v1.6.0.md diff --git a/DocDiff.html b/DocDiff.html index 6aed4d5..8dff029 100644 --- a/DocDiff.html +++ b/DocDiff.html @@ -99,7 +99,7 @@ "sameAs": [ "https://github.com/tschnorpfeil/docdiff" ], - "softwareVersion": "1.5.0" + "softwareVersion": "1.6.0" }, { "@type": "SoftwareSourceCode", @@ -14484,7 +14484,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> * entry; version 1 files (no review status) still open. */ -const DOCDIFF_APP_VERSION = '1.5.0'; +const DOCDIFF_APP_VERSION = '1.6.0'; const SESSION_FORMAT_ID = 'docdiff-session'; const SESSION_FORMAT_VERSION = 2; const SESSION_FILE_EXT = '.docdiff'; diff --git a/docs/releases/v1.6.0.md b/docs/releases/v1.6.0.md new file mode 100644 index 0000000..40c1f63 --- /dev/null +++ b/docs/releases/v1.6.0.md @@ -0,0 +1,32 @@ +# v1.6.0 — Final version in your own Word format, trustworthy exports + +This release is about what you take away from a review: the final version, ready to send, in the format of your own document. + +## Export the final version + +- **Word in the original format.** When the new version is a `.docx`, Doc Diff writes your decisions straight into that file: accepted changes stay, rejected changes get the old wording back, and your own edits are applied. Styles, numbering, links, footnotes, tables and page layout stay as they are; paragraphs you did not touch stay unchanged. Before the file is saved, Doc Diff reads it back and checks the text. If a change cannot be written safely (for example inside a footnote or a text box), it creates a clean Word document instead and tells you. +- **Word with tracked changes on your original.** The same, with every still-open change as a real Word revision: accept or reject the rest in Word or LibreOffice. "Reject all" gives back the old version, "Accept all" the final one. +- **PDF of the final version**: a clean document without marks. +- **Copy or save as text**: the final version as plain text. + +## Export the comparison + +- **PDF side by side** (landscape, old and new in two columns) or **PDF inline** (portrait, changes marked in the text). +- **Clearer export menu**: "Final version" and "Comparison", each with a one-line explanation of what you get. HTML report, Markdown and text are under "More formats". + +## Trust + +- **Exports count exactly like the change list.** A header or footer change that repeats on every page is one change everywhere, with its page range ("p. 1–3"). +- **Word documents contain only your document.** The summary and header/footer changes go into a Word comment instead of the text, so "Accept all" leaves a clean document. +- **No misleading pairs.** Changes joined only by a hyphen or a space now read as one replacement ("Standard-Berichtswesen" → "Echtzeit-Nachtragsmanagement, Preisspiegel") instead of fragments paired word by word. +- **Headings stay headings** after you reject a change. +- **Saved work keeps the Word file**, so the original-format export still works after you open a `.docdiff` file again. + +## Text + +- Fixed a broken sentence in the help, added a help section on exporting, and updated the FAQ and export wording (German and English). +- New link preview images for the German and the English page. + +## Offline version + +Download `DocDiff.html` below and open it from disk. It works without an internet connection. diff --git a/site/en/index.html b/site/en/index.html index d2ca49e..644c2ff 100644 --- a/site/en/index.html +++ b/site/en/index.html @@ -102,7 +102,7 @@ "sameAs": [ "https://github.com/tschnorpfeil/docdiff" ], - "softwareVersion": "1.5.0" + "softwareVersion": "1.6.0" }, { "@type": "SoftwareSourceCode", @@ -14487,7 +14487,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> * entry; version 1 files (no review status) still open. */ -const DOCDIFF_APP_VERSION = '1.5.0'; +const DOCDIFF_APP_VERSION = '1.6.0'; const SESSION_FORMAT_ID = 'docdiff-session'; const SESSION_FORMAT_VERSION = 2; const SESSION_FILE_EXT = '.docdiff'; diff --git a/site/index.html b/site/index.html index a955f80..13c8e5c 100644 --- a/site/index.html +++ b/site/index.html @@ -102,7 +102,7 @@ "sameAs": [ "https://github.com/tschnorpfeil/docdiff" ], - "softwareVersion": "1.5.0" + "softwareVersion": "1.6.0" }, { "@type": "SoftwareSourceCode", @@ -14487,7 +14487,7 @@ <h2 id="redline">${escapeHtml(t('exportRedlineHeading'))}</h2> * entry; version 1 files (no review status) still open. */ -const DOCDIFF_APP_VERSION = '1.5.0'; +const DOCDIFF_APP_VERSION = '1.6.0'; const SESSION_FORMAT_ID = 'docdiff-session'; const SESSION_FORMAT_VERSION = 2; const SESSION_FILE_EXT = '.docdiff'; diff --git a/src/js/11-session.js b/src/js/11-session.js index 3e66488..f620b40 100644 --- a/src/js/11-session.js +++ b/src/js/11-session.js @@ -17,7 +17,7 @@ * entry; version 1 files (no review status) still open. */ -const DOCDIFF_APP_VERSION = '1.5.0'; +const DOCDIFF_APP_VERSION = '1.6.0'; const SESSION_FORMAT_ID = 'docdiff-session'; const SESSION_FORMAT_VERSION = 2; const SESSION_FILE_EXT = '.docdiff';