From e2bf532f96cd332124c93a53b0fdc26b76ff7c06 Mon Sep 17 00:00:00 2001 From: vados-dev Date: Thu, 30 Apr 2026 16:40:03 +0300 Subject: [PATCH] Backup for MikroNUC created successfully at Apr 30 16:40:03. --- .../20260430/20260430164001-Binary.backup | Bin 0 -> 328299 bytes MikroNUC/20260430/20260430164001-Config.rsc | 3284 +++++++++++++++++ .../20260430/20260430164001-Diff-Config.rsc | 36 + 3 files changed, 3320 insertions(+) create mode 100644 MikroNUC/20260430/20260430164001-Binary.backup create mode 100644 MikroNUC/20260430/20260430164001-Config.rsc create mode 100644 MikroNUC/history/20260430/20260430164001-Diff-Config.rsc diff --git a/MikroNUC/20260430/20260430164001-Binary.backup b/MikroNUC/20260430/20260430164001-Binary.backup new file mode 100644 index 0000000000000000000000000000000000000000..4a3ff5cf2b0df841c9ab49ef67ac4646df6d173e GIT binary patch literal 328299 zcmV(fK>EM$sF8DP0tEmR!&L^--ywK(sK6X63#l6b00000000080001J$p;8t$z5}m zul}A?Y$>k7IHe7->bRH+#i5+U@4qU(gXIOGd*BN$G$P@A{TsAartEoc8+b?^|ECch zg~MW5^B-*PLX0N7`{}#RtP_$#NfG!IU!a2SU4!0KUO{%=wy$yd;umFMony%HHfAn) z#YRf>3^=ncWNhgy-L**>;s1EJE#wK{z?hJQL@!%(Tt9Ms-W&FDvhGZ=3#bX^IaBig z>tJf`DrVa{A+DW*%q0U^vpS;-DB)b~hCibdg<;jPp=t0bLvI*;pirf7=SU=gEX@AX zUae4HNO3)b)*vqSXnKWXd-N&Pyr=}$Vm;r2kf2%PsMHIeuW)3!)zE#(B-699O^49) z*>dng<0WM_0r=ji+=w^qVnFQh>ZY@L8tG>(>coFtlNt_70E+<_XXn@p z@_`EMqsh2u!dIcb$jij*o-WUIF3JE=`jp<0O*DDrj&erAY(BJp#hau)H#r*scDP_T z(va0c6hp?Tc-ejlyC_)H>e4lVMp~;D!_>;GXV%FqtLqys4=WtKilEQHa1q%=QZBX4 zH;h2Wo?Y775RhAF<{y9)>ykTg>amlT7OMiA=*!Z17+aM7z6zdMNmczSn3G&~EQ|8S zTX+&%tQP4h%3sIeuDn?zDL@lXL)2hFg1)FoqPwPTgu*=m_Ocv_@iy8r<={R`kbW-- z5=p^mVSdJWXzOmJ)o&B1hna^3sG3w9Tj2n49Gi<}A6cfPSE;=k7Q%_g^b)6Yl&5fN z^73gN%T@2Msjs}0EK3JWSpf3=&5?I0;~Ph1(R2QpI_dTOiDw0I99+z2V9+jfTz4YYZlQ2sr&{8~>+ zfWd^bvTR|DBlKoWrM>`Vt|e2ls)Iky=MI*Vmo9}hZhZB+!%gznWM-GX(ZP&ZShG$e z%{!ahxEzb$wCc*!sHi(F0GPA3$$wkf6U_*FfFnV`o5d z?itft4LhW1#&iv%IquuO`PKgpurut<;PZgJFDPt*hUv7{h#e@4s4ByY{iK?5edZ|j zCvRpJ^0dHh(22J5r{QeH zVovfanImIbVCtBAPC8)%j&D<4mqP0BdxhpU)|Ehp?m^jKf>?zND)Sbq(Ia(n%U5(* z4M`+^+r%*w(+>^2wUXT}c)O?utd0+j=sL>d8Wrld?MMr}H-&i{)bqe5b|M1^+1}@c zLSi0!iT?0BQA~3Dgvt$4lBm`~6`gxeWUw2U;tfJkEsiRerMQ!~NIbaH1MF#goUWzC zQNB=NTP_mK&_kBtW~AhfTD7OPVJ_Xk5!_@l8*a^ay1x2RqTl1gDyyvz0x~dfCCq8`#&nrPp`2$bty| zL_u+(lK@o$K8aeM9WJcpBBqOjq3?)_`jsOodYtaoc0deEIA-`M>Yt_tvKc}|Y?O9Ct4BdI*dc%H--e$jxylH)#at+j3f$0e2 z)66Pqcj5vJP$7}z@*os={$;~^E3G~e4#UCamdRk}D_C_u?~V_9D7^A?D7DdM(>uAn zfu_MR{FFurZCjNX)m4U>qm8zFKu-d1q0JUWo^TG3LVL1d?ORkkrO_IpyK!fsV`UQl zBL!G5A>A21`Q^yea>@;z2njU6jPaONMQ=^C3%T~|GWb}jXhe>c_2xcnK=Wx5k4!L> zhAg-T_BolHSgmG-wkbz796`x;4Xz|Phfc2AJ&o!;Hu^0!!8IgC=JXJyT+Ugh zqW4k&kG2Qm>)^afMlRZJ)WuZ)S^ujS+z5h&^(_X~@_)0N}183S0{$5Kac}z)|=-uXTYjw`~s85+^=43Mn$aZ&U6OdZk7LVHo(9+9k-MoHNk}Qj{Y8mgkP+_y4$vD$C$T&N` zl2!;OTu*<+=zgsTd$sHFNKWE^66(Cr&M6qJ)Tpy?5MRFf)$^~i-{E^V1cGgQJzP4X zE^m;G>bJJ{<2qJdU;zi1sQ9l(*}yR{X>YR#qgzexbh|V65f#>_lno`&%%(5 zBI}YA%y)x7-Lqr*iv3--td|x5vXtQFy0ao&nA5C?<6~;>e8nr7k7anuI>Js?3|rdz zD7$l&5JE(&N8xQLUbI*uN{`PA016SqZmE#Dw`lKZlpWWLC*n+>ZH{|y4bmm4i)epq z|3q`ja82tVE+(2?Wg&_C285~9XcBZw+{+wpOq=l4YHTYX5p>TQ&hYvMUGu0;7@WTI zW6On&y={Pu5k{`xuXcoeQyVfmL-yQ{Bc)1QCB_8o%NWG6Jz0rboH#m%(r}Wh?qO-w z#o#e?PHIbRPB*Zy+)*9dal;9w)0tLdi3>6-p&ubnAvDn%ry2IoaV(P2bcCzppuCS# z$5HOAPR49_Tb+t zoJ!&R?JCWcZmcKe*x9+z6JetuDPzu_3yX+*3MR4#X8?ern@T5sa4*+1RJmb|^r&G| z+1&?5y;X&bW6|{ulTS*BceR_=_!j|N?VMr~+!FMa&?ymjAdEoYhb#t_&ZjQrEunx{ z_6x8mrg6|4ClrXtulBL%@ePQV=@?T!2Y)sn`bLEHMF-;Lk3jB3^;PU3eWzD#3zBoI5_K8bp?0KU5@sJ)YAsG_sd=LvsLs65BDrmOJh$N{enhC3=64Ea|e4 zw^r#8Ycfui@b;_M-b3W0GA|%hLd<*(LQbAe>?U};PesRgirMm9i}2fEv>zA zUHxLT`7@mtM{V=Hnh*;$%Y>X3oo`R$YM}EL&vh0oLzBkjUlsT|qBU90CUq`O`kD~$ z%IBvwI$s*TFS)RjcsxX43QYYC-jiHZ?PK(Y-N|K~W$Mq!nO+1vUi}6bCfgiYy!bZXfSSX~)NKfF@j)s< zuhG!H3oGy2yE@N{vViUu=Z5t!i9qs5c^(5Nyw2_nk3WX^l(E*iOMNV!fnD`Ub1$aW z?FmkNEVDcK#wa6AG#7oqOx_lTX8z$Un&$w~n98sE?MX7p_JCwKc#_fiLQ&FE{6PLp z`NjHctZqiWl1jliDlGQvyJICVROM*#w3+Eo=VECcV_!wvuBi^UEH2h%hDsv;^Q0FK zk5e}X_3B%9y`YK%uXFfGoQzYlK~k(g?NlNg!_NL0_8@`LP+{yYeRTnT2|3L5nXx6o zIwBwW&5*E2=1uT(VVyl00>t+W7(MqFayM{Tuw@q-L`Q5rs)x2Y8RH$wXqN8S6@l$dskcRn3auSMqf5c- zCxYVAEZ{I)cWCJf(Q%)^%W`%*%Bk<8N8%mZH691K&{s9VLa`Q3W8sWNh-ca1-s8LU zUk@vJ_2eeXHg#!)W!-lds95D~lxP6hXqn3gzyL@ZlQCZ8Ub{z$yFq1s?fV;Bmn5ImN#fJ1MB|l+z0)YyMA73hOKK|;?2^>{X@FUhyJ=)Va3TSB+IO#9)?8!p zx|7H95&%p+JD zybm}s;9(KK!W|r~SL!y|oj>=>EToGm>U>Z`7fFJ0A4J$@c@8XD{O%XvCSo@S;NN)K z2<&1SnR)mcKE|R6t4~vh_la^5XiV!9ON|xq_Al=j2R>?l);QAD&~1@q;MAleRAz5s z5NqCk@daIRhW5cpOVKODy3p$?Lu3#GqX%q%4Dj}&)9Ha>mV1pX4`&u%Eh=RaC#KXw z2elMvFGwYEY&%GHok^7HyZ}My_Ty%EdX9R+3Nhp`x)<>=|UN5NvmK7yIh}-EGLx%I?QMJ_8L?geMquhmvwVLY9I)I!PX8O@mZX^Pv!vN>>WUYbTiJA4b;1~ z401{xu!bqfJW5F)P#046XOJa06${CDpclI)`V%_KVB z0qLwfH5i>=f#T9O++)oS(RwOy-9CQcFORL7WQq?I)hm#vZB|BXP2|TYU>@yBYK$`4 zK$cpo+QF|CkyQmk*FSN#)uh%TyDU{bQRQc!)xOhLz{D3YyGy=n8?oN~Sgl_!MAmW=9fQL|Pz^HGK5ZKmgPX0RBEBQVz9xnBX66D;82X;@LbIRvLXj1OA$gJ?oVj>_Ypia}Zht*g_1Me0K34uSPaS0JCrc?5xWc@ z{f&=7_{&yk!a|M}VtBR3q?NzrLQrr|9K1|`CIPd~`KD}2njmI;zO`C7XySW8M%kX4 zbqioG-1={U7pd5Ik`l^eSJhJ=}(?{+mvY)sfW+ zCrxdr&p(o@2)u7N^^oCO;klF5F0Yi|)`-(=BMPG$^7Bn7?Vj#lz~=6OrOk@15IsTS zspY>Pr%o`(t(7h46lhUeu~Ez(o;`kKtrT+$pgseRw5`hSEZScCsZ8vD>dPL7Rdno` zlIv6OmxP+{dz8gGBoy*apj$Mqwg83N3t4=QDMyoNU0Ggwd3~c{tU_-8l(0b&@?SH& zrZJkf{U;c>ZU4>b=OVW4DrncotYWox$5L;EzqCt1r+0wB5Z;bL$RIJ#n!-Cy_1{%& zJ?Sm7*<2NQ?Xg`0EaLmf*QHWG(rGt1Mn)!L+<--$A|}n6w^B+K+9wu#T^L-_4Kn-Y zTcv2tL*RO+Y$h)dM-X~=eKKv>?NH2bD_-5~o0>=4>0!VatUEbbq+YXjd5wQ8Fbz_t zAe(liBD9XonwUTGn3~^T!U!SvP7(G-!@BuMd7Wg1#af^c#&0l$)58iN*zl@5&`~^v zG`lU`*kn3AZEb{@RfopGESqomkq$z*^&CKNx~p%D4xSoR@_vj^=CM}LRjrtGGU$I5 zeEBLqf(G*Rqq^qPoFj8ijUg-z05CrSIsQD`Y z0iptTM#GC<BnUA5yQL1 ziqOttQ8frOgkJK6-_P~G^s4}_gUJ5vG5q*OF$wm?kzF?gpS zLjyUOS9ZV4QWo6h+2^QN#+;s@84z;+)x)x;E;$51+kKaaEp2v2(AF@9q&nUfIW89y zTb-Qq2mDK-Rp|7w(vlY==Deas5l`h$@hk~m3R7Vj6zM%zqpg`>+34)nUYv0;%uBX8 zEa0U_!`FFkT->rC!>VVQy#mx5q$RITTY>2!Hc%$#XnP40_CDZOH&-Q?9uM&RMY%>U zH!l^V2vyq9%zQH_?VpW_zpdo zRCMkZj)YI=wxUl?e6lGZmGe1l|A5t;gE%N}RzYX00Y$C3T-Rs-B($>~(&eH-mV`?2 z=*YMzbdhW%!7rEjD(?afXcKb|Mh`+*wc>$xIxGKLKD0rpKqCiWtg&hrgoytRGA1&{ zP^~Pnb^7ec2SIM-zPrE6s^p$an4(G8>|9gornL;@DGHCg3gTk4i$($J^$K}i=opf; zCuODcQ|=mm^wxsKmKbKFhKI9SfiV5Z!-8ZEFg%chSr-}d?agcrbF?2 zsgqw3Q03Kir)%9oO3*G z+s3C)8Uv4eM|I3EpsY2qt-un1M(qqeyH<|f5nI#5%xV^3>TgNg+JE1-KFUMj&tt!i z+?^RY5Mp_~n~1rC_11hP{Kr`Nx4LMqN1M7crZO;p6V5*G(OUM0D*%1g%_AC*C$1_L zi}`uXUOOZjtsV!2st|vLjITCV1nwo;{BAI?@nASrZ4oTYu|7ddJO3FO8Rf?kuD`J; z(mFl=RIOSmaM7x3WN}FM5*p%cE-RfFhQ-lFWwJ`@CgEXsm?TGQE`G%ELN6I2gQ6e@ zHKF^*rg@<#?&H>a%%%pSHn&2BS~n`*?nrfr4$_M{PuJ^$5rHz-8%^DQCx_|V*JM1p zhn*8`JpLUMm1C}XA2hz~hoVs;HjaN@TjBCY&mLB54p|64HaxtjmaMtJAC(>Y4F;EA z7c?^0kid2rHJF6BDz)yCn7q~Dk-E0qih&f<;e$&0H+P)Uk8FWOqu?2ea1|XwHDE;R zJtr35xaE}mi08gh=VHb-6DC}YbMGg>ug$IIm1YW}WyY-1PrK7=MlQC7cJTfedP7LR zH3${n>~!eaptUOk=}cwdd!PC55CB_Tc>WSkrA*X4sMd72LiU@5uK>M z0{tbn_X>L1h8+ZK3F>HWyhLdVZNi-O>N;T|#&*vNgwbh~VLzQAhcDs=dOy;z$(*)x z62s4P6XU3iF5Hsl=BH#x^0Rd+JJFH$TN@&Y7`{p{$9z+UT8{-O`@7$*qVaF?-Aq*1dNI_VeD9#rM_5 z;zvqqG)V1@2m_*{y`VOVslX7?LCzwP$69_ct0xa@Evt1SnLW(eVQeA%IKFA)mnJSFL_dih`fvvfo`lcYBwrG=GpRsfhPqH8mstw)eHtWuE8vq@s zd|?mCD*%KXBCi1hC^*&5COmA2N>g7+aJb4;1pTn>67pv2)?oh3M@llp4|)gaR8Ehsl9Gwi{w8^6 z*z9b&^|{SI`H!1TZoTL?mG%$0`J?@%^tM4P?4lfBHzy$baA(~_S z_aIKd0}s;XEq%(UdGe7D233sGF)uv3R=kT9f3M^+C3$(JOJIAE2-Zvf0#II_$o__6hWAE zSc)5GaJM-b;8dn%+TdUr0{J41UdP?l9+x1$p_}5@aPVTa7lqYG(1<|J6U}0X9XeSK_mK{+MR%X&1-C<*uzeol;DFCHx zSnSXRon4Hh_w~uf^&;)QoXKO$1p)guJvovz>Gu*wql7A&Gs`Tg`h%mXS2;!co1{ZV zF5-@lHQPrIvLRPy?@(AC+~fQ&+dWMT;&g7V)LIO`C)_R;Kp2!1rTB^R@9{u~vaEa3r7>9dfL zw#u2ZsL*?nV#-B-Ss^Zvh6c-R!pGs9fz%ZM?GlwK1=BNy4B z`!b_mQ<0q=h<&lzI3MrH!v{7sZh1W1onark{Wc)(L4iz-BWDyRMFcVfHJ=!7In8!& z?)yS`=6sYBpS8!UGk1&(DRFhNL1>VVgmAB8-Y8M7*=RfkuuUfnrwrv;( z+PXOQb6wHMFBL8R>lX+iHAE1HUxY~J0CE!{-qLiv58xDxbi7?a?dyqUUt|}s+{oCn z5wy!Pf6M7p?3vaopuRUU-hI8Kaf?Bl!5&}DG;R*#E6+FO;9S=EfMK4S@3;_){$TY~ zS*{L^^^fH2gR#G{XUrr#y8j&Qx6Z5~OubthEK6vCKHguOGjSy9Y@+s8JB;&2NlN6O zjucASAwQ3+kQvQDh`5x1(KW&nB-mGr5Pd+zp*I$y10_1eZWCMJMWj61jVLYAV+0)n zTO-QoL*i_M@)R*%wLdSF#ZqslV*;$xd}~mMVWyogf&S7wU!?e1E?RbnnE=gE$NdY< zGQrxVB~%1C>%T^&*cYu_4 z)b|vX{ekG_^XG#ZZt2d*rFmnjnj7@6N9sRf!1AX#4hVeqIO^@XwW?N6u;C@n$#Mon zCW$bsl;lh*L)37K<_8O|8L;mTdYv{F;dXs_1kukidpljoE_%~(@+(hUlr6W|+IPl8 zfafVP5b|#UQ>x7Phpycp|JXRYZPZP4)cjt+9M-`Tf#7J5b9h5-@9LY9by?=yww%{4f1?&ihmd!@MvI*xS!8;=t5T3i_ZBL`!q2|NnQyE#kkkrh_(PQzoV+0w(*%gf6W|T8(Ot8W0VR~NC zFA4v-lWtE^rK%#d68y3Eil=@+u6lnxyR0DVF^~2Pc-nC4%WIBcI)=mu|hmqnCY?krEuu+5#{nLm}DiW2mjzOPie_ayzS-I0h9t3%plVZQIXVqdI`|qAaC<0pU0S7JJr8D^ zXqTB8^g~jYjc~C7c4r_oM~vZn7}fvwp;@Snla32lfTilTS^*VPfJj4ANdFm!O{S<; z4cEH8iF2CbGg2IgJdgWjYeS!xZq9pCom19C>;3t!1C(Zq1*=~i1uGvU76p>uP3Oix z0{}{GSF`GL0~$|&hv4ogGoV1uYa0;jjk=-Z???J8s3Gkeff6{PQfa!UQlN`9-#%#d zyWGRTA45IC?t!Oh*@>=`$<4mCkiOeJO~R@>+MH)@^^xyN1sDZ657X8;djaO5f1+z7 z(Ss9D+2q5$I=6JVJ=k0+L&ou#(s9)WFy}9~x!Mx{R;`2v8sQH!Ydi&+Zrd%}RPW;W z*`WYx6sBK1LwDdkAi^=j9l&beVEn|UmBDT~{&FvVm~6-ax@(q=9@?h&`*tU#P5A7l zc7YzQKRJX=K#Pi6r3T4nKQ7gAAGuiu$o(DAWY+RlkZMt?()gSv=)JR> z)Q)D8s{2dPv$J~=#zV2DU{{!*#92O0Klfr#&SaCm$~IF(QDI4L6l*4q*Bv-QdIMHrzqg z!erqs(rq2hQ)S}9iujiwj2=s(_fqY+I#%mpfY%MKD8|L+bcn993V0sm!!0NCLaqb?L9&b$ zcisSMkue4cEjr;ag7IZivr+DNhBQhY50Y`queGuo?AU<5mK{k+Ot9VmgcB~Tq*CbZFD*P52?Ne8Yc zk+CbeNm;Ap%x`6B8wUsk+*wWm12TO|RtcFFJ*xY{4p^9mXE+;@JG|IKlD%&p6<*hf z5%c_myDTG@r7|}keiVQuiYibUkMJ}%YHB0)Q(H2>->9>eGx!QzkTYk97hRx} z!?bS6;PF%kz*CoMgHObK6&;3&IMchpo0B5wm7X)^GGQPmanhZ3 zkB3bDPg0oXhiO~5SdPKy%BUMfw_bv|NJB%*W$HeN`vX6~>BpxI>t71(-)JId1Wc=3 z@DbV6$%SjzcJz}Mpe+UA!6%-o+3^)Zp$^%Y;KFV}&k_u>wYTzelX2V4)Wu zFrsVQ3Lz8VA^Ird8eCm~5CO5_gHl?ZXzieZpFh4yM4zX8gi?7~ko+-x@>@8mW!JF3 zGhri~g0nVcun@b|X0*7u@F;u#Eip z&7V%E3d7eWgty0?9UI}^#)Zo;W7)%7a}SENe|CjUHRgJxq%dM-f*;WQ8z%jI*=N5j zCwJhJSbbhc?`7S(jQPLQ|H(mE=ivdx6>4TcZ3s+PiK4J=V$IjEujRy9M1)`Z`n-?n zX%tQZ1~sH;aNV-IswuUts2uJfVkhwx1#gN~gOAI1x*(3lS{}3yNJ_d)wCn83lNOQe z8@KIPIzK=oubAQIIrx8vg((V3vox&O9UfJ1+Uz>@(c~f(7tRvBV5HHMrMe z-5?3q9oXRAE$B$$ME8AOEqh$}D(m{>=?Rag${R9t;s`|u#5%4m1XWSCCC=Dc8O8HkfsqK?R|81sb(|XBINPKV^=mW^k*)-k zz9ChYr@|wKX8?h|oH!sdE8kx&4`oJHtl|C6&q^gltIA;6+JuH&jHSdrdv-Vzp>8+c z9eo~8R(ITXLUWP3kJTvj4junvOldQqpELIf1j)^vQn1T2`o+MVd8 zq^AI2F_rWp!c|!6#24_dp7=SVxWpA5DEYK__Dh3zZ@3x&PFkIy5M~suLqV|{7~J_- zhx+C4XhdbhpC8Ythv-M&moXX%Qf+~yF_aU_vRe;Xu$8vza=j4>ln`0K^b%{# zZHeTj3q9%oPf|XQhx$fs2EdymBpRz-c0#aAxbh%$R1;2si-+luMTNgvi5d62o)6(e zs}%ZSlS3z?HV|M5lozW1j~jC(=#xVTpbeX89uaY|kS+i-OkiML#Y>+5tv6fTf)w<56?fm5bh5}_}x^WTz!FEUF(S{w&DP4wGB^qs3#DD2W)mn026TN zUK22w;v0pxcUgz7?_TYV89@9Ic}Q1>y#TzdF0oZp3zpB@6`Y`JIZ*4MgG{;TLpnX= zzs*X8wBDW55sS(IIA6`?9;CxwJGV5EqI8ONx6on&4^>vn^;*gv8-gfI!7E77Ct8bG zKG1$h?OU9Bzevu4ZohO>zpav{V$%yj4&Xak>$1W7#j@N3G>Bf-ldeUKVcQrdERCp z%ADCmO{$0)`}IRJ5Hw6&$eiT(u8>Y!!k8%q2`U-Tq{JZGVhE*TJcLPJHX7p_ZNH#A zGucwa^J*X-uYL}Sy{e9+*)dOj1c5I_U80dCY0uqwnKI4LHpn{2GI{oqPYXf?YbOA% zp~N5TzVb9F2PT~`UrH#)zt6@;m0<}B4!J(4dh8aU`*gT9f(V~{^UKA*W+w3YW@gd% z)INTEQjv#zh!H6#k^XjHVu8($KPjvM?lA=6S%-EXthDh%j38HK#`jzMv1{|!76K`j zwZ%jd|EKoxnWL6xhW)hUg}xsse!P`xn3GbJ(Mu<+MI<<>*q4=#U2ypnb<^_7%~aWC z)p)nKJm-#wvk+P#e^QbxH&h0q!#|0n-H6Y&3&LjWArve`a!m1k$Mur3n$vN=@t7YB z_w#E#QLxHgd#(0597CH~f0{2Vd{#|s$BF3je<%Dw*7i;Wx%aZOAd9E<=}rGiN>MLo z8GWI&+hAQipROM^xnYJ_#xhL{1^!)UMIg9)cW4@^l3eV>7?gZ<{Q9_*z>6cY*Q zsjuwDQT2f68>(-!5lY?WX>slD2Um5;(v5CLI4aj+y0TMeB}}#WjKvR}O8g*_r;4@z0Ic z@xKGuzqT4MC#8+=hZtOHwZisSTdXaxU-PtPNSw_Yym*}4KvCj-h+muoclqi)yjq-& zcZiuFGbZ9~1l~&Xd;^WYQ8pyT)Zl%eeePM6sJB&T;do~@5x*RZ3s0xVmcpV~0V zvL;9lZr(wn(L*^`Hf8%S{nX-F80g4`?Upf|Z+c>t$-o4o8ZW2tzRLbnU=#6a{QjtqZTW$ox(!93odLf*N=;OlzuSV#b;$40Hl@N7D&w zM3?2({&3lUN+;#U<@sP`b{mrkT}y(j9p@YF60$Cox!kQcL7hXMKT4YQ_<=!lFV+Nd zJ58-Cp;kK$NEeen2$4+j^FH=i@dP$50e#!-{&i@L+eZV+MHZF3gta9_rIeGXDf3ZT zXjl(bMzS1iFZ+8|M%T@~%kQ$hdT;b2nx1EO;|_Y_Fxm?JTRXr`{uecC`A!NqJ~| z=tLP~^w52DdBu+og8CsZW8$Gm*icvhS}66wNqG#dY-=r|{j0xAp~}}eIQIqBQwah= z-JZ6|=t5nS*up?Wj4yqi2QSxongV*F=&NAE%;Z*XGky<9>xtYF^Q<4!Hr0hMgirL5 zM?zJ&pyCdrO*d&@HaVEAV%CQVKQI=;q@VJil6@8$>o~Sp#K-i^Z zk&R}it7{`{=%%lio@&W5%BX&WqrA?7pUTj|w=*i=!9=oCI+UDui@ov*Cg#nyaO{c4 zFAOSdzsHR$&Dg55bZ+HJ>VLtt7ddBQQnQzPMhId0*Ol`FAm9A2W~l>f_*-rgo!=~$ zOPalZFTzE2e)RvGIhM~LHl0me7Zxvp61>a|HK**IP#eQ?oaFnp1@Ku8yF_d>3Oc*44wlRtoDy<8zXD> z3DKo)aNmVLgkq!VRe}4Jj$HMEk`_{e2?N%BM?IDkU3J4fld^|)%%Uk`lAn|Ol*pLT zz760TSG4!19dUw)G~Z8zI2Ib>ZjR{^y?oA$f1;{Jg<11wS1a2YnArp4^ZfAQDj^<{ zjJj!g!pd~c7IveI5zNVo5QI4zD42b!or!XooLf3NYP_MDf$ZS6TVoe{!h|5M%_#{Y zUtk_5siu7j2*rhUo&il5Q+a-Q66Hn7SlCn#`iWFX4@(UOUkRv0Strgqk5PDOA**|SQ;|R5x63!$1l@z z!feK+>$)B)y@x}RO7CpI7HmDMRk9vJ*F@@a3gFBLJ9XytMYDW4y4}^rcKp6R*fYI> zZ02JV*w&u3dEO%0Z>2GH!9#h|HAy<-Z2uBR(NMKHprZB$2OL|siH*8FQBqnjA;tA` z75Fv(-x)XO>p&h=JwU?ggMHfNXq;OL#p+7wVP5~|9mU{^`ep*PTpfR{5Uc1ycz!C= z_yzQ*WLJ_jI6vy|PVS7(l0@sW^<=kGv^bq@STeVb^!}kpWBI-opKfYW#WE~@uZ`GR zkgG1z9yh%ElVt<(+c&E$#I-cwHwhss&TBW89vuUz%tH#P`IR5+*kl$H598AB=B~AZ zY?rOIs?sOxLCWrl`xpNj+DXf--t?=h|54W;Z1GWG{BdAZL%H9JdL*~YLs=%g3*PuL z3ps*I>+h{m#CtS#g3*NR_jn7UoqJI6_de=uh3 zD7ax;?1K*d3eeB(i`0h6C*nQ;rQaD@5SFWVS_Rav8a9*kN1Q|mZD6$O?4NTJ_avet zfjiy>yQ@zN1a9jueVC|q@D~*KBFt2h^F~aFJ>%2PD=2v~hlcELKWcBXZqa`Y`*v1wH62lOe@Ot?6VlW+X zyLg7j?fl-1uHM-i&k?{;5u?t6F}sD!|HAifFE*7CkrzYe`>Gj#(0}d93)bnEeay*p zQiuaMG^VolCLU3v!x(A>H8WQ2)?~ZvT9N)2!L2F{yEQUMl|j2m>ADX5$w0AU+J>!Y zTk8&;K4$9N+N-p2;d9tP-FTi&j|Yn5d&GJYntRJ~MrKwjzMDKH6wnX@qr`H_e)5ej zE8x&_YuQ-G%17FK*;7u+@R&-Vuh>_MO9cxmN9-%EKAhCbv0e|I%BM=8vw4_s>@(T* zQXYCx&w*p#&Xpl5Yhl>K%qlFAzk4o&x|LWXwPV9p9dPVL zVO>P0>-zHJR)=Tg$^^lpE`_0*@-ynvm3J-&w{-#vum59=~~n8?|GyGd~?iVXqB0yZ#s2|f=;p9Qb3G6-0~GO?2aq-ev?xi2_B zlL=W%G>5h7Ml?&O0CRo#`=p6LC31AqiY!?j|GfEnFF5edCW*rJJ<&Wy)lPXu`{Z3#Spih1KX?bt;nTRLB&~Uv)$c~$HfNlSMUkw;oR&u)ITBcSHsv!B z-2pQ25-7RV&9jlDbEByX@g;T$*(k*=>_$t32r@8b(8^ehN{1W+N*cABkf( zF$DuV#-{aOQ?#N$Y!y&;iCdu3t#-V6gmKxF*e5D1(N9A=4WOGXw7T$liy!*-1hn)mK+eUp?+fOMP*=Ur(kT68!A1-br zTymIssrkwYlkuE+$NBzB_eSjE&K)x{-p;p62wjWPBe$Rf9I~ zBQz1)2=}sDwW4xCvw3#S#C<|`!Gt%}>KA@`vifu{4nwPndo2W;n*ZQ=|DfRIKZN!o z9vFzJmi;3=cT@{!x>pj`?|L4fX@|v?0U$c@OzP6%!}d%PEsFPgcGWy|I;Jg9m4_JV zHv0O3-^vk9th0I|u<9_NL#!hoO4U?T7163VRPjf+SE)t}sBuL=xCl@GafUsdJS0ito`%#qh3<9Rre8NF2ta^G3-C4Y2K&Mz zq*1PenPHym0?#7sscm0o%Ha5BIA3Tac(zuij`e`##jkd?be)5}x#HdB7u~%8Pq70_ zd$_fo=1LNHDtLI$%v$mWk4V#Eb23eJS+&uhd*~(>+`*N#D)l;BI(C3=Fjv@vYKlh~ zysSTj`%8lce!hwedHI;DbupFsmMmj%>YjJ*s!=m+4BZv!Dpbb*Ga0sor$P*>*BEQ* zjrj#zD30%c2@>d6$?9`yAg&zA$bsY-H$MmRNsxEDQb{9qxZ-zCP$8GAiKA(E6t96w zyXt9VBwmQyTA`q9(^w`id0029#6J4HCcDuUhBMNVC1o`-&WF-H7ov4}OWsa3UdHfI zi8@mN?V$|7yoJudV$bFO>oVIh(~!rX2LNhWax2_GeUxb{tJuGLDoRx@Q1LA5NNPgFn9UNDFEHyd(ti*K zWP|?E*2hQ__M;itzs^m<&ejRxcBnA?X0^pFn)nHze@{8)w8z7RgMPHUKU{M{Z3zo+ z+E^9Irw4Hts94YpU&8!m3e_%%JsT}>Vz9A7!Z2uc+TVn6@F_M{Im9dy03Vmx>1gK1 zNL5a^q=k-T#XZ$PUl++j3~yQ+nL(lh3^_BLkI7kxd|9-$&{3%%{&xqKBP5Bh1oW2x z{CLrO&%nK@*AF@QLX~OK1mKR(_E@f@KRMoMQmEp*L*MkwT_}Ty=|MLE!Cl-&wUt*sC?Q?1}E2%@%62P)vd)F{%4+!_mopKe_~^0-+0+>JW@C&rE-x z1rM^W2 z^gq{a>}w?85TR^OEzma4JX*^}#bV>;YMSt$nX(5Qq0=GZ3`8H$T&WJu|J^&pt32?? zsWrdA>J9b|s=%s`O-odWW(`%_1({-gv3Y&?R+p=W(rlqlp$t%kvRqWTQ{i!|xouX^ zf&1`zsZ=+ADX-pItuyr`s1uDe;hm?R_pXLuU;utQ?-@LYT5#QDT zLwN#}FOQ1AT=xY4vZu@B%|l-0xBtvUd|63`XbcuOzafm_i*|JT=MLzwtDjL_q3c z^>A~6OCv0#nF?L#uIsBRH&!NGK^}tTCEywZ8yPXD_7-K!GO7wV{QzL4Pmq~E9V9RE zi7p*yiJ(q-sQC>GEpLjSQ{@;gevptAKIqQm|>ZD{HZI%5XAFBrJIn!0uN37-%20b5Q0!eAQ`9 z9pFF&=5(g_uyQm9DwQRLaq(y=SYV;@P?)BF+{BzkGNWZ1H_K}3Q@wf;%1%R%%>=1X zwa~SA!F-7GM6IfM4XecEoh<>F=Ws!1bJ={jTjZ9<3iqo;R%r-({O%%{XN?-*YHy zR+4q(*74Jz3|w9>x!tSpq;W#Lujuk~ib1 zl`BtN-zotbtuMp53$R*LT`pzw0wEO@Qc$Of>l#P4++K+rdFJjJ<_79T`%^+0(iFX_ zL>V_3E->ci98V?d$qmeooNO%v>?aJM`qO(JgO&D}MTk}S)Zv}8t%V5vv|4>fcReBT zOU4}Ieg4RY;t+0#Qb^YA5dzp^(K67@o*EY{KmddfM@nPGr`sy$(^#3-O3STimo>qY zE8lKY=&|pcD`lN?YeRTOs+d3P(Y#=S-R%(sx8}{x`rdvI`%aR#w>b%bGl+7|KkXjx zgCPf19UqKS{aj|^u0}Ny@SBjOxk6L5$+a~#-JYDovym&QeDW0^$xF6qPhh;5;q;~q z${MQ}HvcV%kawj501ZCmVrFB4>K#k(3F7}0*6|Ass!6;kR1pJPz%R->F_dz6hLu=) zaH?~j1$rQHc{3!Z0W1#dK}iX`Ah%aU)%f|$ex(0GqKQ!q{($$eyp$WdMxMppKboul z31y-7dbc-Va_SGPsw|%UoqblspMz}e2Gt9_Q}KX<&j@h)yA(AU^RXavPRak`z}BUka~S9~{}+|; zxawoQ+mS)-l6Kv@yckley>DA%NcjT%jkvi(x(yXayD(weo;R9I;Nt#yz|GZ**9iAR(tV0)7FalI={4U?DfF^ZPeK7|?hj*MNb5U0@h?%$R`|Uhp`apb%Eso zOg-$B4|d{}p)E&0msKxUL6s8b{S&QofoN6P!!s8lR@4gdRT( zS|iPYWGYyFiS5EJn<%EYQhJ+H>Ns@w!V%0)Ag-;_|5e9>lLmoGy$@Rp)S=Nd_Igi)|My??SgsEX;yGc|t zON`3=ud(z_$bNjr3{A35{dzX3HTmKt?q}#>1>y}=wT9);+0}PK#Ri)8W@%24F43np zEp0iaAeZFo?#wHDiIF)M9?+tRLv8M^O^FF;^~d}Lai5?9fSQDpwcU&)p^=W2<5h%1 zzkkN^4pG6y$%d-060Rc|5DD2G%*Ke@ ztIpAvy|Ddq6SKR$c~6-ugD3hHqw{o9x4=I-WW-mSNS1}P{2~R^m zV=i1jPQ|ZTtV?D(>0q-m+maZSERf+Mjms{)>=n&QA?_k^HNl8ex*t_AJ!TR;XjH$q z?@q-B0n*ft(pRttt&APYCcg3?kn-bzvE1J0LbK{zK}xM=hkGvD!0yOQKUQL%g08CSFER&Lq+$dKqenR+QN{ZQ*qsrrjH7A6_nNZwg&$? zmra%5H@Np*1|_aFOPS}=_&>(m1SA0bKSey_6!Z=fb911+yFkydA}hT;8Q8?z5Gv=dIge2- zLlt6fQxJVhmH6hxz1_qOm=n<2TGAs#$>yYIYE5QO4kYJ~dW>VZnP8i-AR)U%|3QAL zU$-O*TN@9srO=Xrpm8(ZNACa=2(H1Z7m|D)!C)eSV3HGU>Zxdg*e-Hxe$-x=J_zxt zF2w4e1EP3H!U}%%C%1Y8?0&yHR@v+R#oi%+oSrMS#@UGjPFHRhy7DnTXccKGL8>1S z9|GJL%J&IjU#0XvH@$QkO|{ocLJV<|2cLS?U*0TyyVK65mR!SQU$;^p+eCjB(wQA8@aS3W`2XXAOdveQuRxslfq z-BNyV;x;UlezdN3$KxI{LZt$PQCN=sm8IIs)zn|S23W@X<1s*YPC5{SYMmBq#K5Op z!^LoEvN)}kcto|TX+XV4G7|7z#!@9f5>_+*Kwd5mhGWhRUe88R81Q4A!t|Dt$qBS* z?5zg46Z;+0mfU}!qID{|fKFTd1T`vXOmu*ULuX&$UTa+ga_!y;N537~<+T7C(u+9* z8@4i^ItIiOUPvNiZ?BQCX+NM@vGRg-nV59o2RN##dJi~cRl1jQi?I5K#?OnNgDcjD zl`Z*I_eI+ds*iASIA$~GTR=4alw(EaD{=@D5oURUAu~WKsP2w;WSad7qC{)zP_xWd zDqE^BM+KpYZz#y5o+0NdI1d^nBAW~?Z!Y9^gJcfi=OHm<3Ff-+Y?aP4iTM)^Jp4%h z%)DY1N93?$d1)FxLRxkNbMf(~p$RuLKzHqB7O0vY@@c0jp_rQy3#B9Mx5(g?G9BM4 zc1Kys1*%K6w2Uo?pd%OX!A9M{o9Lk_;{yZ>7d3BLcGtA5g0%jdj__Ci$@m%VW z{&c-)wzuHh-~ygA-JLKArlnsN5SMfHk5S~}!pnH>$eZRmNU&fdqwgDs4!%$qT`l zNmy+f%!{J5jDJhbH^zowu&obIoQ@E-wf0SFX@%TNP3?r@1)>DMe(wKH&#B*;J$~Yu z*O(hQ!86jOuY||x8GzJAS?tz;cQYIB-Ds3jkPv`SE(kHcn3h&yi1=U?>^&-FU|D?^=2tx38e zqmtU0QTb4Gv-Nctf*tusO#`uO!kTS~CGrKZ;g0!<@RMXaF%}c`Tf(e2DO;BI!o(Hx zsEG90O|oel3qYMWFz5PN`)l9|pn@r+0upBl#kyt3OOg2F1Ue%atIwIT@7rJg(&b7p zIX)jxMh4$VBWltM0uY!kM;8gpf*TN_*Mh$R432i+#{?Y74HA0a;@^{5$H@nf{U0el z>D9vepa~`R=*||olnAcB_gi-tS-Uqv-02<>0Z7D53tBmcxQw4%mU%OT6-HzBQ zIHfb#AVV#c#}EJ;Qi(TyQYWSbeG=(YryAD8}F@D_8;oLapLW>L&$)96pS z7KEVwD64;!-E!c(kKDthRgf&(c`h;6pO&>zkQB+Vm$Iu|13rP~U_6(iV{$xRzxOQg zg;QzV!=#2K4uA~?XJmB9vpPPWnoNU-IDu3pJMfBH>-g*$h_x>9LTnw-9-MHg7Dm zD5Yyj6&DFRD#u1aWP|-B8{{3#rDV z1sELLckt|A%9QTYC#$Zq5X8()nt6SlU-^UA$tJD=!ckx;c_8%r0FByhmt;We3J1Gn zkk%y;)DNy%s-4N;J7@+@k2$Q>N6YEC@{`b{kZ^LSl%5da3+6PQQ&SYzRlVQ@EY`9V9@R<@R0y7&~Dk6 z=eM6ZWAYTqzCu9qVu#2pl$a_#uCK8-%-B|i2k!gNHCgliB54zpcr=Y@N_f4f8O;Ks z)(uAs!9q(!DyrRbOY5IukT?E`31237NdJ(K;o(WR%N|=2kjYwYYR`}mO5T9B9SPOp1HXQgW=|N3WG2nn&=G6W)F)Z z-=ft-WE=Z{b6N$Izdh)`C{Y_S{QN*hzWih?1AhD1moJCbS7^108Bxs)_mLr~c%tYZ zumz~n>eCle8(0eGxoyNEdlPTOjhSMTu>0+KX8oW~83rH3g=@^hDP%%R)`Ffv^TyyX zWg@Bha3C%m@!Wm4zkot31R#fWjxH$1;$JY9&r7Kr4;0|qzvmce&)8gZ=zV8isMtF6Y7L(DUjPQcgby{3wKqvfA1;k25PlNum!!&)*F%D}k8l z>uuQ8et1)3@@JZCC#^Iy9|5eJFNNsViBZ zD_k#}(Px5AT(_wRu3>S@B2^=(^pe>Pd|?<)TV$DM+oR+&lO->ztsV8-R|ty+3$!BH zE#<)AwN5b^EPX&+_Pos#?r#MMv%3PwcD~NQ#?L53F*~gz*F+~1TFd6U&qXjwl zH+gd4VShp`u+7Vc;_~$;zj7tdP^&>{QoET;nAkIsEZ~;aYexI0^T2KRbc;}@)1>4O z?^14jl!iwa-x9ZV%`Qk;C;djf%#ZAS<894XhFUNeBUG1CX4`>qkyo@oUEjhC)%uML zCTRBO>Dwy{OU42f3Fg5Gv2|mF7zvP9wDVm-bx|MSkwE*TslDw$887Tt=M2m zrUN>gCO&~Yb3&Ls^p#>^5#HlOPNl})TVeWdOo7Hpac3Mv)EaJD^0MHypNjD3UaKD5 zKKm<|IKyG+{L|MKg%Os=ECH9qR3UJvzf(iatvwSH*Gq`A7pxW=sy?n0&rE z32Hu8>iCP#BVdqMMLK>m_Zu)mRz~zCb7M80og=89H^7XbxQ;BW#>A7@sYW&&l z!d0ugg1zU5ScMb#??f~wqQzXA4RTHDt~woEBnHY3z>82G|lNjPjpn;_3m$1V>udj#x%p$s?hI$2KELVm0~Ro`w3Do}R1KBcuTW z#g`)hX!ZL74$-yT_F(0{(4gD$1sXxR@+`Z7J0G@iq`a|fS0o*#mAy#&Y*(HxygcQ! zFcA8h=}ArgoJ!vMyU0h3-(TIOPUs5eHvTfGizXf1_YFql&y7P>w6BE6;$)^MMBi-^H0&d(H$X1ujoxZ&NMDv0)`m$Ul*(wO zS<}d~IcncBO9!X4*3QpQZ>(NST7)homumOmM_cNPY(w}CLZNi6df#c2-f6t-};T-T#wHW&3)B1l7-dfm8bu^*;YF4+iFtvI9h(+-YR! zqp^(PfEHP6v%q?_ z=0!Woc?(qn`s13qHU=L}Nmco+{4@|>_HYte+H#x$s5V(`t^CMheH7|isgCJ}sA-n) zl@s)i1$0xj!A(Kv?n}>V)Z`_>WGmP{%6RkwtpaDU0yw4pR<2J^fxo)hyJZR%`Mk75 zeJg#4i`D??_6EI{HOCCQ)7x#+<_$!4qc-qMS?3e8HK-@9~8 zX;r(J!P&3z_h-Ov@^F3&zu6WqCHZ>-oth<7S7`~o5C_w_Vx{J)uP266*o6u{oF}65 z83mz23lYm18-4n?nPC1h7PT>=y4!CBY(6VbnvO-#AsX-xaHl zu999{3RY%CITiiw8hb?P9{v3mhpjMfC0(gl6cB=uQbxNBq4`Onw^AT4t*Uc}Sc>U|=yZ zqs}y*c-XA{$-*P?2l!ZkaL74R5LZ#0VP1Ei5Ycx8JM@*Ia_Gq`L`QFVl1wNdQ_|!j zqD!$!;TNR|>GVVyC@R{nGf2$~Z(cp5KpEEwKL1QrzhT?0x{Ky&_K@ae70?3?@gH)O zjF}>y@zwMx{ik+L2=}_)H0Bw&2oHFaeLy_I+#ZTWLX_!4$aHibfPrEiuzPdQ1A9yJ z_EysBroRZxo>Jqc%<;RCqwew2gI-=cyGf<|u9FM|IXVrgVh9(`g5)N3QL5sEZVE2Aoa+E`!wUCeE zpf{B2JK--_W5C~ieN@jv>%PQ^TfxHk&G&E7BiK!U)v*;DQ%H-&Z(3K&Cm^+U-w(&C z#u(4W)XoiBVW?{ZIT-hW;kY8++w8-DU^RnyDx9aYe5Z!mG!%+kzbf-2IYexSW0#)q z2c*O5Jx=9H>a;8q$DHvpm_TSA;vYCR+2tpZeaJ+9ITUfUqBD26^Om?Sf$W7N+4=72 zPK{ly3iZh*kk3&I4L4AYLGZ={f&l|Ba!nRCpU@_98mk*-`fCy5(o!W`uRd(wWy5@H zAc{Y3&$hWCugS3p1zyMLEw+wM3_dS(e9{%tUJGz)PELQB=-{%c=xwIV=31Z#fy3im zAL{MRcqH?8^NGf3JN;s`h>F!{G<{*v>OMpWfqGKTb9Bj?Bp>5a+tFOI8foB4JkN$!S-~x!{ zU8jD6dhu8Mjj2HmYI-KqzOu{s2^;q~lWTy^&AHzlL^g(i=&z_r?ddmg zQgGq2=t1mK%Ldktz`Cm=WGL+J=*k1*#}K*2UW zflWkNjcufj3J*)-c^ByuMc-c21Fh|J>D(08RuIl+=}13i4;b1^R_~qbry-{CW)_~` ze^LTMp$CVmMcen^-IWM}=;n;b`=?Sy3N_)ShRhpVospv&jw zY`k*Pk0jrIcb237iSOC?jx4ZiY+{iQ(C z&gjTaH{QCo{pfsGcEV)pWuEkl^R=TJeNm;EA~Z$aYBc(PF3NQI(9x#pSZG$E%_;~f z9ACz{j6lszRjUx_F-z4RB?=Rp$tld1Y4ra>=&V6Q0Fn|c5(5`!?NeH{bMp|@f80pJ zfglmi^zkM$mO$XJmJb%}8X0@ZCA%oN|M2Q@x1^{kd8z{SkIq zus&O!aMX0fir;fUOz#+X$Xrw?R81rXL!QU+I9EKmgCP8wrU*yny|Q1Qu{NC_1|r;y z4cy2iyx2KG_MTySQ8w-tQE?ld?ZL5;6CA(Q{}lprzgJ$;f9ZoWPws((55~L+Dii_^A zb`~CPv6=CNFK0tK5JfddZk1O;2a!qhx_=DxPUKNeHww&?)}`M7)Y&9a3!GFvG(4a= zBX7>WQ9PLg>SXK;Ti``MN3;q>+f7ug<26|uMKwH*g<)}LbWYe{*h5AVKH^$sWm7nW zvE{nZ4jVlR@E8Qwth;bLOYbz!m+PPG1f+!K_hQJ?bJz`yd9q$`HsT5+lAuJW`*SuE z!xjc$7*)QY|LE~!ZN6m%9u?ZUASY*w$e;`5yG#J+5!}`IYkisTCr7lfM^nPH>3Rou!;rrd9eR!r$Ko++SToaNdFy}&qQ+6pRqUD7G zx8LA!6~W{hT=|WHJ6@}RA^6Y6lV^D&LOC%$v?o3Eb+CgmBRDle#UJKcE*zwTOsZ+; zc({$>DsqWlnzyDrZ~NwkE>=j_Icb0=YMrU+D*}maCYH=+RMudy^R@~29>v5)3UJ(#p>{~nrF#t z9RX&DAh?Ia#&Nf^P$zM4S~+R4;~qXgUk+^&W>~~4enqVw^u&mz_hiV+eGICX-QWEz z>8@Hr-|2DmYMSTaQb8oAuO2pE_nloSJCYJKPzf$MuyFtu&#Q2gi1Gp;psvqVli~3g z{HYSC)9u_LrGyMjRlic=jYyTfHB-1CsF(disQ^Vi^2?&9+@fRRQaNJuUJlAubH$p- zDT!h#{a%RQOHuPV@f(O;_*x>WC_fmshap4oQIlpA^(cbqMjlq)R88jq2&Tyd!CU^W zw15?E(NtZM{+wo2Ar8V8#+p9Mf7|~SpYI3T6E{kC3S=0Q_$nfrh03Zetu>@P#ov5h zkA^uP1`m-#kRh$r@={fC()Kn{J*id$nO|V?zy=!2+-wclh3nAXo3CG9?e5*^wQ&Hh zaVtTP3oNmE@)B0zHtaiIfR#NxjH!NKRd6pa3M^C|bmd>W6d>-93WdarD+&=+XFpbT zWfuI6B%tE^aOFU{@8agC?fW>ro|2yF?mzChSth7SIM)N2Bi!z?i9E6 zfPg#o3G%L|L2$gxU4`%j*E}$!yl5f7VR59~Dno<_l5N)~zFD$to)sR&&fN6a+*`e- zLh%3=q1P*01|pBBjU*$>2+M)XDNSECpkmI;k9Kz}?M0yNLJYzIM01LSo*IXOj#DvN zo83EuJhy}d<0G(kE=hDL;JQey*&^r)Aar|Y0yUR$ve_b9q&3F{dZIEEW9LkLA-cQ% z(I3IA@8Au(ZJ^W+q{J<#Yb(ebKi*h5rTO;c*QKLjptWcVfKBCZ_$%Yb<9H`$Z~gD0 znj*e30xEaA_np@gTTdeWvFolB_g_vp2(JPUpctA{(vxB91RLCo2Cb}ZMn)1#tmb&6 zZ2ZW1!JI(+0`xXx>X5FhYP2dU)P{;xP8VjoF5-K6tMTM`e+Gh9p5L!h$L_gAX$B5P z9Q@fO2CdhXOGh!1#;NNawkkY4<~L5iHbKjF4ao$*RYT9cP*~MWfX!F>hkI(Z2J5@q ze49W#I>~V&V1@x^`c|mH*wtHGasrW1%RVVS2qi)S?xX||ALbBE6*8|SVi+~R;8Nv< zgR#Dur;Q?~jmbEMS`%Ap%dES7&32Sg(z$y-T9kKY<~DZZ=2 z)jJ?o{kEnkDfvZBTr51WXhwI4T-lH>VBM{Ghmc(BUC3TG=A<32{&jA-@Uyo`O|W_i zS3o4O?YtWjSy*C>>B4yssmA+_a+U>2RiGjZPVhaY@F!{FX=vVJlnY)_g2QEE5INq7 z&pH!fcf4bSWLXtX6yj}dc^8)h9xk=7b5;n%2nh|8zR0V14;NFIj-&;s<#p0TtgW9t zWP>a0#sO#_USaJfEw=WOx-jc5*JDN~loSF_fpAbt@QAtL`c1sTyr_036R`yP6&1!$ zP-b9x`EUHOpOtx>KXP1?nZ5ndtg zomo%&T7^fC94dR$auZ>oA;G2=avmgnZ#zmF9A~hHw(Z{kQgZU>p5y6yI`k7r^_1uI zE494F(>dTrZU$y3DSPm_a zXjz7=T3Eq8XVcFSM9V+Rgld0>4U|>giXj=O=c!u~hX-5Oi_l1JjwbmN(^(nd=9gf) zpPzNW#vj$oDCXij{hd6gHIP8_vG_LnE-A2U5ZNHuQf|vv%kQ0K=e<8qh6A=s#LmY} z1gIroGigP|ngLZ6S$LJuwM|sxFqYv&_wSzr9313)Y>uzKY968w_99N{r{5RMtLoV{ zb(;WyraYnt0BEu8w%OQy14S@nct%srH~3Ik7?G{>{PndJVPq zh%~0aTBg(=sdk{elpPsP;M@n-RZ92;qBw?)+tCQP)p0s?h-R<{Qv{%%|WV|tE zv(PQvtaQBfwOW$5>yGVtDFIL@(22$iopz>X+7%P~XGzlK>+1v^Kajjna9Fc%Zj=-2 z2xFS=xV~Zp+$x;))YI-8%Gdv3EZntCS&x9e6(y{x`hshT`mSnDoBvYL)AuP69UNPE zXe7usMx(S;whrmp-Rc|ln&kG_ky@i|V1jUvA{+9`&}tqU7$ph$E~8Z;B)wH&oo`j_ z@n5Q!+5e9@IyYyMG8uH=<3uq5>V(%4$@r?$ZlTE&ijwI$WumEQc#lyH4F9>Aj3>$r zSIMnhbxi-K$XbQuKx1)j#bssmYx+BnDJQ^yN$U#^`y6%1@r<2ZH(z?aRN3v^+K`13 zRSWE~IcG+1lNvRsxFGc=;LK_lnPZav3YE5I(sha8ZONmjK zb^Tmw-+esqp^V{S8u%{n`aRC%f}t^{Kq{u<9sfJ}@LW7kt}6aQ*4j9pCIlLikK&>H zewCYa<4EO7H{LQVYS|I6o2pc|oT$ZYl3VM{Z__^|1%SfbcxV!=n(#@jsh68QkVzNdkkKH`pZ^Rl-yv;qwFWH&ca6oF?g2D}0}3w3g@Indmj`}EWA$OsR^d6xoUUU-PgeCa zt}1e;GkWdSyxNKhc(jjO5vlv=4kJ5f-K|3IBJIS`@Lm!t(R~!Rw~euyQ`o&&TtR=q z1TXCs3}`He`t}lwc%LTzG9BfV4S9()CF;bO>G{X6o^J6mb$gT>pNjJjyss zd0mwPIYQPu;0vm?#rC|3p-wHFg|y`0k1KV51gZ*M_HKluVD#aiS{hL4Au6v`_oINf z1b9{2Evx%2OW{i_fgyKT0P}+_zK4f1#;Y9Lcr9Seghhr=ezL1RtP8y%BELyR;7bAk zDCz2m!59^R8DUYp8~IM3gzM&<)z9RY2Y#Y_IOKg}T8EB(#z~iODYK`WGAtZhJH?;$ z;;IAiEDAb9r-(twp-(ahs_fq$V z$$Q@co~V{w=OlJF5#F&-n^A8)v!7C5_FLfvj+(wP#Rr7xi2K2ys?m-PEFrCi@4=ib zBD)nS_zpHl?slo*xdvtHbu^eqnVVYroBI;3vbKtheUdXIpV+a<&!<6A-IrWdZeX;P zD^H08quzD9{&wAQb=i29VvC3dr27L}p6sZfj9@2Dch)7MteP%ub#6=0p0;1*q<|B& z>ZsvSbqP+QEgyMbfVMwS_s(p0y8>c-RKh?mfvX;5Hh+P|D2)oVI2u!9sv^77Y9UM_ zYE6?EYeb)y4se`m+Wy=slNk1}@m}_h$HKtORL|O``SiG*6{F^KcIW+~aYL1XJ3gIO zp`kCK_!+cWP7O+)!YysPuWR>Yko$|c5% zG}|3$CFJKiG@Be-v@h)0riVn|iico*I&{p5LIfw?a@;rJEX>U1hHwV4HYUcsmAfX_ zGm3+cb8=3;Lasz&p~eqcMJ`xK1HzUWQN9tDcDLcoeU|6TrxN1*8f=oNSvo;pzJ-S$r@@ZY`W~Eac$}q;kqrmsHJ>SWQ|ULC!*+4H zI+o`A@bMK@ivCE~9qi~Z-u`ucKAT%R!D83O3W9q6I!v>gXOU74;{`+mjP`)zT=UH6 z()i4Bx~*;&J^>hu~x+YPVFK zm_tq^wH39D3$>y;NBMz0D;jQnb_3I$C*KkPR*NgGAy6{FZ*d6ie9C#`vE%U1G1sq+QrxYU2eSOArHWB-7#gsvCvYLuLBVB!vH%Fx%i z@-1xry9Qmzj8#4sq*1XuepC1Nal%Q?3k(?g&LJP9!#kcIUS1g~&LtY1GB42q^eBsH zkDuzyTF`gU3S-0=E?b670&p|P7#9@h(l9E&kSxz%uWV0L%Ox9nAkGo^1ASWv+7@YdYzTQ$;Ml;zs{f_ z-RXp>?g8G~jWo>6ydoZ2(%<|8{V(bPCsc?GZ2P9UEMif6U-nZj4a9>>yoPXTCXOV(t2PRGly2XB{hRimF`USz0H8}c)6aiKoAos^|a%E zCGezdfmcbe>J2St`QV?uEBq38kkLtfd`Gq0H&6kmD7;5y7_YWXiM@oQ6CdG(iFkO7 zCs;}Oq4%tlMvhFOyv$a8%c_b>eR5^4+WP0As_O_C&E>UTSC?q3T&C7nlksDm9{K&A zlspKCu~kRrOcAJAa6%YvVFXyNI-WEPHqrsMXk$V=G^)Q1_K&rQhdPm*xRs((fq3Il zk~8b&m2+pspYlr+W&=J7agO*qi8|=xu#;3N@oN?4iKW)AtNIDL@itQXG|Vc{5y~ku zfr|RUWElaj*I4k?9Ny!^7FOMNnt-8;Y3~aI1v2IxMd8u@Ysi!_8~W_Y3}bMR8c5 z{Pv>;p;tSAsJB5q4EEZZKIwu0cDNDeHe}mYVBsHbuHLleH8eUIrQA`Z-MgTgFr~EZ z1k@|H(86lUGpji`?`mqH=P=e&6j@%?gc*I~&~)4e>$?otUx!)%?o9aP^6w&S3FYif zb@Suqemo{E2XZ}d>2_B7ti;{a<3*6p93SXD zDeZ1$`*rsp=tZS8j+VO~Vpm46Kq`(4nrum7ZXCzB^Wb^^y6;t5 zu3JC|XP@c;htzY8oA@p;FU0gN_yk1+|A`0quLIsf}pWzJUQWgW$!7heaT!)rWfKR2(LAxxP4 z+Vb*jhP2<}*m@FqGKww{#D=>^prqW z!o>io=b!&b^vQ)Oy#lk}X*d}_H15ba>Vx#oFw+*@ju~>tb7BNMouhZ~9Sm8~xl!?G zS|mTDa}yN~hCj#kYQBx?dAO9B$OXj zK2{TuGNxcp|NeKzW9*++hpgJ{DDrzBLpa&-sHrO|(Ut+29`GiT__K-sM^HBGW2DtB=DLWJ<@V(N|O_yJV~%n6*{* zYU#uxizNrynkHv$Nt*1JjF%mbZqPm6M?0ibOvL}lcM0r) zp!s0UP*myQIO>q$)O@aJ&3*a$RTvbO`Bs^?B*u~{p5HcrJ6I?qO_`k%^99h1c>T!i zWZ*mRbn(|=EfO17{@r84rC(72*q2MT3@u{kh>Mj)V4z1FMxx*ZkA+aob_G^SS}K0O z(hBAd*9=1a8Y*N9c-;XbPfPMl6_{wT6UxL;maez~Q~!1+th+x1i={oD7NEsiog;~+ zHr$rsGRxL~E@>Ss89S;x@Y^)=BiAP(iud^DEpG@g8la}8pMCQHtrWCWsfi|GjX9wHEXXlH0`cA{oD<6Nh@w6g1e@x?_djgz7z}|Xizfu@&*K_weeuL zVlxMdMS86i`))CRTtg?sl9U4q^->T)?t~p4Kg%_Axp_SHP`Xj!jj2Zl>!0Pf#%xHh zWU6jpvI3Xv4_O|x*>^8T9(x{)2@3M0l7OA}*>hFe7O|MKIh8idG`nl;Tqv*4b{Wht zt{#ndb6Q+ISOumkT@@Yr9g0*GwMGG}CWO6r_^0O)=D!!RH@}O8e#`b)>gLptjGoa3 z=+^2YC4$Bd)@I7Jh-o<~^e9&1jewfHM<$XE+I4}&xs^5$f{ra|?>LVf`^H$F`@-zw zzOb$$Prf~n?{#bmp23a#w)xA54Du&2vga@Z{`WjKC!8HV;{kIe@CO-7_yjem0(qQa$icVk?cY`-ex1~1BYaSY0aue zM*=v@703)$R58g($<)Rc90Nsoifo+o0)DQ>*SwnJ{xtM?>sy}hJI7xxQ)=s3G5DkfsAhaXXgwn@^{CJPdP)1h1tvZBopMetXCiKVxjJY-#2lzoe5@2aVoiwnP7A?1(Kz=hMepM<*h`u{G^K zS3-2HN?z8gsNM8U2?s2JexW8)mL94wv%1K#E zA#0{on$umf;8hqQvOQ!l5;A>WM*@V;^_Cz%qjt|ZO8G%dH20sjlA>V{IBt+q`>N%A zrEcmYY!KXjXATg5k4S}rE#bvH!#?1aCwZ=2W*H|Rt`IM|LacZA@(|~_ldo22X_dHh zEgQtbNB8x+ZB1Xk9UdV4zZb4k3{{<>4YO;KqI9cR4G4|~SBc|Y7O<(lvmCT%PqDa_ zM*lZi(`|%H`EkX~t)6Hw+{B=ch6zA#31WZPenvp~V0f#x&9x5bF~FN}ok_fwsSa$? z`MW%B-)kz@jf)J4Y5gM)t92iRCdan@<1a~U_NGNt*vn@+1Krv+=%yK#*1^!AhN~i| z&+sC!)>Xi{KHyeU=TBl6nG8P+d(E$FE{y>|d#+rcCllT)k+bezd9B{QWiB&ELfA=m8+$b(1_Klo_<~NJdhN6S09w3as^&L`Iby@h0 zRE7e4!JOy#Qfze(HC+7gab*F-H(*7U%zKa><;iu5uP+;vVWIu?m-Q*&GnQ2E6Uy+(QNj|`xz#rS5QnbqT>qXJ1`_5*QAL0zspzWKZN_>d zQvmnmcs4s3O?7i@nnqXaG)69*kLlhxPr$g|dgs*h@zn)ulYEf`Fcjl(7bd;ZWfM2K ziwS8(f=2|d6vCA0JV z^&Qsch&1EZh_&dd*h%5A*KqZ zAA-g0s@3@Aba7CJdJEdq>2s-dA;q*TY-*;bd8VsG=vFS=r zI?AvLqq>|ChtvzJ+t~IQMOK6m5qXHvNp>EI|L+(&Gc#M*n@pcJO#`W8HvAjiTR;w0 zJfZY`gfjH@g4EjV-v=lwL2wsB&7^aw3hdWv+FGXAI-UNuMx-h=@|4h{31=kQ|-bg~xj>ou|!{r=tp1 zJe=;OeU-|ixF-*_H*PqDdxU3}1z>AJet*%rH3cBU9?Vl53c?=Jco1GqFS*(-Y|0`t z$|)9xKT=CpuY%`I8Y9d=;a_ITHIhI^Y2b-M;~1v0$C}zk6LpIsM~ZDHzWJ_awGENR zJ5v0qBVfkD4dyC2lu8*1<72`cAl3fJh-D;(b%tf-0-aqLOHPsc5!D$xsYqQ);Ebq^ z!My;2Myf&Im?d#EK;6!sAa+8;26KRO)g)owi-1@kuIXV7fG`Vr&r6}|5gy!Md+qh< z9P0&tTiReWUBaSd$tpNPb{;#_%QM$HyeN;ugO3|?u5m^Dj{D{yw3|q=pNx$wJOPiC ze2zhu>D7TnK3$`UweIF#351l`sc95yKF6-)hIa&Vf0DUk#5BMs4Y-Kf!?^Zi{bKi5 zZO{AASB-lMI)K?{EiMQMrvWh;Z%XTn*hEvRwl$mG)-Hatp3#?I=DBi#6A87FleC1R zqA;peMunGc74Pu0tbvzG58tjzN?gL;Tki;fqqV@~IlT;jHRe$HY1$0wlW;=II<#H3 z(|DmeCrS@_zP$`wC;Sa1|1DZ#P)H_jq|l?6NmAwS5S_T2iWhBg=}&fnj-Ebv zIO??hJ|{`@UOx>|I>C{1M+(w_w-=cKDnlgj|J?dtaYhy4jZVQIFrOndc%OKugO7K% z2FpSJ;LR4PLTE+Qu`u(CR@`I9l~O(54cdt<;54k`H5A|%>3*ARPAq7l%Tj-tB+_o$ zg$jtfL-#;?b1wB;-?qxstp>hKvvrX15|R1f74dC>Xqs`jfKU*#3kGZ~y@Td2XO3|| zI5e!q1+Y0fr!};X9WyLJSI=&eTBVMCAm%4>Zzk4@)#HFNgTKIgbP-7`IP@j z?-WQO0L>l)$Mz)6$43uCG=ODvk_V*^cRAj9yE}>6-mPT)p`i8b4n5&T?(=i%8-Yy~ zM{K1%O$4msX>`ii>YO}>tNu{@IZLS2>9bX_z2WGSMWgYDecvBhZ!1YU_7p+{xZ%eecDH)%SS%N(SRt7d-=B*kR2foE(XUA7E!@KfI+XqcnA>O2_{xd!FZj- zNW}rbk4jW(F#8Uac>#8t^2x>7kuYYTAa=p92jNmtCwWe&^{K&IYB;+pbu3nA_K>cK za4VM_#&g_6?pXbuGrGIS8xzSe|IaPECiOWL;)>EBCr;RN6A;L9u$Yw{wMze!- zjm~1NmrvO!0PjQ*qN>-K1%Yxm|juvlqPP_4k;#>-HYFzcZ#%%2xohx06whpT8Znvuu`U|t>? zikx0>6h@_(ENiwfw-+b`)f~Z0c3nx~=E~=X!g^<_==AAtn2jeOx;5!;F*bfR+))|n z?EZkI7yuif#lRI&1Et@j*<^~)_a8Uo$|e*f!x#Z@Z#g6{pj|hs(oLXBpJB zSmI_hy;eRNYq*{ z6^he8Jlu}@&9t>BZXmXtS8NQ28y9*Cj9C)sxZS=X3;B$Osnx=M9oFSkc};-Md*`zy z0aYc4gy!8?Ue*Tn3MqQ;Od(>46rse8cs4J9Gls|f&}-{XEv@)x1Axz=U^`)zp+r>7 z%Qp!{2sAelI6pFFA{I=2`E(79;XLsN;UY0kPJ0eC0d{?n2S5P)T&A(!i|z}I72@GK z#6W^jKfMP((~T?{I#a$hMoY1lDZ};{uUeMN@8K_JV{YSyL_TG1*{QH@8U+%VC&XB% z))h`a@`azXg@c`TW)r!V1O)@M9T##ZNA!S8|B^6@78F=z3NUHIbpU*e4ZtI)$ zuHyT7Nq6n>N#g{&R9n^OVK%2f2}B}gv>D}~g^gl4mUk&WKxb4+8bX*nGP*{crEoWr zGNGN#8kcKADQ?IVY0l)qqy$tnY8_hgSy9ooHO@*OgTVgka=>H{XH=p!XlbyFQh(aq zNWltR56hE7!ZIfQA_fwz%WKl7v`M}&YzPR;(5s3RFIULf8wGD96;0Q{>X zUe~w;qap8LFb_S4mK*b4xs z?Q6#KNMY>(YMMLs7oY2mXvjLs;LWG@tKK2TMA)5hFJOJ=1|z;JB>-0^Nzz4(+R1(0 zehOyx0^Lsov~Z4Ob=$mzYL+lC0YDFL176mC<}hW|I0J$k*t2_>}qXnF~6hCjuxe@u5~LkK^owkxd;=HIRl2)52}}z}c0M zt~U7*5gfc2{j>v^GGdWVkDdP(bUFtmWj2BwarNyv-%`r}KeD6+Jm)-FP?a3HqOpD+ z+_2?u67Pj8N27)yT)wM}K-(_LG2q^gJOAJt2cw~%kD=KgdzzSu4{EkK?Ob`%V#|K#|v(JNUrNny9Y`U-3ATr7Zt_CR->l zK9<6N;TXp34&Z2E1HJjG)LmYxhi@uKv}0hDf*9nPH5RYCkJ#2bpFCe7~2Dy&^DNn zkTGc&TKb%yOFAd-p%$@F5p}h7fGdT!JkG@n5g-L|!`lq@iP!&%C0+zZLH0$33o0xc zQtAq%`4v?I9&%~<#{(<}or5*1TNdaI&)&1}D5CZliEBcyZwf6^E_?NPPD|aF%d2v| zrcCMot$E}rE3TNge1}G}dpT(dCgPo(c!m64%0O?vRB5{dt#q@cAmLrk!cS6ElNY`Y zy>zhoM^f*cC@oRGxiIGD>fa6K&1U?3NEXgVpheM>At+J~n{S0b{xA+np%f!@+ojn^ zg4X{!gj7^#D0u+_^A2cHjGoz@*?%GQWgS=;qtY2RjSZ)1&hrVZy-M&_YR zH=+Y~Uk^;yW@?kyD|50VQsa)FJ>6cSBlMOU&?SXSw9-FQ{?DI<+oTLa!$SMs&o!XQ zB|9l@8z^26R8Ye+$g>S~>91^mzc1>|ywb-p0h%l*2Kk`PRfdLI3NN%(*zge07nOdh zP}@OLPD^5= zDIB=lPJy|)=sVB5tJ1sWjK{r6pQ#;=*B5dE`4lL$(Hb53l1)|yG(SJFgT9!7iY?O| znc=6khH6hy2w=42y5OWTl|J?Zi1Kar&xLnqDGokQk5vusE>jnN4Sg|(FjQ>*r@q9T z&wq4ip7>vUMY0Z=+DS&oKTyOh;0`t_GUe!*N)?HKO;DqHqNVcNCyAlKZ7l%ZH+L^1G)^lQq4{`cSrMH1jVt3+NgfFnv8Vhu3L zmql%@IFJ{m{%3CIo4 zXck}a~ii4>n4HX?NFdTpi1utrF`aK&-en zL+b3J{O8(A(qdrU?W|R~K{4EuH!NC<)23z3o5`~&7a*^UD3Q{d*nJf9nxZ*G>{KzZkW0Flt^BU%$eCGC9)VXW4K;6K~=`!D3oy1ii1 zKpS@oCW^7J?3YZw2;Lxl?9+`OzHH);%Tld8uhPfrvJz9B=?!BeRbPpRFXUMQ{;5YS zNjh`)$i`TkL{h3byvxi~OTe#B0oJ@8Fjl&>{ig(|7v`I#C)griyQ#AM4LqjdV?yXL zFR%Bn29#_-KPa#!fXD{??BPPx#9mPCJ?y+>^%u9LMHr@&W|?8<{&>~1cs=ByN9=0b-6mQk0}Y_)jw?%U+bs&Lr{7~P3J*Nk?@4fuJ&eK(f*o^-DpzDxI;STcNN6Hyy5+ewb-DD>jFSJ{RIC0 zqut-Hl7^HHJY2M$nO&ndz`bKq4S~0xPEOpVgibUH4?&`VLJXqdsicU@z6;8Jq49O-zdFLUh7bGh0 z#$hU3Fzst^;CsJfb><3CmcUOUs*Y#?F=6829(KYO=tcBv$;KALmfMg?$>V*^q$|ua zip}o~@i7ogh@J6@;gF=7$@1g9?tJGp!NKXgb6Kk2>mc(Le6eA~dpx%7i)7G|#eK$A za!u{N(NpEKth0|bxT9Q$B#Nlbg9)ulPhvFF{R>`Jpy+;0#iwX?ZDCGKes*oB9IE_J z92CCgC*?oNwx0^g_SbS#Uhrv0uSm>g_>3r?gFb9`g~{2c>eBx=+#Zc-2YeQCY|(lL zXVBc?Y~<*9{D_f)X~p-=m%=JS??0I zc~qiKI8>V5z2?8POLTG>Ir`Afzf3A)hF6+0M~gJmZ3ZLIH((jGO)U`C=C`$07{;JA z&NpF8Te7NWc$+Qg9LDz6AAD=`c`_%HmqLHi}CZ2aPTCealVGn zbMK|M$2wvELqknBHl_0++hs;h1;`eB53;EYRQ~UC=yGd~PyI^IgOE?B5|QlyRS}*9oE)CBu}3YhFIbG~a|}(Y z(rj-HVfMcQ$X?2*fav)yyT-lI_~c}C6p-dXd4wCv1>vo0tj1~qsGFfh(W4qnP}2Kf zp>a(oyqfydsPQ6LwRZ9CiE_h|`gy16H9~8LCZz50v-77laXiZ%P|I>k{(z-MVqZ~e zpdv?j27|wq)itHIxf*c%J?w>;x_mEEe0*%mZHEXh=c3b51)4zCtY&nKV;>quYe8d8 zGYkfXB@~`0AA}l7?%83%BT*&B%f0aZKAvqWzlX9+HmNjH8cDnb9mNMpdFSETN+X{4 z!5v_#%sUzMi)yJ_`|t31ldz^h&x~Y*Qv#aS19|Y}dx^gn9w)8l#V?DwuTH+y3oNGS zoN#WsPy0day9URl@S_qI7;DOxIjm)+0-b(Tl9s=Hk8T^&1#GXmTqlk(B(u_b(+ch(Wo__7L0Obi{e&#CE(IxtWBCrp zL_VZ|_|Umc$9Eal<+vfECjPQy$BQb4d7FVwkSBO$H zgQEf1qey1SLB-h?^nXlW0reH1;0x zr_(X2IB~7E_<5e#SL7kP4?GJ&wkw%YE3RZ=TsE)ukaM-qA(D%Y%rs2aoWqK)>%7U| zhDrlYJ2c~&3V;KJbtToe$Vw{qAIodgySRqWh6{JEh`7xcIITy2*M&04Y`9tHHi8Da zOj4sT9wIbaN280Qqc1gojmohGn?BfBv>Oox1X1S%NCkbV(=wIW;J{xy1kw{yT4`yut|gNE3j^||$_fT$PW%2o)HTc1y1kPB>$DIkE5>OP_aLQfzO!oww9 zm}N$6UP{(KePI^IWz?RM?15qvQ?1=l8L;hj=BiaSVe53Yh~h;c1M1BR)H@bkXq-L- zo9`*{Zz`A7G>COL$3FZ}5Ta+D_!c;Tc(3Ie{7P4bHx=so{t%PqSsInMxp{Rws|6c7 z(TYV4dD=t4e6mMLRa9F-!U|aa!|wS7a_#ZW`Sl_`%s&?>=T`a~xp)W%_pKkzMCy&$!bvY8FfkZhAxh?(AAq~ns7iLpxTU#@oG?$tPov89>K<+ zrsi@u;t2=uX{T(L zdzv9eoi7?q+)(ViMXKM%#RdMKRYbYIIIQ5hoy366E123Uk9;SFxm(wErl&jB~}+ z6T|Cr-0ND(VvjgdEE=&dl>t2_7HK@v^FRaZr3FO7DQ5fJSpx%z6tb9(#_H7KVGyk2YqL z=JU>k2=Jzs5sbPJLK7?fG&J-|F^%0!5{Jo|O5@O^#|+l&F_Bd-I}{X=Y2Crd%}o2= zCtxrsS>ySV(Z6j9fs23T5A;Yi7ADl*sUA-hs4k#aGeE~>XVZ}wlr12{6n4w9%7?<8 zNDxQ_wYZdlZ6mjqG7jRhAdTjU-)}-u(;QRa1JTVP$x_{7V|LJ*kdtHMlI18BK9pz5Pu1^f^ z-A8inf~&$6Lg`rx=x&4@i@OPpcY$;(e)xQaeUF_Z-SBmeHw>JZ;cq6llu2t<)psV8m6X2rq=>H=FkQ%%BtrucF#vEY7$FBp(;)u-f|beu8G4h zVr^r-jH5G4uFVwZ$ZyVYb72O-G7P=jgH(Z4_rAZn6#yEh6bevd}CMPCMp zg3`JCpJrz)QAd#kLq0}Lu_H+h|lvG0W zWj6fEuPU_CnVZTJ{q0JR?*>)n$3Ds~)W&*u=Ceqk0n;J3%B2D6So=pCKx? z*NU&MUoA1Ho^3}jU5za0n}hoYxgrFG2}rUfLx4jaq9A%z+y$&~?pkls>C2o}Y#2>? zAeyLg@PJ<_biTDVTLsaZ+vPQhBMr5k^W|j?FJ7@c3ZyF;x-Ki~-F^xeM(;6B2x0q{ z`Wg-|F@k#=)3U601lM$ke%{Vff6gwcSIYz)hp zcZCW`*JaZo>NBC6`gULk5_h$)&Q*P6Tf)@vGtkCnrz-lYaGhQxXaqZ#L-$UBsUT;h zGUZMSTZ_b$gVm%WB<}#YSD!qsO9Hdhs$K!2{OqOpRwTVwhOI0M;qzG?t)T*h74T)= z{eRB)(q4aOmlnz|I>h4Dt0BwX!Zp}a`K2Ach+F+Zk8J&o{|1b(zBq~k{YmJdi%-Q%vpj9%5Fuf(?UAfy@IU-{!dLNeW z6qshyDKhOm7+sNIyD&3%t9PyRGxKGs7YFv~A<7z-)sd%n9^YA!8{K_Q#q>SaPUK6a zl)Nz-A+Kp^4A78v4Dzk@5?z9f{qKQA|1FE^T+<}Zj#oqcR^@qD7G^NI$K)%6mFa^s zyp_2(65f|hvJ=zY-9~!v*3g&EPHZh9;#MOivz=<LTLk_<>I)Qx z>4@!bqv$A5h#4p^qfVy^#OL`I>VS?W@aw8UeEglA5N_UVnD^#q4qldOi0`WV9hv_D zT204{o?Oxf;|kuNr%F27tPzooqIBvnDjmPYf1wwWvw!l~5zlW?;c#c5q&^NK;x+=; zI2GLxfCuLpO+%C8BGFWBR#?$$y&X@_0<<^9KdqNKQf-|!ATYP_*OwHV*VcL74DgP3 z^`^jeoyT07j3wfHcb(OJJyjHev8WJO2CwWxpB<~Tc;76lvwh*aLp7ne4@7$Kr45Gk zgy0H_R~J{yhPOTiI#8AvD8bsz97baos7ox0e8Dr-_ixE+%>3578F=?Ovu1>4s!)@8 zkE^s%3WuV=I+UG-H~a6WGi1`~{ry_lMHMi^cgW=rbud!|-;{nKn?fX+xw|__(8UJ> zlJ9tGUf$oo2c+Q5&h)9|lM)I*s1g!%b6)h%*+TSjMajZOiqfw`$^ z_^97})Smot)WYF8r&+59OrSSSj-22b@of>EEN7+3h}FPCEVRPqN3%1{Gs7hTBAZI* zZN845`eZPypl7cEtCD+|-h>i(Nv1^S%~B9j>cCu1uI=6BZRIA^oOLVeLZAo_DLgA7 zBo}6~)~vgdGT^=3BjbmCr>pv)CFiq)lv|+w$T^-86NaXTEmN-6q(Z za_GF1%aeyhW`t4H)J>#WbTEOne;TR&Vc1szt;F0N0NMXGsc&Ht39$k24 zIZ7tW80&mctV=?p5}kXtAZqdrJQt7~$YkGFU4{q)ufrZ>z84~MSpuv?u!=m%65au2 zNaUzR-Q5a~s=s@i2v_~qx#Iiz1VdcsT?n=c3_Wd_Xrj$H0sJpW8FC=x8&IeK29a8# zheANtv20$rWr=SG*=7u|T+zG#Y97C)lCzCFRDMO@$?EzF`f~9fb((?bb`KyI6HP?{ zgg*yFuA>XOto{fiB2}n7lFH*f)zpS9bw&DcWH?yX(`u!rXrw21$J%^x0R2tKS)RO_ zq#4ESBZU?ck-(7Zg!Ei#(ymkukGhG27?)E)`ZfKqP2dDll>1bqXSdXzk`He+`CViJ zX7C*-J2}XRHKrQThcf;G#A?sEDvPbVkc$VxeN z7aFZJWz2hR+77J{SV|A;y|#so75MjBI3`@9L_{Sm*qe@gWl)nxx0uK$6=k2E`>1}k zAgh9{ajo(l?R}sH_>9#qbJk#oR#dCEJ|;9v?RIsq;ky8x7l5`fhS4d27=P>*fhzlr zj32|oGw`AusnodYUXpsBs8(z^)t*r6kH&qG!1%Zb3wlt99NAX>Yg(*4uR1IHx-`2f zVS2`*BG7gHlUk{(?NNclxId}+e-2fMg@__Po`geW5WUQL)6SZM>qJJo+AD2skz0?; z4R2KUpqPqcto*v8%+*45Q$I-6D)4mpVLArY(yJ1D`OujuV!h8b4wm<`Q?fM34@!@D zwhewFH(*vm%y9EIsdbdzVj!~JCR+t9Bg95Z7IM)m!^eOe-VS#@>TJYKMbi`vk0Ych zPtD2wBQza~xmJs53cyf3HJ3k2?g-5Sxi-ykD!z@{8 zt#!iI>paA?GQqBsz?}&3%8cqIywbtjhK0qDO&d1s8LAQ)kWm32khLJcn6>XPjiIb+_z*=p-a}Xc<>%5<> z>AQXziC|JQfirqV_lloFKV!yyK~6hLW#LUY{~UAeT$7wfzl z&;BBBK)~^6PgvEHtf1KR3k89ByQ}tNKd<;bIHbX)-^sL*6HVE_>^{k zP8q*J9^p=tHFe(^}x%FE%_lwdk+X5x8<#fGT_2F7+AGnVud`zNRsa zQk@!M6|^M2!$RNc{vrY-7le-^i=^CP*R=*Cj#U3l;B|1r0r;LClM*N;oyh3*cPiKE z_tD?ShP@i8@1{D9O%Sc<=oZ(i2s1-C|JcSxN3I)5BTX+syd|67VN7#reBJC{xy&bz zvL2^2iZ$iWqEvw|si|gy1Nuv(afB#Y%(m~W8wxi=CO~A}@Sq#BRaVJ& zx#kcQkhv-gKKZ?!PoxM|IQc)tZY_9BfZB$P5|W56gQXIaVzQq^06m3n^a> zrem8Txs?5ryq)X;w{KLhV{61KP~MS7FNexa7u7KBF8(!XihU3ouYU-rsRp99PI`*H zGkCg)+xrWL3)Jm^{$^PIAqlZ|VKlnV_wY$wSx!-RH5;rqsnEqc??v%#_5UXinAZpw zTfJX#F7wtgz1j#vW57MG>dL@CRTJl8bNJNy z_Z@Eb5yn#+643bhO3lEZjGIZF+L=f2LnOj4ATnPncdxiSsg+wV! z`YZ*{Xx=xLP54*xj3SSP3W$glSM**)G#|u%?%wN7OEg8?gP=*K)}Z|({)NcNDd72M z(D15SdRA-A6SST)I4!wdoU5%LgWkC07T1knm$KbdoC_?M?2O@u8po3jwyzd_0B~6q z;6$U3_J#Isj2oXtU2!-495?o>(ydSyKzLCN?NW#Yt;W*K_)P@nh&$mCWw8L+ z@<`T88UjSm88e_iA96|~&hor-^ST4yUdWg9P$|xgxUJh&IP>$TlX<5|#y5Iu zozD2y-w2c6Irh2_51K2G?H#a)OObH>K zIzsf(m(vw4YwyckL#BKx+;xHlq}W{K;qNX|gDh&RHBcJy&jnRv23!V`Qlb}~IV$6S z<5QhBe@wM3^S!Y4Qcmt20kxlv@tyacb^d#Yv15uzOVDHDY1Qjb{5#L;hoNgNC(s(I zPM2A7`Wi~-{|@PgJa_G908r~^wb@!u7BHfeF?@c^jH8|eRgLHZCf40n4GVtEF|i3$?t+|X9e;IH?KT^8sGi; z9~$=VXK`nrsGw<#9acm*=>rNJbj$DH)H<}9Ez(P;rUpNAdyV&Z+t{{z99BE6R|7)z zsy>9Cmsb&nRHHbrm0k5DaB6Alj3KL++It>^?E1wn;82C_lI$qSKLX`KaZB`UPg1{~ z8-|x~r$s`kN64%|Ong&_w=`XM?HUuqN=8!!*>2=aiuLZ%FLblAzFW1C(uxiZo7yr z@+yp|(H$&;s(5^V#^Di*BW2gG$e}B2Kgzzm*>E6I<~d92{mkK(`8=AQmT-SjWEBo! zD?M5kH2+nxrOv|nBSl5gA3r+`NX`{;H*TLa?S`tzo&y*Rt3}M5+6h)GhQKJ*!jY!i z?7e`mS*T^|oAu<)WWVj%T)<{o4nW3WbK8I5xJtZ3sKV%gEuOB(QW6v?R9wIINKn;uX(DODqO zf)5S5gfPm;oPo3`W&X7^!FJGIa4IfjhH2WiT(IS5YGTnDgt6_+g#6!?d+D?BOPnHu z*BQTB{(4~prNU+q3!o1Z!~2wb(HQ#7={9$+4>*qH%m#F{&LmN}`LAhV#%}7L<1yqA zxKT#C!I4D4k5R3qcoF&NmlyQy9Koacw5Z%L7y5mxU*(bxpD4tx_$~$zha_V1YnnR>cu~0yahw&*cdr09E3)@vU zX?vc?AIC$u!@D6YP^8%z{I6QL);xi<k2x7YlLb!ua5(meXCm62g}UM}bq15PmXnV*A=2Em z$z94~IcEP!?S32?pjC+WHdAQXhj*{J8tX63@-^{x&q#b{VW&jgXSnz&CyYc@;>;5_ z!$=uBoDyBH9YGSU@Ryc1w&HBJHqh~&hkcG@0bEfqg9B_UUr5))5nb-5A10hN#1D@p zEmE5tvxe&nj6d4g1O5e7ZUWaa*1<mag1JyH zx4#*?0X7S$JkgGgAs2Py_z<;#}}sDc_-NmU>lwxf(lVReh`)We!ePkkUectS8ROO8^M@*{t+ zFApyvU!5z~Ey{4EhCtdhD7z2W(?ow}X~d*p5Z9F$q1aT)a=p2Y5|5OKPV6w#>{FV< zx6*tqwT-OrY`qiMeyy_il)x5tw+ift34uZ*`f$5XOl^njVP69%*!p4gYEn6c`}SHA zoM!aPY)iF;jlC!-#2op;tEvpHWE%zx+wrFNylS$;JPH>e(z#i`49EDBkrL-jU$v#P zv401GUOD;nT-x6@o#JHtJqct%#kI+oN5fs*@jBbRb$+xe zBYi3JA5hbG*bRDWEg4}S7dW1BdBog?$;*%Nb|pmcsS*>Ww= zfo1iu{>L!7ONVm^w0)d{6)`6;z_#j+Q$02M=mBb?pGLAX&H`sv=sT=WA@~qH^sKLI#=nGX~WeIH}9K?1aaSkQz$!y#C7P$C~EGxJ&z017x+SB1XfABvL>9gv7&xO{h76?6b1Lao65h9&Md!_|Ecs_53Q|sieb43UZ zKOv-&l+FP>SL^D{I6P6IDLivqo<|-K-0=D-GzWoBxjwC3v{e@b9u}7UtGg!|NfA=z zg!)%OL%mrvpFUbOXM?zJcw|H+u?c~g;-kRM;Ccd&;o0JOqd29x;a}qBETNg|L3v}y z6wbkh8Q*3XG)OcCY5I2%_59i-ePY^a<~WL0ntBC}*tX52fG z)VhLaxa56ww1CI#SF*Na>dL#2o_guPn0LulYFUsi8)66|Ueg~>LyoC5*P6hsHj_(l z!TN*j3h48?Pl!*Ja#J=_O`ZZWc=^8IKMSvT*gmc20RKM#zySL_iGp2W-Hr~P9Oa@Q zV%o;5sJFI6u`{{?bpg@NTDZ?|_AU`#9_cLAI(sGC(e z1+zmJ-9kf8)NfF1XnJgSDu$p}t^L*F@n7QF91nfH0^?#w;~yuO_5J8T-{+T{Kx)${(hTt87Bpv`xI#WbK_onI%z-^ZHsjK8*a3CUE?n zPt3#8(Cti`SgpG-UPrWWij#Lcbi#v;jGJdP- z0uLf7FqI(rb|paT_{D8PsIqAMj$xz8E)!Vt;8QRDeX`I^pQ(S;XE|r%L?FTbL|~_k zV4B^H7cW*}I|k18WW6y6yo~q%{{EWqO@=DrxQJD^c-%!pd?`f?8Ea;aTPCtd^Tu$X z{<1xRg^sA2BHaIzbw?#yydQxKB-4@33h`L9221jy$3L}~wB@?2qssDDfST~a~c#1-;2uEN!ij=D4=X;h~ zcY|s-8cSa^wDzuHvEzTfwG}-l4b_Tx8lXEIumkYg8&}85ra%2Vd9w9y_X779uS_Kw z9Eo56|9{WU%VOfD^2iVgGnLw52&830;Z%<_`c&XX7ql$h*1d!Oc&pS~pl@*}#^-!0 ze0d&bZRvJ;nzW2jBV>C)rVCe>$U$&lxx?k)J&MCa9FhKEYgJt^wtwT?CqDZs1dvro z=HproPWM;6+!1%eni5BwqA(X zvzB{?0SPu+EpdkM1MQcP@6_MY{{B3cfE*Majc9gWr}Lzg(L?dO|D`nQUn9TIVmN@k zu}+vQwrnr>z>P+OUNbd7>`UF6`9dbs8RJ?Vgs#uxa}W84O4gr$wy2hK9PQLgUihT&FKIVj*|;sX_0>{FK`gH~-Bdq4!)kP6pgn;}cyy+8uRXh$Moe`Hly>dri9cZ zBkA^xe=5N#O(cbhXHUrqTR~QQ2)MVG8a-n@23NV9?U;-O>-V$&rMJ^0gdhwHMh}~Z ztQX~#zMH_b!@JR4J47F(KcH;*0jA>hQVUCfCm2rg0lT>Dr!XA>7j5eYZ0RnLiu%<) zFee<3Y376p7%A@+SpEjd+tp$QXFvG;+ja|wFpKJg4;7b>!EqC>ox5N=G$VS2IdcKn z0*{~>>wJDbwRW*ykxP`m3oZ`mO{fE|=50Z9mwnP{cx@il6%~p;4?TBL`ca?!Esw02 z1P!FyQlRdPWT}7zdqQAj?b7C!K7@j;Z+@LBWqLJ)a4F@vKLdFULxBw0k_7SVQ0Y%$ z@){yF&EqI(*41jSU$C`nO|??@i$JU02QUg?vHX+C$VH+ve3cy1_fCgT;!?^#I1tKC zjVUKNYb~ZRC~g(=idJUjj}8)RXeebQf3vgucsB2$65Wl_!aNX4_>WvA8|b6fB4>2e zpVRMq;%R|!O(P=OMnsNyDQVNQEpBzSjvjP>ftXbYbtp|*F>IpL@lz9L4i3yvOG;fb zfWiT1GH((ge|Yn0k4Q+fo*g{o)o#7ha zhWl%yVnJ_0mhbpZ(?$Lev0X!mOOaimGr{SDSW-QlwQ#agk2{u$d7N3&hZ;?+iKCgI zl;s{VR$Zy39Widuof-H0rNb+39Pl;u?(&Ddt8!(Gyvmsbk%r?1XnvZ5!*NbpOIQ9^ z2N0;e`|m^CyS2HNg3oVN9w1vxRfg|qCYcN0RpN(7E&hYL!PmwQ2)^xhA#-k+m zE^}d@jf$a+a`fx)@_g(2|A*S0(nj_=ABM53^{fHWSz5-c_x%EVF5usnvlnm6w{^rl zxh^;89P@djjtUq%|EsiYG1|6aaMgMUs=qVDBBtta#9NNe?UPiZAf;q;UT;$I5V~C@ zKp`XZn7HDiNaRDrrLjp61|LttR_Tx)l~H_Z3eqWu^7fp{$C_-knm<1eyk?=Ehyd=p zlNEuBTk}}J12Fj+7*lx17*EIggg~;J#$pnIvLH;bp6FVL>f15dW2ti|(aKcw5V2M? zruSFb8}ER{-t8+ABVk1m8ciRyK8UpwdZEs9LQOMw>N#Lb#2VU6iE!`cOs^t9JX_`D ze0Hl=s}Y{>)6p;olY#(fRoe43BgC!gyUl*qnhvHeWxy+L8qwO^jaI5w_TE>afd77`cT5<8u`@47uBaXRS;AgXMb<}B z(f9>Hmkt@1|6H|Dyvsm3CoVR-sDz@jDS&Q9sGxxlgmu~>Ri+h!8qPB$$A`06y4;Dr zj$Y1-oF{L?ml8PYqv^c59C=%3(4sJK945mdly$0HM+8k^f>t>CrczOjTRRm&Msh69 zpE|DG2Q3T{HrC)@dbU8brN}~Q!EvDNGE*_PYGe=_FXo{y&cSibuLi!qlE;d%KYfcl zgsHn+M|Mk*L^&#p+hY(Q;1vp!KRTJ+mMZbG4`;JZje+XJGqz!C+^jGb=B)EwcV^Kj z3UrgV_b)rZ$7wn`Pw6Dy`uPM`yU0)=nnZVj18M0C{~4smP22W5d3Q`@7 z6aPVW=ZRqP?f1aTYgoMXFK0L8@{(Ge_Tx8aF*zr@6(&&S z(NK!75)K}rxXOY^i(~nD=_cVhJ!!sc-<=Cv|E2=3aGic5LV5^sq3JFlx`dD(Umf?1 z5-7O$Lp`ce$QU5|BZ*JuE^MO2>czynJE$4&z6ysbq~k!y-*6@+yIu@us=GQ&EwLsX z>x}3_o627J@W|h$=CE6zd#%Eu#aSc@tv8r2Sz9og$J$oZUM)C?wf$;TLIQ+q*WF2q z^%7*xb*;a9|Mg$IyCzhZA5@rqGi=jufzaOM^HEWl58jYU z%)mT(9u^~gNvE@#NxHS0+=z+@6tM-{TQduz#t&!p2Q(mUQ+L(zOLzWef)?~v`x<@= z$dph*Cy^jqyuH%&wW^8!trZ7~K%L`IxQfh{J1f|qDk@}Iw8&TZKM#Kfhl;s)pM@Im z{I8tnG~}Vv{rK0wWE>W!Jk`|@)!GO=@ClgH!|s>?AD{>fyvfH?cDlJK^K{zy~{%p^pM$Cq7yHtf%-;uLpqta>)@J_*vjk7^Pg&&CYG9U&&J zyc8P9uYpsL%PqMg@>opwDiLcd&h}&x zb6aygrU}v@Qszl+dWi_K8+S!Zau2qn-yVCFkOOZuPJ68XmsK zJ15bCF#yq$TZ=C-{JUC#D0kP21pVieOvIXN=)zC1T52*+C|XdP+dT#UvB~>Uh^kr%Gy9qlH$@=9f9NsYDnmLlPyg$(0fY2>t9TMkr-zlXdf%(C5Y7?N9rtN%*C&WTTB8BYsI^1S~}>DbPJcF zF2PEbNYIx|W5oO+>9v3;X0^wTrMol9m%2cOiwncAaqMmr;Ci`gdWo1QfvyvnpzWk< zQSuX|qtI;dLLygcafa+``<`0*(s$6Q7a<9!{BP2nchtL`9|)|8h;VhM0pNa4THm_Kdb}zwd94&G46ip#YV#l_z}poHO9XdJ^Bl4mC7}ll*<^_ zAocVICc`?Ug;{Z=g`$@~kcL;P1KW&!Eye~xkmP`eDxb7z37b&Rhae0H9pEnB%$`rOOx5hmJm<3+*qn9}8+=R2dV;n;jg1 z1FW*H0&bP@d{RCQGyUj#-IjHVWPtGF!$a5zi087YBEteH+vu-1{F}07P%0 z&iC!*c!XNiz71YJ$KHAkT4q;52V8Jr#$(Y?kY0>!Fj0XFmWBo*-p}KLtm6(WysNp| zRDyUK`N_s4Lyyvo;w|WM9h=Ywrd%6!+}tf2ZdfX~JN&bFVABL(%!VE%gX6EG&y<>q zSADgF&&A~CaUCGDY2NbXW{B_wvd)=q$up4W#t@z&5vFMk?g6;(VBI*-B1`?9jpz%l z(l9+Ivbawjt`;psx^tGv_~RSOZY_}tK+U%$=9do1!H|NH*q-5njFfaFTQ)hvr&w_0 z`vBUSF7}h!2VVCof{e?pnm3yw^0SKLXmmo^hVAU_i!(J0pmykIhF{)C)9_P;L-THZ zvBoKgOA>hQce;!k0IH?&oddM{@Q8B-Vyh{a>rRj{Lp#jK;%#YN?04?tDCC@Sp4bYc zHT-`~lz;~D&!3JoYyF0JEC$QW_Nr;5TLir%j4z&cax}E`1{FQRs*gPd5XoAs^7^F~ zJ4gP|s8JCP211n5s!pN!4_qzYYqVR(1RuNOaxX}yB9iHMAZdi#1oDf2vL?LS4fV8Bk3`%Yyy7Vf@lX~qu#)(D%C{C4qkyH;>BzNzx$V^R#Y*Q@MqVT2O zeI+{ovXNHUvhu1&*A~|Gs_MT+HNMTMdo#T-d!=z^b_$I0$Ft6h>*O2#YoeTWrc`>R z5Dc2E$GEn&5iR1#aI7LbgdbU_86x%#suV+cXs2k;F*X*cr3(^U2Oyr@5upi^_aB%l*7 z)&*n_B=%lhkme6S@E8AOo<)Pb8L-bcau+k(kea^s3>ErR@T7bfdl9l zEP#EkpV%k##~OSZyi`sIT#7031V3l1sl4l6k?56+!u-7+l=*}PRp+zLt$0X=O2h1) zAV`}h%Gnv9a9U5GSm3VQ9Z{mIWGVG5D?MMv^u?sAsKb{ntcNuH1r#NeFj& z^dQZ)b~%U5vBlydqdby@$&lM6SL{1SsHN$v=`S1#%s_Akn;2Bv7|UF920`cX za+P;GeDCK%SekRzhLnzP2B>7|zv))b^Wg67f~Xh}d-3sB$`F8h(wd>CpHY>3A~qT( z6(SRua#+<a3GvNV1GE$BqOArn#-Ra3&L-ab%YBoU?s$)Gne-0l+H?X(ly{Wn!nUgBp z=M_RtA=3W9!E^w?fV!vbTC(kH9Wp~Q(gCGx$+)-VXh)-`|CUGO1DQv*$oJf^3pACw zl;XL!&5s+E4wTt%zDNW0Zo?!(yeEG@~lC>! zMGr+*qS+?1A**+h4c>HX)Mv z19T5`Y$j0-lhKvekLZYM(XWtsOg%kwVAz{nNoacD>K1Vp7Y*RBTlLgFQs*;Uqb`oA z8|X9SJ`x`<dFtbfnn!|d9(@YX^2 z%*xS*dkgtxO%OKGRxs?sY;OGYnYQ+1pR*fNw(-XT7f|*1B6V@~?bik#sw4 zOEDt4t9?B-#f{2nHI`0IbS4H| zOy0T3%bIRyYK_vm3WPl)nE&bWobbDJ3N7ZUqcl*HEMhKf>V^r2exN?Idt+_j z*-oB7eFLr(oUsO3sT<%jfML1G_;R55=}ic&K6XbSmTS+W(oQ z2&N%+P!*qT>TU@Qe|BZ(HI7?=*TmpykaROeZQiV4o)lUa=Nf$fqGX|H;FSZH;+ z0|ERe7vm~0CQ*ccQr%q(uU*Bmnj9X=zkt|vTKUHKJgg7aEOKJ8kjky9hW5ex3LK5V zBS=(%pG)8f@T#Fyt!P`#eo#Nj{&9tMC|;yNIm1qB{|Lgw9+89?&W6C79m?#(fa~X* zw-mJH^{q{Mii`r$!scTsY@(4OiPaS@j>m$rtzvO@;J_KPu9?Z;Ra3QBY!kE9f5Jw7 zr$w`?3Oi=w%!!q*o0sE&c|?FU%ew-fx5!oH@2Sl8${+WJxn*6fZ!N}yf9g5}jf*gu zWCEKk4M5!b39dARt zZ6CZq)>!2&!i40%pyTjud6o>Kdvd*t55ee)SN0Goh7E{Rt`pnfzOG=A#iSKLB9)7i zeuD)Hhf+Q&YA?(j@;Re&Az2vs#}Yfv+%==_A>bD5Q>3d5WqvGWCi9B}3QR_MRB=X* zfdbKxAB#@k^X6_3tl8W1v*rA77>-Su1TIwrXxZFbB|fI)qI}{p_4d}> zaAo3f>&54aH15h>42MplfS(^EFVR zKrkA`Jcs8RN&pkE*}Al9`AU1|my`N{?=BW))P_Ew$6gX*mCFBpV}@Od7}QA^C%W^C z83G@h9O^DgDAoM0nU~zjSTY_N9Cnd1Fver?HF5C4um3jRj};fQ4y2$O0=aM+SLM-` zgzB`yJZKMXI9EZ(9}a#_=nX9?hBaO07*;_9lNpc!NVqfJmb_gJlZYLTJVPSPw|1BQ z-1xCB6F^xfK}xRfEcOn)phXKj{vw7KA5v{AN?8(2l(8!+=v1c5iv1+N#5{MBchmBn zG6>Fcr+MiK#p>iB1QgGYZ7DFUsLNMr;+#!tsax9h!e(LW5zOSs!nsgyq4-PA{6f}! zB4$?X*Hg+{vhNHi!=MP@((SG&J(8 z>)Glo_{^IBCl1JLeK#Ze>ONlri5?3h6QayfodxFXe;`R++XS0ndR9J%Z$v&hcO<3~+%^lPzkhFCu98d{A=d(wQ0a_k&ZtL2w7n_JseK0K&;4g)tJPPn;{K z!<-0;jrVg@?8>+A+%Kz~yI7%=7|i7Ln8qt5#OA1u-aIY)Iky+4mM~{3cMtrc54}R) zFtk4I1D^0Hy-e{_L*xq|%CSrN8U^KBtm8O|D#RynB?QAhxuH=r0TWrf2l(4a%{fB2x?hPwqKTDK!E0_stR+& z2Pg9D5paR0?Qm1CGLX!=^f-Cwya1k*1fsK?hMvwIj#}c?+0adI^V(H`WbEwzrKX)T zIG|#9ZdT?f8-ietpSnj>q6U0G+A;^Q0@@E~7j-p>Gv%4sL!cNELQ8@?tDFB5z}1=) zQV;(@5}0s-+VCT(cmN{mEp(b3a4;d#AjXaQD&r>GOij$#6MvFEm>~Zdj-p0QSN(jw ziTFGY#Q74}zP<<%0JZWdJwO6O#V%dt$i!!6)|wMK)t`Y0mqvva!uelqrNL2l|iYDcNUvhSfUK77OFVLdCG8<3bHUvty z1nt$}?mAMQ0PYoc(w*Mnc`7PZBFKj!V~pJmCvT{-rAq2iVvvsHJdyVwF1&5?mo~#Z zP?Y`VLUy5x*Ndvvffb1hj}J1-!0!&0SIjRpaEy5x`hg|Ys)coz7#J3ALwg+B75^7g zgrEi(QnbV`X5{VB^Lj|OX@OTwvFUtCX2UVUpkCts+d9k&aafwo`1$8!*Y5&(-L%hN zxz4vkRpf0^IdTrd_C)xUhn~XZ_ZPzb;5V+qc76%%3$&p)nBGvo-*Ie!e(y&NVI z9-srVQZMC}ZJ4Pn!xJ+UgwuNOvwENRspzTnt+|01s=gGzsw-fC4|R50Y*Wq4Q4 zec(bgty%d|L2SQ0ABjl0>N*ItUNcz@vpKkBgRDXJNqalGAXAd=9+>pS#^}6n<8_!_ za`JkE3Ub;v!)FIL_3YfAU9Rg}#)FxJ8jg>sI%K-uz28~E$G?$3+Yl}3NNvxmqQ9Qi;ts{n3{TR@`v3%63Q)^P zHt+-;X(#x6V&P-_YrTi@rjVKKM#E*R#xmmqRh8}ka`JjD&5QEviu{w{OiNl&>QwCL6=$lhDk_D=&t#h4(|^;JbXioRhX3gd(*JH*ym;28_3 zX#+K5{2K@!E5icsqnt zsOJe|itb?)|KZ1j0QY^s@~mD3TW<&DWf>shXzD7wYr8^J&{RO_$p&)5ig?CPtlOw? z!A{&R;FpCf&qgUw2L+IuUtua2#9yI5@$>z}KUeipb^!gdGP^^%q2Dfb+uA-0cf_`i^{DusXm_Cc!nJFjx zx(ndp!HSF|Vp+luiwEXOqfH&3!JA|ZitNz7MX6zNrm1Y0fACyPl^ z9oL{3OY^~-b__6Gn_1`nwxK~Il$qLP%g$hnL{Jp2aW#&Dh;KFXwX$*^Kmo$+2<1{+ zLKVBK0W?F79&biE^@K(YjfeZ;Y4!fTjHza2SdiO``$*6+(4jH?hZ7REfgBpC|Hv+t zFA!IitFcrUXGZA|W>c7b=_Zpot!hN}x;!(*_{*|pq!pF}^64KpCv!eA34i>R)6fA% z2nBC9sGjwLw%Yb?;+6Y?oDZQQN|ek2>Ha9r`q<5q)gbfz!@@<^2p}*l7?2ii9@}G5 zuQDW@ql;Ne7#ecA$(WHES%k_WnsT5zR*B1%n><~2A#tJ~Ufjj$#*DwV!9!+LHi6g0 zPe2Kk{XO;`gl2iBUpmr3cmBnzyZth270F^#99AFo5K39 z7y;XJeLUBX|H>b>LrFILWhSu(e+w`vii~PPyU2QtI3nVG&F$D2>E{xbc3sd|If{#Q z<$45Z!~H6)^=vH7lI+7Z+o4O2ti$83WcyeCqs|!Evo7O*%WCj+nX?rfop^4T?4@B? zwg9vUBBuYZyCSf(Is8hz15k#%MFE#4q1n?nYtSh#ovHHX<#I$HEJZY8i~3ZpKa{_o z0S+-i2a6~uZUc#T7Ir~SY4%~k%>~^s4Pn33&!p-W3q?>l{Nt{y3esqfy*hNqFWf#@ zvr_OI0$&DRdkpKAoHNAB?^h?~6+iDXh!++|N9_|NN zLp|mJjTp73Pn8NhoU_LdMj;Mlgxd%Upji0B)*&e0FU>Cl$3%B8CraO0h2ZrEz`mKb zLzSn2*KArqQ%Aan0}CIX<;F@YE{^7_+7+WubO66ED$3oQa>k2iZ$Wpe5g00v1b%%! zx;4a+220O0vDVk2__#>yir}2 z(*jv5(9{E&SYs!iH>xI+o0!?4`oj;BI;%}`1!vR$pQ^&KKRKeD>D}4{fK%%B=fw_y z`$+M5r0BY2Wpx&QKh?WeF>osN9yjpNsL-T*S z-u1FHSBW}?^Ni#?&zDGjBsi(~=j}tE8Eq|=ZjWc!LP6ECLRS_svoH5jW`5+&22>6! z0-YKB)U@}x@>TFHf4)qB!G88DiDl2r1Y9j9DS>}S&@$v*Ch|a4xX@Nck)FY%Ftgx{ z{%V%rpg^Z?h}GV>5u)?W&DOUI>6yh0)rkf!k(q@TY>`Uq=jZV-=^K|wBRwA^H&%nd zJK}Alj>|(Eon_srjYcNJE1!L68;CbH^H30FV#n3ti(YU&5j3qc({8#-24lm+a}3-_)LO4 z+;tmA)S~9e?g5+I>)I;`X;?*=8#=!HTg?--YSx=?Knc{nq1hl_NThqeT7&U?^5ot3 z^mE4?k`RsW{vx?HE@&hY)Y3qo>5TL5!sd|yeUpP z7weAb`)~plq%B5D6@paNgm@=+9qtOewhbvjxJ0BJwqesn6>{@_4~^HEoQT}Z*@4}u zLA%9@U148Er=wI~_}VqS)sMT3LX>D4R~viiw9KU`NS^J`5XQCzsPf7%^FV&HUZtFdwt{i7zQnMClSKRGuZTx(lI{)VR(^0UVrX+E*sJcyKX#r{T` zB}Wa#5&DTaJsmz?>o|8n8tMToLnc-2ToM&4rHZC(Ar;6hG5@9MN~BR(a0@!GLeW7` z<-2K;5t&BdkguYqUK3+eZZTUn!|B&nfhu;c>of(}0?TN9lID8A-$T_0;&0#P6s<%7S-tn(2i^w_hm5Ow{AL<{XND-XXy?@66G2&%EBq@Kb5S?`K!JLKmLs#vTh{P^~L z&lbf+sG6wWBE$}^D$=+|aQ7Q|f96I@uj<%XuBbONqdVY9f}mK(x%PsN&o5pD;yNcc zlc_i;O`&|!gk6o(nOONy2+DbqE45~OW~%i{Y3&M;pQus3SV>$S<~1=G#WdrtrlIAe zRHSGtO11pE?f|g^j)H9C%=`Eac}F{L7q7Eu&_dQV#eqwr`E5Ita(-af6Q9SBNEw|N z#rYk?Hc*~#&5?`Nn0$^|g8l5SyqEz`Qcx?U!=e(pKrI0xWU7h9z0- z12he&?Kqj8Oujf{0&^B}!Fb_Oi#eEien)r5k=F#9P~bOkaz+FS166O`*bhx?S}3VKmMeMb^d#Fn$6}Y!>VZtnjw+%!F`TRY&@T=UQaerA(j zkR8TehfBj{FcJq%k_ALcGf1l`V)#;409fnyrY^@luPzO{o2i5d<{{M{!xgkY6>~UP zbcU&;?p?haeL2M6xnpo1K6_2;ELG(xSxMlbPa4`bpB@=~w$y)Fgza~pdA%(dkk)~b zvlH#eFZ|Rac2ibk(x1ZkX;?Q{6Rhg#L?HTouRP4SWF-NQFDLbB?LL^TCtljw8bh7< zY_(su4);Hc$128f!W_mMXag%R@^v8Ca}I2hK1S~t$fcK9Nm1VVrAP5dax31{X5H=J z(Ac+Iu?yP6hE~?^B6R|wBsTjZbFY8QMI`TFNIBBe9|do#++BU8yrZ=7vb^oP2yh~S z|M~bbXxvF6YVHVo&{{&^jZ7q(N@+18#cJw8>AozJ&sMCJ*$^3GoXM#wRAJq9b$!l# z+@-tm$3P5Exj>TQ9fkBLZ5Fg8UA9B|ZmEyo9X<^q1O!d0OzUfKd&+dvu#oHI?8LZ}bD0O%X}JdJqzgccw1NBaRN`2yhZCZ*BCb*?CLqV@$% z0OR!I|2DR%IzoDShbAC+*44`{o{=NmwW-mq$Mkg+s*>TeIywL}!Cz)m7U6?Vpt%WR z`8X}`W^5!bO~u*d>~p=VT#8$wsKa{SoNrku+`Yx^u6u>peKaY6MNAhs%J?}nL5YY7 z@t0Q_75kWVYo~Dk*;?BDb)ToiYQ&Lb#;N$RE6&q-qx|*S+zrb#^3a8B2#afY`pR(z zC1I7qPDP>Q>LyB;6SJj*SF%)5e4etCiB{Eu>=SSgF;ayjc9dSWH;;V zJy(*&bJvg2K6&F+Zi9(1tx1Z2@8>%hO?69FHFix?GAU}#s~6UasUEZJ1vm1GAjjA$ z3w73PA@yw{AJ)-RrTs}!Znp!FP;6fKL}k?B%Ze+^JK1qtV;qn**e={)yaQ~%#JeH@tXo- zjU^Zjuzz0T`4MY-*_+Sf_QW2FUZRc1Pv%{)-CD~)xq(2wF&jJ9cbD{#1K=~W)Pg1W!L}a>+9{E& z(7sWo>8Q5|;xExVGMFhPlcONy&_=C6Wq>RmR_=F}>i?s_H|n+~fXimL74uCZAT}{2x#pqh zTK}FRX5h?23Mb+;kVbLPw9^Q#g?NHeL}Lh`!ictq+|xf>PqNvuxAj^^C=$j4(f|7a za68&Ez(?raWnZFnl$Uvr&+{TQK<$s@y0iVel(fIeBnjFo!y^%|y+kj`*Yw*vrly0x zza$7!{1U3Bm!Nbij$_cWz8N>X)#oR?Uc-OQH?WS-hDS&nOFkZ6p%aeG*Q?3o#%m_0 zRM}AVZP8V9g=fxNu}nrZjzumojcBI=`(_THrOpaB8=I18wi=DN`OH_-{SL6F>^Pn( zCL)AmzYc9;Ltgj9SWa517)yZ(+KNvHoRHhlv0VxcRRXHAXjHfDc>f}B(`PbjGxl#- zYJ1wn1m>`}+8o$Ar-+(mwsc8Ov!@h~VIZVl&Ptw{#FKZe4#{(oE$7JTKqB`)LLu26 zNwUKESU&jIHaC^a{hTcgq|E7#thAObsQ&ZE{{!Xu3gnZKtz&CK?(!Sf9uPlz9B!+I-)_?s5AMNg;Xi|V@KI;x!0Cmj#S911aN5x4;8*~k}@)q zLoDH~G;xA^DJ27$xGv?vAGFB4%NqA9fT_>b86?mq-4@*A6y6IPnzA;DJGDfAk|d&R zJ%}WoNrw0-#!_j!H=?o~C%e_Sh+Y%zm#RQJyX=6Dbofivx!XSZCGq z(n1#ha6x=Wn;i|T*x~Vk;;I8-Tmhzm(T%{t^(tV#$%2q9m1F_CaGzGQ&*e1xivE{C z=LKVyD^fh>$v{;!4~~Zk{K{h6eXdXB{g&$T3Tv7wh$T&rjz#*&{h5}qTeSa`{SEt` zfS`BdpY{&*IowRf%^0v+!IoPaqpMTil4nwrf{6ALG_32Aag>ZI$$zJlXhUAJLjA@o z2AoRk%Wz}j80FjoK;G(hFO@_KutltEsryD@IeKci_B4vDY)TwmCO1%uMc}G07rD+| zoyxJUVV_kZlu%9;@*AgG|IKFLbLY!-vQP5nM|`~ikb*DBh*me-RHoinYT?O->s~E4d5c9P$+8Q)K404z!w@ zk?P1Wi0e4ONCKMz>{RlwN8{?K!zVjl~H^UQW8dqg$+1Qm;@EkArLM=WY%k zMNIYo(vAt`uGmsyGV|Fp3X!Cm+!m+ zXvYefZaXuwntC1Nlc~Rls_<~-qV&t7i_K8ZvXH!KwEXisb|elzcxD*b{X}})$3%=g z_>6=SzUjh|H6s8HC((Gk9Jvm#syc7ZFgUCT#(F$QzuO4Nc9{*%j?sXRxWqB|N@L&> zC=h|uJ^(g@5av#@Y{OVYvSU6hhamZeZ$Ai~g}~}%zDa`jKS-uN^)Az0lKwxkVq33N zkjP4il5dSF0mSkYpPZ_dS;x+q#+z`O~ zRAe|JXx}o9Z0>n!yDjuDbt@&5`7&!0YpfZNH`|{{baNM4*rjU+kLC_jOg%6|k=D(D;Yg%b2&%GU}fF=H5ktk&;&;Ndqzr0=+tJ%o5RnZ$sc?P&zl~-Ud z?2f)YbMb2pI9XaAvLH#fI>nGRiW%+mprE;H_im!DdFUk0cA8s5z`eif(8|@%5&qYe z>FZgu=yYv4i)JV2dE9jhh9#IvqHkt2a6F+|`gWCn$avSu&n29UM*W%Z% zLRN!DSe?Y4qyBBhUEr2o6`kK^pe7BCO}>xNk6hkYa2mBC*Dqpl7#j~JMI7+pX2VNz zw0$3s_%pY(v5M7W;bRzm2c+j7J6psVrV^3-1l{5G0(#-f4>EH+xa``O$6zX{n zF%)Q=u(Cny0eHXFN_fYw_)eSYt>|lyeWpc^+2_#FM(QGI{OKkx3nL92{DKjZ^hul@ zOZUK;mqxBRqKM{uHLp$wJSRsT~CVMp_nqtOnRF$Xd>S0RKM#z?Nc#%W4W8 zK6#+O_Xb%G2D?@Qq-vVhG4A+1ez=d3ifDKz3=%wWh1dGzd23q65#;H0IlO)Ci`LV4 z9dKBm$k&NL-cGNo^kU=^=Qa_Cxgx^QIx~H}c=ky) z#Elu?Bc`<~t@Bu_^>kw(AL0u{K+G3qD?j|n2j>!2fS($Ukd<)#*u$u((T-`!dmNbM zSU94b@sNGr)__yW4!HY#wFm{w}#X46^+mrq(4gi)VGy!=QU{OH!V@7W0^Jr#!2 zAzBG(n((VZh^KNOUUKcvL*_naVnsi%17|Ej7L}Qui5h$|I&^JFGO-|U=|(u~J-p`0 zhPBj<`v^8ob<9TER|rEEb96E*_ZinM;&EcSr#Ktd*~?Cwu7q2*!fQ(^?e#@K?a_*O z(7#GGya{;-O;MPc*%EDrb~Qk{V#BtVVLl3t+$4l*#HDUNLT>RGzcVJ(Pn4W2cgAe4 z<9{^o$9FnxI^z&^`~MPeb?O^E+9-rOe_4EAi39SiA4wpSUY`(Q9CG(XJp+t*-|)9r zQy7;s$4y@$uIS)^~B(&b@Ww)7wAqhID?iKyg_yDUwSf`Oar1a<&)Ve%W6mUNeyawb5vRCDKJ^wAQ{vu=R}1sVm2KoCH#!|9l+nV- zlP&t;=kw=xPG3$$^OG=0#>Ju3-ZoJLqxGe(4QH$QI2L!kE?6iXG?xvRQGYNypMW5v zIsxKI@IQbX1nA1;yug443VbX#bLSJp|6{t`4yy?$;UF`97pUY7*ro~JRX;$uFTp=e z6s0lr37nmgb#54+ZOUF>-o~YY%Lt*V;2jA;1F2-(*TPEv;+$UH&m)FW<@QY&!#d>% z+BNpfzk?}YjNx39y%$|07(Qm^v ziPvTCrTtU9@-1_6DJ({q8-q)h#~Hjf~b<@TQzaM z1P;=Dx>6VsGE0RR5lflTlbCMO)=o~Yx6bisdxE(%Q$L8ZaW_z0qESNj9Qc1;aq92V z*9$dWfT0oLmB>8Dz2?Fq54en0 zb1m>n;3_dtxC=<89_`E$H^uQT$FLG-YF-sni-V`0*^_^x1LJU+;zTF*CatCq7vIoA zUtVzXq{)K6&fODcHX-s1{Dow>{E~v&sx)hydNp5LYAPKwdZMW(k<56-MkWy@Zd6CJ z%$G3EkR`S6`~6T8p{pMSw?6r5u=ZapcA%t;VsJoBrGi8tku_WFwGQ+gH;eYgH)BDP z_E85jytg9j3MJd{j;$SWi$_$nj3M#|8j|UH2}nrw0H}4zow3sA)Nc3a7U5Kem@+V+ zgn)&SuOL=QlQlUruD07~@LB^1UMFKhC90Vfl!4mdqC+eD=I5iPtqIgFXlC$ES-hXT z?xmu&Q+NR3<;G=(lKD%-C!^V4!)+`{`~r6(tXO@(P=xPJct-hK|E)&ta!Ct0>0

U(iU7X~;?BbINm(Oova<<^8BFA0e98D9clmR0YyVk~@Pdnq z;pYjApsV=p~nHaneEL8z=4H)!z@sXjd9 zfB3)8QCiWSgJg7!Q6ZWS>=YD%l4HgV(a{c00z~_>>++dm1vAPxRTr&_$R`p4wd^W+ zX)%xzzh_#+-8kbc%mp_XjMNaO`B09uf%s;X^TU3LJ(ACOE8I&@ogXLpQd=NU{0_Iz z{}mhju)(jrG_)`~iB~HB*^m8}R4Rp-cDKRA;7#1-^52Cjk+%0-QS}|vq&ZaL145FX zQE6jFZ4p892EViCmicM8OoR)qk$?{=-KW=4^`nPGo+!n+x-~@cst&k*#)VB8d^9Pl z7YIrD+J(TsFePHPTkt#LuR0X$^$#elJoU7KXG#wO{IR}d!YaAI(N|w()9s0f>+=1! z2`3)evBVZutj$UCOO&Xu9!JKG%F@f?jy@ZFRjQm&FL*XK(#R$dICwwIV|p--hvcRO zpDTL^)D(~-_Vp#{mn&Mo*39_2xe8ivrmx_$9@??VvpW+eizIr=SSwwe7xssjB+zX9ubJ&VZtEQ1bxeH3E(_28(pZw#tOY<(+K zc6;uB(494Qk4Lj+-TpC+Zcea<(YG)*=%~5o+*V(sW1u(#0^>sMhzvJGy6p%6Yj-^x zIyXqBRGfR&C>PHw+T+!)kWHR?e*RHaypt;4ZG@lN&ZO1sE}RvloMnkOAN{!qQr5*Q zg%h3>;(;;q2y{%H1YG?OKRRh$oEln?LfZO~zALnMM8zI_dC3+1mfr~6 zcyUxo8ZyBSfC+Cal^&64kAz0;RX=zmMwR?*GnYcWtk9umKcTDl7J%{Nf zJcima$U4SgOw0vDj4lSFlfRqzv>+CFF&8^JLSA87b)A?V9eToA+o9_j(^;Gfd~dzQ zyKXG1zAaI&$(ED3Lb$fO(5PcxA?!E_BVV*^soK4awj_}U6(g97jX5(MmcA#%_a4^A zhet78^)kF1z5ajk)7B}FdAO~p=EaQZ1>2`)Dm8Y;Vnc5El$bH#(C@*B3zm*$2Hxq*JL<>vB#V*^`fQ`YS>y*9_2@P67 z37`0FgQ_3XR6Rib9~;pXWB5^qbll2E(IV_DW`c{8I|H{?O;m$#S%vr<+?f|QAKaXD14nychTdyH&sRJ;VH9_i4N>gR6oW1MD z^W=3j=Vk}<46%C88^1!vvm(%a!C*n_#2W{%Z4YRBS$$=21toXXUfcFVr>bF}ryR^3 zIM964O%Ph>&Q{deRw(P>@ zv}78`NBdT00RZ5x8Ip;cy(C6WgZNc#vcnKav1(3A_1+qQpGk%lzTW2ic!#wZCki*j6!TW?YK;gWvzj`}VzFM8)lX8o$MaCp6Q zXm5u!pAAsHNp)dzhH{5R#q6a4ILJce98uY5p^GR=P*`EZ2DhSn%Xt?FX@Fj2#jn#9 z&kOsQb$s(K&I_n~z!XHW_V}}sCg1`~u=M40L7_US13!zyg+G`*-!E3!URCn#Je3C1 zW}EP}dYP#3PC!Hl_ksJjRU-$X&}rZ^JtAJ30M|e=H9n}ni{lCpm?9o>Db5%}ZPlBW zu#Jk7iFx{B=8g|m(s5i^IDXqR!4#eR>7C5NyZkb9+q|gDO7bjA-jX#uatN@mB zVQ_{YnpqxEsdon>VkdThKgoVYrXA7XHfU)it;18z814(h-xMi6w#nG#0ua@if>p?x z)~SGOSAjGIaZV(p=na#GIr8A}e{!E)w)>#iwMI{RX7n8FJ-)LX2vUq=2oUYVfrY|* z(BXVgZ5oAHdu79070#bcAb1#EJ1CePs7aG&E6D-DdrD&Zk0$Hq3a`y4Fl4}l{7C4* zwP5%ZDX|Prrr9RuTZ;IFl|%B(SV@D^8;Zv^=th41)y=EmL_IIfHT!y_HRuTko!S;`;;~mz}73vD5N}VXixN0QKA+yLVBX9 zNQccTInub66r=RSSpy0f^ntk$rJzg*=rjrV?L$o?n|AKj_pD2ioyfYW?uOUn^Q($l zuw(x;0s;C>DU5{c7cePSc2Z>L@lHb6op`f`|Fgl*T+;WgE8=W^%>{yg>5i+TkJ_QB z5W~RbQVvN;qPWP1^=VjNGwn|ID_{wbI8%~rnESLq&d5KDV-%6$XGn3`sp)x*BkA(P z2~@pyp$q)tT{R$yaA9Hpr7AM<&E+y|hF(R{l1&p4$B((|@Y4==aYXlnysDMj#9M<- z-D0{A<0~A-t(TEt*C2#qO6tE2k4E( zAgP*;F2TRFBnmAOaggymPtj8G=mMp)za+POyZzQh(LowTT8sV=iJDd9WPgF(La=d0 zyi05TDp%(IRAy=!OTX~{6ij8i4vsn3nThfqdL=_fQeyvr+OA{j12qzc|huQ=9M)o}mdlZNbCa&Gs!TXk+v(;v+!QEysGVye&jg?gEy0}To@ z#TIIHfjhj07wGCQF=VeVW5&fmB<42WVZ6AmkLQYz)pE8kfcRtmUl;kWU*Wh2Ss1A4 zfIdnOO2&2q0c`D6gxyIW*2vv|+ON;JgW+;f_KCe8FwpAOdTXr;#I{9wLl9R!rPYdx zQl-tSd2vp?-49VOMHMU0M4*`i7cZy{f?fw&`+Nj&TL$9$fF}1&XH>-?{{+@==$RI? zvE|lY+y8TDFirBgeVI9>dM~i6EnwCcexP&}^ylFtZ@0o20N#vtS}R=->;Q5zcJ8## z4C-cb{%e>T(vepp#@i!tULstb`A!o?8X%cTJf45?RQFp&ys9yJDW;|}EW~u3f4W}R z&yp4g_Z$rSm%^RWJtzB z2v~~0;5ipX+vXto(zL-LM&7~fIk zMA~^P=oFE2Qd4C@!1l1-hrGxy60dXs&rO;9{iul59SHy&HWmh31%wq8J7(?;uL_*Q zk-tUTuv?2vQm`qkp6KOXF8QYrLK%}gy^=MB*Uz_N(@k3fP+~VeYCI%TsyjbVj-u)2 zUBNM+(gOf;8VUs_n$k!JQoDCYG-=I8$aF03F{W0D*B`Slyeow8Iml%>X8j%1#dq?jSx;hs#NI54G8^HkJq)_K85b6xL2Cuc)^A;JKP+50x;TVMm zT=fs%)CO?lqo8z6dh$M5YhF#Tcr(r`+kgJAHesgEtRiLli0>KY+y^@+Dzr@kE z@kRC7m0vBp+_y~^Y|Hgn?!cXX6A?B72_5zaz!=hrgi#|e`cpF4Pj6Z<1T9qYdR^O< zdE?=9+aWjSd*GgZiy2L-%%IP#jqL6psMIVzu99|ul55DPhlluH?3jt}@@s6?20I&Y zjVCAdJsB0-mo;O5TgrrP+ngrgos>+q646KkLs?k~q301bqjK%bDCF;b;49ylB0h%X zMJNh^FfF8#h{R@kF%s6Om@o)Js;!P^Og>YKR%Ah-vwP0U@Bsp*#6s>@WuIf8Y1{8* zOs4o&7}3>6N=l)@R58Yx>@>+&V1!??oCQM9ldo#qDb~v_!DZ-&Y)#)>WntWNuV{1A zhcf$&G`EXUc38`O5KVuy$N&NTeHy<$6evH7JEGpO@4%IIhsn{UiU;VoY-2r^gY4J~ zE&10Q;3iFnHw6|VS432z_j!rOOOf=ZFpR3EIGjX}$N;|C&0Qsanw_vu z#c8_kTPVO3K71d0v++!&MGgcB;RzZhxqQwTReU9@Paf73Z?*MMhZuIkDg$%h zhoV0_yLBbf!Vc>IcTYb-0}#$e`P|2af}(W0ZX_!88^_k2U^T9>{+zlfA6>SCCs?@P zu-KeAi&3J=fAvYNM$IjhiasPip0J$Zw^*eQ1tD}tRtP!$IoX4K$CknBrbR^@V6 zNW>X@I}&?5jPX)m54+Ggz8*sE1-_+1Oq!ZZ%Pyn;wmsE>>|%==1j^+Q-%C|ZS@jtL zl7{r1-)v*nJa#?C==0EwLqV!}ZGGEc@);(iPVxnYGYY}oK3xMmbdnuS*yPGq5ym}@qJ4AJj7=j z5#}HeT#=VVAR2^<#7s+l`_{miM$Blj z0m}+@f9vB_nzjdOLwceechPW;;!7I2hU4Up>}-`ilVbS&1@cJbrgVhq6eXfsFLbcQ zBZCCt{2|Tz&61YoLQ&d%-FPmU)qd_`nyjDcO6%E%Y`8}CCB_3o1BBwlbU76)Q64-h zxLd9yY>-P4n!aIr?qk&qQOyps)4F;L8<~M{Vfbl5t|q)m4D?)LWg&zoQFYOVwJ(iG z*|4i<27{O`5uKPUTK+k2P8I6RF`XdY>92_GUcmrtPVh%26MqRTMGYelHfgW0N!6An`7IW~|l)gTZy6 zU9*eg34t)a2V2HnR2!f;!JFxWaQ1ty-kIVi0PMRWwg}^n>P{R_s z1+Npv`>tvTN4A5p-eMU2YOmOkPI=(enNk64+$#oe08r#7DL^}^Na>)Zs$egFut3{* z!TdVEw%#&7K{VGJFtc+vrRDBqZ8eI>&bb`toNQ~9>VY>ie~mv^C(-pK2I_d9wUI%q z`=I2=bG;_Oon&=CAj&m*Vf3-|Sn1KT0=U)>F@arg4k^ zeRHYxLZRT`L z__6QiVY6u*_-O^2N|`CYc)4xaO91x@{|RQkHUW9>L0nQ4gGGE|KZc!_LOVyj)l{at zfI9cmm>yr8+czvl07+nvtesRL*1-e1h!Wor&|=psrz~DOnAJ^8$oB7bM_T6zYc)#U zbh~!aJT8x|i%V!U9k04=o2M~*o5FfUTC-BXpiW58(ux0EbqLA)&7e_eCOcn5P~J3z zfzZ6CSKmksy#fD603~fQO;}6|h!&{Q4yv+~=4|UdC=ZkEe@+vi&mE;zhq3q~LMs+p z5k73dJz7?U4~1kd(dyc822$?|^`u9H+kuv-e*E@ek{Ggu8?XQx3BhF2(wiqB_pbTq zgxp;eji(Q11+)-MR$I0wR)Py0DYNxp!5hoD&l4Onj8q}++S!fGd_}Ew-cs=WVDa17 zfqbpuY$_Gk`v41gt-Lnu`OVxaI+)nkQZR7nx2w<`0?{=So3MkTRE});dAUyIZfgs@ z^zq0iP$}>UG*C-tusI#oqx}n>*>R?Y>?SuA!3}+7sO~HT2$e1R$!-#y ze~xdiyvV?{j1Rn*hLeW)`|m__>r4N3U2jKmVgHM$kh^xBcP#Ht>{0(z+hqAE3U#PKA*ujIV3zO$j&qQUnFiaN43^*wdg+VnMMjTS zXOst#cGxOY>YT9IeL$)!{Rl^Zzp3PBBIbTp3X4!9J7XB2g=n5~P?Cmo<1{PCG|r_Q zpI!C-6jrIwm7fBTcA=JPNJK3j@j!j!z&Ugp!YnB$3@zn-%Sr{`AhoBsIdifafB`UZ zd9fw*a%^|ItqHJqSL&l3Vdv%ic^#Y{`In*T4d+n{X;-cOXyE#4?pmKM)X$L`MD$5P zEx#|79*-}$dmZ;lZM`OAB(ed;kBw}Ia7QK69W+LD`tG(KM9pEjUC!58Tfx# zgo;+9ctHrHA>YI0PzsEaDu#hH_xtaeAvqht6bdbTQL=-}#oDTWW^D&82$Q5P8O9iQ z9+3;iw?AhG0-vL^hRO*dHrW4#~n`49>G{j=K3WM}L)52n% zh9h$LX|8=t?xvb)?1=S+D6w!}v@+j;>!r0h+m@NHSiIKau1p&`gBV~XOC|AHd;=_c znX7+NMu%smaGXSSBJ@{Th!MjI_K>HErg>fi)fb>+pH9SNXSQd=ZXujlW@}}J^GGfw zI;Iidi4=j7BYx<=bPB{;1=YMpiI!&6=N413luOb+h7`kMH|LxnfWo_e*@kvw7g5JG zZrwb|!G8Q`*sId@MtH5gFdQ&|kQ-qxoPvRx5dV6_E0oH}QV|`L(2NZbarvg|0dw{I z-~k>4I>eKyXIXYJ8NI21KMkcZ<>JS^l3wXj1Lc|oZM2f~$ZCaAXo>vIPM*=+U5Z>q zh+@Xzvs!(#?C7bwSXeV13zv!3PCwYNUBEIBK#c}9$UuGkuN$*duV$y?jo){dyQRVa z1y1bJ?pfc0jLw;V?hN03NnFhlt`5QOD6uGZHlG~?yIi%WzYOXr0f7R1c*RdZqQz*{ z?e=j^&jHcUEgM5zZK>W}-i&qGt;hZ#3!HxGV}W+p@3arOQtC)TXEp~>g9xcw9s!tU z4FkpR!9XxjN%ix&~o`&_ZHO4mv^=_)$5z(?uU zR)4_nAg)s;UD%NT&~G>fJRN5fayuQ5CKd@@aaIdmBYG%rll-buRd`u2hQbFShS~-~ zhdB(^inH}!DkN*a}p-Z%23M>k)-^r46= zoz}+1sJ=QV3k%4cyh~zy()K{i751cHO1wj>%%oVvL z;CA5PF!`?;#GdYT)8UttoP_sEf|0lD?C=f<3^&5PGDSzvzCnBdsZ!4`fZg^(pUI5E zGv05%xd^mw-rH3(apR4)_3CeMUIds-(3jJH)dy1fE3_INpAvMUD6i6|`oG6GG-jat zsWYTxn3r|xbK3iHXAjLG0HvlnVxc#&QmlV7%}to`7SoM$qje}X3YyLLBE#ai7yacmis(0Bl)L1T63~`6zid`tbO|*C^j3PS7k`>ALVnRO6BvA|D zaAu4cJu15w_+zifJ8(w1OMi2;;b8u(pl-{%eI4y>GM(<M&-anszgd)WQL9bQv@f>* zJbM7p-S%z5>E)r|Zh?6P9(fjRQ{_rz@udWqX&jT`dJl; z4ku#$b#5j1DylQ`C+;4ilf<`3Wl?N)OiIi+5!YSPe2xoCT%(@0o?!d?IiMe)#y^2v zPQP{%ojGW?@2YPffiSyxY_}(4KnFnfIV-p5Ch$s+|BzLt#avgt>^g^33X-!Rv|z@c zhcd<;KxWz2k8MyV1LF*P)46Gfe*E5eRF%DZKY$i8WO+LqwQ6qOOt?r++OY{zsB}Lo6(*bwf=oTm1R+L$; z!xr`Og&Xl4)8bQV4UmxYHX+ee-aZ}`m#!zmSzGsWDF_`Ro5YRxRM?&g>X9UF4`dn` zfy~phj%|jM+!MZLDZD1tYnzXBR3xu9g0vuQ3}&qZo$>PKoLXqB_5n{%+`1@R^^>>g z0G(v`DC{^_*UzgQXBe7t35lZiEfYU#jB6jzA(@el*J<#pbkx>knMFKY5c(9I5~zEL zj?(lW3Wx*6s00bN<6`sg&a@AZLOglOEAsVMM*v8K&?YSH@cdH17Wp|YUjOg^v=NE% zfS=#fpxb_`jyp121=;R`Qpi2Gr}d+piY8Xy-rb^4aoeBjHfZ9oY6%)rdW`B^0q-ZG zbp7P48aVz4DT?THe?t$)p&p9D8t*X``kj^;?S(2Bs9k?mP_2o95sxnaDfawdwccW>I5}?wkNN}IHLOk#6(x(5Vc`k$&+67njR-E zL^@XrvNNr5J302el20mt0Wds#<}dldCzZm8)rmVU4@JAAj*9u?<{i6eE}D~M@17(V zs|Vpw3+z8szkbfYx#|R5eD<7UfTp#gCn8UZBX4^ElZw&_tEpt5@qn-}-0B3VlBQj4 z(ukq2U8#v%bZs-`k+oQY_Y>)U(TcwIBaqhb-n{%F2}sx^5J!P*$WGmB6(f?ntAfMpP~_%Yx{23pZF z9JF;)UGcI=^{0CLS4?Phv6x+2&)_}nv*+(fx(&v@C;y_BC!@jRjr68deaoPD4MIRx z75>J@7|nF1p7TYkp%l)H5U$t>6w++0iktj?b1W;t7r6lg^&RXJ=v?_{ThW6G zo#Wy5B27>hhxAc1n)S6IuF!R_hG#=@qG_g~8_c8zN6M71#)N)e`7NZ{45n(yH8VKp%8IH}XomA5;e1oK>a3vNVb_lkqr;r3JcnNU=yB@WqF6w_=B$L*C`RHSYD znBmFtQk-uUif}{Be22aXog+OB52*+_bu@M{XMvCw$vI%xRLgIpv$gJ!-sIRyit}ah zq5PuR47X)DjS4jkP9YgFSsu@^#q|60uxeL+d5#Xph1OYXfZ<2@s={y)JHk2}$BAj5 zRjzqAEpxN6+Senn*kWwq@`tF2hX`+jX$#B@D3l+kK<;YbyQ&OPOx$4`h}4NC3qk-g z!_NGRWTvT3pr_BEWW}R0vtyq2$F4*l6$^2%=cHpgRHvdZG2X7~mHJB|i zkNzP>{eH%#R}$~q7J|1p)2MRq!ja9r+T|)r*vAq{EsAI-_RhwM$z6*K0??hXtwk@v zW^{ygalUFUtxmNO*!N0E8T7RVwUqp{y4L>1Qh>s5BFBIW5S8qkgg=7rvm)NH#l8eW zU-keI5!1*$bT31+cH7k@9mv?O4Jj7Ir(Ns%Lj##M;&tkv}OK`8WvIlQ41FswR%K)0~(7 zo8w=thZwv@5XgM}Bo14#nzRlEkL=sGbQFx{<MF~G+Z5Mrqez!^Ni(VTB}n<0pI?PFy4Bm&X;d_wWreBa_DeNrMig7eZRAlX8| zXVv*q<(PbDZd{6)HF;|qf8_iGVl%PqSgO36qMEXq<*}|oUn!k;t zo0DVOO$rvaHx(vi6zE-faE6E9sgjNr)dNcx!OqL4!&5=2sVL$)uP*SBXT$?lY}&ED;xlIPvdrGpg# z=`s@_Ww(8dDXW{{+lY2`@JPvzpMKnCbc;_w9CsOvMg3GN76NLXvNe)qD0HrrcAVi8 zU71||VOdR-mS->oPL%9pXm!3Pp*qYj{5Pj$VN=lzcWHG zBIWBnR(PzL831Ej=rwf}6q5_X%|sIK_oltIrfHEec=^!4g4CJwO;Q#$ku1DMD(e(} zC?F(w9ouf`)g$VVjtq{kS^9x4H#GNhc@G1>*LZovBlsmtj9YEDvBtY#n=GgOGd<345d5r`RgY+oLWe_wp;%gN)r#X zJ)Su3L!cnur2FEj?1EpJWf-X~A&)!97i_d3=64?&*|X^R_U+0j z(~+ErhvBxo9TS8|JCOxHW6~*nr1sE$W#FaAG|wOEw^AzC1trfXLII7IYm-BJdO;~E zHgYuc|C7*B+mXIf1Cu`H6_Fed&zItL@j1g$h`3riw|#S_n1(%E#mVqC~L5f*6bPx;m#|6uh zizrkfJ?>dl2O*hS)8?_x1=BG{o@r z!*r)oXKfQ%X>U>X?JCJ_6c}e;Iv< z&P01&5HqA$Sa^dqwPKcHzXh-mpVcebI^WjwP;lN=3?M4HiU=vp^Y+kj=(F5D*p-(Y z8w-HzeuMI2t;{m8Y49Y4eA zO~r{^x`VbyGdaG|hTGMK^!;^x+ov;xM(Kfp?CH{cMsOaKfAuT+_P6}(i)<%=-oQjw zw)0`r0n^}e=4)e(ex;FGcuKw;Y~#@UN7POILUx-kFST%-4W9olO%Pqmo3-4hjFVAb z)v&n>Zrm*Lsf6!ekzY`bFQ@@HxD>cAPyGP{Mk^5vX6OWjTLA(n_bKiQ4F1PNA9SJx z7xyafxzgFVUe0IK55hh2wY+O@!&k!s>|Ru9Ve)El$jz1Oz8Ltj(40lX5ZoRnAo9Mi zhloR=1_~eX5ShZhj z{C{H{kx-3q^h8wvt}AYCo0TV}7T5r~15Bk>~%M=t?zFn}9qME-1fK%}Q(u?=PyQ zbB!R;sxw^4lWsuA2hNNcsRx4=eR^S~?T+o}n}@kl$ntoUaNs7s*PqMq-#du?6DRr< zvq!AGrt=mOio`}fn=k$-A_)c~S{FhKUJ&+X^XPiZoERXRPd0x?JCB9}4)9)m`)=Od z1Vr%gJ~w{macO|8J9~%j>&Dj&>CX)gjpe;{@n{l|{#u3BHX}QEmWR%R@wim0q=yJ2 zMa0*~NCvzoh^a~{5L!Y3orfHxC^|(@lvx-Z z^5;o)+Yft(VvjZP@3E2G(DPh!vX=_dlSAbSvX$W05a*QQ-oJg`A7h@u>3d(BDqrNI z;zO?M%aFFb&T#OUh#7w{!>oQ9F31c&2RpdLyypgA(!~ZuN6OpLmf>gHcGqp9q%jNJ z&avDv%1lwR!-K=}i-cJIGc6#Br^2nLk`~e0e1B|s-$>u+jFa;qr1##POAmCQ&WeQVm;l_tuCVl>nVqEi&U~$Yo4gAD>0VpkI-C%>4y+4%GJA zDWrTT_IR20utP{_4h79#y~p`ma{}KK8AFnVRl7kK(_7yz0sc+fOm7+XkU_Lgqqaa2 zl^X_Z@;AKD-s!_(=5wzC{DjtsF$tg)8-hYK=3`}`RcVu?g_?X-tfzi2L1O>lf3Fd{ zdX#2gyLh8ZNN3N}F=RL0^~2U>3eu)n**Su|v+b2ID;S31nn|5nN2}l*YNJC1C|S_C z2qRXn7>v^Il@4|!n6k}Je%}Mv7=PB#X`!O!Hh&86BNZr&6DYjk7jMVbeZZ+l><4|( zaWhnSH=!$BCuU5n)5CDk^1f0_Wte6@$*u{CrdTX#hTzFpX3aT zO%W83`c$tF+oCFHj84-I8thyK!BZ!pazz}TZOZg)Tc4v`41}l)1_jyYrEq|PY#4!3 zxe{ywMq0l80Y!!}BX>V!H1`$>mkmHvbF}0{-`p=2(&65Szy>9#xA7A&Vjc^5nL?a( zD5cdkjaXjMSg6puxOora@lXpf8bsn~KZHB0RTet{#n9;XoRXFJU1i{xV}E3LsdIgW zu1 z1SRfh42}X>5=qmiGTHmOlqX)2^;({_FR94Lt71uSm(E_KYY@%JYd9~W?V;%R%4HgJ zp`%;y=4hA0)W_xf~4MR>t~<-mg)Q`bo)1O+7zPekEDM|R)7Sbe6#H$axR6DYV4yaU<5((<$0Bw>^R`V2 z8h~q=;dVJ|WX=;T|0MIBR-QvY#Zc{6(*9hXC)!-_LKkCGF1R8{hT9w;mOkd zzOk-3jbQhNgTn(itn(dfrIPaT5MuOn2cGh}$r?ATCc3H((gnrPJ$0R}u9SkEFxWD9 z=z@CEMdz3#bHNN1?_#9on^}$jk33kiSMZK3E729NbN=(AAJ_7T zgY}u0NIw5y`$NaiXFOT!4mf+twM1p*#8l$6=pmVhgyY7QcqND z3b=Iuabi@Gk3i7}E>ag;9yM^p*uv;w*5^08tpha<%)j5U`BN@n0K_)h?*H=}85pv) z`qiw|Pu*gj(JJgrimm$wTC_l8H5==H9fd1H-Bp>=)lYF6NJQ)4aBVp3C+Ky=GXch5 zv!w{Z%8le(1S)#n5d^rNUaf@cs`nZ84!p#B!=SEiXF72#scK$dujXD!cIK%0CB^#W zR2naPV4?o0-fQ!9+-v1FyKS)%`W|}YvvP5HNH;`6V7=|gAwG&fCIaVE0RJUeJlsNA zjJ)RPC(FpAMV$}Sd)6io66bBs5TAC5vPB2O?bQe#6af*x>u45IT4_E`uP4`561Z_v zy1^=T43C}5GSG4RVcsEQFU`!p=@9%piG4E=pmJg9bAk=9DN;B1N%GArK{BGg=vCnr zlYNYqIOnOVJR7R7V5y3NmJuYQ=9OhMTo@SEJvO%}NU;GHwo_Qp=ForFoH!Ayh}+Se zh7IEnsEafL{mQk)P7UY4NZ2idxEBX*zB&r;+_vkmadhGl`Jc z?+$~l4xNFVOflD%7XdbF3GHmqUV3gNbRM+~%IyEwKGfQ0$CwX4*hKe07yiu>8s zyGrVS0Kh3(Rg4|6l_+MwIiz!#MJinDHGq-RP?oI@6gA4x!*RoA+=1TJb&MBjDP8zS zH|;#n(f^0J`B89(VGp<_oCR|0f>mwoZ$SFk=DFhryb4b~u3NJ%A6p6Lk``ej65I=t zBc(}x-hNtx%KSlea=tch2ulv*)q|X!=a`7|yUK-=8HNzyPnGnV4rjWeqVXWsi zXYTi<=N6Yki^5ciBUxEWaZ2H{bRpoAulQr)&C3=^yCJWQ@^35jR1foVb`+rdnG zw>#$ky)#IxMw53x7m7JYnkl9LH(Llg3;bNe123w`=wm+Kpzs5OSzj~ubiC-gSrj~r zIg(Z-@>5X~iJ-NGi#+p)s?TSdJ0ZJTmOs_XQeL7+cWd^7hKR~tl1_nX1Qb=Wu95Hl zAOz)0DK11!!*29KJi4Qs`yPIC`0~6S>>y1>r8uM_JF*=`IEB|3&!#D+oiplvK>}Qh z^c*}|-+-<43mL$~J%Fhc-S(E^h_!1)g4y08Jv;j7Y)@!D>2sXJXMJeclftyu71S5$ ziD}qM4wl1i+Jm+{RJPcrv%PHN|DYLgOC_3l;tPV^VQBJU_Pk4L349!K)5?8DGNC@7 zfuN)F(!j&G<=P+3SjM4{6-a@sbN!OUfy;ZP;Zl8ZDvjb-dHbZE@!?xu@4H6~wt(%Y zcGNxiozY@JgU%U&QKCo9;Ct7H&wTz8%&Fl7LdWQRXw!8u&xSebS%&c5ssvfv2y@Do zSSKHaa>W~6RKI0?1;2LG5rk#F|6*NV4OKQ1ccvND>H~5|cfTdo07nRyD0g2~eJ~;- z)PYD#X5Fo_F?!danlx|j6|JPr4rr2RFHjtla@#wW`a`JL*3S`%28^3ELYw2;qOzX? zVKW6wPE7TfegZDWqR&(m!Ap|N)ttmEoLRU8e~5Yi_+%@$R@IWc5jzj18~7k=3{r;7 z`)9ZAj@WujVe)WCZ-xsqudw=<*KKP+Mqx;4J3^{QmV)MW*9uvtf7N(6aruW{7b%FebCGv!lhdEC8pLq~c z3r@+z3xtOd+`7xknbbJDC%0TGGD75(lNbSf$r`u zokwwthJ!#4^Ofvv^#Z*r-`U<)l%09Ko;{lBG*H+%Le$0D3U3IRCRk)x}kLlx{!*M0` zn4pde!4jH3PI7}mG)DV$A&CC$1k1Ow#mq>w1;-L#yJG5M#uifNxJk(I2ZpY#yuXva zjNn9&lJG@tXiwCfJFAv5b}+e`=P(s2hYYog;kt|59p z&%8ZvACp$w^SG&=vS*3Gy}52#r~^S*{>w)2}{_wIV<=}?a~8Q0yZI!49ywSmwvD*WH( zX!jj7v|ddgrl^G%M7C#Fl)d3c{-S4GP$Jccj}+L6WJU!WL>QQG)h&a!yhz0y_s|SC zh875#2b3WF!7!-Nq8A3)ox)R0rl*$mNVt9nWBG0g(Q}1^kf&`k*n01qf*dszq)V>D z4~iRn&vCNO_Nmd(#ABH0Nk%v7qVD<=db3qPzF!jp5tsY2PH%W7u^QClU209Y(dvh9 z%|lYVKq@!Z5Pvyi8)WIofve4G`c0)tJhoVi(yj4)Zh;20DA7VZw++LXTsG-Q+%D4% z%rte%jVn(B*4KWZAkDKM8A6*-n@sOK+6$E=O=|rF{*V(^`OYu3KG5R>-=uNr%6@|V zV0W+zNp+iA%<|D2fE#+7#q`nQ*VC~YN+Jilb)=GzsWci94fv@!S^h*(i%Qw6wZ>@i z3Ui5aT6&fcr%6&m_;1x5FtcNg_uh%kCCX}13BtRcKjaGZf*>NimPBOl%kfpn3y_C^ z1o}t%pJHp7xmNHSJyh?BVgNLavF@WR{^8#W7VP`hy9_m~*Ls+=*w$NDwtZr{nhx#V zTxn5H$A}WEotIzT^}enxS>L3+225i0`_vCRb#P{@Zosr6+5_Fo`piCp zMt;E1E3vj@E4we$6T(Mv`r9FujKqly5%NuZLiek*S`zU7pC$akcQ$T7A>sB6JZ0n3azyby>=>XsQ&4p-%1E$3vcT0oa23zv(tpMw~2_0k**L^SmDfLgHOR$Ne?IeHM8=G!S> znLAC;nR?Y93iWP0h@$&Kl+s0;97BE8#__f`CX%v1UUyAzZReg{@bDYGXA51af`m`3 zNoAF%hdRT6FPQK4N~g+nj=`IqvrfjlK7WSe=ATojgXB;P zZ~$5i;WFK-nSu<07}_G6mdb5DbXWr=&pQ4yQQ1gcLt2er zJglGA3|lz{a|ObYRlT}zm64Vt87AUGZ0KChxwZZsrIPH688%=iKN;3+aLJR^mOfR# zE{M~jVb51i)D+F?w?>>brNRbk#evVTr$7B6j{PpNy6|=q|5U|_=d;>7epLNOZ|JYa z0cuF)&EMd82@yjx-$V|Sl#SCxxkxIxp0u-`U2O%MI7B$_5mQgV6z*6G>+r)KEPxQJ zvHRN%S7BAjG3miR{`>969D|XkU^RCY8cEp+;Mh0uy`{g@Bo0dX18a{3CCHA^4@RDL z^h1;%SUcQc{Jus_jLx6f_5)MkpLMzvei4*7at_e&%hH{H1I&CKpvhL=?<$-24?7Qimv-oDJWwF0HwvC@psNte`iv97l#M4c%wK z>0yt!bGbop!+FOXvazWon-LLLt!#jyet#M;VGiGq=ry=as}BUo&%5K}(4W;V^odq* zh2LWDVtr2< z2SOh@70M+>e%g=KE!&sPN1r_Lh3ff&l!1)4wMG12fl{x&t{%q|g4$A~2{*vC$%WJq z54T#8>Oma+`?-;5G{#{1Uv9x5N}qq5WH_5`Zs~@Ea*ARdxflQZS^`WQm{D#$Mw`}V zT-(rsGe?YTJM1T@Ul5~_*D&jH`B0}Qu65qyvt#$zdJHRqB~~>LA|ZDJfwz3$rzO?Y z%e>?|J{WY{Z}20rS7xlfRYDM<^}}!i0pI9!&s=_B-8FDf8we@Dv(XkKBJH6VX5454 zF-B6$M3JujC|OxX5oYj#kXzaulf4!{B)H~&gD{B!;Gg&yU#>@RTmQBOAF?zg6=5c`2j-p~ZP2 z7_-hP>s@dr(VsAyVOQ(2!qp3;JsY}(@D!fMc^`vw_d*ZGcTm3694m++OHt4%XHLdi zF7kM>TU<&ezO_ChOn-yTL9!=*mmj3VPNN5w%K!nyqm#V>PWFEF#kM&wv_Q&OG*Cc` zYvWFlQDZIGRNKBl`pT=&(%BL*%wFd5@9_*o8n2qZ!y zx9as$b0E+?EJfEB^LY!IiAegv?7`&StH#N3@+??*jwLHs?&)<){OfHO)ykDa+P}t7 zmbl?x-$ED_e+_n-*nS)T<0Fbr@go^7_Zu``1?A8QyRS3u1=)%zk4q$1^sqoeBwz6h z!}M z%a{pI&CxYtoZI2Ej(1{B)a=1?gXfq?=V?VUg?d#^y&(y;<|seL8l0FI{oB4T>4W=A zq9gGx`sZ$eCMC2Ii`4!LPDx>*F6cS9wqsj3Dy)C^aus(II$X*9eRbkB|JXBq9@X}x z3${iWi*!83A3+T?;7R>{<6342dLVY+vQtuWP1-o0|NzVU6s!-T~ zKNkG?LEXoZWuslpu;AoBSiwDkxi0@Pk){nFygU|ac9U(zzIey}`XPiKN;Ea@g3do$ z>jBS4Km{{s{)R`YW&&_>JB-H&nMxZv@0z^3tvT)*8tb4rI5W$5FA4_?Qc3&AXk<1_ zT?pu*LQh9+p~dyf3^1zu1X~yH3>kYizWd?wV)!UUO+e|b$T7xYh@k)u96ZT2Iu)3g z%Ky1G(RHBBTTtsSr0&7w-Yh2@d$-zI9xoD&AS_MIxS}lJ8oGwlh6|9IV3XquOrtt ztYRD(dFnF`CWyk5`Ac)0Ly#G%jCDF!WB7FgBE8Y7#Vom(V$akA6TDT0hZ;?9x5e*t zJ*p0yqFFziM4$2oWHmS=!30XVl3)cJ>5Hrlg{CW{t}gr~UwF&;#caSB=Gb+wPUsLq zk$dj+YvujTkoS`6Df%Bn*m^VwaaIxJN9(+P(a~vMPew)XBXHUa*K0m`H}J24HqE{= z@stoF8~E~KL3l`oOx1M}22o^YfG35JB3i<2Bzmvgj2>+8nNv{A%XVKzISOQ#HI^}n z+(*nz_VAic@Ss+nAi23v8CezAP;6Fr$suGD&Mb)k>VeZvCm`CLY8QpkPb%G{BftB& z*m?Fz2Nxs;Z0wIW<3;DF9ZF{6AQT@|+kKPnxrX9El>?%Dl7Vfvh zC?2=AGrBz6ub~l{aKDSJOx5QF>Chu;pN?32q&wKbWAT3MGiuH^#255k#1it?v{{Mj zjXS#LBj!Bobh($=e5jcSH_<2aE)(fBISDhyPNPrdyqH+Mmc!JN_4`Bqli?mE{LFi;G3YHoxvk?rOMXsi8sRDZ>T8#iJq{E zbux-Xg?;Qa()tuG@ZDIW=lKQ?NuZZ0PWtHg085b>x|?E@3!D=cqqwOP3V%sP_N6}z z8`!eWvFL}pT!<2z4Xom7aZkMH6e?q_2KRPmpn}&MY7~V2JU!P(Hsqow*O$q1mv0vb zkuX&acCytuB-M_Sk4xVH6V@2 zTs}(hvHpzc(|RY)?(E>w7{3gZFnCzd693;IM|GxFsMfU#pwm_Z013`?IDBIG00Je4 zAjKd`_-45OE`P#dT`+yL?%_@Pq;3*(F8`mi3f{GF^0rR<9i{Va@K+7{E|pOg;#3G1 z8ry|kSk}xq!g0tU`Z6Zx^%C%od5_Ha`+afKg|m|iNYwQ%5$@vfK_Pc|BEg0kntSBQ zE;?PUD1%auO`1eLJYk+}vbC%uS&y~^u5h$Px-1eCIXSnDmQzsKeh%<@JT7JD`Tq(C z0S*d)Rw@63CDczLY12Mp>ruo7|Bz7=CM zMRUhTUW@(dr;kyRes1=6@j&Q|p=&ZMq!r!vlvp%;gE#f3WcHv_Mg6R&_b?Vr5qOlI z^BQ8o(@Ymz{RwJ&RB?Fleu@tfae|2gi}nqHmo)37a%YMV>C!0Om<0FJ-^%tlZseKC z*qjV&-o%Xb*y`6B1C$!}>YHc27zuX-4qH{0#q*Qz7s))e0rn8IX zf~R%z385mp6*BjQ*t5g@ajL|8W}=zALTWJqjiE=$4h>e93+aB>IM5`=pcu43rxoPY z-ap~pLQa%n<0;MLEsK4if`t%kk>JJ`K{Yt#8=)R18%&EFRelhcZ+JpAzd~kkKmthacK|urn%; zH-zqTsYF&3lZPnMAox;pCw0dh9f@O)?P(h1^8{y@vt^!$B0Ri&2aSMJBi`IKHv}tb1LCaWK3A9xBD&8>r~rhAF27cNUPUWyFnej& zs7RJyeTNjHkc2P8q7#sLY@nn2WE2ZRWDVzXQ?ES!5T)+_a0m}ufV6?ysihc-6wnDw zpdW(9RgsMCpdkt`%%B>Hz0l^ira=eTQnAjp$xM!8brCvq0loZGb1l)A7;4N+%|sxf zCHVWK0XuctRXD*JK_atpm?n#R5F{~murm+ZyL(?e{DK5ZmmA+C{nZ|{#9hjP+n5U! z!O~X5bCh>kLyu8JCAiaMLGpn}7YWtjIRrfXwx-#ZGNR%FmOAW@kYG9t{zkov-a+3* z5A)}mJK_4uMLYe5LGakLX36+gVB1_kBlStk5`9lM<)WBp;$q86giB7a*X713IURaQ zG}V@8S(cu?3R~<#2|R9*3G2rP`De3Qf*GKMRcv77V!xMDNF}SSQ#W&=IH2eVigXjA z^i=)yX*p=V7=5N%_Drk+zy^Xfxb?4IU!Ok`_?@|8W?+TB-u>{Gw-?brDQv})s2&Ye zF#p|_0s<~YFWagiqF2O(Y+!^EVERe?9nU(U|8O8WRaKX`zv2Q=C>8~@s}@Q$B`(6W zbXWKplPYE-|9x~zM$rWCM|mDZvd+Llso$R6`#hK5E~ZNZd+f`tiVEhh5Uz9M-3QG? z{0w0#c$efggh4{URyTCAQ-*7yQ6sB(!hKWiN0fu$^!6R)fb=+e&XC;#dK+D>6m>WZ zaLP|>YS5TUCdO0-ZAfSUTfUx;#cm>v(8MfO_LU*CYZk*Q6H@FesISSFkz{s9aPX2O z`TiYEuN~hx|2(09@r){RYoI=@d!&8=J%y`owM=+GfBmtchgnBma3tlpj@yFWf#I5! zb56smz68IX6v>paNc$eEk<$1X;ymL*<w}gULrS;m?n6sl&dbzFiBKR5RhC^Q zdoY_S<|R1Tt&{l?sRZoY|Cl7aX9q2x6ltXE!~k%3CA5{HF1|1C2K!_3<{w)oki*6m z54Cc!SxB6I4IF@x3g#7cQ26$F;i~RI>;tUSaNV2KdS8;ykZ(}P6jBEYi=u3P+R=|K z_Q9B)In8tehPdB9Ym;t)J@6`o5*3LcmvyrdXP-dxPEoIAR#FE?AG30;#E`P?p;~(n zpTnl7#mhFwd$mV9SH`w{UDsh0q4i|>!7AgziB!#`o4KkPp};NAk_HzY=WqxCj``B{ zei}&q1hsV*vBrIcQl6eev#+>9YxbMKLwOtcddszGQa{VA2*kQCp{3U$GX7&VoV3CA zKEu3@-~cgD!D zHQD(T?=|)31kOn}4hhR%^M$yR&^1>Jl4reoERJ4;Y=dhTO zPL3m~*XlvVG@X8OioXHs-7O7SyCRYopoNJD3AWy;N7=;R<@!ZL#kP6VR_IVGN$!Pr zj!d#2_mR0{>^#>TE>*vwdPDI>(p+|_ZtSKCuw=~V0bsEd@tx&ZirHt!P&zpK(S>>g zD?VRHqpv0wPTtppqb`|>a}wuLX2@#b4m?VYlm&5?A+u%won$8aeT0;F)&Bph11DpO z%(<=x7K5UmshU7KgPU7TS*z|yJiNzCt@m4{Lf3_@+R+Lzb+>HT0M>MHew8rcj5%(K zJTGX&7~diH=e_ zaPQ{Xuw!Vc1=KRRA6B^azt%5!+n#68_;YLys88`5m*m=>Yz9wokR2LSCwpHoP#WrJ zI{jP>!?1J#*t>d)AEs}oWH!d5s%3-6i&7D54ChUA=R`W-w=N7m99l_-T7E}cp{W2i zr5eL&{vruCU+K8+5NiUaUxM)CybChaPj}%`lSxac4xMGyz|`$*e%A21qgnu)hbXrG zUUR1F5M^s-M=F|2Pc;f0lf}+0hwI#*r~`V38UafkI3@IgZV#(REwKv`?!)b}7)+BV~zpnq{Z-lcHpE&1RL# z1d3Ded9TP>fnGd!ZgDFmRTptH6u$iCc_3mYmkuzW%t$lOQMx z)U!ARNSw;S-~QUpU@IU2Wr&`A|KDMKY}$`sIfe)AUn%A9ddn+T2>2-*=1&FM%m(<= zsPXo)5Dl?qB|0V_5RuY2=#q4l#LrR!^EpprgU%*=mj7f}gal6!KbLMUsp!24t}`!o zbMM^q0qES}O9E>%VA?z}K;kQMypuOiLy@Rb17Jwl`5`vw$$>lVtu>4JOCa1)Lsc3H(=^1ZABKlo&ehn*Z#W?pEse=b&K1KkXY0bEO;6m9DoyZwP&DhZdaz~ z_|&nu9XSFkTu=Y^t#i;7l|D1iJG6QpQ>n>MysghH^{l4nYF`i-ocF??XZHfG^nc!2 zq70or>##9zmrcOU<36QVO!Am#FP8lYj(3X6G=-UyL-J`~rDJP#ymFh8vSR01nSzy% zY%h+9vQxa>)G9sE7bY-odqDv42EI! z;va~o+C$-6{Hj>=*DHt`6$4zM-(```f(dfSumgtgpf~!#wGyH1W z_;m=!i@Y+Vww9}WJ8>w*0a9={tVlG^q5Oki;*$0>+mXo8J z03XUd_r^mW_SZC{X4|o0W7KFrzz2}>i$ou<(Rv1}qEP8KU=Z2V6I%>LX9nH@_Ts_t zOVAft<)dG{tR2bAAs4blODdb1B5foL9g~+^u7f z=nq-Y2#k7B<4|RKEsk8QzR2Xmr*z8)xh-hQ;MgWkxN9gvuWj$t*WM8(E&0oF_Q8R0 z%d6m_n-^UTzUIV{@MJunW)XdQ9h2`rlRtl-|iFcb3 z%_ZMX0FdvoUoR$lc)$%xd@f?LTb`$^1S|w1_7-+=DZZLKH*G&!x7x#_zrH;1&T6{X zy+r-hMOJ+qp_WE9L%Wd?$?n)42N&UQfu$ed8{zaer+Y&9`N&(mMd$hugf%&4yi_fxrnwkom878;HT zAS@^!9?xprn<#8&vW7KQsTyNcHUKsDc$BD$@aQ%QSjK8;Nd|rZHnOr9<3@kP^ptE3 zI`4s~azICsCdL*o@}&D5n-?OH5mwgJc{lt!`-wqCa(~M`NkjgD_s~A?i6&2Y_P)gj z0GA#DyLrR+e(J6@3NM{=Ab7p~g3HWFBn6aEPtf@Z^-_nFsRn*g)L z|Gb)Ze|q6Vo|v&unB{nZ9YAL24xD~v@~Ip@%GM?kdUZTxs_$S|iGT?_DL3fc*b35y z9A%C%&TJ5+=A8`Sa2o6@Ro$oqcLc2Z@&YRBN~YCgNPl9Hlhjo zmTYg4U5%Z1{C)#|%l9q$jEtwSAc9^OAWVxiWbGjoo{4|rriDd|o?=V#bTyv1>=Gsy zH#sS@2eM6riG?+Z?Wm77W__=Yj>8QxKlUva3gm?^#E${?;gibbUti+gGl*|OP4=Ql zrgioVpe>x0z;hdH=2qR3KI>Dlsv&)>9LMo~0BMz&+bHz0i}Y|`DcG zCBmoiM%o`DGNK>-a~?)4fe>v|?iJ?H3IMFyKICbl?nNDWy$$7XYAo%7_%ZX#Xp*Ju z`^vsK$5E%6-Z7~4VY^%dU>&yS?&o>pZW+U=&PehQaKeCo!;zI$2@p<^4-(yOq<{^A zV?z$yh^>3n_=b&0{m zLtTkt!(DbWJ%u;%nh*gZ-alPrQ(U0f&mG6~v-2A=K$^-;0Wtuc?&G-iJ`eyq8RVGOOY-1I2g zm=g=@8J&iF9(I|st2@#`Oma~Woxm(Z=#mQO=GOa|hHlMx?Dz*vpNgesa|mNO?YP{F_FFPnD!TbT z4Pn1B@_+B*z_i?yzH={MADOH}^bqOcj{2YolA;`}_;-^IL!zy`FMB0YAb57=u!Bi} zRH`Gn#S1{)3y6F1o6)V9(AFmnO~lOex7N!>bx^J-l_N=)s#iaZ&V-Z^htNDtI2WpR zX@g(Z8YnsJB@J57fNLgqtSB*TS@+UzQt{MzJLzb=MC>VSiLp2fvRmcMtqDYZL==%ZKucSn67kL!bkGrB)6?Wa$r>;3`F&DmbXKhf;$I$}wv<0U$;+Xx@` zh0I6>ZMo`mPIa+4bE73w5_7Ao+Pm+jS!B9f{iXDCGC#HSv(3!iGV0uv;*xKgIC5d`5b{%(aApLFKx^TiE2ld_CidKFM;NU8f#8;~8UNE?6{{tjq zM5Ft_B{;9-+2uOQhSH=#Q4yQC1!{umeV%Eciaq~ zPj3PdjCU-B+_7^5$vQ~6zUvxefS$@j`rcuR@OY^^mJXt0^404b_vbt^p<98dj&^`^ z5&^{%?^U2&I$TtA3o}1r4M{^m)3298g4?mmMM79m+GB&a-MG(fn$ngrA1i^RQ0Trf zdIHZFF=4tQs?8#lbw~eIA!g$7cYjz+q=QwW!aSr?*m(_-*t`G%Wow^+(BNctQ~59* z-91-r=3P8C(6n+%p{sk!J3DLH2Zy6(xcH|d^L_=FCF&?}w7HPhi!7#hE>q;+x9rQw z+a_#Iy2=jQYdR-X^GNTHy8X&}-6f12Z!sw=Ah%yT11OGExQFRc-P?mjZMV6DOSd9W zX#x&ybxmuASqr^bX%Rj+OJbSwiL^`_+bDl%-4`p>TZCwwoewx=VdMxcwp3N(i9^}e zTt7(W87WM^P66Kp4$ILc4wyBLIWG7II!vh92ZVUHxx&`SbPI0yOb`5_&E9&qvHQZ#EaZ3~g}q7}aL^987oHVQ26EKm_`IUQTxw zfs{W8C*3@XEoCCdM~u#)=n0s047r&u?N2j!`a6s=O*FCPQItX6R!VhsAY#V6>)ZG3 ziC>=MriKp7u}NzWAi&s5CuZ?7=vi0ezo@2F4Wg;OV*zX7Xgab*tr)3zmjrEdL2u_2 zjO5q3=F#>MJnQX*I@BO&F<|26Umz?eCI5bju9_8Hm4rLuc}KGRuyR`7vXNj*S%N%}-3wCv?S-|<<=_whsK=C7@e4@@)8n~NuYc_tF^=DX;?TdKJAzls$ zojf53>loCmTXDA4W?gF3$u8x4ozj5Db~Ueos&f{gf)c_HC6 zdaqp^BRo|^rtU)ZjOtBoH6lry``bKXXO$>`0-3&1S8Z&n%~m_~h*HK|YDW9L)r4l3 z5*jJK<^VH-<`k7j48oRz{InWOH6QiCuxsNsE&`Ne zRZpX3b4XNLpfZ1fYS~2ktZXz;(%s{7Z3tv7pV<%F(PE7q<}=#*#+oPTjCCrf{rR_s zTpZTaHMBNZ4^qc-FM=7AF^N{B;qG#ms`^$9E4kf2ap?Bf@n*AL4SQe?8%O9->V!;XG)FoYSrk(6jwq7j19YmCZ~hrl^GxW<05N#fGzag_HH+(h zxW6!^sv2V)c8twJS&LA5h}Xsa=FPbVP|7{=78da4n$pl)6O#6mM3%XCFSa2EsL&I2 zl-MGJ)EnO*ODB{}9l^Fj`P?!q=g*O535*H%@{_4Vl;SwD@R3@Z656YToonI(`r%N2 zL0O2aK2APn7LVFM2uv`C>GRd$SDm7u>-JD+N7Y>=T{SM;i~)OJB^_GwGfH_m=1#o% zjD*ck!YomYFUi5M`93f+ZQrFx+{ zxlOt_i*Wm`F*Uy1l<7aWjbR6lMUhL)6?2WuAr%MlMD+#J(1atvsZ$P4;0c|7n0QE# zf~iS!Q~}oqKy3Pnt*db2PDz{w_fJMU|+qy(M4OZ5(Q1;dd+y?kA{aG>=oybDx?D zJsxh@Q@zu-Hl$e`9zmZ9-Y%!OR?8fq5?V+nx(NP)ZRdJYnb3G1Z?{nYXV^We&syln zcMlds%Gs63E*I#cfPK8j>D1pX*|0FN96k_~V)r8OnWkso9ldGF^Z3>tG{A!)CnnHd zQl%*B1{tQ{V{g99ZWIgJMeM-Yrn3OTY&swo$#A5QIL!MXgPlom6UU4RAum~LPAjE* z(*8v&BvyeX>uqo&G6rfp9rs#rBD(i`Y%~oL_D^VYQ9A9k_2XJ#$V#3`wu3L}U2F&F zOYCNAOd1XREpfV%@j^iDL6t1c$?Ndn6J#E_O9{CyEx?Cfqcbg>x23ds^wpE_xb*^9 z$gC9>G?!|HLag4}su#<&`(WPS{G~iVYpg+F@^M^zx1XnWdIa*z(*3`I#8KJb^4r>L z-jVn@+dSBGZ_dxi0<12O@?#wu;%&=7@HiNLtN#tHwA_LiP*L{QX)~)&;7H;QS@)g_zHD-a2cq8gKV@rNta<*s?~;q0BmfI-1_u^ z`E!P|0J3^^&x0)2#HhDZn1wAKa;~|eqLg*=4Wwiy?rRszox@2kufc&016_h zbV)LXzK`i^Z;%-cwOJ#@&;&t_B;<18PbMksij`TQHwHkO2%){NOF%$T}@==5r z$N-z$o!8tHg%74qtzpI`nN`igdbS(wgGT`BVrvwheKtR78m95^=+GP52IVJcT~>7L z60{j5i_aK1GU`2VLtr?zGGwF0a92kWBfxibr~XEF&ulZqdqda^*C*rNH4VX*x!P)u zWn5)2x4)cF9>GK|^6^T@uUR~_I{8lPux*sKF56W)v;yYr;6i>5Ga0p&+SSorE2<6S zy0l0-C(IV_Kb5>5-tdQ`tY~&)(=8V*l3gd#LkJYPhtY}R;ZqJQ%Azv(_riz)unPwY z6QPG}gBHGAymghBjHTb}SLYj6MCmuhaHrjUrI83aMB=>t+`f;lH&Hp>2~@tcZ%OOE zw6U6d>p%c(jN#;GzgGn$B)4`FslzhEQmU&o9z7Q=ScdPCuP?(9-6Bqg1k6=OK5y8Vf9&(SYLI%2arn zL$R!lj%IIuv8_;6sJsG4)_RF%z-EAV70LfEXh~~HdqTH^I@=J>bSLWI*UQRdln3MA z%j%yc(UGP?Zyj8-^EzzehFQ4Hr9npr74;aVonNcUzC85+3Fl%&E5-T=cz@Y+;@se? zNgQpMs4yhaB?I>^X`S@{#*6-7-6UjUe8s#bwa6R`49dfBBg+R)*Lt&UxUosa*>_my9ftP17r$v9BgQ(QYBFGRh?@amk9xV2gEN5xHbTY>p?ljo?BS=9;~f8`Inm`3Fd+xqCs#8-q&$;y{d0PQ(F4C3qx z3H4d9Mj)`zEL!|FXDXSVWLw-iY_O>K3X32xX-(AQk3a`m5H@+9QL8-&D7XZw@Hvi^ zK5ki(p7Q(5MQMxb!uS^u#@q#lI($EkZe$;*DUX)m_yqtY8?*!#UpUx$V5N0sAAM(h zZj5mKlJI;|j#fiGDO2yXIARNS@|gX4FlkAh2}%6~z;!1<$E2m(;T-W|RCi~A!L#Mh z@kcb8vDrWcU@*NuGbwBYzI2${Q;*2nlijUM*wtzMC$m1w;j?}6 z&&$Gkkv)T*y{&1-l=}IJ0++TLi-ipX&rv=}z0!f-vV}q<1+9pcJ2WEIketIxlEti$Ne`WK`@N3?sJ68FBf z*>nBeuM*@$!W?S>L`-ys?rn(jmcu1HkJf^I(?3dT^OBksDI0{GKD}0N$B6%z#X@x9 z=8BTFTl+(i4$dj~drGyudR|Z)0RNz8c1GHXvj(@(Qx_b0r^FZqPvX>!2*J%Lk&kYm zG==kdm~9H(YMqkDK3(bGBnHg#Zk1j6YSeJ2`OiO3l1G1(tz`L}Dz&!X!#ziwt7&30 zYkCGa2(^CD8>A_OgcswRRFR!%cg|+YYM`Y-?X~Ya(u+EgUsVW@kC4hS#q9qW%L%~} zq~h7dH_d=pbLmXbD=dIaJm0tZnkiY@D`Rn%Gl_zSZV*Sez3OQ1m#_%^A{3qqpmp`t zi(ubH)+-k&#<~qcpX7)#>j{{aOEYy1E*4lrG#zUKnU#<=WZBLFpZX!-sJ8*_didxI zyLE{?smY9<HLlQh6FZR;HqBuJdiRAI;HpxQx3L1Oe771%&+s~yw6Q%w3PT*L}$QU~6 zl?(R!|A4~;FXJH=&yUs^`ErQ#BCQVy8yieWe({-guK;>k+J?@H04Z-?I)l<)$<+~a z?=UXpjKz4EKGw?u0Hs5VfIQt>Yt9pMl=By)TwPd9$t(dSVix-SK2>xV4PtMjGAHc7 zeC+y~OS%qyZbSyQh9IdDk_br|K-Jb6D6DOc#fn)TnSjBOa`h;1!8T2=&SkBxTUzWS zLxO+fxi|B=#8|<@2UfM5ErmU#^o^*33$E9S0sB7x2K0H>mr#9YZ!B=+b(2VNA@Hk` zpeA=Sm1qJ@e|FzFHL4*0#4FUNwxY*&6#4RNvN68FL~87&YTaqF6gx8-Sy(+g_;K2* zY%&6R9Y< z?~2R<&1?wa#d5oG2B0e_L7)4#UxWlW(mwVZH}A?Y=UWR^>)ccE#f^$%ABd1|Me6B4 z2F#0v()b-)UZ%W;sr;(Gwm0`C-0c4cus=}fJePi)NF~&eSrPL98et9(jrXf*`dF4$ zBQd81YA~J92))N&?_;_&S|R3Fr_yUKk2R8Ga`S%-MkHbzFqMu+`4Tu4`d=b!*ZUgQ zDgtoAX=d@xe&_NV1$K^FSt1HKnc_t2aIHT>vE&@B!XFXOx&Lq%g&=PffMc{+<$0jh zoPd@;0RKM#z+|65ZhJ{p`KJ7R0*JLYjE9P@o$|KEfvNadt7!YEI)m|2_3T$f8wDwuulS9=yO!2th*^~@vb|4ix^jD4mhX}0a z_;@)W$BfaR`ELVu7SL!1nPLAOFU0!h^l3fp_8bk($zXJn0YHZK#nY=!-L=LlTCWwM z7GAtE)Ue;Z2lRD}lYkKypiKVWBl|UoJv0$StqM&MGxS@vd!%qTCiOo@CzhH>X{ehB zQn1{C8p%BBM&F0H`U&t*(S~Re;u=XYwPn(Fu8`|$kF6S`5$Uv1mEB1gD>0lcRSkK)fR$M(sgSu5DA+5z8I)m(Ej3?f6IJ@Dc?M{7!5 z=EGO!0GR%PDjxQ>Lr7tX&p4lmQO^1ecomejA)?MDf=AgF8L=AH*>X7PpLi-wDQ*2_kb{;h087i+cg%Jw2YX0VWn zO$twUED%vE#uDIK2?|wK2T2QjC2f%9``7=!0 zTfrXjZQ`!R&>vG&Dwiw@i-zC`zW4mVo$cK>_$Y#Z+gu!!cKmxjm;yvyHteU0`V9KHYcj===$y zmLrRM@{hUszJ}14D^sQn?GoR3dH35DsKLH{dh))aMm9cY`~?QiOe3IaV4pVVdd}(# z80=ClT1I%OGw_t6iYmI1z%V)jkURCu+I^}0)&souF3w||<(nK-VzEcvZoPXMHEQo& zT*)tbG533ohDl+T#MB{bRr@Y|RR(01oyqtEv-qy!#SaJsSr;kK5ZxLLufVF;9JZas z3YYa-rJHxS0i=fW!WA?lCuZ3O=r4$K-;J6!GA5*Y;AaDE)^V3M>FHqNv~(Il0xtP8 zCTRjGhg>Adowugt9pgTwQCJ&_gDP(CSr$`>`(GN67G2ji6a!!K@I?4OgFQ|mv&^qJ zzd~^I{@LtxW8P3ZmxTgY_lN2^TEBks-Ip=Np!9XDj$HvODwon9wi`r+eQ_NU8lQjQW|OKdoJdH8&8g)3*^huBW`;({GFicN9T?K z@}qZ$!7Pg5l`BpXC?MPwf(UW&iHb2+$6A7KVL=GY?t|6v=iX<+*?C9t+5DUR22 zP=QE=F~lS^sL!n=o|IAx1WDJH;&yQYb&b*YLF@5 zn!Jtp0U0fsaWP%?4Zo0U9dmmJIUJ%UmG3>-*PEJC*h_?2%z<}ji>!#a5WoYq6-8HU z^)dZ)&cBfGq8OD*J4i-y=B=xh7$jis%}YyFmwvR?;vV}E%=Yz5w@PqWb8j-?AZAYL zpQ=%DG5@vdH^lbHc9Eqac#BwE?)D5rBxNh&rqKMm@nOEoZDib1-D7n#9nvIZ9*wIp zf4wfswqaq2jSQu42}+bA6Mj#`y%)jKVlEko6L?A>Qf3Xvb{BQv^HvCMSDRp#Tul|8 zZ`@?#HvWb7Jr?}0OrZ$rSu#D4M?{4*hDm~5tG|{pJmCkiCL;ueGv$FOnUU>|P@jNx z6);lV(6l^l3H6%~^euBe=&}x>S?_rnl+1i0it7V{7+2UFvHutB^Q`WDK8xVFiuK|w zk}JX@>qd_2pw0wh73rsx9Ty;dK3G)-BHiR;uy=T83ttj4xwH7scUy46Oq_{Gy}HWu zl#T6F9=mzgVt{rM_hKNkRD4mn^(fM-XF+8rr^r{(pXU}&tRQO@HF zzU`alPqHykQHCq2uvfI1qoq$ZLhv*bl7`1l{^G-eJD7)FNeqBid(YZBb3I^Vd_Ae= z&mHv?Rrp$W`&Yli=T^@tJ6OjgGBt z>QLd9OmjI&0mOjHWi6^o*mKD7DOIs8xUf!R0G{n4ZG%_3OfXwUZsnlNAD6ax1ycIx z>_DUE_Om&UxorkP5ei4=R6g7s8bR(_BIqeu{V!g%z<9Iq2Pr~X79V4sr$SNZIK4*! zd=Odb;%o771RCuoe~}InKj)U@K)C%C7~@KundqT6hZMA*x4{q35(9{m zyBn~mHNCHC{bQtpQy#&9$l8Z{%PbUFzRy{L6#-ZsM?maJ{00Lm+Vh76FgM4c6{bAj z0wB);&Nm0ScmU`9v{q4!@Z28ac+|n)Z$4fc_JlEzcX~?`CtI>nYfEz;Y6o8ZmKHA6 z7ngqS#D|qkZ<>z<5QCVW1GNvBm(v8cmdJiJKk7rPnYsQQRg6jt0bSF=!JuW19JGqT zDpI4t*$XCu1G7Jzou~mIC-|yX@LLiWT%A?+l zDBAX(M<$jIDgvl${$Mz29#BFQjxYH#l*ktmxYZ%bkpC?k&CEf3v-)}W0(i9#)TTvh zK`*1O{p0i0PElP4pVna&S_&H{vejW7VsuaRRvMc5I_&t=Dxk7MPz+~T zRx_SXgB>;Vwvm^z;I}dN6-qOubCj6AeG62tqwwSlt>ezZj7TFWF|AKQ*=Y5m3a=Hi zl1?+V3BVGe!8e=dHvG^0XCv3Hp~zarV-D?F1Dgf0tlGl>ATod#EKN;e%xRfE#LhO= zwsx>6{?z#t4wB4wu|g7(2cGXZ_i;3US6CNK zjcsB3#4um08~pb(tsPyyceJ3bnU63Iifaco?)-zZAMV8&{D9b zCfduA;=ZT-PEKe(7AEd6Uo`!_{b9B4wlMM5X&nUWIIRU;NIj48cih*-1LRd%2@Dc# znNB!W%i~D#QZCdQJ%@PAZCRW9I14m6@~XO+jwtZ+Y>5Jq_*vD!!)xysb04RJi>YSs zgSr*9OS*-J2d!+y3OvvL12HF>*3il*|U&~FT^McF8 zTny50t2_Re%!2qfEAQK-aupo{BZ9nWVgM!VmE<+^0!bM{q1k=R2Ef@Bm!W{f?cAww zGV)Y_@HwN`BK6Aai-Df{1x8sw_RjtIAe=9h+v#gduOF-57sj{e4xekCBc7BWVUImu zoq?ZIasNx`%SMdSv#kx9%xv-!Bcf*NMd2Yzx)WKL>I@@sP?#;Y-4_wObWkL^pnxzpMB1ek}D zKvmwgT66BvDC=el)Q_(q16ambS&YwI0?`fPSIKlC%6OFnD zV6=*3W2AtG*wdUe*zo=vcsQ}$N>A7Y6?eHRY7s?W73nb(a+0iwvl8K*m1ysGpnW_t0L^^NRcSeDF zAx*Dzy^qXF9Xu5O3Je{cHva|%-D}7~nxA#tQTg-FE+enbR)!GK5Q(i`)_4WLrAC(P6Ejh64k5^nHs<2*g$hbL;f@N_dZ>77TTmV{-y8A^9f1$F=H={gZtUY;DL2@zEt(g34l*4(Nu z?55#iDyd5!8P04KaPptOf*}Cg4n|EZN2tTtN|y`X$bL*5&}qm3$?xBOco&;b#W*eU zR^ik*ig0%i_Hlw7p9wI&@q;kPtf}ImP16;^kITU?6m%tRl6+HcK@Ra?d*I|%&aFBY zSUm6|H}2&3rv%sa4U!SeO>ntl+ULDvB|f9a`&=^Gs=j@ZL#x9*sXWQS;P^8biqpg( z$V2=yQ=YOyhmX{OXNx*39>yS-&xN?0b;Z_AI9hfj_TmoKJYGJe>#!TmhYUR~(V~MM zTK2GohW-B8*ewNPp#&vXPFycq*y3`_M3(^G$<1Tq2=kawBZ8owlTch)RKpry|ccTIuL`gQq_ElNv+N>4wGU=#Q(U~>) z7)iL0T8V}4838WEie-g0YpJ`%AlG9{5JaxS2;HPt+$B-4oS(+j#}dU6kdNXAjDOe4 z#k+7o4FO;O{oKV}1NpHiEOzv>K7Nf3InDdANi`~f5AS=6$FDyu?R4n;ZWZ;;7jsd%}I zFk~0w)=?RU%ocFK-V(u`a2DDBuZcgkh8^LuiBBY~4jX4bK$Q<(HudA8V9)MGLUXDSFz8$1aM2}!&xKTuff5UVn zU>+7$%sgt{20CNv_h#cQUmEqFykPqP?qi*QXXd*@)h1Wvi}e9~^>!vL3e2YM?Ty4Un0){`EeP1|m^DH(I)Xj@O4WC8t0z@oYcWzc z>T5^bARtggZZWW1|-=L_ysCZp1?1>UAHV29oE>25|^FmogAqqX$6^hC_{Qrw`C_DfF z?Y_FmZwp>r${OoU0j5Vxa;kr<=>`XYO>`n7T`Tk%=J8!KlivsjdUH-B5@!;IhkU@y z)C-|?q4z`De*E>s6W^G$%u4e-dT|c^yVT}sG*)k8K6!FD7ojvfP2%$&+VL*O9!u8i zm^36*5kGdJ>zl_;o>tiFmN4aWxe!m+A4NLQnr)N}r;D`lcLO^D=I(#>+r&6*D)5Uw zJQB3D&wdpXGZDWMjE=@i3-}3t0h{b#Camj6!-T(KKV}m;xr~+aPw~^ob~@c+lSc1z zUJ7grnG>n@LwU>|PI;$4YB2#`!CkXVMUirhVLvr+5{1vJ2*U z;+->&&e4hp$u9O#B~12D+wr^?h{Dxs{eqN>`io4iBDNrw=>eb#^1KwJ6YoM6S%B{l zV-e2Dz0 zn^S#T^5SFN$NyUM$BQUCAY~r=4E6~4Aegnl<**^9%oK&0Kc$p6K;A@~mxkoZohOAwu=2cw3;8B`U9Uai=l5*O-1a@UkF#81Q+Al3^8M zsdHyF+tRKt7OGh<_*iGLrg3EZ(Mml={VKpl`j_A4kl-a{mDN#nFSeZl57-yPAxOV` zpLR=tD>dzi`>%uoTRP6JV?D;zJLcgjoqT-I^$O9$LTMp9PKOeh&qXSRMWcHih8J}H z7^W8VXxhi@T!+6kMD+VJy`#vW19vVn0RHZ+koa2IUD zYGXNJT0fH3jgu1r!GkEFF>q7@A^aD0LihJ!F498H$RZDQa5~Nl@D5a{ezOH znK|~TGUHcv-^WuB!{(jrzH&!u@|XQGBks=<4iHm;TxfYCRfI`6xn|vRB0^eI<}EIu zMLo6m;oi;d6WZibony~sM4jNalIjvqG{41fz*6nglgUR9uZ`-mB!Q^_z6|u1je~yk zvQiE+Lv~smLJUZrg@}z_|5F}a!T8w4F?rXB!i-xWdsg40Asg`1y7SjrC?hHkR}QC6 zvf-+N9Juj7mSClwZ?aUfkqsfl8k+UjtOOp|)@f#}=H0V@)YovR4@^eDj`o~d+mOhsM%L8ZL_~E| zbc3Alta=XHipSPxn79X_Kml?dA+EJ#dQ@%vj;of(o09LUh`l%ciH_MI6T|cV`^28ziS& zrDj;H&i?4sz=;qWQ%GyY#amj@Pn_PnUwN3x&zxhl2(KdeC%kTT`sHNs&1TXzNxnGn z`TS4)tk_S!h)^3S@n-k_M7@$owzG3KM$sU(yq#dxGu~0PiTgS<3FZe#wkAMKyLRmc}p8d$SE?STM0e(ir7S^;X?-WOr$Sj6bP_1d-h zd%5gCn!-_D6+@=G@a5dR0u92Hs{riZ?G-}@%w3y4Y`lL zkPKv=?cgJmEQjt*J}8hrAu5wQ@3u+cVZ-tq=8XJvR~^Iq6lwa~&v>mHYS=?PBcZIy z&*4OxHqp5VgxK%cvdAs}M>2zYw-4Mso+tgf3ZmU;KLzI)L^CuvB>6`u2hUX^wkgs6 z87BqFiYjkwn2mn;YXY|gF4!|*LNGL(iYa${+ihE}(F`G?us+)V5TrTSQ@{28nI9vMfrQw6juh-E~L zAvq(?#liabah*TemaN|)^l%o& z^FdKhBtYeW_F6leu($A;YDq*YgMV)(bSfiqJk>19LO;x#=$+bf14N{-F8J0z%laohJFFSobFEApJ@N$@{?bwqp?qm4x0<6u{4DyZ*dEzLT zgDYiqT<)5`l-yJpM#2JoWSTfYfwub*ZP(a~S&W5x)@8(+=yJVhLy_F?_Amu#8`^a^ zJps-j2aS(T&aB5`Qj+6QNC4R7DrL}3+1AYh8W+a27@rEm^D6ZgaHGaUbb0z5_y4Cd zUuK+cOSHg&jmExz?VRQdWbfHYdajZ=+qnmyk;`eE&;~tr8yk+5Vr8pz>?)c4;|{bjyEj|bL=E@E9p(@**7wP8S99~aP6igJ z8xtgW^fKZ=8qL`Fx(76HiZ5KMtoInPV)_)WJ!D~_rxgmb#1Kj<@+U{((8<;w3Xs8n9 zvcV~UcofF7p&Df}7JlmPQYheuv>HIVbEbEZijLVH6trJ+j@M5v1l+QilFB9_0ZQ?P z4m|G`x_)sIQ9^}~i(jZ(Hr3uqO4Qzk-vHJm#6Z;^>}B6a?gtT7|1Se0flOWi5;8w> z#?rVlbOIERa)IC|C-G%iG(m6X1(6?knA9Cufo!--9-tZTRGI1PD8|8dLOm#x&qTkB zZJ-ZrD+o=QXrshG&I{@1y}zR<7y&BnTF1pGO0%vLfn=DPf~52lBg{@ttt9W77s%jB z+BcU^(+3iWk^|Qa?(9=(*#Cj?Tr%GrTmF4DP2ap%Zn;#CzN?{O`mOfklcbSE zqYWHvd7h`_s`h=Z9}cC|6bu9=Nm@>&!84(25>9tQqJ*W0~HQZ^4-X^cTb)SK7Ygs`JEP9^qY`C2J#a z$j-c~SGW0&*yJ>f+7-a!*P3n0ALKp(q$!{}lDq(kHvSBeZ2qf-q`(Y1+6Ruo7ED~g zLEjdK=eO&no3rx`a)ERs-u7#Oou*<` zs=e0tzeXL|A)r?j0&*HMMQ5W-G^Bfbn%jG1vaMAP*^4@sv8FP9*%SRDhKwTcaRbtO zX=Q_Dg30`hMETxA*o>}@j0gqEMC7jaq`dA9BqiAhdVS+X=e9cx$PYc+!@eQ7xif`d zlI4>6DLZ-)y^B{0UF##2M(W4){W_4Bg%gekU)3)17z7YN#A1_obENy z9N_+|$_xoDg+3n*Th+CU&vRt42ao0 z={Iu<1AmW7a@epvto7zPAz_!ZCz=p$gErV&W%V4`hQw=Sh`Hdj;T{*F<8x1(oP#4I zfUR6D+eE7a4(GyQaXUXbvr{sobW)f;!E8d)*w$!L-`6j-=gUfUlzm9|1!THEh`KZ+ zL`uRb8eLeO>#P+2BDQ&uWCT&g^vYU1=!VSEI4C%)54=^kn?9MY^+PW|(MD=t^<-k7 zeS*`lI$xo7;1Ut5Gt~93_w?e~0f|Pc;G_dc6|d~r!M&E(w4dn#D-7|U7U$K9V;BsL zNb@`#9AE6aMiqbl+%UwwQ+>^E-XSqU66+96hJYoP$m>~#)GT~+9o#5&ceFVGG4YN} zK1e|wlaT(k)NPnua2|$&B37U}b5PSUBxGq^;idcqg7qKG5LjW!Cg06( zM6wr<(uRe4{80YHNv(^DjYSo?uRC#-(=?Q@eT~D5ch;YtEcDK=jJsXjRNW(>OiGr2DIfhb=rg9$JN3Jj3n8*Zf{M?R~ zaB52nFHhg*%kugPYLm2ni09>Bn{bALGLY9TWfHC{=W=TE3U8DVta(J551C7>!u5L}?@AW%E!#?dSr?ryp zAmI${S5Y1Mn)Ofq`DPvW1fynsYem8&m)lA4p~2#E;dS0Ed~1^5?ynw zd!y-W(av#xLg4l-G=KK2a2JQB3{=l3beH~uVgpGQ0vsKZ$UMB(gdLkMC}7V;SEj>B z+($?>qg7|a-8+4>L1x3H1n7f=K^5#~EKY{^VrqAlcn+~&m@MxsU4Z?Uz40ee+6elu z0A=^kaM40+Uz|@0Zw8C2{e+S=Rw?Z? zTF3+7>c2W1t^jl+ai8Da)rm9YT4U8@Sq6y+rf+04KJzci`g}&SeFQYTrvm0=BteOZ znftX;*oM>|HDv52o>KYT0+u-%+lq(}OXM4d3bXB@ikLFV3L$CTSJgh#Cp3K)r>BJz zQDk&ws*zzNi&UJUS zdBFf4&v8)6tzLlrt`t1k?qb!##*N7!ec(a4bfROOW!xs;b&e4{dXxK%X{m%Qp?Gu+ z?WOrJG7FSLB}DTqIo-q}eUK}GxWd05dqqn=N9KSrax zun!@cn6}pN-mn&>Cr)*$KQF2jJ?xy}yB&=RgRssk-__Da+=7$FTl%PG`YqZJTbPD~ zwK6WIw9;V~Ga=U5Ef~$o>lEa@c9oWD|B$w75p23$)@IjEb*X9i_Nta&JvolG4;e3w zVZ{DJ>zd@|d;qHNF!h9mVEkNM-yn;MdcAyUw+0BI2B(stk~(@-)BX|l_=_WF2EEm= ztCnih+VU=e*#Qi`gWRL%pqN(@Skc#yMOt%NbWdx1foi6+q$)l|gNP6W>Q*90S?*%AWA;mR!D2z;8_VYU$^5X_3fa3h~=>c4B>2WY%# zqRkqpso;G~mU@8I?>K@@2sGmaWEn}khO5*_ngA0jIF!T7nZzgf`1i!&)s@M&* zefV46oV9%GW0E~8R=?&@{b_6tia1zSuWieWoKcKk?h6MN-FHnkMFk$C{duuT<0YCoQ*rA@lYTGEtJrHUD%;C634sSWN$r7JHJIxS#GhsA6vSKZx*LB9HyA{K@*5at;`&d z;J%>$3Ixur?@N-q>G*bJyKg|ydtoxG%BGv9=1uY1diSLFOu|j^8B}*(14{j(HB1 z3C~^r#`?8Jf!l?f_3S7dEXFXm@kaJfaroY>9-69Z#j) zagFB;Xx#oapsAi_bv9Fb#$O_z0Gxbnb{Ak&p_tTL#8%`tLAi5R-!Qlw7NBosOz1}O ze8Ha@){@Zv{B}`aA?E3PHSKbq@kO#Y>T^m>em#f#K9PJRSxMH(tHH|sHxX_bV!;;` zU7AJF+$CdKCcmoX+}u2^16r%rq7{Wp?QKu+)ZTn=!l_Ju2zz^49G0-6<7)#WdPxS2 ztcr?T1qZ6|_mMah?|JcW$l6G9x!M=!`Yw>Z4#u4zLgl;Bj8>Y6kc=DILxQdyJ<7l) z{*wp()8v@WvO`wchO1c$eNz;_Ti;D6Grw8NLrxZAH=dFT3kQwn=bYf7IbrC9H$Ax~ zt2=93^A78U4tI9*COWF`{=Z|uZr{YyY7c1N2R#YUxWE1uA#BG0@Ruh_g9=z1_+XQ_!aHB zfEo+dZi5t(;^!ikx1QCMQhp%)NHa$jEWXA!7)<@Xq<#a{c$LUHwodRtMYEiZ!cFcq zatbC6`lx%ZXYreB3OD54-4y}Fl?Meh}~h&grBKD`8qidc6HSgGX@Dyzhl;Gl%h@~{M1!s+N znO#=jgRZye=0P%d(O$6}^WD{Lo!6}>+}1IWFD`SvrAj2x6U7 z+)N}WG;EqZfjHx`-0<=Mf>B~yjPvhU1`voD)gY!&HQZao<_Q3xf;K(FcRVG|!A+;){c3Nxcl^nKN4qUQ=%*{h} zFTO%JMtfARe?ecJ-SSi(Qa-Vfr{ODxx0>aCd`PYrm>n6AC0o6gOD{S1cDxqRSSP1W zsVBmA>*->g+C``4P}oNy+cZqclJk%fR&uLV*=P;DdZYRjN$Z>lIuQz?|q zqrg2^ID{4SAqDM~VDQK(=L8#!A8SZ)$)K^G5LV2MoIo}A4Ljj zJ}K&pXrEyERy$~M8UlAM5%#v@xB%=silaA)hFJ?)HHcSAW1Yfx?z&cB){iW|X;h`w z(%v|q0R?B-v`$q+!vMPa_1n)l`(--z>7qN1tC%h4YK3uPi4JZBRe946pAEx^OeJ|v z4EI3(oJ9;x9OwzDgD{2Q`pT_(|Ju1h=Qj!*-NAQ-aV06E;H}tD| zs711zwK-zgKok)uCRqtG9C{KAS1EXLX?;9@G`Jb!vXmX3ESs6hs}v`Z958 zNofYT8b1jwqnP$&Op$VTSehSMKvPF_UyWhP`+G&!KC5F2B_Y;hMGIn7y1|Z{FeTJ> z{0cip7iW84?yCK3KO9e81WT3BAnzqJIeTa5Rs<2Fk%22^B}(g|0@ba~M-hI-eVDci zYon(S4Bv>>%K9;!;KRYOvqNRNNC+N;41+-Go|-I}7nz>wIVbCZ*b$|fam$8TKKu16 zO|^Z_8ub+}5hmE|xHje3{ID9x=V|*&Xz6w+obc=$^Ksqvj)VyGc5I-}dQh<^XOST^ zM_cB1WMRMz8;2Mw(M(AE@I~&EoxkpNL6E1K=l1U65BiGciM)VWD;Bo5u_IMYu zpN(nA#dN7hwwV!R;Q$Y*1KKtYfB@}4yi4DRTRF!{xW#w%GjdKhkY?ST)k9jJ2nzrp z{xI?(qd=9k6-(tCSTY-z02t%oQS~YnILkEtDUz&oeMcK`4}~PSR}r2?1@BIxxL?gl zj}y~wGe8N`=`7Q12jx82UeBjkyICo${@!kUQx@Q7_I3>HzN?DoP0mg_rx;~|)2a9O z%)o16U-ukZ_E%=RFQLY{37R(iIezCN(Rn&8gbNz>7P4H}zZn|k=8V0B-+L8TgM6L4 zUIiLk@|z@OXt{cQu{oIHjHNUusX+~u&Fe`(#)q?AVg#*60p6M#Gzbi)SgN}2v0bk7 zLO~N=&Tx0~s}L~DbeRiHOo;dfTigIS=x2&NeA_mEg@vT^)COQVS~|~I4_zBd`ND!^ zDGZLAMc}){Rw6F^p|*&&_Jpej1lMVpJCP2%tDCI311 z?2LKc{V|@J-Ej{acb$KbPQ>E{G(}~`#S8bjop<;H+3OnJ0)4?nEDNb2k%XQz$RYp9 zx-fo+-3VdA7s(VUa|vs^(c}~c&ZoZadcQVCj}f?JSjJ<&u%3{FG*~r?m41Q0JIw6M*v0-ikk!v?Kwd`Oys^Snn57Tg}pA1~NFKC9q4`DYauf zvKAE@tV|AxXN1}-&r2K5Luh7RcM#)eT)f(sgk|!|7t?FuD-isOvWLZH1ruM%T<`FS z<4O%(+Nj`$Bk1&o5OSpUPWLR`dw!waMgAOCuWXK#Zq#Lt93x?M)?mHz0J^y64C-G%48*|mqoNUQ4pN?^dd2XjgXNGr!; zwXA#I0(OgYR!Q8ykATP~JgQP7h67f!Rt`%Azj?&rfs% zTYD@BgC<8#e77)y{m48HtwhOT3g$`3jw&@Ag@$#RrgRI=wvv{8cM??h8S&+`bB;Wl zFR#tJM;9M?JB~`O3hTn8SjwCl*riQu+fJs@KT~Gu2^^e|bV;%MwyPed?q7W0xYnqC z@->dk+tmsAhnFzpcX=u|e=d`Wnf6R{eh5C=7;vH}c+^DYxrbV=LqhS#^}SJdm5h&> z@o-3cJ%C%Ux8{}gI){bv4Mi44N=pa}$hAz9%g+35Zu5mSe?&_dYfvDs)sz15yUvXN zWVXb^=Yw@8g-W{_rGXVoU)&%=QID)M>4M#*`qCCJP6H>IWggC>r!l8Q4Z5{6k2t|2 zy+IDEZAr+azCdqZK2S=*mGhN)akK4YM*SFJ-9(XXid-JzVq}1-9S) zEf_7zY6uD*_^To}K{5*Ph*L%z>;wa-KE51mkv{3QwvAC7z*d)}CkS=g;x_c|^Zn+x z0&pmPY0DXl4eIp2I@9W(c)R}^&@vk!_oJesm&YVzllfc(lKLs?;rX_2X>>@^-gB_P zEkJ?z%TG@Ys5WMx_a=z=-^O#kAtvX(zqKUR8ihrenbs&!Y>7Av3@&bJ1Wj~rma9G} zcxO95Q(=bD`_p^8Oi4EWOpk2iH)9`^XU=PBsy(}5t+8{OKH{$|1ODPK1y@kOX||q- zGYl{^2?`j7%PsJ6y;zRfSqBC`*T!J^nS#!+oX&KL(~15%_n?CjjXm>Yla$z52&fKd zu3ZOWn?yP77!k81VeoWL7W*>$m zdl#c6PY_#@nqB(ZGn`;L(32{5_38RLMdi%1@?v(6!B!B!%deSZ8js~|yWYfEg!Z!e zo2#hr-qC>vMnPE+jP=SxKeLC{Ohhy-95l zEW&M-<4~;QI_n>oJ_BrO`l>rRxUo z-ICl}IlIYgmjW4>J%TNNPN6it11`LWCaI?z8BMe`t}SfNxv&LduCEWh_|Qh3$eY-# zKO(4S92A}-R7b!$R7wAT^kU{edS(=b8`G|V=Fw!Ua-23)T~jmS^rDzSl9J7kdtJXlvlL?+OPC^z#igqQ{Kl=b{59)4m`1ctn|(-Phq>TM0Mcg;uyZ%_3SYYj3SOpi;p9a4X~-Jr)n{wOnhC4 zUh8we7!o5Z>F61(lhB?a!(a}(DA{9yYZfC}2}$v${ZjGtOTHtqZ3eb)=To=aR;3WV zIf>1+WWV@jY(+QR;d+-?GU*=5RdWY+*SjV5$O3oWZe3;`ERTxv9Uic*89pG8cA>JJ*Y& zy}wcDJ?OMHIpCR9E&q`E!6uKKbG>-_9NAxKd2?lqL_OvYkV&N;ff>V?b<)d~WfXb1ObwKcSA8M(;R6itcQms68A zxc=fiQ$ht1ot#jM$|Hoq++HqeWLPw`3O3(*mzj==q!)K~WBORid5|7`!jl>tDV!S3 zEdgi>j_gbWme^KMRoR&`5FaSGB%2uuj=TRG*Pw~u(+k=z!;XZba+VWGQkVYDY(D8! zBMeF1EOrkquXWLiila&cj=9VN$D+8BfR@54F0OOI+&4z}XJn9Kw1xsPaH;c<=`HCA zL|*|}4@AoKBblbW`G|&(G!OoofAZGH;AseJhqIju*6OK8G+aqPB3nTnbX}@#Iqg}dG>8J?!6RQ1}6|{d$`~p z`<@2Bb1Cmx&-z;x376qwoxCC1WJ>gIx19qnmtfn^Qm%Q@e(MZ8d5=U~DS0IF9byBY zF5g}XVqNWzhL-&z?=H#>DnbMe&7jh4cdEe`0(Z2EB9$urA4CkyAB)-;;Yb!$mVJB$ z$gMs=(KzL>H0vNxpIYyFRuSvcbtiS5k_V%|4TCtV?#vqreufASv8Fl+Etyg&iX~;( z4GyAU3EL2Gh1Z)P1qVcQPgr_EZ`VN$kpX`Xz1*cmhA!WR+s8>$`g zea4!!ja%>4wZp=wjfE)?S~L4ZRjZLb{%x!dHQhQPR!nSr@ora#`6+=0iLGVhfh@9~;yZ8` z6829lSFv`RvfW_{oXm$#`%?lYe(huiZe0NT$?>5xtf>@Vk;7%#(eA+XYk!*-K&I0a z?W8UhD0{4e5-koS(LIV_+HW(A|F-)f|MNN+mr})SMEEJK<3-1^X38;bOW8qpGdUqT zPHVu7Ad9}!X>D~r`TUm{j(eurSJPeJa7Wu|AXRqD zTc}sYn#<=1T8rC>5~b7fuDDUl(Y8<_RL|L|yZYnQ*gf?60TFw+k}+FKsH4sb4hOM8 zA*Phfn;J1VC4f@E>uBGpM?OBdtJMe3*5dl_$w9LRT0ID^6Z5jn9;(P&D9ji$Ef^bmlR647i>k#`Weed6M5;ZQXg+o$ zwVmWKJAdBxC8bI*C|Z4xz?svYF10X9d(2byz2dpNdCbSG!EV}%H489?lpk$>mw#zM zS*ybFhD3DTIUg3H=1Mt%E=0W(m>B}dd3bBa{%cfyL=|rf%Niy-jhf12%0t*PauQxG z=*URvk^15{#0OV&qf*WC8g+_)fNE=L$@Y7=^a&Q0T_4v=Q1fBGn$~r56T#`~W@oTDQRtn>}MP0O5cHl1}vIaS7513wX&xA3U17ck+7ah12> zv!bvMWDq@q4b2ck+U$dD)2Kc`Iln9fQ{^w>Fb{Gc`NMfDv${b0phE09I*~AX*Bo%V zRKE0b1_Cz3CPwua)FIx>1UX;LHSYMXeKKLws_l%ErBx$upi zdADh;>zPC2Ct(=e)zDx2b9P=iW{j*eU6eoo{^`9&KdGLsxxz*G=mt==Z1gjt91Hz% zwVwT5zY745aC2gN7)dNP!517rEG*P|t{YWMHffC@u)zuuj%8#>Citk$H=ho;ICpu^ zafVkpx3;%?rfkj}g||^A;xWjpPyi5j1PPL94X>6~Y5v>;Cmtu#@*!^I*y?8UekuR) zC}mW+^56(_co4t2x~=ELsdYT!)A;g~G6meTGy^eygH!Dx_ivjvEKjel&I`mLufm60 z?L1@Iv9%YnI#%kn2lY&;To)JO^38cg3V9t<4a=NcCVwf#3p3P~(_IX$j4Z@9jK4-K zo`+}Q;+5MFxOEF~O*bW3@TizV4&n90t9lHm^A9DYQrJ=oxwZ#Bi7pvqCE?+hP*9#|X$}NJD37k= zJq;3tRBt3j&(7I$D*1mFY4&ZZ{VsmnE?V-vNKj^b8o2UayHmusPLf;4#njIFk`*e# zt)`V#I4EHEsBbsQ4b>IssbJz*{=}1?8lkHKKEOky_v+KdNG;{>rItc+__ifQnhoSV zHO93!)Q{fd;@|W!-P+c3C&{IwQz!nK@&LH~ z)r=Zm)<7y;*YwztS_(?G0CNX0xkrTYal;=G}zeWTb&gxbLz zcbcQ_Mz}4dds3ds*vH!2Fhc&47##ODEzp;}*>gRnTz*i;#~cv}09MMs0jlb^Xyh(u zEIm8MCv=S`ETDMMr=7FLjAA|*kmR~R_fwDIq!;-uMI#O676m=vn%%eqo1*or84ZTC zIb{PwZuf_jY}8@d9$v{evz#F0GL0h5G&$~P}ow~pv|QV zRk*`Q)mZ%@?&E1XEyFT85_B0QBd>UlM}JlyoEB9*5NCbcA`AYd1;&1v#enIzrm4*% zh@~@y6AMUR3Bg-t2-aJ)o5Q%u(~+_xX@YG( zbI)H2yGDb| z;T1w~rabD@aM8|tbZ+#gxB%0V*sOBXBWhE<-WMv0Ayxd5!5{b#mMC1%L;X19LlJv= zDX)cT>XieG?t2*qiy^G@b*5vvEgPc^c}rG6Z(F@U(^axSv#b@0NGvo1itTop^i8bxA*qQowZ8XP;(Z=wFfdE*H@%FOY|IwkOh# zRGtr1DwZibUX&#c<6eq^h02K9s`+Q&yi>bI+2C${4H-0c3m1{^;dBj+_`yhsAAew# zzURBqo{#~F`zE+E2KUiG2SfY_8PPO#&9 z7gda3GM1*E#jj+DD8OWua7dsXN*{Ku6Z4RQz9Mk0iWt|ngq56a==R%dTwtj(jSk6^d43YHii4>>6FrLV>~-!gvzd02;8S z7yDB8gTvLuNqFH|omehnhld0PJy>M=o7!yMQ&l&18gkcOCxmM9lVy+Mx+CZ0G3x!Dbz4i7jlMucVMc?%YMtS={E>a?#+C6HW|{T33adJc{^Bw8q6U7@ zX3hp`Z7C_V9I4<2<0x2UU7}~YT9v|*5iDEA$NuHmh*{zF#~EiY0-UnU#LQW-D^M3bch$NFctAX2?9tXR(9^#>k!|6S8z!2Oj0fMK;pX%yCu88T*ZCji zr(&@;zcGa0Gs)kX!%pV-WSk{rm<_2SP;kbmVMoaWhSVU=Nk>Num_`eM?BD8l;Z#hi z#Oc^-C?bScbbQrEtmK$W#)MD3R4|Fk!{*Rj*qZ~RbipgG+?KUERm@ zB;sRdL>A;)1WUZ6J|^ zW?-hdr|ZpQ^(fG@Wl#{m=E&HUooF+~Px9%H~1iQiwJ&}@pzIzhFJ`m;A#t!Fd*9EKRt1J5SN5+KYby#T*pY!&^X3Wo z^`O%QS+jZk`_Bi=oQ_o5q6h-OYwA@{U;CUn;1_DjrJs!Fp!Ag|X($VWK!Jn75)wKF z_yB2?R}~NQH@+KqQ@A(oa$jVtqgQB`XrJ3XT5VkKELP$lIKfq5MJ@N@l5~%V>ojy1 zje5lw({3wz+)ga9aP^&~YPL_I-h8zrxC*9RXAwqzgr0#RUK_{lp?_7{o|pYLQ?!W$ zeNQ14q?JuVQodpP0Z3QeOi39#;h8X=+|W&pq7$%=n3tP)v3^=p71~Mn8DEsuN1fbX z-7i3I&BXw763=<}63y}ksl2P{($1SxwPhWKlcbnlrF7j2()fi%!&36t-Id=n0%4cb4 z9X=uOsR0@~@oId~IIe!7C#5LM4wDz88(Z%+%9=#q&4h7z$L`r;hUO`m3)+xziNcU& zesO8x-4r`5*!VkkXN8z6!2~SoQr#wF@GWNL$joVb0h1PPnCY};bGPUg-_7`PykBc% zIo{4ge-??^X6H|viL8&#raG>e$qMuKz!!2R`{{id6gTQmJmaFeGc?l~eoReo%O_iS z;S^?g$jgm3bTp5kki zL1K6FY)M8c2^~<)0v++VK5Xo7n`Bt{)(YYVSY83`Y`H$PEM*DD{r4O#FKs*Wz*Fen zs`(|qe4OMu;Oy%_5Elj9|5J=`Q-XB7Khhv*Sl1PRy_El(5BQ6u~#_8u2&l zW5$^ja6Lx6idIt}s@6Au{7etq$RryPnLM~VC;|uZk~qk@#Y{$v%O}|`MlO{)2!s$< zE}afL;ibCVe~@rzg*fCwlfGUYkt_-lCr4z8#R%_ELRMci@Fos5-Gyb~t=;8v;%%?F zyMM?^;*!I?KtP@zL{YWUViUogr7HU5en4=hYo9Q9Imy=#BpgBEin}B@QUiYdS%XHF z=QnU^E}-u`7j51j6w=Qce}BZF{1VNVRTqpR{6_oRHBN~=d358;Df*#yd@Os;;@4Ol z6ucqeGsZXQN{POvycEy5o)-CcMtMv+Vukr+%hb8>y;pkjXh=c+k0X!!De9jHAR8hJ zGB(`bGQr@Sbo3Vj;dpH<^AmtcZoCZ+s+k`fw+uD;4sGcvgYO#R1OLyN-L4I{Zyxht zAPcmd;kXJFqoP}-I0KL75RW0+OjMcLKew}a|IcKQ$O>B$jf>)-Q-#%}Ic3b_0mDWF z>u_A=U-r&~{Z-IOvwDX?rb_+HCnhO^-MPu>)V`m1d!YF`+!1#@F=oAL3K2o=-78X# z(^%1Sw$!;z%J6sWEk~;2)HW{Wl5`;7GP4U#^Es#FQ(xX;_0zM_cjzX;U6C%J+?bI9 z;bXv6H+5LR6^?viQ3=a{PpJOakQb zim!3SRI%rPZcO-AVuX0wUq3%l#)L_)B?W4kzaIXV{g7|_k@w@>U4bE%2Qr34x0z6> zDJNgPe=_J(vVlP?NatH_sno1kUulW(%yl5DWWhCmKHow0UI`@J2sK@ z&N6dke+Zu=AHi_m%G3{2Lo@RPjogn7vbquQ^lg#Q`MsxDOUE;oQ?vY1M&#vmfi2>o z=#J(30+jb>PUZ(Qp^;aQ3?Q?J+VWf9Fo(ScRAbLYAA{z0^Sksma;pvI%2)=qOyv=+cG|7?7o z^NVb+4F`qe!`mv$8%V$-Hl6{s7oygwA{h{uqPH7b3B{owUwl#2^+FCPy^&ko^B^Xg zR35?gjA4a4!O6Su!VwKXWhMX|CU-Styh7p@30eMb`Jho*==H3n<&9FsW{Hk#>Beev z=pm5kF)R3YLkjwDsH|CSml(4lQ3g$aupKTDvU-cFB9HCUF5toFQ-fpr{%EzJcY+#B+0+5K^}5iMn#GQvKE8vm|gzz08LTfcJGFZ?KWNNX(w4 z=1b(hI!1lzCp1H+jhgSv>cBYhZiZ<)cGdUPn3TvzfT>7kXVNfyd#;CkWp8`(TAt=4 zq~uAvHLr=}vf4Tvc0&sBevzw)>FPpJ5iC65#-SN_M8L2&oKVfsm-n(&pCh_chVjTW zuu{S-t(-QwR37&p4?ndgoQ+jDJ-7cul&-hg1ymAv>)R4U0bB${|IU*SyzXdK?5vc% zf>M0#U__}#ZXS5f{+fpN?}hnyGzKkb*(i+X2)#JNv{O~ZIsKIOIwyf?Bf>z*XLh$I zr5U^+wXqIKcYi+XuYa=yq3VONY}vE>B+ONUQ>_M0o-1b_jXK9wwL>$m=zQn#Jr;v% zSVdDz$3%OJ+tK>c^))=@M))OXwJ-lQa`k$I1)oHaSyV|@Gd0f*E`xB7TgE*#q&(fu zRL8BJO^ZRhAG>M+w*o~`K6?((pogBbLhYm0@C}wkMmyeem3&s#+Q+eRGBZwai)grM z4z-sBO7<Ld+?0`B^X1K|o26q74DYD@sAmzeDS+#c0E&(c!ErPx?Wl@EdAy? zYn>ECVock@RR#HOhRocQ56y7N>j3;r_qEIKGGoI9--sw!4sOuVxLd7WPt#h^dUYBG zeD=C3MBv=m=soo<`WilvBjG`+MD3NFNz89K;x?rqi01m!Hjp^m<1ncw*e92p!|fsM z4|*)3B(sUA#i`|J&wX;cc8>>oIDxnWCKE@Nx3x36aU*aVq~C`mBZ|6v_?&rm4ynGl z1ETtcMcN_n&ak50s=e2z<>RE<(UK+cetsHDe7g10aV2wGdrR(jjb%WO>Y1$H~r$c_N)7K!+!D2D-MEobJlJMoUf zJD&s)q_lY@^RDoTOu@cB!ZxV85x``F{K9NZ`55T6Aw{<|W!c!>Lsl6;v1)7x5Jg+|DK0lSGyUPCTwF{kTtwf) zkGE@;%MQy}u?Ggvs+<-Hd7F=L%?+&cn&6y*Wc$o+P%MAzxYbVvj)Mu#sf6P_?Uz)Y z0necZ0T#VUqB{W989fmgbe8tX&2)f9PWAQ`()q0|TXh-6jWQ4!*NJ0941YA>^Xp#!%?kiMO zW*1enf2o8o#o7K}T=k2Uf*NzVzQ z=A;D7*zhDFw}?Jyp~b%>#sRdzAz8{fQ4pd{W9&9Rc=m^<%!Z=T+YzB*=DHL z4ieVAU;j+|VtrHUcboy4g0<1{IMR+ZK~;m5bk$K=j`9k-SUAV_GJ>gwzcq2fIzUF4 zN^qHC=}$3V^VN@_`$NV`>*3M$2k|Cu-lfJ3;=SCY3`!v62{vaL&C1hHp zw8G`An$lvN>9gsIYZ))hdWP7cdr-!;LMgB~Y?!*oBTZ7dF!A>HPB5f+Qeonf3^}m4 zm9mB+j!Zsx+38D$27f=JJ@O(;4X>p-ia0D1?Q;Kmqh4PFgHLN;Q|PPHR_h9XkKG(< zNbq03Pqro^hGg5gIJn|M$-yS#_kVXxQOIcEq zEAa^pd>&TLkaw1DeKz^)`%*ghCVXYI^CyV75V%~`J9 zG~};QnRFXbw&?69H76Wy?6nroQ9cuFh@d3%2n=u@ZZwZVAZwcz{?=K50^=MP@=2P} zSybv7!RsKku((y47yzzg-t5tdUD@inf44r@xiJdD?puK9Q!RL_$$#|{U(3jXRY;!F zEk`ed-PTcg{Rl8%q4Y=a0PPed-a5z`@M89ITL)4BkJQLnoJxagcpJbv@MyJd*QCUU zy1yUVEK|NW>e3)aTC!deL=DBI{CJ2p@eQ9WBXSS)6LT#(1mWOtq0i0OV%@}mMOzJ< z!;KkHGK7Og7OLFEn%o$yl1M({OuLE72Xj*nrg(rWV91K7CwpIsT)+#C4XP!?Abh(G zNNPn;RBubX_OiU^!A`c3h8On8y)-92-tOMtIzW>UibHHLhao*ZQ?CbZynSs{Gs!(# z;yJXPUGN8pG8I}@GdU=#EN_-*I(hd9rBMG;Oz_PV$&Y*91@Q%Q zG+(Q7CWTP20eP-yA})_g>a%zGLts zjK`v}G#?;~ZY*~JXChl00C9NF@{Hyc3VDlMlm3Yr{4Zx`R&QLa^3&*(9NBerc`z&@ z3Qu=>667<0_v6yFO)@blr$45AD587RJGCA*9j(2}eMX|&<-&;o7LpF&J@fh_5zX~| zdJ8Nc?KNQB^gIB5kpukL(?MNVjTFmy>7%3dNfqH;>xEVwMUJ;-wKQ>4z@iv+sKxy3 z7h+L~Rx+jo=tBG4)To$88kyDxg9fh1IGwIx=&~{i6)S9p>sKh~o1fpngcOxw$%I@` zQ_X(fWvPoeZ%nybVmD=yw981N5_WodOvfs|=0}ue#5e@>#6(j;Nheu3sadZ6LyN#} z6bOb>0Sq4^BvNID-7#nY8~P)osSZ#Pgr*L@Q8js(g+Ci{)QU9FvbC4M!0aeqte!?a z`xd9XyiyCc2WAIiYfG8i9zEklPb@wGL+#M(vZ1Ky3CLaz9?gBb5+bLx$acyidQOG1 z+tHDd#2$Sb2#V$7XO-y?c$`0q!-0bTXO0b>%B7SdegE?3D{oExkTw3 zCa@8?dp>chS0k&W;8H(KlOjx?mBSLMR-LMFWk$m^r1d)MBQ-^h{Ebj>EoyFzgtCM4(&Q?6rnV@hbg+)SEzuDvu2EZ!F-2$r7RMLb{BRJ@J$@jTb>0j%*f6N%A5X4>JYGsK>&KaNMk(80WI6d-Ox%b z{d^;{$Do!dNeeOnxM%1I*FhYkc@uNcLbfPd+){}z4M3Alx*&4L8Y1Kg9uZzh!=bT2 z+%`Y@#kHjC`_u@{k-CTvc0uan+Gu0B1VelPvld@tXm->xEWv=qm}+df>a(*!4V5;0 z%X#e?oz^LP_fDh?``?|zj!*zlqh zJ!FtC3_Zz;vgWU?jA?znZMn`qzgP|a+}&y)8uz0cw$SJvUVJtxQOa?N8CL$PP_gecxfJUVY<6@!eQ zu72|Wt0(Z4Wa_c3RD)s7DL^p#jNDDc9C-I<)G+ceAACFP3Cmg1rhHd_fRQ}2sfbFS zo7wlY5R1}Ot(UU-ZWUgoZ5`jcHQ*90A$=I0=wYfS#b!H-jv94Ta z)*1WjpCH%$V?Stx!f()p>^7PyB?Z%XdF0v_L^yIjjZ4R8XN>wAgpai_71gL`PPiLv zQ@n+`GSh7OtzUJ24ot*zl3A}(Qfw)JToZOZ{5WY(K>O#snMWDkeLId`QtJ`rZ?r(? zqlC~!`+Un^9{t&3)fuVilgLdfzWI8z*i43)*@{F790oCFCqcg#qgsxOsCZ72 zaYDVmzbg;wYeBt=02hyRxaJo7XnC=0oxp6b zV*#m?wJ~;k;x&Wbh+`34c5E4|ill+mzkN}9K;hT9r1>|WeT0XGR`Pt7g0n~-=bb`o zSVTryY*%3>Y);=8fs(h+DrfAy?ZDsbH6>(^wQ7C#PVkfwA!TO1&{*C;e) zJl7x7&AtvKm1U^u4oau4d8=Rxe-Uv9CumJ1CuuK&j;5A;TuTAxV9PLe(?P4dW??0`gCQ28^67Mu(Z^N2KV`haCD?2bPufOx<_p>Fm2_}AE)hJX-ypXGN?sZr7Dc$v zk!%y^+oA3#HS1+5*B)O>{m3x=VV*ODsy$NZpPV+2v3$>(syvvjO_jDk^(so%3sgRz zxby<$CF%~u#MM1bYxX8cfrZI%)wE_0c!tg;?TC$)jzwsxm&pwpwbf^;V|!C+jbv?K z+*^=xMcL@Ep0In|tn145G^76Il-!ky(!Z4Eig=c7ZG1_YDJ&V+z6NO9%F+kWtW{z- zSvn%Cnh^d02e^!q_`(8KjScSi@+ty z@=p$TF@GGA>vRs#Bc1S-S8*y5D5?*Yo2TC(deawsOl31Lc zjB)!x5yL1G;p7?_>jQ3p%x)+@&L7 zQwR1>u>v0{xBVq%i79B&2^a|5{(c-CG>U`sVI?7qQ%|#my;E5QFHmQ8t?FV72VYTV zOHqwdo=h$h;5a|p+ZT6LBN-Y=h_}d)7@8lPU^3zwJC#f13t)rxJPusvXOrvfpA)E? z#BE)vT(*>GalS2{bZ+t?904V|14I)lz0QhTtFX!7feFH5Z80iRIcpzS35D-r@g zosO`Gixj%cMJsLMG#Gztp-J1?RG5Tv8?DDIk~B3n^71kfqnF2=EW&ZJpu1lCtY_Oc zaH~~6_*dhEaorQ~YjDUIa5TY&SCO}K7le}mn|v&_zq5Ja^_fSs2!ai12uh{!vNn?T z5!^qZjQBufXFFfv8V%Cn<*$)HyK{}SDZ`CNyamv^5kQI-jIf;+Blm@x8Kvh;o#wZD zPpqayvGf`3W^Q#H^(39VI@d*-ka}rT)N5%LMWW%Pl;=e6?@EIlPvH$rKCDa}M^;;Z zj{km6TO~K)w}>OWxQ+xDLHoR}g_^8;52Z_jHKXF*Z4l36<3Wg8sOq^=ABxN3qKBQI zh7*ga?IO8yjO;@X$&UgF*n~4C3kIgocSY^7H(N&!fOziTx}|GyHvBS-p$C>h{4{i% zpLOmvCBjnWj0M{cFK7X`8@42kAtIM^=Zj`BE<_rXlD)))(iqR8t#@+qvf5!WHchhr z#I5m>%o#_`D{Z;spA8*GY0Wr2SNG^^u2~M}fuCC*NN-4rvS6Xc*9lYBof>-r@=bdF z1a`-G!u~%gh^wC}CF1SA+Ips#ynB*i?ZTC92sNB~i|Y29&&Ie5k9bmLYAli((f53N zmo&iO!S4&V17Wnp1zV($1c}a8C94IX0&VNs5qg%Xwlx3QzMAJB+GoO*!a@r*>j{dL zKl$id$q2X~JN+&)TT5Zi>{Q6NykR~&F8Y}*b1R=LFGXzvi<=Bu;#uHQP7wk7Wi@%j zsqOl3HkC^z$*WEvhp2es1^+om zYBMkzCZ)my>1#79Rn}dV1J;i@jYlmCHG+VL&#o#jb^*?uR#FDQZdDB^3r_Y6^9=-1 zg@Rq03!cDN87I?2#xPo?f+Y8fwiDSmHf&l_6hRb$ROHIk4Fp%3@Ns_l;VLJwIRW*s z(dlGBONd6Pg~pjQ4Eo7>9Z7FT?DT+LJ0T#m=D3#&-YZSq$EA_2!A+j;lru5<=M;qU3Fd){}IIE=!HO}RvKK+ekW}b2UIVmAN5+G|c zS#DRBa+9O#Tt;_*>6`ZXg|j=b_FdMLkiq3rqKm_QRT;p}zWsd|nrDKQM&IAel6w8tBAY?jLssWEYWq5o&$g%+I}-z9uyy)2%^q6(B6vx2_JKCEBLNn zw%7g+q`65Pr|L(p9v9#o)$WSo0B$9dedo7!P%CkF{s}*$;mv_V$)ynk7ui}VSh2dKy_c$u6w7JjXapX`~MQ}`ArLCz{_ zA)t)T6iR7J;c6mn-_ex1^bRTaUn82zn(x-q=*$dOR4rhJd4u|QKH52Omjn3BZ(L?P zai=J$i>>!EgMYEMcYYFD6V8k}_|2gKRFGVPpnOq)=>3A$pqDFOcJPD=YFVY9^-huq ziJ({w%4>L?l?HHxG65XWV-Rusa2xdrEx3a>9~1qk?6&Qz6!v&)P>&3Wak&KDXeR71h$!^ovA_Qug-QL0zTc$))#uU0G zg()gcD95Ce-*FxUq{jv@n7%n;7A#HHRSc>_W<(^UC{owzOr2i-w(WPwDD*DxCb>n% zf1q5dC+b2i!MC(C0vQTGTOim0^#dv+o9gs86BMbmZ;PFFM=RiWOq&(9T6>W7M=}ik z&N1D-wo-@12xw4gvE}ip6QWxua-qH+;JNTK9*_m+n#xB-Oz8Jf(r}@5w{)IVxOlrl zY!>RaqFAAd|53J+a{8YEVW}MGPOe}jxZsa7@EHWf??gI4P`Ur=Ie`2mXwAOsn$r-8PusO|gy$)+F0Whzu(CPnG%K6)90DR0_pB=$kPIe8Dd~-zwc{$DsR+{8j zCv;e^fx}H8>41?ixX4AsIO~Q#KVwSRSU=N7%(th5d5t=~X%=H&@PomAmYj*|ec}YA z*$$jFH`%K~yctzuVY4$0d6nYeM%mxr=jHI?7_V%W!I&Ktcwkcku->8scTdbHP8p-M zd0bVTz#+pU{e(mX@(h58+*Q@1 zuz3R=cxLjLP7{C$nnvcYEB)>byW0Cbd!f<*nny=*(YdZu$=TzP8#j0mBF=_4K(XGA zX!88KIAo!fyQJVPpQV?#f+?uOshijzu+?YrXU@a$5i7{E-h_It3CKqvhTfRB zLu64sZCh1~a5zRSyHk!?>PbP`UC)bb2X(#98?tl3- zlVvqAeDC;IQ{q#UX{-*&GM4u5Fo8Hiw}(Nxf=@lAftt%T|FvV1enBg|KzqE8B6Hz4 z$nv+4ad3kj>;U0-hxuHtSm@ywVE5lPoq;e586sxA(*{4@# z=9^zA6Du?&DEbpL*=uhzIIOh}C?`mWzuUbd9oG_|f=98X)+c~L*N>t>8-oj7h$+MfQU50l0iZEz;U!luqEAGEUc!Cz}_3jEypWwc)vW#pr{6TSfUGgr#LV<0Jyj z4{quGC9oLL^1(uvywm1C?X+3rOS8i+f1cq?2Wjqn#0=N5Ps;ahtC{)neY3HuKFWnU z2vlXF>fKMAB06C)N?|{pop`OM$#=za%es82W#}Tl$X2@|7t?|fshDjf*ks(Xy{y(* z55iNa_Vjq*sT1tUb;;oiIr?s!F;SX`UGlv?(;@WV;BC|O-opMexC#U3Y=9Zp5PJCz z8CSB^l^K>qH?=KP_=Ho{-oJY^XR^N$lRRHZmEXUr@h8smRNZIumxoWwVDy+64HygE zezg-R8YQC_X_%dIfr0{Z%JeXSJ^#p_SH;{6>?0Ebl+incM~6UG1(2aodPk8GxJLyO zix^RL>;od!-&gk*1?xY32<-vHfY)}U!wV5#keO&=FE51)>-Pep72kXMcVQKj z>Qyqyw4EG-7#^fRCz4m1-DwFRd3n|LfB1K7MZ@Ynj?BEwfG!(o|?xRUY%D0`C){ zPfj|?xy>zE=H$6eps)0GC{C)Qi&4Mf#JYO?ThiNQgcPpAa$${ySW)bZ;<%GS5mb>| z&?U~*j@}3b|Gx4`ohU*Or8oEj=pr2Y9Y?3;M!b-p;}Sbq@Lg$WS4}7vZf$9Gc28M8 zd~VR3;#UFm@amc?nJiI}RPKo0`BX6VCRZiOSBDPwJ+_s=7 ze2pUldv)Wr4k~tKG%!qOYCJ8R(jq|*X+7;%89uK_=mf9w|8aZrk6dvq2qC?LU(rwh z%}bpZi*%?4)+`4z+NE>ae2rL9UbNwJAfU|17-#W=BeRa>)18x}J`bZZbaS5zw^Hwz zlRuz;sNILYV&#ZaH-JUB*?nV->Rr2Q2?pQL4^W58&ov=<|B0X` zMCYew-yl~%ub0`kj!;uHCy-Z;KTmzAyu&uNb|H8C3-ob0qPCwNQ)hIbjnwJ#gz>ys zl!~Y(abRwDkZ0NFl)Z5c&`X8d2aG0)+gb~26^grCp)u!w%2Ag1I1|vHgj+ZgQxBM` z7S8BHOcaD`?FUaR>YXumSRBhA^IyRV)sZ8}DEzSv#BA58n7E&M|+C?~+(8d_~x$4E_X_NiB@Ogq$ z)nl}Ek(2YGgl4GbNPEHin7Fk+wyucpoqv3ohK@EkD~~xm^ekLAv$EUy zR0E+T=gxlR6y9jX$#<%+ejy#v9t!qCkW$d&T~``v>CKb5O3mbMJuu`N1m8SM2B`90 zuQ%JFQXIBEhNH%xl!^-&u7qAB4?AsSkh|1X1m)M`=RDJ5lozF|)k&4r3IKUm!M(h| z6&q!;dVEuo;2e9oNdGtm1xFlUG2r?(5zaM2(Eg7Cdws-&l|}h1w-;0iargub|`u(TVBVCb2dshhH*4kZpjD2?mrdKaEpy+Yg?`cWLwy5 z_A(%p^nUFZnAmlaWwo3~b$w4`d@^fb?GSy1=|fS}K36hkgtXRKb)IT_pu}hfEQuoJ zFoweE)om;Q#ABtYO@I>|_xNWCnU%TVIm^ zXi0lHow@L5*@e7dG*5Lal|o%U7tGfbAuErC*+j-F1ZDW^oYUbS!A+o0PWqnB&Y0N% z?h|f?ZC;S3Q&4@FI7UQhWOgI0Zjs*jgrdn}*}P9$X65aNk2=aD{=-%?@4U|iI|t~2 zsCFwJc7FVrA$}dLp=RDdaqXfLP*n&Wq9E+6rTEFdUQ`h7eMUu>?Wl5xgZ*Q~XBUT< zR{)h!5*BQ#r=wPywC9D_*W^&WzcM15gm=UTFp!ijO1Z z)f%ln+L)37J>23@5ol(+W&Y_!9ph+6bs{o?EK#x`xV2_3unFkP**5%VnhwT3OkdP` zos1PL@+>s^Mi2qXQIru)ohdox{7QiBEo_wk>)Mw4OFOI91kg5R;lSk?^3(O{*p6DJ z%;Y764%YH&YNonD7ibchig)SS#XB-(AyGHoRWxNSkW`U@Un~sJ-%)A$Y-W}oo)7U} z9NvBFVFrS0wy5|!vxc^Nsw5eMqlVGhW*^)fmFtV{BqCYXJu<=~}z=4ZL5 z_P8?ZTKSqeyYTbDnrYzHP63(<00Kb$zwpa+44Z7@A^T>|ijv2|<-H8(gt&JW@eDu| zYbghfdjy##HTbT?r4ojOpxlUfut51l-H=CnPhS+7n zu#x<0pm>|3UeFBUb27sAi9~*x;k&M5cR93m_}j8qdYAE@cG|JJag{}1N$yO{)G_0A{X+a~0)s9*3JSWYY%;Y99XaQ5cnw%PD zAW7CXJT~tOw0>MeIicB@$1ECel1)efU1igD%0`2Biw7cC<@ysQ>-;p&H5R4JPC7unWaQ>4f51I>#rR8B9h< zwJDaDKR|=yw*3V+T0a|`UO^fM3|XW7s0cagv>MZ~`nNJ8a_+w7>rQd2ks;j6S_)4~ zn0DNiALGft9w~zggP~xl2;u=7)A+rY0N5A_ zDI2;9*{@>>i9BJ`DPjYvYQ|X9q)^^`lgT#dLPR4~Z0+9J9X z8CSMC8b(;3TI9?^-$UyJZ3sgm0J|z`i%?_eeYYC>x~gw+iKgbxpyI zk5JJ#%-z~*4+fm3?rR#iB7SO&7cWR}RfDARBh>XuUg;!+E+$-&;1Q~ZA~t2E;CRFm zcQ@KM_4$p-I@`cH!wg3;8c;AF_XD>&ChwSldXeK#?_PtLbsdX_A&lXk`r_W08!Xqt zdQ|1jgJSavMiv~r(EsW1I}{NR`{;qg=CkPg1&{`TfR~$!r5pltM1tU0=E?`mVQ-lT z)K^ez#0+yeJL=LatQ8;2IFT~bm$8w}tS|mCtN=a#t+I0r^da&iP0mZN%sU$jq&p?}QwaR$GR(YMl93fPU0$NErm(*v?v9{HR zuSZBqQgQALGMPSS%d=OJWa={>0?Z#QmWo~-FbC)UaG8+qe(HB+5&UEwT$GLovw4fG21h$|U7y*t;Bdi9j>{%D0?I(gRdl%9t^oQUl zt1;Azox1j;ma)~If6*^z;KOPTu&20kvI6M&y!N0mhOV(*e{`pLL69_W*j$l{zxcXrzx;#G{Wp$N^|g zFhO``{t`~`e|^!%a%9A?kTS{33=YETC*x8x0k_oCEwtB>U?I&Jprj{?iY6}Ak6q!$gL?dK4@T+96s7GMK?R|8VWEKs3W;KDktO-sZ!b% zgxC~7qe(Q!%e89iAeRmLKOftN(eQe}#+8p1NFzlmcqipz$k_@HiA%OrGj9G$r@^fc zcl{fH?ieck{wthizVBCUfdsI1kG9P{Pom7q)Tl!LZNbGcJr{<`C)uGZu-}D1jI$ZD zKM+aTl|yiDC*kCd7K07YD=;beG^k`a6lb!R*=2Gp&A34`osTaAp|j|{+lN_Szt7Bz z#B*hz*0ur1X)FZ5bo!QQ?af)g5V~&neC`?g!i=)+lkahk=KVr7Ye2QlghtHLzWHR) zQ-=a|Lz4caLM<0xN-l$(C41}rQ@$VeZFjJ-Wir~oniWU60f$-(o@7Z0HQQx1;(CM{ zx4i|4*H|sEEddSbX81vt?kSP8BNcmn;F?=79FvdjFzbcXM5fr zy-ogiT1F1-$>ZAH5D}ng_ zYWW33F~L>y@w2{l$3)YG!r|rw(0O0>+sa7;Q-Bm5B(ne;Y>~3_(gzBhj`zjGr-b9* zac85dym`3TfPfdom@vmOX_=MHZ&x6q*ms3P5enbpG?%fRp~EBWRZMGB!f z!LP1h7qZJ=;7!{e)To2>6~B5|j4jUJ7(Oz*Zv#R?z6k}83#j}>jsYMcx9ZM}gvm)e za!qd31-<(s-@Ov)xBP9z? zl!z&C+q(?V4qOmN+1SKBbXf zFsC(G&29?$OhUUu32?Jj-GU?bB5#KBm*2f^Z@U^A=+kwaX$;EieDT&9Lj$wyzZzhc zzY`+&;}~|11)*$~6?AL&U>j4Fn#h{$*)e}awepe=ksfUs&5`l4W6$xE;*26MGk)_- zExAktFTq={;4o!2OPopJ#)~gfrDC9gh)dglKv=F6cKYjp#W{Fioj8n7*7{LVCuJ=T z2eNv8Cnq38Oq-r;KrKFA8B zwA>s`^Ru3x-8XaB=bZ@C`r8qR&&Z(r2sBlNGDG*9OBH(RRU|yq3 zYQpB7rMh%6OdHZ-3^pNzTx-{jXhlY#xx#ei*!yDRTyGgh)%w=T^io>nF&O2gI3)`?X<}&u#Pw@yv`e)VF*8p^9*09kG8^c2Noaxm7u09&EtOA z{$pUjb_uknCfP~>dv!}`*(LA~hk%jZ}=$yVBZ+j-TPm-}NpYc)6X1^l8 z#@xh3;8*qJ+y1SJY^Wt!^s@<1 z9O3JC9PDD8#lIG%-}A5aRo6>NBYUWCY>}Y;b!iPz_7Vo6b!}&y6fJg$9S5&8e-%3% zX;*#HfmhSKec@<-Vzc(p;We7qjvZ-5e)}Ji#*$mw_(l!MNnZ)6q~?vp(Zs8qQk2)G zW0#joVt?&ORlpx+E;_L;F@yxSTNsh)tLAy)gg?8W-ncA*AJ+YM`ixMO{nkKG4Dxzv zQ-ys&(22PLnwZx#Y>hX(&<0~`8`yEx<}p@}!2N`3K7-^Oawc*f&v?GAsX}6Zgsa~^ z?U87QKIkV@`7Xf)xc`1JmE~d`R-DmZ{}W+mx}U6Cl>?Cnzo$Tokd8>vuF{1&rlZ_? z+rF^)J(jBil{xel4Gca*x(T+@ls??xAwZfB$+Th+u7dy+IbzQS>@}BCq|^dszJS70=Nj?<*>i4=^2Pp-F3&^s|hmFNPhpGbA@Fbc{Rgom4LHj2zTOMM1O1P&{dxt;=B_4}cO#rca0xh%%WsP(|8_-i7U!3k4CF6C-82K?7xlo3 zf`U$K)J80_CQPoSE<{5|;nxH-`aFy%R=O%3<*$xNVRw!%^+FM<42AbKF<4Nu-Nz)r zDJ_h4JdchUcOM-yG&+*saVwZs@b|14x2pp>iu=f=;Bureoe40ilf!V4hkaXtT=LDp zgKkw40N7Az1$)?Wqbs*@l6F*-I%8ypMcT}?P9U%U^fAHw-da&sw&z1>WcA@f>!Ur| z+!J8juUS!}8@oA!x^y61R`_@n9Bf0V<0WDJbGj-6nNA}|fwB>g&wqYej3T!HNXN#N zsFBobP_OcOGod8Bl6H(&S;SzrSD*M!rq!J)yCS>q;yVjl%I&HCz@(<@#*C{Dl$1C zg4^Ze(gL=n{gHt(Aa#3VZ2B;8ue|T*zv(v|92Q5izNvGm>H#a)eS7Br=mD4WUPa88 z`2|+)+1G}D^B?)5M&+B|aL#lx(O|QL-&{IP21(uPA$WM4N%(NR%kvM4(UQysxcQll z_+wxeDdz%Ht6&4i1Mgj0q*bLhF5#$0EUt(b&l;&K{6}YngKjQ#$et!C) zL5^&1D#wFrhv5D@J43_?@TU)PI_*Xk6j`u`FYJ?fRcLj$4JL4XvHY7TzN;=!J z(_0imzDC8p{)0a;^z?y>hdp*S;1mDHf68b?9Y!^2D-nX@kZbSL_CjkEo0No2W)A40i$+6VP(gdx(8(fmmAKX4IsR!{Sv{(}&7c99kWdask6#v1%{-LU>jjRT2M!R@z;QnWeb*Z8Ye?f<7sTjS2kp=ODGT9Z51#1Ca>MupII5`gjgf2U3`@cNLrKK!Q)-T`-niy_0i?N+Y}?UVuXv@dK!DBVV~H5vjvGj$ zXD}}qEVU;%79l5{z8>Mh;B&cEd_=(&FPp&ndT%8R+!10lOnfbsNB9{B4E3jrc$;7? zq?YqHFtNkLE4dn2w$m_G!>s1fP6b~|5w{|<6iamPeH#+XEH**DC93#hZE;@*t5+uL z7D%t)S9|oKUnaikC`sNBi5ycX<30O)Fcwa)E3bA+zO2pAcb~*vUH@>w-wA8p>ewb{ zt=E6J3XKhxBa`0SrYR;}%)9(i?UNjuTPcrP+?5Qj_x9oTn2dq_)3|VU#jikV{`o4& zqQI$`JBqJxCcV+C^cr*E(&&wi*UZ)C#MS;jCy0CuNs{}^ef^kgw48Mgaq)cJa5%%E ze26RAC6OS2nL)Or=C=bfoJ`|hT>{m|_9;|EOZm9ETjWvA_u&qH?`pzq{R9nf%Y|=y z44b$yTs>v~&i_c<gp2{`k7Aa!K<#Xvd{^=o{}L(_Khyj?}iuGurEBxo4~oW za%T`E>pFUprS23b7!hGjiy?$732)1!_+)9!C4)Anlnx!~FGGeqo#)$|{#K5(zKgp~ z0@O+r4fyZJpY>WV9_K>(s?NsP@3;S#6ksRdoLI&O%JA*RS#UU;CJY7wdpz#St4JD> z_G^RJZz<*dPZK-NQ4%Z20wX(M(Mx)MwoVRN!5mqr(7?-}1`2cLC|~{3EE{ja*vvWD zyKe9na@VM<1=yajX)rB>%i#4fK_W4PK0hl4qDPHG@6GWSnI*2yAI3{y+C~?0J zQmKnP|8{>*B#lOT7mmETGOyhVsZl*+98ugGQHu?Obq`+&I^nNKm<&>`|wJ&&ORQ>h!? zuzKt4DWL}!bU0EAkUG!{Y==(NxLL)rBne-!LqZV;A=hh)D~N1uQlSN;sgV*(ydm0%JBd~c}#MlxvO&HV;}yR zFpg{5GAwj@3ES}8HgoEA)hQ>$VsW31PQVr}Jkmu4ZE$>2t`tj!m?tUozyR$Uw3|u^ zd!JPRZ9mhnVr3(aTL2Da{fTP zU%R#Op&XD00U%vCHKYHc#efY*>j0A%MWs^a`dDq%ke*iFR!;>)d>V zVd8EDNg`C1{**`)p=6r)vdTY9UtzfG+j~FH1kX>~b~MbSX;8@SzOoY~9}2$*(EsQQ zYzuTtIBl_=G|Jyw3xqsXg?4gWEwD#kK3da2ZGN~e42Jyzh|@)a?*}9% zK-)nmZ?Ea0_EydLESO~Mm$T9bMlCTsge*xmu{W9c{Dw1uALPl-Je>st>v2TCvXo1= z`=H_mrlK@Ig(2KwD8ROe2kOj^|1K?jDayQvXbO%7&UPDFdGFZU8jwfz^b-zCj}pi4 z_lbr@Y|Fx{+U+p#R1Y`;u3R)lm4r*O^1u=IxK$LJZA1+!$L;AnfyB+n z>Fio5xfJu=DGIGr-O;0nf4EI(cEs=Gs?BFRoDxDKPK2VrT`1C!dk&NRHx%J9K@X$_iQsdh z&SXD{)o|nHRV^q8JE$@ZTUx}f{-m%HM4hj^^#dF}NDXmodqr8!DQMaTC%zGYQgLdWo(ZUvlq9=>C*n30*rm(= zF>IPHRh^7wS(yqc6tKfz@ekXz>L;2tF-A4XYo;+8?9CD}rsug-o6IgncV5VTpBLcJ zhzu&{6Vq9&&>{otNK1oFDL)%=7G^KcBh4orJ8beQYw=&5ju@&DBe%?+yIiIB%zIOY zlCANOz85M_^5wK1KUp<_FO2fhnEraZ(hd;lfslyTKm+kqO3A#OSOt|RC0l%asjFt& z`EzkIkCF?DY+M^?7Cc0ON^6E7`%Ohbd3|o&P&`B-t~Jhw4{jvXzS^cy>%K(y27G3r zh-S~A`ihiK$T4=c4=NK*mgZm@2X$1lgOIe*U`%VP+fp>^VgHbo)JkD?INhF(QZrFa!=?dgLw15%gB;&&U5V)yc-9F{WQZr}BrbOfNQyGm2z+nzP)jH5zM;~2 zR69!)dut_5zUS;P3;l-3c_v%qt=4P z#Ce>kBP0%VaqW1!mCeU*#9W)}%b?uCp*>=I)&ABctC(AibpTz#Zk2MG3+n$~$8g#Ks7%e}R{lDVAu&Tv40iUM) z>%l7Cm|?ydu`b$ZCAm>57pSd+Jb+Sxen7xg!V1URNap8KY}hd=+`9U)zsemip{ zz48QZd^W@|nh_PK_a(O{i0jhk@ZKr=F^UvQ>^89Pg zt&%^{Uv7T(0f>Xdx~H-G43xR(EX4u0`A)zT`c6Rr)1@T@}Ga;Gp`2BgVf7Ulb_i-r%$-=VO?istl0hSzfjPntjU$!@j&xyk#|22spk~v1Gy3w>`er zApLob=WHeBp|a$4D<;qGckL0QRo&k(xJCS7Fb<4u_2973$2;wVG2S}+GJ+|GU(xGM zSY%kOT85h%L)Hru%{RX=D}4wijFnUu77z(Jfdtc3Sni{_96j&?j`R8W$=Q>VrAE<8 zoHrYV<{!(?6OAS7wV-?wPzp|2-Em4s6x@3a-BfeIsK?12^Oe5DZ4fV|xj$$+4~b;= zsyvmP%?T<%;`8)`Y#ATb3yyRM5#Hk|+u?_`$HBu)zRe2z<@0Jjen3o}++RF44Htt^ zlRzgCo(llVikd*7rQCBY!US;g2r2*`73!f{!2)FOf2s$fo0Gg)SE3hm9xlTORxtVK z#zFG5k^S1?tu;p@Qbn9FcF|`qq!5y?A_Fpytx3SfyD$q9;qNy{W`ihu1DcH=P;24B zh_P$0hwK>SWoCfBrH@V~Fo|=P`O8)vXS$ZYhk^ z1EYF^7B40lYrv3-?y$&Y;YV#&sT(e#2*qswBl@frrLvGIZcgWzHU*zrZ#nc6XB-Ge zv}Hu6X!uSo*p*;}J?V$E8|7ocZqLB(?fn0OlAJLw%#)OQOAj&wilt^)I^8?yTjB6x zBrV(Ad?*%YZq@k30c=7n!_WR)x&6k3bvodQBcZB{2e#%(mnJzEKi6mHm1&C^EOqNv5rSJ^O@ z_zYJ8;jtMpxA9gk6lJ;Sb{y<2|l_Ed#YXBi+E~z~KelD?)9V zKgzrH)q0FdKScAXFZ{c?mdKWVgmSs50G;&7XTk|yIwqXo_1@qUfN#8#VdUJkCFvP` zLJ+1_UIgRaJ*jv7W^rnO3cLIv{U_&Ohj|3*Ft$X47c}?2t|dyha`cQ-;>n=zDAZHW z+g)l1#3eCS%8t1-dsOE*2h18D>9rj8XT4w8&Z3&Unr6nF;{E<(?b;iV| z2-ShTgo|qAybeRV=67T8!jFB8UHavh@Bm4UXM%36tfnnf4aQ|ht4Ooys0 z`|6xy(+j$;BOR2p9WTb!Nyjk12Lj*RPp@&--I3%PiL>P2M1R$h*Oone;1l40Xm*Ta z$^mW4tbrOl%po^CF7pfBX{;>!3u^m3HNQ(U9(^R{SgVlwBLU;BLK2#O7>uG&CMlv~ z_U{H^-We#_!2HIUcHVIpO@0i~taR*dTIw}zx7maiq)&xpMNrJSLojSc=!JVV(jXuH zpa(zHee`$K#ew`+8HG$!^f^k}COLBOMr7H#v;U;esJ5|J{o_Lxk{GjnRvS za70viBqelI*ip;xfVspL(5<6)S*zTV6Muq2EL?rRr0Ml*SFO(^Gxf~P@aCA`kaSn> ziVsM&>l&deP*w=~gtxmn-`-mEXF3Vc5yG(p!$ZErHoku`kNLZ4x!AimnvoR~9(T8t zLAQ!3X7>cbB$N=#FGSgM%+nfUm;I_Wnq*#0OdtQQS1I-(8~sl4qTw5ijxpM=%zU`D z;^E8?ma-^oY5g#VTezB;iFiLolCt39`d6!nu%v%)Hr&-&v+`~$6aJ^hX->%-)g&5F zcd<;mXuU#Y8q!Qjx75R5KpiW*#Ra89va3ppur2EI_dH-)Z24;^vDs%Y*-u6>xGsr2 z^NyC_ykVUZVaPDIJ`a5)LYlRr!`!*XyBceE00sy9Umt)(P*;sAXn(Kzm-AcnGF zfPPjf@r!$z%Z`Dy1W~*=?akm-RVhgO79`!VWc15ka!4+XvR8P;e1IL`Rq6sP7rBkFh zEI~|@Au_j$RjS6_l&Ys`xWrr&iP(WJ?uUR6oA_``d#$-C@XJi=Kx!eXkBejmBt585TL1wqTJf|7UcT;Fz z&h~NuaLeYzmGfV$w`)eY)%rJ>-TEUxI)7w2KsN{{LPWyS5ej9M8ODjBCHT>4`-}?8 z0LlH-++a}GJE^v(Q-joSdo}m8@(dSThH)Qrd+S!rgzb9u3a9vL)Kn!Dt#{1%0_Bm=c!`@q0{2ZWrlE*n zC35XTZ;4?4EpdblXod4Rao>n%&ofy&KH5W`UL;KTS|g`pYHHxk{f3!MVT4bwIEQB4 z#-C+D&HCJea_X%lxDlutYpAbagP&A*xC_{+W=|_@3|kwhGlF&w)yia@tEli*7w*^J z_wysci@dsT=DO3$2c>qGQpNc0HcbPv(!{2_%-EGE1VoW#0PEHxMt}^03zz)^v2=>& zNe7zLqS-+cPxTgxe|84YD)9JG6Vc|XsqWUFo1z&{H`H~f)upeg(XepB`+KLfCTO7& zKDGX0Y|ae&Wpwxb{96*9FuC_-=S#g^(vs(+V*n? zEZ@h^mdA1}p*W2aGa&GF(t>7n#TFy?b`j)4=qX(4TZEN<5}S1zynuLRY^P0y#}>&8 z6?6Gm70l0Imyk0;;c*F_Mjb%jdPd#gCcn56_z}sYM*QA%+=&9|h$Wa_?o{*+cFvt^ zp1l#LzB)dAKs z#xAu6eaL8}xRT&dEnbs)UlX z#8_Rot{;0n{>#{9_J?9SkH)}x>uBAoTH&UrdTUAiL1_3hbRScfY~rdJfAQ{}hC@i` z=M7qIrkMR1+;nn`<}Z&^P!@I*A_M9siN4c?dn^Bom*G!m>tRq}x%lOqOx|s~b~j13 z&_j#Cep;&Czwy;%Nf|d#Ol+BT9uA$*L`I_J(ifL_y}@>D#67ktM!E$ zagM&p77s`Kv0_9vDS*PPqS^3sN7)Q4p1KXn_`t2S?ZMfbiN6ZFzrefLf|K6Z@)3ai z7ZLoLt(pRGrSwB6k~>1x7&2x6aln1f1rP`rrWUEejhAa`rc~v){15r0@+7GRsL+z^+AtGjScS!)%V~zAyUHlhm3&?7YF2teu7>=TusDyvV=zSS-6cxg z6f#TkVrldU`F7D>k_D{;!F%vLST|Qs+_~4Y6Rk0a!G28u6*)hVDO%_d} zi7O+xBzhp(XhEnRC2+jCVV0bMsqSj==64TJx8h-&1R@r683`PpjMQOw8q}g10pW$~ zIRGU*MK>iqN`5?`K?Gt&vVP?7oZ1f~TTT7fLWos|epxL!KF$ir(^8)tjMqheoHSrc zTrJ@Cr#pUin8kGs`Z|^!dqwX@e#^}9cl3)ThG_3@O}3Oa>RGl8 zyxf#CxmSN?VY*ffBz5JyaY9Xn2nd@WG^vMoL!xT!ycAZ3KH}#eV2Y@ z$p{_`xREIyLsL|;eAd&fS9#U@<&2yI`u~c`YQ!!9u;#isLoLd&oki14?&s)bUGQn9?wW9H9seJR)vK4mez81mPp^}GGlsTb0l&>4-|7LR9fB35-nWz+p| zzIAW?0~zpp_6VfEpfcu_J~x9VXWe?O-=M5dBZ`}$CaH_1u`D7 zx&<4*LC47G(}=#`Rb}qSh@MyD!qa*D1ei|*)y(l_%$iMZWY-`Rb1OF{nkt8W3S72K zVK|jEE<*{U9m>k(rS$(5K;a zPq9=AVLlQExJZN`5#pFi*Hoj9%%MWc@4;LL)t;)_;zdgqkiY#2{7+>}!I-g|W3t)l zl!$X-b9gd`;o!xb`5PbY#A3IdZC1Q*W(IS~r|WjseS{ThsKinNzjcmgs3cDq{cral zu5t{5$&G09rp<`%S+kO0UStDWQNxBRxo9c^%ir+&053$iGU@y^mYmdQ1-lt&Amh4` z>KDl#C5DN^UqpjS`?7CVB@3?qS35ryl=6Q3%DP2Ev4u;r;tTNCc*aMpF1%!|59*%N zM^h24l~|2Y7Po#v0{d78Q7K4>?8HT0uBQu`p2Zl$<@NtSKW!u~3ie)}U}*$x+2>P4 zA~a-4yrzMqhQc@g&dJG1vXi_leARun6A78nX}^e%ncHOBiSE5ORk+~uXlR3;`BYBk z#`3i;G)!&_P7?5|#Y`LI0hshuwQT)u!v6GORl!d3&fGDbwqbU+^_3kEiUM%2EX}D9z8(nHFESaNj|;U z?apYDMq0z^`br?K^W^4!{VszaxK~=SeG-#LT&IqPK7c;%~#DZrbCm9K$CNV z1g35a8G%oD2b+XD)4~W-HUVZs35~tjU*84v`>+RpKIu%?ci=F=1;Dw~)R(m4%QiU8 zAOo4#{=8(jzs=+UYlLzS=j3{gH*LE8W=KNxEw=t2oBdFW>h_IP3bV&3eN#dw5s%qs zy{q}2Skx47XBlNcz+$K;ZteP#Rfezr{?f4#JSWfN?t9K3z#f>+*D!o3q^<96Ta_QU zfZuL#uQ-Zz#Ub8qDjd};k6q)oTg%gkJ;?$sZjyiEQ^FHA62R+ErDoDktFuSwz54gl z0A{4!in2ztJ?873DYG>*V6LCdxAVM3kF?;B5`bjA0LW;xWi&yvl(ga!>c~$*xI*}WHZJw! z-r=WasjzqU5iDVV(NI>2`+$r$&J2S-pU)i!I^o5C=gQXFjW)yhhUyYic_3-9$HsPU zX88PcOz=tIC3kR_h+gnP8iRRt2e8!x+^yPybj|-MgaS7Pk(M_9LDJo=Pt)_9=7uiz#eXBY#TzqoV(ce)8$b2Q4|rjWN;ONYroflLb0j8kT z<3yF!;k!0m^4^20(ndnyOaGe6*z=C~FI|Nc`zW0-jJ1@!u60v~{1kf{BW6x%(?vI} zfKBHER=DW8^MdlS(!-w*i>OEKB9(G}VH*_@E7}mi%tO0c6dVYKZSw=hHFjw)MVnlL zn}zzDDy%Dvf8{I|W8^Kku@)bEeLU;_`k)hcn=}`L&{~mDKEDVU;MK9)Pf|i437TC^ zC!#Dgq{tQOeRbw)-+eV=7Tgf{EIo0D%Fy56LZonZubt_Z*K!xw%aknwACk0w@EcLC zJ}~NkCd%WOk;qIsmSgjzLTk6=0Ps)o#=v~eqEw1-rppn%N`ExX0TljO#H54s!$@}e zAMvnI;a-V`STSZYDB#h$P?k~M)@*xsSjTBH>=^oZQv~GVbGqBqMg3MQva&jw;iZi- zzi~^S*<oboifqkA*Fws!kGyW`*NHsw=EC7#(s#cuwg?&G-TM|)wxB3X=$7)D$e6;;feAd^(J=1T~5XRLF zo1i89I`8X-JE7Il8D_*li~6YrR_|7+9+1qndE5jTDtd2Eh2QkWX>I(`_^x>^Qjwlk zVV&zARQG-dt#G)ePN0*|%Y^?z7C_6U+oLb(Aj|YZUz)BiGEC=-gv>n4u4!?>pbXSm zHvlPTGaBFGOw)@o;rTmliG*o8D_vo;?pdZliMw~J&&$P@zJf462_c9RujReOBTWz9 zGNd&}1dqa=0x=+>xLozvc{VglhNyvnUm520q-6LwYUubSJ?p+V|Ht$_C@HV_Uvkb( ztvlI|iKn4jHe_Fe*S%oJxeVeW5@x3Ny2Ob88Vh6yH50 zj&pR2v!gRS#M3}VoS9f;b)kSdhvbSxT&&h*57$wkhA`~P?tRA!Yd^G^{$wN}g_UQ& zJPdgvLOC}2?{8zIqU}nN`>3=93%jnE3f)^xjWxmEhO(n-oVQ?-CLLdyG#=2kJbDbA&Eft;b30|r zs+B*J!%Hbmd|syHILO`s8Dqg4hpvhApaL^+=$uUf86$N=+r#pBvH=We#x^(UIu$yHaXr6t;P6?_$Ga?yZfnmlp=Q4s8 zZuxd5z(2JdE1yUirCc^JXCKN58$%B*8hV5;>S8Pd4#-;aV33`;v23{|D9R+3@o0n6 zQzBl(nc7YI=_0@Qbwq~+$Y|cBgiQ@YC%_jW%$PKSDc!*Dar<~#NL*>Lv2BFehmdx& z_7H-eoDGdzblH^NvrzT;tRL}9j8?BIW_pThiVLjmA~DPh+P;JhPh^tLI0-}l zCn3lvqQFjJ4RNe=n$hd)v^z~kOg(Yw5qynru61q-cjTrqq?kT}Ix-_kcExh1Ufcc3 zm1l;lR$2fZI_b>RPP=%))Rrd7blqXA1JDv=Yu!MH?Qkt09JklzFD{1}q3rIOS?o{W zFalOa&=hYUbFUVJtiV(b-vyc1`_6_jb#XEN*mHg#;NQhXy@S$OQjMIPI?aYecS9~q zt@C9V5D7<-Xm8U8uh|Zkc`SGDZ^?Mf2o;vjxY;sxb|XSF4VuzQ;$n?>+Ns*HHm+cD z|G+Ve1)^-lPQx;82)yBMB8t#aC(Diy6;fbkDgbk%i2vyRZ*F$BbG{AiQ;$g2tOh5& z5|$$8@QMmUHQXG2kv=;%=k#K+oU9oZ7`0TcyWB`lS8e=lBO`(VZ73rg494-gob~+# zxN}bU=Gl9(SGjn2!@(AzPv6<5UpWJ1%Gb+30Zbj5@07h&{xYigUHGz_KY|1XFTAvS zV6IOI*(~GY8{+9SgkYcI3R0S>Y|Ci^ysc!mm9x5E<>bXAHl(iOawa`@H~xz+)s28w_`FIj;>dLo2bv zqD&C3uhlf@`+m;QF+M(neia=?x2R-&1XeP>ur7NF{bH>>oI67nXzu98)XUzdz5Oh# zGkzuDR0DiUPL6c4jG9V%2{ zF)89c*UcPIyJQXqJqjIY!d3<*#Dk6CsZ~2Ll=&T z@LiMO9)?$TI2=0Xw+1oh61%g-ek`xmVJsT9ZTqVL|33i0{7SmVY^`+xeqG)_qpZ3& z4Q$)EXM1~{IvI$9jKQbB%2`1SDvc*3E=!BBm+#tV|HIbvyY_q3u=*P%^nHXYPK)cx z_hcRTY_=aVGjch%uCY5Kcvh}V^dlq6uGz+zF63w6Sh;#pfK@Da9mWU~0zqenQU~7m z`EjRI&~TZIdrPe$ha7c&Cy@(M{Fxi-nx-XzZ4}7S`8S>P1~zn6MVyiS2iW5=T+YhE22ejzK@EvJ)CcY)HCu*5s z3U1s4*#NwvdhlOwe^Hudh+TdyOK8+g*>spPww*(BqgtA5UbYCKWQ+~w$4uf9x7Mj) z;{!zsPNXJ_M-M{d7bsq@ch6uNo_+QDDp{LGVQ>83d^2;y|I>-*K_n&eRl6*TfcS$1 zhsF8egxNma))Ci$l$3W`+&D%Q44NP1b*OH=1uvCD4a-jLr2=wYb^?qUwlkBjG`YXg zl?&4tjsrH{8gb-`=!LX*V)+Iu+u(8zX#;c@bmSDrb9G@j8@M|0_v6to|{-$ubzxBqJnhb=hsq&~m(N9mZ1TcI#1`ixPG z#%M#)pcU5Ey^VL*95^@@epP`@qS-IFEy*2bjXmx+fqXk}YPY-8p)n&YY>Og{iGoNHW%|8?U(`R|;VQ zZb8<~sL%T~r?%Du8lWR1%KOGx{qk_2+%GjVn{6B=ncI8}*r>1M`U38`z}5Y)#HQQ; zhePlOX`4rI9kLLsV35u}3_?K50tn|C%D^fArYgmF4B=q)g@;d_WOfZoxg;^9;k~Fm zi|TfEhu^5dgB85O1B3S)WZY;MT~s5)xNPSo(0g{9c81}G0Y;c9#3%G9bh_cOVPOs~ zV;p+TW$$n50QSCK4GHN=`snLAjnE$0L=@4Ci}r&B+E+Q6B}z8eu^yZe_y@;f$j#@H zsF+3qnk8k%h=`BrHB+OzH$~=FjB$SsVcWAWWLrsPsLhUlsQ8UOxrjV9uE(2jUH{!v z3V2h9uq;lo9~T>K++uIAS_zHBtrgj*6W0C|Mjye5l zuHYq}o2|WU3iE1JZ)&A?_%>{U?WB6eJ1Rd$?mhw;D7iUP*uKy&f0t6OAEJfJ>`WUt4w(DW!B|7?L+ z=4n}m#@MiyhDc{0qw<)LMrE8DK7mkldWWNKjGL9jQwQEO+TM+;qT$4Cc*{T=>O_UO z&f5r)Eh-8`z^3_8D(!jTYqx;&7eTj>+ekQ)5Q(*n0(81Gd1>SxR0SZvrqVGB#hSM2 z>Gj>yG={+#<`kODDh=*1U-ignQ{joq)UbB0;cpYl#xG5PpzYYobl>* zF_~1Bbl`|%BoFg~LCHpV9=^L--m*778u+Wu(YsegFiHW56dJv`@>w2@F7dm(^9%PQ zOPAE4*Ay)?z?ZM+FmAPqgAtw69Avm>geT;noWbCovyvwV*!qRyw;1m*V6{+sLto8! zQrX?3q2^xDBC1{fmt#5IYl#nsx|Y#SEg$CVq2puS+B#X+gqbo~6Lu45quNbez%$KC z`+G(ZxxmpkU$585zzzGKCq1r-w66{OA~I7;0b<1<5(qwOmhqI4>a!L|;^+m`QmnF% z;(wO9iChGYi%y!h=)Boign|oPKKAc8;p9L~nT*PpGq-ra9P{sJNu_U(Q8tRlXoHBY zVz*`!{UC>4H_JyEiWH1w==9?9Qyk8VK>+dfol8BMhr-psrICF*F)AnL4dW{|<1+GS zIJ*-=PW2wK`(EvgoH3HB@GK#tA0+5mWS(?0EhQG)#Q`&5?K#J7mp>hT%8P8^FQps& zK*XZV&{>iw29?3A2Y7hnxjybNv|H$J7fB82?%h`)0J9p{<%f}9KY4l2v4gE-Q;rZd zev8~M+H~s=Kn9GiSsB`Ok|M3G>5n-iVI%l_!@{D3XuAyeLna2gr?H(>NR1r2*v~m@ z>_FE`p->)f>HVRKw{CR7?nm!X)%)>AWmz2Dof5CqX~&awJBQ)rXD>VjX7`;}O@nwS zOLIu5?H;|_w!Af#zK>+8(si_kElmYSd&{VUX=b}F9*47h6?mNH1Ft#ZMgu>*s}Fc6 zvwylE(euf?!Vvhmuv}1GGBY5%;SP!-WeDcJ(^ALu+0Glv)woF zAq}f8r%2sukICGMGurY&_!m*qg&0&apWEc#J7%gl8s*7+w6uZs91x(!z|08~j7Q>0 zK`h3i%&^`%9z2m$X2K$%h*16aN#!l&5}0ZiIsrhlRRYUN+pUat>;MYLo7jjKYh$J6 zk^{yOqp(~(c>Mle6KGMIKIlO}06O6n(!Fg(B)M|L`;K<$aZ|f_p*U?W4oYfR8%Wz} zg|?(2qY@^(U_gI2O{-S%0Q4bzs_e_Vea62r?mFV01LeuYL^Uh8j=SQ(Usfv>pj!j6 zg6Y``39@#`x}&~#XFLU)HmTmGZ-ZcWQA7Dx=IZ{J$JimmmLqU3AV6HWPtt}dc91wezNklW<&FTn(Gr{lJ?;gvWm&A8^rb@INq$T~vY zlYfjNn>N&VVbvmhFJnAT;D(!)X5{TX!Dj)t;as>xdQ82zS$#2d;MoD(CFBN45=uYx z>YcqrMQCZFQ^JS3Yhu#{sXC)WMt%^!X?&Q|Afh5>%u|!b1Kn!H-u@NTy(_=%9`Y&9KeqqQ{ z)(`T^oe)SmWzPf#IL9e$$}vJ3ah5zCeVw47{gys09pm~YVo0fg(^5Jqzmma462FDz zWo@B_Nu?^Dw1pIoS)QSI#vs;2B%La*kOlGL>Qs}ozdmK3Hcfb^abEl_x!rut`tdU? zx>l^k8?=wAZt-9wu@Jj-F=wWRxT|M3m7=Ny6)@)*+Foz#Yx-gF0XA?(P3EE}!yBs@ zq?b33T^b)Qbt<9YHACk`{oR(v(^2Poh9tM%z{OIftaH_bwQ;PCEt`{bcgN)q7QwdC z5UM5p-|Kv@BjMbJ_slN8aEcsRtHl7AW+7?jjPy@s*9^U zYyqF`HF|F$kW3WKI+S_H21rc-q307ajOutE2)cRJ2rU&&dE+ zf8+ar$w1g%u9Y6PYo388Q$nD*H^j4OIpOX5hR%e6&!VaTeL_V@2IolhIQ>5L=B_wU zVqU#g0@{C03g7Q{F(5aW+f0lK1lV{ayx%we?gRYd2H`p=)k6Dxgmc1|I2Z1&_)s^_xR5fDgyqH z;&uS1YVw2BKK$0|_X-^u3ld!eUZ}NiliS*quS-@HeFy!~hU#`#X}8;q zO@*$4qiPXi2n{w zwPnO=aSQCt;c3HJm5KAJNci^zgFFh7-aC>rj?jQYB*xVuVK2GPfo z&#>ZdoWzV~FPDLGVkC}TOkoj~>;Q86b1tK=)R|r0JyIxjKe@u`Zg3+dg@W!^GMQbA z*c{vtdCW}bCyfmUN>q-6^FM4qULvX7>N8U5<-diHlugcH-Y#Mlxv5$Txs;>%9Sc;+dbs0RwGY>5rEg zfzgtTv9f_$r_!Tao1B7b^0ytBp?tVL5|s@)l&@8c)-CdiXcOx*wfLPe*{E_tsh$a| z23O^kt*%DZ*{U5d9EOe)CSeSArhMUHPX*}VgI$LS(@gugp?`sIfpN`dt!^g3Rd-k& zyyovEU+i>s(D{y)629EF`=>=aY%12{_QP9mHq zkFE(1?SW`jOpn?#{|E|vY3ta#a}iTS&z~UU`v36qH7@yPDWZKyP$bNXX9?3!<=x7J zj*HU|jwDn%7-T+K4TZx6YGpux2-hZ`SXsR;%BWzW@)J-_CtCx74w$diAry- z!4L6Sy|o$I6sH1O_D*2HG_;6cy<r=N>KBWknj8+JXjieVe1Ji%{g&4K_@^ zP?xx?L`wVaqog_GFs#>WUDU5KI*ac=kyYfjO&pTy*=VQHc}ilpWvs|&es z!VI`g^Fky-D~sJ~8&BQ5mQEUmah(g=oE-(-lrAzuy7JO;D z?;X2+i)q1QK!@c7JND(ah^e6~<7bC?nTZ#=YyPQ3`-otp^RQU`y128|$D+2==WJz_ zbqmqDkpU_MBR3YJPAk5!A^}9ZrP({r@{590u7M4>&ujLXRRC=!Y&`8E|LE9eXuU~? zVFQ>2Ja0weT>a2Odo$qR^WvEE8T!d2fSj%VUZdBzClIA`(lqp^R%9a(mYx_8T%o)@ zoIFUHc0sEIdkSl*SbH_pA}IHG6&}q}fe;Sgi*bWB<>7w_xr3O_w#lpoq?5MLxY*F3 z;8jJdpLE;M8s>y1o?t_b_2>np{cTbq5E91}+K@Ta39&149uf3wG?Vk(&^Y^^Mq^d~ z!7_2yh0g6M=|h9O~~WD>S^3rhGYh`YN;^0w^G4S;lV^d#x-~b+K$a zlsMy8sM7aez5f8j>KJXRov^gE((StfRfQWJQ`Isu%sc5$5N$xfyjel3gPN<033u?tt2vNNW7IOEOvsR8gcXrmHA zr({6s!yV}?>ez@-Qq7AYxhF>DB6OKoi?6G^2;@}LmWIWtS;#kbZ2n!#L=F-QvaZ0K zyBtH@1G*C2{*e$`*n&f!ML#k?NY85=xR$6=v)rD+=UsfH;rT?z%hXakspg#e(^D)) zsk$&jZeJF-@|x$De&Wcd`UnMtVC2^OVU@6x^s*FXb;)N*wh!Thqnf4co=^vZ_i)R2 z5XK5*(^UzfsuFW{<(4Jl{pG_x&zh8ssK7OL2$ip*rHAp=&BpQ_#90R!Mt|5{da`5} zMirtQU%!W79x`WYJ4pljUGy?kl8ng6e3aMqo7c??jvDa`{7;d`rf9gw6a1E1-_+%P zp;k_F&%RkgFvYy>OKMbP-u5duzY3M4?rCV@{+sOoxn0()veRIX!j?O11Z8UlAuNkp zsU0G;;%aoX*kjZuc>tfoF{441t};pJ4}0ID?3;V+QN?pD&V{-w9RKp*Id%j2ghW<~ z8jBp3*mKj!E2X!LVK%Aq(!_)wCG>Eo9m5C(75KGZMEUsI7SDn3w;nC`H!j)UK8^FI z--H6RdKh(QTEHQYg7R67sD}>$TY&B|KZw9oUE}IKs7ypTz31sS>e|`M(-csF_Nno^ zvz9EDq6>B;$K#sMb+;Qo9B2pM_&JBayV@@EM1}rP50-h}1ywO<T4jIZ}A48k347AkBT0x6Z?DLlC&JU%l*Dpi3gcSmF8hWr*>}r>W~5(s4+Dh zIiS?nKb`I|SvS!8-;vBe`f|ux(&?_vT!^WrMtyrN zqo8-5z}>-3bMvq6kil`OeUm0Rz(&JhL0nO==45H*LQw2l1s(Cc!I7EI5zGM}h>P8O zH2uX#T4vGcW|ML8bT1$x!qhN(?V{>YTC(;Nf_LU#mH@V!r*Zb+r%{|w)k9x|`{_Jc zp~_ve60+$$M=cl4@s*I8X*<(3N-MsK_?csNGOR3i0&4}!TkeED+)4*hnR9r6BNp%K ziuNPOajDUlo-h9ieBtp62|^QMZSaP~Wj>y5fQe9qJBuN4Y0G|PcssXa;08Y_Fr3M` zY>?I%!5M4ZQZqV8gE1oeS4enG1A?zz8q3-b;`VXxzWOnUQ>3B~rO{!^)n6JJRw7(Y zifh&8MO!IGQ=n0BafjIqiY$zbFMpPVD-8iAltNsXEo9YF;yW?c^;fIoRQakL(N{WSo4G&0yri4JOfc2uw=>q z2kl>Q)tp#yL6ai;0ry)g=)}DyC^-^o=6(L-PLEzvTVK;(&@@I|S1JJyxdl=|ZWw8Q zvJ(mwI-7#c)ns@^Y>rkQh_iI_KI(CL_Z|w9nGAA@4DupDe)y-DFwRFo3KCNVeaVJ$9J}-K`fku(pL`?y1_g%OIAQIv%a-p>3$Lk<%Q$ou%MYBh4JMR243y*2( zj4ElvB#|17sD6t^?kfhcZ0Yu&-kPF(?U?bGU~C|GJK@wzM^$zrxwXg3YDHU?_xj!j z(O<0@O^&iJO(C<$UO|ot;^7Vf(s47EBz|LMiJoJCh(fxko9$$MM@z2OORx@pTW1}W z$7fUc$)*}LjEYKByteyDcf)o6YN)S@z`I%7)|sPAqeVUg)EWlX&_*XWrgC}W`!Yg~ z`e=3S*o$SJ)I(m=QA97Gj0{&58X-oxFU9k`zy!>-r$9Ar?bAuH>UWx*bfH z;DQY3^dT{)6r~+kCnX0SBl^VbEM@*E)Bg^Hav~$_yRl{r~1iIl>F-WJmJa~sj! zlaYJlJK?-N37V&}Z#*zPPKmLsxy353dXue7(0|w$LGJLUx|i@&=`UjAT>7|WOVwiF zc#2pV^PzBGcIg8<-{fxwj8Yg3%@>ay-QO?bNyk`BEnQFmhgE}nP=z$?bsVH_SwrS! zydD~xO)PoN3nSo&i$`ho1R)~{H)tV|-#qB~v|bC-t{hl|lX|kwCGjOo0i@ESB^UF#dfab61wx1#AB_;{*SPHlXV7#@NQ||@O+QpeGPxat1N^u+MmHKvG*^u(t{-tZkBXXouta#B>Qm~;O4kO&8Z-Hp6 zxALO-=p`z=?Oz3q+%X!NKu%;o4|*}d1Y?rMY;T*N&1>m);4{>b3ENi>(x=PX+YOk- zh{EX>wl4?}@QC5s%Ua8Un#H6V4hB=l=wJQc9G&}Bj~W|2SQ9628=_(QxzGd&qcXaa zy2gwX`@9yuNxl26sdX^mrCx%-YH0R;%bzAlB3?2Z0i)vOW9IUfStAnPf9i{UWV|mB0sXM}Y6QRS!6&q2)_Dd;c+o%lES$di?6mj&NF4H8(h(Pu) zb{L1cd8b_Rw7kxlqw&r!`f%K(Whcsk!5aOlrFiW=*-x=X`E=IamAq{`4BN2y`dk{n z1K2*xUuNL4Lln|pu=DFOy%f>Q1$&Gl&7)(d2r-G<*}^fo@&Kr3NaVZ9_T> z`QoL^^+IG$KuuEv6iLoV?^XkP9{Mt6?Q`!_-ZGHE#r9}$=|HtGFG$KA5gE`Jk&cX` zYhg{?NNrx;<4`s_dO&nUwKMZ9q9->DEZHU9nZm5O8l&UMB(#7lmhF9LcELAUf~RR> zxKFgX*rL+MIOLx5+M7^)=3fB~c(8D|a4B^*!yqFA)Z$$6@3=j~AbrE4YI9rhr zrVYXsA`v4xQ)-lsEFk^a3x_7H%@;hZ4mD$_*5|$SYT`;;ad%Cqmrw|N(HluQt4um5 z!B?gpC|VGg!#&OwbEU>aa(9A-4qUSIK2k1Ui&9Z zaL+S52{=#m`KZek!!S`FY7Uaog9otA%Mwg$eu^RIlrmKeEk-i;xP@^TibPyFwr2v* z7;);i0EMs5fPtH|a@EKNai45mmts9ZeGPW_5hrP%RfMK3pw}iMG1Zo)0EKQNxZi6& zbi+S20&hIZQ`ENf%#Zw%i~K88SBAHkCl?Jm3JUcAKEI;5BFuFSKL_Tu5lkw1&JxyJ z;8#fCVQe_#`f$d7F2Ue!X;-kc*Z*5fOfcK9HhcR6Mo~*zNCv0Ek%Y9kmv!h%aMf>C zRBEWvwsOil+kQgm%U0a^&GIQ3t(5$Y5raUxopOwZGC6>mVL53OgIe6=Z8uGL6WWz| zvZsahit6_HrJ7Ra>IW{Nf>^@u9i+-aFuWf=s!-}_Gpm*?#1Lm23sm2!>JV)*OK%${ zo~Mg3xKjSGtxpp(ER6kX?je4vU0tSWr#uAEX>45h0?wNbF;O%9ZradqSbImt)kL`Q zwY?{lV>+FVX$`3pMbFl@f8u3Q!SBWPhN=b&=Ubf&J7HssA-UkPY`C0z_tGBptI)Jil!!S{s7V(XOp>PTL zK>q=WH@KgOGVNhrSpnMZ{RvsXm<7N}60k6%gQzJb&15&xUB(&r@QGq_iO6H=gq!6c znWS|#Dj{AsJo7u-WNEz+65iVxnezI64GeObQ)#u1+-&OykznIOYq+}L0ORmCzKA~H z3_HajX;n)Gl(qxQFbIC37-1QC)*AA`hkTRu;H_VtE1L#O5SDw)5PX`g?_sM(XU@}vD!~1A`S|@1LwT&m{I4Bq~Sy!5t z-rx+>ukO}6xx3>AXRwwl5mZLr%l)kD$+KiN2R)dcIdmb5*WAkY2Kn%#PTo}68#)=O zOhifZsWN=1D6ooDR$y~rc~dn_+M~K86wEc$-^dOvmFGpf#%K}|0kb?oX`g8h@28>^ zQ<6U=QhO(>GQ~t;ojz9%k2}eCP*Ew&ZQ8*`h;g$OC>o;UT zBEF|f5fdC^m5&yg(wr-VjyLw8MkZt}MNQjWIX%5bqoVHCheLm?;=QwKqb$g$5^Lik7b*VhQ#l7*=F8f6*&x_6OL4;Ct*+YZCv5AKZ(#>UGUZ)34J5M1RFtQOElf4L=08smV&2c;6k(5Gdib1KNGcYrTt@ci?-! z?mVme?!7irc`xhqaT*x;*h3S7Ops$kjq%l)WPwBVqu7=uWj>yXrxc1Dm67PXk@ZhH zxFzWNAIRzh(<7ZQSPbnX8T$JEk+Cz&=TkD-@3`WggC`(AOmRgtReT8O&-<)Gu~t+q zJwgP5r(tbqV>jT~hXtUT0ANKUyiX-MqKIEhnehN>pmDdj?+W+p65NGQSRlE0DL544 z_T2gR#A%%hhd{alO~^Yv@b9K$?cFme4^6jw3Wi{9^f>bXC-z~ts&&@ zdB(!WGM;Y>A~sl;VBInY(Y|O49_`Jtt%N1e=sL+zHMe@N$(WZ(sNB}5sEuP?iX8}5 zF0Xami2m;~&gW95mFU7km~vSsZ2hr)Z)Iu73T}S!CUh?zE{YE`ayKD?4~x`oI1k$x zk|C_ik1Sx_sRx$NGW8_b8E-JzN2o$NAPLt)#U~XE8pec~}k@E~TOiP+`40)f66W8jX zBfv^DMv?!0x^0<_8j(wtj%JVU|i5y8sWDVA|qo%+a{qzb$`%~lWX^>qW(6b4t@Z>khDX@wYng_ zIUoLUVBFapT6t*5{3x#4OXe1)nP-+)+fDSqkh9Z>ipDHumn#=?at?ML6;+|iW_uMj z{YE_~`;QREw}CrXMcV<-*P={PTLXR-X0VNc#Fm{>NU_A_2E8s1e;z=B4M+yi@*qn-RZ8BhyTy5;(?fuAPge|smr;)k3LcjRIfkO|Rod)f zV6WUr7cSHuByy-y)CNR!Mi=6=B362?soW@xy5|2ro+pH_NZt$ckw$WLenW<5Eqj*$ zmK^d|+@`bm4jqIN$j>^kZwC2cE#NhweB(uG2r8#{Zmf@0C1gdPm1>wj#ZEMU6)6E9 z$Z{PoRirwJs*?}BDTPmLgR*~DDDCp3@8=Av>~qvh@z3}1cB__P38Zzyq}uByBFgn& zAE5&{(CYf$*8=k|K8)+XgcWR$PPrIxdD*t@Yc3gfty@)igcj(+H73%}bVhk87Dlb? z0g2p)Pm$9Xt8{Y0bQ}wwCT050IC#7gVJuP+FNa+{j$>Xf>mB%{h;N+Rh)^An(kKaX z)QPU0tt$W~*3Zx^KAd<|pm?-e6=4|C{Dmfj^xG)(p5BFKY^xa;*KGrpsx5eN6_k+J zPa{`OK!MVdbZQ;Eky~5)O{+B^df{BhK7DX1tASm!hDAF15+zjN6hG0Z>7A5zlW?qu z`0&Qx*yH}qgVs10hn1Sz56pg-=QAs@T>taM!8&5!bHc6(Jf>f5dUCrsc6SQH?Onyz z+zlw9=CekzkEUh7YRevDg0=`{{J-1>x<>_Di`0TGBrs$wOJt)j!16+kxlyQ#kiZRg zX3ihc)HJc-kMeeS00Q6Pky#)(%AXp9;WQh;EEAtJ92L`KQ57QU{XacV7a&x=wUU$@ zny|mh?i$*qn9%9>MbTZcw$rx% z>Ih4QgVgj24>v_k@2O6Zb=`kd|5jb`ghW>sUST7T8jB#Gmw}I07J-L;7}FiDLzLhM z(#+D8QP5gH77K^|w)B4<0V=MvZ=1BtG^cQ%?Q5T{_(MWS?(y%+H%z$psIHVr7rRD| zX8mK|qm621E!o%_902zu!hbrU9_vx0MUHU3lZr23{tAF_b3P44(ZD=g>W$rkHsiH( z2zWQ)-H=NxLx}rASzO;HzXLV&*`=#J(rG?9gO@M5ztiOcAQ!j&-7^~fg-G`fY_}90 z7_#xrWo6o~z_P}FGccjQ3!|iZFhBz4cJ1NA(vll@d2a@QUuBJaiO0h*GA|K@?2Js= z=XYt!gAM@e4Bhn?$0b9>bGNyM9P~0jePZgQ9x=~=f_}lm(8_xo-^TB-Om~R>qMIOQ zx`rtPa^*gIh-~#ZImIk!7@7+eOFJF_4yRL)Sh=*G(vkGX5v)=ZYW8amhh-(@f-~}$ zq(1!5>ST+5yuG7(25dgP)Iidl#h5a>i(<_l))GCk1(Hd%aDO<;rtr2F#v_FoC8k3e zzI9biZ>K*te8&YJh$X_{ez0|>NZ~Sx$}=LO&^g*sWCwC!85XFVs1&t~p$wHbiZUqnX})!DmW}`c$GZ z5LPXB60QzqqY{eDaUoBStN|=}otT3Kh#n+u# zvkd+CAz2|wGA0gwFmeV{AWSyIUu#FiV3@U$su}!Avlllsp{1l0W*TWdSP$UP=3xGH zA&?y{Z5i|d9#1*Y7o7xlhi*Vlc-mfo$~{M@oJY6|eO45kdn%HhZEXi&W)2q0&b6u8 zKUB`RdBdOYW>rlpGE=|3#KJA)5TLthd+~~EAwZ%qn>R)esmf zJzfOut(XhNN&nga;X+ovE{3gNkPYI!&5rl-f^`n2X=S%@!a~SjkOt}9c%EV|Dt0fP zFBFkxYW2dJ?U@d)27#_`>S!WCMBtv-o!T8KGXjs4OBqF7N!(EIu1`D44Nr~iD^PGJ~PYV+0v zVYU$&(Wd^QlXr=iKnZ`fU!z7`z);AlX0GeEY`0oEud0y0`lVTFr9`2@_P$E)y%u~jCQlB2!lpW9vB*HEgAC# zZhwhD5NVlCCp-xt6{E%qhB)5`uQ2nVLw+RmE=?&!ni5Zs^z*YQqq$=jpt7D#nJkD! zyN@w!n|`!UFAcgzxI$+&)Py`c_Re>zWeS!9+-j1&XSJr96#D;X>*w#oPc~O$zibgB z>RfgJ)xUmXGXx2hfaTo)rBdz>xKBXXGBn1bj?VJiEtkLkJRSD{Y#&_zSC8e*li9HV zQOH3e^5?eg(GB=6dB;k8wm+7!20~%meP~(01qB{E>#^R}RMQ zJunZbC+EYLb9_uXw;$-!w5Sy|ILojDkuc>q7V9Rk@-&wNV0X$Xr327>Wved)P`+vy20UbbLXLpNRs@zkux=exYy)y%Il2#<7!?IdsG8%&>O(Lv4&0@Eb=*P_qu1(VCVk)0It;K7j9K z$|?3$Bc8gb+0Mm(M{XLLb}V`joxE5%mADD!^THeu0Z4Y-9cN}&)lx;UilK$pI(Fvw zI5x4cM+KbcGei0lN+O8It5?11Ds+-<1E~)1Zy86&znf5TjtQ5zwiu5@5(G=bkW- z`e!X`7byuSuT;oD3Sds>H9bz1quO*J4g4xKR7Y7y@U$1fI^#0`)e2WAm)zu%wj%o1s&R!|;jS3@Q&52(JLotc!Uoj%5FN zng>V4tf*YbWC9o4Z{^5P(pF&dN=dIP46` z3^*?LfpMb52(U_9H3tkgX)_sQu1>p3IXzxc^1lw*;6d|^>i$F_Vjr{!!=?;57e#?BVbH9SoAzh*15Spzn|m_LB7@AN^pk9%d&SdQzN)*@l=DcNKa zx(j%&2@Qst7UQS!1X@C1x|tL#&wZzqMk_^dyd7%txDkZZTSyXZ5J*ur2ovTgH?6HO zNrf$PPCo{Am=2d2Y$(b3vu}mC7kj_+(U+BU4rdsL%GH5HD3Bd&xLoCrn#TjZt0ruX z$N}O2GAYs_hea)iE0{Az)z}>#UFGzGn{bvDAn3kIP(2VfpMaRb5vvr`%~rN7yW@pY zkzZ%X6{MP@_0a8Hu8O>BcpR3@wQj=1=-2ib=!6XcJW`omNi$;NKt3ITL1&v-4_HA$B2j|rmnKKXy z?l&wB6yMBSzo4PX?~PCV%2cL;PJ^)F)5)?B)hx*kssUim@prU;3@kz)$X7L!DF4_E z-dFZ|Di&13RY=-_#YOND7S*fN=GQ4-LlFb4^CSuIRa$Rd{^icby|FM`A|=%q;QNsg z?vcBCgZMsSZgmFU1ooMO3cj71YDD=jhyGi^|gt+5%Cl8HY0e-zT zL#89n0PJ|08=t^zyOZE(Y}I*eyIEXj@XtM+q?&Vtu{fUMWsTBCq$ty6Vl{G#mPvFm zKUN-c3gxvQu6*3?>4S1qAM+8{NMGoM(W@0XtFRD|zDUq8{eiDPeL5eZrrpCYmtr@S z!3SSlX2PQ1SHSm3a}I_r^u_AYF&#k;Y`^*{o=>ws5jlWCH%DIo3(5HlD5W8Wdh&+?3goJp|GjRWq^9^w}gOHhr^`(;3Gqc zJ(sjUER$ooCIMFj5kT1UuJpI#3LeiUn&_z+@YdIzL+v#%gh3?AA}uRf$rwvXg8tV# z0*e0^+2S>^#m41v!ZwI6<|4!RJ_5x0w5v}C&9B2H6fI9FF8Z)q!+1Vy3arr>*pR(e zV+IOVsvw7vj?t&Iw*Kjib|LaIDF&(BWM!<3l~D+<=-~VXXyI2p5z{_2XueZo&NHNQ zsD;Tr)(#uovGG&+`CzxOM`J6GB8T1Uo|Klcq{oz>v#9>CDvIaw`ODqSvi@!hCnu%_ zD6XCTedCEbnr&|r8BoO!%&nc-7orhDIy`@C8Ib#*K*aZ6j8@bis{7Ea&eqPAJvkY5 zt|}!wb@=1SRa;K6 zL41h*46w>y19PZO_GT2vH^{p|Hbb{!1%KkgfTY3Du z-ho#8faFsNIK26e;b_Y-gYXTrnbN9+WphOc3zeTk19<%voK-u6SX&G=?P^F5 zqMHzGiFCy{%A3hfd>LfU0*nu>I?&EJJK9?J#YH(QVdc%jU~<|+nWr*G49b%=DLt8* znKY%PBAD}Jv4&AJBsB#sWevvNML;0Rh2J?3IXL}f!xHHfC|sLcd@-a;&{dktMFD?Y zfO$yb@u+{4C@wdjz&G+P=04a2yLSU5i8W@=L~KzHMm=XGu>P6s9nKHspVcKBLCG$aG|{lO z_&W&uHbHsqB<^$)(s);XK@}y=W66SZkE)IiE7AWPuKYRfv{gwBj7A~YDilpsEBoX> zHH|c%gZ zR;I%w>4Xv8{i$ruINZ8<(k3g|T$nSHnXNyOAEb>6N{y43USd&6G|n%+ zGZG7e*iO2~N%-*>dbyMg;tA|G11?UT8rX@)d54ZRqag}A!B+OsFI3+wi(i1~Q?%yM z%#&no{#SF$*5l7H7#tm7Z#$%70!_`lyj~aw+NaAepu&RAQe|Iwb&}*K+QLGP$Ul&* zFJ8B9@%wKlEov8cpxc5eW<@Yiaj_b`9@)lHK7JtE!@DYe+DZ*YOSt95hB}(#vBw&K z7qM9l0ptajjuMmKC}ZlTHxk6|Vz~(DZfB%CKD_MuIkf80S{~DY<_dHT9o6526Bz^; zBo0H4Pa$nI3ji&jD^|Qf+|xfB!vt?9Z=rxNrP16D(3qm{pS*Guol93(Xg1TooTIcm z;yT~Jwe^l>t}sIft>z({Smfd$5R{cgrSp~l_VNAkKnOeF>n<6|qw~A)at93uUO#Q}s4diHq&tMVNXO zPhilYF3Be9Mp?Vku>!>k5xtL&GnJB^IWyTGWE7x9xZSR*M%KvDoJ?};YQJPQ-bEt^ z`wMX8-rKLFSdc(Lhjh6LE#PouZb_ZXy}&P)lqh&t(lQyms{4@&1D*h%_&-Q82`re1 z?`UXDr#A>VrFY@!^C%fP#I_Uv_RKmU^Xq|1#Mi#sr)eQw{HSxO0i7KcC%^SLXv8#; zP|%DDz6@~RloUCh=7iB{Z#N{d4oZKcswyMJUVhaXXdkMflGbT>H{qiM_fKdo&_1nJN6FI0H%$Y2Em|X#-HWY-HRSUD&KXfAc!`?33gwiAkpjZw&R{ilwULMtRA!|s`+n+jj42<6bI8Fz0fiSWJ~#MrCg7B z5~>KHpo5=H85Y;Em^L$wB@i;%FTqTG8>sEQ@780ar&y@M(FfcEHN9+yVXt21(i5a9 z*(;+H#g@Vk-t+~rug#Re-4in6V$4c(Vm&UFWmd-gB|DJ7Ae3^4m4KpVuSK-q&arB91Zu|33i0fRvo3%_-iR zl>0TTU`p&Ph;N}vXJtS!o#fK9{)47rPo$+m4P8WiuHLgFj zBgnXApX(hDoy?4ii*-*UTpW zX}jQ=v#Tf3pMjh|7T_z^?SmS*T6p;%liQU4XG~s>x&o~J9zY2}+Bg3xT9Vg`ObBBw2F zV)2Z!22JC?=h;NV*Z=k}IyOfVcDl|_Eh zTGfSUTI~vMo;UfARu40bkyBjLpAN8hu|o<`Xl?u!XP62Zd*G#;kER!GLsge9qaUzyp78Z~0iQ zPqKfxDY4>!tgVmilFx`dGuE1D6a(r&*t9Qo9Q4RK71t$Q3`1+GVa%2rD=-{ABZq0$ zm8|gjj1^~#`3v(t6YuXIiZn2agzcc`9Ws~Q5v{*yO`wc^iu@o)7Qrr|Ep8Htrs2J ze$P*dIDTJVtj~6Vgp?I~GA!6xHhU;_d&W{7n)vQD`$-wD#_U+n*>Wa1}eNun^?$Db>q zc|bDoGw7-2Kgf(wXsriOI2q5RRh>$RQ##EJBBa5UT7)ctIK}AluvrqM>(7p~=ey91 zRxf`LaXyW`HeSaXz z>#Zl5WMnow`x{fdTUk8NRxrc(Phj>{9a2&Ggu`iFxJdxt;YTmiB8R{9XNIBn^yDVS zcj$W}w6|-eCMLKR|NIr;NhhHqn+M}Ws0}g|et>DZiAkpc^^?5qs?I(a)POoz=EBv% zTp~j$2t5zB-c9dW^#q2hOzN)_3J6Rf2*hhUrK5_-E1qJpZCI+Pw7{x;l&IRD&SjU7 zzCvvv>CP%iGqM}ftN@W8XkU-;)mvV|d{+ zC#{ZPvJ`qCJu%!j;mHkfxDQ&9xMZxnR2S0<$#Z#u`%V0N8t%diA0`X>KMp?Vw!~E; z3FGRSh!lv^+~HF?N!rl8!oA=MK^-t?GMP^G;vTs>nano z{%)T@hy7bB`EY(6K&6uWV}9L3Cc zdSjr|dxtqM3WN<{0r?1|7sHsH`4it?tjSJ`jFV*z_TQSEz=!U=!);$}eXN=~VD1ss zS1zgE_moCJKw3^(@&Gow1EDD<7*rEtVmajt);mQp<1*SXpz*AQwEu~@@!_C7#`Nk7 zuxclw){(bmsul>?YAFGVPVG@>ZHbSZ(R6w4q%L8kpXkPm$BfIoM|8hFgzPGmAa1o6 zN8H8^eSj|(Z6|}c<_UPse?t;8%x|`6hhL4K6o4m;&<_|C-}Ojg=}D&A*1Q4Su%H4L z8Xm%4a?Z*fo8cwB!2hQCW$Ppy{SxP1oYQs5DTeH7ivhRh$_NjjDDV(-S>bde~|<`e^bMgzCesP;J<8lL?!`#De`p|=6m-m z>gC4?1Do*ry@823uYg#n*yAnGg!t2;hHWWhFE=f(-E9(=V#RZ^KijxP^!-t@HE9y7 zXV}VTRlpNv%xR^c?MJ*c$0lJm9(=}Peu+>;v)8I)yjUA&rYz1WRG+Waq>D>w)8O~v z-~qhE;7mePB3jjbbYAVc@g@uy&t++?9bh(cI6NGCZ2oW}(2>)^Us*$>Gqd`bxk%*!bp8D8wC$=O=%S? zC^OFOxyS+BCi3Q8b}_so%ytoO-?rb7y`DWlIWS(4U67& zGTlQp1nISP5N5FooyKSc7RrPT3g%=WBnt0Mps558M^DZ?J8*pG)VC*r6}(vC?cE%f z%s*8yw^(<_C2hpsbEeKo+pxA}yejQTQ%)w0*6Owx>DFZm$ftPa6EpX(`&wNJLJ*NG zHEoVWv&ky8kJhR>#?PUpug1|^926}u?Czv^ZdZyUlnwUibUIh$r|cJ>%}{Uu4Jv$% z1ai6uQMKOLOZQ|`!@WVFv0ZB(isk@q^RP&PVmr0YxF5OwyH-F-3BMgAmP^Wmy4XAD ziw%X2`C;I{-6jS=+kM*>@Vd4-yfbU3KJ#e(dum$-nA+ty6{BsZi3=42GdmapLVqKYY_oe?v{C$>*cFs0#vfzhbb6vj@$5}k z{ZLrqlPWgJ9O9p*SHs#1%52jYhrn;&FD&!r6hUYWAU7bRcZvH}oPd>F99h z&eJ1V=`%Ro2#j)@TZt=GGP4SxSfyl|Wv8-LO@toQ8Em;5){stu&NCnwOw4Ge1?F4u zm_4*|jQc+RiE($<$2tiUW!Apn#PF<1DFHqY{|xb9D2@l_D6R9-*3algCb7f8U*P}{ z;{kDsGc?|q;Bk*hp08CokuhIRW$b-0Xr^}!+M64^l3f3~`)=V@L0^m262$p5j)BlU=1Q3zt10*1)pt z9fw3t8l)K2n%@?%81$OTvfn|<&Os0x;m3P~tut$MbUZxYA)`?KSB(+|PbHOxiL|`> zNhCx_K`Hz$=z@chmcp?`^9w?VX=i3Qo-qobiA@4DN$#bsALLC?<1TwUdY2ZocV#!> zn$Uy|^Yc?(h;1OWT3j{eF`J;NC2zR@_8#maw*z`D z>{6||&Pvmm@RXGA0aA zg)}jeZLnn{LUb?gWAnhPGUu?~d2H1FV}P(6Gr43#pTEu~&mqjva!5fpIzO5l* zMo8$TV89tY)I~kSY-@L;a-v5+Xe1;|Xts!dd#bO@!q@BL5Xg&;$$qB2hltR zh7^ez9R_*jw+T5wxYBoMZa{t@rLPW|IPzOxTgR347nj<<;SUf9$Jaazh)&{gc1243 zzG0V?+VSFCSlGVdV{VK}h)fJmKHvWA?fhSk@F;{9nN|;>&&)^SYdbG{-gzNyd-Gy+?aYU{YGsxxYp5hoN!~M6#U@-s!RmyNU8ePi?vB z>9$n-V7Q4v@W~cEkf|ESgO_*>l^+Yqn4)_GenXSj*EGkt%OlCJMxz+3zg!j#e9}wD z?AMKmTQl|JQK2`iG?T%#)b-aygv09hGM2 zchh|Dbb}xm4#s6}DJ+Ni^Kv+y@nPgF=}1mJ#P~kF?Kbv)J8!g}bu-^r3INLX-pvF6 zmdbgWX?9a;-@*p}^#386aMFdBlF*1799Hk@72s?6X$KowM{u zdjH*NIQz)pj5JgE;H%FuC9$s>L>g9Dud4$kL)qYJm|$l8O5dwXj%IaC(xAC^7{GIt zku({JD$Td}71^$!I%Y4W_B=w3BrhN7=3q95G_SXjCL;KDR?d7SwY5~+AkJi$iKNe) zFthqU%8!6?87+RR>m-X=7?|LB1IGustObxgDdq-eiZ{!mZGS7kQXH_#6MMIVkc{UP zE9KoI%##*RbM1qcOK@^}KgTlsv0+A%1)V_wdST=6R6`Ym1mcy@?o zk8y&$>WAO#l^aWiXhYMBQ=ZirW{-@;!M36#=PbC{JLmcdFI;4ez+;{F5HWJY(u$f(%%l|8Qeyl*K_Y(k$?UB$iy5qLN`7vFDf^UB zlaX%-w1wB~D>R@M8_A=muMo-W)A9`NWpqzHAqS{XqG4})MnW2&aljVivBt%XS-=;U zLgz^yKEs@pBZyp8I0L{p{rO_mnfjmN`g{2LkW{8kx_FouKt0u=~wpc5TUTBz}u?f=;kiq`G%%}py&;ipa z^W;c1LlD7tr0JL+y|`+>XyFv`p_hvJUJlZX&3Xl1*eTSE2d5J3f-(8sbYDlQ=-N{@F>XBhx=P>Ub8u?b*_LEAWpR^F=aSC- zo^@d7L>1;hWj9;TE>nlzA5K|A8WA%|;QU{q=&!-L>2P(=z$-cD*q}qaBFkU@^TEB@ zgh0v0$g=}$f4`aPTrsgb{3nUUY|@xMlSHxjYtUSMHI)azR-++s;5T`>_lF!#(G->^ zODU70caC8FpAl}xJb;j44!rMC7GTf#Bv5(ETOkAx<%dMhq&eehJTMmC7wDfxw-t9N`O<@-R>7K#By>hR zcd;Kq!)ykZXMX-a*dJyYXd+3SkI7b9haDqO@Gb=NshI+y4wR~kh!kwv6YGHZAy+qA zf_qGNpPyXbC0D-m%fV?!pG&fsEwvxh_jwQVMPq)y9> zc`3XKg(oqe-;h}gkC;H7Q}EWlx$*OYM$Pmv1ftU-;&2XuHMHBg$r)Rj=Y5!SX{Nhi6VgbNkab0eK{>^8YEKYRANns#(_%J%s3J1lp zAEmu-XA{e5;wZ<#`QX!L>+PCh5k3Fh{b{ju!i?j;#1yM0HsRJ4n!yEp1%e73rX^;? zzEo*EaHVOC|B*>`e|siz#n~9|U9;a}IL!OOs+@{-yOY*N)Fx2m1R{Le;=lh1;n7<{ zcvptY+1hm$#OA%ck2TZ=Xya)owgI4~R5Eeq?Uw^~OvaRPj&qP}VI~HQmhhv;;!oGh zQK7%yjK9k{5T6twW0>bXr7np;Hvli=8`P|HE*AHC3(nUqxAd`t)0jCgK;+$R;&qM) z55`#Aw>~Uggn#!a0?Vgt4Rb*_&+8CBU@R~@VwP8-8eOj6O&4NqcN!6VC-tQTz0nar z0!G3#_oabR#RgfP6!^PzvFUA#jN9v~E&)UmVbqMNco%ka{h_ekZ(!lbXMzZ>^f`q) z%Y=!gjKgnpGE;CSei6bqn&IgF5_iOaLPi7zyQBF)PT2VV>8>T~_a?G({z{Sc>l2>2 zv0I&RY|S>2NGmDvH03?>a%4O=Jn;1tDC#5zBPu01JX#r#93pMHdZ470431?T7UW&b z>?iuYT!7X8YbiK}MVhwQVTV^2PX3X+`G5&=q}z_VheFzGR6)-S2Sk^0CGEBL?fTbL zRAi}?Eovn)v?Bj8vndG{^y`EYg^0u_zWCW>KFeG~d>lAdFg9zGWkZT95g3{R8mvlk zh`C)Rcvj*axaNc7Do#>WUf=TwB|2k8g_sxM5+Hko1PQx8wWw7J#$a5Gy$rm!&q=7+ zkT$|bw)&*!?_~;Lp#^CdZ+pwfXZ7x40_f7n^Gv3HV7Goe!L2@@<^Kfq;bk?z9^{KN zjn!)nfycsWR(Qtw4g{nqupNnC`3aXq&4`@j*!HlDqUw$$nHap~wNiw0@KHtj)=*oL zMY@;eYE&IX_@*l>rEJymV;c?TA`aiE{!x|{3 zXWE1f_)_!6Nn3cshSvu^4#{t?sqEyF!<*qMb}jx0WQK`iH{89SHmLvz?Y(t4&kqHn z@fKqgwA-$8`5hz`W@^FPx-%yRzHA@pg11G92#&hAgpPyIj~ER%}bPCG_s_s)mRoOMQc-7jX65qd2kPHKUUhP-29W_S3y&T`30aGEi~Yy|SUn zr@7wcPNBQo#^u|?=!D?w9 z#)0=ST3)5AUcpU|9Qe;BXRGYm4udZ*7$cdn^wJQU?qnMCH`i4E;a51)}Bi39UlZ#40c1PVgxVcjx>chl3 zL;jkZQ<{@9;r@ALevK3TaJ`PNlb&&c38Cf=aCpe@j{o;AS}^5+ z?Xdc=xZUnCY)})WbVoQ0&jg2t+h&;BR>OVj7Fy{gHYJ4=MvT7r2+(W<7;dWkD+r&r zP)MQ>>s2W%18~JYg^ud^Owab^umB#F;pBjmqf^Z4srh6;D&JLNhoikB4eE@ z;L8aEg$-AAq(JQA&pm#*DVjwEKG1!rH5!TP%SB^j!pab}@a3veAEg4@>Um=`qQhrH zxfWCk5C{g8!c|$CX%QMVgIv)17GceD@VC&Df`{+)#{O}LdU3&}@{1PzuY$wNth9C7 zUbxc3D{zbUIg(KO>84a)SZj2b^Oohcpjj-ClmSSWo<0dV-OTa2kB(fR-j#ruUvBf& zQg*2$E}0hM+Kat?(CVdTmd=MKX;C2G&Yh#E5y5NkmpjY8%B@b zVvmvY`kIS199{ei*=xdjA&x^qp28J2{%Z#WpuB*Ryl3C%YVAKi(jS3U^Mo3cC(+2d zQzIS4L2CmTGOX?n*+9^B?rI!(yucrT5HbuD)<0JTv%@bU19YCy@6RNjCJ4P^M3`D) zT^WRTns@1|{5>1jV8@qAVnQXBgBF4S!RUp;SY-XCA6fl4x%zntyt#Znl=?Tf?i;{R zzM8`kmKk0=$m4O?xVH!f1_7Y2RnPPX_g<+IpzBNp6gF5ja5ocKI2ju`2l|xC&a(RS zfWJee2glrO^`>$?s>{ctl9FQyOs}ywDml``xs@%|jS=MWWNOV$153>Hz6#kqSw8JH zBD&*vmaDO=j-LOwhm$-{K-pm_I9XeXh6PL6nw={THUnu*DEtag(!Q5sCtW5BvVwXE zc%WDA!bPK>7&&Wu{@1c{Qif3Man~l0UVgi|5mkb~lf7Ld$!08P0)Qg>MCqwddmNu2 z|Cwq0E2W+heI|z;S_}S@}$l zRr<oyXG}$tb+eK zjZt_I!=DDl$vk)^w@Ewtq|ZS`027NajE5`Dh)OvES)R^ZlXQT>da-Noa5|NUlF$)* z@Dv83XmT0zuNR9PZw%z(uG~M7p;Vt;#Fd?;16itLgN(W%=h^R>fp(soi?IF3Kr=MYo~1O%RK`=iPR9T5xL!UMoF}h{hD(26GvBAI&NK|fituf zt3dt9*5C)Jd~PSqL4#25?N;o_J+RQbkYQ0KGe_G~JCe58dMczISFRJ-+0|&q1{`%z z12liU%phzMEvw}ySmI2Px^(<%c5PZy0n7s#C$j<;lQOV02n(Q>23q2sN`P$$x6l|^ zQLCU==p9CyU@Yr{O)i&269|4r6LVZ`hbW7^`KvM6_WPuI`d zg~DFBom{VXo{vL;>EHpfj@C0UO_N#X2z>d>gPkbpTEQlN{db5$HU(n$?5DgeXr~c1 zIhzR{X7eCcNr;?N)0jZo-M z>92*XqLyVk`p_a5nJ-zgrwo%H$Wn>xAkFD=GcsU!skOK9=(>i-}q3hO_ ztWDlr$*{^loS||B4zZR+{2=l2YkV?Q!eH|-?rH)R#Kxrgl!4h;ui5x&;dpx25s7i@ zTV}BGPkmEkcvpA}gSZ=KgKU zT9*zYUu=_u-LQ`Kuco7T6DtuoU2GeGpWeFxkleY}#j4HkS%EK}JTJvp-bBu?yr=l; zEjr9GQ~mNH)4g6^c+2(Ecfr}NqQg6*vsui*?Hl)oN9io}qGX*c)M`Fk3RJTZ014WA0pc`WQbc#RUxhX< z&(U_lIqbxu={w1VG4NSTFan7)yORi?t;M!M8*9O5#~+OkGLxLSIEE3`p-b{(B%&k~ znr!k~5I8H1I?$s*?BrzwoE<`1s^XtcDzFlSJ2`Pa*%21S>^FuByhq(_8AS9YkAG}oVL*7ZWA23j^aGAIC3?m`Y%w{`pP z3-eC~Cj`;LK&Leq4*IX*mK+G?lqZTzuZ_9aOo;2N9UQ)Y69M~gKBmZNHYG*6*DV{4 z%;O5TPzAsXAC>gfXA)-9Jwi~D3UG_xEzpG5LzCq3Q`jcLt3+n^Q@w-vhg1&%bh@|c zn}tQ_$F#z;>-{hc>VyEUmnD{A02s_+gXY(B1F-e|T{Ka>I97#h3w92x0uxB~<4KTw z-NwNALX%kH9-O7wAW#Scz9N??lvY$H1ZDHwhAIRFZ<`YkG!P+K1tX79Z#@e<<}k!~ zle6eE1S1qpi#H3%gR;Hi$&w?w&Z&0c-o?q_HiG5PypHitE z`Z2k_qg2-Ycz&+#9N}WOpd%zSf;&Es66~v9+u*24Sw;;3at>*RRt$4{(@XvE9@}PfT2T3u9r4VXHKxsn)j{QXNnLCFJGM0-IJOprAUoC7d%^AofpqIXhV+%Y2j$VJOQq88ScY$Bp}W>5gemRYgKcNIs@Uu*(S*GP?YeNAKo zbLUmPv1@bKOSCNw1q&+HnuL_%XU6l)SfEPloWQze#QGZOqD3&s1&l^GhKkNLW z_ofiAsA!BCB8#JOyxnM#5Z7VRZBOG$Yy{!{jbtSv_iQbP(iAj*zk~0A`w7@hJ46{n z3~&zn2TJgWG6<+JHeBqNI0_WN{c~j<+=qtB$@H)VrRkQD0*TA zH~&u^)uH_QA}0tknh~_@e5S7pqC~cut1RT^H0-+>>=d# zhy72B+kWUlx+C*YrkTr>3YtvGH=@S5QjYk2PVX!nd)`l4JOGy5pq$+?Cxn2B@phR0 zHHZl-@QiMV+p>*)%s2hq*^s4+;ble-k)xmrna?n zCrXCbenx9rolwj8(4;{gZtOP$Jd}7EaING7mnMARVu)2Pzq7V2buK@yKoeblC{S_c zVnTBiue^-&Oa&9!k%9;9f{axr z8rwNvEwN!X6xKNi1wgQN>gQ$G?%A;}JV1^1lr2z@T{X}G9qp9lmTuL<%Ae>)Z+_EG z4DH=dZ4k~Mi$3CD9|RT~iO#-6i${da1NDb>%?5&F;%LdeO`lW$${6ox-;|+DHSTO3 zjk#gb7|zI>%BToAET|!yxi4l%Rp-ex#t66i6kVnRAeZ|J=KU0fv(Z+$9#d7Nc2Wa1 z#0tod@dD6{U}|+Uh&Wj+09&B%JG+I9Z7f$px){Z{LlVy5+FShg!A2?fKs&utF$o;{ z!I!iW`>_kF4@F4r)*|y~<7w;NR%)Al$PT}c0n-Q{3oAE3ZCNdP^$?F*Zg^tNA__dT<^l11!_Nakl*|zew z_CVqZJ(xF|?pkO_zEJ$8r6`K&0)`-xAg)t=H{to79<$QZc zYHRgtmvKwW{>&c~tsj~3ZkEPodXGwz7V4_)pjO}mIx^BlPxce6t5yR1}$JRvgceV&} z-@nn-bmf&Cn5Yt}+XkBN7E3nDt}rJSn}Su@m9I84A=KsSmAPnK&tZ@#JMjHs2aTei z@&oQ!?poDrpu)s4_oDPdg#H2An*k#p^CtDQjtKUjJCDJxBva@l*)Sw*%XTt+NCdOU zKW5B~W+rXQW7Mb=RPMxkfbQ2N(Z?h3p{wHM%SfHj(o*;KW^yWr97Cy)`sSt2}%BOymX|Wv_-T;6>!{` zsb;AKj6*vx+dK>Ibj8UE1xqX3PH+L+efaQ{0~O73nZvD^%9pa~pR`{#DqHi#D_4m$ zgSLC945oAi39F=P^bDR)3p56nqe8L%&BmY2GMU3ZvAE)k`Sh=~t~zVq=E|42d`2C$ zpVu+K*0JpoC6Ce|rv4LmJR*;Abz_!wLFc|8s)Ys}s_HA&>eekGy%d%)37!@&Mq1{B zDDtjnA+N}QK!=mwm?(TgQ_45OK^Z9YrL^h4>Z6%w%;L)vJ>p2CLalKkQJ}AS5PiLS z9G`qP*nXX((PH8a#-mM?o4(Eon`RU9UdFiBQDt+$OCLA~;JZofM(UC(0B$3K`H*=s z0t{9n1PtXyup)soV`_f~+A$R30FU*tV-)%f`Czk@!tkXh|e1m8!zOVi`&Q%P_F zuiR2YEuEKH_p{>D--zzboCmE;JWVvuU(%)FhXDqcOw*3s@SOf4*NKaO_=i05uWLkD zF=EHd=4T7*I{eT!sFU+VA02BC3E0QcY`tu0Cf2#Dk`6f$6D}ZmDd*Jsbux)Lj8r%7 z%`&kO`$K@yiP{>ZjeNJGSeso|Q%}{c^4W|~+s0j)-#ULu(P`9XSRboBxIS`19gL?a z>QLa|pN*fG`Ge$9vrn}kADFk;t}Y_ouYk+&3ZA&bS^^L6I6g_IU$UDZ^>Z#7f#AnKCd6UM&Wnl$J z#PN`T2~g84d8*jVR+>GL1aJj){xQf%>}JHu@6tdc3(Q{4>}>eQD*$TGT5cO7c^lD>y^!tt0J=V_o25{>h*(V;{zjV7w_@OgEOTw&{#w{VD zCiUHY#a?s_@P(aO9HwnQ(d~rMTSYpS0@sA=q6MFCWA;zR9tctzqW$U{+t?U8sIZEM z>NX*mM<=z2yRD-^Q|7ZBUjap*nx^I4BApki+Eb{2QCd7_)J?!<73F3R zx(L1)8^10S4X^^jqni~*pAPipXDg(Ni|wN*@{y)c{dLh@$ya;P&y*ux@6j`HEEz^% z>^EzzG;oZUOoYkiqfMXH)F0>Ifx{+PX%8lkMxIYK{jCLI6Un_5V>~fu3O9!`fn+mI zMUKVe?(~wKhQXm@iT1MQS-G1vQsro?Tdfv9;~^8h#zj6Mv~=^NsFbnh@Eg({JMi$8 zltxqHnC#$If+guT_prsbx`(?Y9RoOjJRReiDObQRvPBlK5r(o#SzvFHN2TKvmetBl-&gCQ&t8% z7q(dI)s!LOGkVbQ?#l`qR*npkI62?$&&`z|p24Ki*~w;eFq#V7OL4jFo&B+Ghlaz$ zXodb%MMc+pm2;9OeNGNvy;hKd4%X>Nmi|HSgDFw2-p2&%^g_#~>lF*`Fi;{nU6BRf z+j6feOskDT6Trkn>2yt)VcM0H9FtOS&0U{(>(LBFIhfCH^RZmf>KVFqrtsOw{aQ_3 zTHWLTT}NGkuHZcZbSJ5n0)+oM(JOrxd)33*?d@4{&Az@3a~pqW^T;qa)5tIdq z3xmcNiSmmWE7PRY%2RMYn97&+EQgs0x^amNHwxT>;C(}@g#&!x^sOONLKE_Pz{`09 zN^|*hR;AZfu{M(z9IsMeTxOrn!DR8Qc&l7&5^9cTQWs~B6hTKNH=;y#&{?;dKLYLt z$Gm)FsehV-l5Jmk1k@V{b&OskKP0QjR(=Y+B|y~3tY;ClW8dKSBjGk%z#M{5%T749 zVO|^yABg3J^bsiF5Y>DQ+8ynjQ<3}rch{vsu48^wI_$@@pZ!HK?CKX(V1tYnqJ|G& zG=MS@o%EJiS@)_#Oc+S}`Crd_`nN_Nk?cCwoO%2e?1;cZNItfZLN|%qtS;rpXbfvj zeRa^eT`y3@3hUFJw| z>}K+>lNYi8SbBBgW#sp%E(qQ9s`QNpcXV&3R*O&ft+Rj;dTWhE7M4jAhIkEq}3~NhmVkK8%lJA ziTlyAm@E(2i&cBt0ltkD%LF%QV7RP!{8CCETU*G4^#Kf=!H7Uu-HPCr<}NX_usqmR z;4ay!x*n@@O!Qsiiw~*G<bgcR5hG7`0cOy$o; z+=ZrT_F_QXW$F+D`ZF{7>}{cwifETMxd2Ay6NRPDB9iK`o(|jhf(LGV^7$+9f{w-X z7w3tl({RPSbDD7JwJ%j%0;GiYgmJkZNlx*FCo;{jORnn+R2YOV&gyjj^hRJ=q>$+&4>QqBNNVQ?2!RCR3sRZ8MEw-;_MvvvrE^ejP!xln5j;q-B zKT{fXTeyjw!;9q}L95?91!TBkp4xe_nm=gzsdpJk)Ww1$aSEa5(e0r?|56R* zVLt`ZvtedWx+H&@*U!AvM& zbC*Q_`||25zeieXJ7b-Zref*MkA&&U^sbB8`u`c(~fn^

Mr_TU>odEAWTFN5*clZKWbj2+058Yo|5;Q?2?Ai#EK_o5&|7=}G7X0@nBp{b!5ika%)v|P2ep^In zqY1YN|L+vJ7TL6Wp$~rLHlAi;dTA`ZydIo|#tQnDSqwk$N!Zv3W}f`YwtqW;O0f%s z&jm)@cW&OBS3musP!1alKU6*OotC7OFW0?qks)+znYlH7ToFUBaiBZE*k!NXc0D;~ zMATf=4L~jSDgF-{V;%CbZ$0in0ows3<%J-5111wd6Ek__XN#x%BtqMe!sE)@#yoY4aD=FpV3m%l~&`#6S(1(hx)QNa|%lkhWgnq=AZ z@pmT+$i%JVoj@`iI!RP#imcM(_0lptgK#Xwl~VQHCEM6COWf#+_O2%=F2oteC@kC& zSqcKu8+&D-Iie)kHCkD4y(cujaaNcNd)YJAItF`hL|DLm*tRcttyYw5DU@8%YfYBQ znQeL-iBdFGw~OH*R9eLY_VsAh<8e!(s-vKYRn;ZV)ZhvKr>xj(?H5osh~T8cKTPm9 zc_hu7fOiyVL5MGQ8QZ_}=#-+7k`6dYHSX;)m*v z%(Yl(8rr}jND1Or5%jOf;8*-M;)rtY%W22zF!4`QI6h-&WPK8HY?V<$~ny- zPNBe|H#IV8z(X#x#@W{q&*_kHO^PSS@u(Y46`CF{c-JK zYrn_Ul1?v!W(RLUFw#bSmv9wH!l;JKAnXSXdPk_2sC9zaikrw&Zy~U7rU#Hl?vhdI z8~0j*G*|g124+iMV-6!zihPyJH?DChi}KSGi2vG=u46N-U3v_eDw|b=EWD|IanU7{ zxp;EDMI=BaL;m-C0Vhv?qHV7%&OtW3-=1C~QT@Z*E6eh)sU)qL*!#GiMM#O1wLIbf zwUSB^FWp9X2p0u`qRBg-5H2zl_s~!H$dcRbf zpEw*vHJ9a$L@T;<#7ykz|Jnl!iy{RMC3q+WlwjvPvoft)C3@G+X=ZTAw>$+^z4Ag( zVuLOs~G{0{XK@qOE;Lf449cq51 ztZ5uL2a@1AdR6&iII?*ifwk}!&P3fx>LiEzW|JsgSEqB>_ZQr#Pf|oqTc2t~-!~>y zv`1C>u6o~mhJL!U5*+p3nbL`=M-K)iboN4A{$5uFPnEk(7yM&+ba%$R$ zySVI5M5TidZ8+IrVN->u4~Nx*$ZIE88TQy(@4RvRkA4uanjsumsr4HRVe7fS>y2wx ztlW{${G_Jf=-wGioE10J7mT%KVLwiGKgHtW0CME1`*vGr^ zZw4&y*-|~m7C0D1!d(02W#dhUO$?vhs+IO|r6Fd=b<2-3_G3w8yr&Z5ctuf5i- z=tazK=v2$1VKGuw&0BQl9-abfo%&J zI;Du#Rp`Be$Y^2}pFx7|r;-nGpZgx4c@HdHi^*oES?ds~bP+9{&$!2oi-mLCfRY#Z z#LQ+%T@Y^5L_C}$86LR>xv7uVYWc)g#$6(!7Cv80QrB9>0>SP$8zTRuSs6!F$t`S0 ziy1c6V4VRisN4}L*|UXzD*iTTY4YVhrMdOm%_zoVs`q8YeTj6T-gmn>?pY6w9k_9R zU-)`cUrj!7oiY}rwu%dwP>%ZknbWc6LDB5hb>y>qYZdC202FX zXJ>w{jM%eC3XNlM4&M1+AA?`rFK6gbKdDS8eBDmoAJ6{je9a$WuPaK)PgkVj40is= zG2yr9?LrVWaPnCL*xCAw%Bdp5fh_80ZR~jE^5Y{^phfBvmuXOzAFPaqe`f`CU(;no z5+U{*^GhTsE%DSX&ed;;VZ_#=_dvt1?bFFQm-l0|EE#E&3kI7%0C<)WLi|X+3XhKZ zFteub8wF2K0suPZL3W#zjH+$DrbA_MLl@WriV<_ze%Zt#V1Rz-SRW8vKaU%q8(~Gj|V(Z&gR#C zlkkA{&HeYi=&NgU-t)_5aI^MJH(TdqccMwRxkF0GGHuSUKpnXI2-rm#1wMl)AwF@L z-(rX}aor^zh*X=8;0C=`E#D*}#|t;vJ+rU_dzs71?D0bg~65{Gjl3)9nZfOV?QDsf5v8qWj8>0P`PMpBR~0w=1EP#ok- z68yEDKq&Bqd9=N#gyl-Fa}1`&a{RYlFgAG}(%~>4SPsmUst$xi#>G5IfBg?Tf>>(c z<`oPziTwp#_GLniSl__e15P_dvu0FckPi?<_ezW~@4N_C#ZH`#K=fw8PlmKn!E(3G z)3}nDXioOP8mIckCGMa1qS$eO0Q^1D_ZNE6!#Xk34l9O*0QQ-IEO_*dGG)pz2<6uN zZO8*xjBc|R=!KOAF_;xNgxZQN-0O1PGC_U#E{QC&cV3gXC}S=>eCtsw6BUy6Y$-1a zG#<*Z=}UbB&2CzvFqj_4lK>VI5ao_ya2$V+3{-0piO59uH622?2#@hba*C`mP=FxC z&`a}nM?s))-+@T~cC2rB-BS=1W>_2VX&|QHN#_qFIt{RY_}&mdGi3)?AlW;{qLz|= zaBTj0FM4%F{moA*nC@LPt`dP{GBT^&M@Oxa1hwcKxwznQRcW2O$D(ePzS*cO| z!yJtyD3rl(->~4eQ+hr#U!RBVJVO$aVgAbfamm{;~{3fM1MtFo|8sY&K_h+@^Xt&3mDQ@SL%4s}Y64wMo*k+o35@ zE~9^DDZIe_z&h%vqz#1*T#Cjk2x+hI-NU~Y*=eER58R2o*`P={gDIf#+HnS4Uy8Fx zfMEMvb4M$T_dvh8UIGWh*Hp^U>F&-Z>-Ux=ZKov-&{F?4?6utBb$o&)vL$5JYtONe zOU!GSSWiC`>zA)FDVyuG5qPvyZAB2~j<}*%{7RV@iRmB(Tq~-A@G{%tg$K(5ukV{x zF8Q#FM|rdEQVQ3+(8TJ^)I0{Is<~ZtbgHxLQsLlQ zq6y+9MEs4sZ+BkAiS^Ef5<=Gg^KVXl6Q>RxzZUUXm0**)1WCC*3u;m-LAICq88Ayw zEika`S=zr2ol5-ivOj50*pO8X{3aO^p=m z%WO=rxOASm^qkE<1=u)9^Vi!_I<~2~&m2{ns2Ye<`C!UV_IhJWI2Q3r9yiwRz_Rlc zx1V!l3_6R-S1KM|lO%Khqmd#JM*&17CEPvsJMBsiWNly`Tb`p;&3zbRbPez}-WtBc z<|0enlT{yLNZ-e-V^EUR&UJ=La~AtfXzp~PjCVjR#uZv!npdDn@tP&*HA5zf3%4lx zy$iq}OsNvmoK%BEYh+{l!DKRfxe<6&1PJo;v20`qM6l8P)X#Cahrf8XSl`BjEpz7M zdIu(bJY|?E!2jBFI5B7i31_u*ObrQe4XPHlShka1-14;cczERdp}t`mc?bcLimXqt zP%zZ$o~bD+{7C><09IdI9d^iSGFPhmYK(Hbq5Ud^c8}!_bC2qW(P4{23-K9B6a)FN zROe+nm0o)pj1(w33M|V5_K$2{UXIt`^@_P)NAqINIvZJjupQ72ZxU~Ve?Ts3o&)V^ zLm1Zw$zoydqxQX2j>$nsey@kdlU0#V71s$h(ryGYIXC zTb)>G#A!K%{V8}yK`KnLa7jYoqs%_l?oc2CL+F3!&S|zwzxv4m`)J)W)*aH4Q4Cs3 zHZY1H9ApD(O-SALHkL z6$YgK1&MhC8Kt!ykrG}%rMghm*nb*Xdi(7j>yPc)ZO4^N1t+(N45!(x$T|Q3tC|~t z;;Kt6$IpruH{f!zPQM8CWyij$n8Jw9MIZ8oW?f9I87%e|4h=P zGtbAOHDrRX?U5{(m2TnISk(ZKKZkN6q)#Owa=JidW{fHz=ZC%Ml@Dbj+ZX zP*m!+PTp!~JU-6#++hXJI<_%bVD>KBd!X|J9YlZb%v}ZXS4+Jfq_=w>KrA@F(HM)Q zH80>}cecV&gD5&x=w9f-S+YgY;f7C7+*xdnM@~GfSRSrW;z=!_i=Se!wm6$(1P8F{ z7zf1B_z2{$4iCd3q!kD-Lb7+mk~&i$r*NBVrmHEmQFb^<+cHUmzI~czFU)yh6ENC! zw#~IO#1!QS5v`#@NOrMfNyKg*;X1K>f)vb79I!8gqDBS{nq)m>Dc)gKOVoO}x9+p?FOHd}~_DR)_O8O&yn5QL!)3OC)*WcDxWM$$~u#v0RB%R!y{1m?^ zmV{MV*G_9H>yr$A;O%BZd$lofEYzVE_jP27RaPBqtb|* zsu__X2y{)mCjRnXrQdKTyHu#sn?R7`;Z9GOuSzN+bjBPk2pm4b5O zLy=E4E=gBiyVv+V0MA1lTebP5F9iB_Zw0Z*&pe5Hq6Ht+A;(N5^cE{RvW4LRIB>qI2&^fA@QWjWnH^nd*#kDShQu%`8 zNm&ZM5{7Amli4gg4>XlW{7lP3x??M4Mp*$-*Rp}l7L&^#C6=bGN1({i49WgHu68bo z#I>B>If^+m0TK%=g{(3xQ-a7pHa$J~ZG6=Zkw{7Pr(u$v>rsk$)NwvYYc)GU%m|iIpM6TXwg=x3s6?1MCIl+_J9%q z&V0q|#}Tj_FgG#A$rl?)723;yEnXIv5P1c~1?peWK0#Vc>!q^p_j&wWh5s-3PRt6;Ql+RX=H-6aoDxbKr`||+`&NOv!}*KP9b1*4 zH<286%?vO8Br9FWw4orS=a0Qfxansbn(Z>c0An{++j4!+WnZ8e-cR^Vx?*CMR1A1D_P$?Rh@HA;Upl@hr*FD^m{Q+06s0 zz8N;0mO9{cizfQx>Q35V?fsDomE?%O6@InI%Qa4on^8uiY%Qg7NNxlf&Y`DNo z;Cbjx2EKj&eDf4qv$d-JE+Ojp~p|P`OG$M(^n-&zc_TW#qT$q^R+^Lv>3jJ41PQ@5~YZc@>NiC|| zW+>+THVlmJld^Tab%Jk$j;wOb)iuiw3t0;>@~M&{J#~f6C!JD3pg}CX0aJO&MW8rL zb+vHwgJ-r?yH_$etZY(Y2^$2sPUrT@6@HiM3O$i>e*SdHh0q5t$shsgqnmk%tRW;Q z9zv{;>TiY=kv*FAm5)?1?M$DuPRP#Vgu+je9X&u4af#+xzjpOiHosGUUl*d&Ho56E zq1D9u&~v&MIC0SP3JYz%G2Z<9Bs#18XTUnjgqBF`RMBd4wlv+Rh@w0;#|)Yy`0hd? zu|nQYvsYQFl3u-(^yiy9i=(|sYT0eQwNIEl$*tAXxLm}CUXj9z&gYpW{j2bnR5q^R zB)rd7=Z$H5I_8cr0^Q`UlHKm{Q0&4|gBM7P^PH1Dj|&JiD9lTfT2*REyeZ6jW;7;w zS`O~buj3x@8)E${xNai{U4ttOye8sR3gyNhD3umb3M=Xs`uZ8H4;$$?cKLO{(vzQa zE#I4*u03;a2HonOV3hD6(`8pUqmk>Nd((zwOWHCsFO>AF`5+5P+*Uh#(eZUh7^lTD z@!##3CB>%Tw;A>-h4j_Hl9=8E>J^T2}e)33ZS&*U9?%K&q@!%GVW=1XhN8tE$sNarY!0UfQc)b zbAKy6qNDnr`i7Crx70V%N`F}~qC^A~=M<#Kfjf1xwxr*YQitRr{aSh@t>t3^P=YC8 z+#F_Vuh&95jG*Lf=hHNS4YvFme;?$qvK}3RlM-*<#kHMImygSi2FaECQU~7X-{Kr?~7uI@<%hU zF<)bRH7q^v%NlS4p-)3m8&fi<9r-+Tw<=FAG;kYVi)JR%b~-$Uhq^@$)!s=6J|vl5 z^rk(D*ocFJSYfjU6^(I*|9wGkAJ34@Zw_K>G)}t6a-X+5!YJwioR+twM81H1Ko$72 ztZqrsGH6w!_&L(9Yfy}VL`V3A=pCPOqhan!3F1F==dMM&($Px|cYSE^b zl>~SlO*-dDtLB?{t&SP*4*oR}tV^T>{dQrFbcZK}Or@BWe%d(|2P=Eb7!lHxXar^^ zPFoKLkw~50r38wrGYbopZatB}KUkB9~BpxSP8BCFX%$gnn zGN;WXXpfU5qy->-EC<1A$ngYzH8c~boAI0m+IuSmWgD}O4jKmJnDlrN*{;;&-a3x~ z(uI<0&r-q$@3JeQ@-tnNcHwBoHC5i)`aX`&KUtosWQ2FM^%ozlJD;<*U0``DwW>k- zuVK;?k>2$DDHsB#Mm5l6INC_1&Tyb)M!*;;r}q}gR&U)!Z`@l&#&kV>cbS7fZjc#C zul$~^`VA?!?CB(Ga&Fp}<~+AJeYpZ|x{s-5osNFOlq|K(^FKwISWY>+=D1B!)DFHc zY^iphO~<7hWV*Q$vgVFp9Zd~H;HYSlQ?i(|??sLtUYTEBy$;L+c6?Ek=MFB}zue z0Hjz5SL#}hEeD;Sedf#tys@SoKoyOZhH-O?iGB3vl^EkH(;?%`UN5Y6d!3aQP~a9%;3qWQ>H>B!7NKeo7^) z>FLrExio&&ASUG!#}2 zuPWF>X^WYy6um;dM+X~(NvNfxk;%*b?}8F#b#2dYBWEiC@^4zK|tpbH*3r)W0x)4iR^1|L!*{KKse9^rkqcU<7E-R8Yxc(0V z$f*Dskj{`M{V74@=xN<8-)DK1MK^w3bR)y3m#yt3SaxlX)8NsGnN0usi7(n*)W9&; zI!)4Ue%a{0V~eAx#1od%%YC8kFC!c&^h3u$a(=9bq(ma1s8QKWdi%>day>7Fdp1~< zF;4X`&FuQoO>ln6O=h0MGu}|wmn#nsJ1N@BSH*IRs@&ZA**)=|34@SeI%O6ROkvlj zLI01E1uNdZRLldWoUr;2Fv1AzsaOAmBIh)U$E`K#0a=KrgM`v#lDU}o2%e0NCFaGiO#A}%w}6T z&}*&Kj}lF42Vl=svjnIv8oYvqi5R!5q{@U%>W9#(MkcPVs4i!(+0=;&*KCBTQOU5y zzFp@9Ut^Wp;) z>7ChZKPTmM+k%7j@i=|C^i=QD zp#M8W?45w37jwLW3=%~ z^?yqEQa%`m*)%p{KX{i3EVQPmOA)f?#)i^1K7xjb=b9zmvM3xkEG!feje1K zcrJkVLx`W#>&VyD05wJs!>$(JVR<`i?=lfmBXC4Vi;+rPFzATR!`N?^_nKt};1%M@ znvqru2f$2HSA?%(%h7B+TVVCd6*gG#X5Em5_o@DZ$_gr@9q{Z_ux7oVh z2(iZFq=JgeM|l>20G`*Pjns1?$njb7I>ea{;3fG@7(3mALD^X>ssORHYjQA7XEYOF zHV8asK2`mJR#V)+r<=?>oHTyOl7r(u;%0dV2lGT+u;tcNv+=&Dps=;vV%E2cZGJb2>1qLRoJ?oSyLgOD{*9$fhZeR_=qtEnnqOwwP|BPxtlVo#ZDcY~@k3eI;a<24c2L9&rdoT0GMuREz{i7VESIq`^-?&j z16K*UTr5vu@Z=zBW9?8$ywuOD5EYTD0-+e5nPJ(IRJuG3tu&MrpBiZh#>Fy)%ZUZD zsh;2C?*E|~y>&_mNkyhXF=kOryjgyQ%>9#}W#6n4lVImV=F(;dc5<>VluPi?4Ibq= zM2d-<6D%LeQ1*NjJc6(>|NSh&F8}Rri6#dk(D3K1K)7%_JS`#J^|r8^P!Abph~&S3 z<%fdtE349ca9(X_$PM>qrrts%x2aNE$=&5srePkRu>vq|p2#YfGVM=c4Y&6MC*{bf z@40Iw{fg(iM%t#E?;ypLNDggQ4j9hU^A6r;8Z_itUV6(t)EZ3LYS6jo>SOhz{LF*e0rLPt0Mjt!TE5&^LC3{b_C7-G4 zQoM{uv}Mh15y)5#IQabio@&K+>aw3)IruQGToOLb-k*dq8+6YUrS@z z2IpcWWn;WBI6;wpCIQ!%hU@*1IR%Nc3V)kk$ztMh&^B@}BykrSMe?-$dvGj=FqV#% z33QMfrp)cQ!DvHb?Zm@*Sm}e;1b{R)1r9CiI*6u8`G^`Ka0|PPvIuH3$6p55WzVr$ zqlh#|`RF;C{q++?ARH@Tcs^AIJCc#X@M9#dna7v#EqI!I23I#aeR?%(@3-e9-?#=N z^0ayshxH8x2tcV#NJ;2^1pWGXl7ejN>4V#qN-I1%=8(?tC|azEDb}!w8I9eo%xfVf0T4ONHHDsj0r# zEWSD8yKb(uwS0xU-9V_6GuSw}joyt?d6{zm&wt|%z%`A6C@IL5e4CHnR|-b@C0xLK zQVu1LO<;B!#M#M2h&Ub~Fk6~F9=jD>3=1dHg8{82y=r8+H-5q}L$D-BgL09;%xl!n z!Ava)?M7!HLt09gi6?VfUlIW^%l;5sDTA4+n}at&rE@EZWb=QB` zX8Pp_=!U!uEhm}QB~uh4EX^Y>>fVM`m$6={M63VyWuVLPk{d&wtj`WufGWMl3fNP| zl)J}g#%3Yxox zEM_Wn(lsQjZxdpGEjUl;k9y7?+4J$|WCPiFKu5!Hd|~c6ndDnttVKm;6-USbhkYei zfB(D3AR7(tL0u1QcwWk>(j)~ihtIT}42}DIz<@&7EgcISytcVe%|vr#bAJTipji)H zkpZ8&#ztDs0Qo|g%JQ9nCErXibVh8mjxm!C_6K9Z)9qT$oa5FFd4NzFc%HOD0RsV93ag5+Kzu zo}yUlK?S1G1G}mrahL{IYa5ba8#?fFfI@1jE*J8n!7DHjP3&PUg{wkVe7FI$uXkAu z+w4iUXC$w|dfpRjc|6zO7@8YscR%!n;URw1VWiHSS!f*F(q~Ux&LY9aYKjiy*?jwY z86xJNP2l?Gn!gHV^!ux*q1e$IW!kV1Nn0wy4+n(S9N$=Ab8lmMsPj|dtbzL2a^NXFU9klESb}T+SUfJ9*5H{L;MjK2d>#yT$u(m+-!54d zZa2vcl3sYcmNBCWar|r%e%8UbC7@mhSr3Fy%_zA7jkx0o6ck3L6RH9_4tv-{@&M%# z8yfXm!ZDc;?b+Vabr_Hg`K8?wQJfPsi}VJf6XQ$NR3x;jBh`^&RUCY9;; zq}W&+jEqi8=(Xyr4>=RkQ1W}TyIahJbEnvI#cm#nb_IU4pctfHGDy_x047uos6$eP zEHjn@fgE{7{`x~>RiY2P$+KQ@_-y3+gtp{NG-?&@;Lc0c4^!X<{DL#VOA&feW8dCe zD>KI4-ZzCTZQ`$sn`yIF-P7gk6xVHTaLHHH1YviDX<;iqpRH}H-ob?gn&5bUs;D*C zMQV4>yF@MBdgybOfD!Oh8B9X!)neGWX|Y1kLT#E4Vq@p1a{;0xS;tsUK{V8Hlv{{dCH+B(EEIC!$31H z5jne~W)5m4HsFm=@3^ z;s$({Tck(g@ud}P>-%1VdjTTtOZSWx1N|>QVqP26cGCQ5;+-hX)u)o(ZxVBv8{WV5 zSW~P-f%^(6(|hpED#)c&l?&_L+1__qc3L2eu|YP#_v`Q+%`cvc;Q(etY6b{htCQbs*CKL5Iu z?b@}@nFW-bcAe1=h99AXqQWhrEC6$~J>T5cFQddc)TYW$A2bJho%!(5Ed6_1ps~7% z6+jdcVuQoo6XoZ~r;sUli39R365q*)KB9w*jWC>>9*X*y9ge2oaL*8>_SI{OTWXZ4 zJ^T6KLHa+Vy@9-Rnf|MCF0inWGur1!JLh8Co8Sm8T>3^HT9{NpBFM|d5r4*=Ds~i4 zqC_5yk%DSof1He)fus4d$3IDq0gvu`pLuXQ#`w|nN09-nOAY+S*@r*aNResMv^r(F zVY08kYB*Pm#XxGEShzvG(}6?`hFvf_&98g963cv$VJ9wsZ{rprMZ-OfnHNGsrA0M> zhc)hkMi3-0StGDU|6BZzawM%rEjtOde^IDZo_bqgZ(8Eg<$1$z3H3~GT*PA4yg9>T zangI?T*Kt?cKTL*gi*6xQ-$tc5Gt3cCLPEe`9}%}r%|p8wFYCOq$+s=pbPaEeY8&B zF&x`E%9KYjsm+bC>>m75GC zJ0aJu61sn|%o=uozga%h1+D6rhtrgRluj|xh%gEc=I;^+ckjh$!3T1YOP+aJ)Teuf zb1tGgP+4}YN6P)6G|pY;vc3a&@r>!GVxm-OZuheUG7cGXjU$e$XUk}YZw|tvCjn0v zEeR=xleSPGGXztkWY{mOL(Q8ZJfX+wq7db3?&NriB|YN=U~q;w($a~OZ%^020&pg~ zWT2Rr;qw-eC#L=?lbL9j)e!=tZxd`j60 zU#Y&Px#ucTHq>u24wDU7lwU8VYR-I?OLw8Kx$uj^2mbYEJomgRL8mM|!@er5O}1xF zPTqzZO=A~3c3hBcyY^e?7WwS(e!uhnSonKdb5CxQE0_&ej=E&yU%bwfP}>4a6BJK} zMtH7r{O|neU6NJ#Bv*-CaM1D9t9}kJ=`{KWCSXU5V3Bn*47aVusJ??8eBV7PF^FMG zLdR`PCe|D>%STJ3ZEO9CqYikgGDck|>gL>@iiKSZBp(t{>b6k>OY|)U5QZqNvE)*J zDJ$k5M9MMnaZS4n9h3OlJj`Cgvqs2x80> zly)AnWfb%_Oy*UVBwVxtHL<=w#VcJZik}Y&Yn@}!3O5NVRyEn-#}D85qgB8fRqgB zcSVW9C;NYm&3otKDH99Sz&b${74E5}LeETf@xp_K;$aX6HF}+CSz_3FRZW1T82SvP z)R2Qkk=HXzQqebd$3DDo(}LhanknD)Ti!4eX;>u$Luv|KIz+ywon?HShfv3A>KDux zSnJMto#_K89~%O1TeSdmVB|_B-co9NYhM3cj^I`mprmm(Ehg=PJ@!Fy(WGCS^T<>% zsUuOdkw|pT>)$79YyxQ!4C~^3eY%@pJ-uk7ZloJ;DGRbA%PrJSOPq_th(;H7QyZo@ zaV+F${0m`gxT8#Ev=H|3S1-V{L(FSX5Eub59A-M(241gG$$G?-FJ|5Wz@u@E7MeD| zoGYb1e*a1EZB6&yk8oM40n85q#Sic1q=`;_=rX`F5#s@chS;oaY5(re+8;`)RSU~8 zC8=JEvr|Mnp+gF3C*lkLuxk-_?IE2d`L^Whj7muD+^GE`alx+4BrXq=+|?tk@ks zf)G(ZWRh}u;KfJ&du8moeir^1|F6%A#SvJ$#qmImJ{(_lYJh9Q_|%F*QG z>7BAT+NoZ!T5R;B@rL=>N4PGHtKJ1O^ug|y-&371W;BUG@@h$p8R;+bLyea4%R6Vg zrG|!Nd9j>tK|zGZx^wNXH>?;O-65PQVVQ!uiaFg}PCwMWi=XLhA^n<&8RW&m_!jJR zv)Y!RKkP)o;e1)|l&$oT1tQTHO;PDI*g2SuSkPTwegc%$&!K~Sq2wG(t_?`pDD zrFpUJH1nw#jr2VXHOi)(BI>==m|to!U*ciBqGz(l6YBu`970^bo-Np6ZkH;?4wPi%PJAs<zXFHhz=Y6=L;RwN+i zP;WE62Lvakm24?><0&12C9;q3!~OHr0vuJK^sm51+X_b|5g#sP_GIlFD* zj74MzfD`or?<`w-o)-8Cf2>)}hz%aE-X{k$TxlfM8)#WGmW=?D0-mkA%a4tM(%L9v z!HrB>o$NrSl4%tEjNEFXp6nIhg_}L~QOw@i0O;$9vj#}Q14dws>j6EgJ}%aOVMr*7 zie^1SG5qb`(xgPfs7j}RbRgU);0*&dMeKsfAfEqCRAwiAAC$+`vs?hKp}Z_x@^fY2 z2p3LT?Orr@GC0eS5~gge#a_B)^JpyUf-RfWG?q3INLyvZ5fUjWCi6b#miU1L$!5G1 z5iBPn{piv=Y?@HUcSaSlY7JaH{iR!(3*I7b`5JtOTJ zoO(>ugk`h}Iv5oou(ZH4SCB(ut5ADB@blyYn%A5c_*K8R$E$97`SdS#rTOpf zrYr8Q0s*$h(1#eOlUGwIZ?&$W;`O>1nFMnLWYtlBtXtkdLhY8C5BT5FuX+^Ummo13 z6D6B8{*W%!{h_OUrrImY3$}X$+aCGyF02bzwVVsEq;pX!%wp+qgJ_sI8hID|0OV0K7U3c#R5AFw^JF3F0D+m zs%f$C5f5}{sjnrlW3OJ&I2up+MouHY&zkLyE$e8^Q&w`j5OCm^7RHr*&T6gi&lO8* zNx`{~?D0EvTdEJ0$_OGa0eXzIlG;Slwj26MmdQe^A_2H>UHPz5ccW4MQu*W?=so2KyWyIh zfbP7Ols%qh$NGi}tvcPt&O>#svtOMc*yd?n0|6hKaZox&R7pd8=%ljC85-@BEG2Xq zb_5utEYtTU80ppa5(fTr6G*lt#-h#hB1htjiH06|4BDd%haejo3$-%o?R;h(4cOXoFszC^g3$4)f2-o{>0i6|xB4m8^#R7@$}-;9?9x7;o^9Zd znb9Mbk$;ii@?^t3PfUSaW{99DE*lYKKV69Q+8j(PK1tVap83d*`?ip11Swbu1hGx@ zsBRPxk@}H~L++#+mDh)^S)nu(mnv3{`e~IlrHfNUb}Yhr=N4)pGR-+pgh7A!EA7W} zO$&H!zxy*=Y`V*H)q;X8Wp=;bXWapVh_q$5eU6|Rf~OgI2rWhUPDYM_9|FcI5aeY_ zZOYf$isAaGFsIi%-~+XggC+zZPN-rP`}Ob`Zd-dHx>BH^hc(-n(g5 z=dliBP?C_V{ew3G>o(e{=yO!XfoK`k6Q-WL5rTx5$uQAGmk_Mtyt^byZUe-3zxL$E zF}Qh#pimi(BQeZ7fY+*g6hn#BqYw01$Q^fO>kylT3YCfX_AUMKY@k}SzGzICqp9iR@rA3NpuPG#@Lo>wMszKesaeh(Q~>{AM|-xerAZnO~RNnI9NZe3(55?~xs!^H;TOMx=+gYl2oxjhYVTeZ}Hm z&yV3P4zZUPsznJaQMJw8%k&W+hA<{p<$l;h^deU%lmD3x?s7eJ=N({Dejt=plGWl% zQOJNAwgH8C1?W!Co(JXc#5ou{>S3<3n+1s`01}>N(FGzai4Z;K*6CRW;kkt*NUqoW zj;b(gOZ0k%!IWK84U*BBDFwe)e)1>$k{AeJ!BlQ}J8F)O0_-(f9tq5Ko7vqPmWDs) z#ipBFZcS7k-C;Fk024LxU0s4r8fds!2!l|cxXt|SVa6R)^VFeWFchsD!wh3QAbCOKO-r)atR@TS(7Y;=< z@o;DD;zlyt;2J2XF|+TsE1ip8sO3)^D2)gt`HE@+;J(xByBqW1NSP8#66sNcjD?P`Mwc2(Uu!o zxj6JJ)y@Hk2;SHX<(k-> z?D<&rMXFG(LA)Li<;Wd!8;@0v{XdD#pQrPop_;=!R4K;qei8G38y534x^$A}*f^)D zE42y(wSKF0fstz)B}-`R&IKC-*=Y>B{R!F1eV62xysPca8A1K|(tR|fZyT+o=pNVQ zmH0O={+XLT>_wSb$Tr^S;R{hb$8|L@=d8e1{zd*!pJDYn&P_J!D52jd@<~$!VBPIm z!D-H-Z(pOWXOndxBIV9#-gQQoY2Vv&2!qQZ?CRv08UotpCrnF7ZXFD9WIs+9dh(Zc zihrY`@3~`v{~Wu<{{J1C7+wvQDpM3|6l2&~qR^u9?UFk!O?2hU#g6w}&7nb*Fd*f= zk=9LeaBoQlgYon+t@zE@pRPCYlso%s?b*uC-7^6QtMT362?#eMywE$9J?jBxFEU9E zvqNzww-&p{2`*N(9~HE_(aM`xz4u1sHNuf>vRkd; zYu&3)Bxwr`mutli5ZR{zI&+fIbSzIK5aUC0nr(owKiQIkCBN0WawJf$E&BXrW#ijt za2a6JIO^gki)@;D)uFx=;NC(>T~=iq+3)=A!@57p?-+F7vcPi7i%%p-LeEjZDi$t z6Gcvt)vOXIXSQRti;p}u-=m(mNo|hvuu1y5tw&fVoPgUM?}A!~vuIR5&CUegV11E7 zkevqT!SEYH2ZB+YvkyTW1e6y}HM#6UUh1zajoJlWaIQ5LOk?yJW{mq6w0Nc_x!jxV z|E4&jawM0fz#W0)2nr&cFNaq6h>Ek|iPpR9U+jK|8BON>ttydsf_-7f3gJ3+P_)rl z#23<+Wnl_CxlOORH-o|Awxsh#+D$Vj#pA`&teFqFd^*cthnm5J=aa|)=nd2Xwt&IS zqJ`)F^t|{YQq?@cbSa&pd&ooxI2HNv!O=DSwEKlsCIj$KY@YPIXf6M z-(QuRWL1E91Q8bZ1ErUF>nqu>j^`OR13)wny@OM>He>h9Jxt#cWXEUHb&A1jtVg)d zm|u$7vy9UyjaxpY9s3P$c`2&x=SI09C|`QurtQl@M=hcve#AG5I4V-Ku%d9}qiInG ziIx2$HV=Wc!F@dKY_sEwsAKj(Uv@n?9$sDlx~>BbY%YO!6=YD32-c7c|6@vTHuc`Z z?5>kG*-!OQh@Z7n>g;8!Bm|chxr4Cr<}@J34o4$|d%Ig#NCF5R&-eQ|tCabWJwRzoST%)X ziG=R_gE7I)lp8_crn>@xrQBbQxArMIW#=mhXH=Q2WymgwO&-!pJ7yCj~qr zU!1lqyoWY3Nh=lrF?}~W#2{VY>C^(%wx^*!2V)YhN}hzRFAw~#HFXiTUVnGPKirQXfI zn!_zJ{>BZBK?%P+sYHnVtQ!a{aEeU{D2<-9({ewX^Jld9{9}tUGWTv`b6bka@|>yQ zK;&61aF2|t@@`I%&)HYM6(mW*8u8VSghwj;^;C5P%V~#u`wgO&)9fYvdUOD+0vP0I zqNSe7ZLv#Ty`)g7CJ8F!0J%<90WHN^fdy~htyYq0Kxmx`ESfifXVCaJr;**3C`=cy za{eh)+hVWu5Z!@MZWR96Ou&lsnF4hwV(@2|AaEO;UROymu_r)xwQO8gN%OAzh^DCmw{$>wAF(9?5Wy2 z08Eb9`l!9544DAuYb)g3T0kkemc6V9+@gRBj`*A3=jIQa(~mB8s?1nj=LX3tS74i^ zpC!eY?k}W(xB~uSD|&0$%Off6r$-7*7R>oc!m~RH_M_q4RhdlT({9ghGv~jX6_)9s zIfu5Dr0L3t911k~@U*m>wSypn>mf%vUu${ESbOmbFddg1!{OrQkVassv{mVn!cu66 z9#!I6!3-y$K1m=VPVx!S{ZKWmpef*}J0&cj7EyY+(KMUnth2BrH()vuYo+H~`OT@h zvfXOa_COva#h9=&`3CVfUAz!f#jeE&M;c>(Z^fLm5s>CMd+Kkq2F~=&CL<-JiUYL| zF^*Qy+mMN{F=IHT1NmRtD>F={QpqE} zs|7}g=FxSA$P6SvyTE&FqogyTT&^@*G-u=Uen%eja{W5^)fg>=fa599SM&4x_BP-! z{5W%kK8op4gdeuNyCO;XOvfnEo@>T=^43J8lt{2KY86be7G>OWd-j3Doq>GOZ+g~jWt*3v zx+8-}CjV7@BqOt;>~Uk8%F#07T0Pa=y`2Hr5>xc7x_xV2L+`AbNBkw_eS)FuVVRK% z!mFnM|33i0Gj>lcdS58##^0}Kf1eCFCWKXB33xH8PX;ZPTu-%x@U5jT%B8k()MZP( z;ML7Qi71t?1tCR2#Y!yVZv1JiB-oOpDvFyV=>fjPIC_rvhh@i!DM6j;JRJn?DwG`T z1pouR0lfRoLw*FvLYqs)IT%Hlz;0{=^T;J!VRLy6NH8Dqaxef+e;WL;u-;lCUq4#C zgr&{|WWOsrbzTXumB*e0SM!@xY)v!J1zxNHC?$c3H&{n30na^T5aD(ZX#!@)d^sr! z8Jyu$D&Ws8AVy1z^V>BNc@nYYVGH~E?wggCsdLW0?D3?%yI*}A&Xl;jmW-j7Oj^zo zrZ;k-Np(zR=mTk>YK(g&?UG0887heZ4L_P3!4-w5kCdvg59^{Oaz5gLQ4UJu0YQh#QT15YC_TaaHp9^-HW91|? zhs}%53&K36T)iMT@2)zHm`B-Ly@b>0&xzt^N#t0v$q4BeR=d zt~@_lA(tm3r;L_ZNO22-Z?VRQbw80^@NFKn&{iFC4PvfbOxOtkMf!r%as|^(G0C@i2Hz&Nr9^d6OK^+k#NNA^ z#1qvClODntD?$dAFn)*)5z8N+?6=|!8&n!ql0GKK2vJD(TOcxuI4jS{xd<~rPsm}uoPsNax(J=%@{64E0iGtLQ}NYJ6R}m-E;VSKq74U zY#KDgg_mP4CT+wHT?05%s)O6CIr}x`+Zrz2kMD-Y_62IB93b366hBz2!tFCu_Wzj3 zy|6N&cOt5R>Th@A4%lxBU9%Xlt^*gWTb+%~UEc564qjKfx>H17vpGt?#bftx1>Q=s zf9OdXMY0J&;~DUVma4WMKD$^D%yDviGTy+fuZKPW z_R=(%Kz&;4yzSa=;)^t7p>dDFqdhIH4KF{Nh53#3l2y--?1XhC^uknk5#jFiL{{+w z)gXxSbjzh84aSR6?oCRW8NxDsX_YDDbO>#RdDC^!D&d^Py?;0r8|+B{HYl*3G?)xy&|2hB2ekH*mD6!M@HcP$A<^g;eU(CRVZ&+WD1y?0zd8$+{_(FAkTfpTFuFDl2p*yGmP0pO38{ z*S~JPN;4-l5gMbc!|01U+!fkfu4J#i#RN=#u|~sTv-Fz$lE)s6i@3$aLLVg!92L)1rvtYf?UsgMb_mz%?AydL zPI;*Dg?LtSo}A%tXoAuui<{+$ZmZ+VRgLC|ucVdUD7I46PuJ-wsHtZK0OUi!A9I)H zJc|Y;qEq)=C=H?WS9jIv*^6}nGyjTn*=lh#wsQ^2ljE2T#q++Gw-6Qu zO^3!}v!$*`DSdVLaRe{W?Ch}m@-D5x1>@w$HLv`5c{jD)%>~uT%pkyp>a#MgL^iN7 zLDdYdIjY$6y9|iX&k{I?8VTBm|M*9__^SaEer>j!p5Xn~U5uok)SJE`l%eYB zpWv@DcWelMsf_{hg7~guC{x+7~=?-&Rcpv4g>x( zXJi0LgnI=IJT|mIMcjpHmNti3{0?HV-CuJXHdZ3RN~W#fi_iNd!vW5r1&ITUs>@0w zH48oqLzx!unYm8TF5m|xOaLtsg*>^NzQ%@oPH4&zqMsV6PLr><-C6=vIl5$?B7jfj z=h=VZVQ;@A9PNNq_X>>=ahaXZs0-k+zkCnlmmV@K`l=hf2U-LwIxkvS;Q$ zN`qvZ5Vuz--He}>;Qr~D;V{;ABR}j0SFRy4&N4X9017DJ@XG#J+KP`E{h0Z+!LkTy zxcdWS8!Ng64=T{xt5n^ydQw)&X9`Zk)iGo&>=RL0YoQ}s6Rbv_g1Kq!lPzdI&j){4zy(aC0Ic$n%0h&A?wG5Ti*0VQm*bN1QI^9aj z6ck&ly}+jpnQyP4DRW9p$a_3)1x(W>Lf7IlNUEXxMTI_~@aK=AOmo^NVAGYqoOT*b zvY$Eoos}qx&~aujr243_Q6gKUv6Vi2?Sl&!JSmDYgKQm~yo)ROd2{9?&Js3^7ZWxC$*rl#7rA7}JR zj7ca~KX;k?wA|XM{??jX*CJf<8$gGRnJ>qiXuo?YCOqsRQ1wfR^;m7-;W_j+e2I3U zdzgQQ4fuR@_4fxR({cYR)Lx8~A?2}or@iY8cZNM{Y`SLENq*GDfIm4ij3!PKsX{6T-AvgT&lj(o8}l3$$5!ry5+Q$zZ!Pnt)_L?pYZVDyHX7Lqw> zQc_^K-<4QgN+EHbFvvrU<;$C62f+?Iv+}cvDVECvF_R5^`=7peg~6n^?up%a=|#Nw zqev)MtKZNQNWc5$L>eyya!9>;JMeJ72gxr6r(^JjU7TBj!HOo$1%!DWQ>7SbVpq+F zHx=IcNuOIm3-pr2UkL6Xr^H?jla{z7+4F3NkoqzDn%g#z7bBXd6C4Zhsl-wRo0#9% z5}nBi38q{@a6(pOM_iQD$bEl_zd^?*9}s1E0+nvTS*b$I&NySA644ZGUb9nd z1^3E-gHIN&vt-8et+l({G&b`DtwIG?bMFW23+j;hJFHZ(T$*wz8Uo(So2i)pS*})Y z_8|&2T#A0Z>|%9x3PEcF@i+g;kqCpELdk&wTuUNB$UD*Luf%P}C%xEJ%Gk-hu4 zt1MI%_sYCy{G@F&dw-jH$FKP23aVbx_O?6KE#7o`_^wzsY;Xa(xG!O@s%BMZbxYh` zC!2|dkogA|F4UQ@@QVDoD_j-Xv?4Nj-zFZ!!nWJB{{E3ccLnWIzo$^wL=jrds&>xbTCeWsFaH5h))MdXWIfpFQxRrGD>i##3^pgRmy4kVc zyc8LgW#1tQD_4>Q2;<(hKp{4ZQAtpZLm+tAb*O9KAfBDm&5tm9Y2vCY>k*L<+}VY` z>er^}n81`+mtZm;Nisl24uph9?!sk_EF& zx+4Wx-ngD>gpySN2p(`I@;oSuY)*nhguhnpd6aIY$rJ{)aN|d4H}sMibXw~uQ_{S%kU?MQe9+1QFs(3SF>yC zBozE1e6u0?2``+u9)kzDv}!dd!O8(_@&r^}n{MxbGjvO%vnk=ONV68xg%V1h87$2J5w`@Ntnr7l~2#KbD3g zBGkic2!lFYjX?x(E3~#!GyZKM_J;6|-BE5|&|z!rG`p0IuYPn~U%bHlOtw%1PAwtS z2%IoZ5N*kFmmO3)w=|Pw8sR)0+>0v9<60@e;*B6krv!8S<&!$j$_nAOq`6-7X?t}p z68QyaUk!Z{?77AX$=SeFQJ(EOFYuC`i-U##%81faY59&=YjVO5-&a%aLS?<7zhGVy zyN3`Wwr#c8tHnpwW0kEsial4xih#i9PRXUv`&CnMIJ0Sk=$X>HHU6n`3SQ`e(zC5^ zAlm`~a&PdC?fjKegek=)qFM%&p574rm8N9?D5hel8kiCm2;Bh_vcHo()vml1^907< z2)f5pFo)nMoRB}<%7CdJ?VCdYw1z2&e;o6T8fd$u;oJaZgSf7tHN9<*eeBRqK^10Y zacY+<|LSoX>KdnZ?}6hMHt~in9ZI2G%5)^sp?)^{^CoOVM$^&)= za7;j8m_(-u#-+LAIJ88y*v854fr>9K<}VE=f424mKqe7T^w#5z?#HVhjZaaX{b(v{ zdp9?_dYp$Ls)GKU$I8u3B~+OetW_vtD?P{|!BO(d3Af=g$FXk&{BQS6hv;#-Mt)GG^jRJWyKYI`V*%>f|&F@(-TJsl)!qic33>>?Syq@ z?@vfWyrJ`Po*-k?eyei9DC2#@afZ1+|9EM$Oy*vx=*EX*=xFHJv}{gGI?4!_M2kUP zZk-D8wZi&p{6FKV(nh}u|2d~)C=E0Rntchl@kx}jE;YMcf;iEwoTBXroA?uuAo&ke z0PA``yg-Pk8pEUD@5?#6AYW@>5XGJmv`0X5>(B^MV5|vY8qfZays`~_tuh7TZ+Es%qBG2;z8s6 z-J!Oq=AIPE1&*)Et(j(^*DU*=f7Q-t7(2(Eh1rViu|=OJSe#^r+WY)!2(~NN%pmAvB&$C3ddGL6M zE$9B0`>3^!W3&yV!rLnye*~pF;Bp-k_jz5zXJxF6e8ghBl1^U1;AR!Z_!{hCR9)2U zj~EWCz#hfmaohj+G`+tm#sbH%re(*-FfwrtG<^Fi(;>j*Gy7Fr7pvC3XM6u3>DhYf zv+5*U4&>emdZDC3GahF6`giTsyA6-m6nh~i^&_4@$E6RlPw(c2ks+eRYb9PU4Y-?GU@(ny&M1Lll>+j`PSQb;0$H4-qdn(C84<$TC$Hs|_^3r2N>xZ>OD9wVk?uAogwcRs+{ zg@?u4wUjvq4{CjOQL2q{oWXZYK+Exj>~A}2m8Gys{jQezeD@tbT1~^0!z&`5{5cB> zrnCV0>NmhEJ=|h^fts%+xmUq0#FtEFG3nv3JBvgd6r!{Dr)0lgX6mcNgAC(PLMMym zZ`b2G?TtM<@hBsVPr3|PssP_p@bN0=v_I)b$UZa`Lr4Xh3z^&Nd%z+PJ+>8+jXQh? zlkh5d3-^19_sBQjx5D#1dv~6s`-QV#b7d4vA0|&l9>XyWwri8v=%RxowC>s_J9Oc@ z<3Db^H~U+DNgd!z52U&HOQNqv+j!LYaXujrGpjS&&zm*_(6BhIvetqL2nXF|Z>%8_ z)&TbZhYDcMDhIn|0H(w1!o@ZQNkIXFYrG?m3-tfi*{Dioo~g_+-h*E&`1zdt{E0n^ zuh$4bYWA*2W%d8+U``KNs^@r!Sp|6UK=Rv4;3zOzH?9Lkh>a0pV70p`yG5c{iR6}a zQ(qb+%=uWHXd(iCx-`U{E1K$gf+Os%x*WIR@dFiT5XQ)Ae5B8?d=SS?(hZx=!Ze=0 zCsSl-aY?`TalFJ8Ku!(>MV5x^nFj4t zCVDcos5oP(&)qL2D&3f$BG;-(hq8pnFW!g{oIC4#JNrM>5~tY_6_tX4u)r2$v4VsB zru!e5D}pmkfIYRn_FV7-9?XrC;6L4pis%?Oe9OnLioO##b5QoAxMrN;{9zfO?9%@BG`itDK z=S0Qn@ZZ&ci1RZQ(hKk$C8%=OBaajNY?Tp9Wsbpiv;`ud-}4^vQST)Zrg*72XbzMz zK4S_(LN8752gOaJs!;YBN|crmHbI^7Y%IR&38o^wbS<7xye&`nY>JWZ$|P1iv%k|; zi*g20B^xco#QVfLX4T>d0u;xy_*Y}pijZnpo(wREau+2isy)V6>6QFOKT3fh^)1os z6WECdg0WAd)snrkR=}3Dq~nSS8(f|$td_n-$zHQpHB%`SDHea?Q-Q)6?fqo90cn`| zdhJ*~fhr6x`-j<$i|fMsG&zT<*p{t#uF(GZ-%J<)?#ZRIjoAM{%718NimI;i8}`F! zlrW*|(n+#|^nck$z$V~$!WG_e~QMPo=A5 z);5H?ZF92ayj^?JK7x=h4KFk-x2>jD9g_U*tYj-|^mqFGs3KAorSxI*Ft7kuGpkCI zi+!`YNcf?-S=fmD!KDxLRD1gfbhv_YSMcvCU^(`U-}kNY`QV*z zz&2E1sf=wGWH^*%R~n^3>Wr&Et@O-!ESu>8Nx{Y~geY>ORgfFw48~2rpwu#xQEJdL z-fGDN;_aIV!9=W|n&!_)m>@jT6?$pgm=YSpPGv4re>dPraG)T@Ka;N9OBLqG#~mdI z?00+E%u)39tE{S7r9!$L;!XPup$ar+IS{M6tf#^q=o`#+|Yu|LLB8Ub!osq}qKQfrJE z45n()Ia*5o5QXA!qr)619^h?W5JZkpd9u#3IMT+nDzOr={X$u48W`*z)ghHT^jfIo z=Pixdoewc~XWTyNdWVw==K_%L7U<8i`;JQ?B{$lC!qINE1QUl~>Shm5%io1W=x^qx zi2^wI$a{a`L8LCeuf|=%zeDarERL*+#nzw#oC&B$&dv=LIg~VPi8qTmCp8FKder%WviGYs}CsVDR{bHY1=x|7nqJ8aK z`obo?MLuSDqA_Ka8s+O_7)JCfb9Gh1yrkwzY?BfuRLdwG3x9qIs(;_-DzQS`>7I|3 z1cJ%={gtJ?>bYCp=LdB?kerfjopTa?&?O^3#-4l%)s2ayxA91d)rvpY3+Q10lbtRWr zQC$x8L+)%0RNgQhWfAK=&Fd6LS6UCoEifZhN{H~B1u)pmM1a1*v8y8v3-k6-- zqR{gZL^p)T#kcFKBAZ~GN+*lm^N)aZ*WT{gDsK3@`k&VUl+C)~`xM83rxilm6)vfi z^Ex5&z3Ge~z4G(Zfcrh)U=x9F9Q{(jSyAMErYj9p2J}^Qtid&{U5iqwmb*j=p?l&T z=}6~>nx|rkb+b;Za9+m%r+0vO!?))5+N-VnQk?+5B}>9`N%s*AaeJ{ z6_Axv8i{%}S+Um2`mgLoY)MVwTL5u)BnaKi+7&KpPH#xTF-sYWvAVRcEjZ)Fc&F)> zVRqvBnE1ZRSA-D9G?#gutrt-hn;di0Cgs!QlYR^W`Q_%pB$ry|-bUX^<#Tq#CQZ-$YMjj> zl-#AnI*uVGUz_Z!*JW;jK+{inkCFzfPIa|_3F@~(Sx+om(F%>4g22rZP3QiH?K7VWyVPal>kt?<0B`qA1PB1|W(~(Idp@cjg6&(yAGVo)U;a?Ab^=z1dUfmrj z2XB7sou1El$x~FWyk6$ z{^tb`v6G`PD>vws$Gxx!pbQ6u7f2Sm--dTZaJH2c`YNkycn2ED)MC!OV83$_q!nhMD)tfT39X6$z zr~qjj*4{5Va|;SLXQoo^A!!iAaIPl5(fxU%b3m^ABrvKwGygxn=r) zs!p>{!2`?-G;E5<xG>4^HukRjvee&Zio8W;le zU_b50ZA)cJ*8iI4F=r?9L+LuXo>9pS5oV{(5nRJVc*u{KITcgFR2kL(Vdg}^C`f4p z_v3;HqT(2edym0>(fYudLsQQlAZsXs&ZMId-TCDKJDo!PDahQZ?{431ZznHoae&W{ z&Y6_9Rc4js{DWd?t7qw^Ak2s(Aw~|IB}3PeFEv6y(b%q?2k?P9NfHM(U!wrCWm#k6*BfCtA|OvYL}YcCxpFlaO^k*Hl*_2@{_ZXw63E$pnsq z)Z-%}kM)gOhG@MHnQC;sC_jTE2yAAm4SdG}P&_p5u17(y_3?XT4G$6NDy78Lj}~Dv z^(l?CqHvZ?n0Oju(fxhGaEXY{HrP5#5guU5jb^ti$V<_O8=xR65|iCY6*Wv>C#1~s z%yk%;;+KejBF*PIhY9S00J;}UR?E#ad9Y8?=ddL4rKAxL9NRJT{er;$&W9hIzR)s& zZ{^S5`=<8b$c8deZCGeSkKORA5$N+Laah4t8_*)#-dtT5)csy~L*+G+ALyKkTrcsI z8!NjmC-khd0+9aA0KxuHo*jTitz8=`>o1w-ZxJ*{HPD&|KA-r6&nMxD|K+ezQzj)W zHf@g#;p+SKIP4a??S+%|;qW=EXG_C~ZGk0%-1hc9QVCx2J&{c!J*sdWQz>U%pUfVf zgrTvxTT@a{y$LJS1&41<fD9&V=zd#Pd%a;!jDbQy;aX=9U8XZ;g>vI-4X_d6%X;5c+GMylFUkg87M&-v|Z)@zvRV z^l0rv1az$NfdYMV+v(dOLZ~e#3Xr)}5$$l8mJ#=dO=l5Vyr3AUg+Zt(IGoh~*vyC@ z`8lhxdk2xz{y?A>u#b@Ut^IFpLmez1hCJz~OSy{hMDLw3-z#~ZzT;tbST%?8AjLNi z3M`K?dXiDZfvS@*rt0Pa7$lw`7_+|HGke^P!cz>QHJt4kn2+d_6d&WFj@@R!0GlAK z)1jQIBFKo17yl=3qispS)H(>n4^fFHQXGtP##5SQ+=_%@2}-&0J5MtevYiv1Rki?; zxIY~9vGWBUI?VKi%(x5K>BR#mzU$KL;0|6$!_IIZOTSZ)e4v$`e{=ZZ2Jl@YjYB~q zKB%Qi`py=`bnboUcDXh9+^{ncg#1j9EH_63DB$etraod=_4LeCILJTjI)@>HPUR{Gj06GVwYY) z?LpgM%N^x|5mEe__RO&?lNBw5u|y)&vG-PIETmRioG(Uj)Q%HW zx*>z!V1tRu@=Hqc=j52c=W-c+)({Jgml2KZA@lFQS17n zqMu28%Kf4o6h+-$Ahz|O@?gYn^kyT`!LU5p!Ec`6eS81V7?ep;=#D{cY}Gs4I}Jk6 zk>o&fZ4f{`NjUoTRP^Eac!RMt7`(6mJ4O?r%jPFw;gQHSQ1Ep~E7x%$A`anu=QJ=| z8a^Fo>V!T58B)502X@WJg*I^7lF!czqt@DI)?!tM7a4`MRp6=q*{O>SQ%AgDv3upw<}t3Whamfemj#*jAPqyKlVvMx zzwKqRS@+D2=f}MJ?3|E9Fua>q{Hw~Hqy+}v4>60=!T;S7V&rvbP%v*W>+#=<&$}Jp zdBp1jjKzvKTy-SsH{bRX&`_~@7m?GiRb@5n4t=ObFeA&iyZQ%zL+3Ec#>P3IqJ@dl zUp8yN`jDWtBpHa^Q&pU=CgUa2_`XZS^X${UlT?!7L82aXqUehOeuf!YLBhVY^pFwD zi>0DF0=Z4{9fTirNL|5<28i)TKq<~_$?+BlN9%+9CAS#YECso8A=+Fx&Ipg|%wW@O^Us{)(Qa8ZdFr84sLKB*>8(VZ-2$J*Zj z>g#GXjT!1Q1XpjqnD$hkbxtTQz#zS7(Txy+$x9`YnY7!KdE^~Ce9Gd)7Z0dkpJq?M zxIxJw$~KPltt7)ocdL7x$^P0wW%>){f3@g_#A zfq61Rl4+2A@1?=&E+_?`=_2|PccPLsD_ii$2fALY+bBlzkV~_hb^|0&c4IbA$N3No z@;Ys@hgO?FjXleTWHJi1D3!G(Q%N*8?Z)!iQ#oi#(EMo{FxJeL;GkRJS?EE@;L^tZ zRVY1|28}?PgWWD)5J7qS0eb*OGrpF@_E<+7il&mSF`MI8HdRI&L_zcE&ayf>;eJ9d zXNEOAYoEr}fGr(Y(*>2RV4iq$w!0(o$kzl8d0X(?UWb7%BH~XEv_mwB63pzD1zob$ z$8a{>Wf4I@{k23$e@?Hf&pyDAfFLcj(C+iorLF-elYn(PF|3k$Ms zN=nLGk@DZUKB)I93S$D+Pwq`%aX>}4%{R;VA28HEk$q-#9;4a#k5IUVdC5~}t=|}B z+b(B;TG=4on5D`USxjdaR-CD?cQ2Q;*~i{Cs*gVUQ2-w`wGdTGU+rLt`d;H%4m;+xmV2`KRcG(t|* zu∋$|zJoc*ixUcC_YJ-xLkvcIy0I>)8V@NK}f+i-)Tk2W#9WCRZ{VUb`@nUiZs{ z2>-2L$94^)PK7^!>s{s7id*ek+Udw2I{SvJgPpzX7T;oCFE6d{S>cM5m6n09koA*~ zFC?@qw5t>HMD7#q?un_o$e*H0~m?tQ%_L;PL!!~J-L8&EjU%-gsxT>aIR-wgF?7U!z!aGx)1vRrH#zpKP%87+$s{M5e ztHjq0Rf+3WR}5&fdtb18pXm;6T;Q{U+&|^!Y=V8v3^^DxpgJ1F>DZ+Z==mICzZ-ho z^E+8}5QFE$hOKa@7pzWxTRx|DyPgr%J0gX9)%5P%s+=A&FFjTdH0y%)m?bFIZYHo; zRm=#}eJ>yu_$UzlQjw4Nv|jN>cFNQ5n%x#$VD#WzK=M7?iO;a)MxCy$j zolc2u{4-|>m_0T{DW+RXJO!vh9{?ErR?nIL+-l-z0QLKQYhY~-PPgkzktVjnOEiO` zCa%Z&xqaQAyR$E=>l{)0vvbCi>sN zCN_3LfSK6aCiM8w^GnlJVC4fzif*)rM6CTNDyFsJC*|=$f+H^=8e%KEqhVhD7EJxG z_ZMQ@JjI6@nt|uprdb2j_bGwxA@cQZUxxS%LXY#i{P%FU=f>H^f%)LUHr+eznaJNL zp89}dwqc%klWmn|uQ>p16MS(xarJI+M9jcW2a}?E$NQ8RvCZwM>O%DLqK!N6lC*G= z>uTl|0|%dxM6+z|7Qvzm;}Pj}W@4KbKldt2y2EUYKDhKiw>M+4JUTg-4Tynxfvvgm z#&E>b7^t6^fko}1J&5aadi%x5nMazglw$rcVSC1++peW1VDo+M=M)_ny!H6?6WZ5H zI}FP~2c63>9#$U~I3wvyERoXFi+N>37}@f6ektVzIYls1oL}raL}-%JV%sAYG{eVN z;N&grqE70~5G|D?v6jH+-5r4Nm7V^7g@ir(4fXX-Er!`w+?=_Wz1mQ-Qf(XrDySX?ab$2qEX^Z$?>@Cf+kw78Da1yMQ6OLq z6!~)wb?4ZUpI0fdqxMK(X`g{Qa1g}(mj0eTnSs6ljX6Rvw@T4}YOE-O0Y;lu87{4G z8q1Fb$F!BUbgtf?qg@l;_87y61)p*n_%UVnM}UPMSiN5c?Fr$+fL5V$>#+z;dSagJ zr#j7xdeHo`1jrZOY-Qz2Q# zRm9m%Qs1@yFxNVy;IxE8{=M_=DPW}U7PEOMvN*Jt*>^Vv#a5@Fyd z$_(4LtjU&Z_B!1)s@J*4 zHf_(@J?|NPQ>LoM?qA|>71r%mSl1-{uj4F%^8>We>Ysyidbqgs0U@!M@?1h=^0)E$ zHJh%ekhhk>Q%esQD2{8JI6}-q&ttc?{ z8#L$$(P}iuRG%1$7w#ZBQ@3lk%iT@X7av2;E`5+|y;@hzSJ7Y$EQ~Q|Z`8}WfwM%P zmP&;S!yGOQk7T-{ft`*9@cid=+7dE9UcIMi%rmLsTzitXVv99h)K_g2f+%NIkde{iq`Rw^RN^Gt!@aPq;V1{50FPRpzn;2OQ6y7#4+PxVlr z*ii342lMm-A}b}}WAyrSQsc$_F=}$|j(APG;n3jlRp}Ezzg7?}X_o-8>bAA*SD(nH zmMxet`B7bjNIO&f$K-#T@pm8!g1T(a#Fgx#lzj}aIB{=u*dW6t0k(Ha>d4 zBhQ`t20WPKVkMbJxD<%`_gtuOyp0`r1@>w<4ZA#35%J0wMDaXr&1R%tO3W9Ds-7Y_ zJ{_`JIP!mKPC5<}g@DHhl~~|V1u_-RP*Fd}@5o&SFEXT%ZkoH?DJa|^f0LmYm|3Yr z`vsS|sa``M@vuKVL!T~@|F|9YF{Yie5m zsp&>|rcCShwSoUk^2$Xnu|D;d0!z#-A{@Gup2X$O)j!u0P~@yT=lwFmeg0g7hsdg3e5w$}NoVrBLWuM^tPv_*_T)JT@!fp@>4Q{3y z301}!F_P3Jd6U z+LSuxXZ6JPrH?J%2^V*0Eh31GibhwC3yms=gX4-P2WLD8{{dZJQt*CLl5O`%%$$3S z^lPg0Pvp!VuJqH$h0B9*lHid=PkYOZ>lLepC9_G+0P--iG>(gaT@GArj;l#M@~mnc z9BuF1fUO55LPv%`X0S(6dIeu@UQE=h2Ru(jVKhY3m)>6R{6}rDL%SlK?h7x;f%cIU zMf-C%n!q6`%}v1m(0+Y9t7#tphP2Hq+pU$ z>z&x`iCM}C+P?UR78VS~T18r}{X%;KG;9&S*3Sn*@iy1NT*;=-8nB~HE`HixKmnO@ zs9ep4Q#I(Z@At_ivvV)KLyJ2P|JFCdeQ7IT*-XCb;HTH4Qo}~GMBQi$wV+q**DN3n z@BDB~@6LgKUydiISJlR>P* zPubIH;o2R2H>z1YeYCr~CpKSSDTEx`?CFDLYgOV$g{OF3G)S3jbZ8ti%x&Y&I~%Qv?4K9yC!&3w<(c)n~ZI%bm- zG`C<4Ctrh?Aa~Z8+0OMHc3JV@6rZ=m;LMFS?PBoG-nVv1IU~~Pzko^C5Za=Cmpgb z2E=qs6EXVR83^a?9@e=63@zTa!000dRx_8eU~7Pg+cQdWsH4y zEmArq8cBxfui&lP@?EOuKc}3)vD+2!>#0;VdTt0&n@#q`@dfSW_R?c(`zYRl*YK27 zt=tt^8z9>pHoqJU;~q1!o9ehj#ZOQqQq;o2#+)xXjJzTh2)^sFWBY+rHZ3Z!CFm>R zNWsVB=ucZt42UXwO%5k{ndIb@iY-9#LRHNbje{?mjik5t#~8TKiNt4^d0>m3CH(a0 zGtMvgsTe7IwGOUuhmV-caZtlKaWkq-sXE{`c$m3IgRED_tWk0M`=UYTC#%0Ic)0MW zMqV+0=^ik0fWi~^KPjHQFcbatb`>k_1XVzfIbvp}I@r&ALrwDc!!E7Yu-92PN5!gk zm+|4y1*#^#)-iPpP5-@*ob`5zij?_M@S)U+#;Z*EdL^ZYmjLXmDSDS$t>gu6z$g=d zvAGuz!Ey-x+}Jy8jJWnnh+jWou3Vlw9GGA&quBMHN$rM5`A-;q^N?y>*(uyQnJYSXBv(nIM zjWAQIca&UmoljY|%ciNHU&x1sMb|pOAn|00cl3TUyL+h!1M!^R;T-;$S_F@$G)AK~ z0-%IG5rD&+kpp}s1-togQ=Iub+0xLRMwLp%4G5UDvj6+XmXIw*zQNh=A1sQMuYkpU z` zoJL#Pc*SH?;_}_Q%Hsp|Y}_!^zl-6%yLvXDO!R!CRO4Y%qp<$0AVJL#KQZ$U*kv%? zydMmM&nd32`C`+JTVHzxB@hf16hpW}L-)d68R!@q(W~>j?(dA?8tfOXby|Q))0P{M z9bYb2;WMH4|KPmhi~gV7gELsa`g+oP<+kg&$FEiF&2Nj?;qgm-Ewv{X%h}go5l#<) zYWfsppf=$A<5IC#y8cYFRLw?G^5DsY?%5ps%)N?PrU63)#&AB6z$x4mi3GUWDjU6H z%9SPIPo`vgG=~4|AB_$8uO*+I*Vu`}qS{<*=lcLr5Jp+|*Qn3SUK_y$dNRWi8zSg2enc{!HL$ImWN*DIkAZ>St7B=6HR@8b}!<( znh++xU%48FvGwG z4>lTgXPJAljR(g-Suw(y51{(Qx!jU=7XZj{DsL?!|EEGI>>}(^Z@0B>Pxl(+bb%pv zo<2XNdw_H|^3M8~s#SZ5r09F_4jfVo5X<=fHsbqVc#~lgerVolnG4}FLUKd_$NX5u z9Gr@_3YTPP*neK3%+RLY&S0qVp0Sh5O+IPiyB;TzsR(JTzSg}#6o3#R7CJ5XblL_D zK6US#uOHkpW~_AFNb+Bd0`dX^>L7(T^dL^o5RAz&l~kdupf+yg*;On5$0pha&%q>R zeGEOZHPGTldFPvLrSyXkvu(UQ?o=Q0$AOcPm}^79gvq z$$_-3&O3)wPUAOw?_5$?M`O#sj{=MmFNs03;}|&}Sww5~%dzU%3Fy#~a~|Rn-Z^BJ zWEmR=aEVYfxfqhhX&aCspSJpfO0FYSv{8`WfLzQgOn6I+IMvsY!H*zL%a63ajI)&4 zYx3KlTb{jBwW$gK|33i0b6+T@PrR>(Ngk-UQF+9Ne3k!NPZv_v&oZIRDsnHv@L=MW z)e@v?@pJMJUw-Wbb#)KE3i^AHYl%7VV?f%a2@%u2{jZ5fy3H#4G}+%CltC$bg^EgC zKpKf!EwwA;kIfz-Ylf13PDY1cjcb(wB{?F%g;f6IsetrKA#*c;EqWryiu57^tasR#KsqD!vggd@oTt>p%|Y(a_9p)PIs=hnQKq2sl4!ZeX1{$`@id|S zWVCe1`HjEn&&X>bt*t0>`PsRCJ@-4?LEpG=ShVk4VqgROPMo&pbf~2;Ia_D@7#T`v ziPL2ox|@bqac0+#)zHCdksv=zG5XRW&q|V3zQ_;=-&%}l+Da^pAtJ?8wH}NnKPb-W zAv}6i?k6YmgT(Hja{8byEghTaG5>;xP#!eG7Zs7=bc_=!Db2dmDuJpVG5$MH9evYA zdC--S?rCv8*$Zc};S)4?v+4_A$Lqx1(={NexHyKa{l4Ot`=`c`Xh&4>Ch2^CPW%4?2mJ!we^>tcGLLxqsqM&JT+b>MOvg z1?XuNAp07&o8u<~@s)f!LIYps8Ct_)h8K!OrB{-&>e0rz&bD*>^H`M>4a27HDb!~q z;+h$8hW*|eM#AQvMvR}pg$IqkwlSC!tt4~5h*YvG-85PZwJ>Qo@P5w^lZg>+ z0wx#AU*;|OJQ49k1CU{ZH68QO_28Yem~6gV_t^f+YqdIq0Thxx&)~XR3^mfHJGBwN zih2%QB}Ph_tc)AJ??JOhjwdN68}K~Z;o(#i<_8u8((*gJ0g!vx+FaoBw7YMd8HuF^ zxhMiEMc-by1)S-iC;5e4WNcYST%+kZQhZ8Js@TLz2ZmZycGp9L@Y4fk(Seb7c*AG6 zgBeJHP(xCKdBYDV1Ju6?3plTaVbqc+eg6g4XfQ`N2-W`fVz@;H9i@ZOSanzX(LjwP z5T6$uzZn|dlEd2&ZPhyT(l$sA+-+L|@2O2M7wa2KV}R2!ImAA!9W3h9F^CFx&j0#vY&6n zi1=Lo!e=x-Y7!fHQ!9UqrtRZ%5^J!!q|cF>4W_B)ls%-t7W@dlzIJsOuulbGl#4%Q z#%Aj%wefc!7U4r$z%-9qU3z0@oQql5H32c7 zOVJ&w@`ls);?fbo?op4fDp2{=Ck)TOQ~QN1>)DcGo|??fbvX-AbJI;BEBqvA{0^qg zg-%A(pMBBXOhkyO38uDVOl;BOv2i&cU`!USU*71FIY?x+*x#Uv0LpkP; zJ?}M1gIEzAo1;Fx=f_Hh%-={NS(<7JXyP#2;g~Zuov^8Uv1ril-DH;hJ99EB;g&adpib@NV+g+! zncsq5u{|aQY6WEP#H@F;awXh|Zen6_4c_}oLZsw4zHKFR-Ym&xQ4jo_jR`W#DMKsv zBj(mjG63(t65CM~*M+rySYP4FNqrQ0buNPRveI!37?Tqn*n2^`=WgU34 z?guPuk^d)^K{Jypy2)9ExDyeAvN7)FYf&cx27?CB`NA+0-#F`Qe&si9?6r3O28+@g zP~u=+9P8~qKTR);`82h|*}u)cm_9V4u0ujVYM}mwu#se`6(Iba(RX;3H&{2_ED6F< z-FQqafBO%JZ^2l375aUSc0T~eLc0P{jrN)f4vZ`2a3Z#UzD13@LhXnR(&@O6KKdwQL`o; z5Q&V3DY{$vQcwv5Fx*Q35Q~r7g}o(I#i7l9Ih_40$*8+}Xa&VOEDp`)zmGM|g;3n#84edao(#45 zxC!tXU6#;Ns3d+Zcw!`}Q}>cxX$>sy_G;=#lz zxRprX+OBq<0jG~?OP7y2HDiF+$13dmWB=f^lgTV(1i8k^7`wSi;>$(4(7;{acUfxr zYs3#zs)Zomot5`0*h|kgTP0(R=zb|KAh7pjovdxR=pr6G8y8e74S*;7Ik%&=z!lut z4^E*HzsN&!(qsh?`m~_N=gRgP6J@<2Loo?R;SLS)x2WsgS(2F4Pq5 z2&2x5LGPcKut2Xt^Awp6QR42YV+Kx1!?L|RyhLIAo@i1^IjId-sc`@A-}gKQ8uQro z4ryl+oiE*u6cX`RQ@kn%v+`ImNL)yMbqv`k{!t_ z&|FD3;;GIooeFt#CIQaTAj74`GYmU`u!;=FFWu5umS1uknu2RQgs7p-R=TD+cB(5S zy5$TAWMN4z!K6;k?j;p3&hfOXrgU=YImNWVwKS6V+UVt!0o z7u;4W&aQr}s-Qt)&5MyMV)N%EP>|<9-bFSWIOL@ zArAc&L{^*Ji$~4j_-7XRQF7(o)+&|17l$0VT#Y1%gWpP@!8n?Auo2seR}wEc$NC3Lal5A!Svd%LE>PmSei1>D=UNq zfQtOCc=4$Bl0X9exMTh~g(OUIHn%YqYi0>29Vh#qd5VCKgLo6j=#D?$5Arz%9#q#9 zd^i<$_cb`y_&f3N*8Ky>uGC@#6U*(?P6X`{U7NrDp+qO+)6TMU*AtJ_#@SBeCi~M~ z62@?i8(V^c>ParFR;(^-!Ru%>?eX2%Jo|931&>uA>xk)m9O^7)pcsR0ho5YqS2Z#V zCno)2%7mW=Kn^AiKFf7|3K2AqN+FRlL#cPhc%953HE8*Z)NR1`o9P;w4tmNOn-|;a z74Xcc#SUD&^ild_R@Q{(zA>(nwv3TTQz5lih(+LyBWQV?qi489d@7S3n-q!VY-msQ?U2*s8jEb$D;f{DyBR& zf~Oq64`E7J+5)yzAcAx9*cdC-Oo>&e$7x4cD|~3^Ku}1Opo&QP~zr zGJ3BHq1;_&wGe))9qt2Cj8SS>^CWW-ioOZn#EdzQn*1vU0TKcP>La}8Z8=XDys`=_ z$lozOEC$g3$%OrSjsd6ZhYT z@xJ!}Yoy(_u8S?OJ==DP1+xCvl~!rg*k*ZqUZEAZMU`4iPxWtXsxt2P2YGqnss)N8 zJk$B_d#7y?`@(8IZ#GI9e?NfI7yq+4PYh3LE`tWBAJXkSO@~Eidbk0_$%k>?&d5VP zRtFu=KKb9x-|ZgObtBaXdCoTZ*k$9I9`UmDv`w9#LzhurkkF;z)|!(!tN+%U%#2Q9 z%f6;DXBED~^srAawBzzont>{1T2-PToRt<&e0i|Lpb14}&pCXxU_xu@hB~M7_!mY^ zoC@IwV9WS@y~w}_TXG38H1@$Icu@<=>4W*y!vrPZ>n*rm2#_%2g;YHg;UzpH`1yPe}lqTcHxwsboE9b8uR&iRt+n1}`k-%2e;SPsRVY}yN+9m7d8AVP z=qtM&7*cmS&I?XKaS5N!7Y6IdAMdL6pL8q*>5b~!DFTgliAp=?E~^~?tp$F-boTy4*0Xw$$>{w#s8VUyA_=^ONwQ+)?XhWXnok%YYevn& zor_jzGQ;(VE73_*_{)lJSSul@Q6L9;hmghM4K=7&9%>KJXOA8T#(3q!8Kju}*sZ5n z23-19p0ug+H4B6gD@r57N32CY;9til`eCSt491+0O&J#Abk`u^1dU)1nw)rSjq7+F zY1Skz^VMcZ@xO>^5ClUJFMI)(0P*N=?Y3OjdZ!@(dzy*6&7+i*YuRLH2*`v8 zc7G`QBafEg3gAGF7SwGBXd6dpQXbSiH?#yg`Z{us;~mxWKwtS3gpdCm;Tl5@w>sb| zj)Nn4_~C%N#j}QAucc7`S#>=;HFI#Z{(2h|?l_0V7Fg%CrOJ=k1PN|?EigDVyU9Uw zaZWt72OT0vcV7?yU&y_h6UkK8zm3*{JEm_ZYbJ~J0r(nL1v9$=vFWt@>|E>^{RlWb zEQ|4eRslU{O6eq`GlR2xP^&^wFKa@uI%gjPl7_y*E*ffBEoCZ=5HgE2U(WS7s}5xo zS2`Ty8&NE2sQNsPKMk9pVdIU!a6eU#JEZ}eh4+zv334&k=5nL;7PjEJxLS&(9g_$T z$e4hHiZqVO?s%F8acHVS4zrRW5?unt%3 z`tM+8t^|jUh{znN&d(N zO#IXBpeX|Ov&FYFG&V4BtJ1jF#yCp=luDxfpxdt93Xg1NX3PS-4do#(sfw8@)l+{3 z6XFH2b-kkwK>#q5V}Q{0>F_nyTjZz#P(}OP&#I%#4sQ7tM=ZjbA7*t}ht$lC4dN-R zR<&QO#_NZMJzT#TXz^h}rF!aL(X311Ne{OQtjBwepKY$RwhM2?#xZ^|Ia1fJ_g6*R zCzg6s?N-RiR=kT^Dc6sM|3to`9BChK#T6*VYO#IVmXMX*M==H08oY^~N#A*Jxm~5_ zK=eHME1xwaQvfaFuuML;%z3)j78hIr!1|(pg$JqotNQHmGz^d53}V=OSSMZUvPgYW z%F2uRY+%XaX)bY|&HQii^}KyhrBBg2Fl4Y`4atf0i5kK!qMg628x9S0+iT$uU(&oGKpLmy1ypUOH>y%X?@KJHV}H;vc)2N zxu#~|__U;kwLJiZi5Em1)kM3V>LE$x0o5{gq9=?PSBWRtievqV-LZ{Lx3Z_k~e)^G1-(jOy1@lQ#88 z5tl!x78yx@>83Ph{!2Z%X3swo>UwhCKlxOFOe0zG>Qm(ubVG&ZEI`6MwjEUm4C`gf zJBh20&9Xo-aUwo1N2lI|hs^4wDizx|?XK!DmPVtrT>z7@&WirqlT~l3EQ!q7tb2nK z+jCm$evEYJ5?f;FQXMapo)3^YhGw3jgv0Y-#}0qp_3Q~CSS5=6!zJ`Ak=^s&i6`F}OXEK;S2gV*t=^`GUq8Iq7`873?a=SHCQlqs0u;~v zB0CD|!wdziXYv}4P=~0b4``s%6`4ZagtFlFAcNeqf_!Ek5u$PYPZ2zOuVA22-|DlL@sTTxPXQ!Bqckk z*x1ACbP!I^4Zl~|(DR<^5A|-|)SOD?X9&XKTvv${q=@=0dxq*V@qA~8_CnG+{#*Weuhua>OttGW6?jN_7?d#CBm)Jugvr5xU(C%|_%2gG&) z3Br}cFy~34p4-t;Y6asY^WoetCVpX=MzrK=h%7km`jQrkpp5m+(U5TfC{uvZ z){J0lh8KR=oISd2{ja;e2XKI#98O_$>4!&2{EUvf1uNEcW?m$%m8-^O+tv(||I$jS zm1bszt4?#0UD|gO*^F4{3z}t+4E^ZppB2=P^X>g2MwTA2?=0lP@wZ=iApN=#>!Mic zmNFpv!g4RL=fMbfUNu7K4|c}mzRkQ@Ve|jH(~UD=?T?##%F)j2HW+JTE5VO}?Az%m zI;Ac`r=E~+$-6tg*Az-{};gTKQ)ZR#^VhVDAHnz)<^QMztPEE-IV~P`h3KR z=<9!NS`2lJtsZ@j#;~()!flnO9oS!~6sx9WRwz(gZ>PVwJs~!!9@rzF;2}4Rbb=OH zo$s{gL>TC*9lY!grrF<64r5}0?PIfz#SIz4t5onvFMQIgG(k2P@aRS!L5lF=(nzVm zDRb`_ge{S)OMbsVKY0I??$qGp8#$?^Wg8ZR3t97w|#SXhP z;E-}MjkH|kLwg@GqYgH19K?F@t%Z%LjCYdbD2=I7iSXyEAJ;DuuL}n`3^H(RlQ^~S z+W&>E!GcdY1ARALx?XT5sa!e%bhiU)INv1y$;oj`n^Lh$Yeq5enm@OI7nfEJ=h1n@ z<7JP!lJvg<(!76Z3dfdb8#=?uP(J7I5!syF4Jd7U?K42MlRZ<luUq-Xz8vztRqIu(9tLp2e!}%td|Zc9i4<$M z^66RU$BZo*B~(C>=hMjI=VZ${&}qE*EMj)qK0Jm;_=31>8a+S{uM1pQ2(|4@$^8I3 z_eA$qMd-1GSR>5THn>L)8SR{;)k znTA5B$AugkRV1)wc|nzKN5~EtqvyT6_xeKTX` zug!ArMSBH`m7vi487$AjgNcU;Su>j$i4DLkUZ!KY%6DHaNtBJ8kX|()4PA#;iwA9_ zs-hq*UCybA;XQ!({i4(LLAu%}F_k9r%!$+ep<=6pfH zUEDO-_LkP`zOcQ!B-gn7%`kHr7PJYC2T=*Z@v4B`h`2t-xGIUuJplD(dy9$&ZG0!{ zM57Fy$C>^P&`l0^GC*{uSNFGb1urY8ieatA^~4vsYr}GDEsrP;uWXz)oAoxzCI!_wei-tvkgUtxJT_GK>Ge;aF(&locs} zu~m>(25S>$Tsxl!H7sOMhJib-3^6ZSC)fCY?H6BhgLFzK9(_VRyk4Dv@OGlrqa;fO zv<9{R=EbabQ)Zif*sCZlB6s6ZMI%)}7xgOov!RiG3bKyWwq{M(2^gQ23a3C-`u=nX{M#}oT4=d@Pjl7dE|C3ji=9< za2|fHy@CN<+*``+WYr+}!!@3{-B-k>30bQ1-pGGTuLJrK9{kW3&_;7m&HngZz|H7uIoEQrWZ!D}uiLzBWaL8<$H3bz`cT^ z8T<;-Ac>&v6ACjF9m+Ie8`HUkEPoj4Rv|2rUUN83j6fzpa9`=sY2xhB!Arn3p~s2y zL{tMkvy=<9*_P|oo}QPE?vZyUOduHt$5z}>lFga;hypju79#)uKWT_!xNl0j{UQ*Z z;d!qp;jTJ$^0}Jx=U;g|s{Nr>ewWl(^#DoS<3nHe>Gsl=O3sBwOt6w0JXuGPf^Sud z&*VeMZx2*3e}U)fdJ?XHT_JW+^5ev&e|!BG_q9lV$)n7jL8JAJDelC#i-;BIQZyEK z*{=Gh(a9h(WhM?{3X8VLe$;A%uY7NO{UP*(QjSJ~Qy}$z-^H ztlBUSiB+rc?(9D<)x_3izAi~otjw?;fCedZ+UuI=BH&gpMgOzW`f2IqJ zgPvKukp0Htq)|_EOg*?awq?f1<;k<6D6^_H6J+4A7hcZ=+Z#DltD5!&xG?cgjIY81 z_te}*r+bMY;8GWYt~+CfH2V_i)Zn-vl#nl@*R4^?_m6}HIHEzp5S+Pr$Cf@vw(6Xl zxYjx063sVrcT+SS-+E<+AQmy`Kr}3DeGT#T+0a#u@Hkg2%Ls1&4F&H2(Am!i`)a+HIf zLD{bzOut_vo=#X)&QP$vdaEx6t26m$>_K?+G{o?QN9;L2Om*+XJ2$w668zTKBQC`| z%VLZlg4wwo^<7Qzaaw^e5aXA7eHn1|;yOLIASPx)KFg1Sz$6<^fxsZosdcxVRRi4lGSdBWv`b@`7rr!mx%&+Tm%DrSU;8J(~~gw&%u zLB~)bzX|)J-ucj&!)-=L^+q^j1bxcTOrJ!=U;sEl~cA4VDCS&cd56EF!216R^1UBonoSuL@ zVYU{9_bE*75E2OsnuS#R-Pw~~mlk~|*6Al|xW*No$4bV59ehld<&{+D6Me$!dKw3| z*eX>Hl2>hB(}bE~q%{Ohn4mG1bgktK`o|N^#XqZE6<81M3}MDYkOtBQbUr=he6jSSKWK+bST)>Co?ZdE z7QYYON=eD_zJ|YR0@{PQ%P2|#SU0YFBAb$Q*l*S-6-9n^s&}+FRtluM(l$_EWfD}m z%Wg=|RZlWAUgqLn{$OEYii@>U!yBncMF4Q`yOBe1SCWu4f!9gX0yK=QDj+Heqe3Ae za_bV}ZSr0i!UV*Y#nwc=MYAut^KGewR=vSO*UM7y=S zlJo3O$(m_w@*8`3krYf`?M!v+k{sikFt_n?P@SGt%8EfR!ohr(i6$+CmTrS2V5a|C zt%i&s?v(Eg?#aQ_as;EtLbRCJI|iq+e|;K!yNhtBXut4BnDNMDB%BrV zEf}YU6mO4is@2G_bv$^T`(vdzn2ehsi+!f*bkMR;8+}L}8Mb*RG=@9(=aLwQ{W)VY zZ`yp0ni39$&qpX7j`CDu*4cI^awY{%y2kuRTNOO%UNxP2DX%F zDLKg^k&;5Jvg`(9Ra>n*zaRIT;2!Y+@bq@7Ai?j}#u4I4p)C4wTmxl_`if2vz-JO! zj1lpBP{O^)w`h7@k0BQ6D)P}AbS*an@cZ3Fzc;cMa?&MY7`^<39?SzIJFes?`w9zP zdDCj@E|z|lWn*ENvPk^QaM5Io z0-K)}dM28_;A^y~KXX}$C94UNvSB4|o1uw5idml2&d8HEV`A&yt_5`LZ3SOrzXo_U z46h{&1E=BWP{yz=#Kc}NL(KOmD8Szdf9*!sYhRj9%MV8< zqZ5{@?JHD}>Iy9WiKnbVYJZMaXS1}hau3F_@bO$Ft7xX=jE%-(yX);8KMG9qY{WH_ zS9=PnRzj`g9SH>l6S(boU_ic!NbEF_DL>Y21WTq{Y#aBFWa2hbAv#mQ5h|Nnj<8(9 zME5s)`sV*KpU<*k;C-43;&O`prQ1-n{-6)aeh0hstXa%4*noJWNU>@pjVksSmr$4_ z*@aXT&a~~meLIk6r4gp8j|-RD`H`i+*D^}X4nUMCB8X}VwNA)s6=3#(!LTF_M=?7rwZPSxuxpPs3R~2+$rYy0}?Tgu{+A&-;=kmI}9g z8^?TrvkuURgSytx1)3nuO^Z;{^^MN$qDu}&abJr+e0`=L3bA<^X8i-)Th0>Y!Snxr zYtLob_9y^W?_%7`0+hu(LeY5CP0}~54-mVDr!I$xtr2h_z6hyLe5pP*zb|LlWoo|n z>PlSqEi4aheEzii)W@qM>c!c#@fTm5tb#=8dzV8#X#h>ylRFy~N~YOTzhsXTEwwR1LL z6{6O-W)AGhnBvGm-^>E?ARwSf;5nST1)lC&chxd8&H->od0DM)>nQDo8fA|Zymf`s zh`wlsJ)~?U`a$S5-CE|>NgBQ%w%ycAyVkh2$;LWK8?1xMzr|CFHXm=ASFe zpRavK8U*OUOd}Ok9%9Y$^5n6DK}&@_1^$`D(5Lr$tO*Xf6dUtKQ{%lNnIqM=6J!`b zI|PfdHF65pw31&jYnr6y&Hnac5~6<)vj=!a?ptVCOg1Lw2fggymD7qcHgd0ZFPS%m zb;x;LA@71ldghh@4==98g-F=+6B?wFk!w)`G0B3v1syb}N?|(-pfUmN&t|0{0 z9y$XAh1L~K$juhw%JZn}gePyYh0AS6wp-U-jS7im?+RFV+DzeUt8~5{Aj5KsK98Ju z0<*SqV}7xBhAxq5@v;Y8+J(lT2{$eHiTP|mx`$2Yg#zOeF>{!?#ZH%B*)>Q!IC6+C zEcb^vjOw}fPcN`=gkx874BfZb9_7$G-Kr#v{h%t>&QzPQ!r0R2s%o@Z7)!cHE@}=M zZCftTz&gY3mofBzc2*d_9I$^TxSUIT1j7mA!ofvXogIbJlG&Pukc)n%3fDw&vV~n& z^Vk+%UAMv2BmoEZ30B_#>uKD|Q?-uI;Bt(TA9 znpc_otn;5Ts>~+7=bhAm)&D$X3FF>hW4gpS0*M1>hY_>#beB^=~OqLlp2WJ<)`r%`-?eou02B4`8@#GB;vbU)>g9WG(iZO(|7cYm14;MnOHjY;j%cH)#NHrWp!a*C+ts-ayJ73GN}A9 zGJek~Dswp_D-nJ!6ai;I*q*)zC=e9HXAP$FKRu~){su=ih&BJpVfxw)RL5PkWGx~${76kAKb(N+Y|QT@B&Iflpm;TRob@TpxRq8wy2w&~ z)v)o)CS_Sg_V|MEtYiW9lO0a$8mZ=~roxQQc{bHLLwrzmuDKz`Hs+b7|IO%ou*(8}XWoDGg0xv!?6Qh%ypFD3%_3kgT2}S;mcuIoc%>_D#uehb> zK`BJ2zCb}giPA$5hSBu9#iF{ge@X+IVdimCtpEo9_r#md zSqGQL*!Q-P53xBzf5@QdZR8Jc+wQXHlUx$eZuIt#yrfV@EOS%>tox62E`3(TyZCoWKx zc2eR-lW2;Ib#^>i2u~TJ!Q}a1uIO-dwYwwX($OXJykI2|!7l3ni=k*0g(9`GyZqMB zy$=_9Und(Cjz=pofOGg11EW(wZ^JVS?$jJ`C)| z)nR=oh}9l?O+&jo*R1HC#9P_tugp($3J%cqEk3v}}ZT zKgHm(vbd2lJXY*lL6<@_D}D7fO}GK)z;~C4b3WX6BxvdR%L$)Dv>4(8L~AU)FWlRl z_Jhc#gDr*=Tn;1{qtVyuH!=qfV9Ird-hqX1#B0HHx664O9L8XTJ>w$!_+C+pUK0^W@fM^XZJobh%M*LA&0Gkx3GkvC<@J(!T)znR#6*a&0KM zCS~HpI*Q4q+>7-P|L##ZCHG0vR)UW_uQqdfi8h#+A(OfPuZfwuU=Y{N`z3kbM2f2(OPRMwx#>Mm+!QcT7YXfqSHoJ%P)>;7rqA$~1RpL{ zK+b?teRo^Js}s9?1_3Zf@V!P+b0;J8qcIyu{{(Au&!pU0EWiDOVxS0AbzXO}uZ^g+ z!WmNU33(f(Z!hasVR(I2jt#ubJvAC4q+L0=`$L>*dcU{$ zeUSVVep~7q^HH&0>5&}`@JKb*3?oAm3U;4?+0X7(_3U?PA24JG1>eEpHWH7{S_xv; z%=vMjwpr&i(Y6>yebC>8Ig`>s8;-SEta$ z^nQ>^JD}PBM|MP(yZ)z9@N`ALvo>M@gF1b4%V4AwmITtB1Ba*i81}SFvfpoPHnEE! zPnoB%O>MsNv*i5^TtD_g5MkYra!n|HS3)tzrJuN{OOPeuAi>9p zIp)=efeltdSW3Yu1-(B`C%dVc#nhv3NgIymS|ujC4w>FlcUwl8?uoxt&uc!buw8)+iry6A zxCotF>t-cwZs{hXzac{dc;dSTY@&m5ji%5@Tl&)V7!LDdDPKDk2CVT=2C6A=*+x=* z0CA}S{YS0%u{tf(&XDLH{%EXVHo~%~gJx=IipGN9Vg2OEEa|qq!4V2c$3b`OeM|>p z#5>Y)W9S!9NQj@oPstyV>0+ZS^GscZ%?SUo)b@B?9`TSx_IhNN5 zGz2-n#A*of4|g{darVQiFGhbpLA!WUJIO3u}`miS(-bq)$fb%uf;2BK&cXIr#q zRn*{jr0bBUY_IYKuD*zLPn-$_#vf9vl)b?B5o1L3r@P}n_AXdC(4G5Mwa>Bn*LLFV zK)@eX3ebF1*Re>q#{HzC;X=jGZ@6E2WiVBZJndYIA^){bp(wKq{1U20hJL6Tq5&Oo zg6b>x>1yAR`SXxaBLrq1saH3u#q>QQzo{1TQ_Z_&dPg|?tNWj*9OW$m9gGL41XXqC z`!WZiUh3(DYr#O}Y|$5&ZME~InCVsKR=ij|{EKVdNHNgr`O5CV;OM)s@h*bu^Fm7e z3(fkup_3Npw;eo*w4vTx?WgTYB??+M2khJvA}+CtG$tTf`Gc;yqR{RJ|0$IbUGF4& zR+zW!v%OBX&k;tnRG{oV>TzdkWHlKbNdP$H-8MD)#er<`_cm8-S%$N(%g^S9+=oG% z$Z}2>$DLP|cz6mE+17$A>Y*rYjp0|yZCV4dzc46dqnQ34zihEX%pd@}a&=E1n#^T6 z%?ML-)6d)9M~)Dq)RWNT*h~EJ30@w|$y2|E>aP9dGV*YS*-D$IUh4s@$@~ew%4!s` zw@vNW(5i2(%Q!+lTSgf-m<$d9qvX56RfL{*NHy|(nGFnXDBjI@BEDRoRFSFtQV+5@ zpT*uFyI-fBRt8Vvvud^HmyAP8eaVqqLs<*D^sbjHGcX&gkPBG3S_5>2VOGpTe>$Es zK!;f4TOb0xa@MFP^5+NT34WQHOCEpfE_T_;T#=yCT~?BMCXIT&S}{HUj3mhpPQunL zDUj3vzq%{^6+~{Om8By`yCKNnRPwgXuL1P7Db=@ElqdwkHjCuW5=P1##&QR=11#A7 zbW2EZN9oJsF>$wbh(~WmfxQ04Z8ZLq;eUVRLe3SQ4?=Ed@GI~@Ol$v)JQSJLx}+o6 zp9IxbTr9kdFgw_nE<}g~?o*?Ms@z8HW&Gb~5hvDvuu8ig@t5DN_|{f#>mY-S8JD-hcOzM+Ja{-iw=pN=uvd)1+JoHH2{V=p$Yioc+Nc0Z2vqYm`min-!?<$Tz5wDVY< z27|a5yu90~nYeY?uSERsqFsf-Weu5CL(cCoviXKoilHz99Xa5In&&@^dZJLb`A5gw zk(O7Ls&*!-BNVfimvOVgx@^?b3Hm0ob+jQDuA2{apzKI>!e&{C(o61>7P&7vkcY?GO7P<(mYu zZ5;(K(_s^E)=_TZ8Z=ZG>Ofux2r}CJT^YY&R#7|380AMabLMs7N6-0<0B3LQ7V7yq zgT1y?K5B<&?0>5c?%eMc6LetEv|Z^WAlW+J0p};Yx z{rmJ06;$+ez)U=cdt%O0W-hOZw=E;b%)mu84}?rnw;QI z4*3kdPPsD797_*pI%`Pyz~Uf!0M2%VeoKd&ys6lWJG+l_={~h@AGk`C4q!sHrq@V*eQf`wH)cLsf+{%Qq~xW2;{SM{GNu5#wRGN^B$W03Dg z)tcw``9n_PN z3YaNl=!sByds6#%GEBH67D@aVE*B%0UQ*K)`LjQ0kY~5T3>{drK3D9ZtOR_{5Qhwi zcvb(MFmsqg8BtRRL0M9^c12G~<;*RK&;m^>sy8X*A`}49z`~W&22R#~W*E)o~!^1Gg>hW2XzBoGlm+lVII(Y%N=d-IGpYL?nqK!kV0c;N=rPo%j_8=T7K>9;z7pKA%pBdg=7|`dU{4u8G`yi9juV@>> z)N7$;Atp2L?FVclM_#3eDy`8+HtG&rv(^{zKgt?g~tEz zxT&f`#L#IAsjIH$^nG{XqB*{%EP4{T3FWy&2?n~`qQf2E@!xD9-|0)jAjd75*`W#UV8Oo#iq(J8aE5))t}NQpP{3+uC4?Ykboz_D}(GB8Sx{Vl0}_F+|c zEO$Gs@jnXvUYvHM-MP6bo|fx?MMU(aJ<~^5b?bmM=pI%E*GcW*GFH?umqn-!>d*-p zCb^l2khIuG7;z(x+}w`|P+ntt#wul-5)y}*groxn4Ar2Mj2?wU3dvGstKC$05Pea< z6lBohDK7ZS8h`SL#lLz!4}LoHJa}gAs&4kw`}m3-xxX28z*%L&>Y~OY_j6;B!tR!x3S#dfVmNNY z(@x8}xRk~b8QK-RuO7}qS$OQZumW(U}fO(&6|;$ID+PYrQAX_e zoCS$I6ncJS!#f5Q=LIWs$i1hl1#4g(`}vrO@inxqNTKQ4)uU>$?e=h5Kw)KT@B53= zW8i2w0ybFpZd#g#TVqduL?cWAfXquAzi}GJr?sO&2NrA?R(w6Qk4yR3=zv3oaVBWW-d7X&lj`M(9&;scb9-rkTJ zj2G{+bWHeW`k_UCc10%u2(J!!MsC%*_9H0xyzAXiYZjfkO8`Aw%Ptz@YdGu%?8M(a zjSD>^%|3uQV>5ByknM%b7q(Ckg>8YEV$EVH>a%{G&n@o_2fp5cEbzJos0 z0d<282&MaCuu>tpbVj%wdu*?F?|k+sGK?81GSRrjmj4q|x1SST^yGYwS=2O%SWX+H zW9<=AZ9>dhMOcWHJQLLGFu-aN7)~SAX9DG_{Z&o8Z~#-2_Pak5+gjkO&TRwy9)PH- z8D%B(?^QVOArCjTvay#Lxdu3kcO&t1 ztxHGTX*W-v^*>8tA;F=mM zjA>#Om`RF)gMEtotzuuf;8rwAE-XKEAsR^oQ(!qo8Vf41g14>2`H~F>HdHv&yx!Pu~m`anBFu<~nJ)>sMpY8;N4JBtP<%Oc{sp+9|aFV`T44 zNploF{qinTV_G>}FZs|=KS#t2Lf=Hr`_>y*>(n(NZ(xlUNceHX1PdH>Qg}KDp!N>URB6ASdigz+0;b9~;ULs;4|Q%I;oT6eSJsf>)SXazu9)D2PP zL$XjP0_CU88nLI&0W)v{If`eEC~5VZkS1#{I-tmLfzac=XP{Xu-%JC&taqz&TjR6$ zB1xZK-iX~&jq-={^11N06y+Kcj+lgheI`bbt)aUop2;oN3EM#Udl#~+nOWt7gS3cR zQ5{JO0v)@4ar(qh-V!7mRS#h$0vscdDmcU*VLkn@w1&#Z;4P$QfeRsJA+~@h2(1E|KD`po6-Z`?h^%H2wzFh((zpB%w8kRWyt0s&<|AMPLC=6BuLu&$g zf86U^f-%r4lK;b9=Z>KB7HB&>)mzuNY*^2IZ!okDAG$a&DKZLH&rnL}hmK?OZg51;HM* zT1=Vfv?R&-VR@64^ci>Ah{yPqv(FW=-AA&Gud%IqM24SWAYzp(Wn@?;E=rlm|i)lZO zScACWBVPBhvmlEU z7Z=6y4e4G|6Uq1++0N2&=(_p=jbQfcg+%z!l((7-o`@DizNxXb3qLvO6H?uz{REn> zKXw&n$8i&|bf`oeF_!%$HQtF3kEwF^dH;O2bekGMUO4$DH zjzOvlaUG-%Qds`VJFL2w>n2lOo?{umG@HbWwjSDP#fxu~^g6HaM_*cgu7UmomH9Wnj4(uD*dA(hD7&`O#Kw#G3C*nV` zD4J9U`s>D1Uw9VTi}cMJ zEePz#(v<q#iQ&n06$Z?Ef8dPTwL-Ro!akIx!?k|2< z=9XGRr@8#KeixIH4j=rHXoh(C6(8xPVOto7l{OdhpcAy&`<#89$KOrow&(&u3b4t< z=94n(;G({wjDyLuAtGOVW3tS6V;y%J4PFdkZUKsV%02I-p{wUxPkVr%$2;9QUpchE z<(wb!_;yuN*n^W?2_6)htkMw#7j+9IB<+u$ZUSZkByy)8^=^Yot z`CCq?;CZa?c$XYWryd0p-$}-uvWpm3M@fwRizRBy*CjBqS+ib6GjD}SWCh(lSfo|D z6Xcs)k{rTbkrnn)r@3k*lPhcMtH=>i9{{Un=*fZSK)0tjQm}jCHsEST7l3=;9zsaf z)Gv6RegT+)E?9UyxvU5VWv$5j%1vA>#QhC&DANUbLzREOPphd3f>-)}Xj<`3lRpRc zwlC@6rsL^P>F^bMvtk*+2Zd8L&e4*FvV;HcvSfB~Kz9DOHBw>tnG9$EXO2Q*>W z(bV}pS*$BIni|!#EBYm)wstijFHFKvO|Y48tB|C-?i;C(P6n8vOT_|s)U%y^r^+dx zTQRr{*%ACUgZfsXZgwye*disZ(+|OY``d2{x^Xuwtmu3|y?!H-QELv?6!&QBnk+a1 z4d~?Jg>VO8JsYr(VWZATrnB5k)n>1jzc|y;0wl}25dIkkk(n1r;(Q{fn(T7^E|vyV zoU{V-=eg_6AFrTc+74^$Lv&uxIcH<2@FF-g7Owh%+VN)*dwkOHAwsNE&aR-mX+oEZ ze;2R48oTv0sE`te?`XaSEB=#LWoes<^(7~u9LI&)l0cv8?|PF){bO=4r$>k`B;iTS)0%zQ>=&v{@ZZxf*fx;z?~$?wzT3P zZQEpfx2x!)32xoQ2|~4H#0UkkDq_z3ek`PY=u~`mpMQCM888AJXOyfc9LhAs zP{X^XLIE7~H7>kx1UB9+DUpcPj40xN^)vKL&S2|)cQOP{;mWTha{_(VvE_Wbian>4 z6usZU{{E^ci(%QM0mM=A-IhWrxPw>Tcz34Hn4THchxB)Wmm1%L>*&uKH92p_B=xv#eGZK0wQP(iS#hVCp2I zHzwj>B_eWPCGB6aUCmLhnGLc2zqw!5v&#dEJYEZKY;wm86Q`e*CIe2{&6pdZG>wTM z*8us%GtJ2{ZHddT{#$MfzHW|4XCv1JLRvwwdj7+27(`n0UP?+KhfT^Iv!WxX801;>2oW48jDeY^LrHrN$ zMBRJCV)pg98`(XBfPLS)mGB)DGcEi!9o^mrO$zA46nF_KKn@J=m3*~#!s@Fco}>v@ z5XU2dj-hKkZ9)oO4qR6Bn3VuhKRHaX*k(%s8k>Shw&4A4B6nq=u~^WLpv<<-B#lN5 z%TplM>6z=CPJ39cx*|$|rWi|evg!zi$J;W?3z87zVfK8I1dXGWwfK30Ah4&2DGu>2 zeQ7f6cri|#!O))d7uw>kvS3HdL4&4)KBA_aJRw=|c_zAQCgM6MP~0sZLnLTHqdW+0 zskda)IdLc@6=v3oiPlCc_%t1!@OO`^R&=e3(>0)tc}1r(fd5;O@TSy&oR<;#7=*dN z=k{!Vc}R?ee6!ur!ht^DEqkHnQ!W@})LNMOS1a*6Dcv-?n zT;$bKG0>zD~8IH=uyyr&IcaGh3vl zJ~pRi=wAa2n0poUv7v-w0vF>xUPed$5>?5+0?eJhg>*JI4YumgmiQCrQawCe!uy=Y zNc$tDcCLh*mTxhxZ+xh~bK9LF^t=G)858j+bn6eHam`{|f|3nX5^quZzoV|7H1fgi z2zCldmLz-ON2WznR5tCnQluESIC{- z+ES4cv`I<0M~)}6D&B>-e93}AeNPxMWCn)}ISsv6~=etCxAarmWk7Hp$K?xUS15{B*#Li9r zC&d2pmXkVKnn{kXX~<(Yl9a<}AeXiP=d|Rq4z)G6u;Icz6+4bC223x3_pk;R-+93M z4bg!b5)o?Ybj)PfQ-ELUrZw)#jKhxA@Ry@4%D-?}J9RPYZF;HeL5C~pQn1d5TEN?W zqL2Oz>cxL6IjNNBGQ-r>r|t^$%Pl<<_`|$0>?l>oVq%{fWzv_pSPSRe3$|k z(<+)7Y&mkn>J=tiU6ob^8dT{oWf6x=!yJ<{%?3C#A#@1jwO0I)=4?eXGOuX{mzx z9|5O-f`w%m{Bm2m&vyD`O;|uWQmi|A!|5_CYw_f3Ub4!_jKo9q#CUr-H$SUNMi3pE z=QuO>WPAwml5$1Ge|SKWG;_bfViPCZnge@U*nmp5bbf93=haPchrt91gj~g`TT<(a;xpeWDkFuJBhhL1iZqA*l>6tuHzJ67mItW zgJT=FWV<*2W!_kD^USix6!fM2pABcPer+8p{WDA|7aV$;Hzmpl z(lD?VqvcH)^v7;8440Pd+iBO_to9~j?lk=oU?fHNfHl?U*4tT50Jga_#E~;H9pxyY zJJ^7rgG6Lk+R?*;kZZ>N$v%o$%Rf-U1jk|KdQLxE9&v?yhoARi@qh5CvDEK=UDc#C zQ%hH3sEa_YwyyDh{WV{%t77604PS|8tkYX)IdIx0R8MBfz-2KcwZO^e!p2}${KKXP zyE*&!dgj$b1sZ6&!6vmU`=Edv44VL@$rMznPz%Qs?g+mE2vH>{1GJ&UD;|%gydYM& z8Y8jx7>uZx#9G}b%%+9gspN}f>pm3Qs+{YAiDUkA#MH-$%!3-sW)#BaH%P(5+-?w* z{lxxr)YYl1^zT14Q62uOj%SEkfW^n9XrEMk{<2}~w95$nq+Xu&*7%t5)VD>3zrg_b z0xMv8m?_7IcEigrqXduu8JsanlW_aVjpAY8%IZ!@e7T{Gn$(RUl&KSL44AWJPr(dE zlS{&!{8!kcst%dhtWIA0n!Yw=Jq; zxAfJo=7v_cL*}n8IvKJc5CIuDH`hh4qtM`HYgcJog-(kOm_81T(avnh?qrrC*1i5X zU(`SJ3&vmZ2O?i`?fhw}`*E7r2A+i%s8-j03s%jmp9?)-%SbBhr-WQ(Ii6a-u&sh@ z$ClHv%5LAtwfHqE5mC80LDLGDt&W40lj5Y_L<6A{!lq&R#E7#JT332H-M43UJKPS# z@t{NS?Q$QzoD)3Q(2c;`LC(!UNu7)kB)!a(%R0no+^JJ1m>?(32IGR?w5Iioh%CRc z$##Kn(5@arZlc#h*hb_FHdz)os%aQG4l(J9*s_g)ly22mpwo_IsZL68GUeEA6N>Nd z=`01yY{S^5gc~*qo^bB$J9zt-9-3rT@GGA`3f71*lVk1|%3#MMl}JonU6iW6FwDPf5&1PeVE^d~etE0)^}rnuuJR4i8r!p8**e6!J4H*J^ldTGhH8SP+Z;R(auohN5J%qH&GozxezWzzXHu>E^Up(2wN5VZ z2^)33*PfBcB5hi2^qOL>q@Qf>Qq}EX1lqn>I}4!D4l-RKadwz4orNn?tYk!pAIL`k z2!Sy*s)scfJ#G_6(o{;aM^w+v;Y!{v-GyC>L@(KUdCf~;1fg>e;D03=;*}L7xW+OD zVf>-+bYFM{_n-`ZbAFx=z9ABW3~O>m!RxgYqsE@#;@n>a+AE zb12#M05O!Vlm8O7ujgstVpBswt>u(%nj`Th7jx-!Bxt3RSfBEh>)Gt^N5<{f>XixP z(=Wu*vF13sQ5k%2_m9Bmp2%BAo>NUyOH*XbBfQUMuCgmwgykP}gi&G%cmC*}R#P;U zmX@3u_7odgWXs?oMb*$y zHR8p2d1ou2?`2?ct5f=1P~dyV1_;!+mZCpG+BA-jL>h<)sVizkY_yX^CJzNrP}OXe z#jbs8c*6lO(PA}!^Gm;9fYJy_E}jv~Y(zphqu|n&&qvuzEF2q$nEt&ENA-A`0MdJZ zX`1v3|GmtL;e~MWV{X1&$caU_Z^T{^C!b4}Xrkbxn&B#m;dO`;!e-?LT&;NbNFno_ zrXHf`%$$&*ETp6Osr!I=!Z`sGvXm@aG$r$6vCWqbjKfj(e~VfALELi1zk0>tfssFr?8z_N4Lo5S+t+!Ce zxr1LK<;<}r!Y11={*3@g0tNGwTUP1`QCZQP4MasZrFaovaBOA{kdjuu?>#%pli$uS#`V=o6CBMR*COz z0uem8)d0&VYjS87w04-m&~j}&%7w{qWgvlLl&w;&ybq0xeO5)Jjk?+?#|#S0>nMCWS3DLvP6M5`?$$gSu8(4$B!a$A^|~T0Zt_DN*`kr`%vgJ&77G@0 z;YtF2^(p9hy#YS@9iWo`w#fbb$q`0odE0`?VqvmCa#!NDm9n>1P@%PZ0H$GW~xI$eQVhJZy_Ue zc^mAXyna1;rQ=y(+H@NYgpgddqaGlC3#N%!Dd@sloA0Q}^-zY3CDu#d1zG=d1}fo0 z`^ar}sPt|V%tFS2JIr1z@V?9ck`T!sEWdO$o&mzKf^0CWtxxt zX<0mEXJt1ls%9SCO$uzY?`-h!5M@4@Ygl@6o71ibU1JGx<;ma|@_6@J(9N6CcYhZa zoi6y_%qzh|IQQdgaDV!?8EW^uz`N6n)waOPIKEHkD9vzeW<NlS-?PP=-dX#C<|E8t9xML z1Fsf73@V2+UdRu1!GH9Mizxv36N4K{`lneUoGXJa2T{@$j%+4J?6c)0l6fwVGZ5u3 zvFNFvYmi>(&hRFp)mOAW#i$Oo!y>a4?Zg|r9z7}S~{=aX}B3;f*4tj@R-BR2zVUEj0VTrH=q~|4sUU+Gkvy za9Jo9r*#0-ADR7ME)L$|j?9us z{J}j~7(`EaH~5B{#TN2Ig(MW#dCZ6LpkMfJEdkt$G954z1&u-WU#lSAU~8O7$OLg2 ztO6#;l=Ju*Rxj&M*8tJU&0sDIS#vkzj6 zF5PN2<-yLk(~vXO*FSGR^!htzR1tuCF`T3+5Fcv@>kDtDjn`Z9$*N*Kj4_EfI7@_)p@Hrl$yRh(auvo*gp4k`aH_TqbA`yF6R>R5!XKiOyy z1*NxMj^ViNYVN>dTv6)FBv`7P&X(q{`CoZb_YtaV5A8mwo^p|-)W%V%Da+5(CZ#C( z)$QX}>!@t*j6pYXuecrgZMTN0K%GB?$CgWIUkYL*6gJkQ2hdxH(O{c23dphRkO_j- zx}Vfz469GL19SCG)=gj`=Lz{e>sxy-kqH1Exh}QbpPaWdrq4-0^;DCuNIhp?p`Njt zIc4fBC3)#pm%;+jzf{ygS00#vPgFbh!tX8lj;5Q_2GFNMTK6vm8PpYRYwq8eT6#^Z zQL)a&5xsyZRo*CVxLY-X;pgnJqw+6L&+b;Wz##L5xvw&(AKGHPqd^j8i+*Y5&c51^ z!Y*aZbkk6#yBG)a)#ra^1EDymtX*pILYaqVX6tl-yuP>WEA`TO5C?ePYLvx!WnJ^^agHJye&~W5x_W4=w?&XJx}Go{Ea<$|XfM zMmhvR$M|eUtt-5(x)bNJ`Ob6Z`C754Dh5W|)UZWXCO(pWNOrd>f$;CPwDvMDD&g&L z&mP!nJvq(J4M%x%;*rR>lVOR^udmx_#JGYqd<`KM-7N)qsPFEgkjBlcLhh|KzCt8G zo$|7*#_^-kl%=32Ysd!G!5`>pRfP%Q)!|p1HofUmOw5tiI)o)&KqIoWjgj&1nxdxl z=uPCaKa<585SKEBs@Jz9{W5=ja7q}p`~wn@hK@T%YHP@g!#f$Kx*acT`+~ z?vKRle;UQkR1&Nv=fDiPdXf-BmuKoyY%HZPGGXpjzgjy}|8KTLisvykVVBaFwZvBS zl}E1R&dC=dfT@1@$SA!ck#cTJCz1mA0(G+hH?AYPF6)4R%0S7;Xq*oW!uf?uPoIlB zQSbRePRHCR6!n(i#OyMz&7&_u*7w0VI1Q?(EZ!fCEpIoqVKR|X=3H2TcKD^l`XPHNhtt(QBs(ZF!om*TSC!%mXaYzaV z*cf7PBDFWf>+^4scjmoqQ=~!T=Cc&MPnD8KHK#SOmg(SXRkV~~n(d;pu z8MBzT6dZ>{=K0gjBlpa(&gNKzR9CtyQfp}f@T@nMt)w;gaEuP$j%-9~@vyC&O^mFw5Y!AVB`L9+PrHlNW&bTzgk z9*k{b*p(#D`zUxT%_g@YiqiVgYBT8=2oUtcWKjhRyAGw@_vgm7G;sI1MPl}cETeSM zqY3w5gbTa@HrH*X)dazgeRv*G>pPyig|b2R5WTTLLHLecXzuOKGPH8Q;PCeDVSqh>oW0*B{-I2uG`=` zNpz*9MURp4wncy|bVB+gR#d$^6o~HY8Ioy*g2wK%gs+4qUQ@ZHDd52LK9cbfEyAjA z+yY|Xvzhn)7-*r#^#nL%#7htYWl{rni-lg5ly$_ zZviGB`&@grut5oET7kLLd)+p`bB^_t{)Wc#6AV*^1H_AN_g{K z~!TV z0c|D(?@xMOkU(6}^2)Vqov6$zX9Xe`ltu>n-g-x9w0{o3RImop>G0e}>RMppe9E^q zpJ;zubG(EuRhH%W3G=#}+i&sJqC;&OK5U-e6Ak(KEj5RHBC2SyCzNT0z#O z0JDn>D8CEmY#+p?QVjM|JhIkYo<)RfB2QwH>lZx#$F&ffH(5lK2$eQ|NwbuIx}g;F z*eM>BSgTsuIyzT|*g3NonoBu)b8+K8U2m?GJ|asXw}IH23?BR(m;Tif_Hzw_J0-JB zeFToQzP5!8n2g09cmC&)fgk0BOo7TVUlTv3UT&k3>pg5KYZTk8F!yo5oE*iqtwGcka~$|F(}LA#{jp)SG|ItZKRfoa50I zxYKNhTk5YDyQJ|Nahi}wl2wux{sZguU*(pDUxpYKuxvdAWu}F2h3pk5U>O8vuOsFo4lwhg5ka@6p9vBhKQEFxQ~6?>;ep=`Qv9y9td$^6C!kOF!RA&Ho;DI6_pfT)>9U zr3bdfVMPiaC{;t-E5O)7V47#>+&x)N@E{LjS0=ix3M_`A99&S>Uy0?kvIO2^Eev`IaglxK@Uwj401rpjKQlGhGF; zq3}acCC|p+%o><&&9kjMe+4o zv^0k=Sm-YqyhDY!xSorV6vSn_7H=LIUaO4>2f>DG{X(JSx1ga6+GyIitjFno1ATZy ztZ6}GsX_OvPbc0q$}yEmf;bLnksFi?#Gj?`h=#l$$FEi^LYr=<@w5ll4t!Ha&ss}r z;l@q9830jjb;o;tYP5XuNTKf)@Q@Lnt6fz+hcW_*F(3o|!&$ zX3eTf$(~%;Rf2|yU}3N09J8g|zX!qLWH=DpNT%$#i<&n~?*UA6GpSUx{aJYI?WBWt zL2aV)+u@G3PIkZ`Hrp{zfUook(101wg|8#rdLwnrEu<3l=XNrN0sGrey>)dg zKGe3jR*bX(WJ|?)9-6+vx@LA?p-Uc|uw4CG)wkkdf!Rc(vUGTj>Zac;AHP62VIaL@ z7M)dx+5m!a+qkisv?S2cmMEAC%&Gyp&jz_vk8*;j8*4|~v3)`Co!Fx9Res_!I0f!j zu+1;@P=>coc|L;y8@mi0_UEzNDAgh7x;{Rdtl0rmJx%N1+|ANnKUi9M%1JaUoZKbB zotP*<_f1;2DFgTu_bw$S{8E2dZvAQ{wrwK#Pj@p#YPE;)(y=uFe1#8%3*I8(Ij45O#(u4d4 zVS$4bf%R&iIC$g=4?3=U4b$N#vA4QKaR1v(yYiL=VZQI1)hv;2d+GMGrmxR@4Ji9s z1U~7JmN36kB2+1)HanKvj%yRuc|K>0ciAbdqLBeZhjA-Va*M3={n)3^tB$!I7D?MV znthk!4DBW*L>3fHJdQ|VF3?HUzMiS8HHTTNWV#64F{;Ol2>((Zno9DW)|!AzX4uYZ zg#9}hT=KU9AMksgiJvyrgtgjGaD(1|FU|nKu8e7e4E^g*Q1;_9eJ3mzp@*_+Zh85nr^$R{y@s3$TD>#TdQ+y zTtaZ-OYDJ?-;1uES8^K|MjEjWRGMU?p-v0NfBIaq{ipue)DYTlhFPU*c(~g5);)}a4wYUi{v>%1f?3r-p-LJ{JqH72*MM?)jc>U}* zBEx+DY&}31fP6Iw@-?$blp^+h%zlw*6@_);JI=3O!gr0hB4HGIj`TM2k_=nd#v^5> z)C`GfiFu&-kr<}ZvPK~g_}$lp;KDnmzH~Pt?10#5dL}SJDNLGaq+w*-J~sKzc?94h z`HI&38nJV3zUDsAk%|S~fU!NI(c(2QB{ES-QsQQ`06W5q6F9dOE&VU&GA}G#Jdn6C z#e1NMla-+b{Rod7QpN>ukn!F|;R1ccKQkYOLPi;WZKZMbHi~g#b z3&fI)LalQgv{mglr8*cODHSsGLMZFHBq!B)&vf{j3wgb-u)Nustly{M$oM!lwEq!P z=;e)`wNl_AX_`4Fp1$UJjkwDTL`>qe2$HQDmDCL)#~-tcI2megLG>^{1k7<13JHKF zCuG;H@|_Ds?*`XAas(^sM>eU`ZC|O=g}0?ISffsf{PrW~CMjBE*d@Ye19Iir_x!}Z zwy&VpVl0cmkm5<&xhT5n=`B;=+fVWUo~AMJX7ibm%rc64#9)4u(tj_aO~>j*)w`Jd z%+`tNvKmLS-pmu0_j&n-D3JGXk|n>&$uWq-&#B845-WL)p*cD-(ORafR-0T-8jIIA zQUMD6fP(kLw2BOuF<^mpKG2oxq}}9VMDA%AIs6cn0eVR*{^~2Sz9hg)DV}d%0)Kuw zhtOgzw z9e?4QsZ;368`fEDOqsi{7N&qh_}J&^wbvHs&rDIIHoP}x*P5Q32LE*&sfsNh$od-A za*fDeGH3nf$w{2aVK#PFnbFRLQAe<#%CO#pgC4W4}E4s$o+!!yn!9 z--85~xLX$^S(a#+nsc|y3M6~x1IEhu08_A&x&)aB+*%ZxE3Yy?f^#z&0R*W~0Tb4m zTf6d#Z13@Ry>KCfrDYv71_Z{Qb_85PQxqMFk&yBYv&N=$fp!rmhxJ({?lmc>QnrdG zOwW^+#Q^g}AKVmq-Zi>>ZXqFhf9wz1?Gohq8W0}y`Buf?wGtvXbT`|`;t|=44y-F! zT!i7)Jec`k-7C?EH7FCtN0x=f@vFLg&0Cif8irPDOiA1jAAlh~OaHCQ&n62Vc|!J3 zNsEb01?-(C0iw;bOnNE9(V_1Z!>~yxiP)m9j+xAr5NxEzrg)4EI6Li6V)7iV9v|4e530F>IjEIt7>z%G2YB9`&c#X5!#ZY2+8p6# zSUcSQy1(cP$W#O+F!%O!UNHM&43` zb1n%hj71`qe1|vLBn(Lg)Pue@xh{?Y1-al_r)l5R_o93yJ?r7{T%C-#) z62hkY19#EK%04n}z~sZNYR+Z8WSB^aN(xHPN26+emRXf)PXu+U<49w{ywT`c4&FI` zmA88abynCXb~+kjlC1hnDN^7Z)g9UnI+homCq6JM+|vYJ{}3oWr>8tDZ~veYq57W9 z-q^?#uPODai{!+^j_emN?Ihj@Zu+v7-46lbJDh!cJmOd&9QuAX`SpprotA>z4<{tM zOT$CN%~#cA$pn(-P8U-tI)FnlZSCA!Z9T zrUp}_)h;gtGN#{+fizBQqfji%Gc%Q?3D)@`E$BRLv1)bHUf9L6c9G`w)UbDq`mEEB zBZg#Y^a!U~Lb5nW^IV=KL{-1pmZq1}cxR>1zBDrSeaCF0M5$DqpXT0jYXLMjtd?3c zDu?Jjmsppwt8T%9JWH6PgIE6Vl*|O&>^?D#tb-+t+tkS0h4ZVR+r`#%8%&;=9znTWX-Z^_R*qjr$Q=Qi8jO~aOH z{q%|#P*o(6^(Fg7{b|iaz(oX`@-H8uPC2X`{pw4j;FKQtBM>EkkeisV7-1a#MsFx( zFn++ce#2>N`C*=XJMoH!~^st0pex z%{?x~mv}qc0A|M&YBeRiOEQdw3bV)QYtKo`6*^Bz9EQ zLGSXFIom`*K>Wy%Fw7_#?nVGIHW~3h_4+O#FaRy_*=?dKS;$6x+uSf)ChXL#OS(T> zb*HRK=kJn!yPC=ZoG;uA)I)$W6%PMu!z+A{9vtZcZxO9~d0QuUGW z>NK8w07iD7Iy~3}A1HmYXjsE}%37E(wj4D2mawIHLUT7OtX@?IQ0v=H zrn+PyL>6nRcBESCBZQmFUx&_SqQ*GZq#-Ous$FWVuRw_@{wSp)i!?%!7-p#lt~k~%zB2wyN*jSwzU*h>isf)q^dQ`~uJ^(- z6H5bw25Bk%!8fc5#7ujSTe~i>U?X7&YG}_t?9*MHCd{`bM3e_v>|G3fjh<`wfl8+%9hit z=PttYRBl4SufgpK;gdCP8=^w~9s%7#=EzhFZ`1KmMiEI7;+w7@yG%T)?Y$Q(>vk`KZx^2##RSS44aXTkEOzyR7Zr@jIO z{|@fNRwRCZWb}0fkLO!gtPU&svJMKR!&E~60zm!0N36IpO7Pk-V4wq0)&~IWsaXCU zuDG+_rFDt%S1j7?&#r*pwHSlu>3%Nhguz-yp2( z72ZR>{zxheG0Yen{Rv*m^HRmKET>gXT>mpaCQsjFh7M5{b`jm~vR>BnUKXT|nuV|8 zvT4lbTtJdBdS_Wn5AI!dlB}87unc=hDP)77KR$cT{v_HyD0k{daU9IWxg^9a>ZG71 zwAv*DcO)sT=aOo`grIa(WR9fHa$@}ZVZq*KLv;^{+kIWfC+V@&_)FM?)zye>{g}x? zM?~s1EMVUS-z9}t-v>cex(m{@{hw0o40m25pXx<9=W8zSF%Kl*LHPzu-N(e9TzAtI zXX@6@m+jL54mYRs$P9xgZz&y}b)j=NOHnGTmP5j)xp5yH5uQe3%x~IbO{E>5$v{je z_)_M^PC3eXwV#6@t7SFR8LqpPd`_R|7WUNu7PeFaw;uJG?i7zS&8Yx&OtMy&IKepE zdz5wi7~S~#441tlWuyj3VPn`f1=HBnru#>AKQeOx5u#SRpCTGkfu2>$q8tUc6fzB5 zAW=X)j9-E1dmB@T+AW7F1MUTyNeBFdD$c`tbDXQ9+1L}VWmilOd$92!QYQtDfR~mE zD{V*~3Rb~{pYG0~8Gg_+rwM97J5My80ltr9z&Y+tAdD7yk?NjmdG@|G=BK7OEskm( z$sJ^wkU429PZ%a1LzwZh^S#pZn2Wsy5NKe>FzUY5WQgXigAJgG z%Jx~o0CHWpNV90m`D+3qS0PfZEj=nsUeug}S8nua+(Nhifk$wwo0YJo;#i5{yWNnI zxJQ;1fv#?CBGS`0M1+^5N|B*K7G|RX4vzg_j1i85l*y9#q8#Z#^Tyy7y01%XN>0Ft zH08cfy=SMbuK>BxP$mgvNWgY1@bZydz8(W8VC~GGd>N%zOXzHU@l<=%cBbLjX`fF| z6K24-9|;5)vq%{+5mrWKX9)P1WNss{7S~*)gy;d>$2hJm;k{IO;#{QMw=0@|TX4b; zO?gKQyH$!9#;Vj{>2=2MJbrCaa9_{og~mkGdz&%?)?7NEJPh_i{}VtIkA1eJ708F- z7t@9~O(p1|D)j*3=<@7f$S@$;Bd;k>6X)YlxUMS>9!@pU%Hq``k~Q?>CDO@KURD9^ zp+Ox9?vC6z#tc&Z+!|y`7cfR9r?&|3x4$(O6v~5;t}kRL=bWvEl_c-Fi#5Y2RazWS zHHIKNI}}tHfCW<^NX6SucDQv<&Wtg;8_N8b;`~%Sxd_RrdkWTgZq9IJj~<4NrX9X_ zMYsyeH;KlLNp8{w5pwauUO3Fd6{;zM`eB44URuD6*o0wMfn2g&k$duT-qD4%7nhmc zJv_VCtBYeEZs;}w$ppon;^a0&HQbI&8qxTrr z9}p9Uzf9RQ7}QjqhR})z)CfVcfzX|<0NbiJ2n>3OQ?!cq3HyH#`uoqc^xC{L*1VDE z!m3b;rW~+@IiZe|z67MX34*Ty0XLj4a_v?R1y`%B;2YDelWd8XR0hgjMKGbC((*#S z!EX$bR1AP_t%qK%xT*;t*eyg7lRxR2qb9vBUxbuvIOwxvsiDxNm>ZQ-?pJJ_MWgAu z|K!hr(hn5kdNwTU-*c)_3$~MTY!r6C#1gUmRMu*L2Mw3}oUbS}f&8FntE9>9|KNo{ zX`_>%xDgS2Yfa@-Z55%-qU^rV?*^4Yt`PNli!D_9GuL0EpNu;y6gO7iL+EA0Q76Zc zS;U>u`fE_*H4{0T)4wpNG=Vj`G*?G~$W(+0@{Cyp8J3)n*!c%(pQM)9?uW8O9B*dU zAE?6e>F7QI3nqiF)Gkq-0NM&3mWcyc${aM7sZi7lE*ctJ<auwTi>Z)13kor4R;e5 z3!c$0I8(l`nb3wsl2Ka1V!HEU0ZPB1sK4VkqrYQJctJ01Vlu&)&21t2E1ebJBh04@ zD5BLbq5>7$N_`49#<(3uKwh4`-j@eZvQ24)1o`zBf)pE4iOZczw;lKCXAQO8OstcT z(e5)MM&t0lGA$CqIhc#Z4p-Onl;6lRr7P+lTX+gtE%QLE$`vV0p^B!Co#-4uRgZNS zo2Lmka(iF~54jZ(_657)A8d31z+Uski;5XQq@ip<=G#!JY)~#R0W`%NZC;XW?`*_=gvAUuUCaNaA5ZDd}OxM2? z5~{yCXX8>@aw{qTMAlRQ#{VeAFG&`76L0kaW}tT0c+B&-(v?w%A{@Bp4LCG01izz7 z(dql+BL5Z%en3ypfmLSC54K^2=$QdH3wA^pNKtJL%}lAb(d2+%Gr{naCS5QAu~<)w zI)Gt&aSPaThgoNNI;K+y-OKC!9PZ{?1?W)K;AIqh;Y5Lfw*&JtKYPJF&hjlQ2a+CP z#8LxmL|?|&2$gXi54SyyH1P(pKHOk})xxG#Vuny~)E6~ePt<7WnYx-A>cL0DR3MWD zD=9{KS&ChNkx)GSAoFLgj|o(5NA~k|=(H z(}0?{ z<0&#f)aWLSA#;pmQ7v#OW9)Z_wb++C)#S!(p0JDPMw6V*k*nnI>f;j|HlQ(yLRQy^ z4$nj^(X{}3s;@!Ib54Ujz7JPD>M-l~MQul(WCmdd2b2Cc9R^@!YaqPD{+eoii%zv5 zl=`NB!kx`H)})D;wgoS~9#Rgu&Tb?4wIiZzm7LmuwIy&L%%BQV|34eBa&$tRXPHYl zy}d=Qlj> zHWbq>m1RGm5l~r#?Gf_whm_hOD4G@oMF*I$kA9Rc=dZ)(?LC-p{^z@M4Zl?$1GWBG zfxGi%Xr^Y$6dnL;Ra}-}^zJcNX#1(&bF>(FLMVp0J55}SwNWE?stCjo+FOteUBg>z zO23=(Qj*D0cK71(PO~rwe-eg1M7g1_GW_fcz4P7q1MLz{hX{Nvodo2DiHz_7HG*cM z@SYLj@zAnFrq+fHkcG1)e(!&ySul|@d(wsLmhGdkRmrRzoXM>qeyS(CHR+;Up++gn zuep(&y4phiV6dj45nJCEmCVAU{>U%P@E0s|r;qvORzAIG_vOKt@> zPb+yC9<>XtE+#x1(1R0V-836v0pTg4DPdX{fv3!L%XFmLmiuD5W6hWnT6trmfaCJ| zDvBG2#|cOBw?+#30k}7m@HLjq&n37IL~7LwS?)(ICnj3v~>_DTHw|R&#ft-VnHa zV>f-iFBWFhR!d!5BPGP}&+-$4Ah5!PGhMKHl6ZDyV!MutGa?40t{zGymi2ME=5b-g-++GHzU?jXni9nXS z_A5#^>xR|fc#%`PGFT693VvZC$X-vl@g#}dJ#DuHN*gYR{r(*d3NyOJk0iQ!9NLvZ4GJqS| zHh^JnPNqaI@zS`4u*O#F0gjNk&I1MkwAE**g8~=w?_cX7AdQ>M@a0dw z<=on@@Dh;0C(T~EH^v%8JFSP@)5tov^%dY|9836#M%DwHnUB@V^fw))#O#R^JD$6; zGXP17gTQgg!_4>;s#b_rIf2So z5BnU9vCF7;p7-nh{JCX@-b~n~S2=Cg@7q7+v9B65%PLtg=6i2ga{4z&H5lH z;)=(B%R}Rk!n}H3#!3{2N&|p!#GKr{x}Ib*p2Etyju6Y}o3YfB?O#SmsiNd{jqzL! zjZ#Sjh3eFN7%n_Hyq?u|Q$5}OUz z#9@~Tuw)uQPGVrM_WBfR7VM=<|h6R+5oc74LE&5%v%9*{CA z)f+Y|&-Ub=px}ze^L!s91cm>N%8Z;{bP?g2;ieU)HneRbe(Ci|3Beb9XgFlz4i!7# zB(2Xt{vHF^GY-d(-4tvQ9T7r(_X}MSOyyjce5bOh*5qn@mLSj5Mutv47Y8Cx*Y<=j zb*8sVZNZ}K5{o3xFfM7a#W$lw&b$s}MEEl*ke)KArGVfp`5`ZG`g#2Cl3)Xd{%yGI z_cqU88J5rGI~~j2&#_3Vr{joPK9m0ypsRabPdBWh&?VtZ{v)^u{wxfo=|Hb(z;;)8 zCByG!ZozJuB+V;|0I)r2Xb*Xc>1UplWIo#1Z*((3@YmE?w0(L}8xiKFXn9Z9!7WPd z(^j6lIDE^2fJ~#0Xm5mEynweV_ds64hv_oxu=KRa7d3+y>;Je{eRcyOc@6Wul{AG( zQG;5Zg+(>ohBL-*&S?{HFG|K|I zD-ufoY+0~q3r5IXCV3i%pRI^$x1Rhd4!m~$C5&Ezw#ck2_-@ETGauI>$CtObxJV~4 zBNGwNvFhLTM-*bJaz&h=kc(%RvrEErI|BBK5Q&1P8ZGdp#s zWi1fnDtJrSi<#tIs>U*4OwziY;`Eg#7ZeoKER=JftU9d9 ziv7GzHer;=n_vD|kSaeUMp8Y-mHY5X=epNchkzb^O75)9ewZo;0jqJvGO#(8pe^)txSOPs{#?a3U%h4O0C=bbdR_h?i}}yS zg3Ag$g@Lp~;jCI@dahCTq0|tKNK|4442GWdlWMmk7q-q!oBX`S@i#Og{uI{mA%}#fIbv?$q zVWs!s=H;9662*2csgVR8jKU~ET8a?aTTqCHJ!54qwau5Dkgb%djaE|#2Uvnf~r^>fdvF{eO2hUvF)yWrzE4zzcC5C3a8bn^DJvp7EgP23y|j~^)Qd&{?78@v24IMX zfvqUce->)by zR#}T!3dFB@mtaGsT5rS@Y2j5Agbmv^<{HRzySH>c^olBwoYbJ6!!|z9wDTf$@UU(0 z6Jf*b0l{dT4H$bm`jjn@=^5YtD>cqa5l+l1*yV|mOhzXHLg3$-f1<;| zfk1BGX&pKopEQEW5?#^>O5#AzIHj`JJmB&~PE%1RH+0Z0xFL!xSo=T4Y_5r~1sCc^gux4nL6cqYcKRGCq95OToLOHS zJY~hIxbJR!Ot2IE-C&3yw&s<^U()wBBJ%C=OtYa<1M<;ZMpfzVRKoS0UibYitGG3o zt1Ig1AcxP!h*MAzqkYo|~~ zR)H&uIdKv1CXzZ=8XhG6z-T?L&tG_i^-%Wc65@ME#X$#V^3~Q)l-t?Ugp?FUW zhTvy;huuW+SaSel3$A90Kx;g&G~LrC&L1p$vtKl{_nDmtRy?30;1L8wZwXS2p|%OT zMWQ<)XL*gVyhouCj@Dsb)BQxV%dNmo$Io*T0q>7>5gXSxo19PyFA`deW8xb+Kn+}5 z(8t8&0RIKPek2k1MOIgJ%$_&UDcD%qcL__!%YQG^E%HS>G65?{I8u=(GujUA2Q3+Q z#s%6U2!FLYyfNV2ddB~h*2V1lIRj1OODx`4^UAa~ZQg$@OUgDFZqo(tU!V+C0V7?0 znmv$I^58!kPsPsAaSS3e^RtvHeruSb7%+C0Bq1%J`mkF4Ehy1>P;EQMK|G5%o?B9A z<8d)n<@;leC_g(`4(^j~)A9fh7-F2ENT>S*Ll%BM*Kb7$yRUW#=ljf1RZ`6Cc+@Po zNyNzUs#Z7M`BzE0`t=sAUaa*-sht}Uhpr+X;RuLCRzRnU4~I5r4cfb;xY1zezf$9$ zTFHFdYOy(-{dm-LQW;+eQld|*L?V|-37Pl`^QDP8c?SR6t7UBI9wg|h^6=% zXjDoazjlrE37t+#1uz%xc0caOub8QnzP`tT^q`f<*74PZxfK?=0)Y3=R0(Oi{F3mH z8t0SyN;v(Vq}d#QVXO}|Ik1M?nBm~M+>;!|3h*XQJWXjk>tr`;@I@nUfG6mtIu`Ti(|`;{1_$zgpOR8^ zc>I|!L!Q68J9B_tC*TS~5bCP%s|%g$EW@dVgpgmfcq1`v$WrBamYA5Lc| z8JaFg0bwsZr|k6CmI7$2!fIZTSS}mt$~mU#Ns>i@fI&bdM=Af}2mJ@0#2XN~dN*Xf zhqJ*zhIV|>r)y8w>lQghHO&N@k4>b(q1C#}ZC}!a3RZsC|vrGu)2|G-i(kSEP2A-}m4cbe5GPvSmm_RN1$(3)NjulR*U zBe3fHlIOvxpPe&dm-I#V@bJCEtKvd~^i4=;X=^fB+LtSlID11Dsb|G|g@V{#R^via zZPN5LZHtQE)w8wPMlH91^wlksl~;>~(**75%$=9fPpS^6gtuDE>w~G)c7cAC(pBe$CG2i02_$)Q zuj(@#9jlSA*i$<80In)+F3H;*F@LdCoFkF4oZR|Z4hjNW!SOSZOx~reQj(72cl`9&Uio}fxI-qNWGZvd{X)!%#{MdhHA<9YvgRu&$h*|x@!aUy zfcwc@Xlwn7@ZkVA(LR`BDj(Nr3Z0}pTQ}i9RxoIis@Sl0NyTr|#wseTahR@yDs=r! zAFGDI%>=DZ_^M$0paFGpogH+Wsl9v$tQy?|&CRPYIZXXYnTEl-1u?JCWTPm8)mL|C z1is4aD$qh#jR7s-%Tmx+-vN!^GuukHxfMV^#9O9p(hcswa6$-FA24#qMar;=(p_3y zuYHzY5yf8!dj3_gcTsTHos5Df>lAj<9avRnxIqLajle%_F1(t8N~;(4&6|JQHmBHP zX3hpd8SsPVrHCbESv}H2)ICfxRl~xj)+BR2^d_o^c3Zo*=ISFHT-J_#2(ReYu*?#D z(?5_Ia=-Nviy415%LW?mhLCXE6!cZ|2tk#B;F~JCcg|{*{f$KwddB_*(W*$RUU0Su z@woR`OC)ym)s}#Ki_?oNV-0T-#*NMlNQ}h>BK?`?35LiRF>tI!k+%Z{1ySj@LC|D@->%m=mhhr$o#kGx@!>4Z%;i`=oVztP$cpCP*JEEX97%QCr zcrrZlEflei!ow;XK5Td8OgjTpxr_vlOX@RPE2Zf{91VBGxM7&0(ro+^AP~&3XBl+L zN;XD|-1@H%1xjVob2|F$^OdHUy;m4A38+d1EYp7mfknVuo$Pu?wEyWk+^nv61&RAS z;yWeMjwZ9v;t0rz1{7~&8DiBu1EMXXP@^(=*S^9L=gVaZI(q~I%12~3dE;55>_YC) zAp2k%KwbZcqu#BiOGy#ll{|gzQ$-j&naQOIws;+Rz?cu#k9s!!({cs!nDg)#PL(0g z7LGj=#3m!7!6za1onMM_NN^MC@z&ROC7VX5ab4RuxPwJh@ z=f$GQh9pn7CwLyGY|i_HESMJCTdb&W4jaa|!s9tB63RTfv#vt;D)kl$e{O;t(H|TG z3m$UE$KJh2xDXk(re#}`oujis`$%LXMT2+{#FsmwJDXmgxoNNHYX>qI;@VK{#r= zw*F)6(9LR4%f?CKvunJMbeQo>{7@m8whg!_RDUBRx>AROk=clUh5NF{x^VL6bSVk2!li&2>|^;fc!QSTqo9hzVE9sm zTGzJ$Wr`s9s-LlNb8hedw)KjN^gC94_CH+Q28v9B&oHp42iBmKCcb+DwmS}INA091 zIFuXv`A14;r2WM7jFjq>*b$0w1cCPk$tplMac|P>Ob|Gzd+PRAmz<^y#*-~VITZ`Y z88)_rbl(K^`}T-@cD+muk4EFy?oHo}$LCM{^YcR}4n@*gD9xbP}o>-k~%lj*sL*ZK)7mZ>{cvD-%DeE3}x9fNg=)r>9#2Z$H!&N-?D zQ^S#*HlDrMUU=nkRu;;U9y*t8q8C^s=v zkqe)qdrh5%aD$D=pQyu=2MYAMpouMFIk4^#4qL+^ij8uM603Zi8cucodv0IR48#2u zm?o)T$anO9iRx|R_>rINhuRw#7%6Q)0)I_Jspyv+lKk=o=Mm*3F*6ASiM-_lOO{C= z@XUqUNWH5lAuAUYBH6-8}5;kF#1X;g#BZ1B)mNxY&y^5+1 z{M}9Exh?b}Z5kQy7xaNQ`-to_IB_6U0$LFGU1rK3IW_B5Na=O7&|VT1Bz<-l+Yc=D zS#z=MwX>ND)R+Szi|_i#UsD*o?^m zIx*O zApH!!CBLP7GBY-N7Eev}<6(QyiN-n=ZDZcR=U(tUOt84gPAq3|49;57VJGKAjwc|7 zu(V9&Ty*@c$MPGtj z?E!Y*{2l$znfrvsWJoPTH0PR5>b}j6)o(+O!1U;bEUtt7jQI?k*HH-8RjHaydF)U)S;X!Cu7D1IgK~o=cz5e$nP1KFUjI*AJ=zS&m^jZ;4E)j zToXe#bN~o-Kz+#S%y_hK(68fP3ij#hK}!gM=dv1UJs*vn`7va)ybGPa;$6sVc*tc2?{^0f+FHZIXJ0+`(l;<~SV zigLyKqv6@2w})CV+-(0gD4_vkHFPG5q8j@+DX%(*m`-nHioW?^_t0az%bHAdj2_IbNDYnZuq)Q%0ZJhtG_sIcR)!(dfJ{xoRhBHSqO_ z%hPl$=Hxiv|3NUMa>6q&*{JBm6D}nFJ#_pOOJx)fog|6F=Mis*5)6^$?S_5}2`RuZBSTz?~hg1f(Qj|Pn0@QF=k zKG1za>^=adaz4&BI_@e_TaP z`E&<)uFQSP=GGuJf5QJ|PQ*uzKdo`VjBs5pOW2% z?F5b!#SV3B;xCfZJ)jJs+~sn}AO-PzR8kKmzOFbrpI5d zshTazZ(Hk}%1g39xDI*hbU+?{XwLR7{wKpztEpg%kFn4Im*%~YE5`|(JH!muU}&1! zjfkTcytgh|6}`c20nAyX`2OJXR!dpoqgxcIHK8aCc)N+k0ku;2XHTCU*qaio9Xngm zg5@fNsRw9w0rtkkqI5%mGn-Fv=1fM#lNDTi+v@4MF&X&Z*PdBx9&$7ViQOS@jde<} zRweto8(#Hd-+fr`GmQInJ7f<;FYNQy{3KP*LP|dQBa3$f8v0C|Zs6d6mzUuXJS0?E+)791 zZfevzS;htlof0V-$*)umfU4g0o=z_+p-xiPA#88u(@|7cTQk`*j*GovQh z#aF3Ga&jgcHZAI~iyW>d_~*HuQB>G`4O))Y*h?g5qA;mo{}QkSAXl=o+i0436=7Ff zWzcNp>H6%t7-N#9K^cqf$=F?6flG@_y&-vj{^f7wbCoH;NE0SO&NE>&?W@zlU)r}O znjthauo9hxhl+Ck#k(?5hbhD!J#uPDG8`U6;o;JQ5yX{NX~X!}pN4z$h2^7p{mJI8 z@aFCIE$kp)m}&DuQ#-~Q$*+SteK7n|Rxh^=rB-+fWPBK~?Jr;*IJ63l#6vlVys>1A z`pH#X83tax{B?^{T{on81tN1k4M9J&zI$d4=I*tO zp>5Up{n*|7)+5>NlUU*|&@h=lluOU=z*WhRCsV61}*Y;95W z_Y#BthJ_!2L}hW+tcB6c8Z|qgBknokz2{Ur*FhP-<55hRkUGe{uxd|FWXx@m**o}( zh+!VEFY-m+p9q`FB7G|f?DT%93DG}+eHv`L3T@Yo3D zYPtGr@AnX zWq7g@l@(oP!9=(zSCl^oLA1zLo+i!`1j{xa$VNV$mtaz$3lxk$(;ouy1AKQ6#g3dT z6NFe#c~dcIHsQL}?^ZbkjBX&CbOK^6mYZCf?B6u1mt<+Zs&4l!-{Qr9uc;Jr8V8b6 zla;f`aHO-D8`@74+he7*X!(c&>j7L>6noc0r)OL5q2jf1Ewzwj#hr(SUy2cvI)0aj zXG0x{&lS(`#%`*_P#6&>e`EB<=?_EVv$yDJU2cEPulQv?p?FhZdohr zqEn2dydCVW^w@TNU%8@adse9W}uYIaj+0a$e1W5}W@Q zP|6N}*eqwR{h#BMD+#Y=?}CjPKht^H$L=H!BNMYUP5F?8RIljUv-;Yy@6#*Pr!!KI zKwo8T4(h<*n?$CmX%#8EHS4xMW4x-8z7*!8w$h(Jn}K}g1q1g;MLa67%{R%}Q5^3b z7BE&O=ZmFxz<&cC(1J>0&ciuuGv(;FqBcW2`j{b;H6*N;4(|VzUo0U zPfJChA{@D49W5dPAhq@46F$Y3N1?7rP`YI04Q}=q(LgIaF(ClUVgF^NT;3Z~0| zGh5YKVn$}j#fWrR_ak4f>h!7TseJ5rhBrXR0o1#JoulS*Gm7D8O1*aTPj#hJUa?`5*)E%*&WMHA;5$XECw>WFRW zrG-nXFvQya%lQtz3pS;&Hl_G z`8drBI0T|jm{>U#KT8#My&UaU%e{zh0aB3XB8%J0%?M3sP6-v-d|+%?u`EzFoflrq zo^wi0qWP)Y$$;@&@Q;^=+X<5=V5)dwayVEJ$+`>R-E#Oi1lKz#I^7WbJx&U$(YGa& zRHyocxK3zpNaIX>`5~4nS_=<0Ccpd=aX!&f!ekR`$Tz$?$e=!z@5bWcMT0Dr2v0Fx z_xPOfZs|Zy7*)%HLnC50xj87k5np#@jG|>Obp$>Wxi8u>hpF0oet4a!VW;m)GPV~8%&LX(>u*VhY1Z`jJ?KvjVRv{&1GZ=%y*#$w~dpnHZ50x z+=OYd&Sm%R_O8b>FM{<_L>+cz66Y{RJQJj?7dnqJoZaklOz2cJ zO~lc&;aFy!16uGvn^`9ge`id|G%vpw4oSC|x9X7~>ljvmv?gnUZlyc_f|Qcoaj(5b zJT%d9Y@R4oiwCoa{tBQvtO&R#`4%_jHqAqdbL0ys3c2MH1B4wbiUlU!vxn;jr%ZS< z;r;hjhXyvv2NM2jhFT%9DwuLhB}F}NE7L%p+0w!GNc-mfWoY@P>T9Dg#%{G#v*Ttegh<)M?gmO0%hW0PVTY+%ap(kyXR@}b?k?B zoMj4SKFPiw6GF?C_vP87KAEI8#Uk$rNjW~7_js5utuHG8SFVse0@jah#jKg zPu85!FSZUXoH07tbAacI-#=%=VzjJa5FgK}N#x#HgdGCbrhz?U+Vgk~8guhOef`k&H26Ql$xh)(p0Wekkb7VYl zgDB{n2ZW5KLy}SXMh7Cg+rY;3XDV+Oa_0Tm5NVYrVfW)vSx*np10e@Rp|Z@_I6X1BRMCgDgX4DRVuwT< zbvCOK4^~Fw)~!FLGk$$U)>KKx>Yf$BTnCJfu+S76@Qk)pMK=u?W8_WiY55K>m3}x= zN&qQqx@-x{NJPrTkrhIYaWM+dRTYc=#QjNOy9NntAtw^J#5b zd|l`i-V|H4E*!l$)&1y{z}4r2eF`q2^u08(m&QsZXbw_U;8>m@z++|rVP@)`pqLbH z`7*xEb2%(=k>-oE8hhmE+RGvqRxAC|qVg#A^02MW$y27HhU=4D{C8JVwpYg0rD^t! zUx5I{74~lt%8L^!dBd*lvBQhtuE+;EC@BWL)Bdw9^NYCk)k0+qH65{s>P6pN!bqTo z2sv}W?l5yPlPxC|=XQ!~k#8ZE4LzQy_QeOuEbuHX4^gcR@k_OGG; zV{@cyqj}c3;N(&x;$@dY??=&4LAD+)gG&M}>+hr=`D9S$g3K^s)@_nEH2j@jXy2JB+^=Dv z{w;w;F;><&LY`uhBr;;&Fl(a-5bt_57k2Q_fUrpNw<|I4dAl!Bx^q@~Q95!dZH)4& zjLv5_K~}Nv8V}Lq00UaoID%JeR5jCt^ML8n^?_wA|9diH)@4(;^V}kI?T9lYoxf(~ zfoi$oih{d)SBwrfis`cCASr5lVqLlrIrVe88mK^ohGz-amE!hY7QH>Zi7Gi8w;(YpKMqid#EPE$(D#eU=UmaES#&F9=P=Mh z51A7Lk8VSf5~Hu~?6#{t4ZOry0jd)4zZS^dd&udy0zs2=M16K;FaX_8Nv5Es$m9oF z(bvV-ml>b9gUM{)viy?XB^#Og*pi9!A+zNd=cJ+SMwPS$3#!T5Z1=O)30Ceiu$7C? z7rI&gol%X$Lq)BTFx9HHvJvkwsB*xCadn(@R4t#gB~5MKQyLl6qvL{f`lfm(yLs}- zkawwAUUynYH89nMaf&-=K>xR5RZugHN*ZZa?z{n)7klmOK=3B%#6h@~$wP9CeH3Vh z^b+U#$_b_u$rLZcRz9Wpz3soW#9hGJ+u0{I)Nb7*JShqyF(Wrb9H%~|+|y4A0tOJi z&rvO2fD}C1z|Dzduq~LhK`a{o^zfn0E}DR84EzdLR)Q^OVen-2Y^EOVd>*T3_3%#U z*H;RCTUH^J!9#C+SVCy-VpQSzK7lvGjoStah3zcf;XBQZdwWGne>)LgcP%(xtOo~i zu)};@(RQ8Q-J_A|+%hfun4oBWob&uA6iqs*Guz`MpCoUe>ZA2r3Nf&wS9g<_Z}=8{ zc?@Urb}4Sp8b$R#js8Vq$P``>o!9J|TrIF9(%JL3CX7q>f5>6v53U6O!vyYYo*)$q z9Qc++h6G+qd^K1~L|^bhT);d~4J4pv%$&|_y4T05_u*at$hN-Q}(=BL7ce~quXEvtOuy_1-+GRI}Gi0ta`ho5{>E_0Rf!`^yCn) ziYB!_SD(VXnS3vb`JU^V$ZyP+W85S3D@?;R)i=~!n0Z3fiPI$km<2b_vT4$!C)TTuhVX15)UE_p&&RJom7FIH=4d#+O-9xY zmbgofH;>=vu*xky8|R%4&Ap#_)9z+we>AIp)}>tU#I)B z$=RGWysMMz-5ldu?fOs3XAJMnxM0*yP-gKLUIK@;?lH((xvEDX-oKBCleGU8?*z0j zX&*O$>54fX#-?js=_Kq?s0Ky z+tvV!wWwDbWo}806G(jE1Dn(##VAHs91OJ*;MVwd!&w%`6-VrfKTD{{HpPYtMSZr1 zugL4ft>Ez=0N%ExLthw&>JuhZ=Vt6LcD<6l`nI{y2oId9GIUU)sWItPjNI~0_J`#! zUgZiPO`{fA{pHvv);BPS2LeRO8f%W;Jv za!JC=mu)!68icnY38hM2{}|Cpg`q_vlB9YaLeSjMel+cfLkzjQ#c+Sf!6s0#9NqP; zG@1)1-Ros{s`$8%eM?c`yW^WinS&ynfpsx*HD;DK>l@*uqpBVrrRdopJq(s36aJy7 zlMWkEh(Kr_#Q2HP#K#RLX$alp&b*CGO~;Y|!C?bEhQKhDhL$1DP473Mb0Sb<+n#=4 z>2|$2Mb4nese5H&JIs^~I6zXKBgSt9ThEy`n#927Efekb(|QMSFC1&)QE0B|Xq~zl zq(w{oT_9g`Z1q_a8pKcG1n}!p;dK0*6l)E@fd{6Yhn7SSc{%hlwp+*p!#nquPI*UX z67gl?-Zik+20#RFk9$4#_z7bjSopSANpO#Ke>n3;`(3EAm=2havhD|%tiBp0oWZ21 znDc}<28!OD-gAi=x{xx2XyH1fvgVTU+)^11uHzU`O8D_!0cu`OwN`!2Q{-KGB_Yky z3iL}TRV8mXzR`r4*_s?`x+i){y^rsa#?Z$`l%^fL{sX@y4ad+^tp0~dz%Pxh^BToA z{dGj9AfAUR>U?qq_DoCNSXR0CYbqfP6zyh`Q|hqt=Yb+X_>}Kr&E6>0;VU_$pNeO6 zN{*u>ImgV5WU3nJxCixgji2{|e~B|Hf|--6UfIr@gm!lTx#a1i#0Pq0;Cp3L_Zl?x zsgJD5#&f#Dh$LlWnm)w1ZjLA}TiP|nv>qb!1hLNO5#(ZmN z^*Tc(lyEsZ6^kbnh-FGNh0@fIZ$uO?jiI1JV{n?z_luP?G>R>ixmJt`gX4gQ$8|&< zAxYTo9Q{SPN_9^H3PDkqN|ce^2d72V^;n%UGJ9Stq2;BqcB}2L^LIt=yzO^kVaA`^ zjt^tbGGi%({~Ht+_LJ z@f)lqI_32JtP)Ue&`b(Fz+e!HSZ;H z7yL?=YA*~MZi5eT7XEA+Zg@(@N4({EJ=^}h5NxtFZBYSCSllv|122m3{T6MlrUwZu z^ZdJ$7);ke>yny7&w1tn{FZsfmz!K?=xSp8M@$|HY-r%8I*-xZ7YyR^YXMt{a@Ep0 z5z#q{tZfbl;Sibhr|&OpodAJMm`Cf@h~6A2J!bm9Gpd{hev>a^3n21zM-bu^+HTiw zVOGz7RdvY?(jSOm?=;W_9Z4(dvNG&7MILJ{Fzxo?MevtR6-W026mb1Hg$mKD<)_+_ zbpSCP-8Iwo^G}~tEX71!{`}hv#0z}Wh2^;OSymUDRO&8-50iWE#CL!YS|62tqkYy) za}i_vNz#fD@3zCv`wuREP+(_}@bLt-sPrzIL#HB z>_?JI_e31zV z8kczhI<)l*E(~yS5bLlX#CH~|ei!}gP0?`yd0X{O{UBM6Gi(wHjmxOE(J^8WfVB&w zjxvzyI$!z8<~kWejAWSE$XwD(E{^hA%V> ziu$3`r)HBG`T_xpMIgnaM~0GhH-O~ti`D9k?AVyl(C0BAQ~S%Ue*(A-aPSd=nDxGh zhY)I&pgc5EHE3aWWo2dv`hSp5bc^}02A3yFH5Xu8aE;8wHat515FRImL(f7UwqX=$svn z=wzw-q)9R`>Oq8n8ghpA|55`&Ld&T_B&=Ju4`dSM+Z}Mr{d=dnxB~eU67#JuBQuY5 za;H4VCi7MworsTDWOzJLhE5{|JaM&R@~Jq~L#2Y5OlbQCyEWRi(Xt=Q&Y}!M3&Y$q z;8nowXUJ#WQ@Qn1(Q0k3NKbVCN-9=V!sx+eM)Q>Bj%&^uQ=*o@o zu3wW!sX66<-I}_~$*{`S&Tj$L4gF$Z%^#!bH57fe+8tn+KLk!-s(reTUloFpphoN# zDacFAP(>!@N`--HbSi^bjDHpS#IzyWoB@`>dn6%87SER19xrsi6Iw^ec79NVEMfcx zL2w&~+6xMaC=lv(y;qb1y`jO)B1F`w{Gf%E%mH{E>XF3@7a!Qn6TlhlD<_@N3i7rq zoxwK|NnHb2%!hz4P`8~o^9#Pn917M}4v|_?yZeU;kFiExoK0|o{yq7GdfI7#$qYGn5uxrZjAQ&dHt418!%{S>Bv8jA zBMy&@B@c%#1mvGoT;-)@m_6dg9|nYLZZchwxW#$>V8+}Vqf4iDt;nDs8Tm8_4WJ|? z4?D<*>$o0U2fgvCL}G%wUuLpqP9<`Y44s;jKknqi`IW*Yz5ZkN)88J#%vcs1DKT7z zmQ2m#-gAaN(`eZ(azpfT{^RvKlF^UWVE#Z&YA~gzm?~LWdBQaE9_Q`91mdz-HZ5qQB08_9s@Y`Pf}oSK)@q;a zb3lxgB;>$C#09Sdde`6?VUZjR;x$yl;_r#81Gb zyaNSWxq()HDVt4F<})_pE6_sQ9sIfov>IfGx?R!jYkU<%<<;75@yahHFv+?mrAp@cVv zaW@eN^FJ%O2fX-Txk~lZha98a=1;YC13q4l6x+5d$t1Ajx@xq>y8ABwD7XQ@b;$!? zk2H}pf)(9zGwUA~bB;0PuuG#rCg5Q#@Y(g{xlka@(i%?%p8yU02%fO6CWH_g+9%po zr{iF9KvyMx*Pf0G2>%<-Nq>YyAzVYKDnn$00Fai6%YX1TRkB3B0-TO6{q`s7Iun1k z$0VM-=A>;2UBLEp@NBvsE!KHfAM!T9aZO=PNHg?)2k$dY-9%lyJdpTPst<$pc?m1_ z=V1ngX?TymVX!oWE5yzk%PpEF>nbR4(fM!+zc4}R9Y~N=VCG~xlFBUAFxFm(>J!$M zw?`kg3sghyCT>^^zyMCC=U$w5_6qh+&f`*db=Z+PUG~UJA7k6{R>i!yHh^(2;#$?c zZvE(RkAW_ zUFq3!M4uWoScI@7<5nX-#KT^Sw_@>z`#zhvnM8$a37p?Ch_QPbukUx^11?H}y8p7h z%F$;d1E3wF0S3xpZnEK;+v+f2pEQ-5)d1Gtbv zGC)dCmKxX3S)n;p2tK5!O;uv2he4r;O07FMVDhjm7k*Mh3`1f~r1%wtP~RHGQ^ND! z|J8BN{D~DW&kH9#pS6Lk1g3PLtc+dzf{vQz@hBA;x$<}zMFniQ)Xk(L=!A~1J2K}u z)xbsd4j%eU&QrH<#7HS}_!)O$`Zt65iouF5rvk)N%9OJkXA;zm185reI`F)f0YPmd zuv1|MdONsyhh@Qbe-_*R-=>(lU+LO?90L6~zB#4;5`^sEXO6gcfq^@xn$lGN|1~eP z3asVT#AS-60a?ulXqzl;=oGL?!|qPHdC^lo(uj+_R$#B#HkjL=e{*K#XaKXWaK?A! z0yY5q)*bbSO(o#k>T^!GOPy}SH0l^u-m_|5W2A&H0j;vZOh{MY?kE&<&Q z&=+Xv6cOEf#c;4UreRn<9+kUoGYz5>+~Tk?lO>hu6e4;&8<$friALq2><}ZMj3Y!H zw0$K&0R@c`LZcXx@`UXE8`<9`kvsMO1H3_rBb*yp&J<8z*yt?|d!&}yEzY}4$lFWhL0(Y*lWK%g zSl-Ix`WiDAuA-~ATBYS{iN2#cg`nA@N*>;h6Pi|OM}b$&w$MCFW-=d(IZd_kQPIqW z(Q=NBOLH4DvF+Ac@k;006#Mbv{Qpx_aAZ01Aj@6a;S3fBQl3(qN?e;R;EpuOe70cI zndT?0X4Uk^ENII=c@RqM0Hyr4=-Iy(D^M@d3h=&xG7qw97T2%PYIU?2+a}D9)y7{C zd8){ym{r;>dzfTXOJ$nHQ%ky+5lC0oc*+BrlEbF<@k1(>$2kIMZt4^F3~g{7({Rnt>-T&r87=i#0X%S9;3)4G|~5P zW`QytKoOJKx)7OZAZmOAo)gh^>d_gF8@NeDxLiG!zKXz(M==&c>ZE5~=MTuBMnUVPHeYOYM(2;ZKEA;m znPBRdrVoifwmM>iG#0;b+ym9N;(xYW-x)vi1RmU82QU_mO&R}CEa4%&LfFM8$nD)T zE9VjOOJ&tEPn3ewooaG9<8vNEyCeFBg*IhzA~e6~P%Y_i-Q@wG7NzJzTq3D^*0%Ld z`ry^*u}M*hVUvvE6AGSug8u%9wyU8f+PmIWF2MnO2vRKv*grSUT@H;=eD_Qh_0aPIyUsbP>aU3C;qx879Wa~G zOZmwrXs6qvF~ujIu!R4h7j80)zHskS2+VE72%V!gVH=a?139C&M#0f0Yf0QtBW1w} zm}G0Fiv%di`IF~&NPaDWK!CJ#=|}dkpV3&i_~J|>baBiMz}ReSKtYnCmMmrYes5i| zLteX;#ppMP<$E*EY!EsV6$Q_i_zS|^v;AazaW<70$jE*(eOqh-rnd&HT-MV0Pzri} zqmU~S+aGAQdj^EsPDRClYEh(C@>A+8d<|MnCcqZc!U^y;-SkrM$yIuxf!=uAF$X|3 z%kWrlA3WMIRFe@91ma)H$IaJMYJnL%5>|<1d;6B;X0pg=Uq5zLQpo?@kD%KusrWoU z(GLg}6I5gi>7Eeg0IQ?N5;E8Xn(}vt@L_`JuFn)@&?<!rT0Kr%AJE&)X&c$sQLd8ewoFBwi`NRUc%%;v?sabDM!ONm%$6KoC z+K)S3F4lNU(?O_EMKx7Nb2kLeas)0O{`VDMZPggrAk8qeuFjwpiD^l z^MApGq@=|ZEXVoEAoa)-?YIPRVf+XOqvH(O$Ys8PTs0!tEE638mQW~}Hleo;T9;2# zzerLD(Z|X6#o(2dea4_<{K?3}5vYwx*>UJ-x@_5}Kr)xSQ%RP&jfRcLkg~?CE!me? zX{io>d~&nN*_|lA%NbZjYzRV`9Ike9=GJ9{oDw!*4zhS*iQ^Cq1Xg0H ztFr#Xln>rvUhsz0(msr1$$js3%YCeB08pr5KS7dg5D8@g8tVa7#?7qz1vMdH==huY zK{Mw$pe5doMAk1-vGOTjP~)dQ#$Nga|Ey#I`6Uv+_?BD`6UqfQg0XKJWaLMp!8>se zgsHgO=QIXwQ=(#nofyPI#m_U#tPprjZmZ)&(9U#jLDNHeoqw(m_jh9&>(Y#s1=+bM z#)h{wlD&@n^y*8t=9t*)GFNZ;P9O&{>CT{sd~9CN4-18O2HE*6)}c+H+=URwObSwp zuh0CCe^oN-5th^OY9w1W)0^D^ZKTOw(i;p{_Rvc!jM@p{J< zZfV!OuK%(Yij2t%nSDWts0Dt=zBE(UhB-orsM#MaRD%?YNMqi@{VASFD#|*I(T`J% z=j`*AxByo^Tm*{C6Z!AdpGc&U zU8zlT`LyU-l>~|%vZKIrjr4I2V{!uFom&B~N>M*qy^WNr?Wr)=eZz2Zmz$7ED$m%lShWBNw1HIh_) zmZOVz>~1ji?&LxWL5+uv0(WnB1l{bXfOc*L=i!!PB+&YF9;lo5Vy{t}-Rr4A z{3{HFC;ZC|N*GtB-W)v=@Fd)%f4Pr~j^VmJ0u$XAUJ4~wo#0R+gK>8B`8N6xFBq1{ zzn$#WDcs1zs!qzB$_U`ZD&>M@?1Q7E<$Q<9SdPFqRQ+{Hi4A=SalWg~K8wkR5n?h;sJXXlb46 zTh!@6ExuHI)`{3y#&u*EBELmNg;#PMY8a)ep(JUSS^sRsC; zqLzk3GxvYhH=e7HD&Z-h^2240P}A$**s-*vgdHHNl2J)@ffJZVwERgG-?kKsW2#k~6vv6s^Mh(? ze#)Yfoit>4j8E(MqOo4$Y8jCzJ-57kq?l_i&~7bhmh}N2VaL&!%^bODx*inU+TI^E zX=VSIcXJ!dHA$&Tk}s9c`gzi&%QU2KzvpL*P67#0+-UTw5fN`YJYw&}xJ zY^-WM(w#a!Ky}IaO3flMncJR3BRJHt&ZJff%CJTRShFdXJv3PMq_HfE57hu}o3%i1 z{zr|!K!$S*)aSSdRr{KxS|*K=dDP1@-VOt}P4Uv>78Z*$Vjtp_D=DYiS5cSGr`h>T zeV~-$dEpMhb8zY9H>~>4l+n?mPMJi_n{L3J^n&o|5&B-_C1xT8bs{5{?13Slpq495 z1$zF!$m6-HpjBHczHQo^UP?b=XUj~QhFn3~bv=3hBS1Hf# zkfOVV<{(>T%p-hWODjcb2U|c3X`@656ITcl1RKXyx?{z-E9+lT$%FL$-}c5#0}KGt z%>pQ?aoK@YouD4ns84u0y&Wjw31|55eIDSv?~?Z|}_9E$!K94$vlyBOu9jDJ0RNdXb-{{V0;&HrS&KFxL|6M|kd5`f_v zt?z~bApM$fS8`3jEd}3znour@>f27%hQ4~`X#O#8C0cnNGj1pftqCZv1m*807WZdm z^7QE5F?KN;%>~H_f|R3SaIWF|&g}nb_}s!7#{P6@*o(H$u|sx2@u*DCmeOMMWiL#) zdUu!lnH1)e2bXQytF zUXr3r7&A@3CsubEw_of-;xX6rAo08QU#Y7BX?Q_jTwCX|Z)#BOnXT@W#o|o;88B7L z@X_ZQSd`(%aZW95Sc3Z*sSK7DO6Mq-T5iJRIzaHgGnN6{yQMVFhA|KqhbUp4hJiXQ zl07zEbZh|oGpw_|z)`(n3N{<&BzR~e-z<6b>zPAh<-b~dhp0zkK_LeMHPXc$Z%W(#SGg6D;oH>MUPWVv%&GC}OCSV{6GdBrY=M=dl1|*r zY0b%pO`l)S$L@RUOSX^+868jCOrqNLJ*Aqc{d~Ah5{6s~A7h4OEBfS;Yq)`iQ6&*t z>8{0sAc?3Pkk2;B*KJp#XC*?FyI_E`RO1iMC0S)zD8|!je~`*Ayef1j!wpncQ{VVD z?M-E>ZC)4jjxREM35jIINwM~Z&2MO}4@6|LfNX1IJ%}WEB|@PoU(88(-3e^HuqDR~ zsDzAuCxS3xgSMW4(p^8Z(Mu27PseiT!tk609BJi!5AYlvKX!<9R6{@#V-8jX!Gft; zvl(*Wq0PI~!_H1j;O_=Z_VJMVg-BLe6-Wjih>T`-W8BdfnwstHW z5x)j; zP9+&4ywih*YKpg4N=~LHH4jB(@Pts+7jp_VoU&G7MhflPn!9zJ)>gMH{WRJ61f+@e zi&t&n$~bJ=ZY~GA*L626Y`NDVsn=cn^A^^1G=b*ks*UWPlf)QB)?hJ--Mt8HPxXv_ zn9Ibnj{FhosIuA6B-T`$E1ptDBlkv|Xsuq7wxDH(r=B|wU=y!{To48Eg~Gl9)y6+$ z#Q4TgFqCc#`l5Eq0l!)^UGU83fi&vZV#&`W$v~tQQ7DrWAks05b*2|DdJQnZKnDIt zWME2%9psR+{>jqIT*O$i=zo8ZzT9L!aF2$thrXe}T%j&CHikY{y=ybp_DF+v950@? zBvNtX6>?J*0*04K)t=u3fEU4a9mVGD%}P2>T#xDoi_NfDaQ0pJH9$CRS8;qZ56d0s z6qG@y-X79chWo30Wc0$-uK=FTVLdaKQ|UM?M%w+=H#j2MA#aIH|Gn~`*3it$82<&H z!U(Pc&dLyyfv5#O)jNhpheXU+lp1y^whELs;=8nllP9mS;@BQSp(rtqNkvI&&Ni}# zxA#b*Pb%qWtKTjgr=;kOttKOt!2XWSO_qa?g&>~Ynf*r$+jtNP@56D-8R9=Nhn3Ni zck^il>b+wm71GC~gd$=-P22IiqRo+niGL;kO#8b6CX7YBurlCuZqHA!?GFnZ=FX6#j8Ot0I>Om^j z{jTOKDVE)=WXx8O1m-pTb>>S@00S1bP>C#Y-cm8zhoR(LIzq$0%03d|wAs)j4o9&` znB6FZpp9&oG++^9Ri7i|&tnDNJTOd^hKQB^Uc+chP+_m9&d&WG(XSVbri)1Z*hR znRf{9e|=1+GrhPB$Xiii&lg+%8~M%{;7t{NrJ{HR`Rzo%{htQWlg>K~Lfwxp2c_41 ze^n;-iLX#U-(@(~=Q7Blf76Tss_9}7bS-`uMP{Y!=&KG?2N~^}SOz2|gcnAL&^I(d)=uV2w{u0qOyP(km{C;kQWsh6A2Lmvd<7zNSMGdXz78$W+E1v+D zPntB|AOI=)@pC(6%NStWI#|9|e+)eo=VX<>4ZTtKZ zhlDtlO?~O=ud|c#4&r45n6a}VvU|e0H7S;~&f&Pcn28*by}d0==k} zQQ~<#;>>PWlU2o`wrz`VIz@}ETp+Y&N@vj|VAA|{+Rwit`Yd)Rn@-im&S)HhNvat6 zyWiL{<@e@`ZURGQP4;0D+)U1MEiBn2S)oZoW^5#HJ%O+7ji|*{^X!0bnEAY((o+Ic zM!+H%o<60?J=_uq-JqtKA|pZk3^Sl(+!ix0`XO9tb%B2ek(v#O4WvB9a9*T_eZ_QW zM}!o&fi15#)D5Xak$kMizl7QyKre`jVD zIX&DXOc||;W?zS0xKmOANuzj?*eL0hW@u`ealdbGWW%-wN0z5zpz{9eOI5fa*q+49 zn|Iju)SaGUJ++7AU$8`(OTHMo#c5S^YJ1t~YCrWbXkmFFt2lOEmRH=%x`RMXIJjd^8w$M&LBCR{<7{P8 zq1_$qiy2mwB-j4Lc)UFP1#p1GBab_~sNIBOnR4yJ7-j~se!u9L?}hpBZq{={0>p0# zS@*cm&TGvVXthz7Pk{BW_7s$B5fK17= z{P5ux;D>%=>A9_C0`2hj9C0@=%i`&XO`1q0h69fM6yI zA)0^v`yVi-zn56mU{+eJYK@9U^d`h3SdPFJpB&WLWKjIj#;*09FZsSR4KkI6x0@Ma zF1b9HPTuDfB2XI!yPOv(Y43%w5Ve&BH=kDmM2+D6Q>O%AF8||4Dp;DDG84Q%GqR4v zX&~(I@&w}j0J~TLIP}vD3xeu_En){zM%1RAqf1V_?{E&rk?UJ4x_*?p?%@kuab%zx z#9@|d#v59}cQbIN@{5dZ=>?x2!#vJY5`mW&S$Gw16Gng$txjOMEogW4X)v#>O$ z?*Olj#w$e;Q&~EXu!@k%xd>M9(JcL*qdDl8Vumq5t|f=g`TnNe6^5S3c2@Z#r5_2!`(;C z<0kzH5Q4&eAU)rm-Q&>0uE#+i?wg0|3hXa>qw_#dVnwILNBL%`y^v42H|M`21C6in zgOwj4idBl`HEvR2F>_L~o`kOb+51hCswI9W=-wy_@j^agv;qLXaA9gU4ZyLl6N`0` zjT(+Zw9hS+l%;z5aG0)uQK)Yy`E|la%q)$gsv69n1`ofJ_3#dWvlDL-H~oxC-Skxx zFBpB=U{UD(`HuK}ucX|k^5vEHW+Gz3Fg2W)M>_d{CGyYO_Y+1i%*WA$l`qcG7Ncqw z;`CW5N*yvck+JQtO1{X5f<wu-m@37fx>lD`jkX3fdF}| zSnf#Mdt4=LWuN6?HnF{{*am4%4cFZ0mvJ zqB8%S95)PPq#k-x3^kHbx#xh~6P|b2?vk25vXGzFN8dA*fR_i~F}5XhdHwCbe!c*5 zwwdEhs^TyZnCxp@7r`Mu1(-HI-4FO5Y?BEhLURjjp@}{a-3O5Dv*+`myfYJcAb<23 zSZJ~+wpm$Q_HzfZHb0=v?Mql_X#C;9+BC@$C7)p(E4T6+<+OQ_R= z2^Gi86d&cPIZufM2a|K5eB5`C079w2f^rIlpa7khGYGHUWi9tHCaGgfOqe^t0YLX0Va9&v}-fk)P=ix6bt0e%duWz%h)tDe1t-C)> z@VkJjcT?79MSuHj%L}u}CVfh*lI66EL2A5${yAHRiYw>e?3+m@?SRr6S5m<$zilnu zvOdW|^f3=0q_97owLhw4Pk})he`k+f?7-ndG#8s4Yh4d@+IxYw9gMP=@bF*lI??3mc5^l z8~i)D4o6`R=KdOTcDJRHn9U9jG~F-2w!>Z9#N63$%|X{+l!Kbfd&Rurf)d>1z|=5VYlwauo6_=w8LSDs+bX0KDak8LwG+|u7!M+5z~6mMMfhccY4 zPxoU#cQc7a`As2oyZVpBy#vo6_2lC$bUj-(%oEpQzBf)b=761{T)P~vdl|(NL0eoq?}M`lzcCg@%fBHgIsJ`WytnyUameNzaiv7dy0O{kuLvb#Hs*ZX$@{Fa~#D@xC$ z*^tDSBjQVeW7yBVcv+{FcYU{p1DP?$m|W$t@VXR@a!~C&hQhK1j9`m^fJa+U+Kvh9 zi;jK$ey3t8KS~(A1p4dS=8dUP-k~D87Oc45ZVm>Tz}w2K#e2DgXm)km5#`mJ-P56} z*{v0bDf8%)h%6@7P2Nrg+Gv}*a_O8D0r9?P&5ZIkM56!7#@x%!O|=e_g-&tS*Ljw2dkSHo()ngT`U+sa&j{~8>hc6-U~HAlx4#8WQ(vKW3R7rrF_>=I>akPz=R<=- z*Is>z2v~u2hK%ks0@&v@g|}>Bfh;vp;iLHIA3vF6-2j=3YxSvj25XpCN}3r&WPZ0* z(~D%CT?db(FCpzaxu;VSBe_~cihs{2sXgW8;JY^jQvr;jnSSiVqVK^S-5z|SbI9{e zf*ZTF5B@-drv|9jMB(qQ(vH(1h0cdEQe~xbZkkTOhDkX`KN6VzvMXGMPCv|^_D8TSS053WS%8Mm=3mVB3#&7~ZPhNO${I>ju^KijhzK zWYRFN$dX}EI*G3Y#UU7PW_L%TjGHE9?YQ(*x4^9pZ*N>l5H+oUqW~*XqX0;OaxqPD z0n7USO{KmYT2%8dS&{427%+phekK(f3hJ-P&QvZP&3Q2h9Jj9JDR&3GT(6EAy=_3k zf`PIvRhodyWzRUKSnkQ-f6ZbCII?IZIB2(!uJuXLAv#-^kZ`|r`Ge{}(MMybWLYDf z%G(qlA3LxQJ)bb(^D@IDXtCsqW#ev~wrjz(PEBXYs z=2TeQ{pghe&z8MIhqngp#A8bhE<==g6hX@BymOrV>qt2PIIvAX`xmgz10h+WwR#(O zAns)%74yJ>W|gZY{M$;PEW^?g>mIj9k@CW~%*-~?2PQI(ShaP0e38B0Kl52*iARu0`SnCcyj>NMZ70!hKtT|=6_J}*>yLq!GVOTJW+ROT{2 zj+!irq67NQqlf88VZXQt#8asmAfa}WDnl3v9MkyS>c(sKk6o$#fuM^uy%)L>aLj4u zi5esnfT*gc=!aDO&#V#2=@OhNA-|Sug!kzYI&yBTRv~A`RPauQB`0TG`#ws4IS{D1 zW)@)f3-ia_4?>wVCdjtW;UJT(@soD^CL;Pd<)*3E~rj7@J5BgE$NLI7c{3S#s zc%r-BwufqI79FW)sqTOtXt(M1^@cKta97EPFQ0Ai@1*PqWD2^caJW53@tifePpw@- zBZdRVXt=PXhRpcL8kS*;`q`1`M;9iAY5Lxyec{++&3dvZphQ0{*qWK!o*A|ju-v5} zu0b+VAKMzGZsHN5;7IY2Twtx07=bPCo5fL`mMH|ce2jWm+1b>g*&z;1y$89MN{Scp zirL=ksuVpiIo6{`BIuSoz{HC{EPpR`q1>QUj_YP^g;-N|r?kzG>bN8z%|BHQY->Ie zL3!GoDwc|MsdVLwLHsh!+^r~;LrVH&KZ=Yhs){puC2FN3YjEOuJjo^{hd)2xQN5L~ zuqhE>GNdfiA^Z6Ct@0JSN(}J4nBj#z3z!nOJFW|n9G1uoU+(8P7&-b=LkC>MUp}$p zya!)exyRct4=0T8^%L3hSnbd)B3a+@YFoR!<+@&avPd+Dtu2(#SVa=Jv5!$)$WA4x zrmb*xPq}obkls_rn%vw$3XEf_DpB#k0d9P&yjS~?idcR@a_TAQ{slmjkrz5nSbwif zPwA>5W5{N5EV6(SiZRhWof5>yft@PC04TIM=>!}$h51|>{RgtZwV_4Cjh-VF=e5gR z5U+0I!0kWXbNr#aj3pCu0p6viRjtxnT!n&I%LRPqr1+kOi}dHPp4MJFrNIr$IbUy- z^@C=Itc}Fxl&{vDmCl^R--pnuS%LpkaTpn6hM1O^*opZcE`6o!aAt3|kX9Qqv0U&q zSqAFMLxn6rqVoW)o$~-~sD)%j4^n8YePSsJ3U>a=KfXF}q*dwtnEPv1129MFx25xa zN=l|L>z-D<6ysEiDGiF?NpqJ|+DAaj^@#_5hNSC_e#1jkdOwY7w)2^(qE|YmK@>E_Xw>88^zO6*26ekn!Dq%T*v&gT|SGpTq z`6?njNUP*C*z*Pr$MrW1yVJ;xt6B?NT}REYa%Ja!de!r_r)8}1f1`NRoSOIk<9RFye|GaW*{Hi!dEjO8RXNsK9@s_-{btcN|Qd60w_$#wzZXh)(nJ5T8h*+YN%*`-BvpPF8mq zEhq!S{$GMWfEa&%XU^Q3FFr&T0BkP)hq5Sp+8-j-pHI5EY&9GeeeHFxh!-V@~CIxn`4s--ZX)X6b~Umrc2WxC0sG_=JI^*6R43{cy34f<2dMxJN)X!D%`(5Gfg z@<}t|ax$!@p+B?9XBow}5$aBh?}*F(Z#XEy7OF$ZoCLHP zJA))|ss3Cb2fw;dWYTaU^fB}=Iw5(K3_p>GW;_z;IPqr2k+L5PoETQh#e)2N?m?Ph+HlzRmPjJW)PM>-o{t;{yOee6#Xc8`mX8tbIe-}#Kp^(S zIXhlnSJt1|myz;P+SH1@000SLTJqrjZ#Rravsd>arw`~TbPdX6FAGq2ug>me6&BRS zUHQ}*rJJ7DOD@$moGMaG&wjzCW3WW4j~jah{RI+`6cF?`Fe+SDb(eCi#{dSAjzN=P z7@=SSSdDf1>kG{8@hCXi%HJjN$&E1OHvoN6il~)@EiuMN+-P_CqC8arrZ@`>3^^+r zGX^MOZMW$_)0~qBJzg}gkqwF`(|QWDLxP3rPC(fSzol-dMza(v(h|G@NqxG{e zLZXkz?G|vOc1JW}-#9wY-JYKyu1XW$<0R>mY7OZ@{sb?8;Iwe zJdeE6R>C%?QIYh#15|Tasq4<(Jz`M^`#YT84Zzwo~sD zC$IYZjX-`d#GU|6L1Fw*Ch@;)vu2?mp0qnQ@qC|2n^o(35NBg2UW+0E;&D4FklaYF zs8$n(#NR@*V%WdW%Jom`y}@Qb1OYe~W(k!bCjlbtC8)G&%1{$ik|yqx>%G0nkGFU+ z-jJ=#3TT00x-drm_R}Ud!$5*<>|@Ds$IaG&Bj01RUSw3N^Ff_?6j9gJrvM`xMxhKnj9z<5u+J5&Qr$o-ia%T?WLM4#7fOLQI_5b_VH2G}g+e z8WXHUUFK;?t8MC+XaZb16x=T?J@&Co?1Po7?^_0KWip_l6UW)K_F!)s#IiWNB&oI5 z0jxmn5$~!m(pa&$!qwt9Ng6fsGoyZ<@O>6cL%6)8Jo~lj(9CA^Rpce zl*fP>FA;WVq<3v?$7S66&iYU^sdRB@N-U6$1=5c#II;L;>m3}OimkihKa+4e!LP|@ zn{y$ob7*_&2j02$x}ZSjyYb3EzXfTOfl}co8K)5nPH%6kujH7sywL>`E=%q%NyO|( zGI={mS*V|0!v-SCwb{fLNyGdj=iwD1KMtDj|m}&LW*=z5}YLADVZOxtZEzzWo z`H^94OJxvDDu8;U4cBlX$@wX;J6Lx+?;~gLWbIJFHuVPwq6WYDt(pl5ovp76hfSxE zS)*9dSFD#Vqh3yVR15#Z9~Y27)uhuS#Mw3ee**EpXdBg$;gA?B z2yGr*k@nG5o7rK2jt06`X7FKw!@iX)UT!@%909cq%-A zYf2FDDb-K=r6nZz)|JbyRD?AR=Iu-V&jQ*YKoiSnm-!_+eB=3lM3j?U3eNAjNOr@< zrDi&We2gM}wF&vuRScaUsEw+lk(%?QWYPah+Fr-cf9baCi+ya0RJ!~Ct zw*YssVQYl+P&z}Xq6;Vm^bmJx55Lj;ZL0NX{`BV=VW!y{m~9pqad!4y7lD97{}oun z@HFCTe{wW&ewnEoI?U3x)b#8Q*~K^(D*+MIvhd{UXyKqbimEMXt75H$`PQQz^^;=D zvl7J!y*CD3y}9*@vUf%!>+Y7m4tTjP9WF|T51l;W=Llniw1A7NFx4r#Nnf6s!n2+Y~A1Q-l%! zKfV~aj3oR9x(5NT@E{`mO{xE1yG)2Dc#bl#`vHqSUT5sIMF^jL1r=;<{L36@7F+9@ z3!;GcXpYS&obrIbf{KR0e}6_jRs1dP+F1bnB5#O19<7sqer_g}st67X!i*1@Y7?GTbL?$wIsz z$n3kBkxOTPzM+t-GJf`Hl{Y*s;n|Zes`gp1nUubaO47=m*Ey(FM^&l3zncP zh4=;8^|eYA^~q>^I6`(kcu*n~;NTFn(J~(?-&~M6%#Is3`7C9j@3Vfi!ZP*?LN0@M z^h3{Bq53`;=?i!eCSM9RuEbLLdIw!+2hyq}SIGJYhQVrA4U2M2jQQ?H@5Rz#oDGH# zXW8S@o%SAevP7$Om~$9IdO!FL+cC{WCpF(uF1!0UXTGmy&_^^|f293lsN3cr0br2N z))*R}3>@GApg~%?X%VCPFi*}Fd+v`)p?@yf=0ZthRlLrFpeORAfVT9l#`3e_{xA?H zu!vNi`3k9(Tw*)PpBtpK;KxzUOu)Rg9v&n*23Fk>u3F->e{KjjSS5l~P?%!~N#x;; zb?e-vQ3ZuUs7R}pm}ExyP5^X+gh9!u`$^y&(_*RGm_0%163LViskRpY?%HF!`7;|d zQf{n^iOKOFLer2nC!P~yvICN5}tBkfdpeq`d7gja+dTiw0o z;!7t13g<~^vUd*8gmF#F_AjMo)f_VYT4+bau;((8RO0IdCX6sE-HWd&OS2nBc62a& zk?D#~-2+VC0Efe*_|!;8D`8`PUK2a%Ttz!4Y6&2<<=5PlRj7Z2$s* z@5Mx2Yo63y_zs44r$&C_JVX8Gje96U3{bNNX@W4H=QG44#}CbjO%}4`AXpyBXJeZH zFOWuUe&-JhPwxv=mM+hvsJ4RnYw~*yo=qSpH%AVx(n>892`rNv-Zw8w3+c}u*nmTQ z&i_LH(}c{C^)R~&zC8?Zb@3W#l3UuUGl~&li=^|2C|W+HL7U+~+vs;mq9T-UR6;I? zw5Is>m^^R095lU=;Te@FNPV(zFA~#fWh=N^{firWW3GhAMf~8k-a_*AIcFK3d|VX0 zSHVooi7j6e)gm6F$=~&%0%_yd@{tZCy1pVN;FKmmx)2f38br!D2t>vX0(>7Sy4DsQ z1hTFM5Q)?Hfbd}(XA0})fcZ6wPr2`%X!D0UM<$+fZWt$^{iDA->chSQ-1kb&0 zL-K?KYN3O!-NKpTLOJ|vlA!NMrXDZo$6=?Pz1?$XNSB7luUt;yTM$iiK1DATOI~oL zgJb}ojGSz!P?c9shC$-L({`8@0VgPk6Fx;}yG^j4-+#P0CVsMeJkz39HTTSTBFQ^~ zv7QHzmR4*x5j^d(ySUR9GpvvqZCo;{7dqY}P~&Q$nBYS!AU*1gv@M_n;t-lFbPmFY zwXdvBOSC=Rg}p_+r16N^hFEc5%yxjXO-01Uax*i=67GmRz@K>;5;zc8pkXn(gs;=k z`W9K`bHGp(-KoH+BPlPJj~1I4>cgqGw1)$19-dJvrk(`~ zR+Bdr99O@7a4Hae66Tdc4ow21jG7x~pj`YZFC2m_Y3}oJIh!Z8Y9eV}A!}1=Cdzb6 z3AvVIV=yUmZmuFg)r^V&{61L9zI=Y!A#_;S4-%QF$W;=${;0&7tgkDV!oU15GM$Y3cZKgnK@ zVqAZbbTD@h?Hp=uwN#|0ulM4gE1TEdelY7->)^+Ns&Pgs>X|R5=UwyHcsy#wOD0CV-z>=6O!N6?0Hm3hDj1CWyOwz3!F#OlYdB4ln_bXj>6IX^inbZw0 z++Q>6yU)rhm#ep1s#L!r@VT|C9TvXmGKI$Xv-2E53wwKWL+nB2L+C(tm9uo@0FKbr z8;O`siAn5xZ6kbEi=lch`(f03S|QI%0T+@RC+UM&RX1x0d| zocFv5a`&+%LdH$#Fr69@uAGXWBvS*p1vN)L?>sNe7N?ZE``i{};&_8A zm$qqnv}2eF+8-s{RcsxYCAEIcufB|sRnhf2QqV3N^G&GJS>m4rZvy>1dE!H;{U0;o z!MFlAwgnW~td?U`+c{^B376uAb)-Nh-zH&9V$B%pC}qMD;p4$gT;x)u0{9WGDv)FkV$ zcE5&Xyq$l_Y*L!%WUaNU-YLdOvZUe+WfHkv-CxI8si*XKHw(q)Rg!%FrM`)kwt$jf zucMMyHRp7>N_*Ms+Ul=<40RH3iVfl^0C&0YQTpEs-cjd$Bv_4Kohdgd^rOL?2NUl6Hz^EG+0s1RH{5)sK%_yU>owO4cOt4@l}yK8R>QFE z+<^vQs6?|-uHzc;D|}g2L|16^+jq-*Tci28!sQQB1lcS~CAs~i)(f!`K7*GNXFrBq z<5Z$^@v=VZ8q=;V&oUlqywdUBpd5ikEcQuF*Zd8@E$owio_R6M8E}X^h&HOwT z;0#{^UWZgeyInh%epk0%G`Up?F>zF_4STWYHQs{_Ok1rE8Ub%{)+aSZFf+zDnTH#A6#&d5gJVBy7p#8zDGm=rXJ+A#I{ zPk_@Ht~|_7r%}BRKgDa6fC>HWStGv@i_>9RG!eH2qKK`=P6)0trpxlv5O>C7MyXMN zH^*fk8VZDudwo{PbLoEoE>S&-;&-zBpLPvv*NCnLO!=LkYURfQ%A>n{H@cb}KzRSl zJD+wfsZN(U2Wxs}GR-a6r31w!HC60(A*f-O0oRd-Li%S8%*nPc3Pbw`k!6Zs_Z^{G z!yv*PHQ;~flcxArl`Y%1%0RD)d}D8b%Y=n$oX==K9nARlw`e!pUNBmhTd&?DJQW~4 z>!Mfiu9s%8W;E7WM982n1?d&MPg@B`Wlx_z@u~@o{;Mb|V&gKVY@=z$n%OpII=!Z! zL^W^{H)QW8pOU;OHChG48`oAv^0xxmAkveM?eMcEpw8!yzwFZ2hleT8t~MTL%xcS- zC3eKd+ECQW&p1mF=kpXaqlE<`gFrtbIdf-eZdiW zZBdwqG$&fcyY40=3IlVcJnjI}f_&&gQNT;du5J6rB7!+cPvP8X2(ZWJ?bXzU35kGZ zc#b>!|4k!n=`3;1rfC(^!rQ1SN>yv&7-vNrZ%3z!<+eu1owy)z#`}x?1|H6F5 z(QG2XppbN{u!p)=K=4kqxA1E|4_y}K)I$n?#L}IuWPadET4z0cL{LL=0h%pEg;QVF zGP_w%K-jX=?j#@Gb@@PW$m})E&h?IUj8gkcSCzZlhisX4$45rI2x%Om$kigaxY5GX zJhHt;2!zyri?olviX1O@>`#CH39+7(;H1>S0deO)D0fgTW9t()9s|ErAbBhZYe5&m z%M0$1WF)%}f*jmS?DL`Y?Jk9el1uBp|=0 zhB~6#`g}>OudoI@wnHD~T@T%9GM*b^H>(t7xwFF2oT9C5?RnV3BpY)ewgER-c-l^SHj_ORdB|^mJMCq8x@Ux=TW23F=Y|J-1 zOhUeAjTqXRQ$DO-w_K}cPdz`gyTbzv6Y07_TA2DVO#Ieuy+Y;boTR*$7esz)OTr>by>@G?Cyq9yQ!94A2#@K1sa@_(UH`a2Bzl0~O zf2n>LETJHr1a|*eSE7)4Rj?(1CV^Nvt=1v_N=;ID>(I-+f?38zniy^E?%D)9*o({Z zQYdqxKpin1&T&wt!aeA{EkORXo9yR$Mze?{8;fB_IOV7S1(k%Jed{$%h00~q#sr*X z$UDuBCy&eG4id}zX!}32p~fe?dM;Wc$PLMM-*Wrg6<~PMSPOWt3qP?-KlO-&Gtf!} z{3JXb!2Y;(jkby72Q=2;629l7O0x2=T6IPD8F7LE=_-G5IG)3_*?-m_Jhju=l*4&6 z=;?cT9A)++zFv2#IdN_n3eCvmDW7x8se^kvHuuT2@e&ZUHT#5CZKI<@Z-%G5isJ|f z0=k$AD9+#-i^zoK^(6)G;L(EUE9yeBs=DOl(c<%QxTW|0NTJS89P(*&h}^xSDPbBW>U6rbX}Wx^iI_KIe&dp!$<|z-8t$KjGY*ctnplIw zQ}-I9!lpLdvZWK)1BB>^2bmUX!e!50Y;maH1ESWn?2CRld_5(3p+W%7@%-X#q0k~0 zmEnCh*bg^uktEHCjO+5^_;&8qABZ*(%Wa`z-|!)|g%E5647~@aYywl`ePl`svemWP zUO5IL)N@~kWD8MRLBMUJJL02+1~sch{nz@?V)s8edx`>8Wnvff=Pfkvh}hxAS$S4A zcHBUsZl)?rMxBj`QT?+WrJE=1_j=u=3KV%m%xYs1J35qIsRn~8Je&SBRHr{~Yi&^v z`#u5_`y1Po@L+9(oG5)&de=0D6cDC8g3=c$OZwstQnRrWI99^~|Yv%loL35)6!9Coc^! z#(~Yk_*BXlnC`XLS%jQiA4e{-&iFm8TOZ0Axno1-{*m+=bhYHFKk4)ckG4nndj>Q+-w zi#BODtzE2RHP7Z^!F+RvV1q+!T(gebQY_}9s!>O|nuK=|xG*9pe?!(1^%5xi7*u0R z!@?O$B)JHN(rAt3g~u0BKS%1%WOu3XNh5WislWwm$By#b{eIm&d|KZBw1cO++JG8- zSF#vVH2oMXihQEH$6Vpj@1>nA=31Twa2IkT_#7de39F&*tk`t<^nNtW!cB#RRvz~|Lazd$j z#QQ`YeI9sY*}q0G2JJKHyJMqoW1C^{(>nWkQJQK9GOd~Xn&X|R&9V#{9hzO8EB`?p z&)XaAB{+Rbw^j$bvZb8_7v{%;S$lV-=;?Y5#U{;pGA>-N02SZvpeV&b+(6V0sZ|GU zEW5WmI=e);u$N%m0WC`PL|b=#Ds4d~L_*DU2NjLO;BVW2_EmP^P{%Ge_+P?k?)BON z7DaYe-rx3xVIZxhM3k&LRxy_0E9d;q8a#EIj&5s* zw(nDU#62ZbX5Z*z{x@45zCXm&x=}40Vu6OOyBrblc90c3`xjR@@Fz&E26?tji3g+y z+33&3(bbh)3=3EmHG0jiP^+&LJtl?DCnC|pDb|7|(s@h59EWS9J9H_8v$|lqbsYdE z)nn^}XxTWZM?YsCBRZ2e&yxb-lZccoVCK`1bV^T84^ul=S7>1gpByC|B4`F<)zfy) z6kx_u=B%lKqP+n@qfWD3+aGV=;WNlgcX=|0q6Iz2ABDzDf&*)~A6)|80)tviURk=M zznQAhY2ityjs+W&%B}Wop~gL&-|h_h2byS zv&)dLLoR+no2sCEF&VX2QFe`vI@|kmU|U(|Gf?EhK@egfYE0ctHWsanHdq!Rqa9GX-XHO|fsipRY zxV;w^nNNP8OyZDfjoxS|BEdc@$)tQl*Cb<(=D#T;iWSSgaj& zeXM{cKN};q;3W0kWnQ-3YpSEiZ{Z$)Bxq5i0hs~&ccH=3$PhIV=gUYCr>igd8YkYe zT(j#S=mzx+WC~}dg&@p)rdfvfM^5(z@75+Gp+SCfKNXErQ{3no?_jN5ePu(jbJv3% zUOrIb`ocu+LWSePSE`p=k|EPpc%D75pk--Pi{%W7v5+oQB9RVmIfKf$C5pC<<=hLz zj?q~Ig*F2M<;~L(`cei5FcDLO?IX5OchgynK7UX$+ z0{zkXa~E?{8Z;ik!lHJzDPrvn0VR_%F}swz71cNW$uuGNlj!eA^})F_RsLi*-s$iQ z!_JbZspVe3n8ji>x%}YzoT1;~GDM~m3%l}9tl#y)7K+<03cnu7P#rBK(|{U8*zHC9 zH#{cV;%XT=rI4y|i)Fhu8EN#-c!@laZAFy_zHW8Wh>w9u{mlh|WjLaHn8`8auWgXV z2b20lumT4P{R$XTsw#BZu{2eS>OE(?czPcDI6AgDHxZ<5%3Wo9EMOva=g+FZV+f8rvVMpTc@`) z`+O!2326OWi0lEdp#F4n6W`nMt6^?RaqMWdOM(<1jmtzTS$Pz;rSr$2vU@+E0?uO0 z0{M7_a!f`_w-FSNp5|E93_Vrq?{bhE@!81{sC+-AMqMrVz~O_l?Vj@OI!8U??z9}&hc6s8%>Wg@36=e8fu_h9@H^5end$omSTg@3`uWlm_Sh_XVO%a^L z<^CqxQa!^tf#TeCMez#0Xv&Hv0c<3NX&9$d=`CMbzap5+zONN(#|cO_)%V2CD!U?)cGGC6KwMs5_#6!_ z$hmABIseB^;62^-foWJ2MmlzKtB19C{sSzsvv05h`&TgOe{Qp#4IhwNg;yw*<4k6C ze~!tZVNu5az<&KE#4DeiuhPLRNefU+x~HEvd>s@wbrJD^K2?vby}$be%1e2e5w*nZ zlAb+v?6aDI^-JW_5xF)v6#DfGNf>O4Ce{5$nNGU+WlwqSEVK<~au#LQN5Bt=jVyfI zHpzeAmlY%#p*^bVY8ynU++}Fctmt4!TLhb#rEIx~c2@zcQH3IKAIFpp0T|v>ryH|{ zuOWVn5Lf@3x;3h88<2jvD9)mxjxeFkQNr7wm<1SK^fCvmyqU2<74ODtE7^tKB#^|p zv3tuW|1D4xF~;|dcmBCfd2F|@w!OYBE0ZJ~@?cvm4D(~jJ^n$IYErdaAqk0G)x5iA zX|ayryurdw^Ar;*7R>Wg9;=H8`cIp@a5SK(qq@fc`x`<13Y`^zam=+wSA4G|w*vb`HlE6RGo|m7PZT>v(Hz#PXW2Yf< z{FzyZpmH>9rR5LNb@QV>EiSXyLX$ZnSe?(@YS7YlbISS0i(?>QX563a!N{Y(b-0b9@d11C=Q;A#4{3ZMa1mQ}{HkVl zG(-yOrJ8-Cf$vZ*>N=k+h}6=Mk(>&ep`ADXLMW)aq>WDHA3YsMBDiS8rqCYJyDZ2gTglHCbeD4rD??T-m&vB8K30Bn&L-jl)BMHcG0T ztsASGoHg#r@>NQ8n+)h3hX{J=b#Y}fN%Y(1<{_dQ_hcv=jL%-*8WeUhQWPZG4N-B! zM*ezDhZLPwf1z##R@6(l|DFKz{FO*ARddb5INrS>+|y>eNupZ7N2Sp+P%UO{3vAi= zPuK@CdFo2Vvps0xEMX0#OHFOCQo(7qhhQJm12{twjll8o4VH^SA^nn)S?oVA|0jle zsNP4}v?*ji568iLr^@W58^+LpAN}M3|pS1-rQjo_h z>#hkmkupglnV zo9tUU-O30dAc?lT(Egh*f+;}|ec`46^diUHEAIclw$U!vwP!Fd4GK37i_`MUfxOBe5QKI&rm8|AYrt}fhP9^L1 z!>RX@d*4iYV0F+Av5>LeHB2E<(qaEr3c9VzRgOL0hH`NBK&&Z*bYmOi!)IL05Y92} zft~j9umU#^%S^b#{jpF4W8o~)_KtW_kU@G(&0YZ+JkLr5_h?lHXgUBcHacYyro>WT zq}=OI!MiE@(W_CzT1i!7R8|=i6mdn#W&`bF&2rj`P#6^PJjaWY!LHXJ%YqJ!kDodj zIQ3oExMRkLJKbT-CLeH|9zWB(Zw!9Cei~$z)<0U@d!L31UkI`RCIZ#LHfhj)*S74e z?FTj0&~fAj!m0wgAC5z@94F}O5Z<%kJYc{%v*M86$zcn9360y>tj04brBIRy4QKi% zTZ1+DLuxs@E2NBfF8(uF;AN1g&F3?gHohla?Hy-I#zz9d&q!(G9&#fi8LTzZ3#sKo z+R7V#M##=)1IyWhaLAoVwxbX(qr#8&MIW7rJUC30@nPV3UW?Zh!LbpcHT%0w%#mN9 z6GKvx@MS?iKz(;{t5qs{biK2%9e&5t@r$7aRwzv9xGt9Y2Bun`7AenC2x5g%s4+&Q z0>RZf8?Kdi-}S3ZkTUi+W$p{Gvw{ePu=T%-q<))0Hb+`1#km0NP;8NO$DnhbOpj-y!NeloZ94NxHg zKdDbh&lot-dot3kZ2(0L#3qfHoexq!4pH2E72hD;=W$@-5V;XW+-6alP5{i8`M;9z zRrEyd8qslqa{F}1v?3NPIz14NCxSw-M?1NDH+ZEl<4s=Ly4!V@sm?^`^sOUT9dI@Q zQ3nt;e*W4-aYW3yLv65=&coIH~qW-CX{DT62@D4Se_nk!Mh8= z4g zP6pOxRBYb4A#QMkJlqj1qFgR|LsweKd!Aq*DbR0sGPpK zHd|}UIdLbEiqo>f^5XFp#Vs<(d60FtA7)t=5(Y1x`SX2AviFzbxV`Lkp2kw}3;G9R zjTotP+b$r)4i3VjFo@Pm?y{;Pf6-eg7lnY{Z_k!RHvNKF?(lyQTTs0{r`VHq!lQ|X zBf=y-l$84?CJia>Qx@O2Y@Hf#C6W|4Oo+Nct&oG}hGD)ILO z%741Vt__B+Whr{g*g==G&e|B9Wc*f_LgVB*HCdQl$z<5zqAqeBUYaa(X8M4j(&(`} z-|w?zjO!k(WyIwm*MyYC%z9L`9U)+|&+b z`FsC-RDfSlNv&}35&kAg6$y_DPsn{B-v>>3?C8C1Quj{b`%Xyr_C53iB$nqh6L zL6~6>z|h;|dqD5gEzWlwZJ%2)`d#I|W!vVQE#FT6EWZbXt3dBa3t^iPbsa4; z)xX8d)XB|#so{GUVrA2gH`XWyvo99rKaP5vMS7fDF4NPR-EYWN7JKhe+32waMJF;< zH?D{spK>#J6DKbXCwmkbzN7l3nA+oPH_SK5Zw^!PI4*5{zABs=uDegYzRQ-&A7c(H zZ-iI1n=Mi;S;_MtrEs!Y%vllogr$l^W9$ z#SDvLIhMKM34k~`Z-P+N1P&)lZPvDv?^HtguS;_$s$KJfJ+Z^T7EZo{o)ks#ei<$2 zMha5x|C&I)^64wm&Zwyib@Z!S+h|Vq4^TL3G&NDMiU^0pbw(*zm@e`*wdGRXFezay zdN|`fd+%DzrdC_9!P1sdfv*@Zr}+6W7PM;r(JfHx^B-ytFuY1EjN+fT5yT6Zq>f)w-22&0GppuEKNZ*TqT2_evm zv~^DKQpVqUGBvAKouRVB+V8&8b6FBP7W*boHS9zR`%?=MGoM%30vCZ)t-d>68nh!v z+oE-NlBlJJq(!0< z7I}5PJOjTK7qhkKM2|L@;ECeRUv*NobeDn#RAYk`s4Ohm3;ghkauFQ$5;~nLqwLrr zMh*WUrKv53AzfCiB@mKm`YX9;Vh^rCRBL6qR`mSUlG^qZnjU(a#a*-2Z3S)crVj*R6#62^a`mdtY@t zZ{(bNah^_RrSf-CvnloI+zFr#YE4uU0t1EI#{jEE6ZIlc;?K27eVK+-?-N|DTjhek z)sN-R-4h!ol1IK=^)=9q$#U{6DQy)mseFQQ?E#w{)8vW`WfGTb^*A_3o0#PR8G~ro z;4u>@2(c^K(;u44R z+Vw> z0T`Kltb|3iVMGMnLOM;JG70FPW-*vSPO!=e1hZkx+Ej*LN|y0f^-K8Bb<@VD$hx{> zC%n(ET*3r(NH?pr$J^?6}=KpD8Av4m7nj5?u3lwQ_ zBT*bHA$BPs93ZfLXQTM`a*>77-vlsXpuLBdNRZsThu<(`2MkB0e&5oibU}6&_ejQ* ze2O!<44vbCEuz#YR@VqW3&-dSwSPh_QPiB@VTf<25f4f6Axm13a86d$2QLCo9ICDiT0ER z7O!Wfb?ZMFM~yN;6eZwYKo1;K2TOEBYN>CnTB0J&hPrvgYP`yr)jq!EZ0q2BT|%m*3aoo-Fc zT55pFp<%EiJmDh|puq@3TaHz9%qfx;4|Rk&%wkvB+a^gyFIa@%mPT(ZKZp`J6l^;| zTh~`y+YUWYr-VmZEO|b@y>rDRXwy%<^CXZX65|S*Mdt(Jf8wJ!#lYajq;p;Oh8-x94OvvpV5CjLN~V+BFnMFre40E(|uTl#v;(t^7fKH_%Cw*vJt^V%%Da{(}z)) zh0Kz#g6u$W2kltPD$JdwkXAsKEb+(ycoW^W@Ig!-Zwj+K3OnQf^I!16&_-M{anlc% z0N}Je=_e^Gv<=Sp)~%sktYPDcEQ&7k%Vp~h5pJdu@tVOLb@$Rkd6$S29zOo6t4Gr# zwj)JKmDd9`e9Rr_xwkJM7?u>}KsCL|bk<2lbb;Bbv(hK{@8fs)o|F+y?d#jcS5Z3< z;oq{FTU)R4|8z|`ENpN+US5)|dNySHS1WYTaBt)+j~WQM)*Af@kI-ZSG4}N4gx7#8 z^WipSt~Qi?sN!__!t7u57)tKaAUyw>Jp9wxcBc1=a_elyS{z%#VQs+;omp7*eEk8wdYFmGtY>gy_}PU+SaC;V?KmGEtxH$N5b~$BqYLJ)C%@LI^$u1@sV_~Lkjq0s z)K)4G)jRBGmPIsdcf+nrkL>qC?}*A`j4OkplZAV75enT;)mJK*;cQoFT>M#!Fv6*$ z{lE5sr=g4WUef*AbCSHnc;vJWaEm?ulwXB+ON8)uB(X96_%Wp@2s8a{3uCW5#IM|0 zYn?Pb!sLJ65Ajp7wO`5tr@Tu(0&ZeW)&EhY)~>iS1j~fEK{^rH_6_}+VpU~~x(pcO zECtNdF>Qq<^0;-Qaum^!6Cu00?a+{ueeR(Gis+Dq50k_3$1*V>`KZAA(Ycs#*noQ% zO=eMmPD&Ri%q)?prV#D=Z+Fba{XtZZ$kRE7)_?(lareug*))te`JkXz+gv3HrbfG; z+SWfT?|aXQ^;0)kpJoJ2EVQ}8m_pg`+7AMkI*l3&g)+Ouw*)c{_8z0m-B(BFe$GofC!rMmCnl;8=%jnn*b)BE6OGiiz<@*op|DG$O2I z^7_t}9Dh)UbAam*ae2(#r*yTio=t9))Y~npUuP~gRm~CV+Sdo20-;@~XV$cf)z6lW zyqrOW1s~;iD+o)2Nv+eTIY75On)BLE+B45OVkW0%t{9p1?GXQz4-2hb?too5<;2TO zEHrhZ6T?#JhX5HC5_U$wrCQW5^or#v7{l*$6#voBKIq(S+4mxUg<&(JBM24U{DFCKZfI1YfItQ*Jl@%BSb5FF3~epmDR+Q z--O!r#?A#*av*YN;>;s`KS(PW#wk0^>`_Kr!*-GYZ3`dbq6cH*6n%nk(SW#oQSH%}RAAU2}7G^f2vJ zE8>sge`*Cxed-~Sg#7dWn1opewk`g$(wv{21xMr2Rg1cPbuo7kH+&0SV0=350{z3& z#b{^y7oMLby-8-RR9~{lV!=U%4@ywJZke1Lopq#{#PG0Mf+paV`J94euMGucMr0t~ z8ms3QrRgnXfOo~Bh!jv9A15fD>Yz^v2kquih3B<2y!(3B$V;7?*_7j?~464e%+$veyLHFg*bc}c4plA;vnG=QRwB|vo z!W4b>p9y*^{&kpSzLlROzg(+So`xcz10DE!khlp?GG9XZ`X{Kh!lX`9HMTs<4^8vJ zyT7@hbe%UhEa~aW)R7)g(%Nx`+w9{UoJ>kM4b?6VzS#Yc^Lq7Kc!JU1Ei|Kkad>bU=6^7t^3*^8B?-gw)OwStv48`C|grr{|m{y-Y?J zRw{=sRORiB4Bh1fjLkndux5M*iH9EV<_m_gy(2rn?ds(?M00mHA|y*o7c*R1)JAxQ z`G0*_{c@+&WX2)xlni7w8MT!vN<>!ZF^vFp7F_XEopU5DT| zx@y4Ezj-s1WF;cVKKGlnC7&@(h7^aggS6JPnBUBO0EnXfDceKJahwVaq!E4iuz#!c zQ}$)`-oq?`uThERTn|d$A2voZ=X(VdxNb5)PU+4 zv(H7uEInS*6y*)O+NCyKWSRS-U*Ba75N9ElR(yQ7bJ>Lws$;}_!bI2CXrcm$|KF4^;Oo1VfY`Z; zGh&9ezL#Gh_!0537$nP(kgvPj2e>>kd~TwprY$6zDo}srhSA##ac)CXJ2GJ*J!R@o z@ng8tx*#Ia4(H)kfwE9u|KNz-ct?~JP^K>h3{KjA55>E&9f5A%6QVQ7iT$O#NE^6F z$1RF5V!ST2pn;KAwGXPxgArHPLE;o?ybIO1u7oisNfXI}LR>!HPFqUrv7lFBc9@%* zC4IW5-uF}z9r#3a5UIY(Q9x=@SW`yyXZ8(x^35$mF|;&US6_m>jRz6yg0w9hQXEhT8V3Pe_$+F< zx7AJkrczta@uX8#m}@pv--zO|UZeS|Sx>O{WKoE0JxCW83$ppTpBOz|l_ZV)2xuUIkLG7SDyLeoqQY5E4MB2qc9dkm8Up)i zgE`W4PmNJ#o%4PQ%qYAG(k3J3oe-ie!Diy>Zwx&aj1Ai;Qt(kzj!QBTorGv$8Y3U$ z(xRTn{`D?{w|?v)1Xu`yn4>w)K1-~lu&EQ$c|k%_3IND(jbBt|ruO;ZNIu5#Y{_M= zu7B(ba%GKfW%-Ip?7fr2iB|(^q_7Q(=Jma*O|9ungLe&{r{rcX) ze;P0DG?CZXI{o>FLkKl|4=!BANP$U&@+!yf_tJaKNGYE?X<9?>F>Av=0^fo^Bpj@u z!0bb0JKa2!5Z5oX4fFrGBtv8MFi`@AhZCBBC4F&sDq;$^YoP9PCVvdP*?xm5`^^b5 zdv4u`LY+-y+H4f?I-MQyv_YPt^ua_C-*+~W8NLqAeeMeZ!qxps_rIA2=6(CoxFnxx z?lju>$f2FYHKj?qr$=4z*nheS?xVt-w64n zoxlZTibLl2+fYX0DlTWQDrns@Bep~D#QTyfWj#I?a$N@X zvf1~;6DJ>%K`Uv?-T5`V zkW^)7r(xc3s9WCmlw7r4oAqVZi|OY6^z@yJz!lxonIVSFw6=Q0M~N#TJ-VB6I%ux?r;;iyG@gNA3_fG1OFll9`DzEhGS+}|{`Y4m6DokI zQFkxXgIHpN(&cxmNv;p~Y}_?KM#UQSHG7TyVQ>OhqB|JryDW*r_hslx#W05Joh^mElC^Up3~Vx9Lmk)9ZX5>>Z?`1P_nBz;bs? z2JwUot6Hei3cZBXx!EeD@6JL(b8t_4sXQ1}>FIfp*Gh0LK2>@R!l*bk*ynImH-}2z z4D-bwjQ9}2GGEJeYiydfNh{ZGt^-qV{rVZKGPS1-&mX~#oFSJB{%A6yBpAiu^^2n7csstJ zoyVi#OPDyK--T^tL*Uw%t5+{hYnbWb$O^rTWuKy*f;Q1@Z^J(6P7h{RDk$$S1}E+ zw8B~KcK6LRA$eUB0A6wMgN#++Ahn*jv<}QQieY1gg;hOrVz*pgJ|VA+X{bUsS|}te z-y;?_uKaaO%pNwg?mLX&Jn1wY-LE32ylLBl+c1k7KYsr=Q2^;Co&0XW=|GYjfmp)9 zKj8mqmTlv>ECzeoV2$FXK8NVN18#ZFW|Sao&R)!J__5?17YWZrJ> zm|+Fid`a!-?AqXOR@j6+pt*9BBhUKVL*k==mDOma;gUM|^KpgPf>DXfmmj$YEp%A> zjPDn$)`Y+Ut3}xXcO(jO$FIpU9FzKEv3J_cK2QM)RHB6M2H0QU)+`NS^8_lY5E|Zm zWXBzDBes!k<0{4yFUO^bH0sRo z&2d6+huS}w%{{?H_46qqw+oeW!9l63ZB*!Dr?&*J?hk{1`CPP}5^k4jQfiAXu3a#R zeQFeDaI>6om`9JXpy-I+0nq`Zag5 zst0P-#kdqqsV!W0TK>ovuLM&QPyuP>Unl|^MtP_+ko>^bR*0^&kh6q0)pu*~{y!VG zQXzgdvN4Oy&G{)2cWNW^Wd(X9&BYFmQ<wzmO7j=FcF~^@& zzdB_?q0F_btEy7_^=eQt@wHUGWV|cT4Z9*JB?=jX&$aW=`8*r?4NnSK^s-_0T(yy* zl(E{$_sk*>%<<3TGka^@XGtx$Hb`PK*D8ZA1>zRUkXwo}_`-T} zBp#|@Y6(P>M72J`RZ2Y{(yR30;>m9}8xznoa<_nBukmBn^bEVKX6LE3Wjp!BM3QWI99F!101fIY&~NYkLaUJXQJHs`S-}RQ~A3WCZa;S5UPtg^h%lSO~4ah4%gR)yueUbzhg{jstaBjQp&^i2vX^LZP^oT zjP602WY`0DC0~&~YC+)W0HMu`LT^u6gra6V`Gu>*Qq5_ZtvOC}s-(u%kVAjS4^P=|`)E=q7IGxn$ePU#9M zN!}E)E7HJ9X)3g}yX2SWgfa#A1Sho zzq|p71NRE^FkT`oH^#T4!@Bi24zJaL>YGMM2m0C;N&J&oYM2gJ&SFzEXeC$XJC|hW zq?quz!TL`_C7xZV;a)pFTb_e}%Ed4$n6e3xs4hd}iR)jZk9_$AEF&w|} zbg_HE+ZI~xP0HecQdQua!nmG?v4!ywSjB?F7-uS}!gv3!5qd_Bjv9~Vw z_RsXMnlp6id|n(9qCCsiYB%{6mGP$%8_QKCWS#ZX60UdI9U2$$9zl`u4K+$l1V`p0PhN%+Iz)hViS-Po41PshlQo24PV3VP!wpN zpH%qP1!+2wojOFdg9MMP?H?#0-6;w`Rg+dY=v5$F(Qx55J0gwIzAZpTgQ~# zjU+sKdP>a|Ta0fZ$lSey0NZqE>x99{9n%Svl1V9ReTmuMqgp5`jnH{ujU53UIYC~2 zc%bl(CXa3AW3!UOylxp~LZB;p+etK+kB7aI&B9l-(VJcMB=4_py(6_b>aE!QgFuX- z+kxJpg&dco@UJR|tN+YX{EA|I4*<6I(H&S)Z}R?RNV*lN1{iY2Hp z?nL_gg5O*BJVwdkS9ARXbY~a{Ti_hIi~{O|PH}N&i(XTzbEvR3#3vPkJOx>hSAP&z zqk^n-ctPY#>I1^O-LZG&=%FS~-4pGj2p^a^!F;yZf|7;kEe04>I!Hok!~Tz=A|kSB zfy#Cd!VtS`d5O@2EOlAV^k#_2>y(YzBFq!xSbYhXtVZ>uXfrM{f(t@HoJg?#9${1+ ztIp9>X18Cj65sQ%)Qw3Z7fk~nFH&6ngS8dJZ=CnW1yCXyfbp<9`a%BE?}Z)ETfIje zE^dLzDDG>mBA?G2->+WvI5RH+Nh$%V2s*oBhr^Tf#ebktm?LkYAdNI*y$RJ$Z$#E= zmMQ?5yBJ&l9RN};s{L6Z4iCGpn^t%Q$0xr0IJ;v3A?yC&Zqc=d*Qr4mb| z2SouenqnXmmvGW6D=JVot*y+-dIU59g)h__|GG^Au2XLXQU(^>B|d+Cwnz4yi#SHv z?lJ46wT4S5b+_4e<7DGqdVY3JO-`A$W@0ymzyqSa@tpLILUDT^a^hA#OZ^zaJO=>Y z2#oJg>H9E#0R-*nHXqN}x#3d-;X(yvDuXW3>wxsI@o7{?QwqiUx7iJxEK92I&f~r< zM^xoYBB;&nG!P{|BH3COB<0L7c=Zdkly|`Gi(sbn9NCUNXjf7K07c7ax*0jKSv$7% z%;Zb3kvZJ&HjYMJ520Y*k-CP6{T;xl6_SEB+Cty&(IPX1zo_uIzR{Zwl1i4K{h%dLk{SFG*SLFp)lSGrZs_ir@~Q^Ec1PD zCY?#JUFx~0`Zclt_qGGq)&A=XumPA`El2cjbddJwhGmNi%|MdB#`xtUDx#|rmi)>R z-=suBpr}f9ff+s8TFPdmwoI*U-YZt1=i7Qe3&TTYMA+P-||!%xJ&`HV05_RZYuBMu!z6t7k=@A0rDp4;uF zGr2=cZVUM$*~IMD!y}?L3zc2UTbBGr-sq1()67DdVfEciq$;XXSuKA=6^WFv zzpb%udoPjiD^HJnS)3(S1oFDZ^%~Ie=2)k$4L&@wHm}ktR)Z++`KFQ8nSs-U3Tb$$-x83Zm zLu6=vFn2|U0OtkHHjmqCR(ghXpZus&Urkr>q{27|`R_&$)EDIJgtylNO*H8%!7ZH+ z2}(VNj3Wv8@H9^@GRUP)v@=3_QNw!@k}Mkw$BMh_8r+FL<<&*v_#kBczrxj78cFYi zdP*(f62Z*U_Axpx^HQFvM~Y(Kj=A7v6q?3l9DNG1kn$Kn^?Oa4uz~s0A_IQ*8Z#}# zbM_^5HxGxGebqdsSKn@#Fv32(6luSZ@Q3p$BG3TS6st8&BAhpMF@|?0lG-2Ii<~ka zQk@VSmK}nwNHrWBi54)0iZ}*|P{2DQcmM_d9Th1lN=|cNz##D- z3i+xPI!71{v$5r1i&5n{4}o!vNQ->HbI#2l)vxi-O!u+SU;$jU5g{km-!9C<=&>PR z7XdnX)$JG2X2iRh1XZreW)oGu)34bZwtD+qaYlWCZ6jLg772zx)|_-OB|)x0o@b(7 zCNyaQ8I(lW;w~fcdQ5f-)`B1y@qV=proG1lDT=m_061%|bIu5S?q480co zZF0sIbCh`L%AQ&di)__{{?)T-8*U|@vedYnB6xP*8!d-Ot5o5cAd_5u|NXrno1Bv| zy>{JJk#Bt9;-?B|FW)m0VNiRIakIWc;S6uIkueX6SqMRkwg*YH!U7x2_<^1H$smh2 zm+dVr&1|6V=fi{n;CDK_UwBJOVp<7DUsg$QQ~aNy-M3CwxX{PEf7ZkywFDNL<~2H`4M;&7`ktt3GT;Y1-*x~=Z1q7X%jq(<5TVpoTN4gR zH;!kD$!-Vr8MXzC@KOP`S>0E5w2Hy9AD_1zj8tp;T_ZXjNY^zZVg6F$%eU#$NXD>8 zjmjzp3KXr8f&Q>mVH;CIP)2rq6zoNfrAvEw2bbM~xtT zs~^s02fdeO2352Q;~`ZU&*-}pL3kY`NrAc~k1STt> zvN*V^xIG0DqKQ)}FEIAk*<^kzd4`dGPl33)uWnv#e)DAKb<11i?g#&D6JEuy!qBCM z$zNS&eu>^#)|CJ`3a|S=il?{XOSTek4c~Xq=^<|3YoZX_F(k%$@x*P+-C-=<64^*& z76+F?-S>U>hPzqLnp`NRXU4HivpXW*B#4jqxf$kOih#*dG!S*u(`Oh+jHL+cEkR|H zO>OrNjLJSHm}RV(L&!fs0Ty%j;v0qF8sM^`R6q{?CVPQ!;>EK{_mx0t(V76eO3xk+ zbIHTOC~q(+$H9O<+5~h$0CDllS+HGOV9e>Ay(}1&^SM}&T?T6a9f;#Y(Hd{cgI=J=NTmQ=R~g(nR{A|!Ly?nJ5TTIYPgtW;D`mXHW43 zQrI)-&Uk}`x%~nWX3%cSTw&&9f@O(TTLu6rs%V`d^Rp}9?1GwmAm`5r;EOjT=JXdQ zm|SPm0JM{;P;lCK$P3s^h&^^b=E!Sp@_lZ+LDnJ`A2n}bqUn~YY!JDMAaW(%(*(Ul z>N=bHX~|2SOE|bS8=N5Br(jgz1?8zojE5Ah2j&s6{zc3*-{nPF+D;pE^W}`nc_PaM z$~e71vq^F>Y_Z$Ki}-wm9Uw8WOOu4z#ZkQ0b2~Q;tk6w<-I}ah7AyDmA%KzIH~ke_ z@pKxXCgt4T7ksw$wZF2^vVbnmW`HQ9_)j-E9vvO<+tl=S#g2x8F*__R+h%kDgIe3# zNd8u~z#@R0EiofPHt-I71C!skbYn#ulbpvko>n;Q45^gziw~Min?M1NhkH)hZ|#HF z&D31p%1Q2dK}uFY4hLpQ_Q9+)k1QGFcvJLJzfJJEov4|u_`+>s` z+(IG2w6`|t{h*Fejt0m6>k87ai<&Yz{5JJ-a69Pc-4(3LYV@K!=OvM-wFJoK6FjYm zznNVjjDO|9pbBma%;YHA$j5TUzQi&GNnE0GOkRXWV+&;XAV*wz$V0U?S0}My&#zKJ zCc4Miq}qlBZiw%UlzT4%LWVQ_iCR!E=x|GcY;1XDc9W9upOi&RM`uf`S9+RHXM=lD z8cM<_wi=CFpX2SNdGUkRBo5zqde{Vx>TryGWty{V>(ACJN0@m5X~E6PljRJbiF>}L z@|XZPg>+gL>jc-!e6IfFnFaJwuHUDp_bEEEhjM^=OUu#*(k*tICWfPDIo{jOq~7x= z6FS*1lSgSs%3R>O9Xo>G&5RvfP?F3qdO`hrlL zvauNQ+#EnQmdPzox8b&k#47Oxi9%jDxypIWOf+6;@bic9Ky$jZ^MoK}D)T7l&!+I` z87=ja=06Du>CXX+1N$P0xq~`17XimItQ&^m*iJLnYOgwU6_iE}y0hPcZ-CpcAo_F! zI2E1K>rV|5#>as4-prtJ$ z7f*8%RwglU^~XxqV%y!+fDnFVHY7+~k3Z4t#NI&BUA4|2&gvp7?4_%)7acLNSUhmh zU}#`ae~H=FY>!*)5BbA;G`Tl=^eNobA*fr6SS642jx7iW+z0#Y884g(j!ECwwmv2~ zuW+bEm$&Sw6G9#4a8bz#TMqzi`7anCla9N1MlC!rEt2F0&bLly5oegAw2$4yhD@V} z6tKq@D)~(u?wBM@4**ovFwWVwa~c{jq^li3b4%=-98U)_-Wad-LUlvIYCDWscR_%* zSyKa>oE0_Mez1g)CG>gH zkY9dJ-S&oeCG)e=Ky0tkc;V#{Y4pXm_C)?IApO&S&X59L(N9XKfV0TS5lPguB_)5r zn#J3-nzFQ}>4gpPbd%RFTny^<3*ZICY7L~mkRwV?QNpRt6I$?~EBieCap=wAb>?o} zu~R9C`raT~d=Q^g=czoFCE0f|xV@Y9AOdQ3Cu(b_#Qa;^zo>6tNqDwa3IDU%4QVn= zJR7L$iJ~SAynxlvQ`G@ES-}mu>b+WV+N)qk! z0EcRCOui|+$nK~K&57~@n!_P<8)DbPc}kex(glZk_}_lBApD}z*pM@2pmCTV|Dwi0 z*nfWT#vRL_fPROVuOfS+478yL_hgV(F|mhV;v0BK0n1n=8Gc(5-_lZHXq}?Y;qlPuX=o$>@q`OB$t4Ezh=t81#Hx@rR+dJc6(P*Bzrd?g5jCvkp4m%& zORQnF^)ER_ONFKKp zhLxRA62p-x$x@QONK8ZOMuAzS=e?q#e?wvOh6UnoQnQY*QHCfm2Qx|GA1Fa4m! zMm@eC%2Uw;Y z?Z3^LzX~f&Ht$UMyBJ+gI*s~S8!G&F13OFa2<$Kn0R5TQJaNK~ag_YgvB5yxR?)Cc zQl}QNDuyE)ITk|LJ&O&U(B!Oe8{m{;DBcdxBl)^Q7j9m{89;IBySQ^(LL}WUNZQ@jwL_Pn z-y$wZeeaKL8E-0B-|^AF2WB|T3)S_0-&Ah*0d%n`%mq+pGbw0rv6K_Bc}x~qk@pmwV=7M~`0ohdxb$Q0v=uNh}A%tfA)K z9+er1;Jg7lYJdiOMy8Gzg$u~(Lz(p=2evJ~c@6EA)coh}N~B}o_HDVyUrMJ>t_{z? zJnwgfAVR2!G5#MN6%=yC#+$>p$a|B42=;1x`H;w>Qb4rK8`{Nq_vu!5ps6MkSe5!~ z0*p^(dx{GQw`8Ad2#N~wpTQ#lZQAZYFP(y{R^c22NKqz!+=?#0cC!L!F6};KTHyL=K6CQAkoo6L%`3sr870(82obpYxK~DQ4X=D5nSV1pIX`T{o6;u) z`%pXhIgKOgPf?aX543;0=Z;z|%>d$Qh{T|h$`9_CaAHO2vH zguqi5LsD-?UeW%>JTkgz2;#lC;Q%(oLpOtzydk2)xFXgpckeqXX(5G+lj3i=DG_h1}5rA&DbWahbR zv2IZJT%7svztSLRImIUG{ew$G3%~$YjhW}7f3-6}KrsK3us-BY-$;5UOV|LPl)CE3 z`6-F$y?)_hn(Fl=buWqJG|?<5dBw#qN(@CsX`_h7jcM#xn;iCq2=T$5{hzl+&ndIP zl{T4velo{91tJp^!zZ5d`$ze>oP078MNR|cn1}>+GB^q@v{Ixp0=G7LTkRmOS>t;T z(tz19GxuDnri{(Z=rO1a!y+$fp@UXRQ9APx;@H$;iYg5sO}JG}+U=VUB9ASADt}thMvz;kF^Cm|*7I^82N8O{YZxl|I zlu4Qna^3li9MgmEe+0F$-5nLj`yrjxzLm)3xiw)Q8lPb!MSG)8JiGls=Pj%-edUqz zh!uqf`XKn33rKMr{%ARW&4TXW<8boqvO`0am9EiqOaQQC>q2Li5y@G{c#4)#)t2j~ z*tgk9T=brNd8nA8k30v_9D&GP6X7kML(M6a?~KZZ!E!p^=N@zr{5FOy3s9kX;S-&- zAPLC>8|mkKz{5YgI?k>(vW4lMHV8^K0-AXkn|+EVx+O^(ch;ozswZJ4SLv@ZE1t5; zt_Kuwohb$r2^ zv5=Tw1)-_cs4>aV&D9XG#KMFp1D?L=RXg&a@|B<;Gx2y-9ca|4M2>hhjR?}enV(nT~8PP zx&=22`HSj#0Fq@^f-BS7-pucwIh7J0tEZwxRKC2<;71;ELyWgZ8$;I7c2%W!!RW4Y z68V)0jX_>Wi=4kjznpw}M>TmMf0g5le_2loGO$G!HZ@12gK54u6k33mn#r*EM#Usv zQT9)q>xND_Kxk7jx>c?s$kJ0ZN+)E7R=}4GRpPa(e@rPb;M4Qu6RO81+Ew#=^%L`Pu$iHgy+D8MG zeZCH9%h4{}$GuJsS5$lCHHAN?*9RF{x@!vHWB@e}E_|g1p*8#xV7Xl>W*>RmJFl3& z9633@O6yD-u2#F$CZzF(7TdalR}A&Z3}7h`wGvoHI`9c6N^d*gmuR>{LGujrB^KE)-Sej2c zhd4i$IRILa*^4{0C(Hq;MsPW0p?p`?sddM(%EK2WgY04_3-6z8WccF-%F?w+t9(jw z;k4r;YA46Qji zO*9SyeEGA5?m0@-f&%j>qW2Dj4Elnv#3gGlJEU#3o20tE>t@LFyau82wJTq??*;Am zT0T5NZBf6u&X`OBb3$Ycb`x`=TpGGZ99e=jGfGj@blTzxCsRa8sa^2O=~>T{7-^^q|Ry6GXG50+88l@93G6} z6E?DegE~bwX{tn@n2iirj+ZJ(Gf9~+miSfJ==JZQuJ^vC&H}|Dy2@O(0U*cYg`rt3A2yL72aGR6Zymmk^18RiMoQndK^ zdp76%+*MUTGa=sWXP=aH!28_FPiY8RIep~aP)sSMfQWa=pbV|S#-KU(9y>IxH;FDy zD0O;U757X{&=T`N^e%t=?b*hqw4OZ!g`%CH<5_@GCei6v#*fZ4Av_CI7kDY+F>_93 z{2=oVZ>mgdE`Nf!r5V`t2r11E4AT#XHgRLQGUh^n5<$*Pd%4i8`tqDXLtH<7gF?8~@R_KKb>s&~yuEp>THunYBdLAg4 z9(DEaspRv$Rxk^N-PR8;hb4^*8>74s2C*!6hZyu+P4kAV_KE-OwxLD`#U1r|p#d^7 zCU0~O#Onn@O=4hdDTJz0;=|2m@#WF8b17ynChra`#TwTm2(I7qCl#$?X)G^%Ydpnv=vIHTB<@V0ipx?R6fsQYj2yB+r(T$<_u%@{~-GJ ztTI*Wec@q!!{52KML8MgAcD8CeX@1bE($2n1ruIEa7i%kNfr9LfFSI--~9-Ci@&3M zV+|X{7{dklJu^R_MrQ|NniddXFy?&>3@p5)smKOD^Bv2__*}`O)hvlcwO3HL6dres zsygXltO2xZ!GY`HZ}SHHReg*0`g)*u_2Q=-BgnlZch9M8_#N4Q6ci+|X@f)aBE_w- zW}ZYMFWgyMij%$IsYnh1_8JmmtMVLf!C#{79CAG(M^X+lm&-7Op+g4U;VS>45;DL z9MRxP_0t;6vN;Z0W1-Kc(t|O|D&-%n81#-TW!xw1tta_Lm_~-GD!Qp;`)^wBZ1kU2 zX&d?i?b=&$M#V6f6e_*`PxM)q&ck{L z-EJfzuiWt2>hNcwtHxFTg=g2Pb{v(iLu@6a?SH|+0sy72w=_&G3#=~L@_bU#%$f@^ z5fya5t;J@yJu7JkP?vD&)CuSoTjk?i<)^8_=QS-CXNz9Se`*99dN5m>e@q#peF&D6 zTlr~3b5uKx&V2RC@vcLy&<%tA{mir(vYj<>vOHYZOHCLR+eRwGd{J99%?a??3fPfn zsESP6C}&iKWtm}Xm{EIVqG?RL9<=4&C7?)pOJWW}UiD#}Jhn7%g`PNg{g4ozfPkUH zXw3`W4ht=EDW!qLM8LhO={7!1s*hZ=FpmJANS zS-nJ=+r3Tv5c&>FaN~1|8b710S-U(wnx_Q!-L`1>9Tc8rQ|N5UQYnL?hNR3QWj-8K zmjsBeK1F`q4gUR?pgw3$G^{C`r~;3L(1KvobsbD++&&@}r!Uv)^Sx9RR^Wq(W3F3& zp=Hp@MrJ`w2mf9$_WxmjMI>h3sJ~pzeV?!2l^c~aQjQ&(1udO)rqne!1hDFE^Mc-P zAjjxm;5xjbCkSsKdn(sPlY64_BPr{+RFI&Vg)cK+Ww|CayRVQc2T-5SpzU@60x-h> zb!$DF)Tdh<)CoWqxU-Q)xHF{63`?EZg zEWMkrgL;QCT5nYSN~%Zy=mWT4W8>bf;L0;*(%a>=luVn<9ZzZ+q+(dT8MnEPC;$VW z7p^gelZ{r3jPLXT^r>{eB33EX*^0Sw5=TF_?Yhvc?7fM>G2xp zLNcbb9?NOXIj&*L3XXbaAdG;V*|&`t3bY#P4LqiNjw4SW`Y@eV9GHJ?oqs6YyDRLx zT#u=0rvj zd7Ul7E*8TDe&z%W`q#q6b55ACp@EbIAYUl<9zN%rOciPQfrudZH(MUjsmJ@Qmi}%# zGf8b*B(VqTOnVL{rdV(0@y(f_M&VDfcjf^Z#L`c^2n==S4Q)8tKI6cJ`FMmr9b=NWzQ zq1CQm#bmOyf8HKj<4Y&gc@{I+W##ZE>Uu3>0Az>{R@qw8eRE;V2OVCHTA&%hB ztOQkdmzndb2)4k!pOPl;t0>htF1Z)Q`Ap@I4M}g^m2ADsJ`g`h)|E9RQF>fQo4Yj> z?}85ykZ=74Bk5C1Yd45I_&dKZ)glWexpMy+OysjW?IFe8qQK0)LVVS#8CN}pX%e`D z;oy#vk|aLOyd0Ct_*ou++%`AG<3_*aiR*f=!caT$Q#a+@U!P2!pIVH7U*N>F6%>{lC|5#uRk}D_#@wzn`c2jiJkCnL^73*^&;a zM@R(&X`dxW9lya@&nRX8M+6xS1C|0!uI`jeMbpZpwVhZejBYTB=7NP;L05?4O~B#K zPckpVX>L>b_&`#oSy{6(6k!HB`93jb4p&XA2$tM(9@}?IV#mk<;uO2m*(9O>5O6h1 zJhv3WbF38eHi(N@*=LP!aSb6u!H>4a#hQyvSXaMBR=pR)e43m6eVl#&)XzDm z18OsNUUfz`9%dP?&R-g_-rm5g-V?PuDGjTLnNyw>t)&k)F%#r(4o{6wk04WvkG%V?{sMFUf(SJAvw^BjMExn&=Fr{Kzai~CDAPt@&FoLT-9C{T zq&)O0^yl1WKWCsA#OE=oqSe2I9^6?92+tjo&nEN|yN?UNSVeuDIEJVft@t|Sn?%`F zYFb6-Mn+hCut2t&cxByCVH%g(Ny5?+^}PEjU2`|&mMSEf1Xk$kI+Np9aL;1sW@#D3 zmM&y&I$y5aWd`KdCv3BBX_XIpy8BA8T`r^LpnfIir8$&*1 zw-O{DSwxy4hDU}TSwg3kH%!NE6H6ASiH(J7p+2AgTJ!BFIEbP!>RT^o=B-8+A|-dP z#R-8Kt|Z+UJR(xW&uG}dBhxrb0$_Ocq4S~OT3Zz`u0iS(bn0?kBP$ zmQdjx{$s%9)i!R}F>d)KY&bskc-EjLlK^Bamh455iYiDO@D8EUldsy6RgySCn=e1gQWAN#PpvZ9x{xLd~R!T z=olfK6}^lRRWF7IfNh>xm8*W!X_R?!Qmr{seu=cpm~k_70EOAk7o5_`2#*$9`pBf{ zuEd>VG*AxwJ30UYK>fcVW2PZTuB5!CN5X3$h9qnldnr&4EVA7;Pwd}5gM@}YFn(zk zmS}jIS-``)Sn=kA=o$YLO3Z!TNc5_XN*_mp_;V`%MHu(fC)HC2DxD*;Nw_uiRV90yu1pq!XjX-Lx7g72y< z&WX3TT^*aoo3nFLiMQK#|#%mVeU+9C*!wRdE7dW6<4gYAgj+ZdvsTqlOa zd>J+3T3@G~vrnZ_q6g(kU|GHSbQ6Us*sB=aym4a*%pVUp(1Ha|E))%1DVcfM1 zqL(gsGfbG9YQD>nkS5T|#DwJA9Z2xj2>2V#O23MuC{u7wgT$tY*%Mvo=eL2P8E^!C zON_DFWx_>8AMrBsq)xAA`?sEWE3+>b=@9G6S0IKontI%+Q1Dan%Y@|QI}MsZqqDmKfK~#j&cf#=*f<{v)7tk6b_~$UuVfpGM*?8};ZpLzQ2Cedz}46;zFfEv*5&xC>VD z!rC*{?RDwj8_T)q@XFt_Zv7)&nCF$&ZcRBYbjS`ZD;?Od2YrHbpuH{|v!O4kU#0BA zZV|sC^C4UfE^74@*|^|P${QtS@b4&$(OJc>1fYKDN0bLQg84;nCfM}&DnL?%<(?X# z`Zy#Krl@_1ui3%j1eKUxI!uE6-%mjO8mE~W)Xwmbp|A~I{mqBq_ za`g)4+U!Psm~zvQSvBf8EN-S?FPq_(C=T=%IX@*_D=EU*DSNQqPC!=HS>ok?a@INV z6Ni~zv!Zy_GmJP)#;XM>+h}MKvjydEp(f{KwH6ri!Jgi573zlce>rh+G zbINn`Ww>=&;rtJjxq-zOEp@pvTxJ`4X&U6QMTYPs5#k6Pzrb6OYN}Yih`JK}VqIY1 zEiLp@fqR#F{E6Ec%<8T=CgSRyD(bY- zak8mPR))8><|)XnlP~7gj@$`!Oav|V*0V^Io>O4Fx|ft4#Lw(@M1dis;%r`AB28Cs zEJK`B@Vq399}T!zQnTv8bXwOO5Yg_isxuGNZ%(@P|q7>4pP! zD!a8I8ygC8GJ^bk8hH*kuSr#~I`8U35*I#~1iK;O4%fky0AA}Af$p)vHS|>3u){Hq z)VU+x{}oFY275sr71a(315u3<5$o+!6d;@Q>C|O(VpP8p79K(a;*f5O{y%iY9LH#8 zrLfSb-MOICy=B@T(+LMB9o-ac`q~UxtZFN$tvqQlV=v~c6m{OTnLWO}pO$NR$5~gk zEj1;>rr0rrQjW;Wsj?(`RXI1f2N%;@{?v|Hc^LI-V3}$P2GstmkfGpyeT55c@5BT< z>B3X>hqkh`h;7-g-lbR5S-mfJAyu5yu607N4Crtbt7vs&dK`TAD7iOMWa_679;pYG z$+kHg(B&p))C-jT3%iFCtnRd7nF%&=Vj-{ODBy~32e01ZsW@$GpPu64`#@BQzJR)5 zY-D3AFUs7RMa){S)XIKdv{cnaV`^8r=I3Gh{2S~y-XFu~!r8-W81mgbeyEIz?WxOq zWFv#}Byhyb$Qi_Weg4ZN4(JgtY|OAu);N`!3-0_kDN<+LPUrJ!7DEcF+q-6pPQT!-cz4Do%ABKQE3(rahokP9 z6o6*^EXZFUL5yRld81{Pm#|rWI9(2F_P^akD7;KpU{5A|EFqLDZ{V^MtCwBd*ZZ|` zCgtC2hCWSNKF+c-A&dscG6FT?rLOJ82mxAwKF_jhwijkmOCx(iTg05}go~&c!7wXn ztfp*1-X9ScYWy^dG!P+A*thyLuSHqA4hq0T)<%@PuP+z1{b~txMVP6ZNZZ0NmUL~? z9#-6xX#EE`lp*Ec^Z7CPZGJzu_P{v}Zi-+TjE!43&C=f`{etxq-!TL6Llk;99q%&` zAKT*bW*?6w-+Igl&~>X3NT2GXD69Vf4t_r{1lYsX7PQvBirWeoGkH>~rCrm3pY|hO zcJALdA6MpKZbAed^a9T~JARe2ebYmP4M_R|%>o#IW*?*S|kbr6qtC zOy*J)Ffq<-Sxr(_$&~=GlvDQ2ZgEA{;E2ZEpa}YE9&m3$(h(}$Hl18mMUjejmob28 z@|lxkT?Ha*BjIP+5Ao;i&wlkFvu=&kBowBc-6E^Dpe^Zh|5{kDV?DR9karbGy*k?~ zLS0d*;@dJL$3eeLj|>rkVA;>s^8g|1pvXg!-_cfymI&XTold z2#J?c?{FggtU0k*HMV=&@FaoBRJ6Y_>gtg{B#v(J-<{^x-Vv$U^<<_7gao zLF+mp1^vTGwd}|n4v<-Sh13XfCtzHQu}1@psN96I{=SZownA(FTLV{JbpP~oa)Be& zq$e`ScrNsE!O&D56!+3b%&<&J4@sMzqcA z4aNHPZxWNze&;iQ$y{VqhfnLymeY7ljpZU$Om$&lMK>-?z*_I(|GX6&SA{Sa7OC_5n6MuNHCFdBcl_&zjjHcsd3&5=LTOTE@ z$jU>J$Cz(kFyRg-28cD>Wjl~^kzFI~4la2N?SD)N(^|1RBYyY5ealiig4)qgxZa9D z+uo*UJnAGDb%Q33rEvTTACMl7uZA2CxMAtWdS3wqfU7>#e%#u#1h z{cI@eYWUCad)Y+4S$7IcL?WiQ_@?8J$bkhd8Q=`2DQ$iCtTEK2qG_1Ab5ii6f|TzM zO-Lgs*G5Xct-+_{CPaFQy*th9I1sBNg0FqM_*Pm1(l24NDtj!fcd=eh%;^2v!=GZJ z?4TRcHzqUq12y{f)NcJy^ysEr52=;k(*F0anUgi!(*!-V%umpS1vh-WwzG%#txpEl zx8pF+-;ZAJqhPBd6$<90fwJ8Gg6ubQom@O3b=jeqd44CMoM1q1V$F*WKQ`t4A6Jlt z$MkU`AQ(pFn%K!i3DJBW#=u+wga_ZoJV-rIsFAAz*whu1a-&P@V`omid=v$pQGj6i z8CB^bg=OwEii4zW87t8^(XAWA^Kq`sY(!Ihr`|#va8*aun84RO64A-AvRtvzjIgC7 zURE@x$r3DA+@WNbW4TojB^NB3c}Nq*tlmt$Mn?^#XY%smlgu(7Fw9&Z!=(z7>kuAK^dampnxUlO!+TIxI*^Xu(DCY)Cmgy}~n2}i|wdkMYS zAk`gzmI-`d*JV{CdQ$#}Kw7ysZ~(fROwu#vr3p-b!%I{Gx&nf0%y@e9I)RcU^90Py zd+yQ^x5DZby{v0^sNYdOt{_H0A3#(%Abky*YUPkXm5NkRce4#B{(8S>2J z!&G`7Ib#;%>Zz$U!-(mZexPe@EF5V*M~R4@kx_CYL>gnqul7VdKbz?dMREod9Yk~`Zw9%B}I?NGKFn-#_^ z;V4KP;#F;P#gO9_;-rOaNZ!uB5Tt@-+162tQ0uDTN&KS7J)-T68qPAW^n0J&PkZ-| zoj#klCwYMQA+G%YpSoGMB49x7G4$+C(y>iEU6Z!xr7F^EVmyW@WDo#qbrWq-3@`QY z^aD5J_AS&S)84VPzIYAclkJj;Y{S5UC$1E)Yy^K9RHoq32v_1d4=q*~ZIsI#M`FIJ z?)&#YSzTA0k{Wvz2jibWD5~f)9}FiGt2(^gs@L0oZb8Op;Cq zC^;Y*IUYoT9;V23Y=`emZypdy`4@`qS*qyn? zUQ%*GO&|n&F7^@V-oGFu?{sFhM61sJ!ZKeK_cY+_jQ$)yjm}Tn=j8uk4ZBRbA_0lj?d9tKj6-?M zB+Kw2d2xTYUQ{iNiftq=`3Qej1sw(v^Wlp0lLF&$z+JWYRp!3JiRrYXh2{7oeE6cB z)ESe7%&Sf(FBFyu=^!uy+&PA4#!LDJM_Vv1=4HDcmn_xbW^Iq^py+}IcCj$Blq9hJ z1+$}+mbSF$>xXC|#RbEz1+zM%S{HO^zQ{Q~oC6BVV?xY^$PE13i!y8~bj;ap&zNQs zvx!T}Y)GVr#6>6{3|H2}Wi#$?d4?|70hy{rIXTqc*G^CGu1idwe+D4Es_RE|)(1G` zkx@jZD8$3_6#2N(A0&$q3JU@1^Z=#(a)q{CVhZ5oS8gs zugwi|P}bolT0{DrfNL60#k&;>*MaPnCWeX02!5xN#oSlz`sX7rV2A92bsY!?XZ>&p zJw9VQC~D9K*HD9r3Hvm>FJ+K+rS@sZN)?-D72`kYvoP1|xfTImqUwIgwW1^ee5NUf zV>qmGL2$>dzN@rc)eH2>GOekaGU*>V{VuU_ZVn<%U~F1JDv-0PVV!sj5uX!jh-v>V zg*fUbh|eR(USFV9PBe7)42aHG=yVNWj0&UpF6S zvn>IFvejKKEW70v^qU8?UtYjrzvVrO33;2v1DF47Lk^=cmjVyvr^(E|A;c`HoL~~g zmST-)WAz zdqzQJc1WI}*03^AWb14z!!w0DRx}*t29&+NKK=yMrbns;^%|Axxv z2V>$NPJn1W)DgU=&l>KpWW_C!-sBNMmvi=`^qeI!qZHc~2Z1=H$Fc|Z1HG2>wkD!i zhZRr@1@h@akkL?~AM8t<)_gZja-*H{QDM=R+k~>^O1eimQc)j>NibF~X7o%Wo6)IZ z?ZH{3fy*%hHnOyr*GAKY9{Yl;NvHp-Nny8AwZ6)Z+y)GgliHdZ7~{oxQ~&WEECp;u zsu7-gc--W-T!oW@#8HCFY7T@6CKyy>Bz;W0Hb!134fbp3z6b0%Q=A8gxx~+<+Zvkc z@t05~bB?aQtDuZTKIl(K=q10Fvtoz+nAza4(wh0z2YX=mY<(}6Zb;`18cRy^^7i1UI76nTa-|@lWRKh!q z?bS-70V8hpy=3Dd5&Xc4lpHL=9jieX2AG6G;}Wpo7t{lF5XYZ%HgZlMbKVAC_N$p- zP&v;(A5@skmohsWn!ZxfOKPZtp?X+r+;T2Fha9>C@wMarWr|{NyV>GLGJi1SfE2Rg zalD@_60I+>{+2r))Zb$QR$jIy9SSyMU5bPd`1zLX4S%r^ecUfJTTnl>`py1qZJUg6 z5{>CsOp4aibrc$x@)BnN66({=|G*Ym#fIl!HwBP?Tjrdp$u2USj`Z+E;B_@1BvWss z+8;LBHS_|P*KyD~`IM?(5Z4!_Rwgs_Tga}}^Iv^z4rgAWEA(Nxe z6q*Y2En6866o(7Z($saovC{$4v!n6ZtgI&SCxSjmE{W5|*PE-rbU6WcXgr%q4p9&( zeYfAuIN&T`bp{`^5N*GC%7tbOoAj^57U~6#i&MihLIij-Dmx3QpXWCFjxDZiKf>Q-?fTBx1MR;?rlul+h-y}qV8X9U}Rp34{ zQeCV0n@ahS;ztF1GpYh+6CkVJA(Ak1iDvC+#4mT0>Jy0_Qq!sq<(%pQGIZ=&2V}PV zziuc0YxlP<`QZU^GBfNI5SC7ub&e>CH`n4**?R{wEqQQ)uf6E^qA%wLtqK5;r1Uea zxLKx26#tu~tDMxh*R8*@R~8`#>`(GO_$i8f=U{NP`(be->DV+Z3K3PpL-nBe;k^!W zd_gR0DXL|EZ;9JN=lXN5pE9ws>duZJ_i&e#Jakh8N(xq4P0VrY`4q=%{v9zUQy=e+j|-=9@oqw z>ov?bBWp;Pku53sLPjSo@p;MJadsJzVc2~ctYu= z#x{Glq7G*F+Jx~%knGo8PPec>!XsvsThO70IffH6K{5<~baryp!!-8k)&t2{0|Bpp z(X>G>TMoK;dm-10JS6Q3_6)svV%hV`YJuV^yP)2yeeJXL?^n)Uvk0iMx?BM|B2 zc)^}ZBkRmWZBt7g{{+E5K|LWLIcIRw4=HE=e!&uY;`FG-fTnxPLS40#AXF|2-;i{h z{Y2&epIyuFJbs?xlz?eXl=BH8ZTJ1QSH~#RKXFaww3tvsLw9Pt2oBtKN8wdwihn^8 z_-+n=fzeyMH;nFuluI99(}@GRkqdO4*eGfFAH1>jZixfe zV#@e-CV`9*b@IA>L$rAbSWLk7wRgx`+$C*wRDiIsy9!(J{F_+PuK`moUAg3}x*wqf z#edn<$PYWOH4Pq^g-)yz{oHc=eoKI62aIV7Z~yiAj0j(BWMR$AtR$K`EK21PoS17< zNbIDZVWys5*pI0)=W$1&iGl71T(n}R2EXC#PW1VLl|qmxGAgQvwwrx^=P3(ABqaG~ zTuB+Fk=^2IEKtjDu0Jrzx^JQVfBDC$wTaslG~i=O8u8}mB7N zyF!LFTK1bbH%C3(n&WA1*t;V}W!h*#8w@_p19||+m0)M54a@dUGiJ1*KH{8koFXYm zl5TUVs)<@`8@f35u!QtoLR5dck9@6*D;g2MOyKnXZszy;N~zw!hw=xp;P<;k++{>r zCrXqm3JOYq-H|~mBDf=+%T2g1tTW~W9Vh+04O~g$B03A19kbm`%p1?RL?#MSpP2_P zdcdRx$DwN^(PVQ3MiG$0EfgiKunT+h6Q}1g6PUCe5$qmz#n}tjK_3Sc&d4%1mIGuO zB2GT8)Bujr&X=I?M+DNn*D)WtuH0W@9;wa5EAW^^eUe1;=dA+b3=$xvR0jKRO_>}q z_iGe8h-BBVl)K$wr!mPB^Y_HCbarMkSbFc!!&lvElX*Uz2}Fk7 zG|UmRu@1q{Zhw1M>wA!o#~~7g4fX52uP#qj9MH?*UJ1CZ%a*i}Q2}uUOc=vO+)MR2 zQ7US>ZsYkms_@R#XotDuN8LYJ;ang=Dcw?egZJkDQ*jp4fLw`WLav?T<-CCH$ul!l z+dXqHjycgMc8X2)2x(vf>Ml)%Mqh8# zsYZRh7GeJ}_TSE_23Ug1-Rc>@ntRTGF23a~_a>_{y4v8NO}OZUt40ULGTQd>j$| zIha;U8}t%9Miwnn%fIP2KHaxnl*a~ZL?T0{0I`orNWd|O-zJDqmFMQ zGWQYX42ty=FlAFa{BO4rVPRG?F{`IQJh1f?u^aun>HljQg}3uYZoj;pqDc7h_kunh z&;gO8;jZRsfCTO8JTTa3{YldQ`<8_-|WY4F?+*pH=_dy!uuEZ{rn7$ z4&HG@-8lB|npF-KVnr%lv@MYEv1wvnw9SjL6{Xo%JLd8R_3?njiY1&$w~+I~Kj7-* zPX6gwRY?^A{Zf>&EPkj_k*K-`h>nIkq=A_>iLryv=7`w*H+J2#uXFE?``*r3q6_C* zvNx#YZo5|7T8@1yah!~N#w{>FT$~iui%>`}eB;Ae#61zq)V=4Khg9uKpcGj2WMs6q zqg8*LpT}XxoQpF*#mu4@w%HrOyY-kr{l#gqKyM=9$djI;W|AR~!GqYj)ZiISA4*jq z`GoRMPJ4KMlb~b!DkbOYRD#&Z`JGvRy)~)adnBy^Q5HTbLw{)^NZK(f_RS~x3o4ZQ z-+WrmlYidIOW~2v(8a>bd_Fxhy=fO^-h#OLK{#Zu_5UB}MnM>I6i9SxG$j%zRL4vv zY0{ig$I*QQe|!A=d3_F+S$vdlu!Yk)pP(w5BtV^c0DyvKrQEs-O!>z4;zLkxs@!ay_K`~d@ z;rbo`%(5qwJHUIF5*4e9rcre4eKRfT6-uRd|3@(^yF`}K+ZJ!8rMYHO8E==-^bnVC z07~O9Dp&joAQezpB7VI$xth^#XD@EX&?M|am$$T!y_o*?3A81m6>3mcD_^^NRdJLq zV--d6)22S-3}4Swv41Ri_e1)iMqh{cBA=SZJM$9!tj~_xS%{La*vt7u@cjj{2dt;{ zmMZ6+Tdn~CgiB!IFzc?b{0AxpnVYag`AE~!3>i8dEdWEr_Uc!~qHtga&|w>Lo9mY+ zkZ1IGS3_1$T8NF%%-|Evl_0kys`iqP<>FxP=fQ%EiK=g^Iq=7$lDfufML#qB;3FNt z5u90x54X7U7?jFaRfB93aQO$Leh_co%&yq)K|=yg?OnYH(rgXS;{EYL*J)yX&KjY$ zJ6Kz!hWuq5_Wd$MU}2W9Bjy<6|p;}3J0;<|y5?tmDI&2x` zr4o6X1!oQ>cRr%zoPtSkUijH9tf*BDe+0`%7+G#5Joouwjjis^EA5(x$3?u(=pvv& z;78&QA@ana_m&5pHVu*-A(6^J;+%_kXI2^;aJCxCjPT)bu5tU`$*sm2Q;ThpF5Fk{ z-=>Qf3fPkFImX^~Jt_&DbRVvpqev;cAsFVI?8N^ty`S$u zAC@&4jPuXK%LyO$`Hp3om7TwIX1>d=lq)>+1O|Ahc?6~>q~v=gj+!FGwxJyLb|abp zdXZYOqlhmg_*Bv2xAYQ4xw3(Wz8~`i;xdxPxQM&!)W`cD8tAYlA2DKh?zgQ^=dJ51 zR9%Wp)eJKGrq}-SR+6IY2q=Mb$1EadH9ibTIvE)|1m``W&@QK{={8gOS14jWQ?x-S zXSudX%b3eZhY`+fK!4qwXWuwi_FSSplzqh@$%H|FP4>;1ng&Jk+ zV~Z=#0|gTVRz(ghm0$K=5&dWq5v%V%bsM0FD&_zHQ`FUJ<@wUaa*#QlJ9e?sh-i&b zLs?@V^^&b=kfQ=*j7_Jp#sd2yGecGGrTv~5?KE!S1omdElxKg!MTx1_7qo)yuPE+b z$WL@L_9w}D1wPsC9Q6}Xzi@q}@^?)E6qe%2!>Ukw_YMIt_Aptg!W@UzBUNg81T-Tn z#LL+yfy=I-lo=s}bXz6BBtKtW5j?V=Mv`9@O$I3>P1htS%GSOcw>;v;;U~nc^}n)5Pnb9VPsUlZv;0*F7bWin30D#gYQ}%iYzj*rQ#+FCu5N{5b+4hD z%>MlhJ=SUD$Iu?|Wc@0HDI;DcsMk+uTUnbdPDyv*^jFgR6$hLk)>bdr_@B zw|~%1lDTAV5z54THm>I^JCJ9l0_XPN4c#eNZX5e3Lvp@9|i2HA-90H zX63)LYpOTZ71KJUyuM0Y!Q~?XgN(=NwPJv)kUhtTWTvrF^^Qc+C|CS{h% zM>I%P7C}+y*ME%3?K1@Md4V_n;%WTD1LJ}N*O4sT$u9jPJj6nOVkLGPC{X;keLy$M z4a?au5yI|TDjwP0H4nXWF)z<+4}ysH5!Mi_TcG2MF zq5+d8NEsU=@HS}SXUERREsI_RS|2><$pZ44_yp9kWA{IpC3L!~tN!ok3v_|d-o_QB zx1uc)0B)pWQI_sksQ|Itl7q&J+-F_)evGK;vn>9=7{-NRZC>q&;i_|PH|t^31jVFc zovW9RdMj9%XwPj8vLl|SN*9<}*#XZrE!ddZKD{aqXm>^widFh|)-bE1UG{Z=^j?HF z+SMf1A}eD#vS&Gc+C&nhgQXpHV;MVl9ym1rtDE-+Q)pjd?&ag4znxZUyK5gx4Fp&cuN#H31Rl|O{{K?0#c%Fu1J|26dR`0_{jpmy(DV>Hs(3zX_6jG&Jx2(3v&kO7SlX8E#;%;y-nu> zfi-d-&s)*0p`J9s5JprTN(%+_p^6P5JKE#cc|+fCx!-fOH{_$gjh6vq1=`z!pn^Vy z1wcR%Uc;k`I%&Ih!WxBtCc*e+uB^2x+ zRyaY$R=4>Td{_SkZbwsUtQ5dXxPIi<+WX{$>h;s)Pmdi7DUnmGxwH>fDhwwUgxV$~ zV2f?dVhj#Np*UsJ@0})outwhPGV5{s#Y*YZ9vw~AEJ0EsJW!Uc&YC>k}t1}+ieQpoTF zQqv|)?Q`w;>3tg8PNa-mYZw#mPDj>n3V`~F6nsTJYhjE zYSJHb16X#^g`ElO>=ZEGL6O%${fyxI<-%W8jlU){?G+ZBZz6f{K!VP198h3seEjRV zI^@hFjS%QeYM!I8tN#CMS`ytRT#;wbZ@a*9Y*9++($mg`8gxImhcIGnO;9llOJ5BU z7y&GvF`f|%l+PR@dZQL;1ecc=yEjUd(1(5wGA6LKswLsXxXo@9esHbC5GD@n={Sg< zYbO9@q}MGFUJ^@Ax$LrHp!Z!>zSerCBZe9+c`?)Vr%A5$A(oO^ycO>Haxe4vAzp{( zwdO(j$q_=SffjlXV=s4g0*CJflYmSillMzThX4rCZx>!QQ?o$^){%Xg=C4v70^B4b z2@|1pcn`yFyIa%!b^+6opmK<{E79R!PiD|QaysKL^s>@43FmeDO>h0y))izFtm-nW z>xrI!YhxM8Bb&9A_tt~=X}qO7&t0p3Rp@iT){T}^rEs<^mAv1RO|aR`8Y~=bb_;QtK8}z`X%Mo|`(DD~ z7!xnMRc4l>r`Hc`j3h5uoHp|ep>g-hbNtkjG= z_OIdwxMB2fV$(CxFQ$pBSr*Q#dWOXBJ)aQIt`uYAPLJpzSl6T=&QNTHyXkC&8HPYj zE&ZQVB5}KI5~Gjcx-q?1?ej98C+&!r?7NGsJU{hke_CxBBQ_kZk{V`4SR9<3Iexz(&L@b=BYh>Qd@dvzfX15f zye02EpR-J`e>&)7>7L(--Y#ULnK;3qnUK9> zYaItr+<4S{N8OHdLhBZ;S2-Q&cq2NBq%jE-*O)n0xA@4a+-qLY&bRLw|GYjK>ANRh z*|e+X7Rhjb>98}sc(y~i8;YX4H759)@)hNV1#f={_J!~@}vMa8#g!2Ike$e4Nk&R}_zp3U42XtRytSlF1;b9gHzg={3k_+)^O*7^&o{#2?iG z#+Uj+3CU(%en*GAr9BPQyy@Cfgz$zd%%^XUEv9idA26I&_J(UFvBp5r4EXoAYNMz` zxF-^;rDT&kd=h&IZ=Dc&;aII?SG{4qV{FZAzBD6C(nQF#dqJ39$HVMGZivzC$wxi5 z(#PeJ#^?byY+2rRse{Qwvx>ck86-LHftcO6X2P~P#r0nHEuXN@x=UwHClvV9~}OM8rM92hdHQX-lkJtN@V7A znu9p+vV%+N2TT?%S)}Lk#D^%{4wj=SY?0cRGa?8%6+6{EI)&>7nWJWAXVj0Tj zle)waW4zc54jptr_fC>BwrLD&C&aNO{mg+Kmg>qK3ya7(h56I}fl+`Ah`&qF36Yg%IjR>ml-^PK z^R$U~o^F_Y$@atloITQdj`0>-$p5f>JEj`-t+V_mRPF6lHSNke7w@odvvvremwTDn zOAO8=tYYr|#3iCtDSKq&6qVkZK#lbYLO(scR zVhO(4a`&UM0N(z&Oh?#x!Ofuk5gl!tuA&c+j}9Jh>uFs}bCkCwcj<8Mg;1B%)xLW1 zY<$&P2U#hTz*f&>0G10huJ6d?U+mh%98%+dp{i1F_-R8Hn)nC{44lrRU!tv>AQaLa3$2HWO$P-(l-ZlXwQCE@KxE z5)*XR>C3q<(^M4ihS_B^J6 z)^)nO@NY7SeVLUmUV6a$hsTY%WL}WKy)ws6k0uVVfF|4N`x?&P!$4UOaf`7)3X)2Pq! zzk4`#FG#Fz^K%AXCuhevv_C@`LZtrds3q({SS*=Os7rJm@z{F!&2~TzQ?{PE_;^rW z=z$;(WW2Yo^3M!ys(ZUL+!gdR0StP)uc>RcizNM0t@vdXK+A)P_i_N+uC3+|AaI92zZJ!cF5i6UJdik;_zNSQag9IN`8%w=cJEJ(ui$ zy}oyaQmNnuT{-1Rv~%H=OEaT(Qf(&`%DaA++<5jvs(;@z1B_ae@NfPr;X2eiQ5G!M zuoTKdF85nzivt@m+D_aZ>~-2QYC&j9Don7OV6wGggx-1pa3keuq(P1|cfC(^NQ_ol zF$Tq7H<)d+yX~w#xrnWz)EwbAFam0|TlKt@-U)g$`|R9Ont_w+sn2?4I|om$ORgP3 z-}{iMudqs1vwv~ApA7Yoe7Cp2p+!)j`)M?~urw;?2*t6~n70=gDY{s^eLXz{#q$tc zi*G~xZU3|^%1d4L0bpKH#oW$Vo)1ORh{5C%;YonkCC6MqdGWz(9H8}?^d0B4iC(Oq zvc{O?l;Nz|-ztl?ai^X0=ihjW6BB%OO1k0>CCrc)L|Yj7*Pm;fE)9gQCrfynmyUK` z$GX5cqyXzvx*DDzJE(#6gJc+- zG(uAbX`HF70yu#Onu_)%_&u4#7y9davQQWt!lOP7ekOloC@>d zK6aDDr9OsUBKwKwk)qIR#mw$lvV_emqzaO26fb1D zlvmJyICk>DyUCOE-ioLcG5ffuVdnw^zDF!*hJ%LNHZ5M|th3f2zpa!_Yh}`^Wc+6c z=gHwEd))IzQClvTBCp2}x0p+U`}OV9z&?%5WFm_Al!l5PRw%DMHh^|dO9i_~>Q&uK z8Z6H9OyvQDtVvi$)##ES*niUWRB?AchKZ@SKks-m_f6t;o|Akg5AhF z=A$#4Q6tuU$5HsYGJ&nL2b-+g!u2~raY@lN%#x}9%;&1>3%Ep#Bf8(&qiB$qNcoM! z&^_??YxVBujr-ON6~(mV?oob7XRotgj+@*#;6t!jC!wmwl7Lz+2uNu?j(Yi`%Wnxxv8?>ma(<7-oC+%Z%;`6|ZK5GXg zWaMVpq{PY+H)B-!tJt9QgB-bd2Fg?DQa7(7T?Ec>&884zUFo;EiM0iU;z>L-j4HDR zMX0yWnR;<%!6@vE$Gb=8l(#5&)wRJ)fmK8%G#WGSqL%g|7?EYmHm-{WOb9sD?e`VD z%#7N81s<)@u(W9n&9VOx6bVS3exjm2gs7@8(B&I}Psy{E2AVVO?TL=Oeu!Y-!e*R! zKIA)bXh*B+rZElrFqtK0XV9A+Bo1$B0ift^AW0B6r;Fre8!Zn@zRKSLi;zc$q0`O{ z#(4>KV6Ua%XLlehwmb2!J`VnMw?IqoV*eqKw>V+pk6A`fE2CS&QQ!3pgnQ)gBbIqd zv=o$@%Uh{;1Cqf7aC!6T+f$Q_qinBV`;}1(y+!*&ufEGlTP`5-d^o#h%IPOpKRaXs zZ|AV|wG=O3Gu*pX6^kbIPXQf88dJsW>r|LN&G1)_S1vhvPJSahHp;47s9DJLbHjim zs_gxrFV@M%wKBl{O&xeam*4toV%SU#TZUfz6MYCjTdThA;)x1CpSaggr?*?L+q9IF z3r{ncS0!4gB*sMavKYbYMFEy)>#2WclN$3BDPpMD`-+7}Xi^V2G(RA^M8ty!)b2xX z1Rkf=3QCd)ZVBuIC1kK3ifj%6@3d%&A#U`Z^hn2#vnVXQsxYcmO%H2Nhpu6C#N2}4 z9T9go1!2m|3XH*k@QB`^b9wNq+<^WPJF{esFxi)+sR6W>TE(DPG%5mu*l;WHK6`ia)pmOBNdn zAH&SlhQmirk-;d%yPzM?eLQS75VS@O8#r`-uzT7)ITFv1K3BWnf z;^Uc*S5*f}Dix)fAm@UY*!hseZ6ZzKI-VX43`BXZZmW>X5o@yi6w6`l{UA~#3mt_)Y8U^^`mvDkI`o@~vR-g36W@8$rPm=HDRRYpovCtr) zh`(YgA<08saG&)=V?Ml3Ys>{fc!`f{BJhUNu=_ry9lLu$YS2!FLlsnV=Ci`NDPpHX zbXmYhcSYvzXFo>Loy;?LR_8xys0>J741OyUcxl|&VRoo@Hys*o{ic(KLirZ$21$D_ zp*))tclgDdZ+sL{61F|D!q<7G=7gddEq`Gx2SCQhzsh*$DFxBWL z^oZpm$P8A&f7O``d|8l#jY8HPT0qQTw{b{r#8nzNZdq>Oc-odXt4eWlc56 zW)ObEeot=0mB32TiZ606HA_WKHJ=ZoO zMlSwV$L5~e4*=qq@^IqZi43w5lPNvzaJg9vY*H){NeVnglfIL9E!)%^`Bun z7u;``7jR%HNPD)bav@(ZcdJIlqy(Wgq+EETnc6roLdIz!N=(f%54rh_XyW&zMJSS(I z7gkH9iBZy8t-*oJ@K51{4$!5)*>ECKI6QClIqP^jDYm!hts;DSYJG3g4w<=3capOQ;Gz#nQAq zN@it2zc}CdiPAsYfNWnXzriZE7|PNSuVl)2NQKB{jN_%lH)Lro9S|eai?ICd z(oE@~-4yv6!Uip`PDKS`oE4g-B}p-%KghqBijD%~_h&QNPJ-9fo(B8ofLeCYQYBar z+UajTq%x7WtrT49Iy@7gec%-sER#i;?=UFnO-eglfL@IR3zr8px6H3**Tg+jIL$?R zE9;eoKMJ(*!6*iy5AEy0ekHvZ*LuMmRUY>g>Gpc;ugG7kqq3c|MjsWEA?d}HvycIb zl(;>`D{R{!*^6^LIFkJW@E+;T0+ZyBo!SyH!7R&ufLrS@Ep46JCYm^n%TdYRPLd>7 zj>g492l}r{1(gLm0<$~=2hj@qO`j$&8?|i^6dq%GTMqfC@WX6#P$6|T_2=2F`_%(H zxHgf#t-M;Jnx>1aQm^0xT6=rq8qcb&5L7eTSIQ>-kH=rnvDWS9oUptr(=&lVV8hHD z&UW+lt)c*etinLuiHf;%@-2{?{Ok|!%T$v?Zx^fa`=FB37F}*5SDWd#CUx^{5?e8L dx9%6Zmt@^xK9$Zo{Et%rqR0{7IrEl<<~y_uTnGRF literal 0 HcmV?d00001 diff --git a/MikroNUC/20260430/20260430164001-Config.rsc b/MikroNUC/20260430/20260430164001-Config.rsc new file mode 100644 index 0000000..ceb40db --- /dev/null +++ b/MikroNUC/20260430/20260430164001-Config.rsc @@ -0,0 +1,3284 @@ +# 2026-04-30 16:40:01 by RouterOS 7.22.1 +# system id = NmJcEM+8XAP +# +/caps-man channel +add band=2ghz-g/n extension-channel=disabled frequency=2422 name=2G-3 \ + reselect-interval=20m save-selected=yes +add band=5ghz-a/n/ac extension-channel=XXXX frequency=5660 name=5G-5660 \ + save-selected=yes +add band=5ghz-a/n/ac extension-channel=XXXXXXXX frequency=5160,5200,5280 \ + name=5G-5160-5280 reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5180 name=5G-36 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5200 name=5G-40 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5220 name=5G-44 \ + reselect-interval=30m save-selected=yes +add band=5ghz-n/ac extension-channel=XXXX frequency=5240 name=5G-48 \ + reselect-interval=30m save-selected=yes +add band=2ghz-g/n extension-channel=disabled frequency=2442 name=2G-7 \ + reselect-interval=20m save-selected=yes +add band=2ghz-g/n extension-channel=disabled frequency=2462 name=2G-11 \ + reselect-interval=20m save-selected=yes +/interface bridge +add name=Bridge-DOC +add name=Bridge-LAN port-cost-mode=short +/interface ethernet +set [ find default-name=ether1 ] disable-running-check=no name=ether2 +/interface veth +add address=172.18.20.6/30 container-mac-address=00:00:00:00:00:00 dhcp=no \ + gateway=172.18.20.5 gateway6="" name=docker-xray-vless-veth +add address=10.10.10.10/24 container-mac-address=5C:26:FE:05:6F:12 dhcp=no \ + gateway=10.10.10.1 gateway6="" mac-address=5C:26:FE:05:6F:11 name=veth1 +/caps-man datapath +add bridge=Bridge-LAN client-to-client-forwarding=yes local-forwarding=yes \ + name=xs-DataPath +add bridge=Bridge-LAN client-to-client-forwarding=yes local-forwarding=yes \ + name=DataPath +/caps-man security +add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \ + group-key-update=30m name=xs-Sec +add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \ + group-key-update=30m name=WPA2 +/caps-man configuration +add channel.band=2ghz-b/g/n country=no_country_set datapath=xs-DataPath mode=\ + ap name=xs-2G rx-chains=0,1,2,3 security=xs-Sec ssid=vados tx-chains=\ + 0,1,2,3 +add channel.band=5ghz-a/n/ac country=no_country_set datapath=xs-DataPath \ + installation=any mode=ap name=xs-5G rx-chains=0,1,2,3 security=xs-Sec \ + ssid=vados5g tx-chains=0,1,2,3 +add channel.band=2ghz-b/g/n .control-channel-width=20mhz .extension-channel=\ + XX .frequency=2422,2442,2462 .reselect-interval=20m country=belarus \ + datapath=DataPath datapath.client-to-client-forwarding=yes \ + .local-forwarding=yes hw-protection-mode=rts-cts installation=any name=2G \ + rx-chains=0,1,2,3 security=WPA2 ssid=vados tx-chains=0,1,2,3 +add channel.band=5ghz-a/n/ac .control-channel-width=20mhz .extension-channel=\ + XXXX .frequency=5180,5200,5220,5240,5260 .reselect-interval=20m \ + .skip-dfs-channels=yes country=belarus datapath=DataPath \ + datapath.client-to-client-forwarding=yes .local-forwarding=yes \ + hw-protection-mode=rts-cts installation=any name=5G security=WPA2 ssid=\ + vados5g +/disk +add slot=tmpfs tmpfs-max-size=715827882 type=tmpfs +/interface list +add include=dynamic,static name=LAN +/interface wireless security-profiles +set [ find default=yes ] supplicant-identity=MikroMIC +/ip dhcp-server option +add code=12 name=HostName +add code=119 force=yes name=domain-search-list value="0x03'WORKGROUP'0x00" +/ip dhcp-server option sets +add name=P1505n options=HostName +add name=StartLife1 options=HostName +add name=amsterDev options=HostName +add name=MiTV options=HostName +add name=miller options=HostName +add name=amster options=HostName +add name=garage options=HostName +add name=domain-search-set options=domain-search-list +/ip pool +add name=dhcp ranges=10.30.30.150-10.30.30.200 +/system logging action +add email-start-tls=yes email-to=vados@vados.ru name=email target=email +/system script +add dont-require-permissions=no name=test owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + \r\ + \n#:local ScriptName [ :jobname ];\r\ + \n:local expSrc;\r\ + \n:local FileName;\r\ + \n:local FilePath;\r\ + \n:local DirPath \"tmpfs/\";\r\ + \n:global WaitForFile;\r\ + \n:global IfThenElse;\r\ + \n\r\ + \n:foreach Script in=([ /system/script find where name~\"Amster-GlobalConf\ + *\" ]) do={\r\ + \n:local ScriptVal [ /system/script/get \$Script ];\r\ + \n\r\ + \n:local expName [ (\$ScriptVal->\"name\") ];\r\ + \n#[/system/script get \$expScript name];\r\ + \n:delay 2s;\r\ + \n\r\ + \n:set expSrc [/system/script print where name=\$expName];\r\ + \n/system/script print where name=\$expName;\r\ + \n#[:put [/system/script get \$expScript source]];\r\ + \n:put [\$expSrc];\r\ + \n:delay 2s;\r\ + \n:set FileName \$expName;\r\ + \n:set FilePath (\$DirPath . \$FileName);\r\ + \n\r\ + \n#:log warning \"\\n----------------------\\n\\\$expSrc = \$expSrc\\n____\ + ______________________________\";\r\ + \n:log info \"\\n\\\$FileName = '\$FileName'\";\r\ + \n:log info \"\\n\\\$FilePath = \$FilePath\";\r\ + \n#:log warning {/system/script/get source=[/system/script/get \$expScript\ + \_source];};\r\ + \n\r\ + \n#\$[/system script get [/system script find name=\"\$FileName\"] source]\ + \r\ + \n\r\ + \n#:local gettingScript \"\$FileName\";\r\ + \n#:execute script=\"[[:parse \\\"[:parse { :put (\"\$[/system script get \ + [/system script find name=\$FileName] source]\"); } \\\"]]\"; \\\r\ + \n\r\ + \n#:execute script={:put \"[:parse \\\"[:parse [/system/script get [/syste\ + m/script find name=\$gettingScript] source];\\\"]]\";} \\\r\ + \n# file=(\$FilePath . \".rsc\\00\");\r\ + \n:do {\r\ + \n:local fName (\$FilePath . \".rsc\");\r\ + \n#:delay 3s;\r\ + \n#/file add name=\$fName;\r\ + \n:put [:tostr [\$expSrc]];\r\ + \n/file set \$fName contents=[:put [\$expSrc]];\r\ + \n:delay 3s;\r\ + \n\$WaitForFile \$fName;\r\ + \n(\$FilePath . \".rsc\");\r\ + \n#:delay 2s;\r\ + \n\r\ + \n} on-error={\r\ + \n:log error \"\\nERROR \\\$FilePath = \$FilePath\";\r\ + \n}\r\ + \n#\$WaitForFile (\$FilePath . \".rsc\");\r\ + \n#:execute script={ :put [/system/script get [:put \$FileName] source]; }\ + ;\r\ + \n#/system/script export \$Sscript file=\$FilePath;\r\ + \n#/system/script/export [:put [/system/script/get \$expScript source]] fi\ + le=\$FilePath;\r\ + \n#:execute script={ :put [/system/script/get \$expScript source]; } \\\r\ + \n\r\ + \n#:log warning \"\\n\\\$expScript = \$expScript\";\r\ + \n# \\\r\ + \n# file=(\$FilePath . \".rsc\\00\");\r\ + \n#script={:put [/system/script/get \$FileName source];} file=(\$FilePath\ + \_. \".rsc\\00\");\r\ + \n#/system script export \$src file=(\$FilePath . \$FileName);\r\ + \n}\r\ + \n\r\ + \n:log warning \"\\nComplete!\";\r\ + \n\r\ + \n # :execute script={ :put [ /system/script/get Amster-GlobalConfig sou\ + rce ]; } \\\r\ + \n # file=(\$FilePath . \".conf\\00\");\r\ + \n # \$WaitForFile (\$FilePath . \".conf\");\r\ + \n # :onerror Err {\r\ + \n # /tool/fetch upload=yes url=(\$BackupUploadUrl . \"/\" . \$FileName\ + \_. \".conf\") \\\r\ + \n # user=\$BackupUploadUser password=\$BackupUploadPass src-path=(\ + \$FilePath . \".conf\");\r\ + \n # :set ConfigFile [ /file/get (\$FilePath . \".conf\") ];\r\ + \n # :set (\$ConfigFile->\"name\") (\$FileName . \".conf\");\r\ + \n " +add dont-require-permissions=no name=test1 owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="\ + \r\ + \n#:local runningVer [:find [/system/resource/get version] \"(\"];\r\ + \n\r\ + \n:local runningChannel;\r\ + \n:local runningVersion;\r\ + \n:local ParseCustom;\r\ + \n\r\ + \n:set ParseCustom do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Start [:find [ \$Str ] [:tostr \$2]];\r\ + \n :local End [ :tostr \$3 ];\r\ + \n :local Num [ :tonum \$4 ];\r\ + \n :local Return;\r\ + \n\r\ + \n :if ([:len \$Num] = 0) do={:set Num \"0\"}\r\ + \n :local rest [:pick \$Str (\$Start+\$Num) [:len \$Str]]; \r\ + \n :if ([:len \$End ] = 0) do={:set Return [:pick \$Str \$Num \$Start]} e\ + lse={\r\ + \n :set End [:find \$rest \$End];\r\ + \n :set Return [:pick \$rest 0 \$End];\r\ + \n }\r\ + \n:return \$Return;\r\ + \n}\r\ + \n \r\ + \n:global runningChannel [\$ParseCustom [/system/resource/get version] \"(\ + \" \")\" 1];\r\ + \n:log warning [\$runningChannel];\r\ + \n:set runningVersion [\$ParseCustom [/system/resource/get version] \" \" \ + \")\" 2];\r\ + \n:log warning [\$runningVersion];\r\ + \n\r\ + \n\r\ + \n\r\ + \n# :if ([:len \$open] = 0) do={\r\ + \n# :log error \"\$SMP Could not extract installed OS channel from vers\ + ion string: `\$runningOsAndChannel`.\";\r\ + \n# :error \"\$SMP error, check logs\";\r\ + \n# }\r\ + \n# :local rest [:pick \$runningOsAndChannel (\$open+1) [:len \$runningOs\ + AndChannel]];\r\ + \n# :local close [:find \$rest \")\"];\r\ + \n# :local channel [:pick \$rest 0 \$close];\r\ + \n# :return \$channel;\r\ + \n#}" +add dont-require-permissions=no name=01-Amster-Init-Script owner=vados \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="# Amster Initial Script\r\ + \n#\r\ + \n#:global GlobalEnvRemove true; /system/script {run Amster-GlobalEnvRemov\ + e; };\r\ + \n#:delay 1s;\r\ + \n:#global ReloadGlobal true; \r\ + \n\r\ + \n:global AmScriptsUrl \"https://ros.vados.ru/\";\r\ + \n:global defOwner \"vados\";\r\ + \n:global AmFirstRun;\r\ + \n\r\ + \n:set AmFirstRun do={\r\ + \n :global AmScriptsUrl;\r\ + \n :global defOwner;\r\ + \n #:global ParseKeyValueStore;\r\ + \n #:local AmUpdCRLF true;\r\ + \n #:local IfThenElse;\r\ + \n #:set IfThenElse do={:if ([ :tostr \$1 ] = \"true\" || [ :tobool \$1\ + \_] = true) do={:return \$2}; :return \$3}\r\ + \n #/certificate/settings/set builtin-trust-store=fetch;\r\ + \n #/tool/fetch \"\$scriptsUrl/certs/Root-YE.pem\" dst-path=\"root-ye.p\ + em\";\r\ + \n #/certificate/import file-name=\"root-ye.pem\" passphrase=\"\";\r\ + \n # For basic verification we rename the certificate and print it by f\ + ingerprint. Make sure exactly this one certificate (\"Root-YE\") is shown.\ + \r\ + \n #/certificate/set name=\"Root-YE\" [ find where common-name=\"Root Y\ + E\" ];\r\ + \n #/certificate/print proplist=name,fingerprint where fingerprint=\"e1\ + 4ffcad5b0025731006caa43a121a22d8e9700f4fb9cf852f02a708aa5d5666\";\r\ + \n #:log info \"\\nAmScriptsUrl = \$AmScriptsUrl\";\r\ + \n :local Scripts {\r\ + \n \"Amster-GlobalConfig\"\r\ + \n \"Amster-GlobalFunc\";\r\ + \n# \"Amster-SFTP-backup\"\r\ + \n# \"Amster-BkpEmail-and-upd\";\r\ + \n };\r\ + \n# /system/script/set owner=(\$ScriptVal->\"name\") \\\r\ + \n# source=[ \$IfThenElse (\$ScriptUpdatesCRLF = true) \$SourceCRLF \$S\ + ourceNew ] \$Script;\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :put \"Installing \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$defOwner source=([ /too\ + l/fetch (\"\$AmScriptsUrl\" . \$Script . \".rsc\") output=user as-value ]-\ + >\"data\");\r\ + \n /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$\ + Script;\r\ + \n };\r\ + \n /system/script { run Amster-GlobalConfig; run Amster-GlobalFunc; }\r\ + \n}\r\ + \n:global AmUpdRun;\r\ + \n:set AmUpdRun do={\r\ + \n #:local UpdScript [ :tostr \$1 ];\r\ + \n #:global ParseKeyValueStore;\r\ + \n :global AmScriptsUrl;\r\ + \n :global defOwner;\r\ + \n :local Scripts {\r\ + \n# \"Amster-GlobalConfig\"\r\ + \n# \"Amster-GlobalFunc\"\r\ + \n# \"Amster-GlobalRemove\"\r\ + \n \"Amster-backup-SFTP\"\r\ + \n \"Amster-SFTP-backup\"\r\ + \n \"Amster-BkpEmail-and-upd\"\r\ + \n \"Amster-TG-Bot\"\r\ + \n \"Amster-TG-Notification\";\r\ + \n };\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :put \"updating \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$defOwner source=([ /too\ + l/fetch (\"\$AmScriptsUrl\" . \$Script . \".rsc\") output=user as-value ]-\ + >\"data\");\r\ + \n /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$\ + Script;\r\ + \n };\r\ + \n# /system/script/add name=\$Script owner=\$AmOwner source=([ /tool/fe\ + tch check-certificate=yes-without-crl (\"\$AmScriptsUrl\" . \$Script . \".\ + rsc\") output=user as-value ]->\"data\"); };\r\ + \n}\r\ + \n\r\ + \n\$AmFirstRun;\r\ + \n#\$AmUpdRun;\r\ + \n\r\ + \n#\$setUpdExist;\r\ + \n#:global setUpdExist;\r\ + \n#:global ParseKeyValueStore;\r\ + \n#:set setUpdExist do={\r\ + \n#:do {\r\ + \n#:global ParseKeyValueStore;\r\ + \n# :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vad\ + os\\r\?\\n#comment=*\" ] do={\r\ + \n# :local ScriptVal [ /system/script/get \$Script ];\r\ + \n# :local ScriptInfo [ \$ParseKeyValueStore (\$ScriptVal->\"#comment\"\ + ) ];\r\ + \n# :local scriptName (\$ScriptVal->\"name\");\r\ + \n#:log warning (\"\\n\\\$scriptName = \". \$scriptName);\r\ + \n#: log warning (\"\\n\\\$ScriptInfo = \". \$ScriptInfo);\r\ + \n# }\r\ + \n#} on-error={}\r\ + \n#}\r\ + \n#\$name;\$owner;\$policy;\$dont-require-permissions;\$last-started;\$run\ + -count;\$source;\$invalid;\$comment;\$.id;\$.nextid;\$.dead;\$.about;\r\ + \n#;(evl / (evl /docommand=;(evl / (evl /foreachcounter=\$Script;do=;(evl \ + / (evl /localname=\$ScriptVal;value=(evl (evl /system/script/getnumber=\$S\ + cript))) (evl /localname=\$ScriptInfo;value=(evl (<%% \$ParseKeyValueStore\ + \_(> \$ParseKeyValueStore);(-> \$ScriptVal comment)))) (evl /localname=\$s\ + criptName) (evl /setname=\$scriptName;value=(-> #\$ScriptVal name)) (evl /\ + log/errormessage=(. \r\ + \n# \$ ScriptInfo = \$ScriptInfo)));in=(evl (evl /system/script/findwhere\ + =\$name;\$owner;\$policy;\$dont-require-permissions;\$last-started;\$run-c\ + ount;\$source;\$invalid;\$comment;\$.id;\$.nextid;\$.dead;\$.about;(~ \$so\ + urce (. ^#!rsc by Vados \r\ + \n# \? \r\ + \n#));5))));on-error=;(evl /)))\r\ + \n" +add dont-require-permissions=no name="Download cAP's Packages" owner=vados \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="# +------------------------------+\r\ + \n# | |\r\ + \n# | Mikrotik RouterOS Scripts |\r\ + \n# | _Download cAP's Packages_ |\r\ + \n# | |\r\ + \n# +------------------------------+\r\ + \n# https://github.com/sebastian13/mikrotik-routeros-scripts\r\ + \n#\r\ + \n\r\ + \n# Set a directory path providing the required space\r\ + \n# Add a microSD card https://wiki.mikrotik.com/wiki/Manual:System/Disks\ + \r\ + \n# or setup a RAM-Disk via '/disk/add type=tmpfs tmpfs-max-size=20M slot=\ + ram'\r\ + \n:local dir \"/tmpfs/capsman-packages\";\r\ + \n\r\ + \n\r\ + \n# Set Package Path if required, set policy to none if using 'upgrade-cap\ + s' script\r\ + \n/interface/wifi/capsman/set package-path=\$dir upgrade-policy=none;\r\ + \n/caps-man/manager/set package-path=\$dir upgrade-policy=none;\r\ + \n#require-same-version;\r\ + \n\r\ + \n:local installed [/system package get value-name=version [find where nam\ + e=\"routeros\"]]\r\ + \n\r\ + \n# Delete old downloads\r\ + \n# /file/remove [ find type=package name~\"capsman*\" ]\r\ + \n\r\ + \n# Starting from RouterOS version 7.13, drivers for older wireless and 60\ + GHz interfaces are\r\ + \n# part of the separate \"wireless\" package. The existing \"wifiwave2\" \ + package has been divided\r\ + \n# into distinct packages: \"wifi-qcom\" and \"wifi-qcom-ac\".\r\ + \n# RouterOS >=7.12 is required to upgrade to 7.13.\r\ + \n# https://forum.mikrotik.com/viewtopic.php\?t=202423\r\ + \n\r\ + \n:foreach architecture in={ \"arm\";\r\ + \n# \"arm64\";\r\ + \n \"x86_64\";\r\ + \n \"mipsbe\"} do={\r\ + \n :foreach package in={ \"routeros\";\r\ + \n# \"wifi-qcom-ac\";\r\ + \n# \"wifi-qcom\";\r\ + \n \"wireless\"} do={ :do {\r\ + \n :put \"\"\r\ + \n :put \"Download \$package \$installed for \$architecture\"\r\ + \n /tool fetch mode=https \\\r\ + \n url=\"https://download.mikrotik.com/routeros/\$installed/\$packa\ + ge-\$installed-\$architecture.npk\" \\\r\ + \n dst-path=\"\$dir/\$package-\$installed-\$architecture.npk\"\r\ + \n } on-error={ :put \"Error downloading the file. On a 404, note t\ + hat the package may not exist for the specified architecture!\" }\r\ + \n }\r\ + \n}\r\ + \n" +add comment="Script for setup routeros scrypt system" \ + dont-require-permissions=no name=AM-setup owner=AM-setup policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-setup\r\ + \n# Script comment: Script for setup routeros scrypt system\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n#\r\ + \n# :local ScriptName [ :jobname ];\r\ + \n# Additional commands:\r\ + \n#\r\ + \n# For scripts:\r\ + \n#:global NewScript \"script_name\"; \r\ + \n#:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n#/system/script/add name=\$NewScript owner=\$NewScript source=([/tool/fe\ + tch check-certificate=yes-without-crl (\$GlobalScriptsUrl . \$ScriptAdd . \ + \".rsc\") output=user as-value ]->\"data\");\r\ + \n#:global NewScript (a);\r\ + \n#:global ScriptInstallUpdate; \$ScriptInstallUpdate;\r\ + \n#\r\ + \n# For run from terminal:\r\ + \n#/system/script/add name=AM-setup owner=AM-Setup source=([/tool/fetch ch\ + eck-certificate=yes-without-crl \"https://ros.vados.ru/AM-setup.rsc\" outp\ + ut=user as-value ]->\"data\");\r\ + \n#\r\ + \n\r\ + \n:global ScriptUpdatesCRLF \"LF\";\r\ + \n#:if (\$ScriptUpdatesCRLF != false) do={\r\ + \n# :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vad\ + os\" ] do={\r\ + \n# if (\$ScriptUpdatesCRLF = true) do={\r\ + \n# /system/script/set source=[ :tocrlf [ get \$Script source ] ] \$S\ + cript;\r\ + \n# } else={\r\ + \n# /system/script/set source=[ :tolf [ get \$Script source ] ] \$Scr\ + ipt;\r\ + \n# }\r\ + \n# }\r\ + \n#}\r\ + \n\r\ + \n# /import verbose=no \$ScriptName\r\ + \n:global SetupScript [ :jobname ];\r\ + \n:global RemoveMe;\r\ + \n:global RunOnce;\r\ + \n:global InitSetup true;\r\ + \n:global tmpfs true;\r\ + \n\r\ + \n{\r\ + \n :local RmMe [:tobool \$1];\r\ + \n\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global SetupScript;\r\ + \n :global RemoveMe;\r\ + \n :global InitSetup;\r\ + \n :global tmpfs;\r\ + \n \r\ + \n :local CertCommonName \"Root YE\";\r\ + \n :local CertFileName \"Root-YE.pem\";\r\ + \n :local CertFingerprint \"e14ffcad5b0025731006caa43a121a22d8e9700f4fb9c\ + f852f02a708aa5d5666\";\r\ + \n\r\ + \n :if (\$SetupScript = false) do={\r\ + \n :global SetupScript \"AM-setup\";\r\ + \n }\r\ + \n :if (\$RemoveMe != false) do={\r\ + \n :set RemoveMe true;\r\ + \n }\r\ + \n\r\ + \n :log warning (\"\\n\\\$GlobalScriptsUrl = \" . \$GlobalScriptsUrl);\r\ + \n \r\ + \n :local CertSettings [ /certificate/settings/get ];\r\ + \n :if (!(((\$CertSettings->\"builtin-trust-anchors\") = \"trusted\" || \ + \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") ~ \"fetch\" || \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") = \"all\") && \\\r\ + \n [ :len [ /certificate/builtin/find where common-name=\$CertComm\ + onName ] ] > 0)) do={\r\ + \n :put \"Importing certificate...\";\r\ + \n \r\ + \n /tool/fetch (\$GlobalScriptsUrl . \"certs/\" . \$CertFileName) dst-p\ + ath=\$CertFileName as-value;\r\ + \n :delay 1s;\r\ + \n /certificate/import file-name=\$CertFileName passphrase=\"\";\r\ + \n :if ([ :len [ /certificate/find where fingerprint=\$CertFingerprint \ + ] ] != 1) do={\r\ + \n :error \"Something is wrong with your certificates!\";\r\ + \n };\r\ + \n :delay 1s;\r\ + \n };\r\ + \n\r\ + \n:local MkTmpfs do={\r\ + \n :local TmpFs [ /disk/find where slot=tmpfs type=tmpfs ];\r\ + \n :if ([ :len \$TmpFs ] = 1) do={\r\ + \n :if ([ /disk/get \$TmpFs disabled ] = true) do={\r\ + \n :log info (\"The tmpfs is disabled, enabling.\");\r\ + \n /disk/enable \$TmpFs;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n :log info (\"Try to removing directory 'tmpfs'.\");\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/remove tmpfs;\r\ + \n :return true;\r\ + \n } delay=100ms max=10;\r\ + \n } on-error={ }\r\ + \n# \$RmDir \"tmpfs\";\r\ + \n :onerror Err {\r\ + \n /disk/add slot=tmpfs type=tmpfs tmpfs-max-size=([ /system/resource/g\ + et total-memory ] / 3);\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get tmpfs;\r\ + \n :return true;\r\ + \n } delay=222ms max=10;\r\ + \n } on-error={ }\r\ + \n } do={\r\ + \n :log warning (\"Creating disk of type tmpfs failed: \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n# :return true;\r\ + \n}\r\ + \n:if (\$tmpfs = true) do={\r\ + \n :put \"Tmpfs variable is true. Checking for tmpfs/scripts directory...\ + \";\r\ + \n :if ([/file find name=\"tmpfs/scripts\"] != \"\") do={\r\ + \n :log info (\$0 . \"Directory tmpfs/scripts exsist.\");\r\ + \n :return \$true;\r\ + \n } else={\r\ + \n :log warning (\$0 . \"Directory tmpfs/scripts does't exsist.\");\r\ + \n :if ([ \$MkTmpfs ] = false) do={\r\ + \n :log error (\$0 . \"Directory tmpfs is not created!\");\r\ + \n :return false;\r\ + \n } else={\r\ + \n :onerror Err {\r\ + \n /file/add type=\"directory\" name=/tmpfs/scripts;\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get /tmpfs/scripts;\r\ + \n :return true;\r\ + \n } delay=100ms max=10;\r\ + \n } on-error={ }\r\ + \n } do={\r\ + \n :log warning (\$0 . \"Making directory 'scripts' failed: \" . \$\ + Err);\r\ + \n :return false;\r\ + \n }\r\ + \n# :return true;\r\ + \n# [ /file/get \$FileName ]\r\ + \n }\r\ + \n# :log error (\$0 . \"Directory tmpfs/scripts does not exsist. Remove\ + \_global variable tmpfs!\");\r\ + \n# :global tmpfs (a);\r\ + \n# return false;\r\ + \n }\r\ + \n}\r\ + \n :put \"Renaming AM-GlobalConfig, if exists...\";\r\ + \n :local ConfOldName (\"AM-GlobalConfig-\" . [ /system/clock/get date ] \ + . [ /system/clock/get time ] . \".rsc\");\r\ + \n /system/script/set name=\$ConfOldName [ find where name=\"AM-GlobalCon\ + fig\" ];\r\ + \n :foreach Script in={ \"AM-GlobalConfig\"; \"AM-GlobalFunc\" } do={\r\ + \n :put \"Installing \$Script...\";\r\ + \n /system/script/remove [ find where name=\$Script ];\r\ + \n /system/script/add name=\$Script owner=\$Script source=([ /tool/fetc\ + h check-certificate=yes-without-crl url=(\$GlobalScriptsUrl . \$Script . \ + \".rsc\") output=user as-value ]->\"data\");\r\ + \n \r\ + \n /system/script run \$Script;\r\ + \n :delay 2s;\r\ + \n };\r\ + \n\r\ + \n :if ([ :len [ /certificate/find where fingerprint=\$CertFingerprint ] \ + ] > 0) do={\r\ + \n :put \"Renaming certificate by its common-name...\";\r\ + \n :global CertificateNameByCN;\r\ + \n \$CertificateNameByCN \$CertFingerprint;\r\ + \n };\r\ + \n\r\ + \n :if (\$RemoveMe = true) do={\r\ + \n :put \"Add Scheduler for remove this script...\";\r\ + \n :local OnEvent (\":delay 30s;\\n\" . \"/system/script/remove [ find \ + where name=\\\"\$SetupScript\\\" ];\\n\" . \\\r\ + \n \":delay 2s;\\n\" . \"/system/scheduler/remove [ find where name=\\\ + \"_RemoveSetup\\\" ];\\n\" . \\\r\ + \n \":delay 2s;\\n\" . \":global RemoveMe (a);\\n\");\r\ + \n :local Comment \"_RemoveSetup tmp scheduler for remove setup script.\ + \";\r\ + \n /system/scheduler/add name=\"_RemoveSetup\" comment=\$Comment start-\ + time=startup interval=30s on-event=\$OnEvent;\r\ + \n :log warning (\$0 . \"\\nI've done everything, and now I'm tired..\ + . I'm leaving.\\nThere will be an error below, this is normal.\");\r\ + \n }\r\ + \n :delay 1;\r\ + \n :put \"Loading configuration and functions...\";\r\ + \n :do { \r\ + \n :global ScriptInstallUpdate; \$ScriptInstallUpdate;\r\ + \n :put \"Normal removing temporary global environment variables.\";\ + \r\ + \n :global SetupScript (a);\r\ + \n :global InitSetup (a);\r\ + \n :global RemoveMe (a);\r\ + \n } on-error={\r\ + \n :local ErrorMsg \"Loading configuration and functions error!\";\r\ + \n :log error (\$0 . \$ErrorMsg . :error);\r\ + \n :error \$ErrorMsg;\r\ + \n }\r\ + \n}\r\ + \n" +add comment="Global Config Script" dont-require-permissions=no name=\ + AM-GlobalConfig owner=AM-GlobalConfig policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-GlobalConfig\r\ + \n# Script comment: Global Config Script\r\ + \n# Copyright (c) 2007-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# Warning: Dont touch this line!\r\ + \n:global GlobalConfReady false;\r\ + \n#\r\ + \n#\r\ + \n# Global Url For Amster scripts to fetch\r\ + \n# most be defined in AM-Init-Script or AM-setup scripts\r\ + \n:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n:global ScriptsUrlSuffix \"\";\r\ + \n:global CheckSumsVerify true;\r\ + \n\r\ + \n:global ScriptUpdatesCRLF true;\r\ + \n:global CommentsInScripts true;\r\ + \n\r\ + \n# Debug output:\r\ + \n:global PrintDebug true; #false;\r\ + \n\r\ + \n# Debug output for specific script:\r\ + \n:set (\$PrintDebugOverride->\"AM-GlobalFunc\") true;\r\ + \n\r\ + \n# Debug logs\r\ + \n# Other actions (disk, email, remote or support) can be used as well.\r\ + \n# I do not recommend using echo - use debug output instead (https://rsc.\ + eworm.de/main/DEBUG.html#debug-output).\r\ + \n#/system/logging/add topics=script,debug action=memory;\r\ + \n\r\ + \n:global MikrotikUpgradeUrl \"https://upgrade.mikrotik.com/routeros\";\r\ + \n:global Domain \"WORKGROUP\";\r\ + \n\r\ + \n:global EmailGeneralTo \"vados@vados.ru\";\r\ + \n#:global EmailGeneralCc \"\";\r\ + \n\r\ + \n# \$ScriptInstallUpdate mod/notification-telegram\r\ + \n:global TelegramTokenId \"8390868324:AAG3_d1hfVR2M6pGAgDK6ZvhOe4J97nyopw\ + \";\r\ + \n:global TelegramChatId \"-1003631309063\"; #\"454403445\";\r\ + \n# Use this to send notifications to a specific topic in group.\r\ + \n#:global TelegramThreadId \"30\";\r\ + \n# Using telegram-chat you have to define trusted chat ids (not group ids\ + !)\r\ + \n# or user names. Groups allow to chat with devices simultaneously.\r\ + \n:global TelegramChatIdsTrusted {\r\ + \n \"454403445\"\r\ + \n \"-1003631309063\"\r\ + \n \"-5124482807\"\r\ + \n \"1087968824\";\r\ + \n};\r\ + \n# \"-5294757340\";\r\ + \n\r\ + \n:global TelegramChatGroups \"(all)\";\r\ + \n#:global TelegramChatGroups \"(all|home|office)\";\r\ + \n\r\ + \n:global NotificationFunctions {\r\ + \n \"email\"\r\ + \n \"telegram\";\r\ + \n};\r\ + \n# Toggle this to disable symbols in notifications.\r\ + \n:global NotificationsWithSymbols true;\r\ + \n:global TerminalColorOutput true;\r\ + \n\r\ + \n:global DetectIpAddrDefault \"https://ipv4.mikrotik.ovh/\";\r\ + \n:global DetectIpAddrFallback \"https://api.ipify.org/\";\r\ + \n\r\ + \n## Update channel. Possible values: stable, long-term, testing, developm\ + ent\r\ + \n:global updateChannel \"stable\";\r\ + \n\r\ + \n:global CertRenewUrl (\$GlobalScriptsUrl . \"certs/\");\r\ + \n:global CertRenewTime 2w;\r\ + \n:global CertRenewPass {\r\ + \n \"\";\r\ + \n# \"v3ry-s3cr3t\";\r\ + \n# \"4n0th3r-s3cr3t\";\r\ + \n};\r\ + \n:global CertWarnTime 1w;\r\ + \n:global CertIssuedExportPass {\r\ + \n \"\";\r\ + \n# \"cert1-cn\"=\"v3ry-s3cr3t\";\r\ + \n# \"cert2-cn\"=\"4n0th3r-s3cr3t\";\r\ + \n};\r\ + \n\r\ + \n# Script BackupAndUpdate mode, possible values: backup,\r\ + \n# updateOnce - Update once as \"osnotify\" and back \"osnotify\" mode (i\ + n terminal run :set OSUpdateMode updateOnce; \$OSUpdateMode;). \r\ + \n# osupdate - Update if available and creates backups before/after update\ + \_(ignores `forceBackup`)\r\ + \n# Set `forceBackup` to true to always create backups, even\ + \_without updates\r\ + \n# osnotify - Set `forceBackup` to always create backups on every run\r\ + \n:global DevInfoIncludeIP true;\r\ + \n:global BackupAndUpdateMode \"osnotify\"\r\ + \n\r\ + \n:global forceBackup true;\r\ + \n:global BackupPassword \"Peskar55\";\r\ + \n\r\ + \n# SFTP Backup Variables\r\ + \n:global BackupRandomDelay 0;\r\ + \n:global BackupUploadUrl \"sftp://amster.vados.ru/upload/\";\r\ + \n:global BackupUploadUser \$Identity;\r\ + \n:global BackupUploadPass \"root.mnuc.backuper\";\r\ + \n\r\ + \n:global BackupSendBinary true;\r\ + \n:global BackupSendExport true;\r\ + \n:global BackupSendGlobalConfig true;\r\ + \n:global BackupSendScripts true;\r\ + \n\r\ + \n# Remove local file after uploading if no errors\r\ + \n:global BackupRmLocal true;\r\ + \n\r\ + \n# Local Backups Root Directory \r\ + \n:global BackupLocalRoot \"tmpfs\";\r\ + \n\r\ + \n# Encrypt Backup\r\ + \n:global BackupEncrypt true;\r\ + \n\r\ + \n# Sensitive information in Backups\r\ + \n:global BackupSens true;\r\ + \n\r\ + \n# User Export\r\ + \n:global BackupUser true;\r\ + \n\r\ + \n# License Export (not for CHR, will silently skip)\r\ + \n:global BackupLicense false;\r\ + \n\r\ + \n# SSH Keys\r\ + \n:global BackupSshKeys true;\r\ + \n\r\ + \n# Certificate Export\r\ + \n:global BackupCerts true;\r\ + \n\r\ + \n# Certificate Password\r\ + \n:global BackupCertsPasswd \"\";\r\ + \n\r\ + \n# User-Manager Export\r\ + \n:global BackupUserMan false;\r\ + \n\r\ + \n# The Dude Export\r\ + \n:global BackupDude false;\r\ + \n\r\ + \n# User Files to export, comma-separated string or array of strings\r\ + \n# User Files are not removed on backup\r\ + \n# Any directory paths will be removed (/ -> _) on remote file\r\ + \n# Nonpresent files are silently skipped\r\ + \n:global BackupUserList \"autosupout.rif,autosupout.old.rif\";\r\ + \n\r\ + \n# load functions and any custom scripts\r\ + \n# [ /system/script/find where name=\"global-config-ov\ + erlay\" ], \\\r\ + \n# [ /system/script/find where name~\"^global-config-o\ + verlay\\\\.d/.\" ]\r\ + \n#\r\ + \n#:foreach Script in=([ /system/script/find where name=\"Amster-TGglobalV\ + ars\" ], [ /system/script/find where name=\"Amster-TGglobalFunc\" ]) do={\ + \r\ + \n# :onerror Err {\r\ + \n# /system/script/run \$Script;\r\ + \n# } do={\r\ + \n# :log error (\"Loading configuration from configs and functions\"\ + \_. [ /system/script/get \$Script name ] . \" failed: \" . \$Err);\r\ + \n# }\r\ + \n#}\r\ + \n#:log info \"\\ndevMode = \$devMode\";\r\ + \n#:log info \"\\ndevRunning = \$devRunning\";\r\ + \n:foreach Script in=[ /system/script/find where source~\"^#!rsc by Vados \ + GlobalRUN\\r\?\\n\" ] do={\r\ + \n :onerror Err {\r\ + \n /system/script/run \$Script;\r\ + \n } do={\r\ + \n :log error (\"Run script \" . [ /system/script/get \$Script name \ + ] . \" width marker \\\" GlobalRUN\\\" failed: \" . \$Err);\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n# signal we are ready\r\ + \n:set GlobalConfReady true;\r\ + \n:while (\$GlobalConfReady != true) do={:delay 500ms};\r\ + \n" +add comment="Global functions" dont-require-permissions=no name=AM-GlobalFunc \ + owner=AM-GlobalFunc policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\ + !rsc by Vados\r\ + \n# RouterOS script: AM-GglobalFunc\r\ + \n# Script comment: Global functions\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch, scheduler\r\ + \n:local ExitOK false;\r\ + \n:local ScriptName [ :jobname ];\r\ + \n#:global checkRunJob \$SriptName;\r\ + \n#:global fixCRLF;\r\ + \n#:if (\$fixCRLF != false) do={\r\ + \n#:foreach fixScript in=([ /system/script/find where name~\"*\" ]) do={/s\ + ystem/script/set source=[ :tocrlf [ get \$fixScript source ] ] \$fixScript\ + }\r\ + \n#:if (\$fixCRLF != \"LF\") do={ /system/script/set source=[ :tocrlf [ g\ + et \$fixScript source ] ] \$fixScript};};\r\ + \n#}\r\ + \n:global GlobalFuncReady false;\r\ + \n\r\ + \n# Git commit id & info, expected configuration version\r\ + \n:global CommitId \"main/266/c0a5c627\";\r\ + \n:global CommitTAG \"unknown\";\r\ + \n:global CommitInfo \"Autocommit in repo: ros.vados.ru, generated by owne\ + r: root, in 03:10:03 28.04.2026.\";\r\ + \n\r\ + \n# The variables are received right here.\r\ + \n:global GlobalConfVersion 138;\r\ + \n\r\ + \n:global SumsDirAndFileName \"tmp/checksums.json\";\r\ + \n\r\ + \n:global Identity [/system/identity/get name];\r\ + \n:global IdentityShort [:pick \$Identity 0 18];\r\ + \n\r\ + \n:global devBoardName [/system/resource/get board-name];\r\ + \n:global devMode [/system/device-mode/get mode];\r\ + \n:global devCurArch [/system/resource/get architecture-name];\r\ + \n:global devCurVersion [/system/resource/get version];\r\ + \n\r\ + \n# Variables defined in AM-GlobalConfig.rsc\r\ + \n:global TerminalColorOutput;\r\ + \n:global CommentsInScripts;\r\ + \n:global DetectIpAddrDefault;\r\ + \n:global DetectIpAddrFallback;\r\ + \n:global updateChannel;\r\ + \n:global Domain;\r\ + \n:global EmailGeneralTo;\r\ + \n:global BackupAndUpdateMode;\r\ + \n\r\ + \n# Single functions, without nested functions.\r\ + \n:global GlobalEnvRemove;\r\ + \n:global MiniDateTimeStamp;\r\ + \n\r\ + \n# Include globals \$PrintDebug and \$PrintDebugOverride\r\ + \n:global LogPrint;\r\ + \n\r\ + \n# DeviceInfo and Updates\r\ + \n:global IsCheckUpdates;\r\ + \n:global WaitCheckUpdates;\r\ + \n:global GetPubIp;\r\ + \n\r\ + \n:global GetArrDeviceInfo;\r\ + \n:global WaitArrDeviceInfo;\r\ + \n\r\ + \n:global devModel;\r\ + \n:global devRunningMode;\r\ + \n\r\ + \n:global devRbRevision;\r\ + \n:global devRbSerialNumber;\r\ + \n:global devRbVerAvail;\r\ + \n\r\ + \n:global runningChannelVersion;\r\ + \n:global runningChannel;\r\ + \n:global runningVersion;\r\ + \n\r\ + \n:global devBuildTime;\r\ + \n:global ROsVerAvail;\r\ + \n:global PkgUpdStatus;\r\ + \n:global currentUpdateChannel;\r\ + \n\r\ + \n:global ScriptInstallUpdate;\r\ + \n\r\ + \n:global DeviceInfo;\r\ + \n\r\ + \n:global OldMode;\r\ + \n\r\ + \n:global ParseKeyValueStore;\r\ + \n:global RandomDelay;\r\ + \n:global GetRandomNumber;\r\ + \n:global EscapeForRegEx;\r\ + \n:global ExitError;\r\ + \n:global CharacterMultiply;\r\ + \n:global CharacterReplace;\r\ + \n:global CleanFilePath;\r\ + \n:global CleanName;\r\ + \n\r\ + \n:global CommitBrief;\r\ + \n\r\ + \n:global EitherOr;\r\ + \n:global FormatLine;\r\ + \n:global GetRandom20CharAlNum;\r\ + \n:global Grep;\r\ + \n:global IfThenElse;\r\ + \n:global MAX;\r\ + \n:global MIN;\r\ + \n:global HumanReadableNum;\r\ + \n\r\ + \n:global IsFullyConnected;\r\ + \n:global IsDNSResolving;\r\ + \n:global IsTimeSync;\r\ + \n:global IsTimeSyncCached;\r\ + \n:global IsTimeSyncResetNtp;\r\ + \n\r\ + \n:global WaitDNSResolving;\r\ + \n:global WaitFullyConnected;\r\ + \n:global WaitTimeSync;\r\ + \n:global MkDir;\r\ + \n:global RmDir;\r\ + \n:global RmFile;\r\ + \n:global FileGet;\r\ + \n:global Unix2Dos;\r\ + \n:global UrlEncode;\r\ + \n:global WaitForFile;\r\ + \n:global ScriptLock;\r\ + \n:global SendTelegram;\r\ + \n:global NotificationFunctions;\r\ + \n:global SendNotification;\r\ + \n:global SendNotification2;\r\ + \n:global SymbolForNotification;\r\ + \n:global SymbolByUnicodeName;\r\ + \n:global ValidateSyntax;\r\ + \n:global CheckSumsVerify;\r\ + \n:global GlobalConfChanges;\r\ + \n:global GlobalConfMigration;\r\ + \n:global VersionToNum;\r\ + \n:global RequiredRouterOS;\r\ + \n:global FetchLargeFiles;\r\ + \n:global FetchUserAgentStr;\r\ + \n:global CertificateAvailable;\r\ + \n:global CertificateDownload;\r\ + \n:global CertificateNameByCN;\r\ + \n:global CharacterMultiply;\r\ + \n\r\ + \n:global InspectVar;\r\ + \n:global InspectVarRet;\r\ + \n:global ParseCustom;\r\ + \n\r\ + \n:set IsCheckUpdates do={\r\ + \n :local isInfo [:tobool \$1];\r\ + \n :global LogPrint;\r\ + \n :global updateChannel;\r\ + \n :global PkgUpdStatus;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n :global arrDeviceInfo;\r\ + \n \$LogPrint debug \$0 (\"\\\$isInfo = \" . \$isInfo); \r\ + \n :local CurrentChannel [ /system/package/update/get channel ];\r\ + \n :if ([ :len \$updateChannel ] > 0 && \$CurrentChannel != \$updateChann\ + el) do={\r\ + \n :retry command={/system/package/update set channel=\$updateChannel} \ + \_delay=300ms max=5 on-error={};\r\ + \n \$LogPrint debug \$0 (\"Set updates channel to: \$updateChannel\");\ + \r\ + \n }\r\ + \n\r\ + \n :local Update [ /system/package/update/get ];\r\ + \n :local Channel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set currentUpdateChannel \$Channel;\r\ + \n \$LogPrint debug \$0 (\"Update Channel: \" . \$Channel . \".\");\r\ + \n\r\ + \n\r\ + \n :local StatusPkg \"undefined\";\r\ + \n \$LogPrint debug \$0 (\"Checking for updates...\");\r\ + \n :retry command={:set \$StatusPkg ([/system/package/update/check-for-up\ + dates without-paging as-value]->\"status\")} \\\r\ + \n delay=300ms max=5 on-error={};\r\ + \n \$LogPrint debug \$0 (\"\\\$StatusPkg = \" . \$StatusPkg);\r\ + \n :if (\$StatusPkg = \"New version is available\") do={ :set PkgUpdStatu\ + s true; } else={ :set PkgUpdStatus false; }\r\ + \n :set ROsVerAvail [ :tostr [ /system/package/update/get latest-version \ + ] ];\r\ + \n \$LogPrint debug \$0 (\"\\\$PkgUpdStatus = \" . \$PkgUpdStatus);\r\ + \n :if (\$isInfo != false || \$PkgUpdStatus = true) do={\r\ + \n \$LogPrint debug \$0 (\"\\\$PkgUpdStatus = \" . \$PkgUpdStatus);\r\ + \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ + \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ + \n }\r\ + \n :retry command={:set (\$arrDeviceInfo->\"devUpdates\") [ /system/pac\ + kage/update/get ]} delay=500ms max=5 on-error={:log error (\"Error\")};\r\ + \n :return true;\r\ + \n } else={\r\ + \n :return \$PkgUpdStatus;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set WaitCheckUpdates do={\r\ + \n :global IsCheckUpdates;\r\ + \n :global PkgUpdStatus;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n :global arrDeviceInfo;\r\ + \n\r\ + \n :local Status \"\";\r\ + \n :local Update;\r\ + \n :local WaitCount 0;\r\ + \n\r\ + \n :if ([ \$IsCheckUpdates true ] = false) do={\r\ + \n :return false;\r\ + \n }\r\ + \n\r\ + \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ + \n :while ((\$Status = \"\" || \$Status = \"finding out latest version...\ + \") && \$WaitCount < 60) do={\r\ + \n :delay 1s;\r\ + \n :set WaitCount (\$WaitCount + 1);\r\ + \n :set Status [ :tostr [ /system/package/update/get status ] ];\r\ + \n }\r\ + \n\r\ + \n :set Update [ /system/package/update/get ];\r\ + \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ + \n :if ((\$Update->\"status\") = \"New version is available\") do={\r\ + \n :set PkgUpdStatus true;\r\ + \n } else={\r\ + \n :set PkgUpdStatus false;\r\ + \n }\r\ + \n :if ([ :typeof \$arrDeviceInfo ] != \"array\") do={\r\ + \n :set arrDeviceInfo [:toarray \$arrDeviceInfo];\r\ + \n }\r\ + \n :set (\$arrDeviceInfo->\"devUpdates\") \$Update;\r\ + \n\r\ + \n :if (\$Status = \"\" || \$Status = \"finding out latest version...\") \ + do={\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set WaitArrDeviceInfo do={\r\ + \n :global GetArrDeviceInfo;\r\ + \n :while ([ \$GetArrDeviceInfo ] = false) do={\r\ + \n :delay 1s;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set GetArrDeviceInfo do={\r\ + \n :global LogPrint;\r\ + \n :global arrDeviceInfo;\r\ + \n\r\ + \n :global devBoardName;\r\ + \n :global devModel;\r\ + \n :global devRunning;\r\ + \n :global devCurArch;\r\ + \n :global devRbRevision;\r\ + \n :global devRbSerialNumber;\r\ + \n :global devBuildTime;\r\ + \n :global runningChannelVersion;\r\ + \n :global runningChannel;\r\ + \n :global runningVersion;\r\ + \n :global currentUpdateChannel;\r\ + \n :global ROsVerAvail;\r\ + \n\r\ + \n :local DeviceInfo;\r\ + \n :local Resource [/system/resource/get];\r\ + \n :local Update [ /system/package/update/get ];\r\ + \n :local VersionString [ :tostr (\$Resource->\"version\") ];\r\ + \n :local ChannelStart [ :find \$VersionString \" (\" ];\r\ + \n :local RouterBoard;\r\ + \n :local IsRouterBoard false;\r\ + \n :local RunningMode \"\";\r\ + \n\r\ + \n :set devCurArch [ :tostr (\$Resource->\"architecture-name\") ];\r\ + \n :set devBuildTime [ :tostr (\$Resource->\"build-time\") ];\r\ + \n :set runningChannelVersion \$VersionString;\r\ + \n :set runningVersion \$VersionString;\r\ + \n :set runningChannel \"\";\r\ + \n\r\ + \n :if ([ :typeof \$ChannelStart ] = \"num\" && \$ChannelStart >= 0) do=\ + {\r\ + \n :set runningVersion [ :pick \$VersionString 0 \$ChannelStart ];\r\ + \n :local ChannelRest [ :pick \$VersionString (\$ChannelStart + 2) [ :\ + len \$VersionString ] ];\r\ + \n :local ChannelEnd [ :find \$ChannelRest \")\" ];\r\ + \n :if ([ :typeof \$ChannelEnd ] = \"num\" && \$ChannelEnd >= 0) do={\ + \r\ + \n :set runningChannel [ :pick \$ChannelRest 0 \$ChannelEnd ];\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :if ([:pick \$devBoardName 0 3] != \"CHR\" or [:pick \$devBoardName 0\ + \_3] != \"x86\") do={\r\ + \n :do {\r\ + \n :set RouterBoard [[ :parse \"/system/routerboard/get\" ]];\r\ + \n# :set RouterBoard [ /system/routerboard/get ];\r\ + \n :if ((\$RouterBoard->\"routerboard\") = true) do={\r\ + \n :set IsRouterBoard true;\r\ + \n }\r\ + \n } on-error={}\r\ + \n }\r\ + \n\r\ + \n :do {\r\ + \n :set RunningMode [ /system/device-mode/get mode ];\r\ + \n } on-error={\r\ + \n :do {\r\ + \n :set RunningMode [ /system/device-mode/get running ];\r\ + \n } on-error={\r\ + \n :set RunningMode \"\";\r\ + \n }\r\ + \n }\r\ + \n :set devRunning \$RunningMode;\r\ + \n\r\ + \n :if (\$IsRouterBoard = true) do={\r\ + \n :set devModel [ :tostr (\$RouterBoard->\"model\") ];\r\ + \n :set devRbRevision [ :tostr (\$RouterBoard->\"revision\") ];\r\ + \n :set devRbSerialNumber [ :tostr (\$RouterBoard->\"serial-number\") \ + ];\r\ + \n } else={\r\ + \n :set devModel \$devBoardName;\r\ + \n :set devRbRevision \"\";\r\ + \n :set devRbSerialNumber \"\";\r\ + \n }\r\ + \n\r\ + \n :set currentUpdateChannel [ :tostr (\$Update->\"channel\") ];\r\ + \n :set ROsVerAvail [ :tostr (\$Update->\"latest-version\") ];\r\ + \n\r\ + \n :set (\$DeviceInfo->\"board-name\") \$devBoardName;\r\ + \n :set (\$DeviceInfo->\"architecture-name\") \$devCurArch;\r\ + \n :set (\$DeviceInfo->\"model\") \$devModel;\r\ + \n :set (\$DeviceInfo->\"revision\") \$devRbRevision;\r\ + \n :set (\$DeviceInfo->\"serial-number\") \$devRbSerialNumber;\r\ + \n :set (\$DeviceInfo->\"running-mode\") \$devRunning;\r\ + \n :set (\$DeviceInfo->\"build-time\") \$devBuildTime;\r\ + \n :set (\$DeviceInfo->\"running-channel-version\") \$runningChannelVers\ + ion;\r\ + \n :set (\$DeviceInfo->\"running-version\") \$runningVersion;\r\ + \n :set (\$DeviceInfo->\"running-channel\") \$runningChannel;\r\ + \n :set (\$DeviceInfo->\"routerboard\") \$IsRouterBoard;\r\ + \n :set (\$DeviceInfo->\"current-firmware\") [ :tostr (\$RouterBoard->\"\ + current-firmware\") ];\r\ + \n :set (\$DeviceInfo->\"upgrade-firmware\") [ :tostr (\$RouterBoard->\"\ + upgrade-firmware\") ];\r\ + \n :set (\$DeviceInfo->\"package-channel\") \$currentUpdateChannel;\r\ + \n :set (\$DeviceInfo->\"installed-version\") [ :tostr (\$Update->\"inst\ + alled-version\") ];\r\ + \n :set (\$DeviceInfo->\"latest-version\") \$ROsVerAvail;\r\ + \n :set (\$DeviceInfo->\"update-status\") [ :tostr (\$Update->\"status\"\ + ) ];\r\ + \n\r\ + \n :set arrDeviceInfo \$DeviceInfo;\r\ + \n :return \$DeviceInfo;\r\ + \n}\r\ + \n\r\ + \n:set DeviceInfo do={\r\ + \n :global GetArrDeviceInfo;\r\ + \n :global GlobalConfVersion;\r\ + \n :global Identity;\r\ + \n :global IfThenElse;\r\ + \n :global FormatLine;\r\ + \n :global CommitBrief;\r\ + \n\r\ + \n :local License [/system/license/get];\r\ + \n :local Snmp [ /snmp/get ];\r\ + \n :local Info [ \$GetArrDeviceInfo ];\r\ + \n\r\ + \n :if ([ :typeof \$Info ] != \"array\") do={\r\ + \n :return false;\r\ + \n }\r\ + \n\r\ + \n :return ( \\\r\ + \n [ \$FormatLine \"Hostname\" \$Identity ] . \"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Snmp->\"location\") ] > 0) \\\r\ + \n ([ \$FormatLine \"Location\" (\$Snmp->\"location\") ] . \"\\n\") ]\ + \_. \\\r\ + \n [ \$IfThenElse ([ :len (\$Snmp->\"contact\") ] > 0) \\\r\ + \n ([ \$FormatLine \"Contact\" (\$Snmp->\"contact\") ] . \"\\n\") ] .\ + \_\\\r\ + \n \"Hardware:\\n\" . \\\r\ + \n [ \$FormatLine \" Board\" (\$Info->\"board-name\") ] . \"\\n\" . \ + \\\r\ + \n [ \$FormatLine \" Arch\" (\$Info->\"architecture-name\") ] . \"\\\ + n\" . \\\r\ + \n [ \$FormatLine \" Model\" (\$Info->\"model\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"revision\") ] > 0) \\\r\ + \n (\" \" . (\$Info->\"revision\")) ] . \"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"serial-number\") ] > 0) \\\r\ + \n ([ \$FormatLine \" Serial\" (\$Info->\"serial-number\") ] . \"\ + \\n\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$License->\"nlevel\") ] > 0) \\\r\ + \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"nlevel\ + \")) ] . \"\\n\") ] . \\\r\ + \n \"RouterOS:\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$License->\"level\") ] > 0) \\\r\ + \n ([ \$FormatLine \" License\" (\"level \" . (\$License->\"level\ + \")) ] . \"\\n\") ] . \\\r\ + \n [ \$FormatLine \" Channel\" (\$Info->\"package-channel\") ] . \"\ + \\n\" . \\\r\ + \n [ \$FormatLine \" Installed\" (\$Info->\"installed-version\") ] .\ + \_\"\\n\" . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"running-channel\") ] > 0) \\\r\ + \n ([ \$FormatLine \" Running\" ((\$Info->\"running-version\") . \ + \" (\" . (\$Info->\"running-channel\") . \")\") ] . \"\\n\") \\\r\ + \n ([ \$FormatLine \" Running\" (\$Info->\"running-version\") ] . \ + \"\\n\") ] . \\\r\ + \n [ \$IfThenElse ([ :len (\$Info->\"latest-version\") ] > 0 && \\\r\ + \n (\$Info->\"installed-version\") != (\$Info->\"latest-version\"))\ + \_\\\r\ + \n ([ \$FormatLine \" Available\" (\$Info->\"latest-version\") ] .\ + \_\"\\n\") ] . \\\r\ + \n [ \$IfThenElse ((\$Info->\"routerboard\") = true && \\\r\ + \n (\$Info->\"current-firmware\") != (\$Info->\"upgrade-firmware\")\ + ) \\\r\ + \n ([ \$FormatLine \" Firmware\" ((\$Info->\"current-firmware\") .\ + \_\" -> \" . (\$Info->\"upgrade-firmware\")) ] . \"\\n\") ] . \\\r\ + \n \"RouterOS-Scripts:\\n\" . \\\r\ + \n [ \$FormatLine \" Commit\" [ \$CommitBrief ] ] . \"\\n\" . \\\r\ + \n [ \$FormatLine \" Version\" \$GlobalConfVersion ]);\r\ + \n}\r\ + \n\r\ + \n:if ([ :typeof \$NotificationFunctions ] != \"array\") do={:set Notifica\ + tionFunctions ({})}\r\ + \n:set GetRandom20CharAlNum do={\r\ + \n :global EitherOr;\r\ + \n :return [ :rndstr length=[ \$EitherOr [ :tonum \$1 ] 20 ] from=\"ABCDE\ + FGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\" ];\r\ + \n}\r\ + \n\r\ + \n:global checkRunJob;\r\ + \n:set checkRunJob do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLock; \r\ + \n :if ([ \$ScriptLock \$Script ] = false) do={:return false}\r\ + \n :foreach Job in=[ /system/script/job/find where script=\$Script ] do={\ + :set Job [ /system/script/job/get \$Job ];\r\ + \n :while ([ :typeof (\$Job->\"parent\") ] = \"id\") do={:set Job [ /sy\ + stem/script/job/get [ find where .id=(\$Job->\"parent\") ] ]}\r\ + \n :if ((\$Job->\"type\") = \"login\") do={:return true};}; :return fa\ + lse; \r\ + \n}\r\ + \n\r\ + \n:set InspectVar do={\r\ + \n :global InspectVarRet;\r\ + \n :put [ :tocrlf [ \$InspectVarRet \$1 ] ];\r\ + \n}\r\ + \n\r\ + \n:set CommitBrief do={\r\ + \n :global CommitId;\r\ + \n :global CommitInfo;\r\ + \n :if (\$CommitId = \"unknown\") do={\r\ + \n :return \"unknown\";\r\ + \n }\r\ + \n :return (\$CommitInfo . \"/\" . [ :pick \$CommitId 0 8 ]);\r\ + \n}\r\ + \n\r\ + \n:set InspectVarRet do={\r\ + \n :local Input \$1;\r\ + \n :local Level (0 + [ :tonum \$2 ]);\r\ + \n :global CharacterReplace;\r\ + \n :global IfThenElse;\r\ + \n :global InspectVarRet;\r\ + \n :local IndentReturn do={\r\ + \n :local Prefix [ :tostr \$1 ];\r\ + \n :local Value [ :tostr \$2 ];\r\ + \n :local Level [ :tonum \$3 ];\r\ + \n :global CharacterMultiply;\r\ + \n :return ([ \$CharacterMultiply \" \" (\$Level * 2) ] . \"-\" . \$Pre\ + fix . \"-> \" . \$Value);\r\ + \n }\r\ + \n :local TypeOf [ :typeof \$Input ];\r\ + \n :local Len [ :len \$Input ];\r\ + \n :local Return [ \$IndentReturn \"type\" \$TypeOf \$Level ];\r\ + \n :if (\$TypeOf = \"array\") do={\r\ + \n :foreach Key,Value in=\$Input do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"key\" \$Key (\$Level + 1) ] . \"\\n\" . \\\r\ + \n [ \$InspectVarRet \$Value (\$Level + 2) ]);\r\ + \n }\r\ + \n } else={\r\ + \n :if (\$TypeOf = \"str\") do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"len\" \$Len \$Level ]);\r\ + \n :if ([ :typeof [ :find \$Input (\"\\r\") ] ] = \"num\") do={\r\ + \n :set Input [ \$CharacterReplace \$Input (\"\\r\") \"\" ];\r\ + \n }\r\ + \n :if ([ :typeof [ :find \$Input (\"\\n\") ] ] = \"num\") do={\r\ + \n :set Input [ \$CharacterReplace \$Input (\"\\n\") \" \" ];\r\ + \n }\r\ + \n }\r\ + \n :if (\$TypeOf != \"nothing\") do={\r\ + \n :set \$Return (\$Return . \"\\n\" . \\\r\ + \n [ \$IndentReturn \"value\" [ \$IfThenElse ([ :len \$Input ] > 80)\ + \_\\\r\ + \n ([ :pick \$Input 0 77 ] . \"...\") \$Input ] \$Level ]);\r\ + \n }\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n# !!! The function is not ready !!!\r\ + \n:global FetchHttpInfo do={\r\ + \n :local Mac [ :tostr \$1 ];\r\ + \n :global CertificateAvailable;\r\ + \n :global IsMacLocallyAdministered;\r\ + \n :global LogPrint;\r\ + \n :local Url \"https://api.macvendors.com/\";\r\ + \n :if ([ \$IsMacLocallyAdministered \$Mac ] = true) do={:return \"locall\ + y administered\";}\r\ + \n :do {\r\ + \n :if ([ \$CertificateAvailable \"GTS Root R4\" \"fetch\" ] = false) d\ + o={\r\ + \n \$LogPrint warning \$0 (\"Downloading required certificate failed.\ + \");\r\ + \n :error false;\r\ + \n }\r\ + \n :local Vendor ([ /tool/fetch \r\ + \n (\$Url . [ :pick \$Mac 0 8 ]) output=user as-value ]->\"data\");\r\ + \n :return \$Vendor;\r\ + \n } on-error={\r\ + \n :onerror Err {\r\ + \n /tool/fetch check-certificate=yes-without-crl (\$Url) output=none \ + as-value;\r\ + \n \$LogPrint debug \$0 (\"The mac vendor is not known in database.\"\ + );\r\ + \n } do={ \$LogPrint warning \$0 (\"Failed getting mac vendor: \" . \$E\ + rr); }\r\ + \n :return \"unknown vendor\";\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set GetPubIp do={\r\ + \n :global DetectIpAddrDefault;\r\ + \n :global DetectIpAddrFallback;\r\ + \n :global LogPrint;\r\ + \n \r\ + \n :local PubIpAddr false;\r\ + \n :local Url \$DetectIpAddrDefault;\r\ + \n\r\ + \n# :retry command={abc} delay=1 max=2 on-error={:put \"got error\"} \r\ + \n :do {\r\ + \n \$LogPrint debug \$0 (\"Trying to detect public IP using default s\ + ervice: \" . \$Url . \"...\");\r\ + \n :retry command={:set PubIpAddr ([ /tool/fetch http-method=\"get\"\ + \_check-certificate=yes-without-crl \$Url output=user as-value ]->\"data\"\ + )} \\\r\ + \n delay=50ms max=5 on-error={\$LogPrint error [ :jobname ] (\"Fail\ + ed to detect public IP using default service: \" . \$Url . \".\")}\r\ + \n #:error \"Failed to detect public IP using default service: \$Url\ + .\"};\r\ + \n } on-error={\r\ + \n \$LogPrint error \$0 (\"Failed to detect public IP using default s\ + ervice: \" . \$Url . \".\");\r\ + \n :set Url \$DetectIpAddrFallBack;\r\ + \n \$LogPrint debug \$0 (\"Trying to detect public IP using fallback \ + service: \" . \$Url . \"...\");\r\ + \n :retry command={:set PubIpAddr ([ /tool/fetch http-method=\"get\"\ + \_check-certificate=yes-without-crl \$Url output=user as-value ]->\"data\"\ + )} \\\r\ + \n delay=200ms max=5 on-error={\$LogPrint error [ :jobname ] (\"Fai\ + led to detect public IP using fallback service: \" . \$Url . \".\")}\r\ + \n };\r\ + \n :if (\$PubIpAddr = false) do={\r\ + \n :set PubIpAddr \"not-detected\";\r\ + \n } else={\r\ + \n :set PubIpAddr [ :pick \$PubIpAddr 0 15];\r\ + \n }\r\ + \n :return \$PubIpAddr;\r\ + \n}\r\ + \n\r\ + \n:set FormatLine do={\r\ + \n :local Key [ :tostr \$1 ];\r\ + \n :local Value [ :tostr \$2 ];\r\ + \n :local Indent [ :tonum \$3 ];\r\ + \n :local Spaces;\r\ + \n :local Return \"\";\r\ + \n :global CharacterMultiply;\r\ + \n :global EitherOr;\r\ + \n :set Indent [ \$EitherOr \$Indent 16 ];\r\ + \n :local Spaces [ \$CharacterMultiply \" \" \$Indent ];\r\ + \n :if ([ :len \$Key ] > 0) do={ :set Return (\$Key . \":\")}\r\ + \n :if ([ :len \$Key ] > (\$Indent - 2)) do={:set Return (\$Return . \"\\\ + n\" . [ :pick \$Spaces 0 \$Indent ] . \$Value);\r\ + \n } else={:set Return (\$Return . [ :pick \$Spaces 0 (\$Indent - [ :len \ + \$Return ]) ] . \$Value)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set ParseCustom do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Start [:find [ \$Str ] [:tostr \$2]];\r\ + \n :local End [ :tostr \$3 ];\r\ + \n :local Num [ :tonum \$4 ];\r\ + \n :local Return;\r\ + \n :if ([:len \$Num] = 0) do={:set Num \"0\"}\r\ + \n :local rest [:pick \$Str (\$Start+\$Num) [:len \$Str]]; \r\ + \n :if ([:len \$End ] = 0) do={:set Return [:pick \$Str \$Num \$Start]} e\ + lse={\r\ + \n :set End [:find \$rest \$End];\r\ + \n :set Return [:pick \$rest 0 \$End];\r\ + \n }\r\ + \n:return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set LogPrint do={\r\ + \n :local Severity [ :tostr \$1 ];\r\ + \n :local Name [ :tostr \$2 ];\r\ + \n :local Message [ :tostr \$3 ];\r\ + \n :global PrintDebug;\r\ + \n :global PrintDebugOverride;\r\ + \n :global EitherOr;\r\ + \n :local Debug [ \$EitherOr (\$PrintDebugOverride->\$Name) \$PrintDebug \ + ];\r\ + \n :local PrintSeverity do={\r\ + \n :global TerminalColorOutput;\r\ + \n :if (\$TerminalColorOutput != true) do={:return \$1}\r\ + \n :local Color { debug=96; info=97; warning=93; error=91 };\r\ + \n :return (\"\\1B[\" . \$Color->\$1 . \"m\" . \$1 . \"\\1B[0m\");\r\ + \n}\r\ + \n :local Log ([ \$EitherOr \$Name \"\" ] . \": \" . \$Message);\ + \r\ + \n :if (\$Severity ~ (\"^(custom|debug|error|info)\\\$\")) do={\r\ + \n :if (\$Severity = \"debug\") do={:log debug \$Log}\r\ + \n :if (\$Severity = \"error\") do={:log error \$Log}\r\ + \n :if (\$Severity = \"info\" ) do={:log info \$Log}\r\ + \n } else={:log warning \$Log; :set Severity \"warning\"}\r\ + \n :if (\$Severity != \"debug\" || \$Debug = true) do={:put ([ \$PrintSev\ + erity \$Severity ] . \": \" . \$Message)}\r\ + \n}\r\ + \n\r\ + \n:set CertificateAvailable do={\r\ + \n :local CommonName [ :tostr \$1 ];\r\ + \n :local UseFor [ :tostr \$2 ];\r\ + \n :global CertificateDownload;\r\ + \n :global EitherOr;\r\ + \n :global LogPrint;\r\ + \n :global ParseKeyValueStore;\r\ + \n :set UseFor [ \$EitherOr \$UseFor \"undefined\" ];\r\ + \n :if ([ /system/resource/get free-hdd-space ] < 8388608 && \\\r\ + \n [ /certificate/settings/get crl-download ] = true && \\\r\ + \n [ /certificate/settings/get crl-store ] = \"system\") do={\r\ + \n \$LogPrint warning \$0 (\"This system has low free flash space but \ + \" . \\\r\ + \n \"is configured to download certificate CRLs to system!\");\r\ + \n }\r\ + \n :if ([ :len \$CommonName ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No CommonName given!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local CertSettings [ /certificate/settings/get ];\r\ + \n :if (((\$CertSettings->\"builtin-trust-anchors\") = \"trusted\" || \\\ + \r\ + \n (\$CertSettings->\"builtin-trust-store\") ~ \$UseFor || \\\r\ + \n (\$CertSettings->\"builtin-trust-store\") = \"all\") && \\\r\ + \n [ :len [ /certificate/builtin/find where common-name=\$CommonName\ + \_] ] > 0) do={\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] = 0\ + ) do={\r\ + \n \$LogPrint info \$0 (\"Certificate with CommonName '\" . \$CommonNam\ + e . \"' not available.\");\r\ + \n :if ([ \$CertificateDownload \$CommonName ] = false) do={:return fal\ + se}\r\ + \n }\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] > 1\ + ) do={\r\ + \n \$LogPrint info \$0 (\"There are \" . \$CertCount . \" Certificates \ + with CommonName '\" . \$CommonName . \"'. Should be ok.\");\r\ + \n :return true;\r\ + \n }\r\ + \n :local CertVal [ /certificate/get [ find where common-name=\$CommonNam\ + e ] ];\r\ + \n :while ((\$CertVal->\"akid\") != \"\" && (\$CertVal->\"akid\") != (\$C\ + ertVal->\"skid\")) do={\r\ + \n :if ([ :len [ /certificate/find where skid=(\$CertVal->\"akid\") ] ]\ + \_= 0) do={\r\ + \n :local IssuerCN ([ \$ParseKeyValueStore (\$CertVal->\"issuer\") ]-\ + >\"CN\");\r\ + \n \$LogPrint info \$0 (\"Certificate chain for '\" . \$CommonName . \ + \"' is incomplete, missing '\" . \$IssuerCN . \"'.\");\r\ + \n :if ([ \$CertificateDownload \$IssuerCN ] = false) do={:return fal\ + se}\r\ + \n }\r\ + \n :set CertVal [ /certificate/get [ find where skid=(\$CertVal->\"akid\ + \") ] ];\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CertificateDownload do={\r\ + \n :local CommonName [ :tostr \$1 ];\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global GlobalScriptsUrlSuffix;\r\ + \n :global CertificateNameByCN;\r\ + \n :global CleanName;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global LogPrint;\r\ + \n :global RmFile;\r\ + \n :global WaitForFile;\r\ + \n \r\ + \n \$LogPrint info \$0 (\"Downloading and importing certificate with Comm\ + onName '\" . \$CommonName . \"'.\");\r\ + \n \r\ + \n :local FileName ([ \$CleanName \$CommonName ] . \".pem\");\r\ + \n :do {\r\ + \n /tool/fetch check-certificate=yes-without-crl http-header-field=({ [\ + \_\$FetchUserAgentStr \$0 ] }) \\\r\ + \n (\$GlobalScriptsUrl . \"certs/\" . \$FileName . \$GlobalScriptsUrl\ + Suffix) dst-path=\$FileName as-value;\r\ + \n \$WaitForFile \$FileName;\r\ + \n } on-error={\r\ + \n \$LogPrint warning \$0 (\"Failed downloading certificate with Common\ + Name '\" . \$CommonName . \\\r\ + \n \"' from repository! Trying fallback to mkcert.org...\");\r\ + \n :do {\r\ + \n :if ([ :len [ /certificate/find where common-name=\"ISRG Root X1\"\ + \_] ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"Required certificate is not available.\"\ + );\r\ + \n :return false;\r\ + \n }\r\ + \n /tool/fetch check-certificate=yes-without-crl http-header-field=({\ + \_[ \$FetchUserAgentStr \$0 ] }) \\\r\ + \n \"https://mkcert.org/generate/\" http-data=[ :serialize to=json \ + ({ \$CommonName }) ] \\\r\ + \n dst-path=\$FileName as-value;\r\ + \n \$WaitForFile \$FileName;\r\ + \n :if ([ /file/get \$FileName size ] = 0) do={\r\ + \n \$RmFile \$FileName;\r\ + \n :error false;\r\ + \n }\r\ + \n } on-error={\r\ + \n \$LogPrint warning \$0 (\"Failed downloading certificate with Comm\ + onName '\" . \$CommonName . \"'!\");\r\ + \n :return false;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n /certificate/import file-name=\$FileName passphrase=\"\" as-value;\r\ + \n :delay 1s;\r\ + \n \$RmFile \$FileName;\r\ + \n\r\ + \n :if ([ :len [ /certificate/find where common-name=\$CommonName ] ] = 0\ + ) do={\r\ + \n /certificate/remove [ find where name~(\"^\" . \$FileName . \"_[0-9]\ + +\\\$\") ];\r\ + \n \$LogPrint warning \$0 (\"Certificate with CommonName '\" . \$Common\ + Name . \"' still unavailable!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :foreach Cert in=[ /certificate/find where name~(\"^\" . \$FileName . \ + \"_[0-9]+\\\$\") ] do={\r\ + \n \$CertificateNameByCN [ /certificate/get \$Cert common-name ];\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CertificateNameByCN do={\r\ + \n :local Match [ :tostr \$1 ];\r\ + \n :global CleanName;\r\ + \n :global LogPrint;\r\ + \n :local Cert ([ /certificate/find where (common-name=\$Match or fingerp\ + rint=\$Match or name=\$Match) ]->0);\r\ + \n :if ([ :len \$Cert ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No matching certificate found.\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local CommonName [ /certificate/get \$Cert common-name ];\r\ + \n /certificate/set \$Cert name=[ \$CleanName \$CommonName ];\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set CharacterMultiply do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Num [ :tonum \$2 ];\r\ + \n :if (\$Num = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :for I from=1 to=\$Num do={:set Return (\$Return . \$Str)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set FetchUserAgentStr do={\r\ + \n :local Caller [ :tostr \$1 ];\r\ + \n :global IfThenElse;\r\ + \n :local Resource [ /system/resource/get ];\r\ + \n :return (\"User-Agent: Mikrotik/\" . \$Resource->\"version\" . \" \" .\ + \_\$Resource->\"architecture-name\" . \\\r\ + \n \" \" . \$Caller . \"/Fetch (https://amster.vados.ru/; main/3419/3ee\ + 19780)\");\r\ + \n}\r\ + \n\r\ + \n:set Grep do={\r\ + \n :local Input ([ :tostr \$1 ] . \"\\n\");\r\ + \n :local Pattern [ :tostr \$2 ];\r\ + \n :if ([ :typeof [ :find \$Input \$Pattern ] ] = \"nil\") do={:return []\ + }\r\ + \n :do {\r\ + \n :local Line [ :pick \$Input 0 [ :find \$Input \"\\n\" ] ];\r\ + \n :if ([ :typeof [ :find \$Line \$Pattern ] ] = \"num\") do={:return \ + \$Line}\r\ + \n :set Input [ :pick \$Input ([ :find \$Input \"\\n\" ] + 1) [ :len \$\ + Input ] ];\r\ + \n } while=([ :len \$Input ] > 0);\r\ + \n :return [];\r\ + \n}\r\ + \n\r\ + \n:set HumanReadableNum do={\r\ + \n :local Input [ :tonum \$1 ];\r\ + \n :local Base [ :tonum \$2 ];\r\ + \n :global EitherOr;\r\ + \n :global IfThenElse;\r\ + \n :local Prefix \"kMGTPE\";\r\ + \n :local Pow 1;\r\ + \n :set Base [ \$EitherOr \$Base 1024 ];\r\ + \n :local Bin [ \$IfThenElse (\$Base = 1024) \"i\" \"\" ];\r\ + \n :if (\$Input < \$Base) do={:return \$Input}\r\ + \n :for I from=0 to=[ :len \$Prefix ] do={\r\ + \n :set Pow (\$Pow * \$Base);\r\ + \n :if (\$Input / \$Base < \$Pow) do={\r\ + \n :set Prefix [ :pick \$Prefix \$I ];\r\ + \n :local Tmp1 (\$Input * 100 / \$Pow);\r\ + \n :local Tmp2 (\$Tmp1 / 100);\r\ + \n :if (\$Tmp2 >= 100) do={:return (\$Tmp2 . \$Prefix . \$Bin)}\r\ + \n :return (\$Tmp2 . \".\" . \\\r\ + \n [ :pick \$Tmp1 [ :len \$Tmp2 ] ([ :len \$Tmp1 ] - [ :len \$Tmp\ + 2 ] + 1) ] . \\\r\ + \n \$Prefix . \$Bin);\r\ + \n }\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set CleanName do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :local Return \"\";\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :if ([ :typeof [ find \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqr\ + stuvwxyz0123456789\" \$Char ] ] = \"nil\") do={\r\ + \n :do {:if ([ :len \$Return ] = 0) do={:error true};\r\ + \n :if ([ :pick \$Return ([ :len \$Return ] - 1) ] = \"-\") do={:er\ + ror true}; :set Char \"-\"} on-error={:set Char \"\"}; \r\ + \n };\r\ + \n :set Return (\$Return . \$Char)};\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set GetRandomNumber do={\r\ + \n :global EitherOr;\r\ + \n :return [ :rndnum from=0 to=[ \$EitherOr [ :tonum \$1 ] 4294967295 ] ]\ + \r\ + \n}\r\ + \n\r\ + \n:set RandomDelay do={\r\ + \n :local Time [ :tonum \$1 ];\r\ + \n :local Unit [ :tostr \$2 ];\r\ + \n :global EitherOr;\r\ + \n :global GetRandomNumber;\r\ + \n :global MAX;\r\ + \n :if (\$Time = 0) do={:return false}\r\ + \n :delay ([ \$MAX 10 [ \$GetRandomNumber ([ :tonsec [ :totime (\$Time . \ + [ \$EitherOr \$Unit \"s\" ]) ] ] / 1000000) ] ] . \"ms\");\r\ + \n}\r\ + \n\r\ + \n:set EscapeForRegEx do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :if ([ :len \$Input ] = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :local Chars (\"^.[]\\\$()|*+\?{}\\\\\");\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :if ([ :find \$Chars \$Char ]) do={:set Char (\"\\\\\" . \$Char)}\r\ + \n :set Return (\$Return . \$Char);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ExitError do={\r\ + \n :local ExitOK [ :tostr \$1 ];\r\ + \n :local Name [ :tostr \$2 ];\r\ + \n :local Error [ :tostr \$3 ];\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :if (\$ExitOK = \"false\") do={\r\ + \n \$LogPrint error \$Name ([ \$IfThenElse ([ :pick \$Name 0 1 ] = \"\\\ + \$\") \\\r\ + \n \"Function\" \"Script\" ] . \" '\" . \$Name . \"' exited with er\ + ror\" . \\\r\ + \n [ \$IfThenElse (!(\$Error ~ \"^(|true|false)\\\$\")) (\": \" . \ + \$Error) \".\" ]);\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n:set MiniDateTimeStamp do={\r\ + \n /system/clock;\r\ + \n :local vdate [get date];\r\ + \n :local vtime [get time];\r\ + \n :local vdoff [:toarray \"0,4,5,7,8,10\"];\r\ + \n :local MM [:pick \$vdate (\$vdoff->2) (\$vdoff->3)];\r\ + \n :local M [:tonum \$MM];\r\ + \n :if (\$vdate ~ \".../../....\") do={\r\ + \n :set vdoff [:toarray \"7,11,1,3,4,6\"];\r\ + \n :set M ([:find \"xxanebarprayunulugepctovecANEBARPRAYUNULUGE\ + PCTOVEC\" [:pick \$vdate (\$vdoff->2) (\$vdoff->3)] -1] / 2);\r\ + \n :if (\$M>12) do={:set M (\$M - 12)}\r\ + \n :set MM [:pick (100 + \$M) 1 3];\r\ + \n }\r\ + \n :local yyyy [:pick \$vdate (\$vdoff->0) (\$vdoff->1)];\r\ + \n :local dd [:pick \$vdate (\$vdoff->4) (\$vdoff->5)];\r\ + \n :local HH [:pick \$vtime 0 2];\r\ + \n :local mm [:pick \$vtime 3 5];\r\ + \n :local ss [:pick \$vtime 6 8];\r\ + \n :return ([\$yyyy] . [\$MM] . [\$dd] . [\$HH] . [\$mm] . [\$ss]);\r\ + \n}\r\ + \n\r\ + \n:set WaitForFile do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :local WaitTime [ :totime \$2 ];\r\ + \n :global CleanFilePath;\r\ + \n :global EitherOr;\r\ + \n :global MAX;\r\ + \n :set FileName [ \$CleanFilePath \$FileName ];\r\ + \n :local Delay ([ \$MAX [ \$EitherOr \$WaitTime 2s ] 100ms ] / 9);\r\ + \n :do {\r\ + \n :retry {\r\ + \n /file/get \$FileName;\r\ + \n :return true;\r\ + \n } delay=\$Delay max=10;\r\ + \n } on-error={ }\r\ + \n :while ([ :len [ /file/find where name=\$FileName ] ] > 0) do={\r\ + \n :do {\r\ + \n /file/get \$FileName;\r\ + \n :return true;\r\ + \n } on-error={ }\r\ + \n :delay \$Delay;\r\ + \n :set Delay (\$Delay * 3 / 2);\r\ + \n }\r\ + \n :return false;\r\ + \n}\r\ + \n\r\ + \n:set FileGet do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :global WaitForFile;\r\ + \n :if ([ \$WaitForFile \$FileName 0s ] = false) do={:return false}\r\ + \n :local FileVal false;\r\ + \n :do {:set FileVal [ /file/get \$FileName ];\r\ + \n } on-error={ }\r\ + \n :return \$FileVal;\r\ + \n}\r\ + \n\r\ + \n:set RmDir do={\r\ + \n :local DirName [ :tostr \$1 ];\r\ + \n :global FileGet;\r\ + \n :global LogPrint;\r\ + \n \$LogPrint debug \$0 (\"Removing directory: \". \$DirName);\r\ + \n :local DirVal [ \$FileGet \$DirName ];\r\ + \n :if (\$DirVal = false) do={\$LogPrint debug \$0 (\"... which does not \ + exist.\"); :return true};\r\ + \n :if (\$DirVal->\"type\" != \"directory\") do={\$LogPrint error \$0 (\"\ + Directory '\" . \$DirName . \"' is not a directory.\"); :return false};\r\ + \n :onerror Err {/file/remove \$DirName} do={\$LogPrint error \$0 (\"Remo\ + ving directory '\" . \$DirName . \"' failed: \" . \$Err); :return false};\ + \r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set RmFile do={\r\ + \n :local FileName [ :tostr \$1 ];\r\ + \n :global FileGet;\r\ + \n :global LogPrint;\r\ + \n \$LogPrint debug \$0 (\"Removing file: \". \$FileName);\r\ + \n :local FileVal [ \$FileGet \$FileName ];\r\ + \n :if (\$FileVal = false) do={\$LogPrint debug \$0 (\"... which does not\ + \_exist.\"); :return true}\r\ + \n :if (\$FileVal->\"type\" = \"directory\" || \$FileVal->\"type\" = \"di\ + sk\") do={\r\ + \n \$LogPrint error \$0 (\"File '\" . \$FileName . \"' is not a file.\"\ + ); :return false}\r\ + \n :onerror Err {\r\ + \n /file/remove \$FileName;\r\ + \n } do={\$LogPrint error \$0 (\"Removing file '\" . \$FileName . \"' fai\ + led: \" . \$Err); :return false}\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set MkDir do={\r\ + \n :local Path [ :tostr \$1 ];\r\ + \n :global CleanFilePath;\r\ + \n :global FileGet;\r\ + \n :global RmDir;\r\ + \n :global WaitForFile;\r\ + \n :global LogPrint;\r\ + \n :local MkTmpfs do={\r\ + \n :global WaitForFile;\r\ + \n :local TmpFs [ /disk/find where slot=tmpfs type=tmpfs ];\r\ + \n :if ([ :len \$TmpFs ] = 1) do={\r\ + \n :if ([ /disk/get \$TmpFs disabled ] = true) do={\r\ + \n \$LogPrint info \$0 (\"The tmpfs is disabled, enabling.\");\r\ + \n /disk/enable \$TmpFs;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n \$LogPrint info \$0 (\"Creating disk of type tmpfs.\");\r\ + \n \$RmDir \"tmpfs\";\r\ + \n :onerror Err {\r\ + \n /disk/add slot=tmpfs type=tmpfs tmpfs-max-size=([ /system/resource\ + /get total-memory ] / 3);\r\ + \n \$WaitForFile \"tmpfs\";\r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Creating disk of type tmpfs failed: \" .\ + \_\$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n }\r\ + \n :set Path [ \$CleanFilePath \$Path ];\r\ + \n :if (\$Path = \"\") do={\r\ + \n :return true;\r\ + \n }\r\ + \n \$LogPrint debug \$0 (\"Making directory: \" . \$Path);\r\ + \n :local PathVal [ \$FileGet \$Path ];\r\ + \n :if (\$PathVal->\"type\" = \"directory\") do={\r\ + \n \$LogPrint debug \$0 (\"... which already exists.\");\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ :pick \$Path 0 5 ] = \"tmpfs\") do={\r\ + \n :if ([ \$MkTmpfs ] = false) do={\r\ + \n :return false;\r\ + \n }\r\ + \n }\r\ + \n :onerror Err {\r\ + \n /file/add type=\"directory\" name=\$Path;\r\ + \n \$WaitForFile \$Path;\r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Making directory '\" . \$Path . \"' failed\ + : \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n:set MAX do={:if (\$1 > \$2) do={:return \$1}\r\ + \n :return \$2;\r\ + \n}\r\ + \n:set MIN do={:if (\$1 < \$2) do={:return \$1}\r\ + \n :return \$2;\r\ + \n}\r\ + \n\r\ + \n:set CharacterMultiply do={\r\ + \n :local Str [ :tostr \$1 ];\r\ + \n :local Num [ :tonum \$2 ];\r\ + \n :if (\$Num = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :for I from=1 to=\$Num do={:set Return (\$Return . \$Str)}\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set CharacterReplace do={\r\ + \n :local String [ :tostr \$1 ];\r\ + \n :local ReplaceFrom [ :tostr \$2 ];\r\ + \n :local ReplaceWith [ :tostr \$3 ];\r\ + \n :local Return \"\";\r\ + \n :if (\$ReplaceFrom = \"\") do={:return \$String}\r\ + \n :while ([ :typeof [ :find \$String \$ReplaceFrom ] ] != \"nil\") do={\ + \r\ + \n :local Pos [ :find \$String \$ReplaceFrom ];\r\ + \n :set Return (\$Return . [ :pick \$String 0 \$Pos ] . \$ReplaceWith);\ + \r\ + \n :set String [ :pick \$String (\$Pos + [ :len \$ReplaceFrom ]) [ :len\ + \_\$String ] ];\r\ + \n }\r\ + \n :return (\$Return . \$String);\r\ + \n}\r\ + \n\r\ + \n:set CleanFilePath do={\r\ + \n :local Path [ :tostr \$1 ];\r\ + \n :global CharacterReplace;\r\ + \n :while (\$Path ~ \"//\") do={:set \$Path [ \$CharacterReplace \$Path \ + \"//\" \"/\" ]};\r\ + \n :if ([ :pick \$Path 0 ] = \"/\") do={:set Path [ :pick \$Path 1 [ :len\ + \_\$Path ] ]};\r\ + \n :if ([ :pick \$Path ([ :len \$Path ] - 1) ] = \"/\") do={:set Path [ :\ + pick \$Path 0 ([ :len \$Path ] - 1) ]};\r\ + \n :return \$Path;\r\ + \n}\r\ + \n\r\ + \n:set IfThenElse do={\r\ + \n :if ([ :tostr \$1 ] = \"true\" || [ :tobool \$1 ] = true) do={:return \ + \$2};\r\ + \n :return \$3;\r\ + \n}\r\ + \n\r\ + \n:set EitherOr do={\r\ + \n :global IfThenElse;\r\ + \n :if ([ :typeof \$1 ] = \"num\") do={:return [ \$IfThenElse (\$1 != 0) \ + \$1 \$2 ]}\r\ + \n :if ([ :typeof \$1 ] = \"time\") do={:return [ \$IfThenElse (\$1 > 0s)\ + \_\$1 \$2 ]}\r\ + \n# this works for boolean values, literal ones with parentheses\r\ + \n :return [ \$IfThenElse ([ :len [ :tostr \$1 ] ] > 0) \$1 \$2 ];\r\ + \n}\r\ + \n\r\ + \n:set ParseKeyValueStore do={\r\ + \n :local Source \$1;\r\ + \n :if ([ :pick \$Source 0 1 ] = \"{\") do={\r\ + \n :do {\r\ + \n :return [ :deserialize from=json \$Source ];\r\ + \n } on-error={ }\r\ + \n } \r\ + \n :if ([ :typeof \$Source ] != \"array\") do={:set Source [ :tostr \$1 ]\ + }\r\ + \n :local Result ({});\r\ + \n :foreach KeyValue in=[ :toarray \$Source ] do={\r\ + \n :if ([ :find \$KeyValue \"=\" ]) do={\r\ + \n :local Key [ :pick \$KeyValue 0 [ :find \$KeyValue \"=\" ] ];\r\ + \n :local Value [ :pick \$KeyValue ([ :find \$KeyValue \"=\" ] + 1) [\ + \_:len \$KeyValue ] ];\r\ + \n :if (\$Value=\"true\") do={:set Value true}\r\ + \n :if (\$Value=\"false\") do={:set Value false}\r\ + \n :set (\$Result->\$Key) \$Value;\r\ + \n } else={:set (\$Result->\$KeyValue) true}\r\ + \n }\r\ + \n :return \$Result;\r\ + \n}\r\ + \n:set RequiredRouterOS do={\r\ + \n :local Caller [ :tostr \$1 ];\r\ + \n :local Required [ :tostr \$2 ];\r\ + \n :local Warn [ :tostr \$3 ];\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global VersionToNum;\r\ + \n :if (!(\$Required ~ \"^\\\\d+\\\\.\\\\d+((alpha|beta|rc|\\\\.)\\\\d+|)\ + \\\$\")) do={\r\ + \n \$LogPrint error \$0 (\"No valid RouterOS version: \" . \$Required);\ + \r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ \$VersionToNum \$Required ] > [ \$VersionToNum [ /system/packag\ + e/update/get installed-version ] ]) do={\r\ + \n :if (\$Warn = \"true\") do={\r\ + \n \$LogPrint warning \$0 (\"This \" . [ \$IfThenElse ([ :pick \$Call\ + er 0 ] = (\"\\\$\")) \"function\" \"script\" ] . \\\r\ + \n \" '\" . \$Caller . \"' (at least specific functionality) requir\ + es RouterOS \" . \$Required . \". Please update!\");\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n:set VersionToNum do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :local Multi 0x1000000;\r\ + \n :local Return 0;\r\ + \n :global CharacterReplace;\r\ + \n :set Input [ \$CharacterReplace \$Input \".\" \",\" ];\r\ + \n :foreach I in={ \"zero\"; \"alpha\"; \"beta\"; \"rc\" } do={\r\ + \n :set Input [ \$CharacterReplace \$Input \$I (\",\" . \$I . \",\") ];\ + \r\ + \n }\r\ + \n :foreach Value in=([ :toarray \$Input ], 0) do={\r\ + \n :local Num [ :tonum \$Value ];\r\ + \n :if (\$Multi = 0x100) do={\r\ + \n :if ([ :typeof \$Num ] = \"num\") do={\r\ + \n :set Return (\$Return + 0xff00);\r\ + \n :set Multi (\$Multi / 0x100);\r\ + \n } else={\r\ + \n :if (\$Value = \"zero\") do={ }\r\ + \n :if (\$Value = \"alpha\") do={ :set Return (\$Return + 0x3f00); \ + }\r\ + \n :if (\$Value = \"beta\") do={ :set Return (\$Return + 0x5f00); }\ + \r\ + \n :if (\$Value = \"rc\") do={ :set Return (\$Return + 0x7f00); }\r\ + \n }\r\ + \n }\r\ + \n :if ([ :typeof \$Num ] = \"num\") do={ :set Return (\$Return + (\$Va\ + lue * \$Multi)); }\r\ + \n :set Multi (\$Multi / 0x100);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ScriptLock do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local WaitMax [ :totime \$2 ];\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global ScriptLockOrder;\r\ + \n :if ([ :typeof \$ScriptLockOrder ] = \"nothing\") do={\r\ + \n :set ScriptLockOrder ({});\r\ + \n }\r\ + \n :if ([ :typeof (\$ScriptLockOrder->\$Script) ] = \"nothing\") do={\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n }\r\ + \n :local JobCount do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :return [ :len [ /system/script/job/find where script=\$Script ] ];\ + \r\ + \n }\r\ + \n :local TicketCount do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :local Count 0;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\") do={:set Count (\$Count \ + + 1)}\r\ + \n }\r\ + \n :return \$Count;\r\ + \n }\r\ + \n :local IsFirstTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Check [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if (\$Ticket = \$Check) do={:return true}\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\" && \$Ticket != \$Check) d\ + o={:return false}\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :local AddTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Add [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :while (true) do={\r\ + \n :local Pos [ :len (\$ScriptLockOrder->\$Script) ];\r\ + \n :set (\$ScriptLockOrder->\$Script->\$Pos) \$Add;\r\ + \n :delay 10ms;\r\ + \n :if ((\$ScriptLockOrder->\$Script->\$Pos) = \$Add) do={:return tru\ + e}\r\ + \n }\r\ + \n }\r\ + \n :local RemoveTicket do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :local Remove [ :tostr \$2 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Id,Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :while ((\$ScriptLockOrder->\$Script->\$Id) = \$Remove) do={\r\ + \n :set (\$ScriptLockOrder->\$Script->\$Id);\r\ + \n :delay 10ms;\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n :local CleanupTickets do={\r\ + \n :local Script [ :tostr \$1 ];\r\ + \n :global ScriptLockOrder;\r\ + \n :foreach Ticket in=(\$ScriptLockOrder->\$Script) do={\r\ + \n :if ([ :typeof \$Ticket ] != \"nothing\") do={:return false}\r\ + \n }\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n }\r\ + \n :if ([ :typeof \$WaitMax ] = \"nil\" ) do={:set WaitMax 0s}\r\ + \n :if ([ :len [ /system/script/find where name=\$Script ] ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"A script named '\" . \$Script . \"' does not\ + \_exist!\");\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$JobCount \$Script ] = 0) do={\r\ + \n \$LogPrint error \$0 (\"No script '\" . \$Script . \"' is running!\"\ + );\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$TicketCount \$Script ] >= [ \$JobCount \$Script ]) do={\r\ + \n \$LogPrint error \$0 (\"More tickets than running scripts '\" . \$Sc\ + ript . \"', resetting!\");\r\ + \n :set (\$ScriptLockOrder->\$Script) ({});\r\ + \n /system/script/job/remove [ find where script=\$Script ];\r\ + \n }\r\ + \n :local MyTicket [ \$GetRandom20CharAlNum 6 ];\r\ + \n \$AddTicket \$Script \$MyTicket;\r\ + \n :local WaitInterval (\$WaitMax / 20);\r\ + \n :local WaitTime \$WaitMax;\r\ + \n :while (\$WaitTime > 0 && \\\r\ + \n ([ \$IsFirstTicket \$Script \$MyTicket ] = false || \\\r\ + \n [ \$TicketCount \$Script ] < [ \$JobCount \$Script ])) do={\r\ + \n :set WaitTime (\$WaitTime - \$WaitInterval);\r\ + \n :delay \$WaitInterval;\r\ + \n }\r\ + \n :if ([ \$IsFirstTicket \$Script \$MyTicket ] = true && \\\r\ + \n [ \$TicketCount \$Script ] = [ \$JobCount \$Script ]) do={\r\ + \n \$RemoveTicket \$Script \$MyTicket;\r\ + \n \$CleanupTickets \$Script;\r\ + \n :return true;\r\ + \n }\r\ + \n \$RemoveTicket \$Script \$MyTicket;\r\ + \n \$LogPrint debug \$0 (\"Script '\" . \$Script . \"' started more than \ + once\" . \\\r\ + \n [ \$IfThenElse (\$WaitTime < \$WaitMax) \" and timed out waiting for\ + \_lock\" \"\" ] . \"...\");\r\ + \n :return false;\r\ + \n}\r\ + \n:set SendNotification do={ :onerror Err {\r\ + \n :global SendNotification2;\r\ + \n \$SendNotification2 ({ origin=\$0; subject=\$1; message=\$2; link=\$3;\ + \_silent=\$4 });\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err}\r\ + \n}\r\ + \n:set SendNotification2 do={\r\ + \n :local Notification \$1;\r\ + \n :global NotificationFunctions;\r\ + \n :foreach FunctionName,Discard in=\$NotificationFunctions do={\r\ + \n (\$NotificationFunctions->\$FunctionName) (\"\\\$NotificationFunctio\ + ns->\\\"\" . \$FunctionName . \"\\\"\") \$Notification;\r\ + \n }\r\ + \n}\r\ + \n:set SymbolByUnicodeName do={\r\ + \n :local Name [ :tostr \$1 ];\r\ + \n :global EitherOr;\r\ + \n :global LogPrint;\r\ + \n :global SymbolsExtra;\r\ + \n :local Symbols ({\r\ + \n \"abacus\"=\"\\F0\\9F\\A7\\AE\";\r\ + \n \"alarm-clock\"=\"\\E2\\8F\\B0\";\r\ + \n \"arrow-down\"=\"\\E2\\AC\\87\";\r\ + \n \"arrow-up\"=\"\\E2\\AC\\86\";\r\ + \n \"calendar\"=\"\\F0\\9F\\93\\85\";\r\ + \n \"card-file-box\"=\"\\F0\\9F\\97\\83\";\r\ + \n \"chart-decreasing\"=\"\\F0\\9F\\93\\89\";\r\ + \n \"chart-increasing\"=\"\\F0\\9F\\93\\88\";\r\ + \n \"cloud\"=\"\\E2\\98\\81\";\r\ + \n \"cross-mark\"=\"\\E2\\9D\\8C\";\r\ + \n \"earth\"=\"\\F0\\9F\\8C\\8D\";\r\ + \n \"fire\"=\"\\F0\\9F\\94\\A5\";\r\ + \n \"floppy-disk\"=\"\\F0\\9F\\92\\BE\";\r\ + \n \"gear\"=\"\\E2\\9A\\99\";\r\ + \n \"heart\"=\"\\E2\\99\\A5\";\r\ + \n \"high-voltage-sign\"=\"\\E2\\9A\\A1\";\r\ + \n \"incoming-envelope\"=\"\\F0\\9F\\93\\A8\";\r\ + \n \"information\"=\"\\E2\\84\\B9\";\r\ + \n \"large-orange-circle\"=\"\\F0\\9F\\9F\\A0\";\r\ + \n \"large-red-circle\"=\"\\F0\\9F\\94\\B4\";\r\ + \n \"link\"=\"\\F0\\9F\\94\\97\";\r\ + \n \"lock-with-ink-pen\"=\"\\F0\\9F\\94\\8F\";\r\ + \n \"memo\"=\"\\F0\\9F\\93\\9D\";\r\ + \n \"mobile-phone\"=\"\\F0\\9F\\93\\B1\";\r\ + \n \"pushpin\"=\"\\F0\\9F\\93\\8C\";\r\ + \n \"scissors\"=\"\\E2\\9C\\82\";\r\ + \n \"scroll\"=\"\\F0\\9F\\93\\9C\";\r\ + \n \"smiley-partying-face\"=\"\\F0\\9F\\A5\\B3\";\r\ + \n \"smiley-smiling-face\"=\"\\E2\\98\\BA\";\r\ + \n \"smiley-winking-face-with-tongue\"=\"\\F0\\9F\\98\\9C\";\r\ + \n \"sparkles\"=\"\\E2\\9C\\A8\";\r\ + \n \"speech-balloon\"=\"\\F0\\9F\\92\\AC\";\r\ + \n \"star\"=\"\\E2\\AD\\90\";\r\ + \n \"warning-sign\"=\"\\E2\\9A\\A0\";\r\ + \n \"white-heavy-check-mark\"=\"\\E2\\9C\\85\"\r\ + \n }, \$SymbolsExtra);\r\ + \n :local Magic [ :pick [ /system/clock/get date ] 4 10 ];\r\ + \n :local Special {\r\ + \n \"information-04-01\"=\"\\F0\\9F\\9A\\BB\";\r\ + \n \"large-orange-circle-04-01\"=\"\\F0\\9F\\8D\\8A\";\r\ + \n \"large-orange-circle-10-31\"=\"\\F0\\9F\\8E\\83\";\r\ + \n \"large-red-circle-04-01\"=\"\\F0\\9F\\8D\\92\" };\r\ + \n :if ([ :len (\$Symbols->\$Name) ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"No symbol available for name '\" . \$Name \ + . \"'!\");\r\ + \n :return \"\";\r\ + \n }\r\ + \n :return ([ \$EitherOr (\$Special->(\$Name . \$Magic)) (\$Symbols->\$Na\ + me) ] . \"\\EF\\B8\\8F\");\r\ + \n}\r\ + \n:set SymbolForNotification do={\r\ + \n :global NotificationsWithSymbols;\r\ + \n :global SymbolByUnicodeName;\r\ + \n :global IfThenElse;\r\ + \n :if (\$NotificationsWithSymbols != true) do={:return [ \$IfThenElse ([\ + \_:len \$2 ] > 0) ([ :tostr \$2 ] . \" \") \"\" ]}\r\ + \n :local Return \"\";\r\ + \n :foreach Symbol in=[ :toarray \$1 ] do={:set Return (\$Return . [ \$Sy\ + mbolByUnicodeName \$Symbol ])}\r\ + \n :return (\$Return . \" \");\r\ + \n}\r\ + \n:set Unix2Dos do={:return [ :tocrlf [ :tostr \$1 ] ]}\r\ + \n:set UrlEncode do={\r\ + \n :local Input [ :tostr \$1 ];\r\ + \n :if ([ :len \$Input ] = 0) do={:return \"\"}\r\ + \n :local Return \"\";\r\ + \n :local Chars (\"\\n\\r !\\\"#\\\$%&'()*+,:;<=>\?@[\\\\]^`{|}~\");\r\ + \n :local Subs { \"%0A\"; \"%0D\"; \"%20\"; \"%21\"; \"%22\"; \"%23\"; \"\ + %24\"; \"%25\"; \"%26\"; \"%27\";\r\ + \n \"%28\"; \"%29\"; \"%2A\"; \"%2B\"; \"%2C\"; \"%3A\"; \"%3B\"; \ + \"%3C\"; \"%3D\"; \"%3E\"; \"%3F\";\r\ + \n \"%40\"; \"%5B\"; \"%5C\"; \"%5D\"; \"%5E\"; \"%60\"; \"%7B\"; \ + \"%7C\"; \"%7D\"; \"%7E\" };\r\ + \n :for I from=0 to=([ :len \$Input ] - 1) do={\r\ + \n :local Char [ :pick \$Input \$I ];\r\ + \n :local Replace [ :find \$Chars \$Char ];\r\ + \n :if ([ :typeof \$Replace ] = \"num\") do={:set Char (\$Subs->\$Repla\ + ce)}\r\ + \n :set Return (\$Return . \$Char);\r\ + \n }\r\ + \n :return \$Return;\r\ + \n}\r\ + \n:set ValidateSyntax do={\r\ + \n :local Code [ :tostr \$1 ];\r\ + \n :global LogPrint;\r\ + \n :onerror Err {\r\ + \n [ :parse (\":local Validate do={\\n\" . \$Code . \"\\n}\") ];\r\ + \n } do={\r\ + \n \$LogPrint debug \$0 (\"Valdation failed: \" . \$Err);\r\ + \n :return false;\r\ + \n }\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsDNSResolving do={\r\ + \n :do {:resolve \"api.telegram.org\"} on-error={:return false}\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsFullyConnected do={\r\ + \n :global IsDNSResolving;\r\ + \n :global IsTimeSync;\r\ + \n :if ([ \$IsDNSResolving ] = false) do={:return false};\r\ + \n :if ([ \$IsTimeSync ] = false) do={:return false};\r\ + \n :return true;\r\ + \n}\r\ + \n:set IsTimeSync do={\r\ + \n :global IsTimeSyncCached;\r\ + \n :global IsTimeSyncResetNtp;\r\ + \n :if (\$IsTimeSyncCached = true) do={:return true}\r\ + \n :if ([ /system/ntp/client/get enabled ] = true) do={\r\ + \n :if ([ /system/ntp/client/get status ] = \"synchronized\") do={\r\ + \n :set IsTimeSyncCached true;\r\ + \n :return true;\r\ + \n }\r\ + \n :local Uptime [ /system/resource/get uptime ];\r\ + \n :if ([ :typeof \$IsTimeSyncResetNtp ] = \"nothing\") do={\r\ + \n :set IsTimeSyncResetNtp \$Uptime;\r\ + \n }\r\ + \n :if (\$Uptime - \$IsTimeSyncResetNtp < 3m) do={:return false}\r\ + \n :log warning \"\$0 The ntp client is configured, but did not sync.\"\ + ;\r\ + \n :set IsTimeSyncResetNtp \$Uptime;\r\ + \n /system/ntp/client/set enabled=no;\r\ + \n :delay 20ms;\r\ + \n /system/ntp/client/set enabled=yes;\r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ /system/license/get ]->\"level\" = \"free\" || \\\r\ + \n [ /system/resource/get ]->\"board-name\" = \"x86\") do={\r\ + \n :log debug \"\$0 No ntp client configured, relying on RTC for CHR fr\ + ee license and x86.\";\r\ + \n :return true;\r\ + \n }\r\ + \n :if ([ /ip/cloud/get update-time ] = true) do={\r\ + \n :if ([ :typeof [ /ip/cloud/get public-address ] ] = \"ip\") do={\r\ + \n :set IsTimeSyncCached true;\r\ + \n :return true;\r\ + \n }\r\ + \n :return false;\r\ + \n }\r\ + \n :log debug \"\$0 No time source configured! Returning gracefully...\";\ + \r\ + \n :return true;\r\ + \n}\r\ + \n\r\ + \n# read parts of a large file\r\ + \n:set FetchLargeFiles do={\r\ + \n :local ScriptName [:tostr \$1];\r\ + \n :local fetchUrl [:tostr \$2];\r\ + \n :local CheckCert [:tostr \$3];\r\ + \n :local fetchMode [:tostr \$4];\r\ + \n :local fetchMethod [:tostr \$5];\r\ + \n :local FetchString \"undefined\";\r\ + \n \r\ + \n :global CleanName;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global MkDir;\r\ + \n :global RmDir;\r\ + \n :global RmFile;\r\ + \n :global WaitForFile;\r\ + \n\r\ + \n :set CheckCert [ \$IfThenElse (\$CheckCert = \"false\") \"no\" \"yes-w\ + ithout-crl\" ];\r\ + \n #:set fetchMode [ \$IfThenElse (\$fetchMode != \"false\") [:tostr (\"m\ + ode=\" . \$fetchMode)] ];\r\ + \n #:set fetchMethod [\$IfThenElse (\$fetchMethod != \"false\") [:tostr (\ + \"http-method=\\\"\" . \$fetchMethod . \"\\\"\") ]];\r\ + \n \r\ + \n :local DirName (\"tmpfs/\" . [ \$CleanName \$ScriptName ]);\r\ + \n :if ([ \$MkDir \$DirName ] = false) do={\r\ + \n \$LogPrint error \$0 (\"Failed creating directory!\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local FileName (\$DirName . \"/\" . [ \$CleanName \$0 ] . \"-\" . [ \ + \$GetRandom20CharAlNum ]);\r\ + \n #/tool/fetch check-certificate=\$CheckCert \$Url dst-path=\$FileName h\ + ttp-header-field=({ [ \$FetchUserAgentStr \$ScriptName ] }) as-value;\r\ + \n #:log warning (\"\\\$fUrl =\" . \$2 . ({[ \$fMode ]}));\r\ + \n :onerror Err {\r\ + \n :set FetchString (\"/tool/fetch \" . \\\r\ + \n [\$IfThenElse ([\$fetchMethod] != \"false\") (\"http-method=\\\"\"\ + \_. \$fetchMethod . \"\\\" \")] . \\\r\ + \n \"check-certificate=\" . \$CheckCert . \" url=(\\\"\" . \$fetchUrl\ + \_. \"\\\") \" . \\\r\ + \n [\$IfThenElse ([\$fetchMode] != \"false\") (\"mode=\" . \$fetchMod\ + e . \" \")] . \\\r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$ScriptName ] }) as-va\ + lue);\r\ + \n :log warning (\"\\\$FetchSring = \" . \$FetchString);\r\ + \n :put [\$FetchString];\r\ + \n #:put [/tool/fetch \$fetchMode check-certificate=\$CheckCert url=(\$\ + fetchUrl) dst-path=(\$FileName) http-header-field=({ [ \$FetchUserAgentStr\ + \_\$ScriptName ] }) as-value];\r\ + \n } do={\r\ + \n :if ([ \$WaitForFile \$FileName 500ms ] = true) do={\r\ + \n \$RmFile \$FileName;\r\ + \n }\r\ + \n \$LogPrint debug \$0 (\"Failed downloading from \" . \$fetchUrl . \"\ + \_- \" . \$Err);\r\ + \n \$RmDir \$DirName;\r\ + \n :return false;\r\ + \n }\r\ + \n :if ([ \$WaitForFile \$FileName 5s ] = false) do={\r\ + \n \$LogPrint debug \$0 (\"The file downloaded from \" . \$fetchUrl . \ + \" did not show up.\");\r\ + \n :return false;\r\ + \n }\r\ + \n :local FileSize [ /file/get \$FileName size ];\r\ + \n :local Return \"\";\r\ + \n :local VarSize 0;\r\ + \n :while (\$VarSize != \$FileSize) do={\r\ + \n :set Return (\$Return . ([ /file/read offset=\$VarSize chunk-size=32\ + 768 file=\$FileName as-value ]->\"data\"));\r\ + \n :set FileSize [ /file/get \$FileName size ];\r\ + \n :set VarSize [ :len \$Return ];\r\ + \n :if (\$VarSize > \$FileSize) do={\r\ + \n :delay 100ms;\r\ + \n }\r\ + \n }\r\ + \n \$RmDir \$DirName;\r\ + \n :return \$Return;\r\ + \n}\r\ + \n\r\ + \n:set ScriptInstallUpdate do={ :onerror Err {\r\ + \n :local Scripts [ :toarray \$1 ];\r\ + \n :local NewComment [ :tostr \$2 ];\r\ + \n :global InitSetup;\r\ + \n\r\ + \n :global CommitId;\r\ + \n :global ScriptUpdatesCRLF;\r\ + \n :global GlobalConfVersion;\r\ + \n :global Identity;\r\ + \n :global CertificateAvailable;\r\ + \n :global CheckSumsVerify;\r\ + \n :global GlobalScriptsUrl;\r\ + \n :global SumsDirAndFileName;\r\ + \n :global GlobalScriptsUrlSuffix;\r\ + \n :global EitherOr;\r\ + \n :global FetchUserAgentStr;\r\ + \n :global Grep;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global ParseKeyValueStore;\r\ + \n :global RequiredRouterOS;\r\ + \n :global SendNotification2;\r\ + \n :global SymbolForNotification;\r\ + \n :global ValidateSyntax;\r\ + \n :global CommentsInScripts;\r\ + \n\r\ + \n :if ([ \$CertificateAvailable \"Root YE\" \"fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Downloading certificate failed, trying wit\ + hout.\");\r\ + \n }\r\ + \n\r\ + \n :foreach Script in=\$Scripts do={\r\ + \n :if ([ :len [ /system/script/find where name=\$Script ] ] = 0) do={\ + \r\ + \n \$LogPrint info \$0 (\"Adding new script: \" . \$Script);\r\ + \n /system/script/add name=\$Script owner=\$Script source=\"#!rsc by \ + Vados\\n\" comment=\$NewComment;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :local CommitIdBefore \$CommitId;\r\ + \n :local GlobalConfVersionBefore \$GlobalConfVersion;\r\ + \n :local ReloadGlobal false;\r\ + \n :local DeviceMode [ /system/device-mode/get ];\r\ + \n\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :local CheckSums ({});\r\ + \n :do {\r\ + \n :local Url (\$GlobalScriptsUrl . \$SumsDirAndFileName . \$GlobalScr\ + iptsUrlSuffix);\r\ + \n \$LogPrint debug \$0 (\"Fetching checksums from url: \" . \$Url);\ + \r\ + \n :set CheckSums [ :deserialize from=json ([ /tool/fetch check-certi\ + ficate=yes-without-crl \\\r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$0 ] }) \$Url output\ + =user as-value ]->\"data\") ];\r\ + \n } on-error={ \$LogPrint warning \$0 (\"Err = \" . \$Err); }\r\ + \n }\r\ + \n\r\ + \n :foreach Script in=[ /system/script/find where source~\"^#!rsc by Vado\ + s\" ] do={\r\ + \n :local ScriptVal [ /system/script/get \$Script ];\r\ + \n :local ScriptInfo [ \$ParseKeyValueStore (\$ScriptVal->\"comment\") \ + ];\r\ + \n :local SourceNew;\r\ + \n\r\ + \n :foreach Scheduler in=[ /system/scheduler/find where on-event~(\"\\\ + \\b\" . \$ScriptVal->\"name\" . \"\\\\b\") ] do={\r\ + \n :local SchedulerVal [ /system/scheduler/get \$Scheduler ];\r\ + \n :if (\$ScriptVal->\"policy\" != \$SchedulerVal->\"policy\") do={\r\ + \n \$LogPrint warning \$0 (\"Policies differ for script '\" . \$Scr\ + iptVal->\"name\" . \"' and its scheduler '\" . \$SchedulerVal->\"name\" . \ + \"'!\");\r\ + \n }\r\ + \n }\r\ + \n :do {\r\ + \n :if (\$ScriptInfo->\"ignore\" = true) do={\r\ + \n \$LogPrint debug \$0 (\"Ignoring script '\" . \$ScriptVal->\"nam\ + e\" . \"', as requested.\");\r\ + \n :error true;\r\ + \n }\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :local CheckSum (\$CheckSums->(\$ScriptVal->\"name\"));\r\ + \n :if ([ :len (\$ScriptInfo->\"base-url\") ] = 0 && [ :len (\$Scri\ + ptInfo->\"url-suffix\") ] = 0 && \\\r\ + \n [ :convert transform=md5 to=hex [ :tolf (\$ScriptVal->\"sou\ + rce\") ] ] = \$CheckSum) do={\r\ + \n \$LogPrint debug \$0 (\"Checksum for script '\" . \$ScriptVal-\ + >\"name\" . \"' matches, ignoring.\");\r\ + \n :error true;\r\ + \n }\r\ + \n }\r\ + \n :if ([ :len (\$ScriptInfo->\"certificate\") ] > 0) do={\r\ + \n :if ([ \$CertificateAvailable (\$ScriptInfo->\"certificate\") \"\ + fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Downloading certificate failed, tryi\ + ng without.\");\r\ + \n }\r\ + \n }\r\ + \n :onerror Err {\r\ + \n :local BaseUrl [ \$EitherOr (\$ScriptInfo->\"base-url\") \$Globa\ + lScriptsUrl ];\r\ + \n :local UrlSuffix [ \$EitherOr (\$ScriptInfo->\"url-suffix\") \$G\ + lobalScriptsUrlSuffix ];\r\ + \n :local Url (\$BaseUrl . \$ScriptVal->\"name\" . \".rsc\" . \$Url\ + Suffix);\r\ + \n \$LogPrint warning \$0 (\"Fetching script '\" . (\$ScriptVal->\"\ + name\") . \"' from url: \" . \$Url);\r\ + \n :local Result [ /tool/fetch check-certificate=yes-without-crl \\\ + \r\ + \n http-header-field=({ [ \$FetchUserAgentStr \$0 ] }) \$Url outp\ + ut=user as-value ];\r\ + \n :if (\$Result->\"status\" = \"finished\") do={\r\ + \n :set SourceNew [ :tolf (\$Result->\"data\") ];\r\ + \n } \r\ + \n } do={\r\ + \n \$LogPrint warning \$0 (\"Failed fetching script '\" . \$ScriptV\ + al->\"name\" . \"': \" . \$Err);\r\ + \n :if (\$Err != \"Fetch failed with status 404\") do={\r\ + \n :error false;\r\ + \n }\r\ + \n :if (\$ScriptVal->\"source\" = \"#!rsc by Vados\") do={\r\ + \n \$LogPrint warning \$0 (\"Removing dummy. Typo on installation\ + \?\");\r\ + \n /system/script/remove \$Script;\r\ + \n :error false;\r\ + \n }\r\ + \n :if (\$CheckSumsVerify = true) do={\r\ + \n :if ([ :len (\$ScriptInfo->\"base-url\") ] = 0 && [ :len (\$Sc\ + riptInfo->\"url-suffix\") ] = 0 && \\\r\ + \n [ :len \$CheckSum ] = 0) do={\r\ + \n \$LogPrint warning \$0 (\"Added the script manually\? Skip u\ + pdates with 'ignore=true' in comment.\");\r\ + \n }\r\ + \n }\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ :len \$SourceNew ] = 0) do={\r\ + \n \$LogPrint debug \$0 (\"No update for script '\" . (\$ScriptVal-\ + >\"name\") . \"'.\");\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :local SourceCRLF [ :tocrlf \$SourceNew ];\r\ + \n :if (\$InitSetup != true && ((\$ScriptVal->\"name\") != \"AM-Globa\ + lConfig\" || (\$ScriptVal->\"name\") != \"AM-GlobalFunc\")) do={\r\ + \n :if (\$SourceNew = (\$ScriptVal->\"source\") || \$SourceCRLF = (\ + \$ScriptVal->\"source\")) do={\r\ + \n \$LogPrint debug \$0 (\"Script '\" . (\$ScriptVal->\"name\") \ + . \"' source did not change. End of lines set to CRLF.\");\r\ + \n if (\$ScriptUpdatesCRLF = false) do={\r\ + \n :put [ :tolf \$SourceNew ];\r\ + \n \$LogPrint debug \$0 (\"Script '\" . (\$ScriptVal->\"name\"\ + ) . \"' source update end of lines to LF.\");\r\ + \n }\r\ + \n :error false;\r\ + \n }\r\ + \n }\r\ + \n\r\ + \n :if ([ :pick \$SourceNew 0 14 ] != \"#!rsc by Vados\") do={\r\ + \n \$LogPrint warning \$0 (\"Looks like new script '\" . \$ScriptVa\ + l->\"name\" . \"' is not valid (missing shebang = '\$shebang') Ignoring!\"\ + );\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if (\$CommentsInScripts = true) do={\r\ + \n :local CommentLine [ \$Grep \$SourceNew (\"\\23 Script comment:\ + \_\") ];\r\ + \n :if ([ :len \$CommentLine ] = 0) do={\r\ + \n \$LogPrint debug \$0 (\"The search in new script '\" . (\$Scr\ + iptVal->\"name\") . \"' for comment in script body, is not found result Ig\ + noring!\");\r\ + \n :error false;\r\ + \n } else={\r\ + \n :if ([ :len (\$ScriptVal->\"comment\")] = 0 || [ :len (\$Scri\ + ptVal->\"comment\")] != [ :pick \$CommentLine ([ :find \$CommentLine \":\"\ + ] + 2) [ :len \$CommentLine] ]) do={\r\ + \n \$LogPrint debug \$0 (\"Exsiting comment for script '\" . (\ + \$ScriptVal->\"name\") . \"' is '\" . (\$ScriptVal->\"comment\") . \"'.\")\ + ;\r\ + \n :set (\$ScriptVal->\"comment\") [ :pick \$CommentLine ([ :f\ + ind \$CommentLine \":\"] + 2) [ :len \$CommentLine] ];\r\ + \n \$LogPrint debug \$0 (\"New comment (\" . (\$ScriptVal->\"c\ + omment\") . \") for script '\" . (\$ScriptVal->\"name\") . \"' has been ad\ + ded!\");\r\ + \n } else={\r\ + \n \$LogPrint debug \$0 (\"Comment for script '\" . (\$ScriptV\ + al->\"name\") . \"' did not change.\");\r\ + \n :error false;\r\ + \n }\r\ + \n } \r\ + \n }\r\ + \n\r\ + \n :local RequiredROS ([ \$ParseKeyValueStore [ \$Grep \$SourceNew (\ + \"\\23 requires RouterOS, \") ] ]->version);\r\ + \n :if ([ \$RequiredRouterOS \$0 [ \$EitherOr \$RequiredROS \"0.0\" ]\ + \_false ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"The script '\" . (\$ScriptVal->\"name\ + \") . \"' requires RouterOS \" . \\\r\ + \n \$RequiredROS . \", which is not met by your installation. I\ + gnoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n :local RequiredDM [ \$ParseKeyValueStore [ \$Grep \$SourceNew (\"\ + \\23 requires device-mode, \") ] ];\r\ + \n :local MissingDM ({});\r\ + \n :foreach Feature,Value in=\$RequiredDM do={\r\ + \n :if ([ :typeof (\$DeviceMode->\$Feature) ] = \"bool\" && (\$Devi\ + ceMode->\$Feature) = false) do={\r\ + \n :set MissingDM (\$MissingDM, \$Feature);\r\ + \n }\r\ + \n }\r\ + \n :if ([ :len \$MissingDM ] > 0) do={\r\ + \n \$LogPrint warning \$0 (\"The script '\" . (\$ScriptVal->\"name\ + \") . \"' requires disabled \" . \\\r\ + \n \"device-mode features (\" . [ :tostr \$MissingDM ] . \"). I\ + gnoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ \$ValidateSyntax \$SourceNew ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Syntax validation for script '\" . (\$\ + ScriptVal->\"name\") . \"' failed! Ignoring!\");\r\ + \n :error false;\r\ + \n }\r\ + \n \r\ + \n :log info (\"Updating script: \" . (\$ScriptVal->\"name\") . \" Sc\ + ript comment: \" . (\$ScriptVal->\"comment\"));\r\ + \n\r\ + \n /system/script/set owner=(\$ScriptVal->\"name\") comment=(\$Script\ + Val->\"comment\") \\\r\ + \n source=[ \$IfThenElse (\$ScriptUpdatesCRLF = true) \$SourceCRL\ + F \$SourceNew ] \$Script;\r\ + \n :if (\$ScriptVal->\"name\" = \"AM-GlobalConfig\" || \\\r\ + \n \$ScriptVal->\"name\" = \"AM-GlobalFunc\" || \\\r\ + \n \$ScriptVal->\"name\" ~ (\"^(AM-GlobalFunc\\\\.d|mod)/.\")) d\ + o={\r\ + \n :set ReloadGlobal true;\r\ + \n }\r\ + \n } on-error={ }\r\ + \n }\r\ + \n :if (\$ReloadGlobal = true) do={\r\ + \n \$LogPrint info \$0 (\"Reloading global configuration and functions.\ + \");\r\ + \n :onerror Err {\r\ + \n :global InitSetup (a);\r\ + \n /system/script {run AM-GlobalConfig; run AM-GlobalFunc;};\r\ + \n } do={\$LogPrint error \$0 (\"Reloading global configuration and fun\ + ctions failed! \" . \$Err)}\r\ + \n }\r\ + \n :if (\$GlobalConfVersionBefore > \$GlobalConfVersion) do={\r\ + \n \$LogPrint warning \$0 (\"The configuration version decreased from \ + \" . \\\r\ + \n \$GlobalConfVersionBefore . \" to \" . \$GlobalConfVersion . \\\r\ + \n \". Installed an older version\?\");\r\ + \n }\r\ + \n :if (\$GlobalConfVersionBefore < \$GlobalConfVersion) do={\r\ + \n :global GlobalConfChanges;\r\ + \n :global GlobalConfMigration;\r\ + \n :local ChangeLogCode;\r\ + \n :if ([ :len \$ChangeLogCode ] > 0) do={\r\ + \n :if ([ \$ValidateSyntax \$ChangeLogCode ] = true) do={\r\ + \n :onerror Err {\r\ + \n [ :parse \$ChangeLogCode ];\r\ + \n } do={\$LogPrint warning \$0 (\"The changelog failed to run: \" \ + . \$Err)}\r\ + \n } else={\$LogPrint warning \$0 (\"The changelog failed syntax vali\ + dation!\")}\r\ + \n }\r\ + \n :if ([ :len \$GlobalConfMigration ] > 0) do={\r\ + \n :for I from=(\$GlobalConfVersionBefore + 1) to=\$GlobalConfVersion\ + \_do={\r\ + \n :local Migration (\$GlobalConfMigration->[ :tostr \$I ]);\r\ + \n :do {\r\ + \n :if ([ :typeof \$Migration ] != \"str\") do={\r\ + \n \$LogPrint debug \$0 (\"Migration code for change \" . \$I .\ + \_\" is not available.\");\r\ + \n :error false;\r\ + \n }\r\ + \n :if ([ \$ValidateSyntax \$Migration ] = false) do={\r\ + \n \$LogPrint warning \$0 (\"Migration code for change \" . \$I\ + \_. \" failed syntax validation!\");\r\ + \n :error false}\r\ + \n \$LogPrint info \$0 (\"Applying migration for change \" . \$I \ + . \": \" . \$Migration);\r\ + \n :onerror Err {\r\ + \n [ :parse \$Migration ];\r\ + \n } do={\$LogPrint warning \$0 (\"Migration code for change \" .\ + \_\$I . \" failed to run: \" . \$Err)}\r\ + \n } on-error={ }\r\ + \n }\r\ + \n }\r\ + \n :local NotificationMessage (\"The configuration version on \" . \$Id\ + entity . \" increased \" . \\\r\ + \n \"to \" . \$GlobalConfVersion . \", current configuration may nee\ + d modification. \" . \\\r\ + \n \"Please review and update global-config-overlay, then re-run glo\ + bal-config.\");\r\ + \n \$LogPrint info \$0 (\$NotificationMessage);\r\ + \n :if ([ :len \$GlobalConfChanges ] > 0) do={\r\ + \n :set NotificationMessage (\$NotificationMessage . \"\\n\\nChanges:\ + \");\r\ + \n :for I from=(\$GlobalConfVersionBefore + 1) to=\$GlobalConfVersion\ + \_do={\r\ + \n :local Change (\$GlobalConfChanges->[ :tostr \$I ]);\r\ + \n :set NotificationMessage (\$NotificationMessage . \"\\n \" . \\\ + \r\ + \n [ \$SymbolForNotification \"pushpin\" \"*\" ] . \$Change);\r\ + \n \$LogPrint info \$0 (\"Change \" . \$I . \": \" . \$Change);\r\ + \n }\r\ + \n } else={:set NotificationMessage (\$NotificationMessage . \"\\n\\nNe\ + ws and changes are not available.\")}\r\ + \n\r\ + \n :set GlobalConfChanges;\r\ + \n :set GlobalConfMigration;\r\ + \n }\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err}\r\ + \n}\r\ + \n\r\ + \n# Global Environment clear. Use: \"\$GlobalEnvRemove True;\".\r\ + \n:set GlobalEnvRemove do={\r\ + \n :local doRmEnv [ :tostr \$1 ];\r\ + \n :global GlobalScriptsUrl;\r\ + \n :local ScriptsUrl;\r\ + \n :global LogPrint;\r\ + \n :if (\$doRmEnv != \"True\") do={\r\ + \n \$LogPrint error \"GlobalEnvRemove\" (\"This script is needed \\\"T\ + rue\\\" for confirm to remove global environment variables!\");\r\ + \n :return [];\r\ + \n :error true; \r\ + \n } else={\r\ + \n :set ScriptsUrl \$GlobalScriptsUrl;\r\ + \n :delay 5;\r\ + \n :foreach var in=[/system/script/environment print as-value] do={/sy\ + stem/script/environment remove (\$var->\".id\")}\r\ + \n :delay 5;\r\ + \n :global GlobalScriptsUrl \$ScriptsUrl;\r\ + \n \$LogPrint warning \"GlobalEnvRemove\" (\"Done!\");\r\ + \n :return [];\r\ + \n :error false;\r\ + \n }\r\ + \n}\r\ + \n\r\ + \n# Add and fix global scheduler\r\ + \n:put \"Add or/and fix Global scheduler...\";\r\ + \n:local OnEvent \"/system/script { run AM-GlobalConfig; run AM-GlobalFunc\ + ; }\";\r\ + \n:local Comment \"Setup Global Environment for scripts\";\r\ + \n:if ([ :len [ /system/scheduler/find where name=\"AM-SetGlobalEnv\" ] ] \ + = 0) do={\r\ + \n /system/scheduler/add name=\"AM-SetGlobalEnv\" comment=\$Comment on-ev\ + ent=\$OnEvent start-time=startup;\r\ + \n}\r\ + \n:if ([ /system/scheduler/get \"AM-SetGlobalEnv\" comment ] != \$Comment)\ + \_do={\r\ + \n /system/scheduler/set \"AM-SetGlobalEnv\" comment=\$Comment;\r\ + \n}\r\ + \n:if ([ /system/scheduler/get \"AM-SetGlobalEnv\" on-event ] != \$OnEvent\ + ) do={\r\ + \n /system/scheduler/set \"AM-SetGlobalEnv\" on-event=\$OnEvent;\r\ + \n}\r\ + \n# Add Update Script scheduler\r\ + \n:put \"Add or/and fix Update Script scheduler\";\r\ + \n:set OnEvent \":global ScriptInstallUpdate; \\\$ScriptInstallUpdate;\";\ + \r\ + \n:set Comment \"Every Day Check For Update Scripts\";\r\ + \n:if ([ :len [ /system/scheduler/find where name=\"AM-ScriptInstallUpdate\ + \" ] ] = 0) do={\r\ + \n/system/scheduler/add name=\"AM-ScriptInstallUpdate\" comment=\$Comment \ + start-time=startup interval=1d on-event=\$OnEvent;\r\ + \n}\r\ + \n\r\ + \n#:local Resource [ /system/resource/get ];\r\ + \n#:log info (\$ScriptName . \" Loaded on \" . \$Resource->\"board-name\" \ + . \" with RouterOS \" . \$Resource->\"version\" . \" and Architecture \" .\ + \".\");\r\ + \n\r\ + \n:onerror Err {\r\ + \n :global GlobalConfReady;\r\ + \n :retry { :if (\$GlobalConfReady != true) do={ :error (\"Global configs\ + \_not ready.\"); }; } delay=100ms max=5;\r\ + \n\r\ + \n# signal we are ready\r\ + \n:set GlobalFuncReady true;\r\ + \n:set ExitOK true;\r\ + \n:log warning (\"This script \$ScriptName Loaded \" . \\\r\ + \n [ \$IfThenElse (\$CommitId != \"unknown\") ([ \$CommitBrief ] . \" \ + \") ] . \\\r\ + \n \"on \" . \$devBoardName . \"\\nRouterOS: \" . \$devCurVersion . \"\ + \\nArchitecture: \" . \$devCurArch . \"\\nIdentity: \" . \$Identity);\r\ + \n} do={:global ExitOnError; \$ExitOnError \$0 \$Err;}\r\ + \n\r\ + \n#} do={:global ExitError; \$ExitError \$ExitOK [ :jobname ] \$Err}\r\ + \n# log the successful load of the script, or an error if it failed\r\ + \n#:if ([\$GlobalFuncReady] = true && [\$GlobalConfReady] = true) do={\r\ + \n" +add dont-require-permissions=no name=fetchCustom owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="\ + \r\ + \n\r\ + \n#root.mnuc.backuper\r\ + \n:global GlobalScriptsUrl \"https://ros.vados.ru/\";\r\ + \n/tool/fetch mode=https url=(\$GlobalScriptsUrl . \".bak/mikro_bak_rsa@10\ + .30.30.10.pub\") dst-path=\"/mikro_bak_rsa@10.30.30.10.pub\";\r\ + \n#/usb1/mikro_bak_rsa.pub" +add dont-require-permissions=yes name=MkTmpfs owner=vados policy=\ + ftp,read,write,policy,test,sniff,sensitive source=\ + ":global MkDir;\r\ + \n\r\ + \n\$MkDir /usb1/tmpfs;" +add dont-require-permissions=no name=CreateContainer owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":\ + local contIF \"veth1\";\r\ + \n:local contIP \"10.10.10.10/24\";\r\ + \n:local contGW \"10.10.10.1\";\r\ + \n#/interface/veth/add name=\$contIF address=\$contIP gateway=\$contGW;\r\ + \n:local contBridgeIF \"Bridge-DOC\";\r\ + \n:local contBridgeIP \"10.10.10.1/24\";\r\ + \n/interface/bridge/add name=\$contBridgeIF;\r\ + \n/ip/address/add address=\$contBridgeIP interface=\$contBridgeIF;\r\ + \n/interface/bridge/port/add bridge=\$contBridgeIF interface=\$contIF;\r\ + \n/container/config/set ram-high=768M registry-url=https://registry-1.dock\ + er.io tmpdir=sata1/tmp\r\ + \n" +add dont-require-permissions=no name=carkeeperbot owner=vados policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="/\ + container/mounts/add list=carkeeper_configs/.profile src=sata1/carkeeper/c\ + onfigs/.profile dst=/root/.ashrc;\r\ + \n/container/mounts/add list=carkeeper_configs/php.ini src=sata1/carkeeper\ + /configs/php.ini dst=/etc/php82/php.ini;\r\ + \n#/container/mounts/add list=carkeeper_configs src=sata1/carkeeper/config\ + s dst=/configs;\r\ + \n/container/mounts/add list=carkeeper_app src=sata1/carkeeper/app dst=/ap\ + p;\r\ + \n/container/mounts/add list=carkeeper_scripts src=sata1/carkeeper/scripts\ + \_dst=/scripts;\r\ + \n/container/mounts/add list=carkeeper_configs/sshd_config src=sata1/carke\ + eper/configs/sshd_config dst=/etc/ssh/sshd_config;\r\ + \n\r\ + \n/container/mounts/add list=carkeeper_tmp src=sata1/carkeeper/tmp dst=/va\ + r/tmp;\r\ + \n/container/mounts/add list=carkeeper_sync src=sata1/carkeeper/sync dst=/\ + var/sync;\r\ + \n" +add comment="Enable or disable ip addresses based on bridge port state" \ + dont-require-permissions=no name=mod/AM-IPbridge owner=mod/AM-IPbridge \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="#!rsc by Vados\r\ + \n# RouterOS script: mod/AM-IPbridge\r\ + \n# Script comment: Enable or disable ip addresses based on bridge port st\ + ate\r\ + \n# Copyright (c) 2005-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n#\r\ + \n:local ScriptName [ :jobname ];\r\ + \n\r\ + \n# Add this Script scheduler\r\ + \n:if ([ :len [ /system/scheduler/find where name=\$ScriptName ] ] = 0) do\ + ={\r\ + \n:log warning (\"SystemScheduler for script: \" . \$ScriptName . \" is NO\ + T SET! Fix It Now!\");\r\ + \n:local OnEvent \"/system/script/run \$ScriptName;\";\r\ + \n:local Comment \"Every Day Check For Fake Bridges\";\r\ + \n/system/scheduler/add name=\$ScriptName comment=\$Comment start-time=sta\ + rtup interval=1d on-event=\$OnEvent;\r\ + \n}\r\ + \n\r\ + \n:foreach Bridge in=[ /interface/bridge/find ] do={\r\ + \n :local BrName [ /interface/bridge/get \$Bridge name ];\r\ + \n :if ([ :len [ /interface/bridge/port/find where bridge=\$BrName ] ] > \ + 0) do={\r\ + \n :if ([ :len [ /interface/bridge/port/find where bridge=\$BrName and \ + inactive=no ] ] = 0) do={\r\ + \n /ip/address/disable [ find where !dynamic interface=\$BrName ];\r\ + \n } else={\r\ + \n /ip/address/enable [ find where !dynamic interface=\$BrName ];\r\ + \n }\r\ + \n }\r\ + \n}\r\ + \n" +add comment="Use Telegram to chat with your Router and send commands" \ + dont-require-permissions=no name=mod/AM-TG-Bot owner=mod/AM-TG-Bot \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source="#!rsc by Vados\r\ + \n# RouterOS script: mod/AM-TG-Bot\r\ + \n# Script comment: Use Telegram to chat with your Router and send command\ + s\r\ + \n# Copyright (c) 2007-2026 Vados \r\ + \n#\r\ + \n#\r\ + \n# requires RouterOS, version=7.19\r\ + \n# requires device-mode, fetch\r\ + \n:local ExitOK false;\r\ + \n:onerror Err {\r\ + \n :global GlobalConfReady; :global GlobalFuncReady;\r\ + \n :retry { :if (\$GlobalConfReady != true || \$GlobalFuncReady != true) \ + \\\r\ + \n do={ :error (\"Global config and/or functions not ready.\"); }; } \ + delay=500ms max=50;\r\ + \n :local ScriptName [ :jobname ];\r\ + \n\r\ + \n :global Identity;\r\ + \n :global TelegramChatActive;\r\ + \n :global TelegramChatGroups;\r\ + \n :global TelegramChatId;\r\ + \n :global TelegramChatIdsTrusted;\r\ + \n :global TelegramChatOffset;\r\ + \n :global TelegramChatRunTime;\r\ + \n :global TelegramMessageIDs;\r\ + \n :global TelegramRandomDelay;\r\ + \n :global TelegramTokenId;\r\ + \n\r\ + \n :global CertificateAvailable;\r\ + \n :global EitherOr;\r\ + \n :global EscapeForRegEx;\r\ + \n :global FileExists;\r\ + \n :global GetRandom20CharAlNum;\r\ + \n :global IfThenElse;\r\ + \n :global LogPrint;\r\ + \n :global LogPrintVerbose;\r\ + \n :global MAX;\r\ + \n :global MIN;\r\ + \n :global MkDir;\r\ + \n :global RandomDelay;\r\ + \n :global RmDir;\r\ + \n :global ScriptLock;\r\ + \n :global SendTelegram2;\r\ + \n :global SymbolForNotification;\r\ + \n :global ValidateSyntax;\r\ + \n :global WaitForFile;\r\ + \n\r\ + \n :if ([ \$ScriptLock \$ScriptName ] = false) do={\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :if ([ :len [ /system/scheduler/find where name=\$ScriptName ] ] = 0) \ + do={\r\ + \n /system/scheduler/add start-time=startup interval=30s name=\$ScriptN\ + ame on-event=\"/system/script/run \$ScriptName;\" comment=\"Telegram Chat \ + Bot\";\r\ + \n }\r\ + \n\r\ + \n :if ([ :typeof \$TelegramChatOffset ] != \"array\") do={\r\ + \n :set TelegramChatOffset { 0; 0; 0 };\r\ + \n }\r\ + \n :if ([ :typeof \$TelegramRandomDelay ] != \"num\") do={\r\ + \n :set TelegramRandomDelay 0;\r\ + \n }\r\ + \n\r\ + \n :if ([ \$CertificateAvailable \"Go Daddy Root Certificate Authority - \ + G2\" \"fetch\" ] = false) do={\r\ + \n \$LogPrint warning \$ScriptName (\"Downloading required certificate \ + failed.\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n \$RandomDelay \$TelegramRandomDelay;\r\ + \n :local Data false;\r\ + \n :for I from=1 to=4 do={\r\ + \n :if (\$Data = false) do={\r\ + \n :onerror Err {\r\ + \n :set Data ([ /tool/fetch check-certificate=yes-without-crl \\\r\ + \n (\"https://api.telegram.org/bot\" . \$TelegramTokenId . \"/get\ + Updates\?offset=\" . \\\r\ + \n \$TelegramChatOffset->0 . \"&allowed_updates=%5B%22message%22%\ + 5D\") output=user as-value ]->\"data\");\r\ + \n :set TelegramRandomDelay [ \$MAX 0 (\$TelegramRandomDelay - 1) ]\ + ;\r\ + \n } do={\r\ + \n :if (\$I < 4) do={\r\ + \n \$LogPrint debug \$ScriptName (\"Fetch failed, \" . \$I . \". \ + try: \" . \$Err);\r\ + \n :set TelegramRandomDelay [ \$MIN 15 (\$TelegramRandomDelay + 5\ + ) ];\r\ + \n :delay ((\$I * \$I) . \"s\");\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n }\r\ + \n :if (\$Data = false) do={\r\ + \n \$LogPrint warning \$ScriptName (\"Failed getting updates.\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n\r\ + \n :local JSON [ :deserialize from=json value=\$Data ];\r\ + \n :local UpdateID 0;\r\ + \n :local Uptime [ /system/resource/get uptime ];\r\ + \n :foreach Update in=(\$JSON->\"result\") do={\r\ + \n :set UpdateID (\$Update->\"update_id\");\r\ + \n \$LogPrintVerbose debug \$ScriptName (\"Update \" . \$UpdateID . \":\ + \_\" . [ :serialize to=json \$Update ]);\r\ + \n\r\ + \n :local Message (\$Update->\"message\");\r\ + \n :local IsAnyReply ([ :typeof (\$Message->\"reply_to_message\") ] = \ + \"array\");\r\ + \n :local IsMyReply (\$TelegramMessageIDs->[ :tostr (\$Message->\"reply\ + _to_message\"->\"message_id\") ]);\r\ + \n :if ((\$IsMyReply = 1 || \$TelegramChatOffset->0 > 0 || \$Uptime > 5\ + m) && \$UpdateID >= \$TelegramChatOffset->2) do={\r\ + \n :local Trusted false;\r\ + \n :local Chat (\$Message->\"chat\");\r\ + \n :local From (\$Message->\"from\");\r\ + \n :local Command (\$Message->\"text\");\r\ + \n :local ThreadId [ \$IfThenElse (\$Message->\"is_topic_message\") (\ + \$Message->\"message_thread_id\") \"\" ];\r\ + \n :foreach IdsTrusted in=(\$TelegramChatId, \$TelegramChatIdsTrusted\ + ) do={\r\ + \n :if (\$From->\"id\" = \$IdsTrusted || \\\r\ + \n \$From->\"username\" = \$IdsTrusted || \\\r\ + \n \$Chat->\"id\" = \$IdsTrusted) do={\r\ + \n :set Trusted true;\r\ + \n }\r\ + \n }\r\ + \n :if (\$Trusted = true) do={\r\ + \n :local Done false;\r\ + \n :if (\$Command = \"\?\") do={\r\ + \n \$LogPrint info \$ScriptName (\"Sending notice for update \" .\ + \_\$UpdateID . \".\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\"\ + ); silent=true; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \\\ + \r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \"\ + Telegram Chat\"); \\\r\ + \n message=([ \$IfThenElse ([ :len (\$From->\"first_name\") ] >\ + \_0) (\"Hello \" . (\$From->\"first_name\") . \"!\\n\\n\") ] . \\\r\ + \n \"Online\" . [ \$IfThenElse \$TelegramChatActive \" (and a\ + ctive!)\" ] . \", awaiting your commands!\") });\r\ + \n :set Done true;\r\ + \n }\r\ + \n :if (\$Done = false && [ :pick \$Command 0 1 ] = \"!\") do={\r\ + \n :if (\$Command ~ (\"^! *(\" . [ \$EscapeForRegEx \$Identity ] \ + . \"|@\" . \$TelegramChatGroups . \")\\\$\")) do={\r\ + \n :set TelegramChatActive true;\r\ + \n } else={\r\ + \n :set TelegramChatActive false;\r\ + \n }\r\ + \n \$LogPrint info \$ScriptName (\"Now \" . [ \$IfThenElse \$Tele\ + gramChatActive \"active\" \"passive\" ] . \\\r\ + \n \" from update \" . \$UpdateID . \"!\");\r\ + \n :set Done true;\r\ + \n }\r\ + \n :if (\$Done = false && (\$IsMyReply = 1 || (\$IsAnyReply = false\ + \_&& \\\r\ + \n \$TelegramChatActive = true)) && [ :len \$Command ] > 0) do\ + ={\r\ + \n :if ([ \$ValidateSyntax \$Command ] = true) do={\r\ + \n :local State \"\";\r\ + \n :local File (\"tmpfs/telegram-chat/\" . [ \$GetRandom20CharA\ + lNum 6 ]);\r\ + \n :if ([ \$MkDir \"tmpfs/telegram-chat\" ] = false) do={\r\ + \n \$LogPrint error \$ScriptName (\"Failed creating directory\ + !\");\r\ + \n :set ExitOK true;\r\ + \n :error false;\r\ + \n }\r\ + \n \$LogPrint info \$ScriptName (\"Running command from update \ + \" . \$UpdateID . \": \" . \$Command);\r\ + \n :execute script=(\":do {\\n\" . \$Command . \"\\n} on-error=\ + { /file/add name=\\\"\" . \$File . \".failed\\\" };\" . \\\r\ + \n \"/file/add name=\\\"\" . \$File . \".done\\\"\") file=(\$\ + File . \"\\00\");\r\ + \n :if ([ \$WaitForFile (\$File . \".done\") [ \$EitherOr \$Tel\ + egramChatRunTime 20s ] ] = false) do={\r\ + \n :set State ([ \$SymbolForNotification \"warning-sign\" ] .\ + \_\"The command did not finish, still running in background.\\n\\n\");\r\ + \n }\r\ + \n :if ([ \$FileExists (\$File . \".failed\") ] = true) do={\r\ + \n :set State ([ \$SymbolForNotification \"cross-mark\" ] . \ + \"The command failed with an error!\\n\\n\");\r\ + \n }\r\ + \n :local Content ([ /file/read chunk-size=32768 file=\$File as\ + -value ]->\"data\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\ + \"); silent=true; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \ + \\\r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \ + \"Telegram Chat\"); \\\r\ + \n message=([ \$SymbolForNotification \"gear\" ] . \"Command:\ + \\n\" . \$Command . \"\\n\\n\" . \\\r\ + \n \$State . [ \$IfThenElse ([ :len \$Content ] > 0) \\\r\ + \n ([ \$SymbolForNotification \"memo\" ] . \"Output:\\n\" .\ + \_\$Content) \\\r\ + \n ([ \$SymbolForNotification \"memo\" ] . \"No output.\") \ + ]) });\r\ + \n \$RmDir \"tmpfs/telegram-chat\";\r\ + \n } else={\r\ + \n \$LogPrint info \$ScriptName (\"The command from update \" .\ + \_\$UpdateID . \" failed syntax validation!\");\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\ + \"); silent=false; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \ + \\\r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \ + \"Telegram Chat\"); \\\r\ + \n message=([ \$SymbolForNotification \"gear\" ] . \"Command:\ + \\n\" . \$Command . \"\\n\\n\" . \\\r\ + \n [ \$SymbolForNotification \"cross-mark\" ] . \"The comma\ + nd failed syntax validation!\") });\r\ + \n }\r\ + \n }\r\ + \n } else={\r\ + \n :local MessageText (\"Received a message from untrusted contact \ + \" . \\\r\ + \n [ \$IfThenElse ([ :len (\$From->\"username\") ] = 0) \"without\ + \_username\" (\"'\" . \$From->\"username\" . \"'\") ] . \\\r\ + \n \" (ID \" . \$From->\"id\" . \") in update \" . \$UpdateID . \ + \"!\");\r\ + \n :if (\$Command ~ (\"^! *\" . [ \$EscapeForRegEx \$Identity ] . \ + \"\\\$\")) do={\r\ + \n \$LogPrint warning \$ScriptName \$MessageText;\r\ + \n \$SendTelegram2 ({ origin=\$ScriptName; chatid=(\$Chat->\"id\"\ + ); silent=false; \\\r\ + \n replyto=(\$Message->\"message_id\"); threadid=\$ThreadId; \\\ + \r\ + \n subject=([ \$SymbolForNotification \"speech-balloon\" ] . \"\ + Telegram Chat\"); \\\r\ + \n message=(\"You are not trusted.\") });\r\ + \n } else={\$LogPrint info \$ScriptName \$MessageText}\r\ + \n }\r\ + \n } else={\$LogPrint debug \$ScriptName (\"Already handled update \" .\ + \_\$UpdateID . \".\")}\r\ + \n }\r\ + \n :set TelegramChatOffset ([ :pick \$TelegramChatOffset 1 3 ], \\\r\ + \n [ \$IfThenElse (\$UpdateID >= \$TelegramChatOffset->2) (\$UpdateID +\ + \_1) (\$TelegramChatOffset->2) ]);\r\ + \n} do={:global ExitError; \$ExitError \$ExitOK [ :jobname ] \$Err}\r\ + \n" +add dont-require-permissions=no name=mod/AM-TG-Notifications owner=\ + mod/AM-TG-Notifications policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=\ + "#!rsc by Vados\ + \n" +add dont-require-permissions=no name=testIfThenElseAndEitherOr owner=vados \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + source=":local ExitOK false;\r\ + \n:local ScriptName [ :jobname ];\r\ + \n\r\ + \n:local ExitError;\r\ + \n:local IfThenElse;\r\ + \n:local EitherOr;\r\ + \n\r\ + \n:local one 5;\r\ + \n:local two 8;\r\ + \n:put [ \$IfThenElse (\$one != 0) \$one \$two ];\r\ + \n\r\ + \n:set IfThenElse do={\r\ + \n :if ([ :tostr \$1 ] = \"true\" || [ :tobool \$1 ] = true) do={:return \ + \$2};\r\ + \n :return \$3;\r\ + \n:log warning (\$0 . \"\\\$1 = '\" . \$1 . \"', \\\$2 = '\" . \$2 . \"', \ + \\\$3 = '\" . \$3 . \"'\");\r\ + \n}\r\ + \n\r\ + \n:set EitherOr do={\r\ + \n :global IfThenElse;\r\ + \n :if ([ :typeof \$1 ] = \"num\") do={:return [ \$IfThenElse (\$1 != 0) \ + \$1 \$2 ]}\r\ + \n :if ([ :typeof \$1 ] = \"time\") do={:return [ \$IfThenElse (\$1 > 0s)\ + \_\$1 \$2 ]}\r\ + \n# this works for boolean values, literal ones with parentheses\r\ + \n :return [ \$IfThenElse ([ :len [ :tostr \$1 ] ] > 0) \$1 \$2 ];\r\ + \n}\r\ + \n\r\ + \n:set ExitError do={\r\ + \n :local ExitOK [ :tostr \$1 ];\r\ + \n :local Name [ :tostr \$2 ];\r\ + \n :local Error [ :tostr \$3 ];\r\ + \n :local IfThenElse;\r\ + \n :if (\$ExitOK = \"false\") do={\r\ + \n :log error (\$Name [ \$IfThenElse ([ :pick \$Name 0 1 ] = \"\\\$\") \ + \\\r\ + \n \"Function\" \"Script\" ] . \" '\" . \$Name . \"' exited with er\ + ror\" . \\\r\ + \n [ \$IfThenElse (!(\$Error ~ \"^(|true|false)\\\$\")) (\": \" . \ + \$Error) \".\" ]);\r\ + \n }\r\ + \n}\r\ + \n#:set ExitOK true;\r\ + \n\$ExitError \$ExitOK \$ScriptName \"Err test custom\";" +/user group +add name=backup policy="telnet,ssh,ftp,read,write,policy,test,sniff,sensitive,\ + !local,!reboot,!winbox,!password,!web,!api,!romon,!rest-api" +/app settings +set auto-update=yes disk=sata1 lan-bridge=Bridge-LAN registry-mirrors="https:/\ + /reg.vados.ru:5000/:https://reg.vados.ru/,https://registry-1.docker.io" +/caps-man aaa +set called-format=ssid +/caps-man access-list +add action=reject allow-signal-out-of-range=10s disabled=no interface=all \ + signal-range=-120..-80 ssid-regexp="" +add action=accept allow-signal-out-of-range=10s disabled=no interface=all \ + signal-range=-79..120 ssid-regexp="" +/caps-man manager +# bad package path +set ca-certificate=CAPsMAN-CA-51B25E507D07 certificate=CAPsMAN-51B25E507D07 \ + enabled=yes package-path=/tmpfs/capsman-packages +/caps-man manager interface +set [ find default=yes ] forbid=yes +add disabled=no interface=Bridge-LAN +/caps-man provisioning +add action=create-dynamic-enabled hw-supported-modes=g,gn,b \ + master-configuration=2G name-format=prefix-identity name-prefix=2G +add action=create-dynamic-enabled hw-supported-modes=an,ac,a \ + master-configuration=5G name-format=prefix-identity name-prefix=5G +add action=create-dynamic-enabled disabled=yes hw-supported-modes=ac,an,a \ + master-configuration=2G name-format=prefix-identity name-prefix=5ghz-ac +add action=create-dynamic-enabled disabled=yes hw-supported-modes=an \ + master-configuration=5G name-format=prefix-identity name-prefix=5ghz-an +/certificate settings +set builtin-trust-store=fetch crl-download=yes crl-use=yes +/container config +set layer-dir=/sata1 registry-url=https://reg.vados.ru tmpdir=/ramstorage \ + username=amster-dev +/container envs +add key=ENV list=carkeeperbot_envs value=/root/.ashrc +add key=PATH list=carkeeperbot_envs value=\ + /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +add key=PORT list=carkeeperbot_envs value="\${SSH_PORT}" +add key=SSH_PORT list=carkeeperbot_envs value=8222 +/container mounts +add dst=/app list=carkeeper_app src=/sata1/carkeeper/app +add dst=/configs list=carkeeper_configs src=/sata1/carkeeper/configs +add dst=/root/.ashrc list=carkeeper_configs/.profile src=\ + /sata1/carkeeper/configs/.profile +add dst=/etc/php82/php.ini list=carkeeper_configs/php.ini src=\ + /sata1/carkeeper/configs/php.ini +add dst=/etc/ssh/sshd_config list=carkeeper_configs/sshd_config src=\ + /sata1/carkeeper/configs/sshd_config +add dst=/scripts list=carkeeper_scripts src=/sata1/carkeeper/scripts +add dst=/var/sync list=carkeeper_sync src=/sata1/carkeeper/sync +add dst=/var/tmp list=carkeeper_tmp src=/sata1/carkeeper/tmp +/interface bridge port +add bridge=Bridge-LAN interface=ether2 +add bridge=Bridge-DOC interface=veth1 +add bridge=Bridge-LAN interface=LAN +add bridge=Bridge-LAN interface=dynamic +/ipv6 settings +set disable-ipv6=yes disable-link-local-address=yes +/interface detect-internet +set detect-interface-list=LAN internet-interface-list=LAN lan-interface-list=\ + LAN wan-interface-list=LAN +/interface wifi capsman +set package-path=/tmpfs/capsman-packages upgrade-policy=none +/ip address +add address=10.30.30.10/24 interface=Bridge-LAN network=10.30.30.0 +add address=10.10.10.1/24 disabled=yes interface=Bridge-DOC network=\ + 10.10.10.0 +add address=172.18.20.5/30 disabled=yes interface=docker-xray-vless-veth \ + network=172.18.20.4 +/ip dhcp-server +add add-arp=yes address-pool=dhcp always-broadcast=yes bootp-support=none \ + dhcp-option-set=domain-search-set disabled=yes interface=Bridge-LAN \ + lease-script=lease-script lease-time=10m name=nucDHCP server-address=\ + 10.30.30.10 +/ip dns +set allow-remote-requests=yes doh-max-concurrent-queries=100 \ + doh-max-server-connections=20 servers=10.30.30.81 verify-doh-cert=yes +/ip firewall filter +add action=accept chain=input +add action=accept chain=output +add action=accept chain=forward comment="Comment of the rule" disabled=yes +/ip firewall mangle +# docker-xray-vless-veth not ready +add action=change-mss chain=forward new-mss=1360 out-interface=\ + docker-xray-vless-veth protocol=tcp tcp-flags=syn tcp-mss=1420-65535 +/ip firewall nat +# docker-xray-vless-veth not ready +add action=masquerade chain=srcnat out-interface=docker-xray-vless-veth +/ip firewall service-port +set ftp disabled=yes +set tftp disabled=yes +set sip disabled=yes +set pptp disabled=yes +set rtsp disabled=no +/ip route +add disabled=no dst-address=0.0.0.0/0 gateway=10.30.30.81 routing-table=main +/ip service +set ftp disabled=yes +set www disabled=yes +set ssh port=2222 +set www-ssl port=4443 +set api disabled=yes +set api-ssl disabled=yes +/ip service webserver +set acme-plain=no crl-plain=no graphs-plain=no graphs-secure=no index-plain=\ + no index-secure=no rest-plain=no rest-secure=no scep-plain=no \ + webfig-plain=no webfig-secure=no +/ip ssh +set forwarding-enabled=both password-authentication=no \ + publickey-authentication-options=verify-required strong-crypto=yes +/ip upnp +set allow-disable-external-interface=yes enabled=yes +/ipv6 firewall address-list +add address=2400:cb00::/32 list=CLOUDFLARE-IP-Address +add address=2606:4700::/32 list=CLOUDFLARE-IP-Address +add address=2803:f800::/32 list=CLOUDFLARE-IP-Address +add address=2405:b500::/32 list=CLOUDFLARE-IP-Address +add address=2405:8100::/32 list=CLOUDFLARE-IP-Address +add address=2a06:98c0::/29 list=CLOUDFLARE-IP-Address +add address=2c0f:f248::/32 list=CLOUDFLARE-IP-Address +/system clock +set time-zone-autodetect=no time-zone-name=Europe/Moscow +/system gps +set set-system-time=yes +/system identity +set name=MikroNUC +/system note +set show-at-login=no +/system ntp client +set enabled=yes +/system ntp server +set enabled=yes manycast=yes multicast=yes +/system ntp client servers +add address=10.30.30.81 +add address=0.ru.pool.ntp.org +add address=1.ru.pool.ntp.org +add address=2.ru.pool.ntp.org +add address=3.ru.pool.ntp.org +/system scheduler +add comment="Setup Global Environment for scripts" name=AM-SetGlobalEnv \ + on-event="/system/script { run AM-GlobalConfig; run AM-GlobalFunc; }" \ + policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Update Scripts" interval=1d name=\ + AM-ScriptInstallUpdate on-event=\ + ":global ScriptInstallUpdate; \$ScriptInstallUpdate;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Every Day Check For Fake Bridges" interval=1d name=\ + mod/AM-IPbridge on-event="/system/script/run mod/AM-IPbridge;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +add comment="Telegram Chat Bot" interval=30s name=mod/AM-TG-Bot on-event=\ + "/system/script/run mod/AM-TG-Bot;" policy=\ + ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \ + start-time=startup +/tool e-mail +set certificate-verification=no from=MikroNUC port=587 \ + server=smtp.mail.me.com tls=starttls user=vadossio@icloud.com +/tool netwatch +add disabled=yes down-script=\ + ":local msg \"Host MikroYellow is DOWN\";\r\ + \n\$TGSendMessage \$msg;" host=10.30.30.86 http-codes="" interval=10s \ + test-script="" type=simple up-script=\ + ":global TGSendMessage;\r\ + \n\$TGSendMessage \"Host MikroYellow is UP\";" +/user aaa +set accounting=no diff --git a/MikroNUC/history/20260430/20260430164001-Diff-Config.rsc b/MikroNUC/history/20260430/20260430164001-Diff-Config.rsc new file mode 100644 index 0000000..a67fe88 --- /dev/null +++ b/MikroNUC/history/20260430/20260430164001-Diff-Config.rsc @@ -0,0 +1,36 @@ +3071,3075c3071 +< source=":local ExitOK false;\r\ +< \n:local ScriptName [ :jobname ];\r\ +< \n\r\ +< \n:local ExitError;\r\ +< \n:local IfThenElse;\r\ +--- +> source=":local IfThenElse;\r\ +3078,3081d3073 +< \n:local one 5;\r\ +< \n:local two 8;\r\ +< \n:put [ \$IfThenElse (\$one != 0) \$one \$two ];\r\ +< \n\r\ +3086,3087d3077 +< \n:log warning (\$0 . \"\\\$1 = '\" . \$1 . \"', \\\$2 = '\" . \$2 . \"', \ +< \\\$3 = '\" . \$3 . \"'\");\r\ +3099,3115c3089 +< \n\r\ +< \n:set ExitError do={\r\ +< \n :local ExitOK [ :tostr \$1 ];\r\ +< \n :local Name [ :tostr \$2 ];\r\ +< \n :local Error [ :tostr \$3 ];\r\ +< \n :local IfThenElse;\r\ +< \n :if (\$ExitOK = \"false\") do={\r\ +< \n :log error (\$Name [ \$IfThenElse ([ :pick \$Name 0 1 ] = \"\\\$\") \ +< \\\r\ +< \n \"Function\" \"Script\" ] . \" '\" . \$Name . \"' exited with er\ +< ror\" . \\\r\ +< \n [ \$IfThenElse (!(\$Error ~ \"^(|true|false)\\\$\")) (\": \" . \ +< \$Error) \".\" ]);\r\ +< \n }\r\ +< \n}\r\ +< \n#:set ExitOK true;\r\ +< \n\$ExitError \$ExitOK \$ScriptName \"Err test custom\";" +--- +> \n" -- 2.52.0