From 2e2e48a70b817399431550286ca64c535109aa13 Mon Sep 17 00:00:00 2001 From: JOLIMAITRE Matthieu Date: Tue, 2 Jul 2024 22:02:18 +0200 Subject: [PATCH] 7 --- os/tp3/doc/activité.plantuml | 42 +++++ os/tp3/doc/activité.png | Bin 0 -> 19605 bytes os/tp3/doc/température.plantuml | 286 ++++++++++++++++++++++++++++++++ os/tp3/doc/température.png | Bin 0 -> 37617 bytes 4 files changed, 328 insertions(+) create mode 100644 os/tp3/doc/activité.plantuml create mode 100644 os/tp3/doc/activité.png create mode 100644 os/tp3/doc/température.plantuml create mode 100644 os/tp3/doc/température.png diff --git a/os/tp3/doc/activité.plantuml b/os/tp3/doc/activité.plantuml new file mode 100644 index 0000000..2aa0d35 --- /dev/null +++ b/os/tp3/doc/activité.plantuml @@ -0,0 +1,42 @@ +@startuml activité +title Activité +' !theme crt-amber + +analog "Température" between 24 and 28 as tem_cap +concise "Chauffage" as tem_act +analog "Humidité" between 76 and 82 as hum_cap +concise "Humidifieur" as hum_act + +scale 5 as 100 pixels +hide time-axis + +@0 +tem_cap is 27 +hum_cap is 80 +tem_act is {-} +hum_act is {-} + +@+10 +tem_cap is 25 +tem_act is "ON" +tem_cap -> tem_act : start + +@+2 +tem_cap is 27 +tem_act is {-} +tem_cap -> tem_act : stop + +@15 +hum_cap is 80 + +@+10 +hum_cap is 78 +hum_act is "ON" +hum_cap -> hum_act : start + +@+2 +hum_cap is 80 +hum_act is {-} +hum_cap -> hum_act : stop + +@enduml diff --git a/os/tp3/doc/activité.png b/os/tp3/doc/activité.png new file mode 100644 index 0000000000000000000000000000000000000000..b07e49f454c133bc32c0dbc5d0e5937500f4b701 GIT binary patch literal 19605 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 capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "25.2" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "25" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "24.8" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "24.6" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "24.6" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "25" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "25.5" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "26" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "26.5" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "27" +capt_task --> capt_queue : tx +@+10 +capt_task is high +@+5 +capt_task is low +capt_queue is "27.5" +capt_task --> capt_queue : tx + + +@0 +@+2 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "on" #LightGreen +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx +@+10 +main_task is high +capt_queue is {-} +capt_queue --> main_task : rx +@+5 +main_task is low +act_queue is "off" #LightSalmon +main_task --> act_queue : tx + +@0 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +act is "ON" +act_task --> act : allume +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low +act is {-} +act_task --> act : éteint +@+10 +act_task is high +act_queue --> act_task : rx +act_queue is {-} +@+5 +act_task is low + +@enduml diff --git a/os/tp3/doc/température.png b/os/tp3/doc/température.png new file mode 100644 index 0000000000000000000000000000000000000000..683afd42ae5fda3b4ed9bc06a52b10f7e837509d GIT binary patch literal 37617 zcmd43bzIbG`vy9?CMuu^s0fIt2qPd;(ki8ZAl;y(ba$GRh{Vt#AU%L|gF&ZsgCHS8 zNjIE(0C&}0_ubz==Nvz;GRr&johRj=ai z^r5}*o9RZjari-F&M#-KZe(nuuc>8@5Y#l(G<{&Msc}xt=G;Sbb7M1hdU|912ZrVr z2KsdBMh2Gk)#M1o-Vz-tIrHzoN9=*;Scgu^DT{SqJ?XHNnp;D5AXwt!BS$ozB=h~- zpKw`lQkxBIyA^~(>(e41c13iOlsw^KiHjpVw_A5FUv!O`WgvZ}adiKs&QtF)7`dGHBpf-vN1XKDQ3~C? zBXfK8-|eri*=w>v8IC{kS<2i0fZ38Zep=8v`s&t)L6K5Us&Cx7O=344XlG>-?_Ol( zloXM9bs*q8@se!FYcfw`k)_D1j`1DQZ-*7|;=0e3&z`D_?!r)dxPISAv>_Zpb57l58a%OX_cqa zSNJlbBsywgCSUQ?i|UeslSmkGt6q0FYIw~kIqs;zJ;sj&2TH`qrG->4u2?2Z(>kbo zjvlvc@0$57CvX3-!FSu=SgVY#a=5W1^4vE$|nKJ zA5%oH-eG*O2dDg6!9?$2vk#7U0_DDT1&q{GSDB`VUa{g^fAn^cP{*mfK@-Jxgpc~c z@QHg5^X-lY=8QjVcUv3@A0>78R-H#e$NS_?l%zsN_*sMDHO;C6mvd?sQ0M8Sq|4-8 zO7F$Ft;}hRR(DF($C|RBG7`dRi!u_(&Remd3UaSM(7P}Z)Ylnyg=(C~cR}ClkhUb7 z0{rbN$xz+Qx@!^o`d(ZSU8rxZ&82f_{+pT7M{-zfwK9bno>DwD>JtBy!umiv6|Zdl zQg;W>)U9xx(*#FtQZA4`)I7w}xhI^`zA5Uhc$YELMU%I7xrg3`Umv|jKpixNTW_m* zOTF8vf-v+Ilf-9qg{96@cJTwpwR!2v4X#g?EGeQr)X*mSxpm|ERE&kQO|@ZfBL-O? z`O~6C(hvw|#2vnyQr0RHy+^F27Q(hn5+|~|Q?h$|Q+j)ymO3|r1{OZwt0!L3>y;ZvJ#O6EKS-@*q9 z8?p0`oe$|>*V4d?;Ya!TU5M4L4UAN#pViRPawpjQNWS@68QzIMx4md)l4qo;#KNUU zl?ttAW-7=_CbPQ@^M?IPOG^g_)ijF(=b9rnTXeHFYf9EV4t4c{RnT^zzY^{}S zZ7!AY*vt;q1kfkxZGLm%xk637((bg;Zsa%@5-sRusH>YlQopt^E~}tGgWH&6)L&m; z|KY=jf~kDriS_RO&Be)_{$iUst+e3f)Q*hR<8N2yMm>W1SL&@w=hM_H{FHm`=jt#e zm3BFsqA=uhINQ5BGSV9_bmz`-v&{kW%?IB;zh~{YpUWxPn9R>-w-Rd>tSuRf4Ov~9 zb{bF4p&@Y`<>+_w@*-v|o7YP%ik-MAKj*J#c$(?qr={X0E(V8whb3jR(ZR@$NiWCw zXa@CiSGH-GS;W>#M8D(OB+tf}SlK1D{Mgu$mC=Z;?vf3~nQuIsUw8ywp4G|d>}l7P z(y<($-Uq{rLTqoAp-{;k11V`~X*U<1<@b1WDutKHVq;_7U4;Fwm@H*SgxidqX4rtG zMv_c*r15gv54usU&f7EQrxR%2O-l~!D{*p)2w#-Z(;H{D;?}J8L&~OH<}k@qQgvL3 zx#mzoYULWE*PcSyY}M~z6_I4Laik}Hw#UGk0EXbY7wZ$wc?+2#n=SEOZy!9lR?++i z9_QyNgVmEnMEQ0c+zxAtlT%Yfc*!zJ*4Hg3^RJ(nt%|i9$TSHC zp5SrkZY*{iA+>K$gAoZlN$l3GbF2pkFwFpQH2t2o5E}C`_TS>Gin`_{ihHvr< z2=EwFuXyP;Hto1nP%Xm}lI$fLt-CbUTg@9IK5Wi@(TeUYr}ekk5W^E|{TbQ~D5UIE z(NZ5bEG8+Jt(1srzIoN0>YL7=CuNgu@wB>HXy)5m|JG)LWSk#c0KKZAo}SsbkyO!q zldzg?f3btw>PU!DvGq*UQ2jGzy*5{ujnxISCHt*a?Cx?G)g?r1t&gg$4hN{pw4L0X zn%)$x?JRaE2n5SqTqoACB>DW~R)!mpmgSm!DGgOLDzf+2g~i=k#1 z4Y!*D%Uy}svca?@IL)y-MeBdf5GVZG*UG9oEX+5HZ8h_3NW#2I)_SM=EZUX(?ve)y zv~o-r&UtMud-bo6u$Gb4hjSrI%*uQ&3U98aZmoiO+kAU}&}youGcHHmVs(D(IHkb) zuPD+-(ej{&ny9jJZ>2Y7+1a%2xNuwD*`caEXQY4hu}>0RyrOZE1z=MMfhcT% zdOf_sb_xFL>7MOSOuHS1S@->a7MGQx#k0)EB#?%oWgf(O+IwzBr`+F%!4Y`<(~m<= z${UM0C9NzWd-DaNg(k!~jy&Moyt>z7Kjl5yUw+(L9v7NEt|P_IH0yFa9(n3f{^MVM zd{C9O^|~ER!{qMa0YR0)`rGHHPoGwh*`Z@&1!^IJrj-fn>LzM+gH6*ZNr$@Pm%G57ZhDlH0%TvHkpbS;y>f4J}bkrcN`bc6Lq<9yxcRYKbG2 zXy~_4dbCoW1iIv5h3yX`Mxt{v_@Zh2Sd995QdLX9f|*!YZ0q|W zq?M@!aoJ^$iahHzB=!h*Sd<@*Y>GF%ezyAKH>ax8YI}a!TMPB9tSo66nURr^*q9gy zGj_rObXfw=cFpDpud=45rp@M41&i(BiinDeDk&+Mn$FIAso)wdP@)?qX|tN_8fH^X z(`mkx_EolI6*X(TIMF#6xyplDfAFi((dffwhly%iT4wheI;94D9JqY>a(qI9j*(Hj z;e9RGdF)=>@tu*5^bQFjAtq+EoalhmRTo9dVJUaT-{ecVg_TtjV+n@h(o1q4I)7YP zvE<~*!7`8PfCLXDI{nPb$6pNybzDI~p}M*{Jw08Y1)`0Rm>4|`%?YCdb`Fj#5_3Bk%;N_IU z!GYQ!#xfjgYHA4QganLQwfEYGC`*5FoV^x=FQ%rZVq-6PM_S`u?0ZCWjGDpQ+Z(K@ zsiWhoX4Du5Y@5@gEWLJx!Z(l<`48feoov2y=MIE&nRX)s15#GQp5>V@^w_K! z&S5o`5Em{aB62c`Rw?)1mM+AC0WvEQIwI9k(WPR5`Iw41?wf-pz_^>%N=ki0 zgVpu3x?)y3Gk+1bRz#8L_D z`@*;V&Xs7Bo{jg)&tb^5I$zhoz=A!jv$NB(KzZ^G+u4_oA3qKb4qjZeoIG$SD;|yP zF&;=o7KL3rBYoWSZ&sDjE-fr9EH5uFBjaDEC21!yHa5o3&u?L25f&EKbqt?KD;3EX z`>h?-N7)qb{%{EIm+%%ClagOh5E2|LBrMFx$e2v#WKK^>8U5zXo3ymXVN;!)_nzwh z`H%CSmZZ#+c?(GM9oZ6`#Xs_M6g>YnMTt(9mzUSX#02ubwipc~qhzRonVFfDRgNVI zU*I7$lJ60A5Z{;fY8vF#uC6Wsee?6?3*}rPb^a(6IAdE=Q&cYk@!|HLyA{Z5XJ-fV zada&HIB?HS!m@yiimGDF99CSH72!;B_s@6oh5pMf;CpXJ9ju|e^K9wr!kDvXWMoWQ z7IgVSh}ge>KQlA)Mg@>z1Nl8H{ z?d(kGMKFjIryy+pWxuBLF;i23e@_@4`lsb)*~3&gj&n%mcNynaWu8(>yQ))BZtitT z%8waTsGuNu1%)m!yx!jA-UF}RE&S!sU~yhU6huGfvuF3sEiK#H+K7mVV&meHSf@Jm zvo&jA=}|DPhpdRl-#?Fa$L)eCd2w+OgTbt?+q-;>TzoTOX(uZBvUyD3z@XI-f%wM% zef6CK;j!RDK_MX_{{FFxZ%WNoR8*v;QF4i}pXdJEC1<(De_MRS`$lZG!&YeLaQ=0v z5%&>0PC>h_YWiI6$E+zmKen^TTiUS5Tw7mN1Ox;imZ+;o*9*BBYg6jLElz+)#_9_%LS@8SAyZdn@zrUkb6_U%3;Pg1hEuP+5Q3g7cj zH#r0$;rEdRfnebMzV`^~-rnB3ckcp@2?`35@#4u3_$kOE5NaX6i-AHuHN(0OA6}-T ztFNs5HgQK2iqWHBLj?r|S>2^qcYxc|-Pn=nD)0+N>-$Y8mlqcHu>8Y1atHK%PjSC| zywqAbDm2NZnk8i?SQ>&Nr&tSJ-erqYug!4-*q_D&!!s@1{Ut?uurKP<)dB<(6u&^*OktR*5V9#TG4vS~T zQ7QL#X5&+JMj9!Dek*rHjAvsWDxJ(4*dFJ=e~nFuL&RY84xWkf8Cvp%FUWcN%t*gL zS+z9X&%?~Tz`hw+2~UE2_QD<)i?$jQVNcNLD@depVXpMA*#UvbjeKDsRkSu$kYRh7 zHgT*u&SMN{i1%h;m3|Qs^rF@upC9YO`r?hD9gm`+rLC*2&9q%_EPCUY0bUne>bbJe!vvS~dva&`?4}7l zVnxFgWMmd+Yv{esFzW(-^&p~^;Bmjw20)9Bo}Qf5P|4nYeWEj?wdCrF`=h>8V%(-f zuGjehp%moj%a`x5^b}a7 zS}&KA7|GcdpH}X4OONf45s{UVQLyb&44_j6f+paKe3av?yhyy$`=LfbazbHNSJDrn@p`mBvnmfC? zAQfm4W#``#0l(b#0?OyH;#m%BmYOf)_&td7>_WH?;+{2Lva|=9Ce_~7=1aNf;6SS5 z0`dno0#Grt)zk{%*r1zJ)0;bPZf=-hAu|m78EK5+AEC~TWVT-^^iuJ-mp?ayXRXgQ zc%5aNEhAR7Uuc!>%G$%W>6r59{%%q{B`ynV3XvILqK=M^u9%R>=}7hKXreMrVSGrCf2VWQZ| zBQYVtyC=_h{%a#7>$I(pE_ek>DO3^mO{U2L(#pzVfyMSK>7ymLGq9`3v_NSCK@>~n z9QyVtk{1we4^&2&)}&T4f88>7LV&b`{7rpDc4aFOP~{{gjboJevVM*Z|1)viY?Fqt zWnB~;7DlUbEO9rqpHs@RkgBhXOZ!!0g*6^hwvOkBp07|aLipTU8*4?Y4xK)xVVbq<8K!}#!O7K0M`{79X-QzJFi#FD4K?j&am2#y1F6(%cZS^9T^@Tu6FBn z+S;h9sv5lE-zU)8ZB$|~wi3HoLGEPVnXai;zrF%-37AtX|5DE}EyXh58INPU_fl(P zV`EE;6d-GGXJ6k8!`}SingG25d71I9EWI54&UE0~U{6_DSY{I}AaSAqN0$jlH#JGj zU|KLUf=kz~T`TptI74%LgIx+}l7Ln*?W%}Z%!%ym?0ryH!*_0Otl^Qen@{!R?XWki z3*!|pNlD1b=@*R$KI~r!LzW)yH>n^66Zasd@5?cYhymUP-X6rL?Y;uBSuxKvCeRGx z4>o?VspZr_nVtDi+*trsLf~phOs~QTn+7-lf(AhAU}n7(jQYacPJL`h&Nk?VJu?II zY>pF~>*j|kr2UBETcfEiss#A^`@0ic+t;2&IDblC9lNq(7UoGqd3iE2IQY!uUcRd{ zy3;^0RCtm1mpE;`B;{Z+?8!A9u1>O(S5?f?MOkkIL_|1!e)os~>Utih@O}}%AiNfT z!=Pw18Y)zOe;7<{mghufRu(f0i#xF&lu;4(vsG);C8=W?@^*$SN+pgP zZOMvO(|yX)(yaiw8yh2gkMB({ms6(T+<|1QGrEz#q<_wt4>v|~lz#fYCcDx@x>D~+ zR_x63ltvpOcuWRMfs&b>n*+Qmo2<~0MDfh8a z>2->l63nD|thT;ByL%GK(*fg?Cr`Gtv}ESw=&`=y{fkDz;#|Qu;)IPKw!91D8#_B~ zfct~gHr1J--JNX!))3hca;zOK?+Z1UoSdABiX(7LU~;-vCp~wuW_(gdBiOc#%%yO@ zvbn79Oaf$?Ba;!jyEqGqTWnZ|R0XBBTCi!xz`#cr2ntzHV?YklRRr$=)~7vLF~HYX zQbIyPUcR%XrL^uj0-+QE*m_2UM&-P=mX-q7CKj_lw+<&1tG3^J2H|{Jy|oit7brck zzSG;)r64P71q45o%3eI1*J)`dF)D5C6PDN*1KosT_#c$eV7m~59xm-i+^9AFff|tU z+D-d9W@Z`I&sz}mgS##{&B-zxq>~wS+AyP&| zLt|)o*p2=8^l1q5-L0)Ly#e&!jj`3U^_QY8(;AbIn0P`sizIO0Uwj!<|7dn>rE&hu z3Z?T-U7 zSGSdBCiXH9PYJ}s?Cix4&yFyxsT@Ll;8oHhIdcZcWyWjQ&}3ZHCd@?i0#GEa9LYc+ zJ`1GnSQow;DJkjTU2zCbQ@sT_kg*&$Rv~Gr_SUR+K^U91$%wQm@gqijNcgw<6f$jY zTYqz>k4FO-f3F zs9Q!T@g4n{%&EvX%#l0HH&&yN*sv~Ld(xv6XD9CE zc03I^wkJ^dpX*!uk&{4e2W)#UmYoU+r6A%{RfZH3&h4=JwJ{n~_Z-ZiyDnXU6ju;v zKFEcT5qWt(#s~*wa@@j?N=?B(9F?B(134>eCo#BJ`iHVOk_ct-jO68xg#jbFMk7z%m!p&IoXv&0tpZRUcSY+si`T1ZF)U$$D^8y`MNqf)W3q9 z_>`2FJfXJHfki3!K|d7t*q%a^HxIM~_J8W_br|^Y3_{;bU;69UpTBtVhzbjjPpWOW z^&0j=FA6}`(qy-+q$FjZhiOJ6D*y4GS_#>~CM=2pMgXAc!g917z{raiFM4`ey=+92R}CwmK^o|P>mR!&pnHzFPvlSx%60^exh zUYh`@y0EZ-g{_u?;!k0Le&7Prmfz>t&To?^oh+=ZR#sMeIX9oWz01FKa+d{#x?Fyn zUEkv@PN!PD4k-OBo9Pg=3-OFIpw6)cuH3p`QC!>v(?VSwdB7DPSWUpB&z?OSbdma% zSOLRzCQho~<`{Fm0gi#i0K9|}E!S+c{%#0MvPzLccO53L(-^Q57y;DAP^S!%&SI zvy6e=3<22*BKOQxaKS5t=dZjZe93oa41u`0n;e|KHum*70+<6V0|n>A#Kipk{Lh#Z zn={B^fjsDobD?;!6ucqzaGO3J)PDaHoAc2i8wUK~{*UUV~lP>}htR&EEaRB%alq>XGfG#OA9@xuDa{eh=r5!1L zA84e({W4lwv8`XcrZhD)0476&$GxdlfA2%*Y~kS(kp7!lYE9jkp`z`OqJi6wARGlT^MP;KIw9=r@N=E|<6BKRV~qJjE>`ez!d zAt*aQ8d02$(#!%cRx0Xz3;O^Sb#ydu0cEAmzce_&NL`Ns+K1*wq_~n2r+WDds0pbq zT;N>nP#@&ayXFM-91-3TqAR(!1*u_Nc9swWfyw24eiWLgjvtlr5cp)UXpkvk;IP0z zIsgTkB$M2Ponk>R*j)K!cg}Qoj+jzkLl_6~7gmyNs7gzJZioSl{Ss0JqxoEwn1Sst z?h6%-D^nY5PwgM7@|`YPQeoiIZMi($KD*Ro=4E{y#wpKLT0lBkZn)HvAX&za?Sz%T zI8Fe8Mw<9f_J+cJ93D3Zy)sB|*yb-3UEJ&6J_0U#h^-`{B7;8WdZ%^-l!0I2o1kQC znX1&^X~~psbwUd(se-(>rn2%f^o;fOkMe$`b05cH#s3L0?PSzj>aB^=K%d|f0EDF! zcmd2Jwuy!Z)I=9_N)byw(5P@lfkL1jb`P-YHEQZRoM_<4{C%(~2Aa>U5N^1PSdgxS>l44v7P`#z76m_i~s}dx4xX=c*?QYXJ(%L1O^MccEzx_1O zBM>d169lsYm^%uAwp8*-)5lqjoNiYAj@Nzq9ZgM8dlF6-rvz9Vo@lrSjtcECjHew- z2rUwsghq>;6)t#x?5_%HTNv=29L9%yod-Q+7K7lxVyM5J_xxd79E$NGvl%*GM;{}b zqC`DHuaJ4$=JKUd-kD;4n^S+aR|s$YSvC+Qj0_J$;94&1yvHf8-<7E|S|0{OMkgid zLDPh@49YW)u%TZV=Q!%(6W%+~XIEbEXIvl@f9cK;{uPiVZXO=OqN2b|=32^oxe-t)T=DPeQECVZVKF$t z=(LceN{t6a5-ph)bjVYne1bps1#Gbu!YxX`3c$laB7v>K)BI#;(Z6eQ2V$KsGPgXt2~R!xmZt zBcr1pD+HHBtcSb>{pe7E#!F0ZftdxnLb0@AThdXGFF+yY?gp&uL%f}5-M_Unvineo z6456lB*6E;u*g~T<$z%Z=me}utiAAUEPHkx>TD={-CbbQ>@W#&@MK>fA0j%XuPej> z+hx{IeVRW78^3KOeb=7s(4GI-gWcsK|Fy;X11RJWZht6M7sA?rvopP~tWKNu1{u_^ z^_UXT>}x7JzjeO#XLkmHI2wr+P3*q^`KN6?$xhMu|ITdeh3f8-u3|n>Bjc|0Wp?B; z%!KJ|F{}5~g!HwL^+}0%6Iy7p$5y)MUn7;&;8zZMNu3^*B2sZuUR*X--5q`YO$xpy zHjZ!zQy5AmtCpzf4;o+3JaS)a5T|c+fcv>u8qZYoXx5gae(2)2*jqBQl|p3lRg_2@ zjf-CBA#W6Cx{u(_FZVnE{m98`f!2|_5D+?GH8M^>N5m;lJScTNt`-J_F3?(UV4$uZ z`b~Owgjwhr4A+;Ud5DQ;#Kr2cqy6o(;S0~{n_Kwz*pf(RXw{`#pXPBal#>z{XL$JO zb%2U(LQ)cvnb`u^FesYmdfFtvc_u;`SqQ=_$Q__X6uWar9@LgqzEoMrsyx$S_c|>O zY^Q0DEp1<>oKk6-g-pS@H)Qq?5^`O|Y)ld?A0@o{VQ#-p_(sR6?s(g!UMuZ|dkRuu z@x;yah2I{JvS0HPXax~V){&u5HZv_?0M+mS!GdoGcPN6y1y~VFE;h)dYO+w;f186rGo zI$0Z=y!6U`9aqvzR8$_VP&QN5YXFT26~9`s+|63qO}1M=8FX*49VO$GLrbcvrgFaU z@Q~!iM?zV@0@5}J9$$g01R-s@=qs#4bDJCw&~``1BbyocWm-^Uf#;E!YV)5>l90mU z*=2&w{Mp^!5cCzyVH=^76MXf-W4Q~lP@VS_SslS8VVQ_@Av>`JO)~Q(mc+p?Uw}?P z&$~?(uNi9cz`_vX33`#yws}E(y?y(-1;)?zWMp)-`lr`7)kq_9h*mj{4Z8x}D;Xzx zS4ikY^ATdYlXDSKbKd%= zvH$2!{I``Us<-0|gN7$fKuwH&@g3{=M!~Wss5Y?i*lo`r2QK$UfvOA05-X$buXU^? zo0MU3qG1w?u#%-()vAM2-hyKaqf7p$rLkUQ} zplt=qbF?_h*OyVJ=?!SkG`*Wvw-uU!*G-}-VpS!(*fD}pe#w~eanu4c5v{^dUUJjz z6D`mEs3PJ9rnsV3J;$nD5`m*0S=5!YB zNOV92LYK`lPf3h>VW72I9R)H2 zU?hctWT=%zGT0I~;}ZLZs-nK@w>Z7@+fsnndG|5?mv8_zJKJOFWgyym7RKV?`z zZ%RRTe!Inqr zd`p^*m&nA?ESl9PhrdWQaL&C*XEhP>51*EIf|4_UR&iv}33qO^fp`wsXXyCkfnZjW zjmR_cp4&^0>;IfGw%2_BQ_tOP&$DYQ{PL0mfB}H@LZg1}EZ&x;rt>2&$hh*Iwl<+- ziM(>f97fJbA`N^Tz->_>A$K{|+6WG-lu>ahXg0zC$hqy80boLBiTH}#Yx}zeCC&F< z<^o>_;HA8x!lM@&$TvG%0p>#Un40A@i+%@CW4)UV15j>2ayg;r&cD;`IS$G__y08b z_Rjcgq%q!a?5R<1PocqVKX{(5;d_q#!Q+06e>Ar+IO3N;{{UH2(UZo^VUU`cbwPDx zv&Ii4S;{(c~R8?W-qY|TwhDF+}MU8&4`D%Qfhs2a;+-UfotgqXe9H+k=-%jUD{BIs$ zJU$Jrrdw}5pQrl;n*8M3dwW)~Xd0h7*R|%KaLo5NBXTyed>0?i|47mAl1s2Pkq3%O^Et7^Gznh5V_zA(C7hYTWj-?5WJMkH!N zKM#F-C_g@#CKiM90P^>?lG@@+(M&l>mplV?rH8c$#Xo?=pBFcg1hr$tCVz*M z-`_dpP58O39~x8^Pi9PL2>-)d^TP$C)z!ZMsZ{aeGyyp|kLgh5vm?YnQ0vO#r0&AP zYU-FbZ?32mE(0~tg&I=IGcD7~Amz4~D|m;n53MHnU*EIXERS=;DmpPc+Y$seL>~O> zR#1;(`}NH;GcyBQ>~yVAZVPykC5JabbqTB^$ak{FtEw6rhzqc%L@XceNm(&TBni}A z2AD*wA@jGT{n3cr6Y_6$0K6#V5PmdfC{+ivhgurvY$YXB{DYA-!?q(q+NGg@JdsE& zJOl1w>x-9~l2WL3e5PmVrN2prl$S1rLn6P>76H)IRtVe8kNV>vZfzKcRZF}$gnj^E zU3q44*HkC2va!jdvCU^dn9$YC0g7iuZ9hYQ6Cm!^$*r?{L$l@JL{gRD%d3lIY+WWA;^&Or_gg#M@e8%Y6nvKLUTRBw{3^8a4jesoKTU3NsyC^g6QEpE z8z6kMgZlk2Kv@wlGOkrD7MvqEaiTQ4J;yC^7w3h+NgJDbS$pXH!DK?2bebS{m9nel zM@GKyZN7a1kAQ#x09P>fgcdQK(&drvNlVQ}&^~L|1p{L_1{rLRsN#xL`;QoqQ+e)- zlws<6wBjq`nZOhOaiiwR#8smcQ&OhJU;34qPW7-gtN{2_8-YGX&t^AkbvBgevfN9V zmXiuI_d2&M^rP5qX5W|!LFSteO$9o&I{QPk7dMSeO?|y3;N8+)>_>F4=x6BnzF#M4 zO*LJ^?fM?ggy*#t2|cWXls2sQ{x5@t8l$zn9jQza;h6|W&~mmG>!9a>GT@?B$o#s> zBA!shm_;#64csrNf~v=;{c!!7ZcCIfD6iaWg{<16;+cpT{XCsnv^0Hp+|G^~68 z7Pu@blGlX{(ATgj*UFHue-eo_=8{l!Vr*>rWGm=Pa5qI2dz~ySveF5TRe4F4o%vtk zd$LtN|B{0z&43$K_}hK!*DQvo5zxLD6aoHK*r2}!i|ID6_Jir8n7g~XOTawGyGwmd z#rgr}aj>)dv4PBhm2g_xSvlVeG4Ko43AZ-HW0Kq$jR{8SyPKK;Lx|<#MVjoReV4OnO%wjt;eW8z#eqVS&Z|vP&;_?i4{SD;q#mC4-)!ba)?rXp7i^C{%agPnk{}2OIv~t zRt}_0vzkM(#=K{wZFxk8i;t666+H6uSpF0_)^7EGKpwFfL)7~`X>K>InIy_ZE0r1* zEliTHf9`$y6i+7Al1}d4H&3I&HZx7tr2!XI|Ei2G$VE6e=C!+M)$#tV0LWdi!k${H zvak=OX}e53L&4i-vzh&1vWrq}q}buE8ao>sCDrKD{LB9T>LrR!+GA%t6QO-7e;fx+ zel|Y$NLnd$J;JD^U$C*rteD*b`M$=?@yfrVKC4O+XBWI{IB952F6 z9V>C#O7utxcLe$Zz}un!@wYIe%hI?adzN#0rf0U_wn5|S&?mS8~SlC;_d%sJsMPHU=R$~u!A^Nwe=~IF`Rg2YoouR=OzzKVD;a2 zWG)Ch^@*crq{Wd$h8vRW%M~mO?8OF($+P;blSP86P7a-0>kZ0(94zlQYseMj?u?YO zx3@2hX$KM%vq4Ewo+v$D+62O3cKDuKC}3{2nLzUOX zFPQbN6*^tOB}1RSrV$^rlq~AUHTsMO84*%?OD0%%CW!a*SHI&&LEV%Vj$e#a}|oGJ!jzmJ}8B2yL%*v0PG&_QV|U!kg=JsT)&P(-N{8WeY;j8_+3~ zXCs8wDUd-hg$3TY(`m0-EuQi!Q-9Pp9~&b_rn#DIZTRxvJAGPFEiNT?bJHY3UfD{G z+r#s{Yv|2roLH;HiQy1KTVYFX3Wk zj*05(G6TuxT~RWdK|YVA=i))FOIsB8WU4=f1eU0&Up=q!Dc)Ulw7Y&(c0|<-P7Tg4 zkC!Nx==m<4H}l+Dnx1ytIO4LkbYvQto67`u8{`5mBV#i)9j%uz;U{BycyDX-kJ4H% zp1xT5&Vi1r#`g;Yjq+BL>)RV_;DU!pvp9!z)`qpOBWEJ3VVZ%}G&gX48e1zwWP;Dn zEJ@1ro3WPCJ2Fr+m{eltIDSQ8UNIeJ)S9nglVk?ar_ZF~n^m9uO&N`0dSu;aTSDM% zjQ3vg^oH3o<|DAPrIfF7;Z@dozBDevaP3;Qs~?>DrJY_t9S@PG=H*U9l$GD-!}@So zsYPX9{hJH3+Qh&sju*R6vN~wD_E|QCWj)4zq zSql&^yNEKXQNRr2k#*lz*v+c_T;N25s*KE+qGI-_OGzaKX6YI-)vv^^7^g9uVztNa z9WkA%TzFRD>%?>4tUJRgQXJ@0*FV{L=arB2+VmF=mvJxkC$1QLbSKm+D_c#g(6V!4 zky8pTi>eEmYhjxk*|7cm&f3JmX|Z#(ENX2k8gF45ejUMDs18)xsrO{>%}1o#&T!Ht+~|()AWp19??c)HMdPHZ)aXyR4v}=0dWf zO1_p%b?#K@Ue&=OY^B#t$Rv}93A|vo7X_z z-`Wx?Gh(fhHQL}Lq~v`BXED+2l1Sjgye>ErqER%fzhoS-7QVqOpI~Nhc!ClJVujnj zvwK$8Hyx|}BG<$7-jpWjBV%RJ))BB%S@tVu7_^70=U4l9EaL2s(O_KZBu zcRgvIt%e4KZFB;wdl2`9)4;QK6pvP#g`PJ|rAAfMVJa`cuOYV&LOcOgy^M6&>PK>! z;bFog9>Q=|ugeXVYB?IiL8ykiU^aF8TeNYxqnq_lVPj#%s92DKtd7ojS?wKPM{1Tk zck&cPjJmTuU_R0+j%t;!B0oOwO*0>>p%l1)cZLaCaJuQ|k*w`VuD$K32IH3e**qqq zbe{xd1dn-(v@=XADF4J9oQk17Q81oj$24AXOL_m4bQKj*Zb#u#?fss3?4-7tLL0YY zkKBSKHltcfYX797l@an%{`GJ>M>@Jes~!e>*kK`IWLd+FoA3J~d3_-)?q7(z<&YH3 z-JMs3!Jt)a$E?dD zPG7qFm{ot49u18EhUP}95H?nf6e%9~asc;?Gy^RS{h%RFgN?1rXhv8FdN1x@B=O(b zV+J2-XBEOH$2Fe_NQ-#1dE|0@9p$XUes28-a`_)VhaxPZ5qJSvo`Ke#esJns_*`Mc zWRJ$M_U|cb)Vk|?^jB#HwFlt-I*ks;tyJ61!W*}FQu7c&5 z%)jR2@u1h+awOIk9lngk@iZG6kyV@Z`3*O>J1x33FtoC8y~D0;W%chk^SJrMy&7fr z1I?MjIHKF~M6^E=cqY1DavJY1v{}jNTWw29of^ZKZp_CefzFebC|TK#?@Cur>Kzf_ zfrf@cKk4hSSDUFgAOGB0kBwc>B=|?zD`_izRKU*@Ah@pgHrTz!1vTwN2LE6QGcz%h zuy$>S<=UiPwtfP1=mWI8?+}t9w@Z!E^OIe&l*sg1m)}%flh-BA^|dmdYGhKN3ztMH zVPzSpu>|5702xIEiUpa;$#eaib(_8s=zP;MJ^6`$W2BuQMq!m4)$=VL%d90U9Fx~_ z)|z7K{rtR&7m{0&6~!I~l#%^g`@!|ncAX|d|Bc_i+HWE~y*VKvCZ~7NP*O6)(&WW| z_->l0DyN{;o;(i2{ILb$0Cp~7pws)tnseOUrVN*yHb)aVrj_~|P0Gxk$??kIU}!Qc zg>EW8Ba)|%Px^Eox!;0NK_ljM$}JD{$!iw-zY^}U@`Q~Vv$Ax9@c9ygt&IUZrxN>> zo0^VFp}e&#Q&#=;wVaC|j$CwDE2bcWOO_PWR|E{xCGN>a^8fBDUL_!Jq+mH3)aCC@;r)J1LZ;qGiGHW!0x_X^=y%_` z^Vk%5*>@IL)gZPgzE(uOHQG+@Q8cL*SSZx#C%l8@6fKlNof* z4=&M#w2ii@QgO1XRgGLc;JM{EKRS4x8s(zXr zs7oj}3k-YNC)MykOo~4acU*hwExN={ z>z~kH!FGe`>00TolKguh%4ZigEc)vtyULZs_;_q{UzonArL`3m9E?3JjqQ~fj#G1z zo-MPRF3Pc<83c>hBffn|OVR4`X3#ZN)5Qh;^#N|BQq5OCx$&=Y=b4D|9@}RnDgS)l zo%FQO!BJ?jbnS1vxGaFG-4gxpUhfs3Djp+oM!K%94ioy1?Wq#DrKeR^m2mFMmoL-# z<8;IRH)5W^Svw1;!;S%9dw-A|9Up(M-DwylTZ#i67(AZ!Z_q$!;f*hC8X6j!ot*_4 zvs*75;3|lT;a6sYP8KxrpuCR+#Q`W!!+Xy&H~=~BVMah=OWxjZli0n=5ntlO;hA{* zKgM9YQaGB*4I)v{R*1sAWgng%R`U)tgrh%8eYDs0JKnmG+1_4fWn^sb?S2nhwFpid zIM|XNSPYj3pf<1_FHR`bGv#>b=;$aYuqp+N_{r*#pS4U<#BRyYkDk5;{5qT2NIWvB z?oyf*+Z4#MxV%U{bG906khb)faA9{qaCV!t|1n+sE>y3KUs)kY7eK*95_)=)v2ct? zJdKHiV-5CGP3@iY9-%L>a3Coo13Pk?xjNRedF&-|MbJeAos+1@QF3mj&Q_4Im+?-U z-D4pZ{z<=-|FFvE;-EdJ?4mwP5nOzyrVv_a+w*R8EHAm?$?AHJ9t$h(|7gSF-z_X) zfAs8U@e&-neh$KP4>wTP+Ul<|$2^I4?9NY@c5o<4FD{Sb_ekkm^$G!*h@4Hleeqbw zmeI7~=jg;~doRIKT8HALR?Eq$-tP94f^OLYgVb!78)S#>IA6Gce{UbnVecD;;hL2#S&EtS5W*-N|HU+0~Do z(d$t(b zMSj(ioX_=XKdtvkZjFp9RP4HIjW_D7eAPexL-{bKwd$&}i8~ zfVw448d@pP3U`G-M^RNlA(1S#t-Y;H;AIp5{Dl@t&~svM4)bDzJ0ypcRY;^M-jBav ze28}Na%4~`tL8a@-K*aW$kPTTrx9~!gzz(J#b(%|RFoyrN0`-l-b>=Ny5pzLErzx6 zEY(!|cnQ+jFH%zud6;u5dAUs+>!sBB3tATVC79R;jnUoG8Zmm`NS{Q@=DVYZ_+|28 z^0etqWrafe-YB{eX*CbDIYa6RMU5EYYpIv3^@4(A^(>PQZ}r#dX;%#jw3gXRBoNf% zC3@9=s1ETSb#xq5viW$`0$+^8oPR!-g-E{21N+$7^GF+SRAHr%ipE9ybRXi~U!T-8 z;&(jXq=!ZMek(UeQ-YIl>rfuZ)~$CYLR>evM7TO&yg}FXUb4I5twk_>Eas*}Z{nt2^g}2-pcv1^r z!imREdwog>56(Eh{pl@#`y|b|IUMTp^}<Pp+tS`%AWN%sU8m{75=}&F zYi}y{%r!%H%160UaZ(i!;L_OEM=`Xqje)Iiiy{= zi#_d<8_>(`&z;ZxCdNSUd3P!mD_ZjpV%GDwLv8(gAh`dc9jn_4xd1Xn3fw`JSHF)L z*tbf!vnJx;;GC_nS)0u1wKA`U=^B-6EW-V1pxlKEhT88gMLWFm^OAga-PP{qZvrty zXlDi$4&g8zDeQHJ*n48(EEU{c@urp9gX zOoYHT3@2e;MsIR}b|)(8d{!tNRCSd72nV}CiGJ4c4jdDNGdysH2`9`*3QnT7Z-j~l zF{nT93SKoTVBNqEa!ThGB}^YWM}{w>LAbFs{^srZq~DuPl5;Kc&8fM$>T%a_5^0|G z0X))*gp?HQNtgW2rlxBa7^y5RI0>-2$6<9|oONk>YiR2m_7G95AxT0U6Wj@Q@+2TK zxOvGDpjFdQl*pK~8M{9Lfq`Rv7|EAJbSmdV0_*ig3~e?sUxoTpu?XgDGI| zDKOr=vwmH=(&vda*st{bR;n+o_g?t>H(%Oul)cwdU#ZnLAX6!A^`yc$ZPMY|ikDvs z7rXQZP;eTlr7jqbOWvCh@KS(tiqbW3X(F8B)^&gbx3-3(;U_HNh6p%#zYyq2!YYu` zZXOL+`eneu&$n;y(SrU$s(<0b5qh{=0PdawBC$zl?LdFQbTNthh8i4EI(Y2N8-JIh zrzIpML4i+hV>UNZm&OwRT!!`F(Np*2mB6xkeRa5#9zczV@!9QES=npo;uhApiG6v13r(qg+yLZ4`o>C7x&`@EIe21f$XNo}r zA}#QcewKLuPPA{{S6=`)Y+7R@`b**6u1HS-gZy6Z4?2re6QFEP8Ny-G18x?*5=j4g z{N{R1M5T@6`Q;+(`nj@au90^=_-(5k==6ZiS6Y`A!^b6 z2uV#J4>Q~d5h~Co9__q~qR+H`wwboiUEi%ZIQ}_Pm z-elZ~5mGASj#gU7kx1Z#BX2B&>@Yk1SU5Y7I81bv1KK7%O+7tagP{WjDA&?!jsns= zvjsRufFlubU#7;!^rH@4ehZ27Lqj(xZ|>b&NqGZMdEi?l%jzX5)&YeKMG%r-AUhG4 zXQfr-c-UqK+UA5fEN|>^cHAFcJY?!&%EsvtA0^(iR5%^npYq@;oJ75B5D`viTl=4v z=+YPtK-y}Xp+hSg*j5vDM2l^JKm+(1cH~cYd~kz&1JLsz0UnMfB>w2VtFeU>4>aqE z6w+fz-31FD=d%B0S32aZ0H6zkg;Q`E-n_X9_P=Rm=(-{+E%zpSNX2qBuZE0rkP;8( zlx;BQLKV@W8vvLV8xe6T?+sAl(5{jo$DVqCXM|3t+f#8Zt&1V5>qZt+D>D8sMKxSl z?mR$&1DH$uEAy+w-$JIq{Qx?0z6)R6wz_R77o<@I@n&9r(LdVYH8V39B%-phY_Ae5sG^$ zq41D330DIa6(MtS<|_U&l^?igUUq&AXCDF`>Q@I{@r$m< zi#v*(^PBFYzH`NJbdlCBM2l7|e%9HMk->-W@v+p5Nh0+4ZZ~(a8hKu@K&j-FF>x4` zC1*8b>`{a#yZ%$JIk_bcw2MluVcE7hrO`{y&USFiAV^4n=O(+ZUP10I}CByxj7%4qtp25NE{ zCJ}>t`02>v9@AkD+fA@7%8~hL1N!ZH^8p2+PYl|P|6es!zJC6N@nTbDmGHrutKY5h zbE-X5k+OfiS{XO)GDYH8!pcMZvky7C_9z~-<@qEmY~;*EvzPvmGCfn!B#F zTtoiXJ<^K>^5?rI3ws=g+4w$Lm}^JJqPAjC7WEdJ_swe`3YFrbRyu5z(q&(~N+!jG zonM!#(}wF^EC{}oL06SU&T7*)ez~xr?~-Of+`F{@?anR_4?x;Whm*ViVN3_ zTQ+aRPlj+9I`)2??8{5>>ND?!f)h`GO@aKTW+BeVq{zWyCLC*u~*h*eAW%soYeE= zt8=h1O8qh*lE#wFzYlF7@ynW4u6EH(=0N>X{+of$ zGw+`-tol6aaD;eo-u1!qOQT2Erb15pjw7hju=W-6-k}P5`SX_8Auo|k4C;LkyyKF0 zx4m&u?k#j^l5bf`5@=~AZKVTjLv!16zy=}+scM%R>%da!6qO1QhCYAxaO8Yu@t`MN zII*WvI7$c!Pu8$x6Ri|cZRla%;^&O_rwK_WMr8;l@>eBZ%X?l^ zH!>I0lP)OShfeaS6dF88A7f$!v)zeYwx++fn@LZ3=D8WFMA?5e2OHv8hxXpvvo?j4 zrS8U49Hgf$nT@+Wb^fdZU-9!FW^z-75MlJ1okBtQS;^%a+X5+^vb{+``_5U$l2_k# zoWyV}YRWHsi-%Dp?f_q_qhGqszTxTw$CI z>(icbUh-wwfOZ`vKAQs!>#3Y0R;?o{i8JT+dv)ZPs)mY1@$Zk+v9YS(gW`^^Kh`F` zJ1;h}B56k-aeJP-IA`3?^Fv4{wMYd~H&6t+m2uO9VVW;A^IqvC6Ra0qgo4s+|L||S z80_=B#`n_Bl2}6g7WHW2od5&JTZ7%a$vvfu^4fr{-MQ*KYYj|!5z>+pP4!w zcfrC}LS}bK!bhgBsBUed*mgqW z&=%(cek#G&+yy1C4Wa0tUY68LCPl~PA1Y{X>9ydIvN_n&GDa6LoCX%y<&T1Dfbb5##9@+1A-LH( z8Bck*ro745s(+Gnf4M*CWSNJ>YIPq@g;`y?V+n~|n%7BThd7q6Eyezci+7*vmo2;_ z*&5B7kxj4QoAy%?I|^O~OY8B3h388khR z!f)c>`yhXGxfwPerjM@e1G`wiqjroC!!*6#Mw`z1nF%Y2Ce zhRkl?!83P`&NGg4r7~VQULCvAJq#J`1bFHSkZDiJVdowtUHRdAq)$v^APAS=ud&X2 zVq73MS?AxsNb0^l^_%o*?ZXUz=tMeFcyiPN z%m=efjVEa5az?M6`uP#FKf}!5o^hNHl$5OUV0m8JeLIOh+6ZQ&%AQH(x#5o~s{2lB zt1mw-@qoaB4!hTy}*JE}5K>=>(ci~PY zNF|zC5%|!yMkhn*J>R|5^SmUgOiOBC<_?tk*dDi1<-fF#TWTNeOyLNN z-F7r*v<@!reA;kP2y#)kHS=0&2r0#LXS+_BySrMd!K@dV&^Orq4$s-YmUnj|`>$Ne z6Uxy^cf^@%5+EzqYEz6)SR84zEys>-K+caiwL94rdB{*GWCI6*GGXhyFK;tSy*2dh zIqY|(vn}5n%hsCtu^&!%MH(pOP{}1_>~6e%c2IvMVN~WX8ujVc2FkxXJ3y`9W&HCE zgPP$~!d(7^fo|`r7yhzeBa4Tim>18qiy@>|{F_-&>cgq=fPNDuba>z|B_uhIdm%b&uraY+HU={VmKhbDvLBseh0~({h+()oS88KOR()V^V>$EWF>I;BMQ0 z3JQmHEzrUxU8tfy90TV6ZeGB(-LZMng*O#2BWxlrm#B#aR04HWrvSIe!f~UX{PioJ zrbYftk&*P=kp6Vb%I;zNw)nhI0qd$0Yvlb@W!i^)JLc29*bus*4AG@nKNKRS|6 zeOTH3e(%49)fn+M_ZOXXJx2)Y&Pc>;Jey!r)%I%RIorM)7s^KS=X~aD_=SJvAc`-x zFpYOptfNy;6(;e`U&@!{C76GSnrroD(RKWVANh<7ou$A;(*U60TX929on2uv%@ea# zRga~G3~}*usnT+PTc_pGxl^QZ#@&4y**cXoratJaViFaL>T_KMDE#Hm{g0sDz0{e* zSi3*`4?Wz&aW1=kA${&Qalrlm`$V$kA8GF&mxS^*cc>5XxA~oKP+Ld86GjzR{d%>E zmsV>fsUKxc+su(bbm(U<<@tsCUn2b;eul&+ISASuU58#11BT?TX_t4Ke!cY{Gq*mq zSy+$boX)j{s09Kp+`L@=>aEeTupILgryI?G9>47+=C$)SI&ES@ZT)@kinBcLf)@Ul zh*726gmRFh`<+RqYP2Z!Mwut@3$8!LQ*APH!lZ{#oCPS5rL!3NIB7L4az|G}$OHJ? z^Knv>hvV{CR798bK$^xS%&rcQKEJob;eZjTR+HE1DJnb&5!vUdGH2(~_clT*pmk6) zUfx$y3@wsk=WPkVj~}bZqHBol&Lk1-JG`y!;TsmP75)-D3tiLecVv=nMSo_-3kWNw z8<%kx1DTroqRT|-{#FMisF8HRn;G>mc>Bp}7IrFR`Z)oMr@g&BkSLO4=4u{mFB-Ts z-5HJh_;AkalNrwy=ipTNz(04dDSzVO>6T=XYT?-S;rx#$R)bCRV+tTtYs33OCCHIg zO=GyY*23I8R1okk7aWGarR@8X>C^*sj8Se9{1hQPQtSoU#7`tb)Ksive=* zAbJHBJtHGJ&Gm)dS=@tA!cRwEb4~+zSgWf$h=Z4Ll6ZJ zF!2;%>;po-8l!c!!%_b;cCr?g4^DX*et>fV1rFp}t>gIZgk{q)$`pM#YZ61iGY!0k zbq+<1w~}PQb?`-(PSjFg)A{jgDTJ8_KA9P?`N4O3VNS5*s^v-2|Oe)gGWMbrrC3 zlo<%~LyQm7X&xx4t3nMfKfh?+uOm9_-8Urag`d{NncujDbN9yL7yXKYCb z5XO0Bo;?1RC~@ii9l!`sltUjWq8~bOmA+U1_*rF2bROEieveImGV;m6M)`VMY&?73?(I>!A z>M)AQtj=+;Zv7wuEHOYdaH_xgEW}^b%jf|peJR}3b)cHE8Xq`+2uOii?eZP~dTO8; z4}?TM0xo0gtU>FDdg1wqGih1e9^-8CTs3j#4sJllZNJ;z5dwz) zpS!zH1;BuC@L|gUJw2dUfCr)FR@os{{RR^lh3b$Zdd7M(e!rw;as)b2JKjAvSDN;G zxC!E0yThG;SF}~7Da%s72Y0C6|7u=g^{gVD*g4L!+b3shtU9NK8{|l9YsZ97KrKy4 zMilDFwf{ZIvB{%V*F%6QHn=N zS)0!S91mRv7@Q|9nc|)a7k2_tY{1v=dvtN^YSQEPZS&OyT5`l#lr}8i_kTGi%rD-_ z1sq*|c>ezQ{mECb?>5O9_7>Md^d+GIiidG--Aeji4b&e%NQ#88Piq*RDUL{{SNIjQ zmpXe$E$E2CAz*XPCK7Q#&jv6dh|x%*hW1146Q8iKWZsypNZu2`7y`x9Xy@Nw)c2yW z)m?=URP8M@vq2DSbwCVBd$VyT#FgS4903Cd(I_k}ka%sha6R|&|2p3*4MB?iQb<&~ z!DS$aC?ZYHfKqEV!pY^4Nhq=Mis5Yps?pHU(50AA&Ivlby`H9lK?@uLfV|~Rd=`e1 zx=|OJ`6wYMyerh+!R6{1>Fe*5Q2tgKCIx)Wz^VaKV-%nb2Q*_&FPwAAp%0G(2tzbA zBkL1S_5=4J+$UoxMP^z>jU5n~0fx(3c41-Ruc#P|p<#0P?iQ(v|2;vs>OzvNH$K-Z zun%LiD>XzuZuntJVHq%C-Q@1Cl#-fUoIlLrsjlStxyWxs>USj$ALJf2p4Uk!EpxY) z*@|Uy+6viiNg~y$M6-)i1NMG&&21T84up?}2}b>;dEvcvHNu-Qbk9-MF^2o#vCdzD zQC{6s!0BLXw4!d!K5XsHb{}!vqZbF3xp*dyCkk6{ixH{*y4vtJnH0}n3ve_qQ>tO{ z4xC7hlSB9Hr!cHafi^f$Qc$$Cyu2Lr1R%=*0+4#z+8{z=UqYlWH5Ig~8hI^|6fN5l zl17f)4`&&8T2`kA1C)s<$2Zdrm7TK_*F)s~r}CHX+bt~^aAeYh?GkV#LAAKYF)=jK zN|%b@`gYS*h*yc7(rZ_FGMu0Yga#Ye0OC%{(@FkK$C!@wWLuOK>!;$}dwhX9AAFR# z2FitJ?tEcKonJQWVUWrpojUBc&j3G;!YJh9_UG`n3N=lpx-Z$3C~dQ?RR2!Z-9 zw+H|8$Lx0evW%zLHdeaHIrsJZF}zQ~v)(JHH1Y+$Q zB5|&c6=!G|IkypkAR^$E)c{~7gq*j5V3*!N+Nj@^`fQt2Rs{chjX@*d6^Jp9pM&gT zpoO5C`G-GPB@wTLyMN3`Lg0)zC*r-L!7CO7@d*8$U}X!Ws{<{4hj=BFu^G;f)Kq;b zO;?S%wr({sHHGph1S=xnup2*c+CWU=KZa7P%Z5!+$AW$cP(BEsLltl+m{H%*z$bo_ z|HXhJ@Nc71vizZt+cG_twWnKaxR1kNFLV05w1{%1^qHqG3@3N!n!7Vh$cdE}uoMAo z@S9C2Q}N{7vL$Ls^UPPz1kIp9Q_>VL=H?cpg5kC){Y?PkF&D*mbRACZSks5TdGqeZ zA1nWJ6(jl;>i{{yUA!G?fdY$AT?KSFSwEYUV;5;YJJAcI8&#h_?|@>YK=Lt(!5?Bh3j)lgcY z&Z4ZmJa>dhu1_@r&KND10Ne+l|0XFUocCmce{e2u?*Q82#nb=VH69}ei~5rp1(yL* zQ)~k?McW7%K!w0@1NcH=;i*jM#|4)LcG28tFy9yqR608oJG|2wOn56n`^bc}G#g+? zF?WQb!4S9ybfymyY2C(c;bwjvYYWmHIORxwplvQGja>i;JAT35{yT7KQw&8`%)(AW zggt{3gh1Rba@@3b2Yx4=Df;@{ndg&G*-L>A@G*xXW#+R04WRk}MdgM}mvU|GBm{yZ z@$Bi7T4T!il_~_F&8nk9A+5t(a@3>!f%CHV7BCCumtiwnH;lC9HJe%J4IVnE_qIf$ zoe9s`agnME92e@y<_*H)e6cGLuQtDvTZ6DOhMn@tEPML*huMmLR?~u=`_%Wg#;G-UhM5xz|tOfvTGF|VA=F0#M8$g?oq608&s3UZOWvY)4 z^*7V2jgxdqeSZRw`wM?)IYfLd;9Kff zW06pFw*Ku9rIV1JY0N( zw!VJi8aDPOfXy79SR?W~vtMht2IQQVgjC98N0#M7GP!{^sK#eBBPd0mO$HzkP$sO6 zpfmn?xsN`5hl)V}UCv()`J=CKI}TrIj1H)T)W)qj{wz-zml8v6y{mL9DpD!-vZOtk zJjKpsmEYyDMo$l%s%KWiq+DXaVx#pUA=PCd*dhgxhxrRsGEea!AZEt!ZqO7P;*Kgb zz?SJcn17%p)Wcvkg8%sGmurl0@q~ygMMet~XB+6T>)zffqp<-&sKKFqwzMFe9H%DG zxCH?a<^y#*&;afng_8`J5-7t0)bqg4sW-i+X>&P!=T@&92jnAdaP(tEe2Fn!yz)tt z9cfo%A8_DBcC|*YvSJ%x1GPXSS-noe8T#|=$P_D1{v#jIvvt0d;hO^pLc4u)S*KGo z5OUS0Y{YMXS{L4;1-a^$m&d!3NqzDhmXMEWil5H$o}UP?Ue7~KB3exJ#9+y7np^`$ zi&Qt3H6k*&spqKIPCX@$FMo86T#b%aT)#MZ9D&$3IN6bIY)zY@1$9NL3wdJ5KTa@-6R zf-V*KqX*ch?y>}Eqm#9e9NaV3*hz2v{PXtcVd{#P;x^yY%S;C82%rW@qC+^P z!%e?-f`}cBPv+zjMeC4&!k5;McYTxZ8s_>fPQ47EV62%?*RNC*@3?S})p~#e6=S(PDEgLjLNRBGHB2;En5g z%wz7>nM@ft>@?EiiE}IubE;bC9Tqcl*DDFMX0<(IxXQs<(oO~B7jQI-3H?0{O*BlPi2bI;uc}TM)tXb^YpE_WC)Kh5bfG`jVKByl`+-uQlr>Q`f zVxGl#ymEI&cv!bXqg^;P>bfzvS zg!?Hzy|{Hmq)5_s-A=Sm$OH#-z8ISH3dA!Fm?eRL^4pX;H&S1Og1+qHEMc<0AZ0X6 znlL!JVD*7u`x;<7#-F|^6-?9-5*>~mAHETsHXwn`TbOEUkMBLOI6XKLP%;0(QZ2z4 zo$0VZ^|d;RX_@lPpKYvKly=q`oaS2y5FTwPD{2r~sCO7OnpGr!hE6SCU?aP4`^E0@gx4A;tuaqh9S)^4ghwgnF2LYi><) zGmwACM*5Ey;GgTsy5?dfYU|^I#m5EmhMKl4MW2>NH#1(42V%{`${7M) z_{BMt=eD#Yr)gbMo9H~H>dV6PySG*wlEd?;^Oj}}H1D_L0Z}ft7n}O6)#lpKW_h+> z7wk_pMWa;6egS>!&yZ#FD3`vPhN>IW3qSdtC#$b78hIq$dl9d$(a zGW@ge(^tPJ;`&BuZT-p1i7Z6V@IAQs$!eMH-8)u1X4_5BZQI{DOmJ zv;9m+yYs+jVZN8hR7$(`0=Ymnhu4;zYyo1hku->(L{29jHS^{TKZryw>cl0hN2^9c z;_R)d7{n(=dkU^hPP{k>(0(%1Ja{e&KTTIo68$-JGFiS+Q~eDADJKwmg*C=`NiT4Z@2&->QoV#?U~!?H7N*h zoXFgI2nRGSN?@Aw^-m|p2TeUh-C%F`3kVn$SG62Y?mP}?deY&Vov#H+UBWGix5C!6 z#-2r#b}*nnht=q_*_;Zzsp~?Xs5%Y-zTP{g2O|4^NUQ#2oog8EwxFrJu3XIDz zE~!>p@qXver;?5zOA!3r@Fg!{K27su|4FQ>UHHBgd) zeoqjR{hHkDLXy4>q3T+R8kgWz&(<@ptb62--FzYjS#QitH!BEa1?s%uE6Qb4rSX}b zBp2+(Q}z+Hw)7e$V`xgnHh*{*9L_bNQ7g>PJI-!%IVvg&)Q)`TgO4dBJNE@~O@EDx z5ZqJOlt?92KuZAQ8PJTv7Ew5Rl_2M-Se2Xo2Q(#s3Jj~xJLu=hF>%V3w33!Osia_( zuerr9PA}_*U$^-4{fpwcCUf6u<`vbiKTcKT=FW#$1;2yZu}`0tLs3Kf_WVdlVtB2t zpuU=f|DKmc;k)r=vbA5yBVv7hu%Sg^#Reu60z336jTnR_;SD{MZyZh)L;;2?RPTE+ zI(+W4+H4!2!mOUJn%4QiF_z4m)2-796b{*Ur<3XLb#0hgW36o}hvn5W{kVK2&JjY! zjPxY7ch{Lpo?wnWPuSF6{HS+?bCN@wgzxjO$O&Y^NS;F$8JS=QHQ|sPJ$-!}wp}=|KSsK}`^^;tjl*zgUyIA93Sme^y64}Hv&%P3)z&qQ}Emyt`J2D%G~ zVPr7%X+SR=`=O*PnL|GuMN69fa=}OUCV?vQ^T7{4Cgtd&kF*`@Pao5g6~lPkZOPTN zR6&K=GkRTg_%mXlAE2x){M``+VJ3N9>yS}?OWxAMn_w8=G+KH(5GckNk0S2M{V)GF bwurbbe`Gi