From a2e042a9a3f6da80768784966d8fe0f0474ba1f6 Mon Sep 17 00:00:00 2001 From: kmitresse Date: Fri, 25 Oct 2024 10:05:41 +0200 Subject: [PATCH] [feat] - SSI - TP1 --- .gitignore | 0 .../Lesson/01-Synthesis.pdf | Bin .../Lesson/02-R-Evolution.pdf | Bin .../Lesson/03-TCP.pdf | Bin .../Lesson/04-QoS_Scheduling.pdf | Bin .../Lesson/05-DiffServ-MPLS.pdf | Bin .../Lesson/06-RSF-0.pdf | Bin .../Lesson/06-RSF-1.pdf | Bin .../Lesson/06-RSF-2.pdf | Bin Model_engineering/Lesson/0 - Intro.pdf | Bin .../Lesson/1 - Concepts principaux.pdf | Bin ...erie des Modèles - Modélisation logicielle.pdf | Bin Model_engineering/TD/TD1_Kevin.pdf | Bin Model_engineering/TD/TD1_lucas.mdj | 0 README.md | 0 Tutoriels/Git.zip | Bin 0 -> 123563 bytes Tutoriels/Git/Base_git.md | 0 .../Git/Synchronize_github_&_gitlab_repo.md | 0 Tutoriels/Git/Transfer_repo.md | 0 Tutoriels/Git/images/checkout_branch.png | Bin Tutoriels/Git/images/checkout_c2.png | Bin Tutoriels/Git/images/git_initial.png | Bin Tutoriels/Git/images/head-1.png | Bin Tutoriels/Git/images/merge.png | Bin Tutoriels/Git/images/rebase.png | Bin security/TP1/.swp | Bin 0 -> 12288 bytes security/TP1/GenSig.class | Bin 0 -> 2522 bytes security/TP1/GenSig.java | 106 ++++++++++++++++++ security/TP1/GetProps.class | Bin 0 -> 1733 bytes security/TP1/GetProps.java | 74 ++++++++++++ .../Count.class | Bin 0 -> 1258 bytes .../Count.jar | Bin 0 -> 1133 bytes .../Count.java | 52 +++++++++ security/TP1/TestDatas/testCount | 17 +++ security/TP1/VerSig.class | Bin 0 -> 2260 bytes security/TP1/VerSig.java | 100 +++++++++++++++++ security/TP1/data | 0 security/TP1/examplepolicy | 11 ++ security/TP1/sig | 1 + security/TP1/suepk | Bin 0 -> 443 bytes 40 files changed, 361 insertions(+) mode change 100644 => 100755 .gitignore mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/01-Synthesis.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/02-R-Evolution.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/03-TCP.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/04-QoS_Scheduling.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/05-DiffServ-MPLS.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/06-RSF-0.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/06-RSF-1.pdf mode change 100644 => 100755 Advanced_architecture_of_emerging_networks/Lesson/06-RSF-2.pdf mode change 100644 => 100755 Model_engineering/Lesson/0 - Intro.pdf mode change 100644 => 100755 Model_engineering/Lesson/1 - Concepts principaux.pdf mode change 100644 => 100755 Model_engineering/Lesson/2- Ingénierie des Modèles - Modélisation logicielle - 2- Ingénierie des Modèles - Modélisation logicielle.pdf mode change 100644 => 100755 Model_engineering/TD/TD1_Kevin.pdf mode change 100644 => 100755 Model_engineering/TD/TD1_lucas.mdj mode change 100644 => 100755 README.md create mode 100755 Tutoriels/Git.zip mode change 100644 => 100755 Tutoriels/Git/Base_git.md mode change 100644 => 100755 Tutoriels/Git/Synchronize_github_&_gitlab_repo.md mode change 100644 => 100755 Tutoriels/Git/Transfer_repo.md mode change 100644 => 100755 Tutoriels/Git/images/checkout_branch.png mode change 100644 => 100755 Tutoriels/Git/images/checkout_c2.png mode change 100644 => 100755 Tutoriels/Git/images/git_initial.png mode change 100644 => 100755 Tutoriels/Git/images/head-1.png mode change 100644 => 100755 Tutoriels/Git/images/merge.png mode change 100644 => 100755 Tutoriels/Git/images/rebase.png create mode 100755 security/TP1/.swp create mode 100755 security/TP1/GenSig.class create mode 100755 security/TP1/GenSig.java create mode 100755 security/TP1/GetProps.class create mode 100755 security/TP1/GetProps.java create mode 100755 security/TP1/Signature_code_&_octroi_autorisations/Count.class create mode 100755 security/TP1/Signature_code_&_octroi_autorisations/Count.jar create mode 100755 security/TP1/Signature_code_&_octroi_autorisations/Count.java create mode 100755 security/TP1/TestDatas/testCount create mode 100755 security/TP1/VerSig.class create mode 100755 security/TP1/VerSig.java create mode 100755 security/TP1/data create mode 100755 security/TP1/examplepolicy create mode 100755 security/TP1/sig create mode 100755 security/TP1/suepk diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/01-Synthesis.pdf b/Advanced_architecture_of_emerging_networks/Lesson/01-Synthesis.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/02-R-Evolution.pdf b/Advanced_architecture_of_emerging_networks/Lesson/02-R-Evolution.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/03-TCP.pdf b/Advanced_architecture_of_emerging_networks/Lesson/03-TCP.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/04-QoS_Scheduling.pdf b/Advanced_architecture_of_emerging_networks/Lesson/04-QoS_Scheduling.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/05-DiffServ-MPLS.pdf b/Advanced_architecture_of_emerging_networks/Lesson/05-DiffServ-MPLS.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-0.pdf b/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-0.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-1.pdf b/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-1.pdf old mode 100644 new mode 100755 diff --git a/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-2.pdf b/Advanced_architecture_of_emerging_networks/Lesson/06-RSF-2.pdf old mode 100644 new mode 100755 diff --git a/Model_engineering/Lesson/0 - Intro.pdf b/Model_engineering/Lesson/0 - Intro.pdf old mode 100644 new mode 100755 diff --git a/Model_engineering/Lesson/1 - Concepts principaux.pdf b/Model_engineering/Lesson/1 - Concepts principaux.pdf old mode 100644 new mode 100755 diff --git a/Model_engineering/Lesson/2- Ingénierie des Modèles - Modélisation logicielle - 2- Ingénierie des Modèles - Modélisation logicielle.pdf b/Model_engineering/Lesson/2- Ingénierie des Modèles - Modélisation logicielle - 2- Ingénierie des Modèles - Modélisation logicielle.pdf old mode 100644 new mode 100755 diff --git a/Model_engineering/TD/TD1_Kevin.pdf b/Model_engineering/TD/TD1_Kevin.pdf old mode 100644 new mode 100755 diff --git a/Model_engineering/TD/TD1_lucas.mdj b/Model_engineering/TD/TD1_lucas.mdj old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/Tutoriels/Git.zip b/Tutoriels/Git.zip new file mode 100755 index 0000000000000000000000000000000000000000..a43583259a248a87720f01bfb1626eea998d1957 GIT binary patch literal 123563 zcmZs?Q;;sO8erSDZJWDo+uCj0wr$(CZM*+AcH6e?d(O<%+&fb@58s!E)T*Q^sHCzK zWkA8ufc{$)LP<6MN9BJ7Fd!lz2}>77)xYpSkZMG$W{#ydX8+Bu9Amjf4JpTjwZ~p%UK>U18w{0>b$}LFSe&`j&Q< zE|!Ki3=VeY|D%J{Pb+3QkLzat&Hop-)!S7^d!~yGZIx&ge?xfTfIvqp3O!1M`sU^) z1Y{6)v=q%f+#vMe=EiQY@C@^#?{v$%?%TP4icvNRu#?;?u~O5TM`n;ua^~RR zpkZ%HE-;Wcx3{;atC(n5pLHXxZlG`%M`$v#FC9MNZfK7rH+nR>w?|X-=Z2qjaHn`3 zV8uN&Xz0%SJ?y@Df;%{P|Jsv^rsBH9BP$}~)u-uPdRE1`HRN~~_KxiX0zr#U&wY)F zS7g)70k@PJ@se0SeNj)hlgO${ zt@6w3Qk_#tXPkxxHW$ugxWRy&62?L>EJIaPFZpH%T?plGd}ZQITbLW_vj_YgC+<;f z4T^hd|0iB!B#9He{zIi}lGrB6&KixV|y z{7B#q(xIN3g$gTj+89}DGl$Ja?lv6=ve$cYzy|8NwWZ8@nYQjgqU^#7U&xAEK7==Z zA^}<*S7}AaX-lP@PBt^BKI^I&$uZ8cv$FfI27|@u!-_UhY-EK~*dh@dld(k;zF)@Q zji234IlT(;92YUNvX>}<0T#ItVe&vvIP2EBg4LLp{QFl?EuHV+BQ)gwndRg|eu^xven@~4DrX=taT zd2BQbV+1wbegkrE3F@>=F{-%xW;ay~riETJw0sM@zd^=AeB@?N}@))$d>uP0=dg`kUDMe|TwvVj5*V}#kk8l9g zcW*q0jqPDdQc{(+4^Jk&pVJZw@l7?wt)CwGdi?M2=kJd9I^l%G(Q2o*{5VHO(wmkE z-XB;I8(yxx1msO+r_)YP)}Ai*O%u9g;%VBr`%Cv`2b7^dqU?HqxU}}`tHso-B#;E( z@Fe&{%@Ys>j!zXFMJNb)sIupvA*#8fadiSEtq`Ck#W=mtM(nv%a}X^irtYNF_I7=4 zhJk!~crI~rGc)oimiPf&A5ecx2q1Qt)6ZB(#1{_t)rdthe5a-D-~jLUTQ&)c)`a!l zVkBASE;-_*2rj4|-M8`BvKI=U8Ez7$6%AP|Fucx=h*xpf$~!(7h^1gP-(6lgY%`of zif*e%CI;FhjkGEvC|qxNgTdM{0u|FH2QS!9a3ajYT_KWlwYhVTV!!HXu3m}CyO+!J z+u-AdH-+*hblh;lW)~v+jPon88lAb4JEa^Vi<=3}g?JUWhxF;AqJHCvDXksYAZbCF zs9fR56Mn;XqA7wxlCQRY4_(*MJd@po6oQdrO{KX8a|@aEZp$(H6?5-#j}uzVsrn*K z4kQ922B8n%RJkQ!Lei4WmQ!8VD$6XJyNu$*hNgP`gi?1Sh%8lOLb8Qn2w-Q2GC%2~ zhAw_;boVfF1w=;32;FdaJ%PD&wI!P=W#?y4l=_#T=F-Hu93M$MyJ|KIKFi*vJb?XD z#HUVHi&8c<{MbL%A)D@NBvl?r!bX<$r8Klz$?`$bTQYIBMqm4sal6Uxpn10>a$Ux8 z75bqFl;5nnli7E}kDHb~GFQT(0ZVODJw_LCjqmZdIt^t?IkGPbH8`VE!b zI>VIL@6rem*5FSg5No0e+L2S+B)vMd6Qqik^1XCH?~cjT>xI)EzrIjv>fuv?GC1j0 zjh;#G_*cixhtS+>p(~Q1Xm)y5!$AN%rYQ*CT6z-^a~73V^rAO)BX6%&6uL6x!Qlc7 zkA&cxu5Sq0onQibH(YKm+01Nm9~sK<02>%5j31a{H;+=FL9#>ajQ1h8>;4GAig;hP zG}_nC1;>EiPb{MtNiu27&kG**Z@J5D%l-tS74$8jd>FZpq`6vGZd)OsADGIXMbGvL zk?GXm>S^SqA}t$+@BFoUF@dAiCy1CoinB1>+-TFl`Vad`yYrXJPb{o*Ac0TLup9>b zWBSPb{o#Y}7ngoF5GpQ}o~@t=R8#6`zV>%ZIb%C{`KG*Ov!r}q1TTE04^#-=Sf#c# zeOm9}x$*`c%`{rOuZN{u>P~qQhC_c4`Ds8vZGg)1z3Z|uQcs1zO)~ewjm8p+7RBrk z7`pVV5zuFH({KT@15B8$D@-69{RHj9H4Xf{ArQjfaIqfJ`1jy!ruvU*bVTwRh`;&uG^?7<39?BjWT)jCq$I{HDg;RBMVgd z&RvkSqIgQDL3lJCm=`uJ%G5Lrg%9Fv3Y)zgt9PNq?{gOAPy`Q%)KitAH)xki@W*q- zP!fqiUJ*97SAJ>Z3q@7KIJ7+n@T*-85*mFhi^O1rU-uA3QzBg2@28QSdSLe`Cw^RM zV};06tSc3R2(`mHl=g|8n{0y3slINx{8|K88uhc^_&Zj7QU+Rci=p*;fty4!{N*>0W>XDIlms-&K0_#cUV>G68A)BWARaw`f}7e>)5e)(mToidx@CR zYd89+ZsqthD*mfpk<&~?ob}nsn$H!M+}wQ=oGB^Fa$6j^bj(`P(D_H(hjtncI6RE` zkC(D)L04Buojo!Y06n>|`J>C;WckC>bk|v09qX_h{6dR$OfD5Jx>`jvxLtsr4>ZsV;2tdh&PI%( z^@%K3z!3ce?cD@uCgku-7X7VQ(ap45pz~z+Tbx-5o6ujD zppt|)(6cJWozaZ=2U?ZX0bFq+6$J4-y86xmpQ+r#wy7L=2LCZjYo+7+*Q97|ehBzhaMOW-u$A*W}zv|~} z3G}m`j@OFo&T=I$er{4y_C2QGR5YSnX3lq5O&iXetcX*SnJU)Gz?bCpw5fsa1F6*l z{hzfq5x(g**h6(PBcf^*OxjNi`+VOk9#@KlG?SM2a8WevGbyJ2yt&&cZ}l@^H-oQ? zgCk?1d!F^HJ=H)jjAhIDp70|iD?g$%Z(W&lGAa)4FOOHefE#9(C<;ct!e1nQG$h6L zHz}3I^oal7{$0g$&H*2}RprB7=A~|nPqqBYhMgvV6f$qc$Z{c9 zMIC84ZhBQ@&uJ(r^kuI4J--TLSxq_sNS;J9xun5+zJyJ9X#T-OMAL!F*2Wa$mh5)2 z`|XJsSo)eKhHZKpVP)tn`9s%E!w4l*q?MG^H?&?gxmk8Z}<5j4%&KdI%-R z{84S@vW+6v6jBZ|f|A!P6A0lB;>*}YJ49s*fPrr4shLb5Ug;WQ+> zL}u#&tzU~jNnm%i?LDvYNVvtLZ5v1Ww$eA7oYC8tv8W?Z)k$ ziSLv%#a6W?R;t!xRHozAfw$KIy$KA&Qc|4|}?W+mYiKPcpD-qCxxW;LmbT{BCp^=fFQNHafW=K<;& z2hB_y=O&LAzk|5TEqI8dTg3p2Rysl%zCo(ZzMg`t9m%-TuR54vg0hUk|2VBBpPrwE zC%Ms&r+;xr!1PQZimfVGI(sf5IhWFZlyQpM%rS?qr?%~~^qCV*#T_-W_oL)B?QACkGJ31T zMc0Z?PkE_8Qiy6b%!EA_#1Vd@{1&&mj{+BA#%Uwq+lgk{HBoLHkbARz zS)%Iw@3Epcqx86OHOZSG!zu3Ey2u6KfIA}SgCTI%22O0>H&~INcbnx8#kc6_JS!;>>)13Wk zhy2*NiCh=puMxH#zD*kDkO@7mT3?IhV zp6$y~R#SC-hP+z8qQnAKyxTC<;(#-h%~lfq24X8>*p!*mU@?c>O-FWrxyn?epm*I> zjRN8rbNI}fp+Ou zHV(qGBq>gO81-c+V^?m)xGSA>biGCZ!H(pGrj{2h&OVYwC7K3nZHyIsvTe|ELVI z&FAw1_f{f*?JDI5`N8_p0t|z7REX%|OodV(@|s@ulB9_bbgOj*p%zt#Dwo8}iI!w@ z^o<1HtBTxIkqadBmhu(^ZM((-C6~m9{)5ArnPNTJkwatgnAtq19JNqf3Gb0&!AmI~ z_SYF9MQ5I7#IN9eSpi*g&P+>{f4CNfMZoFOnYl5#PsqcUYeevPQJm|M8G66faP9(T zOKk8RNkn=t%+$7%mpB$!A$~jlK9+}7(z)O8oHXC;=lpJh@GHLW8r^NUr4;p<;V<(I zkqNg7g3N_vlv`Cycm|TT2Z-$zgn`PjaCu{(gl-uxKxF>IC8Vh2*_2X%Ox#2lGU0B~U?IU$b z5e9-YkqmOJ_)sRavM-$WR%`ERA-QKoH})?@vaghN5TmwdB0|95-gyd?cIIvwwQTv4 zz4Z#O;UwZzx3%B_CpjH;;epTLy1zriv2qNRTA>LJ6 zF2lX9?)4XV%DN!%&HT4QYzE~O7P@3=^4C-eg?eJ%wAD0ale;xlR9+j)1VR;)RZS2|m~p=Oa=9q(B}TEc6_E6*0Bbk{z-N z?k!6p+0a`>NGu$+8e=1wY(YXM3=KrKGJal_c=JrpCwquzvATGXvqD69$F9+4@eW8` zv{L4G+txq*0_@<~;-iaGsu%~?m^sCV2?QzQ6g)+>wB-qTN-#O4%y)LG>GVWbaXt zSQ^HT;yXwMUS$>iBfnj*tAv+sr9quZ#bcFEg&2fggUpXlvjhgMt@IXhbPV-P)nL$I zQy|0x?Yk$`G<4f*+@?-nBYy3N-pcS7Y_k1uGG;v0p%xzs zNVH@tM!XdJha5e@pazBi&6_JbKrP$wHu-l@-lCAmc{mE@@m;3{gmp@2wuL6VlIev{d$z?c-eKjO$vqR%!{n2%20C{j5Xvj@S%BTyznEvAGf_ zgSppikM9}vc~E8N5k5Y$y)o`AkxL~oH6OX=>v-9~JCO<^-bRj9h_KC(L_TV_qG6$| zJQxmCv!@5Ab@1P04apP*SrUaO@($K9(SY{WdFl{<+NXwH8oXo*I!iJu~9MLw!^&cRwzj@{K7nGP8U=+<+lpQEd+83Z)ZZYE-T81XY zTK>0(ge1Rbd;qf@p?*S5@`8@9Gn&2bL$If9feEbI*ne?HTUPBxv%CYC9;GQ9vZouP zeLmm$=relK>1H@;($|tG<$y+SrtOB95u3JDJjAO-B%n7Gv*Z1E%yQ@|6tOgCi1=VARdTcak{F=|4Zd-JCqoN-`0 zH@vP02&F4;v+eVhmWl8d+2WaDkhMy z4pCF-Xd~U0Mkn4tra6^kX1}`}`!$GeLtVISJ1~{G`APoPbeC*Y6WoONW_=4!Yc*Cj z&z5?9{ET=DPqm-l-u7FL$cJSg%F;Fe)D;J-&@l)au6^7YJ+w8Ne3OI&<_kf1t7@-c z78Hrx|3%0dK7GBFzw%NCjvt=5+Kf`1f4E7sgau<&H9<$jsifI*--eL9u2>c5Zd%Z5 z@!QQ}q4M>Wy>dDyAHV+AJ<%hJ+-@^Be_~u)S+c)Vw(oVZr3d${+E>W@PwLzzc7QaC zRhoS+^-3(jIn(#0+QGw}I?-zMfLY^6obk5O^e_hbg)Ul)^~G|h_xRd4t2W`gRZRIz zFf|@Gx_rj0-Y^aQrU4z^3KnJ-gU=FFIrsuVR7#u;1o5OtBe34hS7;^P?JWSm3W{Dv zKXCm|LpP~M+G`K;*5tN&Z=PYWS(|-tQ>~YWQ-NjHXC=tuvVAdk^rr&gkl)*!%2$R2 z9UJ@6$wqU%w!X)oH-S49fcX&y;b{fgM5UQe#?TpigPV+7ZU?htVkw(OS418=cXR?p zo@~Z8VOAkWnJ#B%QiQr$c>}V;*3VAHI&3!e8{^y~&if5qwV7joSvLLt^&>(h%ZlK3 zYpB3|rT-+sHl_CN(WoNzZ;SUMr|^N|eTtXC-JzBsWPwTxRc~#-$-Tb_Z;aP!!+oJ^ zDtSG!a85(LIV2h;pL?F6S0dP~!gC%*|GD%Gj)c%&us3cU^$(Y1!8gS4G}EGvjPP`;&)Dl9`bQp(Wmtf z2xBe;0$uMbfi6V!J~_6w4i?0&S}8X1Gp{^yLSuSf!&h@sfB&Z?ujNAqxc z6!wLhC?Tv6Ju-hr{g-Gdhs5qP@)^-T-d79w3qgP+!C1-T^G06w93j&uh&?g-pDTix zOB9kL<}IJ-EtFc}oR0&jF;o($*Iirje-Y8C#X&T@tp@vEsh?cKqLlis(j zHk-y5trgcK@4`|2yQy6MsIy$A$M;e6X-?vbS}M`&h>=9-;0LUOC|L?n;}E+$A$Wcp zTW+{M=3vpCVUUi!VkSBX(|6^kM3=BuVuF^cCdGasYE@8b;GyZmME|W^mXwH^gc&un zDEjDcI7f!f+bg^IePK^PU5~RLq~F}$i!{M}!+MwFa$y)<1gFLK z>aXN=U!ITV6g*W{!6w$*#=~N64B&E>vRGYI~+065%*N&J5p8Kk(u&B9xQOE=NQ6G zLMD#aQ!JJCET3_z;2w5Xg(&pIo`EZOM1m6y7{p;m#-mJr8>0q!lt&_34{~9mksL z)g|Xqd0xUKu(U=B?bJ$lT@fNZ9M{9tOy6Y`a9LItTZAUP%A!$(wbGBHf>R-ItlD;u zMEw0Kp+9Ccu+^jMw?^X!WI0QdY^09Stg{R_k7mBlIpzscDR4K~ypv@i8ml;>|HE3s%e&Ku5r zSyf<*PY)t*&tR;wr7;_tB(`N-#`Xx&o`XIbQdMD&#=rpgFF@$qtMG+3^kU)4Adu@k*XP+mWz69& z{Qgkm9bwkpXDm%P%ViMPPiGXdt(G-j^LD)5nBUAt&`lbShVtC;YmIhMs|lH5bF@2LCKs8HL1Q|BTPTyR9by4VYuk z`Flf2fN1xqqRtl&w8o#%!PJvZDIA>0Sv|bCHd_Zo%Uxbj15{m1)5Rcas7H@9;6cvI-iy8{ zfr>y73m#Ifmfh16OEwd?^;PSVqy4Fm^y)-A$`|GCQyCYEc1|EhymZ|%JPOft7+>ZK zlbFV~Qq4@!cWj_PL2^sb7SmXb1B=jo=3}*Rf;5)$q7D1%`d^}w#y}X~XPn$aa^ZP^Kp64%| zHB%t4ayka3_6=_h79$A9U-FncG^alwcEb1WBgE3JMLIX|(h=+79DGm*vCc}cV9!>W z%?=wZ^+S$pfP>EH$G(qHhD$H@(BU@qx0yJ~X4nO#{*3P0^1p23(vcENzXBsTigvtf zGyZkl-y5=L?tEW^e>ZS^K;@J9qI5ZMiT1aoFp(3(8h4;5km8qf-d-BqHru{Q#5hyj zC!inW?aT5X+(U}?%vDkl*p>dZlU@lBWcxuNjCzZRIyA=V!Srz6fqsjzI(d!?enuDXa?{pV7<)j&VHk07p5gOaKA# zAzymJ9x2=QBReoVMTuO_8pqS;N55Yt5Vh*TC2Ge0oG3Y3eubTIx+?*#6^+G9$z37@ zd=>STGR$4I5S16BPL_xMvp_lUS;whw*Fe^*^mZ!n{f#&$Kv+S5I735}bPA@vso#gk zk#D=@_Np`2O}t}YuzLP!p;|Kye@UESAZ7KbL-%X8>Fn)dqaAQr#kKJ9w>@ z9u^ic(OHv5gf$YMxw;uuk+rb%;)zDiB)pcX(;F;(%hBjH`qIR=^36Ix(XM19OEhCQ zC=!AGIrK-ZyJa6%v3s_knrp`nE&8)cY14+v13UUNS_83_K&}G)laK(5I;8`xCn!zU zEH@#IvtyTT;;b#AyH4<=dQh&8axLrj)QD}iX+3sU@}T6$xNb2IDeH`txbe(VN;V?INnQ7J2Q^$uHU+ zvf9qwN=-`u?mu)HPjx*MhI3h~!j>Tsec3D9)9p`V` zW#$$^{)o-;VXcb7Ue^k4^#z1d3jbuZlTKh=Mv=p)KCbr~+y-adWn0&qM9 zVi2r((S1p9M%_ZDtlN|>&14Ub#rXvv4_~Ry!FQ)fCCE|)@8a3h)5y9#wZ3GD11dCP zz3Z&643T;>c9&1Q0}r7woAiWtJoO{aMbBO60EUQ@XIdI#-wAQQem&&1A3l{A%GWb4 z3UuFPwWH^zXU)G2#)>jjBT=`97p0q`{+L|-brWouYesvum<;c57pFs}9#c;sb32xa}_eVu&JI{%28rGwalZ8kIjoP zCFactcW@ww>l{~CUv_`B!JKOvjHk?gqYBNOI$^M39UcHXp8~I}p@UUF`FB@A2TI+A zxY%EL(tk)bYscCv+;i0ys&5~?{13Z5DHgqXH`HnD%}i#75+0^+B6gm~kwalxu@4xr zu`cVEp+N5?3Obkk3!F^jvrJmqC@)!j0fH^-z-s$1a9uyQv9GBI0qscVd9AR&36LkyM?|IYs2_CRYkvpI@C7Er=61CV$YET9tx5xoZoD%z?^&F9>4otE9!+uZh8x#(w1|H-a_~CX;kJm z%D*$(afq=304I;4-EY$)#-zd|umF9Hb^tffge>B8p$MUIt&2oa>!4p%o!5}aWNQbY9v4m#POqZz~88(Xfu~&hP-$>*MAP- zs~izC`hymUm@ycs9T3(G8gvJXcK0(eI?m}SP0(7;8Gb7uVX)JblGjG7t#`4nN%-Rr zH#Mg(42bh-Sqf%0-`X02w)3EfSe#J1!?t3P$L+_bvk%TMR0<(0N-`MDAQYI3I9X#>PWaQ&v@&D2g}b#dJQU5@1xcRA<&+$ zZMbU?6Q;H#g-~Gow9_0r$U2}b$r`KKJ?}{EBSpAw9bE0S>pQfQDlQafK5b+xE6W<# zHbY2Uf&Npla1y(DZbA+%4EXDYt8DCqJVQj=lMKwd0ZvgSFNBSzWmB;OnRcH`1M+r5 zg(TpkNSh2t??T1uFt-p9#n!6@Isq6kKUa$A~L;3rTeyHkTfvn-hjzP1p;gDaq_4+2#KisBzE&jC3Yt$hwp>mD4u^pfObLkq7pJkq?_!JK1fMS$& ziTTHy;yU!7S*XJ4V{wIl?M^aF&Q(xT=s9-ty`Q+-MvBBMxWPtfR^kg0cQY&LI+85F zx7()`>-Rz9%c~=S7U8ARwBa%Y9ZyEVOvZaE{oD zi(eO-P%E7qqx7N~<0;jtF?nz#c%(8*QADZ8&xFh)ODcJMcJ84N?2tM(LM(s zo_F0lH;-p)%aEQA=LjyDei;Cqxr!zYL7M+1hsq7v#tZ`JN*6+?@ZQ=3it&a9x z4p-zPh6johT$$NvGp7a`lil$wK;V{u9TUvLzT0(a7k~~q5s($-DuPJ%P@nAe0Sfa^ zB72Q!rE(?gQI}jEk+fT(BpEY@jH$Yb$Lnpi(tE?i&a&FR;_V5tUzWQTQ6uXaJUi~% z{w3R=m#mkoQH?Mj9wB`~&t?+3qY0ef>#32c4lB=uAfx!k0fTfgVKK{q&$KGzQ^%et z#2>%XQ5U6_##Wa5c?(^^na8V8)jnj?XB_~hnTM5F;@#pm>*ReQf5BRSNCx(0_{U#& z#J6}XqbEGl3Pxpjc|!CJ5hatWZ*y(is(O?qqG4FbPlA$sGdWw9o_axw07YV_^aQMU z)^5lR2ZJiI;=o5iR57#-ed%jmr(?bes0tMYJe@E^OB$IjOBY{>9yvhpJIa{jC?L)vhJbI^@aa%Af zuuwF#xbuzeqgCuCtAz>{WP@EZ{JQ14W`V|-RKi`Gk_5iQwJ15kR#2p$#q}vnJ*lKK z4v(>`B z(iMe&;p3ZEG2xWSep)w}`>!{$2h)36TkeyJtnxy5`10?bS{ z6u8=XXdADTj>4iRLZ;;7A9a68MQcZv(ddCF7Vm@QKj#&~Kqw3u$uF0e1?xgalX5E^ zT4quY5@^2D8|d!WK5nO}ydoOV0&f&VHAQJ*|Lh?9V55 zzwQYvaF->x(JDc+y`@u%`lrYpRz|o1`>^Hv4KB!Ib_&)4W-xLXX?S}?YJo}Ib=8DN zFbdS{(vNEWy;sU@Xx0INw)aQCH%sNerL7N$0cs|JkS*-GT}X)&6+~a3;Hqmo-R`Zx zYEFr%l0mf*G?wNvY1PrX11*2K^Na)I=4#w* zTN5|H*Y$wj&6-Ug=#iP4X@u7y+_?dSA1C`Q6GB;MH;hr1!cESF*E@3bgVcQY|+QJdYzxR%{i zU_$;Qj>1N|47PIbJY+$i@H*M4ON9ZA^PBPd*Ec617l{32S%=vsh(k-vlV-D#xG*vDvXP-t zbV-8Fy~pberc5j}TU87cXwQjtguyx>c@da#b=WcEuJlmLohLzw!DJ{?pR=VeRh-TW z0;VE+oO4mxHpI)$Ah&>q zet|#yuit)?GGAET6P$5Z^yB@lF*iYd@{yw0OI-V`DINAg9j|Hy_>%CQlr?6x3qTiDZ( zOps9)h;64_N{$$Q-a3yO(6$8&gmc^QQSm{I#N+Y2IG(amN#%99({OGhj>Lb54ehLZ zzchm-Y-2HcPmF4GHWr82PMo7*HwC&Ln)yv?gB#7MzNlNp@c5qcr^|dFtoMhz3-9wn z7XBjdRJWx3pf(wUO-OuZM5Gok{1Bo^CdL2tO#vfeH$VDvXy|WOhDj+Zkx zcxVz+lS@zQZEAY`KK;(iqAVr_fgg$l4g&+DE3ftdYSIk~4sIJ50`#78h1CqXF4*mp zfE-?hNA9;B*o>xv793O+DdNi-7=A^{1GwlA6f%73?JI=DlbJ3k@PIrb8~w)z7tfsN z`>(xBe@uLuGoe4s!0*^BC{V$xIzAFS-c+yZQ%s1|(M`O$+=#e-zR^s`y7V$iQ)GAk zMX*^|ZCewCvttErxXen0krFd;V&5A}L2~ifCT)ZR}W_iuc;? z-3XB6Z*UNs#m-iQAokYZUc8CJ8bA2ZMv!E*KIZ67$nI>)aQZlO+17u}s z_4WL=BCHqi;NR!myD8ndhe zZPXPm{wuc0Z3yR|$Cj~OKEJTgxWh3mXlkd`h5~JjP3FxnhG*GgXTWS@zcMH^kvH>k zJe-0hGBTB%lo4_J{rOr`*zUXC)@!ak8ptxH762jx>&g{f6q zYV5Xs*RbWrG)XYM3lu?sLooYFqhaT)&=ICvN;)U4fA3x4PbGU6U`YuWiDbnOkTV7{tE2#Nil&$mLA|) z2U7Ad82;$`KJ=`)GyVnQo(=7e#^H~q0d2xxg^jhg`5j}u405sBlK)b)vMI{~6AXV{ zk-|ITljADzdhc7r{~bsY^5cYY8h@*sJZ2fWPv2yEOPAzoz0mV>ynV9{gk9iVI?}D! z8nP*(&6FBTqCf%ldo}y(we!FvIOBk4Yte!1SgA9tf>=Yt|EkPL&1pVD01-n@@NP!#$*szk}nY=)$YZ7J%{=%T6a6e9*hGJIxwvXNJR+4(k=mW9

VR&=w;*->Kz+QLjEMpF$P!F zor865BO%xrQxrP<;)|QmJx(fvnJr6-Sgc?zbHJKwTnLmnAFInK7<93K7JXq&^iVfB zb=7!|{#4!7;|_daL+sNCm`@Tu2j|xwWg=qXub_P*)%S>2uM@3a@{WBwM>FXSRpT|K zZwb~jFY8>pMlfHQ>`UEAE&1-6<6DSqYz!5|Qtql8%(DthglLW4G%@3w51zTsKE18n z8Qo+z3_w6j?5I1iePaG0!X^8%jxp5WozJ_clyd5kcA3R6H=*?vOw( zv>VT5c>cVulht)jC(q|CgKviwOpm#e>t-);^L}m2zFj>|++I(LU`J>c0wRdy8YGWW zhzV$(6Ti5!UeGw`0>?=DY;xLa(h#nxu-$Zp$|3Kj3V21l_zLv}$ylj`R{R^M5+ z2eR=pMlcG>SYd_Qk1 z(X6C6GUJ7Rbnx19b10o0=1^y~29Ls$y~MV_7R77oEH;LCC5zB@kQnmv~szyr4Kzdn5uMd55F4Cur5+fzM z=+^7T=~uerKCjXxx-iS*qdpovW(D z#Kq*J>yjxV3AU>c*B0x7l0?R?r|`=;4AqFVZsuZp2@b|(E$U_GiMG?=}j46 z7)=!3yRxA#rX-NEO(s5;E(}1HZ=@fH%Z!6t7zTJc?q_>uDZqPiT+cr{x%ixN+M4Tn zDa~PlSMgmEZ00-XFH~fZ*7kA+p3Pu?bI?){&$8pm8Cfr*(vEn2a!JL z_j2xd{J{Bz1&P>W;9$~9cE?p3d zczM3Qv^fs?d$7XquYYe}JxrFVG<+JIzOnjbWLT{EEatbc;r`>5YjbH3V|rP1TLj9|9T$V8P|OkdjJ-36KOGkO z{A6Cfb6Jl&gYV35vxC>HzUc+<(;>cPRcV&c&8Pvyl~YfG-?MJ@M2XZBcppWLxn z{x5Fh#KyFHUQw*#9;FjfuPRgYBkRZ58&wUG-MxW4SHVlxKWLrXw0L_CC&HEYLC|Tw zdxu#GrQ@6dH=&!WBGth@i%nJ`6=f)@AlRt-M)8a0`{0>e4c}!6(ARS1 zMdZY9p%H2y)sD0-XVz{!1Q*kOQtqeBhu;YHc7kA;?(YMhKk`@2&T~~h)U-2GCl?tQ zB{&w7TA`b|ZoTPe9&#f8;D1G77#uA&@U@NYa|8Kel#9mCflIloopy8pFJ+tgC)Ygs zN>)^_O*I##JZqrxhCKy47v9^NS-8q9nRqoE3rb{lGFt!8=cgWTi&*@z#X-=_`eV)~ zl8W*_YT*)zn3lD3%gu4}`&Xbsxt5K+5h35$;&Jw%-YGD^03P<+%%36V&hYEiLLPIN z278g69q#YJy~LBg>K{Up5iG7ZK0ysh-H8u~a`WK!!rd;?! z;{R)rsxI6)Uzt&qpB|9oGe=P$rxHl5m-;0~lsgCzMh%HCc><{8r;{QV^k5}idgX=% zM!}F+ZA&HA4Xb_8V4R^a^lBQNIr$8*C{;zppN&qmYqZVJttwkp6NiBY zLHumz15F1+U}<-`Ru%I;ytza)JDSnFbj2ym)AKeXNB2%=E+Ayg(B8%=#u#XW`P&wx z#^V!yBeC6vdUeo^)rxZ6n(ON5Y^8o<(IK@GgkdAWHMLMw{(oX>#pV;O?5IZ1i{y`O zUHSEewx?0LG3H>~jI%LGF1bxH+xqr6j<`jh4~<-p+wV46gpyMtcMRXNwoiQ9WK8^R zWWQzW6h|_!QmVV{RRs#a#6P7-0VGk~fMvFhX5m`1tvKKzB% z=#M(@)i+8wB$J<1^J5eVE-p`LA&Pk)W=P0cn&oPPF#TptLP_X-fwaoDlPVG%} zb0M%olFi5KUmNMrvig>b#*vcsqS#RGr0cQLIaxOo)xas6AQ9-@(dsL1mTr4hk7CiW z&Fa_{b!_OvX#hMiW&AZOvU8&RUHs+dVR7%w(rDB7=gG0>*UHvMQ-QnN8W5HXy&jtu z*97Et(~8{f*L)+&A%$V3rG6 zHHqSJ$knTSN^|ZP>M6AhvybfOSy!KI;>dI`{Js__rLdPSSXn%;m8IO$ahV8>WBEQW zRN?K!cjb=Jhc%zu1;+G?I#jD}6&C~UA=0Z;OiG;7nFAu)&c1!!rw39VJ})D;z1Yk{ zla!}B!wuOC{6;6&P`Hm|V|%myk7=|(%d=$r`Zm|MikU8EwAFPi8A`)Eoo0s(DxaIb zWp$ibw_ZvEgA*Y$IwVYi0uoZ>%;GF=Gh7b2&2#Qsf5{cZTYjU~ACI(<*PBI+xfr3g zR*>v^F;P-pxzV5lKmvQ+qvJUU-5?!x_iOQ8|x$WnAXUdwODqFPmu_};$<8{SRm zrn^5e_sr-Y=3_Cm_t29-W}cs=L*w_NodcIrQ-(u3SgrBidiEL=?3-+?#)vjE|E z>^;8jV0ne-OMKwZxDk%)~;#&*I1Te z6iNvaThh@4a+Zjt#&rd6Zj;dlpbRfk6JnzlZFvxU+CkcS6auj$cD{WDd=nfG z`w4(a+u@abzmIe^mhBth@a6_Q=4Rxc+h@KYqoA4?K5xD&vM!x5WCz{auN`Yd%AG@5 zSUK=-D;iuJZO*<9*&3dezl)*TR=q9>562`3U+g=u=wd?GPW+xpb)U9nT*1|8Oa6DWD-|}Uc0_Yj74#{DvjjZ_Ib{8H1Cna27v81jzap!^-ELz0qlJP z8d95%*OQ;0{NLXZ$P_8Q)$PXQKLNROr>s-nbe|B&Oh!50baD4RZu0wi_3k7sfLzwY z<5Vax#jV~ixWWh;0}ioGKnNm!a6V!9KURVBug`p9H1bL#7M%)(_>@YgYyP2%8*+^p zwOc@Q?Vj{}j-5PLBlgZM=?4Aq-dfHW;^ZL^f`I|RY6UjL57b}#dZ4o>_kgNAh?z5X zCf~mWRP^sTTm0EvLT>Nqv#osL&?z}rp8bn}U)%bDR$Pu$t1hnym~6JCR+Gfn6Ow^b z64w?mu#n6nNw$#0q{1>3PEu@jjda%2qOhdXdLth!ie*M<-iI*vjmeHqDF;S?N<+MC zMMRZ!2p(Iz)t9^!^HU0x|Ig=w_pY&Uh$%dIU43C@w0yONd=pTd@BA4ZsU(rWPamL% zR4L?CI=SE)$RrK4JQXk_fw(Z{CY1Ya2WGG zvMAl7fIn0vmuN^N-=g0HoF<>nl#2ITlMlKGikxPB6KX=GvfdHo{pJQnc%$K%w;sm9 zXg%&?1L}jYnpb)hGZr5&vIoO}jTuP-osFf%L&~O!CvnbpPNxHlHbTB04c$&9sk{HP zJ5ZpqO!L0H1iaF%VdT39Ixxu+$D?U4GbU*+Z1AZf)t%g#h7G;L{5sr&g~k?1=rlfI#7^o$d>WPAy6vA8FT;dfw#GaY9<;d4C`ES&9mweH-|zY-io0b9mNro)b^f= zp&nzSVtSBEq)r$N7>-seGXdxKGrdHf%&x-wBA%hM^TmeUw(lsj{x{6?|DPs=Au_OQ zer&#^%YIIbJ5X0?Am_vM4%{TWRaBiINhWt{okklmi!iG;tkRZNrxsv+T6=5{Kb^?t zHiN1>JS(;*;WxqH*Vx?rQdpeO2u>Ix+pf)mCQJ*_2TQ!-YXFQCHh80r%#s-QgJRu^ zjH0&!y-H0S%yf86{4>q>a+n6iu7ZK z1b)84-NW6b@qno~+;7g7R?9uKf3p5W?>xz2(|&Wxb^H3*iBY5g15KS|Q$M>Kc<3>- z>(1p^46_(jS7L!vLH`ob^w5mD>y7L%Zp}fMh;fT?_8k4lxw}dFO`SKM>*)5wm|4Zz z2s61BShYQq{xRu+JAQw~2-K~*Nt%(~2&Wfy!Ks+~4&4Of8Z9SRC$v2iZHUm##?Teu zI5q_*Ulp`7Ee?2Yt=4D z13#&db_=o`VlK$!++*I!KmS~;eC%Ap{%)s&Fa$$S#6yh(=~Gc__1Gh5Q46%-qX%r| zJ>GB$hFq_`TO6_V;JQ>OLOF)z7OJnM(3w-pSee3gahEHa{2dJc2bwT*oKZh-{!Gy~ z(pjA?>ZRMw53wNnz2De-Zv7%np0044Mrzc>NEd^Kto;f$7bx=r>r@im;0XiR84cVs zT{h)OhkR)IrhwT!(WDAHIfO=Ry0A@?O@Q=0bskwA)xUUaY>_X`(#tR3v}JEX88yHw zC5Gprfz^w|VXh}%?p3E3Of(R;gOPTZW?bQ<%C%GBp&?w1NU%)dN<8NY+th(JM?4Jj z6?bKOo;J#j^Ne+uHRMp?>871ahVWaZEQ3G9IqlII&7dJ#oVh@;t7_D1 z%xuicbz+LF3Sl?(F?{S~IF}rI+$$dE8tEce^6B4r<5ONb&ztJ+5)?r?nLEcXf|-J5 z0@+<#K}ISN76l@>Fm6OuxkiphR^Pj@%5)xSdc3XkpJ=(*PG~#THl)q+X74x!2}1fp z*mB`S@z~~tc6fGNSgq82vTV@0eythu?{x0rIa`yXg@#QhzG&dOZ8ceEh|6AK%7-e$ zj@|Lx8IlHix=UgGU|U{$o2Ncyu2g#TaU`6mf#XM1;Q0z*Qu(csV)?t-Nxi~%yZsDw z6Xd0?@o|@8m{U%3Z`CpqRlP8Mk#kl>f?i zUHsgjJ8l5JW)roDS%u{edZMsl`v#OLPwOJq^Pm(DLDIjhltT>KSg8ov&-1~+^=AG1 z-oEEsHL*@ZiM!`|hD-mhu1r$@Ybo$c(XF0<*DvE%vupl#|Aj%ibFVRXL=O_2KD^-w zPCV9*OKk5xBFFalEU$fr4XedyBHma$X5IeTm;2c+o>%f`39)qw~YM3Nts zfuD@;dkdpHpxYGORqZvQ>D`!lXvurAAW%>!eTV#7W=auQ!`qCMA9HT+_F6KI~ z?NvBafAh1wK?xL?M}##+I*yIMKrK>jK3Vh|<*3N>S=?)ST3{!`rKGtzwe#s(Z{xk$ zKQhwdFWuk78qPLk;DW8D)Mv)K^AQQWC+=qV$M(Rpq^mYZ0KfA-Hx1jQzf;m_cYhl(3lSxBE@5+N#U zd~YmuxAE6rrGJ*i3dx$-+34NcyRq?;WT9@-DYP>aIxd^5ho|nN zTf-?tmJy_$oAH{I;a|yoFI6|}?nOg{0@x@g@cp;p@N_(enY1D5iWN#@rRqy8@%&_k z4DZKb;(e3cLmbKtrvn(a$>RU6C}O0_nMC`>(VM`7i%^unhv>=O;R;%^TKNo!tfJ1H z*5!f&zC2#Ip04(2uKykz+tFOH61rJ(d32J++aIVB(x6^Ne!1Ar9$%h)22>ce#Kvim zRBq19&t`dqTD)BP2#47m8u`EA^O6S+ysS`ht^J4;Q?|jos)leFTGBD(!M9_k7tG;WD;B0>EE=6=ari+HrikI<0#kLB!y~)diY;_Ux8auOMou= z(&4j9LQ3(PDgsSh)|Fnr!zlJN>EXu~=R|l8ZYyzKL?BH{n6RvN=IY=gnd=cN=af+* z*K%}0kF=;!M5Bl{FsOYP6H<3D9Ys#Y?+s@>y5DF0wdeFFFL0KYt6EzN?j#+Z2)t?! z(JamO=xHWb55W_IgMBa3=kp#3yUqZEH|c`h z4IV)##|U?sSA5@Up)SU!t!siOI`RsG4)u*ruSaTTBcHyPN2*1aTTEBvz)@aLc=#qa z;w`ax^B`~+e`q&53mKVm6p364rmPL=HoE8BqKDiqI!P)xF8Wc9Dt*_-TY)djuHArn zG{bQ7a9$Z_>og}~GBAP@ftaDQGjU^x(uW4dS>wLEbkt}pSBgz8{jH^Y#l1i(QKA`U zTSIpui@K-hugoSx@9-%+GDCi1;-2okLE52_?MJ$j)-utFJ?Z{=jI8+=6mBl>y|PZ1 z7%FkgzK1QsqrpYltQt!KnIGZy5B!V6*I@?r%WY8)Od4H<<1MFJq&cEVjZ>OMpHF?5 zBr}|Ai)?~xq%JM)yg|w1X;uqYF*Tu=XI`C}|F>!@NpUMgY~);*Ks%F&Td=;G*l*z~ z(z9jR#;8XI;GAFi8!{1{Ir##Gx$b3oVeB zn%-$=vLNG(tMP#yghi2d3pgZSxn|a#)=+kfYEPF{dgEwHiDzvurI4lUj@J?%O`(*KlMRW38S<;x9LQJhPfG*?6J18pdqob*!1oE*!XC2&bK2 zJ<{EL6+1JHE_nKPhZuI98repbG<_px$v=*>Z?e2!4%X~1t$_fz*FiO@Hy%L+MV?=p zuSXZvp{-DNUKLmE)?|v2JH}&B$SExRKE62`Ff&{}gqS3-l;e zOcS+V9=j9UYRzGz7&1e`Sv|oRBkf&;$QKk6#OXP8$PveUw8T&j)fgq7M%>q|zqNq| zmSfzW@Rtq?4uaJAxM67ew_B)3bn4`Tctw=-Dlx0U6p?cuGGwW`+8-sr(&-*t_XRMC z!RJsz;UwaZIc;ziwcXQoj`AU;#(_2`4FPt#hN)rEW-4cO=+Pn=f(0gW7?X`6S` zi`RjE?_E=JxM$KPhxyV4##cjXOdnp;su583~d#tcVqvA%p0PMNbC? zd9s}kSel_q{O44@l4DN%3}NXbf;YmsfI-Q5ye_62@^<%EAsdHnXatg@fkULj25ur_ z)Wt-&|ChvnbP_!NU4la*`cRSN$9K+U2&w8_meS($6zCG$qDE8*HG&zH&FvO@v6-%S zpLr)$Khl1K2oyr!`}eIoW6I;X=gD?6-@6v%cSgUD?Km&nD;)EVN`~2w+XX6CGr#7= zw-l4=+nmW-h*?N4Y~YO%4+9OVl_M~Ue4%CB0EXY8dxf?#$W;CONPX`|MSeA1yz@Gn zK-?>A(j3PXF*4Jaay@$_+8dcvTDxdIjxWwGehc;(;3FbHD?uD;lr$xBcCa1qP!s#o zsyLE&s0tBO)|Jyh10ll;uuN7#LL8X_VEMBkI?)eas92!e8|H_Lj{5Wb1|~x$nnm|N z%(KtYV;cfXbuR99Jq-WKPoC zYNYyaU1D1Ce#AYl?@@C1>fP+C=o(KX%Mf!+s?3>AI@l|Yswyf(O&NE&dC9CQEw9W+ zwp847v1!>!nmc)iVy>(xntewuNxNDx%L_pe`=Ik7M#8DC>>5jq_PFbj;d}*)?2p8e zK_;kq@2DYCS50wcD0(Bx*LdPX>vrsc^>xyYnnRV4Fpo2cTDRF1s{hxShUSsrR2Qg5K@b#e8qEl|;r`rgf?6NMm{Kxe1Pu#H5YTN)^*XTf~mE z?@!zK^S!;}_qOzg>+l}v0HPi}Ng`{CV{J8#LbZPX9?P$-FmES|lI|mY<-al(jh$HG zd=$d2F+O@l?xo#&d5fEQ7Z!hl-IqbLK9BQV%?EG_T{Q`}giO0P(Q@4b?_yU|j1Q?s z(Ihfx!-rzNwjh@3CRjb(+u>yeS&?e0de`s4qAA<9+M8Y_5qdk&FMR?riMlM#=rWtbrNA>u*=& z!e|R&m{+Nb2QwQf%Cw+bxi(>eCgyUSclJbt<%qyWV-NYtd|@nicjo%O8aaCKl$Dhw z+ZR!!x+7V$Xe(2=lYT1{=~*J7w3mEfKE`_ZuwS0MHVtozqn2R1EQu9aJC|Q(&@K{o zZugM0wQPu-O+A+Syk9_lTS~)gLCU9ouldHLZqyL?N3tV9YQcy z%d64Q`htR$7j|AqWFB6t5P|-$`oP_BWG(-0y~RJl?+gf1O`hx%%LWw9d*}TN`Zigd z0ffI7k!~|s)aR>dbnet4s2azaK)a)~dPD-=eM%XWPV#TH032eE^!;y212jr(6gzPH z8!W3ejfLpU5=|eFhotVRH{Sdvr4atAj?|(M&}HiXfmT2!C|H4LV#P#)1BZBCDPwh{ zU9MfaEJVG_KTjwTHIYQzEWP7%MG7q$YeZ}1dGae?ha2jZoN`CsRFrcwrCM|?3<=H| zWprZ>0v1!cF@xEgruK8+SZ*m7CU`|}*;8;}n)X>b5_;ROjz2261k8Sm&5eRGdCze# zNP!=MB1iixDK8}QlT_-qlUXyv20buIO0PLiSnS3)-Rcq1{p`Uwug9DD*^Mz2+3tWJ z_uH>u_gqISN}bqGf+#fkFG!yN(`27y<8uCR8as(|e1OU$jM=v>?@z3G} zJ09(I|5-{K$w>}M3elvB__DTLB%V)uG|%=&TIH#SkVr)F z--5OQ<+vXiaFYJ#nnh`qM-Sqxju|;su3{?^;WAo*L(A z6Ahula!xN`t}4YmDecSq@keN@vPv)V0~s~AbxR{6=AX2Dxr0uU04#%i62St%GJn8w zZVYa76aICehw8Z5V1WGPlM%9Gu&i&Q_~V?L=9h6la!I3ki*vsk{qkPFz6VV6?V5x^ zmnF07RLYT9s`WSTgQc@_=x^{4rS=E}W26{@5wW8p)FO~uCCGXsCWl9pOFci~y0WN|~myAZ&L@IGcynp_u zs&8URr#zYY4rE6vke;Zil5VAI7EvlPNBfV=yeFo!8@qU$1ms+#*&-K-{7QcL9flh@FjZmXXvfdf+l0I*vPR@DlFpkjpcBkx1++M=|m?sgb zgXFaeSc&@QmHA=(!|jsm*&6ib*`D?9iE~Ei)KJ+u-3&7I%KXn7Qtjxf;u(Xc?i<34 zr7KEWM@KRRo`P|L~&}nccWvrJd@|=08j7tH>!^gX?CY9trcEGo|(|;Ng_!~ z`|LA(R7f(W!(vE_`wGFm#A!e#nqD}1OQ#!(_Ly^%aB|7sT- zAT+>u8|T>oQw@9F%`!)alnaT-i-fKx>RMeHaWc=)#!c^p`kbNHl28t zQA?~tYC}NL<0_h0xhs4{rM|L=fe$ycK{GXd?<;$GDRQaGUwRZ0#smDdj08(zzG=iN zPVY?G;}S`}`mYWU*R|IaIUb9Fq@(baz{%|N)I`J!zT9x9MqvghF?EY^!9C51al94wfq{@ddrg0l~^crf=m?*@Me)6mzu1)zrS^(*qtp~-ut~-nOV(5$t%lhugq3c)kKD!+& zrd;^R{Iy2>owzQG^D4 zcABHXhWStahBMH_<%P2b*4_6fSA!QaH9zSGU7yg(NP8hVzgt+&hZ;=rkAI4A{*nbG zHKYNabvPtBn14GK#OeRTr68*JpIi!i_1VLe0qkYeoraP*kXxT>A~y|A_`!4Lf*d58sBLrVn~W?3@=-{15vs0|7Nj z@L!+kS4nB{RtV}+FhIeVldp4q-E0Y(#&oukUGVJrGG~}k&L~`@Tqd$(@6n7kFX1T| z|7JD?9(Z2LPd8DYReaV+F4^}l<09j_eFXOUd%QNH8&$aua5EQ!yHI8tZ)6iZ1$N`n z&SSfUi%ROp);Rexww~@0KYa|*7J4Jd->Ts3P|jMowMBM*{p-+VX*U5y1!D-7o(zJP z)OHL?>Xy)ie)pE7KNm}3wn{bi{w}Md{yXcdx31mp5pD8e=D371YN)RS_G7R`9OP_8 z{~kKmA6=@X72`2c!(vno;SZ?2EMiCln(Itu^OES$tX&URZaYLWldwbKB-MzJM}n^r zyVxc`?#kPOI+5fL8+CoCeZLM^eb6_CB|K`NJ>C3*?)z>ss-KwJIqf-z|9;Zt^Y96w z<>zYuU$Uhr`y%K9#k&i~}9BaC?a0BC<=%O+!U zgqHY%`L`F)-Y^5eq$@wW$42Mr-5wiKQ3+%t!i60J$d~%p%K)}v#!oJXksUYc=8oC96b+U zq-RcS4P8;^64w>cGyzrbIA91ykRR!IxY=$XuYbE3!8tG;JPWqC$aj7845-05(j&fj%GQc&@khO6ko>fWS^;PooihQ=-#GDfZA^3?_n zm1}Kt*<5212(riP+*9vJD9&IP|10WnicrN#gx-FCsxbX0D!)C%2~n||PRbJxDarNO zlb+9o#Br7X2f6n*_IqWdaq+vuIG&u+x^F5osoxdbLW26=B@Ku3NhwG87>3kVZ=rgU zFJ1TFwy?i!LloZiKNK5vbv-7!-WMEnwz~7;a~|=K)n!)P9AeyWa9auzU;m!UnEJ?6 zECuynK{=5XX`=e~X@{&VB~?!u1Q$dywC zVduR7%+YY3YvYf4pdc?fDJ98DapR!>1yD-|2*2bV?5{Kc05UiL08mQ<1QY-W00;m= zg(F!20000000018c>n+u03ZNIX>>1XZDD6+b1!XWa%W{OaBgQ+R1E+JJs{U+=JMHQ zJs{U+b$AN^0R#X5000C40001tyLD7s-M2Q{mI7_D0xepgKq*k%9ZI1f$j#TweUagUT4J z>o4f2>!)@y+Kvw%;C9`89`@Q6nLK#lcKAtBT+Pj3cL6g^4b~!tMC^?0bXIw9z5cBH z`wI;N10DWL8SXznBr9*&T`D+`m2aRwNTLobqs>=JVD!KWGHzCJO_18=h_%bJNg~rwJxy1nBfue93MXxm^TBYp`mej z8q9^d8e~rk3k}r^UXhcOT;s$Bp#Dkx!cT~g-+)=eblamt_J-yP3isr-5`mT@f zdU2@D$)Raj2_`qWIE0;M*jb-O3+;{a5V>8z5=}?5#Bs0;$k%U*{BqwKXlXGZ+HPCD z)oL`N&yrFuPoRcubaZs5%CX_$;YFem#<5Tl69|X^H8o9fVQn73LY?Kv39+7?_{}b8 zsl4J#XW-KlbaZqa#LVw60Y2*!ieghxEomve)ibgEcC?eO5Im?g3BO&|9-1B=!uM|& z{ju{Z_^a{;ebZ{bMKo=vYoTu?Vq~NmX*ozeN{1E3BXem(*4%d2dLmw!<(FbQ2hQ zy;Ipsc~y2l4utrrc8z&#tEk%j^3VmAsfSIPULJ38T8!rfbkyLpBW2be1Q<{KQHZ?nImHYXOI4e>bar{~k9{YYXvU$30NqFYdF zpo$e8Tx?49%&RUd>wSeq!U-G-Zxp%P^ED6iZ?#TaDqGNs%$5x!^WQIvS@bjQn7o$T z{V=^TqS|ri z;|592@01-SLHBokf}PIU+D=T*40j0locuDJshGtywgj1~RYB~YqYNU)Q_{l`TAD9K$(I>Z+VNMIpX$`O z!*jUI>PQ={H`D9z69uyR!1JN$AC79t=)wgO(Gc*eFoUKn!ur|W+z4zIo847(bl!D$ zcMDceR)a->RQSmvo^=XtWAjl4j;}I%xqsHHTX)`+H|<&Svx$mXO|v)LBCk%gRM{0y zf6&Pux1eEQo7e9~0p@?wD?&KxIp8lKZVPEgU@^lHkuyCJaHBJPZA1uRW#2g1bGK=6 zb}=HSN#zmY;cM%uwxZ^uYflN^_VGaVjN2~j`c{*42sA1T%7Bwvw)HC*B5d=nOWrJy zueZmAVm!@f3A#38%OTCp!ZM-Dq0&$4W`xt75!2#rRh5 zt6AM$O$`k*+gb|Ckyx{#Bx?F}ryq;uHpSvP>gw_32cp%@C>zA|UNOhHhXqqOr0i7V z>g9_U)4JBgGx}IxBBAv#Q6Qw0h}WTv7G=rROUlRFDL4 z<+qDWD(~a5V8E#Peo%^)BhAv)s07{?i(^qy(P%CH%qI5X(GmG#fbJ3+Ca&=2slb4r z6maa`?wPXG9iip=rq|~O9Pl4bh?XVu|VU=9ly6}`Zz;G_KZRC>}3?0%V}PX)EXvzLO! zSQq&tI*I7-N_AWs9&e+0FfaUM&2zj& z1J-`u7qvmsr{`U{LD{FmthRBlmP|uiUC8csSf%rNfR3}`YnaW3r(?dM8I?Xr+C599 zZqjCgC$gV{+W1Inv+n18-^XSNL$P2>$mZ!cg_}HEGq#23__A6dlT{>3W7O1UZ}aMh#6zJ_mRVt4PcPJNX3 z>m*D;qM>h&t7P>=mRt2vd;j!87g+VQ&n~J#36vfPT-GsaCE@qG2MbL7y!8aOQEOpi zm#Ut5lJX$nqXDBvU^l@%y5L@N7zeV|^h7(aR+ulR)bkE}tNKIs5Aa;FvlVF-%x$v9 zGpx@tL~LnNFx_qN=XWGOxJ+(B9!ky5#WaZ6S;svz6;J*ec0U@ru_>Aq@-w$8hH8P< z9gHcDx9_MV{ps8|sB@Q5pwGf)z#0gw>b}DdhJKOrb z8Soj9HSKp|<^TSz^!an=>SywLg|&@+%4S#CK>VptT8ITz_Gn@S+U%3$!#D%I_GLPcR^1)<%VdUWn}<6v{(u;S8Dps@Ry@!`>2#SizF5wHdM zYS^F3uC?GWs29^WCRwJna#^IR!=dAj$QXwyhiL@*-DdE(-JC#cdA(Mn_y&%*CU#ro zg;oLy*XrhMCeCiRHQTDr1hMoJA54hWnO#BW)-FN{2XENK-q7}DmRvbt9hr>7HU^i&Du+4zi zX5O62V(}xf{+nt5)hj23;%91bvLg#BI$(o$$Gr!6=0_0A0A9?@i?r4r!!26an6{$S&2gxiv6IB!P!ve2D%Nn-%paW}$2F$ltA%(RXUM{y!5Br;6lC=gz3yu3| zUQG%pIi60gwxZ+XD-&qxU4(h5RlfHyafUT?H%> zf}d^*#>$b(C4UXNf6-0dPL-IN$4z3|BnQyqPZ!U-YLzkK&`rbX?%^nY=a`jK5bRp_ID5x#&h2=-AS=Aa*(QQj{M9v z_N#BQO)uI#Wc>%0#t-y^`=*=m8(ZqkT3)8)H}1aCLxcKrG|<*yD;V7)&iJ<>G8*xx z+Sv^qV`SVTQ7Al&HN;M9$L|acW!M^KPN&V>)z6(n6Fm9Zn%v?fq_H14Ge6Li==bU4 zs`K2v|Ns2-=v_h|3hf)y5ySC5$=*&2l;+1l8Z!lhM3#d^WkON+o(QdWqv0i1zF@tk zq3b^$L}ht+0y@^&XGmi7_$KM0etr)u%3+7p(fGbs#*WJ@<`NxNET%*_ubYSg;~@+v z190PfLpw~L3?XBu;wtd|v!n6^M&Ntzw6Iw!rD3?xJr#wT0UO+V7ertQzVnfn-l-;u zZPSb76p`^!)B+rbnx&W|VHo$f7=*RSLA0q`CfamMBzRO_7A2G@okLs|bcp*=w%m~8 zdD#fxQK?M(^H=E}MI=1FoTXN^wQ7{_aLg>OQtoV^o{eH;{YKZ+aaUtT9VAT*y2tVm zt~Q6_7P>=)nUK>2&wtu-)S7ig)dKD|&zT_>bz%MQ1xXZeIC#zyyoV~CUgxB` zC`uZ#rctivu4G+dFW-U+*-F5Fwbq;&ckU4UWP9qDbJSAuMf&mv#<}|{ATpDh$SQTo zulOcqiKFh|LWZASG{o3VaW%!GCbOHvC+u~O8sU-MV!eH?Fe)%|SdGGLjc?}y3+M7! zUU$Wu$z=#@-vtiZZ9XmK2ZG}$CdSG)Zx;Yr^SOZ=4%+%&>0X8QU2J5st@cDs7^Aqh zM=R9OcR|!+AAkxGk+$Ba^N!#tV-)%PDTHWN?Fz(we~v>XswWjgX^pt&2~8>lv;7Xhj~;qG$8v!RUCmFNDjj~tK^{+o?k1Z0B#2d z2h=!SfHIwIg9+w(({LV&Z!T!&FCgQIMDxMOiA-dkSW_>hryLcRB$Jrf(xRo1*C|BT zR%FvPlTyWsK76df&0pB6fjD{nBtfO zmg0TX1sEF*!+oFI05$NGmuM6?KQv7`lZK}`j*QJ#6kD$zna{tB8f0yf1D>pxM_w?K z2jMHf3)ALbrIKORZ*rOP6<+d0w3yx6xBU%ga*8_3{kUh}OHo*n8-!s}G?fg@ft3pY zfJ${+6NOaAGsUWfv(iH4hBw=qIAT916olld1m;ogPseOMxAGHB#`8X1`goC&i}^Hr z=Q*E$2qe03JN5(T#!@0%C0Fm52xL1(_^>ZPR98*Sq%9zn;lh4EhK6SQ``*<$zP|LS zy9<_dh5#zY9m_WU|50N2DMv`mb66yVcrgRyjM|^l;7)y#EFL+qYrQ$0o8xwIakRt5 zj>E?y`Psmd`y=*o!Y+m;2n=uL5By;Sl1z&K3|L`BAR^jZf zSe>NAbuflmlN+z{WYiuu#FRPoPY}>ECBPpcM(8e%ggxwdDER)!dG7bF7c6&bf z;wrGVL8|0dG>qYdLS>kga3%NDKWv|)T5avkRTMqUcIZ{_#s)aE0#q_A)|}M7lt!FM z#cP!`?|XaWQOYmL4=Rx*@ay>G_Bbp30u-@dCMi+%LQ+j(b!6 zMSOZ?1N(`h-1|zK1woPEV$tCjk?R}&_I>u)6EaAs?~SI!sC+7~yzl9HbCS{@FGxEA z(Eo$(@=CkWsW|xUa$`~n;l>|trsO2Y zD;0j@@b~Ry-Kn;%7g@#V^m0jApsZ9v_j$P^KtaMEu~`(JNp!IcUhOqibd%XS!rH}7 zpZLr_LgyNO<6lyVCwl&V&}0#4R&Ht2IA{_eb`^|6e!LO7+z3n1CG$brw%ybzy#L~} zD0b1Wcsxj$lo@eB@r8i!asGt>_49)!PImVvqU74L-3ZK$9tRY<4{l`omS5qY*Ow=g zd0#F+Pi_xcD>FZ- z{un_tgOIU#QiyU=md}leim+Jg+eK+q3=GP707o0VJceFj7Q$r!<0xOvx68i(OF*>0 zN=i_iVy@15!XZbl-Z`4><=E$wC3^gi6(}}=)IO*bu67I-t~_$TDEjK>rF;}`Rle{p z-_POcB&JixDatpWkSqqA{pC7m9*KQ|^08&QpgX-nNy*5zR^LS6dCxf}1*p;fS9Lyy zMUkm-qXd_|7}4Z&uaxu6NoO}W%a5CyJdEiEe{{$ z+||^EJhkb?u6;jUVqYfmn4SgCatY;us$*(c@3+0t$XjV$lQmY_RW30oeh|e*w19mg zoQ(tDOZ_-&2FEys0Y#Am6y;cTm3Y0V=#4nD17MGvhP4q{DDez1@eT9#wb=E3m-S_D zHJ$nS(PnN8@3lmXyT9_0g@Pl@Tn`SMUw)Epvgo*;4A`z#bQB`m_&`f@*j9Uia>C!F)ZC&nv20XRr5~j3ryNgA= z{?Bmctqdpq-%;ND!Dq`Y=h&hVj>~%d^dl5(A$pEIj_u|8O_nTl8npy+d$uDH-`(J4 zpfwaZ`5nVsR_vg6C${jGImZa?@q1gpj@uu4(Gjzefx^d7h1r-hV*+1cyzV??@dL2! z*l%1h%=vX`lGIE_WMt8&RdA%3kPil;eV0C+N-TF%X-6 zHMqY+_=bz6Yf<)qX!@o$aKOcqT~-$<=q^k)YJo1&J$LiOlOA7rkbRFQ7%J(zDyccH zR4keMo3gds!4w>^)3Td5YGvLN~?wb|{dr(nm-_5?Q*xQ1A_hyIBd+eUJ zU%mAjK3tzXY^dAFPx(^${kxqMi@Qzthg~*|phd41^#zF73!hIy+b-}(ns0CSRu82t ztW(kmXEo{kDl|X+_DXE++1;+$`G8}Jvu3U>9`zkpJ#l;2RtAiqUZf4y*|5BQOePuU z!JbcR7Tx*yB?+bw*)LH8M)1u+Mb&X`_oYXlYfJ)`k9};K4>I|ZOw?l)Et&U3y!c(k z_$o-mqX}DZPv**e5VAM-x@kKccHBJ1$$2K}X?ykO#&0QnTm8`TK!|L}EjSWiGaAl$ z{=L=uzr9T5;v-KIcH?Hjx1_l1HOF>Ir>~5H9DU~eNlVXG9nXbF0*+RiJ$>l9Exo z#|VgX4XBzJto?>hu34%Fx#@YhS1`j_@wM{$`t%ofDB$|S-5alyyyEt%rT6&!3`|Pz zs(+a2!Aw@bTwqoC9BPM@?xsmrKUG{1Wv&LLC3)+~T^6jo;wK(?T8~lwvGV0~gZMT? zOAPwWaJtc`vGYRfW`QiMWJ&MW-0!u37}(l`^lXI=VBo6< zarXzkPIuTM8*H`YWny)W{DvLg+I1Q&6x4+NoM&i2TScqQXZP;3Z2AlG! zwoltfLV&Amg)3wMf+0=o%d-q<6lC1U5?!jjoeG}y&i!1p!WF>+41JJIaza38-@evu z?OP^#S?FBbVgVeIg%Jf9sfXPRR+qAo&6c%B!mRaF&hEcQ+)g z`||Qm|BP=NGB0AxJ>ktzciny2>Io%_?087h!Kv{IXCr2}qg|e9Taq2hYnr`@Ugw(+ zuSui9=?i>M%Q5lZYEDNVHBx-KjpfM7dn+6rv!&ZZ2~I@1Z~x2<{U#Ue_NHsX15U=JkZ2_>T|L_l5N*F(ncZd_|wUT zAj3uAHKKn%jc})Bk^sAZYiU2s&5QK!E~&n>FMaluOG}%A7neIdo#iZt8unU^`BaEZhw z6%nWOxYlN51YXXuEP6udH0LUEjN&B*RehHu(D0q*0(Qu@M;b*M72e!y?)Goe_@;bv zfqauGII2Xdyp|awy;fm$kVqrSgRaca;^G<1?zcP#zDN1Zmy@)Imrd2MD#LlRHu$$f zLpOENBISphd=t?1MUR?!Ik~1yX?02f*VI~6n&;wRsYSpVC>+ZFhbbP z*%D|;Tyl&gLuB$<1$Vl1gRqhXB1#P9QQvDT6=*rUNgF=T(cVgTroiF;(sp$y1S{ZhE)HB5yjo zs&GZjem5VVcX4hQVsSS|sT-EZhh(~GAQ7>cyCP!~77QJ6Y!BbcCA~J6AZ>`G6qywz zJ00Qz_n{N(z2-6-`hE6l$jhcH7>Cnz;6=mQ57{+XqG4SOfiiG()Xiz}Q)5d$uRU5& z5-^vUL6uqH#mLHoq5T@sQ^waxV}T-|*P0nfs1rptY>{{m8ohd^ccJSI9#vHsy@?&X z)9PDdLd#PV7-g9;-zuu3sDM)xa(K+`#1=7VDkjwHoD0#IdRWlM z_cAV^OMsb&98=jmRYa48U0m`WoT!|NHJ-kGV^^#Z2}IIhu)J;i(KHujOY|9ES{ zIW_bv0!7tLtQMav80c0TY#h6imHPoZlIHPsFzERSM%EWS_2X#k)#5cjffmQWYC$?& z!Nw7F5bOdh_0mkNJQ~H|1&!AvPbzc|s;O?3GCWVLucjWlK_V08w0xVdm#V%_ZHzl^ z7B?cUHuQ7Axs?=U9!96hGP2tUF!9Drx@7-Vg2qc3B34AgE7EF&EvMh|v`3%APY zr?OiO4@31>2SxSsL1pr*Y~0r=UJJvA)l@g{GX<6$7G7Rn&oJM59ifxnwv07W)Eb?; znh$L77SXkxEqY?2pY4K{SS#8nGq~ymo}BpmKN7gy%-t1{oFw`g-UHO4;chFv7>EUo zqT-ga4l8fcBsKm;(ZARsodUwGMWnVhJWpoZ+Rigj8zu~tirDD`j1)k;dKBrWJ#)J3 zqBDwLoo;%mezO?KTYr2%W=$|26i@n;bTAK1vfTqo%)f!L!kdEX(PdzSD z&Rr`m%&0P?z{Y8RK4gv^EcL}rL0&Qh<4c$h_p&?tTcPled`xL*8=T-IW!;{{hlK(< zj^$6K&a9q;3N$PmcA z<+SYG6rJKX@;&dO`fOpbCGMRuykU1mUb{ub7nU-n%z)Gy$J>{ zSHE4eAL(Ozpx|io7fbDC>0NSut^>|4!9tl};Gt@pr(VJ^%22X6FgIcfuC+#5t$wT# zt#5fM0W+=_GB>elt#JTHXrdtVoL4`c<606^{EKPetvWfh4(?4hLtR=@ z>8S6=Ih#}#&y{-#O7RAAN?=vL9U5!`psVpThOIB$j^1?rq$afx?XQ7+yGS}9A#(M^ zAD}}zJe>?dOlH%a7R|5B>JNlz%nYM^!PxnB%v{FkuBt-_o!1k^NY6`q*t3P!T5zp0 zhz9Zd1N98Zslcd6&JaOMeo0KP#{L?)3oj)Dq&Nw>|By+czO2 z17oW@lfpDMHI`9`yp9j;&5o8Qy*SKh+ma*~PoDtxEEc|2m7GC;&achZXDx0kMnVPIR z!+b3-eObg>9sq6(&S>2eY*J&UujGG`22M`-bCDLtFxB$=N`A)BkV*42$qHeQ*Sm*9 z^Y~yGEjy_%S>iq={e@i`?_pAcewH6ei9@TgudJPS9BrAbXh3r4*RMy&vZ@A`UprNt zk0R#yFPBFm`7Y&mUG(Yw8|ny+GYbR_Gdmh_HHdVdlG>=@yF#2#E{O~c0aAadbD{x0 zFcnYPwe%{yU6wOD?zAzLCRZuE8RA(s_*u6vr74PgN|EMR^C)2Ey*y1gzNTFH#td|K zQz+bYE`t|p!`{1xhRzP6+%q2}gTnUELkdZvZ(A{!FWYSOYi`C)L>0qQ2!Su*T+*W? zpZ}QY?^Pl(w9DDvJ5wE(CPyo@l!x5rmxvJMNQmiaLNyk6)OylH77ccn1~cwz9d3*Q z=3+aUj|*;u+A5vLzAviM(zWYFD-VD_ERS(`j$f;}s#CpEH(R~Bf=%xvAf?bxS}>Q1 z&}S0b&Y_ZSDzmfELqj>1)LHtLtitol5b}wjQw@HD00>#NGetXU8mKv#mq4uQi%)m7 zG)oGubHBzim*|zx6%C&voQw#NTGKVRsc1Ou4k3dU?uFaD-58Br7kp)tyEUcrcIE}$ zc7I-7&G6coqWRC@EYycG@GP7S(>AuQ{w8lPf41Eb|9msG=)%(?h?G7P2 zB7y8l#(3h%9DgnwJiN)WkQC%!A;Zr$#*SvdN%j;NT=>pv_GJR(B>CvIn<7X8Z~e{T zL{y|cCrpDS<<((rb@Zy~SA|j!ENXmAzfU0BTbIaNRy~F_dVNwWY~%; z6YbZ}@m|2_y#uyf^uvL{YnaMc^eWQPW>uYn$bJ!Rg^`Q$)`Ii)$E1F{hT1D0%X^q_ z2S>lxJ(>&1QaIbvDfIl~H3VrCRVvJm{KSln?dI<@wZr;R@}SesM%=ncAwjcZa+bSM ztoCDOWQL9`WrnxEi34XuV24s>c2&CIX>ARx;%6@*Wm8iYy)=?0r{0)f`l+gO*<9Nv zTXkb42ka(o($cDEw>Nwux(>}VKhhx|JxpB^X@yRp#ch2bKTzXr8g<*mHr}Whg4mkR zf!#mHwD0_pvFQ47^B&nyntpgFLD0%Pt_@{UnvUjGw^yuDx(Tkx!lH!a8m?8Dcj&w* zyFjhn6_aN06?4d`px8M!zH*73Gk=q}k%OhS5uD6Z_D|cFpq7u4l4bVR{PbPzYm>sN zKwd4+w>04yz%Bt&jJJjBA0a6?kc_a}mbV*Z`W(FNUn@n?2%7 zK_A@j^R4NWt>v6Dg>NX|&1~uKv>c#@k>)@l(xU%~xVBoY9+3ts)Oz2eS;Ly&u#jwI z-$X_#MUk_NXA%Paq~FKp3?Wk`PCOr^Q=%F*-pX(yjTh2W7$z;BL+$rJ9cBD~RVB$D z^H_pc52gAK^n*8ng_YtY`1tvO7xA(tW?Qdt*1c@Yv3DJ6UZwLC4R>JwKT4%Y#n-SK zT)@5dwKdEv@H`Do@C5i|>Xef@#?k-c(K7da@|`CT2H*j{SqQH&u8RKAn%uHOTN&W^ zcfKCOCVh4A+dq{}HA=ctC^~@&z=11! zKP_XAKk#ir=Cz6Tu$Pxq5K8rLVdV?=Q#?dkkm84%zzgz^B^zhQs4 z)*;I&v*B~^&;|&A|5P1qLTa+UCfl41?&QKz!KIY8T-)|PB}OV8-_xk!V%Y2i5ql~j z&rtBIL=?xEa6el$R4`|>Rw2n{%5EC|QWIw>*{V8tv|~Hq;nVotI3<`(am8GPthw#^ z*+&278_LXDBWo6mh6TE^tU|Z(7LT-02C}{|dKXbP(HKpIehM>$d}$1mW@ww}Yv^e+ zw^>8nzFm*^rAazZVCN$tK63`lLDw12oWzVJ35nS`$E=o+&?5H;Cb8I#BA zj>oq)R<|Ch!Y56=rZe+&D(VJwcY!^X{6%G&_spAq7Hm93gWCwr1!AtCzfNBF=aW|h!hSMjE%VqnquCTM%| z<9KQJ>Trz@hep}7j*^g6na)nWs1j55jc5L%PGrr9z~5cRxI9;(dDM%1Y;Bu3^n=Z^ z^#`>!T7Hwdcm#(3MF~QFEURU|CnEn0-`nJ71HRTlj?C(~9!>RyoawoBUL0z8hCZ|8NX{JL@?|PrZ`%t~%IBExUx^z_;b|hbhxb z9a~iZvChL(>wGKn)>lFP8oxDlHyEdMm%k_Iziy=s{;Z=A+lqpRN@J#vmRyj1fCFw`Ob7|amvBX%&;NP)5>f)!js>a zo0yAVz~{Gl_~IhO<-EhHc%cAD@>8huGCO+II=rlXucEtcg>d22jq42yNM^io4GuqT zuijEJ4O9PBJ^^j@qYnpN;Wx@ln%rfEtRuLE0YxVH&UI&XJE%A|u6V*GVwGI%EW!@oi(|$e#PKU%Pt`lGF!|Gl#yOtx^|af&kcs}^02?{z~+z101L7$|0B6! zUp`!q1#s_2Hs~VuPJeC6rCv%m9IrE$VQ?i?B~^8QnC}#L3BcKsxz=s{-hNu)B-D}> zQhPkPtJURh@6&$r2;v+TN_M1m`;m!WO#0Mn$-2!_+teax-uoh5gW)XUmycsv3m@_? z!AP+nYAX2C4a$$^Alr4Ixi6PqGoS8MF&}tiy(m6@mJmx;tX++r5IOiKc~==wShI)h z`4A}0_2(MV+P3w+dGg(S{8v}f22h*%xTA{V@6vIxO|AxfE3Rx#q03or_Z3uHAT-or zyz3TYDkujJP%~=K@)yhfGJ~GXpQNl7k>OAnDTKgoakloq*tz8^mhZsc{PdV4g7!`~ zQp@DYqh$xh*RCYq2=g1*iRcl#d8UTG7Fw80>+&PP2}DfXrj*|#j^#hAg*CBWC|)21 zR!z3MK-->+-ZllL7iX64n+2H1_1b3F7w#g91WpG*cS4bMnYE5tDu!;@xAk4~?kLEd zdAIx+mX#qrayZjMlhHN?dAfLxwKJQiUpCr3FvsL29T+NDAVCrM=aT~Vhre3G4YWgK zKgRui4s3D6aAgLg%5&RPhfdIRHDz1WS!uTG*`2uJF1sYq{;jFvCmNyn0{O1CzEmlW zHaj7pD~iFIB&hNihZ9#%RnL31djW_+m3hO{jyX-Jvy{3R+t^e> zC-GbqU=z(KT_mh`KS1Flqrkp@AxyfHv^v;`01NfbL#PGPzuk2}I3UH+l>{YGQ5CjW zp%&180Nc;Y|5Q|RoW;=)R=ab<%ug~)w`db$bS9xSYwO*EfHh%Dy{6jOwtin98U3cqvU;UIR}-aEPL@uZQB)I zveQKa&QJZASH30DBmNJ9O>ebI;1M>BYS2wNrQkak_YbFum^9nd>>|ID z{p_rVJ(##=2g{d@{w}xTl1_KLB>nms{-KyFGFZx27%7*k-uF)@OQsZr15ZPTDb@7@u_OBAItC z_GDI@4!&5=Cc%P?O;pOdog%%I?Ju|!%)KNga%q7CD3XSD>7)}c*p9mEbHE&OSB)TeO z%v+)W<5-E_Idd2p0*0s6j%z>F4QD-d08*G-u-tX)`FdrIay^SSn$O-(WVs}{GB8uK zQ|GWY+8c(r%q9~KOxrD@10A`mgYPm&TN7;+*GIbzrx|EUOc~ednVT*#T^^Rh4IFY? zQ$+W(80QoU;mg4W2&+=sxrtdvwQLXWPyTQ#h%8sL>q$~I?aO+oqGLd<*tTD?C-Hq% zn@7i1dYCnazKhim^S4pQqq}moyF#|V2X0Osyr(N#j=^|TtVU%P`Yvw*S(K4DnF-m(SG<-&$lQWl_+_t}ty0l>`bO5>_r9^J4G6qsD6h z&7~r6+*r^vr06QC_2Xbzm*%ZvhWD1U$fDzBv5L}n=%|MfS;1Qbhashk)~8Ql7}H4{ z#%uAK24miYZ{@zZgC^cP#(b(Qe>a)3_t+s_~CTf8OM zhJ<-O=qek3e=bMfT;vd>pj0_$So%emaJI1e<=4AK_)k^DT^>$>2Wc5jTdh)S3VD9) z=(88&8=p_b0)a}jde-ReM?~OSMn%2%`O9~ki|FqM$41=Q1gZ3;Tc?%Si_cc2^4sV@*7g2R#^YNelwVMC6bym zbNZqgH`)E)B&n4*VdwJN9osAj_*qDU9n)~TR9)6aVeuDEz6aXD@UsTyi@x}wu$2Bf zL*d{ylg>b?`ev%aC%<-yPBuYCS=mhi-eWg-Su>$9@hzIyigaXBnL3gE!yAm84;2(n z7iCqQO^cUosPK@g_iwqaqM>WL{<|@Ol|Jj;XilI^$%p-X*b5y-iXWq*uE$u?0?&sm zW`Y`~8cXDfbWr%*nfVb=5)Vc1&%W}#N>|^sV%=iw#?0>S5a9Z&jc~Aw}(!YA^q_8pC z`tB)_?aLTG3Bh#pn_NoRGDCmgFD{^KC+4)S?kV8C(Sj$U1v98XV5u&mD5OXjG& z_IDo!C=q^qBAtPU+z%1kY_vxMffk>gLFzYiBAh6;3dL~FutS?`4b|06ZN2B>7*&r4 z!H_cDT@jj!He@4YKzY5#v@;XOSIVouJu~?S)jMm$-8rK+g5uu>6*U2~EU&NtGAAgc zpwN-b?RN2A@Oi57#*CLuj~GRRn_FUP&Rq10PLemWqloF#-Ts0+`AZF2bf7R8?D7@p z;Hy72sDWJQV(lkhi9Gpq$g-4@l<3As9CFu(Io5xI&$0_5$as9ro_IQnPL9~O_RZ}U zlxp#v06H@9b)I>DraWRw96&0S-MquTn*TFqr+}J>;3L~MV`qvI=2#`?Yaicl@RdfR zf!OW+v}(GpV4MjZ!?hm_1qm^;Tsnz-2K%L_O0Vm`T%GPV@;)zjowpAOwl-Pi()-0| z+k6m=^imQPe)nFB5BhEBG2g)aIoJ<`C=HyD-my6M7+ z^EVaB_wn`8vAruMSiWSCmS%TYlhNlR#yDGW&4gSI9k!$4ZTdV`%*nzon&Ji3OfEC) z6kYrUhwe-6l7XfVhDfk7B>2!lxd&XGM|N@e;!(O2PjrP1ZA#F2N1&6L9n52p`Tmyu zvK!yVukhR>f*c6WD^jn`WvcdEg&h$l-5A$=R8vCr4etGQop#_6$FuMB&akL9cC z6zpBa7^vPCpnKckC)x$8rJ|}>fj*AVZ@Bnv2 z;)b3NXmRe^x#ZRdapldTRxS#$zxs!deV+XZH~>wESH>Ix0^|t3xC>H!%A?@R9u)Yf zxav`$?(fa$Kr&t9=@3AL8=j^A*rJVfS@1Lwe`14rq@N%SwHuYs`IiMs9?Q6L+7&L> z1!t)E!>C=Rie?p%?+x4#PBwJDERQbOsFh5#7%NwXY}m+{aL!|EJ^uh*2RsC1xEJ_P zw_6|exH9htb?kH@0#rhZ1)#i+sY0=@;2ZM<*bJheui2+T7}#p#T)C+)+;nZQCrG4_ zv)UkOOp=FA@nng7;ou|+qLO!Gl_2@=9-M+(efk#Z)nyf)*5+=+&$jyv>!YHGX1*ur zXBh(uVXx-X^K-?Y=zAS>0m&3Z=1hyB67L#BL(L)$}(bnWfa zr+{|3*AXQNgPjAgMjV3}&2X;^vhn|%ZNwPrjkKWRXnOIX;g9W9&30Gyi~q{`gqKyV z($@p3AJ=*32LzG`9v9ZSHADEuohn!`_xd(4K^i^3FqsF&Mt_I31o^@t!`*YpoyUvDPz8OFLJXx?E^yu&IhA#%39 z0rz#$-N9U53|VpP4Wc(krPMEorW?dRxM}E7`e@7(ZC!}Gxs%>J8-bg`D4vbI!N4N` zlwr_o8u$eN+o&zEX;ef(n&VW9+mEAzN) zJ3gwXQ0O*Z%n!v~;-ioL&OZc>ojmdIV})KD@u9c{VgkOv(iHSxDZPJJj-M+|6|I0GL$^{X{3idhaWu68R5B;n&Hl(kdclSfClHab zTz6LAtSqQ+FT7vJi|=gy1P1bPF0R$wD!12}2 z!4}5%O=Qr7sLG?-(t?55+pm1E{eijv9)MH1L^;QDPr&haQBo0SAxb+DW}|`U|H$Zq zzfQ{&cAcB@9CZqVQ>=tn{>Pc$kzVx`45NaV&NNBDRKViDvV2vuW&Vq+!J1opaHP%s zQ9pSq^Zy9!5X7wx)SGklEUiJH0J}i0veT|$`f1P`tt$C#UZn0e#EZH1*ZM4` zkBrv6S<-8zV3XWwtR1Az2U8(BtvZQ37T;YboaHe>9pMV%JA0Gi_eSilIboM z^+;!7=BPj_TU^UMOJ#&5rKroh=R;>#gJ8X8f@Z~!6AcE$A@Q8&|0(agqng~8cDEv+ zLO>8ysshrH-m5|crAd)4y%PvXudDA2fD6)?uUf&+l|cvtGDR)yz;kY_MO*Y zyeaBZ%SmIM(@ENT5V!W$W4$>s{mAIz%e@7AWse#gMgF;=-6aO1I3LJb%Uycih>c5e zIq-cg_dVCp`X}diMx?gmfi6iT4QJK@;i#RXrj=pbg*pSqhE4s0@vogFjio9wIyfS_ znkr~ZIh>)kR-Wb3c}9vw_K$+W(FUx~VFDng&ObmM+;EyP)#YbY@_DgS|9 zEnV!ydAizSXw>%&*b-zYnI~fuQ>A)QYc!_(Ua!6@=lB5e4O;bX(KW6FE`7L^N}v%Z zUr_XEyr3@I!zYGk>Gnge2i~T{^o}q~w_4ld>Uurq^pM@i<-t91I(wHM6-N z>KR2P(kJ`nm79G^#O>+D$+j1l9^9Xj1LU-jLm16j1+>3a1L_LhC|$EdS6FG>IhX1XEj}AxZOHlZHrrq9e+KlAo`3+ z`X}g(x$HdCFVCz>(>)+ug4Dn0aq>Na43%1N>t~ycaf@)yhL7_$k^*#nBSof;;DpX$^^F>9)ypj2`mVgX12O0f~ufXym#vsXsR_+$wvkDAY0(n3K@mc>VH_}Abb6Nb>Tppny$ZN|!7XRhE z`~6KU21}fQ&yb-uB8X8X1=vfCNR{_|TbZP)o9)UgxhsjECDE6>N8&Sg*3iu!w#YHy zV}*#w(?GAYOvQu!$|~Y3pFe1M(^(n{c1&NTQNN~MrVX$?qAEonr-RB!`*o;ChcqWO zDO9f6Bmsq)H}UH4&b_|k>UL+{Uhe~h{#(VtL>wodrx}0VL3b(dKJ0qu>B+1$s`qC% z_jrU&-&48qwacT4TqmcTgCmo6#z+(7HG;?;C)p3B^|q%U0&-7HhS?5Pj2;LOBH}HM z_rj)OZQErsY)voWC!n_>Z7{m&WE@m&sK4gK&WY#-NIY7`ht$Q$%6q5H?$OdNYh_dO zqIJ_pIimGZ{JF2l_1Nh0-Aci4nsbP!xeMWRA|zcmjBcwo5MrD_iXs_JcpS)jOcODN zt07StlQ_lKx`jecleo+m zbM9{*tIM_T^;W;5OYuGIV^Gu7Ol>QO)zVz9v*I60Ms1R)wgrYpeoh*1-uVI$nnM{e zr44^7o9-aiFjlJ46sWIzg!Rqz66;Q(O+#M~`RRid(@p=UrY?r6_v)Uwbo9<8c5=qT zrk`o;`TWQabUdEFzQV(i6+uatBq%3z_fKV+OPSu_A>-84r)%M~MO-C@BWs7_(^OIw zOnDK!DIA3h4}{ZKNR7tZtc)EttGVjcdqj^E?Y>Fwi%CUO_&zf@Os5czG>ukJr|C>G zL8{S+a|d$^AnG_LEs2kl(syQSqRcXQvE+9*ChDnfD@#^Kf&U&!cTzpf??LyJ@+)t z?;*n1VMAy41J0G9Y?`ExvMQ#lN=^z?SFPlxcQZe&n|+e$!^N3(A?vx}^}_bkQTM$& z#h{X&RuiB!weKr5&6F>>6GA9qQBYg%vg7JOiIfAIQNX0+mAgSgNa^$$rNjDuly;+t zlE29lf>GxfhFSQV_>7ft7JR0Bw)_}qZS_Qcq8n=MM5gD*@&(X$H=*u$b0=7Pb#He` zR9RPSOKe2q;)eOR@c?6fmBZs5uDp?PZkv`rIn|bQcjlb9I)|?trW{`B^7VAA;_x^v z6~ryR9E1-OnrEQrRqhniV7lgQSl<8Q;MKR@3}HNdpf9hpq^lLcsOSeSvOLSlWf9qV zMpZ@3yr@{pRG>=cG5tOW^vgs>QG)ntwIfGq{B0^;zkglE2%nvvfW{={*GfOzTTdSk zu3YR>pMM(`-!3)dok|zNwI8Kt){@gZpRIb8@<7xy6c5q^9*Qv@lbN^F_kEWxop!nb z6EIx1TauxeIe*qCSWNR}vO-qe9ezXa5EY}d8MuQ_86)tZN>A$Dh!HXmWoQozo<1tB zWhU%R(>UIe4P(dKhM|)Qu-1xWXcmWtCP7 zOH?c0m?51keK@dH9n4(o5UQdPdZE)z!87V4hUatjt^s|Ty`I{Ry^addFVzToFetIC zHrEY1Z&+7$PnyAaFbse2QQG-nv0U>LN7hTRLS1H`SnsH}&Lwj&FE;PZP|Ml$Ncha^ z4VkN!!K>F>!(0+M#bpE|>PLL*lvmHn;64l9&7T?G6>*4nU;pg0b~2+V^3=A1?k)s* ze%5jjSkl`y>%A-`z4~`1lz<%?lE~M1d63FepL3>H?EZn-_E5nTiYvNQlM(ca?oPfg zBM?w*;bLgAim6xv*1a4DaoXC2%S0O3a%D05Z6W;{$=OQ+bfWabUTVrmX?&~W$5tH?rFqoU4@4JFYeh*4~s09XoJ_7 z=<%v#NIb(VVefZ%s;SP+8S@8?r!RkGc$c|FY_Ge-v3nVqt!2ayA@n&K22e2ueF_6b zSEUFc*;P;4hLpL!-=XlA8}|wgA(|qno{2r)DRnfD>e!{-bI3j5$#(M9XLeL^Y>I7& z4b_Ed_NkAiek0XqPGk*cy-uR)WjkH3fe!!U^fe`oo>H|ndbsbZtjt*#wHeaS`^kIR zAI*-l;2@v#syf$9MHSd|;i|3Wzf#e7Un|6eC6Ly|hlOO8(oPZ;7Tce0r zZCH4Z*u(Pjp)%iqd>M0$-U*q6;ai8jEF<&6xRVNWgfwesyZc4*Qd^l7`?SltXc zyz?-i9#9mvI*VtLmN^RV9tnG08Iw)Gy6LUk^RWhv-Xnv*9CUz(WRS zG8=MD6vxQc`KS?8#9?`}SxLOrtZoGpAhA^XW-laFRKqkoQ|&qV#<4}{%4}6dT`wCN zn|TT3VHu>9J%5gj1Bz9<GA*|N4-bPy2v&m_(WHK)%c~q(VO^SfU)vn`5SL}QJs+7QF3VS|VA$e=U z-(~fyL%#}GnyU4?gA@XoTG?E_Q1JJJIzhNCc@icXzwU&Vdu?s;93J?}`IDC5=@%jB za!v7i%Me?<38C5PVS2(ijilwT&-MEAJkjN-(wU_ehIzDxPb~f5y=(WiW7)=@rfUN7 z5>MzkuW9@H5u&$}1iNdWt`tKxF`3WS@D*<0I4>sbP!Db(AkY?R8c7hh{{wUcY)AW$ zkipmZPm*m@yq{Uei9gDVWxP5W3q0aVPj)9iS?h1!{+dvzTP%nU4sWmTuw9B@yS!G= z$S;xgU_jKe+%CJ<=x$qQ>mLkDZG=`dk+N3at%_h}r!6~FKmebS(FQgg+zc9%s-ev% z+usy;$D?=A0@U!G?$0r4ZpcLo;(IKxABel}i67C0#D7Y642HO|mLVgFq$wiuo{NnN z1@N91uAP`A{X_y)T>jVYN#+j0|?QR*FR0+N{DP;CuyN+5|K~nws}K7Aa-00=)&;@ zKMrgxuX7rxdZ6rCM&76+iuxL@$>QYte#x4}Uf(Wo(_$*9WD=_RW7p=QISwLY1;Vzi zHkU)ZbEz|aJq0sb37Z}XB z@Xf*XFqaPcF15xu@JGGwWM2V0Z!AwSAYG9J5LhihPp<~>+H|-W_P{=_c2^PihVw;I zG^sGr%k$=e7R}Ihx8LD|C~s^(qrBX~H?ig%*0*`D?sLb6hQvg%H;L$2fF6>8<_A!k zw|d1`Vo6$G&%9wl<6!GDdtUT+yv4pHR4AYbja!=p=1aqxQf&hZE}2iZMt&!~4+eL1 z?C8IroE(xcxPlaQXzu}4fx358ndsA&3fReMND-{*Vng+o4~M^G_=m0LE~!c8({g4AowYfOR{6>bGM z&WR)4pTVb{QhNHD^Hjj#LZ`lFc}%uO!8+wh6uIXXV_VXlG3(XW+M%=5mhR8OEs+s2 zV-tH;Wi?FnFH+5tV-jYmnJ=1m5e8<^#UjRebf55{k8i^KpDFv5Y53(3FBSfl3_+pS zs~BNwu21ZqZT~WrA8^+2jj?F~-g1-F5lo`O)53XB1xgUG-BTrjHv4J$s$R4(A^FHP zUa+B9#O(Jgpn1fHdVwfM&+=!Q+38~c(VhPIe?cbb=|kL zf-d&yL?Y(uf+s#*R0vr3oa;9*+`y?KER>ge&d!J8qn&dWH=H<{h}xt#J$#v}p(`EE z<9=J_bx6DMMf0mK{fqH*W_7YBlpE2gj~kH3a)9EXh{#Eh7PRId^PY4?FqzO2y+FCQ zAM`6l@hgFaR);%JuBzY->a)k+=uz!cDYIz+fcVP*R2E_*z~GHw$u0u6_+`N=1;!VZ zf=H7Cjke28m6t%NwhO9xh{9?aP+YiaD=+#wNiWJc2IZb|e|+F|$WxAwiH%s)Ie6d< zRxC*#u_VY5NI;RbM>nwN#L-dgjeYk1Grcm~24IobnEJ@DBuOHdJwi_j?t;OyV;S6` zfxTbtwqC-O?*f$JOXgwZS`k-9hGGrkM$T6*kMX=6Ah?6}=3n?AI=_}N z+u8$};apt#-s!1KJ}fp^4lV2ULZ?eDXE8Q!XPhlSs1|9|T2AYIC?X2!qm%g5hDNtr zpv#NRl|1h#(Jrr=h*G#YhX%8QHXBoJ8m;CCTAoy&4(NSSno53#4hVL%HzG}blCm5} zW-XDQYN8!GJ%pAKt7Y7Pc4J^g5TC^cx09X8Qn3|O0o)W&L!oS^)WNKFvg|c}UJswB z@Q}rH5)uS_$CmbK>AR{lUC&*J&m6aS7~W99%oM*~(N@t8g>zcV9r#y~46XNEEH0^{ ztSETiD-|PSv>{=X+WvH|M8@WlwCiF#&F+T<(Ee(_W4{v221M1_+#xlj_vI`H^z;(2 zd<4?v3KhA=Il^jY0AHa7Mmxtm)pL-JgyQ-vx{0AXHsVgLg?Y7A$VA`#lMydRg7Mu1 z@`$)|Q$D6G8xG3ol`LmQ+-Jv}wM|c-_5-ObB(UgkOAx;|c0+tWncbItManSiuuqpN zqWSZ?LFExyBj&e~YWAiKDTPOCHjx2J){+g%gFg#fJhl6BYs_nL=cMlicfpu#k{1#4-X=SR@Y}1j-=k z9Cok0St%m}_%eM0q~Cg3xbvbH3j=-HTwrKqpUb7vQA8<%SdbL*TfW9r(!xpsL2=y6 zEfzvCL-wZG@@RjbN$h3%TgvIdYe2dJ434eg#+m(%8mg~~p@ybrj9np)W0c7jKeoB$K?0H}~Xl~GAQn?p+=)&#jd`pNsjX>I~oB0DuqMy(FJy9#v$Ps<_sJrfl zK#K}~S4KSV+#3PM<%y^M#W&^Wu3rE$Df@igCHe_oTdT|UFn|@e9#k7Qy!ke2hEZtJ z_f;K~Ks`Rkr~)|EBmP^(K@U`Nxl-?qYJ?ik!80bBz^w+(shlzmw-iw`W6P+DOtT$4hg`W_!MmFPCOmf`?**czbDX1 zboj>y)}A4FI((qB0v+L-@4VoeTlPw}x@e-f;j$MiWM|n@ZAeCp|+@d;* zDiyXV_!nlI;fV=Vor);)+ynQFN$w3wJC192yr~+AkAF&*aFLL>T)06)>aSv)OTbSk zo1d1W;?DaHUc%|wcAZ>7@zC9D@r371^A{ELv!F2twvW8QSp^*#C&4t~HQ5wBF@E+J z<)l6Pxb9LtbFC>_{YkX>d5qn0^2%H6uyH;5wOAi3`^sR`*+~-2)1Nc7=?`6Fv2p?pG&gojdaeiv3)jA z`dX_HJb+j`k47%?T861U%@nh&wT*niDO(k<_=2yHs5(}yCCNGav>6M18&{%6h)`W@ ze+&l>-+t-oCCdjbfcXl6Unxg_Ytq@vAj`hbiqU6(fZ-V{HSp_)z%#x?V4422uy`og!RcFADr16sjri{9CjlE9@$UwuN;1AU7+&h?1^S}WT7U0?TYruIFQdkP0ebPQ_if%Yw=aoHWZJev*{OFDgeeg} z>=0j}!w8AW7f7=FMnxIT0WB){2|eN!r-+GOc%=vdmF~ExUEfrAQ_4y3SiAH)AWpWe zUB#>~J5K~tcM4i@t-(mhngf}gE`)Y=sm0O)drUIL6#qZe3ftx*V!l=r_Kzx?`g3FC zSJ`3hT>~PNU1tSck$+vU>oLJ7z9#87-V(-l{x*6g2W2izyLe#>z3njU@M{?N)~;Z@8<*229C0C1a@vH?M)-5 z0v@0ucuqtZ@{&9`@XV@iwS2sUEvWy*$Q}h)jJ!oiY0f=WdM1dCf1L0^Mqu2iGt{yR z(I8MtUao-`%Q%89o%bQE@3rtwt-{9Suo}4u&xQ-J-}szPL}tYIhSBY7QyE0$f1zD~ zK!A?GKeii&S|E*(WLQaV$^`w(ue5)NPs>p5vyWh;Mx@6~S~N@{LIN4rTZM3s{+JX5 zR#waC7v!V4^cT1T4Cx;TSH=6Lle8gwb}#i^S{yy6ttei5rPY@EkkaoouZ> zuR>k+zI>1wD0Wp7uc86UUOn>n1~21T_~o-V7c44`)%Ze^+Io`rN6Y7?PLo(6C$+kU zQGcr|3!n5U5igZJ1v1>6Rm*CJ8e2%5xFVZ18xis1{3ip);$HTLw{OGMF&5`Vew&*( zbB3QIMKa&xq5;tfFTLGuiAU`dy>)bM631c`A}5al2<>}fmlw2=UYtDiXY$74;!bUU zz*AF!RG*?6n>aGht@$bg7ywsSL5*tGnB#H*-B)=wkTTy|rDR|Cs>#z$8OpAgdI`*c z@=;Ia7xDe|(y^+1iJ$dbxDDnqO@Jan;n7Wnj7O(+pz?eMr8llgoa-GmW>Cu>#9KE_c+G`XbR+P4HPoqP>|BKt+%0|WXGvGY<&UrXknj+c~(-Q zlkgQizN3;?<`bESqHka0c9U^{TI%(Wi0|zap9F^crKDuJ=pQ5|I^{e9tkOo{z3dbY zmAsXaZOOE#C!Skmm8Vr+<{R+)Rm6zWewV*guitndJn-0$zP^({dpc9@Y{=hbq?2h| z_}NN0>mb$u3??%~J01Ds{y@GbJ4q1pO)jo@K;B1JMzZ?!g54iM(8vCfVrny609b@j zH>v4pjuqq!U?iE3>%ZC36xzi3uqZCB^RLt!Zr8yXLebu#($cl3kA#sY zvnAEJDS~k*abt;$LDOJtiypmnL^Pd#!M#rwA8$QA+bq9a&==w@*3VED+2H1>esIH2 z>1w&geU;2@Y4*x$uKMCsoF8**N8n)fCVvl{iKQEnU)^Wq?7fX{T2mlDH)Af(*Iir$ zD{`Gw;V0cysv55?#p`k#&VyngJJ@uYqP(!BF_T1JiCek3U7rcTU-vSsFg)4ceNwrI zoEcvuosw;HpgvvOqa9>gR}zTADArSI5IUr9VyB3O=GG2?giBS|#iPv^QANeL9 zSPvq*wUZu9^Pwp_bxbS;cWP?TH~-B?l4e0&0> zb?0|@Su#SKBqUuvI+9y1UHlk3YJi)`Ex@$+mgrxFLagXY;Y!UE*?$K@qVZfl{D^w2 zcxr5-TUilUf}uk1t!jc8rMEg0^Qk@1Z~rn$*);<5dl>i?#n9t$8y;bmwcS|!^`~Nq zrQp{$uBhQssz%aMtB+eogp%Z8P)#&uGf(D8FAL|wQAXd#3DJz} zlpY9!jX-gq-m9S5>XR)O$1~8jpF*`3$ zXNG&%Mej4;kK9WhaK24~KL@EP>b3%>?2!xO2uEpHIwKddzu^k<(edh29YMEHN&nWl zPg04SrXq($57Ci3)H>o>&ysSW=0pW~wQ5wj?iuZ{d>3EA%4EW11H&mrJ4&^mAAu z)v1MAq8(a^Xa9@1E^+;)D0-#R(l)H-=f|;oDVFV31T%mduRN<@{F7Te7Js7<(!QGk`h~c#6#g?oxTng(I zM@DjCDFJgoIM`Fd-~?8f`8V$ZCqCgn_ee2qAOzG*A*u0^6HC8|9T1Kt5S%qrE`<4A zJ<}(>Zv)*wKh?@-!3^n&z!v5*t2MC@ZaL+qlS{U&o@ravh8F)%A+HGR2o;}%>yJ4G z?VMrqWKMRmE!!U=$uZ&ym-uFbqusra$NhPWS+yaYTERdeg z)56CG+iUDHk3<@#ojwBD%JUaj2YaQ|%O{W+MMvzD5g+mG&(6z^m&7?3&yT^!o{Fn( zd>&+F#d#|6C%i&ZV1Ni_G|{{0SILN#Di!Bh@iQQ$R92TPxN}c`{KMZyeW(t!V{>d} z|4c87%OD^BZDdHP91S3HI~2XM?K0}3lk#M=zv6FWKZv)+j+xt;w=@BYW9+>)8teL% zzBpVqXFK!*NcIe?RYGrTn;Z07|Ak#;yU&xTm53PtMtQNGwl0q{D6=*30j9j&!j^y? z4`i;gcv1!IywOmzzv2nDrs81T**GSzBStma?2^6Kn}3f$%(C2~`#qSKcjL$Hs+2FF zm+7y`A8*icA7qqq$e?^=wP3H6_^%=Wu~t2R#TFHQhD5PI z8K!k1q7PLnu!8907`9`crL4FX-a(UU?too2@pxt<26m8%8x7*#{GbRe3TXrpI3f2)SvQhrr{PGECo4%mM*^lzJ&)WtR zMRxC|bCn{Ww@dCpbA?!dUf7Dxi0dW>`5c0aJ$4Nz-b?A z+M7USiaF|~5qxviVMiV9$|vOwD;x6BT!u2DzpHie{BN8#=K5n)ybKI#gZdV_* z>`pKJthSm+e0;!P zWdYtlME4I;Ss0T>WcgD9D`z4-YyvaNqv^F_<4uTIQ_yrI+t-QwBSaX#S2 zi^jHNax~aq!drhI^`SJJ2of4j9s_a?qVEptJiw!F)UN4yQ<(X4|I>Mk|Jg^vv!+e# zuL6#X)c1AnMEOHk;7%3D<~$!(yO!N&iaRadv0AAFToz*4cgg zY@h=?0KL?jPD9(Z2xVeJEef;1?e*`eF>j_@rm3X<R(por-%?D-95GZNc_S;9(f1l2PSKGLAj}VqzFOD%}|E!N5&VZRK#VwA4GA zm^0w##>R0ppbMy1Zch zqA=DKeDvoAoBQJd3KlE67^?<`AyKidXM0PH%W&gik0oKNXGPD;|jc zD<1VfIJ#piWYm0IeOKQJBE|3l{~e`H?Nb9wpA z$&?yRPBc&vJBJfG_s&v}4xTY6Y2y0+m*YhHn`i%l+j-G`N-XT*x#INs*y9iMzlZmg z!Fkd~&;J)tO9u!}l($@BYybdVc>n-VO9KQH00;mG0L*M7SpWb40000000uVz03HA! z07q$bFKKOIXJvCQV`yb#Yj1UQUt)4$ZewUJaBgQ+R1E+JG43Cuo5J1qv+=r9g{& zaCe8|8Yo`e{SCeEefHVi=eN5b-u)1gnM~%KoXolAe_b=Yf2Asqi%o`&goK2vs37wi z@w|tGglrGMK)ga~)LusXMTWeVmqIEYqS!(d(5xj@B$1HHVsLKE&=F-Uu!0^03F&eB z!vne7G5-w`5?_jUnZvjZxDb`wgW)>{)&g` zuvR-(Cc}yOO8IAAQw#S{2WfLh`1>Z2>`}E*`JV#jXcVLrGy?b%xmKa+fyKppKlbm= z8}sVwHuvge-O~*6-reiEFF?Y!E4H@p7dFz(98Ef)Xp$V*%@rhQtu!()s3{Gdp(F=B zK`{+!I6w#gkxcLl00vzfF&ZiX92*)K4n}X4_!rHdJ#Ra`^Z`{<-z;NRy6x(3{4l2S zSVpcpXv0aPm)s=F8CYdAX-X|MKWGU=^%3ztvs=X38jc`-p)ca0^z!9q-A?h>AWS?V z_f2%Z7KW@Z3H+awl$5rvc1rSi-%Scwhl?&#y3ePp2*~;*{9TN*Zj(8D?Ql^rGkU5Kwx#W5Xc^E*Vca3k%D1 z%KdL^@kp-#;r)jA;r9Afyxjrr;T-S%#-x(K>0!UK8S5fH?c0wIiw(6QrRdp2sse%Q z17D=6{cp-3U1!kd``i6X$pSxyS_G9`^?WEt(eH&GY+ z%g4jw?x%Xc8@)i|5vSd=Tg%;D4(*}1k-FxPVmUgEJk<~L{`a>-A90Hf+E%&FEG;cZ zy-T~T&0B}H#4D_a(?NcIti66`6FMfM+jq*S&3HG_PbS-=nx$_Xp1`8_0aGm%!(#pC z`TGZl-PDeU-cileQ-xuINlt8M!mXT5Bs;YI-G>>CH%I+3SA}&X-agthqgslW!fe%f z8GgxD1D{9ty!$YzeemstzA9?#>1`P*Ds!E81r0B{jH`^+?KfRJoQ+697{5MOID11c zAMH{+eY368Z0`7|E9$8_eD>2yt_#Q$B)n7By*UdP_I%| zLRCdiHN`N>GDKISxTF7^#Ps!AlF5;i&hs@D%K&yX6V{FyGMm|X_a)zXyDqn3(enf9 z2!le#LXDSHK4-m*8BvpsUZ-#UrU8lM5UPghCdB2BUpvh%AwB##IeD~$m0Uq8t6OdN z1@fG8Vq!v-+4EpVt3X?px?!4?eSUpOUq><$eE1k@!nVk5fNJ8!y6so9jEBBIx*dbP z|M~)D0lZr^b##k;O2tt5t6Thzvqp9H=nXzdgqF(3|FYj?GvY-txcC{y;-zk@H9Kq> zx*0@5-f&t}v$#D!%B%PV%&3}5YX5ct+>U#4oN=FuK1p`agFoWbP1#LJv@=y=jklY4 zdAxDFap3v$d`yY`nobwP8H@*a+3jteJd(;`?L6EGhd4SaW;~Wok0Cmo&k4HA7C~oTzc(ye zZ!cJjJ5?<;GPE-16Dg4_2PC^(ZyL^k1FOb9RN|QDZDO>(t>@zt8w}m!%v2;0Z=GVp z-U5Zv6P70Cs84jd6eWrFok2SnBEU8ar$9o+rdY;w59mhrinaLF=2xC~ldMgXWV~)M?n&X!=C@96fSd4X&z!er+^-E4se&7rraPNI#5Saj&NZyNhOsuPHn422Eq$eST5& z%I(GMbv;*zs(-guWSVf$G%;f@p<~!w$kp5TS#^k^c|7(_>C#81g%JG~j^}S06F$KU za6uvjy$nl|zTucC32+_nJHFjg^ItjO+n$vrG3vAJ!PnA>hy zVs}gjVMTkLq3gV7M(6;moynq`mmF@tby?WiH;&%}ztxb~=2V5T%FKV1Jt`A99^jt8 z303KJlX2~2Voal(pO*cNCwhV}ekc^Q@4N4P6I~z!K>l%_IBC-#ErWAw565WT zD+aFRXaq-!yNJ}%vfM!LZ#Kk*b%Zd`g4Ri-a+j^!rFHjJhbF$-{yEsFVTXpE=#zuz zt9WGH(+5whmKR-?jS%uQzZvwBS6DJzcI!fHHi8Gb&PY|hO_p4CFqvfR#Y|m;xfh73 zdAd?jhBxU^QY4f;Klc1<>U2q6_hY}{ZOwx?m$G&=&9H2FVa{Z)K(iiAzs&W1maaT;4lH1AX`7V`-lY3Ki$MrZ6 zZ5>E?c|3EWsO0_mHPWR_8sCM6fCH^nLa0$k4?p-P{lA#-Z5IlBI5ZW>W9+g-vwStD zTt2@|+0JM4`CPJgU9TbOCboZ#<~90$A@sHF@-zg1^_|uyCo!4DT_dMBf-Z|jmMj`S zWP3LRCt>Ucq*N(cfp6GR4v%zsNewO{1D$G?S%tmEFX!Z@3n`6(A)qdh);HnMm z`EvP?eja>7-gFPzuok=7C<)+WbCam^nQTPWq7l{Jo$nt3^vN7J7%;?&CZm_(K;yJ2f zH36m>>B_C*^ubs+X$c=|j2GiRnXPSgt}?sM5$`|BzWmj{BiU4Fw5290 zo0i|k(_5?^5~^`r3_g{hc!*JWMs>`@&LM7P$6!d%r|K>k1?e zF_ZOMW*ytI-p5G^|K_d7f2%ENI|luLiQ@1>w8uMEbom+fBa!$0(C#)P=L40iZg>gI zM{1FVEOsubKTXyX%%I(`qYsR)ml z^r9YQ*-a{^GTZwi2E$<=r8CA_WSO$%IAiv&+}1TkxxhPqtkQ`bMz}C@;yM=cpo0g6@WPhDk}RP zAB4EiYI@CjAU=v#Dv2wI)f-4leL@vfxU#4(Q($_izdst_T{;n~fsw5RBhBj^U_2pn zcau*bf5o^Rid!nHKovD^-hWLPDx@1h4q*0zjpTV7y$;*U#Gi zuAH7T;A;U^GovCp9T3I%Ot8k=hhZ7N{P^Ds8o61rFx|BvbW~&$x3O_j4djP@u&S}% zx9YM0A6?w&rF$8m&za7kq?j7~X`77s5@k{RJ8>V-GG#;zQS@0j^2`Vi`lRKuff_T? zgQdaDaqwo_wNIe#F50uw^7`>cbRw(aiO5pYBi#n11p6<+K)AUmNCDHa;8iu#T=3a@ zigJx8*lG2+)nHc5;&ni}|B5>H?gdo4>FoaEW;*gNM3%C@j-79W@*D(?p8smss=uTx z9SNRTac3QbD5=Quf>O@~21RyX3+35RsE~_<00(>n-0T;&<|Tcass?fUfUF}VhWOY= zs-WI?F&l{uawd**swHe*P`NY_=rArNPb^ja1{(`ATXs#-Tx~d#jL62)eoj*QRS~31 zbaX8++MZJO+h!Ez7h=ssoPcZ1#K>uo7}irRaT=V^zP-%wdy&1?Mwa*>@=8EWby@Ve zuG&tb0bA2YZFVEYW0D1>{vYDmA^S5=*NVTm@J5m?`}}r0r{2)G&qBS>r%M2Z|Db)w zKp|pIV(1g5Wb7ZtcD*O7IeWaR^R+~~K{9C=)+0#g^#(r9V>#v_O5oet+z#b!zK(v-t>}0>qrWOmsLD={PzB zT00q8k+->EW<09(lfD|CN3VHpHcY2~>i{wSqI-9?p<{cNHn>GRCq0vGM?|<>SmCitli$iTs3^8v-q_)Nja-6?(5R~jN9MnO~Bzgys5FFl753m1{XTErnZ$flv(}7 zo0sEcHgroaQ=%swLC0y_Mv({?5DPh>Q{yP7>&o@Dk9<)KYjeF)1GULY@CSgo9r6o` zzlsILr4U}`VP-h*+6R`)&M-WqG41wW0dr%0c7nh0y7M;?{y~JDne=qO#l-$9na^=f z(pvRa?3|&1%JTP;$t_kA5kXaFSrK;t*nCO6OeIxdw02hc-8u8fylkTMr*QJ8jPZk8 zDF9F#sHePsm%ME+IK?DE&AYmOe?=VV80n#f^pP&4Q}{Pl5ay_sc;hGU zDCE#U4hpoP44dZh>>5Eg)aiP^CD$hD=qEFZm1lbqZ=4S+-7-*YMJz%-th2w4bz|@n zaY#IZov{lM5ap?@oEuJH5#xA$aRLE7=JpM5jW&8H0bH0Jt99)pJ!`%>y$kN)RBPOF zY0621wSkRHp@A(+>7L~iss$EVGpn=J-%vLbq+Xw(Vm_|K=Z$;UeJ<1;RCw({14DQZ zf^$+$zB+QppbeS*gN7OR@!V7LONu||E0-~snn1RA)*mCDx1}=(9)h6;t_75<*if4^ zf%u3~SqShMh0;bMAF}F!&qAR&4dZxq!K3;~#E)^z@$k9`!Pc zu;wgA5@mtbf5v;K!)sdsv+JjiSUe15S|yN9XMBsnL)h;D#lB%17}nI{J;#@Q2h|_0 zYamFc^BRo8*4&sNDiWG@B#C*85_LYN6g2mLDsbW2x5?_`H=p9Q_GvX(uuCkIB3HLC zw2CU=m{;uz=+@4;FK7nT37Xbf;>;xk+7PjoV=FU}4O*hTILFrFxBGY_)f;Fi7KrSo z4fwmN_vek&Y%or2KW01offqo#nEdDaIx|!|g19iqCEAf)$wr_D0S%>VJH~X}cN=0h zLU5Xnomz)nC^FiMDfI2vdbp-R&rpT=Vgqn$eIzs{#EK%P1v%>CCy@BwICF9A-a}4U z3Pi+uIKVWTt!tW4#55;CMXQK1$r-C6v34jKicGm;IZBrjh<*gH^djU?qtatd-=h}< z^@O&kXl#4#K6#dccyQw3W?9H|5@F>THmHvZF)KW~OzLu)pL}&0B+(b|r?{AzFv7K^ zv#%Oc6?JaI(;N5;_idL393=-$ommlIh?m%w4{ixx3;7w4K*RDJi@_>~ZjhmYwV}au zwHA!rQ2eZ#kKDsZ(XJ?_5}!?ijXDS2v$^Z7m!PLF0ZL<({++=JycmszrYD z)LlburFx{LZqZ>3f>Nzk;PiX+$a}?{A}+214k3c6-mVIH`rhbKd>}ws4=0{i-9 zWs@XI$EAIFnigl`t(5chhP88#_sOtlB{!r1d+Qa(hQ}U(Vv|?qGc?+ln*(>&T(+S3 zN!?0E&Ix%aPyM;_MwBU8>u{36z8r3XFw3#_sS8l9QN*r*JziZg*hvmMs>VL7 z>yGAZ`*8a3%8Fpeo_NJI2A4jVeE;FqAnoEqLn?APKn<^B0e;Clj3Q5i5RZjloDKq; z>69@?chQ0T2gV#R^wezYzBLtW>y5D@a;GdfP*eK28Ct_|A$!9 zW3;r_tE#L4)WfnT>!(zirUWRGec8@f3?KodBsR-J2`@~wMspT z&TU#mr{DGNE20H@kxGJ7y{uzpRI9 zE@A|;lI})qPZ)N^#^~hNnMIQE1Lp&us?#zKBic7eP2d`sYA|H0z&>}8R^OR9%gT4# z3Zp!5F*+aCUMr7Wgp9}EmEPX{7}IThmNc`$k+t1O+}RCsGnsaT^MU_f=;NsbkQDfo zn$j%yt9p@Humn8x)5=H7NvhNdMa~fK*KjN_C1*7-C9>;(XsdKAp-6KWUzeMm3>@-K zwMutmPSfCt&c#ia!dVxSsIT60*(=>|6*TM)eKEir~Nwid3OP`LzGw5mW2Ajk*Ad{A8H!cR>*Bn z$3F4+k2Y2oUeW7cEROr!B`fO4ch)YiV}8#q4>g`S!f<2~zcgvyc;}%0H!=TMX*6*3 zegJL+6lc~uHl<4mH)V?Mh-Er{pjKL{^U&68n7%(b^E^2_z8^d{6!K*;;@iMzTF0=& znY^+hLmVGY67bD)_kWE%@Dc=;Ws8+GQLH0H>XiE-bc z4bLa|w|IM&7Y6uR(hAA~n=(ZT2b9p7BwvMg47{8Q`3!if?RuH_-U{x#^KOjIT@koIPxgo0ns@EJ5W+x zs~tofTy^Fq;os9`B9Fe zllaXDa(_~L788MEItMEpGMoDsZz8a@K$3JP`31>wMStjBM;cEYu6^S9heKRxg*hfaAnto^{P> z*Tls;^B=V5)J^mk?Fr4=x=zJ6FW;VIX?T)*b}91Q{&?y$1o~&fWj=HVjBL3atNF<^ zdt7k(`R{VS6}i0)`gC&M8JXSKV?(F*g(tns_=MdDFSzMfGqp9m{tx;h?l3x2AI)Q| zMvX?O*9L_=eH|`j$g4k;KE>9t9XZ*MC$Ni{YT=r>@>%6h#!r~N=%qJ}&yPm7$#=;t zZt54WcrEe7LQrn+Vjz6nBP&jSsCCRb)9}F+&0@CpA&0$EAxZ%CRVyQm&POw();{Tv za*wmNdH-Nxuix@xR&)7M=MGWrk0g!3_N8`#Dnca3c{utA;4?#_*(;l3B2Q3(3jb5# zODG?l4ivt06=u4|vRFov`JkGn@yk>>=(HIzL7%+0T-Et8m22$GQn>IDG^!nlCHu8D z%5=>*YdaJaXTl^H+t0|+GK3xYch#3<6NMBovh$_s1-dbUTU~>M)E{yJsUt93hD7@A zsR%whO3v56#JQ+V7Nz(&Vps834@ZFMTAhRuO98T7>>JZ=3_>t%5}wVE**sSQVN5yq zabA0vE=F3TedtSGGmp4!HFNq@z-qr75kt~G;67mHq`W?WgeD1Z4BB8~!P}VHAU4xv$AbH$B7lG% z8*Zif3!y-rVwrsn2XF9^Wulq0+H!|!}A{Pi8@495)`8tlRU-1FQjmaiARRS zaDE`*&VJ(@;!cAY>kr(yLiG>swA}uM&7YG7wvc=nJ8}T6j!>zQ+S$^DRJMcjW%MiE zojJylNS(_bXy8eZckm1MIk=Iur0}L8pmo8Aq88-=L8p>T1`2$*oLXDTVkg_|KgeDK zHGH2bRCo`&3;}WpZhUG_9ezsGeq|80MnK~Bnwf#Gpgm6F_+sd71J?SeW@APh@1$G4 z5J>y!mk9MXBjbubW`f)QbH3ag=fvLX{D?<#+%%_0a%`+X_0{VWx@779U$*=RAeDOg z-ij-~AX|Y+;bSQMlkX*~@0uEXjyBxrr5J*!;(BSG4k${F{S`oGk3MGAjx$n5pSeuf zPkQofD-;2lqPC2NidU9waYbs>2>YN|Vapdst;23hYp7^v&(|XtQ+R?Tr6Mcm_2#R* zwpVKx1kP5Xr`Z2P$GKLZJ{Du`Y{OSR|7~H`ZfjZtCJ|2en4qjhEvpL~Zb~6AZp|J6 zTI@##*}KYZRm49vtCIQ;>IB>SVX0dlEc4GXmva0ms!=U7V)?@{ex0p3TdPyetC&p9 z`D^}LoGK_I`>rv@>eHE$UJS>%GWC2&k_|ygkae5UYqR&0Z|ST*X2`ivt9F0Om%ot6 zkK?0Qlu>z->*!X~VZgGo`)Gtmj!1AKTdO02M8%3Hjr*xu-Ok9rh)+3}E%hpaLNYk7 zFt<@WZ1UGVbF+}68@pf=6jqiQA~f5fZz^O z0Sp`rpF38y#v6Uq7uBg%5z+) zw3V9e#AAQ(M4#gvdA7NGi^` zjNJQXIYB+zcAma|Jf&QhEQ`DSV`r1G`GUWxxcY^|4Xue%a5=gC6KtXbSlC7ykV zLB*1muKsHXiXoE8NyYu$Ub{r?1@beZH5u&4Z)So7AeR+v97H93>1AXw6P;S9(he~r6k z-H0i^X=qPv8Tlu|Q{}H;ehots?ZCTP3aJE-948a2OXdJwL%no zZ2z@F{H-?x)hpb@YrE#;Xva|_Lw(gV^^62hysNQq(-uSRc1`xmW5KI#ulhbJ`qW&b zU3Pc$x05|$)QeK_D|s5an+P>9Ekd*yHCZ<;yLbcEo$SUhz-ia#T4-NTSDY5${WW0_ z%|}c%rk^nzyGXxwo{bg^L)6Mw65shhX$028eI63^-c(x~0=5;ZpqGpc&UDMN*Lai? z$5u-!DU*)BAoxt7K`on*?gKvr{GKGq-w&X4SO1D(KNRGrDW!N-jkOzOx)vavpNrK8 zwEW{w0NRgPr1q>~|BkU`)}0*q9v5pS^1?-XUPmMi8DcIhj=Z0EMS-pEcC>JVQ4y=xtJ_xbv6o3D8lIe_Ef{wh6v?mQ64?eN^J1 zXr%q!U5Q(Ayfux&Tad%_nWe#g2jcFH`A_T!4E7NNMkN`OxI$W7`u|?($w5CfxW_Lv z>=Zsjc@Rh(ge?v-6gvPT7`5@iV{`E~$0A6xpd~na)KIR}`Hw>OvL}e7_A|y>dyC?A zL?UhFlk>GCD$D+Be564palQ=5{o$)mQUGE?1mzL} zUo>-O5_}{0(`a3I zP4X0r_7m;%;G%P@cf-)m`PI^RvaXH1mH>jY0}YIGsv6mUN7M?2+@}gbMsAUhYD9Q zHC7$!A;U>?Y0k}viGQ{ReGE$T@WasWIdPfpIcY1Jq!WDl9{*xKmak2#WryzJJqrg2 z;yun>PII{g@Q%p_ zGfjgtyU>aQxM@+uo``GyNsWPxQ~)@p3M>0Vxb(p+=F+sAsru2F>`@OK`zOlP_`!K? zq7#5_5N%j72YYlA(mh8tOi-Bp-Ai1Sb^pD)L96$eKJ4%z0F}Kafq1&@fB7klJND%> zK!h>5=@2?d#SvE?@yq=!iX4{vXj5k;NO#CG9JoR}k6QAyI=Sc&iu>r&O8?mr;k<>i zJ7q%=A!zy`MWyA$XAO0cy1!wX?L}){j~0q?Zst^%c}LUbF|YdosB>cYcE4kzw`sdR z=Z8<&Md3UAuD2ICDxM?c30&_YST_v@8yr7yFCXhPS$}(?|BO`W znR!5>Xb1F?bV3k)Z|0C`f1lI?b)TCOz~}b}XiVJBM>ky@Iq;nO2>^H)7L?KC;5k#G zTj_>($ka#4`z7Q>_HJD`7&i#L-qonWw8#R$xAE)!yfiCx@R1BGG~jVwzNx!o1hzKr zR!_(K0jc1W^#jtv=hLC=iT$L7__Dz%xe}$V!$~#xtiYlIhB5$O1pz$wDeJWBeyJ&E zg9YAJ)UU^kg#!ew*b>1h7|Xs@A*Og*6{fXe7biG^yE)3K_~ry~F92Gk6}X+GKNBM;h`<3mz?7WN=chSb2&J%>v~WZ(94!2CnwBzH z5FOEMzm!fls{#OvKy<$!?iO3!g}BsQ7%y@F1bduq(5i;Fk(|0pr62|sg|PToIvJQE zp)f||xh_@EuKKfh2DGAZun{4#-3y$lkMijmzjLs5NTHuXcA!Z)t^>?D zA#Ru-p}+9+Xudm?kFx_UiJkp2p}&2$Q^q4z2gs9M+?vl?+FU!F;+El3LUC?w zxS`}WDhv8UPb(|TVjz>0w~#CFr*A*34XWSbr}DtD?8%*+REx=83dY%w=$OQmBK9$iGa49NdQ-74*-%e@rY>tiOifL~ z1n-zUXtQsHep-e@%{ z_f8;jAsQaZqYiF3Taj0WSmEvGew)5*+f?ik7defai&p_`1)K7L8VVSAQV;r%OVa+|X~v4k`og-%qtGO%nZ^t%lSTXM1g>^VwO zm@D~!w1Cj`L}`*6#jL8N|L5XuS7!b}^j6Kv;Z(2sw}SiEYbTQo`Txo;|+`7GRc@-)ohZxo9Cz10F=S+)QyUTD83d4{c3vrS5bMl{MW&s+7*(}&oi z%2#B7CI&(M4Bjmak{kr~Z3~*spU!U~r;St9A?1=Y&j1h1i3`V=HEjOS|DEc}DX1Ko zua!@d0~ge$m0pB!bSO=BY~EOinNgyl*pyB`xc)gT=zMG0{?8r>n$HMEo8+Zj_dPFk zXmFSQ@3t$94hXY1b)FYqkN8^0m&<}=@X_K&o*5cY2#TF+JaVkPkkfB;c|K_3!VW69 z3kNox^JFwzjZLt=Mao)f+VDGmMEwvJifW>@J{x-tJIEBSNf?)oq|SoprS@!G;clrx zNakOLh(_9+))!pN!)K*Wc3h9{PTq@zA??J2(QpaR4@{j_~Wf2<#3^i9Qe` z@NnD}cR?Ebx1`dH6wogDkW_js5hQ@Nv*-X1I3^9*)qTx!l}$eKRb-{|qsvC&oJSO} zU1AxYkzKrRd0xJ5J0NF#X0!g$ZhoBa3hiKZGCps{Q= zhcNuE(uP(;)vldfY)e!-!clC7Y+0D8M>^%9xiv>^CEa(4hqVQ?@ezjka;SzNH!_3B zZ`;yw9}nce*CwFv5jK+4D4CF{1# zgOLS5A69b(nmy?D32X^c*ka2yCi3j?(KJTc3}y6Ejh)4k;K;5gTwkLH<$sR|<{Ln> zaB{yI!IpngF^=n@TRT7fE*ZPTsP*8*1BBFTXg;gTS?&ne*oY*dx4MWBvmMZh7t?%> z-e^Nt2*TR07k7z`A?Q)jk@J$|_*jWwY;K8ArtH6!X{|r|wNi&DYG=aEUpv?eMOz3Z z3-@vLulrsRQ&x7&J}HANJ*bm8LY*`a>VzYuLthk(1BGMgYt$q*a)g58kZ10fjrxz& zz8QWAVs$ZlnDjOIw8y)yK=U_6_JynNlgYXII}tJ16-VD`gfotAMe`jU*o8P9nNA1x zE}X?BIRYzz4)0iJYd&w&OC~RP=R)N0x$xAwoMJxNpROThbyaWjvttIpUwM>8w+4oP zk0F5l=m%^|>@3>N7yRGKLfbZEX-*tHjt#SixKIwHENG zov*eM)ptH4%N-o8*F+(gWaXzSOcc@<&kZt0WEFAXZS`zLei@I0SuS*sRTTJCceuPiHG)7>#*$T0`{kmAm4d9uzt};w*uR{_kZ(B*aLCnhMQ^MCR_iAa!9d4_YG>cel;=Zz*1P(lN>uvy+&i0pwjXKn?A@M9NN$lb$@gGhG7i!&WsY!s-%o@JUOt0 z2on5vK|~ntUaPAeQ#~?Y3y{WGhl2prwm>-Fdi|zh_rFOK(mj9qU!?0)H?)%X32b0I zIBEQcyYUzKr8(jJ2~I<}eZVSwNkl*KV0))u7bp#C9e;-eW}IEezpdF1c#)i_mr6YA zp8a)DuY3ShG3Oh2=O2P=11$D1Y!x}dp0X79a+B>dTj5&+NgzuA(HSD-2S7qZB_aK+ z<67onZE5KrmU_g06KS^j9d#1&L%+O_a_oo@)69$cQepTCB@iW*|Jq@;(vLo)odf@G zpM3YQE|h*f$ju72V_Hom|0#_a@SnpO;BFhDC=IpfqJ8wL^DY1xLbr>hbkhx zeyDNi8t%HYkcSaM!<~g?o&&ZJ6EDizj2lM0(u+9k1l$#SbdAw}mhkEQ)Cs)*BH`>` zS>;f3gb_0R-iCNDpNi2br;{G;HR~dCFQohT4jqJ6vlxQ?4rLbU$LRQsXe{%7sQnrH zMzHX5fyQ4xZ0)Gqo0f8vDKXPokXJQH>I~>v+#_s;;I}dHf-!iy{x+x^=ZeG^Gx?~Q zsy{)1T>6>~ns4935LD^xE10l~_bR#yQ!Wy+g%j`A_TgK3Su)?GBYfS_-h#5Z zVv=v-unPM31`L0^?UcC(LVhV)5fhEg3^4jw2`r`o6s`6OAf70t|Mz;?C3$j>j8Qwg zNF0Oz_2K{96lGOqilt1U{|``02MFPmI;j3K000Iz002-+0|XQR2mlBGri3F|00000 z00000F{1zg6#yUrM`?5~X>DO=WpgibWny7-WiD`TXH`@U00$W#*Jk!W;AR;g*JgEi z3jhHG000001ONa40MxvBIF#YvHa<$Jgd!=j6jIiT2w6&&$dY}hb!08uV2q(%LiP}& z?1{-Xwi(kxw(QGf8wm}@7-ohs!_2%hmGASs&mX_zcO36O@7r;7bZhRpug`s5pX)r& z&vJ>ivM}b`C%O*+0PtNkxnd0faB~3wJLLE5X8(`f1se?eAFd#4+ z%r5}|m5IDtH+Hdq-h1D~DF^`I|H}Ex)fP~48vuCs?dp|Fwqfo|lY8H|8rE*C4o(hM z-@bd!W&PEww2zrmkChHQZWp|CaMvhIAa~Ehi?)X-F(m@6vQWdh)BApTFfU%Qx_{}? zo+GJ`0mr3c_r#7;LlEDwI+F}y5PhUT_4`1IQ`07OEoiE|DR?StFT7~cc2eF$(E`Bv zqyLQz2LHKwHN9uY-wWCQ_b%u;y*O>pCdz=>oz@q^*x{I3&(AwD^`On5RJVV(>~8th z8Yg==t^jP-FpV#Gp7!Kc+W zNtMAO^Ar*(uxYs-8>v%_2@a0Q4Wd*>OvYcVpMEMB0eK!?@QA8Xo8rz#0=lP)b0gl1`}8)cj|HIC?6vL3 zR&;+om-d~FR_|NOO@u7n3Qb&}P;ss)QS!{A92MPvN?AGmR)Xd?(N*z<1z<>v{?)4; zT;XO8FS-A`+WtKna?$>xfD5cGa?{cckH+BA^IIWJo6Ajwjg4bX1GSBfS}Maq%hk&b zjSG9Y`9yE;c=+dw(OkvS0E-LL+&=T5D^p#p^*Xd4YOQfH1mmWzp)X&f!SY-Hc6D}+ z<(6ePC**Bj(?9U%duM*;M$zv%A$&7Y8BH9^GEq*V>>86c|2kt}!X&K_AHY5HopD{Pcas8m8;{L22Ko%sOmDml1!# zVys;5$KzYe;dF7>MvEM>%nkfAhG!|{$!sr{J zTKvx8e^c_Z?skXZDlHOw9U}qVdO-Unf}Ur8>Y>%rcrP$xU%rTTz)NW_O^ayfO8 zJizsLGWFr}eKhcLLtDhCh_dUc47bqC4<2Z2#pHuFaceufJD6aXI)68pTW(?_)F~)h z(W7~yVgckDK9|ORFnmESH|!k&eE#)M(doreAS^9bNN$X(;*R`5niid*yVin;?%`|0 z4jlhU$l+B%T2(as7IkV0E&t$DZ6pC+s@&P!gc9+H>|fSi8?qTEmA7TpB}UFl2et}3 zgn{_|{%tyxwX?IlfDYx=`FF+FGH>#cl9L6SiuiuBw|D=*;*2D#UeURxeE`j35a-5x z;I+LaLA^Q{QOaTiE;mKU;=-l7-C1|qB6`;_9x9y8yX2S?)T0^5c2Fm0G2CJf2wTap zj3Nnv{S6JD_+@xRHROOKB3CXo%)g66N+(rSopWMu1`x%ciUq?ViGj4xHoA`JD-)h= z`$%jX920cb9cdFdU7*2i$UMqN%0~d1i#bkigshc$`1zc{3=REgmaeU>b@$feQw(0q z%GmSV}mheH{7bzcv?vT!Xz%^*@CmbO#PM zJz&T*dy=YXJl2IlB9TkCBvTd!izQzLQ1`W1{f=vRaO96MQu${E|87pjO9%dsE~evJ z!|(mMev0t2Ju$2;W8LH;Go)B)mD2J>2|=AZ{9NTV5Zuw7q2F<8Z)&{o>L817;2+9{ zmp5sc)-Gf)qBy}|pU zB_l;aust^5(rPQU(xl8p=FN|~r!r%-O zh~md1%_j#$53lmboQZtA5!Zz(<56*TkWGSsXJVh5SXc!Xi>t&`oy86>Z6o^anq^nH zX+8x-f~5MzeiJIsQoZFB>BG05t1nl7{WyqiGks@n^ZH9}xjq0seTM1MW{;_}q$NnJStQgmX^pHGh*`m>bH z&XJ#8S4A?wK%Qs19^|*Q{>VG>+ZG&LyE{u2vHKDAu_3ZPa&078)~p3b4mai*AV;`0 zY>ox+9#;H_?}1P!fw)QBn*?1wC^IsgzEF(PUYGtiOjv)(mG>aW0SBwwo1cGENjJK7 zeIsl1-K_kGS#6VeW0R z269D*JsQr?_*^|aVGb_B%NEFPnrETPE6&?t_uSln+FQ8#+J>T zE=p!e#u5aq_6sZ6e|WXH=uKNqg!=Mrc6OQ)JDbci&lxJCDAo;Zc$|AG=6~U*`}SBO zrIUVO%x3Njas|>pcXQmDw#J~EgmsOR76;LlWVzhUv%CjnTxjdw4UBOR*tpb3jPK`M zKuMnimw&_D;nI?lkGq*{FvqzqyulX7JOW|E+q4b-IopxT-LVi0|C>|sZMl)oBLQQI zmO7E>?-v7~=44-d@NjFs0&Wt1FZLojtTe|)^g#W3y7nvxU60XD(Smg)c6ms8v6`Fx z#qU8aNlh$X5#`i4<;L~_4*Xx-`1vS(`SgF@g7^HW?yv(_Zsc#3z}08HX)mg*iQl8j z(l07xyn$ALWJr%-I;ViBfP^=JTb0;Mi51ce2_up`MFzPTk4*(FmKKkNi!h%v${#}opYg)IFprHmmm56@#qZ{;c z*jf+eRR#>P#m6;~raam7Z;+d6=8PeM;P2 zQLN6NoS;<%=Zaib0Cg}}I6O8pH;A^-l>|V&MKQ+k&|k4~5kNr;&ACGjEaoOEf9JxL zXi-4lRj!ag{T$;@$NxFv{pN{>S56FM{Q%8u(TEuytmy@iIiMuC7LcRrIXt#j zbNNl;kM{uoJAg?vWlSu6+2VVbr3-Vn)utxbVMRwz6r)kmGtj_2hpjr;3M1qbl507L zJ{FxI5w?Gn8`$ zx)W7$Rk}QOZ=*<9l%H2(<*e0FzMrINOk^uLBX%2}o}5R_yjx2{Nct*EDtlx;|K}-I zvoEt`*mxiN#6YmTjMT%=4{82wK+dOi+HPax$qP|W3DTSE-&}qjG!v-b2qMrPXwL9g z{}*_vF-Z>uPl@MvJ$E2ddiWK={#&%HME%wnAZS6CZ zaJuVWZY9aggl$`Byf0)g_#q1OH`h%IyqgL)vvrMO#ev0=0krnuZF4L#c=uc6-dXT6 z@Ixo=`FIepiaQ0VaH%*mNW1yKUGy(j4mSqnJl6Q|u?G5M<;u*224iQIH2Vo zKnnQX)(p7w-;O+PD7Nsn79LykR0(k4i0!g#da(i{spvGy6>*@a$oTV z#XZiFJ?x$ASl_zd?3ud}$m^Rj5y@uBDnRsx(~;hP+tCE9#Bx;>+lm0ge_sT=?@+z`|?$pMN%f|owYam^0*UvMec|O}WDTE)2 z{^}Lo^N;=t3fJ=i$BcFc|66P+r4Y4!pKhq>w>h5pWAdx@EO%x(f!BgrLg+th^nZP7 zA+qv<3Loe4)2qXAHGfuwN=SDs(X4zT1fEk-6!!3M_G3=xw|J-34cC2>NBmgHUN$+Plh{|?Du^41)o{~@bS&;clrQ+j^@8y5P7t}0cPfdpeIF7M3B6C`J zy#g9wDCRBG2)Djjeq5X1LdQPP$h;~TA@y&pb6>Kt$sBD{v;Kpp^P6L%ied20O978B z_0)fr37hXv@7Y#a2A9LgdW9k5-ex?VM&m0i<~umgmG?p^`**kXzIqdD?4&hFL+Sjv z^-)m>j*bB6_q6Y2hytwW4EizQ1U&~BjBgvy>hcBxbaLkDs77(NOc zcdi-#dzBJr4c6egI+y45%tD?Qx|XmqSKV{lp?}`J$z~%q82Rq~#8%eCrB4I6Me=#c za_x}_psLWnn|?ljEQ<_DlVyB0X3MU6T%A9}_~z<=*JRkro*i5q2oO2+PqZEM;WI1y ztzfXN`(AjhS&VP;@`Or6_tZyT@e!nTUfIq7DUVEe`mDwEsxTkMIPv9aX9>WjRQem` zyF5;A)*{4X;#+jej{ctpGfA;8Ld%AE1^<=A3DN*4zA%U1Wx$`RXd zmabTN5ukta9dZ{ys;h9LxGp%X(s!bJ({>k zl5sU-&DywLD0+)7U%(+LS3Dl?g>lkjF=BbR4^E0U4{3`OJoL3mybVViw}1W8OS+m$+|~HHn=m- z?Y|U#=w4yqXw{v-enXLPprCu?s-aW$-FQ1^V*L!iwu7DBooqU-7wQi-CPLSS9mWoeJ<89}5x?Q{lE*(d(^Csg|U*8_&K_sQBn(Qt~(5 z+8>2Zu*U|V8KL7%rp;v=P3DQ>Ahf!A4GA6}J^S?0dc=ZGgn6BqfBkgyw@ZG0ex|Tt zpN`&LReW=P5&7)3E%@$pyUkgMBhrpD+j=fqD>tv7#IJ6PG`}yOo-u(jwhoxFNI*oQ z#r_hreMOz|*H#*&42xnNZuZ3xBXQbi8EY~Db(5hkitfj2@Npt4h@cKm%I`;G2p*a5 zxJ1Xp6FDiM^yT>|R8jBs4A;P`E{&+%D0}h`Ceyb7y^}F{nvpY4yvpJeXNae#rPWU6 zvqI@d86ew6OQsG2?E%GA1A7rQSz009>vR9-Dm zSOF9kCRw9%obnF6)8X!Q><)mnFt+*RNIfOik(}Mz`o#q+aW4C}F}aY|b>$`Z{AJ{c zx90`Ne+lm@t*BV8Y6FfV`~=|}jslO?O*y%_rU6t|76^?=mS=oezqSw*5)?j!t?|_W zExY0gN6+4Tyk-jdxl?kbLMC#-%%jTP(9YWW=2s^mCk58p+KOPCe{xC>*z*RFt4wfu z;ovLcs@MG@ly!j-?T`~@Ahj~Pyrx>PdQfz60E*FpNZ+ZRFOBWCo8!SRMgl zLUlS>ruE8x!1BWMV+(L(jo^DU3*!#%mS3;PI4xWug7=)~WV89bZ0EJx8+ob@&iT>* zcy6bM*0=Tkrwr&gPfFJ_v|t2C57A!uNmD{0r;!G)EzstoIc-dx+);19A4c+>A8E-o#!w4 zzGusdQFpOl{q&d|Nqtyxubr}F=F9DPV<9l|b4Qz_mNlx{FSD6h)Z33c4T&mJ=6$_= zOW)kf%oCqiRTU>2fpJ&xWr~v?oaB+b9McsNrSAE+O7`j1K`bS`#-Ei@$S}MkIR9*p zUPGNig}zcN)r=Y_CBLDjjldv^hTPI5rJU3ctEuQnZ`E~qcIl=NPFpwY(w zdC)^Fpu-s1WPJ$jp;rvU5c`RP#9?AD0uX&-&;0{6C&HOD9QEoQ(o5BzSAQ}eT4Byt z*J+X1g9Gu*x&oFP*M$RfN_5dVB|w1y^ud!^6mEYP=ODzr{><^>_RbYz2ZgApy{Jr%nPGUcPS8KV7U&D2~__`C9!}!r%Rv(lo)OC4zxTCS)+FfA z=ko(u3~E=_d7q^wT~bnFyRd`nw3|7Uz8NG8nZ)aivwi}%(XkVsPq&#aPY1~a{Jz+sx9qwqAbFZOu|s==9N|VB+)R>jztIta zdlO{AX3Dh$!6J(sQ5R%bW#JlTcEEJ71KqfeS!<$b4_iX%gNR_`WWDSyO&ps(1G>hu z1DcPz)cNNWrnv`E>v{)e*)000w+2MS?yM-*W;DPe7EhbuiC3WN)TVx@HUp)=Xh>lx zLD$MWMk|{f(D@%ed>@Fg7^H(ObS;?Feq22<6deS4IzS9T2QikGMymxjs7vx59jx_b z@Y)mxQrA_dy}XQ8@GKc%`KNT9Oxt4d(x;lu6sRl#i%on73vCcSu1CQYAqiV(1;D4i zKIdv}HqY)IKe0B9bqao*1jy;bK5Djdalsez_Y_>+1eQ%8{IXjVvPTpieC5+Pc7_|l zCRb5><^VV(2xVQ7Aw8Lvp5AF7pmSTVH}$lQjC)c_a<_wHw^VgE!~o=uE|HGh`0qOfn)^XD~P!=X->Im&Z8l+=@vtR(8_&|i@ooR z!p+z_Zz1o059fn#62@xX--Bx24T*_q_*1NJ8rm zL~M3>Usi@vnCzk$?XD90k4*+{1)+)TczQLVC4J{hbxQYCDx3d4N>IYa z#~wTur+#w+=G@WQQ$flj3VXvHfN8O_;MxpB@;PA7F>Q;AmigMLt=}5hB$EdZDhZR| zI7!w<8v*46`as1u#b=V-^VfIZQ|a@8qwW$J-mNy!06Mr&0yf)OuYM*NUQ>n5Ob|Wb ze4VhUS~@U=ZVp%?1!LSmYb8|GL9wIl%Bgh=Pe|!(xL`*E*8%+bTw2BlKBIa2CQ;7N0hK?di!*ca9x^#B)d}4$-j8L)Q zE<1%k`QF=-xS%+t-)O=lMxBvmv5qzVTX!e2iweSg&yOe{_f;fFB$-BGwXoXnoQL2n zr>IN5n(t%YnF%g5rD{3|YCx{iCvU**^m(md~blaIJ)3Jt&fPJ$%;P*bo zWQ{*|7-OP1aiY>H#iU;I!P(a;Oyt82UCYQPg@UKV6qpZxwVVg+e6cNb9}RO^8yv`k zDZ*WDr1gh%XCqZhv$LQjb{0U9UQ&-|UhCydx6L#7%V~+S7^LVIZEO%#{sVC*o z>fCQIkc%S1R{lopS(;bi{`0KFa^EoH^bw_u&il0>qXIQxeJU=s^P_&uEd60@H_QiR z|JLyb;+si|ZS9DOIbN4&b3*v@xlEgjE_V-0Oy^vJ#u?@djy5}g8MlvX8T=-B0D38D zgT&h^(jF_xBeYrXSa3edVhz4|grJ{6oe=2P3bfJo0#e{2`uC9VWa?@8MmKC^U$ zAzcNmeyo9#JsU7z3jJ|^RV3Z{PL14$z%eW7{%==yeiiwi@$;>*ndj^k?cIIaY)4IG zyJ?@~o*f13&|cE9e+98sx)^RIvOz8;-_vIn=k1=H zfp@Q~S(h?bczt`Jxdw6XmP;b0qqVIAIbfq0-+a)yX(FP~HZM4JV@7zO`A~UTvWfYx zDNAs1U~xA>Ejsrt(j3ZB%}jO(aUOXA!>cl+>{s^6`%aCXe1Rz%9G)3guyk`q5$i zKHNMxRo8=JQb>7f1Dc%QNZJLd)eO^2t~akhq>Sh31^&AN?1e`JX$xsV>(_kAr2O1TJJsMpfd}!w>-kh z*z_hGmM}e)x`$lG{$0 z<~1C8kJiS^W@aO#;*@`kn+Ntx_NFYb<#@7cMDpy*Y~{~;jeoc&hIBZx2XK?Q zqY~r!+i$Y>qwS=#!uVxv*`K^7tx{A|%`AcL#NTG*XBCFoi)@5Z(1l9PxtC_RgAIC` zNMm6!fdzhYIiSjm>$8K{;hp7?;M&Q2*wrU<$8$xxQ-1U5@7T6$mr}I>5h*g+gn0cjdISG;Ag}#DavQNT5KiFJg{nH56&~ zZ`vfOZs>@1aPpIVn&N^5k-H2L#2%Ok>Qph5V%p%z%&ZEUv)&sJ?$S)BiOuN+G}$z7 zrog};SzCKddn*Pjb4T_oO0{$q9R47Dr+#?$UXGKZgiEofl>!)cC(bu1zA7vGKFf~# znC~{GZoxmpAtut0}x3js#_pam+BaJzQbC+{|8!Bv-&uLo=XDc>j z^(H4FekPZ710xg+=@A zFdO5+981W7M^Pmje!qyD+qiW%0%$!$5-hWvn z1aQ;R%?CvwM>ZfVTNQXSI^)UkltEpJE^Y8BaISUCVOGz7vtR;3-Vr{_!}6gE&1&QR!Lw4`spy;ClKGMq5E74fJ$j99B-&}ejuz{pqtL&iD zfsXXu$GyK)>Jy8m$1<*HTGrBJ>*hObF z2n3*9bl0X}>0~(b`F<6Z${@KM9b^CIO?%qRBk0GObtZk&Fz~aSuKdi&LWE3uS7Mo3 zeo+76fNy<=n0$CqK^8VeE)=Csd)n>tfd}uPN6Q5jJwqa8dhhPLtUltIHIM7 zRsvW#o`^|KN?%stlrsu@yVD(Z(q;DK#jng#*Fv(jK^347Jwl~rvs}0`m-v95-Fl>mDjkOQ6fVmR~8*Xp41y}e(y}1qe>>5 z1vGxq9@NQ@%+L!y{>D*KD=oM5*O!)$*UN)L=e~_ME3+VYU}HHlv`9(C9Sg9+-hI4Z zKA^VZ9a*pz6J=3gi_;y@j8E3X)v%BwvHtbbPeI*D+>F(VjgDxW?TH{2(4pbjKxlgLS7iZiKHV~UP`S+ak`t*~zNu*Zri${f1B`FDN zBj?9-hb2y~6+g?Z+2>=a`{>cDFM8A8rGf2326F8}mP(YKrQ&Kk$*4umboY%q*}%DC zbf0>5tptA7o*-AXqc146?x<8(=lJq(-3aCkpZNUTRZG?Vf$utz0DzWmcnjJyfAD!=%PP};Y(sQQ$F_Z7| z6N0>>&DvjIJR6PL{5CX_ck#9RX<-s+hV)FCo9rj@C$~R^CWkt$%)mN&C789{M&%TU zZB99z3^PS0zE^dW3jm^twlsWzqy-H!j6jC{L7ao90<V;Z(9@W1)7_u3Hh!U?AJ|#AjBks8F8ZaEqCIq7IT~WbH0JpuKi$kT>*RN0K zT)nWlR9&7lbuc~;Z*`Hevowj!w0|>WXPRGXXId<-)0%+^7z8v07DTf2xN4Z-~oi#_uwdZsObm}&YK7u#z{hDqNs_A9HuMOj+qLl|T zw*1lgUw;Ifp!2CR0&Ae`rlPVPHO28@h@^$_p823;y<*&X{WAx+0O!>MQVC^WOW`UX zRBfR6eqv`FbSpdZK1mZHvBqNj?)61@=X@S}fU;J#T&DH@BB`otB(2>9vkJ+DeI^~3b`XBd`_@PUZl{!JNTbp7 zpRP|oYMuK!ry#@^i{TphOxfx{zD59j-yOa1v&w)s+z=*mFM^Q0Stt9m5!KJUyi007P69yE?}w zboGYQ=xwdcrK>o%3554|VU0+4_Xq+X(feVAlG9mzdG zL%BWA3dkokJ7Ao!yAX+-a6j#(_uw4h_6rlgUql~EW3E5_Zku()bWXi9+xRZ7voMhU zM#yi$QDjfwox747bMU$0V(2aEo3&=mz|~rf(c0yj_}wd{jC+x1#Z#W9&R-kW8(ZbQ zmw;$b`pTbj@bfuh=cjS8iu5`$mMo2VvEjkea5AoUts+mM(yCewy$X!G@cZSPQ_WkS zGv{2uh0avp1Qs;Ul9b4Z-UxI$alpig{T3WWGs)JxqY>jfrTMRh7mTpkY4)Q{PvxDP z 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

j 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 Pv#j?(`~MtqJ~O`o+ZB>y literal 0 HcmV?d00001 diff --git a/security/TP1/GenSig.class b/security/TP1/GenSig.class new file mode 100755 index 0000000000000000000000000000000000000000..3bdaeeb6624a515320aeb8a3d63551f22211232e GIT binary patch literal 2522 zcmbVN*>@9F82{Zi?Mtw3d)l&depx_AN@DP?@kgF~((oJcwh&4&!raGqpn42C9r@WRKTsAz#&qn=o_9g!t1 zt3XC;23<#n6&}qSrju~;LeECMXl2+kZtH0g3G@pyVWb15o)sfAeMUx%S@hdfuoCSY zeif^*nqgHPKMXu4y=F`b6f8w@AyXK`Oh-c#UaTb~M-xZ9SWkz<_^^Tv*vPR-#b#_F z5UyKWBnx@NSqvW+i=(=cCrBc%J64{dB`ut|X*;@^6byZJqST37`t-kEDgOY2H!*Nz z&*;hFeg)g`Fh_@kw4Gr?Eu@6RCQj;R$|6>K9tc3SkEmqe5fwp%7!+AjL(dqOD7io| zejo4}yU>KR>{784yBONiC5}XyG6pRey3f2UqKIKU%CSeqUOYyns!i~o1BIxjE?LkW z0<&qEx3Y-TU5AgW*pCAYK512$&KOCCjmwQ(iL~+J396>#{DR@kQcEa^;t{7S1$Bp*XXt(~&MOWGZ4^(bG-N$gbV<1M&9J%b_FkJ*B^a9EI9kC(!z0HcZsrQ* z0a6e{pPbay90QcL3!T(@3NtezFH$wC{WvC7k29<#{TNa)j1l6K2H(i& z(;3Q~COs}?Csdq7g26-6n__4RPW4DZ6yqu;aEf+AA(wK?#z_>9mpo3Ycv|j~rewyl zg;YPI;u)MJKeo$&Cm5RQ;W$soDjCQ`M+(lpOud*U7^JS?9Qx!#sF*>Tyk4M*C5$c@ z%HSL(TQG-tj*N<|jB;N^OHD$pKy6Pw(`zQJlt_7Dkq^5da%A~zWzV=IOB~+Tc{3-88|l zBH`%C`5`^$>T|q7Y1dKZc(YQOIz7tqHbcV{^|X?(3i+gvrK1Teq1!DBO7}vKWjVH! z*KjXrF-~elD#zzW1#ubiFBwL>{bhtg?rf--F*1QOph%OP> zrzdGYQ!TGnQ&(0j1skB9nGtr!pk>V$a?#~nRDG#299ztZI_lLFl`h3-b&bj{VtOW% zpw5gksBx3-kyu8zZDDhK!LWT&`FeZkz@}vx}UaUA3}7q?8X5)9Yh3&Y1ww;7(FL&6gqk_ODi#l0rDHi zWenn7oWK=~<7?9R7N_wY&fq3(x}R|tzu-K@Oi|Qn{DCC?qV4q>MLmF~_PeC7aJ2qAg Hm(czL+rgmU literal 0 HcmV?d00001 diff --git a/security/TP1/GenSig.java b/security/TP1/GenSig.java new file mode 100755 index 0000000..c2e1fd5 --- /dev/null +++ b/security/TP1/GenSig.java @@ -0,0 +1,106 @@ +/* + * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * - Neither the name of Oracle or the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + + import java.io.*; + import java.security.*; + + class GenSig { + + public static void main(String[] args) { + + /* Generate a DSA signature */ + + if (args.length != 1) { + System.out.println("Usage: GenSig nameOfFileToSign"); + } + else try{ + + /* Generate a key pair */ + + KeyPairGenerator keyGen = KeyPairGenerator.getInstance("DSA", "SUN"); + SecureRandom random = SecureRandom.getInstance("SHA1PRNG", "SUN"); + + keyGen.initialize(1024, random); + + KeyPair pair = keyGen.generateKeyPair(); + PrivateKey priv = pair.getPrivate(); + PublicKey pub = pair.getPublic(); + + + /* Create a Signature object and initialize it with the private key */ + + Signature dsa = Signature.getInstance("SHA1withDSA", "SUN"); + + dsa.initSign(priv); + + /* Update and sign the data */ + + FileInputStream fis = new FileInputStream(args[0]); + BufferedInputStream bufin = new BufferedInputStream(fis); + byte[] buffer = new byte[1024]; + int len; + while (bufin.available() != 0) { + len = bufin.read(buffer); + dsa.update(buffer, 0, len); + }; + + bufin.close(); + + /* Now that all the data to be signed has been read in, + generate a signature for it */ + + byte[] realSig = dsa.sign(); + + + /* Save the signature in a file */ + FileOutputStream sigfos = new FileOutputStream("sig"); + sigfos.write(realSig); + + sigfos.close(); + + + /* Save the public key in a file */ + byte[] key = pub.getEncoded(); + FileOutputStream keyfos = new FileOutputStream("suepk"); + keyfos.write(key); + + keyfos.close(); + + } catch (Exception e) { + System.err.println("Caught exception " + e.toString()); + } + + }; + + } + + \ No newline at end of file diff --git a/security/TP1/GetProps.class b/security/TP1/GetProps.class new file mode 100755 index 0000000000000000000000000000000000000000..d2312e94ffadff24906418f7e8c12054d2295577 GIT binary patch literal 1733 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 1) + countChars(new FileInputStream(args[0])); + else + System.err.println("Usage: Count filename"); + } + } \ No newline at end of file diff --git a/security/TP1/TestDatas/testCount b/security/TP1/TestDatas/testCount new file mode 100755 index 0000000..a4b6452 --- /dev/null +++ b/security/TP1/TestDatas/testCount @@ -0,0 +1,17 @@ +A +Dans +Par +Pour +En +Vers +Avec +Deux +Sans +Sous +Mais +Ou +Et +Donc +Or +Ni +Car \ No newline at end of file diff --git a/security/TP1/VerSig.class b/security/TP1/VerSig.class new file mode 100755 index 0000000000000000000000000000000000000000..5f8f341851539ef7f42da469daa6d6dcc5da539a GIT binary patch literal 2260 zcmbVN&36-36#u<8$xElxmIexhF9R0r7X%6vNcd_>3xT$Pfs|52rjyrnNIDZ|CWZKg zdX9T{>WU?9!DH$v95(J;d5-!QsQ-p|-%Jux$jU5U?z``P-`~CS>%Z$S0gU4-1#M{O z2&f1m#IWhUwyMR8nwgJZUA!-Jmmzf8Fb(%CL;JvBwgX{wa40G|p>7b*R2)~Vkd##> zrM_v;kYUBI*@o$6Tw7=>$uPPZMsGS=UL;~!VP}kdtW;hs8hSxgmW-l^IY!>p+_Eja zTTXK|NhsKaUXF;0&Dg@QxrJ>8UXq@QCOIGQy?bepYs1VZ2eTYo8Mf6`r^syDER}1a zDd@v?S%WQ-+M!}6b}@8NF^rG1Sq2%LvUarHRwI;Q}M1WVNfqx zj^NnOu;26M2)%3@ZYA!NgdV?j{P3wsQ@3&=cSTe(#8S|Y_oVNEnz?KkL*(#6W;~1$ zA~H8;6&ymG3$YYO;;n5OY6mk8$6Do#jBr+u+~QsSzL zYq(AltF;(Ctlf^#;AT|Zz)dRDidGO4mZ@v*995Di*?8BHGjO|B|K=&+n5&PE$DVws zi;`|PF63q)bo#*^l1-;Qm$EF^ac!+MBiv;x=Y%0^+}KtzuSJG% z5-}D=nISTvmGjGPOwy;BpKASNh@KZ zs5y>sI6klMyk_xMp>lk|u;;DxH;58K{JapuB7LUhPoDIlBE;p0+D-pVa)#Exo)W_{fGd%iTn4^%g|$VKLd|+RnhYVe?CXw{80Po8n#UjR}p;?o*5pg zV)qKn}9TU^Cs+Dt#- zI({M?uVW6sV4nQlC69OT2W^eNa1YDm@eG2!uSiqnFgW@+3LO0$hd5U1*MvvVY!;}W puVhO}Rvy_Nw8J7JZ7AU*`tK%cl~S|4)5WL6Q|SH~9^p$w{{yiaO0WO` literal 0 HcmV?d00001 diff --git a/security/TP1/VerSig.java b/security/TP1/VerSig.java new file mode 100755 index 0000000..e0a348e --- /dev/null +++ b/security/TP1/VerSig.java @@ -0,0 +1,100 @@ +/* + * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * - Neither the name of Oracle or the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + + import java.io.*; + import java.security.*; + import java.security.spec.*; + + class VerSig { + + public static void main(String[] args) { + + /* Verify a DSA signature */ + + if (args.length != 3) { + System.out.println("Usage: VerSig publickeyfile signaturefile datafile"); + } + else try{ + + /* import encoded public key */ + + FileInputStream keyfis = new FileInputStream(args[0]); + byte[] encKey = new byte[keyfis.available()]; + keyfis.read(encKey); + + keyfis.close(); + + X509EncodedKeySpec pubKeySpec = new X509EncodedKeySpec(encKey); + + KeyFactory keyFactory = KeyFactory.getInstance("DSA", "SUN"); + PublicKey pubKey = keyFactory.generatePublic(pubKeySpec); + + /* input the signature bytes */ + FileInputStream sigfis = new FileInputStream(args[1]); + byte[] sigToVerify = new byte[sigfis.available()]; + sigfis.read(sigToVerify ); + + sigfis.close(); + + /* create a Signature object and initialize it with the public key */ + Signature sig = Signature.getInstance("SHA1withDSA", "SUN"); + sig.initVerify(pubKey); + + /* Update and verify the data */ + + FileInputStream datafis = new FileInputStream(args[2]); + BufferedInputStream bufin = new BufferedInputStream(datafis); + + byte[] buffer = new byte[1024]; + int len; + while (bufin.available() != 0) { + len = bufin.read(buffer); + sig.update(buffer, 0, len); + }; + + bufin.close(); + + + boolean verifies = sig.verify(sigToVerify); + + System.out.println("signature verifies: " + verifies); + + + } catch (Exception e) { + System.err.println("Caught exception " + e.toString()); + }; + + } + + } + + \ No newline at end of file diff --git a/security/TP1/data b/security/TP1/data new file mode 100755 index 0000000..e69de29 diff --git a/security/TP1/examplepolicy b/security/TP1/examplepolicy new file mode 100755 index 0000000..799eee4 --- /dev/null +++ b/security/TP1/examplepolicy @@ -0,0 +1,11 @@ +/* AUTOMATICALLY GENERATED ON Fri Oct 18 10:43:50 CEST 2024*/ +/* DO NOT EDIT */ + +grant codeBase "https://docs.oracle.com/javase/tutorial/security/tour1/examples/" { +}; + +grant codeBase "file:/home/kmitresse/PauUniversity/Master-TI-2/security/TP1/" { + permission java.util.PropertyPermission "user.home", "read"; + permission java.util.PropertyPermission "java.home", "read"; +}; + diff --git a/security/TP1/sig b/security/TP1/sig new file mode 100755 index 0000000..34f7ab4 --- /dev/null +++ b/security/TP1/sig @@ -0,0 +1 @@ +0,fqkSpCT+L?@oouLaj]Wm@ \ No newline at end of file diff --git a/security/TP1/suepk b/security/TP1/suepk new file mode 100755 index 0000000000000000000000000000000000000000..bac8cd431c376585eb85922c351489cb2ce82cff GIT binary patch literal 443 zcmV;s0Yv^Vf&sTMf&nZB2P%e0&Nu`CFoFRe0)c@5{eM$|9d!~ZQr}9PF6`vz_7S&I zJnuvR!yZ3?woxW&MO{E5QTtgvjad4>#r3){_RE`9Y}bK1fE_e%@@8PSYnf1`q@SPY z1bYx7!cV)Y*Z#N08~8g{=fW4PR1;bjkuvsm^R6pl*DCMwA_Ezn z(MSQu0u=z4U{H@0BMZ#3lDUGS>x2vNSRC~Nfq?+`;h=@qn?2skysKO`xL3J(l&`z` zI_iS?S4;~%2ZCo&Syzs_)LBpFaR(5AfV4>#aU9g9&j~V&$fn^u7J7?Re2pmJ zqplt+v!->CZliw-`XM!9@%v(W0VF%jr18F}QILtKgWus=<(~$Ui)LPcdsQW50Zcpo z&q*o+frJ18fq(