From 9392b06da49170383ac4e98a60e65e845e6ac03d Mon Sep 17 00:00:00 2001 From: Eric Lapouyade Date: Fri, 2 May 2025 16:29:22 +0200 Subject: [PATCH] add RichTextParagraph class --- docs/index.rst | 8 ++++++++ docxtpl/richtext.py | 13 ++++++++----- docxtpl/template.py | 18 ++++-------------- tests/templates/richtext_paragraph_tpl.docx | Bin 20437 -> 14177 bytes tests/templates/richtext_tpl.docx | Bin 14126 -> 11440 bytes 5 files changed, 20 insertions(+), 19 deletions(-) diff --git a/docs/index.rst b/docs/index.rst index 517c3e8..a742d49 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -263,6 +263,14 @@ You can add an hyperlink to a text by using a Richtext with this syntax:: Put ``rt`` in your context, then use ``{{r rt}}`` in your template +RichTextParagraph +----------------- + +If you want to change paragraph properties, you can use ``RichTextParagraph()`` or ``RP()`` object. +It must be added to the template by using ``{{p }}``. +Have a look to the example here ``tests/richtextparagraph.py``. + + Inline image ------------ diff --git a/docxtpl/richtext.py b/docxtpl/richtext.py index 5959d68..f0f4738 100644 --- a/docxtpl/richtext.py +++ b/docxtpl/richtext.py @@ -47,6 +47,10 @@ class RichText(object): self.xml += text.xml return + # # If nothing to add : just return + # if text is None or text == "": + # return + # If not a string : cast to string (ex: int, dict etc...) if not isinstance(text, (str, bytes)): text = str(text) @@ -76,11 +80,11 @@ class RichText(object): if bold: prop += "" if rtl: - prop += '' + prop += "" if italic: prop += "" if rtl: - prop += '' + prop += "" if underline: if underline not in [ "single", @@ -128,6 +132,7 @@ class RichText(object): def __html__(self): return self.xml + class RichTextParagraph(object): """class to generate Rich Text Paragraphs when using templates variables @@ -149,7 +154,7 @@ class RichTextParagraph(object): # If a RichText is added if not isinstance(text, RichText): text = RichText(text) - + prop = "" if parastyle: prop += '' % parastyle @@ -170,8 +175,6 @@ class RichTextParagraph(object): def __html__(self): return self.xml - - R = RichText RP = RichTextParagraph diff --git a/docxtpl/template.py b/docxtpl/template.py index e873958..d24d691 100644 --- a/docxtpl/template.py +++ b/docxtpl/template.py @@ -161,7 +161,7 @@ class DocxTemplate(object): flags=re.DOTALL, ) src_xml = re.sub( - r"({{[rq]\s.*?}}|{%[rq].\s.*?%})", + r"({{r\s.*?}}|{%r\s.*?%})", r'\1', src_xml, flags=re.DOTALL, @@ -184,18 +184,6 @@ class DocxTemplate(object): % {"y": y} ) src_xml = re.sub(pat, r"\1 \2", src_xml, flags=re.DOTALL) - - # For paragraph level richtext - # replace into xml paragraph containing - # {%q xxx %} or {{q xxx}} template tag - # by {% xxx %} or {{ xx }} without any surrounding tags - # This allow for inline {r }} and paragraph {q }) styling - # This is mandatory to have jinja2 generating correct xml code - pat = ( - r"](?:(?!]).)*({%%|{{)q ([^}%%]*(?:%%}|}})).*?" - - ) - src_xml = re.sub(pat, r"\1 \2", src_xml, flags=re.DOTALL) for y in ["tr", "tc", "p"]: # same thing, but for {#y xxx #} (but not where y == 'r', since that @@ -814,7 +802,9 @@ class DocxTemplate(object): # make sure all template images defined by user were replaced for img_id, replaced in replaced_pics.items(): if not replaced: - raise ValueError("Picture %s not found in the docx template" % img_id) + raise ValueError( + "Picture %s not found in the docx template" % img_id + ) def get_pic_map(self): return self.pic_map diff --git a/tests/templates/richtext_paragraph_tpl.docx b/tests/templates/richtext_paragraph_tpl.docx index 993b466d3386e91070482e66ead1938b608b40b9..4ae45017b6496d6120111cb8a9d5ffc280fc427b 100644 GIT binary patch literal 14177 zcmbWe19)Z2(=QxzVrRmMZEIppY}>YNOl;elIFpGrv2EM-m&_k$&b;4y?tO0U-Tmyn zx~taesAqyr6+A`Wo<{JXJugxgY zJU0q(Tw$RQ#N=lx>rsp-y`~HoQOi?BySP3b#+$D0NRm=(u^2PNKr6Brhc+h8-uRKz zI_(wT64O~}*mB1#RSfX1TIrc*Ee zqL2VIi5Bf5J%A)*P(17Hw$HX%AdCe8duf3-E;O=RaN@~enID@kF7_i(CaD|f|4ebQDoh#;n}}f`-T2L|OKOMUF46C~KX%v$}IY zaxu^?&Qa>hk_42~%*Ob$3w`*ee|x_ldG=8%D*8(BWbP|X?bL=XPXqM`m`gb7SW=3c z_TZpCcKiZMT&;?#@#rBRb9)Trj+!9u*W&y&oQ5vci$OlmIsy~M&UJo6~)~!)l(qJm}`A*@n8B4%X0f^^Y&M_C2?2bKWs(pIH_XisZJI z_}D8Ow>vih#AE4*u$PN1@+wzg(0)3jOMcf#hx)G4+OQ;VY;$c+lz!N2?O;fA>7G1# z$s+J%SXKGVcmw=y3w5o<50Y=T5c@}4ApLF&JqJ5`D~oq?)Wr>3rqLn?+L~fcn$=6-1xc-j*1-few z0!iDoo!xB+S3E0-eT2k>)(r!1!b^uV0pM0qNad`etjg5MX&v0vBX>>nu_JAio zty{k;du-JmQ3Q(2fdzLFLJ|@pz~C3k^ZA4J@ew959>Tcat~XEId}fnS2`bpB_J~HS53=3*(oBoiw>PNNZ|a=z4pKQ$^%Qq__k2X)+-M3)!ZI)h z1Z|n3yqEUm@N72xfjxx4hq)y{D<%$qYsSYoqDvIX^#wk+7UaC@;1d8HmuqXNmI36t zjReS-mKuzwI5avf-MRAqtia$A_q^I@zi*=3m>o~!=1`v3y8~A5TC9bQKYDu8Q3>!r zY4JVy{Lvy*UQ1^;s$&HF|@&k+BvJYUM}>o-K%J1imh5FDH1*`je*bNwT70kBywns?u%cvXd3QX=VC4_y>2;GX-K9fK zy5;yVTXkmMYm;S{r$tz+PrF7Zs^(=}nOs88hXgVjo&<+CVw@YNNSTP?mhveR=@^%v z1L;gpW=VUn8X|ZiT7(dpbkd0 z4(e6f39q+Y1|)?pQ4Etj40*hZ$4bK9$mU}~)`yn5G40P%cni1&SO!dz*d}B@?K|qE zf!E!^1<^~>&wtQldr-BaBX)hsmMp-iFwMX1WnPguJCk$CoEn4YEdc?aLMi zO=8y<0D6vfLGoUK4H<6YP0TmaA@qsU5JH}AC8h!=EWp6!gRC=TWn)cPnKW7In;puWslS?wrm>3(+f7DaCZ1d7aW7_h6{>PdQ; zzJe!+Q0#W`pcB9MbS8-t(5r+e z>vHB+<~E_%?P2FxW{fH8nZqc`2+1I)v@IQixL9XXuD(tggYX&EQo`e?{ciOMQsW_0 zRQ7}iL!qkNw4WGxpiW=&)|pdJPg_rV@ua+yWv#D0FjIrl0MI^?Eg?VXEKs0}sRu9G z0iTr#9wb)~dX^;&VYa-x`mLP1)7oP~b2@D%_l*Z+<{hS|+AZ$*Hx)`Mn(t~@2Z}+4 zWa*EH4j%+W`9l1QPt(n1An0-$v!umiU*uea}RosATp7LPp1Y_z7GaHA5*ZxudN zzZ}lJ2*GNU0;=bBh@*i;Ds)a_govAs2g1=Pd<8V5s7UfRRi0pp=!MTh*<5dqs&Z{< zsX(LYTIFa~Yrgi?D_KlxU3NQ~xf3&bWEVomhh}xn61~(_7^fDGH%$!CHDyw*h@}_96t?-YZJ3)yCfuqFLHx6oph%p-hw_bE}?VAk!w96 zdq|A~C*cqr#?Q;j>DIACM5VM^jzyH?xDEH{75Y6g4Ha*mcv(K1d65Ot?R_h7+tX1s~T3&*7a%fzwN z8V1))h-Jl-L7WWhfF1_pc{!^*&D1iw7Z+fN?C+aD+zsnsA8n|VlBD;NU?F^@o}Wna zXb_u#>7VbrI^SXw^|MI1V;n?(B4)>c3#y5Qf!yQ;Wk>u$@Ys1Cab_xi$ax+bukGsxy#qn0PD_Nh?u!8ci3Z|Ms1CmxZOzLn+zC4V@$G;a$dYdHc8h@}>Tb)p zqG(K?sANl;=W(QvZlIt55)@A6m2oJ&2uRYW>Ubm@E5^*=(RRKsMyQkboVysAiDf?& z?i%%yMNT6o@1VabU+hQYttG?YXp3EHU~bOaizzW0sPObKnsbhkh8LrqGK+&OF2x8l zQeuMtyiy1z<<+qo(@(5yn)QbeYQgtR!RvPSMa4boD&tYY>TX^TL=fzBjnvZxD)q9& z(|#xf11j(`eEUHH7Bf;sN9-mX0({``SHi`M7odW7fE)wXJ9|nY|*T@8& zSMX#rF;ea>Y~nY~;=uKH+&DjL9AT>wUxF@ROLEuDQQ75BrWk=jBOZr>T6kFzxOhQx zu(n$y85&z=1qxQJ-MX{61=UV*TvdDZ!74v5mte$8H!Jadx}q0*B1xllzpc(E6CccQ zC0HhwiQ}9EfU}7%6xA`S9*pekrG7Q6(TJrS0`R|=_lmu1hM8U9s6OV(fQyOin|`YA+=mjfKH9Y(ly_<=MO7Va5KTFKYed%eWw(cZ?6{ zi2dmcJ*X@q9{x82L-Zh0yQ22TfL2PR7%*02Tv=5tn0_+E4PWzmgaoT^jdw#EaGjlx#5Pszy*SO{|ux3@W2>sP#!XGUHf|!<|;M{&Z$F?ETgv8j_g`Gi^0gR)+71A#` z%futJ!jxz5;FM=oePPD*KyW(Zl55X#fq*IWAm|CiZw2$Mz=EKc06k=mMYliTPQF!{ z(`4;Y2>^)b3F+CAuObRKkRJv|-uk6O(o%9DX)8N2H=Xa9_Mmn+%Y}o47}y~at_UFQ z+Sf?P#h8g}4BtMoOxB~Whi0WDdgVD$i2Xm8c1Xk;P5T=s9Dr(~N3TrGI>)1w&p--T=tx zLRrxc`AYujr77T4MDpm~_Hddojn$^0EAmIDiCpx@c$}Q!4(Rf6})jeo!PR2svPAZbdHO-6ro%p zD1<>bBqN|?%CJ%RlsU-#-`W}hYV71mt#*r~S9)adL&I|Ukj;bx;AbMB@PF&oSJ$Gr z)c@9Am&*t7?{-VATKoSqCxp&+(dR!|Pr&Q{Us)}y8vdVHEpAj2NFDl)gm0QN7LXoM zZ|{-QA4pdRG#2@pf=XQT`{>)y*2zUPIJdtB#fGqnG=_Hyn9H;Qp!*}iw`mSK-LZ1@ zcG;6|x4`EZLev87vrHR1=C^6j&rsi~B0<)>1tT#Asut)q`rRCr)Q0Gh+j; z*V7U}Mlx<#jH@CBAvg3Gi^9_{p(YdYidd_0CV)tB;iRQb6b5n*-|UJ5@};tgK^VFE zGuQZkpEx=GNFfoaUBboXTa0-Pq4+S>IY*%gXHc%g6_;9)ojPB#uq<;8QC|`WAz1=O zdr}f8J@Qs8O9Fky6{q1l6sJ!*R3g{%OaV44Od+<*-b#TfYy5l(=BK$|<@>IGS%8fa zlfSLvTajZ@U;3*J^Al?^W_x2PCLh~dX)4Cl@1J=)(fi5%JfTGiYBTA{d<>yw14Jyy zF|oer7&WW7FYMcq<0L9kh=_T_sd%+|LW*H3wV1ly1gd^h`@sZn?&WHteBJjd@U3bo zIj$y(FImQ(rc#qFUZ7T+D0!<)73wtVr%Ftl%|$EUtNedew`)fUR3-`*iBxs}?UkqW z)-_M|ugYN*a-Qmclkgu|rEda@6{a2MWlP^L;NMsA>r(zxmA^IQD=I7+h?ket4<@Y8 zMZ>QnNQc3Q+QFT=*f!*lN0YpopN-oa*(=WEi``f(wsz8xtLG-z9X$1$udsqtdSiZ!l6OB0s5J=l`b zh3B&4fb|kfBD_`eulDo zz+@nESSiQ-hGH(b;vy!h8trxIw)TGMvcv~cR^SpzVv{&b*flqm7E5l^72-0E&+hwT z+fZ2*WM|pktg?YQofmvTPCB?Z*utKx#KguTzj2AD-HJi;i!J@Flv(|w!2V5({quo^ zeGkhJo5@Vo>cHnhyLka|P@*2B=94x7reO@_{XiAmVwL^Y?JV|kmzYtp%dKJd%dOQG zvPJIzoHM9xl-HJ#tQJYb!iL>X+96?~D*hPpN&K+GPufUb8WrByqbQD?EDXY#^FZgN zLAwe&%G@`uUaN-JV}}Vp3teREdxymQxIvCKoa(G$V9w7f1Rn84onFE|zNS8dOMywd zq{X16lcZDh8Skj%hs>7gb8o%g$e7(Tf^%~s05_(eR&&k=Crjrm+~32k;9H_kehR|f zKUj^aF;sTOJJcr-4&Vod1KutS6#r^CmLJNjbYj-gkb38_<)qVMr2OjT{=9R39k9=S z1#^T)>NP(LAfy2XABA5Wp_vF)<^KhCo~NOK2-}Rh6^dZSbMOTtv`PJGDAHJ`wgRNZ zO_bkjSnGlyjy*f{o(Y;xT7v0z%ZHocCnmIQIh|MCS#q3*t^{HG*8+8& zoUZlhGe?MhZrs%mQYiMbv*kUX>Vi<6E!BQt>Fc7`o1U`obLfa93a8Ra?h^0;iJDa` zQNAoi$DvlH(Gd!xj@wNVVvl|5vd17pr>+hN{)S4@)(l4DS&T)OH8D+O6pK)N<8ejp zGOYfV@Mgdu&udvlgev!5a*yj9Q>K2G*U~bz&#?>AWyYLfk7a@#t*oe!9G%9Je28*L zmyNl+jY?(M7XRd75<|1vGw#lrrg_=r>z8*|8BlR%S zghnV?%-9tpAo3eoHh9R2J5Cn6QdY;lEt6pI5biy3)3Eboi??T^1Zsx}oD$cRMo*g(D1s!eByjHY|7o{YGICJ%Xq-o{WK8KdJ1Yh4EsdTg{8mKi`@YR^`Gx z(l1o>qdabeB#7(S*^!XXw=$A)*fX;Gm!de;y~N3yVjiaIK2LsQ&$zxDwpCV27)TZC zxqSYBQNo2(MZ8ybuBe#Yl(cp5yjL!VJp3s*+ihkygAK0mX+w2t*n8_Ee^Gt z^*M)OVEuHSr)xkAeq^Gish|hI?!b0?8(pnHxOc{cAgsoYl2!F$-mrXuwq?UYlR)y_ z_tDtg;L%mQTzGazQ?Sbt=9Xs4{+#Gmsb^|fZM=~^<7S(jRQX-|N_4fr zS8dD7vCh`RD~cpY3q_7x(}>NYpmmq0?z21%e|{`_bciBGTNTr+SMs^@$}lfoosLxb zk}rpvyFdnQBh*zoU=>8LYaj2#FCmeY&;#9U^FS01l&?nuzR;O8IT++l=gfo?R+v#f zUpu;X+v-_0m?LCd>&Rh=Ag|Xei#^dEnyMf!N1%uTIm|5LvuOtDnE#nv+L0lOxg`0) zlvJNrfyS>^7-LD~WzSstLg(Ib3EXCG!XxODf?4xh#?qx}bi<9a{1 zChO2>V;sG5K=It=Zr_J8l$wK*s+M90IgWHa%Z2{wDa(jz!{h0wbiMKa{4*$QEmK)8NwTPbeB=@~QhAV++b))S?S3zj*N@8m;;ZNRJ%v zNNE5vuVl)|f5Qfvc764bq315MDRovTrP*vUE^lAVD|m5jqSpL!G6Q^VE-_%GB8Rk%K< zFx|nfqa}$wBPRCBA()MJJ?&~XGuhl#Pz_{-&ZHm=@qJ07WKFI7B%<0nV*B1z>fkZY zwZ{B#_nPF;Q}8qx`Fp0g z21+_?Ys|t3%IXdoYWdgG+h{cctz%jf0Lg=Nwt1%s?@@NYjkf03b*O-o_ zXrU~Qs)aS%rUmEW9$eMQUzpVk46mv!D`FV4ObXH!KbFSr5VDn-jEE|-;HHY2Iid{v zcO}tDoIZrSo)CM=7HS!Moz|L%dj)-8(JINDu8c^p!rqP z{aV*jk%*iWLT|lQ3U>$Z6UC~gs5Xw3$O;IUw#?dKwIRNV`qr0{d=#Sw+9wuYGEoxr z>3T*?L5(oVHM{U7&Z1bA{2cA!fuNrigGNPJp8O~Nd3fgSW7jDw8qG2c20J02EKVKe zu6qw3;l*8)kmum{`O|bW)x>)4#$XnO&wRcB*!>bq)j;_h5{n5q=6Ws}eT2Sl1k`+G z+GOr-q-O}$kjWb5@|cdnCi>YBL3sw(eygqEhAct^2MA_ny)A=l6teX5XGyGQve6hJ zf!Go0Tf&kCL6G*rDuY10{GL-JPVoWg2~d``WnvHCj>^Ms(t?W-RlimwdfI+Z(`KzG zu=1fT)Bag5N>g`I`laEczC^dUT*IFXoj7OH(&4eCs)0mJ3q*?pUo>pzPMlP&Cg~&Uv~imyQ{7F zz@APVN_2<4FpS!_iKY)e~rKK#(wk*(-s9UR{$J&Uu@~=73v48Uqrq zZTF}9c7ppPk(vT%!gK;zC)&;IbQ(`i3nZKbh;F3@goQ*b_T7yUHrF7po)8AA7Z4|; zdm~RR>A~9`#RikcEp6)Yeb8?pqq=iQboCYImfd3(wD|IsdVkV~9!Vn`zuUl67JftH zZ1{v~YGys=gJ2QTz&WOVnEUps}Rcgs&k5@Zsg^-u_#TgLC$Jd;ZXgp+9)ljMwyQk}YKo(W%nO26b=TRf+h_@rKM4lr zd{XFbB?>fDd?&ha%nQQejJc!w0M&Okpjfrmt}r1hxC_WxA*?^>rpf!#*v+&G&?Q=b zs1kE2G!ljCEp$6M0)Q|sbG)Zrtk?(dVoSB(7T1ub(y6MbS_qg$+R<-k%4e%kNpZ_z zRJ$aW2kz`ATQ!kq7>}Y$iq_e<4ey|&G{X6Wv4-ETw}lR4V`}!j{NA?GWP;hWlEfk% zZ-3)}Xk&>XSk{0@?8cO>x~P#)I4fSwfof~L(cr6guJSng zOI9Td&9_=ao{!R{DQ!;-7R`fVGn$EwNBVI}*q5(R&IeClYTL2ZKUr=%vywr`B{R8{ zV)Mx9Gc4pG$@HSgQG+z?A#oFd?2_%6xts&c(~27B{ggOyW^A8dK-PnaVf6Qzt2*J1 z-os++0bz@2bDL?6N12aZ>%c@>V~xdUbGog^mma~~DN=C|i0A4IG;Q}g0QQ!qy+maz zN9c7ByfuU?Mr`h;BNg$ikNP&1C+4$jX1DrEi={-SX5h*8br+RLxJ!WZ9M;k)v_v&% zqE72Y^U2Rz0PaVi`!j9tu7A+)P`>dEsKE2_pIrZ2Z1~q}c1s5fT?1PaOQTZ8irK3g-u=93TR_`eM82Arx>G7V_=o(}e~Oj0hd^>Z#V(FCkM z{2crVDK$%`h0^CU(a}dn%!t8jquVVo6VFQ3A8eD7_e3n*GSD2UXX81DZw(kghBQ28 zJAh*oNQUMS27>B$R62d%BD6R{C&Ccd9xv*=;@ez)obT3j{2FKJil20*aQg&Jg-H!- zxNO-Q%tU$aDmgdidK}PW{ivfI*w?8%R8t+wQUfA2ICaHu#O2DxL52C4jna3aTw2Os zTF75|*c~BYZjw;6Ofx!(KRWw~1|shQ%Fe>271qTE)#V#Oyi$_cAhi9@!^5cErtB}8 zCKXhbmHe7Tf|{$b0~AAb+X3ubf~s3R6XN1;O*9kuG&A_4w|R*P6Y6T3W&A5VDZ=7fG=)mGb5yZj4L2_%HT&PC_k#Mo{R^#Ph4Xg#z({{ z3}Ni_xMUKtZ57z4@hXBy++#&V-9a;mzQV7!*JCY^>1czOII|HqlgP03R=g)xr(R+!F;6*hU^ zi@eABQ8^+A(`*E45vPEu^`JY8A$Oo~-w^|%H%0sa3RxXj6I0QM#+}SXxWlGxZ8Kdivuk&mPT$)tg zIxbj-8OD^LMRpreP*mI8l50Za%c@*xTxkM6UscQ-%?AR-E02qrKjF?!j9 z3U@N+)kQMvLJO}M8&Ao&?A?_LiqMEwF?mp0o2&u|n^%4bi0zA*!usY@e2Hz}J%vI~ z#HCV+7}jpl6`A=OBK_G3O#?-@45W`ng!{%0w&NwC<%KB}ws3 zuuos&(_@P=6l3yme;Lw!wd;?TL|?8XtT?8mpIp`M=&RueIyzsC5C&l24h0fcl)6Ya z$^>ARYEV+(Dat0-x+>L#>l|FR%>##cHA;=)`<$Y|=r0I2siVIM@?wmb*N+=N$#iD} z;X1YxDNyzmo(OO;X7Nu_O#IaKsdKK!{1O`#zlILSrY0Q{u7|*sy(n8FGfkTj)b9|Ga|!=SV!x}EjMwWb!K5~7|*82 zmyNSbP4zkFMc;vM-d`_PqcyuYoSjXYpy#G6v9dYT2L~e+7O^xIn^0@Jo`6rTIyPC} z?R8e+LTdenW|Mz=eSVTni=tGs`v<@sPi-m$ajdR*|$(sA>>TQAQfX8+UXzCPky3( zEyUuFQcyc2jIgQ&-JIehYzsD@%7=Nt!WK_sRs0SPMVVdh0=&p1M-ay~mHhqdDHytH zK_9?pb+aJ-+@#=60DtR`7 z5t(b~=fMe{)vo)32tcdgz{v-N{UTDJy1F6_^<7%A1Bc;$cb6b< z8SA;#wJ;7F9JKViPpGfXVQ1Ew!)@)4Ac+QJE#u03fr~xeiUG-=P(smn-buqEn!70k z0k)HN7penvFz9tIlfdiWO-^W^kGw4>R4mGUYwIYA95bU|X1`_#s8M0Ukf`>`*T=FB z2LWs`uW<6^S#f8H_!g;+?n|?L`lF$VG`$vqOQ3J7(nRr6Db=%jv_a%)MR+ z6b@nS-=yT3Y%E@O^yhFzj;08P#b(ZX`~q2S+ujK5y$yft9~Ff2*5hArT4f9Ke}%vO)Ena2|CC#Bu36%cSKx~qLN-e@lqUao3BO^ue#NU}m<&qiv&I^R zRob8(6Ox*ns2=@OJaf@p$dK)DaUh|bs$I@vgz_%| zaC;XnX_KM)n;qP#QAiJ2KK#{6|t?#(lrqp7vEWrWc>Vey&?Wr)qb_7|wBa z9Y#M1WMJN52@3nsHAk*;r>IjUl~_f?YAkHXAC4wn+Gn0$$Q;~1D>VNMFXErUC^f~E zT$G!1@ZIb<6V1M{|JVmY5|^X)G{JBP{V+3L3eq5tEM(f`Mgf9*;5W$W~)j(0Sz z!09tojgz1$qM&3IwrM#2>;zwB=#P5P1bxCLM*k-_WLMJ&t`XQr!=#Nny@I2U9%Ca3 zXWw4%gfT};JUqgV{Hp;_f^`$m^*r){M!Cmf~1 zAi2~SGF4hhb3HtPwd&!%41immKeY9XJaC$@II~5fWhwAx=ImV}Ph-Ek-tPi6{$)xpmS}T5cH422OUOulbp^}hvP+I|BO0|{XYFS*zgAwWRy z%PudKLnxL)lXn@xz!N5dNA#oN@jH^YP*f@G*1iwi3EIFN(BGO~#hO6Wc6HxrwwHfs z-peZC`j{}(u6m?cmh}~4z@QTDu%2k{vf0?#Z5taF&bT$UgV;1hQ&c5{2;JW0B}eT* z6N#;adawFPF!46oxcG4tCyjqdEA1tsX^?Ny{dL@WSlbz4TQZgdKKAwChUQ$c{x$lL zq=aPmEWt!{_fgI+F6yBv(-Y|3wome*+o^AM#fEr)!U2Jh0sh)~^ZVY8_n`ZC`XBpn z{$&4sJHq=0kiV$$?S%hj|Mzx~Ke>NLw!hz6f04i&O8dXue{Ep+Q^4<_?sowEU&Qh@ z2mL2F{GXD32jTr)4<2uc%Kw0b|H=OQisw60?=M1w`8WGtxV=A_f1fkIFN*#}`?&vR z{&R`+PZ7Uo!S9pnzi5l--y;4t)&7(J_pI#i{0ij%=Kovf{3rkK`NiMW2TJ*$@&A^| z{mK4&^nFi4{vtQ3zojI9GX5UC-h=aBlt%q~!1`BK^WU)bD^&j}>-VVe_q#EH=66~D zmGY;6-+kzN@c4^DX#W)OS19>Y%I{C>-!CJL?*G^ON{fTO-J$>haBrW3eBS$&ff`9;kZ{Pp`G5``-L)gaJ(a73S zN7>ER$U%$F)yk3}9~77(7XbWG{{N2u#Wm27BrDx7fDnA?|BLYKOS~0tsKh+pD~EY6 zw03ibWP6LwnOygKXTmq|xF&@RZQ#*~m#%5JGed^2*jY4$A_taJ&+0Lxx<%B9SqEoU zH;J2dB>6Q#GgCrSYzV8Su5OH}mOKN23v7p$(Z`n@G4^m`0~2mF%9L6Rz$dH|E$BDG z6TUhR?(CXe5xR_nV*#)b@bck7L;H5JITrB%uDbm$>xw#ivW{gb=t3@?@4MnsZPFtW zt>FWMgwL{b@2z4WM36E;bdT1nT3}!I&l}Nhgn=zd+R6!Yv(s% zs>-)p-PG3orG%ztj&W6Ow?Q+WZ}i^=h$XG1-Vox)P*SLlMf-5|=Xf=wg5b|?WPcQp zjt;Nr5xfcE?v>HlFuWTJ@amOSmJ(P`qLv&YJfbw&tO?$BE_08|Mf3P|pgRXo5)G{5 z8;#7D1nUng`dvRWrXVXqii&~Yv4737{`t^gsy-5nV23> zz4|6|@{ZH$CtX^s zA78xRK6PiBKdcKR(B8Y}xr^r&!a~c#pg8js zxTUxyyVX_h>Ic~PF`c-oBuES`9PE`V9c6Mk_2PTG!hu*rB`k=~!qRJh;(;KBX!UMr z+41pgsCLYjW(?It$c5azvPiw*Uw^;F$5$an=TwIzovtb;VBIx&HoO$pg0VkLfl3Wjo=N2vn88e5M&;ur_xQ`9Clz_l0t|OFuk-)-^ z?}#a^Cp<4zYN_6)2u2*uEFb|*T_=kWgp4ny=_2Z3?0KJn_v|1`_5a!n;CI*86*0F$ z5L!Kt%!L)&?-OvQMse&nkz}Fzp<{KbbXt(_?Y6q$E7(39Ka2_T7#V<~>Xg7%M_u+= zYB*lnDz?XW1W~l~Xc+qvp)Nm8rW#m18>xp0rp&%v&C<+#SaYrLIG9!!``KtKNU-;n zC7+_Cb5xrfTy`?M$yn(K#2jpbP6nel-T3nux zigiG!7kJ~6fBam$!P}Tnxe<

=FY&s&NbpNC&angX_Xp_$Ek-3w(BBr?skO7 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 LDU?b7miqqynbQmm03d+^0MG%j;5s5eJ7-fn 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 B4uk*z literal 14126 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