From bf326cd72905df985a1f150dbaabf4470fb5aabb Mon Sep 17 00:00:00 2001 From: Justin Luth Date: Mon, 23 Jun 2025 13:35:15 -0400 Subject: [PATCH] tdf#166141 writerfilter docx: linkStyles != 0.35cm bottom margin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 17.15.1.55 linkStyles (Automatically Update Styles From Document Template) This element specifies that styles in the given document shall be updated to match the styles in the attached template specified using the attachedTemplate element (ยง17.15.1.6) when the document is opened by a hosting application. This setting enables the styles contained in documents with attached templates to stay synchronized with the styles used in the attached template. "If the attached template cannot be located or is not a valid file, then this setting should be silently ignored." This was added probably in LO 3.6 for a Novell bug for n751020.rtf. If there is no attachedTemplate provided, then yes - we need to update styles using Word's application defaults, but if an attachedTemplate is referenced, then we need to update the styles using that template. Since of course LO don't support updating styles from another file and almost certainly would not have that template available anyway, just ignore linkStyles when a template is specified. make CppunitTest_sw_ooxmlexport25 \ CPPUNIT_TEST_NAME=testTdf166141_linkedStyles Change-Id: I5ec2f0abeb8073c3caa9a579ba338f30dea9d5ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186855 Tested-by: Jenkins Reviewed-by: Justin Luth --- .../data/tdf166141_linkedStyles.docx | Bin 0 -> 29952 bytes .../data/tdf166141_linkedStyles2.docx | Bin 0 -> 29932 bytes sw/qa/extras/ooxmlexport/ooxmlexport25.cxx | 26 ++++++++++++++++++ .../writerfilter/dmapper/SettingsTable.cxx | 13 +++++++-- .../writerfilter/dmapper/SettingsTable.hxx | 3 +- 5 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 sw/qa/extras/ooxmlexport/data/tdf166141_linkedStyles.docx create mode 100644 sw/qa/extras/ooxmlexport/data/tdf166141_linkedStyles2.docx diff --git a/sw/qa/extras/ooxmlexport/data/tdf166141_linkedStyles.docx b/sw/qa/extras/ooxmlexport/data/tdf166141_linkedStyles.docx new file mode 100644 index 0000000000000000000000000000000000000000..72c18ad7abc9626fa39bbbbe0f57d12f6774e075 GIT binary patch literal 29952 zcmbSy1yp3qvSp!-H16*1?(WcdlyD@X+7z`&@Fqb|-X-R!SSy{ALczfktTm;oQ)R!2Uo{61wcT5v^ z{vD@tft{cN7upUz|M;y(>$%Mp5FgN%&*VC9xAi%7@6P0Pm_&+d*gs4IEp!4KGWsDn zX{-xnms<30w-DBxm}+9ykhC^8!(L_KKFOOUE179--a=B#<5LNrSVtgU%Q%)djEO*X zA`4wqj&z>gQ z$eM5ap?g>Y?B_%pb-J6jIB7aU*C2mb>%X@)^oO;KYz-A0Z0-Ih25%B$+K&JM04_cZ zj`UX*hPDpI^sd%c|2MNo#7xPpFro&YQ=H<_>RMwIr;Ao0=ZibZuoW;X;DB$9*U0oNmmFW!L{q-^BaWd40G8yt>{m5SQ0WXLb+VhVFx^V^lh{2(%p$W9=Jst01e4 z2*g_V@7X`OF4V3|W<<9sGw*hXfQN{6Nj5Wmn0jU>=?#%EYf1$d4ze?}>hZ#~7Sp7E zyMU1tKBO}5avb8LNN2Q=AmOLZ$BaLnpKlk00cB&&YA3lQC1)u6w9*8`c-kSTQS{#U z)p~&V^QKmrq-o`pytPiE=as3sQ?ue(J|ga{1^K%Mz1UuSrEmGjR)ad7YM*hnFh;4H zy+%dif`CshgTA`=*pQ?P&o9vX{u&--Tj~m$AA6p#4TXVa#~pj)x&fxklu_4w&-HDK z?kpQ6ntMCetJdnSN^3N=brk*fRcq?`e3A*1541TmlyV~vS_#wP(?L^Qf{)evJ+g#~ z2NXPYT%^FmdxBliPr44sQ!|v%9i%)`@Ez}WxK7kxZdcQ{2bpHE9 z5|P~?!1)-{DsTV*@vq~mZ)f+PhBg1Ij_oods#j*+JK}D!2PFu&RzNt-a8OY%ByqM^ z8t*=28FzzmYuU}hIX9NZVga9%Tg&}wYV3AwY}87klDI^boEh6sk8~Sc-z{zo3xS`& zrL8COpJ}Glrb;xJ0~B_bbYAa2t;*Q-+5s3u0S?;_zuU3MLbg9qCLjM+-^`nAFv8br zm3LBvf@c}alu_V61hx{OxL#&C3|7jDU@nB`=K9c>SGY~?c-?P5hmY#G06d67HKjc3_R_ID5D?DZD`K*$0v4{D)?lAb$>v9 ziVzsw2w-LshZ*O^mKA`tsh@hOhJ*AJh=tR2vhZZa&JWDXo&Dh&(E^_buo$6J|Ua2$j0`*JDQ`d)5V((PIp2dVF2 zNUse@@qtZb3}bt(k1o~e8xxIFMjjlU6Vr3SOdq>bL?MR0R-;E6rdkbIaR)b=aC;D_;%gxe-E;OLP*#cUKO6+?9x zHI6NVB$T-s9=-syshtuDoWF2E5%i0^g5|Ue6^5zZlBF?)J6@Y+2>|}x$wUo}hr2!& zkGzj13FX7dv_x!eoQ!RpbicaU89VCyCqL^;(6U@*L=4z~eMAti?4BnNP#Si>j)J|( zhhxp3&@^vDucw!+mAcyi)~&MNQ)z(_{!&FUE zS*x)QNK{qtk{AxNTZ zdO|&j-b2wYu9r?=6UT|wX_?%r`d(nLtIw*Myz>V5q`uSFY}GJ)(O^Sa2WrCPIeOd9 z)y6p_DnvVIp=h0MQ=u`wSqO8x@#qykOXWgq3fa?uz99ydJov+g(oie}#?9%cs&VSf zm_hsVH$VO+?UiKV&|yo%%sxHD4AMy@16RT)Fsi~22yQwg#LvvSPse-B`=T5`dj3e`iT1S|0(jH2-hs6fB4ef-xsVutDD%`IvG1K z{U=Atj~laDVf;LB4t570coq_uZOKg{=SwyiwNh1qkTvW;`xO~N+9jot;FMD?5JYVL zK~Iz5<&t4~YwL1ssca4t?!j-Yz|VM@hB9IU?d0*^;+M|tdjdD#;1NBh#gSobZ7qkijPqbN{mphYk{eqq zv3rhUx)mDg6g;(!4ec|)OJzU(;P@LMe~-Djb;aQsEF0Q1r8%PEwvwc@HTJz5+rr7M z&NVfuP!qC6P;Pf6{Zkx60;*zv?OCLe%n=Gvu0B5Lu(d|j^W$1$&|K)UG)L-<){)76 zk4P=oZO)Zi_m9QkO2MlF`-=L zv|7^pluxS0tNatiR%!R;%g!vmGAgtNZtRbQye*>);|xQ2kC8CCE`exNA=W{1YhwzQ zPqE+^AZrAZf*gSMhtt$!Gu;q^#o1QO@C<}c*q2`{me$w$eqW#7*7ga)3is504szcy zxJU>0-|&9j?dx$v^ae_1Rlj_*J4?avx5hjhpBM*ql+h+}l>_z~5^&4{Bck}8fTk6j z8|T1@FGpwLliyZ;;&}_;AOt-TQuPPL33K4AkX9Bo14A&xA16Gws*sB@tWI^J67B$0 zr@l|~!E2UTWLd>6kcL76#Q?Ta^wQLR<9B3bV)yb?_Wcxd9Z%+A&W;`u-R|6xKkF$nov+Ael1FKWsNz-6hF5=UMI`RmuPsA4a)+DJ0OR2++S6ic)k1PuR8 zLhr}NQ;CfNe#6B+z2-09DuOLLtLeh*Dhi?7%dMk*tV8a(2Zkq8%Z6f5!_D&X>oF5_#H#cw=Gqm!{`I9mp&vmT8^JlS7KEFNu7CyA!{nSLFh z4rvQMn?3ZW+nzLFXCmMU4TWl)E)bPXll+jb6wY)9DwSPgf*jYku3-D(4Nfu6UQXNL z4rka7HIk4?E_sZY_ALu|t;DFhG?Z18fp6v-CK<`#g*^mOm!Mx|Sd^ygF9YBVqIUZ` zRsxqTaFVg9a_A?Cp?3P=g}MB)6bZqj9GpSU$)L`IjnCJY zl{7Rd7Xr{tt$erJ713n2g#$Gk%3%xkB+KEz$^VA+##hELo_c#nbEM!?3+&1rZqvw| zu+xh$pFd?moLpqKo!^J`uW~U@=>>BhZpf_${ko#B0Rm&{sS4=DDnbJwiCaO`nTXs| zT+P8xFLku6`>*C{X!eB&5=yfqZ`@nS5@iO#K+2L8HGY$9`)tTSwtTK_P-0s050U3k21u6`RP%Pn-vA{{TDL`fKnR;0O(}{0SJns0RGYNzY5GC z4x~mOWkmnhr$2wXIvq3ne`@|mhm1gXBnSWK;y-#eZ^gQa(}b7f3*?Dp1SWUgtLL8J zN2Weeb#ioid%!|kEUQAOho2rZP_-}U?L(7;?iFn=Sq>CT6%?II02~kD?-10Mabix3 zY15^Pi=YIik_0+2+hu-E*X(TG_X5CT*fOkkfIP2E*3d^bjvK6M#Q(mn7i1d~I0X&!1<0Mma!W zqWO>#xKj4JR(ps6hC)jhH`B8H=JWy8*g=oYdpsB1r+{+X9-o9N@f|BfhJO1?NeI2f zoC6g|_`3h>eu0qUY6yFoghlOg11lL;|8Wtzs=W zntDpFR;T;7ILw+)lt!=PRf?xy57YCXDI0~IEsWY^Pn#>r7Y-Fqn|o3_VFTp~!v$X6 zpsn7%96z$~sl0vByr5v67b0Tuh&H)x{zSfo5R150S^!KQ>bZyz9g+S`NVN@+Q&xo=U5YNp48jaOy0IT zQ!1_aDV8>eu3p+`!KdwACsiXWH}|TIQ%_{@#PCqtj`N0InhF}?>xrSHxIQX z3)l-dg_XdMSKn-DTaS7r*D0msKg&lC<_aPdp}H6h{p zrfS_+y}S6=LPPVb`4RRaRah?liS3II$;V6*rrst95Or6 z^GnO09E!i)Cv{jB4xZOvvm5M*AUlO<8F;b4gqjRh1aG&oggSObogLNo*Q$#@aW0uP z70EQ2px_>XN{6E_)DY*&sh0q+;DzPqTNire4TOI^$T~>`3MO7cU@uyH#dH|+>e|8T zD;j3=kvh>cMG4v{WG%B1Oxb~zzcwyn#2=X_t-Lu@>9|H4s8aQpj=h5g73;ez{Sihw zMyHw7rvH0AM|wk%rqTEu6irk<6jUW7n-cn_yWyY*EjCy_vgfM=vF@n2fd3!_Qee)Y z%GPJRP*2v3V_Bp1QiY{Of+Vetb;+Os0w28TdAL~fz|`OL_|ByiRcu2SUVK5$!zorp z@->uSYOIn$w_E4VIKmZzV@ixj+=NtQIRJ5}tjNF=`ddYF9>&0mdMjKHBfODt8KD7L zuv;>`NRRpI0&HvUMdsVHCva!lS`!F7j);szCtfZ%Jc<5m(Py`U%j2DrtpoN2X%*8% ztRP-!?e525Dg1m?wrJWu(bD}uo--x*qSGE~GrslmG_LRmM}BK(RB&^cm9A^Gi_=-B zR}wUp7$RA;wYSpvuNnrT`2&*U2%H?GxMnp3SN6^d!C`8{@3Pnl1F>EW2ms}(*MNf( zmvZ!h5%g?RvA#oxzQcpi8TqgF`HR$&k+Oaj5P0}-z@XEI+x~OASRds%Hddz+nz4q~ zE?L7why)oTNRy3pn#=vk#&fA#j?%MjwVqo4@~p{G2Q^R6!9XKHM$$lHZ`Z>`VDh-% z>rZ)IFAofA6dB%ZVm~3mN0m^MSffMmu!sEY{8LI^vM1myR&)S@l;~?bj{Ni}R5=z8Uu=|xgpjnNt zP&w;huXs=O%sW5CNZ6|rTI5iqebh=to`ek6z2sp;?5mT_?}`*iqXUS|M(SeFI>Sw` zynIE8;FReE@3Q8Htw4o2{APBd}x+4(D8@!D7`oa^b#8ZMlL@W-#C0CA4cBe z*Ssuy+CD(U^;&WHlx3-`W5F~1o66NR#?IZ-YOKslo_mz;Ej}`dPLkDVl4c7MA4iHS zgTZ%^t4|c2H?#?gn}u1MD2Z(X%t6`c*d+u^HW75r*FwL0VEGdzGmORuwjV`+6>Bww zd7uMfaJ#oJGeeyz%Z&sT;4%kMDXxuPc=xYT+l=C2G+%C}i`_RLXJ{*^H9{ZD;N)bpgR#AEO`62!xmX89>9XM<&wQ<9mo08z3w+v2A zNQl7ro~8<&{KXl48GKPbk2znwi&wSG+~q31)DA|nFBhNNgE>_53L3~_V@W|^MA^sW z=NN&I$CLnR)>~r6W!UU+}T#&enOI3znnAdC!CyyD?t?)8RNlT&?I^@^z`5 z-#BsII-%6=RHz;F&axbU7baGJuAb11IcFPHY%LO!T8n8-li^U@Q`$FL$s@QVH_iYR zY6^YN>LP+`GgWbleWA@-i{K%z)h^pVgEK|DeoV5I<^7>H>l}h1?Xr%OAt6HIkn7TM z|7~|UAqSj-q3~K`vn?lU<8~7$1y18awP&=v#i$D}Zf!`FlSIaG#IfNL3XD`5lhjDi z%dd$M9XuQ4l|WoOi1E&<1ELjTl-(T*1XGCY_^xefPmF&EEgt^s?a)i{pmy}hoXuNXhL^-DRi zfXO1&vLdoMetI4{(;B7^2S|7HnHYW<>ftcw3uHBJq&1#CacH$CScmJ57+Gy)QZq~W zr7AS!2Rr0U@JNY1vc#NNUta0Wiw7rW15FvQa<)HqEN55Cw1Br<-Y*bwh90}5Je~f# zL%)Kjt~F3z3dq*cJ*4h)W20usrJB8|5opWTTC8e*#*3;)4%#8Jo{zpK_)1N>{jt1lh5JGR3_y-Wu^#>55n`Kn!_B{1-+Xz#^C<38C zEJWZe>D(!kEdIrrWg;ra>)wtwHFVb8HD4 z)`dXXQXIwD(swFXfryYYW#N0JxZC48jmXKTOY(bFP@p#Qtl#Mg9lx_}saN&+6FdFy zxtl+ju0QcECo^Mf>#-$5cjZM zu=G%-C{gbFxh5QoOlGbaSqU6yof$nVGwGM|5;;YJhE_!UL~XzQ{kwE|Z~jY)AQEb^ zk1tTb>fB_&T-u+~!mA2sl6mj3ZfZK8Sh*U($(5(XgaoA9H|QZ|z56k-m1ViMO7QJK zUDQ0->o;+Mj-_es-EY3JZ$-sNj#BWx zK)Slkuv{;9HLV~1)2_LeY&DU_mAVc4!rBbcbVG2p@?)Xi;KX&&xC&*xvyt#6)b(ArwNDrYZxWJ+mHsrkVI()vEJIcZL~8Sh0^|6T~c zfd9o)3sEJwl)oE4GT?q_5cd0Ll!&O&9K@JGP9Zd&e^3{{D9I3EJ-`xG8hAw|KUbh+ zDC!nN)?(?E1Ze01z1liNV94MnAGpuJ-FSX{czfOU5Wvc-5W3kNBDdJ2c668nJM-)8s{eXBoqpa z1v87}(E|CIsH&z{9G5bfD4r?n6L(pb?H6BvkcHg2&+9RRAmqR2hSEcOJhIcwOaR{y za$)SWpw>~QF=uXPRk>heIT>*hW0`F*eoq>;`s8%@OZkN*Cx5*Y(X@9AG8`hxVwxju zr+}wq3tlrRi&?PVlgjQ@k6j7B`HrPrGal7iTo>)92R0bsDSZS1$w~Kv}bypWN zPy=uj=e5Q3moiQvV(|qACq`>!iNwZwC?BdISFoybXK6?I$}8^`jd+q4q5&(xVxp^0 zRy?s)qLpgFP#j=?P?B);2?_k5WO^FistSJ<#QTj5QA1KU1+91* zEeUl`RxKCMrA(Cdz>v~5R^50~!}v(8YE8qkJD;T~mC};7 zM+nzFZpmzs%1}ikNn|OB!;f#xvJ1rcq&k-2&vb3!$g_n?6`=UNIwLb;lnmB;u^_35 z`7`R+c73A6@$2AddrC{?ODjpPn?5tvg>IagfX`M=>^IgGrsKnSRueMuTI~o3ee*2qETM}Z{hfPRI zyY@*~&*0k6@LlJ!cRRvJbw)KM-*Bd%+urxlt7eV@jR~aBPLA)qOBF;5XNScN$8;8na?DFbccuxLYeFlju7W9cufF%p9Wf7y$tRJ!8#YIY;^6(@I4l>wpB_)fk(bvt)~ zW)Zj-MPI7=sUUQciVA5(LfTnXxW|c73vmxRu|(fYSY`6#Kvo7w5mn5jZiU3coBd4g zCOu2a@iZd_yFZ(driR5kWVQai3kA6jJi(tCEtwi1JEnpgRDhUWc)Oh;51=Po1{^o- zgFeV~7BiF8?_iqLEJ-quo%6(CW3U}W!i<=X6N$8|3ApcUNp8LS_IhE%antSvWP zXrZc3=lh)3A`m+0r!`VGVC~bACK8D6)4I;-0y}x&#?SAm81}|K$1SmV_~{HoOx=4C z@c38BaHU^Z^c|K*H37~%k9>Mg;1DA&6A)CV4}Yj3vzqEpRKYAr-N*c--+-s+Dqje5 zn}zifCxJ}dkR1;RZ+Gv?@1jbb(`(d^T~?a(_lcTf_!kTFN1Baku0q=WN1BcG$LRi- zk##h7ax%9u{gaLPk0To~DI?P>_!;oK^|ueEgKgolkdb*SrOK*5lqMevDoX~2 zBMjz2H%dBg(rC0qZ1tob)nQh8Bc^!%sFCy`iLkU8&XMoiAf_>DD$aDuaN(4yo5&2LT zaX?gd4~C!QQy?5i5~x~J%jy$K5)l1*sH-O?QGsI5pAD0?INR5R{)9iwh>=AVmyaCN z@EhhSq^~Sf@0Y9^((6EyGUb%7f)t4XH&5RzIrD6ui4$Fl)0>)E5%VUIMs9l0#)bwrZ)M$qn zXeYE4_k#Ed-I7fltmDt~+8vDab|b{|bzO$1p~jc# z#A&|;h?V2PvxH0mIv2Ni##}RkYaIoMQe_yfeZ{%uAx>v;BGIDhufE#~D&poHV6>0g zqoVI?*-ue?pQTIxRcF-wa!R8SoMW(2xHyY=kxfg`xZ$4MO+8$ zeEJ}+#eb8zArR60NnB(7gSehy{~)f1o}kP(mj58GwHRBQD?ZW0@i0^TCc7FDiK_jy zYx_Z5`~7qZX4*oAe&6Gz{vfWEw-Dm@+L~65EuK-bp(#?De>Pk)kd*Sop6kK!ac^k0 z$&DJ)f#DGrUX9Iz4V%h@7Hw(VOVp69{hhd$)u>u|KEL*0^3iMOI9!EInX@(psmx#ZfOMoTZ?_r)@zz0|0SIYA)MxR@q@O8 zNcbR!{xRqOMq8_yJDG`@m>3&6{m03Fsx#uS&5ph%KlcJAGg5qXAS+eDN!7R}*E)RY zw0xFg97;?S#w2D3HGDMQI0_uKaCtQZi~5b?sf`#_HX0slk&5seaIcLENCZ5-M(Vm` zT>1%b8N53%zS*!cM%fw;+-A~$$|SJep#20HLc3ATdy+fSttJX7@OH7#>FLu%IHiVw z`Fv}0r4JqW)w!EEFuAdSBadmVJ7)hkzBy%a3gya3L_Akn;XR#^P zJ}{U3gN}}K4z1UjwQcIPaf4xwU(2u+X-0eIVa&jmmoR|x{P5-V5;CH6HjI(DFM|2M zy6@nY)jb%9PZ(b?uSC32-&^{;MZC>?TuFfyPlMv&+tAWqjHrRv;&)`aLq=_?R%5(D3coy{Z+v>O#NWmg5Dybs@W+*eG>{#GbFU zu?~g6Sa@C$Q0*jXHNYE((au+5ZYzVx%0aO5p-rBA6}(mkNiGD{OoK6Vqt2SE_9eEW zh^SB6cbbbfAWk=+PB$P=H=s}d6(?7Xc)F3HN0q8a7OUrP|3f$#wE>L)7A@0XCs6+h zbslO8GQf%2w@Zp(ZBQhgo=^40e4Pk~pnTFDrd-dm%0B4(bWBf=H(qxrw<^t%2&w_Q z%h~tjFSB~1X?`}*!L!5vVLw%5ZF>^ZF7Fgk^`!PhEYNU1FE2O8|l z1`|U1-xxz~2&yg-)f-?5rKj-D)(WkSCc7KJKv-}FkA~mZ$rOQma4LtxxV_m+zbD3$ z-@|c%oiegun7S#-V!>z8`CP})-B91Z>Q}@FWWAV7ykHGPT`_#U`V{9=9OHBUeLYS! z1&78nkgYPnX{Eg%AD+VlfffPw5Is$(tAubZxb{VexH`(Fo9vOb!YXyVkI1_uD;Jp( z#*f-Jr>qQFeHfX>H@~1BS#Ub%8M?iR6i-QJN(RPocHB=EhZcaR_0m#kcy|V(=f5YU zc=iJI2#&>ASG;9cJG&ueS2lks1t`A#jx1=QlMSx$&W{A2v(6>0S9}}u@n|g{JSxK* zh4F2A(iT*K^(Ga7YW+$MkkRUNyWt82k6Jbo1C@+)1^a#zd_T3%ge-WpwFZ|X-v*-Y z-irgslV}4G{16zM=LpvUsBl|wf>Y${09xxUxUOlEbpRpX798NOf<%OPx6n-p2SDa; zIynFz%7K-DNuvL!>HtFL%QMI+ijPlW%#I9qnKZyVh! zjk?dV*0^F===X@DYb-rMMf@EUG!4m^VBO}Qu#V{kXXY(rUmqDutGpi;xQ%n3W|fOB zGYX@BF=qMVq^)XcWTb+&V^O}3?@bvNUG8D<@{2+A<{0!De~m^OosJ# z?H!Vw(u++YSGj%NF5A`;tJP*J%$kuJ)<$X~?m%<2!1O9PN`_iXA$^5akQ=kV9caIw z)YX^?)B19b&1IObDIvhp>hs{wOTwqt^FgwP1)pYZklBsMl>^vCL z1&Gtcma-4$HyKf5c7_#Z5txziKM}yb$hKkADG^WSfu74?o>okRqUGwqo5VJUvwYd~ zDzFdBDO$ECr&!_bs~%MK&m6^hHCkVhFQUtsxuzPuorh6r55`+n=7}}QOu0n{%@XM< z%Dm0u_d@92Mz5aQ8-KzJI)7+(UkFAcqh5WRcV5luL4EQ)2z;v?&>0m6GC8+|xe)`C zJ3CrOCwg=&0udB{;KI?@nmJ+dZ`SZ8a>GegzMVq7&YU{%>-@~FP@36SFdb}38nQ@; zNpNO*CWJyFQj2@J*9GHdAq$}YF*Om(TPB5+i7X=@Ct45__rlD9<=8i90WxF)(^pcbkp(0lIZF=bIfDnA=XmT_##GG zMl_kVucR>MwMizS_8vSr0>8A~zzv5B+Eb0M@7Y*IeI8n2YpnGzQ(;SR+1q{-Dqhiw zs~jzbA~o!ED6v{Es-6W~kK0l?wz+k(SsC{>vZC45`^85kn4a1xGjUyU8L5h| z`>^vkzL88kFG-*E3tg9w&cu{%Pu1)_rQ8L(E~N2iP_dda(qfn-spKrJ*ZGzy4jTT9 zQ2gZ@Sz&f&bY78@?`vUr4$UTuds3EgPUj%?n>e!FR-Y7=rTqz~^<||uK>goen&F{4{YF1hk8rloBgQlS-N)3jYQLtKiH*;Ek! z*`5nZvtizWpWnkWDPlJML-JERKVlLpwb9DW&#F(#v>!o#!*9@e2Ab^^)pYwRB(3wkF1$ftVtu zG4_2+Lr7-Y5A<@{Xu|ufJmFtElBAfw87=4s#?Ic4wCgDCLtvZt@zLlDOn-^d-tAB6 zF-zM#;_PlEI;u1ee&fKXF4g&rnj6|@bvpj zqNn|f?son}qQ7-> zRtm<$Y+a?bgQmo@G$J9GaY#ZUy$5c(aSzScW*aC43)h@tIaXX13-d{hOTMLN`P=TN zXWMrJj1_}hXOOmv3f0eQq3$|q$Lyk$)H-_eTb?JD@VG|g$Y5q2#Zzb>~Y^&c;AiBof9EN+)i z3a};VuC6JV4BK=0-W=%0xnd$g?(j@PA}nAcFotdKS!S|Jn;HaQ?>NSk!mV<6HO8e8 z*0ma*@yx%~qK2f8qK2TE(hqUqJR^@l)@MffvpXe~4m-)3}+3wSTZl^BY`gyt&+eo2TKhe@OgJeDK#O54f6@pU`I|28eS*~VOT310=6nD%SPd`Hg+7;4<>GDnH0#=-IQbRlAy6_S?X@xl7x!_^MT- znj?>f*09azVV5cuy5v)s9N>-i5sAwkwa3!WP7;_{1Z? zvPm~b2K6?(;?AbIlbHkb#v6vKp1(1h|01weTes^5J^+!c4}1*yA7|x1GWq|10J0=D z4J}lqdRdNL=QaNCmS3tuy%Ma2uTO#Gf{WN<8Z7u$o&&FEKJ5E_YpEqUDRqDg>^3_j<~kXi9u_5c+i6ahHq_AO z;+R!G|6lT4MVO(&4oDn&*AK9=X3r+HcAL25o<{B?xQBK}d~o5D2ee((d-moW)dqL< z>?nCSd%Iy}c^gEj-lrc3+451H$QMWcu8qjYv* z+2N5N2-#iKX)$p_32_e+Y3<0kp0S4i42bK`7f*t`lJ={a-X9tE#2`$fX(XEyY3;~; zdHkerlk?#mK*yzZ??#1GFxhY7TE`2%Xx!HX>T6gLGLDHMZuH6BkV?Edwyf%RO4-D# zmy|EjMqDj)IpnuI{@*A**N*y=nZ>w?lS@5khcME^b+BQZ-rwxG+`2g@^PX5!zF;m2FiZ{oBywWG@O)` z0b@dh`~zoJcd)HRL(*uW3;qh;*%j%LGTzYrg?u!x;&y?jLIshbeOHzlfrTZ#)39v) zJDGyTn2~lWOiZDQBxX{tli(?|h_;4<2j^6Y48~UE1fsy2S_)?`le^CZISLC92#Gt5P{p5b z6NpMArPzr^BIgNmZhK2dcZ5XuyB|)oVGk3N)870UUCFa6!kv@6B*5}_W8FFRS<#;M z+|z^Cn2#XQm|1iPc99u9yZj#fiZS$_oy%EH&SpkV$D*{uX9ZSu%&UCZ`Jci6-JlRZ ztUd?80ssQzf0<)8&ejIT4jt&+2hlnuhJjVI^{iZ@N$Hm(tD1 zc~UZrB1@U$R*D`AbL=KgsHQXS(q!P9NeSq533Z7eAj9G4!5}&AW^oH-(NtzVI=3!8 zD!+9DH+<|*y0LS*u2x%#-UD&qvn*W;cKO%g-k;pwG;!cTKWn2bX26~Y>gqGTyqyxf zU#wl1<8Z?U4~BqE2jQ&pKliWM1yuX+U_3X}rMRdY-P(HCpG4}v7&<_tuGO)4LBlD9ttv|vXXF4U$u z3iH-nfjx-LjZzquwIE`$HXLBmZ+UbI@y9kPU-(Fzvck4$ej?TlVe)dQYrLt37qmwY zt1J(tkoPWE2VsG?IblO8gJ%q7S_i2F+S*`q-I?s%;Ja0T5-Vb8gi(tuwwrJxe^NiY z`xWsuR_$!tyyX?dExYq{jJv!Mc&0qB=43j5K+{dhplP?Php*a2!4YM++Tr2E2ae8; zg*5d*m=fL7*sJ+n>^lzf)UvWI^gTY%#n3Qq)#-@Ki*Vf-JDq$=wZ<4!FiKaeKRGYtKUSn4SkKI zd@^i~CeGP1`?9k?EezsqE5_+Km7II>HSQ(ZgC3rE3^Gv6B;hBm9>Shcu;O*RoRb!1 zo%VD)bmI2|d&ftym(KW~VJmUiT?lufQ10_6t2C@KG7DYxeskW58K>EGpMNaMj0Zp+ zH{2c+sK6o$rUs`E;==NT);A*H>3(XF&j4FZ8HE1aY!ih-O>8RM=b}n8JjfKo@|AQX~xm^l*(Y=GRtyRAzx4`x-Iv@Qzh);cO z*gKREYRwkUeLtzt&r@VOf^9?%Cr^k5`Uf_DO&J;TB{6VwWptbP7A7FWR&_ivgVWhq zJNQ-D5dY+}V>fl0B0JAuPj5yVtEKii$yJ+id~@CP>duzW(5|PR=;qeiOeUejeW)ix zRgU1%rWEywtmF(Vh6^*^%WEfM*40DEOPa#`y z2f|aUxR_nOP@kve&I9p((VQcJ_!wh3ihhw;rb;fRc^PtF{lXlkj@u@T=-tZ&v1L>> z*khj!*MQxS3z5FV;ddM^w$maPJ%KPOkwFl=2ie7d889_G8L5RAgXB*1#6=UF_W&3) zTv~2+W>*8@6lGkrpwq>}azo%+8E$)BnH9)`-0q?RaYKxfGR8tc{3MmUxy7)41y|U3$LTfHY1k|v~?s2+58pytZthUQ;LnLgdq3`Onhy+ z_ZLc1(m*Vg{&m+^s&NO|wBt|Z9YSe*yti9Hn?q(C2*&X_<+Gx#-bpg5vv_s6+ocjX zBG*QF6PORb^pHq>YBdnKqeEYV!(a@l+C^qquAv6z+=9h+b8?L(>WD&dWpV7C6PGz{ zgHMx~Q3FcCi&}JyXTwLJ`#o?&}CsPam2xKfAI?D!0q&y}X*Ay^j2nscA2)%$E3^g*yhp z7jZz)&h~>H{3}GtcSUP!kW%_}+*Yw(_ML662y#7b9j#v_$HaAyk4NGbV*FA$!x$$4$3wSZrS-0&IiGCi;bGN!drfTTsH_zO~yIvkz{CW%0h@y`W&mycuGiM;c zlUnYd>2$8M%H5=N0W0QQV1Iv9R;mreaBJr<#-0V4YOnqt`+w67O7hg%JOUrSlQeKqku11Dj>5o0Hor8+YjN4%jh?tcmvIss7@C^Py1ZxLu23eb!@I%k{JVpK(sIIf8OknLdN*j2v)5_b zx9@*^{T#az^bK_y+JDdO$maS|eX+av=oy^5FQnAYk=Nh3_5fJ>$({!F8zT78xR20* zOQpxem7P&UNkmbLjP(traZo#wUpvy4@CH;iT2pIYX$_@hL}zMtaZXNYNq>`vPxCXD zfc}&W`6Kd8`{n=zrgNp>S}C@x`0BIdYO8#h>1a9=uzwZHv6Fm{pPu>tFm9i%`Vr&Y zrRFtPjYQ;EXeRT>Ih}gHz{tb-*e^i=qz-UWjsADG>>=j2N*K9>OCJ@xn(%j3CPS=u z+U?Flc;iUsx5ush$^64FYE73-#g3e<`{eg5(R9a?pYdgeo*L$z)TLEJrZuF|wU+d$ zG_3Rsw;V(1PO1XZRox!)8BQ+xDosa1y&23xXXDyvcnibQs=TO~ue_PdrTjr@Nsg74 zct!>dur$IOYr|>9SF!9(d()BbV?#VHuTyH+_fUUYwjpUw-6m67gg12pB8+C!74N@& zgdU*y8kV!^$G1NP+n^SVPBbd{0Y~Ek);E(_emoi$KG~$DcNfs9pJ34tib*6i^+R4P z*iLk*RP;ozwU-oSi~S+^IT~9Tb?FupE^=uIy=~>Go2}SZ_miiW!ryY9?2=^+&K4YC^J--5JQM zyp27|CXzKw{q*L7+cH~pvVdi8xUi^JOk1cfUFal>2BHZ6tF*HWiz8dRHrBW{?oM!r z;BE-v z96GxRsZGO^IliG7uiEsr&-sHe&gCuz9cAS+FZv|7mhQ^5vp=}5S{x<3)spmQ#s*`Z z>&y)hIQFBTw$_Y<4LxNuU}}^L^1vF~p6d>(pI${&+mSJsrmKp3U76TOl29_Tv{j&F zQs-Iw;i-8Ji4C1fVt%Ygs56RX(2RMk$x2&4&C`li;a6*IIA&<(c%hj*SyS|{b9k~e z^E1K^`Y@V@j@kp8(XN5*c$iq)H)prMKhVqG^+ju9pb&5Xp`g@s?-iBYuf_S-@<`^c zEBa45>8o_69f)PYUgzrc7eeI@x&&ZB2kXL_a?)q#3hfQJpqOBG9|@e$n61*ZB#M>} z=hT-9gF?~Ws&#V>9;^#L)+Xo9#&hjOY;vw=P;PkYU3vD^N8KxKFV2?JL?~k*%rJ{`!{-5YMD>Qk8rCXqObQ~+OpYz*X+Kp_uD&h?FX(*j_S{1 zU+5>gv`L6=yt8#~`_a3%bZYUHG|;=V|WweeNeb+?o>~F-kaa`__#KkL*Z(rf89=~ruu53T4u4oF8a9{ zFwJ@9*d>ks%6H2Z=g*X# z1{80FBYxCg$AD%f7i>#5^qV|HLg%)>&2?RKV@zroeg=;o~BF@fMpS_9B427{WZK}BywpT~RjNV5cO{_rX<|i{Ws}~AqRyg+tq>FH? z$j*DiGE_&qT&~`dbp^#F*_(}AE*D<2MC;#pZH;taXBahp=o)tr{X*9#x_@h5f8ZyI z)e)i;lyvh*G}&X{`^b^FVoNAF(kBIk?{mH8DPKgbBa;@M>zh^1VW%r*i=x(h ztTy269JSfizsehBvN&yke=1ZqZdb3cFh^?BdHsYqIm|XS^d^aWp^mO*@N24f0@!h! z11(4vUc)xBoz-RG+41`0#E(U(* zZ9nWQM1fdo=(wANf zG2whZb1bJAL8r3Hwe_J(d9KKGdy{?L;}f|y2lVJ#S)52w=h1j>?~yw2z`jwlyNQH% zXYP=R1?701S>5)gfn|HSjhp4lobYWTIni6jj53}h&+DP?H2vND>v%MtwKCn?lBJ*+ zQOonYHqB}LVs3%d@HxZAt2FiViHaV^GUoi04ZNf4N-|>Gg@GhC^-=tH%mt|t-v&LB zg0q9=JJZN{BvirbNei72-P;J9;lM=UqxR1n;cxkofyCQ4vgO303#6R_=)EjQBe$mS z9;Ft~^eBp9XRJ@ly5kRK3pF z(N7qT)DCcvweVAYN{Ku#jq+|9pSqE13?^)pyke`!CJak$A%ePUo>&npjYIV2r}XUH znUc^E+Iaq(ZIKA@dV?=sdhyw@whZ}}qoT5yv0?i}lzeoKeF363O`rJS&%(j>-yjbKvn!LtW+UsktJ1 zj~RK6{jrFkU2zdy1aS`N8wH;l+)keOLZ=kcx^{V}4A?17l)!ZjPWa|l zEp~_8(1T-s7a|4>tzC*siLu46_^|sSDVN{+8)MN=_OcPc!5(YKi+HwPa4JBJaKh%V zPap=-mS`8rIOipI-(soz)SpxQ zJfDu+rR+0}gnZl;@F_Sj3$^*{-R@K;g(`J;97$i26|~Y+E8~YNm664f4M$)3?TQSD z7C$>jVKJ1H6RKNXt9^fSdvXktT^Kbrl54*v))kSaE18erqlO7F`;cZG_+3nmFFv?_ z%Mg2NpvF+Q4ixvh)m)eY=};l4G;E!gp$su(Z7Bxf#VRv2pdSq`0uvY@8DW|ZOQ3}} z4GJ;dA>6FDvuW|gdo?r^dIUIhOK-X|idH~a(BVtQoJ4ZaZD@I%`(Nu|EVOa zgRTVa6H%q}5e>`BZRapP)1}F+08(@hOqP1)<8M)=7Lz>Dhq6W-3yn zxRH+GfPoAIPlhTZLnJwRU^8A0z))Dk;qX9f%pg`8RL!5zswpb~-V_+Tj2F=iUX(f) zVTKFP@zQYkW&}OE3+-FDJE{|nVb$E79a%7F38yZmmYuNflNY-Cm>>}x>F2fs))a$O zeY9_j1*mZeg*72EX1;-vK7O5bQ_~Lms;Dpn#(+aV5D921}t zV-@l7s0a-qTu0+f>=cI(Il)Ew1+|9d;sj=)(G12UH^54-%TKBsN>`bSSbRXzF;wk} zDTjYUtkX;wIFz3_6LTq_5dfx0D+oZMfTv5K!iJhzymWsizs{BSZ2jX2ZZ+Mp6;_eo z4hrNYozI~T(~g+k^CCF&k|%+e;NV$DmX>awEe|msWP28~Sq*4~h-w_7lWc!IKs9cq zA(2(CS#B(V+l3C=t0big9pYySuxHeSZD*P1Tb$Tz=7zuvBqEO33Mf+`Comulh%fZi z!YuYN2BW=s$xoqyq6cu|C0rfsQI;ynVx6TDVfz9bq=1ht&I?}LzB16`n~u3@N6i<8 zESdW&Qe<$pnn8pW?VyRN0xR8Ms2{1bgTAV8jOr>$E(s#KhgYKRb`TYlOttWS#fj?U zAlk+=tcA7D;Tb$^$ZX zRb#+vZSW#9C|W%%Z-RHfr3qwxnLfw@R`!|Gwe>|gtYzk3)C>FSz$8vKjhuMbNWzFz zZNVZQ=_&9?T|9*xf(Lsc>lxZY=O zLQQe_4(}&gq7F}PM5-!`o6@PU&==UpP<4pZ@I4{JO{f79T6OXnlT0l-CuZ)FwBTN_ zD2730X!v5)@D<}8LP(|YC=M3G^P1b7jq;kSeW|%Y(b(iD><+!8eBDb$Cq4S$?HmI(lXkxrz&qNqrcsYJo zJwPKhLIWFo>Kn#H4Z#`&jj}aJON=XNvkgiMfCT2WY%UNA5}Q-1?MY<=bF8>Z0+m50 zc_U6fpa2Tb8(dBBxx3u^OiDr!WLJ=69vgb<6HWnj>0uD$RWt!t=}ivsIw-mU2vw5x zdt>BodL${fNLiCUXlTC488f-TUli7mmvmZ9$F0M<9`U|3?Jucw^s9K8lI z?9v;0W;j^T#6(356z&)}H9kX>e7IsKWXUCZj~=^5!x7X?BF$DHlFer#8-+G^inJin zpi2reqFpM&&&5&@bQn@9yJ8SM3P6jcYoT8wqu($F&l_e#5%tw?`vhx6uwRE{gVPQkr+!V$ z_*wwP6`!!=gR43-v!fc(0DR-ZVh_x?aepL^4&@sF)g$POedzE$Y8Iv((Yo1fm8MSS z7)(@$2d8c~!pYz_phDY^!xxoMDHAlKDo6%vL7X`>l=v21uMpLBl8RryS$t=e-eRj) z<6F7UXmN-d>r{rKQ7Xvfskj-!g%H6Trl3kZ&LIZ-H^(frOU-UUu|{xpSF!w`vZImT zQ6$Psm`w!u%_l4TUKI~DIaDTV!N*##Kg^@ zcB>>mC_RTE@s*eMhxF(z=p-=xG}q0Srk2=t`Q@XitK1b8(6hG#^A3kN;^@4-qdEURj8Gk@^4{E*q_EU9H4B|)t>T!F2~@Z|?^+KXIqRw%)e@`7vAkMXiK z-puB!V2_1KiuM<7^QVG!3K!dNrrALjU=y+zq;y0#?D+8ONMXRcZ zQpgw>E}ablM0XIN`Re$>va5|(tCw9uuu+9{lvDZ^S3RBfESP+Xp_7!_gOK?Ucr-9t z$B6h<65+JrRQ=Jc%$`-!c&VzQgi)lcgsn9P&`m*esTY2c3oa<$kS+b%7KPUM_R|}e zX|fP+&sQfmrXH@x@kfMhMmc*aQktn25Efz>};?pW=dM6G_c`IsYy<0PxO(EmH_U3E6 zb}J|&)7=;$+i#dJdTh%U`2BR;PvRm+SW-y0N>;S%ylu(uR&VoE_U6o>{<~|%tmqSk z&l7js7+YPZvPV84*mV14qwn;`5yf;xe;ljP4HyqLz2D&cu9h=kyq&L*)_bD*fj|Dk zDA$lnkiE@w< z7T>awoqH8jknZQqtVu^)VJN0mCI-d#7Y7-;-i+)d;iIJ(?_*?IITEWA#{?AC&z+7^ zcj}5Nde!r@s;}rL1R1+~7G8-Cu&YZYjSB)DFAv}tutVMWJngo>E%E=b{d{@PlkaCY z*i>qEq8dCD)aYFe$A21{?sxe8)vNhEjb57>8Js!%O;OZZaB)x?kP6`?4Y3SxEI1ji zJBJ`TepRfE(AmVSugO3I&h;gTx@9-aK2Vqr27W&H3OD*}@KwP8AXeU3;tPMUD@7L`y>#k2`+uXPu+@@b?`V|Z3zPV%%b7+K}&D%Nk zSXcTmk!5TFaTIgD;><2(_9Oxxj~2{IoWuxnV5!tHwcG4XvVS6fA#;j{sVyI5CeOxK zSvw}!r@9-+(k2bx(2)ZjB4TFjs9e%|QEJBbVUi;L9l&0*+f38zg-%ELe z?s9%66HV@PI6l1DvWy|?L9fsgQfj6_++mE<9FyY$oZVH^ zJi*#f#f*HV9_Xcp-Z9>PFw4VgXj%u|+ewpWoSoDC`iwBvzz{lIogvIy1!&LKqtu>* z$O9PH8~t9af(fQ|B}L+a-ayNI2`j(h5=c8+zDW5gkeYBWt3@YohY^;j71f6lt}uJ{ z%$0|?bUE2M!-W89VlpV9#b2+$*ZhD`l_Z{42~M>Phqkka+2(A$nf;Z3vfYz59GjLv zccRxgv|U2h6_jl3f_ycJl=X7Cv77z}gbW<=U2#=Dd8i5^pQB4aY*fkiyIc7 zP@USXd#eM&dIP_K^MjEYb;S~C7x1Ea2{@4{%bvmU`?BW-=C+0A5bq?5Tn?bY=*syq=I;90&$PE7n0HgCP7{(lhCQXUotE~@4C|Wm^~1> z83W4$Xm7Jy=ee9XVSCI{nVuHSc!ub>ro}{%@kFUj!t`Yvc=9*6kxVIJ0S$S_v(^SK z&@5Se`?8+u9mdOcA9(i-t-))0P4$d)Lu7lXO97VS$EEgOL za8r%V_;XT`sme(Thv%(FJgJ5U< zNTUN`8Z)Lw7h7?zTpPOXX-3cO_q3zF=KZZ!t__7MeUgDxk$oX4z63`f>mvw+eXgwa%o9Wf!>BJTkl%iTm(rpRicJy{YO`IvG6Y01uL zg@32w7(0`83CBNj5TK<2k>K|*B`m~k{4%jx|710_Q^k&GR-GooGEbj9%@y?c; zj%&7$P4*w#WT}X>!r-q)OP)dFJM|J69|B$Hst5XWFUe6x06lhE-m#-%uq}uaQ*=aV zb$H&|H#$vH`dpEcG1corQnerixltT?q_cD*vy_UnE_Igvvw#K6aGlU zur${N5sHEaVYUe2Y#M&7RYDkmUifQqDEcZk$f3_r|ZwC=uN(KOR-0w1>Nn=Hw2tPQyf!42^cz+PmC z=!?YBWgFJQJ(rVbd?P2ul~o?ZnsXn1U`z~Ujuv?UxC?hCGTBL$7efhe zI7dg{8rY_e4$y0T^<|jC0Ax#a;ya2IZCc&tXj>j3JiKg-CfB1&-CZ_z?u=XSl_A@_ zQPVfDGXA>~$?-Vxy9@-9j)V7Sq*M#?yHP5k$hd|Pm2J*uADnqRDJKjB%SrEgQf~M_ zt%$_pd-@?%{DWs<*T)sdhZpkeEqA?zl|alqm2w>`PIW)hswj{Ej&IgA~UL5(>NVkyiCtpH`SbFXF=I+ zmsoAJZbe*ywy^4>Wfgb^SV`kyqE#O_$3PowQD#aCY2BYKke_9=1_um>Yoj=V-S!^k zD|rwD(+HllgjWkV2`4CUQP~3Kkj`j7WQvs!$H$EXvO4G?$e4}zpcF)B0NeAixG{kH z$)!wrBVg>j*Q1`{cD(_u){r$(L>CK#r~^hEClzpBtfeC(-)p zM58j|vzK$xRCgKo>n}PUHFd4Oek^TNPT`Zc1El2v8ge(Sc5@XO8 z0pEgIl~eXeNCG-eDo!EQ@nqxNyIKO|qybJ~dg6E@!QwvUd0pOQ;$#jZCZF_*r$>1& zd7yPDCK1_c!xt;Fs9-jk9;=|hz&}vk_zQc;a-P?y43-5;79*rVFU(!wDD{~+Dv>a(a|Ed%$G|L#oop{iW-X6{bBDnslLDhhK)jI?bUcvxkJV8UE%g`+N6X! zf@`H)Kl3Bd!f^4^-l$p5^PYR^+P)vE2IP96XG&f$K1aMRlSOoZdJMbQ!r zQVi*U3ZdunM??X#3sIo8-t$eU$Pbbx@<%>q=8Doj1VlP}DlX1uN)JVH@SVYn~H-gCMP2N+a0ndHmxl9t|x6c^zGa~dxoNy)EEQUU2 z71xT`u2fhp7Rki?ymMv9j3OTPJ8{XO@q_rWUsH)5yqB80yK`a5;w!YPDiFrYUDT}S zNnx@M28fO)*7UQK?(AV?5_y@dOqT7f9k;I?tiH8F<8rU(@kmMN3N@=0^X&y*m%{w|-;Y4LPVvkl24%zg&UtfInSL{uKD<;*cJQv$^Bm z3#|HQ`X0tr-Pc!kANPBB)nBRn{cAr=OS+E@xyvd0kIMgKC;c<(!+4zg)cw0D{HI|# ze+B;Sr2a8#Z!KklGEGe7=D>O*7H`%p>3U(g3OsedK)&j%>Vg8|BTXR7%x zssDE6yaWCWvHKgD4?Q{W%d~w6yzkKY|Eo2a@|V{CZMr{nc)PE){~_@HZty>t|G$r~ zhfZVnkC03KK=S=s$N%XF5AC?_A7Pc|*AX6?bN$u1{$2P(Tc`WjU*7-|BU;vf$u&SU*H$_5AA&ajQp^Z?LOH| z@E7^N`r7`U`^SRX`&@q6f1l|G-G_JBpXIfGGrJ$YE4h!Y()@+JKUZF;{k_^h?s476 zs_Fg0{$a=KpOGK#cHAdt8T=yucGdi!#__|&^?hoX(J!jWT^8KErS?Bl`*4wTpG$1| rK<%$5-hW1Y_~d+_s$>2iwLg=_{)P&;dr9`2VWR8ZrhlyD@X+7z`&@Fqb|-X-R!SSy{ALczfktTm;oQ)R!2Uo{61wcT5v^ z{vD@tft{cN7upUz|M;y(>$%Mp5FgN%&*VC9xAi%7@6P0Pm_&+d*gs4IEp!4KGWsDn zX{-xnms<30w-DBxm}+9ykhC^8!(L_KKFOOUE179--a=B#<5LNrSVtgU%Q%)djEO*X zA`4wqj&z>gQ z$eM5ap?g>Y?B_%pb-J6jIB7aU*C2mb>%X@)^oO;KYz-A0Z0-Ih25%B$+K&JM04_cZ zj`UX*hPDpI^sd%c|2MNo#7xPpFro&YQ=H<_>RMwIr;Ao0=ZibZuoW;X;DB$9*U0oNmmFW!L{q-^BaWd40G8yt>{m5SQ0WXLb+VhVFx^V^lh{2(%p$W9=Jst01e4 z2*g_V@7X`OF4V3|W<<9sGw*hXfQN{6Nj5Wmn0jU>=?#%EYf1$d4ze?}>hZ#~7Sp7E zyMU1tKBO}5avb8LNN2Q=AmOLZ$BaLnpKlk00cB&&YA3lQC1)u6w9*8`c-kSTQS{#U z)p~&V^QKmrq-o`pytPiE=as3sQ?ue(J|ga{1^K%Mz1UuSrEmGjR)ad7YM*hnFh;4H zy+%dif`CshgTA`=*pQ?P&o9vX{u&--Tj~m$AA6p#4TXVa#~pj)x&fxklu_4w&-HDK z?kpQ6ntMCetJdnSN^3N=brk*fRcq?`e3A*1541TmlyV~vS_#wP(?L^Qf{)evJ+g#~ z2NXPYT%^FmdxBliPr44sQ!|v%9i%)`@Ez}WxK7kxZdcQ{2bpHE9 z5|P~?!1)-{DsTV*@vq~mZ)f+PhBg1Ij_oods#j*+JK}D!2PFu&RzNt-a8OY%ByqM^ z8t*=28FzzmYuU}hIX9NZVga9%Tg&}wYV3AwY}87klDI^boEh6sk8~Sc-z{zo3xS`& zrL8COpJ}Glrb;xJ0~B_bbYAa2t;*Q-+5s3u0S?;_zuU3MLbg9qCLjM+-^`nAFv8br zm3LBvf@c}alu_V61hx{OxL#&C3|7jDU@nB`=K9c>SGY~?c-?P5hmY#G06d67HKjc3_R_ID5D?DZD`K*$0v4{D)?lAb$>v9 ziVzsw2w-LshZ*O^mKA`tsh@hOhJ*AJh=tR2vhZZa&JWDXo&Dh&(E^_buo$6J|Ua2$j0`*JDQ`d)5V((PIp2dVF2 zNUse@@qtZb3}bt(k1o~e8xxIFMjjlU6Vr3SOdq>bL?MR0R-;E6rdkbIaR)b=aC;D_;%gxe-E;OLP*#cUKO6+?9x zHI6NVB$T-s9=-syshtuDoWF2E5%i0^g5|Ue6^5zZlBF?)J6@Y+2>|}x$wUo}hr2!& zkGzj13FX7dv_x!eoQ!RpbicaU89VCyCqL^;(6U@*L=4z~eMAti?4BnNP#Si>j)J|( zhhxp3&@^vDucw!+mAcyi)~&MNQ)z(_{!&FUE zS*x)QNK{qtk{AxNTZ zdO|&j-b2wYu9r?=6UT|wX_?%r`d(nLtIw*Myz>V5q`uSFY}GJ)(O^Sa2WrCPIeOd9 z)y6p_DnvVIp=h0MQ=u`wSqO8x@#qykOXWgq3fa?uz99ydJov+g(oie}#?9%cs&VSf zm_hsVH$VO+?UiKV&|yo%%sxHD4AMy@16RT)Fsi~22yQwg#LvvSPse-B`=T5`dj30`-u7j|0(jH2-hs6fB4ef-xsVutDD%`IvG1K z{U=Atj~laDVf;LB4t570coq_uZOKg{=SwyiwNh1qkTvW;`xO~N+9jot;FMD?5JYVL zK~Iz5<&t4~YwL1ssca4t?!j-Yz|VM@hB9IU?d0*^;+M|tdjdD#;1NBh#gSobZ7qkijPqbN{mphYk{eqq zv3rhUx)mDg6g;(!4ec|)OJzU(;P@LMe~-Djb;aQsEF0Q1r8%PEwvwc@HTJz5+rr7M z&NVfuP!qC6P;Pf6{Zkx60;*zv?OCLe%n=Gvu0B5Lu(d|j^W$1$&|K)UG)L-<){)76 zk4P=oZO)Zi_m9QkO2MlF`-=L zv|7^pluxS0tNatiR%!R;%g!vmGAgtNZtRbQye*>);|xQ2kC8CCE`exNA=W{1YhwzQ zPqE+^AZrAZf*gSMhtt$!Gu;q^#o1QO@C<}c*q2`{me$w$eqW#7*7ga)3is504szcy zxJU>0-|&9j?dx$v^ae_1Rlj_*J4?avx5hjhpBM*ql+h+}l>_z~5^&4{Bck}8fTk6j z8|T1@FGpwLliyZ;;&}_;AOt-TQuPPL33K4AkX9Bo14A&xA16Gws*sB@tWI^J67B$0 zr@l|~!E2UTWLd>6kcL76#Q?Ta^wQLR<9B3bV)yb?_Wcxd9Z%+A&W;`u-R|6xKkF$nov+Ael1FKWsNz-6hF5=UMI`RmuPsA4a)+DJ0OR2++S6ic)k1PuR8 zLhr}NQ;CfNe#6B+z2-09DuOLLtLeh*Dhi?7%dMk*tV8a(2Zkq8%Z6f5!_D&X>oF5_#H#cw=Gqm!{`I9mp&vmT8^JlS7KEFNu7CyA!{nSLFh z4rvQMn?3ZW+nzLFXCmMU4TWl)E)bPXll+jb6wY)9DwSPgf*jYku3-D(4Nfu6UQXNL z4rka7HIk4?E_sZY_ALu|t;DFhG?Z18fp6v-CK<`#g*^mOm!Mx|Sd^ygF9YBVqIUZ` zRsxqTaFVg9a_A?Cp?3P=g}MB)6bZqj9GpSU$)L`IjnCJY zl{7Rd7Xr{tt$erJ713n2g#$Gk%3%xkB+KEz$^VA+##hELo_c#nbEM!?3+&1rZqvw| zu+xh$pFd?moLpqKo!^J`uW~U@=>>BhZpf_${ko#B0Rm&{sS4=DDnbJwiCaO`nTXs| zT+P8xFLku6`>*C{X!eB&5=yfqZ`@nS5@iO#K+2L8HGY$9`)tTSwtTK_P-0s050U3k21u6`RP%Pn-vA{{TDL`fKnR;0O(}{0SJns0RGYNzY5GC z4x~mOWkmnhr$2wXIvq3ne`@|mhm1gXBnSWK;y-#eZ^gQa(}b7f3*?Dp1SWUgtLL8J zN2Weeb#ioid%!|kEUQAOho2rZP_-}U?L(7;?iFn=Sq>CT6%?II02~kD?-10Mabix3 zY15^Pi=YIik_0+2+hu-E*X(TG_X5CT*fOkkfIP2E*3d^bjvK6M#Q(mn7i1d~I0X&!1<0Mma!W zqWO>#xKj4JR(ps6hC)jhH`B8H=JWy8*g=oYdpsB1r+{+X9-o9N@f|BfhJO1?NeI2f zoC6g|_`3h>eu0qUY6yFoghlOg11lL;|8Wtzs=W zntDpFR;T;7ILw+)lt!=PRf?xy57YCXDI0~IEsWY^Pn#>r7Y-Fqn|o3_VFTp~!v$X6 zpsn7%96z$~sl0vByr5v67b0Tuh&H)x{zSfo5R150S^!KQ>bZyz9g+S`NVN@+Q&xo=U5YNp48jaOy0IT zQ!1_aDV8>eu3p+`!KdwACsiXWH}|TIQ%_{@#PCqtj`N0InhF}?>xrSHxIQX z3)l-dg_XdMSKn-DTaS7r*D0msKg&lC<_aPdp}H6h{p zrfS_+y}S6=LPPVb`4RRaRah?liS3II$;V6*rrst95Or6 z^GnO09E!i)Cv{jB4xZOvvm5M*AUlO<8F;b4gqjRh1aG&oggSObogLNo*Q$#@aW0uP z70EQ2px_>XN{6E_)DY*&sh0q+;DzPqTNire4TOI^$T~>`3MO7cU@uyH#dH|+>e|8T zD;j3=kvh>cMG4v{WG%B1Oxb~zzcwyn#2=X_t-Lu@>9|H4s8aQpj=h5g73;ez{Sihw zMyHw7rvH0AM|wk%rqTEu6irk<6jUW7n-cn_yWyY*EjCy_vgfM=vF@n2fd3!_Qee)Y z%GPJRP*2v3V_Bp1QiY{Of+Vetb;+Os0w28TdAL~fz|`OL_|ByiRcu2SUVK5$!zorp z@->uSYOIn$w_E4VIKmZzV@ixj+=NtQIRJ5}tjNF=`ddYF9>&0mdMjKHBfODt8KD7L zuv;>`NRRpI0&HvUMdsVHCva!lS`!F7j);szCtfZ%Jc<5m(Py`U%j2DrtpoN2X%*8% ztRP-!?e525Dg1m?wrJWu(bD}uo--x*qSGE~GrslmG_LRmM}BK(RB&^cm9A^Gi_=-B zR}wUp7$RA;wYSpvuNnrT`2&*U2%H?GxMnp3SN6^d!C`8{@3Pnl1F>EW2ms}(*MNf( zmvZ!h5%g?RvA#oxzQcpi8TqgF`HR$&k+Oaj5P0}-z@XEI+x~OASRds%Hddz+nz4q~ zE?L7why)oTNRy3pn#=vk#&fA#j?%MjwVqo4@~p{G2Q^R6!9XKHM$$lHZ`Z>`VDh-% z>rZ)IFAofA6dB%ZVm~3mN0m^MSffMmu!sEY{8LI^vM1myR&)S@l;~?bj{Ni}R5=z8Uu=|xgpjnNt zP&w;huXs=O%sW5CNZ6|rTI5iqebh=to`ek6z2sp;?5mT_?}`*iqXUS|M(SeFI>Sw` zynIE8;FReE@3Q8Htw4o2{APBd}x+4(D8@!D7`oa^b#8ZMlL@W-#C0CA4cBe z*Ssuy+CD(U^;&WHlx3-`W5F~1o66NR#?IZ-YOKslo_mz;Ej}`dPLkDVl4c7MA4iHS zgTZ%^t4|c2H?#?gn}u1MD2Z(X%t6`c*d+u^HW75r*FwL0VEGdzGmORuwjV`+6>Bww zd7uMfaJ#oJGeeyz%Z&sT;4%kMDXxuPc=xYT+l=C2G+%C}i`_RLXJ{*^H9{ZD;N)bpgR#AEO`62!xmX89>9XM<&wQ<9mo08z3w+v2A zNQl7ro~8<&{KXl48GKPbk2znwi&wSG+~q31)DA|nFBhNNgE>_53L3~_V@W|^MA^sW z=NN&I$CLnR)>~r6W!UU+}T#&enOI3znnAdC!CyyD?t?)8RNlT&?I^@^z`5 z-#BsII-%6=RHz;F&axbU7baGJuAb11IcFPHY%LO!T8n8-li^U@Q`$FL$s@QVH_iYR zY6^YN>LP+`GgWbleWA@-i{K%z)h^pVgEK|DeoV5I<^7>H>l}h1?Xr%OAt6HIkn7TM z|7~|UAqSj-q3~K`vn?lU<8~7$1y18awP&=v#i$D}Zf!`FlSIaG#IfNL3XD`5lhjDi z%dd$M9XuQ4l|WoOi1E&<1ELjTl-(T*1XGCY_^xefPmF&EEgt^s?a)i{pmy}hoXuNXhL^-DRi zfXO1&vLdoMetI4{(;B7^2S|7HnHYW<>ftcw3uHBJq&1#CacH$CScmJ57+Gy)QZq~W zr7AS!2Rr0U@JNY1vc#NNUta0Wiw7rW15FvQa<)HqEN55Cw1Br<-Y*bwh90}5Je~f# zL%)Kjt~F3z3dq*cJ*4h)W20usrJB8|5opWTTC8e*#*3;)4%#8Jo{zpK_)1N>{jt1lh5JGR3_y-Wu^#>55n`Kn!_B{1-+Xz#^C<38C zEJWZe>D(!kEdIrrWg;ra>)wtwHFVb8HD4 z)`dXXQXIwD(swFXfryYYW#N0JxZC48jmXKTOY(bFP@p#Qtl#Mg9lx_}saN&+6FdFy zxtl+ju0QcECo^Mf>#-$5cjZM zu=G%-C{gbFxh5QoOlGbaSqU6yof$nVGwGM|5;;YJhE_!UL~XzQ{kwE|Z~jY)AQEb^ zk1tTb>fB_&T-u+~!mA2sl6mj3ZfZK8Sh*U($(5(XgaoA9H|QZ|z56k-m1ViMO7QJK zUDQ0->o;+Mj-_es-EY3JZ$-sNj#BWx zK)Slkuv{;9HLV~1)2_LeY&DU_mAVc4!rBbcbVG2p@?)Xi;KX&&xC&*xvyt#6)b(ArwNDrYZxWJ+mHsrkVI()vEJIcZL~8Sh0^|6T~c zfd9o)3sEJwl)oE4GT?q_5cd0Ll!&O&9K@JGP9Zd&e^3{{D9I3EJ-`xG8hAw|KUbh+ zDC!nN)?(?E1Ze01z1liNV94MnAGpuJ-FSX{czfOU5Wvc-5W3kNBDdJ2c668nJM-)8s{eXBoqpa z1v87}(E|CIsH&z{9G5bfD4r?n6L(pb?H6BvkcHg2&+9RRAmqR2hSEcOJhIcwOaR{y za$)SWpw>~QF=uXPRk>heIT>*hW0`F*eoq>;`s8%@OZkN*Cx5*Y(X@9AG8`hxVwxju zr+}wq3tlrRi&?PVlgjQ@k6j7B`HrPrGal7iTo>)92R0bsDSZS1$w~Kv}bypWN zPy=uj=e5Q3moiQvV(|qACq`>!iNwZwC?BdISFoybXK6?I$}8^`jd+q4q5&(xVxp^0 zRy?s)qLpgFP#j=?P?B);2?_k5WO^FistSJ<#QTj5QA1KU1+91* zEeUl`RxKCMrA(Cdz>v~5R^50~!}v(8YE8qkJD;T~mC};7 zM+nzFZpmzs%1}ikNn|OB!;f#xvJ1rcq&k-2&vb3!$g_n?6`=UNIwLb;lnmB;u^_35 z`7`R+c73A6@$2AddrC{?ODjpPn?5tvg>IagfX`M=>^IgGrsKnSRueMuTI~o3ee*2qETM}Z{hfPRI zyY@*~&*0k6@LlJ!cRRvJbw)KM-*Bd%+urxlt7eV@jR~aBPLA)qOBF;5XNScN$8;8na?DFbccuxLYeFlju7W9cufF%p9Wf7y$tRJ!8#YIY;^6(@I4l>wpB_)fk(bvt)~ zW)Zj-MPI7=sUUQciVA5(LfTnXxW|c73vmxRu|(fYSY`6#Kvo7w5mn5jZiU3coBd4g zCOu2a@iZd_yFZ(driR5kWVQai3kA6jJi(tCEtwi1JEnpgRDhUWc)Oh;51=Po1{^o- zgFeV~7BiF8?_iqLEJ-quo%6(CW3U}W!i<=X6N$8|3ApcUNp8LS_IhE%antSvWP zXrZc3=lh)3A`m+0r!`VGVC~bACK8D6)4I;-0y}x&#?SAm81}|K$1SmV_~{HoOx=4C z@c38BaHU^Z^c|K*H37~%k9>Mg;1DA&6A)CV4}Yj3vzqEpRKYAr-N*c--+-s+Dqje5 zn}zifCxJ}dkR1;RZ+Gv?@1jbb(`(d^T~?a(_lcTf_!kTFN1Baku0q=WN1BcG$LRi- zk##h7ax%9u{gaLPk0To~DI?P>_!;oK^|ueEgKgolkdb*SrOK*5lqMevDoX~2 zBMjz2H%dBg(rC0qZ1tob)nQh8Bc^!%sFCy`iLkU8&XMoiAf_>DD$aDuaN(4yo5&2LT zaX?gd4~C!QQy?5i5~x~J%jy$K5)l1*sH-O?QGsI5pAD0?INR5R{)9iwh>=AVmyaCN z@EhhSq^~Sf@0Y9^((6EyGUb%7f)t4XH&5RzIrD6ui4$Fl)0>)E5%VUIMs9l0#)bwrZ)M$qn zXeYE4_k#Ed-I7fltmDt~+8vDab|b{|bzO$1p~jc# z#A&|;h?V2PvxH0mIv2Ni##}RkYaIoMQe_yfeZ{%uAx>v;BGIDhufE#~D&poHV6>0g zqoVI?*-ue?pQTIxRcF-wa!R8SoMW(2xHyY=kxfg`xZ$4MO+8$ zeEJ}+#eb8zArR60NnB(7gSehy{~)f1o}kP(mj58GwHRBQD?ZW0@i0^TCc7FDiK_jy zYx_Z5`~7qZX4*oAe&6Gz{vfWEw-Dm@+L~65EuK-bp(#?De>Pk)kd*Sop6kK!ac^k0 z$&DJ)f#DGrUX9Iz4V%h@7Hw(VOVp69{hhd$)u>u|KEL*0^3iMOI9!EInX@(psmx#ZfOMoTZ?_r)@zz0|0SIYA)MxR@q@O8 zNcbR!{xRqOMq8_yJDG`@m>3&6{m03Fsx#uS&5ph%KlcJAGg5qXAS+eDN!7R}*E)RY zw0xFg97;?S#w2D3HGDMQI0_uKaCtQZi~5b?sf`#_HX0slk&5seaIcLENCZ5-M(Vm` zT>1%b8N53%zS*!cM%fw;+-A~$$|SJep#20HLc3ATdy+fSttJX7@OH7#>FLu%IHiVw z`Fv}0r4JqW)w!EEFuAdSBadmVJ7)hkzBy%a3gya3L_Akn;XR#^P zJ}{U3gN}}K4z1UjwQcIPaf4xwU(2u+X-0eIVa&jmmoR|x{P5-V5;CH6HjI(DFM|2M zy6@nY)jb%9PZ(b?uSC32-&^{;MZC>?TuFfyPlMv&+tAWqjHrRv;&)`aLq=_?R%5(D3coy{Z+v>O#NWmg5Dybs@W+*eG>{#GbFU zu?~g6Sa@C$Q0*jXHNYE((au+5ZYzVx%0aO5p-rBA6}(mkNiGD{OoK6Vqt2SE_9eEW zh^SB6cbbbfAWk=+PB$P=H=s}d6(?7Xc)F3HN0q8a7OUrP|3f$#wE>L)7A@0XCs6+h zbslO8GQf%2w@Zp(ZBQhgo=^40e4Pk~pnTFDrd-dm%0B4(bWBf=H(qxrw<^t%2&w_Q z%h~tjFSB~1X?`}*!L!5vVLw%5ZF>^ZF7Fgk^`!PhEYNU1FE2O8|l z1`|U1-xxz~2&yg-)f-?5rKj-D)(WkSCc7KJKv-}FkA~mZ$rOQma4LtxxV_m+zbD3$ z-@|c%oiegun7S#-V!>z8`CP})-B91Z>Q}@FWWAV7ykHGPT`_#U`V{9=9OHBUeLYS! z1&78nkgYPnX{Eg%AD+VlfffPw5Is$(tAubZxb{VexH`(Fo9vOb!YXyVkI1_uD;Jp( z#*f-Jr>qQFeHfX>H@~1BS#Ub%8M?iR6i-QJN(RPocHB=EhZcaR_0m#kcy|V(=f5YU zc=iJI2#&>ASG;9cJG&ueS2lks1t`A#jx1=QlMSx$&W{A2v(6>0S9}}u@n|g{JSxK* zh4F2A(iT*K^(Ga7YW+$MkkRUNyWt82k6Jbo1C@+)1^a#zd_T3%ge-WpwFZ|X-v*-Y z-irgslV}4G{16zM=LpvUsBl|wf>Y${09xxUxUOlEbpRpX798NOf<%OPx6n-p2SDa; zIynFz%7K-DNuvL!>HtFL%QMI+ijPlW%#I9qnKZyVh! zjk?dV*0^F===X@DYb-rMMf@EUG!4m^VBO}Qu#V{kXXY(rUmqDutGpi;xQ%n3W|fOB zGYX@BF=qMVq^)XcWTb+&V^O}3?@bvNUG8D<@{2+A<{0!De~m^OosJ# z?H!Vw(u++YSGj%NF5A`;tJP*J%$kuJ)<$X~?m%<2!1O9PN`_iXA$^5akQ=kV9caIw z)YX^?)B19b&1IObDIvhp>hs{wOTwqt^FgwP1)pYZklBsMl>^vCL z1&Gtcma-4$HyKf5c7_#Z5txziKM}yb$hKkADG^WSfu74?o>okRqUGwqo5VJUvwYd~ zDzFdBDO$ECr&!_bs~%MK&m6^hHCkVhFQUtsxuzPuorh6r55`+n=7}}QOu0n{%@XM< z%Dm0u_d@92Mz5aQ8-KzJI)7+(UkFAcqh5WRcV5luL4EQ)2z;v?&>0m6GC8+|xe)`C zJ3CrOCwg=&0udB{;KI?@nmJ+dZ`SZ8a>GegzMVq7&YU{%>-@~FP@36SFdb}38nQ@; zNpNO*CWJyFQj2@J*9GHdAq$}YF*Om(TPB5+i7X=@Ct45__rlD9<=8i90WxF)(^pcbkp(0lIZF=bIfDnA=XmT_##GG zMl_kVucR>MwMizS_8vSr0>8A~zzv5B+Eb0M@7Y*IeI8n2YpnGzQ(;SR+1q{-Dqhiw zs~jzbA~o!ED6v{Es-6W~kK0l?wz+k(SsC{>vZC45`^85kn4a1xGjUyU8L5h| z`>^vkzL88kFG-*E3tg9w&cu{%Pu1)_rQ8L(E~N2iP_dda(qfn-spKrJ*ZGzy4jTT9 zQ2gZ@Sz&f&bY78@?`vUr4$UTuds3EgPUj%?n>e!FR-Y7=rTqz~^<||uK>goen&F{4{YF1hk8rloBgQlS-N)3jYQLtKiH*;Ek! z*`5nZvtizWpWnkWDPlJML-JERKVlLpwb9DW&#F(#v>!o#!*9@e2Ab^^)pYwRB(3wkF1$ftVtu zG4_2+Lr7-Y5A<@{Xu|ufJmFtElBAfw87=4s#?Ic4wCgDCLtvZt@zLlDOn-^d-tAB6 zF-zM#;_PlEI;u1ee&fKXF4g&rnj6|@bvpj zqNn|f?son}qQ7-> zRtm<$Y+a?bgQmo@G$J9GaY#ZUy$5c(aSzScW*aC43)h@tIaXX13-d{hOTMLN`P=TN zXWMrJj1_}hXOOmv3f0eQq3$|q$Lyk$)H-_eTb?JD@VG|g$Y5q2#Zzb>~Y^&c;AiBof9EN+)i z3a};VuC6JV4BK=0-W=%0xnd$g?(j@PA}nAcFotdKS!S|Jn;HaQ?>NSk!mV<6HO8e8 z*0ma*@yx%~qK2f8qK2TE(hqUqJR^@l)@MffvpXe~4m-)3}+3wSTZl^BY`gyt&+eo2TKhe@OgJeDK#O54f6@pU`I|28eS*~VOT310=6nD%SPd`Hg+7;4<>GDnH0#=-IQbRlAy6_S?X@xl7x!_^MT- znj?>f*09azVV5cuy5v)s9N>-i5sAwkwa3!WP7;_{1Z? zvPm~b2K6?(;?AbIlbHkb#v6vKp1(1h|01weTes^5J^+!c4}1*yA7|x1GWq|10J0=D z4J}lqdRdNL=QaNCmS3tuy%Ma2uTO#Gf{WN<8Z7u$o&&FEKJ5E_YpEqUDRqDg>^3_j<~kXi9u_5c+i6ahHq_AO z;+R!G|6lT4MVO(&4oDn&*AK9=X3r+HcAL25o<{B?xQBK}d~o5D2ee((d-moW)dqL< z>?nCSd%Iy}c^gEj-lrc3+451H$QMWcu8qjYv* z+2N5N2-#iKX)$p_32_e+Y3<0kp0S4i42bK`7f*t`lJ={a-X9tE#2`$fX(XEyY3;~; zdHkerlk?#mK*yzZ??#1GFxhY7TE`2%Xx!HX>T6gLGLDHMZuH6BkV?Edwyf%RO4-D# zmy|EjMqDj)IpnuI{@*A**N*y=nZ>w?lS@5khcME^b+BQZ-rwxG+`2g@^PX5!zF;m2FiZ{oBywWG@O)` z0b@dh`~zoJcd)HRL(*uW3;qh;*%j%LGTzYrg?u!x;&y?jLIshbeOHzlfrTZ#)39v) zJDGyTn2~lWOiZDQBxX{tli(?|h_;4<2j^6Y48~UE1fsy2S_)?`le^CZISLC92#Gt5P{p5b z6NpMArPzr^BIgNmZhK2dcZ5XuyB|)oVGk3N)870UUCFa6!kv@6B*5}_W8FFRS<#;M z+|z^Cn2#XQm|1iPc99u9yZj#fiZS$_oy%EH&SpkV$D*{uX9ZSu%&UCZ`Jci6-JlRZ ztUd?80ssQzf0<)8&ejIT4jt&+2hlnuhJjVI^{iZ@N$Hm(tD1 zc~UZrB1@U$R*D`AbL=KgsHQXS(q!P9NeSq533Z7eAj9G4!5}&AW^oH-(NtzVI=3!8 zD!+9DH+<|*y0LS*u2x%#-UD&qvn*W;cKO%g-k;pwG;!cTKWn2bX26~Y>gqGTyqyxf zU#wl1<8Z?U4~BqE2jQ&pKliWM1yuX+U_3X}rMRdY-P(HCpG4}v7&<_tuGO)4LBlD9ttv|vXXF4U$u z3iH-nfjx-LjZzquwIE`$HXLBmZ+UbI@y9kPU-(Fzvck4$ej?TlVe)dQYrLt37qmwY zt1J(tkoPWE2VsG?IblO8gJ%q7S_i2F+S*`q-I?s%;Ja0T5-Vb8gi(tuwwrJxe^NiY z`xWsuR_$!tyyX?dExYq{jJv!Mc&0qB=43j5K+{dhplP?Php*a2!4YM++Tr2E2ae8; zg*5d*m=fL7*sJ+n>^lzf)UvWI^gTY%#n3Qq)#-@Ki*Vf-JDq$=wZ<4!FiKaeKRGYtKUSn4SkKI zd@^i~CeGP1`?9k?EezsqE5_+Km7II>HSQ(ZgC3rE3^Gv6B;hBm9>Shcu;O*RoRb!1 zo%VD)bmI2|d&ftym(KW~VJmUiT?lufQ10_6t2C@KG7DYxeskW58K>EGpMNaMj0Zp+ zH{2c+sK6o$rUs`E;==NT);A*H>3(XF&j4FZ8HE1aY!ih-O>8RM=b}n8JjfKo@|AQX~xm^l*(Y=GRtyRAzx4`x-Iv@Qzh);cO z*gKREYRwkUeLtzt&r@VOf^9?%Cr^k5`Uf_DO&J;TB{6VwWptbP7A7FWR&_ivgVWhq zJNQ-D5dY+}V>fl0B0JAuPj5yVtEKii$yJ+id~@CP>duzW(5|PR=;qeiOeUejeW)ix zRgU1%rWEywtmF(Vh6^*^%WEfM*40DEOPa#`y z2f|aUxR_nOP@kve&I9p((VQcJ_!wh3ihhw;rb;fRc^PtF{lXlkj@u@T=-tZ&v1L>> z*khj!*MQxS3z5FV;ddM^w$maPJ%KPOkwFl=2ie7d889_G8L5RAgXB*1#6=UF_W&3) zTv~2+W>*8@6lGkrpwq>}azo%+8E$)BnH9)`-0q?RaYKxfGR8tc{3MmUxy7)41y|U3$LTfHY1k|v~?s2+58pytZthUQ;LnLgdq3`Onhy+ z_ZLc1(m*Vg{&m+^s&NO|wBt|Z9YSe*yti9Hn?q(C2*&X_<+Gx#-bpg5vv_s6+ocjX zBG*QF6PORb^pHq>YBdnKqeEYV!(a@l+C^qquAv6z+=9h+b8?L(>WD&dWpV7C6PGz{ zgHMx~Q3FcCi&}JyXTwLJ`#o?&}CsPam2xKfAI?D!0q&y}X*Ay^j2nscA2)%$E3^g*yhp z7jZz)&h~>H{3}GtcSUP!kW%_}+*Yw(_ML662y#7b9j#v_$HaAyk4NGbV*FA$!x$$4$3wSZrS-0&IiGCi;bGN!drfTTsH_zO~yIvkz{CW%0h@y`W&mycuGiM;c zlUnYd>2$8M%H5=N0W0QQV1Iv9R;mreaBJr<#-0V4YOnqt`+w67O7hg%JOUrSlQeKqku11Dj>5o0Hor8+YjN4%jh?tcmvIss7@C^Py1ZxLu23eb!@I%k{JVpK(sIIf8OknLdN*j2v)5_b zx9@*^{T#az^bK_y+JDdO$maS|eX+av=oy^5FQnAYk=Nh3_5fJ>$({!F8zT78xR20* zOQpxem7P&UNkmbLjP(traZo#wUpvy4@CH;iT2pIYX$_@hL}zMtaZXNYNq>`vPxCXD zfc}&W`6Kd8`{n=zrgNp>S}C@x`0BIdYO8#h>1a9=uzwZHv6Fm{pPu>tFm9i%`Vr&Y zrRFtPjYQ;EXeRT>Ih}gHz{tb-*e^i=qz-UWjsADG>>=j2N*K9>OCJ@xn(%j3CPS=u z+U?Flc;iUsx5ush$^64FYE73-#g3e<`{eg5(R9a?pYdgeo*L$z)TLEJrZuF|wU+d$ zG_3Rsw;V(1PO1XZRox!)8BQ+xDosa1y&23xXXDyvcnibQs=TO~ue_PdrTjr@Nsg74 zct!>dur$IOYr|>9SF!9(d()BbV?#VHuTyH+_fUUYwjpUw-6m67gg12pB8+C!74N@& zgdU*y8kV!^$G1NP+n^SVPBbd{0Y~Ek);E(_emoi$KG~$DcNfs9pJ34tib*6i^+R4P z*iLk*RP;ozwU-oSi~S+^IT~9Tb?FupE^=uIy=~>Go2}SZ_miiW!ryY9?2=^+&K4YC^J--5JQM zyp27|CXzKw{q*L7+cH~pvVdi8xUi^JOk1cfUFal>2BHZ6tF*HYiYwdRHjTTxTN5-u zXk3DOa0`&6fk1Fga0pFsm!QGjU4uJ>;2zxF9YXlXOzs`HcYZT->!XUI`VXG7dY>(4 z@3Y=_ZLsMC<)jA9u}b1TT`5rLGPq0Kf9B84x>@cInjktfYOnKE^TOKirJG|m^kcW} z>?Wdl6O_Pygkrd2`L%u43xaVjeZ_AlC6|8jRg`1#E=@Z#&T+-`F!sH+m=`lnG}gK9 zY(Jr0ANpx)^>E;zEUP|KgS4*;*67x3w{P9l3ZmM!q=^JwWz@@x_y*G0qT$8OJSC%A z*P1w4lPpq8I+gg`k1hfBC}zIXCLfKK+xlo_%U1+nthV7AqnY3bq;qCW(!b2&%y^!g z7PS8rqj~VK-KQDt2D=>}6HDjE+3g<>^gq?}!<-2qGHfU)wpaI(O77?4{I)&%sign; z`yU=UmAX^5BvR3C=bCI60%f+Z2&4IJE%K+!$ex|cx7XuA()`#wL~(_CP9_GPg;7dR zJ882E9*a{euG$~()w&+XyyD&tR9voq^=#T9=DV4_6T2nBh;8M~#okf!(+TdqBmMV; zRlRzG7F`Z87|TD7Sm)hO`_}Vs9C-#cuTf0(>YBbW&%KxA3>)&nc=$1ZE2SvyDM9^X~6#MC4DWK^BjNUhQ@| ziF^e5R9qeH;#7UooEA&;mC&isOWgB0yXCo^Fm++zTW)jGG9~uiGkk@k%ws>!mnc)!&*s-@0E9++3*Ha-%=Pe&tr# zkj>EF#3~3P1VGk?~S>=!TYHT&W=l0reyq3NPFc*$v4yyr4V zD2hBQ@%!FsMaXKh#`V~KHXG=hrN2_wFojPajjeXTsw4kQF~;a7XQi_?46vV>V}>GY zpWNPI`HX%ud#TQD=zXLH|Jcfz#PkTp$fDXi`L?|{Ky?0%rJ#T-cVGUzUz^XnB;Nth zr>6dVL#k(2)~0(B2BGRd>=H2YI|$T`8*oTm3D-jNca!`s()vS>1CU?2IlFN)hoZ*$ zwpoi-jVPW^cP#$k8EC?x%Kd?)li;=P%*~u5FeJZb;zrz4IwUUZOh-e zP25et>xvubu*|<`bTVBTV6(TpeJA#e-8`nr>>_t%;F}v-gYlU-OIPRg`SDh-`oStkU>-sG_v1M_eTJoo!}T}8gSd;QTh(`@_cRg} zX-1&}hgPV|uR=WAeLmlYo3{>N)Rl&`Ehaf`-j;XK42++ep6hWAjC^;mqrJJ>KcCdN zssA#{Un|>tbFB5P_&sK^U@sfTIQ*e)&2A*e*H~Nab3IG(5U8qzQXyt>#7Yb~{5V)P z&2MLVhWdcYsJ@|dJ&QmDnu#i(VP7n1p zZKY^PD%`Fibjc9jXh<1j39Y{r+&Di|hsdrdD$Lr8*c@;NV>z6kh`ItaRhmhz5Qhzw z>~0`{Kyvd(gmsT0e6XCU0Mw-QTrzh|be&Ki5*^WQ8_06*4MI^=REkX-NQoTQHvmk= zxiK9}-%=m^4xQN_Xb#@d)+NMplEGqz2!E?{Pcn;P(qJt zJX0kgxK(~C&dp{+#I*1-jOZH7C_cmkq6lmi%w;e*z2h8%4vRCMa4erwQt_5i7LG;T z&U>ii&>NfdBjVz(cPQh~z#a4|pfW2oT5jEwbrv|O5dV(?By1pt^6f|o#xl?iUgQ^R zc*!DjScvcF%yy$ugtqn=fkD>e`d8N%^6OSuQwOk~-I0VT)C5#J3z^;#|Q+YmsiI8 z!7I1y%Lgx$-XaKWye%CxyHcZJ3)EL4X<7zWTu+$e=IESeZ{fQOmu){SPqJjZ zxsXbur;4J;1bMPK1i?QH(3ob#<(c5ShMRk)DR0*g2^w;yO;P2n2A;-8r>lllil?DQYc*2?B7TJk(;X#yDglNegLMHxl)f1*>*l z+cVs3_}s%3cS(D&rW87s*n$DHA&1n0Y|dod1)5YCQeZ$a-jj#E(&aZJ10xI|FR7Km z`{~r%G#3s*Ou%SwL0B2{Z_|Wv*;KI;J~T$!z%|FIW0GtX*b0~6HzRMEKj}`6O!w23 zc~K+b`tloVYtKaq+HxNQV6QCQs2YY6O;umH^^j%soYE2&Tf zhOW%i&uU8XX?4InAv7VH4CK`2E%{(k!9W>j02*cKv_@D`GJu8o6ari41@7=@<+9i( zYsrG9m?9(*eN|1^3!I#y2_|Won`z?7)vF%_BTPFoh=_JLYCjpQo)9_RjXfNP$&|5% zl3}(*3yU#>cB+L6@dRMhwNP?`yQQK%n8VGH7DmPO=yMW@WSioc>7!vw#uo??o#c^V zbzwCDAEos0cEF#~JfVXLUSK5?Y}4EgtvNw())(Y%8?2V+&@{#P%7qp)AKYN3PsEaS znA4%^n&w~$7Hpo|Hn-qcu4;G+l;MHc2W!-@&BwF@1cZmnYR%G`^rLlUz-tA1a4Tm8 zSUqR&0)d4{q&Q}A!frT29(c5qE+r`%Qr6n7Rk)hT1BE!Glh~eklU`;0Y@;>4i?ye^ zDW_+;fH4C>`El$74>6;LCwNMI+@WaA_)|(Gj)opNB4YN4K9JaM$;X2M61l>BJ`2c4 z@?3|0guEu`OW2=+0K6EVWEwo2BCpY1={!-SyTU@Z!@cnFVN$fQ&}$+xaFi`W7qp>t zWgeZAI0W&BLEB}Vddx3DMNgB zyOkgoa8kz5G>?Sv!7I`H)?sbW4Ix4f8Yn3Oy8Il7-Ak_lxo+#-WINmV>*jF8Q%-b{ zBkPyA3m*Jd$dmcJt-{|M#wZO$t>Jvzbr+x=U0|6oljP@l9U*}-u&cW=sgn4-ZS#;!-euv2Pz zPI@e;C|dx9^Cs*Jbd$;I!N|-=Eiz}T(|9QuCLW;YCNYB9VDd~ghdaeB*? zgD1=Z=mQqeGc`OJS$6}>jKBq|*fs>~M|T8)1NvJA>8YW)Kw7H8C*<^&fK)MSMvo0a zo);|&mIu^GY_`QXHE*y4>ZS0yaUsEOo;cE^KK5$FCyA(^8AR9ux^12ju+$$FH$8;t_A39XxGBY*$|B?EpKlw0AFu2`p&M2kCfDM}-!&6Wiw~L-xIu^Ty zm&Zv8D-=fRje%$OgaI~|cm#VdqC#wE0S@+pIU&yqS)gz=n!yn26IZtQ6<(Td-k zDtMAY!J+^n9AF zF91KvC7GJac}v=?L3B_gVcY8QVZ29qbU3DT#SoCKgOjUUB9YiF0Mqx;a}fQ&iETpz z-Gt?Jit5tFnvQHM9_QVDKb0hs_4sW>{kuXnn-W0NR4c#qD^X!ylo;qF}D974R;p zA%}+(;^sDs6zcXQKpExfeh@VFq&b+d#UrN0N8aSL*7i(82PoX&S<+0tpy7czWEItD z&XquhL#M?*5@^;75JiDc_>fi!H;oLN-WQt|jO7ON%o^5LIB*f}BA_D&l^lg3BThIZ zf6~4huUQsGPOab!JW|Tz^LUnvko1^Q0U=C_9(|9Rz=~$loCRWsc^#87ej3Udz5Ge{TU#P`{_583DqB;ny9(lb#T&o% z?X!*b3%$u*athRj%kKFXMVb`*=%I?(BgLz1x3=GHj+F)Umi+vsb}kIGK+uB|inj^9 z?YTQ04o7Nq1BP2_S^b7rYFPt@YidRz1Hw;tI%@?bZuX8Y=QZ5<3nxa_Z7yetZpDT; z$U^qh8|NR7pZA6nn)0%o?N{$g>>Q7b-x7pgCv6w_`fmO>$m?82=u*_~o84ZEZqswT z9NwPRL`!_Vhmme>M?%09;l1tK*LR7vT%4TU_;MFxV%aj*x9#M+#`*gMaFHKZ;5qHu z$vl<{9q#eli-pP65!Lg%gPNy*oHPAYeoZE2#;d_YL5KxdV^bq&(2_`EkNPFRc4rZW$E*mq5!o9Vcf5Qz^mL<2nEMBOas5d0 ziJbF(P>$~`u|neBj<!W4=Zkl>dTHy3UB&sm3T)IDrbsXp%ZeW{^X?T>0O8tLT4ov|dK=K8iZYSH!C zcngHb4tn#Awof5{_Q)Y~h+Ql2Y|i>!k41$C6M5PuHm*X}H{6-U^qzP)?vcD1(US;% zb}W?|rgqES3AWD^>XN7Um^yO4#&WDY6*Z&$UsZQ}SlT4u>pQXl{zArvcFIMq7sbXr zaTAm=p>Q_OyN#cFp6wl*vVmNEV(=DJXB1nrMBxW0q|B?6l(0Ot_8bFHK5>~TB0nDe za`0ZZ&)K$oef4Z~BTqNge?2uZcN061_?V;wpHmy7PiP>{reDrHg?ca1P?kg}d;`lU z0gEP`1~<@Op=d+<3F%(c%t3hu#ctwTbcgdZ$#9By2V+AUElU_uF7)y}zV4%@@8J3Q zXU}Yn5gCdzTzKpnxo}ap8FJevZI-Qrg<)8<3mhQ|KV0(=1d=5CPAh4mm^H7E#GdYL zL`n;n`$HjwK$Mzk5w{tmo{vg%z@6P?&d6Y`t73+{(DZRrL+=>t+n?clZ1AQQ(A!Cy zW0;xM{ql_HqrL$kNRuJZT?N~QwMVHv3y~9U3_NmKsDc>{bR&r#TQpjZgT-ws?W_JWckAR7qoi zO0cS>xWLXHX3Mj+X0{i6%GNS%xRxzG&crWqfn5R?4YjJGd^Cxp@i3evM;F&mkx|~qhfD0cAEzSvfXp_mU-5PGi}|=jbF+V z*b59hFyNwbjgWh#i7>>@^Bs!AJNP_G96#J3|8RbG4qu1x;by;QftB#)dvzFte(Rg9 zNqBF0MIi^ZT}T)b+MFgiYfvzd*K|DW?JzzzbHRu_>=>l49%OKCfR~%SASi{tJ=&xz}uDtb5q?1Zm*alo<8LRylXl5*)eTz7J)QMf1fhUit6@;2Nh35E8z2U{) zWIxtI^6Kg{aJHeOp=%wU;|nHAnpBqz94c;dzahKxcy!r&>#(~^s(VhN2 zZpL{+?jhrI>)Sqs3$L#bgHZ}fpiBsW;B!9q)5QgB-kzY_mmF_;^e$dsSC7dkjaH(~ zmQam-69hEQI=fzqeYd~12~~j{)ipLA*LWjrJG45-cSywOp3x-Iu1m+WDH|=DCB!be z42No43ouOENU(%}PS1E+fq!nzI;jL37;bM@f$a~Q@D44x!1SsW_ABeb=ctePgg8BgT4ja?yaR_86(+7H3y4;& z+HUdU^KT`|Z_pktPxjO>4$ybDTeF(|T?%lMlZ(?`^hntjkyG zskArid~QyKmTPTifG=)(g->NI9|9{9hYNz&G;JRFu{d3H0{vCm3%IVfLPynEO0Sou zvPhWWR78!4robR&)I&5r+-=ZUaqD~J_&T;##T43Y!p>^`V{|OB!GN3OQV^=K^~IAA zNf2XU4RjHeLU{jX<{QUIDv}GtHmdGqKpD~19A;&F5Hfhx6iRyl`ne{|uo3wtMGxGu z^pCKLL@8}FnMHx&l*EgYmdvzP_)rzQkJHIlu)M?j-r8CvqP#8!M7_n)oA4~~?1w^a z;p*>T8>u6abh?45QvnsYL?1*0bB0*?+zbWtPWzeB+I(@Ks_z z=32I1>c*pGv8;So$9|IpvE+B6=~{iiy{Qyah7eLZKbrie^0?SPiGN9wQ9PT_U~!*A z=h2M4-ur`sVORPhZd*tN)O)BLa>fxtkv0#FONhY+=xbI-EYrSJgIf0W=hf_J?=6!Z zA?@J-cZMwB27Izv;a4{!_e|-jsAijw30|WcEaf5Q7`#>gOHnSO&>4N zqBK=7w##-)C>tsU>%0gFWk;}fhwH6P!@CJ8k83j0Mwgx2|8OX`EzyhoKg^W=fjIYH zuF}8Elyp#N6o$CEqo+&k|H@1$e*VABl#tJ^4LNJ?#JLNyY;(DuyK1k`1M^vrEnddN zDpv$va&>!-F?c5&)0-JmDHKL;q!$mXIrqA$o8(@M8}t-+$e+9dG^nwwej35Dk%UNub_|8MT?U@WAM0D59f8?ykZH*7ci|UU z>DzqF_#RK*FY3aXiCk(zMSU>#?URv__xe^zBmMN+-#i&6G2k*qI|=NB3O3AdvvkZ3 z5gtw(BMEir;&;==_MJ)Vy_93iw`zL&=6_qpVk}DJuHFG@$A07)8TGu}PMAsnGM+(j zMVq~GoIO`3)wn)?8QGowb|ekG)6=|f)|aq0olGdx5>&Kamo8j36caV< z^Vk-QAZa}8fsz-VhTWcv1;W7IODJZ_8IH!uc{$=5WZmoCY9SV_Y*6cBq1DR}MLoZx zmJU>Z=RIs`DJwLOJJUqaT53LF*`unxR%B_?fqXLj_~6I2n;O%~JMm!bMEV;8Z?dZ} zN!}BPl@Dhm4woHOEn4FtqvIKl2@GzFV6&TRpn)Sbea8fV54tR?gt^2xTbz=dCmwzO zr9bKb7SWGLM41Rnad%5ASBm)+?m zMQL~E(D%da$<{Kp`}u3s?oYrEy5Xpd1Z-s-v{hY(eR>OahmBopk)h&(AL7O9)t4HE zf!G;lv_>ETk0n(9_FJCsjT`c5E_6xKB>tNP-t9LeVaCYzM3UPvX!OnmT3GJW3(g+p-Gu(u!H9Td^L0kTHKUwx;KAgm|aNjqYfQm%OACZ`#>ZCuYGlfHW1Q=5)wS>rp(j9JJ9dd5dOywG$|X862vE=IUqLY`R*D@BHE&I94=y~;`&OtF;fge zZT3=rJ4`@;8aO-G;KyeiSE}0syXfQvO_%$nmKo>dT9a!!t(lM7PKBul`{WDr=V`Ya zTbBToH_+YDTtX)CDPMTWd{Z;=aN7IfvL&CZ*YK)St4XvlpeTM>S)^`NKFIWU zD*RfGnRuh!g)1`-_DyOKC35U>Old;b| z;W>kpmI!&+Ovv+lYaR0Tx% z->hE_KzG2O4kmvJ{PWYv5;ur$^E_)72N{wP%SS5f})wI5bSx{vk0 zt4a3nDF0n2>7P*_mcqGD-MbsYe_9ylufV@I>VKD2`5pZG9lu6^`h8(hSGz;~Nm|%{ z-tdPdR_@2hcema8ZH@YUiuq+5`Bwq{-k$$m(c?aq>h4?oM!jF(;|}_>zQ><-r9W=c zLle~dP%)xk&Ne--MVcTkiE9hC9TK=Zdy|K-4W2YmGRVLtTVydS33L*RWk&i~(7 z{iuG$`o9hLhi-27W9@qgynh<}561r=H|?RT*!?SH(>w_IeqQ7MbcKi3TlcT9Li_6q z4~@9~s;&PB{Go-@eeCgF)rETlz)d7lr^@IeJIwu&n4jd#r-eo-ajKhRIS}78}t7n|A&U{@45e-JbRzZEA_9IexNkG!~TQ$ z^5MIZ``Fayzp(em%5T%~|G7;5(c2!LaoxuXgMVTF>%{Bt+u`TSork9#_sL=UzsSGO zn*UQjez>{5Pjz_xi)wUN_wC+R`=3SoaFcYOi}2<_w7;Hs{~7h+lkVs0FUfv4M|8Y9RCsCj^V9zWYPMed literal 0 HcmV?d00001 diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport25.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport25.cxx index 65e778abe675..33465e2c15c7 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport25.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport25.cxx @@ -44,6 +44,32 @@ DECLARE_OOXMLEXPORT_TEST(testTdf166544_noTopMargin_fields, "tdf166544_noTopMargi CPPUNIT_ASSERT_EQUAL(sal_Int32(269), nHeight); } +DECLARE_OOXMLEXPORT_TEST(testTdf166141_linkedStyles, "tdf166141_linkedStyles.docx") +{ + // Given a document with settings.xml containing both linkStyles and attachedTemplate + + // The problem was that there should not be any spacing between the two paragraphs, + // but there was 200 twips of below spacing. + + uno::Reference xStyle( + getStyles(u"ParagraphStyles"_ustr)->getByName(u"Standard"_ustr), uno::UNO_QUERY); + // Since the "template" to update the styles from doesn't exist, make no changes + // This was being forced to 200 twips by linkedStyles... + CPPUNIT_ASSERT_EQUAL(sal_Int32(0), getProperty(xStyle, u"ParaBottomMargin"_ustr)); +} + +DECLARE_OOXMLEXPORT_TEST(testTdf166141_linkedStyles2, "tdf166141_linkedStyles2.docx") +{ + // Given a document with settings.xml containing only linkStyles - no attachedTemplate + + // Since no "template" was provided to update the styles from, + // the styles must be updated using the application defaults. + uno::Reference xStyle( + getStyles(u"ParagraphStyles"_ustr)->getByName(u"Standard"_ustr), uno::UNO_QUERY); + // This must be 200 twips / 0.35cm. + CPPUNIT_ASSERT_EQUAL(sal_Int32(353), getProperty(xStyle, u"ParaBottomMargin"_ustr)); +} + DECLARE_OOXMLEXPORT_TEST(testTdf166510_sectPr_bottomSpacing, "tdf166510_sectPr_bottomSpacing.docx") { // given with a sectPr with different bottom spacing (undefined in this case - i.e. zero) diff --git a/sw/source/writerfilter/dmapper/SettingsTable.cxx b/sw/source/writerfilter/dmapper/SettingsTable.cxx index e65d7b5cf86b..6cb991955af2 100644 --- a/sw/source/writerfilter/dmapper/SettingsTable.cxx +++ b/sw/source/writerfilter/dmapper/SettingsTable.cxx @@ -82,7 +82,6 @@ SettingsTable::SettingsTable(const DomainMapper& rDomainMapper) , m_bShowInsDelChanges(true) , m_bShowFormattingChanges(false) , m_bShowMarkupChanges(true) -, m_bLinkStyles(false) , m_nZoomFactor(0) , m_nWordCompatibilityMode(-1) , m_nView(0) @@ -217,6 +216,11 @@ void SettingsTable::lcl_sprm(Sprm& rSprm) //PropertySetValues - need to be resolved { resolveSprmProps(*this, rSprm); + + // If attached template cannot be located or is not a valid file, silently ignore linkStyles + // and since LO doesn't know how to update styles anyway, just always ignore linkStyles + if (nSprmId == NS_ooxml::LN_CT_Settings_attachedTemplate) + m_oLinkStyles = false; } break; case NS_ooxml::LN_CT_Settings_stylePaneFormatFilter: // 92493; @@ -225,7 +229,10 @@ void SettingsTable::lcl_sprm(Sprm& rSprm) m_nDefaultTabStop = nIntValue; break; case NS_ooxml::LN_CT_Settings_linkStyles: // 92663; - m_bLinkStyles = nIntValue; + { + if (!m_oLinkStyles.has_value()) + m_oLinkStyles = bool(nIntValue); + } break; case NS_ooxml::LN_CT_Settings_evenAndOddHeaders: m_bEvenAndOddHeaders = nIntValue; @@ -430,7 +437,7 @@ int SettingsTable::GetDefaultTabStop() const bool SettingsTable::GetLinkStyles() const { - return m_bLinkStyles; + return m_oLinkStyles.has_value() && *m_oLinkStyles; } sal_Int16 SettingsTable::GetZoomFactor() const diff --git a/sw/source/writerfilter/dmapper/SettingsTable.hxx b/sw/source/writerfilter/dmapper/SettingsTable.hxx index fd2f9efbc37d..0b322bea1b54 100644 --- a/sw/source/writerfilter/dmapper/SettingsTable.hxx +++ b/sw/source/writerfilter/dmapper/SettingsTable.hxx @@ -23,6 +23,7 @@ #include #include #include +#include class SwXTextDocument; namespace com::sun::star::lang @@ -122,7 +123,7 @@ private: bool m_bShowInsDelChanges; bool m_bShowFormattingChanges; bool m_bShowMarkupChanges; - bool m_bLinkStyles; + std::optional m_oLinkStyles; sal_Int16 m_nZoomFactor; sal_Int16 m_nZoomType = 0; sal_Int32 m_nWordCompatibilityMode;