From d25da7a91f96ffe617efa03585e6dd9da52fa37a Mon Sep 17 00:00:00 2001 From: Carlo Date: Fri, 9 Oct 2026 21:12:30 +0200 Subject: [PATCH] docs: anteprima di layout delle tre schermate + script di rendering --- docs/anteprima/copertina.png | Bin 0 -> 26175 bytes docs/anteprima/dashboard.png | Bin 0 -> 65675 bytes docs/anteprima/impostazioni.png | Bin 0 -> 40573 bytes scripts/render_mockups.py | 215 ++++++++++++++++++++++++++++++++ 4 files changed, 215 insertions(+) create mode 100644 docs/anteprima/copertina.png create mode 100644 docs/anteprima/dashboard.png create mode 100644 docs/anteprima/impostazioni.png create mode 100644 scripts/render_mockups.py diff --git a/docs/anteprima/copertina.png b/docs/anteprima/copertina.png new file mode 100644 index 0000000000000000000000000000000000000000..0790885979339f3b07da916303d653ff6b2fd459 GIT binary patch literal 26175 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 literal 0 HcmV?d00001 diff --git a/docs/anteprima/dashboard.png b/docs/anteprima/dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..7462a649a4999a2ea832e37e84d888785735f5d7 GIT binary patch literal 65675 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 XRLJNw6der8D7)2AaZF-@8jvBLp$M&VBfu}*8 zFq_EgWxT;e&7w5WxdC+DzB$tM7DT+TJL(Zkv#+<$P_OaL=6;^OKCqZ)_LNaO{q{Vt zNMWek8(HL5DF@~ZS7d`*=P45if4jmd2jkqlPpWiLxP|)X6Im>l?4pPtK-jeP(h1u@ zn4X;-6;rvJl$7k!+t&8RrTCx~gjbhatLj}JgFUMgWfy890;{$Zij?sN&4QbL)w4;_$7`Z{W%!e#=o4NJ#xS9&3_BeuHO5NGg(LD z>n*_MGy1tybYVdyuRTFAlKK*NPYmB{>u}_wsT2+kF%>m=h8pvGE^TpfQ{|5zRUF^$ z{i0`7N}o`)QCFWBGaJCe!wb8Qg@b(vDOY8-vHif6_jW?fKsh?m<7{o48}uIYgCh*1 zV|Uj!tnNtQwt{$=B*AgX=uL*@PzwNP#*Coz6z`#bNt9Rj z|D_||mOh5(1JGj8{CJh=J+M9jU%R?{i&gvu==%SE0_cQ=%nugq#Mu)n9Uc&L?9b24 z;(#kYaiq7shR)*D%=Z@u2ex>RZfybpWwys=3?tEYiS|8!;i?<@1ptVLoA)Q7^l|GU z(7|x{g8XP*1<=77@D*S9)(&XV3tC%_eh~+JE`T&TU|0rz*cWGpa?}HSP~@JnIOg3h zh3Wp+A%I3Z%mziS%TNHaCOROfqWz@6=N0sC9(e(qel0@{{*9Z;1WH{oo;WzaVRZfT z4b=JfYj`n|(ONm91+;0wp5fi%bKPW}ua>rOKZ7^i!QV#I|5KK&cLDf;|7QVrIjw;` zKWHPGJeB8vU-kCCEKDBjmhXTD3t*{iTfZCVtU`6$;htW-R~?QU#%FABiT9V=Nbggo zTCkh91F^1TU2v#R`?TyBP8_`lXi28NpfdUc&=s&pduT$aKyyidQt^J{2AH4>v=z4-SOSLEfrlt54kJcyqpiIPjN&Tr8?g^jTuW8%Mq!80CEFP-gg zF=sP|RLX3czlTnNEYiP+`fLpM7_Wdsv1|Q$R{jO}2R$*s?*Y;t+_-!Bi1?luirSdV>9!T3zccmf(HBCX}U8H$2hNG12i1Y|!`j$gCcm~H29QHgkfWoc!^g{yf+IS8Fio5sopg0{fZZI1l$3lTk8%6quQ~e{ zuMS=<0Wk=EyFF40Yil~4qm4T2slu{H55W|FGcmPTsp+?TT_X?e?iujfxLmLC@Ys`k z{5Tf89*__=A(uBb4ZQ7o*FvFKqNx5DaD`TtSKFHgUxnNP*w|TFq3X9_oq-|E0ZE!q zeiuLfPxfZOGUaglUqW>_sFN+=CUM#{%nDN5t;i0M->!1 zVB&_*W?Y1Y0+FNHiNZZ|11;ZzS#*HL+TaCSrtAHqciW>1x5wz{Z-c^++}!F5uqrea zqQsl5kvGr64Bhvc=*UHktrQesg=DJcis>7$^}Kh}K+^BLpWQT7@MLrF7K4b-kxtg} zS$})wCU))3uuoaeSE^M3Kr2gChMKy%XsH+wBPcZ$iuoQ_3??7D*ZaN>p#LH%jYAFa zKpT5|b4z1wb^X}5xR12(L$E6acfS_03~In{PcPsDPA_!iE+9|?mMgHhZooC36X^`5 z3HZ!SkKFO~ot(T?5d?})^j(TJ*G_Ui;^I-PD|>71LmBr*#4)_8>p~?mdh_#-kH4~5 zZeyC@r3?C0Wo1d4s~j%Q@>{asv>rbeGaQ6g-aC#bfVtV)T@~QLHDO7~K=G0^f%9SK zH<@;tdclXdu#FN0;O~39jymNqPi#W z5MxyM0A46L5wH7F9gTOrZPyE-EXR511i(CJG&3>q!pVgX+oCjWp~vxX&#QB+E13Db zqOUY2rZgsS+4#cN=+zQ4)TpJQVRx-zxcE=B#d?z{=_B3{wg>x*?A3lvWMkRFN2gfp zk86Xa*p;G&CJT>G4~^t(Y;5T0f$~M`L4)~nSfA!ohOD_2y0$O4m+#lROiDx8N+IRI zqX6q6c7lM|BKVy@gx42av}r^h63u5WXiPhumRTUL)4 zB5C9#A|mps>fp}X5nwZ$fC-v%>D|~usMXxhc_IY{v>xYC^POR)fLDhzIRzLvl&>VD zqf#%n;}>7(*JNl|)3vsx`E7*WAU|pNUbh5B343sI%KFW0ru#6{37wWFxZ}8{hnj{3F5;T5? z#agTY+}1^OXny>-2@)(Fz-lB@+`nnD{lO}54G-P=7jA?AfFpe@yk$igDp56I5U^@>0|o_uYGUfx-9T8 zEw{<)Tn}KQlP+N2#es?GMF%~ea;&9^WR3z@WM=yTOB90afz;!2Sa5dG|Vy zzd)G47=b?e&D;#wB8U>YiE?s+2A#@j76Z-cg;rOzxjP(|ME&IHLrn(@z$!U6_aX+h zZScIXRJr38{lO;3&uhAf)UP{}#&^Ch{m7lnM+&yvB!n@c-2k?qrSY9i#Qf&D?dYob zf9kICZ@j%a#1x z0unRS;(vjCQgfQa<>}ta4aq3Ve!v2roVYXsQW8#P1H*at)=tRQTip!M$T9PkG#_ID zZWfvUOGwnks~b)J%f0CRZ`}S&+ZTeANW?v+*oSn`O7rvSDARr)upj1T#3xqC6fGAZ2ML|HN1Q6*>x+GH7TCVj$!uL+T_nnz%W}YWurpa)gTDz`} z9~;1lhl1fvgC{^8?M4O=EakZ@w~_j@B5BO3TBJmzPc#K>WlhaoFE@y5*Q(g2-XRYV zv_?nJQ_u$C>i$I=0K!{jW`*VNDJtg51*bf(d7AyuR?A zD=Av&3uh0`uaZ_)nmsiWrha^cii!hGd-3M8AKcs8QgU-n{=^NG zM90KX%(dqUK^iW*RpzH$#ez7^6dZU=S2?FHTuAf8VNo%$?LsA&SlGzB054z{4yFx_ zbnHRm@s5=vi#7yXOUtQZIVCzyNm+UOT)wk{2J;`E65~}D?OZaBP@_GUM?yn8r8nsu zG26d!J+WNfa;ZDZbM#p?xcApH)h?xHU$lFYC}Px%c2LRih*FF>$(?ntr?u6@;5aR; z#FMBNel)G1G}eD#IyPr+3n_gng}Yc|82 zzVdEEXG(PHZsY|j$Mxtx_tAemvJ6#QW7uj&>1PGMqu_L&^(Oh8g?e?^oTrrYR_rb` z*&&j^@HQx@CB5A_;f3ly(cfC4WgB$}rALvBbn}bO&OC>)p@xWnosBLoeI4>3fD1n3 z9SK}Y{d_jzt$Hr9g) zn+w4tmcg)4nC_S28_rPE=D%A|`H6O_w*Sh$%!Z%V0rK1?6z<31TgQ>KWaXYIaNpXj zal+k8(a&|eZf<_O=Udh_`c(Fh0+;D2L&R3BYLy~g;|u*zD+iwb;Zf`8PjHzddbTvQ zVRM-@#n;w1j)n6Mj7?pax5x_RSgIl{4E6Rktk!l&Y%4%%1xI<{zyYu^6wF`aC7iZO z&jG6ff5mIg<#NlK5&I4iHJR*3Q`zO^sS)pz0&;b96h~X2&}N-hUmbu7k?@$F#)-5a zPlIvkzNhWpq%oheXb20<@jo1YPp$5SGqRjcl(XtKEyshW!%GgG}%FGuhBk(}yRe zRF^ni(*U}{hY*&QmZUWL-bYIVl#j%3h<`~>U+?3+uy5a17YwHkRS2h<80$YM*V?1% z>r0>bDngV)TO9j(d#%P+4(f)!tV?C4_^mAWF+jG6L=iZ99th*q6YU;4vkJR5&KowR zeRlQBl~PQrtgBJE269@okti1}x%(yY{9P~o{2*&cP-Wez{7N}kuXm98kU{<2Op;eR z7PZqi>4f$uoV#r0GB1FNgvm!lTOg+U{{uW^2%TFvIc+szN%B1U(Xs)(inJUqcrM+(xOcO9OdmNNhG z?O);5*jRn__V1(y!7VNga&Wg`n1YQ=|rEnmHn3- z&+(^mGQIj?;-7acH|yI=l$wbm9bLo#4u`hs<3uYP-Au3Ip{7qE3^7KEr+LoI^|%O< z2g~5hbaGl2#)*D!u$>I_t$lzJWvvU%ntIhiEhx?NSkFOt;CuRZ!?FlVcUM=+6Xaz$ zPBR3Gz77Vlm_qt(ThBLoCs}QW=Uh$)WVlP)J1H7xt>(~Q*C74sScHJ5*L7?gB<6B4 z$=k*=l5y$_)hZ2y#b#3H2*f1~gr%hVh5V$XjV9j62R5%3`?pm%3wGj@(>??R6TUt6 zuJ6&v&+~zjDJ&Q;UJ9MC$hYeoI&)vuAZ+;$&}u*VN^PAbIQ!m-%)a)LifF8SM|(R= zn`fv^g`Tl&b9b7!*6G(EGXmMC9hrS}`UnR^Bmnxh{rrpxRR=HWdgl{xXa2@rH*#k8 zWqgIz|Ig^OVC1zpx3O){lpXh>X&jM~_LZa4L#V`xiDexP3OaDW+q5A9<<5h+fJ|^< z!vzHu8Z5ZiaDEdo8Mfn9!oDak-`cX=%>o^WTHA7=3&0h}g_&Gepc%c6m#iX|L{to! zjt$RtgoW-aEfOzIzQb|b( z_YYavuQStu)NnYdCaH@BY2P+B(U*R-Q48C$15@xv$g#*mm4@)^y_7=I?8nsq*z*Lr zS0vUbNt!)Glo}wXaFLPk#n0u5kzN3o#TRGhi&tju`_&D}@F!@CWxopMgNIwc`e*aPVl7!TJFJ){Iw-#HaBAJfmLC80EMP|J^*H$Xyn-) z3cu_yJ7DkyFP$d|*J!S?9de-m{pRp1odyfjdUbAB6}oEIkLkmTBNx&1d!$x2iM?YuJOU)ECPfPZc0{A;lA@BdIvk>Wg_#ON>Q_ht7MDz=o3y)~@<=`6z z05+qgSDC_xmE&^1pcbYItX#`(|3c`nMBcsuXtb<7Y3z9PSAU)z9Sa#y(7%yU^Dp7= z%s4UlZ_Sy&2U^(QF@|<^Dw~px`jW$DPf6^}c|Aiu+wB~* z2@1Np1VVDG8l=*N`xOBkLwVA$>J6AB*nJ%3=qotVl;buUDt4L?R5Sp&Si31JSJC&m zcj=@|ws(r*SDYDVUE8tWe+2(AdvJUJ-n6Ga3S083AaBqK3RjDLTuSmFHAx519wW7P zvUUn!p;=Iq{O0Ou5QYXOn6k2nx|+HceXkT*p~q_n)dU1!vo&|?>S?@p z5)&c+@D2@Sow1OOvg`l8OM!L`i3HCA>}gKRlj{x-tso2Wyu!!qnYTdzju%O58d@4Q z39~PSg@uYS=gxj}-WqSR1aiK#?#lQ{xEIV?Qw1o4w7O?&rD$0aN{1FA-A3;w-rndD z?+XkH`Wgm&mHi(-dQis!RXFHe>R-F=kHo}hWwli5S=1JNP0!+xv+9>SqHdoDExAJn4|Qj3&cO$% zMm5*Z7Hx7t^Pf>9b*a(YJJY~?IXX)2+CX|6VmU0r-bT6C#k=E(I|* zJ%NeDAE&rODgZG2)-`$bH!Z--R8y$Tc zEt;C3sshTSmPyF~VSKi>l9iPOC1n|#t>+hl1(I){=Vq0X0A{`ODAe3dE33Qa=NN!i z5D?0aj;@TUG159|v_bnU6W|I;bX?W-)i&nlU_`iUpeLdTi|xqQ3j94;T{b)M!kG#pLknR!s6=BHzy@8{3kQlgPEOy@iai% z^>V^|T8d64UMnz|3+X102*!G2F^@3l+{ZZ3t3AiSfwa%;SHxNj80cFXq0a!!tm znU$69PE7;g5vqpfyRSqcYoycS@WOp1T!pu{H_~O+)vTk0Gcr=oI_XMcuzJO7uDLm` z6U-_QJ%m6T7}Mdy?X9gJLPM(q_wT2WymU!ZQ;VEUZiCjIctJoutV+0QI3I~haWBqC z$w{Jemt4#fHqT3(hJF~x`fS?gmEK=dkOy1ys z>dg~=ubok?dSuaKdy|*_SrObpR~auRDfA5eDU6yZa0@kyif*t{f*ns^ip z21Ebhbn!lW%SQx{?W{I~$JgEUdhi@pCILIjlLT#X^6!V#84*tShz42tl9E#!*!@Te z2_Jc*85vCwTO0+N(_02NZ^|1Ro134*d~Y2Xno^NxVLZ~F*>nbIqB8LxJ_KfFW*+ng zrmsq}-+fgLS_}2WW@7UOX!~HFhoe|3m{#cNm=Ep;+C!N15I*DKK?Whnz*2Ho#U~g) zZm1!VRzX;<^>}z|UtGlO1vND_?!1sUjgAh%wK!rz43cfW*JJog|6~T>c>|$5&npRp;m5k+H(m+C_Dr4qb9*lLC9`=xw8O#}1QL#M zNgyTzWlx3PUKxrhojbZa@523%(9p}qexw;C@hx_jj8RZPK>U=n-X@+3%3R#%5$7ir zOGH`y>xVVCEo^L{U6|=0pHHa2tp(=YyCcB;jP>?Te|k!kFFdnc!>6*m^@WdOdFiWH zzJ}Kv6=!jMQ=PvafonX$j0{N2=fG;**w}aiB&66WU%y(j9m2!o~pRD>}N@adBtB`Dtsn!C91y!&z~Ra^=&-Q&R8WJCi`M`%J%V zTeS&wb$>6`hF|H=iDp@SQLpGUQ6jch#p>vXuHkHp+cw`aVf`6rExx9&x9#VJWZ6sk zCLw`^fdl0%x-h6PV~@ljx2toZRC5WG%s{Pjdn>*n%xtB~LXL;Q|;x1`qwEJQre zLj1QZB3?g?iO4%s-uBZ4Nzlt#<5doKKifz-@B@9BnRzd_g}HeX!qLvopj@jfMk^VF zkVqsFR4DxXE@-$eTktR_$SYPGe=Q>3wpRA_m1kl<0z%NTvT_|qn2B8s441w`Kd@4# z>WdXk8ymo3%G)P8Iyw_i?JYZMT-M#q9v@3dI2zG9kyzL? zp$P0n>e?%s9{QXNw8sSBNOuGYjgNkCNsKS*TA#^VMk&9RVH$@amM4&G`Vczx zy~^|6`}qq*o@shL!I3m7a7^0dGZvemivahco+!#K++0)R=L3YUA(F6f5f?5T^*ghQ zC`?1|kd4yYp^d4x*YK+25;#s99S!8oTelwaqtNGrpgB$p5p0R}@On6*ZegzM8xu2B zsPbWDs;>`NSb;0pSXf*<=dF;?Dgu0RzGGgRx`z7X)D#FqK2vbX&&z{n366WKHJ|Y) zIp8tI5%oIxdk(W7ku;f>$kjz0J{Yd2%glH0^xLbzM&02+?KZFTuxmvzfvx2fSE|eq z;X`8LIf&{mW@kH$)w$T&ft(sZE%z(@iFis2IR0`-T~1S;@7Q<0J;SR9&VrA;;uQlj zlPrk5Fn$OiRIe*j(NP(yfLq?$w>QKyBQq``VPr%PFPEy73WB)*0jDD3*;x4Q4G&L$&Y;@WI=8LWfu%x;nB1B7p!kQv z?Ch+{oag2I8`tcG+r~DR+Th2Wj_|r;U)Ju?eTs|K(*@pLI6?1!)hEEF$ z`jncAKwg-FSbJK5?ReNloAEYOJL)?+>L!rr!iI+Euhfr4K<`>hs@C1R>qD!3v=D{} ze!{CK{xlP9Y0=acNz<3`oZVe;uz(&b$}k#y~PPd-`;2{Ao47f+u)Ujg1t`=NQ(G7@z*NONt-iH+60rc=sS_3pTh^-P){ht6%W42>%^iaQQ)T8v|ShaJ|vM z#WdjeEpRFSyN^|t+yifU;v0@9be_u9J9~~|a8SGL@cY3(zs{$-jMEVZyn}DRhEW`` z8^#otJfHIp?_Ylp{byHfeE+lU{nbrR>AMifZ=Oe1-ta1G=b&f*HU=xpo5ssqNWg_9 zl*#K)G_HqRlDPF)Y?uv8ybQB-YWOc3Jv}cnetv0bD|2({cZ&K*zx}(XF4!TxJw5Ih z7nf*XF3^0mXQm(DZ}S%9S7uJ(J_*94zK{N_^7``?7Fx27c7~FYj)v{wUgn0G+WlX> z5C|StdIpXZo(XOw>EpcDdP2<$R3!B_>vpFv$HutyA1H!nb|@9E%jVY$X~Q;oDUzsZ zGzJ3}l3_|04jLw1uGZnHcJQ1Uw?00yJR^iac5EU%(8&;G*FODMCZ(xoZ%1O$0>plm>}TDUi_*%B-*6722USc}BECAT@4_nb7$Rgszt^1n~^4wKh@ zZ=!YIB=;q8UrJ^9GA@OXUB|BoU|t`deoQ?^7pVFv>mP0uO6l`ajJ2lQfS;e=etVk6 zcjx3HMK2;fvMfC^QiWa?W+T^Ni}bTs${m?(9i46R9?OG3TnSq|kH~DbF&%Q5sTLI4 zgW8|@j*O44bGt46SjJM$8dp)fp5xYAt9{DtgeNKqRW;JmN_6jziCKXskV??fs&R+a z!Zk0kft49Hbqp}YPd~sVBb)k~W16etx&$8u9Y}@=QfD;Cy~!}mDSqKQF*!M`3D)4V zV%+=r4`q{OD@^k?J8S#fYcmkdR#9gh zE2y~#b9YCre5B%c7eOI1bOnk}ugLv1A3z`ij5fHL(ph%CKCK45DOGeFi~`KuCi|)8 zeEj?&rBBloL@-&^pd>BL%}MxARiHbd$MgCo4<&eddU{qE)yYZ7T~SusE5hSnTMY~g zbJ7|@@eNFh7nL4q@neWedcab|G;TpYTai45Q+Np5*zm0E6AQ0wP=&`PmYH3CIveum zVxVVu^}?5jx6Y?LA#M4>tC zAH$HBTa;IrYs^9t_|6BBO-q9VepHPngjR5JsA57OAH+RQF#}%2)~%HgZd0c4I$2rH zRL?4yiJc0O^A)ab<`MuicUap|+}hgW&e2LdmM2MKOLFaeLUsUL|M|d@)t^8> zF{PI_d05U+cQu=*Zx4Z-p+CEd2^t)?>N-1l8LcZxAH98H-o3pwB_$o?Cz_@}NB5Em zet7&o0|&zLz~Le&C?=fiTMn=*u-v-cUmM-NlU-#5k5Fqr-} zIy#2#n%jC-+c4HxlBP5s^5fyu#N7kmx*A?>CN-Bc!|oU=K8Kvu4KUd(oHP%3=Jk(T ziBp-ie~Gxb%2-&aszUq6!4{}(ehD_?|0_JPl0({@4klQg@Z=5EUh@-7%0LvbB>oxJ zc$(AL+1bn1hqGi;*m&8V4$aOMrKhL=_%VO5&hBM3p`fCYF%Z}JF_ePe7+!8x!ph3T z#B|&HM^@#LCcMHY0GE=-Mu9%su`KTD^1MHe)kDO+J~%iyBt#Ypg}&BbND~V<+MLwV zDcnbpQBqQh`QLvhBl8s#ud1x9tfIoGY!U}21PABv^z<}0HZYG`tDdU|?jXlP_)WMV>HQ&Uq#B`G#GHaRlV3zZ_tI99RA zGzo{JpPb)3Fm5h&U6l*fdYm1M6;4H6gVk3c(QZgCG5?V)cf1hC2SqXq zUuR68M62n|l$+T*JD-5xACZvcOp81x@;d9xZY?kh6x{UmW_>#!5@j7o+Vm0T%D02cZV{ig-=hO zZLLPHu2Mb0$NVVYEhX)c04prC>`xI)^|P9kgL?s;@M*4L4Jv=-Pb3X3OH(}sys>Oo$3Q(e!!i3Hi&Qb9_ zOtS_=!H3BF;?21#>%EM3I-Uj(L=6mndYx~LSD3$_nwT(EKhKgSn{(ZlO&)rSYC_np z_QcyGmjf4C0v^{q3R!bTarAp`t|>yzeDIqWY;;`^!c<-vCNg(EH{f`SX|WEnHeOs1 z1hfoJTdWUd63~1L3k$pUKv)wI5hak-@$h>cZ*kv87t5AfG*}ud)-pFT8a3*E%${|P z%4g=}0MQIAgUfm=ab3>~?6+Z*9?Lt_YHDiH#hwR)0iEyO@xA&*Tv}G9b$E_aR8(wZ z66Z{q<%j{^ym;E(W=f$phn zJ#}ZLz4_MQSogC@6I!_>3v=@gxyPEHOid>mJle^uFPzT4#a}LA`1&60?;Y*pVaiC7 zSASS&7Us6V$M);8_w&7zKmBy+=Q@l%>c@{CSGKksugD>kN|@xeH6E*d&3?h6qUU$- z1_+!kE6d8tl9D<(I$j+N_rL4(@o>NNzc0({x*6AH45qr4l91N-5ixP&!BBUJ?IrlD z!P42yFRiVu^jdtpyt0X0vieUWJKYZnD-0=}w&0u|Z9M}6o}O2?S|q-mTm?`qw}0r; zDmP7QZgPn>)J}0nb{=|N#iypu4Gs=YPEG=MqM%@NFi`?l#;mE?@AAyAH&NKDJv7;} zu>5&gzFIMphlR#Rl>_^J;l`_eVP$3I?(Xiy#6*yu@$>OXNlD2i@tmG*SPQV3S4uut zO7ZAg?({FrhQTg@A9d}Qn{yk_jERW}6TbR5|Kquy@bz+&*jSNPb`fH}$p@;*203uq zoOS+Hoy~%&IO~o>VYk|soU5GG#S}MP=Tr>7COg&hXVIm3F|5I;n+UlJtFI>vE3UR# zs0W=8WoL>dBf$?(Ow9K{IBkFIPvR|0OY?TsRMn`loT>zVZhN9ckcUUT=JLzwKCn-E zVWX2@QQ`Q6udt|5jn_@!ACp@`Wb!_OST98g>e?OC+qD|l)7u-%sC&^$tk;n>F$t$< zF8f)pE!G~?x;UIImnsBJ=s3KFbDED8X^074Ee7`!=bY_Usvio^(lplQDrdixSBY^v zL`FQ5ppi?;VG(3yRdi_sEnS_X8pnTe2&Fc<>}P?A_ge?qPB76cxjI+XL@!r*C&jZ_ z{@#Ryge>_~+toe_q}glFD=q7W)+Zl#7hAhRo;`b3aXt0Zj{Vk;FpzRk)L$M=VON>( zK#>`>ZL!RHF_}0)3UmU_3cK{$L3Y@Ko5I(pVT_g?Bje+ZM+r!uWw7Mfw42IG{<#(| z3(a>=&?BGA#%u~f~Z!*Ldv zZ3`ib8h$Gw(f<8~G_!W~4<|q0zGJyEd7)GB7_N`+i*?gWOX}*Z>Nvo%R`14EV&A*R ztXrSKQj(KXT~?-yAPh|8wpL7ui;PUSTW}ZBJC|Z(W3!sBPTR|5P%HXqvP$Q531TBF z>)_sDKK~-ju@LUFyfIejb#=NLEurvMTzq0;f`f}oN&X(Tio0V%r@?S;7=Z_gYZIYRT(#l*$`>@2j1ii%!dUg~Hk)o3%tb{mz|U8#LAH_uPn87V0( zh5uUU2O*q6h8XjXbPS`Q({@s*D#K3{Z1_i7ntpdoVb}2f-k$i=i1_&UW`|@)GYHFF zOmcXw!#h?>e9;UgGY=0~m-$`QN;U2kF@#6wNR9hxkiS~7E-Y`)xh^)g%6)$4=tzmz z?bD~c+81i?-vc*HKgZ+S`O($cxkIS@X8#OHGr#Qb`^a{FxG`R=Cp`HGlpW_sTfxN4 z6nqYAi><*kji@|6Mxu=f2}+mUR^oaX>`?1VVPPeA(Y##^8P^5xhu;vt_1oSb)`!~r zQUvq$ZtbnPp*VQljtbOAWj|ypnTd({>@6_-v->=mKMOD13H7G2sOgz4fzP53u*o}@ z8C`Gg{{B$*xR>#zqM(DyRR$!WMe)>SU~o`TSvg&Q0oj%bpPK5X)T?up?PlHu)h;8W z#bjyw)tUL!>HaE*cEc2fyO7sX8_t~je#PuRqEk+FkHq8H?#umtVSR^vK0lzgG0o4-)j&8zk8^^x&g&tva2&7l z+5El|EIFE-5#AX1rIt+A(ZwaN7JY0Ck6hSmyJmF+!47qIcYj}~nYlM0$qlwfG03@C zPYj|pG&PI#8m;Dki~FrVjWC@oMbOHpuytszd7?%JZQi~^MBo9`1uW^qKo#;%1&JBI zujr@n?9&ewwROA|<>eie8y?0II%s|z?^RU=t)@>@^REUD(aDPI_fmO$W*hbQmOEd* zgwX`taN?3(}L$(;3q}a+1ZIb z+-k5JL?}e{}#@^oEsY>8jEy<|=3=Oe8dGfoxeQIiomV@Kt+CW-g zUtd=lotK4E`)_ZwXj*K)X0zceBa{4U1IaLR2H;f33p5Jd5nt6AJr@IM!^nAmZrrXL zVMkFwKI<=Fwztp%UqC~niICpi-K7@}`eU#gLbkrAJQA`2(&LEQLnhsNNyN*vo*o%X zCVNwB>;9ge>Bj5d%#9a&&G(pbNy2}*9a|xcL2BEDaSg(gD${U}%rM@Vx`syXMPQx% zYG1w#nJ+$q-^8?S!3H=hL5DR3zjcF>lichSJ_pG|OSRhE)j591=WVfhXF89|!|^U3 z3`+}(kr_@lK|vjTmi6`FY?VqGIXTaZ-S+5g+UL&&4o8&fO?aVFslm*k!~QsAstp+e z_unjdnzMC{yL2g^-eVKL9GJOT+zd$5Yg!4vWm4Si5NJylmsi}g?tvAfis&#an*1RFT(M>Im9b5m8QAC znajR0^!QYv5+pJ>K3KEv`@ICTBUe{R#vq*op@(xbEN!|b5@s9{M1_{0pFfOR910=h z2J>PzSzS_M3rZN*f>t`$sT)gqe7n766<%QuKBvkZsx%Ag)X_^%#y5;a%o?T3H<`xa ztZaKI1sS(hy*^%tiODLXX1OGya1o0dqh>;Wcf8-b|4Bwlvg#plq*$I_T)W@awOGfsNW3wNQ!QC$v>j-ICowMZISc%xS% z7nRQXI(Mq`V&@C#m`~RmxjLV$tgb*_NF$$8u#kcef-~5E!%JBYz)wqUA>%tO#=hYo zz=3j0SIp~34z>V8gA6=uvk@q;v$v;}O-Kq4XR(Bj06PR;2xQ>Ew3?fn#R71*W?|X2 zwVLOdnb~vNC5u>icwwN}rlFw$wdN%7MsRrPD=Ij-xDczWt1Bx>f^OT>HTLkN=Tg$r z(sGmnE_)ddp1lPR9$sDz4GlB)U+Dz}7H!|+!QM>avP6Eqg$9ZbMn=X@=H|eHnRIHa zolp%Rq?=DE!@_O>&jLAPDL8R#E4rmZ#`$Rk#ER(b#xrDoBA4a%t{p%y4g!?v!R7yf z+Y|B8EATlvIfT8{;7=25Swe|mDnCSl>N$?j^l*sZ;=Z1(lfc^tr z`+H*H@6o0I*%bX7Y}U@@c`nDJ=te=YRk|Kb zskK0b@B9H()E&!YT1KujbxetL6>;OUJdf;eSVpcK9goSzb6c;KFkOyKU0U9OK(PNE z5cIf+lIquLbbV2{m3BU`3V{gX{RKv4Is1xnUHq!f`LOmY!n+CJ1&zQkp9rHyN}i35 zs$y>e+TnY^{ot=bl@(>g*nWu27qLt!49pCwH8zM_fu*C-u`&1M9xo8%|6bMN=Hj~8 zIV7f^>QAX+VH8l(*^OmN;xG3KF92cZC?s*{h8O*_3Z#~7)l_ZR%oZA%gObL`G+0s-<#LesHm)* z?(GzUE}AMErn{5roNI?!F5B>QiUs&dyaoHPvr3J-BWg_O7G&*GhSf$v09H>cpQvwT z^;)o^v=lq+EB1YC-NOy}QPt>DV^AdCO!3P0Ye7%}0KNh|iThJW&7eXJp2{XYZ0zjm zDQqP7FS}x-GWjYNYH=b1m?b#vP zG>>YEP;9a070#ywOiV@a^6WZ!2!s+li;M@I2B#>$aHhgT>z!hRjGx~hzgQ>{oD@BX{TtSn}~6zJ-muVjqRLj3(*?@3EvfBqd|*yiTyBA>+P z(O%h`pq4%P`Oj-v*^q!ERA+Z@gjD7&@1`Xh*^-iyWI?CFeqr}lM8Sll=98^8Yyr{Ql{Mg@<8tp7qJm0GS*a9P~VYPXi@=`h+E} z)j-jboIJVt*-uRB^W)8G_jOTo^I&yGCVEEoMpq+HNMvO)JP2;xP%Eyt=a=56O_iDz zYG9{IrhSCXU8FaopjYfchJn$Z6UQUkF(`)7m&7+aGC@Za%+S@%ZLRLc%p8l)W-y}O zn?II|QBdG4<{$FJ*J7&tYWW{q$T0zZ{LDSDk_Gd`-pd$Lm?aQ z=em0EG4B9y@2Ic`ydzxl`4KMeNKDsoX+P8>7EJKDp9H?>(blZzi$eoYB7%OuWYPrv zHWc#_U7}ngfP4=4vW^}KdS4FGOnE@4#o{*`loS+N=Dcj8z9hN-*26>R?9hDgm7nOs zDSI|l6Z}^0k3OpLnq7i+wdP(d3&}Uj#Ibxbr5{DIHm1VpK7&I;b}tUS`L#h8mD|G} ziY6uLY;I9-6zF7AV&dH6W@iT*9hR7wzN4gS^hU!B%cp5)cYotkFlUViLs{vfw=yl* zKpOGfSkz5vmyiBhz$WT6-|*U6cp`UEw>)uh>uP_BlIb*>$8E@t0?UjteV32e6kPMg zL#)WosN_Q@J4YJdsMu)wup~N$S7T;S)#zv)Zl&g`O5I-{)eT`KsGrgk~A?cCq z)ET8ewHLI}s53IEbIQshTMc-5>qbUL^B6?3DQ%$k*;mIiVM4Tcq4D8@E4ziGR)s`e zQqn3ij4uPf1=-p;D#jHVrEZ)tDZ?}sb+e{*c^@2!qyp;ekqoyDofrD`MymYn&>CLq zjLaI1ns@g0k#hOwmX?FLg4BPerwy)t8dX+0w&PM&yDTM8TK2qR#H8+(rI(79e16;e zb2kD2-sU;4vnhX-mp}JqA-Rv!!fuqEe~_N`&^~n0-}E2W4J-WDZZ4;OgbDCjA-&TV zLcMcRAU#aF8w`kDCFT@ire|ktXVJR{dsz+YYHH?us2|FB3h4~)mlyFewMPtqydWeH z6vU$5BWB+a2W@24g6~DH6iuh_c|R@2IJ*OxPx~zVC1Kfkjs_5uQxdIzy5xb?NK<|n zopWvfmP+!NP+2{^(QwKb$~`-fB`bGinXA&Zw2S_nrc>U8h2&+6!~@a1{Cwo6QQY|_ zd`G{NwKNP$;`*y7`7A!FCFW#%>Obhap1%CDxV9{#WBA>EwbHYDQ-T*SM>lN8pU~4k{>QELAbw*_t&9lq5Dl(gZ zj-IeM3fVBTEG!I_>uZq+!NSC*@l6tN6yL`M6UV{HnJfr3ILToJbho38L+y9hlG2~` zz)IU!0kn>O=Wf8!z4Oxm>xvBq&Y3?Sdh{+P(k|Wh?d&nBuWoq*cc{-64~14dUgtj8 zu-BPGfV6W;BmT1a8I63RnU$3-!+w?modeXKiqo;aFgaP&&ExzI$&C6y4H1d(MjSdS*7qDkIrXv%(zWB5zvEy@|dZ(k(#C;U-Mzut)k)=yFNB9K% z?BpzjoZV_U&UUX?jzZX#fjzz3)dA_vo-GF`+IM39Z{N0yzip?hr;m`V)lN26W7Z1_ z4EA!E6+I0E7^0WuEZxJv1Kolm)ZVNPKRG!C5FpUXCJUJ%9S}#!$=A5=vi=#rFv)dH z&CRu7d#lUTFCQqfRysP0rv0if;5clq85(++a63RB>&_RbSHZU}Dk?&P)y>7O1sgaV z9(3;>*b&T(9plDWe21S^=mlL*M2y=)PJCZCcwUV>_!6_S;_rV}U&rfIT3TDfd-wF1 zNw1#8;Y3nT*h`wJs<48SoA&%5&@dzfXGR0`(@slkBTvtZRKP*qS*1KAq)_rXBf~40 z!-BS$&dl$OriX#zLZED>1u5@c|LBUWbD>+GkA51S%X@uvR5iNW_Z(0&sbFc*gEx1*UNr%JH8v=ph z-p2U6P4eyceE9Eqe80|zfgk((8qLkkzbQR}h*WulwQXb;I>l0Fw!7ym+qJ?;biX`P%ljv9a-c4UOm+N9a^#BR~VQOJUK`sxmST z03XxVP6CAw;2{0{-hi>bd)GOdZ>CjcB`q({-Q}|XMEf%#dD^% z;+aIKLdqx$|mCAvX^#`UhPwY0R< z{1}GZ#OOjpalu~!va+Po;Cgv>*cq8kFY}Rw#2R+E0;opz_`EP*OL+M@zzc|iTXl+b z+TifBu|gRf96*4ix^340@cL6@&-Q@}x0@>3rK|k;@7+FrRG~)MThAa*H^$bnF-Js~ zUgY=hQF^tWmuGtjpt4}7$i;?;P$VfSZj|*4sUBA);N5ZI3AwQWpfg|wdhWZYzkacZN-8N0)w|epTTD!#k%?jgKMN=k ztq&g{hYsUKGXS${fNnV2+XK8yM_qj)jx`+s_Jk{T4i4cSqkY}o=L-SXb?&EjMn=); z>4w_coA&*JfLWKr)cEz`sw=t?l z9A-m%h;AP8(9BFk9jbxdX}0agc%2&OaNV&G0OO)*rRV@shnlYO!M6j{jS>z;1L@+_x492fhW#wUOTausOoy2RO;<91}GG`*9qaJp7FMx^6pdLe5 zG(4`Og1#WSV`0}-mRb)Dax?!V0hEYrooaF}m+X=y3o znK-$tIvN4s;yM4jAv_#kv}4M;vCMIc55_I7E7dgsKqQ4sf4?{7<>d~%!N#>mHAk?# z$Fi{FUT!_Gy21FRri0%JXyrN@Gma^{jmwI4>ONUp%VVAbQquG4l=$>9Am#Q))$|^U z0s>%ZaS>2&6^w)sky~=PIln)!eE*KF2nfCtLxh0s{O?)hDH_}N+NQkLOVNz$y zr*?LCKl25GJX+f9ZRP92_-l~Wsc zn)hG4cmtjzw;*>N4ra^EhI3~20JiwP+9HGBZ4=N=IT!$;1SLinyVcauxbQ3G@|!t( zd|Se4ouhuRw>QKU5SP;Oyg^`-W>#EwgQy$3#zyQ?3Qp9 z(XSxpLXlDWpI$r%P!|tR9RBx+h+LMpudM~=R((@u6S+}WKVpEg0-DX`Cm6$5CWcw# z@KV+29AIqp<#!+hXtx8f0oyz>>H~0kph%&g>Ijv_xN~COxU5k|nMS!eU6Zf%;?pZW zz984|gaj$f$6OW@09*z084(-nwm#GfT;w~%8&FmtkqOtAD09)T0RinPf_2%li7N{W zO$#mC?%Cu%;etteX#q~S>_e8g&D~Rx-j7e?W6D6*#X(v?NKiyPsd)WIqIXPeUoDa(jkB@WLpRSNKHN6(T z%5mlcz7cVb@;U*?@?p`|(H5gnYB9_1_Dnsop8LB-t)Q3eQmM-Kr`$?g$h0agR6Q&B z-3kDPc=#hPPYRLu=BXke-e52oFuugzvGqy@2!sttkKkFdiMbdcyiHc`_Ge@~rwjuq zI}r)V&e=xs4Ruu-xh9bE{+QOr&Q80|F{Gx(1#qsQbHj#S6-KE{V6R5WlkNHAQ8gI% zQdv|69n=7-1<(pVtEI5;{u@H`wH zAE{tfK>=}q`R(-d;-AQ*2PQEJm6XpjT2h2SZIZbr1@ z%1TOr0Rk+2;l)Kg7=Y06beRR0mgCEGf8k*^M@L5hI0L>Dxw+}S+Zy|^g~SaK>EdOx z2&6gBA9f-~&EJNQ65!)MdN^dg(jyT{Dfkwa5EsYe)v)NnOioS?xWo-TFU!NdJr(D` zGe%*X4~=zob+__mrKI>g&X&QX%gyN3^M9LIeS~&2yWAO>Blg%G^u6(ul{ryfrr@ywy%8ZK~obDImu!EUpCWt`COgUEJIVL~$wj1Z)>G zJkF1Z2?;?p@csJ`5K{EUu|{epL`DuvGs7m5u>qqDF!A^A$MA$N=HghFy1KiusKMK$ z-aXEnyB#vS`sW9X_|YSt4s$fMYoO$~7`FSCmiLO8 z`TBJAe2GpXgfzGPp{rObfzMIO=1$vKA-#Vv{V+5PEbo;O8>8O}+a>64qG+tjhqB8Zo1TG*6fxz8!MpF$`2$ zBJ%^2zw}#l-L_PbyYPw)0E&qEEH7vDCUV0kCccXQBxFe80YN!z{G=FYF+g7VK=jL( z+eVEv^r*tBD`_44#E6KO*TdSpyvL~S(=G<){0nl|r4a5M4D@;*6VP?&)cv1V5+S39ySpxXowQNdaRd|;vY6{@YdnsdakHG@lz~mo;oCc?=>|Ax1x#8r(2X7V+2M1xpqs_!kt^XT2>eaDLSK)g2 z>9po!I#pX3RU>c-SOhfAE-rRF=> z;~{mGaB*>g*Kl7=uEHaqFflQaz|1Wy6todx<;c;pa5~erPVkb>-xMcfXWjeAOH7)4XC_yJr1LRSNrB_Hkv0K zWsL)vLRiD~{y~dB&eSh`kJ#QAW-sl9@1m0^k9-wfT_Lw4a>Th370)kWdU~bA=AS7n$p9e(!VB@oEI=?OMC4{lNMli^5Rnaa;r(+gC|!>Qzg0btLqgGxm0qnV)a7XMY@`cd*i+oL zHAFl9D*T`t8K7FC_H9|Pn5yIyYG|x=0jW61f9`)8z=C}CwDA?ATJ6`1V>L8B_7clz zufIAYE1hDYn*wGFqGLMCcM;I8`mePEGuiAdWo2eyGV(L4nV#6#*r3@TNnDgnGbll# z;1^^9gO`b==Cg(XrZo(ERp+q&y-Uq{w!X$@!2k%q*Jv(cf;5?72YYKkuNp>4@#xVS z5-Ek5o0nJX$_d1zFrXpfaD>)^%?onAwmGkBL6g2DZ#05jekPUo@3XRWXG@K`0qw5Z zr>X}qkgG4$V(9XTT(7ve+Cb(93g?Onpasgx&PGj^t^Ns&ti4(}2O3#+(}CY0y1aSw zrly*QA1K$<)j`%C6&($B5e2W^@2{iv88h(L zACLc?y!v0l@ckR@_LuD3kN`-`Z;k*BwEu?^b3;(1*7oRLWRyt%<4u*&M$)=FE&me0 z`Z55fM;QV~v_WFv#it1lGLw@#vuhi)?2Wok@Sy8}rA@lM= zHpV%)MwEwP9+&9P?;jlPRxIxRF|dUi8MXD2{gb~$n8b!u049o@&qDlz!dJpD+O;*h zjz*`wlfeWe{VVRKo*qUsNh$G<3rjs^@X+uHX&{Y*-3Dq!L50BCZx?6z;sIp-T-kkfJ5j@gSGcsOsxxMhHoeny! zDGbtlGJPq%05G`L5j2c|miV#{C8=JYEwEFqDTp3CCVJqqI1y2nEoT}x4sSEQ`q`eO zqm8|XvYa_tz3gW}H=Oo;7wGfds8^jaCcCOCyUOXKLyv!j7v`PYeh6p4^d<1MOiw4d zc2$&O2YCxU~*H4|s7`An z^0;hb^PHb>4$jBqDbo0B2b%9yTtKI0y1BK)4?TNk!CvNtG%!^!m7D57Xui@tsxAx8 z=L#{~!iPY@Sr31+>hEy~Uqb@L?T~*;4$RF8Eek_K<(|C_!@^zXHW-OZ$jh6mVpHu~ zL#_x}4?Yx{<9l}5woT#H*?^7r?r{naoyPM=x&mHYOUAC?*qWbTrk==r4(rklV=Nb6 zxl~+;9V|s2rLCq_=XS2w+UjQzF)=>pwHRe4KFnTEUYZB8c+Z6e&-WSwxO7Ev`B!?#mx!8cOVfZe;R#;fgX~|(+cMLX!>sB#axv^ ziF(5>U`e4B6%x2x%pHxuLRjXxD>T0W=pNd`0`6z~QEjxC0Vg zH;neRICasEk`|2q6uv=lP~#<$+WRQ$$zNBxvpS+3JBo%XeIz90r3bsTr|ui}CURRR zZuyLs>KeQLS@&suEoSPy`DmX$3F#L4FCw@_76Mxx;HVvT5z^Y^i4V%e4s z4t7XlBA_>`a$Aia2?l(NK}mH+^;$n?J}DWgYqc0i1luyuBy1$<^jS2uG?}t>qf(io zrR0-&q%Z-?S6Swy5XZnIq`&>8)q=|nRYcJqM*dVOcQZ5GQy-YqUg=Q%G`U|*9z8?1 zv^18_!qP_e&d_0bK4@uAd2fFYlN$8M+H!c5=HS`=w_+YMy=3Fd*}=Ze`zG=X9Am`- zTQfD$nKnTD48DTh2mj$ixO|!|;9g6qnG@E_Ltfu7pl7vkAYa%63P{_3t<_6HS`!md zNuxI|t3DFvSk#%Vt>63PXo3;To7#G642eR3OApA7RiFc>!rJP1C$a5oYU&6?0k|=D zxuXn#OBPJ(<93=0_P5^ss|-Dv0zBn~g{t%sEO9brUj95eOMoTAe96oZ*@d8#(l85r z-8G!DN17Y>Kygq-tvkOcZ^W*I&l2c60FerGV06`~DV@ zy}hphui4w%mHZ@H>h5jt7qK9lrM}KfPbZ+xNQc3SD&M;>ffCG5mCmq)@LZd5TV*_@ zbEKS36q9qLJo8N}O*sd*G9Jmdb1^n3QyBI6&gdsvQ0FRI0mfbib0IE~p?(Ao&vPx2 zVgO!>lf%l=O3}1n?i?JPb!Az9Mm};E)7_jUB!{oKt zUy=W)=;;GYU*B*L82GQ?qJ}eezM|l;W4m$*mb6f!ke@`q z<|iiF8TxStlPq1{252nJr4twTIc|hhp>zGMKr}=)JIS}S7Kw+VpYrmN%jh-=e65R( zl@>kq@qNI*xo+CZGh0teJ6V}PgIYmPB)fJfb5a4Ilq`!`QdSoBEfi3mT<~W605G(BF^v0% z``KCC+<@Zr0N@soL44B)b3H$?>*>|7s4Of@296x~nH2Ym{p&b(}H<|W4sXu(=1=JFaeyiZfsP!xkSxm+s` z;T%;3{^o%wjePQ~m&nf-vE2q`f&wriM$ex2>$k^Kyc!`8nV5HB3qTAxS2qQ38*3lG zQKkT=AMLdcxW1}VmAS)U{HM`U$6K@153va%zpuX1thL-nNB)dv&z83X)TU2>xOgjg z()GQF82E)%2e?Ze?U^?D1UAp1N0SF5_g2BD2uX)Eb>Yz?aT8bIplx{S#Ng}|5L+2U zm9t)Q$297@^f&53AX%LwXaNdOPV9U0;;OGA21|gL zha5M%u&^*EXJ@Z<|Bc^Woj%W#d7(4~mX8x(C01We?~ca+!dIML&~f>L@mp8-W)Uhq zVRJGvbn4z$z2L~6i<3QSx{K|Ero5`6@al3LoM&lymTtMVDK4t-;-Z0U-8XviqKm4n zJVq@%)$4SqHLb<}{N&XBRSk%VPWE>tAjY^s8?fh<{&nx4iA-lGBJ8I4yb;7r~v2n#Qbpg)=n zMq;lVsemv3cP~`YKVE*5Qb9ttE8MR}#o6PdRladdwro9H1oD!#4%ZO35$?!4;1l_|+scSH4ClpHrt z__hPn> z&JJ7PZ`;L_K)`(>)`^+43knO_|F$2Y32^xF?6nAebeFt^sj2gRVb%Sc3CW>d6?O5b z7Pwsb>w@gun_n<`sFthnHk4#{+P?p-xbM9?U)W7<$fQ_5KR<__QA392w`l?vQG;qD zwA~w*WOwnN5n$ikrQri3jja@jL6C3v{?j*^_)ix(|4oye@CC|LaLgETVEbQHriNN> z-d5uy6mOMf#MLjwPQ6v3YxaQ_mH z{+qe~mv7GTH%~BBAFha9ay(XImcTt6jRwhQIbwrT0?&|mN!wQ|d znumra{2&KP9s)KZ{mx5U$GtpB{X*_)j6`I0F#%|<1t_fGujRkW85v%lx=m%ZwY_~B z{ZLd}XXcv@v52+zZ+!?rE)6xO&_qzHYir_|ojsD)7N+5{1vzxrYct#-?<3O|tce{! z#c~@$0!i$p@%>z!Q+=`LWj8(#pD7UEV6kY6ngHwzj(^yJ$c!#Iv$8LhaypbTg8cVQHg^@nW5s zDszcgoR9J#wtWxCIKe>QJsku3%F_BxO?WiO`rrrm+ouJnZ52$NeSKhPk(~wk#ob-i zF6+&_C6XEXMOSDKX=PHR1g}taR9#tK=LnNmuX<-*2DTc@C-O2d3Y1po*le^N0=89? zD0f(^K&FK(+vt|#(UFg`|M}VJ{^=OdCY7WKF>}*ybs^f?{F&T(;B7Qd+4y*#kMzxY z-+*XU(L}`Ax&nIY;l;IbTU^R0r`OpPYgPAhGdzTI{;+a~$&*YJ>s5nWSVXqw6&KgV zCc2#t-9^3%AI#D!U-yn$cou+5^-eH_1A3N`J4}dFq~t(uFYp5460ME_%g*Kr8 z?yXWsi?&YUy351E$E3AeUgPIyA;$RXmCnpG$PvbhuVCGWeJORnduPOsqS}`N4({E< z+N$#EFETe%i<&Yoi=UZfE!PXyccRugf1Q#HyR3gBy|qPE@Mp5Mwb!x*F8q-Iij1+^ zmc#z?Ma;Ng=l92woa~|^D*_r>&JI(&=yOXazDS2dwT}52$>F)DYdAn7&Jx#ig%t?y z5Yynf^~qj2GP11uPwude&Wt}US&7k-YaUMfv^!9DF>;;j&dwMH;Ek!M?Ven`?i53R zjyqIu<44%q)|#!$;{{d?91;l>|5-YTjBccpv9+<$K0ArDw6x5YryS3^Mg8YnOZ@4Y zw!Qs+>G$s~7{}4Ev49P2JE96_bN{H~U}3AcP{9y8I@bB2CxL%%wkZwNJ|ny7Ah}zV zD+$OR2TH_gK>>--$4)kLl+gVwop-Wz-}CG+GiG0adolFtl>ZqVe0jKdnjU~FnW>}` zJhJj?OayUb;elw8y{{O7q%M?_S6xT-%}qgphl%ZIXSZG2j!BJkcsN;QJ=5E1Wom&R zD9**j1@cyK!wE8W&&5Kmc#5qpY^Y<+KPO+>$&otR0g2%Pv=xIc_qMhuNJ)|MK*lh+%^!3wfzhXOSiZH;zG#@?FYfjTs;jLPygIPoBTUdz zmx136!mDQ!H2TO8Y9`H^`APp3UtDc`<@1Bh96EPDy1pz(y@a$NTkxxel31!&a z>{zAkWy1HxMLAm&Y5VR;Wm+K8mBxG=B_J-w?00a_32I+loDU9Is9HHX0`c|_F&otO zjO@lZHXonC(jqUp{mi+>`1ft*rrwtQ5<+=i9v({G>g$dsG?j^g63N0@gWjp17j0%5 zp9#YxFnL`T)y-@J6`nl8_KhYa1SUBNTe5z2^tf$Ki#t`&Bd@-`9##mzrtz_n6h2SJ z%QjAS-1dH9g)qSyet!QW^Fdo;XOG|UL!k(@Upur>v{-dg@ z8rzpTS7#oe%b$HzN1#|?7NkY|;BhZPlXGO;dZxZ4ue7vGd1zw78O)E?wQlX)Avg=4 z*(J>5>X3ETD2i7wK0jmnweihK@$r>OkOU7VHTMuDNsyw31~`7eb5qwnz`o;)Z!Ih= zDhWq)C*yhEf;n7iOPUIAsW}|(y-3Dp=jKkWvMI^*L(~d;#!_v}8lmOQgZ<6N$G1GC zC*Z_owxi(YhS5*~1)H%e8XX;jKy=7jn?Qia+Fn^%QBhyP=4)bIK+I|%VqH;5!KR~U z(w;xdaes87opS8n((sGR+C6USC@#Ch;rOZ1R%0Nc^Au|^!p>5;o_Nu_*?#( zYIRL@mbh!&4M2-1TNNWx3g$x7E;a8r+*^m^v0c4>?Hdj{#bF&)G&9sYv+k{We)3Rs zs7O1;!Ldue(S27`-PuPQmFI043;K z_W%bE*VL+c|DIGxZPQ{4iyCOAv+k3<#yoY(=oG$|_b?xiE_%Tl*YiKBdkd(lqOM&S zMM97eq)R{qX{0$IsUY1*OLupJq_on~-Q8VEcXKG|knTME3*YyPj7}V3( z7hF*>mht6F(k=wWOF&7NIpGAC@dy=J_KG&K__9=~kguNTVGgnEGG>|a_f%GwQ~D`J z$CzmOOD~KqENlz9?^sD#gmu`jzu{4+UfO{sXu@#58y#9^ZCgD*#md3w3Q{Z>6yO#L zvZV~L{PWGx)JvTjQEz8J^_{2ZT&;y1$uc|VXITWZYE5xe!})t{c0D!K`%ueqoBD>B zS21F5Epq^kJRF}rrz-2yvVv?aMYU&$l1j!-*mwopH?gYyh$WA^Ti-9jyu8g6l$op7 z7$BnxN=caswmHC@7eyzb85p**1oXIHBD5qdu9C-*FJk;1n-dmh{<(D| z-w0yxI7nPLQg_qa6jv9D9+=zRiwvGpp`WbpCHQ}R1( ztWOxEw#4zg@!^wHXaql)X|}V71qb0{}VHRU+}vzI3fe^MUQFM8zkEHz{xF1vZ2XvpLQ1lu4;)SxSL zLB(@(b}j!zPa46`W$;P<7_b_D0h56jkufnqd$|mXQqHrhI?umxaMaLqBo5b}pB_sS zytD1Cz|pjP?7*KrQ|BB$pZc^}g2#2MZFZcx*uormgw6NP&dR=bjEY6ziZ%TEiB@r>v?ajZDC!D?@YNJh`USA+~BR893UC59(>>50; z;ZTP(&f0B4AdSqb^kzhfqpPoJBJlTicj*}!DV}wmCRA!_Xv`WKqN9iFbxDaS2EQgW zo=t$>ev>miv}C*Hw@bqTe9PA_kR2`V&4!u~fL?(v#Z#H%4jR*M1CRBrj-n=EHrj+0 z+4nj29RKT@){a6D#q(8prEVbJIPSgj3-asOQ?DJ+EbHl?+XNe6Uu}JY=N(i@s`lcW z_$zhJTW+UiT~5x6gvw2tCMa}lY+ZSNs1F3DWGt=&L8E$kZosd@~UGO}4?!CW%MJ}z|?sat`JR*7((3;g6 ze=Ra_Q&-;@JOu`OcYXUq;pu#xEs%w6q^}|s7UKafA#uQ8k52Ks7n96+ol(PkDnZe1 zP%9cvf$-CCy`td~0hc^UXLAJ4L)N4|yp7$BNAEH)H|_L`^?q@H@~p#U&kC9@W#o9J z5_C`wN4bCpT6A6D_t@yJ+rJ7pjzKHtWu`wd*spd0G9b@R5|$ zY41z*k|g9|d-*bGcr!#KBRKdN=)Lsy=XY(3l=bvF3zj^?fjk12ba{6d_%Ercse^*Z zv8`R@TT93K9n{U?ikYH^dLNPcRg~<)o9)|#af)>7-OI12Wa=#@cR=E|Vu?HJ0ew+s z(3z_9{5jB#?UE4JX#lH9pmQ1wt147gO*l?0s_5o{&P~HwY=3UC05K%)#s&iegNsYO zk#tJXE-A4m2MQ&-yfa~J4mIYju zytFoehDQ({D!HzTvSP-cWvxLr)xx1#fX3d@R+{t&7C!OV8{DP3l9h|RN7slT7vW9% z%dm148w>o9#nZ-+LR(7(}c{P{=;Nj9l%V&1CX6g=u#E_6gfxP-WJp6k`M+n{! zPQPaNlaY&;|L_WBHhuxJ4F4K$(*G>|Q3Ald%A)h1WDI^FEzOZd1g1)xoidB=7w~)= zN+o4+_Q`^$8x}0i7R@etQb~QaU1bMx>9GOL$Xg@b@JRSmA*D?)XyO5WBdBLPUp|}+ zxnI)}@Cb9ie41Fif<(gJ^rV@15wgWsh9|Ui(K^h}0-W^<&W4gJosvCm&Q|<8zT7hQ|Bg?jeua*LhT&A^^chH;&Ky(;IGHrL zm~g*V&7!DqUPM2q1i)04UfDv*0Zb3hlI+oPiovQ~AE$S>BDCM!Z`&J>o_+-n9q}%S zh^~#CAS@rd8&uxT%<`MT!1aIczgtszeC!2p6%P(+ z&`1L)@prTi&z==@ z#8|=(`L!^wmF$Rb0b?+xQPM;M&XdA{5r@a;I^~}LM|ZkJt3Ji?toY*H?u!uqyFU`g`5lNZ1ja2@AKEv34~z#+kNBP{t^+YW#NdQd@X2@ zPYZ0y22voYy}EKT0EB}I`%1wMnVu8AduimTr^KU%-m1re1c9t4qud}f0kCl(#y%4h zQ)N{Z5Rj$*3y>ZKKsrD6zksOUQ=L?3ux96GZ;%iGld&InMpio&kWLqpb_2Q)zlrJV z>0uL)usUy*v8+pUlsjn;L;u6xfrl99{VW4ZRq#@eIzJn|&{B8p+WXB)~5LP&oT! zQ=UoF*uuod(SZbFnGqK;d@5>qe|g7wtj+Q;zMwAVCA8vSX;h-!2%Vo;TibnWv%{vM zQVWVZR~KUj-6g1Xm1;K2tEkX@6MI(O4Bchsxl@-_DR^s#8uEsf zRHx#TlU+pw8J~u_Lg(rcHWC%pYpOpJ+?r#VacoUaZ=qIi1TGS$@WXq0jQwp@|?V0%~am1;=AocA)GN$$sPZXQMJ# zCN?gvy0-f3`wZxhA7HSvm+B0=mM^c6^5`hDwBrjC-8?iGt|tp^D-Qsk0w5dgt_xM3 z#c7$893`zA{Y#V-8AZ-bAaTb)bYE0NbFjN>Zf?v~pK{p5Kr zfj8vuciz}akue>NFQPe!xa~6$vbmm%?EeKIVMGj)jn&P#6i=zvSRPquEYbAXTCSq9 zQjiD*0R1eR$Ow-eLf$Yjp`xKi{NYb)D5xkdma6wTZ%pWe+Rx=TKtI9n!tZG5((sM& zCPx;kFusvt>p6F<@7#i7&`Kz6?5#>5e{6JBrPz+P0yRwkvO{DcMTeX|QjRTtwqzK& z8FZ|q;4yFxPnIwL3#AoR=p?N`{9q2xfBXYb zmq4)lAFy-Kyz00YEcF__*oDs2>_u(H2NQ8ll?f_Mx3rp?4>sabXyiYkT^|l&U8BUa z!=%Dcu)%FkNFYf3HO5>*4l-;1C7kYffYV>X(F-1~^KG*et;5zLlKsn=sp)AtN!E$K zmp6q`Ag=V)>z*ug3>veujqZDZb3f(^7P8^0$4KwR+0bUkwePpeT7x5e%Dx<>IL#7fw?OB`t|_H0sjGjTemr3eAgLEmWJMp9++Sa?o%pA zqK^@W!~{IYcXwOwt7{$e3LZ-*Q;angIX#oNnv>s}lcci-3g_oSAY=a`N8PqwgN{x} z%k zw3Zg>n+3^)MMw+}^Z=gl_*-8bFs6P=PHgv!{H3EK&$HL;f5&;`)XGN<7)NK?@*!$S zIJx#(KP5?Plr$SLmJ@tO{;K32Zis)HP9Bj84WwZvC;MQ$>kETaem~D20Ouq_SOcxn za>i35qqwxR&w~bQ>l>ItE7#qL+w58q&|pwk09aX^BtDCauso4&=X(iXB-fTt`VBGI zpIv#^AJIW;*?7K+e2?;ItjqK6)vb4Peuyp%Tn`j?j9W2em+Wy&rw--S)eEyKqlQ=M zk~V|ChE2Ed3R{4+;hEGuZg4OPGWp#qc02|tjW~Y1ep|JDE?8uX;rIrs9s{kCtAqsW zbf4+smtUkQT7ae0y^2A~L;uDFnS5>K%B~_7#MXs{1$7$x-wo(GC@2`}H8>LY)^>TB zO%B)cS@SqzaMt}I0sG|16GR&>VnBwY<#B|qWDk^t%NZFM0C^@b1z_;pJt_+lBO+4A zO&r`*2Sy&b&&cZaXHf<#jSLsfEi9@5mSVL^4=E&y`c+Y0O#&(mch55e)aByr_k4Qt zw&e7>RMqFoKGAbJMYy2i+7%c5Nc>@GV6Zi6E3ne$^zL$PdsAy?LwRclWR69{2sZat z0sH`!eXwTN!QkCJ?w&pnkVNAC;|-r+@dmJZ{g1L@%f#%gs)mLLe&{x9j`vR=kP85Lv~SH&5Wl&w@=?&L2@}YF)&JAQzsdM%cVnZZ%vwmy zOd@2X7!&15W6eFg(c)vk9>tO2qe}!wSg*T$0$-9R@t|<004ubI>~SQhEa+qZq8J_8 zn-jtCbQrIoa!_tj7@Hj|9*F@u3v01FcZ=v+Zr8iB$c5n_f4OvT0YD*-rZvTp zigGol1G58Ie=K=jvFLo3H*RGHfa%RcT>)@cO0pLDk>*DiTfo-;JhSV`69o16MBvW5 zw!WUi?I7gXEsRD;M5J7N%gw>~j-Iyz+_TQ*s;U|`4z{%gKu4>aUEjSpww*4zW-$0E zW@V-QP$W}v+uMl&+tQ22q8BPz2_<}GR>MOe$vFc%IzLATyuq@U_ka)toVKp3fp-G6 zpN32$6pY|xY?xQTdyyxBrpbWrZrXJ6_9hJj)3=v|{ss4v zEw8Tw0l%rK8G!q?H_C<@w{Sjb!Uw^~$u)GMs; z*jES;(1@m$?!8&PO@w{}fK8S-7%n3gDkJ9pxj+%*uv!r3e_{&&*8(_i7$_A1&J~20 zVywM=w6CwAIWse>?hvd!fEV4xh?eHm4!jW_4AK8ja&gRs@PX4AIE`zre}!w=|6W3T zqR#GvV?)~Tzvu}5J6~TOrr9QJGP6(A#R#q@bbDd~UoY-3QfFqSk+3l!5MBrvv*r06 zrlUOxXUyv-*zWH>GbaZ(P+g>yC(D-Sdmth*vFRHTv{%o7mHJ0=ua}N_en67!J|Qp! zPJyA98sjHA@E^qxm;j`AOQBuar#`FN6;(cY;M*2ng^=_Rzj%T!gb8RO-lRb!Z|jcm z#=tj@yg%>#;zk$m`da`B4x>hHCo6d!jdHd~X$nXd7-`a_@w@dn<9r=HRp2;$U$1|% z%&ro@Cgh6b0N1^lV7mcIBY%I_rCX8Ex%L?8;i&j=CWh$aD8xDE`;UPz&rm*9JO_u1 zhN}r2qs!n+s>tgXT-I+NIHDK|kaAsGA9xc$jBzE3>Lbp_qdnN>~vgs z`S)YZV|S29=@1r2^3#rgbS=Gl?# ztooTIX=&yeZMZnoQWKJ~L(Hh2+Xp2QLQ(CAtTap|A=G;>`qiM+5l3p*6}u+C_W9{9 zEEV&<;b9RR?x|&S z+5AyCcKU}1)yb++kh1u32Nxr$Iin18_Kj)YbH!MW#kvXm)r`7&ITzeL&ZLYAD~9IB zNnJy0{vwrE94oP1HBIVDfwi>@je2b^26eD>$FH5mk2?p5H9o~^fFf!^smWk(5yUHt zfnR-{-q11pT)68X6Zib<<-dv?s8%(JXHz#e zKo$_1r^+-ruh%SwZp?qDeg0`oHj$?R|OOJ#b-VncrOC<1nq)E>#lR%v&tbxzB~ zrq;sOKNf6YVz9rWlgKRjNkR3rJFd81bwUD7MY?g=<%@yId%kKJ!fax$UBs~OUTSXF z-n-?ic_#anv2;`2`sFT$<|*vcoHIIGms3fhUsCz8YT5GVhz-nBs=L2zny&`-$mqvE zw^LyPKYzA-29JdIJ#J!e3mYu!c+iEZod?{0w71-gb`DIn=iFodnOXZ@y)>oCW!mO4 zXujJV+cFRlwhK@~MJK&v4gM~(}wQ!7DXN2a|G1jvkMd4@hAgwx>3N9}#dX{G( zNX=Kx9n?O$M51xtDlNYQFLG1F{k~jFP{TYXdk1N0G+OwgI?K2350Jb>UF6Ixa{|`s zDpA5uJvKD=<|+YmZRu8;+`>4gJD^Y>oByZXGRQv&5Fkcv*B^4Tsv`*xni+0lUQRio zkfoxSBV|3g-L!ihNXZ{Jtrt8h$jWCpIzXdYtnKs&|2-Lh$0H1Oj-^;K(oNV_Fj9_q z_MX3!QcbM{VK&!xDkbq^M60FY#ew$DRFk?vqL&3zy^-Oct+zHMcah~6iIp?&WNt6c zi6nUD)R4)mb1xw1skaBmNMYaaElo+HepamYrSy?40*j3I9UDbeIYe<#6x+PaQ~C1v zU$r&I2b=G1Y-X!Dlm(wRd9pCnTG=m<_&GDVP0r71o-0xqm(Em{v+Nb+rN<7|E_2l# zU;m1q<$lK;qD53PU~{=PHD5F)#qSi2r;2cT;&RNuv9tkeG9+&F=`2LQD=sll-Z;}b zC+uESJ+I=XE7sj?2tTF(!xPtgVvtK(=SgnK8W&>;^LI7Hj(T+?5EJb8-mJy4-l4g& zIn3afk^0;ZNWCh8=;4>lwc*??mJq`a+opF7sBJWuTxm|_))%AhBIR#ZD*~QpW;E;n7_SulcB}M7J3qs{oc#nV1IY$3?p01K`h}@ zy;n$GehMZ9S)~YCb(qSqyrAH`B9mpo0Zp&UJBEyIdP4l{!n1uwxXjPk9a{}J0tYWG zEom0OW2Qp&CA?9)`E?OvZVE@XwyAil2y%J2bhMSS*Y=aMX^ouoiFa4Swtu!nW&;Hm z65uP^+AFFmzLHE>U$K$f&2Ki)4nd41UEWV`iN2h{2t0(XB ztB$(f&r;L)4%UPR<#w_4q#CSp)gyQvn)N5!3%>uFmLVdmMPF1XUm_l%%Em0N@@GNw zka^3OY!FaOF~Y!LWhiO)9{W`^pmr;^m@aRewb=$AzlhVYKkzv(xv#ORvxVM`Qh(AQ zJ)7_xp`o>&K_ede41+uoUv@_!|H(r;>ULFFLBRg`hr0c20FA}_lj1)OLmA@%bXzpN zabC3BTajLUpG~eMGVYpCoW7rFoHpIYxf$T5v`qMJgwm~jGpJxS1_N;%g2g$-X`ofi zU7p*_timA&&Q?h`v}CHW5iazx?}zk@@8YkLEf~Pma@dU6xIeVqr)IK`#xpTq`jMD! z+t88Qa%}DKu^V3dLjrDW#W49-*-u_ab-Pqr&R#WPBrb>7(cxo{{e96k7)e`XT8pKi zFV}n|OxQlZtE-Y`r!)dwJmI9nLGKY_`#LBZwzsZdZyFM5uDwh(*{f(k4@D^n9@mv?^p z=;86`e)f8t(MIH?m`#Go>k1JC)gGVYYdc32AC6*lwB=Pb1An6U)27HgZxx3Yo$R&t z;t_XT-?2e7FK@-U@~DLbl?5(whcy{FrTw{i_dgAtWnXU(VTK&%1!}Ck8@!{|>s9n< z;IWR4xsX(G%58*mC4G!^N^Z(Xvqi%c+iE#71`&X{st5&T*WSbL(FKz^t0~X?aO$Uh z8R}}9$_5=cU&5gFFElz}8u{ac5Nm!b=lLnGzR*ZTJ;RWW0;wnExKsDf5Xru4tfjg0 zumVlp;j|24Ny?<>d5xP>p1NLn@!o*u{9y7t1Ml7L_YdXwSBArEwQJY@J*{}I0~u25 zeB+Y~yNuqX0SdGu7wp-&ef-rD#N=MwbmTvEX0ni=OHD;(PpXd^33I(9pWf7fQHBx5}j(yfI3?6O_24ZdbX( zNX#%-Q{jF?cFa^x$~!iathz>!U5GZR3C9NyLa&xs24y|KSvqAU4q}}+f)b|i$U10B&|I>HLxA1Z)tzTTEL0ZODCv~Fksh*sd&8Y?q#hF;Xi?DW&DX^mW#A?9|YtWx@ z07t;~GgKS=w_2V!9Y0W-jYdD!KW|Vw*ni9%{Ejp*Q-!2sVbBLtzG|nx?cS3PB4dSv ziF-SA|AsS4oCnqGUdV+vNAXortFy*ckBHk5UktyM9Ed|YBabTNd^GMyA}{Wnf7I^p z>dacC+0O;@w>)#dGn;L0jo*lU2vg<-G?y<_8|s(&O06g3e5~9V8WV7sfJ+osens{z z0~J0!?lfooAEI3_2xzEQjZV4Emnn;t#)i=)Q>Be*(>t9P?9?8Y$lduS?W@gpS`RNh#Vm`(lo1IoH~c57T}?5YLWr;{@?chSI3` z&#*Hmez$xUslb!dg{4E%*9C;U}S0u2Awxews?XPvM9A{yf7@64_ znN{YM*EGMZWxto6YxeSbQvK#meh5j%4!)xZ#I>4yv%EwcOFwkFz9B!!xc&joM~ah? zLkq&>m1@gpxcyzOK`jDI1C)R;-$c+ltG`Th`l%-~E-(?sns^h_;_8};L`}_>0T#MmK73cO$oO}^-sM5pp^eE0&w-z(*x#?vVHPb7~$&MLdIns z`GCGy6}XxNCI7bV^d3zR`Q0W6KE9PKxps)i^6f9I>M{UG4T&27zgm{$PNJXokC6m7 z9=`l%))*p7ejB;(z`p=I0QV%R#Q^v_F!~4hLzXTA?<`M%_Pz-2ML_@Z_nmq_Onl=F zf4}SjCI8RQUMF${^&hN^=`Vy8+KOtlYh zenYmL*0bnFyaO(i=cR?LB%d{=J~-(#w6TED{8agGf#bj_=`&3bAqplJ>C1lNC*|Nm zPbs{bh)skMeS{Hyf;W%AX9PSz>)vkkFKgiRO=+Gz5}5$#ITID7To~~R9b6!NGxvwru}y@aQx3$2LHXrsQ~My z1;(q!`%8x&eSBt*Y+X~eF8=fTMnP8v(fitSt}_8CV=>h(F%!|E(?!>c7xlvMr~m6iIX;kPJ{LD^!oJb*rice`hnq zVOE@#FPYiWZPEG)l4>@0O!e!mHl?Z+{IJ(V^|k@i?oj3_$$9G2SV!fGH}vS`7Y-E{ z4#DwL{1?ts30CNiY}G{NLd>eHo?0uo+YZMe9<}G1xmFA<9|g6Z!s@##^-bV`AXJAm zsx`%Es4^|ZcCYwWLFg{PF9~)nFqLAaIYi1!t2+T1cddH%=A)*A>B?rrYd-el9wbO( ztEqR +Q|7RdZ>Sj9`C^FF}Su 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 docs/anteprima/*.png +""" +from __future__ import annotations + +import pathlib + +from PIL import Image, ImageDraw, ImageFont + +W, H = 720, 1280 +M = 72 # margine laterale (= Theme.horizontalPageMargin circa) +OUT = pathlib.Path("docs/anteprima") + +# Palette Silica, ambience scura +BG_TOP = (10, 12, 16) +BG_BOT = (22, 28, 36) +PRIMARY = (240, 242, 245) +SECONDARY = (139, 147, 156) +ACCENT = (79, 195, 232) +TRACK = (56, 64, 74) +BTN_BG = (32, 39, 48) +BTN_EDGE = (98, 110, 124) +OK = (122, 214, 150) + +FONTS = "/usr/share/fonts/truetype/dejavu/" + + +def font(size: int, bold: bool = False) -> ImageFont.FreeTypeFont: + name = "DejaVuSans-Bold.ttf" if bold else "DejaVuSans.ttf" + return ImageFont.truetype(FONTS + name, size) + + +def background() -> Image.Image: + img = Image.new("RGB", (W, H), BG_TOP) + d = ImageDraw.Draw(img) + for y in range(H): + t = y / H + d.line([(0, y), (W, y)], fill=( + int(BG_TOP[0] + (BG_BOT[0] - BG_TOP[0]) * t), + int(BG_TOP[1] + (BG_BOT[1] - BG_TOP[1]) * t), + int(BG_TOP[2] + (BG_BOT[2] - BG_TOP[2]) * t), + )) + return img + + +def status_bar(d: ImageDraw.ImageDraw) -> None: + d.text((M, 26), "21:20", font=font(22), fill=SECONDARY) + # indicazioni di sistema (segno grafico, non testo reale) + x = W - M - 96 + d.rounded_rectangle([x, 30, x + 44, 48], radius=5, outline=SECONDARY, width=2) + d.rounded_rectangle([x + 4, 34, x + 30, 44], radius=2, fill=SECONDARY) + d.line([(x + 22, 16), (x + 30, 16)], fill=SECONDARY, width=2) + d.line([(x + 8, 14), (x + 20, 14)], fill=SECONDARY, width=2) + d.line([(x + 38, 16), (x + 48, 16)], fill=SECONDARY, width=2) + for i in range(4): + d.line([(x + 62 + i * 9, 42 - i * 5), (x + 66 + i * 9, 42 - i * 5)], + fill=SECONDARY, width=3) + + +def page_header(d: ImageDraw.ImageDraw, title: str) -> None: + d.text((M, 84), title, font=font(44, bold=True), fill=PRIMARY) + + +def section_header(d: ImageDraw.ImageDraw, y: int, title: str) -> int: + d.text((M, y), title, font=font(30), fill=ACCENT) + return y + 52 + + +def label_pair(d: ImageDraw.ImageDraw, y: int, left: str, right: str, + right_color=PRIMARY) -> int: + d.text((M, y), left, font=font(26), fill=SECONDARY) + rw = d.textlength(right, font=font(26)) + d.text((W - M - rw, y), right, font=font(26), fill=right_color) + return y + 44 + + +def progress(d: ImageDraw.ImageDraw, y: int, frac: float) -> None: + d.rounded_rectangle([M, y, W - M, y + 3], radius=2, fill=TRACK) + end = M + int((W - 2 * M) * frac) + d.rounded_rectangle([M, y, end, y + 3], radius=2, fill=ACCENT) + + +def slider(d: ImageDraw.ImageDraw, y: int, frac: float, value_text: str) -> int: + d.text((M, y), "Obiettivo ACS", font=font(24), fill=SECONDARY) + vw = d.textlength(value_text, font=font(24)) + d.text((W - M - vw, y), value_text, font=font(24), fill=PRIMARY) + ty = y + 58 + d.rounded_rectangle([M, ty, W - M, ty + 3], radius=2, fill=TRACK) + end = M + int((W - 2 * M) * frac) + d.rounded_rectangle([M, ty, end, ty + 3], radius=2, fill=ACCENT) + d.ellipse([end - 9, ty - 7, end + 9, ty + 11], fill=PRIMARY) + return ty + 44 + + +def button(d: ImageDraw.ImageDraw, y: int, text: str, primary: bool = False) -> int: + h = 74 + d.rounded_rectangle([M, y, W - M, y + h], radius=h // 2, + fill=BTN_BG, outline=ACCENT if primary else BTN_EDGE, width=2) + tw = d.textlength(text, font=font(28, bold=primary)) + d.text(((W - tw) / 2, y + (h - 34) / 2), text, font=font(28, bold=primary), + fill=ACCENT if primary else PRIMARY) + return y + h + 16 + + +# --------------------------------------------------------------------------- # +def main_screen() -> Image.Image: + img = background() + d = ImageDraw.Draw(img) + status_bar(d) + page_header(d, "Aira") + + y = 156 + c = "Acqua calda" + d.text(((W - d.textlength(c, font=font(26))) / 2, y), c, font=font(26), fill=SECONDARY) + y += 40 + big = "51,0 °C" + d.text(((W - d.textlength(big, font=font(92, bold=True))) / 2, y), + big, font=font(92, bold=True), fill=PRIMARY) + y += 116 + progress(d, y, (51.0 - 20) / (65 - 20)) + y += 22 + t = "obiettivo 55,0 °C" + d.text(((W - d.textlength(t, font=font(24))) / 2, y), t, font=font(24), fill=SECONDARY) + + y = section_header(d, y + 44, "Impianto") + y = label_pair(d, y, "Esterna", "18,0 °C") + y = label_pair(d, y, "Interna", "22,5 °C") + y = label_pair(d, y, "Modalità", "Auto") + y = label_pair(d, y, "Zone", "1") + y = label_pair(d, y, "Errori", "0") + y = label_pair(d, y, "Aggiornato", "19:07") + + y = section_header(d, y + 24, "Comandi") + y = slider(d, y, (55.0 - 45) / (60 - 45), "55 °C") + y = button(d, y, "Imposta obiettivo ACS", primary=True) + y = button(d, y, "Avvia boost ACS") + y = button(d, y, "Ferma boost ACS") + + d.text(((W - d.textlength("Trascina verso il basso per aggiornare", + font=font(22))) / 2, y + 8), + "Trascina verso il basso per aggiornare", font=font(22), fill=SECONDARY) + return img + + +def settings_screen() -> Image.Image: + img = background() + d = ImageDraw.Draw(img) + status_bar(d) + page_header(d, "Impostazioni") + + y = 172 + for lab, val in (("Indirizzo del bridge", "192.168.3.21:8790"), + ("Token del bridge", "••••••••••••••••••••••••••••")): + d.text((M, y), lab, font=font(24), fill=SECONDARY) + y += 36 + d.text((M, y), val, font=font(30), fill=PRIMARY) + y += 52 + d.line([(M, y), (W - M, y)], fill=BTN_EDGE, width=2) + y += 44 + + d.multiline_text((M, y), "Indirizzo e token restano nella configurazione\n" + "locale dell'app, in sola lettura per gli altri.", + font=font(22), fill=SECONDARY, spacing=10) + y += 104 + y = button(d, y, "Prova connessione", primary=True) + d.text((M, y), "Connessione riuscita (bridge 0.1.0)", font=font(24), fill=OK) + y += 58 + y = button(d, y, "Salva") + return img + + +def cover_screen() -> Image.Image: + img = Image.new("RGB", (W, H), (16, 20, 26)) + d = ImageDraw.Draw(img) + # griglia di app sullo sfondo, per collocare la copertina + for row in range(5): + for col in range(4): + cx = 108 + col * 168 + cy = 150 + row * 180 + d.rounded_rectangle([cx - 52, cy - 52, cx + 52, cy + 52], radius=22, + fill=(30, 36, 45)) + # copertina + card = [96, 430, W - 96, 430 + 470] + d.rounded_rectangle(card, radius=34, fill=(14, 18, 24), outline=ACCENT, width=2) + d.text((card[0] + 34, card[1] + 30), "Aira", font=font(40, bold=True), fill=PRIMARY) + d.line([(card[0] + 34, card[1] + 100), (card[2] - 34, card[1] + 100)], + fill=BTN_EDGE, width=2) + y = card[1] + 132 + big = "51,0 °C" + d.text(((W - d.textlength(big, font=font(76, bold=True))) / 2, y), + big, font=font(76, bold=True), fill=PRIMARY) + y += 108 + for lab, val in (("obiettivo", "55,0 °C"), ("esterna", "18,0 °C")): + d.text((card[0] + 34, y), lab, font=font(24), fill=SECONDARY) + vw = d.textlength(val, font=font(24)) + d.text((card[2] - 34 - vw, y), val, font=font(24), fill=PRIMARY) + y += 52 + d.text((card[0] + 34, card[3] - 60), "acqua calda sanitaria", font=font(22), fill=SECONDARY) + return img + + +if __name__ == "__main__": + OUT.mkdir(parents=True, exist_ok=True) + for name, fn in (("dashboard", main_screen), ("impostazioni", settings_screen), + ("copertina", cover_screen)): + path = OUT / f"{name}.png" + fn().save(path) + print(f"scritto {path} ({path.stat().st_size} byte)")