From c25c4a44154e820088c1a65b446e39db6a4e6c66 Mon Sep 17 00:00:00 2001 From: kdeterme Date: Tue, 29 Sep 2026 22:17:20 +0200 Subject: [PATCH] feat: add image zoom, pan, and reset controls to document viewer --- loko/common/locale/en/LC_MESSAGES/django.mo | Bin 7379 -> 7530 bytes loko/common/locale/en/LC_MESSAGES/django.po | 12 + loko/common/locale/fr/LC_MESSAGES/django.mo | Bin 9297 -> 9409 bytes loko/common/locale/fr/LC_MESSAGES/django.po | 12 + loko/common/locale/nl/LC_MESSAGES/django.mo | Bin 6894 -> 7020 bytes loko/common/locale/nl/LC_MESSAGES/django.po | 12 + .../common/components/document_viewer.html | 257 +++++++++++++++++- loko/home/locale/en/LC_MESSAGES/django.mo | Bin 17589 -> 17751 bytes loko/home/locale/en/LC_MESSAGES/django.po | 9 + loko/home/locale/fr/LC_MESSAGES/django.mo | Bin 18681 -> 18837 bytes loko/home/locale/fr/LC_MESSAGES/django.po | 9 + loko/home/locale/nl/LC_MESSAGES/django.mo | Bin 18263 -> 18437 bytes loko/home/locale/nl/LC_MESSAGES/django.po | 9 + 13 files changed, 316 insertions(+), 4 deletions(-) diff --git a/loko/common/locale/en/LC_MESSAGES/django.mo b/loko/common/locale/en/LC_MESSAGES/django.mo index b4dbe4986920cff5d9ac7b1234249044d221680a..7eb40fc4940dc2501d283165dfeb535f43375bb8 100644 GIT binary patch delta 2405 zcmYk+Z%kHI9Ki8|JR&F<4~QC)q9&*)nkE986k3*M8d4!9VlghkvA7l|V;kn;Zk&jHI11mwN%%h6 z&md06%Qzu~bSNI3>97hHaH9boXa|@gvX!yYBsxF?7GX2;7q)Y8pdKWdupiCrP4xK_ zNLS$$HsB991B;l2iPd5b%tOzsgU(|;16hU36EeEeuCBbD>|VhPup=Bx}-H&j*aNn zZAH&(FOp<<0iD2J^trdu!}uvW&IxqFr<1I|dwP}zXY>cMy5V0m!+dTga0af$+2~>H zMKgI99r!EcFMP|z1cuPx6|k>v#bRvCVr9|xcQ{avb2?4Mz5g+8xP)eO4V_^zvvMM3 z=s=6mtyqfgWlQWc=yR{4nSYEf{pZLchTqWF`zm@!$MItiW4e}#GjBr^?`k>3={Ze%6rl9vL&`jr{6K{yyo8tD3=yOltYJ9qk z_4kl{MuVB3LznCdn&IE*{V_LXGOt4aUxmC)(O2(Q+)g+#pRw5a1|nJo^qg205l*y` z7(tY}|CYyyCB(f%J8`|-e!YS&oy83AiE1G{f@XTX_{u#*xJ?$9-_n#JN{&SgONobx z%6RO>5Me`Qkko*TqA)fY?O1JspIlo=8Qt%(htFO58%MAnFKL@BgKL zU2Y*Za$dIstzR3}C@b?ofu>EAx-+Nh{K)!DzLtouLy=g&a^ delta 2245 zcmX}sZA_JA7{Kw1I0l*)2Q)~r023)f5-CGc6iY%uD=J9HG?Mf~uXD2xZl{&4wQ{%} zo3%B=Y_kuwrDv2MTwiMSL9(`5W3%a)bE~$NuJ;mUk=iKK!_sex(=lr<* z>z2%!($s4~8zL%+uEL0yarfn1Xd}fD^>_$p;TKqjr}0Ys8L!1l$SdYgkEp;}EW$RN zhaKoRgSY^Pu{SO5Q(#ZeVwY8&{S^7w{&!qfs>VC(yGSPy7>o zu!7~g<3=>qZAda=2>luFLW^=gT71WmHN_dE+~Q*LK68m1CrC4@sat{$ydGV7KYA29 zlK!3O1bfgO9YTwB6g|^#&|)1&$C*SYoJC=|vAO6x)yM`j(aMbv_M)lpM{8gUy7FPP z+DCC3eudO&e2eb*Jo^3Lkyk7vjqE8_pbP6kpMNIl--{mAVXXA`f07%&_&t){C}MdI zP>BxMgzj`5y0gvbf?q(3>?L%k!{|6~q0fDc`GqF$&!gi`q8lw^Ri(@y72KHWdUSvm zbZ32N(d|GN@G3g-2vV2v4!WQZ(cklF^r$A0Iii^ST3a<(h4sj3L>Ib%LCpAt?cDgl z)5!;~pl7uY{rmvB!x6NIK1ljMN&3go0l&lbIDytw1BK#_yU`5|qWwG3jqW%9cI4>b zSCdcIJ=jEa5q*U1!71{8$1Y$QaWmmLy0E(mkHY2-ZDwX^{%-2h3-gorE71kq>-pO( zEL-ao(UJHN-bAcU-iv4JaoH@;I--r}B<>@&5;p%I9w9i5e0Ds#+X>s9#5&>*=QqVR zGjR)H%50mah$VO#(UZJij{fQN6AvVP8?l90MfiX4U$da^A_j;xNvE}B^N72vxo}+h zLVFZ#Hxm39{%_XC{X{phf@mhT5QBt&%eNB#1ZQL?ipsJVic+1o@y^D%=1X-OZXgyA zRm5guI?+xH5&lCo5?0Sz!fJV#h}>lHfx_Iundefued%Qdxl^S-rE;H^H>9$E%=;(% IcjZ(60-ol(9RL6T diff --git a/loko/common/locale/en/LC_MESSAGES/django.po b/loko/common/locale/en/LC_MESSAGES/django.po index 516abce..cdbbd5c 100644 --- a/loko/common/locale/en/LC_MESSAGES/django.po +++ b/loko/common/locale/en/LC_MESSAGES/django.po @@ -541,3 +541,15 @@ msgstr "" #: common/views.py:644 msgid "Erreur lors de la lecture du document" msgstr "Erreur lors de la lecture du document" + +#: common/templates/common/components/document_viewer.html +msgid "Dézoomer" +msgstr "Zoom out" + +#: common/templates/common/components/document_viewer.html +msgid "Zoomer" +msgstr "Zoom in" + +#: common/templates/common/components/document_viewer.html +msgid "Réinitialiser" +msgstr "Reset" diff --git a/loko/common/locale/fr/LC_MESSAGES/django.mo b/loko/common/locale/fr/LC_MESSAGES/django.mo index 01e87d0112ca223a77d75ee026e85b83d1886106..8d040b29ad2b38b3801bb40dab477e9af05d57d1 100644 GIT binary patch delta 2611 zcmb8ve@vBC9LMo5$h~^~frSVJ0vE-LbOQ>_A5dHo3J?j=LLwuP5U(gGpnoX(w3=wE zl|}u*nqxI4?EtZexH`k^B=*kaLc8TN3*rRM!}Qr^^D&4Euo&a97BjF3XW?N? z!9GmHLDZ0=Sc0Emnweu$bTmQo9J3`@hRN85dFY@fI*WyP5tYban2ND;&2ll_wF340 zK2%~yQ3-(SW|=C|u~?&ijyco%y3Ru3d`(fw?!!j)K!&tV;2#if|RECDRX zBy7iJ_&l*fgqm=CKSJKowO8 z@4-scbK6l{--YC01E}%N;6l8HO5_*Rj{b&0oJ8$NMk4#KjA}R-4cvg*;x6>#5!A{C zQCoWs^_HARj?aETCGtD!_qS11zJS>^VHzs&rO28rANg1*7s|)BICQkaR*b_VSc@-U zE?!5iXd0D(pKLTx4r(PusONT|j_3rI#+Z${-``=MHBo>`l;{d%@m7vnfYU%nMbU=J zv=8~%t6W%&okp$bJnFr@j5?|~ma7E(s3P5fI@7(VYCn#e=o}W}SExj$Q8hM)3yC`x zh<0ov>IVl=nZ1Ha;3R6ok5B_#LlxZ()S3T{)UCzykiO4E-Os}+3}H3Ch;{fK>aEG) z90Pj)Yv{0B)`NO)UqThlC~75Rs6>86ZT%GTufpQfqpximDxt0D!(P;m^r6OiA5~Ky zUrqv@3;Eap7m~Lz)NA{#d;d1F36??@1-Kmb8n&Qn z;wb8OXVH&eA|JcS#nH-Vb5}peLSi!Wm?-azIsFXyBLa#7>lk6K6>>bXw+|J4}{V2mCh)E*`@pqd6~iu9sMmC~nn zB5gO^h5N^6W;%Lt z*n4}BC@0kR5zC26{XuIbY9hVpMU_!VsMOT7Of~J}7D5N6_86hV+)1d6^=>p1+8-+0 zy3P8XSqq&i`v0~HI*slhMff!FB(aQGLF^&ad_)JahIoWfdw|ec>pbd-9wLrVD<-x^ zdjDOXiFQ*hmX4}zFYy$i3VW8Q?$7h3IbHNt5|0vUR6wN2H=}A#|1xy+I|wyD@dTka zUN6-yVl|<*j%Xv+5^DDm+ti`WAXX9EiH8U)ZE4xx8Xmdg>-G4`FAW{+?A+7ZH4;p3 p^2BetG!*U#_k^2whr78qn7BH|+Zg%2|H6{jM|LKC?)`s1`3DEV`ON?T delta 2513 zcmZY9e@s_xqDCsyHJoNDIUIXW8PSIo!sB(p3m$6{ zHK@c|PziJ(1KR7T-|xp9#k_v zEfXto1};Mu)84>hbWw>M#Weg1lNsMe=v3nk%)xxtS1Yj)^@2^v9_#(!!79GZd9U& zP%}P@dj1+JVNFjf7LS@~BNukp)}ywz8}o2y8tbnYAL0f{+i6tMT=M-BRZIb<^$4b* zo|}PM@(N^3TZ?+(Hk^#_pb|NZ)Tw=nMR**wA~#V9rDw4IdT}-zqb06D2N$7c)`?o$ z9jMds7Ak>*sNWq!RrR;1fi9vF{t3z5enus94=EE%;e#eP4dZc+OQ(s>d@RJbQ8O7r zz2FKe^FRFWGs#L@QjIlnW?iW753{Zs;4&(~o5&>XE>cz&WK?Z+7AnEHs6^Z_SCX@p zsG0Pj&SyVrYlct*TtF4&IPy+&n7*pI0yWS^EW_=nM2@0r>I7bFGSw z5@NoH&I2l7q!Pnkh-*C|NHa){i|5V{o7cN^LWWp+=V(NS5UR`4{A#b*hd}D zN}Qnc-$6$+=|Uy)E^6sNL5{u+V>O;bC6xTAw-U2ZMb?Z-xB|nt4mI#WBq#d@RYTWN zGylzZ97`DAQrQ^oO_&Qw+8WgP-0t815cQ&AEX5yD$1OxQs)Zud@0O#3y~v;K_NSFAF8O1Alq+W`i`KA=@zoRHimj`5~FF! zb5UDYi+bNGq>gO>l}IF)^$*c`j~gnok5K3HJJk6cN4+?aUu%hT(ZOQW%o zC4R~O{yu6;3faFnTtlcmO*F=OUczmDKgjr2O;8K5wuP$(tnxlu0Q>yDs(LfAfvEHE z)uR$xK$H?a#BxIQqhfx6c$IjD(Eou=#7shyRf{;mRJWN9D{W5^3kkJeqKtT6A875w zl335Xs4ku$sG(TXtktx?t%SBqt%1;1ZX{I1IvMK-ttNG>7WphV*{${ZvFmeOU-UoE z!_~w}LdW(=Vk@B*BD#qRViBP>n@A+IJ1xXELOZE8pLi+O``=}XJ-|KH%*(_oLiMG# zIMNoH>b^p64)LsR(b(r$i7!J{p8ip&5IP7ohgd=A!0SkL5#@wh4be%2^?^2vSR3nk t$6_x1^+cua)wH+wcW#c3g?0p@0~6Z<(ZBM_<07*Q2BXI_&m{c!*1s~@;Mo8G diff --git a/loko/common/locale/fr/LC_MESSAGES/django.po b/loko/common/locale/fr/LC_MESSAGES/django.po index 543dbdd..0b12f73 100644 --- a/loko/common/locale/fr/LC_MESSAGES/django.po +++ b/loko/common/locale/fr/LC_MESSAGES/django.po @@ -527,3 +527,15 @@ msgstr "Accès interdit" #: common/views.py:644 msgid "Erreur lors de la lecture du document" msgstr "Erreur lors de la lecture du document" + +#: common/templates/common/components/document_viewer.html +msgid "Dézoomer" +msgstr "Dézoomer" + +#: common/templates/common/components/document_viewer.html +msgid "Zoomer" +msgstr "Zoomer" + +#: common/templates/common/components/document_viewer.html +msgid "Réinitialiser" +msgstr "Réinitialiser" diff --git a/loko/common/locale/nl/LC_MESSAGES/django.mo b/loko/common/locale/nl/LC_MESSAGES/django.mo index 3804cb15c6ac7b65317e9ff606d145fef3174a5c..e47b6d759ecb26d39faa885c2eb079b2cedd7dbc 100644 GIT binary patch delta 2196 zcmYk+T})I*7{>8ecSV-f@?jB#Ru&7Ebp?x}wWUZ^RIn8bx>c!y)@;ohT#as0A&q;{ z`q9=V#tl~*@4Qgak`Od8y=X#AOf+qJCvB>MM2(3W(;AH}r2Ri2vA&u`8-bI#1X zGiM(!ez+ucyTIRPl75p4$;}M*SXHo4h;u|=E zML25W~p(Qnr;!2^V%_7!NzYM?Elt>gW-^isM*{`8j4~SdIC(4)d@JHPC(T z`XQXl`3anfSFj3yLLdFxb1Kzb_#4$hIA~UY%WxXDp*reB`nE%;nH@utW&Oy{1~@e0 z52)mgqbA_vC9()>FoMch2bR*m^-!t6K6m3PDkCGf0H0zxRxqtMaWyIf2@K&kr~zI; z&F}`Q{TOP1e$vO>EE}~HGjI+@Fr^o@Qpv^LSd6{SG_q{gkF#(H)$V6hO7EajpT$MJ zuow%m9@TLhDq~TMU>DZlx2OSK%_aY2$*yrhDfR) z#$Z7fR2`Qhx2zVm1S?Sk-HBS`J*d5M9F_V3)E>Kz)%bggie?<-s#08nA*@3^7)6>` z4{Ck)&7$6y1PGy8qgC|rY18=wvPo-d#o6>M;cJ?Pi>^4wK|9z@fXOmb_&(e z0P01rMeIG;vrPK8>kM(oa3kg&tyYrfDNcjEJsbO6^r!!@1UXwdr+xM zqdvd0UIViqQ5m>}{A`qimh3MKVStB~v3aQ7-G~}c0@d+hRK~tWO)!nh+-1z6fBTh+ zcH>=~f)8~A|3Gy-;ml%G`dV^P*Go~GvBFu0daemI!1btho!E-IPzpiW2Iqnb7RtBeYCP{X4`qqK(i1 zSL*+N4V5n9bwWj(L#2vX>eb9Xa%$9!(HopL+eSj)cZg7#pW)@Pj@oK>wgD#-`kLku zpAhQbmVq{wcK>2RpP5Pnp^c~ih3$k&4WTvsuPkyErF9|kmOIxzQdyqCJFepRE}fO1PmXE=<5UiwE zv_VyB*~H$a>O}qHeMqQ;iLJ!Pgm$YwnRep+!O^MPe1WFnbG>`_?uqRmYzVgbr?(HE ziznjA_>S)Qf!N^j+_Fho9huwb^B(vE(Rk8pofte>_{^8n9NT{&8SCzjCDKP{JSvBoGR$pe;1Yk`Ofd|IeO*H_!F_?(>}I<-V``dd|7D z;E(yqPh+$DgSL^VC9;`_1TT$bM;jOw(TIasidCZ{#^E$9!-Y5nS0JavX7v0Qa2g)K z3HUjB-FcjggUJ1os2vkg!-2c80hgz~gkEp}eb7-HkEd`F_G2Ah#!4)`EusSJ(1A9i z$6N6(%;O!n3uodU%sAEKbecHOhdy8s$Kro@J64tqJ!lF#qgEtI(SdBSh20W-8E?f; z(Se^x{RU_A`68OB3U2BI=3u?4UQNd@cA}Yh7w6zdI2AA847`qBSkLrwxD?I6CUj% ztMD)M!J{~tRf!U8#44PPZRmh@BFTuZa`JD=-sS*X>|tjS9Yk+%7#+wb=#rd3AM`ac ziTD{E_@9`?F%-aKScVPwJUYN`^!i?OK&R91f3G0_rgl8jSvDeKF?vG6+1xXF(FgXS zGww%I{tG(53=8ejm7=vV3r%$%t);Elgl{0piC#3LCozZLCv?2sFp0@6qvf z_#pk_Fj{;cr=CG?^c^~|3+N37u^q3VYu?7R9OxFLz@rOu_zrSP97QwsB~t6f--_g3 zI=(7ikR!a2Z583H*8Ab6b`O2ukXh-mM=(!3K|DpwC43c0Qrt(F5eK<~uvy&0je2ta z{Pq*`3IBv{A#BeQ8wjiQ=4SDjEoW+-%p_cn1;lbc?Uto|*ZE<>dU37W2-}0ilZ16sY;B#L ruWsJ9qtHCMJyYl|$!80{l}{c~D5)IC7H(8s&Gg);{=4T|%`5){hhD0E diff --git a/loko/common/locale/nl/LC_MESSAGES/django.po b/loko/common/locale/nl/LC_MESSAGES/django.po index 2d08ef6..dd7466b 100644 --- a/loko/common/locale/nl/LC_MESSAGES/django.po +++ b/loko/common/locale/nl/LC_MESSAGES/django.po @@ -527,3 +527,15 @@ msgstr "" #: common/views.py:644 msgid "Erreur lors de la lecture du document" msgstr "" + +#: common/templates/common/components/document_viewer.html +msgid "Dézoomer" +msgstr "Uitzoomen" + +#: common/templates/common/components/document_viewer.html +msgid "Zoomer" +msgstr "Inzoomen" + +#: common/templates/common/components/document_viewer.html +msgid "Réinitialiser" +msgstr "Herstellen" diff --git a/loko/common/templates/common/components/document_viewer.html b/loko/common/templates/common/components/document_viewer.html index f5e124d..35f8817 100644 --- a/loko/common/templates/common/components/document_viewer.html +++ b/loko/common/templates/common/components/document_viewer.html @@ -221,10 +221,29 @@ style="width: 100%; height: 70vh; border: none;" title="{{ doc.title }}"> {% elif doc.is_image %} - {{ doc.title }} +
+ {{ doc.title }} + + {# Floating zoom controls toolbar #} +
+ + 100% + + +
+
{% elif doc.text_preview %}
{{ doc.text_preview }}
@@ -366,6 +385,19 @@
{# /modal #} {% endif %} + + {# ═══════════════════════════ Inline JS ══════════════════════════════ #} diff --git a/loko/home/locale/en/LC_MESSAGES/django.mo b/loko/home/locale/en/LC_MESSAGES/django.mo index 54a2c1d24c338827b0e17db53a972ffd245ece2f..474eb1a292143544b514a81ec5f99fd76cbb96a4 100644 GIT binary patch delta 5373 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 NC%5yji|r8^`aii@0T=)P diff --git a/loko/home/locale/en/LC_MESSAGES/django.po b/loko/home/locale/en/LC_MESSAGES/django.po index a8bd5ca..29d031e 100644 --- a/loko/home/locale/en/LC_MESSAGES/django.po +++ b/loko/home/locale/en/LC_MESSAGES/django.po @@ -1137,3 +1137,12 @@ msgstr "No interventions to control" #: home/templates/home/widgets/controller_shortcuts.html:72 msgid "Voir toutes les interventions à contrôler" msgstr "View all interventions to control" + +#: home/templates/home/widgets/stock_summary.html +msgid "à traiter · en cours" +msgstr "to process · in progress" + +#: home/templates/home/widgets/stock_summary.html +msgid "Aucun bon à traiter ou en cours" +msgstr "No orders to process or in progress" + diff --git a/loko/home/locale/fr/LC_MESSAGES/django.mo b/loko/home/locale/fr/LC_MESSAGES/django.mo index 59440879234514cd19af9ac02c79e78ec216d217..59ccbdad81becf79a740cd5fa020e50612231ead 100644 GIT binary patch delta 5372 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 diff --git a/loko/home/locale/fr/LC_MESSAGES/django.po b/loko/home/locale/fr/LC_MESSAGES/django.po index 62d8407..f40a182 100644 --- a/loko/home/locale/fr/LC_MESSAGES/django.po +++ b/loko/home/locale/fr/LC_MESSAGES/django.po @@ -1146,3 +1146,12 @@ msgstr "Aucune intervention à contrôler" #: home/templates/home/widgets/controller_shortcuts.html:72 msgid "Voir toutes les interventions à contrôler" msgstr "Voir toutes les interventions à contrôler" + +#: home/templates/home/widgets/stock_summary.html +msgid "à traiter · en cours" +msgstr "à traiter · en cours" + +#: home/templates/home/widgets/stock_summary.html +msgid "Aucun bon à traiter ou en cours" +msgstr "Aucun bon à traiter ou en cours" + diff --git a/loko/home/locale/nl/LC_MESSAGES/django.mo b/loko/home/locale/nl/LC_MESSAGES/django.mo index 24b7e4eda94bd12877ee7ae6a13fc44227dd62e3..1fe79dd69cd0e9bd04eec02c8fe9e126a67244e4 100644 GIT binary patch delta 5391 zcmY+`34D+D0mt#5E1^k>B#uPH6B3q4;wG3QhSU{PX6UBU_&1^?{Ke5ao;Ic0xGQ2z z+qAT_b+kdThG{9I&N`yjsdf#mquAEh)V8jl@BjH_)92;;fB$~Z`MaJcDwbATu)Lak zDZJ(?!*++nkPX4c460^Ka$W5;W>h3)9F3{?9CpQ>n2xtF1KTw)raeB1X}B46T_q-A zctg&?9ykK?aj-G2IY^-mJL)&`Zj_EG)L*~{aThkhLrB}qmskt0VHn=VQ2fCj4{2;n zH|h~sA2Trs$6+(fLE3B8-519OHN`W#!Ii8_BC z>P9QE2EK{9ZVNICW*2HIPa}hBt|80A)S`D9xu(dnGp(DsUZD>=bmC~#g$39Wm)QL~ zkkK?JZT-46$T22_{c+d{Q&2;jjXcx%k$+|dKMbZRLpAUuX5u$4h1wL-81L?wj#|xg ztwmUm`f7~8O{gB1qef^yj>W^M>smHv-CzfP)Weae22Do24RfqZt!^m=-MGwp2=%~= zwtgKo)c-}Tfd>3I*cIb(3~EYT)KnFthI#|4LFKl71P4<80@E>>i+QeV@+hcfg{YPm zqlRid>cRW*DLjvw<6#M210O-wm6?QEJ4L7-ud;4NU4H-_{1o*T-NQ5tV}4`w{`aS# zxynX8pb&N9VyuO)plXIjYJ{?oiSY!f5RRx!Wtbh)RwMnOXtp6DG&M6HSLwmuZq;w;qL@eFF{*P=#lH)>T^Snt^5AxYkdCZaml z0W~sxFd2s@G5$L6v^{YdYVoW=_4Hj^KY@C{6=d`S-&NU)@2eJ5CejD996RG42E1iRuH)Ch%fGtPHS3krN&OcH92hoI&v2S?zGs891%)Ra`` zRY*Vw>tcWGk0Viw_$Ab0-GMs)Eb6|0v-MDVn@T+iqxJrerr@xn0CmAC>vq)KoyIu) z48!mTR8K=$X=*?OMq&%BhiNzw2cUYs12rQ1(81%_6TihqJl~{r@mkmq^}t6_i)A9J zCo`?9t-DY|Sz+t-`JCyzcGh92_kSvC3TC1f>$BFy$nr3&(A5J!qM#m}LiMZ?Bk%_5 zxSpmPgrF8@B&z2zs2(RhWoN;1a4q z|Fnj7^Dc<9c0;X+;ix~$d3Jx1bv18ev8aZ0?#}q@wHnM0^*9%` z+UKH%@G$nm8*cp>T&ywhm+=zPcHS51n7lbkl8nVWy8>iwV?2Ve^EvN_W#-@1E?!SrA)bCm&dV5ouihQzN zlR-f@n1YP5nT?wJU8oixLp9(ss$n-!Q}Z9x@fzvg``-vvAB$?BAGHYQqek#~d%Og- z*4_%}@*oPj;2_4~dDJ4gi(2LN7#1xa2lW=TK{YT9+u{(^`SY*|mY`O58R~u?qZ)kE z`gc?VzQ^V~-vs@_TRe%V9;Twc>Ag@xo`Y)0Tzh;8szEQK=6VZih>v0{R$?=($(WE8qrzks^{}5s7EE3h;O47*Ev*6zedgNcc`9*_VXGRkLqbRjK|^V;4I{g zGiy)}K8v03maQl7z1DMj_h>J!`%)$pFEDH>__`!g7S4donm=the$7}wbPtEiFLhBfgZY7HE*$3H>! z{4!Rxni!L_Kb$3fn32C3%YE5MCKmLA34h zFqf=V+@WxY%ph50E!j-ICPT>2i`>6yA#NbA*`43s zcW?mZ!(`fh`*lNxs4RQ$x2-^IOT zgsmr|KBwo&YN8LwbTXE7CfVcMfj09wS@H<3w+&OZ4W>CfZhc1io{@ zl=EzTp;hc7@ua6JY)w7%333D9E!EGFon#$(k~~Yay-aSC@#F>KBS*>eWF+ZDv~}?a z{E7M%&i%hB7VNJq6k;%6H4PGNDB=F~DIfW01wztSO(w9V$s;w=BG_r(rB!4AU+ZPmm zN1mwKVQr7c$pSLV?h`j``6|{P&ChHcZkXEzRM5Od$LmXmYGkIygY{{J%;q|C3Cl;PtFZj%QEK4*r{Khx)bf=d45 hPA*4$6SDHg`zGb)^!=i`~VJZ=%h)993 zT0|w3U~QlQkrq*wv>2g4i{gS5DhSBd;?f@U*nWTW{&NoR@XP1k``)~Fw>QJ06~5EU zeZjMF5oM0!Cb^reuIt=jpL0=nsnxmMc;_;(D`w&(?22U=z~k5-V-uX~fTJ)Mm!Upa zjcxH3=3sIY=SJW#9O7KiZK04w!@p5CN^R;~dwc>L;aY5tTamuGgIEV^Fd9!_6rQ#7 zSFs!QZ!i`!6P=61JWRpSql7fAMz&&FW^1+6KWFDXr!mE1L}i8Y=)~* zGggV};89G*%h(PhxyX+lFck}}KHFS_^?APALqR<|fEw|6oxp!#9NtDfIGU$u#A!GM zv#|lLN1fk->iAyF$1ku2rqN4322l4Ohr0hv464T^6x4zBsGjacEy?Go8#d%3nPnED zZZHScf#QRw<~dZ)No^s1Ni+ z-RMEAjZ;vcD?(=7J&jt*709Hy3S=9&!>E}%gKRVRwdqS?{&is@!`BBpVk;biYJU=$ zMYr7Q+s$fhNc%bLjMq?8o96eXJO}ybhVzF>bTd&MT#f~}4eQ~5f)u(_(7bCG_b>-y z4E2YwF-}H}xCAvrK^%jNQJ=erX?P1Y!UQVnPzLHP=xz=*$D-~VoN0wcs0XgM`gYV* z??h=`RATidIEeaY4B%DNgWGcxIu>*R3hHSgYO2Pe z9vsAZScY2Tn3i4#n<4whwL|Tlfv6FWFsGqDzYzVn4)qr8#auj!dQKhIxrN^UGzxk^ z0CnMDtb=1vH=2O@Vw#7V%7ds5pF&;tC2GW1P&4>Fs$+Fqdz&r}HA8-6o49P$-Wrav zJl{>Dpc~Fd-Ef&s;7aU-TTngz6uGzi9yRsJ_j)7jfZB|OsLzkJ`b0ZF6C-F}iMsDv zZEjn=Q5&zve$?BMhno6P$Q$J5pmy~dbBCR;!TPjcMh)y1YG!N+34 zVESAVMqxVYemPd}Y3Bz8DQHbbVqKh!x^TK(P=Wy;?>Tm){Ya*_c0Xc&>gidYMc9}6 zF3iE(R?o=xW?~j{3%3b7<54qMi>uX;i+VsY4#d~3eht+jKR@moSq5q|<)fx>AZjg# zqpll^nvrSP6=$PnrV@31HS!hWjv`ANbT=uCprJlb*K08bwFGmqC9cK0@LlYO$55L# zo>xP!Q#;i4gHe0s39FYPljL4Q-S-6g@v5DVV$}NmacwDRtp;E!7GgBcM)kN9)q$lL zj~g%sD{(5mj~a11cA#dWGx{+fd*MXX%xyt+a3AV|ML_yk{f2D`@DK4Y6=Ui zzQo*S9znhDmr+xH1GPDCo3;76V;i_A)B}5<2GAchu+bQ7OkuoTFb8#mg{aN=B5LHT zP$PcB+=X$}tFbnIf_lIi)CezO0{ZBEA~waQn2mZH23Y&ZuFSuBR7`^`wG->iov5{| zLH!J0w02)N@5aqgOVttcF@Rcv#i$3Cp*r#w>U-r7YQX1EoBZ2u%)h3v7r(*1F&{OR z&!c8w1#0B$P$RBD?f!kJDLjCW;Sr3*Ha)zx?~Z!VXjBJhpw2Hqb!dgvw+1Qb0q>wL z{J<_aZSB`l5B>@Dl^fgBGaK)wJ`8o^B5Z;SP!BFc4Wt5-a5omwJ9qx8xNy4)pyt&qnSsIunnf-{iqI4FsGt+`wUFO`KZ0K z88yIiY|ZoC+Y~hAXHgyb)-H(X<8>$jwbtpVDGp!@9E~Yhf?DH^c7C^=KY^Ojo2Zfh zfErLVuSy$C!=N_T5DMz)Sk&4Up+;JY>exoqNOxj7)}SA6B5#t5>FafDFm|Rs$?C75 z9<;~m=gl8cOVzX=^RL&aB@3&bW}rHfi+W&RtB*l_U>a%$=3*UOjhf00sITBRQ61ln zTB2jteg(C(-=OYOi=R%t-ZA}|e>Ei1ps8tv5!fBI2l7zo2ci#$5*_QvOTqLj{t%0^uh2wZSf6kM+WD;pjJ|;Te@o-;u8vV;11TnFNF=EuFA~kC=H>zk9}k8L7$9TyqUv~#v?RYI z9}*qfvY(KpaUo8Gjs6}(Km#SS3TSoJ-;uNgQPb(O+F_V ziRO^?2_1vYFzv0d8AA(+o5+6hHo5air1A!N%^I)YadLnj@@F#Zjz->7_g9iaCX;KS zg?f^bzJQJpeM9OP8^D5sI#)~5G<6}gxEgT#|P