From a2dc8dbf4b5ca5c033561635a49f90b676731b6b Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 23 Jul 2018 11:03:52 +0700 Subject: [PATCH 01/38] Add document --- document/Using Github - Python Viet Nam.pdf | Bin 0 -> 220221 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 document/Using Github - Python Viet Nam.pdf diff --git a/document/Using Github - Python Viet Nam.pdf b/document/Using Github - Python Viet Nam.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8ad9c8369b399b19c6275a1502e54979671c27f3 GIT binary patch literal 220221 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%0DLPT696byY^B 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/Ik0|i@o!?ZM78=ej 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 z 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 SKRD!6la3ocZ~*%$?tcNqo|C%( literal 0 HcmV?d00001 From 5158bb3e7070f762346075a26d13d711795d18d7 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Mon, 23 Jul 2018 12:16:02 +0700 Subject: [PATCH 02/38] Code simulation algorithm caesar --- huanlv_code_Caesar.py | 41 +++++++++++++++++++++++++++++++++++++++++ huanlv_report.txt | 1 + 2 files changed, 42 insertions(+) create mode 100644 huanlv_code_Caesar.py create mode 100644 huanlv_report.txt diff --git a/huanlv_code_Caesar.py b/huanlv_code_Caesar.py new file mode 100644 index 0000000..b22f0dd --- /dev/null +++ b/huanlv_code_Caesar.py @@ -0,0 +1,41 @@ +"""Encrypt the plaintext and return the ciphertext +------key: The characters to encode +------change: The number of shift +------plaintext: The text to encode +*=>encrypt return a string after encoding +""" +def encrypt(key,change,plaintext): + result = "" + for c in plaintext: + try: + position = (key.index(c)+change) % len(key) + result += key[position] + except Exception: + result += c + return result + +"""Decrypt the plaintext and return the plaintext +------key: The characters to decode +------change: The number of shift +------plaintext: The text to encode +*=>decrypt return a string after decoding +""" +def decrypt(key,change,ciphertext): + result = "" + for c in ciphertext: + try: + position = (key.index(c)-change) % len(key) + result += key[position] + except Exception: + result += c + return result + +"""The example of caesar algorithm""" +# key = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +# text = "TOIYEUVIETNAM" +# change = 3 +# ciphertext = encrypt(key,change,text) +# plaintext = decrypt(key,change,ciphertext) +# print("Text: ",text) +# print("Ciphertext: ",ciphertext) +# print("Plaintext: ",plaintext) \ No newline at end of file diff --git a/huanlv_report.txt b/huanlv_report.txt new file mode 100644 index 0000000..801cb1e --- /dev/null +++ b/huanlv_report.txt @@ -0,0 +1 @@ +23/07-Hoàn thành code mô phỏng thuật toán Caesar \ No newline at end of file From ee3f94c3f54800513881d829a550ff36db666e1f Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 23 Jul 2018 13:10:44 +0700 Subject: [PATCH 03/38] change --- huanlv_code_Caesar.py => Caesar/huanlv_code_Caesar.py | 0 huanlv_report.txt => Caesar/huanlv_report.txt | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename huanlv_code_Caesar.py => Caesar/huanlv_code_Caesar.py (100%) rename huanlv_report.txt => Caesar/huanlv_report.txt (100%) diff --git a/huanlv_code_Caesar.py b/Caesar/huanlv_code_Caesar.py similarity index 100% rename from huanlv_code_Caesar.py rename to Caesar/huanlv_code_Caesar.py diff --git a/huanlv_report.txt b/Caesar/huanlv_report.txt similarity index 100% rename from huanlv_report.txt rename to Caesar/huanlv_report.txt From 40fa05cb6c31ddbd35f01f61f20e2a3da0d3c080 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 23 Jul 2018 13:13:03 +0700 Subject: [PATCH 04/38] change --- Caesar/huanlv_report.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100644 Caesar/huanlv_report.txt diff --git a/Caesar/huanlv_report.txt b/Caesar/huanlv_report.txt deleted file mode 100644 index 801cb1e..0000000 --- a/Caesar/huanlv_report.txt +++ /dev/null @@ -1 +0,0 @@ -23/07-Hoàn thành code mô phỏng thuật toán Caesar \ No newline at end of file From a279138e09929f80fdc327d8e4ecf14d9f60d375 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 23 Jul 2018 13:14:41 +0700 Subject: [PATCH 05/38] change --- huanlv_report.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 huanlv_report.txt diff --git a/huanlv_report.txt b/huanlv_report.txt new file mode 100644 index 0000000..801cb1e --- /dev/null +++ b/huanlv_report.txt @@ -0,0 +1 @@ +23/07-Hoàn thành code mô phỏng thuật toán Caesar \ No newline at end of file From acb3d74878fcb8cd86f262b13d4cc90b088dbaea Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Mon, 23 Jul 2018 14:02:10 +0700 Subject: [PATCH 06/38] update code --- Caesar/Run.png | Bin 0 -> 29922 bytes Caesar/huanlv_code_Caesar.py | 42 ++++++++++++++++++----------------- 2 files changed, 22 insertions(+), 20 deletions(-) create mode 100644 Caesar/Run.png diff --git a/Caesar/Run.png b/Caesar/Run.png new file mode 100644 index 0000000000000000000000000000000000000000..209e57af8628fc761eb9734403050e49abbf6070 GIT binary patch literal 29922 zcmbTe2UL?y_b-Z_A{{}Rh|;S{HxvodrS}%3gbtziq7+f8(t8X=kQV8LD$+EeNbeve z^df`~fs^R_e*b&Ev+iAI-B}AK&-2Xenb~`0?>&2d<2y}tMN(o0VgdpJQe~y*+5`mG z>In$0tP@_vy@7>#P2jRC9@>gPg7QA5HQd8>TUj+(0)mQol5>k2xMw0)B_j_40g2<*;6)7!9EQhJxlJ1A{XOlejYAxVkF zRi-c0aTVw*n?il`){57yT*%g}_a4~8n254a*NrNy3Z)*`YIJ=Ik4CibxPHA(*uhrg zpf>{YnyB%avuP-lF@dfe?GJ-Ticzy?QzJEw=GYLX|4AdSHJ5+=o9vhf!DRoYxUTi$>Wu;|4AozlM?u-O_++u#- zadbIoehvxdxBj=eU%z|{6*-bx*WuVDmXKpC zKfM0}F7tbhg*+s@p5=0%<;&~lhyB5?+UZ|(TkvOEaXmM&wBgsT3>(V``zKk!ajnao z#s{N$FZLkk6|JX@=4aPhv6-!yv({bQzay6?f>A0LDMbmFrA13J`v;jj7c3!wCFRIO zKV|M{j(g9cXO5~@d|iKt-<<}QL%iP37+&JqE<_LY80TBxf{WbxCv}6m?-d@JN&WbTB-{QSoyZ_yIu{BdEzOl!za_vPGsPG$wN z#(0*?>N5?m#lxp3X}}Xh|7r^_8(HoNH>SmZ1v7qdH+&Czu_1Gie3YBedOjt6RN&Kk z9xL;^MBt}ATJZez5*vR$(eIypPTu-k=Jd?`yjKP{$UKS757#S#T`L94o^ho-I3|aZ zk=(iIyt)@bK}Q#6^$|eqkzVQfgUwTkd1%!_n-&4wljw59BrGqo_*iUf9Qkpzv&??8 z)h@8qMZJv|W_SNrxLIE*!z;}{o)4Mt8eE`LL#E(C6S#q=x9*n6>_)e4e7n4m!A^uM z%AB)m{g}JYb3z`xb$M#rvSA>s>Lw0bDVVdB-aY`Gnh)pbQ!*qQ2JNZ1E77~F+PVC^ z^NS4HCy$Jz(Yq%Aq$abe6?KVGaw1fg-KOCEY{S5q8=0G-p#8uq=3hxKmc`@P-zRgC zHPmf>v4!K$hGMYXwbreG%hV98%rWHhrHJB$$UBUNxrd>gO<{O|!NYhIp1h;mQ4vl?KH+KcO<>>|8k)+gU&7K@WfbXfk7D zlsSs2E_M5t8BH^k;d>#6axzEgxr-B-69bv^nGlW*o{N6yIXdKsI^G<+7V`VrWxHU= z<=jQ*&gBQ_Wedy2M98J!r5tDKWnD#n}>P`Mr z7G7{52Wmrz)ZLKW#8R?WB&YC55w-dLXIEFh)I(>-|L6{g*LB!=;pJ(6;6&ZUddNv$ z>zeds+2sX}`6G*TK|?a$JVsUr$A>$Y0Nh$T*&V$KmU@0OgWIg|ywuv62grCg!JilW zF*$8J&x~$&H-3ZR&HVf8MsN8aGfy$3?&sOaVAk$FtPL#U7Y^FKTd^h~{!f~{AOxPM zN}nW}pQZ-yY6Nu)o(DkB=R+_hm$fa1OSt8Hd0gDOm&bBB%5ri%Lw@-~rVe!e`O?AZ zb>%%}wsqFxN2?k>!gpXNe4o*G{nGl!YdXjK2SWKrSZbepIDw~`<^1_!MM{#udHK>B z`uLu=YW;2hq}@YB3gp~gn9LFB+!+S1*p54nu!Ec}bGxXyV{Gdwev!-_*GUHsh3q=M zyIiZv$ohBYge_*X$Z~o7D@Rw?@oTW2e+jn@h*Kc{!&|1<|LafX7d7!0*Kvl1fPf~e zNVBB@9h0CQ+ClBD4 zzb-Ly<|g5-{Mgx$b|HC<_Z{a#Xc5He>f!cDES!yi;EPNlATO{gIBe=R5b;aRe|}J0 z4Ys+uf5Dx_4MILlx~?&BiQsBR!3Y%K#|KM zPv(L$z(f3Xv~`eBoQe(%qbwsInnWF51twP@gT?2mlD}BUUVe z%?wPRSNa_V2ic|oo~JiaiB$KzpQ%MmLiWGyeO5BMA0gdZUqORRHs>k6ZUq8sWr)Qy z*G+%^fbpxE)v{)jIJ;qv`B5{}xQ&5_teiSZf2v?PV?A0al-9Q)LW(by9dG(59ar_lj_#IhPA2sF)bbi_o_9f427z*>~@=!7&0<&me*r0E%Z?aT& z^=o#IBjELekwcg^y+@9(`|NgH<7|zf!>s_*X6O3^UpF4HCNWfn*E&NcjDh~sqy=QR-hD39|J5G zCx%ZhoVL(99|Q&EwqTHY&>3iSz!l37PS#XJ&G`G^ z+20esB3(tA_df5Gx(h*t9AU(LkD+FlPNMasrDho&ss*r9X85}IwvJ&==?4-m1mEJh z|Anu>4LeHh7d&-?J`t54hRG@pt)RMKKE(M-S}@_-iW=*g=20*)lZ*~>UW*WYbt)_f z#oYnRE%tn&4&9p;9E@QtNNY;*e?iMCKTE-A@=<6K(DTAZBD=~dra@a?X(Yi!>?*<6 zE1&Nz2c)o&W~QpAzx)XuHV9*Ab(E`y%{yRfdo$Mg0r8PC*#oR0x z(cX!;d;*TWxFka%4KDIgo8%2DnvQ)TW?p}ok)7IU)E%PcM_b9nMq`r?by}@bm^~b= zm-e#YA&KAW(sVDbrXTgDJbOWimJFmomLVJn|{8fknIuh;WW4SYHxGzJGwq?KWk;V+V>-q!SZmaay;FX5F9L z6G7a2oqHRb=pzcUt`*UVJ7sUgvbJJG`>) z7dS;#6TSYEJ`qOTl|gFXX;YIXGfC2S#K)Ld+q5;pNbpM}odPLv*w!as2bS< zW;b>2-nkydp=uwBK7MNlejJrDnk^Sf^9d>3nqDLJ(~a{Lo`>{V4>&8nGF>^;{uhPbtWUS4@gf z#;?6<9He>9JWNI&ka$S`#^Kn%re5I8zlWEo?o1mI;IQuTk%TawpuI>5#deL z%O)fEjm+BSEp?pkeFDm3tQ%wqF^9}4_D8251Tkw1nlh*<8|PKEKAkzc5TBbR=N#ZN zQC$yn%>Xect2X*y`-<>T2Tt@;{m?~bsg}Kn?5Ssh-r!_U(h;PY-^q~xp8N{93uU02 zI&LO;LMW~8f&Al-@{_gKmg-|HNtL%P|!`!Xw2k`N#Z%$l$KnwC(7 z-NySRu1*w4`1Pu9_}?oxfG5e%xUS)TX3>rCmL@xkq9+_eDxz=vDeDSy!rHVjgzqs? zApaEa+|N7_)*p7AW|4MYWU=JkR4-|m35r2_?`RNDF+i)_J~ah>oV2L^xv{IKowMyI zi!@-}Tu)x`S<^U3-olQ!x3VWchBEsJMNKTIv1fay7?$bQoXFs5$2`{If^TR2!c3OT z&R1#{(FV!r`(GJZV4aeawlSS4Lpz6@t}rPx^e!9!Z2GA#RzfcLF~fgg|E=ciByZ%? zL&VCwyv{PXikg4oV4~4_w4HCMw_(1DZMC+FO_M|~?+UJsuXi!w?iW$77rZL9j70f# zxjpRf4x9LL)?P^HB+w=zN8R~(ot4byYBi<94N`(t)lW>jX!ob+@%{7uc=E{H8YnV{B*182!S{=C`g;@T)Nmo@y`6xP&ifQ`YXY@TgOoAX1h%O?wr$cILd z)&M+@zmoNsT6S~!Pv#0V$yh5XCU}=uI2V6E|ED0678igG{ayQd zcMeeEWcfxx_KhPOM{>P{Wf5YnND5?}de9mF#F0b+OYWY)YMl_ii<@7sgu4@-JnC`d z@XXac^j3PZe|l&`pCd7)n81Tu?zt$$cshC4NxvZDME=4fAi`|Uao4$$JwV!gZVvI= z&ZA<#;I0nVJ4L2OTTkvU!+J%Karc>QiNVS?N6%5hSxzP#Pt@JM3A^-tiD%Ob4L}G* z6)6jn2EjV@9qs8vClt0cRRxn8S{ihwvQn5ZMotahL$34a$F&x@Lw!`ynm2L%98bUm zN7VFv>zhu%$888+O55@!!Hb!*@l6ttbs7<)>xECiRRRY0@h=FN!Z9HKKi^#01Pr*& zq~3wm8wf*gZC)nf{9ytD(=1Kz2YWWm`YzvF3BmX`c5d&4kkMZ%c3+QJ2jn%6j(T<9 z{4=A!$fP#zFBk$(t}k%|@p65Mb5-GNNjjxTjHAKdP2@KN3c>Awv)PoDc@eI-&L_>B z>;cU05}M`F^DRXgEpcp12XG^0Eqo(CaXT&~(9dgS3Eom7ICtx5%Nze>kX&LS$f-GN{9_&0Zdt+|EQb=CMPFTyl~&0tQm$y;CGUsC#6Dv6e#yN>Yr2mqs+@&4hPYc4~IID?FRd~iNSO4F}yj>@+ct6lvxxC?H9DZ|7NJG&NHBdg?HyrjZDp z@OytYU((rtU0VB2qloxSI{;k5ck+(HN?Sd*!g07Q=|vTSHJ_0#h|s%n#5 zRq&0$^qu)BZD;bM%Eu;jtsH;k{t7G0#bV5*=vQn)2SBaW+=t)%kC1N#w0mGxKHN7f zF^J0Nwmp-kjID_-lsU@!an$L4uv!{Xv={L(c)q5qMN)d24u~)pz;}Asv_W%J1ZmRz z8WOYIc(m#1#m6fNsP}zer(Jlm{KfdxFInG_uY4ymRo%zj!kNF&P^fN(mkwVw!?ap+ zlzy)FbqbeoL?yAQUICh<1hb$0ZmX-u^Pct+X~pQCF9Kik=aPGbyXKF`G*$gmpu}5) z)Q?{a1@oO{JthIYdU%1in&OMyT?9tBo2P9ngsjPj-1CuvnHu*+Ji&D1zcsqTfC$4_ zR|{%j?!`?HliT9;Sl&7U5B+X3E$~b$vJa*lhEj-XA z8&jEJ->!1z0A{9DnVuEf)EQ`kVO<}E&Ol=DKOLlssDxVZ-(4!T5`;N9xs0~c(z3?R zeNwY7S)g&Aj>)BWJaRMPGhp0Fj_0Y1G?A2yhGJ4(R(*OU;D z{&y~*#dT(TV4X<_wyF&izp+3|3l_&$XyTybNrI%*x#@_`bZmv!(kuM6S6BI(?}FS6 z!Xc_PQdujma1o-+(R8&re3f6m_mlLvSY9e1f`#TRWdD?J;z$)pqC*w-My7_9daRP5 zkEy6Jxh)H7!NHyK`My_F9LxPtM=*T#ullA%nze%%O?MA>1qoUP8#wyL>#_*?3+Iv8 zg8M!Hkn7=sFLm}s8Y)Y2Covn0!Rj-2BL@CXL!DP5NS+tuUr^5-Uq826tD;@G%S-v! zq7vUvYUkUzAbGUh!vz>LUaFv?{9{@R34kX*g^)riAV~oT`1PI=>>pCUs3P`8ybixn zYSo=EpzkZ!W!dD=ATyphcRlDDwW&@O4DiDa$Kb{Ms@**u=y$N{^<@QI)gqX)G^NUw zdi{q<|E z%+Pdht_(fV@qh_m&6@xgNCVR0G7s_$s2VMMbpBWIzLIkt37mPe4X(XJt;cn&k)RE1 z+?)?>J{jRFk-hHW+HmCC%oMZ+R!`0ydE!*jU*RxOP$G)~L+2GCz3zwKqB{qhV2dYf zF7!J3p(BD4clS8fI9R^zz2c{3`|gO@JQK+oLIHq?(NYh-q0@)bfUF7D)Q%R(jBy@W z`YBlh)BKoDRk=^7k>$xfc}}7~>gMYeBF7}`)tLLjkkNF_p&I(kTYf>=iI!qE2U||C zrUnz48PiA^oSlP@WoMWoVi+pxTgLh;rbn_9`#_Fw#IzJO8l(eKdjd}uPDSsq5(OeM z3@lj~RCPE$&y|ZAl|Rh?JCZDd_V&O^0;`}_SK|J+2;GKFDiB2i zA$nOwckmYcR64cd#*erQqcJx!51g_llE06O-Qc*?c0Va|T}T~nL!G5e+J6T*rCJx< z^~skx+q|MwSA8ar-TOij_&`{$oC}8@~h5Dth{o=tl^bb{%f6Sn%k#YgXCH##?k5s%o-uM zK)@&D(B2s@Ij%GcB$YtM4kq#c;XW8~z5xqHTdU;+C;Bb4Xr^3ehQfDtOns{nhNs#w zpS=;N-%fKc9AJ_-?g$%*FiR%}88hOk5r2xPl+(?oa|I$sj3*=1L;--|K@#~R9co$n zD6+H9YQ*5~w0_GWB7agk(7nZ*bnhCbtBJZ^OalEXr?bP|k$QvcDtJO^KmLw};Qs6X zms$Ms-ZBOt&t@a7u?(GMbay^0wiS2u-o^$UmdtYQn7A22eS8&0!H6F@8ric1ZY}*! zZ$E9`sWYwaKUOzfF2*e@P9STN&zy`QBzSsIfO`Z&sb9C|x zC{eLhk1H$Ar$~dG_cr{}n*#8<#EzQlWeL~Vxr!MN}nGUXf`%Ci&QYhpq>xP00>Zb_{%;dyC4ZlJrVdiZ{9KW+;y zkrK_KJV;(kiVE&=41Fp}Nz$vbJEzosLPfPCW}5nyW-A2jAM9@`gBYDHjoeaU6p0F` z+J5g-B>*{%F8yG3*&+@HCT7IYYk#N|aS}Xk5W5}|4mS`m!YI10(b-Pa`3>~h#~WZP zn(K+}2OO$ar#sk9>jlCWNzkLp($oPAU%BgU0ulWe(k8VBA$6zsMr~1nC_;3V!kstm z4oSI3*qfO291r3iqNMIf6H+(+MNbcoBxjJ?rlL}asao7q<@-6~YDd{Fv_yt0&WEWZ z^;SinlRkYhHC#Pr%3bf+4dlMiP0%dIrrN|eYx<+X6%|ctpplQCLYhmf%^@yy(W6fL zh1l8zX2=!;&KGIc)?6VKKsQ4z`LTwIRY;^A0wKa&j@@{Zp<-W(ej3ni%W|-{dQ;EI z#J*vLQ_QpG00^=uN-D{ltaC0m>|S>-gG?>gkTNQEYIbwfny9@*C$B}=#J??>RXU|e z@CzZfZGz5wzVA1ZmAirNAN5Q9;{7Y=_cG8AT^%u7@|-IMdh^C^6KU%)-@Pb!ScV%e zG6^Y9>@!(Psb%62>ge;WqA4=i4u4^uI^%<0Hhug22bv>G9d_Tt%<%hJL%VIk7{kT( zlRc!1m-1vA^jrfUWfm`#wW(Ebel$GhD7dIsyz_j=2TAIeJ#1%m=oermM-@|-|BzP9 zl-9PgwZHd6qGj}jh;vOqklbuf$s;n(GcL+xBU(G|?b3nD@ejb6FZ+u+R{ZNA{nVeD zTf34{Q`T@YLIIx5~hY&!Ywo_MmW@LJxA;ZRyLgSjuP$g4V4|B`kTnj8-Yu_vhcvNY9biqdID zW&v$p(H6cgP)Sd|^Q2+jcQLWghpVqy`hx1Gx@p~;=8$}yYH+bbt1=5!B38X1+y-QND=3=34l*&o!YG|TlMo4Zgmy<7QJNgLY6MNC^xjV&Qe?*F z)3kH=*+r|qT4blw&!xY!&m}z93OG?={^=4+2HMyFBaMGp6#|%@*9hfjRoBd$F zG$ms!&Adu>-GupM8h{90_zA)c4NBTib+m<>A7}v9+2ChR0o`maX=+j+HdpgWv>5Fr zsz=|?jCUZkcL28|USetiV5JeH1u5>{W#$^9d5cWmkp*WV?bPY3tAeybMhW6SRPFkn-$ zPg1sFGWYwOnp4)Cy(D`nbX@tmC_qKdJ~Uq!eW;&%%8%_+bV@d~R3TA9Rvlp9bW$iz(Um-9D3a z`}AU8i#anQMx?UxY{D$r1SA&NHT;~45x`ZGe7$_f4DkFzl2^)(^ln-GeVSf9Ps?wS zsb$7V56pf(rOU!R&6}ooPqDdr5VDGmaTrGD^Kd>q)QG2N6p7$0yQ2RQH$M#@`c0Nf zzq548lMPHd>P4&@Yg~$i$zo1zcI8lF5%kwct3GD}Lp!SYgo(o(rkYrCqEy(IIK{C> z9Og{yTI(K6KOTSKYmj#Ah)q+CY<}Yi8e>TK3MJW|`|0@@&K8ZG-Rv-|smx5ONO|q^ zHC$74EIQQRI`Xw)cuZ`jO(`=v?o{~gJoQ6&zD1_}2IxI@`bMc?9DjojQ&2kU_Z$s3 zvh$i+VrmsG4_P270*^!>Ge%ZDPNWC0xiiuHi7>Q?Oa3%7AKj*qOl^LmhJJZgOeYAm|aj_VXb0)2k#T`3(7r0;5YmyHYD)N?SM!LKgI)9dh0AFhfd53-^9UIsn&3_R5OQI{IK;{zZNh8#07d&tMsRFQ6` zG|JCb%v)&9Ayb@EwfzfzlwzAuZ@OZ*+XrdfUWCY3i~@Q6=(ByEEB)MactSjT1#i2gsd`Kn(pGW(A!C}0 zy68{s+l-DAfXgSMG>nTXK!t9PxfSP)DV7TP?}iV@l#s>r-IaB!KTM_yKTx>U7tbtP z9IP_V8LX`J9YmDL+ga$@qeWPgXC-%oUJlvvkA0`}3Qz|q4rE#K$2OUvQi4n6A}vS1 zbWk~RNeDi-9j zpPqBqJ)r7^3^{37Fz*|oj?9DB{6?9o65GgH9L$02kO>2w5m7BSbubDJ_pdkaFfBK& z&^eKrWSHL`^nd=toKjfTVYZo8@?Rcf^81^Gz{T-_{5?XUr=Qw~NwO7Y7dOdlA~6pdUD!J6>g&I~3CM(%8b0JD z%SWEtnwiUY=k(tB7Nq(V)%nu(SlVHdvMyTM9X$zhUDZiARVsKBBSpn8w7=jHoKn;9 zbs*kL=_;g`lt9RsLHevCc6)T**j&t-;MihOX^SG42i1c5|3igR2wCub;0rUhFj?;C!DEaA?G zXouOWR-ijU#5?f@puEjhv#U{U>+h|-2MU!14WOH4O@jWH7z9$tPuiWt)2~@=g4@i; z$ieI)V;Hn%w3VkTDREvio@JJxI->E?klJRg`ptAu-jupf!G^oJp8CF~SQ>Ce#oq+(`E%&genvfRvkt1X$@d<)}qXmpcc zZM;Gg5>xw>i`C4u*|lQ=j+q?YNaZCm-C@f-DbD<45S*rbNQoLmNjq=>wcz`K15G0c zq1!hQ}(n;K4Q9Su?OQV5~Lf`6XCTx0{~3JX|hiU3>Ap{8q(d#XW~S zksJHJ(xm93NRqU(091o}JhTQnhh$lT9ua$N2lhm%Jxc|&>hE1S#XaF7J933xwGR)0 z3iZev0-KK%((eBzKOd>Q^NU%N5IukP9{XT~HBdF$Rq6&VNJ(3tIjwdgv}(Ztq-}r7 zb$NFDBmR20d#v64KFhS%0-~ARj0AnrxScT*Mfjf4FWay;I}N?iCqC`=+tuS=1$DWo zvls}$s##Zl1b?_iQ2*@Tn9!`#+6|#NS7Ii6z3mS_hhlH2<92)S_DrdsNX<7o1b;#) zR!pi~x3Cr*nL^fK$&1A3MWT7-|>)0j4f)*$W0(2toR z5rPfu^Ri#POW|uVqrd$yHf|BLBk$yI-|Kq6Y4O~gq{SE){fTSpigB+OS@vmhHIUz&ArMrsIjm1IP}{to&+uN%D1{Lg!DWO+8~kM+tpfprWI!X!MbV4SHz$=^AyIpoTZKhrYukn|A=OqXVI>O0Y%-Dk zcRKl-l*??GVD&|uo{`xvYj=6VWxbD~zY6Pic{WWtLiLM%8AF{eSO)jc?4YBXT>&ry z7i4C0Hfu}5GkQnmPW#4rQnHJ!%i4FRc>;0o`HSs|CQNv07puza-zH(pdqs-mw8|q= zvh7xq2IESWe|=^@-VLvmGAD+W(u+;{JZ|hi-dlCZ08Wc+o&2cb!G})07keZ2ke`J| zu0IIs=@prM)xP{ZI>OU*Q_j5EJCPheNbdOexvy`b-H)Dytkq;O)8u=PZx2vasFO+wVPc@Si?#$HDSm`$K^M5)B(A$p6k}uj*`O+6Su@YoD+faLF_k%s5@<)-NK*AEib12Ls z(;1wcXjM15dIW5p4t_UPn_n|}w0=K);l(wTUl!r+sJ)aeQ@RY5{dbJ=N8x+As@{R4 zyvk3u{blaJ9@c*C}GE$gD-+{zFgl^n7 z3nlvTa?>-cC^DVQ7b2(A&7gN@|Idaeoy%v+@B4yGU3YS@kN(&_t`K5qe4@|}L!s4uDzH6y$h5-m72 z0?1hUC47?YTpNxZyFOds6!xf){0(z&N}U${Z9l+sO4?FCGr-b;8s`TiKDEz*o4r-DBbdG#zH7x|Ek5NFSR zIgGhBp~fD|jF{0i^SO(tJ?|ghnv)fVM;t|LPYG^7`lWN%-YjCvAuA8&JS} z$GLkAAfws!U|>t_@cG#G#z22+-FlnUu0}p7=VX_Y1wQ!N9Ts^~`>QmfGM?e^dVN&p zXET}=Ufk)!eC(sjh=@%cw|8?m_&5P5{UI^>z6!DNltC<|cf9{Ki%Ef_{fNE0*p$E$ z@8F<5T`oGBIX`?)l$gx9Skz{j$;0;o(9A?&8+?#AuFn)!YFu1ZX=wt>vh3V@THYE% zVk_qqVJ1-q*LtfpamJCbSJegR<2*$l29eQrHLoYydfG%bC8F1(qLoC)iUb`WRZz;* z$P{Li4EGzwaz|f}@(E3{&)DC{wAAqjw6AY$NNlg96P=CpntRv}D3AkQA9ALlo&VNXZPj7h*-8xNvMN-?yo*n780Yr5;T5u0A;as1qn23nFW z82-%U)<0W#Ra!-Moyn^L>&a2TpStw6Pe3mHE6VWG`a`-a!x^4gL;A?Jh|1*e04^b@ z6ra{_Cy_kK(LS(~(UcpSevYOLJ3QieW{S>9W?*-r#Sj}B|2*29?b(D zejxunt=O)sj}|F~ij%t0tB>}+K264F{n|-aOKYbOH-`N1$}u=JB#@B4E=Mb8rtgdh z&6;mi4(@j=5Px_^jQ%1We&a5VXg7L`Wx49L5H5(+`7EfTT1dGyO#?!ay0$lQPaCmf!gNQt9E_Dz`tO|fT@W};Tq zvK#s^VtSUZUC1zim_e~>S{Zr<@_N5AdvBZWv4LSE14+h&e%uW1sGu~P-$bg1PQ~*f za_WV4qj~rs9P&jnFnHqodYp5(yY6{d;^)=8*peVz=w14@AkzmPT{Ch#t5=f8xB$5y z*P>uF4}NSuFh~S-fDhG|Q>%^Iq(c?#Qvls7aR$t6sWZyG+!Be7HYO6@w8(64fuF?Q z3P2!Rwm~o%Ck5SD9`MV{$`0(xI572gB)HBH9^Wl19t_98vR@^*FlJe&-&x=;@EtN?X64S!Syme z7WnkgO7BKFnQ(~EhaJ%oPyjRTXl+BMwo`0eH`N)X*8HeY#FXL0dFf=$4Z9>j;%(CK z((hRUX{JVMMI~zXylw>7^(?|Cc}<3=V;pCVYYS~NGzJHmUhP;BI_k6Oi+;7J zP08rR5bbFuGT5cm{*>7HeIDj@xs`*mU;1x zlDKfDk|1yrbX~ZuD(EsA{M2tI$AHAAmlDQTu}ezUnK12pYvf%4qDrOBJtCWcv5LvG zCYq(kIUo*Ard<>y^tLClfa_8lhXc0bSsqr(&2^|ylQQ>?sT(Q1*E1`>m(~1}t;Jo? znyowfh{qR?g4z0ET^UDi*1+OyoI6vp*W?}7SFPxDDpV6D zD8(kAO*>riIdt2jRfJ8{U}ZE`3*}usWjJSfYZG@y^vd8qAzBL` z)UAj6`yoEZQZQQU0~`;hP3By-qZ7@c6dNYrCw9Gam@1Zoo(XtU^tSDd`{F>-H`w#1 z7^ICbrSu=Zk-^JuJv2hV8p%hKal(b;wnploB-fvRXmS*@ql<1<%y`Jg_@ zs1FZ0nK?U*mj+r!4#O-?+FY6p^m4}!s$dq^b)Nm1?#+oJu zf7ld*bJb^!Ote3GD|V@38fWr5EZ@sQRM7(h^R`1}u(^c|e)Gjkw7!%>XU_?7Ro`F;6 zSvM5#Ah!ax0=slkFHoTBA3+TlZ9bpw6>DY2lUp2g!fcW_9jmL_gHSqB<7KFDO#yxr zN1=e#zWHi{ z$ezWi5^=>iuB7%AQ$?4E=FfC5jN`PIM+{wZwl&Abc*Cv{f)!g88YN0S`F4iF z+SrBIoRsi59P_!wdB-EF6sGU@{rq}T&ifozjDQn?AJUv`6+=2yLW`AyUbegE&g+5N z)E%q4Y7H4nv}Vu#zlN2tk;W2@bfgRNfoXcmiRJKxGy5#Auw3G++<$iDJ1 ziutCFw88Xm*fF;x^#hT{QM+$Wk#T6|fJZGr`49(|fHaL2MX!}xe%@+6B=5j#ak1l* zFc$I%|Kv4^MNE&k{t6>dV%w84n>^2@A=@@)oI-k$>BVq`{0%^vmRQ8xLYY}!#OBS1 zBV(^;j&Ls6FH`YyP4DlbloMxJ=7S2iJl;Rp41K9Hnub2T$#Pzr%~CPlM$+;gTm|AU z4>D5d87ZLK)O-ka{N@DRt(`2mrANZEJ@t)4^sP>F=b>wKWZ`?Q>uw{0GZmD@fow3Q zncs6JZ{SaHQhC7zFz{-B=@ua6bY~En9aI776?j{MgP@_YGpF{8Vp3+3xFaNk?XGlf3RS*}RC?Tsah?CGPF3t@ zax@;`2u2v9&Z2QWt~U(TJcKOyHw-{6vHJ-ThL-P|dkk^9OcjT6IvE*}!35VN%~?dh zW4Cb@9V@X&0zMw#8x`>C|qy! zm&hl3#+1an?BslSMg7-q_C<3g9Z|Rvq9y))Cc^o(@}zL{g+R{kaj1ULU}IMoY`gbh>Yx3fwat5cCI9h$wEYiu)MzR}FO)~0H`#|2KV;7|?j!>r_1}J5?7&AF=3Kg{kpqW^3!5N1cfNZ$ zS^BEELU;uZbt!L$da&6GXF9eO2;I~B97u+KS|#=%A`CqN^mBwWt&gwd7zpIO!NIu> zFxINxL5BkA2alpRrgX#q4-{$Tzz4GQpCY;ZJg7GjJYWIRFn?;PjEgL8c8fD++>cbCPfpK9?00NCjLg955<_h)TARK6ql!E69+y4iDU z@q8sU)=As#E^NAdr{-96B0=hZgMS1AP*CH~#W1{tUdAjlfE6j?a2_jLRX{G7LA{or zn!Zrnf3G6v7T$X8Fhqq4UqC>e3qa{tMaC<(Wd0YTSY6*ikCq=F zKmO`a**pMp+-R^0`-@nO3}iY-4$r?A(pJ-P+9dB}A<bOcF3NZxG;TDBvIX`v z?J<=v;0f+f;Q&bc3#IgE$-`$rM0FMpp=^Nv@aQJ+ zbw7!*LG-y^Vtvpd4RY6_rEvaA%f=LAE4nIhTlz1EaF@Pqh3@ekl!FQAjqMqp+{YiC zL}<29)%BCfnQ(VyUw?=;7r>KRjIsvlQ5!#HiI`;TFWH)>CD&lhBV5=6Jad+C4*ers zH31(5Ts#s-;@TfbC&9-n|CP6~6XT$aBa2lbKdNl2f+6uWUZVT>8n4n#^EE-`_fqS4 z;@U^;cT{yA{BiaVBMa!-dAFl}JAbZ?446nOi#DhJixs=LpG3}|lqWe-7M+dWH-2w$ z?LR^eYo1307bsDbj_}G4CRGJN-*!!Q4nYI@md-2@{+^>i-IH&Wt-p<}%<2U&RzKGXdTWPgCyXFq=w#H~Bmi=wZl@ZBi)_p&dJFS1oLWf2mE; zDNUc+PR1Dt0s=JwW3G*uo#kh$G#Nmn8|B4=dl4gkr+ppXRyI$`x%b`}I{G#J!H3$p zBY+Y`OL9Hzyg@LgjuKVPUqf_*wI3z6vX_f-0?+>oX^nBiK}7{$_~f*sBKs)EK9>6}=1ybM16U?&DQy3{Mb&lzEJfdX>` z%CV!=Hj9Yk`q?jtJ-j>eMAB+3u9=K%pJf?Sh1%9oE;X@z`*~IQFM!p~{T=RR!x!4y z?xPi{nxdj&8x|zd@4FyF9F=-*QKBvi12Hvc_53L%u}4V7uWtT#p30Skt@5u_3$J`UC7X5CjU@WXAH*Ukk>n0i3^i5Ho$0dR4V=1- zzbQ#TpnfFn2E@?M`u{a8l0+D6YO2)+?lNeU!S68WP%)7JEzFMll?C{dLT zXV!<7+flNk68jPEf$!e=X_@bG$h0mz&~73q5HV;*pK0Q&zvLCr*@xxX@i?|iy7 z4$iH4mRqrJ6zvg{{PvIj5x+r!v`F!}ym8mVCW+aef6wsUA3nUoos9&p(xd5B1##28 z@|j=0=0Bud-vLk7p9ajoEt(39b$_34qAsLC3|9LnYDH;p6U_6t6(Pb6cB!>|KmFS>q7mT zi>tyU5v?7Wd711xt?20&=Zo*!<$@0u-{EV0;U`4r{l>xi5dKV}O&G`z8#%mkd4;Wa zXmOD{dNOqh_EKEH#nq-3!2SVY68Ji4@BRgmKDXC9JIf&>L`(l2JC+hw+91@+ayGXu zlwM<)A?7J5GsAC%RQW&08^-ajKJjF-U z8s}qENfMf#czjyjd=dS|-GiNHEzBSYiW(2KR=h0T5Rb&&4!Uc{oyp&f_XS^N$a0B| z*n0Rs`8Z$= z#}dK#=5tS^WlmmZU7lBdP~#zcnB-+?cvz`4y0j*i&bdtjR{ptra(dAhp_mz6AlRAa zklKj5hR~Z&i%dj61$yWW%_rIg)dem5G3!rXkbonLo(ld7cmL};c;j7%sO>_I&?hv^ zhdP+klU^OMXN_ni2Fs9uerERn;kfeOJ0iIMCFHO9 zfA-%u6|P|(LFXh`A7lKUT<*`lkB+4ih{_HKfntk~ew^tujjk}~eDE@Isa(-16nmDn zQ$-f0zH=6-wk6a;oq{OFEv% zYpOc|%5j_`Ls3S!*E7>r*FqVs`e)Fy^o7$5E9^<;t?Wlf6P0C`jUz{2q)nDhT9{zx z0&p)_9%f4AHq&^T+D0<&Mgy10UMf*>lb|TX*+?mKL(D2#O%gnWEwnJ#st}xz0}TOc zTbB(5g4vX1#zpzg9>a;&$Di{F^U5C)jbPZ>zC-E-UUN@gBKObt>x13PnvKY(l0_Y8 zj%;RFcWlgN_vwrtHeLj|fg(6W=!NnhfE~v{zr7%YcZtm5rj^U_OM`-al@LsB_Ru}} zsa1g6ox$7@n*qc-)p}Pm!frZbSz;i^q3|mm7t(Nd=>Lw6r9|4s^4yLb;ga7uBV87f zTA@j!=E5WV7L2>rmS1p9HD&y-_RcaWj=fv=**iM|B)Cg}0Kp-6kif<*gu!iq;4%b) zJ0wU*a3?r}yE_AfU8&jxVWB(MZO5GKm;~=a=%xrU)IQD`xSXE4#Du)h)WyU`)pQ~RMF+#x?+yjri zp~ro2Q!~$0Sh1wawU?ev`}`~ySb~zI{9Sk9{<~xgT3(M4nD!5j$8N3QN4!teJ)rOF zO2_K!u<@{Gf*1pIybD>M2>^S^oeNW9eV12Lf1Fg-=jv8%t4h&xr9Y@5u~}3~d6O_! zcz98sA%XPh^;AB$#6N#xn7^@DJ=27rWY~T%QTDxptkdUDBN|SjG3%F*AHtu=6AZWJ zP@M@&d%qoAI69&>pVkO$hG`a8IF=RH8w;9gwJ zQVa7S&3*Q#zl7%vqc;tUdjJ(UOixsl-mN<7&@;Z@Kz@8I-#G^r|I9iECP}^NFIe8Z z>^Wl9yPiyVBq(3Hl)dyqcM8X3azz&JHr*DTPWeVoHS~9p%gy@giHJ!`dZhy$Co=NO zDz#8ukVGDrw3~r;*#n<|j(k;+N$6-7)oUiv`Dp=c3lguqECdy}&s(BfA6*q`nUFB- zuKbm_$F%jVew@Bh|8d={krW|FzgG6RY$(gVFp|kIgZj_s2_k( z2}XuOBUS7gQa<;wkKznGBG74#Ii_bk`bmuNkm%f?%d81_kKLD9cEn|}^Z8;ClbE)_ zY1R1%BA0lGz2r&dcc3RmY;?(Pyq9gGvU?2?6-@UepOg8VboKi zx$tp*FP`d9q-eN$`{=aiJtMh;qCAIvBL~9VKQonqxtsI~GHrW?eh*95F`<5Ws`i+z zhGR&5Rxih*iXph!WTUsBM}MrflnV--UiS0?yCR4OM0rhBj2yIQ5#IFtPRl7o*=`~& zuMJpFTyw|^Hy$kz-%FuGN|lHOF*7e`^>Mh1=pU}C%?Ie#<0^X?r7X~y7 zP=E8|6XYS7DR#&PIzdGnfvid%|F>#fO`%hDB`U~m5?a*VCU&0MvOVo{ebe5f<-o>x z4(kb_nW?)-RDSX6)P|Q8(s@6%?I>9D4wd4%qc=qus-Obq>q_z3UAW{b(IYKVsII}V z#7XN8UqEtFh1IIWn7S_xBxmfnvT%ii`)_f+ysezT%g%1@GJep*oW2K2^Y*=D%1Upv zf9QR!P+;xoq~D{TgMdgMH)px3MrgYuU-amACK5^&qo0YU}wXJy^Z8qag~}^>^|2+L6UEe zQp&AauGjt)Xqsn}vU#E~lAG!KSdg+xkI;4A(%;5xmoYvwrOg!p^hS)!(_8(4uQ5dg;hX|KJ z#reG!JRnz@qZdGeOz$)^1RN7{9Ad$pDSugHM&%ho$iT3{`4{u(oBKmq-mRT=Kc`Ck z3}v-sid~k)0}K*Pdq-W#yuuYJ2#?ppSqbNdt;M2dFXS!3FSjcx8b__FFq zy|#<4hNS=yzs~SSELx*_TeVOZ$u003#8$YI)mOa~tg&n88DFtlQe1Ib_@u;hOS>`R zjM}@p?*Pi&G-Ac32F(~+6>;}KZC+@t81npT;=$d4t<-Kj&IMx22mJl{_Sjg2gVjSU z4~kzO`FXIhB}8W~9$O{*IL6Bq4LUORey(0eml6n>a?zYpmU|jP6n^*TYV?;L?S{p2 zoO;&~nT_|^tM};No&SwUY6{Gay%|Gu*OY))&_1QgEnakUluXywA zQ_v`P?dg;Om#VO5sY#i8-JW}GZ%SI*WZduy>7p2RuZ+3rpP|zX9 z50N#E+AfDF;abr{X}T0_xdtv8?z^&f1s?<#dAf{t&dZ-V&O7RKraa| z`NraL4|dh*BlvV~0P{zJn={jzm&QDER&cdu^EfZmnNf9a<~wh=N7`2w_TuiDPlef2mhXipj+~ z!(DH(vy_}4)W$g3LaEU@NE~#lfa#VBQiym$gvMn>Y?B7@P>LdPijHCnKz5IV9@Y}O zBfnJdh1F}@|9Z!9;%A8XBJsnzr-S!5Q*kx8T_`=HYD7QLAi}nrWAGQ2mawUIU%#(5 zjVOH<&9;^4>Ptf7EvR$rxms;aojkU+_Ms!-cM6gGIS zhur*KUIIyv1rrdu)o*R{W1C2**&qbsI~V=iVn_r-o%Dxdjtj2T@|Y;f?XEu$`XblH zie>jEe!ACtuv@Q1JQr8b=_nCx=MpB>JZ&QkwKlc|FM;l4HVBVoq}}JTdmm$0PF@do z93dv-D)z()_tZLOg-IBBMpWmxW3k*Vk&c~`&3w`d_N{I>Y+Jt?Tw@ztIseKzggOzl zC~%pxC~`fAsC(yG)kUcvtn5#iI=d-yX-T{@QTdcNO6hbKVJ|umUk>**f!c@w7z`=WS3%yKj*TDp;_YyJ@C zENR+O5Ljn-Mx45x)0H7LMQ^!$H8?_!QTFt%4f8RrypGb%q}ys+I=PoFmpDJQyuAw+ zBAf>C3ckn+@-~T)t9DrP7$~B~<%~Xa;I5RyiB&Il`!L|W@HG|BHRL)&m_PW!9^aSi zux(PD@_=n{W-}|u#qs0|fmJ&KVo+gR&iJM^&Th5DKE>$V&TJp zk@gzmDS2-7ZuYRJ%~ubD?)R}U^mwzgTSz^&KowO-?a6U^u>)8FoAjFlJuWReo0>(YDL2E(kW*m zCvhmgvynAcc9NR}e3sbPfos2Y|C2sGWKa4uOfzJklk>|7F);=ZwRaLi4Q7QT-`9Jv zm36td%q&5O-zSj$?pc`0-R4QVe7jrExPeXD8z38M^)B-vW!sjZf8XrGf~HZ^+wCCe zi#N7(@tlr#882iX-CF$p@3f9bO&(eQvjCJri5atJiBm(ibK=P$0|H>&-uimfgq$}9 z2i}2--Sf4l!G!ttMQ*^-@Ae}q7_fByOBC~4gt9(Os&rkCLER>Me2FZ-e|AjK5|UKG z43-bFw|9@;tbW~8l)hH`UYW1Tar`Z#@>X$)?)6i@x-B5~^!bI6nVj$}Luw1&BbBUN zDrbT=iQXEYNa|vN`C={Og4tC>b!62(kCCU`l!HKuAyIhZTse3KafK}OmZ?vO(24p| zZKt*^ls+!VYSy~w=G5eA2!wY(0RaJIi_V%~PD3G0P<2<&>&vi*N6UsF=8#pygFA2% zH$q6i)0^?_XbXo{XO1W}2(CN}*ZhR*-)O1G580B@84r?EPE$#CE!aaz%SEXaKiZv9 z%FsC9&Q#({gCAujSM%;wQ!^Ax>{x&-EQH-N0XcuOtRPg}I8z)oYrN<*H- zDxp{|QUKxwO1FtRJ+>+?`uE)Y1&r zB^s{F&1MhlOZ-`SVq5#gkKaKx5(AaDMm-_u`G_l0`be493VRtJ6NYO(yffRks3nCY}mL`r| z9)|B7PAv;tle&^v8};v1kz&hVp4!K!z6_CTf=V~6a{x`L%K!%j-kG{^aU8UtrxTr| za_-1Qy}5Q1>9>xgcbj#hWu2(44t38?6fLKY7K(si!s^kfGPn8%hPf{}_JxJJ zS!TfFF~FW~SV`ZE>K~vLDU$7FtN%@;m~i-P%DN z6fepMS~pK)el{6E#+vLD+N00_ak{dL+Laa&)pXfxH+u3uaa)HCT32IMy_*A*8-2dM z9_}XpG&ZUsA0^YTZUUpUiKy38B%9*xM|l$<#NA9&62 zOff3q_1Z9!oE384E^%hV7&9n58>T?*d(LJmNIXp_Dt^X@3(ibZP3wEBe`Uty%J|4Ru+*{k$T@qW_Q@hKny7D-)X?cQznDHfyrag5m-QWx-);KDc2 zuk&d*+tSqvRVrX&a?5mb4cg|2Hv`{CEFBON^q|3pioF=` zPkV~PCrxl{Oxv{8^4_!u=M|NU+E9JX51?mx^WL|3#&$r}4ex0u&;D=|dDZxpFS<4K zHjm6;UpoqWfLo^}XA0-=t>$U?^bL8+=Q|0Pz!FNcrmA7ZaB0+dk5*>_YDoLU`|RBu zKf<36>aZ+ubW)j^YeZTxCvhKm1Mu!=c4rwVwTz-9#GsZZlrzsLqRI(Kct;I8d~2{> zn^=1h>?C=Rj=5Z9*Fo^%@XFl5pDgV<^D!VxO!91T9hjnv^F-L$>q&rAB}cD2Q*Lk# zef^j6G$fgHSK+oVk>a`DGR+#%mD7dzJ)C8ulW%pY!&&PQoS(i=ROI8M}a z6%pg7+Pk@fz7--tgagg-!LT^t?w1V-OQKZ=IX(qUG*^>B#OO(+lKN%uySm_IPtXv|BjO((_ShaqeaV#0rn676LY$B z@>T7BXHNBu&lWibGwCXl+h1iFFEndGpryWs=8o@N=N|(N5DGmd*I`R)ja;Z=Lha0& zLZ52_-)8YGfCO7TIE8#$Dl}Iz_$=G1u693#ZTUqHeCJ$jLyLCe=i|5fagol`O2Unx zdP2{87OOQOOxPJ^mhrvQP2sOOTdmD02>PVwn7u0(!ucHKV!_Ds!`BC`u;4#|kNv z&LvpmLPl?LqcP?)cOj~h%hrja7>X75aCWBi>hUV}7RXGJZ>Fy*732o!AuUQm&ZR!u z%Xp?L+Mb1h&?gTQLk792^yaD}K#`&TZ+J<3YaQzbJALLuz6Ud?2N!PvO>A)yb_kFM z#QcUl@luS*hAXxsVU7Ls-!5YX*(c?PSO%Qde#{;e2d-3$76~(1IStsc_ada4MiF=P zI}i#AA99cS2EYHYwB)6EpY#QC;@gz-frzVWkX7=&FhjQBfn0{E;c(8rIKjvv=%X5-oYMbqqylmALH{EOKEJO_WI zX<#Sko)3|LeHjNslM6cBjL&@^ocfPA3e6YKnq{#^>RJO9QTuJbsM9mQASa?0tiWa4 zC>rOe-=sVNJ1gLRNuRZ%xqmX52;uD-&#~(WjUTGnSl0eILaoC>tE%6M!9Ybb8xFq@ zY(1i`G@Df4scRrXbJ)?R*L9Wo3`qTk!jZfM#o=o|A+PvZwkhPE6(z>#odt)%Lm(rV|CZ192#SZUfcNcd+ zb+V2H2$6WD6>HKfVeV zvwZ*T$-~jwsCTik;(F0G-;&T*i`+5v36!p4)G=Pb&$ev8Ej*`(v#sKVS?O~5eelE0 zWDlLWCcoiMVfkFL=Sj`uKjdZ#K zQ!=$H=d$z~p>D8K1A_1dO}hfQbIT8UqR(o>?zvhU`4UR^$ZbCrCu#9wcJ&Q?h!q-l zU@bLOd@aQS>4`YC>)+*T6KhV%$7jyZ%mkNU7=uOFeJSCW?*;6?DeY-D8wu|edP&J7 zH1YJNx_iV-E$+ z+EgsE8t#!}>tIA{QwnK4)^6%P@kN)`d<;fC-m}N7Y++m~Pk!P`J5(UuZ;5G$ht&v-C=YnB*hKjASqFk@iL5`Q4JiDO37r)>Q3IF?Xj!HW)usxyxk^ zqX#H>f#0`Vf3?2nzx#5*N78;xTOZg^E8zr-9Mz}a53V0k)z_X|9PudAuuX|Xm9Y?q z=Qwz-Q3i*XmuAVX3?^4gbLjB0>+L2PtknG>syEMJp6L{&vg5;7nf&65d{DLYCJI59 zL^n8I3)Hpu5wf(+zrOo8p%w- z4XRBQf4<2gADp9{`Wy+uWtIhWQ4YS3#)I|KIjgj!PlBA}mLaM)x~N?lKo>>QC*HA` z>#;tX`^JXJiqFRip8=C-e#RZi7Ee`WK!9B)&>;pFAzEb_3p4}NTDC_A^rdb4{*Po> zRL88XLLhLYX8Y{NX25oJ4(@v=fUny_JRD@NmtnoeThGOxuudctx{HM>a@+k;IwDBX zAf-1L{5x5y*ccvFMO58ie;H#a;|#eAc>*0mzQzdGrfHL$Ans>-OSpgmD71VJ8dRNQ zoHIx578IVp9IAf|-|4F7z@zt0^tQ7-OL;e7PS}n zm;pK|vSzZ|M-Acg)7Vr)BA)cS4JAv=nMpQOMhC=lY$eTvM^u0gyoT#) z7~LL`Mz!r|lwVTlw-Ec^qbIK*wrZF2tlkN7Drgf7yWT!7EFAgL=Ev?0Zb0QvOJsm> zZANUEx)avoLpMY{vm0EDYHqBpVHnhOJyG{D0WtIMOM%z_Voeu|Rf_zOh$!9N#XH7d zt1FAO;7qy^~A*P)I1(5KHWG~qX8VtoEJz1t0dD7OuZXh`^MRH zmiFlQduv82Vs6ArFR!P4j{)VAUD6=fm9AOt_nOtZ5u~l7@Ic8hd8mN| zJ*KDoKGpf9I06&@Cz0~^c_0XR&#~uG+P|}&rJ&vCi7x^86Q?Tij10qtR)II3t2cBs z18M>E0DMVKt&323+oA`UJm2=Sa3`L*Zxuu=khmV~A2%8`QCTTTa#VF0Spr+o&%t~* zgC%R8tGD<^;DP|Xy2nilOoOIaQhEy|J~E{~}bAfNp+RQsTdQWy{*$NlK*r zUv~oYc8=WON4FIIQbthzzaNc1mPGB+O6-Te0*02iHNQbGmHx&=OXwD{GXTf%4RRgY zx%uY|zcK#;N7BgDSoY`_@%x>N5+lo{<=v77=s4x-W%H+DHTDew$U5Id5qKs8P z5H+}Q3|mteu@;;NP__~)RzIiibG3Ak!M+Et2|h#`36E6`KCb}FJ=6m)Y^{Au+(vI3 z@@|=s-oPJ2udNibNQ>n#6wO;60CCS@py7o=WDGPDAL3~Bfhq5vJn`bc`p1{_A79dc zd`bWDCH=>j^dDc+e|$-SxzhSSd`XjkFy9FYxfC2!71|C5cKo+0X)#PGT58JPL#Y1X z2L0_{D?V?2I0v`8P8z5AI7-&%5SFyD^KcdT^{rP=cymfCsw#=1vulg5d{yrSIni>* zC#zwAz)75cxsnRfHvJn>>YTj6Np)yKLpqEwj;5;^sM(wFc*(tYAEjS|sCuy#^<1&>%iGtN`w8BW1|_@@$7`a?h=oBjvh z?>c~hMP%y^{YMsTzW)g>Rp3bcj?+_x11v>vc`N|sXNts^k8K5|lW&~Q^ZHzl`2@SS z=;B+%TLxcthsL}7%cs;E$KoM1`&s3Wk%o*rmq zR>E$pKuh`I&p8HwWh<~UD*Hs(rF1$QesQJ-O^2AZDD7&6T2E=~h2 z9Ya0(i>5xcl44PA)G_=wm(l{+zg2lZG5e@J82;Mxla8hq$hio>N(CYx6xOz|qhr2t}?)1yWezl&%8YkxOj6L|JS-3^`_nzQCkIZcG z08`((GalImJyn~(cm3xIX=)42;9A4xugLPEi&eY@S(px4>3vjy(2eNpt;QnTR}SUb zV9qKJ56XIdpsrAaU6Np{zg}ncQ}_4kHMARL6lNF5^Z?L&Vh&nt3I|YIsR<6^UbXOC zsA3kNX##32^2sRTl>w2|;bWq-)g3C@xjyAj&P;RW{=YHH(ynz=+((_ecy-_8_L(J@N3S~Zq96YH#`^5A}P-!m8o! zrC+&8v;uf4s#yk7djXy0*w=HI9s>&aQm;q>#^<}M)e{X%O!1r)OBoAlrpp3TJExtE+omXZ=x!e5a{NcmEd^|&sMW?5ye8z@;%5f(xb$< z9jKk7!c7JiGyh#kup8)s?NsZT!P#Zr^edZ)v#>N3ZX_4@c`wrI=p12{m}i-3?v0{tAMd&LLvQ9lwUt#>wfvKRwI_9dY6`(MXY!?Vfbw zOc75qohX#18X2S#*U1>`C+y2_^9EeGLeZ4W%-}d_b`$ zHxWL4qask;Hs>5stZb_;U6or*$yv=t4M{rg@auW2j!Rn!=8Ezo(kZfPp?V?;5=_~b zvf0`>8DniypaM#0-52{pa@K9y2jlxEwvL9UC!cf(?cM#I7w`{Vk9^_jl)~5UiC^2V zm#UH3aBfPDV2=N{>HGh?O7;Ki>ygl2eY~bUkXKhycoT9XQd5+DDN`=> HD&YSBpj8w< literal 0 HcmV?d00001 diff --git a/Caesar/huanlv_code_Caesar.py b/Caesar/huanlv_code_Caesar.py index b22f0dd..322a421 100644 --- a/Caesar/huanlv_code_Caesar.py +++ b/Caesar/huanlv_code_Caesar.py @@ -1,9 +1,4 @@ -"""Encrypt the plaintext and return the ciphertext -------key: The characters to encode -------change: The number of shift -------plaintext: The text to encode -*=>encrypt return a string after encoding -""" +"""Encrypt the plaintext and return the ciphertext""" def encrypt(key,change,plaintext): result = "" for c in plaintext: @@ -14,12 +9,7 @@ def encrypt(key,change,plaintext): result += c return result -"""Decrypt the plaintext and return the plaintext -------key: The characters to decode -------change: The number of shift -------plaintext: The text to encode -*=>decrypt return a string after decoding -""" +"""Decrypt the plaintext and return the plaintext""" def decrypt(key,change,ciphertext): result = "" for c in ciphertext: @@ -31,11 +21,23 @@ def decrypt(key,change,ciphertext): return result """The example of caesar algorithm""" -# key = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" -# text = "TOIYEUVIETNAM" -# change = 3 -# ciphertext = encrypt(key,change,text) -# plaintext = decrypt(key,change,ciphertext) -# print("Text: ",text) -# print("Ciphertext: ",ciphertext) -# print("Plaintext: ",plaintext) \ No newline at end of file +check = True +while check: + print("""Enter your chose:\n\t1. Encode\n\t2. Decode\n\t3. Exit""") + chose = input("Your chose is: ") + if chose == '1': + key = input("[+]Enter a custom alphabet: ") + text = input("[+]The text you want encode: ") + change = int(input("[+]Enter the shift< a number >:")) + ciphertext = encrypt(key,change,text) + print("*The text after encode: ",ciphertext+"\n"+"*"*35) + elif chose == '2': + key = input("[+]Enter a custom alphabet: ") + text = input("[+]The text you want decode: ") + change = int(input("[+]Enter the shift< a number >:")) + plaintext = decrypt(key,change,text) + print("*The text after decode: ",plaintext+"\n"+"*"*35) + elif chose == '3': + check = False + else: + print("ERROR! You must chose 1,2 or 3.\n"+"*"*35) \ No newline at end of file From 8161582ecf8022863c6e5a623b348f18920e1155 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Mon, 23 Jul 2018 16:09:25 +0900 Subject: [PATCH 07/38] Create namth_report.txt --- namth_report.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 namth_report.txt diff --git a/namth_report.txt b/namth_report.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/namth_report.txt @@ -0,0 +1 @@ + From 5ab09c3f31ec52d9a9d967d1883bfcef4755eebb Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Mon, 23 Jul 2018 16:09:53 +0900 Subject: [PATCH 08/38] Create namth_code_sig.py --- Caesar/namth_code_sig.py | 1 + 1 file changed, 1 insertion(+) create mode 100644 Caesar/namth_code_sig.py diff --git a/Caesar/namth_code_sig.py b/Caesar/namth_code_sig.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Caesar/namth_code_sig.py @@ -0,0 +1 @@ + From 62718bb10b43a3475c1096d23bb94ef94f8c26d8 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Mon, 23 Jul 2018 20:45:26 +0900 Subject: [PATCH 09/38] Delete namth_code_sig.py --- Caesar/namth_code_sig.py | 1 - 1 file changed, 1 deletion(-) delete mode 100644 Caesar/namth_code_sig.py diff --git a/Caesar/namth_code_sig.py b/Caesar/namth_code_sig.py deleted file mode 100644 index 8b13789..0000000 --- a/Caesar/namth_code_sig.py +++ /dev/null @@ -1 +0,0 @@ - From 08d6141264ae49d8d51a5731e237e4cee9dd0674 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Mon, 23 Jul 2018 20:47:05 +0900 Subject: [PATCH 10/38] Create Signcryption --- Signcryption | 1 + 1 file changed, 1 insertion(+) create mode 100644 Signcryption diff --git a/Signcryption b/Signcryption new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Signcryption @@ -0,0 +1 @@ + From 897aca162646d3f436dcf5ea5dad356ce1f747e5 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Tue, 24 Jul 2018 00:01:15 +0900 Subject: [PATCH 11/38] Delete Signcryption --- Signcryption | 1 - 1 file changed, 1 deletion(-) delete mode 100644 Signcryption diff --git a/Signcryption b/Signcryption deleted file mode 100644 index 8b13789..0000000 --- a/Signcryption +++ /dev/null @@ -1 +0,0 @@ - From 12a688bd30b20e82459aeafd5f0de9a824ce68fb Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Mon, 23 Jul 2018 11:02:10 -0400 Subject: [PATCH 12/38] Add files via upload --- namth_code_sig.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 namth_code_sig.py diff --git a/namth_code_sig.py b/namth_code_sig.py new file mode 100644 index 0000000..20530ee --- /dev/null +++ b/namth_code_sig.py @@ -0,0 +1,28 @@ +# Public Parameter +p = 87 +q = 43 +g = 2 # modulus of p and q (assumption) + +# Collect Input Data +print("""Enter Alice's Secret Key:""") +x1 = int(input("[+]Enter Alice's Secret Key: ")) +y1 = (g^x1) % p +print("Alice's Public Key: ",y1) +x1 = bytes(x1) +y1 = bytes(y1) + +print("""Enter Alice's Secret Key:""") +x2 = int(input("[+]Enter Bob's Secret Key: ")) +y2 = (g^x2) % p +print("Bob's Public Key: ",y2) + +x2 = bytes(x2) +y2 = bytes(y1) + +# Gerenate k (128 bit) by Hash funtion +from hashlib import blake2b +h = blake2b(y2, digest_size=16) +h.update(x1) + +k = h.hexdigest() +print("""K Value:""", k) From ca20f235af40dad22c028ad4830ae3681295dcd9 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Tue, 24 Jul 2018 00:02:59 +0900 Subject: [PATCH 13/38] Update namth_code_sig.py --- namth_code_sig.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/namth_code_sig.py b/namth_code_sig.py index 20530ee..5c445a4 100644 --- a/namth_code_sig.py +++ b/namth_code_sig.py @@ -15,7 +15,6 @@ x2 = int(input("[+]Enter Bob's Secret Key: ")) y2 = (g^x2) % p print("Bob's Public Key: ",y2) - x2 = bytes(x2) y2 = bytes(y1) @@ -23,6 +22,5 @@ from hashlib import blake2b h = blake2b(y2, digest_size=16) h.update(x1) - k = h.hexdigest() print("""K Value:""", k) From 98f5443ae774569e9ca8dc2b8598191028644b4a Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Tue, 24 Jul 2018 21:35:56 +0900 Subject: [PATCH 14/38] Update namth_code_sig.py --- namth_code_sig.py | 78 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 72 insertions(+), 6 deletions(-) diff --git a/namth_code_sig.py b/namth_code_sig.py index 5c445a4..cc39d44 100644 --- a/namth_code_sig.py +++ b/namth_code_sig.py @@ -1,26 +1,92 @@ # Public Parameter -p = 87 -q = 43 -g = 2 # modulus of p and q (assumption) +# Define generating prime number function +import random +from random import randint +def is_prime(num, test_count): + if num == 1: + return False + if test_count >= num: + test_count = num - 1 + for x in range(test_count): + val = randint(1, num - 1) + if pow(val, num-1, num) != 1: + return False + return True + +def generate_big_prime(n): + found_prime = False + while not found_prime: + p = randint(2**(n-1), 2**n) + if is_prime(p, 1000): + return p + +# Define finding primitive root function +def find_primitive_root(numberToFactor, arr=list()): + i = 2 + maximum = numberToFactor / 2 + 1 + while i < maximum: + if numberToFactor % i == 0: + return find_primitive_root(numberToFactor/i,arr + [i]) + i += 1 + return list(set(arr + [numberToFactor])) +# Set seed +n = 10 +# p is the prime +p = generate_big_prime(n) +print("[+] Generate prime number: {0}".format(p)) +# q is the primitve root of p-1 +q = find_primitive_root(p-1) +q = q[-1] +print("[+] Primitive root of p-1: {0}".format(q)) +# g is an integer order q modulus p +g = random.randint(1, p-1) +g = pow(g, q, p) +print("[+] Generate g number: {0}".format(g)) # Collect Input Data print("""Enter Alice's Secret Key:""") x1 = int(input("[+]Enter Alice's Secret Key: ")) -y1 = (g^x1) % p +y1 = pow(g, x1, p) print("Alice's Public Key: ",y1) x1 = bytes(x1) y1 = bytes(y1) print("""Enter Alice's Secret Key:""") x2 = int(input("[+]Enter Bob's Secret Key: ")) -y2 = (g^x2) % p +y2 = pow(g, x2, p) print("Bob's Public Key: ",y2) x2 = bytes(x2) y2 = bytes(y1) +# Alice choose a random value x # x1 +x = int(input("[+]Enter Alice's Secret Key: ")) # Gerenate k (128 bit) by Hash funtion from hashlib import blake2b h = blake2b(y2, digest_size=16) -h.update(x1) +h.update(x) k = h.hexdigest() print("""K Value:""", k) + +# Generate k1, k2 +splitat = len(k) / 2 +k1 = k[:splitat] +k2 = k[splitat:] +print("""K1 Value:""",k1) +print("""K2 Value:""",k2) + +import nacl.utils +from nacl.public import PrivateKey, Box +print("""Enter Alice's Secret Message:""") +m = bytes(input("[+]Enter Alice's Secret Message: ")) + +# Alice Use k1 to Encrypt her Secret Message +c = k1.encrypt(m) + +# Alice Use k2 to Hash her Secret Message +from pyblake2 import blake2b +h = blake2b(k2, digest_size=16) +h.update(m) +r = h.hexdigest() + +# Alice Use R and C to compute S +s = x / ((r + x1) % q ) From e01a3a90641fe500522c7a487d49af39c996cf70 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Tue, 24 Jul 2018 22:28:41 +0700 Subject: [PATCH 15/38] code 3DES --- 3DES/DES/conversion.py | 10 ++++ 3DES/DES/destable.py | 103 +++++++++++++++++++++++++++++++++++++++++ 3DES/DES/main.py | 4 ++ huanlv_report.txt | 3 +- 4 files changed, 119 insertions(+), 1 deletion(-) create mode 100644 3DES/DES/conversion.py create mode 100644 3DES/DES/destable.py create mode 100644 3DES/DES/main.py diff --git a/3DES/DES/conversion.py b/3DES/DES/conversion.py new file mode 100644 index 0000000..07db64f --- /dev/null +++ b/3DES/DES/conversion.py @@ -0,0 +1,10 @@ +def textToHex(text): + return (text.encode("UTF-8")).hex() +def hexToText(hexText): + return (bytes.fromhex(hexText)).decode("UTF-8") +def binToHex(text): + lookup = {"0000" : "0", "0001" : "1", "0010" : "2", "0011" : "3", "0100" : "4", "0101" : "5", "0110" : "6", "0111" : "7", "1000" : "8", "1001" : "9", "1010" : "a", "1011" : "b", "1100" : "c", "1101":"d" , "1110":"e" , "1111":"f"} + result = "" + for i in range(0,len(text),4): + result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] + return result \ No newline at end of file diff --git a/3DES/DES/destable.py b/3DES/DES/destable.py new file mode 100644 index 0000000..5ea60d1 --- /dev/null +++ b/3DES/DES/destable.py @@ -0,0 +1,103 @@ +pc1 = ( + 57, 49, 41, 33, 25, 17, 9, + 1, 58, 50, 42, 34, 26, 18, + 10, 2, 59, 51, 43, 35, 27, + 19, 11, 3, 60, 52, 44, 36, + 63, 55, 47, 39, 31, 23, 15, + 7, 62, 54, 46, 38, 30, 22, + 14, 6, 61, 53, 45, 37, 29, + 21, 13, 5, 28, 20, 12, 4 + ) +pc2 = ( + 14, 17, 11, 24, 1, 5, 3, + 28, 15, 6, 21, 10, 23, 19, + 12, 4, 26, 8, 16, 7, 27, + 20, 13, 2, 41, 52, 31, 37, + 47, 55, 30, 40, 51, 45, 33, + 48, 44, 49, 39, 56, 34, 53, + 46, 42, 50, 36, 29, 32 + ) +ip = ( + 58, 50, 42, 34, 26, 18, 10, 2, + 60, 52, 44, 36, 28, 20, 12, 4, + 62, 54, 46, 38, 30, 22, 14, 6, + 64, 56, 48, 40, 32, 24, 16, 8, + 57, 49, 41, 33, 25, 17, 9, 1, + 59, 51, 43, 35, 27, 19, 11, 3, + 61, 53, 45, 37, 29, 21, 13, 5, + 63, 55, 47, 39, 31, 23, 15, 7 + ) +ip_1 = ( + 40, 8, 48, 16, 56, 24, 64, 32, + 39, 7, 47, 15, 55, 23, 63, 31, + 38, 6, 46, 14, 54, 22, 62, 30, + 37, 5, 45, 13, 53, 21, 61, 29, + 36, 4, 44, 12, 52, 20, 60, 28, + 35, 3, 43, 11, 51, 19, 59, 27, + 34, 2, 42, 10, 50, 18, 58, 26, + 33, 1, 41, 9, 49, 17, 57, 25 + ) +e = ( + 32, 1, 2, 3, 4, 5, + 4, 5, 6, 7, 8, 9, + 8, 9, 10, 11, 12, 13, + 12, 13, 14, 15, 16, 17, + 16, 17, 18, 19, 20, 21, + 20, 21, 22, 23, 24, 25, + 24, 25, 26, 27, 28, 29, + 28, 29, 30, 31, 32, 1 + ) +s1 = ( + 14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7, + 0, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8, + 4, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0, + 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13 + ) +s2 = ( + 15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10, + 3, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5, + 0, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15, + 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9 + ) +s3 = ( + 10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8, + 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1, + 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7, + 1, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12 + ) +s4 = ( + 7, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15, + 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9, + 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4, + 3, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14 + ) +s5 = ( + 2, 12, 4, 1, 7, 10, 11, 6, 8, 5, 3, 15, 13, 0, 14, 9, + 14, 11, 2, 12, 4, 7, 13, 1, 5, 0, 15, 10, 3, 9, 8, 6, + 4, 2, 1, 11, 10, 13, 7, 8, 15, 9, 12, 5, 6, 3, 0, 14, + 11, 8, 12, 7, 1, 14, 2, 13, 6, 15, 0, 9, 10, 4, 5, 3 + ) +s6 = ( + 12, 1, 10, 15, 9, 2, 6, 8, 0, 13, 3, 4, 14, 7, 5, 11, + 10, 15, 4, 2, 7, 12, 9, 5, 6, 1, 13, 14, 0, 11, 3, 8, + 9, 14, 15, 5, 2, 8, 12, 3, 7, 0, 4, 10, 1, 13, 11, 6, + 4, 3, 2, 12, 9, 5, 15, 10, 11, 14, 1, 7, 6, 0, 8, 13 + ) +s7 = ( + 4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1, + 13, 0, 11, 7, 4, 9, 1, 10, 14, 3, 5, 12, 2, 15, 8, 6, + 1, 4, 11, 13, 12, 3, 7, 14, 10, 15, 6, 8, 0, 5, 9, 2, + 6, 11, 13, 8, 1, 4, 10, 7, 9, 5, 0, 15, 14, 2, 3, 12 + ) +s8 = ( + 13, 2, 8, 4, 6, 15, 11, 1, 10, 9, 3, 14, 5, 0, 12, 7, + 1, 15, 13, 8, 10, 3, 7, 4, 12, 5, 6, 11, 0, 14, 9, 2, + 7, 11, 4, 1, 9, 12, 14, 2, 0, 6, 10, 13, 15, 3, 5, 8, + 2, 1, 14, 7, 4, 10, 8, 13, 15, 12, 9, 0, 3, 5, 6, 11 + ) +p = ( + 16, 7, 20, 21, 29, 12, 28, 17, + 1, 15, 23, 26, 5, 18, 31, 10, + 2, 8, 24, 14, 32, 27, 3, 9, + 19, 13, 30, 6, 22, 11, 4, 25 + ) \ No newline at end of file diff --git a/3DES/DES/main.py b/3DES/DES/main.py new file mode 100644 index 0000000..aef866c --- /dev/null +++ b/3DES/DES/main.py @@ -0,0 +1,4 @@ +#Test function +from conversion import * +s = binToHex("0110100001100101011011000110110001101111") +print(hexToText(s)) \ No newline at end of file diff --git a/huanlv_report.txt b/huanlv_report.txt index 801cb1e..881ba7e 100644 --- a/huanlv_report.txt +++ b/huanlv_report.txt @@ -1 +1,2 @@ -23/07-Hoàn thành code mô phỏng thuật toán Caesar \ No newline at end of file +23/07-Hoàn thành code mô phỏng thuật toán Caesar +24/07-Tìm hiểu thuật toán des và viết một số hàm cần thiết \ No newline at end of file From 8283a2c26a32c7c4f06129197760daad47d6bed0 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Wed, 25 Jul 2018 08:56:41 +0700 Subject: [PATCH 16/38] Update code des algorithm --- 3DES/DES/conversion.py | 95 +++++++++++++++++++++++++++++++++++++++++- 3DES/DES/main.py | 7 ++-- huanlv_report.txt | 3 +- 3 files changed, 100 insertions(+), 5 deletions(-) diff --git a/3DES/DES/conversion.py b/3DES/DES/conversion.py index 07db64f..09fe8fc 100644 --- a/3DES/DES/conversion.py +++ b/3DES/DES/conversion.py @@ -7,4 +7,97 @@ def binToHex(text): result = "" for i in range(0,len(text),4): result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] - return result \ No newline at end of file + return result +def hexToBin(text): + lookup = {"0" : "0000", "1" : "0001", "2" : "0010", "3" : "0011", "4" : "0100", "5" : "0101", "6" : "0110", "7" : "0111", "8" : "1000", "9" : "1001", "a" : "1010", "b" : "1011", "c" : "1100", "d" : "1101", "e" : "1110", "f" : "1111"} + result = "" + for byte in text: + result = result + lookup[byte] + return result +def dec16ToBin(dec): + result = bin(dec)[2:] + if len(result) < 4 : + result = "0"*(4-len(result))+result + return result +def toPermute(text,pc): + result = "" + for i in range(len(pc)): + j = pc[i] - 1 + result += text[j] + return result +def cat2(text): + result = [] + result.append(text[:int(len(text)/2)]) + result.append(text[int(len(text)/2):]) + return result +def cat8(text): + result = [] + l = int(len(text)/8) + for i in range(8): + result.append(text[i*l:(i+1)*l]) + return result +def xor(binA,binB): + result = ''.join('0' if i == j else '1' for i, j in zip(binA,binB)) + return result +def toLeft(text,bit): + s1 = text[:bit] + s2 = text[bit:] + return s2 + s1 +def toRight(text,bit): + s1 = text[:len(text)-bit] + s2 = text[len(text)-bit:] + return s2 +s1 +def toArray2D(text): + l = int(len(text)/4) + result = [] + temp =[] + k = 0 + for i in range(4): + for j in range(l): + temp.append(text[k]) + k +=1 + result.append(temp) + temp = [] + return result +def binTo2Dec(text): + bae = text[0]+text[len(text)-1] + betw = text[1:len(text)-1] + baeDec = int(bae,2) + betwDec = int(betw,2) + result = [] + result.append(baeDec) + result.append(betwDec) + return result +def convertKeyToHex(key): + hexKey = textToHex(key) + l = len(hexKey) + if l >16 : + hexKey = hexKey[:16] + elif l<16: + temp = "0"*(16-l) + hexKey = hexKey+temp + return hexKey +def createKeys(keyString,pc1,pc2): + C=[] + D=[] + CD=[] + K=[] + kHex=[] + keyHex = convertKeyToHex(keyString) + keyBin = hexToBin(keyHex) + keyPc1 = toPermute(keyBin,pc1) + catKey = cat2(keyPc1) + C.append(catKey[0]) + D.append(catKey[1]) + + for i in range(1,17): + bit = 2 + if i in [1,2,9,16]: + bit = 1 + C.append(toLeft(C[i-1],bit)) + D.append(toRight(D[i-2],bit)) + CD.append(C[i]+D[i]) + K.append(toPermute(CD[i-1],pc2)) + kHex.append(binToHex(K[i-1])) + + return kHex \ No newline at end of file diff --git a/3DES/DES/main.py b/3DES/DES/main.py index aef866c..687a633 100644 --- a/3DES/DES/main.py +++ b/3DES/DES/main.py @@ -1,4 +1,5 @@ -#Test function +#import lib from conversion import * -s = binToHex("0110100001100101011011000110110001101111") -print(hexToText(s)) \ No newline at end of file +from destable import * + +print(createKeys("HelloCacBan",pc1,pc2)) \ No newline at end of file diff --git a/huanlv_report.txt b/huanlv_report.txt index 881ba7e..c2edad9 100644 --- a/huanlv_report.txt +++ b/huanlv_report.txt @@ -1,2 +1,3 @@ 23/07-Hoàn thành code mô phỏng thuật toán Caesar -24/07-Tìm hiểu thuật toán des và viết một số hàm cần thiết \ No newline at end of file +24/07-Tìm hiểu thuật toán des và viết một số hàm cần thiết cho thuật toán des +25/07-Hoàn thiện các hàm cần thiết, viết hàm sinh keys thuật toán des \ No newline at end of file From 2dbaf5dacbe968c2956fd5779b6ba9fa5d088d89 Mon Sep 17 00:00:00 2001 From: nguyenmaihuong2051989 <41557599+nguyenmaihuong2051989@users.noreply.github.com> Date: Wed, 25 Jul 2018 09:37:09 +0700 Subject: [PATCH 17/38] Create huongnm_report.txt --- huongnm_report.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 huongnm_report.txt diff --git a/huongnm_report.txt b/huongnm_report.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/huongnm_report.txt @@ -0,0 +1 @@ + From 584dac7d91439d2b0601c97ce50e5e3d82beebb1 Mon Sep 17 00:00:00 2001 From: nguyenmaihuong2051989 <41557599+nguyenmaihuong2051989@users.noreply.github.com> Date: Wed, 25 Jul 2018 12:40:50 +0700 Subject: [PATCH 18/38] commit --- huongnm_code_des.py | 125 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 huongnm_code_des.py diff --git a/huongnm_code_des.py b/huongnm_code_des.py new file mode 100644 index 0000000..934fe5f --- /dev/null +++ b/huongnm_code_des.py @@ -0,0 +1,125 @@ +from sys import exit +from time import time + +KeyLength = 10 +SubKeyLength = 8 +DataLength = 8 +FLength = 4 + +# Bảng cho hoán vị ban đầu và cuối cùng (b1, b2, b3, ... b8) +IPtable = (2, 6, 3, 1, 4, 8, 5, 7) +FPtable = (4, 1, 3, 5, 7, 2, 8, 6) + +# Bảng để tạo khóa con (k1, k2, k3, ... k10) +P10table = (3, 5, 2, 7, 4, 10, 1, 9, 8, 6) +P8table = (6, 3, 7, 4, 8, 5, 10, 9) + +# Tables for the fk function +EPtable = (4, 1, 2, 3, 2, 3, 4, 1) +S0table = (1, 0, 3, 2, 3, 2, 1, 0, 0, 2, 1, 3, 3, 1, 3, 2) +S1table = (0, 1, 2, 3, 2, 0, 1, 3, 3, 0, 1, 0, 2, 1, 0, 3) +P4table = (2, 4, 3, 1) + +def perm(inputByte, permTable): + """Permute input byte according to permutation table""" + outputByte = 0 + for index, elem in enumerate(permTable): + if index >= elem: + outputByte |= (inputByte & (128 >> (elem - 1))) >> (index - (elem - 1)) + else: + outputByte |= (inputByte & (128 >> (elem - 1))) << ((elem - 1) - index) + return outputByte + +def ip(inputByte): + """Perform the initial permutation on data""" + return perm(inputByte, IPtable) + +def fp(inputByte): + """Perform the final permutation on data""" + return perm(inputByte, FPtable) + +def swapNibbles(inputByte): + """Swap the two nibbles of data""" + return (inputByte << 4 | inputByte >> 4) & 0xff + +def keyGen(key): + """Generate the two required subkeys""" + def leftShift(keyBitList): + """Perform a circular left shift on the first and second five bits""" + shiftedKey = [None] * KeyLength + shiftedKey[0:9] = keyBitList[1:10] + shiftedKey[4] = keyBitList[0] + shiftedKey[9] = keyBitList[5] + return shiftedKey + + # Converts input key (integer) into a list of binary digits + keyList = [(key & 1 << i) >> i for i in reversed(range(KeyLength))] + permKeyList = [None] * KeyLength + for index, elem in enumerate(P10table): + permKeyList[index] = keyList[elem - 1] + shiftedOnceKey = leftShift(permKeyList) + shiftedTwiceKey = leftShift(leftShift(shiftedOnceKey)) + subKey1 = subKey2 = 0 + for index, elem in enumerate(P8table): + subKey1 += (128 >> index) * shiftedOnceKey[elem - 1] + subKey2 += (128 >> index) * shiftedTwiceKey[elem - 1] + return (subKey1, subKey2) + +def fk(subKey, inputData): + """Apply Feistel function on data with given subkey""" + def F(sKey, rightNibble): + aux = sKey ^ perm(swapNibbles(rightNibble), EPtable) + index1 = ((aux & 0x80) >> 4) + ((aux & 0x40) >> 5) + \ + ((aux & 0x20) >> 5) + ((aux & 0x10) >> 2) + index2 = ((aux & 0x08) >> 0) + ((aux & 0x04) >> 1) + \ + ((aux & 0x02) >> 1) + ((aux & 0x01) << 2) + sboxOutputs = swapNibbles((S0table[index1] << 2) + S1table[index2]) + return perm(sboxOutputs, P4table) + + leftNibble, rightNibble = inputData & 0xf0, inputData & 0x0f + return (leftNibble ^ F(subKey, rightNibble)) | rightNibble + +def encrypt(key, plaintext): + """Encrypt plaintext with given key""" + data = fk(keyGen(key)[0], ip(plaintext)) + return fp(fk(keyGen(key)[1], swapNibbles(data))) + +def decrypt(key, ciphertext): + """Decrypt ciphertext with given key""" + data = fk(keyGen(key)[1], ip(ciphertext)) + return fp(fk(keyGen(key)[0], swapNibbles(data))) + +if __name__ == '__main__': + + + try: + assert encrypt(0b0000000000, 0b10101010) == 0b00010001 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b0000000000, 0b10101010), "Expected: ", 0b00010001) + exit(1) + try: + assert encrypt(0b1110001110, 0b10101010) == 0b11001010 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1110001110, 0b10101010), "Expected: ", 0b11001010) + exit(1) + try: + assert encrypt(0b1110001110, 0b01010101) == 0b01110000 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1110001110, 0b01010101), "Expected: ", 0b01110000) + exit(1) + try: + assert encrypt(0b1111111111, 0b10101010) == 0b00000100 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1111111111, 0b10101010), "Expected: ", 0b00000100) + exit(1) + + t1 = time() + for i in range(1000): + encrypt(0b1110001110, 0b10101010) + t2 = time() + print("Elapsed time for 1,000 encryptions: {:0.3f}s".format(t2 - t1)) + exit() \ No newline at end of file From b1d133b4a8f858ce929618e26ad50ae92a301aa1 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Wed, 25 Jul 2018 17:03:25 +0700 Subject: [PATCH 19/38] update code --- 3DES/DES/conversion.py | 95 ++++++++++++++++++++++++++++++++++++++++-- 3DES/DES/main.py | 7 +++- 2 files changed, 96 insertions(+), 6 deletions(-) diff --git a/3DES/DES/conversion.py b/3DES/DES/conversion.py index 09fe8fc..6e8fb55 100644 --- a/3DES/DES/conversion.py +++ b/3DES/DES/conversion.py @@ -1,3 +1,5 @@ +from destable import * + def textToHex(text): return (text.encode("UTF-8")).hex() def hexToText(hexText): @@ -77,12 +79,49 @@ def convertKeyToHex(key): temp = "0"*(16-l) hexKey = hexKey+temp return hexKey -def createKeys(keyString,pc1,pc2): +def sBox(bit,num): + arr2D = [] + if(num==0): arr2D = toArray2D(s1) + if(num==1): arr2D = toArray2D(s2) + if(num==2): arr2D = toArray2D(s3) + if(num==3): arr2D = toArray2D(s4) + if(num==4): arr2D = toArray2D(s5) + if(num==5): arr2D = toArray2D(s6) + if(num==6): arr2D = toArray2D(s7) + if(num==7): arr2D = toArray2D(s8) + arrDec = binTo2Dec(bit) + row = arrDec[0] + column = arrDec[1] + + return dec16ToBin(arr2D[row][column]) +def F(R,K): + extR = toPermute(R,e) + xorRK = xor(extR,K) + catXorRK = cat8(xorRK) + strSbox = "" + for i in range(8): + B = catXorRK[i] + BS = sBox(B,i) + strSbox += BS + B = [] + BS = [] + return toPermute(strSbox,p) +def cat(text): + l = len(text) + nl = 16 - l%16 + text = text + "0"*nl + nBlock = int(len(text)/16) + result = [] + for i in range(nBlock): + block = text[i*16:(i+1)*16] + result.append(block) + return result +def createKeys(keyString): C=[] D=[] CD=[] K=[] - kHex=[] + #kHex=[] keyHex = convertKeyToHex(keyString) keyBin = hexToBin(keyHex) keyPc1 = toPermute(keyBin,pc1) @@ -98,6 +137,54 @@ def createKeys(keyString,pc1,pc2): D.append(toRight(D[i-2],bit)) CD.append(C[i]+D[i]) K.append(toPermute(CD[i-1],pc2)) - kHex.append(binToHex(K[i-1])) + #kHex.append(binToHex(K[i-1])) + + return K + +def encrypt(plaintext,key): + K = createKeys(key) + hexText = textToHex(plaintext) + nBlock = cat(hexText) + cBlock = len(nBlock) + ciphertext = "" + R=[] + L=[] + for i in range(cBlock): + x = nBlock[i] + xBin = hexToBin(x) + xIp = toPermute(xBin,ip) + catx = cat2(xIp) + L.append(catx[0]) + R.append(catx[1]) + for i in range(16): + L.append(R[i]) + f = F(R[i],K[i]) + R.append(xor(L[i],f)) + strRL = R[15]+L[15] + strOut = toPermute(strRL,ip_1) + ciphertext = binToHex(strOut) + return ciphertext - return kHex \ No newline at end of file +"""def decrypt(ciphertext,key): + K = createKeys(key) + nBlock = cat(ciphertext) + cBlock = len(nBlock) + plaintext = "" + R=[] + L=[] + for i in range(cBlock): + x = nBlock[i] + xBin = hexToBin(x) + xIp = toPermute(xBin,ip) + catx = cat2(xIp) + L.append(catx[0]) + R.append(catx[1]) + for i in range(16): + L.append(R[i]) + f = F(R[i],K[15-i]) + R.append(xor(L[i],f)) + strRL = R[15]+L[15] + strOut = toPermute(strRL,ip_1) + plaintext = binToHex(strOut) + plaintext = hexToText(plaintext) + return plaintext""" \ No newline at end of file diff --git a/3DES/DES/main.py b/3DES/DES/main.py index 687a633..39322ee 100644 --- a/3DES/DES/main.py +++ b/3DES/DES/main.py @@ -1,5 +1,8 @@ #import lib from conversion import * -from destable import * +key = "hello" +text = "I love vietnam" -print(createKeys("HelloCacBan",pc1,pc2)) \ No newline at end of file +#ciphertext = encrypt(text,key) +#plaintext = decrypt(ciphertext,key) +print(ciphertext) \ No newline at end of file From 24ca055a2179ab30f40545510a46f28c673272b7 Mon Sep 17 00:00:00 2001 From: QuocCuong Date: Wed, 25 Jul 2018 17:47:30 +0700 Subject: [PATCH 20/38] report RSA cipher --- RSA/cuonghq_code_rsa.py | 54 +++++++++++++++++++++++++++++++++++++++++ RSA/cuonghq_report.txt | 16 ++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 RSA/cuonghq_code_rsa.py create mode 100644 RSA/cuonghq_report.txt diff --git a/RSA/cuonghq_code_rsa.py b/RSA/cuonghq_code_rsa.py new file mode 100644 index 0000000..e8656a7 --- /dev/null +++ b/RSA/cuonghq_code_rsa.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +# +# virtualenv -p python3.7 name_env +# pip install -r requirement.txt +import random + +def is_prime(number): + return all([number % i for i in range(2, int(n**0.5) + 1)]) and number > 1 + +# Greatest common divisor +def GCD(p, q): + while q != 0: + p, q = q, p % q + return p + + +# Use Euclidean extended algorithm to compiting d +def egcd(p, q): + if p == 0: + return (q, 0, 1) + else: + g, x, y = egcd(q % p, p) + return (g, y - (q // p) * x, x) + +# Multiplicative inverse +def mulinv(e, fi): + g, x, y = egcd(e, fi) + return x % fi + + +def generate_keypair(p, q): + n = p * q + fi = (p - 1) * (q - 1) + e = random.randrange(1, fi) + gcd = GCD(e, fi) + while gcd != 1: + e = random.randrange(1, fi) + gcd = GCD(e, fi) + print(e) + d = mulinv(e, fi) + return ((e, n), (d, n)) + + +def encrypt(pk, ciphertext): + key, n = pk + cipher = [(ord(char) ^ key) % n for char in ciphertext] + return cipher + + +if __name__ == '__main__': + p = 5 + q = 7 + public, private = generate_keypair(p, q) + print(encrypt(private, "Hello World")) diff --git a/RSA/cuonghq_report.txt b/RSA/cuonghq_report.txt new file mode 100644 index 0000000..d91203f --- /dev/null +++ b/RSA/cuonghq_report.txt @@ -0,0 +1,16 @@ +# Mã hóa RSA +* Người thực hiện: Hoàng Quốc Cường * + +## Lý thuyết +### RSA là gì ? +- Là một hệ mã hóa bất đối xứng được phát triển bởi Ron Rivest, Adi Shamir, Leonard Adleman và được sử dụng rộng rãi trong công tác mã hóa và công nghệ chữ ký điện tử +- Hoạt động của RSA dựa trên 4 bước chính: + - Sinh khóa + - Chia sẻ key + - Mã hóa + - Giải mã +### Sinh khóa +- Khóa của RSA được sinh như sau: + - Chọn 2 số nguyên tố p và q + - Tính n = pq. (n sau được dùng làm modulus trong cả public key và private key) + - Tính số giả nguyên tố bằng hàm Carmichael: ** λ(n) = BCNN(λ(p), λ(q)) = BCNN(p − 1, q − 1) ** \ No newline at end of file From d28d49d94b22db8a7b6ad21ead0fcaf1aab30b0d Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Wed, 25 Jul 2018 23:32:03 +0900 Subject: [PATCH 21/38] Create SHA1 --- SHA1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 SHA1 diff --git a/SHA1 b/SHA1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/SHA1 @@ -0,0 +1 @@ + From 4f413a4d3015a2a941653656dbee86e051ad4ca2 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Wed, 25 Jul 2018 23:32:36 +0900 Subject: [PATCH 22/38] Delete SHA1 --- SHA1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 SHA1 diff --git a/SHA1 b/SHA1 deleted file mode 100644 index 8b13789..0000000 --- a/SHA1 +++ /dev/null @@ -1 +0,0 @@ - From 3d5f6b5210e43166f0d233495269c0072faca66c Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Wed, 25 Jul 2018 23:32:56 +0900 Subject: [PATCH 23/38] Delete SHA1 --- SHA1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 SHA1 diff --git a/SHA1 b/SHA1 deleted file mode 100644 index 8b13789..0000000 --- a/SHA1 +++ /dev/null @@ -1 +0,0 @@ - From 14985653cdbb5ef34a168d7bde1fea599d2e02c1 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Wed, 25 Jul 2018 23:38:21 +0900 Subject: [PATCH 24/38] Create SHA1.txt --- SHA1/SHA1.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 SHA1/SHA1.txt diff --git a/SHA1/SHA1.txt b/SHA1/SHA1.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/SHA1/SHA1.txt @@ -0,0 +1 @@ + From 1d18f47c0dcf4ac02eadb6b0a29c0321c195d96b Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Wed, 25 Jul 2018 23:38:56 +0900 Subject: [PATCH 25/38] Add files via upload --- SHA1/SHA-1-1.pdf | Bin 0 -> 578092 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 SHA1/SHA-1-1.pdf diff --git a/SHA1/SHA-1-1.pdf b/SHA1/SHA-1-1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ebed75d48d0454301e252eed1221bc32dd3e7502 GIT binary patch literal 578092 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
#I(&HyTP~%{BwSmLuBw7KfYr3FEZZg$PK9I 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ꪑoe74q605e^dP{1^igeO@~9E=g}lspF>-;v+{y;kcMCm3PHHHZFy=O@HmS_3e$LSt6_ zkdjECai0AS00Sqm=EBfW$gDYer67Zs*)S|(UfYmZl+@fhqX2WC`wjquwt!}pheAmJ z@pCQ=JFjh^xViip35uIb8%Q9Q&ZS8RhMq%1Upa7|Spt;>RnT3O?*Ezl?nYdi{1z)DJ3N}#O3q-%|qu)M92mYXB{asH-A* zc@~QPoCWa7sirwOIg{MT8@&LzaPr#4i3|W81OVCuD?7ZhvzH0rH6ZRIh!crJnZot( zM1m6uM(!N=4uYGrJJFKh1~8@K?BGn)cfnf{pdb3+Fey}uygXdZi?l_b1lBi!D>Q zu`YRO2TD?R1SLUZ4CGRGL<03Wpl9+uC=8mjp$dU2K^ha#5*xw{#LVdQ8K{8T{)QzJ7=maytO309MFN1*Ofy3S83>G*4wda;OM_kVAeWKoo==z+6B> zH30%C+xg%Y+WnY>qF@vi_a9*o;@MQXn#LYbAN?}yErc>iYWgXZk<~yDbx{ck+=9@s ze;s=i)Kf@{LZ@Wx0TVtd_Q*;V2$4WFMMjCR6w)mT$-Zv zBgC61YzR;fs6CZq0o@}ND?kNF9h?$C8%eIIfdSY`{6k8cKR_wD$RtLY0w-}bSp=x_ z0^CbtL0myn&fkeEGO&M6g4W9O z=?0RN{!Uy_#{FN!1(mRZL^evCGlr&E%Y0!75ZJuAem*TwDnv#AIsE!0zoo>8{zC*n#5R`} zkkE?iN8{#ygaC>!kl6!gVFXZFD;h?bM1Bqz6iJnW3+g>Y41dZ`$()zE1h6DJt2+}N zK^_VZ(k77bR(KK~04P<`RRMkCLLidt$da%skVKXAO~9uLka}&LiQXn~Lpy?}DO}A1 z$j;<@xUR|;Hxm@4p{DZkvl8nO?VNyIOG!=s@u$hvyj+}#Q|T$c=4LR3>*`Fs4z5eI zA`neX;X9PK5S`s!+)O|XCUZ;%4xg?WSx$C?QRZsO+yk10cW}0u7M`J1+Z6361<`^WCLVK%7mnYcO;OXLhBV0B#T2+8j?~tlyzpw&;Xw7iK&v6 zh<11fF=Yq5<-V!XfiZ@Yl9QVq^=&iumJnn{Gs8p(Y>1GlS_|(+QnAGofy^s0T^FJ| zfjq^MKgcaHva=%Dx|v{s(GYdN@&D&H#rqD$0}pvKRBF;65M;zlHRP29I<}dWgf>i} zt=6BpsQI8WrY^9bfCZ*VkdL5Q7nm)eGJ*1nd_nK0{)WDBKsQW%2Kgd_?#cPV{mkFw zhD;R<9zq2{m8KL(@jV1pY@r5FUkW{&t~}+QT=3jXkQXG#a}xO*!V0*DYD!KA?jaNC zg(?6&htN;OCUigR1<>0mO@W#~{Q)I|8Vh|>vqMEte^bB7IiXxQKx$OaPGlfC1*jB+ zp_whDG>k$E)Jj3mAr&D8T-4`O7*q}gPWguJp=VG!sTuSQ!KwMl6`1~j>NV9-bEtuw zYG(IBt%fcLnKLga4V5hBenTWT7dDe@C~aDpl*tuXC;=5|)bEATOv9*%oAVOTa&j6Z z5^zkaP6a6Jrg@Z-9$@7dP&{nk=-oehsN!o#6O_G6GLMj~TwPcMQ0wxMqhhgBF25`vA z1JblW{LqtV2lmt9+H>kBftsqHj<$#u!U7LAaje9!IN+iagGN}2;SgA~7|_t6kpxK# z1eSmnh3mm4f-NU-S%_p&89ItWn`Nqbr2XC(x`$tm3|Z3&KeIQS_BP1|r#JRIb)#!D;d zX&O>rssyHa3p`00Z0aM$(Uj+IE(A+CA%H@0ln@N&M)Gzb$O%z!36z!6lgOQm$608k zpx%>UXJbo}cA{W@vNu3!6v!SH2TC$)yrZ3ixAcq-oZWMj{6g}wE-))QqMVQei3onU zx!|3sm2}&<29Z;>0b>w_L}R2-7DzFa1saS&1P&u+fyG&f zVNe*flr`9~wLsuzj6tXaFbJeLv{MSU3dK=iJqz|z#HFC$SPb<0m-hf!QA-u=$ckoh zz%;>y1tX69VG1Y9r+|S{SOp}n0gD+sYdeC~EDnU0LQN~oC+)m25^!xiiD>6#0tP&} zT&V0B_dq6AfuYDjV0OUu>y7`J*vQn0!3nFKw3eC`>ghJbs8gO}e zh{fX_S(seGKWL8?{6iw4$pT0-2yrwJ3J^f8X6eX8*7T}6Gi?X|Sf;HGr=~Q?8KVO- z2{eIlw{YKJDXXfVL&o3VHxxDhKiW6Ib0;8&f39z4EYyF{H{@>oSwj8$`vx*?`G?01 zv@7{f_RS21+7J2$vM>5+Wc&kt12K!AC6!;p(l^ac!q3TRK#}nCg!=c7 zo5_9OpA$`fP2W%~-T%41nXzl}gZXB1U;pQj@%Q%)`5@;%J8me)E&sW`frjbNjT?%q zp`R35|AD^w=VbxNlKdZ()5wdKpX(b+u-AW0-vAZl&$HNH!_y#(y??TAW~fuAwtS2< zw(i=gwTZ01nmoT|g$J%pfMU}PY{XF(7E^manpR+=&5qm6Z zZ|EL^V^qMUM)?M3S;)^Zpe!;R?0t~aL3M%Z0n$U|&dmqGpgN;KJy1{{P%R|*Mxf;l z>_NN5aN;wY2F~&$B%s%VCXky6ivAT%lYr2)K-mj50Yd3a6qEBp=mv18IppWiJ#>x* zLMf;(r8x#0p)Q(v4>frT{Sca2=fB~umn0;gyG!?B9OpnmaK{n5Po?;fidpos^z9@GJAHBAk( z2z@4jQ0~RhlH$M$eR4FA^Ff2=XDD{E0Kjr*XNSfsAUf6nR`P~H8zSv}dD@XwaF z|L(E+Z)f$Ba?@X9^$Y13|07n9`P-%X$wMrE#_Fdl@ms3@E!F?8k?P53X?~$pKRrw) zSKz-~swW>f_;Xf2U5S6+SpB!NdazI+FCYJkR8MvK1|8v?Qj7mfSv|0@`E!LHuuGkq zZ~lGc^INL_E!F>rQa#zK>%WTCL+9iFbR+)XJy!qite&bV{7bAJ+H#&lM8Mzrf1se~$uZ0rT{KH>;m?)bih|Z2h;h`pK=>zsBl+*|zL7 zm;Jk>dWys9KQ#lIuEcLv|C`nS?_u@7cw2UQnEYM3da|Rk-@1CLsok%(zya1ce_dDq zU$iYt377Vp)l*D3ej8iPGUWVUZEQ*QXEA5({qL6QDS;6GYsc!pU8)BL&wrWKlie=O zA)d6N{{-Rwy*^l5H zBKo(odMJX+e=+&|X7#^W{eQ~pe_~r!0(fHro}Pc|xZ?r}9I0P>gbIpY@?ShwF*tE3 ztnmMjBUDJVI2!l~r<_Qn%oTrdhzdIO_t$0n86Km6H#E2g!NCJ`m4P+*umR2lRd)be zOzHt$a0}u$0H0b^0M$3_v>)IZPVm4(O0QGg9ZtG6C%*tS>4JARUey95Bk$RhkF~1X z5gb5pKNQu^@04dNa)!x?X;RAwLbOf0e>K+DqMQk)y7`?x-3r_kg7_Bu2qc&V!Nv|a zD(t>hECjQ&k`pqL&_-yxs1R)JG<=8zeIFeIOP_s~I4j`BkV)1{+RM?!5jYK|`YDtX z!dp380Ox;h(hwMOMhGP#?UNHyf*!z(we^4pJ0bxF96gFzf)i{oNwhc!qy(bRYz7|7 zkO(*e2S;JWkZ5T%RvNf9nEVrxX99P!L@R6Q9jfY+uLHkkxka4mKM{d~qflZXg_xVS z6AAAn=H#}PQV6vis@GiL0S^Y1i??ugC&>v3K`)y6BRgr7wgSEqC;c?KxDy@7z89@5 z;RFYQBRGxi2K+7};Zuc!ys}o7($EnefxB2)%fhE0O}_|AZ%K*E zNN(rU>&Xq)C%DdrLT`X->|iH9GZv&Qd=fZaFqD!Eom~dG7V}>SRl|zlW=XVjf$BT^ zrQ|m%Ign;Ur>g?>iL?XW$wp4dOU#O3jdyn-3BhNlrqpG2A>_I&{8p$w;HgwPXmrAhk5vRU-k4rzsD`+Z02f#gIq?q@=V2S{el1l!ebpG))21*`0|7 z&dv_zO%CBBjX+QenUQjC8I$hBf2x$3 zX(!A1We5iYZ()Rk2LR#d*@G7Vr(&qiBw$(S0q|%@4wfqa!&s@n$LP%Tzq(DJ$F;Q= zZWWb`935vjjGRRp%uVhP+tO5(cXzk5lD5F2a26QgMH2)?mJ$P@x2(kQ2rIOh6ahrw zvyi}8qpdB-J*}-hGwd0GNE>Q?t*E(L!Maf6M1|ga4M|DTV%i$zMY5Z*=`e z*I&ZGUrPL&x_+bUFJa&>CH_razYJYW)9Y6d4N^|X6Rb`b^8HL+MNh7f)$JT0fB)(Z zK&VzFfH*D$ICaqsoCQrUjWt584Bt4t(O~!EN(eal<&=rNVh z`l3?zeKhHophNEX=;&KU!%gq<>Lo8deDVQ(gPoNjPePWz@|M!`-G2K>Y#niDICRxI zdtDo3w)xgSK8B6M|GVSkrB~~MY^DjvBa~U=XiAi|b^}=H; zpjb;4&e4fBKRy(2%YW!vp^4|C#$w+U&d6)~cQtHEOx|yQ(Q)F@mu(IGOy}U0siP`9 zkGUEZJow?_GO@=>6fo;-q)&f*8(y_;G$hWo&7ua!EiQfV(S2Wefo~sWA8r}f+z^vu z(JXM)Gd2QwXX8tYdm={yhm#C<*0~$2@r|xYiE&dfTH&C-HkHxj&KdvW#@*V>we*Kh z7hYTb45QHzhphaVvS%@8_oEK82Gh_dxSo}HyG;#Cl>{YwyA6bHdK+NJR5l$Dy4R9= zWHcpj{Pnl?4{Q$iKW}_h=ym&c(?b;l$sm!P%cZt^<_2iv4^1@4+uP>)$vE3u$R=tl#Q_XbJErsX&i}b zO?L9ha^cWXu`NzXJ0`x?`h>pM!967j;gMr4-4tJ zYQCcS{i2si3j@uDKw`CSP~lR)^?WyL>J1px*guUSF7kNNU+?N;-&D8Z2C}4jT|)tl z?#hpd?KCCk91d8K&T(Gs#+Yv@?YB(t9X=H;LZ9O0Zf$y2N~G$|*ikph!_O{6m-tj1 zsBn?GC-roPXMX9()o1d1;+_}nDY#^Bk&wP|bwy~Lw>tXshEquv`2oy~r`kF!)Qtl+ zk5*S6JnGJ0pL10H65^%V$puYL?WzG$y+nUx$|f{4G& zB%HwgEos|ZuT%?bMs4Yxfq9SJk0!&e=NYQhq|j_#O218ZCsr+5Gf7#bWtS2mN2%&& zK_L%K@3T8EG-+>piM@6d!YO&?pwOJ_(W{?5HhYt8v|vFVJtJo}j? zPebxv=_vX?I2Cazk!DF&*+YfZLl3gU1n+K@Cf@bydmpxAmndHQ`ICEMG=6pN37ejn z$NKS-r0I^tf52{LHC9)Yu`J~eKHzYedCT~&5xn=Y@XAwrKU93lEJjp{iGF$f$k^3y zt9w2hrwyTDv%6-o8|}@J&X=y(D-A3pGi92qOH=L{J+ugO(;O{Z+*hsNoEocq#YVrj zK_@*r$wcbOH^$?;Zg(*m`uH!~;BhD}P!G5M+2_3e)*7A49T{d(X;q7@E~W+MxsC1E zC!@*U8{fh2I_&9cF&8mq=z2*J?kGU_8r>a{6)<}kE zAd;~ZDxCQoLzy*@p(3F|rlMp@DHTZ~l2R%29LW??G>|A#6lF*uC80DR()T?3IKA(E z@4essegA!boW0jxx)Y@|!$oT{^MWU9e|yVq4>Q&%F8|mR6hDQ2wh4!_wE|Gru;f<=Qtl7R(W= z;fvCfnNPW4ckP|$Y{Rfp)9^4ebEOo$guqAd)~tIy5Wp`%a$nTII?(0dVBhkqI5pM# zxGjqkKVIV1F37 zn^l$D74nFC&j%UB0S(Ijis`>}x}4h$1xhQQD`;u?-S=KOu`s2Tl6~Wx2>0ghzFw=# zVMQyPrDJY+Yxu1_R2_C(cY>B^RO35c`bN&qOZ3dLB;yTNFV`!UINGMylne%NT@&k= z=~C@8O-Es>$cMgT9gWqc=hS7z@{C&67j`bbz4ly9;6>THPYcI*B8oD-I}D$dBrkin zt8Y!##}`pW=GniV zh<+?n6uZ<$+cl-ZB1bmosi6Ofu!Z(M;VB+so;liGQYU^r{jMLbY46VU^a`KYsP)}D z>(%3qX9kh9gL#=@_TN=?tBfj328PUO@1575JjY%4zG+{Q!iyDec{1cCd<&gi`%Mkz zYNe)Y@3#-=WEzOsSEX-1eC22F+{@2K#ZKidG;NdjYBTWfdg<SP@Au|4rmJ3_T32A>rYPaL@L2njBc4fzJ>Bp4Z`m%js_nXgzu)Mb zk1bbC^zQGK>^s?E>@8SQe9yixN#e7N_9^GZj%)NDFA4rMYw`QEFWabX(xi}pogY>^ z&(*S;YM%PIlFl<@=$!nGYxxcxCSi`Ln+mXQoEjryXp~NO|<` z!s?r3u`_PFe{6Vdc0a@aL2mK-ZMN2HTIJLPx+LC&Gzs=DU7m3LT$E-5efZf|n{vCU zIu@q=xs_sd(Y?Ca$NAmW+U#PLjoSFi)}IfGT&H8;Q2Qj+jyzpnu$XtIb(OM-7XR%X zK@s!E7^-K-UnHk?r|O^2Ikz_9h~?TZ$Hk}3t1{=lbh##d$JG?Cy~pHu?W?w0f826g z_*KBv){eQCKPtsHgbk9faGM(qvx+Mt8*+^`qI5^(4=!c4n}|IRvwwT^xLduLF`OSawH%~ku!N?7&A{T=6qH@!YB^L|^VKcAaXMXYvf zMYN$~$&awn64S1V>W@Or&tJ{&oT{JkeZJl-FJ|YF+1{g>KZ-w&M0OO6bmngxjFbNv z5NDH|Q|)DH8da2VipOxP#B19HBeylg)cZ1A1siAdcq~>nu)b^aIDbZ)@RR}C{#CuF z5+^Q{9J*j^{81(A4qej>pL4~JoJk$<5x~6}?k_q}b{>Kl(`5yb# zTsYX^ui})Uz^uJA>xA5Kk9p>^BTFadE-u)eRW3Vo-l0l?_o<5?r7^dZTQWP37Q~oj z8f`wcJTrF|&!Q}Cljwws3A0(MbeEu`hGnwK8@%7^?FzGd6kXFjzc$C@^Z1I;eYrV} zsdkH8RfT!CC2g6aX)fY;@nz!rpnI971=`Q-#J62rQSEj2TWY}3`#Xhs3l_cfwcL=UTt zwP_X~n0P9^lYHro@9||dHbX*!XNA&V3B27~x%$VZYw_O={6`MOJASqPMZ3okk(zEW z{p`ap7j^9eORt2i-WKOn^J1f_r{%1@GJHMObuYY&J4=5Q z^#vJGf=k-R1-z=(B+Hkb=(v+#yHljewb}d9={G(NhFhGo?G|4y_;P`38ka$~U+jNe z3vk}>w}SuVFFLw{4rh`B_`WiUfg8 z+Sg5HlxbDI7-kBbKcgwUGht!=nGB9 z)$P-z(RgUjx9~O5ngYB}r@yhZUwZMy^{4A)jktqm@3Q7sis3)OPyEV7ec(_VwMx<;^f!}&O~vaSVj zRN}v#&Z)va?t=4)VQ7mVCdLmnlmGf$v$BPi3UMN*iVd8vP8`Tcv!c*wHgHBFaeO1w z3XjFaRb49C3*qz{l!{irAJo z#}Lm%gnX>aIV!x0h7M(HsOdB-Djg;PJ>mr5V4cY) zhKdyoX9J%fgs+8SF@pjpt1)fhYtHahYa#;=k(4GQ3{0#`BmpcN_-GQ$kpL1fiBrZx zgde)WG)&P3Ug3pTyYPucg-QSofQWa%j}3f=8@{TI;KQH1tPmr_6ep*P%}Mb72D~Rv zbV(wS2v|u#7!tg~hr^KY1KUUh7#2Q848)qOOCiDeWGXf!__H0HY{srjL4rd$(gCo8 zr_jPCIm{TwrvkmaQzL}C)K6L2BYiS~eBq785{ z9%@ar0lJXj#Z9b3VnG|258@E}fN~rBLOL1b3fq%aDDayshp*d{;rs507c$TV&;3QZ z!SQhf+mPV^Y%<^i#~_p0?2mn7KLk901H2;_U^^W5PuV1#c$OR)XhTRG(1#4PA^HRQ zkYWBzi06=*>t<_Tx) zQ2}3|ekkyU3mrZWgY&{R$ZsS#w9keDgn$gV1A>SlLLt#QqCTJ}@DV7Q919T%DP(=f=flsRwP+=K^LSrAT3lQKD^b{J9 z89v`Y0an5hslbXR0+$l9hBINeAS8g8A@o8A+lpz{B&QRC{zpc^(4d?G z1RTr}SexvJz#d?kj(tyBemruU=ns?x3n+#sq@pBYA2>b%6gDJK1QrHG614{oM6d&* zgT}O>1Mo;f8hRBZvK1Ty%AN>_C!uu+v`qGc=!etUaO#95ggXuU23^1e(ZxJaC|ATu-G4*dJ8|O3-B;Vpjpv* z`THC|>r#l`IK#)rYxGr$02@(@r zE1V6w3NRDs9XS$eL0blRmo#|mkij5ZVQom;pcY}E5hOGL-3pIvg*4oQ!muK! z4p1-w!%Sp0a2uI`Ehe}#$WXv&R+wgizJk{%fnjMx+25aGY!C>vj5Hf2SWwiDME{^~ zm{k1A921=tcomw+1^h7q7m!OQqrI?Uf@{tMH;gDnDFv=T>@dMm#ymQ>wv+e-0RT4$ zT`w}rh6VFtp*;lGmZbu27dsz>h=2#mLGponaNaBx7N;CMacGC`8qkPE{LqbpI^ZcF z_HiCyv*8)$L6n1q2bY?t147FJAtdram{~Aic0PC+C=q~578$h|zyP>pky(G`gMwiJ ztVBKq^dqM}2tA9?*H9mHHVZTtg}6g~fD7rs0_?F6b2vV59iF3u3X27NhezHM`QRq8 z&<(eGmcR-OGGRbsg1`hsCa$DWh2jt} zC%gdLqEUlx;DRcKC?hkhNZ`Lh4zfSgWCHmKD@yo`uq4AZAqf|B*bA=baE(U-PJ#>D z4T1#r38cd+Oa|ct5>^{n>i^d}$5?Xis7=ve{=eS;!WRc`|M|{wBsh2UcF@NDuRDQ1 zpv!-}1HAtRKkytekN^AK1_%!9&VKzLZgjR;1V?~yuK+OgayXt0-r0b&J4f#Y2f_Ql z00vyoAvij{|AJ67c)+BS;*R2vF$WL^3h+H4SriCGz)}*jk@wN728P1*BV1sG1J95E z)~0~nz!C@waa8($xkFc=2T2rQS3XHg74K4@>@q{%&p-q-yFX&ye%V0KC&`Inv)MQj3F}n=-4xWHAXxSiz z-2jo%gh7J1p#EeR5;f2Z!F;4L;lY7rf&@$n(Em3R2eB>i0pSADK!6WckYl|d?1eyM z41g%Y;NYaegIwTpDlDcZi$FvERfK2&lCq1KC;%8w!8jTSAY8zOBRXV)@9|d=q7rQ) z0VzhPa7_w|7zYAU!UbI#1QvY1fB0w6HJU|2c!7YBATHK>G#>=n*aN zWEqUh_Wg-6>;-&6b{WJR|1r?NIfDO>XWoLQ~N|djHK4 z!6gcb2IOWBiX^82wb>288UEw35GS+IKyW83GXE-qAO^%%(aQ&i1`<@%p%76;LgOkH zOJNZU9s$6u0-9`^z z@Pir}aE=eSfZ|j~20~kj0XiZ81X>=D2q6d{FVscD&atgTfCc&>7C}(Pv8zl_2v~;! zN)GZM)(xu}xDeqMNZ@K1nqkZcqmM+FKw{3FSeHU~u-assawvoP&<)a_0l*+&kN_Mr zfaz(7YzB}PE^KcJ5-cl>XHaqB3`oFeH7>YbK#YfiV&LaAAj$AOS&a3bCYaHflGgo3ed#R2(SWc40I=O9uOOW3rvQ9 z54L>}b2tJrBHk&uJ%us_7q(DA0v2!p5Dlb<2wP4{CpLvoX%eCUCIgzGg2iA1!T1nu zz$ai)s0Rrqn+qnfM4$s)55il53J`n8nZWiC+7*m45X~^mzyf1H*k)XMGC&JcK|^B1 zkpTsCzyPX7D!OrGKrIFq-~w?d=nm^l)QLpK)EjR*n|;{ZXR5 z97tdbgIybZW7x8sgaq^@I~z1OW=}!_W_vOlj2aoj1nj;cQ~93u?FiRG=!)%=!gKwBko|i zU_%vVM8*=(6Ocfs1hf(cK7r9`U?-_4CTNFYI3n^6!=P}$(9oPP9pDY(S_GaZ_jEuu z355Z=3JeN4<;06I90$vy%vGunl zIr=i_({do;Eb$pIS#+eCu*Sr#QXnRv7%F3M8awzGa=;W=Kn^+pMHn0?N3{*x2Y>FU zCOB~fw)ui`1O`+X+vEYhaRxA{KYieAG2}N%Jc6uj6KDf;r2l#61PeI9g+GH#;+C+X zKtm1&{@nj*F%d(^1ZW45&;EJGfpKC$KX%cFBn2_C0hz#61wP@A3V~gsYeXUO03G#n^p2Ql*fBWa1gQfp<|7ZXIZP)pq^>91_wg0#i zs0CaQ^rPL6FrK|l}#btwFBl?NAGH4@o)L1PJS zKO~3?r&ACY$ihyE1a^wfBpPT)VO3BW=te*SFJL>+g@Xh}A3z(U7pa00Ne63y8=GWU zvk~?M64(NiD{5d!5M{VWfPEuZ~`$c7l4S=W&n!e0y04iMa+nB(}^-{ zj4%BV@IYi6wh=**gVRB$0XPu)A~V7E6WtQKp2T)15(W1=ala0k550Y2zmy7Y0ftK8 z!d`Shf_PgCvtj;B5C{}MNHE|n47RR;m+ipE$Cv{E0m2J)@f9zWP}p;V2cQT#2rvy? zrojb0=KS(y-aCiW|7I2oiGvA9B=g$~l0ZND_z)=(s7u*}bU3lNA5-pKnCDS1?h+M zSAqB>17LvI5}SJ=hY&od2=D6=GJytVlHWmMpdDyajA5dRM5ZGAZs25Cv_mVHB}6Tt z3a~OH*q$4Q_fTd~yrBT00NsS#2MJi}Fo|qz4a|p`Gynv4w;%yjz}KFz7f4LLk^IJmG?*B(j0+R3>+fC@P>};Q~BI zlp&o}&=Duv0qx)k$iyzgUQkuC%di)u98m@`Pf-CTVwVBA;R)bkmtikJ?8!3h1@#TP z412-NXzUX=qv0|M3)uBPfpW-&PVg;e43tCSuiYznfIeWsIa!44fD2CCQGx_E18GJc zg9MCC0uIH9GbFGb@CNEK3cU6FZ$agM2ATiyj4z48L}A%Qa3drjTn;7e7BUSn zGQLE|E&>q&%Zdz&F$)0ge>~$Ws5lCtv=L$uYPbNGKzm5wFc@7yWdb_{c!8-BWymiO zn+Iiwm4I>JGD#FPLGXkNXQGU_OcDjc(^v+GA(gcbnB z3tp_o3w!$xG!(W2#$qEI84DtZlgLKKg6JM$Rv-cIErG0oXu)Jbw%`JT6Ej1;BH~qu zFol{9Esm@g`B5(0=!L%g>Qh5`~yLce3!1>P;j!6sEQB!JZzphGYw0TP zfY9h*LIRPGF(!h9NKnvhfHLR>v=&^@2xA$@E?zL2MP$P(RG?BYa)TSZI1CQKd5xC9 z`y>t6(H^#EhNOkMHgJb|{2?^FSipW;84WQ^pMV;g|G5Jzp>Hu6xPazJ2)0Is8x>p` zF!wkqXoO>PScC%?kp~kdj0Kec=@<Bb3t_=1Ccc_5!g*pH$Ktzn}yQw-?hJbL3=mZiahcaCBw-!xMZG z68}|!UnbSDbzkG);^gcFri8AH-@C(_D}n9tD;iFo(p2LAPQ*gfBEYb=5F-zaPYEsR^EUgR&*sQ zTCl-^cOjJ5dfCEv7Pa;`xjIOzC~t&+X_!G}5auzfa>+eXwN&e4o zgOEsn|IgnpE*=#wu47!s{^K9Ya63| z%L=i)EU6ckwy;s8I3=b~{}b!9(eqJ1ZqMu=ciz|C8ZI9jm>4+9HGPM|l9?N-rOqrm zYpou^GVo=skGphzZ^Wu$!J|o2*59lBnEz;=x1Q0_8!^2shk`!GfwBYdxTQ0uT_oRW z>sRd0P$-#I@^xfl-n&{Jqh5)MZ;EMS(H2jx$HpCWA~)`xl9^hNwa$8%t;gbAx#PV< z>nz;7o!37#d$Vcf<33O8^8*iV{2C*b%{tTj!n6HFo|EV6X-}>=q;~|J%W~GBj<^_Y z<@FQu-g_b5HjU?dqwZ0?Ssm$0vai)ov=}zEoL<1|LH6FM$ryBYx_$GUol*KPG3iF? z6yfw=_naiwsfF=ui)>NS&0rp%*0XtA^PyYC_iy*84fl6iMeqIPGUe76`sO!ow}S;U zqV|>r>Nwv^=g|=JOLey`U}a<1)IGslr{<_@)HTeX%gKD;7bDhD@~j0!~W z2vV;oHkalhiH3w^++VoRN$D=t+T<}wv`dBiMd9-m)aDrR+UC4@!QJUSHaV_K)`_;% z4i+lc-jNO2dpn@6L{q#};tjvy+ecDouiGib?97ubs2z{g$bD=1LraF+&C75}t`8%} zjQQfRVN-quwKigl;=%{=2J>cbR6H$0cZ<1XUzEsb&2YGOIZujPZ0o-H+szW1T*~+O z$W9IMJ=^7SZ>{Rmvi%nh7`RtapO~%Ye;1{AJ9KsD{8zn)O;cy=s@Zzt$CXjmK|7(P zdBwLzdOCWex76n9`X}Yrnez19zWwPjeN~m*sgxuJsS@*#CD{y^_`Ps@ocub}QN?1(Y^%?TuhXT&H>Dr=rXHKRTy~@30;@`go2LDy z>DQFPe=2OU6Zp|764W5{D0RCj>&3=tWrmkCPj7feBbm)Vnf^e)QfYU$DeaWZ_PULa zZ=7#gAHDmv_MpM*`rE~|J3Zw*Zc0Vx4PW0OZs5by&#ZT!a$#*U7q8>f8vQ6|nF_nD zI(Jgr3xl`5e56on*zxqvhYl~RqxWQ!jvG~~ynJB&CHtj((J7x38$07Wxy6>+?+h?J z?~=d9JkLVFL!)BKfwg*9eH=XEqHgH-)7*-SEXFkZ3a4+49}esYQBxbJ>gfM`|JI|{ z5AB0)B;~{f%_?ULo^rcxO?=IX97Q1YjpRIwrx*2WokFIV&nalyDAUnX%(I<=rnLSKPCUxC%LY7&Xz0M zJ<7AAPB)xc*4@$VFj{uIVu#|97X}Y9nCBDpvwC+OYe~zwn$<$>FZprfL5G=(rHjjr zw!&4mM#UQnd$xvN>&xc87C*+iskXXu%DAN9Aum&p4a5gh=htqYkpdGGST&`JxNl0`9h6&h z?d7uF&U0q-aKAayx|cTm#rI&;d+jN5jYm>uDO7nb5Qw(OU1S`p>>k_kMR7c4-Da^S z*`Sa6g!g{V`jB3iS7~+dS-fu0&`E=g8QT4CKb$bzes-(zZOsSyH6A)w9!@P>e#EP~ z_~n>So^emchLsVIMrW+JzwY_P$0q5*R~t9YTpKm#aiGuQj}H0yU&@cCKcdFDaF2RR z^{`aTdQ_HOQFB@}{9s9(kP-i7-wpBu3B3MY8+}j3>V~Fj7A6_;EsaxEkBIR5s`BE{ zw99qmT3FPCyw?h}tY5glYj<|Vo~>_fPVQ2#Qce%7a(R_x^OzoW+~CTB(WEbLe|i+z zD=g|Df3la2bt*H6)mf!~F{^I1=l<1C=J`+@-&`0ul{_B4GA#1pnNA7im^xR>x-Z)_ zb8bHVq%$GUaI&BJ+hU+_m%HV>lB$`pJ-!R>uNAkZ?e3k2mGxsuA8?Tk5x@-PUsXRX7AMtyIQqgsds>^ORau{uj{qnXfLi65@%dn#E1!cJ0@r8NevHnr{=cik7N7UWAslf0ZR zT%5?=IdlD!@zph9erLso`B z+@w7PUuLw=*%p^7-u+xc{|DurWH2T41&w>esfE%$u{Ol{hu{wCQPSetZS97(z0ZSA zsyxhfoN`Cn=h4YRCsr7bUv&L6ohnu9)T+uhZ3FXjb>`>JIh#0!96m8+Og`C9`vMR7 zR;_5XVMU9B{`Jp#ffv5@RNBYAxF&P)ts&2f8y8B`gcmk!?k;$?_*lQAm~H)G;fd8} z&j&k-(A9kx%4vju=504Ps4h_Y<#OA7ZezFdjwIQpd;9fViyEWq(kwjZKJ4jpHOiJ( zq&m;I{QPj_NK)y7_|}2X`>qstC0{;#uB?snxF$8^n`m`bL4QP8Epz8K-4vbS`SV-c zs!q!LMJ``ndUKij0q;AZ)lU~ou3Ed!b$0JQ<-EFk?MJky21@F-4cC|ED(#b^(+B+> zYu-oxTDylwNBP;SC~dWe)XL#5$*IOQLLyz)PmV;JJ`&DUDRofQkf}IysN=BCm~z*P zsp1d3^*a2%w$_L3cRcd?`<`e^y3a@c9d~!Qx_3=!rp`JOy(4{hCGS@SIp*es4KC6` z@@tQ+aOv_tcCzS<*^L}&OYx0OJ~1WpXB^wP`TXJ(GX*_iljAB{!U^(6i-*g9Eiuo! zTA;RnVDQ&~+Hm=$bsDy5gF>2`cAu(r>#hdq=R6-2+Bs*LT*k4oYNr*;zkW#OnUgB^ zV}8$w=mjU^*nHOGxgn=ZX9@C1jVf09Y#wV{$a6$JT>Q53?x+{iJAIUldK{v%!@teB zRkf==cXlEFf|bYUg`ZYzU00_z_h`3&!1c$+!ji9k8~&iR{qfJ6VhhKmdal3k4~>=+ zS!okTwQ7(Eda1N4R{CB4cR8zLk4Ivnw2uojMdp+UYu-%i4%0TPJ9+-|1y)A0qcC^E z+1(j8Rg(9s$EEk@_>TW}Jy+L$-+cUwWx;(a#q(Oo(Ct}6$9pqfrYz+*c$d`luD5V^ zfIvdD)aQ`<(}aw-M(rzL>9j~wmcNa!6KL*gm#ldyl<(-pHU4h%jC}$2DR+x2f<9bP zb~>UGfezV*d{HP;{Y_~dN3cu-d3?uLTK-qR~3^xo|B3>=fa6m-20WbK%1=ebg6rJ|{dsdT9Piu?#x z$&sCRm+o9ve9HRXJDTOXk|(CmP4kyN9#SpKuuquxRrPY;=lcsA+hWGm5BjbvGL{P) zYTi9-)v1%(YuZkVpVyRMbaU9qcBFh|q+jLy;I~_re07O-+tD$-UctwAajSf;oYyRS zs@9gE!a0lXcUBDsXQzLAtnf=Q(~?ZLSAC_svHaDSyNAq;3YHn$DFH zdx=t0$=q#y`|tK8`ig!Eez2HZJKCRde&J%Hr+WRLTJFB7uI4EU8dPkOKCRvAFip4m z@bmY3cf4vdDC*t&QrTqbxS6lPj{A<_fM{+_W0a+NEL@@#}jrb7>@*V<;C z9@CI)IuRz(M18}blyqYHX5oxes%G|RuV^mWCL(&2+o&ad6@ zK*DZi`GaH2D(WK5J5Jp_^|>)}LuzAL)v$E}rESiu`{j%G`t1GwDN;~=bz^;yQa<0% zjNuM-;ndzvSJK(L<5^M_Gi#R>Nd<0t{jRVp#IiB=9MgMQ7oU!xWRmwHSf^G_#yFfqE zWZuvE9;NSns$2?}Z|xCZw9Rz(b@FWGm!4{2Zxm#YC#Pzkm!9Id_N9f`4>{9~`EpBx z+5-zC{Uf^P9oe`le0*x+zM4S&hUc4JYo4ANwrs5>b#K@*eoJ%5<`;FD4#Pj+M-&bG zHmKw4Tp!_f`P+{R_1BME(zVMKg@Q!+1cYXgr!9WNwd3!WQC>^JT0Ya)vxS&+bui z+(5o9K$8lWmXM+G%*mS7d+E|e|7>c)$M57-3H{$hvzbriTKm7}6GlZ||BdosqNW$BJrI%L6I1Hw&0CGKOrl1swG`a_z}3gvQ^)`|y<=0CbJ*Q%0x zs;<_$xlvhhz46}~pGXYezES3r*U>ldXyEndPkj>;Bj1a+t9RVo)1Nc&W%q)Ki^G58AD5hhL~4_#u9Hw}oVk$XJCSe5};^L2(do#+FhlkGEBF`plCt zW6xKe`0{M$>_yw|J8Xy@^>~t5`S@mSCS`jIYxAPpZ}wgN9QgQcbsy>O>XU0$t5p$%UFoKuS{8pBHyWQ4?f;2%VK=C3H=I?=3Queb*bWgA#vH+ zzKhjeZ=IA6;A0KWEpTnWGwZs@OZjk$dcm#ze(zgbAI1*vIb782w`w(OT>j-<8ODma zS9NE-R6JJgwles*-SNa7hCiiEc)WdMc5I3?i_ty0&R2eqtcrWurZY{)%Cie+=*cJ~ zZJy)iED^cmrhHz+liwZvua;)+8g+E?aoq3dG%@%ke*aC6Pxq5b7a1@;8giyCmr5+F zUfXb~XnSF(y?1AmbJ@#ecdnW7tBb=`Ja_F==N7D>WP6M)Qm=?TA5|z`Kh}|OFG0M5 zt8eD_@KgDTvl(Gj=UL2dT{{DB>m7#@teb%@t@!0k>UFyY`$u}!`$s#BDRAwif(%R*EG>`v`p#ztm$vqFP?y;a-eA{^?1t+#1 zwD>9A(Iv2O=p4`BHSZTcl~lCeiZy23TcjbxKe55w=Ci{ms(p+u9S*qS(>}X zI*NF2oAZH|AiGq#Xy)U_tuJnT6!DH%%=jI=iGPW3;9MOVvqDBV`5~`$%6HvFZqXsf z*ywuyIXCAUExoYzTf_Y%f#=-AiF)>{tL_%>_r2PsB;qk$j^{b{zB;@8<7&&YYuAg%Y6eb4DSI%go-lm+?-*)`|Cs&TF>KG~{exo6 zgCD%Qt_Tf(>B}5EM4=6(XN?*E78Z4o3002mHIcb=|I4ph|Bi~XXJ;>+diN>%VdgnC z+xd@Am{McocPQAaymj6=+g*{>dro&@bD?aI$TRatjpMwHKQ`Wpzj^VHMc$>pdXj>| z=C=xl#+xYF+J-@<&+cE0J5IS-`R2RUceiClTTeVcCUWxH)gS7r#)aPx9Qc}jojWeK zW%OOANBz~i9=ikIzY18O-pcp-yS1Q8(hP2^xE_ASA^s>zhF+e|@oP(mq)3fcxZ^}a{oY%5){hhxk7+8N z`MF|LOSx?Q^>RZVV-d>pZqoDPYr~!oZSP$+gP(Wdq8-y+wou70YuZ*;`3OXB4zJIu z_1OPv#9eBU2T3+lx;1>qt%fPvgv%G~qP;Xd;qY@G&lS6!LjkU80sZTOUwzr<^&IjY z!x|68>kifJ5;Bi2c3*!rYno|e|5cS~{__^i;LcY$G+Xn->E(Cl95s5dmYNU{d+MIf zGI`cuSZBe-p7ma{PV|lFOOUQPsc0mMdL>9mty>~J>wb2hx>9BTiptn+)%~m1EE6^u zp?s~-Fc-TK`gW-ypYg{GRaO7qkzrO;-c4sC$0<()ogEwxpEN(w6Wnv5J#tmH_krEL zj`^4N%%%IP9_mYV`XyfBSG}iYrR%WzVBguIvEdWH6KrP9JSBGcic+qudtUa!l1-Kl zcNGqtkJdE|T;nPhoYi|g*2lTh%eiv;Lan(pHRS`D!&95}J1=SNb23qXO#8CoL6K;) z{5kon_Z8Nbc09T4D1A?KjmpfqVb4aF8jmh%cI=aTX&Dd;mxfFo(Q4_vrPn+U)?dg` zZ8;GzQ*Os@ZAwA#%94;b8D#6g(x&|KKriZ%M1^&~pXKNOEH(6bchTwoz;w@L?oV{5 zCS^5UEBEXjYX3n~`;n%z1D`QG^3o>q@5_1D!)K7Jl6 zo_&2}-@E6>Vi!owU8g+g7rH7hzc2V&{ihEL50~Vof4On3bwezdhV@ykqMC1?-B+86 zZnDdjD2-Gyost)p8W}FWpiY~WlEfYCBlFy=(vcONS7?|d7wULVLVMeOwKw68w&G@# zsWD${dp{2glRV9?l6I2=zPP2F7g;|1iI>M+r-G+>le6;)I&C0JMfm2LJ?9QsK9Msz zXD8chK^vaSJ8?4PBA?)1>DOd|&2|gpr1<}w%~59s>z%k7aGJ&8|isvlIhKb3%pgFoxr zt_((HeU9}&&!c-Qt3->!GTs#_*6QCB&bFOmxb`|N)!~+)h-vqZ?CN8JS?ZbxSCneb ztGv+r;~rh7xW4ztv8}tK-0bQ%xpVnkwB+IsHmfwvT()w2tB66&wS8NS56um~Xy&AH zPRpceiRwC|t*XxJzrJ5#+a$cI>P7SUz;y-7Z9mU)R^(1QBfG{+x4!iC(=>-r2BR*4 z;-A;kCNF&bllZ|sT@MYmABi9Pl_$`lcG#n_XR%ja>6g}sy$ANj?p)!P9yh$l^t;K& z!AxVb-)mw=N9D=~(%;YAHsEMhXVOq_7S*pUwoyB>Hh<+ky|$zao(!Ht)4cgu*3$~c zj~Bc=A@yYu%URm^=)mku9p9I01n&LpRjv2`6&M(J=GJn&l+0}IviTvq?f(X(v;LSo}#?*z)|P!H)VD5o8(oMR_uPh^+sJm z!`Qjfs6o>seWjh{*{?Sqmb9SQJfdYTKfL$qaO&8^SiZ%X>35{RmM^-#UTDdkPy0fX zDnCjVFEP`86DrKLFi%(Eg7-dk!C|kGhgJdS9>)#EC|!8y^>tuL@sl5OBfcfpnTFre zJRCOlu#aYbb+PWmZln8Z_g5YpoRe`T<@pcV+6xb?=5{PLoz-$xw*2e%sw`SbNFQ&9 zpT+WP=C@jczi+82T4CA1o1AyATJ(5(UW_PZN3H$c2lS?MB3I50@eGQ{3%E?3eZ5e} zD#~zUnk3n!F`ED0al5EXMLBA-+|nYB%hW}rG|tvJyY$J^yD6Dk9`$8e-fd~h>-`2_ z1zQZac|O@+Uau$VCE+!vnQ?yib<1b`_oi&0CcAKUW>;6Wv&-y=V(Y!;58t-dH>Wlx z?EcxuPcKN={mS)@D!oTSyzl)rvAMT@U2)nxcC-3XTn^vtpn2AdqZnG|hjqV}iw`Dj z{jmD?gMBj}-W0VE>8d@~_#m=&aBZ{rYQ;lNpS{PMm$h77P9Cq;757hkx$fZSyPq#? zSQJ>OXRPJFS;zlCE;VeYe4XZ{JNJN*I)^JeLUg-lec_oZ$eZTOC&edocSPlV+Bd6{ zrPfCu4^lo&>zc;i!flp5Mru_(A&q zT$6JRay#E1tV!6bw<6Fod&W<5=I_=SKkcHY8%|BQJ^%c^`STyC9=QC;`6K=4xYe$s z3IRP+!|HauE^Wxp-}te>gMD`1IM3XU_tnq!iSR4lZq}Hc6aj zuFA!KccPZt?osG1MgdB(TW8p zX`YsjN{?$DMvs(Q^QLX$?K$2*YSjAmsaL&Q^M%aTYa`xU4hQU+<~3{i!Gx|IjGpO> zD+d?nU7SgOwV6jq%YzT>WXr*I;&bB=#y*04>R$IUJB;}=~1$|RP)$rCHhinKT95mti-b$ zYUt`kQ^d#K%V@N5eXUFUxG7M-e)&d$T`uP9C~dzhOj2FigWtbsFdTd@5*YbSDRawQ zn|Hm}UYg}q{BjuF_U_C`hQ~U8{hKMb`wy=-of4TG)7ePX+qk57+XlP0M?W0*mtTMT ztq*s=TazVgEDS63PG5^INDD^r_*Tljz>OoU& zjW$vh4m=@hE+9@vC znvr|jV_n7S2WP_aeD3SlR()?f_;ACX3l))ub?@?phdn}V)-PXReq(8iSyss&i@on+ z#0(zY-WQ`zt(w)krsaf-xI*j6g3nfhR{9Ne!`3y=mbfN2@xL-WGyTFkx}w0BrtbTe z8qex0)uJwIY(K|1F!=Smn4iX2_u)rVy!YEV4XNyZ?y0-#>J<|~Imr!i=eW;JIZ`=y z-p!VanHMhG7Fz}y9p81o)P6%*$WJcr?v}E529MSrAWJvvo2|XlJx%?=>d;!?E?8QpuIs;mmzxQ-S6yhf;3SuOw$q zc;9XK!gbXlUpL)i)1n8 z!IBL(OV=%T6`Rp}DEL9wE60qWLqAm|_B7fYRZXts4t!;^THJS>ny2>bxUkKu+dMT} zUPO}TDKuVbefpBeYn71KC1i_5TIQSX4$N~LH14i1_j+?oDrf7n)=h1(zEsZbUvAs= zSnxoE#*e2h?=ID*i5b-ozWUV~d+T-Lc^Y$6#D2}H74LL6_Ih~DvY2l0#w=txjTv*C z{&22s#1Qp&QRi8qXG)Qe-^cEWKYe+X+R`0|d?W4R>X&$hDl|kYlPb`uir{}8fKT2b}GWj%4-2MR*MU;Q6N zt(y7FE3PU}r|x~R@nAvM%Ite-rjkxnseN~wqHf;RIJD^?ZCAK=viPa}ITLBjJU6dr zuckFC4K3au@0aX5Tx-9@KiJBDc-%Pt_qhCzXZ+gLH-df4htAuk7>e}%ni?gb(@eltU+ zlX1xZPU8AK`zx;pX6`Df@`e;zY`#_`qPUJ)gtX@A6JqJeyx}DPJ>ppQNFxp@Vdy%4TEH zc%^|OUm`+2ADYAcd+5=SuU`M@?emMbDNU%pQv9;C0FWIN0#VsSYK7r-Yw;N z!Owlucj1SFgR6%3#gCQxF&HdtmQi z*{$IVp5^cTR;AA}yixJ>$6RTfb<*?Aa+;s<^n8}gq^}wEPcfBvZTR{_ub6YBV{ykP zm*8dR`3uhkj-(uH?hZ;>@^R7Slz@3Nj^#>yw$9VF?alA2NcZ+F)|gG{`|USfAv~m^2SGxcc163upg>A zZ@j!-{?d?nYU=HqLo^4SS5}d3c^d0VsKG+A-}=_)%*bkQdfgC_z51Mw)w1=!MOJP9 zcwmV(Z$g5==M+sYKSiIWg(?-6xgLhgVzT9pn}==)H;!Zqe^vh)RexaX*{pZ*HSyJq z^Ox7!8*Y`m9d|0d?paXchm8)8AHO84r8Z?*J@5aRpy+C$_99C$JxMIUG=p4{!W+j` zK1=DX$j8z(%17m{CZ#>IpE|C6Iw>N9?&M!P;CLQsE9V@4$=STEguiSA> zEEk$3vS+G^URGjgYYuNm)yb1Z4}$i6n5tvq#cH0>sh$#2KA0R|^}w57%I1pauiRVA zfza|hrzItSUp#z&^Lp#0iOcktD9($Wl_-)R`I8ZpT2K+%$E=gP`X(uBewd*}lh2EM zwOwnk&H8=UY-CsCG;vyJvYtZ9vH2}dylyn%)l1{%TN-39up~`)suXHl-07q%yo^ii z%j#1flq)9muJq{&Kjf15vE2N08KqY1a!rq~%%$fF)7tJDkrVBo%i!L^$|e*OGnUo&cEr5qa> z(=uL}{bhB)t`^O#nnd9&%4qkzVL93At=1WHmd?^HE2y`XNUzQ*k}9%bT1o7)&Q&s7 za9Q$_N3ac-y_~Qe9iyvFfqgFX`Vih!b;(* z^FPuoF6Pj9>t~gXb_^AJSqf&|t|lL#e`joeY5wck+fixNHo@ehiyz1jj3}&r_ABSk zt2K~*OQ>OvF%G{@)?s&l=Nxy?smS( zlQj97n?~Cd+t;>;_snv~S4!H6`?+5kGDY;xwf%lmYeRIYNwtJ_>!|`iQst8j@F5EwSs}Wj3er$=ZqM??7ScP zWts2iG5C3>oxJ;T`f~1^*;fuB_pJ`KK5O2*>;JI#meG;)N}8~lnVH$`cAJ@*ncZe)W@fjUnVH#b zW@czJGc)s6zxU3}?w&d4+x>oTI@}zg?cpiY825t4D7R+xS5u$kQtNK=d71> z#wlI26rO0~OJmJ;Redz>!S%8$biT(QBTsqX#P;EDQ@)j8@D$N4Em~xX_Hdyl!C953 z*;vvx1h)2Q8+Jq%zofN$Hl8eof|vOdDbQ+aKjhM59?UMo>6S#$UecBpweX$DqvU7q zmP>GEwdE4+_Wj%!$W;5O92DV@`imqi52|=YKT!*-2vf8hc34hwAnuf0RdL5K9+8(q z-!)*FC$g?!xV*!Ot?|MW%wcJp(Hh=SjFl)8$q&_|>B0jg8q3JSMATYx`hHdyFT6DI z5K#bzp|=~06yLA)XlfZWefRY7NcSVxb-UYI*ZOsXqhwz5?RluP-DmaHv3`@=DSjVS z7gAsM#EZ@Lq!?^o#FDjdm1nn{8MfSZx-cYi(hhDE65~aByYB5SL_8276(y^HTQh?%o2MvmA*e?$z1uzK}> zkWdLAqn*7{2Ofu5GUJ}Xol51dXL4Z!*MfnrF+3*{2TZ{`(SifJ~m7qkN{WbTYf4G(Egccf<#t` zWidn}&bGP7{NrX<-g#L2+9)d;1Fbd|0gnjg=+WHrBdYP zj+q!ut}JTtsoO9M{t!ZgjJD{ATgH1tOHrT06-hTGoIE31Ij<{1<*hY)GMGn@Rvs<@ z2=B*Kc|9eV$pFQ211M}I$75d)Y+djpj=jt?gePe^6LLOv@d}oITyn(ns;YPB)G23< z=^NQ0R6Az5(eg^Wwsev#Y#Wcbb#IVppr2quxRnUz7V%=udD)*mgyrbD~=q zucY6F+?{g7k`sAX2xydZ*B($mMu=s>Jo-VN^TnN~q@5?)qB&>w;&JKa5RW+39ylPe z?BzDCCp@QUttQ;S8szSLd;wqnn%)~4rj;qduaES#Vhec}<-|)7z6uss^J#_N5gTP2 zAz6zzTQ6fc6?-rn1{L-}6=tJRAlbA~#wcrZyf5^qpm4f|lK9 z+0Ku9j&M633GB`g&?L< zq^WP6;9GRAz|BykykhFC(E+aSY$(gQRbW?d@+O`t6B58p$=G#4jDiDa02lb(cDHXp zFWmuw!9B##S0eYa9YHxtroSSiG3#D6ME$#R%>hlLM;cO?KXovZH1Z!NCI9Qlhsb55 zfG{SGU&DiZ$b!eai^PSuSqf)V9DQhvUj^-&h6OFv*XwCqu7^|ShAyryE|J!Yh!~JA zsK7dFSXH~`Jrp#0P)HV#l_Vg{LF|1&Vnogsk~m7i!c>Y{icR%pBmtUDb@;HrB7=%B zd^j|@<*%Rvq%al|rCJq5--(wmTTNYhi>rE{vRj$I?45E^K7ZQ@>ROzZX6Hg}1nhu&8a2RDwl-&0!7Y-^+t!K08eSH>RrPU4{7OHN$RX#gu z;_cMmgVy<;)g`3+RjraF9BYwXC4}ZgegI~|%1$dvN%n~vib(X>?JksA6v$g)q6-w$_1G-t|RFnNP;f)k1Xg{&R#Re z(eA+1dA10j1KuMICUZ2YPf;OFkB-I_8UW z52z}W1WPGTvPSXe9YMg@ zL4r9n47$Pvj?;6~*z@Lv-0kRh>tBy(?MxmfYlk5&GA1EfjFLD_?(8-X>57q1KP zy;)jn9a*4+*DUCGJ5(L; z0Tk#UO-S-i;w14h_bTj+cr183hjjsokDyIRJ(GqyWno6l7BJCpV(?65OM|Z@zCP=(hDzw#4n{Zn4nNW>SOf4BIa)g%2o; z!WS1Qhd<8ftcrym!;gg=LnV=GiqiKX7j-Qp3{JT}Q}@Zi*YORC3cyAMz#vlR4j(ZK z)6AHB%#tl5Wbr!%h3qgt8r;yrczcSyetisBl<&c8d+XWR#cp=l?NqR5y(}0j6!{f9 zV9qcfI1Zyv80nORB#3YC}VQl|?fKLk{3F=~9meWPJEx zf;>n6=9XH2uB=~+EvWpanjL&0%KJ;zxHVS!hnR{s)iC%Kyt;m3dE&y&pt4Nea1@5& z@A~7G(>r$|JNMe8=6Z~(B-c5fQ_pw2H_#8%_EFxY&&jSodkX#X z=)q%==9y=9J5vw2RHHq&fXCH;2dXX`S0h zP|SyrxbsI>CkAm2MimIoKT)M{g_D)@_Z9;MfM9S0l3{M+egN{8PlNZ zY(?U6GidvY3j$<|rBe?&+gDTfa(8B9Q$7&70`G&qu7G7>daPu=KwCnNFYhM_hoklT zi0dDvC%J^Ko1ccb2m6~hO|frpc|fON330|cc8oDHJKyPVsgz{&DFF$l%nsqKMy_hC zwKDOyvqMw+sm15J%+^osxV{xBfeg3`i6*hm>bZj-k)@J~8^tbVs5HS{1|z?=ECzJ@ zl2IYEmPq4>&A}AS6}MX7YOfMyPq}G8@1lJ;_M z0I5N8%?J6R0Nitv()Bk@6(rUhOrv6y2KkyaQS&;Fln1>GqqTMP+~9Q`DXJz>8^-@; z4LQEv3*w4YG}|jaFud&>0knsVjFd(OVn&caO#fP1Y9^~*V4ZNhnF8)Ak0s3k%-3Iv zLQ#KtV7zc>K}i=I%6JV_h0@)l$TRth}IZV@D`L!KKK=JaKCwD2IN zsy?)RUM1Ik3!L>*fQb8>E@O$~@z?v|_=T?L)BCb{t<_w9xK<-fETW{y{=`iS?ItC} zpO{e$3?99NuwU20%1pmNB39;KaTd#cBdlj1Dgje)ddlo^tH@``WeeJ6e-5i@TFOP7$g;+JQbgK0zr9F5eRm%_x)P0 zz3>kZA*Y{Jpsx%Jk?mwwa@BZ>^;)8IE$5u|4Bl$-A!JKPh(496T{M1x?+cAH`c|&Z zwsPz@8mI~c6oFp_`mq$aAtG14U+3t%9WHNGXM6pWkZoId&&Qq{pbnABoeh@n^L1NW zpWoAD1CIDOd{53Py8}Zn2(|>riD~oaoNoKSW`17O$^0~Z&pbPOYrf)H8d_S4-ox## z1I-H;l5|@JZ=0F%^J~@$6q|`$gn?t8l}wU^4XDmy#_|V2(QIUB ztQL$?9{VE!{yD-~7!I8$oz5Sdb)~(<|0G|zH_h>6KlS8&^i+yqJ_KjjRrhC`cFI0f zigUinDc@Ps(m>xJqG39Yvueui_X57Js%F(frDlijYN0i=PA%)8Se9JBu5fpl_bNL9 zfo;d7G-n*ME~Di9>Wl22rPuFS%XgIz&)u%P_+0wA86u!$W-t}B#?Fvhz@A4OA1lJe zRIDddMq`CWC!kVzK zW|YLLku~v6us|7PTj-g+EBJ-1di!8GG>sX;uSXh2j{^M1nNVe~)DJ%xC*bzPG>FRH zidty=fD0ovF*GIk>mDLMqjP--dxLj>`*U17S~)4i7NAH!mpF*9#DEE@fPtj*_j0kIVmVyZrM9yALQ;|TRn(30n%g|@u0*ckg;-oG_+WX z`+dC7Qq+_|LfXG-;ZTxg`fkNPyRXuByM0wgg<@%Ig~0KCQg(;8J)jWGsgF-o!+wo> zMB#d)2JSJN$10w2Dw*UA6k=_A~t{AQRK5lV}gzoL<~r zAOVxTc7c!qF$t!G^T5X4{xI#&>z~>VvCSk7oY&kJ*DgP+!TiO_qDi%HzL}osdy%S@ z!j_6M)zmCa#S0)Girwoq_Z1(SzItSA@k@8D(!5OGF2!o@sy|b-)UYHGja`fosBF#O zU?DSn8P39Pr7r9~#dnM@5nG|wV2#)h07i_s33zu0{08q`OWd|ra^n;*He9gEoToi# zNbeiYTxZtFN(;-{*{mr(H=(kht6mEm7f6;FmtDz4&reoIB$uEY{UCuk4jUE}O4}Th zE?T8RM9zgDrj=n4*Rn0$P|7ff#=z^kV5HD7xxEACZjuZ`sxyi7$xF@A%??S6_*L2! z{tQ#OrDrVa-CQ=e9E)UDVwGC)wXC7ec?q-FFeg?QZJ?NEL>dmYU_4M)OKI4Dz}*_M z+YVQ7-;jw&e~Ej8@}MHtA%LIFP4*f~H`e+hBzo8+6KrE-6%Gh@)3QNMaL`ph7D5em z9k&(`dc1#An^wMK!kPcHbBx9+MrQO9q}d*b(?;4`<_koK(tmBBPK_>5=FF9tPh$VR zZ!AJ}W1q;3lIta@m$VKXDPE?&+UiK@0VQg`MPxiu=G!BZ7aay0`J(MZv80o|u>(TM z^Da#rOjn*&DLO?yrG3EmD)$?{dpVoO?q>2JhDY=LrTpT^bJX7YY-s0GypX)>>^Ef2 ziktl#WzOCUdPk)W#Ea1yCy;AKGEhijtZweMVlg_^3_B#PLiD{;g7XN>fo z!ZdQoWfO}ew6zG>n)7XU*p+;uLmB=Cmcr;@ei?V!9YFy zP=zI8-%*;VIxxh5!v~PD5)JGrlW6Xzid|GExvNZZ^Tgnzcdf#_lXj*T@pNoTNoiiD zexZ9FMt88(?*|`TXtjPk$##8;Fa1*S)IB&{|A4J3^^5%y(o~rLTGt4ouod#*QK=T_ zLdBUx+rYzzC#XL(E$Hbz1|{y@XS+i{!iM_-V;!p&H?nzO55FJ5p91=|*o=tse?WDe%o(T57|gM>&7HTWr&5=om9IbI}1)J21i z`7{ek6g~ePZjXfT=T6(GMSbYA9-nlCuIX~GC$N7Y4Q0lds1OO_h-<~GKBLkhxC{cc z{R-;`_b#}KYGAy1ZY=#bR&je40enr>Z<0lNfZ2{&bL-m%x+(JLo`prHB%KjX85Ivn zhZOc%_Z=_s*FyH5+i9)6h0TAo1%b7Eq9orH(6kPLhnWqUhge$wvx)B8EG# zgS{hK@RmMmPNX=7^ugV`K63c+F;JnOvn3Z(ah!rKl7CT&6(ldL?J*Z4O+%htY9oK2 zd*?|a87(f|u#egA(~VW=JO%MN>D~k>;;eJynA3iKcDcE+@RR@NHE=Q%l_(jxF$)EQ zVh$Ku#R6G$_=b8DtNE^(b|@9^c8pVbU^$+=-OiG{_1 zbSK7BX=b}OuC2|Yuz9}K;4Pjft|!mTt98IXwOYGkm(Cm^;0k&U;Plze8Lf(9gB)~{ z@rqBGK?rixQcX$PIkFH!ze%;3WAPHU3O>E-nAf=$v7M-NWX*lH(6Y{xSJ_p$j#kUI za%KaT&8UK^L>vLOY5hoVRM#paXAu!P+MDa#?kvjZ443V0u+s-y0RLnv;A#2dQb}~= zh;6$iZ2r!z|7(|U>GdQS{NaqZls=N1rf19}=L;%G z-z8zXZCzkc6wZE~PNvbfDd}Rb0?A(X>=s$9jtq@MCFz2^;Rx3H30dr05lbFEO=IdY zm<7{Bl(gMTX+f$fw-MqS9|fNF8c5zm-{txHwTRm}NZ;fog0Djq2WQzUs{`2mQ)v$WRp!1In*AM1 zb#2J-3gS7Yk^wj5t(Txh+Ujg&MEmWRfrSjtcWxKOPnt`VaNYe)<*5in`(U`iDkCv? zCD*gw7W091d$|cD^iE_tnvsrp?ABE5hX$mr5E2e!e5QKxKtAPU)0Bfyi%8ZKl&2y1 zm9PWMn5VnJozWkV?xZH!T+<0hS=(vb-s``awx`(c0+k>a(wll$uNfUR>@=QbKAf*I z{8{o?cA_?`{2>~MTgd1;C`8tbD;$hB0g8<)H(I{sabX${; zG|PD@vsIgqKCW~t(|3Ch6UU^UmH)v$=M+5igBz+f&IXe=N?Tz5-ff*zj(_FTs+H=^ zsyTCmS`CkFJHoA0$%pr{`o~^z#|XFOm`MrqOAztF+`PtjAF>Yg824X1Ogv-XVh-YX zj_oT){A~AsMOQ9s1`%d1HNb2^rp2uRo_TJzS_vL>bz4qdOa^?l))j&xIHP+#s%m>$ z5$XzwC%jsS&%yjvbS{OhUV2WT*u8O_uVoyx*ory+cAEqM#+m5-E6AB6`2o-IfJ{7BIVB-Rl0N9>G_& zt15U}kRbiFv>18i{gTV)E3Ddwm4Enj?q%J-x^yrQxYa0AUA3EzZ!G4tltf>nqiK}5 z8`llj)e6Zv!yFeJCfrWNTWhVvVM? z67k}e^4{B-CD{K6Pw1FZ6Miz`)V#|pY>_dM7)=dvK4#_#X*GdJ?neE-2I3PY5tN0$ zxGDpo14!8(*IVvZeWEV@2-$&U(iNcqT{CJS@WI9G$eg+s@`>)0g)=v0)}ir9e_bP~ zH1SPu0^tLRMd0gub~o4t!HByV+nx{b5c=8^cC_fPdN8MBF~e-@N1wYy-8nGlrU&Xr z#R!fP;EdX#ZzHCDlK0SpvJj_5ca0jHwoTg{WDEKq9*dw#RvhSeRs(l1k+}XY_?Jxj zp$O(c9Q<8gsbl*{S^nSpK97nY;WJCr+@`%f13sE%Vn~b)jeYedb%FX17|$S#METYr z@@;^!l_aU4(}3#zR>!t9??)o-IpU0?{DchJD&#xXZrhVVg}iJ>I+&6>9~pJr7k#a_#rrg@({8; zLy-$?>7Dk7`UY_U?^fejyU2!zh@}h89q|+oreo|`>x2B3xz(;buNBg@G;0bB`q~S! z%;gwAeC;;DGIyvy?n~B`D@Xdi3SS1I-%JeO%Y^IpXgPrj?xY7L548@Y=?8WVCJ()D zXx-QLYnzt6e;w@|h^_JNn%D|8Q|3ZH#x18T)x7y=*V*B|Ke0Bh-_fDthpGN}-2FP9 z(nMM#+Pf^&rf=_?k?e!SK(X% zbPf@PmByxR%^-;=5qka(>(bdA<3$AT3(Q4-X2b(#oYLc*^20E*ihHPz@|TEG;;eEh zx=`pxu5G(l#3B2%0`%sAbfYUmtPGr3%01`>-s1|4ugmQ8&b*36N@j(NMEatIcX6DP zfMwDa%2UjUf9zCIcAe3^?_>Ar7vTt@Wz|Sp)#8z6im^T)-$AO~di*bcbxlEEG;xq; z_PF#+=(2eQ86U63O<>hhdk?_~r7{nME6Paj7hDb}KRiO6`5CG}U)k5c zkY_4CmY;CFO;5QimU!jFN~Y%$v)4}?m1*-1TzJkUiSVOSTwd+J&EMWYH`Zpi}}i{Mfzv7Et%^-O2f zGo9$UP4Bb5%O*u-C%6ZJR&NvB5)>YNG&}f1VJWEia*s32q8e|3i7}2fL<}Xz?|wvF zb2zF=kv(}mE13L`IsWL^VU)&lhBA*&WcvDhs7jP zH}PI8)cK+j(pBLra9L<+fpOtD%JFscc-q*=I<)d%@O3ifyku{*d%8?_`D`Vvn0$Lk z85Nu-N^y^Ac=Vy)nBYE4_xQZ1OprXiI_!-8^F8fiq2YJ(?Yn!6!1xMlHk2u~Nj#qE z*@6BWPQtOH2aK-Dc;=k0_vMW4YxZ2F+d$nuz#G&@6c)mWFjyDabgiY8) zr>00%a$CB}5VgIp+gX>kvFYI}%w{KXTZ%<~3%TWdvT>%V0(0BO7t!VXS`5o1y*g#1 z>R1?Cs24Fs`nbopx*S%iBFdfahzE1sYc5_}yx}8XLvF%jES@uP@@xd=|3MqD?5*{D(5O!u2;^OC)hZu{Klg>>KX5?zuzC!yMJr|)%F=k$D3`fvdRX0Vd^c1j)hpx?dS$&v z*uC}<-bXd+g$tt^_Q#QHvmMPKUMbv#ug+&@vX1&k+krae3Z3bvQ{uZxNu)D;>Ze}D zc=vfuPLo@n7DOJjbWvUm5V-EXEB@Wj0xM zU+9aw+NGQp&G1^7IwP*uQhlFRmhdT651BGz(y*I%s1a2Nt8`R98XjU~FFqz;)mPEW z!je7{%Y9X@DnHQ|p4h;kS9?7aKW_&Wxxz4UY=4S*i(MaX{WzS9oGp8?Lx6K;xCfqsefMPt z3RBq0+W)C_TNL@tU0F1K6K-Jgd}~(p1Mx$`qE-C0p*HFszHoffviUqMddT36qt#|1 zN6U94b;Z#x_)%B1M`8w)AQb#Y`wTz6c}o`6`61iVB-C@#Mcl0?pHs36GA8~z>CYhz zZDhQuRvsOKU3cnL_=}+zUi?G*om>J3Wk(%vZh8fc(1kJDV~Xb5h0rmY=p>ZLNDaP78~GcfoJ zNf$AKT21Kkx7Ey_K4&Ck_dME0OOt=+i`}x(t|<&rZ_BtUvA(cmuoa5z2FH0p2=qy| zk{hPl!24uXY@Hc=rgdQG);XM+w&yH%u{s)Yy3)M##+h&WcsRy&h}M9yiA?YgUo+5N zg>lbY&ba1=r8wc%681Q4tGA>!DE`XJsu|@p^>KZ)OPlh2j*N~ukQ^&1ig^K37h07I zeprAsDcUN2*L*w{e1x%_sT^Qp8IM933pumyd}-bc%0(EOt#SWjiLhlUW@AC=H9e82 z^(``GO1F)~3!;-;MMuZmmT_vFhaRC)1@Yz3ze{*U?N23NNpH7AuZT9t8s=@sI3kyve-PU2v}@7TY@_>q zIE3$ck#A(a;(UE!cO7Iy3QzAx#Zl7TaHSi26C}cJ1ux$JZ2UUT!5z^*Dk*;xG7o8a&)K*R!A6w(0jFPg&2K`dLATd&NnNJuzhJGrR_g+r6ujUQ@ zL3O{`D=|XY5%Vb{A^4dHdMuV_Uo9=@bHMw`KnMLYAOErKwM&rU9oK#WaZiVN#V1^n zU)gnj$L-h+b<}#VRlOdg&$15hnY-GXhRG^l4E=#y8G3SIq$~Os@iBN2M7x7k8nZgr zwxTO)t)-o@BBSupEH;~hazeTtSjq!f>7om~pI)pUDogKcFbT-%<|WrD>6yhq5}(c10r*Qf!C-kfdpO5Nv(=R@$5 zy>5DVlRW9`>;X)<{f;8|J5mm*t*WDDz{98s2mI6w)=+C%ogIv+jnZ$*N?+;{>EIXI zk4~*-2UD%X9BS%Q$h4h8HKe7h6xt8V{nL2xdX{HO?+xO+Fg4IX2<*KrqJ-Uc>so%v z51|`ySt-@=^@+NDwsE36|9g7tzNHV@DZPmp&Kj^2MAvf6arh>u2i=y!pL3AfDaU7|sW&ZyzR_OLodrxkM+4<>N<$p2 z4nVq1Dkin^%U)*`j^&Kv!S}Ou53^6l+SEBT+fGg-Me=c34YqICesA=t3w0Ov(7NJ3 zA2WZCHqp4yrTkq-5kl!Lb6(((-S^v(o5_asiKldEdi{xO@($N!eYA$9(HvU6qUydDS zS;`D-B`qJHpfjD!vllnxqrRxD!fy&sDTiyF5;|)*DZa?x0tnoc1O`_wm7 z3)4r=KX@Xt7dudkeGZq1<@SoK73g=%NfLZ zIn6-vh@LNB*2SF9{JPB5Kb{Lcc=uqaN>M!H$}&lIB-j-&bbc{*$8l=oJE+J)y~&JG z`O+D0*|J*P5qa{j<|1$LXPJrf7;G1sI{W1(o^N#MI`Hxy0LE8HkO(J@;!{3zbVl0e ziATsqAm5P~W^gHv;$tz}u7wHqrQfY>Sio7$?sGYDiIaiD7nakziB1m+!IvzCldTiV z86wDl2wGgGt!5brs{eCMM3NV+Trn=J&^)1BQV9hWoeZimm&L+5&_WR%5)~u}#KK=b zo<RzT$8l<%i|J|8J#$#f?K{>FS=6N}g_|$@9z1zG z*=s*#a_@84E2w-pipzR^L%1blgFAwZ;pL9)weQ>QYWE$E=PxGfoy$* zES@rryCJTR82@tw#4#6&Q{J}mKCp25ftgZrH0l{;A$|Tp&_x<|!DVQ*b^Q$EA+i!M zxNo`!(mj6EF>;5q@DTN~9=yz^;l;X5*=d%uYhBEE6Y@rTg<1ctR?8eeuleXx>AP z{1Dnsx^S@!me+61wd`|c=zH|8>1a~zp6Lkv_k8@zysZT85LZN=Ui&y<(VeVNZw5l^ zqjuX-Orml4oPY(ltwCk_#d&rOF#&tH8(ExcUrga#Q$Y%Unp)_}JOk$soX1g>M##Cq zSAB8%U;%kA6F1HNrz}O7h%H4d279c%6BkMq!l;t+j$E9xDV{hVHw5kHcy_J&+wc2+C(i96&h)Db^}Xb#qHzHgDwVw>>&qqd z&#och#}Qw}9#)pIv)NF5ARV>9nQ0XoR=v%z`A-wvyN?aq6yf0y+aoxGHXPi#t3$2D z`tjaPVrR#E+{0Yap~B`@v@78qbu4=G8@1!-2RO)V*`9X%`QUxVPK~l>BaTU%U{_nu zVd^}^pGf)n^zKLDP7z=}Q?j8s>;VDqy}0;wAAIEI2^X) zCi-Z7Y8kgwC15k+?Rcew>1l>l@Tj#}9XGzM z#_3(tMyc?H|4e;;hA|{m9pQOFq2nouFtB1Hioh8WVu_2ewk+IQtJ|7gQul=PbarF* z!%B&IO?3I??3^_6Yt7HT#$KC-N&jmlnOK#1&oNth>Vsn{bR%Q1d78_gW@WKnMuiu& zj_Sy~mQBBzEMG}12l2))FDZezK@dV$IMHwfo^fm^mE9u-j%S`ZU7YYW=bZugj2bbu_LerxM0Vofqx`??0vR=>FI`49!pKh%IGo7)^4OD^U7=n zcSV-}I6oOze{KZvQk%uWQ+dvVzCK8RK=yVkfBXK929&Wfy(omt$^2^hloFD_zF+PmZR{9(KaO z-N=(R?VbgPclfk&3O~b)y!7|!Kjs}nI}sgz3jXM&BdM6=@8xAU;wIQVlfm z$i(@R6e@2SG-V85y;Ok#-h!I1@(gJPTumqTWn!V&q&cG5s1wK-nM{2Aa6E2(rjmg( zQ#k}%FliVY)rhi0qWqN8G5*M3TiU{2YbIi?XJh1C_;M4n+9MP<6e4aY(-dWC(GM;)W~!z#HHyfxxKw#6rzVoyMJX2h#H%{r!iZFM z_9gMvuklmxfH|YQH2zTDr-tJ&dHlq4#!dCj^5IJ7tENVui!Q!EQ_SQw<|3isgd54h ziJ5PB>-(LNtkbXVLKy^085vlL;Gt2VN8daeP%2VA%wsTu^5oW*>_`VXbx0R~Sv$CA zyK{$y4WKYT47=>B5j+kuoNLO^TO*8DlO1jHQMfiZZKBbbdZY=^g>8))5U+B4-EhCA zTvV^h%fyk$W5>OlOYGSw$wuBbn$mKXw%3v0%1zD^Ny&~!mK=`BHmn+KwAp}P#Uxs! zv8j&#LGE?_hKdsSCUnAxPnZ^sY0G~S#;1q^7n#F4&b$gAbe~2`&e-JqJfbI6avw_? z>{J`(V|DZW0wjz7m+OtMScj11pnJAs zA`?ICF_>7d@iyww%@^(G(Ex`eimeiHDsZ^~AR|Q}(+$_So_%~#E~#=FNH9|*?c3CL z!&I&`N=aT8M#+tZ?=RkKz1pADFTtWWF+U`SK13yC5SzpIW~W6B#i9lz4aF{!gv>dk zQiKXfe|=apGI2I-Zc%(L;*31mBA|z(HsbbF7f3?@%L8}8+qGD8R-eyJDxa!7}kD^R>u-Q`_xs4Iv>^XNK6CD#Lqn!ha1)_UkNTMB#PBD(voQ$kbH6I1JQGf^?3MI*dA6;c|SwKHQIX_-*zYlyMj(~keNdhr3dm=-F zvWP@{;??_V(sS$mJY!|!hNrrlWQp7$Qw6SykS%wN|BNRDqmShwodRohVY+UNzx|d$ z6Rz=zS2)7|@lm7^%gk1XA3(lp0LZtOp_H6f|r%`u2Lr#gCPufZ{3pJ$^b{)OntlRKqU}Ugv^L-Jn$njc20Iib_F{) zyT$Dv#eKkgYn0_;kw4haw%0+1A;dr_fn_1tX~^K!!c=tJ<0`n-q_7`n@^}|RZF6#w z`Xh(zriZVyu6cH2s91EEVhfu+_e~3=f73e`cfR&+Uf!kc38Lew+GCgRtD*6Imq-7t zfX-EB04XrQJVu?!MfId$K?OfzGaOED2S?(PSEwMH*Ad}BSmZBv#QTeXYN_NIK1W^6 zdoHk&LixsGn3iH7Qd}J2ByX<^9Ppb^tjNWD!T84JUHyV04GWh%^B4VjUBnD=B2=Vm zC|I%p*c*kP^vVPxXqdbeW|oqN*w2Z=A1!CwP_x$)`Fh3HI())L;U@$nuxtvhYWoaU z7?oykNh-^Onsl@=`&)^g^|ZM!?H$GM`E5R>RD1=2#uQ?l z!qu0)z`U0P73pp=!5nz!Mkayu*F0BS6Eg+{AU>^P^mYO6NSL1#rZJCv2vX z92QD`;f1%??hUYe(`19M8lX5bOCg>W(=LXXE3%cb-)rW<*$oQPqi?$UM`CD~GAtFb zuFmPI69Y}AeE-ex@m@5ZEYeqnIk)2^rF$2b;<(l$jQ=o9{vL#%r#2Y}^1*2^Yh&_< zBw2zFTOlGC-3`ch-;uVqH&I3X=Ak$6{m0$gt3$GJ+m9i4;b8dvo#>TqZfL%VNHJyV z(;EyP9gsEBnn3D(a1gRy_i%o{yZ0V9<95;)Q~ds4dG==?CvnZ@i$51AOduq*FN)$~Cj=)%lBftqmMb;pR)E{`^XDaH7dp8ZX;r z-64T3*==Q{J`{sJ$X6IsQ52;iKAy~XCthBN`uHx--SE{?#UZcrYwTTto z$miPASPkkEgk*$d{1!Bg274jsT1x;kU1VTgVOKx^lh@9XP5ycx$pd(xW^>q_9tx;F z!A`bAbbjlG8M^($p4D)pnG@%L+6GvZD!R5AOcd=}&i|l5!BM$Kt@oIH)6%}9_LnL3qkAn~hXAfq zE!$hEoYqpf8s&L5o3Tf+&4MGt&m|oxD+AkNql#Li6D{nF#fNTiETDNfgoghXw1efp zKs%(3ZA_ia0I)|)|AokL)!xm`=Von11ON(fG`F=O;vpho`2K^0$k@iv)(C*U@|U5a zEK0{tLd3_*EpDt20A&%iwRJLf06?iY0R$ZXXH|B9Dlhk6bQ2;ccROPq5@iQxV`TtE zLgZ-f0XY9FKx6~JL*XI$2Qr0(o|jw5*2>m_$bpCC$KOnYf2XGZN&)#Y`VOY%Hbf48 zp;~xIm{|WxSs9!BCv9Ns})76AV9U$OX)7|{QBw=(a4+k{yEUlaO&P3WJF z?{C-kx9j_VP3WKg=Ks72{RM{oH*}N~krQA{pjV<-26W1fcKQy0k;eUBxK?5gw$66{ zGlUiUf2qj{i8&JeMcDfbs`Yn7p_dbq5&oZr|6-f{`x=7gPLA@%4nnrpcD6QuLA}`N z{~2VI?DP$d0Z3mi=7z?KVuJLd=2n2(q!$)a7B&V9cgBED;U7FO29|##SP?M*P<82L zjGgq2^quqp*Z+&Ru1Nn6pqDxTe$3$SC`T`04d|NwWt6&{frYW56TOIz5mcO=vkR(MVM1g>Tfr0b@e?b2YX9vhi#Le6U2uMZ-hz1A<2nq-sm;nd` zKp_JTNl;)Qa6k$SIJ6az{z(Ca0Rbr>1A+aU52S$dUo?OR^bc4X(LY8i0&ZjXzj7hD zKtPMjUu!@@Kp?=tfA@cHpx~f?HwZ8=P;f{HNXWkj6f`U}6ch{;BqX3qhJl3xY>?0h zi12U-f9b!4{8j&}1=!)BAff(B{NHU~JwV7%K!`x{pui+RAjrU=$iQC%K!gBG!2!|w z8?b+Gz#yPt;1B?lU|<0PO-KOqK|w(P#)5+Z0s!m{$Oi&L21g-g5P(2c(1#?kM`QGl z%Yz~ntm{QroV_MvGH?ihhQYwZ!p0$|proRvVP;_k0B&*$35$q|iAzW-DXXZescUE& z8X23InweWTIyt+zy19D<1_g(NhK2u%Pe@EkPDxEm&o3w}DlRE4E3a>8Y-;}9(%RP7 zKQK5nJTf{qH~(j0acOyFb!T^P|KRZG_~i8F_U``S@#*>H^{-#RK%oC}>pwmF-~2)b z_yq!}12D+HegT8H0uE4QFmPf92owPYNPT-$5=MV0G{LyMx?X5fCdF%X1BY1{3^L{& z@|(Y|{o~pHnPUO}zdZX-$NtN&RUkOP?FoVmiVVaDG~4}bd40FT_Kw=H{c#z5t+vft zvL}b`hS~FKl44)!#W727)UoJn%_S3V^W7wQc0VyAqBvdDg}iose`%fs1|tZbngdS+=r`aKs}R2n%^!i)QyWi6V#VCe zN26AL0{81T=n6d>e!@6@0f7xZ2j~BE3*4oTbXr3sd@i=HwmjPzyje3(cd4IWTbJ`K zVrcTOEQ$Bja>v7@xB}0?aZ_>b z4*W!m(7vX{{_J-)WHvXLnS6B5hR!#KYY#+sO%vUF34G%-%OUhNms`!*&FPB*mHWsb zTI@m<@^&nrq&&acxsa(gY+RtbAI5lWQwz1VIdEk8V;vL}9A)HUtW43hzvR1J@&!~s z_Bn^M6z$|2?TgsBLEFcRp$p-~a=mw){XHAk606X%hD*NH8^4HYPOw7@=o#d^4A^Lg!dI@ z~5lr?lxN^4DKR&*1h)Ksflogr;xGv zAMCwlR9(xuEs6$rC&4ASySuvtcXxMpcM0z94#Az^?iSn$?()dmYps)Z?mq49{chWT z-eLY=j9IgWkD}`9y;uJ};-Gqta$z-gG}V65M_e|Ud%;eXZ5z&wXmG5pDU%=Cz-w$u zq^6mB!8FMrK5GnP@KCy$xWg+|b>8bmZ6`Yi`T8IoQBhHEA-6~!Oa9H0@a#xpN>8qB z#c7kD)d+ehU;amBcNC;M;JIXfZMNr(S53h6>TIqGhbO_E(MH;o`CZs60N>v6E5Iv2AbIC2z*BLh?78}_ zC+DPtB)7(MV>|ef>=75v*B(s&#s{463d_neqWSUQd{IlB9zzvE50#XI0wa1_BB-RX zp^Kk)dR{?VSB^NfuK+KQ95$~2Bi8^pXBQp89amJIz>ZB$Q3zE4k@c5GW23RQf=K9@$K;4wR zBu-z4)eJQwHT0pYMVV}BIU+b3Gn$P-UNVZ3&F64|&&;4)ItQR>nB%3M!RMf;Xbm7bO2EfXj$4K)obH61f0Ej=4OGuvB= zT9Jcy~Y;poZe;)4b8z=s65t$SHACc8tqGDER8aiq^I?A^ily)wb_Bzg# zmUaaH*vVh}`71BzuUP)qesy%M9Nq#^{9gz9`}5~@S-geGe;&xvj_QwVq|&pppmx@= zrhWqfsQ=#c+lCx(_k@lAZ75@JWvgIiWzO~AM-?2@|GmbahvcCCbsoQ+*FP@$kJ7iR ze!Jn+f8X)9FMmHXgI{5{?b{Rir!U2?9K!$YrC@kVfBM&G>)*sRl-^?Vw}{==?0*I| z{t+*~jTjC7gf{-dG58&9-^Q@^e~hnw0R!@SI&XCxb<7>!K#pHn%3GP7mA#JruSfD{ z@gIfKZ!f2by~|%^e^!;S()&l%H=y7bj`0VC@c#yp@S2+#Sz7!W={i`N{DC{*8e7?# zxc+%K%C`j3RByn@8^~k-SJ7L}=3hX{AJyJc%^Lj!>-bgU?{9A>{y(E9R+e^pwg!Jf zBvzJx!YY45BmWkbLj8Z-|9}3_f6MFpYY0yA_hzJjg#^OXigs^FP z zhu@}Y{ry7n^Wy$$K7T|hg3k8B|JX!N=U3_PoBV4Db(vWi|LeUL3Gr95utQ=+d^sh1 z@oQsY-b$8@%5#y%trmGh$ZJ-7ijQNm69IIXTR>YtPJ0wrSFJiMMX}u&JW0uvV{sbu zP77ObJWdon@E%kWZoxTMZUiXmhNp>t9!TV(FnSzWvDsA=j8m^pd z^J=2}i2LOlJkeYw%G7I&YbI9>yT<8S#DxJu<&!^cFnkaMKL}0bjoEq_wF-Pq7hF`( z=Q7XuaTA-H%Yn(|*|N_gyU&Euc+|_Oj}LjNmk0%7pGJfuOv;dDg7v;Y7TJO!b<4FG ztCUP&3{c<+H79aO@)tcPmMiE-5A`&F$DzRz!xBHZQixg;EE)mTyd3I{bF-6%;=Sa1 zWu(JMOHc0=E()57%Zf!m+{v9T$I_UbYSXa970skV0^*~L7Qmpa@fMkCId_mV{fG7e~+x^x8zJh}MKAW(B}Y`y$8hKq z1K2o0)alXo$PKJ&$Pz3(G~YfaB)D9@JlLf9 zuc5OCfrF&YzD%MiCw?8(ylcn&Oze0?Z(bx2BG;HZP!!Auui0y;J^}=4-f|c-A`}=2 zT5R0|Nb#ilv9Akxfe!@9@wQRvxYg4?!hWYOb~Rf+)AV!ooYXu$IGCT)DTL+IS7VFb zn(hIm4P<;1;xwjdf=7P(>O%UsU1Qh4WMpCYP(k3rgbsLsgnMEhD1H=c1i$4ynFnjl z?4SF=mgD@gS`e435z^yv;KbhJ%B4sN_3bp7YzQTzcgM#L`A&LGqJ7LiaW78}1oQ1a zyS+3|y=6|Gj;pQM8%aN?Nk4NT`EqVMqDh77BgY?KQ{MsJs~BLt)nrQmYstN6tqXb*Jkz_vp@Byl`9=2&8@s1YoFL*3P&oI87Oc;Q%zKS z3@BN&`zn0!@kG{4+as7VssgChU`zaoZR2C2Rl&Xzdu?IE(Y9_&`_BILlxvkgiS0ZP zThzjh#9q>_O!II(ci4B`F1AiFL{IRsT}q5kl_c6H|Y+?@%UA?VI|GR}h?O*r z4(B@>0qix14KMg597*;tjM@h@m@Wqv#2%U z2AaR?`N2yvK{f3pfi9>W#QHtNj1HCSHu`NSq-cIXnnu2%!NLJi%^TFMM8tpd0bfQR z5VPFA;Uy=zmILDl>_w$BiEA6d<#Z(OMLtcA-mx&IIXzcPXiE03l@$?90U6S$N5D33p-B*Ua$VCAxYRb zQ+f^jFb%DyJb`d~k3$GDS{sl^PKo=&@00q8DZ=K=FqOwC34X3cA5kNsF_GYHI8Dnya$=Zu;9(m9 z@A{Ww;^Phu-XxD|cX3o;9*^}S1z)|hfU+3B&aL=h{P;p|nSwng!>(vJ!x4YH5Gs(S z!f99zb@?sEV$OW8-aG70Mn>6mG|!}CPNr$HNV6zkE6{y*)rK;{hG;vkIw3ZBwuNOv zP`0hAwor(D>-&)1r^T-&D(b0P>mC+XmoFuAoAnLgRp@WHiBa;d_kj@25=HLho3BAWjE& zrfZa^j;B)Zf>adIH$ujJRw>^QT76aKI_=)ZY8X+()o4Xs_kxI{OL9AYc;Gd4SZl`r&E*cSJcof z1A5c$tgv2|VBqdz0e(?6K6f`YMBp0ZPi*QbuP?7^6`aZtdbMkqgF*9h@tES}+MmKy z4Z$B*iTzXO6h%y?89>CRkZ*IkTSY>ml}yPog?Eh-zvqQd@9}?cC&Q>`o7Jof9kKsX zWL!`H+lcRmsye)>ZZ^UT#e%(tT_`$$qmz>R1i|IqNwlkR#lgkn)REgk@4&;%^KMnid>Fjqp`<>4IzoD~f z-|6i4CiLEf{;!(Q|2I0D_BT5FKgUr2qQT!8>UW0vouU4VdVgoA-x=z6hWeeM{?9Sg zze&&D8R~b2`WG)vNB2uA_|8!OA?p7{B>%5qsOf%_CH#vlFx_vY_MduGA@et``cFmb zpZ`x7Y3P}LXMw}NT3CG?Kndu8I`hgRm=dRAt-a)8*TpiRgpv~_vy?}KS&^K=l`2CO z31{L-t@CO(auf}-8%#$I)K+nIZ(_GQZQFaWn?!B*+7Msw&6B+CidNNP737_?a^1s?8cXyp)9S|tHZNvnbhvcaY;%^t3B1D zUPI&iY23C5Yft&)ps?hk`QvTWI3ffN_&F7#G-d|WK`my+7CF(bb31d0l*KnR6)gBJ z#Lb`<)-`I`sczdUjC>Jg$>5S!NlgiI7sz}%T#o0go!&><_K~0+TXzS8)5>Fq3uhq_ zDudGrf@~~2YoEq2Hr)}CRxNZ|j&J8ZbN_EQiz+?F7)`KM4a}B5BzRc(gX8SV(??B6 z0+8@~dwTd?hgm?UU7Tb-_(S;{!-B)mjmNZ-?_SmPfEWu^>|Jgyq{@RwKr6{I=}%QXb`855MIR|lcKvGS9#55* zhfK4_b*&r4v$umVsb9F1CF*u@QJ!hRme+X*nE@;5y0@w>IAxs}pQ7NcP0pc|jhV7k zfZ*Lh8gLa_$ZXs-H?SAwa~y`lJ5P&cD5M}Sq5)@9;)x}vsH*iO406GNBY^|ra22p= zZXg>-fr04D>E1RSMPzf{5?A-@TSYXQeIiKF{^m=oX?N3*G`_qT6$|EghazPZ*`QL+ zy(O1B%*L^H?M#OuU2(`*pd9m!K3LQ4I4?WDeG1p<?_8|x#O!UgyH!9 z+mc2Qbl)eD1Wt?abtv&HT{{ZoNXYkUexm1g5DL^%5kJ15l<#LgpmA`r+Fk|CT$>PF zD6{Lb*{(q&a|Zu_s8+4ijnGA|lP9^P?9f98H4Hb=_Rwmv;rU+Yc#`cHl~JLSDpxbG zgT56|sZ86U7v=aGRl(AsPi>`CvvRTQoGsaS=CHVfVwJg(dO)&S_;G>6Gwq%gBiy;qSsSLa)z|6Q5CaLKk|LZIA>36Jpu zgOO@$H*JP>F=B8WGxz-FBvaE#;B*#puxBS0LR}v@j#Rcn0qP^Evq107ZFYCQC(Cqt zJr{HU-lzzRc<@`MSadkme5RJA0~kfgO%O zJtlBR@CBpbXaZ+{4K?w!4gRb`%~*ve4t zJL0gB((C&tRkuEyMX;Miz|CPsJyHNLyQy(I46=F|PbI-E3_Cm88gKf6N5V%%4X^6> z^|I%E+`iWFTPZwmLaDLpr6hK)-*wXM3TiG3#tskq{6WYcanjFU#3Nj%yhVqhY@=!s z-uFS7G|zYJ*pIFW(FDSVEda%~gJE$mq=g?BB)xk`SFo&h9Jt$*5BJ`(Y5Ov?aK1vj zY(g-F_nUT8tbftN#|ShrObYbO78b0Y27G`2&ndU^ZS{0GNd#&!;!&;SzzyG8!F6_3;CyEnCWU?bVz%XW3|;(h*g zqASY--DtNjFRt?HN_|`UjVsCN%uY_JzCXDij^CjOmr_AaqsXhY-IO@|+|a!5S%**H@GntdWW! zd^Y?Kp~lKvG6KRN5n*yV6OQx-Z(V8yL^WxFk6+-y~OQ7hAR}4IKP-#8%2^ ztAX4U-Pan9oj`>~@T)3m-RDEUvCfbEkXd3M?bJwYoSJiMm>eBuo1@If@I@CST50`go?L?%Dn z*g0Qp2TA`2nP~zd;Wkb&ucME)GtxYf&Gm%BZL;>LDI;dnrSA4I z`SAfPCjE!?w^Ao%pXZo5sj}Q84HW|S)HG{_0IeUjM*&zoJBGkEV{t9vKMUHK7q!)B zc16ub5Q5=sIwU`AIp0^?d_zl>rl<2~dLbBrNND|RYbZjnJF(y-F$4Icw zj?!FZIjh<9-Citi$G})(9|<}nCn&dsWI{)PW<1qHgdiGa(mMpmmvq?!8NFhE&V)o8 zCrpHFznY!%Q@4ursfn6 z(J=&W^>!6~N?&#^O_6oxc(zTKfZ|LgE97#KRe)8HK$GfxwrTj+upOOcMIe`M$#h+s zijuU`+7s$Ru@zhD>O3n#K*K*Gj>Iq-?6BdH^8w}p`DWL|SA*fGB7i3a?@lx3;UQ+m z**H){Kp1oJruDa0{2XfN`KGhX`8Ci)0EG_e^AY=k6b46&nEAR60B*B+od zdZS!V5`=)Lne%310^sVM)dtST#?=w(ii;?iap}ULm7}mNcOl}S6Rt1qn_CjKuBFTF zokZ@(krsh~C#L6}d2Q>=`0Krb3&7&A%2jQ(VOs)aHsMUEID}|Pid(sGK7uLGWZ+7x zaZwv{3QZjSGNA`1G(S&-FXDfaA15*gbJ3TRdog+`7F=`m+g`bZRX+s_TMAO(&|8Vn zm@W_>`eWr}#j^Qb=$3F&6;C$}I{4JFdHC8WOqKlHViMB{Qa^2~jpy_mG=-SX@D<`wopu#ARvSKZMYNr-n-VZk*`iKcM#e9Zh6*EeuIc#W>(h}n|dG_+say${|^15ICes|jMOYA}@%)hAXI68pJJNXSiZ1RS~@2`3Bq$H?Rm;VGY1uQQ*x^5gI12qJSSbdOX_v)iX*q}L8T({ zssh>`#VbREXRBk&UxncB$|(pA?v8QbsjahB{tmO2zaDtuAoDPvN3;8Q~x{X_rbt$h}y_f8dOt zBQe2rgxmW7U_KYWRuWVU%(r~KRik(JTA%e%O#kjjMeC<$5fBjmCB%mcB@|E(W@7Xb z(0L{2F9_i1^t#)$3Q$x}!FgG7dQkKZ&877}gvczwkAMJ?rU^eL zNx%&2rM26Kmfh-N%OFR9NJuEvj<)h6gSe@oh?j=<=b)m0?bee;Ai4N<1wq^r(MN>5 zc)Agx?V%8HPS`~_>W4Hlpu6X9hJeDHMN2gbrff4)Om$!-wA4gM32o7FY@Siu&IQX% z#AT9kW?vMLZf(cEU0bhC5YR7Bf4&jhihjX#?XUE+?HSGUdjvkV+5Hetc{{E-HGa}2 z;{Y9&WUQQrphRG@Z*}`J7nZ zv^uwE^PK@=`WOSlWl{_hATF`!lOYSbPg+aRGVRg5+wqSmQ&C9}bnRTasBgzdBQ-bQ zgH7rIXuNyvZVCNbXU>Y|Tf&p?CsxI|?*{Hbtx~C1g{VVS{45}dI%zotug|W6mw`Fu z9Tu6^zYYdg<&|b?6vXaoew$RckVX$|5=YIu*Y`LwUf3}2j!k^A&XZ24CZc2G#O%0x z4w&{zTlHvePo8aPOb^4sG4%3Eol9e$uRYkBKN_HBG&1+RJ9)TVeZD?E-Dq!Uc|1JJ zy4iG-f>Q6ZL5B#?5UfwFq)zJ!DDv=h-FVt7EyCi`PR^BYl~X?YvEj+omdQDrf(FNp zZBRIJaK4TZcM}&E>Q5YO2T8?DeA`h`0t7+`el8CSSZ^ zf4AW-3IG^jIg6eCpUK$hew!@vC&2ga%JS~Y@@D4p?#l9i8Vvo@xnOj^O`dvhLhr^# z@2)I=I@A2?#zu6%iK+h$SC+Tw%YPG_|1lXG-7ksVyNvB!#`Z2_dzZ1j8?C$>t-Kqp z{Kt(}{^)c6n_}tRXyt#o(F)yflNSEcHohCJ{Qul&h3+>&>%S;tqyJ6r_&>|o7+6_Y zewVSWD4E$UGoe0LBtL<%Ch{Q?@^IW&p zlH!xl4w*I9-otlKboI4?-QEw7;LtOD`Sz)h73cMFeiClWDcAXh6YKS2FDX_%cv(Oi*;!e3BRR3O?@ZrwN*uEZH)|-52VCGZsycwI}*0oh`ILShu-m_#f zYEOUhP%sGVkyqqX>3(*WQQUzES29-@g}JW@cK>>l<{9+JZK?-$1U z9t;=7tB8hS7g#;LUhXtg zh@P-)pg9dv9VZ44;8aYu8XRp523J|$!lR^yfTB5GOU7a`^-{wh8VSY2q*A{wld==e zzWg!Zz&I3M7;ZonjL3jfsBRv9tr*J4jDs$#fJo-DmY;W?nzfQtF>6Ys2jP36-U7ig zsMd+XEpO*m!YC+2ubi8IpRu=FdVD+L-a1F9EHVADmc|Mo%mAq>$HUuR9Js7*L&9v9 zF7>ok5~{X{jZtd?-5IHVRqwQ#5Nu<%lvw9s0U=z?v*3&y>cz3YnFCS%?grUQ5-5e5SXOi0tZ5S~ZIf#Eo8lq#?vWM&zn}x(c0m&|MX4w9sP*K~YX;mv)*;zkFKH?^>R- zo94>hvGFKSxVOw4?_^s}tGTZ$4L!DR zcicK=d55SGN=U4(K|bqSI~M%4EiV}&l?b|3)k$j!S}B_3nQbk`skzk5@RMJpv0{@R zz6w<;ZXm3bbn@rgQZsbKVKV&uwFPwZ6(~1nNnLbOjKFM#eJq(DsAvooHkSZ$6PHG4 zciY>VD{wN*r!~h#Dx~p5WIADhihK6 z9vDCTB3f!4ti!BUwN9u_xF5rTc#=()!VM~WEW%{GL z@^r1iWPSlIgbJ@18B5%~HMN})e;mu709X!79L!)_fEd#e6Zm3HPKE+^ec|G!J8ESEo zUb_4<@AWb{4uCJ4w`ui=r8PMiR5yJ?0-UCE`+0X0Y?mT<4?Op0!UBl__>LYc^h(?s zKI+W?DLQz*C7l9x?3`7HTs)=NZLyCcm(OIjpaJP@!LSkP`2x0#Bm_jFhqzx#6@w@; zfYcPALjXaPU~?8|CJ{cA#is27cZ1kdNw9+Nldu&)j6G&mp!0~_<_v>7a7qS4drAat z2dD91p5Sw!^5-kZ<&aZ|ie|t-`l*ft_yII>9t{m5g0EyZ&IiY{24A(369pmT2Wo10 zf2|$i?bYD+h-wC;!Ygc&nuoFGA*|T)4f`rPClu-bebbcLerAAgZ}NB>#d9Bp@dcrp zwXPZEMYOh3OTLbXo^_b3SN1XsNpxuo@!9*+2Y_Y-)Knx6oZr-LC zLKgqjo24FIfXToCs!bk3-VmA2D{mSe{Sn?Pe9|2c86^qG#hJDu98ncmRyF8Bz+boj zIfhV02$7Xgf}m#Qt(qw0nKjeZ4JIBU7;U;^zV~={DU2wf05KNG72E_&TM$OMXUA0J zRwbb+PDLp$#TjGvg08GR{g2scPa3bpL{FJRh2hZQnhX$b@Q72#pK(b;(M>gMqd#QfD)43~Nk z0rBX;5OO^aknW?AH6G}|c=t47Yi0ubc}Z1F`SrkL&DSeG8cQH_1(M8z$6+|aF9i_K z1rWz+uIAiFdt&0{`6(kB&ym`N;W9WUi*vUmyf!-6`A1}* z4o0|8RJRfWC}qm3&m8msFieik6vGPa61G{lGr{rf;6Yo^Dg3k~zy-jExHq>i&_njA z0C0n`X-kC7ehbr&P!JJQ(K?uT@qX5BUg=`rKFxr^(>cK}uX&MwmhHs<7z+#zKP}i4 z2gIR>GxIT`$t@-WWrVOBJZ`XpKvP+GmQU?xG}r@q1pErGJ%v$pz2Xs8kO5D) z99T8(SB3c1rvVVcpE?czG2ad;M3nH7dB6$+^8oPWVK=pAanR)5EoN2WpKb@>Jdd)9aiU)_hNox={3Y|1$xOq&$pXNUb zLia<#wEa1Q9K%|xuwE^dthg8RG3G`9Re$Wznm>s}bjFujb_Nb$Xp2T(G z3y91kv!T$_dTqvw2p$I*?a-eDYEn zoJQYaoF!C!%ow;WR0lOR{nG6|jb5r)r07k;K=91X}dvQ6E zR$ta^$`=%PmqBnyNv+Rcjl&xx!Te{#(U~VVzfz7cm}OCecAxiQ;+)2kND3-;nQ#{# z5H60Z``%1l1qkr6sYyoW8rYh{^{yk_Bk$4%l!g{oe94-Dm!GUuzhD*H^3!+YK=tzz zfz_xfr;^owAtFgt*p5Y;v~OTt?wdN#!XbU|1Drt{JThfl=CmLDI5}Wd6!_CWJJ01s zms&Ii(^-Us*7QP`$irsB)R_WI0YE6`Mfjo=(E&4;SSTbkLg0htXHv+mu{KIXpAbAP zCTjy=KX`-yeUNFM;?D%@Ie_e{bh;M0RaLUv&)symp}q)3#U5HJq9yrGc1m!ZAW*u%C*L(9Y@@}T432=M zwBI<$tylLk=*OHMNVDvub5302^I}2vWOOsvCg+du#j4RCk!i)E`@kIB-D7mx+Eq z8X=|DXzD|gXhyoB6*y!9{(afrwpTU74$I33^f05&f(&;k4Z-U1gGDO4_Y|WiVHs%m zMT;{T+y}|!63(1;3+Re(#_SaMVtv7;i1!*m`E@tMIvDWvJIX{fpmXO!RAOw@+pfdW zZsBGaeLYJVnOP!O-P|k0R@!NkH`Agg_f{JT1GEozwq@Q_W}gx!Yae5omh}ZC2Mt)~ ze3HY!3o*Ky5k3heHkx)mvI>=V>mdN)?2aJDPRaen0%k@%fY6(Ge@m zz*unoL*R&--%}1q_gO&B&WS>qa(C*{7h3pa1ONJ)#aj9=k4vr5dp%*$!nk-Qca>sDTz2_U9YyYB4^K`k;83(>t@3yS6tHtTk zx{{3QfIk$D;5g1z``AX{CXk@x6OMt$LyPv^_(xEpeNK^uyGSPZXAHow>e_IM2-?m| zi#B%*m0MWKkjKG95h6#{<*tS5>&6pHI3_Bt-p(FO$jF(tXj zwz4Q*i3Rr^PwfP6!-C~f(u5_U5qq4n!=rC9S8JAO3kwi*3(K8BxQkj`5qIb#G3$wZ zo2=q0@1eb~(-6Jnf&MA`_*%^+hbk<p zAAcy+oU8d3mY=HNV$ueRHgcgY$wMvH?kkZ4G}_z{AtN+S5wQeFLFsoj%P@d}Ze2vh zxT8a^vC0kXl-o-nynzeQ`lDzDK&eN7e1mjPmq6{yy#=G;V>Q@(2dR)k8V}_M9bXt| zj0)qidTB$ZG8rbMen{N@(W85eoC)FmO+GOY;ph^ba2AWfY6L~{<1#+`Vp`R%BbVB zi)akHa0lcOz(hVAbn)07or1rb^asJDOla7p4#kie>dUHNA%wYpu=az+({K8)-O-GS zlzaf%iW~st9XPp#H7bLQv^WYtG6PSL6Lk-JvWkKS0$+UjidC&v;L=k-f~F(1n5GU5 zZSFUobSGV&SU8_=9ycp1FQpzH+-W=RZ9Ol)#Yr7;Ke@l0UmUvIxOmLEJY3y}^^Emr z!lB^M=h!vGe*n~Uq-r;% zO|OmHY8xx;+dR@t@qB&J7^&>N9UlLxwfB>HyzhE+Al_44I;uoq)Y4F?aL?=6#-sLO z#=O?^wBaSoa}#K&@pAcUlPN9|JEzjLy6M}~^Rn(sdu`KctA|Hpf6HpnGtTJv`nc6g z;V2pwx=esEL!^bq^KJQh+jLLhe%k?a8SBr5vFo77*w^{69dvoflRPTPLhql0SjRDj zl|@RL=iETh04-th$Nx;0M*rLF)pt$JyQbz{Q}b_YYUqEP&Hdhl-kZ>S6Z-d?&~M`C ze?yi=|C=E6KPF3~|0S7wm!-YS(%xlh@3ORaS=zfS?Om4kAD5;5(dWL)(%$ob{YsBS{fFH-(_j7N=NdWBJi&nC671- zA~nRomqWmG@qHQsJfMyqRa}R*ILhJJjh~y~hnHSG-4GQ-sszTGi+!U#Z>?MlQgKoQ z_;9sci-@rp!s?+ICY3M4b0j=r(z>X5_+Inj<2rT#@2-@ZV7U$+9NahIv>t*kI{({ zh_@UBi5F;Yx$h;#>}#pM8CPSuokd+VY>Vn=u;Ba7m2hDmo1vn`tZK6aAG@|yqb(*m zx4@oal-o%;(ngep4jc|4@3SYr0GNFdWk&4{kcINYg4Ze{DTwWOJd*sg*71q(V%@3U@M>2JQ?idl927B-Be5ke4${MlQ%ZrGvOosJlUR z!HVBV6Lu_Ca5FLiT@3Ke^Hu|?K$31(|BSZ!Vn9}Fe*)fR!iWOxYt%J^c7njr ze1CJv7n9E2X%@;}C{NX9defnSCET}979;qjFA-RNSZN?~kC8U}9@k_;8=043G!5KG zJ`QaYl;5m1V3Z@&loq@}>*OG)+%Gq`(K@mW3st2R-04W~>=YHqxw{r%FJ(E<5*MjG zl6UWNaB@$6bph4yWR!TZbIS%%GpzH+Jw5twTL=hmuiD^m`NsAX%sRU5Nr?J$YO!-d50%P2w1it9dh(S8< zD9eQ)#gf}fka0#RqX^R~L0X z;P@kYb(jv~_-SD6&tMq2?(;K84h-V00}w_`w@1mm=Lvz7G@c564N@~eC%kHah*O3+ zA1~TQyNLRqEK8Zbsb6puzPK|M#t~)^+UciD;uz+ldvKo2POgjEY8f4$pU3ngJ+QoR zwMSJB@Ux|_(p~qD!Sdnfs4%d8e0g$WQ=1F*6u;gjC74C`*>T}8%KbKwFDI8tBWk#1 z1t;nr5li}Txj8tXbtC=)c7Dc|VG-|+q6mrt^pZ2Eez`9-uQEvjU;6u%mD{RSfYNEvFWFlN#^?0531c(m#dOe^b-GV}kFP;5#PxZ)1WC zzp2aLo6vg`dT&DieiQnQ-2FFTb%x&vt^XLT&hQKJe}~oIVfA-d{T)_+ht=O<^>hG}n@31<azIvpb`&F`>!o|1~) z@^=JJql6b=0U&H`Z;TOW%h((UF?b^H8PR1@2-3>Ug-EAivAH9T?e)Sv0Oy64Be7$$ z?83>U)0cEIhHdA#YYf!;mKu zs|GlaPe=9L$pad?M3s5tIAV2k&M`Rlmy^9vl3yzfB2+8gAlMa@0=vCIynOvgTyi$@SnMSVz!C~%CK zN5pzMth40g84I@DDt&Xt_tqS|6@AxLA{S;=p^f-o}W4j8Vn-vE1XM zFm*|C8mk#gd_bgP8K;S@I3>OrWAn*Y_BNA$b6|d`d5k2cH~ySrsrJzDB5E19MWEj} zCCq%i3Qtr1`{JhBkqikSZ@V!kH(e{{tlDCfQF)^(Z~J4(4Ny-8UPNV{Qqo7Uowl0P zGhb8_eaO9^epL7^XXMk_xz?+)E8kdCVYdq0bT+(s;`!C5auz~{+aEbl(kD<0o(Oz; z@$AGraz>SH>uv^PWfi?4VS9i0xZKkph^yP9P=KmNH46Kez$yU7#WJoy6a^&NsdTu_ zCex@Wfc39QP+3NVbu-9j!=QP%+cN0Q$30X;JGq)Dkd;pA8i(?`TvEJzd1 zC4{Gy!HTrX^^u;?Q9ERlW0<w!&wt8>mluTDd}Swz;%=3&pR!_(?8+lN1_KIYCp z%KnAfs%FJQXXT3u`Fi>tnP>U1J^-V16gF<8+F~-iR$`z|KZJ}EjfwlGA0kPq(`cUu zobH)z*_&~!6={>`H(;;C#G?-8N`r6@eg0 zTWgLinTWOY5cs&?4d_fddo2kZOr-e;C?xJ7H)^w-;~gtvRuW$|*}xg^tP!>HYFwSI}j$O z)B2$|D~1P!r}@L1Z8{{LG88D}Vb&9n-gV3n#;p9zP0a8K@En<YH#g z+^zgeDp*vicqNK8-U`5=s73oJf<+7#pO~t=A7b(d-R%Y`LLf=-6UIVrisl++lIPBd zDM(_1Ux-e4*F+rY1IFR zy|;{uqgnTM2X}XZySrO(3-0djuEE{i-GdVd4#C}B0|A0VaJNIUp7rjm^IQ8p`}wfG zoJ}*$^i+3MSKl@FbXQ&fs`}A~838qmpG_5(ur$I+*SFbM%A%Znf>jlN-gafx(u+}7 zRzZgXjZ)IaQ%#t_^N!gC=&LRZYlAwR^VpFEzT=>tfT4Cp%)6{ZvZo+T6_Yh+_P|0F z-ZYpQ^QOI$TsyeXdjJr$e}0K{m;jIfyCyr!rC&!xvBygQ9rAwkNW3a7JlQCHGI^^@84y-+vD$5wgV>RtMDMy*CJ`I|p1}p4| z`w&?>Flkp=z)GmMtx8Y+zA708>AzK^4 zrq9Q)Z9z2jxQT-{5|hi|NQ!p;h)V$X-ucl38GJb@ zQMg?yPn08{?5u&D&R9vRV$j+k>@Ia7WSIG-rkOc7$PPB;f%p^A9d4L{#;I1aeDVRl zrLMsQc~F=V)4^HCUjz!SUUhzUuUnZO@#?iEb<_W}#_0X0;X))1%JQHeCx zF@?fxutTA+&5UIEVHAmsj_@BlLlUoLDke|v>vkm$tIn`=N=70sl;uO@9)YDTU)ttqk<(4p~0R&uUtr57^-f4j!$2#|GAgj(@C${R!i-^ zkGWobqPy|A#f6PEMd&FyAb~OrLzDLwv`V+r^C-4yW@kA6bya&tCJYFP=GlUiW#p&+%z*>}HqM zUH7?ryxhj1UZv`9{Ir9tw17C5&zc#8OwL+2F8^cN-RKDiVFHS}Un>{>ic3cE}YBcX*)f)muiF z%J%Ljc{c6-MO;SPQ22~a24m9u%gkeTkNm;}S`D3L(>$IZ3lWaR&*r!)-&sETXtT`A z3O$peqow-<$r8j#Nge<>qi8?lK5d#q{_uJTV?i>Q?3mSd#fl*AikAyxh$29e>Zi(- z3)0bq6+@qR?T<7S4ixt9z$wcgdXG2i^G1E%sL$W0K7Z(+-dyO-h2C7~@4L_+@}0i{ zPFequEd0m7DeEt&`vy+m!08(}eFLX&;PefgzJb&KI5_=%&wT@@Z{YM#aLW3JOzsVw z{x1QitbdGD@IM5ntbYLZ{~nw&bF#Dj2~Go5J#AOnkYCpMJ9@~j@vaJQV}*xg4wSR{ zupdHkT|sv9h~QSq_OGfswL9M1G5?75X!_di%gX!#KIGzd?DRePvEZ=CTr$i|S)Y#& zZ?o>B{dvz>Vbi@l4c@aBuDMoRbn|5j6**f`D z-EN8L!|ko?DuH=`B1le+z`Lr|;Fu|M{B3)9tILgZ|}iF6)j8a|ob2(%{7;C?W%iJ%=D_rx`h1wXv)gGx%??(m>zp+ulnmQ1YKBgLVz>>MF&q^MOUA5Ik~A$ z#zzk`D0i|Ii=9+2A|aed&a>dU$W+`zm+P9gKp`WnP0V8v4gRC9IQQC#N_$+*o({g} zZrf8Uzle;!GqlVL2&{)a+hE2_qf>J@LG; z%)D3DtGK|zLiwmt6Ww@sek_s=$uaq0?QVXKwxg87JmmPSUUNj&v0|T8SMkANH>Q2C zcJ(g*CAtj=y8`8VU=&3z*VNHSoJTpTgFt@xc<^?rFL8F5GQ_T)wCS*kj&kd!h=IF6 zZ|P)yU6sJN7=pRzy1bpZASGDhgc@r8S+o;)Lb4S3H2PvX3B>%}`ZQ`J9nBAd4h3P* zOu#)zLJj_RlEZ@eF1Y4*bw5qN2H!3YTky;RopFz-9Q04QV$zDW6!lxs8u}CUw#`d^fizn zF>0i331*i>U{&>bq`AkWnrq;%h%rvGO|9(F2t}5JBEa1rd4dD+%v?wqJL5~<5kI?CSy!`&>4 z!KMXL`JHXb$kJkgMh`3Mb?<0tenVfLVbz{N@t|yhvO3)MNsBAkP+fdCDWP3#KHDlk zlLiAcm>spoZ8e`s81k2Xa^hG7ug9ebpJ0m51Tq1eQN-Egr8=aSt#-N)i!O7q*Ax&^ zjUbGZB1BBcCrIi-L{i1jR%>+nvFSfTgQu*5SnF=85BJD& z1WVixQg4}EuOn`nY7}^UB6`n+`5AG$SfZk6!#b)|ey(7Z+Xq-qvT_#+w5xanTRevB zbnkX{prewLHt$9s>zgY?G7|6Y5PklM@B2MmAN}A@m z%IByS53r0Q)?NsXt}nQeqJ*U!L*at@Dwmpa>Pt~RRRBX+F+#p5a)Epy1VaeVvvG@O z(aj6GS}_6it+AULb`EJ^Sf!}mbh<};*z!) zj27bT2}o@Ua4EGm8^bRMH|>T_%m-aIRPjYnjXy)_DITIeAkgFPhN2)XCv8w#-b{|b z4oXO4<_z{Li+qUu!6Ey>BTo&Et=t zRJA{K`T;T<2nRybHOvbM$Te22^)YMfYYQWc+&ciqB^r@otuv9ENE|SQ)t(fiIb<(1 zU6MK^u&5P^f{33eoLzE1yYP;io8ix!Nmm7)VVHr7ckK(`55>$0Y?llnms)VYg|iMfkOq8G@;o28S$#VgOPI4e{? zojlCsg7W5xgu1LXF+h!~KYGqfHseKt?)8M-EDk(Q#vgTUbH``lifbuKsgq#Ig|NrpEa)v%4`bN=951QNCfeum#NkB(bmk8m{@hFTyv< zAkbw{!Bp>aN{1{h3Jv;PX;u;NV4uHA;n6Cm4)J+ znD^ZJ7zI=BfQG3ZB57e1E3bD^p4tQK*3FD$LIWaFTMPd$%eW^waiOpea(akkVsLiE`QfGP48(NkxK8ke z@DGR|YGXPB=D_9sPapxDJ&;1adLaD~C}X275A6C*@Vbrq4#+U^KiZ7X^{=x8_0)et zZ|r317v>etkw=Q)WvXw0Pdk6T={?dQPrV;l^~X6*uaun(=rXOc17jzXYX>*6Gp8Ob zW8f^fY%%CEHd9{qm|i&k*&|PDS!P%TYcuY(Lma4vLJT%6HJD4F4XDai_nJP#Pc5Rv zk9Ap7hg60n$H&gXz~nN6PrE`H`w6X%@DdcL0>2=Og%BX#${$9Nd8bqXZHolBU zz{7Lf44Q`84P=P`TRa*tB`@q@fCX#q0nWCcNW?k++74$3 z5WzU^EJVcs@v-T56xHN|R65nTy`(Ti*{C&;|jtxdIyUn{B-hm<35~Ge2L%kX48WRyLt&hWq&b66S3$+IEz zu~CUI>LywM0ahhiD!qR4LRRIj5Rtm&vz=@-r}%vMW#*EBG;b9kAoaci`!y+)gW^g; z^Jm~}fY)e6FdzE&QLT%RT;&2=XP0V1MyTRI6viD;Pio)K##)V6Z2aVDa8%;z?H=-vS+Mo~I`wi1 zb<;ZjUX0ffJF>`|$dSQd@OzVplv=q}KnWv-X{_sW`&xzzV`pbG+*9`<%2QkKDy%1A z4E<>ER~Zl{Am&P-78Cx{he^bqDzC#Z+sk7-E|j2T(L}WbDlY8H8rY5P$xBW_+XSPt z$WY8CagFK_Y7w>Ix^deqvl_~jn~0TZZm#fR`kayKi69JZ`eB2MFN+_~^3#@YYuwbT z(6=4h&!b~x$7R~bb#aT!hXOP<6-+p{-`mR99CQs>LmAr))dgH)_RR?GSb=v*3c{WZ3SM z?{6OF97;dUKSDU$mOsm}+X!4VEQ&U23Xtk_ujkURk4(@T+wUe>p4?bIM8ChzeAzOv zSG9UhxF}6w>Q4Qk)u3hi^0TFWh%?Y-3wll6ty^;)MC*yZ2U$h}`vdmw>IX{x^hjp( zMyW_kvS->(!25=1j(;anVf{lp{l?ed`1%`P|J!_>^^d*;Z!YxaLT@hg_g&}@q2%9@ zsQe)g`_D;Ke#vLvBr0zbl{bmXn?&VJqVgtDd6TI8=OrqCNLK%;MtGaa{eSsP?reVu zlK=Uoc$>-n|K~Hgv;8sZ*Z)wW!uE%h>Hi{8VP|FiSBZ*s%t{l|^H=`o0Cw9%$}}R% zrFi*x2ArW`_&=Q?t?0l`~o8*LM(@7WL29P74Q zvRN(PKb$ONbc}hox;uWQT>siwm*btYbei$>JY&ngeP?BAcyA`QT_pL&G z9`Jbdc#?4>p}f5VaXcFFp&>P=1E~N-6g@=Npdz`Sd28V4`YfSj0{x<|WgLFlnj746 zTO85vzH@y%GfEK*KRV@Z9QC>Mc$Ds0Tf;R?mubRu?xxRJr|g4E+M!l&nbs%I68bbc z=c!68`?OtSeb-y1z)!Ug6OF1ojg2`$w{r`shoPQr**;u1>@E#cykzM7St%p%!9)=>f-ik(;+91TX|))Q6LoxY8eDryM)GWEl=il%i(=#yn%c1LSDjsQgbd=llMy35 zm%$)tkpb)(?P7^Y7(L$POW7#A>ahQxT6kn)xhB*{?vW5Je&j`s1u) zOabDB|idB)kn9uo1kJ4Y#sMfK`4FnTXI_P+rcIi7VV8eYLo) z`401bmOM=^NL%syMhnPOI%k%`1bv^(bHW>{rY`Y_P4sWCrO$0D1W0Ev>MwHm_u7X= zO46yIYkMK)GP{eN(_c6iHr4>{kZLE7$cm>5kqU-bZIasCJe@}-%Wr&4zc0l|htl#> z3i6ZD*E^R%+voYXczkl^+C7J8h2fV&T2G|{2r--;Z^ScSGN`r{t=UX1eyR+ERn3ds zc|X9P1#TI?I4tQ(W@bp@;A9uP$dR-+x<+bN-Wm%Hs+#bF09I&?v6eD3P<^}94bimAlraZMHE?jNOvy|Sr}Rq~ zb@)?|5REz~QC@`pBBKCCasKd#cwv5_40&zfVHWhhjzOC}v*Ucl{77C#97tobzxW-x zLGSTyZbORu2F9t^9utI;kW$vBY~got72a^4G7#WhbozADG5Uz4rE9&CwtR;YbC5CMtnd6 zX(}U>8X%WS)?+7}E*1$B8Dg;TSMUD8y*|t#8kqvSp$iytXA41!V z7!#P!NE-rmxXYfj?Ti=kHJ9;w6nqKzB3E?s8iQyFXaI7YX0025zE8*}A>=t286yRP zDYh6C33$iN+!DASU3026bFS~MnS8W^8ZtX{QiC97-Ds4GH*jBGDsQjKuniuWK&v%^ zwgLE9p1$CRKX51u9txYNn+Gz6*%iLg(_fUL&wr_pNgAs}j3>$Ub!h#D8HbMywhq@v zrZ9eCnOwQg^#z+x4^xHWJEFxj+NC`oe1kNHg6k(0eOean>I-cJDVUN(HZDbGjUg&* zW5SG@MmU3gRMt4+4sGVJT%y$x7IuK$8hZoe31zr;)2xuVW$j%m@`n#|BwXZx-2L{`O+cZ9>|f%@)$ijhow>Hq8~*UM0HPt?wG>SN48#d@Yd6stc((S#XIL zP)k%3sF>uUH)4I!QP<00v@~NVx8_dlQ;Iu+(Sc1c-#=JxS}sVny2{#A8+@ks%k#?S zi*CV=H|kK#SC?{k2XBj%4cSmu07WKtGgT_Nu*3!h(y#JG96>1fFc6a_p^AWzP*^6? zH{4pmm}EWR9zvtiR@l#u_n!Q$@M1B#|bJTq)+ANfw$_ zFD1^;n+6#E)mw`tFal0%Zo+PXFAZ}#y~1ccN@ReEAZhF?6`CF%{6`no{r4vLqA{eA zW|D11QOHn<9!o=K7DXh$Z5PM|RuaC0>7sh(#EM-I)+qM}_M)Hi%MR4qG|t!D_{+Ic3!q@2gOx+4dfRtodE1Zl_9D&<_A~0$HIGn~+og&w3>}rJzDg^x z$x9DFGScuouF>^9B|5maRj?9XEnSy|O(gBKbf{hq_p(W3pIdfO+}X@^7>QWxy}$Ov zFfNa3I4|7XrFjo)KRCuXE$%0ZwkcGF1t!?!)rPpXQsUzgR)GlRro>0+{G$h$ou_;h zs4@#rVfw4;>@{qRc4y9Ya4#n(F#6aY1HV0&a_XQq=nd8Li8L~u2Vhya1s>*@i^w`( z>711No7qqfWZv|&dlG6Po)I2Z6XT$m;|^2Hw85#!$r0Vy2)Zr*7%>zs>8q;(z-Uw`ZF-dTvct?SsM%qf&fujBY8UWLBmjfH<}VS z3YTTQ%ESBTO7antAIFH&P=G@kC)l;ZA2~ws`fbxn z9>cMgsm|}s=wfD9de^d+56wrnzWZdVuGqX|NA$v&^wEO`iFe+J|L}7R&VR6$iaqvl zQ6UbZoFC2o7`l|ywLUnm;{=wIL^T6IdrzR(w7Duip2jQz_(B4}4n+s$PrV{$bPi1; zfX*rd($NvXZyAq;=>$eizsOR$i|f`%^{xSfEq8a_{OFQF*O?ysGpG4TcID@7wOX$? zqFL}kQz_YIxqGrnZ;X$Xy}Z;qi`4Sf@saSIURdi#Cq0blcX_jgFzM4%$@Q^P17$)L z=tyVPe(Y{sn4Rlhj4sLGb+&9{Exw4a6ZK}G*5?X`jP!lag(W0!%sy@EGyds&4rfaC zO{r-a>6&Ym{UNr`KCdVO{dej}BV)#10iREfM(mrvmf zK{a+ETr4%5cqoi+buk;}?T&n8u-<%^9W1H$G2D4-K30ZUC2fWxGFXXmqG(jD%8ks3 zP=ffH&pTO-RYhWCIRgEvp>4s#*SA^JCB&IGxH83Y!Xf4&XG` zMcnMbIN5qrQl-#j>uRms z0dClI7DX0T5l<;If(=az0KIW=NO^q_zR>m;mr+@i(iwE)dI9Ff5Ds{8a^fw*@upFz z=eQcZvUm)}`atg01r~EzAJHrkP1GVa7`h;Hs2>1_I7}C>04_liXe5Dg z9vSR(JzlKK>aQh0cVI?WO|V{xFpT`f~xeK6C| z#0~ZF_ZPHo*+oAY6dz@wF6eDMzQTBwmpIU!8+D{pFJwY15S9w_Lp`og)_JswXuL{4h z)w%uK$zrSPE(S_4f!U!SkXl*(phI4#s||x~1LD!yWSF;04Np6860vT=Qx%=-mERTm zLyCoB?Yhmb>Cr@sH(x~l!h)*K&)dW6k?ZER^{TtC9+7rvv~&Z+&1EXBefNjD4`rqG z_g#CqqxhnRAjt^Zgv&TzDCD4gwpywha&!;Qv*$crZien|pICnQs8^kg9K0vZVFJKW z!W4z89GtH!x-td@GT3POO~g|+_y9WZbp1#HIObZR9I7;ET4ZulOg2H7?1GPCzCeJZ z%~PX)r{ZAyqa()~f__8LZwUHtBWSiiIySwz(3=arxzOKtp+B^Qe?!H=_J@AzKc?bf z`=u~>Q*pehINnqoZz_&A6~~*3<4wi!A6IewzURITH1amk$e#m^u>GOgeN%D#FBxcr z?GHWI|4_xj{)gJA6a`tIkU-995t#zLU~4V!qVj(qMtl zeR|d*VczDw(WcSr$HDcJIsk=2OC9sI7B}uh8VsZwO}3ZI=Lh>A$b`sSPSYG|j}JKo zC-J(XvaSUd-aQGf9i*!-A6{o^82Pk(>_!y-twU7sLH#3kR}&+Vd1Np_!nY9l`T0^F z&(qVX=8B8jWSNt?4_(C%R&5XFUlybIqJgNO6f$E3Id4>nzBezd?p1kf2PHrZ0?2 zLON|W;=4IKm9GaaiBgbnR&mHND1DgWuj#QSvLbGC;YRBG>|HLMIN6ji9X5}h@j0aP zu1as)yKN#>{AS5J6Jt9$`0%NT;!M9ttg7O?PqL=rikhwMQ}<>EVxa#Ve;Mj1N$X9) zQ66=N>$a}8yLNG3?MKC8|0I)pGf|HbYr16XG+Y03mz)i?hV=xzRGNUHczbitC?^#y z#FN0V2B{GudNPK@A_F}X^WbTRl<=q2dI5IRwz&5G^V>GA+zblqR7bnG9gxuTnHhx8 zc#Lj`6?)xTqJgZzuTU$Uv3B-x53L?BrsuuBE2c)}5*p6)H!z%akWoFnHntIsbnML( z>Kc_JAD!*2g3li9-TMQcieY_Fje*ZUQPnnH%Jegfvxl7eJ-1xrx3= zs)9(|duq^%A80E`~7(ghYsDM~tpUHDh|AaITYxmK9kfYW{jo4x1uVmM5 zE?f23JAnzQdqo${*_T+1{lJ}!qXCTP3y?>Vc^Dx#FzLP2{nUlHME}k zOU)**t+ojz+uD+a>d*XpTm@2Sg(V9q@&_Ba@(^N;`uPqU%-i|St`rj{IF<{PMSddD zu;NNa2D?J`1H)#;rhyO(OJto7!@9yvTm>Mgbg43%!mS1X_d0x4ZL%;JcKJ|>SPq8M zWQayecZpOk%`+?}v)1eA+%R8qiCv8h3cO^9r@|^(2|@oMWTng4Y_x=UH1QAKPXXaD z9c_{2@TZwWRH|r-1N(>4J9hEq#@AzWTXhtCU+?%NcPG++x=QBhG;y}h)Kjf9%G0PJ z@sMdH+)33)?LUPvpW4U|G1M;g%`KH@2VaTwE*6{wj#W{lAm*RaL^$HPBaa6Un*$f< zEK#deMtqE?HV>QDz-mf!P>$8Nc=t`B=Q)IEU6gX*LwC4Nf!@2|aH1yZ{#&B3kIqK~ zZRTwE+3(6k~gw3||qb4;I(kvcd$L(#xhZ5Q-(*y8L{`@YH z2HE1-_=p^YX%*eo0AHjcax>+j-1 zV(9`J*1*1$o73;>;8_eeAC5v)~RQnh_(M-Ve`fDThu1`?g&}9)mo%7mV&1 zV;8lx@rkO<4YT;HHLY-k0-Vc@ay6m1K z8jS*x_EhlexCcKZHOO=?vGIRsf~!2hjBo{GN;F+Dg)7wyBc1SU>JM!)&>AJO$wjS% z>M)0Yk5&s*6TP3BvNifcFCZ}Z*q^5aK2 zbQ;KCJXari9^W6;*BZm5=HWs&tD-0o=CQs+mSEQM!8Ja8FG;AewOViiRH&^dU#3+# z$@N7akpoyCKqP7gIz#t5v<%SZy=$RCDZ$r4xI)?Q!Fe2?*@?A#5VR=2+lT>CqXG`;W-m@Y1aa^i~h1E*O zPQ{a2H4fofisXLjP98bh&}`rEmrG=m^Ub8w!iy-@#`K_L(+D|77fIGzX28XFYxUfX zuMO#_)mINJ(P?N6%<+Bp5xG0&u+e`ogexcN9@cJ0B;aBo$Tsw14BvbZ%c4_I)1dRS z*BB>rXMNvQQ+{nZfL-cLlq4uLsQjsOyC**#SV(??M0|O$B#?rH5GkpiVMz<7NJuW9 zkEzEd&@18I1Wr2~o8{vIxXb;6nUnvX|Km|kE;A{4z`MLUY&N$&PhmOm6G*R*p+~Hn z0=8PSw@s-!bOCgUe!2!J`r#R$w$-1lwN_bN2Q6p|aRKDu#O)R{3h;iNjUz6~}$|md}m2;<>33pl35v&Qh(p7PA;g1mS^x zTG^0Z$Eh1(D#@tg5giFqY$^)~1Ya;o*`4``Gqk~uhrngQRaB1U$}i7h|6T3+$5qX~ zl2$)!!~Q~M{|ArZ=L_)?aICy?lF6}TN%d^rfF$G}n1-<@yoYqKai3%Py=Bw%(uzCM6@5S4bt!fH(CG+HWQxnwvac^>yy<&X^8hmfFPK zJ49L(hJc8IN@H*utr)Q1b0BZ{Nm*>Ii=~OfVNY?M@I{v0!O8BhOSp+7WZXH{AhA5+ zzVq&0r^1>-z!zPHw(`Hd*fY62r>plre0f(tnR`T=CAu&eviz-l8c&79@1_6gSk-NW zFwJ+Tan54e((*3JV@Tt|-Lbx13>7rK*zA;nY>(utRy8O*y7Kl*WIc#yN3=f051V}! zaJ1|Pk1W^EDow#a(+_Z9iFp*AUz&A`&`+8aZY)cIGvvN4Jt*Jfo0Mml=wpWdOu9v2 z@1EqqXNfHGCNtEM#z#!8@2f{J9}7hcQq&;@8}Cd<(F|r| z%8xil5kV-OHgL_lb#NT$LT1A}QJ)dUqFuFxlI>Hpxz%$UP$K0s3nSr2ZWbX8%Jq{RXq%VAdPV`r9yz{f}M* zZ!YxaLT@hg_g&}@Rnp(!!R&u1G5%vbnEe;4e&fM!Jot?VzwzKV9{k3G-+1tUoCp8D z=f3gaHy->a4`%;E{rAR$|CjJ!_CLn^`k(UPf9eJ_8CiZ+5EKX)S$;pmYr`4a82$QH zVPgM-GXGzYF#{{ppB?{4F;;9=`p>obpZ&tOXha-BJU2wB2cogWl%wgKk;};uOz^eD zB)-kNP*F47-xOqVHQD8>^Knt?bdN2kp-6&Eju;R5UVLG(CLuen zX6KHT_^8X7V0U(ic%(?vgW6gf8IDnf#;7LF{Zh#m_OHL%BG= zc&gmcREUe1ECxbUg#ZCoV5aTlQVPEzoI4AeG2sgWsMmQg+`g3y3EYtMmf9J~pdaj| zzr!T3r87z%;D=G*vm5hH-u|-3_svt~I;r0fXxrCHC!@}fcje^0i!sI=(0Q!jGqMHd z@^&ZPo#E=kU{-*?K<`E_Jbu%5--f(v#5;)N)P^T_&~bLo!LMdH0+N#ss5(5KMxICF z@hoGMVwS;hQ{dcGZU#Xfb%5SWbP_^FAiA(abuSoE_JW& zPH4TBsLA6%q0Vg(6B<+OhdJAx5-;YA*+)-l^|{DD05yn=mUbVHmturn3Bpl)8pVUg ztP%c&IU5mnOqIkWcG3|3M`6A*2M`zGT%e5lQKDkvcOdK*Z$U-m8O9h<8fP=}L=xxf zX*aYi^9m@^CT<+^(}J-SGf9Lmp+Q3nM1$eT9ET9Lz_H8H+>=}7_eH(fs+1q+sczx6^j(_d4x8U_^3 zvks^GnfR*}yI(Bv7nHBtHpoO1t|$o2t5NF?UkgB0TF+KGwCqTzeK*!!vHijB8te1= zE5Q!vWZ``fT$meY`Ate^rh@$M7kXe^sP6oWSqBI)Su78m}vF%qF3W#!d4h37@)HxSD<}-ogyUp{bzR5pPN=* z)v!7EF6%423e9tLrX}ALBhG9qN6WI%z)tJxZ59vJ&l@*!dbYpsJPiC z(nc-g;8>ATUBr?wF}Y;JQhN$F^_)2pZ}s~&F_(GHP}+qaG9bZo<5|Z=T_&Pgc-GXP zeX!IcuXY;Vtk5<&7GF)*Pr}FC=3-)A>-PB?=2HbV&t$!pWSCrzPPs(JtG%+l^p#n) zy4Ic)jpAcHD|!~l!t#eNa<*zWr(t?u8K_4svgw9>2P)vBaWOQR5ec$4ax>4A4|MJ-PIo9R?j{Vw74F|EL~7)+rsJ&1m8Pg4 zmsy=6Xguu&#}?E~CyDNekS1S96zd7jS{QG3JzTPD@gBOq`f&Xb7gVtMo_t<`kR_6; zfZ6{x64MU}@LtV0Q4De&Nt5M1Xd}McMlA$-n>SpJSgztI3>d>2bF|e2d@8D*^uUG}PCY3J_82y)=mFGxGvLGi%B^x+H!OtA z1E%1`WCVpG;a9kOteAJa1EZ-c_7Ovq*h<8=X7fZ#A}MQ7i@=%KL1V0Jkr|l%g^4Ia z8j`l2#vP~gajJ_P1y)6H-Mw@z*CL-;rc|pg;Paw>2CvtJk`lw<1!zlmZ2jN>%20VO zrHFt{gf{A5kmmmAc{+~TT-^8}6H85H$FEm#jpe2tv?wyw$)GnbA)%<{K}vnIS8Pcz zK3hrWXETZXdur+d@+3*shuSC0l5Ke#U9$my4_c;U~C6ZPNO}C?e)q=X2;5;!j z#7eSWZm}=s04ZLPwg9dBY>UZy!hlZhFn*6y8ENI$=J3A7YExkr*o-Dj{cMscHGC*P z85{%OiOSkr>B-(sLlkUBU6l5VCc(x;QklrMFrNNM(~pRIYMK6 z%$Si~$!zkcQOw937a~8*)-+7z9F*0ARPhFuw-H)lQnjq7hS1++YuB>HT;W_?viOAb zeArrAbF6^M(R`0}zQ1Ndza4uA)qlx32CGOpeP=?jx2QSK*xYRmh~t<)@)k-52& zh!N$}O%adltCTriU37u_4TE|$9bFn9gz4rbH_x-XgB=5BXHOIy+;$HyA(MG;UrI3$Ui*we|}`$72@ubuBR6bt}~)BO<3W5BmhS&h__9 z;xi8qo@%R|Pje@#y6E`Tbl+X>IOlZtmomc7J=E7TwI8nrj%%fr-!nS7?sUp&5$(42 zX?wV*FcyVfR%=uyt9E?UrsV@KU-|wR(6P0vQ}B|}*Ei62j!&rz3N~OaDpA^?v>Q|Y z)7S!a+ToDC&C&13_PxH~#}qwI^j1L%vU?^9hGPd(NxBAMR9d7L@=gG_1c=bTBWN6d z$j{!I|KFPb-01;}7umA0ucS zziZ+2GWyoW^lJ2q&IV5IcEj-7?=3H#03=8N0zeJ~hzJ0T1O$Qv^wJB!f6Xb_tF?X^?5_m~7z7jy z{54C^Fs}#HBfe%I1O)gsvtXdF1_1JU-46go0z)Qb6aYt&*M}goM`iMh%Y!5q{M?16 zFm+18Y~bJz1&xk@iG@u{MovLV#lp(Q&cVqgBrGB-CN3eVsHCi-s-~`CXk=_+YG!WX z=;Z9;>gMhd5Ev935*ijBpOBc8obpD{-U!+oL3<-;Zv^c>PSAeebKeNs8$tV%pmF>$ z?8X~G`(HxPIR3zs^2cQU3o)c+OA$M=8m7{?#bO_hM*U-$i! zuJQ2D3kur0X|gad(!D+n60or`(J?Wz6R{gwXj_18A-KU1UqD>-d?1!G5BX9q)L$JZ0eIoKL18arvy%L$8W z^YQ(ky2P(j{7Y5hziJQ+1g_A3CCdEIJhHwLK{^%!MkWFWV`v*_d+1;74-5qV_-|1!NUX!+Mi`&Xvu=;ZJ(ZuSRV{C}H|^N-fT-{xatWT#_gXC`20;-Gu2 zjWKaB(y?+f60oyz(6Mm-JLA1Z_;0QE&%|i|k=nl+Pt?}N>D7h;4(9q+w1QUphL!}3 z%)hd#@M_6FElaOt?B?`0%=_0_|GEYy&eyVMp<`g=AYkUCdmXap-`n{AJJO$q7F2@% z*Nig}D4F~&hJRi%J1Zw012Z#$k`Xio0Rbg}k_9ve9RtI!s^_mDB1LflT1KLO?4bR} z9$F?=x_?AaHMcakGd42U{~b?6>Axx1*K%PX`0J)B;Am+4I-))!0|zs`kiMO`vAL<4 z69GFT8@;gcKX%bFGqBT(TIriQ5->BpdV!78?*gY~6sc#z|D) z+T6;W;&=HF{4O8Le}tP`88ZUWUp zKQhJ1z(6nIq;F+zC}3l1WlX?8ujpiKtwO-`8veWf{p;+%a_wMl=Va?ZulCo)urhM~ z@uTqj{C{2if6vU>Ss58P|MGK20!Bto4pzqhaz^p6*<@FxnIZIn-4sDqU*Bo};9`P4 zU10G6F$_FjR0JYqK^R&_;q*`vY7x~ge~JoA#6+TsCjVTR&;$C*?B# z&`ue-^{uDR108D@ZD|RkcWa)eJ0{+a@9%&>0X5*>8@{cyb5jCQoL>+Cz4(Bl*Qu+y zJ!^mzfdTfwqLq$zt_3=_ZFQi&wV<84=%4G=R{x}l(hK^YM2z$T`&=~8Y@@;Fgip9X!i67nRR)Uqmlq> z*Ae<{kuZ%iRKbM2P%W-b&1C#XFEGaBR6z)mv9P+Mp}Z!Jzy=8&0ln42jQcDzp-UkE zPEPQf#+YK#n$w~t58scbfZYTGvnfJVF~|ft&#sHS+SJcDJZOYFJF(k#W;q^brGTqQjv# z>Pc%bMR@ql1r3%3A>lW$^bxgy(60EMRn$U*4i&;WKQ_1e5g@{(5R)Sa(3C+4}y1gLu>~R+2+i(oSh$n$sXhxKWu4bF-a#(t46P@A>hYWjKrK5E1$+s zfF1O6cMO)pvyHft$BWDw-x(JSeAyPGk(n_DY1|UJ9Tv^Tsw3UvOy!nrk6Lq4hERMb zt?Rzsq@zJ05x&!;GVJ;z+@cJyUf>5?(BdNrlkq@vocbQ0icH~S%;6Tdjv;zY^1GPB zoMwBpVD%Qks-`)}K79yC7Pe+)vhdNSOds!CqQX5!N zbi?p8yZQu*An}-BlksX|i)KtAkkpzLpG(k+q(BU(!X%UmEgs<7dgGW~;lkKkon4ld z_FG8O;~r-q4#_mT9Jn;cjn@^L7M=CjgXMA?SkAQ5h6Gm>et;uRB*J^g*Dl-3OI_bn zf4~23pa~I5pxz)T#1r4my8eX31EUV_LxxG_Vh??@DxefG^t@&qzm%X@_3J(R4e86t zimkUv`1yiAP=%)?UgQL&bcNcQ3KdbU@t3z6@b=X@v0o01e|-z*RMm3;b6XJ^Gfn1R zk5N0lMMWnBOk71%iwlI zUwyYaNHcWNZyK)M*Z{%#+Qr zlXdS~JT?#yGQ#k=5o!l#{OQ@3{pw5}1|If4ps4@W>~sNdRpG90t8{A5U1%@wC)G5f z3TY%+!lru9H&#Od=5zpB{#zI#er8B=i=t>`8gc>H{oAoPXoL9 z;3$!w*21|K=#SlEab_VeDPPN8^>RrD_4Sy&Y0D10xNm9gU3^EcbG!p9t?G~V!LZSy z1Ai%014;-%5kgo*X~H53C>TIm zBm_tVks69rL5gDN?kYuO1*uC}5G*vo6;TLP9z_HfVWlW+!0z(Sd*{4&p6C5@&-w11 znKN_0`F``8kRu{Lda!F4&bxYfztX18LvLi}(JnD_ap(%Vj|G?+@r~5PKlH~_O8}~> z!IEY5vBfjkh-tMTAt(5aRLqW64}*={8l_hirH2Hj9(`cXG8neBJ$pV^u}qJz z(xLjb38_^d@yq-@yH@V}9J`f1G0x4Zrx!AF=oUA`WMG1zKAv|^oj~+<_Q(18s$;C^8&8e?3N-#WL%Nsf zf;yn~#~6f0seBlaOeSwPpbPPfk^H_Xs4e@nyzW8XlzE|oFl z*{t0;^)g)z!~OOF+@8Fak`P=C@eRv(+c`@m0r>AdlUJ0w1$XxH`XnpP+SIS~weD2E z>7t4^#VXnmDdu{;9%A|@3j^#EU)?3gwnO1+S$C<*6E#Y#wAqZYiNJ*8TrpO8G)Hst zB_GG@cBte>#XJ&>(=FJ-N6nTsH>(HVGEsmaTqn(o~YO89CPgzT0i%i@mt&hj?*`GQyd%>Q8 zE14xrRx)F17~m!puG}ILs!GS2a|EDt`ef1R6ZxJ#Tpnzf&6@zZV(tN~gl*ud{BIfb zeOyNiL?N_51h{)QauYo$diWh&$J!n5;_K&xC;YpvGl)FBcJrQriI3pDF5`VxO{>Lx zwJI8QJm!b*MZDan`SbuH1zwr#JR)I1sck;k6T-MW@81x2_xj^fcY^B~1=p#{s`<#8 z&bgv@JXhI{N-L^&?|*6o6CvHkJL65P2WWo`HReRz4IK_S1VyGUHD$Bdh`asJ`Lu~- zuYRsl4pw1f=OK#Q2o2Jmdkm8^MUnlO9h&X?qmU~8_c><7QLI6v^(?Q`fg`i~k}|S= zI8G>;3!Ze;$nK3WQ-P zAmK=U$fm*oUx3nk%1ke#W_R(ysH9)1GbLz!Oxr_H=u-ziD2!cv2Ve#G11A9tp#QZA z{Y|5`0aU6fH=;SnqK-Q;&xskr5l_G-%==o`>#;JbZd6-ZMT)*eC07;LunommqD6Yv zO0M0n`o&U8#GA!E*pne&+UTWM1wKf++UODGbpmGtbF9{HFM_8D4%nQO-i|I>V$*1& zQfJWY{Zfs`(KYS3J6b)0QjMe`bY{7TZ?;rSe?CrgG$Gq&M?GQLUjS?F_zwitdw!$kF?;MI_f~7BHLNV%Rjbdsypif;^OopB@_+2b# zJk8#bH3)YKGX7&1m0L<1DjHqF)S9kQJ+Z&dYHxkv`JpLSWWu6!I<=#WY;CF2M>M=8 z^CulpMRY)=eA1&-)h#_@{eF7%HxO*;5s1{-Lr0SaVvA9l??c392!@saFZ4(OlzShF zpT@Wo++2u~hE`Zftd*G#QeRs`RZCl2UlnD9(m=?8GVj+U`t_Prtu_}WY2`vBx#L{^ zCEn7)c1RisS_VE%dwJ#EV06zKM-uN$5faWrS~s;QCS@pH{9&Zf#vMA58f+Rl5aKiM z4-C{{ywuuQ2Eh)Qs5a8Ojy?f&WArDJ=<%mtdX`^BB~ z_G*>e@bQz=&|IrP*~KvjWU)dWPQ{on?8kAhnL_2Xgcy$C0^ldIEb}EL0z9jz zsZ*bU08fi)grZ+OORYU;#JSqO7@W1y^OY%WON{@-l>B@NIH&)LDSaHtZ+lpO<$p{~ z+tCV`D|tKC8{_&war{_KClDUI%f40iC{Nw>H=a+T*Av=rlO#l>|9mt0prS?}B8(P=W7pd`?jVFY2`9ax{{9vbKF-66e0~d5K5$ETI z9!Jp3Rra7K_4Oe|06W`4-vN;>gM_nXuT>Kq6h|8pLX!DO6^?6s3Ps*LI0Lw?PAocZ z|MRNWj+7&!MmC;F?J1@Uty1!5R%7{-O&z z!Vomb6$}*s^Z_E^4mbf`fFxi*e>wp;z%x%iRQ8|lRlfj&_bH+i!7V`Y8#ckhAwY(^ z>QYTI=apaQt|mPfR~$Y|v&L{w1jWhp)9m&(GN5)Ytj8ZO6Y3IBA4?C(eqN<>kJJa7 zi6w62U4J%uj^SKAV3UGC#+iq2?Q)Q>_vzil2|qa|Y3{*JD>`gR`HS}|k8AqK z;_pp<;R-hag9`o<_(d)?fOsExw1TLBq+&hrL=+KJkV^$bK*a;_Ky+0=#RJ4DR7G^v zEdt)sdanrqEX8i^)~egCMMx)sQqfh{KXzX}Z|1$3H^=uk@4cDWr-hd|mYQUmH`%QY z6!T178oF1w6$G|K#+c^`JztEdPD>i5e^l^dWU*AfsXX*<8AOphSIpm$Pi`VvocX+&2f95br~lZB|{$ue-qdnuA(uyyBA~0(?B(U9B zVs8HTIp2rZ6#EBE-<|VBalk)F|JR*Gf4L~Hs9fa#$nIQp=&`NBL4MY`F-_T_(Jht( zt51%T^*`}Vwb!Ml*!;?xtUI|a4Vz3s_06d@4^A%BpJ#edp& z{gAP_(Z}rQkKadbN&SIo5iL3-&7SDKjnGJFWTk1a`iODfgZsZf zy-wQzWES#LfDd~7oqTud*U4=)o`QMAT#ru#28`y<3!yPa*1&5dA3ur(Phgt~zZ^@@ zPVWYZX903m_q5&G=%gg1S2UHdD`g#MZ=^NR1PF8{+R0=1I=XuL1_DDPV-r&|a|@xR zRTq(U*KXZyYh(MlFku ziH(b2zG7uUV$!PQ)hVfIYu2tyU%z4Fri{$2&0Dr^%if-|V<+s|y(c#>fA7Bi1qTiu zI$T(Er1o;!Jd=0m5-?@A5 z{sVZZP}ZvI>Ve@)DAEg%1UmHVC14_MMm6b1s>x-d)m_PU3m@l>vTZtuNskpZ|NW4vaNJ1n! z5)+BJ#8T2#(nI1Xah7;VW=VqWh@GjOm;;V*hMXxU__8Duzc41j90ylPGJAx=Sh9cPa7J{kb%nk%*6oIwGwjIGt z$y_Z0_8kcPIuK-Xd0b%!f-4lkeTraE2ZCT}XfvwS>PIxs3)MN03eai>@G7rW*lN*g z-fGsOYN>5ewkTSTJUaJiVw;23rPgKF>(`~$V}n6mEI@-@-Fe!YQ)gB;xUP47Usb3o zuHL5ZXH|(RuQt1OZ|!=3+Jl;rDskzmx^B$&lOKKqZGFl*A>?kl>iTu6r~SC6#)uAg|EU*Ayf2GxbV+w!|7bx z-bi#C|7RleNf?QLqiwOa41d=cZLeIzWKz2}@qM;$jC3L{9kRna&5po6NP$$c3$o!c zq`@Xw54+(o?5Fo|Iuck7Ti_WyhmEiu)*=sT;b+(bh43$U0l&arD2B^W4M$-%eSc@d zT(}Csa0#x!O}GZv;RbvU^WYZLz}N5vguqkCg1c}V?!bKb0e*ya5K3S13tV= zQI4PCBn$*K0_xMGugT_<@pGJlQ*jzjM?;$DjnM>ya0dJvUgAugg|l%E&c$Gyhaos0 z7hotZ#4uch;TQqG!96rZGhB>Ia4AM&6upBia2ZCU5H0ED(FGdd5sJ_nV=$Ips@~&MlZ0ZFpdH%dDoobCR=$Ns&3grVq64nR6imf5T!U+I z9j2orI-xVV;CkGE8*vk6U?!ZwUf3J^pbWl)Cd`8SP!A750ZOQY2cUuyC?%ibAUFx9 z;363VU&0Bfgk<;%)*wT6z^}v`cEC?i0R^xby&(gAND7X_@i>8`!fBGuF9&Pze68$6 zj1)xl%s}0w(bSK%C6!yl)Qtcd`_={O$NXE==U%FR($EI1~b&UFyx*3XKI+f+>z3OIC$g}A*Q5^Lw%}5&ObiPPBdMV~; zW};q_fgZS(%DX6wC^umN%0Y$mA)c;x9f#91vVdDS4$c4vlW{Tl(U_{B=f%)S%AsE3 zMtw;{cUOuz^yIv76po^vR|I9K#8z?|PI~t5=h4^Q%~jT?cP|%bCr5{#QqJB^B4&Ho z+H~*M)mqfW%2H@yZf0s?Y-A`f(AT4Xffyb^aKYaRuiDtQjWc{lQj$s8k|^qf`iQ=0 zIZkMswj|S5szq#NDG7otPUdVHyw?!kFx#Y0{?1fWqCMWg9Sr zw$nt(P|O4RXZw?^$^JAbHe}tn*p>6qVI&$d+DK|!XUPgt# z=}6GAOGjiFEPNG)YB$Q)W~BT{-IuFXD$rs~azymPW5w{L-S@JU%SpK@uD=g0b5?*> zKv4J8GA``J2A~T0JFdW_MQDWK-cr)$p{ha_4$bY z&f((ctx=MfN+l5-uIDA_5IW1xya1mfD*b(}Z)y`ztIUuwXR5@{{7j_2FlG37CL=mJQk0}fo1R=7Mx!J^7aAHm4uU>+xY&{-=y+fSX^IT< zQ6ZMKEsOgovCM5*wwqTZ80ETgj&bW9J=?F{;SuuFdvxsi67y8ct_!&$9iU1rLrj+GjMJ~(bVd8TJc1jcMkpUFOY3aq$P-5GMRR9Afz;+6Bn8SAN5J%a$Fqh@%Yup`<;wYnmyUVWn%_gtk zL_0)`#E3X2(xOs6<4r0_Mb0SY^63`Npll|SNdi0a>C8r^EdZJ~4anyl@6Qj2q_98p z3=QIPxh#xGJX~JrBuTtvN%B!TDo7;p(d3Af)LQVn<~M>jf=tRB z>}M2-#D_Ephf~b-z8;rijKfPfivr0Pyx8mYE3exeyx@?>W77cM$us0QWTPx@X?TF%84qDEKR^wq)REz&JA_R(>~?v)!d^U_>e%~$t3@f*&s6n_7U*-!s{@z3iUKh+Y+?8T#pa#g1K+`f@u z^G}D5egF2$H_ncj-g~brfA+^UWwIE<)zKsG{&3~*U6YfxM#jB&ci;1#jb7oKs&Xg> z|D4IqcP($jN~RHyqDVnmRM)kC zXpJ7H;qf~MSF*9!VpJ?Py0S~N3+k@tcYTNQuMAq}td!O2Twyfk+mx)VCtCy?CGSiF z=Oj)?cUSn zKQvF3Zk}u0zu!1_vxI%U{zSsp+v`gt{JnHXu`zq={{36CjUreKUCVB|_vu6C?Gug3 z53cDSOg5%wN8|C)*;mrt-J?%m{?^Ufy=&L*)oy|s6tlDG?)WG$cxCew^Y4JmI2uHI z&}A)-7<|HxW9}ZhFU@ohVH2`gM-a02y%}Ie-t4e@(oP&A>nzpTr7}2{wste9XV;Kh z5qHhK7Q*(B7J4bP6k{51k!Fioigc3*9Dtxx4I;tn@v7K}LMdi;yJ#aWfz}>V z0Ppn;?7kB0dyx4-a%SezubU5=4}bof@&8g?EkIG7SNMP2yO+KDxVv}XE-ZUlScHWv zvbrnEu&YJ{O%NkU2eWDe_z1OtO%&q;NCxO?4cOS|icUIdO(!!oRbyI-+OZkas2Lv_ zr#hL~;7mJeCP5wJ(A2`U=ik-D46lFgu=hXbeCK@McgkOzn-cMevS|hv0y>*^SZ_)ktwv0Uc(}DT>&YkL8ux&|w>+==3GSE^S zoK-cYLiNwA3s$eIZ-#XR)zi1|*C}1hi#a$BQOc3tTK=~@DdAV}?ff9m@j%3*ObJ6l zCWAJR!Fv2=O#Nmy|KUCLDlTB}X;&AK^MHy0mBc)I4DV3lCoAa&ZNHYwP*66?ID!R% z@2&+I48}oHfxJ;Pnqp`iB7(+dviL-(hKw(&ug#cpTm5MN0sgZ3<=AJVYDCR~{q5xa z348`Lwia$W2sbq#9oy4Rp%}aWFd3u6@H7`~iP>|wY%PbJCac@Pd&~}p=2}k@v9D$zj=i`t6DQhf#eW88( z+`Wa1rz@+E&Nt=e8x{<=2aBItFjTeO-e3Xc-yNy62o7=fWp4&8%I)ay&#HUg*5BU| zR5+vSa#WmJm#TdiI?jE>Jw!Ti8t%JVtR;j;hqW3VGaVWY%{WAKBk&kffwF_Ii6e+P zeM%Xd@4vcm7wn%sYL|La?V(#!rxR)q?t)u3tIZ?`yRHZbyEP)8i4KY~uhnQot(NqP zq8`kXPE47nQ7BU=C_~GPM&+{96;_RqUx6b&Fi(3wT>er6e+lnW4-a2??nt<`8s1)v zHto?hXv=*P@7Y^*dM!)GuTq0HeyL2FG|r%0BD+3YBZi2hYpJgDWx6)G6shnf4-mOnSdF9D@=?l>Tofhy6dl< zb8Q9cJ@wDS|E``k6YpwTRBGG8@_9z)4gg}TPpg0&= z7=gejh%dwn9RoaO23YAGwYmBDj!QRYL4AtpXU{AP;F>unwlSo_;Lyk6wk*^-jO2&k zf$uYh=_Du5Wf~0zF)0g~L)d9&1YHPmtTN(_JkF$(cqea%#X?9(_NaZpPVL$DHeyH^ zjo5=(-9qWgL0B+*aW;vgOy1ZSLU08*EayF@S0S&0gi1ZYuo?j(R=Dy1&9MCg=e^(D zw4kQRtgd!;e|6#Noy7i&n-)(en?JzO&wIC3%vt`zX6286TlK=HTl?<+y8h`1%ccr& zr;yE4=<{L3L(CGyY{`I>a*IU2&+TVM2x`dw#tO9hus<17YL#wfP&uTWQm!k4qPQWg z4IC~?a)QI@bSEt?>Da^X-iH?n%oge;=FRTLL^zxUGLmvr7OVsW1NpjrgFfo>d7K3a zAtu?vg5XI=QdAm{s8k}g5tP8#nQ#OhkCiK3qd?jS1VU!!n^>)&QqXa%US-TK1mrSC zYyoDZa9%h!<(5nBWAkKyi}+(oGPhcu|Ga)@QB(4&F}zcW3+lreR1`ozVY*C zZvJL6-tBCud2a2R#*#W)j-|G>wz8^`ljj~gedX=tduP}(i{Dt;{dL!}4-(-`%R8G_ zwmY$pUs*Y)wgKj=5FtL0>QMvgj0N-t!wy2Ngirww8F=WMWo^ZD~D4r7Uikw$$hsUBJMsSdHrJA_|I2~GsEfb}{RG{L~P#g+W9!&2P z9BdQN;8-!kH!KZi#f337O-v#;aMQ74>VCBo%XlGOH@-_*?ZSva1c5q|Mi(7I8ViFwA0Q_&$rL8! z2e!xswx9@>TAGt%O;~)EN6@m>=n=Z9=ATF-$$m2^0nZenFb))$e?vAa;Q&bTBOqZo z{!2fZ=HRc3#}s=)wD>pFdOI)*hc3DVU-jfJOKCHLq74JNLT!U|VGE zwpGPVt9rU$dnL;jDFwWiK;}lkD-%sdYh&{U{O`KR2HkEQ$?(HnQW=v+j1I9iEsaMO&xm+*Wk&2`m}Fi zT4zJ;&)OH)|AK2Tt*>mZ`eyz-_14v$cQ?I>tFeT4;EqN6#wRxPzp`=jt6LctEQKCL zfVKgZ#d3)rK-4-n>A%nuJ;blo8YB`W1B4QZ0C5=&ES&(uCJ0EemYYaRBltr>LzPL` zqAcYO46WW;J;SQLSaM-xq6n%!`m5jl{o9kOidW$q*aph=Sb4Hg0h)&1i|I68yxyB2 zL_!K9A1E>V8w&snDalv}9}1lcT@O)jC>E*>b%zE+d?=J(oOHPIlNmyZ323E|^rxekX@lWH!-5S!&Zxugd|7h0h!7Xxs7-d*E!5_g$Z}q{lvZzf4pxnsNzqw zBv|G^pp1E=cn1bKn>IBPPSFeGonjZl*ae*NlVH&&&bWF-QTf6CFR>rHrWZDDc)8_` zFE)QQ*4>GxE?-#LxU719{Qq>93vg7`8OQH=+HyhK!LguV8R`{?_+gQH9E#M@K1ExGTl#F+#}lM)`!6+|%0+C~k0dZ6SFezz z_ghruB8JqUaF4(Ev~FCDXl{V znNR1YVI)e@9sxPve=va$`vkfVpieZ3NJNB6MM4?O8yCU0rTIMY=kb7oh1j&r%$T%m zY1g=$w&*0-G9o4fgefQjMJR|~c+g5~15u1I5GJ2ijvIb>2~#@l?#j( zSXD;?3>v;36>E5^IsW9KX# z*@MJc%f5K}y}F|E4z@+W!TZ5z@rHO#@Cws}&O<_W@cRy+E5|3no(`+SWrL?y0dLGn zio;dv`GXY?u?=y!Jb50PJq3;RPD!6I%IlrdzA!NB?a z=z}?`nHf>hZsdsO$6XBCHq z3N5&U#-P`?wk>(iQ>ad;($*clcOZYUTV=yDony3$X}``HpD|$)UEX^&#-uuidoJxj z29)s;+ttmEu$DQ#a(D5<9<<^5eYE9kR>S^!n4O%JH+t;2tZ%#Tq7CDx*9L0q$EPnw zd8_9w$e6&s;Y!4UAbFt*%D`%W(nc1@sKj2Xv9>Jl4kOngfTKw`V>JM$wlY|VJP^eCLw5PHKj&5 zst_d>)Cz~x2Q2^;nrQB?(6{mP%ZqGkxPc2F+ZNj~Pm9fSEYxPD0E#2HOqj+6dh=O2 z9*VBxq0G7S_d9Og5pJI}tm+UFhOJhY+iKvuHVL6#Lv(kA!rD#;u76!*>Y;AQbPcu9gV zS^L#*#Fhbo5;kPBMfwL&G*UN5A)vQD(e8l_mN8e5yp zG3Ltf3`4o)J_}5!0tbgu2`LP)K&dP!^F*d#m+^i*qwL& z!vcHahtaCu?{a^)_v(i{V{H)q1&D4EO0>}ewNXs{Hn~XND1+aRlr{N`OsnArfNvl$ zHG|)zf}ACz8CaegnoI*seR~f^lJ>Kme^d?l)kcp54EQgBTw-~^aqz@d_BZw&`-snC zGt_{eU>1rnMa%d~@=-N!n0?*^ofs-s70(S)k zc0TY&9(PXgij)a@Nru&rOag^Vf~J^Uf*+xHJ9IdHD~cAHW*}*ZjeBVuw&6W;)liK&LZ{r@MrAwIre}Z{P_5% zZN0Z|zCVmT`PixjZTmX57p|X)?I=Ca`r7>csO;ZAqWQD)pE>l#w327KFJAxriLCXZ z%t>~A|3+yE_^oOMDT)aiEZL+|xk)lhRbV~+cZs797>mj~to}KIETJxR1D#;mEP{;@ zI|D(Cz&VNodw8Zk0I60%93nWim{ze{!~!8IZfYfn5V5JsKuIO1A0Hf`+`eY*19Y6_ zaR1>W3=UqVM|9^Itl5nwlMNCp5PK7j#8ueTXw7Q7SCnEDv;}8Mt=i&AZZtl~qn}TVJ+`J9&#$Y>U0PhxjK0Qw;SpoZ&Lp$&f z{A}O{JR)$Go&G`Jh93NQ;H%zhJnJso%JcXRoY(|dno{<6OxUi#qERh^xW_Ueros)u?N>D3DGF7_mKmRU)3R~7kQ|s%$SnUPoxJO z8!t>KWo1y!6jtUbN#Nix_#1qs(%@$JOA<`e^+S{eDP~Z^<2ghDFM%4^tUjazg6p#x z;)`BsXx-e;*HEL|H_kVzVHS1?LgZqEAXx~~o%V*%#33HX_|e)C2p54o2O?yJlXSty z*XXy!v*JVXrnoA0WA(SPr-z!9?+pK3KJa{dvmN0fEzY!N>S#ylX-y$CM>A=urf9gU z&8mhK*EH&p+eJCy6f_U*#vHwdYTa2)akuJ*p=`%wqqAGMfZUEHpZ3D5bRxVa7N#zX zMYx|2SbV67MMo~9wzs0b%td_}M+!)jQ@c|K}*3V6DVpfTq0S((ka5ZbyDj##(d{CWDHFTW69h#Oyt2Ds3^W!1x7oA{}J z{q4$7YLMOEGUvWWh>J{%x)qVhC6mb$&Rj)-w&=zvZ7N<8eU$8tD!ZdQV>FT%jVVPs z%30VbN?O>jVT5Q$5Ol&>FfS5{mc(KuiW2G!-W6=8C7u4b|F$mU7HyYlZkWOkaMwsR z`8J!I^78ZYHB=ZiQdSYOvcN{OaAq=ZtfF4Z4?n!Hu;ShyEt_ z%0QUKDzJhDkO}*;nlDk*+hio$%WTayJ;68d(t8 z8sUHNUWm|fVQ)m?`8lEH5PcsfoKR6RsNhluaF*={3hoFPkW$p|7=||iz>|{$u@mXf zog&Lhxa(tP$iYc4)R~{JcgCt>?d~!sfS*ApaRPY>LP|Q#O4FrCU3L7^cm}Gtq($7N zh*X?R_Up(JMfSQRic9Z`SVegSPBsY~cVrgK@B~?;C~|H@uP1Zh4S&38^Rl)nQ;vyC zUENziyM~BX6pMw{t3P^HhZ^Dka=?VU8}$RSK|)s6kvo zRfPc_SG5_ZiVAcofoAeD`3&<2QP$F4+D{oB9ihID%&)c^8pbB5JKY6FAYbM ze}@O)KKNs5P~@UfeyEhXnI)YjL;wEYFJ?39)d}lSBy5qqPy%yVkE8Y?Q=o?sPfxP} zhM_w8TD@2A*A;#Atg_$T=eYECJa6mRVezQ4-O<@yTF8CZ!c9;{;D)#dZVHCe$`zr) z5Vq3{IG381^1)xlBswB@PP04LNt-hrxd^N`!{ThMbgY%GBfB;CB$~|>+^Qy*N~(A1 zq+9F9DGRsRm}%ror8PNeWZn25i(Qf}TB7JN2xIQ1f3A#Xnc zRU_%3PMzu4Wt%e`qeRy*vZ0u;q-yI71*L}rCZTrf$YDY=G^v-Uh#2nc zGHoSiJU19+8!MalvpKDU(~)=Cf}td_;R-Q8(&_Y2`Z~P_-DEMbX#*ks#KBKV zHQu+6pMu3?CL5pml=zO3UZo#rNvLkU8^61g9#jT!rAj6{XfI4v2^IspQc+bZv%Tbq zJYlswByPrb2N4K+Axv{2AATZUK66g&=NCsV!oNkXRES$?qWID)kh%78B4;5&849t) ztF}f9=Z1YsX!!bzZY4nZC4SjO{NGZ?B+O)31tM(@=+9U+3b>qL-Gza0AOg^Gpr2n9 zmylccr>}EUnMo#*db0T>G1AwaQjd|yt+N4eVl~j&Vw3wKk-C^1Ut=$5W}R$|DvvKw z_d-FQom)d5ET+X~AU9EL`g{pHH&VaN@;CTb(*LtvEcO2jUe|Jf;A<1TwO$bCt zghVhx5FwBn%!)4_3aI!t_&^~bPDOF>V*#Hqt$H^Z>||GmE7&yR{AlpnE|*cVytCLU^F$XZmVjujim@t$I7A1g- z1WEx=z#w&5)>fDNV*joCm4yM5Lq2ZRt7>an&%J$j#fsYxPpw>3y{ljjs;Jx2?VP=2 z@zVDB_}!ewc2CCaoW;4{t&%-e>&kLGd8?fB-a6J{{80lkG{RNB)nZ+$%Rakxs)#N{s3Fw3y0*MNSP6$MFV(k0VHD(&>FzFh)@Z3geUrmp&Cyob;vV z|7!svSfsQcF5(5!mPXSvhW9a}a-_CwW9#U{_&eJM0(8sj726vss>AH?ljWCpW#*yE zPmmg=ND>+!-`dmFar$`Yp~*;;N~Az7LXwq(U6(!QK#tddKJ60BmOW8z2q_)1ocfbGD{l0&m1!#tm;Q<11qWoY{XC; zCd#Q4II*Vqlq+b5as`}bfs;LoPk~WE2*jk~z=<9OB_Nyypx%mt7ZonT3ks|%QVdlR zmPSV8aDTsj)#(#^ew$m7Tb$3aj9dOwoWbL0ZvNs+4W+jKB)hULMDyg;%!iQuEGnPs zlk`naRFJtQ6I)0JWsz1&CO1@`B|BBG*C{8o_{jCA8dwN)sRAiX4pd2qsqNXZ)V!FJ zrwq;Mz3G_ph*4aC!&o2DYF&}^`RUKZFRpA&!7=YxFivXZNyuKJ(-ItPHNyZoh|;l% z#h?@^%||u^rTb>;09}uI(7IPf&&YQ^#ptvlBX{Y>4S_)Y-uEM+$0OZWm&?a?)~;-7 zt*#C+?s3t(>nHmP?p!s`&Mg)*>f5iba1;!`Jo*)4>UPMlANcx#g9p3Xh?jH$_uhvo zGf}IDD0brUAm~03x53o3#MNp|h}|p=@57Y-A`8{$Od=Q6h?+1)Leyk7?Vj2f2`LBT zMlxKUX=SsBP{YI+8J%6|;@WHbzIR)0s$5dJRR#@p#RpxO~^zedlFNCZ-R5 zIpI_^_ef-yv zryo#w;*z`?XDZJVs3p=Ij)y39OtOKSe6rypXV(eI! z@q4CU1&a(+%cK65$H8Z%Kgx1wb-+w6LUONXQm znm3t!2D*mEzX!5o5szyzz`X=J$UO{jkG_Gg;I}Z%vPo)<8W($wrSRAs)OlNryFvi)xd#iAn_mMo{t4q>w0> z4wDCP7$P91pQ1wsZd7VMpbjYOYukRH@-~kGXaJ0~id6Fo%12*-DP53@{`@U@JCrjS zZI{o)tI-c$lRqIb_fFR`O(M!6;wVkCkYa{bQVdNKOk}i|q>zXy{MTXFE>6MJx~P^R zDB!(8tDS5}j|U-V$`vZe5{=IV-BDv!EOT7cLT?)QRF`0g@@iX@zmfl96k{L5LYa>WzTQvjQ?$V z>L5B3wQ}$lQ1Z`a3?2kJIdJ-^fit{l;KuyV4_xTk`JW%Su5~whu1^mf@FXUeyzlxI1o;vYr z-^pHuy5v??52qo{-y&%X={h<=T{Ovyh1{StUeqB2xIPc=Z=uq_@4p%(=1+Peg#Z8# z<`15q!8K#Bq9_pDGYos7`I}&-eZVmVg2)5dxaSz@=QymVrfgH|`;X+2`hil#`*)RB zhvBHhmm4y@^6+E%OZkx$lv(=P;Y00bj!k;M+{%nXEQBCK5DQ<&V?0eUUUFl!U^{Cx z06p?RkrtGuCKRJ46k{}@C_qD)@MMO1CcM0WU7SWDN7z^>KnzxkwaAH{hnL-ffo%Yi z?{@FmTvmg6|e`f;@0Z4#=Z zpv6oPTZh`tFzDDQ3XMAC9{La~A*@U)#?B26`f9IU<{rx_t z(NOlh2a6D}Ht+E@@Tbe*&o_{J0f_9pCIpJlSNlo~U!2+uIZhjm{l$k2fgc+;N-|zQ zo@%=BOLsMt>?tl*_rz=B$kW(?_>w>IJ$q)Hh=DzXg!ULoBhL^LiTuK3r8mn7U5Zg6 zMzi?}JC2`EN(BEciugFUtH+`gW3;;g{p|DkrD(25dC=$O)QepKNks}?D7k-S*MiE0 z;epFP-M;h6>%V#9iMX}PRavwA-qv`0-&z#i=G}_TpIWJaSY?ee?hk7<2 zTG_PoE74SOsJ1fZ@fiNDLk~Ro>X%1YBrKV_C9K0*?kDRq(eniS#H)Mkwn3*)@EoFE z>^~meE(mra?e%*`-51@IvnQLYq=C3=@K-XM*giw}?(jVf2}Woc|7MKO!#QjbGNFY~ z&)FY+WPIG=savqNe0a~H=k6UE!sfcgx@z?=_f^cZZiYX5_%(PO?m5k5{3gx~H^eB` z)>I~lsfJY)u!{P?>$bVDd=f9_lfGB=s9&1Nr+gKyt+@y4Sr$d>v4rNb-wca4tf$t! zvg_qH;l&kgomm+E`J?xrf14hiJh|!f+YZ7MyA{i*cnfcp$#ABpQ#dcv>+%Qio*(r1pFK{I zA7p4B5(1HyVDnC;ijzo_aTLpSaBOC2cO&cH{ZF3h$L@^};CzKuXl&d?;Zg`gn8M2! z{s=#?mRiGNbn+qkV!{%qbRB;FG;Ui(tvboZ>d&X3>$*z%$3M!PfEP&~H6q4PCuxy?_?#r9Wh!+c)U9CwDVT z>B!+$prv&3wM?6bK1MH7LDi9fX|xI|IM9hTthHa^|LWAAASLpKB1e zMoA@{eBMV%P4b6Klg$v#ZX{l!nG3*Uxd1eI0Gj9?(^kytIxC}n=rxmT zV>fjtj{Yua5wxII7G34kH_TQ-n3*FECn7pd^ET1hHW--`PbX@DO4=_aYsq z7{A*vf(0JG2|rUh!6P`EV0!1~r35-P7t7g1f`_y7$s8SJi#rjW3+LRtB(OwXEWxXP zdJ7I(4|J@2^m_NnQ1_OOjY0I_QhNIK!QU9hH z0`tuE& z1DS}Ja$fApj4!Viu20^gjkm|(e^#{^{oCZ2^*-SFD9t=;tsqO6NG<8jI2#v$oed{m z_C;7XW0tp94p&roVVDFx!``r++tlW0Al?e8FK+i5eesHN)^MDzhVo=0m71(WdYeq9 z6P%*q+%nO~`7LA#nAj>5nJW0Dux?QfSaMmRUBo)eLWr4lEwB`D1Vt`{Y)Ft7w6;1F zTIz`eGHuHi29`a%>-5of3iH>jT)jFD&5L4f8+S;TtdsSN%dL-AH&>Mgf^AO^^>nVQ`k_``*?-lf8s~;LxvaiK7y>{FrN#&8I1@+DW#(V2$&7Y+(dwK z9hsVvPW}6}sVU+|D+y?&4de?#86l%2!*a0~{wj_M7l?-}%9Q_#yslB5h#Dm)0GuaO zwdjN>>L)Z80BFf%mLw(qlS6}yf==jYmkkIX}PuqMkbib?B86=8jF0M5Zzi9h2Ikh7bj6cMOX zijqWqJ>Ulk)bx%j&IH5cY-VYv12zYr4*oMJbn6@38-rKEVrOu@YkhcMSPVKHj!@WT z7$H66aO}2Ym$mEekYVgL-5%3)^UtXjG(BRhWdVV53 zIW#DpTC%Kn;J~J3Oa9yb;fK}dB9Tttei#01l@he|7p=9@N75yZLJL=P~j%6%+81%#Ol0RX+dn9V-LWy=$E354#epsh;?zVAef!}BKo9Ai6FX` zqpwpkgD%EMia>E8Iy-e!Ud4T0m-9JC=X_okA~O2Ctib2EV|eN>vWM?jGJ6LF5(pX) zp%9q8gH2)v*LC@{{OeIyl!%h1CU8V(vsoa~Ty)zVbaV43pwH&f*ErgraZ=I(q=g^f zGQA;Nuwx{@V_@xt^CbL2mj-*NqpMD302g7&*4lDFj1?-ZQhvgG5=UxBgU z6PbV8r(YhInE6hP=Md;1GF?OLP@?_{f3W4RBZnBFikGm033c z;=={_ww(Mx6r~W%uv70L_8gZ#hrKp~)%d|$A=X0dD_rs%b|5D=#<8Li7RSnLxxa-y zc8tft+Szdcq{2&7%-Okd;NVhs&5im%fM9}_eHyyJOJ!xBfIgc?7kDWIB*c#o-4*o? zu4~s_Ucx+ASf1Y<^$xCW*W9R&m$D1ug%a@zh0EVPTU#JLpRFhY{!c@<{h#ov4Q}E% z!?(L9oldeoPC8k!bhac*mMqEk=>u%b7FZyh05;gbloCMLz|i6Z!bc~zVM=4;I1Vty zro@4^X(0_2bSAW57>1<7Ky5-N!IY*gkp5uWOlO+V#-;7_4+Nk4?#U+QM-xeV`%1dK z+kNic=Y5_p&UQHd&)L@=pZ$2XAT;2kUf%h{YV#vhAK>Z^CXg;9IlJAQ;}Mf9DA4B2)*kDSm00s4nQ54e z%M);IQA;hGT8TKd@YvNNgwLPq>O6I-v+LBm^z% zC9h=0(mM*>9v#oyZGkd_-p=zs)r+EDFIEf4RwxAA3KqQ< zrpS~I^V-4&ra{6<(@i_5E0@IUBc?X#ri7(Fm#dAr3HR$mGU~v8j-W`NsmerU zSWy=AZIZSuh~WgRF$v;Q4YD*+|4q(x*#T2k!~}i@YO?0))dA>CDXKg*T8;{vAPL$6 zc=jyD8+X_oqy#w%9U4%0s$ACCrg0)C&`x{snaQ75zS7&b`zM#tJVb&o^!9dd>Z|a0 zmDfy8_o&~#q+5CAf{|Nwuo%4&+E~A3pHBH+6>3i)!*vDK=+I_a`GsfW{MfpfTrN%C z(zHE=1vGfRndLA%v5Z>2X_yu4%-ibUW6ODQfL#vX8AUS4j9wnT9>ni!67 zX5P(X{%BE=@sKEThh0T1ht~LZ1+hh72v_a#1zjalv_}?jbx+VMVOb!g#~YMLPsvaT zE}^Ps(gC?gHLyIPItKXAF1rI1ab5#v8&pt1>10!r*_3(~9B882y;K}SGC5RVVNPZiW1=XHz|^tB zwaDGzK^~89xJdF)&+trvsT!r>U^QnN11V0PTX7SlabFv=4XzyMv)h@*zWZimZZdb^ zD=@Ur&GmWWt?~BwP@Ij&-E;dY7FVeGngHx3)U?ggcmlfY41@xh4JMCn{wO$-OqL36 zG=mi+BI^Lr2o?m{MOB28U>R5uDjb6Wzv@1yCz*@Df&j`WKS-1RoBgG-*OsZx%$4F7 z5%`BL{}*(^bN0rgh8 zf=UlNP?3zzDlc_bW!l$fUte{osjjnm^M$S9#p|DK4lY`dmdiu6?~QI;LLGjI$t`#kC=&1^B{sRd>7hU3^Xh?rzKL3vK5;(RhCBOP{m09yzi zF^yom1%frxHX^8QwrN9Q7rHjzzxMAtFFGss)&{QScCXINyXPzQRn;6_>J~fa#FI_r zLGQ=ir}r%Xo8J{H@7meA;qc|Kr+I%xRcXoc!_D=9X#KtV%KEjPpHG2AVd|#tYGZ(j znQ_6y>zJXm!5KD))mC~CFHYS)2mMpfrx!uMmWrj=7thIZtS%=>wp;-U$6`e}*5(UG zt4BPZ@Q69o62dK^W1;&Y5(-&zL(Fm5Ty@crSgbHNq&p5Es>N$ErFPjJl#Bonb;qO{ z)Nggr^ z-x!B>18o?GcH=eW2uQgjsAFmhbv&Ajw*K(Ib35ficPZZc&lg+EdCT?dt5z*+T+xm{ zf}!K%Fk~EU93NMHG!6r12IC`pI+l04tfExIetK^WQ7)s~$;!$kb-DkGXU&(O*#tpY zjtoX{BvO@Qg6%;Z3{pIcEs{s-k%%PC&Y8X2yx8ld_(n#;VQHkecm~keh~NJNo)h__ zstPEsU+|9_(OmlqG|L=7`;RxPgL}+Xfah00sVx3YAk*=)i=Y1E+@WjE_pEITmOkg7 zy?)O6FU9fA*sgh-CdS_R*AI4=ENkgMI5=n3YRd6`e1Ka7jKDD>b1s$3$Z#5HM zFj)jqqru!c1J97{{7VLGFtixj4BHGW%cuEPzMW?c7PG+X_0|@1n;Dx&jK;LJ)rzen zX3-<2MIwrr!#K^hvX~v=G(as`D3t=mDK9{h)8c|Ekd!LoQt%S2jwEon4T>YBoieWr z(SZ1f;PVr&@|V9WpOEjMO*^{K>bu{6=g7yJcSk1=meAx=+Tp$%B*E%p?3 zG>|Lqw1puSf(c<*1nP;riDe)Pbuu%)P=xUj&Y@p z967-tD` zG68PlyyEzG?5^(Jl~$LHjU>xDuzZ0m8-c*W1`IZb!GstR11^^d1lJ*43B(CUASJXo zrG`>yCmaqPXl-n#oeVIf={13rN!#>D8pcd#(n2RpuXIvs^tta_*>399YS-%-&wKmc z`~Cm#U97Q=TKua_?=5!!7JGodK8qC#+X>BN*tLu7T4tDtc=ko;k&!`!3_pY(Q6P`q z=?1$^R#kYL_AZ;vf&>+c+oc*B4aW@ds>%&%!}|u|eemT5Bke-e*rmu8heU{EcA49W zY_lU(v?$crsVNpchcYO4tPGT$i%yCo8zA2Cj1F^7t1^R_N@Y#GYuwh;0EWCsvA8SK zO{QdSlfA5%v-xP2drp#AB3 z>JP|@LXg*IS5-_Aq3(ds?-g=Y8T!qPbGzJv66`W-h+-=F0$#rmR_rp(*GPD;G)ZbF zYW`j=s%_DY3O{-Cf(e0d&W7qQJ}}5?N&wrO;y3yoWL4$izC`7y0QE6Ms={^^1^hJY zm^~((l_s&~`zOAaNWI0be%^OvWpnR|zMc4McrBj3xnch+J!aCxEc5quy)Mo>|N8mH ze;#Bb?9Iz1`898R=i*z~hBx6Zwr2j1KAb%VnlwEB+PyUAr-ok?P6^ZCZ4`n|&rBCs zt)Y^F9-7y4%!Ey*k{(5&ksepbio8ORuSY8CaRB-raEqn8vIkjX#!Cc=j7cj{Ey7*a z7~3Y2tVTdS;`q8$RY?l#Ppv-C+k0TusfN_)y7fnouCF`&&DzSkNeh;)oK@MzM%Jw? zt*t4G_$ul0-J7qTJ$v=3=aw~}IehqZ^UaObp&gH}YFo7HXnoD>1+GF)vQCiLcfc$L3dutk<6YV0GHAxL#>g9MpO>3bg6O8tqB zA^ZOwowyU%;+I$_yUtz`YKN~2<#;+hm1CfZL;0C*9)SM=V z-KwYnE=n}^AeTk$HzSC`F1h**PNzUIqO!wK4X@s*5}O;#9FQVa zgmwUkU@_V{HKeYQUzFdL!G^ZP^^!mZl0XApCPvExj7TLp^x|c_Mvy*7pAlA5xO(*) zBEWoQKSniW)JaIWitv5QHA<0$eh~cbCx65@**QFkJ%KNXl3|sH+z5@a8Vq1leg)s7>nsm`(6}!{!oJu+EEUI+NHkWk5;r322BgJMqXw9{@ z5$rkW&GB-Nnn}T#6QQ>U=QrVCnpv+EnI-R*}i~paz%L} z7+`HeIP;fhie_!!Ml8c0Et~4}=W7WT;JyFY$bI@t@f1+46na16@yCKemn%Ppaelr) zV==4S!H?T4bKnWXgNR6_-x$^OV;Dx6|~QpTeEyyYWmvs zJ;DpGedWFD>}2NiO^X(PYw5m!U0Kn+wB*vNX;Eg{xMD^lJKob;xBbVwL1M6jz6uKN zLVMD)Kpsz1!AWg06>PH2Du0_$C+Mh+%7SP$8m(3lX2m5towAJcWGl=Yh^rCC%jt4S zNFdNcah@U^&`&y}<9e?4 zXkL>I9{#|yLwX%=j5F$4poue)M1kPke3Q38f4tjTT+M`O=Xvk-^NixNK-t9Y**48q3O zyWL|7$)e&+FD$93iASQ-oOZV$MG2@wb8O)hNcX0iEsIzyyq`TH22m`-l9* z@9y`&H1;cIY%c52brfiqNhOox%LIqr1DL{?K7!%M*sf4j35TwvhKN3hZeC$3V?$O| zD--15M~bPmc;?c*or#LeZOe<3iOIG*+T1Ux8D!}pf2K~z(uQ(TB<+%Nuwwv0>}KzP zfPw7>xgULT7lM#Gw2J?^fl^#G3OPM;&+@@Nmv7y^cyMshzhi-Pvc4fTqd{m{J+SWf zr3<&89(-&|MfAxnTVW%B&O3&X)Fcj}D0(_Q=jD97f-KM7kiR2ea2Dn%C=yn?H7(K| zcI0&%v7%_zTDwLyheONhvldwabtqIGS`(t7a5&`a6DNsTn+6Tkk{rK*u&W=WRIa0Z z7vWmb5(-BEcHqNcZF9jA6N~cIdI;2+#WtxB=YQ>^=rWq%((wwy2}K(iR+Bx z@7sN=)v=bex@^hVk}cV?N4DilGQQAaFkoY1dpOKtg>X6q(gGn62r#AXldf+%$EQ-62yl6rPV>aDNBRV_C* z+#gg2zufZg*7DF-H<8Echi;4KX^d2&{5F&0N=b2n-`Z#o<|+nbG&k2jcBjwhR}6Z+ zpzH(?Y88VNtxc3!{cPY*6j+6mLwzUER!B%vBaW4FywRAjyIfYgD{3uPcs7Q}1rAfV$ig>aQZF>MJq}j5-zLDR%FxM6k-l~tlfx}v0V$~ zR87dth=pe4Li4$E=aO9qE6OAk3dJD=TIb;)S;LJ7lXr}GbcvWdTuQy*8cy9HefjD2 z^|RFv)h|}esGj}Gk`2?FU;@~e&#Z2{Fv<}uS=1#@&T{4z&)*=^jZbc=`t$mGYQH@t zv}4}pIVV?r4b@I_!L@X~bQxOHw%|gBy1S5+p5*w1*ey4P*%oB{Zf;`UD4N4K7F= z$_yX|bAWmp)qd4_J{t-lAx`;b5kELb*)?#Hy=M-RPzBauANiXScJS0Eb5@H(<_PuK zz;1Ea5PcMfI|{5?U?kdoly0^-92Scs?c~s1rPyGKidLH)4;Y`GwDb&{Q8q{-Cnvya z16xKS4WxuP%4i|j64@Lw3*K~`OHTJFQcBe80gq4i@Wl>r7!blNc>kEg8P(1fIcf=q zLa8VKY!4v^*feg}swvha1MU8CTA~-M@bCgv(eFO>Ua9BgC+AJQQMX#}CNtWi^hLwMvMuYX5=n=(XpzHdQ_U?WEm@;s>89 zS@x%y!AgjlGcIPjlVd@0$Vz+uqJ=H!YyYm2E*LxRv@cliQN0)@9I1?uy5n2KzZQ+a1H<*bG#scjVCzr!dwh5Aj>ha+^jiE)0(odhGRA1ALzlD zGxJ#|d+9+7w+dR+73w5m>36sI3j>w--*d@CdX>M9&tM{xlw6@sUxy%RBsv{6Qqs+b z0Y6-~VAORRL{Ttx_vt~;mavSqerz3COp!2lfi*1OYHnO-+Jk5geDZh*D%CH*sa{ae z^uuUv*sp%fUsp@iQuq`uC(o?Lti@-!kI&LZ-VtUHtT2jJc?c0V!p}*R$b^szB6COZ zoJwS2I$`&bE_7qWFCl+ICN9&!^)6OLgWQyN;(;}J&j7Hz;>&h zP%Gu=cB|MTzK+!j8$d<8BGN02OZEJA!t1x2Y@;2J=i~Jo2s%K=aXMq6@yDF+B}ai{ zSyE*fD52uxg4-(NT1Mkle8tK;aW;w#%9`%WSYX!saR3V!QdM1W4Bd8+a zzvhn){sV5R92()P9h_tG?8khthz~9-DtvODo9ve9+v9?{8fr44>74Y+!yA;;p}{| zORvxF!YEk6<#*X5_7UM7fumtIN}>@vK88lPh1kllHy;5aOl=>D3@;33w~xq<5%O_7 z!eqpr2Zs606~q&; zO{aqP0rG*LjIGJi!`h$1@PTjRJ!Z3cg0KJLmv|u^3(uOnz5`TY?ts;dLlIYnHo#^X zbs9@yGs{v3FL-###tWh>N^%EA9xU5H0of$c*1>@sumRM|HW|*SRl~IiP)mr%JdbUg#mgcA>6A%ZoZ^EmMYU`?p4KhZWE)XU4Y-x;>^carZ3LW@jwjwT>~I_sWpk=#fvh? zUl*90yA7jkU2Y%~Ljk{QE<;baw21P!>sDqB{f1SLA^?IZO$3yzEKeoCIi}!Ck5~dw zibxUB>*emo%nxQ>8T`eeKbk)>->o<|6z=KQMv+uQcO_f5PaW_A#As`uhf zbH^&&aJ^TpsM320S!V9r^pjps1@jI*^dxCxDrA!3B7#6Y22~$SdQg$UG)96c`t*pt zz|T*V6VN3g$n`c;5tqojmWqJ)52}j)2;QL&*g1?^FCZ19rPE1O^XEns2q_p0`H`mT zwx5EoHe_egvrolDIuL^Q92UGfVLH4*^(Qrr5Z)hdDJn61zGR8v@gz$kB`d(A@GXiY zlnUPiYNES89s@;96*sUD)#0qq;Jhvy%YX#0tz(j#cAQoYbX~3`rqwWsEiu@eH#%k%*C({0|#9Wn>aZafcHktX~YRI-t1B+i|H-g2Hpr#aHX z#j}i#sma}ld(64q33COlxxsA05Aa^#sJIan6(NL9EBYu&Em2l0yOj=wS3ty!vQ)NC ze-umMy}(k#1V~xhY~ua`*^{WBv2=f)rMM;mi;9>i3^LzZlw{wU&c2Ola3>hl?L|dZliQoi za9LSZ`{57{g+!zMat&TmgKKIU+Gos|tGEAF#LXh`n!O!S6`09nwZ!m%=|LEQAdXwU zHkM%GFb%>Gg5VQ2A|1up-zfHj-T*o1^?+)wNR3f}QQ!pphaB?f9{`wjH}! zQ(0A0Q&m|*_Mgr5cjKSuZ@@)*6W=?wZR_zaxb$I76^*T`;Tx~@UAXjNU*FZe&po#n zj(V0VDO(Z>3leFzCFS#;HK^e!tJ zNY9CI6zdbcQ{HK{=5sq76P%WnTN};Y#&TP1t?H1RU{x5$@75EuNpkp!`g}F2N~=-F z=06UW>r+b zX?*Q7;fa^VR8ybNFG&-sv3w<+spTtM^S&|^qQ0_tVs!PW3mwcym$K;6hvgoLuFppo z7f;B&f9NyO!=k5;uLPrD&;@meCPr6}Mi1tr!z?=dzjD{-qeG$bxdA1&!wN?D3c%B# z;X*3s1w`e9mK8Rh1F`{{0l>1rbvxbmA1Bv@0VJZCMnuH83k)Wt5M7{V zLE9oh#2ily8RQia`FJ8hi3<3Nxr|Jj*^JB@cf?&@DV1Nxk&o|h*l=GMFh4nX5VHS+ z|1r4)Y*U1)&pMrAr;lQk7nsxMQ#z5GLq{-RUlKcxIOCx2p+t%*F%T@2`7BVVWHz!K z1Qg%|bD$*r4qp9&v1NWqaVb88*Eg2WK2{No2z>!}^M+}qlP3H1Rj<1mqD*`8?~{W< z7h@T&6Yg!p~NEaiq< z?ow5*%Zs|~cCl--zFQ|cgX=8Aaast&Qnp@&62nq2!&UM`>(Zvy)~2Pc+tVPd=pnq; zv~y<@TwH3Mr`ejBjih<#9x6l$!w;I-;kB!ZqN<=*-B?FlJ{4d*80~}R#h3~od{p{P{w}079*leD=7yY>P(c3 z8M7my0-hl|pi)CEVq_>5MOeAx5qu>UbBAyX;rnlJ4}Yhd)q*qC??RM|9{34w zq)SN=aiH39n~0`ZEI0!$lp9Rb?43-M*O?khStLBRCK=BaH|fpQ{12~srcJ7z{ljmr z*<3U)HGM|W-ZAT!%_nzFT5ZNH;VA1s0c1KfV>lYW{eNR7;y1=D#NxhW9RA5KU%It! z-G8J*5X2!v&jX12#W-a)GB1;oEfO*~i=+{1WeV7=Oe1Ei4Znw}#Db|PFK8|%NhXJ> zm0B&JwBv8>+VUYj+7LrB+8_uNa!_B&fiI&YBTm^Md8#w{B6Pz@7?H({foNuvMTBHR-lTfX8U_T) zW}>O84H3(#8i*z08KjT#mwr%4}wr|HEV)M@|=(|GomNQv_olU4Y z*BVHhFtGE=m%Fe!uKOY|CLd|z16QSe@>#T=J7`^uDHzscYjuAFYMgo2BeC8chVKbq z^=;L~uCnC&Mi`Qs4By$DHR&1hJ!n1b8z*2tUjaYG%83aGXPlzfu{P=mBx>Z83M%$; zJjca_`oVGteSq)%1Nf4U_kF?N=(~k}kZZ`7(T@|=+BY(BkFI+i8ILzn?U?EK*ufkQ zpR0o~Ux&>VRlw`@1=^I5(n=jJUptcjQrq&o^+{GVgmDuS-!F~~Opq$)!Xz?bx?1um~nLL0YUxBYYD!cP2 zD>U{uE}0Db8fwo+oBhQ-RC(Q$3H-gbRrgQdv|;+3)zXn~WxgIR z9o77B;t=1}&EMxIJHWQ%`P*Ba){)=8e|i7;=eBJ8`Oei_26^KIg9kL+%^QJOEJTWc zHNW3vK3lpjzm3){gVw{n?C}U|Z+^e+!ajKvt8FD-#HA8%2c?ABI!eu8Hd|fJHpPcs z0bWbHwZJNR0@a{FB@mQ))A2#MCJVfmLMT)rSBn_zf^$&u`AvS4fAj@U!MWCr%Uaqu z;GEup>+f8=&3ovS1x-^P#0c8>3fYbk=p;a99tH9>HU}~O*udpXh2}}HqTPz_D8)O6 zXScP0j99E~)u?Zy7Sxtf=On6cCdK4oBd~vAVA!YW-c&5zpNeG#+d-TVM}-GxtYs(5 zJFPa@n|by-fB%S|UbuGxTQ<9C(RZ6?Ji=F~Gq^mtfxmu>-{K!;(p+XgdurVi&u&<| z4w0>$)=Q^ZJI<%`DESpDr63qZc38N!OOx;XjXxm1POJ`()DAMpHyCcCe7Hfi; zG)6RL5z-GIE!8ofSV^&17B@#Wj^P;3_z>S}M{QaXJS>phS*E>Mp-?Vvq$6>eyaRAzik=~7i(G(f3_2`LJ6 zp27!%jW}}*5kab7EH69=JE*mZBwfY(>K4pA_K5s;zY9)p0D!}82TPX+ejq&~(MJR812h1pPM@!aEFz}_rRx;BMx@z`Sqq@b3ZTMgAz;PI zoCwK8a`3#>Xd)?^0ee-&SVGL#H&EDmsx??#RXui+<8xOqc4+-?4pqd?O@u7%S@87w zX=P=_!SdP$@2pYvO`BTo8DGD8G)7uN|H9lDX%*R)DYBJ?AuU#3MVY^_FtD?1e;F<7 zIvj?u;JPk%K_VQkz;ry|@lmU2sl%*m`JQT+m9F=%l3-8rtmM-S#iZoBMCvfd?GhR4TAU()H#|A=0;N7 z4mQ53Ko#d>n-}f>bxUJeVdJdnQy+Tsh?rRz$c2+VC5J!*8wFI^wCFjhCY zW_oQ^NlDS-$qSSB&8V7RTvL%Oj|X(RqcT(!_Bj!AUKu#Ap2dnJ$R|1>NpgbCFtF#} z(&0W%)K2OsBxwVkgk{%VmfsVWAQ_fg7o&b*YS`X8Z2M_6XS?MqwhcL3EdO4_$afJ% zipY<;JUB37GEiqQaR|+to-i@cyp}zRQV38;iu58{)S zy@eeG%;|Oc{Z7qfLVN+Iv(VG-9pTNv9}<$@)HqTNcqoEh=CJ}s!a1G{7*b3E$Uyw+Nb{Vu?On-rQoFO z0KZM=^}mXs**zfYu@IGM+}HyZMs?r&QV&*y&F%<9^Y_41+yfVkJuoe24RdpQfRYsM z?g&lfbDBfA3|6XXw5~L)FOc!DB;`pj$K`X=g_w+V+O=uQjUDd zg$IMif?Hu6`=p7(-0G6Cj||(!Mlvb_--pYNRWzrODWX{7{_hq2jg;4sgW{faVM{*Fu} zMro2*z2D*&eRh+J^#P|d6P30MP&Gn#WTjsv1& zLNEvagM?!WEShAJtcoNRH}twdGRj`KXbcqIJ8?pLYGL#84ewnUe{1ETw00KH!iTgD zMuBVQ-`yd$Ja;?y?02iD<8R);CLGLWuROQ)^A%l>Kl1dGK!PANKanzmO?n>Y(Pq%^ zto=PfTtubESW|ul9jBy+@_AGz#V7EfwtybfI+&m8$vePo9-AP> zh_j@oAjS&MxUU=5%knjqZNl~#nNwU-M7vAs5Z@?ZU#1g!<`Y!rkfj*0PFBf$?Jlv2 zSBZ{%nY@#?ZJF(M#Yp31l^h1mHYzuQZLN`)19&rDGI7BV)4=JCF|NH{4apnmKGM0I6FcLjkLV%w_53S+7u zesmqN-}~Xz>*045ssjWWPCb&Z?U2)C0cARQ!&b2M!wsuYt8R;5$lp+%>OwIRoxI_G z*k?VzVV!ZqU&9S~f1&%@$j) zMe=yuikB+eT>;la#M0Gn-ee|b_jWVzx958#6KD&NTwHY}Kxf?K`Zt})zz@c}UI(qN zM71$5<5^I^kneJTbjxdfcWZytt|<8BeJu;{sj>6gYFPLI0Hzi3Z)iGN%KXdaxq`azY67h~8j% z@P5)3-X12Auo}*WSBCe5`@{bU%ehWtfa8_InJSZpP633)C z4(jD+~%*p-&(J77X(e{FHJ2i{y;9gy*#6#96b6 z&=@;=CTSqwnnVU$WY`K$Mx4YvY5Q~NG#-A_nTB5`@_w<|*j!eU(~m=1e84-+BE$N= zJooth$P~kY;!dMuHx{r*v6inFo5HZIU&cONz#hf-7O+DMyJSLyhqM;%XaQyZ=-_K1 z9Ae7V0@+Ea>A0B&8M(~`MH}=v4}=t-)9Q8GdaMy^2l0D)BHlhPiFj4-O7BMR9d>sj0rm+(=%mE{s8Q^Xod(3DDOoZyHgiYE&UV28M*&|-ZB z`iyH1w!&qskV{q^<_yye-cA~kyn#3B-Kn+~LtCyZj?H$+sJD3B?=kA(m3(YG9)|2K zj=PTCSil~||JLIU*l~tk^JVPQ1?*AudI3AYu-(Pj^FaMP#`860oVzz)nJPxAssuph zl~iV8;;L|%pM9yZ!k)*UIa3LO(ksSSK|}84b=**-AzfKBMkbReLe3&JZ`-IXqW5sy zWx6fsQ^Pj)6*t&cP1-`$ihH?F8VsNOBwq^_hbVlZ|1?fq6aK<0c$v{nKI7fQfma6G zgPVdwK_Q5P#r@&H#D|hs{s8bBIsW?u13qI-m<-Dl5Y{-%cSvF*1Gd2)f0s7EiskwW z&QJP^kk{;i6?!!nR_J?tqp-&%d>i(t&6X3~A07%56t09`-yIfEI8wSJw7khZc`TM2 zdHM9rpi+|F;7EMRYBnU-lAk*0&};(GCi>i8Gv2 zD}N(OY!b9u94TN2B2$T|X*G@1#IPD4o;gDVjSR{;D%fsc6N2o0aIJQBEt@R6gl1v_ zy-MLGW=aXgpn`~+03qH4>s4q@wAw>VfBM5TaYWmQd!c7;6PoETUn8UXteeUp`1N(N zC;{V0Y9ay3wMpeqq^1*UTF0q|HysA72Mc%{Q$SsC`xTI>BC;YU@}O1OuL>4QoF;5C zIo-!yZo7+MyC90T9>HnP*ooaFyDV0#(qp%{ysrC6#<$Y9$47lxvn3S=HIqm{b7i*x ziC}y~N;<=3bvnb(6Q$5^^{1g0gcVD)PnY0<@e%!#M6?I+Gvg!dDLgpdPWtfzZBYLl zYr$)^gP41TS_kJju!C{PRI4k6OjfgS&|z|zDc+5krN<)g?q`>BLu75K zxC^BHc$4yervkJ9ZX0JhKiuY z9av2!)m*$YIURBr;<0+-RrwcsUZ83;4eiS+2;<)p>Lr9$C~i+G$S&CmUjn|tfb38P zt%y>GY?bQ=gHs2C70sBGAxI0sTpl0DME68VG+H}Qu9j~kfo6w8m|^dRDB3*(=IQ1Q zYz6>HK(@aGPo)22e2}fG9tmbyK|wj!7$N<)*5FDvif?h|}X;%G)z%m~pik zgTAYDDbdP+tPg>SSq&Jx<%KD+CV6Md1G_Q!3N&X8iBwRdnn(bq_Wzr{iozRin41UTz!on+OL)$>Z=iU0z>CQ4rs&4DS>d zJsfPPts1@f9=EOMP<_KtY<+e)Jk?ECb5Y>}d&-tp9B{fEz6`6^DoWj0EYDdN8)~RO z)Wf^)y?1GJWo`Y#%i`jl;U`B^TnNwce(%N6m75wK4vLF*hPiEYygYk- zoM+~Et|F()8n6b7+0(x6cvS0h$}KG1B@h49uxaJ!#a?x+cVMjTumTZwh#VUUQX`O> zjV0>K2q;o--|dlUU$eM|kj`SAZ681xM7xPl8Iq7*@u%wT^## ze3GA>sIP?qg!sHT!jW*4sR(OoVXB7Plz zL{@PffJ7KDWEIWlI%pmq0+z?WN%3Dz@WBxHb^0+bj^kEf`Z4gFM+bQ?H?BrlfE;$@ zO+`h8X{4zSbCmY?(-@YxaqW)l|7ZgEU&TG7fjb4yu(dEvGh9qZ)Q+*xhnwn;bw;C| zZ#9-j8!IXrqui+@P0>#FRb}0ZWep9>me<4hpT>Id$m9VeBX5~S6a@J+5_F;{>vZI_ zoO{0{*UAnmgH6-WnqtiRhN-2_`q*^3F6?J4fc1osFYfqsLbJ&ZeL zzD%CtzMkM7!L=H98skp$>ZhZB1}l4uT9ZsI%iefRa1!HAGBbyiKvzIboN7%fG_)2s zNn8eJ#N~j4L#5ALGtSeFk@Bf_ntw-t~XtzMkMt z)a03QZ-o9Xpw8uj`0S8mE$&RlotZYHg3D-_A5rIWxi*(;H11-?T^yK)pW?1eaE}1@ zuE*;n)%y(Y>k00W1a~3hE_{NUhQ)wd!8rFVQUhp1KlELhdM+JL;}rL6oGCcWoA|s- zan=IHT97}3wF`EQO|6Dss|M1lp|FS*GZLnuTR@?1NlO5|LaWAl{F;h(6F|G2NS;E& zepG7vq0Hk6ZZcrQQEQD68zF=D=X-+eTIQFHL8H-Z=Z`xrW`txVPr-@>ptv25lqgBE zE4p@rS$50yEE(|Cp%B=$+(>SOB~uzJfpq--NGKNZhy4Ehye!O2tmt^0kHceC%`87k zw;ZWnN4GRK;^SDL6Gv|J{*F|9@PiIY_+Jcc+&DlVo&4+y%+x}d04fDxrWUF*bpw@6 zpI5s$eFsfG0QBF40YHBaXeYX1jBAR*G{r8>*lksS{Y=%AIP*;u(lkY4%+d^IwgyPI zswr{io0?il)~B%{z|enTIuI+4=+)=Jp(YfegUh zDyY0H>#%*uP80*O5Mr?y3_3;T6vb#hF9?RV!>q}$w{6$ibg=ULtjmDIrvO%6X$a0D zb{bjXB*GD_SyZ<0ym9|b26nu%`;DvyJlJPEloO`S*{x0MT7`k}m!1!HyJ0^ZgeanF z6i&3PEYs5|){I+w1Vg>fYonu_Cb7^S7KZXlMYBVkP$iSF3^ z!vk5*;jRm6G^zMF-J-?Br%w#Cn8aTCFQ}w<@(%w;bysI=ySi>_R}1Q{)<3Q#nfy5o zlgq+ikcb?p=|g0Ier7RjmA{&xX%Sc-DIkHjCP_)kanl@5;IT+hnQRIo3y*ok6N@8B zhHlj1a6x`fhnimiIuu9-I=M)$UnwbJZD;BI(vs3Zi2WadEdAJULU{A|~J9s`lgS$#j9Nzug#rdwnApffqCvXbgG%-GSy1|Px_2pYtwTtzLJ?c8o zVVUAEnWJf_(WIBAG_)nwBdk?XRdE!4^+^=0DbPZpicbe0)KTUglJO-SHW>5-;{(V5 zT4K=2@~`!rU9abeLC1+4lZu5_XOQCrS+5t9z?cfkC4z}T)~CStdaQ?L5h0U~YZr_H z(~20I>FHJ=qfQoxQ5)Qs!wMz z7=uu|FVzFXVCppJ=D3rUPL5CJT#8=rwCok;2+d@cv+ci(S8Hrk#}%G4bLZZDdf#5} z`mwB^Sevrgi*1b8c;lvNN+|)Ox+tn6B~e>Q6L3;ma8t{ri33)Gu)8$|1qrB78&NAl ziA!9hA|f7*+7NgVMJ5zrjHbKPU zp0HJvM*~6Y>J&=q6A^#DpN7N+c2@P%H_a&W3#*^1!rsDp z{wiwb0pnhbYPIIu^VVKT$@!K_dh3hsoLcxuJERm}uN7^xHcN}#EG-nSwl9>Llk-DpaG4U>obn z?m2jabj70YK<+v>BS?ls{_z@?y~s4`18Qkcu%5SW`1JfpL)<(g_&Pz zY8LEOvrY}NPK_1b;{Cs4;kx#&>X1!lbl$;1wQ@pXd$G$>*yII$3fQ9lh}RR3S0Z&= zcsN=U-AsMM-fHi6EavUaD0WPx-!KoDyTJ$aL!}TX0`q7?HP#d}R z@=2ILwG0zi3VLkyy01;1fBOPGmYYV=48qhwsDM#V+CXWbRhAE$v@}pa)-d3K;#tNB zF~-!4c)*I@Y}GK}`+PJ-AJnO^)7C_J-NH8AtdnR((HwW=zZLekt?1|Wz0M&E->+sIYu zwSKh(^;LZ)tZlrT(GFj|MmBB$cO9c-^-BCih!*uAEeM1qn8K{SYTS=Fqvr3~J*H=& zVYyGjp+)-tD+||+3+fylF{9}LGf!-zub$zZ8rqAZYZl(ncPs2Mi`%CrHcN1fPBaD< z@2bNn!6f!kE804vtO>D$O-Vm5s)4TUgF!r_j6^by4Erf%fC;47v{J_=qZgx?dR7yF z!Kt&|{FHbH5`--XZIVtJ<@hTDHDp(&TK-ZBWl9YPw`*M-xCxYT;U8_3+fg82L@kJC zp*`7mktEYs)6L1mZG7~-9AETHcpsP&v!IJj^4%zx_sosW&dwI9t0rfy)N@LM1z({h zj7~31PPv_ys_SaOXPc%w;TAiFEWN+QR-=^RV-b8cEf3&Unub;40y`$&mbg0NZoxdX zk)^0(ZzF?;!Suq7sS=mhX(5}@hDSvw$o&5k&3aYzUF3Qp+MjWN!62w>HdYjix?~#9 z1nQEDJL;J=UI(0 zKQ~bK(jl}K*2I_RTnPs$7h<^%k=91Ep1GIsXXx9ImENJcR3|$#we7T({Sjffri~I7 zl(pshc^&jopg{oIjO{07cU(F;MwzB(3HV3IvuN`ep*jZw{rn84JR&VhnQBVYrJyuO zw4Z;v_**M$(zuQfWU+$HQTlZ;WWJF+EUL<{4yBwvC3v zfkAu3{+Kxtt+6;G#SCT+nJppG7pQl@ed3LyPmq~pJ+KX)69eL~*e;%hJ+Sq_3*t}W zG6>NRqx_24DGrIf;s@|c=z&LId~WmEPhd`S)CE?haqAoTd6k0Z9Ff9q?DMEiSVhzq5DNzl!!F{v3WcY8GQrqS5KYFBlE`* z*-1Jx)y!^pXtpe7-jM~r!^ZFrRPQEkvW;rgMdfYMiR1?;xWZV5ob+=MDdg2H?dq;r z0{-}10$vvDw9~l+yd-+)4V2EmgKN>5ev1Z|hQOPgi zt%K+|f0kJq>@FQ6jZSbnU0O+ZXiV#_H^4CTKxEMF8>G}-!v9BgwZ}Gfo$>SCr|(UC zeXpN!oR~PzLV$oBI|@mNNomSTfQV5jFb6gWC1Dk1(n=9c19L;5;*~HbyaW*-1hiTo zppL1aK^ItQRI#Z8lp&y~p#iZ_H2z$C*mtfS3XXhVIoCSh>-T8SbSX^UpPn3ynCH@o zsdI5jBqjUv3L|+^c_X^CJ8c3=@slaN`S{aHE|+t> z((%91afjEop3G0~=bCaqdTZ5@w8lzDUS(DUU89Wm#7h=O$2;ouF1}8ZM6aRpqCKO% zQ3W-t-Rrdr?S`5sZW6h-#XbZl7LYa9AJN4q=JkRoh%Bhzg)kr%PYeU9?eE9J4Vl3p z24J!BQo`5|%y|VdBqJc#&@budvdUFs@O4@v2be|r>e{S`M80}P39ovfhlt{Ro zgo2((g-LD&tTn`0v+8Q5)9u-=6*nK#AEDsk#dt;@{i?B{Z~k1NT^1C z$u19g;zktRpJC+3`4YZ`%T+pboY!KN8I)MEnpwWG(vcWiJX6Hfj^IF!R5EVxBaYzy zOPFaX3cEif{=*u%ZW-t8Uk9@s< zr1$#pMrsjv-hcA9GqG;X+S1U|(v;kMVCgScby=}+Pbo%o4?U}eY>mDoTV%=7NdRdW zWJ$J2ouc3rML`w;d5u^k(Z>5ErjPEQHtZ30MxB%y5iJ7A!UrS^Z>Eq%Og_7pvmSS}5fT802;!T>fEp2)~p0mu0sZ&hefPfE#dvpP9p}&F?1A{`*s7}K$ zz&}nd=lW8NFpOU1EHMyaa>?xIq)Hhy0#;8VS0@P@Z%@c>w}95r%4@priVNd}7EaT$ zm zGxQOEjZXSa%io(^REmu{2=Iv4KK| zWnfiMRU!8w;Uz0e+sd+HwV{#s%CbtoW&bOUjZ`u{TO7vy7Z zLN1n~P_RN+a*TdYAJQx5_CP*}qx<%)jUQ^=zUPCBU2m@5{O5g#=D&JmN8g;=(;CZz zL(^t7&BtxdrStiN$a6WUX!9+Zh#v_b(YmcUR;xQl-QK4`oO*|;wgMX_3TQg`|<2H02y3Y3gUBy(XVm#GT9HeI!W zPq9M>YLnGmhNVMsC~U$pe@r;w2SJJ{J`zKmPK_{b$Q6o&f^L^^hqmmVw}`eto3QP_ zpMODH`P*lIzk_l@(Z~JYUB*sdfSt}E;;7i`9x@|3{u2i{mVX6$ka39N(R{x zEx4+{1q&)Q6;*yG$v}9?uqet&m3OKtj|oF7$2xPO;f|m&Q&d&55dhJCfdei>QODtP zgiW3Gvem+O;Mkk#tv1V#@;a3AUwSqBvM$A$X22qh0ZXTa`2kEn8Zllr#V|SpaV`zt z*pG?tg&;hk9dN3L{zoXHeXyMFKx`Z(M7V3J>~+zZ2!psA9@z!Cjqgku6baxYk)5WK zK$w(>X;u^>310FGQZH-~Bzy-AtAsX363TG1Wrm42Y0FY(?vriv8T@rx^nOeKctB1E zY|p!N-K_yS9|n)XHm)bxDpaA+2V|kO!cEMtlLVu=PQ?axi;t6Ry@DGY9mI`&D61Wc zE7gZ4(GZ4j*o&q(52v{$rS=frjDT>HZl1AX!&H_JAuR;RyH5IxjZs%%*m;I6x+lUq_wUqUp#Nl_+d7jMbU<>Q`GPkN%0l?E#)Qo9K^rO(VNgB|Vp(T=2MJ5n(jX|b>hj1&e{ z0bg_M!n8{(>L31fUHzOz!RxzQ&mY~Mfd8{yHLy{nW%zsNXJ=<;e`fY?+TC{B?ay+h zK%q;w^eA*J==Fd|L2O8mA`&%)Hufsv0HG{Um-8nAr7rDp1{BFj@Q-*(IKmlJ1P+Xa zJMWa^E)a7TP)Z6yCD8rW_nX-QMgyJQDc=n5^Zq=~^SZM?T%5Sj)85J5a_rv`U-o&U z=gWtOz&^PoGHrI#8+`}=T3U4ImGA$O-W9uMn*Q&_>`l=n%tfqAO{`dFai7`K&4v#| zIqmRpl9w1rsDw`uj^R?g{sb-`vMnV`rU&;15|ZTfxEfsBTzp#&T<)Wi?Pus^5n8FW zp=tOj?%Ro~cagRaiaWURj9~ph1?Ikot`!}~MJ|#@rW#=q_N4{Y=}tR>TCWt6)^Nc_ zR|+=;v+AFi>@&iA(TwRnZNewB!uy`;Sr62K3+KM}-k<)s_O0fYpSFB)6;jYXut6<7 zOS5D2>U!$tj_!OJY`w{j-B!(osTf5OX)`=1uzWhAYMScX>n>1EWFNk%X$kgeD9Dnk z8YY3AM0p}e$}xpgl&GyYTpTuQZYhsR;;h`vDwr2c3Lmp#6oLW2fN}fK_@M78!-^xC zYGG>2?&b|gS|GWej^0_Cimyui=+pGxp$)JNs*ehO`eDhz^)ptT+S~lAb9Qhz=9d^9 ztp{EKCwf)R^bbRbLPf>tG@`R?wN8!Ju(`xw{_>Bbt5(;-U*Ar=(jXD;VuwF z5sta(<}9e<(CAdtTU?{RhXyE`|JhG*%f_#+Ueoy!`U`HnbJH#Q7R(#I0}W2+_?107 zQ@dW@vc1phPW};gr-TaOCgOk%Es%(;oD$8@l^NBEX8ss|3C%RScj$Qu6;U+E&}Qzt z@l16UbD#C1HFpKvymBc@7g*KO+_ zsmfUX8dqJmI$}hcnuxPuARySL~iC*2M^Trlkh2%!7vd+x0-t>2@%ztO(&+pQ~E z*4#L|QIkEAhL5u=C>Rb|mQ1PRg|Im>wGIW%G+vm5*le-`B?hH3<$#of;9A6|Yy#Iv z1Y(CvcCZ(@7Q2$JU$}&}e8d@#=M7ikAdQ$8Zyoa-jA2YjPN-0?W8E^3R+95!lT zl+HVUpMC{4)BSMz*B9V0JwVrTO6CDaxwmN^+|0}~YmW8!7^4rM)1L14I6Rs=%{SVD zVpvHz{HcH%5K&sK_)TyM#hS^%Mo|!L+CZ?V(iI22I+@K>7ZPigLQTr`Vf4Y5_RJ+Yyf*jCAw7$m4FHqDjHN>wsRtskjl*=7HNXo5(x zr6sXRZZuVBu4h{8|hj^XrmYZl2CPVXB{al1ni4 z104pr0(`<}C|m(P;4cUfiJiyePv3uX;{ABK*g6e9Ee3v{X1zUk+N_p&`a|n9KP7j1 z5<5MqTq}F#bQ*Pcjie#g=W?;{hK?LskJm)&5uc*PZm7xLmrkH_DWv88?R zO*)&##g%j>pK79y?%x_yp~k)Bg@w%vGPi}L&`t+21N$%oMbhUmUw6$6d>0nMHZxzc z7y}|pf;f>cM87h7!&ZpAcVD_36%}q9+xk*)Go4 zsP@?MY@Ippz(|B)!$okUs?NMv8wBFC3DMjR;S*z}#XO?(MyqRWh4bl8=9QF`NVtjaH-9&ZxgL$`%n zE8ZW$4*x3lNRUi1?`Prt4YLcTSY1G#f6@gLJum)O&zEM0h2NNOm`a$YaM?$4D|SUb zDaOpq+>8(Q6&K4&e;)7eS3`ZO?9C4)J#v-&1-VNWWZ7BR(=LEeB6M+HXVR@Jt1U*U<}>%g^!tu0QsQ%XAQIB%#HXd(Lk!FQ8bZE)2+r^P9^dchHx!G=Wn>#6#E_{( z0f%*%GG91;$TX=`aVQqUNR|wO=y4m0fRA57xD2(SZgdb`LNd~kq|>!zA2|)1CHQzO zQ;`Ndq$MiSud2Z>dGN{rkXvpIFpjBw9w&-kLelIEq!c z!TJg}p;4~mv+N9RlTVEvkyapYr&LB|nih+2&OCG(Bzl7TXY(E|Qm-Oz~b+2px zcH_bo`4qb{cKE;^h-p8>@PUY_PV9a{fgvUtRofQsl_O?bU*W~0{S<|Pwie!YT8L5MPK)rZF@&@sc^G9-m)%xVJ;$teWld8PGh=Rj zg_NL34O$iYiHfoyUKYf`%k{V(pWr(JZyuCXoJ0_*%T!_mqjN$n5;;Vl^Bx>e+c=c- z1_zh|n&N#!XX9ybks3v%$#5%foJ~{MoOch7!C&|uzG)>Hb6QP^sPK(8#K_UMj#kzJ zFGm^q&5GW&i&rk*vORY5lgH=Z*AD8`+}@FS;**=P?OX2u^5V`PuE4u?FD$%87A@S( zzKh+T3|7ZGhgak5{2hBwK0ryPaFIT6a_^4$?ELEC&Uj+*Rk%(wXh8$GY7*s7A{j^_ z4)Pi|;02jn3CtHQOO97fsc@&nB~{~9Oa=6;=65w2thNeWD#zvdgl&eii9|3@rjc$k z#i`PqDz!%aTCupIgHt29CbMX~siO0WhHes+DVcnGq;*BYfXs+Dpow)>QuO=hu*QzF zcMD^A{6_6-YdUvs+SR#g{fh@GS=V|zf=!&I@x^TP3LC*cPyBez$_F=M<&g(>>`mkR z?~eTe?h4(nn9v74w9KB}=)<3XkG_n_|Ue4;9{LU%{`Fd*xF%J80b)0OZ*3X^Kyah(MhN z5k%1ryJM0V{Dy5^L@Klz=P2J-p*xOQBCDXKyb+j9xVPot^`LRD1+SNL67 zRyE5tC59N!U0G}In-rS|C{*s5Yx=6z*Y?l?U}75rmM=T`OGUkCwtUA!&vjO*Yh; zMqLAMV34&L*bL!lq+EKM3=}r74TX*5B|Ome&2K%yHf;R%E_q2u;j_Yr3;G9|NSuW4 z+cIWWAMD=rT20{qSrdQ#>yHibic#o|1)^fjUax=$9~C?^*RJwGT>`Gsi>ZZoBMn-{ z7gQXodv@-TK96<8qZwQR!OBtAH@ebenU^PEX0#v90N5?g%`Cez=t>ecHHs~4IA++~ zOni=JY2#7^)Gd(P>q{6E#5aWqFQqpumw$Pc{Rt00w)Pjx@i0kl!@iHmRMy(HeG_T) zdS6>A?$c=3_!UAmsTW%T$4{NB1QP&hVk zxp){i;NjwxIHP%)(>{ii%Fq|==~&k!>Q{P0u9rI$badId3Qg^Ebg4(%r(M>lcKbAF zTaia`WcrRwifn2hv%Y^tSzki~6H+eaRBP*cfKX zuRt%A+aa12K3j^cC{NL<)cc=~~z{ z^>Dk9mn(r@V-C^*E-L~P{86}O715(e9(*ALwFv`TAkzTysGR}mkqAQ`NwP*=djfxk zyYcgECp*Y~%?>ZZhg<)Qr8?Gu-%2rdZlSaeZ)H!h0rmphHu}!C4{#+maMhbUQ@1|S zK7@!ZP@xU>)Oz2OK4SF-gJnjAOC^JbK`_g#DS5peaZRa-lxGq5{Ay5Q*cn3Qc_prN z6EozLO)cvpWpSJqytm4S{O>igHybZVT?A!mqF8eB5$Gb&>>c0xrUxgZ!c7#qNn}7So zTYr@esTFi+k=SsSK&^E7{r?bN{;^G6R~*0hz59OpInQ=p9EX6NkT^h1lMrKvjC6jZ z9StRejA|i+Sfnt5vrv(Q(Ft0Vu;?Xi{~$rC6VxIo(}oyhjL|VcC#p?!QoD_YsGCrQ z7_HWzwi5y&4HXvO?A&W7ft77io@LpJ&pG#g&pF=@0PlR%YA+ul_=JTm5Ax!9=_Y7g zPhnckKQ`xQCBh4Hc9#gIl~+I{mv_MDo6|3qOC3;sNx!Si)y~vYSH)c;RLK?t(@_$N zejn-u8xxO~paLsbb^^z1OFdE^&gagtY`zQw7GGc0ha^~)E3>cvme z^Vbfa+T5{yeXzDg^dds! zCnOA0!jFQe>pXHzefAbO2Xb!eGrJJpAkRoua8pnS1{ME^Y8H+t1#q{w?J(oJd>gh# zA|L1X8%ClS7x#-LVu#=_bUd()LdsSsHp#Cy$*vRJ@N|DCZ`Q%(Mj|)}8$)JoQ{#s> zN;um*S$`bC;-TF`@6k-=$HLH=-|l&izOb!*`*Q;|U+)?aV#doo2S-Wx41ueLz2q(HZtjOCG0B$5NC2u`V#~OPdhhG!v#^I*k8PyhVYVc(`ct ze-dEa8{-66R$wVol-|gA=)|@z@o!z3FE6&yaa={mg_ig5Q@1k&e`s9$0yNqH8ufFH zHt=1k!o=M`qG$;kw5v*kmEK@l3c++$mC(Y%^n!pVWHS6~3*dkeaN7m`c*wohEw~rp z1-xAg;1dtXpJ`QgLT+2RtOyGG#>Ku-Y-Lyx6=n}|SQv?3s>;45AHu@!|I39Uhe9&z zd6f+`HdMBxil!=;ln>F^uNzXGv4%CxExz%yTUskB@xjW9)-Aso&tJcOO+&1`qY;N! zmC|lJRPqeHiW7a$YI^-}DK0I0{_-M%d+9#1=<@Sr^m^%Vy{yVJVtx2zxvIAOCtEG`5k2c3}agtP@(`^>auuQRO29yV^f zxty7n37@t>%ybN(7mH5!trCuxXIXFErY;z}V^fG;{RZy0_BLHwllaxySj)E74KI1= zE48>BW8kwYAsp=e*0EC;-ia(*-(D6OUp&8}diB!i*-ND0WjFZ7v8`qn&Md4Ei4jtLw8L?Sk z!HkrO$PzRcZL!ON1_#kxpuxFCdYYqP+H0yNL&3RNDB>u{GS4^MafI4fGX*u-QReY! z$iWag<|}CUXfBj^gNPgoi)idn`01sz1CQ2JZ*1r~e$2P7dFfM+FaAzz5{Flo({5Pd z`=n*>v@AC0b@yXGifU@z8!Z3gsZXQ?D8+-Gu*;Qz4qTWvP3+SYT{qH-A3LznQ(%@v zEIPVrdbyKMX8jmgLGOcfXvsNrVQ`qB9rRBJMotViRIDT46DH}CXHJIj;R|4DDr3W(W?mPv zXIo}NV`p1(?RxR;etMDKrB{0?!T0y#C#LS=@;fOMiz{t~y$ETa1 z=!tT2jIuHx#<-}oi%v`y<53*P;FiH(fVc^}BNlZhsO<`$7|ZN3;<2na@qiaJMhU?l z1x5!p9gokG5>!X=Dmm>jnP*iV$qoy-tfUA+S}-hXL5f#s>h-tiK0LZ&dCy9a`(P`) zY^K*5)+I4_Zo9z02)x#>+2y({m?}wQpUcq|N0*5sPr+U^@Kzz=-r+vt9&;1c>ri2~ zNY1J`r(hs@ z;6!(Lk9fzt;%qn&diGfBt9a096F2=Rhv~$bI$nOn0`qFpCy;>-qj$BPhemup zSxsxEYee>m%wLD#yiFUHh}kb%U_~_Dqnf2Nt^%%OybxO8i++7F!9Jb1NySf_V|L|mmt8cO zfv*dqXEJ`hs% zxd6tvfG)VPyMUCC(p$FgW3Vmr18NtQXxGATqaG^@fU^*Q@%9vZ?Av%;ORAjQP_DiR6(%t%jH8vBfzB zGxDnk!>(jhEuB!-11~BbGcPuX{Y3K=)OxidOe~23FW!j9$FeLBmHi03QZj5RN6~3b zEw&-SRVkEQpNHrC4bQ|2tjpHNW7da>VX9;tvJ+@889DcX9YOzo*%mhIfvMz4s4?R6 zFf%?>gVtx}i<0!bLpB@^Sr#2GqeKYumwXUd9J(ZnTsPzxKL}ne2wo`f@I*Ylq`tPR zmd;R;kxwF9wp3%xP?b$=#ZzgGb_7Y!n}bvBi*PcEQ>>39pSSwecx&i&YvHdR+OqBW z$A4EMK<5K%XZ->XCFWWeadNxcc&qR61EAJN;w?Ru??#!BWBQRqsa@R7vLT^h~3x(*fZ!DeotvPW>B-+;-g+SrM1%*;ocfk z$yC&z^fziCaHgNXHS^V>XOAyR>uvLQbw6VDZQY9Z-@d);`ssI4N8aArh+CXXHsV`n zpWa~+{?N!{kBwMg9{A(?lqUv2t}hDLpz~F%^Bw3n(77+;!U&)w#jwHphPG+f)LR4? zHn(KLMoH6%thm*TjYZju<_2>?5;W<=&a^>E%nP9IIx?rN=4u?~9sai=CowhKzp%brGQ17;KhIT?*^20cYqU_IeVdw`0*%@+H(^ed!9_yvk zJ7${>?dt*t@>jxTNRAvN90?_|*+4P~`4S)u$A zu<4Pp)aHTMCeYjlKVVp^b-=A>eKfdXQKBQvQTCgMDHArgB-x9Ahd=#2T=Kf5%bvKt z=4`{7CzpP=9)CgJf8o_L%CGBQT(Mf^nunvkBc+At$_NZz0 z9gxk_`Atq_+h}g0VFU=QGeIZ$-hc@4ZLRe$>rvaLPuWPyttFVxmEu1jr^Paci1&&- z2SF`|kW2>sA**2Z5jPg?fQb{7-6jzbkkn1mXaSqa`^hc*ESpKM05j=UIleNJu$BY1 z*h426tu3!UT%KUB_O;dJy_enHdk1*||72=!ujl{ny@T{s?|tv;^4{UQd+#Kt@KZLA z!{$KdUZ1_5exPdqBX{@TNj6uQAO6Ar`ULnMaUrX})9x03T&`cC^~)~IRn=d{E3AIB zyt=1czn|8x8|ZHR2v6R|$3zzygsR-{pb|&8L;_JM{4SnDZmO~Bm z(XPy@SxVgPcC={CdIl6g*BznSuDb3zQdied3`uHR0GL2$zkM5N+b@dgJ%r5N>j?S0 z{+Y95F5WY}E?0}<&5b#~?AB_V5jQ=j`DHHW+3g`7aD>T;KwF|Skr-nSO%DKDKsRHc z8ZgY+E_h}c>BKw#+zEyrp5UQ?Lz<{x;L`Jel$%@V!!{DoyAfav+w3P6EQ#Y*>q`+ktxrR7J~chr zUh4eehORYBjCHtX%X2R+t9khc>-S!IaQgA#`%bNRuxInj@%vutZ{?1= znz1aS<)1O1&BzNL0w|b48mEy|JMvAX208_zZuLz3$y$w%{+IRYfsW})WMb$#kRIu zQ7eC_B~+2I%`V%rr6o0VPmg5gz3g}I`!gfrl(jQ+-@JFfKli)8`}@9oA5A0g(J9vh ztv4=f1g;e1|NN=3`Sh2;ZNf|;CD<%|5g1! z-Ry<-^P)#A!1twiq!c^3WXH0qkH5f@p1|zRLYwhuGl$#!ka@e!1j{Cy*<^=o3ejd3v!Po?=r$RK z%{a@ZKeOo{vRP@yM*lR7+t6!w#MXn^^e}7?tu08QVd8S+Q3Qa?9zpCW$#~sD8p(;^ zUudhgLR(4Q)TXwoFHc0eRB4kjPhTP<#9FZgB#6)JCJ53VN~@(L6bzm|SjFn%V!Hv~ z48&TMYM+QD+J3F4fP5vikE#mCyBx)LJRnZ{Fn+FKhs^#1I31|6epgw}czh8{cf`f^ zj#X8g*E`C78Ok{py`5O-HgC54@W%YIH9=aU8)pGK? z{M0m8Vsc96?^sQ|N_$Clw1HJ>#y+X8Emb;4dnwF&y}E%evK4Td-DM~Bin<|U?~h|y z?90>*Qa##9_~5|PnO&+^=PI;833#QU%&)pZ7-Y!NuiZ(Ps`G@=3c7AP!R&F|dh{*n zzLOnvnL;;V=g@#x(c=;Z8FFUt5(Whi(2dMqTw#una+_(NZ08=-xhzKX5%8K(m|EP8 zoyCEE)D7Ya^n{b)S{wtLK9<9XRyxOK)JtKmOr#87x+{(ri)j;&${dkvMTWFYe_T^{ z$&{H}+J2Qxk?MpMh_UI{S_QrmXB73U0+iI^Oj`I_m@~#EjAT-MQTW0bxS+oXK4S;} zA~M30>RcTh$*(jj!5p@}wZaQ zx-C>h65LHZ3SGs$Yb%2};$p=_--rcgm1XgOZsc4bQ!tdaXhZXw6-ky6$sz3#k+4W` zsoG9(fEi*;*NTK|>kJcegS$ndp4A?qs}K}v6#5pBkQJP-h%@6$gvA$!!8ryD3jM(x zjE13NtTT@qRbBc@2ij3gnskO5v5;D}dYq+^CWeGvTy&xEY@nT{lP0xXu@$r(RQLem zV$LKog|jjo7lYrNB^(!_!N`JZAx%9R;aZ@bG@*(?B+LiSBd)1O;$pDyd1eW@N}yeM zR$Hm4!T*$)YA-+7O8C>Ml*6V~|*$6m? z?z&YBw=~eIWvKd8H+>oHIgzDN;$j@L?I4nf^VG`X$Z)(uOhUv=$k><$Lqc&{z;Q-# zDQX4Y5X|3mA}!FiCZzsWlvnQ6Dl? zLt}1RZu&PYTz`|RxBCcVKsd%m^cK+O927IZMav7DiydNFJS@BQ%+j&ftDw-r zGhIczO`6aQtcU`-#d-0J<14{pG^!&l;lBCKYd3e^60zB0M#=3m4D!pcnW0QTNF7XI z?8;0=ePJ?sEwp3%LU!yxLVcF756srO8ZsMSwHTah0z3>(7y#)o7+iRU%7G_fG&}`k zVLVKN=iygS2*vOs%!T=|2!4yNT`q?+#b{F4z3m?QV;?|&w%1E;V*A1CReQ33kB2?C zdc9f{wx4;u;(7M(@v!ICkalaQy?61^8tSzbc-hAjcJ+GL$9oU`?7bGzu6#hW%V8<3 zfLCBGyapTKb=V4Tz}rv>RiMBJ@Dc2XgHQ)Y;24~Q)8K<hoqYsp-eIHiu+WGp{H{Pz?xOv-~J6>6_^tJMp%RCij zi{{ULv3S9}*)xltpEQ1K;d2wl6-*obL{7FVZ^ZCnndt+Z4=1GdOG=E3=^kklqPuk! z;rr&6bG5!hXFjbuu=9_V>vyavUtPAOxU}en!l~1K;mXe(lrS)^m*9YN?&dRY-%fYc z4tHglyS&I2}4r6TmH$`+NyiRSA`q3FYMp#l;DQg$XWKb9us{^`-fazy4wI zlRXOdB93pHJ-q9ww`OHYpT9YCn0WS`8AHgK z9YvXNAaCdDsRL_%KPBViRg=^9t$Z$Z@A8Q$A1<5FZ;$txLE^je z^!S}+)8c9!bv+N;k3|11>R7iE5huHTA)OYRh!4IWcs=90w5zG#q+IUzb@Iie^Sv)5 zei`2!*Hd;x%l2+^R987dlqHbKKsh5#PEC>fCCf>@<-~Y7ju3xFhF_BWsj2>m2!FqR z{-`K_Qj*_p_a`R$9S(n7+zmf_y|n+-FS_L}-x2rw9dY07f4#uqOPx*SKMypG2aM?+ zE<-X|nal2^N&km_v$Wk!Kcy3W)<2+=X1j}@*!$F%%gS!xPnPj_li#&B20#OYSs&^PqNx9v8Mr?1SVNNFFW1&i4>B1$h1=S15qeO23Ey@z0lL&k zYk>kJN8lqpOb<(I+e*=dB(;Cl<(RaZ$s#C8lB(J!ORLokHG|oqtVWur%evI4kE@SM z^V&-P%XYN~HI<$5^W9fM63COh2!te%C=r5$+>p9Lw7S-jA}T&=1-DyteFLt7FIL4e z4vq+m0^<8sx9V123U=#)TW$SA>kGl|&g=+lSJ~Y%I@6h*Et->_o4|_O-aEPH+cbH8u3CqXQ_6I~sc*)z|;y5gBtEi9DBnNTMV4 zhEQg}n6b9e4{?8K-rP-P^YTjRhp#5UxAV$M^X8RpB6vHoJjd(`S;mBI>2!fpv_|0M z&~P@Z-ILC{)3kPGR~2E^i7~*H%Rp!MH8l1;YG~*aY6WV_Wnl0t!Wk3J4SmA9Uc^FU zu!^f=eiw??Ms{{S60-tX;*m0R9qS9m_+rQO!Aqj>>c|7G4p-q}`~%(tWgsGF=@Q)C zKY*`+f1n?x1SYwxmef>>)dk;-_5$^pvzwZ7vQ~6;QzHByTm>5;0yroWM(PJYz81EJ z!Z3c+&V{QJYHJg&6M3M6#L)U<49Rasz>ZNmaZDcs(hfq}!L|OB^{dDKkLY{dT`RJ3 znwn<+l<2N8w1gJlyMCRJBi~&ew1{SM^U1E+O<1{=S{>*>t0N^ECph9nq%^ZTzyWp# zDb;u{c!6BTXiisUcOM5ckH4y>AQ!hp?SwcU4}8>_eY*yKF%eAVYTN?3Q5E=~6T#kg zj!M7}dU|jVB=__{3O64&iz*?;i@& z>k3JrlbGQiV*UV9gq5%mH#2hfU`SP=A`4ZfLP=>&f$)-u)==s(no_@nlXxkQ3*gke zFZP4(uQxy+yffU|^73U%%S#x*`*~afH9V|c{d5m`hX-%`34aHFZyA2sOfZ7aRrrr= zG`ob%bqDdOQ>jHnpE!utFr({GM`ZJ40*pHKq}!Q=v9=Ek^)vD3>pJlFpWVV=1KW~a z0EvD7zR-#r4nKQ(^3>yR*(DO(6hw-vPXd)mFAiKC1lgxo0a>VRi=&L5{D8av?1_OV zht50|@)21F49nalH4h^0bpiunu4uGouy_Thj*$i6O`zgc`A4@bt@zd9!duOvSA(L~ zyRi7euXnD@12V$gi#0`i=jZR}dfF{YOuXGK)pk`ZUQ##hk>F(#LadBc-|jj3=jG;*_uwE?PP|7G7AZgr zA64+131N34L>0tuezYv-z}h=`)?@i=>*rMBC;BbD5L0<9Z(ZZd?d1)Hi@H9-2gz7j z!9lv0j3p)mtAIlyJ0ME@8OYM{)%nZt5tzo@#h>DP>3Bgy7j(dOVq?HgPRRz5L0B7F z6js=t;81HgCZs|FVM8B%>kJ$ir#9KVcyPI~27g)CH2~8eT)WK%3vofV!Z%^+5B}j( zTlQ`KOXcww1w!V>S=>|h4vHn2AC#Igk}BCZZfQS#c2;xAhr2J;=4}W}pVV2tt?84h zrR$grU>pAKK;1is*K9nWM$i5Hm2>Nfl6_@6PxFFqDm;fO3JxMIa{Ki_qsVBPTq2Rn zqoZjxsE|yCxHgq*$nAEyR6dmDb_u7-r}X($zKN+iZ}@WxJRF{p8Ems|h%1d( z57r-Av2nrVG|!CRm+CgmPF7V?T$)uvgL{! z6H{Syj>bE@aWEPbCvvDs+5q#c_bNNO+wrZb-;00Y%9uGL%Q8oIV+yqd=P;Kn6>E0x zziV@*WxCQb;tjFz@y9}}xzv5?8QVi<)D*umi!P$O>E|>o_Cj#?E5asdS5bI zLpy<@+N~XS}Rn7ooP{$}u3Qnss3gM)XH%23q+^Q8YTD3?eR!F$W z2&HhVR3@~@BO%gcH6jCWW?PJ45)~oiV`3tcT6UOg&6Jr$N|uWAEv3#Ubi+MFLjT{V zL%Lf%DR$re8h)*pFaFuy-WmZ>)4Ml)O@^-|qXr+yEe?T$ zK{O+9p54s$P-#d=2|AbqwTNt8{SknYQ<9PrAsM+m;PfDZbqCHfN0>~4T`+=Gk78Y^ z6DA~r>owLz#;s*PAz1GScK0Y&9KkY)AbyR_2%M+qhp-F7SX4KP)f-fFBIsXZ_mDr= zbE3BiHe0}wS`NYcNbQ$WNGe4rk&?1@Btc-%nCWSNy7KVwud;3W4UrOjjGK=>amye7 znalRr;Lhr6-M6g!o$8b474M^si2iPN8Gb(U?;`yY%{e-2bRh;1#jN+MDQ}p`*=6S* z4`ztp7r^b|GE;;gyK$B6tN1PW;2uoi!df8U~u*`=H|!H~nbNz3_x zo5V9fmm}T2+=y3#(Bu4+)R01EFw@qW6+*LBWCR2H4T@+iHJ2ExpgBb@fGP&F>@y}) z4umt?1j~bK)|^yXExzdBUhNG2tzrW;GM6Oq&V_8gl5e(hMdN4)B|ml+D2{#&-ZoiS zQ4cBYfhDJ8t4onZ#r?4pHS4=u_pR8y-!0l+?=?836z*oX?e@sX;1c!$7D`$RbTI`G zr4o!|`YQ@jDXxg4!NJi55RMjuxKq+9H;x8l&BHjM+4jAZ0-oJ?!c5z)YqabO6?>v$ zvb6?r)R-F7a3|a5aGSe|7a$;&_~dB#s_9kPx6ryazN&eoq z`kus5Y*w}Uc#|SiqeV_zP0l;6DOv8}DODQrx-#DgV%@i@dxD3jaiQL8uqoHg?0piA zL_6qLXeQkkZsr0}uF*KAFx3qj*Xpatz#QrO0w|TR#1Tg`iA}k2G>SETqeu88az#|K z@lK=sw(BZAptKN;)7jPA~?ET#ZjSfTmO;2iLl_S8xos%*wU+*EX6FA!^!I4Wy67$<<-(@L`&pV z6=&V|u6sKZG!jwoH5dr#ZuX^jpCePi38m58YqZ9I?t`e}H_43jqa%Q|_t2%pio;_8 zM4YRJ5f&y1zD3)WY4`>JV|C-^DWysSSv^;RNafR`S7A!MQU%BsaD++Rz> z`Q%qFjaw&jScDQ$O_piw%D66Ap!BNd&S2-#adhBl2dR0mGE68{Su+w^=Io=Ci8mxk zEh*D$wm3vZ6cuhUb%Nl<_`UZvYj3JJb_?k(;@58J6!UKt8`vRhA5HrS`qp>il;oRz z{4B=NoJWHZF^i*LgC$EjnG%a<4%}TN;IS4KRp1~|v%b!{@57E3Xh6azQSUX_lnHF1N*CLQz{ zh)T_3rkE{`YRhUxmm$4EG$BKV5#neOQz!|E*eI^~uq^ z%M<&vd0Brxjn07#45MaowDr(N+l5Omgri*i$hXG;b>2Ao6u%S%ouCd(N$T( z7V>+-uR}+OwUzyHDK>DB3S;&t=Z7-HQANz}^RN2NiJN(LPQy_VywS&rKFNY!a%&#k zqbY^aygF&*2+c>1_4U@>&9yMjazlq{-fM7c?M_PP-0e|*jSc&Q=GoQ)Bb)(IpIL%u z9Gwub%^9ZzOIq<*0Noy^C63PPtyLy#?yDFXqgY`arO%ubJfFPNN18E&Rl%x>>S)_- z3Nwkr0hQsL6xAS(zU*>X$o{XH1PDm;lcVmFd{*15+LsJ9J9&a1+?Zuw)}Ni`s0lE@ z%MVv$8z@V6wsYY^-|Apg6JZCpz9L{cvBH+1R5uNk>moE8L%tahk`2`7>tbalovj=) z0{fdJ6jkW$Jm*o{8{W{lOc}47wK$}iEo&g|H0{t%G-tM1=TKz}z!x70zfN(~a_TpV z4V-Xv9>Y%Bu}-%>p-OP)-%T8ahUbJ4xr(FpRZNyjlM>^f;c?9|MjIVI^^-<8$Tntu zy>)k|9WB_W%E9{eUV}}!Zf0M4XT5b2zzO}J`5f6AQyZ0!sd1tL+I7*7lTCV@XF7FS zsIm0N0>}n>YRhTj=peBvH;z^(I_$l6+uk_#oQTS(zM)07=?7h51N5$MrD{I#Pyxj@ z&T#(KARfK!az@GF?=uS!kj^Il!$mVzo7M5EPmWe6Pw>;Nd0BsUI*(p_ufXHv)zdhL z+GN#L4j-u2f%Cpn!dksF0qutGVe|rp4*#m`qqxn*jtD(;ZqT^~Jld0nc0gvm-mz0<| zjBNo#oGxuSUEiU{F`4Y}U!{4`(-B>Ty3yylF7O0}Ye-Oou7gz(vUllK79PTTpk!!S z<Zg5b`h=`|GA0)0qG*ZULQ|ptgVyU@v6bE+Ppl$&$Q-c{n_by8x=6XYnvbW zcq3}3H&wue;TUf?|L96pZi7_SBGgJUnQibB@$b2v?Y#8r>Q|dMrv3Tn1su`x=pRj- zBa)(LJI66U{GvkX>R9NpqjFHBw+Vu8*QTH@jTMOZZJ^`=UCx!itM{Ca^w zIr>}0241k0RMGB&ZeN}_wSOtEnkGqY9z2K44qyZR{=^uXVRmL5X-eT2)3~qX(J&bRV7q!D9IN>muW=8!=Y9rzprC!Ma zAkLF*JOU4H>P0CYAx;^@$OIt@0w4-&288OIL(+PIHBi6`Cvb*>{hJ@=0FgjpHwzCZ zz_D0+h}W#aQ`fV4;bNO$*Fd`-gTK;L8yK)5LUgT);VN`jc`8|#|1wW-EcR6nR4gmJ zbn4#v9ye(y%8hc4DW{@y##w_agNX7(O?~5KjlIwGj1!`gQOTLU(_rVEdKBCD53h_+ z)*IXlsa6WoA8)n_Gp0uP{L?yYq>Pnp0_jnY0}3ijQUX*(OLpPaLp%=Mp5^>FOm zS!Ek^fG6kdonl6UhM9Us|A+>oj9MU%AkAT|U;<2X497(TGn@G?7x*vuUs;esP$_AO ze=+n;m@=)qd#4(gy6VXi{RjDy{_&Qhl~5*Ur=EK|`80(TuxdpHcg)!c<2%HbjW#)O z!eKCtM7AZhQ5bNf-pNcVsF=t$$z%*>OznGuI+Q`YDVm%JPdZplMeE&KbFsF<8i02d zfl5+)-TWXkM5bh;R0&RiW3l$Uv{}a-sl%{Hv9AJl%}7Vs6#6U8w1F8LVp-x0<0F$~ zl*Py+uuWfnxhDkdtaV9JQl48=1}(NGI$?KnG0ogJt_Zu zDL8a<@dz+y3AmX5F1#7&#v9pbyv6HP?u}A4U4aPRHk75~nc%^bgWSi0o@|JZY z3ZEPf0C@un(3%0}8;db-o7hlT^j4Vod@0C!u|*i#(-|>iW23RpX5mY(`e>u^SJ|^| z8}#AcfQFgaNdLeC3iREfx)fGstQAagiW7$8B7#?5-Q|iw>gn%IlR{9bdMf+zYr?E= zJ>NUdx~*GAmcT7JB45%!n6@<<9xc?f-&hp6ilr8;+LFOD&vAwEGXgEHc;pc{%q+4R z0F~-=pyG^4k>2fM%SyIc{f5Du+wb42cNxC0*&oP8KCP5aA}};A>GgFxVmx6DR5*5Z zfE8?m<_EK3hPB3GY&F(RgvxB&uUWU1dNiRI_IC}tZrCHJBK((H8@ORZ?6-n!XSIkM zqw{FNg@`C`R4AQR;LiB(#8ajV`;2(j}*WYX@=cM<-e19UD8_=@}`} znd*$9?=%?ZaF1dcdw9i2C$Uje1$oc95oO388ZEms3~7*Z+|E+U`!08?Je@G<+od4u z<(`lf1051`PX8C9jsdb%pIkD5W*f(S-x?^Ms_Cda+f4uEA87Q;w*?nV4 zE}JY{!Kxh@JdZh57@zPjt#||{9ERe?I5m^n#=-91$tYbxSdndN*fDq<-H#s|)PXPD z5?(zy5uQX98r+(ee7^0kDZRlOC~91b(XfQ(2eU(D-QsE;qSe8%So?mvX5B0GWMVJf z9|m^ap@aEijD|LF2YBC(Rl)dL#+_o+k!{%d@A5>T8sfR*XlPOU^C8|FP6EiCnUFZg zTBlg!QERRx<2pf{hAC*?cqd|y{G?~$Mf3-7iN4d|T5Eh1%lX6Wj7!(Jt_S8jtHYci zq%{unyq!RSU}Est=19`@JoQP{LQuYZi%kw6^hqfv(>b)(g2^iXY>@+e>`-C>_=kXV zb+0=>XDNra9bPslK#PT9>q^3LcRFHi>`;>Uw5oJlELd#%K_t4Y?T`x!D*l@ z*~Umx8>lE_ie}Mq54VGCbL10)rz!sV=PT5KFJjF<;LE(ilc+*-yp?VJ`F{Q=<#$-a z>lkklu###b=V*UIUf>4>CZ#1iw=Rv)oO4IR|gI!N-OqYE6O3Q8Fi4F1g z{bm5lPA?~ip90y2zyG&A!LfE(-cKCp{DK$0+}kwamMTU0x*UgCj^)R3tjCUc+TTGG zTr75KyrQvB@AQmv=zo+~O_QTI67Adebaxp81sD(rA%ToQ7-JW<>F%wWaqPtGW#=}x zxy?VA{~xh0ag@u~Rt8^*l=<{Bl?aw>SrXBE8Z5CLdNjLQJv_QN0>#R53$>B)q6~7G zeRf@CSh8XfPypge2x&}Uu(9~Uf<*l525|KyFd_#g`VW;-z?odVH@3=?Jo+M-NOJP# zy2cpbS?39K@U(L2DljXSvljMPz(R?+D#=hLeGJDziag4ryWQX^jJ@AYOn?BX$+6m; z*jX*cSiXq7%X)Pawjw5QLY6VIPuAZ$nXO3Hf&m`;xDtWd231pI){F?3YbmxMU*>r( zG;Yxo0b?vpSmYCId>x4B30s@Pa0LB_*0qAO+Ier>q4a!GTrt7(9DVw} z2Odu_=-|om=&H1$@750XIErSCx$2s$XZ4KX&mtp*zy{}TH(G7j^B;XmfB?xNz{rKQ zvl!#IuV8%_&$$VAhzXpkMSZjW)~Rn50~o;LKRGJWUDVhHv*tv2?bWIU`85(vwW_Pp zGX_}VCJqQT<1B#FO&RefHyv@)iJn&=hM&*2 z^jE%!-KDR;bazL(4>`70JHZ*fr@>ez;?b<@K0MNPByPoaJ3u{}+XQ3Pl&k0Gb`;zd z*oC5)kFM5c9ODriiQs1nE6 zktcd|5hp?1xYJ+F2PAB&)HLANFjshR-iLc06~QIwT3H(?s}9y`i@91eK^ZuKO1-6T zuypq(y5EQmqOC+u?`g2bcIeTp=RG`zIMQCV?E&h^7K<{~U4`XDbxzvo@ttZC!la4;HekT)%1oE z{S135Rhh+Hd#lXGY%qMIOH$}u=Xbj)wlSN(rh)(g(u*zxa>4f&V@fY#?-F=7Q64dY zQ&*AtX8oBV2Oh` zsY)G=W?!n8QdI~n=6*WeyiNxaEI21s|1H4lRH&k$V*dk87t;$`Q52`kn5#?`%uF8Q zq=*}D{=55t;*-^SKCYvvsPVAY_vZUBA(x;VJq(c^^l2E(fVmEKhB8`5b>=U9BkHdG zneG#rXnE4Ip!YO*7zX`l*7qMCF;ZuH-S;Q>n}?EM>#P~JKs3%;`gNhfnVx-Xhk4HC zEL*SZOxjO+vE#3^*&1M?pTuG4;cW2VoA!+~#TwC-M%Oj^%<~L9k&)2BlONI5?ky$y zH`vpe<^$$BqIx7Y!SKW=QkcRNce|OF%lPlPBtU?4!5%jVWZ*Bxv{_`hOXS}~`@{rJ zyDh12*55kKCo2I4@bqWjX8Ut?I3N9`DuBXhuqTi|7+R{hMb83YbtQF?5^SkusvFJQ zOdso)6LE7gv+hBR{_VF5;80rb&FdCMc8DZ)p+--3-2MFP{A&9v*iguYNjFVp_6-Fm zlVA0=KAr80(ier$A|Af~_3O>+d?K;3TW9)z61>i`macH@R(IZBx;E8hplf=+SH#K0Ky4$_pyw&+vCWYxsm>IQ3qdUaqzYQF6M* z+G}_`p0C&PT9&@wiRSp(E_On{ydF_-2Kq@npI_kY9KJUj4$V;cM|*4r+jVK0Uawc+ zNrnbGcnVXx9xs^VVE+Sq7De-nxn9opm>+Wt&j&+_p&F{Y-SSy(vwyCd00Gjk!*;vb zY&YRz%npm3?~;T!u^};m)2S!*&H7uX>+7*ej`shQSKV*h))i-+I1NywY0)``94ZoR zOO_OovM(iFisGe2UNNFXlm4I;&kkefgXu7|LyD!qP%Qm=S+HS6F`(;OpeTj`!-ljk z`wxZzL*MpK>~)XbOM%4uUD{FnxSWf_d+*`B=lss^km42KsTVFa7d!pMu45rj`dpt6Xh?7(%qD)5{%>ilRk#bOR4RjOHoh+P%3_mWLY?Y@n@hpRhJ^o9 zWkLczm(SO5uFB1kspN9FXoh${+Qhc=#3n=AZrf%X8o-#J%ad|0Tbs|8=K?WSG=*qG zqSeHGvDvn5a@uV!cWNrmG37q7tRc*SUC)f=mfif(l`H*#XgN{^3P8-6rX2+3pj@7t zBPGqea11avR}RcJFy$e(-9<1v_gqM>t+i`&CNZ_Ph<4>l5ClD&Xybr0^;@1_QI(H_x&Q=7Bb*;DUsf;YGH0ZnHGA6f zx#LE1f(cxhF3iW?pDhZ8rj|EJ5ZL6^oLTPqWp~7pH4%i{dD|Rda>)59=t>Q#W% zS2a>y60kL*Es++f7-hoOyrJM`*bayVV#tjfBT8)4g7n&3P1~jxDrti?;+cIbo&;N_ zwF@>hJPV%QYOS_=t*j2(I%$%jZw?w{)F3(vi`>^k5w*4y3`H|FW3Ei@so*tGiK@05 ztrroh24e_bh;YNJk_xGp%^-(55y4F^{?wN6f2u}lJf1HWHHyhRor)~uqB93#QO_$< zk4Bznd5#5*VJyxUX-&@77PIAYEXF0hMD>X3nz%1Ed!9#6yOrfrQw3TZQrF#pIrdgF zW34;r;E%vCrn*cupa4YKalAOL#p0_@tGe^*F+h2~7CRO&;Y3sPJQu+{`MFTp(k*S? zp^k2eXo?cYG4K>E9X3Rg712A_kfTK>@JDO3?jhHqN1c*W!uFEY6b4JPw5i`(?kZXS zG+q;c0BOs@dzvSCIdev>ta;N`l#d&g1rxXoI>LPH{n?^8a`d7@0gt{WJGE;YwejW{ zSyMr{SM;0+ z54E7zto@GXF^)=lV9f}fAx{qC{l0q(Z0L9vLZjPlb+2`^I_NvJLpL`2L6dGZse!^G z_nnD|s;$J4XpU~r*XTP0yvBqQ($%{!B83pimjOcvNw3I$w@fe&$67%sDr?S`Qn`Ytqqad}~xX@zXO-oQMV&m~H%t_eJjGDXN%auwS2{Q^z2MRze_>98kQej#2euNxdb_jn= zV{0LD-3Xaq^{d!kbxmP#byuJI)#O#9@^#V{fB^;o)-V?}Gdg-$j3d;j)ik;{vn01|u~A z+h9hGIc&{qux)E+S8%iICTs*^*!}za+zwF-7P@IK4EY$948fW`@i)eA{xnI4qqo3D zr@`37cATyo3AR|nxXF5KcW=1UVf!6sqp-;R=7ET+UrlyJ^9^r7V-G2KO(>((={PSU zoF+FQcp(mMPjq{YwHw2vfI2b3O(Fd@knq3~m#2I3%8KD)BJ-&z3ix2-2;%cNUg0r6 zh+{vFd}s>eioD_yC0n~9mUAT)<2tKzcEFh-?u*TM!T4#nigIcy&M{=dH#ZLvFO5ya zgkiYtU9MCnDQAjHxyv|Dl_-kSl%#~nvb)Bj*Lmhgkx3fi5%a|vKaMxV>#RH%u87A| zj(Eg;o*jGAGzFd&pTUMmN=5Y14s!JQPvDOe-indy^_WNXsE+M*zb6d7;Tu!GA7NrLfTZuT}@i&x+Om30A z+k42G3&LakY8`<57!O*MM2GQ8G@t-G=rc|=0h@8A@gZ*oI^T1WL&43VpYlx*!{2-F z&WOjT1>f<1hOg0R6P1j?8c(9@oA-a7z8!A93pQ-s<;h?;?E90UD2~qVanC)x72dG< z9h(nOSmb{1O%c^-qz9r!ERYF*WP#Vza&cy}hc6-{E4>TB=K-$@m_kL|F0*% zlB5gYJ$>->-3uR`*rzh{r*qFn-<;@U>ET&PTAlSJYxcU-Mx47Z=cO-aI@07!UU~<* zdG>+yH{AbFtc9vs-;rLz`W@(B#6GAGtwA~TI`qcL{o%>Jhw$+h^aJSIXa6mYX8&{a z!?}($1N{T^HuS66@1);j&ll$&O9#*|5dW{3FNrbw&tLvT`W?n!LT_U2XQDsZH-t7Y z7rtiCOGiiO&j|mpFT&5Gnay7zk8DR|2VDM z*fy^!d>nsvz!G;rQK5lGUY_&#b>xNd17w}& z9-n*ex#ym9?zykh7xm1|GpYZ!?GK_oADh(hPaN>^PoUiv-}ckeK6=p^=BPHG0euE_ zuMgSeC&2zlSi~BR0jHzdzO2D6*ltjbvf>NMS||< zB;0n~`WN;&3OelBmhT{bBkGUl->!+TyUw#tj%i$6f0j>xe+u+0bZc6pd$B@%Aj^P; zG=K2r0rrb3A+~8H^~w1_1~l%v#xc8l3APSmufw2Ef}@#jWI1(w2rj~_r@KG@UGf+^{zC>ma`A= z?qGC_#Oyn;)Et|!*^AM&mj3l$i08YAdwvr4aT_taEa{IRj);@t`kBLvaSDFFx^Jv2 zdAA);yKl)Y*B0*ewtTnk_wu|F__r{A1?T>4ORU}>+kNqBj?KJ$z*x8Abx`XPdHXc# z<6VrCS~D1vS|=FawBy~a{iwOlCe6jcy_i3bxl8P!^Y$L^i+@YpBlsWLAMch?_gK_FFTcHk+~X{1G}A z-beR}EW*|$Z(SC>Z^@$PxcI#2Bd&M3cG$ZGewVeDbuZw4X#J`k)UVxdclAE_4&xhX z0BfM5KCo|U-ky=G&Y$bM-KgRHW3#3`+AsJPSP!sn;h|rl7i>w{Y&5 zTWwvgEr-LsX1(M3yW_Tdt?fDG|8v|=j$bzBbX01c`(Ne%54GKOugQWNJrcDdIM28B z?eo6lcpUVp<_P&3s0Qls^*O%hyWqI)Ey*LU3v$+7lBZoyNE~q(a@_!ZRE9l$@^POy z9%s)AOE+j5)XDFIeSKc@*7#ce(3&_Lf5SJa&;5otB><^YqQp2cK}-@ih}VJb7!@~& zn?OG$eoFk5bW+kq3`mc4577iMU}c0ynKCIR-DnK))OX2B3KiHtzrp@+NTsk{)XIK(kwVr5%=g#gExutXc)e z;Ylxi(Agw;gK`ttC+)l2K>zOBz<@OjOu=TKWTDw7Q}Db`a^&+wgE}U$Ld`0%hS`32 zaun#7LvjM1+ynYCdjgRYU>7k!NeUjGz%I(?h;zge1n4IQpm`E!R5XDh#A*kqu?k`KCNN4qjvR%!S4f7etH2~G zB!so9V*0kviZQE`e<sbqbUhv2TQx zA7R`gh?`=Ck}9#rRm+f{Vhm3)hEdjSR5}oiD62Ororp$Mx`+YFd&u__L&QO13MYz6 z+FAi-iQ}Lss=XID4bP+SRxRYo&yt@bUqrs5tfHvQ)0)9qlUSyt3i~nS^bXJuNsKv- zF>5hqEsoiTfE}?ekZgTxe9WwA?KCUE28@K*UeXXl6- z)i`!kJ0`JAc@=9D*j=#$XGy@rt3bV>3Et2IduD>SAi-OZV8#=ytAu3WVS?3_K-^Nm z31W_tJlD=qvqat?n#3~YT7g46-4IVV#M2GY!z41h4(za|f&See0XvbSBqF1zJt~Q{ z%J&mP#8Ws?5+3TR40W=^3GADMZ#m!$qLh>~S;7e1n>sM7;ReyPfDKrifYM7}kzq ztzwRnJl?G__|pxnP*NqWU(2C&50dDx$!{tWeJpmPUUBCnCmV|EeP zLEewIAdh=A3+y7MU?Go8DrOMLJYsSbI7a^S)R}}<9;Z>9mJ7hs#2htesB?z;dGfR5 z&r)ZOs|v_w9w$|-aIY${MhnZ(nPqlnnVnglq5#iva`^mNpysQ9eyH*cPFLXVF7QSd za9_5773x%p+LMd0U;zEFQ$)@D1(-&xim;%3mN*ViimaI;>?l?!uM%sJoWm-`3^7a0 z5p}jiKTFtU7?`3YP0SFpM9pJ~t4jP@D6zwoXkngS%|l-?OUw~#K!fj^!FSEzSDeAG zID=nt2EXDAe#II5iZl2XXYl*YU>`78jRq^t;P;!s?>Cc{O{(Io2k^Co9EnU_t}b2l)LTfd3d^A7MV zXA6|;xAbkfjaNya(fDPg>iAsSOxr)4Z#Zu||IK;1Ks9ltaeN>lyaEE|!Bd8S3IY+r z%kT~X0wm!X!c!oRfdt5dWFQg}tn$=itJ|`zp0&lgwLWO8?9p9t)zx~m+O6y3Y}ab{ zxbCT1wU$+D-B#4Sa~VCet)8=I&z#)(&3FIzf4}?9oXMRZ>2&&9`hNP?^f@=KTc+C< zw{wgYjBni~?#Df{J$gM+&k4^{UJNgpSC^N=>!$ZnW)kx~=ES{aR8-#=FbpE1Al;2f z*U%l(4T7X}3^~*c-6@SA-AGB7f^>IxcXu}k@1VbWp7;OZ{r1jU=bqTT&%XPdHS3;x zQxrcbHVuW@1lc5(&Ny{FoAh0WZ_=^t1N04TUPU*(X%-@*Z6>gFU6~C~*RW%t-;x)O36ah!I%6!3^YkySXNmqnUMJxsriiY|yQOAaQFLC+2P8stQNDVY*n zjeZi-wb^mnUhk@lYZLP`oU4tm>+aJPJ1a9QO9dquqGC6`zX}%$U^>w}og7WcQP1kj z3LhcNI_etl)Yeq127zX#`b>=6j6Qc!c3K73k&@y!@jj3U`8>9OB}K$U3`KNBAgw;_ zx9zgN%+QxNVV(OKX*1JaQ_u?S$c+9nzFMDNuP`<}O!cparOP!%uY8G0 zQ;K8xV#gmHN81e=oKJLNL+V*IIr)xQajr>S(O04MJ#{7!GR;%Yv&Pc}uBpMSxq}Gx zHP97cREAClE#i1k@G{jh+zJlyeU86!T&${xbNSrCU{|C;QG$LIyoB{A!B6?1;x2wK z>S_HDaW8tKw?2f!j3|Qi9KHjd5x&ZI3UL#0Cg8r+x3yEma^<%5Ab>5v6sZ(fFwT~u zk5U|?!C0zNc7^M7&XaL_AjfE~F8F!t{{mT-9D^EG?}oZPX*xqta9P1!2@S z|NTcgtC)}3Mx(Sl;yXoQZ;+xX`?6Upi`1)>E`9dP_Dd^lHrQRt_?2`iY$CNb_BQ6$ zADOI}4rqz#7j$`bT&vDqHRUv&W;AAsE4ns3H{wpep8o80iYG15S2d&C$4;hmR3pmg z*0U=%ECCw;tv2j8W_k%@6$_?S?NnC_id9ju8$&umJl=0jb?|A81SZ zR*7G^`qBI#-9o51w1BX{?HlwYs_AaY#J~igXlu%*$ZI;oY6D|a5+Eo z*GWT_b|0f1@r?9E@i>WZT!zmDd>+K$Nzmwhjk*;1-TQtwbpq&s(0d^~jCoYUR3_ zl<>^gk87K%C6*>P?S<@&I$9mp8n0-I#ZAOnPQKXtalxM!(sx4Z{zB-JUhCtG&V0kS zJ9E@;rUhG3;imLemD8ZADbUdz%G`s=optP7L5AuVRpdgFb6z)UH^uXZtSf51zQ%c` zpM(dcb3bRVrcq~wzUx&jRSE5!9fj`7?$Pg!ozL8Io?9L9jXO0S5h4trZ!hzO5X++! z8u_hxbfI^tc6}a%G5zx4usx-1@YNP+iXJcN1zF#CJqC>+xfk z25zlFSqYw(K7#W?h{nmbtJ+Dv(x@OEzb) z?Igj{xjw%_{f&9W*FG_$hZ(;Ja*EnlxKIAFkDxMi{@~3P^m?0pc}T30A`zvLxkQ+% z;sSC)kr*LX_gvTn%@r5D=iL!`;6BQQ4h7~dN2GwhJ8qAdJ3$3?cjm$dT@TaCz?3P> zZ4aFsim^z!Dc&zTSmA^i+q?>_a4XfGQWboxYqzg@NP@gKDP}NxvOMG}a6KX%wXxJ5b!c(H(*uBk&)siRXXC&H1$0K07mnSCsk-hBZ3V zRQbG7ECo}7H3(uzc8AWf(k-3)R+bw%64%!m#uT~7-WY!ixtk$GD0Fp*>U4#O9Dlv- zhKMyVbL;)NuqC|TG3O75++C$=*DA;((PW|C` zusskTaZ@vREz~bMq4I{Cn-HDRj4{JwCLw*tOv~)fEYM7{*(QloG}(QoT5sFY#}oDo zOa!(!mOfvE&vznYG2?)@4MF%4?aY#FAXT!GKt#c9bXX_DI2klcxHY?W#8PJ4PVZWT zA0IO)$gQNf`a4d2@mIf2g{t2z8O07y$!vQ2PH~a0r_10IE8@#vjJM6JEC;qZnE6D* zx(+VYO+IG5@GnH?9sK-O(DY(CMC0Q7oqwA}#yYVU3i12xVn0h^;asXR!MFXgs1x_N z#u?tm&nn4Snf*o@q=}Bgafo7o$m^Se2lXib5=gmFIlxs-(w5nAzF!dU~&@?`586Db@@< z-1e|#GOYy zPVG9DXeEEkKoa(GZw;f|zlb)vo<)iwHuZ+5I>M9%+tE~gE-$8Albwzp#6%DwZLFw7 zZX;;jKy)FXwosclp+tkhy1Jpkp~7n|o6>Wun#G$`S=wEpGMhFcM$2f*DyL6gGGxsv zV5Ql)uGCB3Zz{v4MSc?GUtrwCQyE7Xt4Ru!aFeT7rMfAnvJCj9byOO26XcvZzdJl* zRG$#{YcW`02k4uDvBGl%x>2qhJ)GBw|B6rpzM$4qgU4slbIxzqDOWzFS$Uwd^NN-6 zCvuSuP?Jid+W*)kGgbK56i23RF;^dj%{gVC;w}Ks^Z{T;-zIm(H_(y(&@fCq@mg@q zV=(>%|FGNeDj%J($m7yJ-5(QsCs7pz_bsFE=MA zcr&4nU;9g<2zGYDOlAf$W=jo)tJwEf&hmOzsyF&$2KEf2R*f~4O!vWs@}|xKz_C^k z2lU{-)=5}bTCCNX}FxyHES5w7$P*0c1;xi8{ttZpeIPQ1s_iTz^%d&VJ zzJ|-?$JQsl444a6oe%(W*HF<}SX|x}AsXNgumr^QkhcO9GA`FY7B-aD(WF~WjRyr7 z)x8GX+PNrxET)aZj19?ToK8y!WW|f|NSxn0zaZ-=rVD=WDI@wBXFo` zg5?KCsJnYV`kbZ2;9i6Mh8-x-q=@C0u1e;|Buu|kBCoqIA4b=9(|l>*KsV!!G; zRUT}+oysZjR-xwU0t8$*))M+1PjWZK#Z3nIFUfIwP8>$Oc#DrVk_Zaaf9+C(LAc3| zg`cSn^7|fZA*93vBm^6dW?A!Toz0t|XOT@E4DcROnl=ML&&h{%v8gDbw# z2Cwj_Qfj;0N|vbzGD0`G^eDk^8k>-_d^tQaLnrlV8EfaZKBTTnHc%I_rPj5Os;Z6k z`$3mqG6hzMeUQewOc^zmU@s$_9DEnv)vK_|qIVTJy@NRnC2F$}9H3>@;&%-+!nit( zsMx5A{oDg>D#u(9yq#lEz-=AP-VCe3K@9Ud8=gX8Yw1c)CN9&robeb{rJ>T|X9YEJ zG35eQ{BuiGR-{Dp@qNgRx%QWz;-emV_wmqJbs!SPd*ucD5iz!+vk~}uv2zTIBa7@m zVM-ykpe3BalW!#-2s@C__j>a7Lo_+1W>JhpFR5aFJQNM$DAgGF2Pk3qaFCq(*0Hu4 zz!hx7zI{01*JI+Ki7j?D2vwD|SYl0fF#$>543+b*vT4e(4rh?3`Gx$*ASVa6%``Ue z{aC#`TwN*4{e`~gSFNF8VN)S2L;;tAiJpB?13wD9b)dveQQgh}EQh%1byCq-H+vT=)Q9mpI=cCWAG9KhNhP=6%!$K@Z zw%Yu>_b%`KOP9QW**w46yue#C?@wm_oo2qdW}i0AeB#UkCe8e+%mOdBy(6~$2e*Bh zYcmOJvk+V}ab2@eZ!<}6jbL7olln2^i85ogF%!LI#>iqOFk;48V= zkgqZHRxI89Y)*(9yHKyu2~RLRI|0|&O)F0KK0+tB51m5O?P$WvET1bik{vYSFErAT zrz69s6Xd632BuROr@s_WCs|F$9ZaVYPe-LrC+gsts5=@tUFs`d8robM=v^9lp)9}K zgrFfnUIv2k0wK>O!B~=z*Ii(uF32-#Fa|XQ@f(=n8{~y47{?TXvIQpDg1{nGM}|U8 z-85ucQ9f)1&d2uE5ISv<%tyP~!C#s92ZXUo1d20k%5>JCseqC7YkN>P zpE5QMI9)R>t=-*wlY#|=R=e)~(@)tv2LaVSdZ+ZB12)%;O>0+B--F+Jtq$D>G@Wui z3<_OSKdvs_2PUgX2`kaYezVA*Er=*6+|9o&@Uh4v$nPu&wkSx--z*5Q$p4r>SrBef zIGcZ2;J2H{n?G0(ida}uki1*snwM4(zgv8p*I1CgTlyl;hfWV!*>3`kLk0Om+r&!_ z<#6S!2|Nz9@DFPf&pDLjm7^!HI8^07j6q+O^I<^w`veh(`oM>?iD#-AI0fRndV_^O zYOIKY)$+xaW7g%YCLYlC$|ya?d6UH0X1EFGlBF;GrKH5^ z?@wD~TH{E+PXhIR&t&p4J`q+2@KpyQTobqxH^MIY+qC>#;XBs3CUGbAgc0&5ZTY-H zef;4X|DMPbw#gs*xuq4ZW36lAdy)qjFMpwy^cBFd`ZeJ_@dNCmzgJ7siqNs1SN!5p zG9Jq}nJ8 zti}!K|4>tWi-TY)RmBLIJ!LRNTX+JM8>nQNcw6n>;R&rbJ**c&PjW-0vD~p1RR1^iy->!;RWTK`p9$rYT)%->`AE zDk0}9b3$7Hqflu_lvCtx^X8#n$w67iH0yc>r|a%|$EeMYErXt4FEXApOr zb{-4+t1anCbneiYM5ZMpkK`+JKCOh^)DW={T?D)+p9ju~>Uy|x$wt0C^}N%(Nc_S1 zk&;gA_{6Hj#~`gAS-_+M0R@prn>=fVgW7A^k3|rA-mSujPU9Y<^S*dZxkDu&i`r*x zKa<%i&_P+Z=edzXmLY!jt?(uv{vw38X)|DY^?@1PN!{UV@lq9D`BD|I*rBT6yS!*G z=DLU2MwfAj=7nUSOci>Lv7Wq4|^}q4ZlkO^KXlx-vvqxLQHi_ezs>4WI@jQ)o~yV zC5cf$Zr7bUgjZHvXGNj?)a^k0S>VkONaTh#80l8yi?irz3u2M_?Z-`xLVZwg>CtzpK4XmiXr3Ss z$W?MpfOAk9*eergY(01O>2ewlh%9Aj5W%}Bo;b7|! zp$EwBU^1QJ#~N%u?R^JLY=X~f4EKZ;{*^z3A7nAa$1=;|pUhH@t+O9ft1+*msO&{N z>RpdiPuAntAo?&MXCuY0G2&rV@70`6Hl_GnjVC5PxX3?#4>!0qPUjI=1gnx!60;B^(u%S%))wUzA7>e=_wQg<4wUY=mHUfWHRT$QFuCN-jStVZ-q zoF+tMDM0eW3ujAIB3b#eG9S6RLSs|DfhlRs#QRl&wHO_Q zAxg1pZEdFAi#I7GC#EING_^@-_mHqd;k;=J8#zrWLEl~sSryJc)LA)8~9*81MsSLh+B7iHnS zuftlXg}Y`nAf#%bb_P9Uec3PW;wQrV-SCaw0o`OJ&*B*tQhA8$kharqGX&xEMKj$J zY#K?6%UYy05ifP%5A23`YweY1jb=3}RnHpPVb!UY3pc?cuzDPqdz}y1Go`f4g;dM6 zudY@5Zmp1-tXJ;Tq`MBv=R zn;Ou7-Ja32XpcO6Pj@RU*wNd2fjo55sl)!OtuPM!$REw8d>bQj@!8HLuJ8{3`ALrhtD3{`fS%vq`37;p*Om|0`by9LbD?$vsSln zCr%@XnR!fera6q|X!b>%vcBd*&)#5a>wI?eC1Qx!UDa(kKRt}B{%{!_j!4ikX>wZC zNu}vs!y^QoH@Bzyb4vEib*7e^SCB-Jh!>xQfQ|QD0Y8Sr;C zcm6vbd8?nrG=c}xpJ+5l1lder>q_Cl=`YuhfQK+77_|@~ZE7%gt)g|cgsi>m zH){`qTsgOz^=|u*&}QLh@x0x{W9e$yiWUVy93 zB3gEV(s=}0`fvQ5;QiC}wYsaPAU4f+@eO$bf`ncIZfPJh37+@}T(2|RxAg{fdA2}|qj$G?o9_yvNGeAedonF%u@{L9cV?Ez8mn06R}Wqu zE#8(W<~7e*zsHu@-xcV|H1Fc+c|6gn5|9^FB05^YOtq&cw7eRQMG}v40tWAZrU|$6+i~QBnb%4i87Zy29rjINwe(+hLT0ajfnX&4O35sJeOyJz8 zgACF>rCE6zmd1v~jzM*#fr z0X<_!%CjL^y|GKKgXrAwFQwzLB30kGSf@wI`%i6VjxqYMXNJiM$ETy`r57ur$IjxO zX}t{=PE$WC5-QsKrLD`DkHbNl(pNsOUGf9X^?;4-;TXT8%byLg?ZEiG#H(IS(kV^i z{9V*b8oWolV=tptl^>Eu9=XSk;s6Kw?s1GpviY~__$Hk-JP4TrSjw$V0c0!BKCn<$W zU@W~G3*yf!Dv7R^G0G5Aq=YDCc{f_vytz})mucT6ov(5;GY2bUGTmdKMKjAi^Rv_j zU~U^EAcS2Bib~?i7^hs}b?J1v2EMUo-$VIYawQlO{<5?i{IBjC7>Rz;K#(zYP3YN=}HP zyfVFAj5Ju1y!*H_Xxe$)Oj5rqQ$j4LWeA@`?2QSxS!;vk?E(Apl_``}<`|AZkWA^7|EFK70@IBV(rJI3*^G!X*`P{PLA z9v}=hHvln;fDDW*0piw1Hpb@GrT}$wYhi1M`9FOLb1=kS)XV@(#tc=>+FlF@F#?<0 z+S`E1Sb2D$T$KTG27h6&a&Y{kmI~Mb_}hZtm*4W#&5iBNAX;1;%w%kAZ2!L(4rXRD zPR^&oMaIGm?QnDRkg;-cld(bTr^3O(`5WQC%09uL2>!p6zv=!6`AZlJ3mF$XGZ`0@ z&;LPw*#2{`Tfm z`~MK|B>j&mPbU1`c|vHpyHq|}p#o(7-FzefFu zg};@0f-aoc|+7NdZBQKznl|gMTsk|kl#5N@X-D2h@CO|OI+6V~IVr2&yf`N`e zfRO>%#u{K`4mNVIG64ad0me4=21Z8E#0@ZWur@USJ6M4X9P9x$rZ(00qp_C2BxM!@L!d&AqW5jfy`|o z<`4kT%Gdy627oRxPn8MC2Fe&<0yZ$RH;1ZY>R=A~%@zbSvH!ORHa9i12UwX~J3s)o zK(M`;jRVBM+W3zeQ1*t<<>H^tZ_?iiLLq-BfA{_!|IgrWVZX`k!O*qM$^dK$FfoVf z1(1V)o-|Yx2YmSBDotZ^s1u)T`1of4>M#%x0x<`G{-D|b0gyis*WVQx3nw!`+yQI@ zZLkB39KcUg-~#P%LZ`sS5@>A*U9ng=xdHz$HnOpG`JQ^pS0LaD^ z8ekx68+!l~^kNJ&0f2#~<`C#I3^WE<85liHrZLbI3;U6k1 z2avtFEyx9+_-Are|B$NwAyxeksp>y8nty;QW;S4GC!ASXbt{=4gN!G z@JFn{KP(J>yTJf@d;aYP=$t}tE&%WkG4Mac&}sTBAkF{anE$~s{|}D&KR7_B8?66` zv-yK=^9SALKj=1pA^bySZ0=}o3Aol9V&MclZRwssjBLzY011$RDTIuT z_4j5^M8w8fi;;zg{Wt9Ce&YVkK<779!obQLi=#xp9VibH^lZv(D<=|PA2F#p86l9c$k?1()I=*b0gv3S&$j1js=TP}`f4adEIP^ZeCe zA!A|T;pSiw6#Q$mjwls89_OSo)`Qcv6)(c!?LF%IDVMB6@0nDWBrb^n7AiT02ofWU zSW*xLy|{XdFHMmpS`2wnwQmMeP!SCoP#8-``#CPIy=sAPP_x4OrL|w>T}_K;^@-8_ zH;Znjny)Ky zQ~&+Bcg6E@UKAA@%LV%Nt@p_y#OwRw3pi+{_pf)^VDv*4@{(y+{5{TKB8$E*1(L`c znTNmB3A|;85!pQFM(NRQoq_X4zFJA!f3K!-UVRlw43l&Tv)s{YR?a|%AO<_^5O|i; znu#I0WLQy=f$}`){N#9f`+1~D7L4&87K~O~o2XffM|;SQfiOHgFRp%m&ZR6n&Z&0w zb~lCDiZ(PGd801*GWxw+%h}h8gmNP4iM4Q;d>_+njW)x;G7Fvn3h(oM|E4CSLE*SM z{pT{YwlVO1^0X)$wB-R}Tsbzf>6B!x3D43nh?5)*(EJ%9LJ(IfDa-K0`QMp~7|x2k zL|MT%K+}fBzIf-LrV$jdryShuUQ_2ohK7_thUgE2a<75NTTo%hlCuBn7WxtLcFDyo zS+^JSyd#KFE#Aw|7C$1y1V&4^BwWF3y!LI8@})X1u5sDiCF#SzEo|}1@b?0SEbA*U zRB#qh`d@Sg_vOtpYX*ZPG`It^rKiZF{nLe$&c}dg8&R#CjpQ|0qe)A3E*{~2&UxeAd>rdy=nmoso zJCQHI3dt3xfEk~dZj!y__VSQw&eDhcc+=6~nR~desz2XG`;Onn45UkuccpJ}a_xTF z+zPbm-s7Aw*LHBY`$To8#3H+BCN9JJLB%E#9 zbb?>mxU|}su`=E0@hF}22+4_v-uV-Cdgu~AtB1_u@dbz2FQxlk^T&6Hk44UPln)vv zj>$Vgz2p8zuTl%)QHq7vNJ$(M5^rLyP7E0eByFtrs;{4?^S=``Y>77%A7_-Q>tVC@ z+^)jcJ&*+7v6TFecMB$42okTX-BxSk{P@@i$j}~-VHb|OJmaE=)%XLNhcr<6@X%ccePpnD;y^l1X6*ZV9Y;(%|Q=5cG!bLD3-XRDUYn683JC^GRTs8mX+{ zkO13@$1H;}-HR7P??d^gP!6zuCBUJG2$={M53I+wq zaYD(Zz9JPZJok|IJs{RYooeSVpC{uF{EP#IHI0l&qOq*&}_|h9pX|Gh21{3 zlb4Xd+`HQOa$2Hd>6r4|SPsKjZkW1r*q;*|zZ5B^Hi=FG-lSKngyHUtWXD2GG}Jev zfk8pk6UrFJm5R9=@S@~uJ?-#O$K6`pJiOr{y5m~WGggGFyIrPom492Ia=%<g@Wxwx z4ODnTeI2gSAEAco7d}UjqmG>u_&k@yLw|@Buj+?@o1l8R+~?BKueX)2@>NMs`tAkl z)DG{7>S6_11_uhh;j%)uak$!z^?ftmZC?Uys%PFktHKrY%hNVKOrw$K5)$%_sO62= z&iVA1Aj*-#rJK6E(|Dtn`tIEEvg_uiz^G`OP%-=gk^O;Nv^IX*mp9|G3(sF7-yJVf zj>?8B1L-6*>b{XSkMUL?tIqC1cdhX{u21oJpJkiVXz5)IQ!LB+Owj_*1*;Bn+pkO5 z`Lz1DFKF7xC&+!yb3C$?u-8Wd(dsd^@J^Sfw-oe)v*V@bm4_-#JDDL|9dxs3w41IC zB!;)tNO1d@dJB|YRiY~vnojw>m>e=iKW4(pgPZ-=v{}?#*d-ySl%!pIj(O{n9sC$! zV~o?Sk^^xZT!jcrtV-VEO};+iDCOGt5}R9yZb@uRFR=so=;Vr(VmjRP4}up~_|mnx zI`*%Qh%=+Mj1B~NvQnezED9|`6*XlILgnVEia&Rq%%tO zmCTc46v%WXL7r#W-x`nXVBVw&YLkHC2a;iG3=d(8{H>Pr?``nUJ+vi}#NPaP_q^JT z3ydj1<9bc3-8D;mw7R$DPkmok!WP8e;CPni6a0C(foaV{O}?(qK)d6TkXQgbaOw z(~*}29Oj#aPQEqyA_Oz9*BqN-^T@;~JkP~*nK*#or-SN#4d46-HZJunQASZSFxq+( zGWQaBG}Y~OG@E$TuLRecdzQoFTtf-|T#$(1*Wiw9YZa}J;vtP zHNtUF&G%8jS2;ZUjlD@tkWH0}oR>KKXNP<8%9#!dOeRH#unn=L4F?`0?J1A9B3yKq-9D^GQxvxsNh-yhxRmA_A`~@i+7FbAqpglo z1TR0n5R`Xw*;vrGA0m*%IFduh7!>`;RY^kyq|v!I$R6$_=8Yl%5%8d`vK^tm9yh3; zte17yrM-HdW1n-_+iO{@@4IMxwZGhC;hnVNIk!_h@Cq= zi5?r)E_^rB!Gd61E<&u(kpS55vMWs#+4$j)7qR?onYx1EjFR%1Xyupvfc~$O?mK?r zff1}x#lZ;`9)mwZv2f;kFLt)!iau^^^d$wf1fIf)ut(5=jhA!@Mg}I6IYhkjKcxG> zD2AH*XX^3G77LiR*UUEJrBsfb#nM{IhCQ~&+`GTx{`MF`>p|3G(6=mGQa+fAdm~>caq~|S!>RotH^MVf_xj(AS;RZy;Bf7k(YLlfkw^~r zt6pYMUtGKqhvAzOS%QsX^7H==ELFuM!jdG!5czT=jU8d>jwrs!&ka{ytiZr){diU| z84>d~Q-U*1`hYf!+H*EI0m!*Tvgu@?aRn>cbfTlX z*|UJ=?e8~4UvY?zw_dSQH&lv%w{Ejb$ZU$%=%ZSuM<}<_7^YfGm!*D!%d_I}7cvgm|dT4_g%Ic|p=Qp;vUDEpNM5 zkK{d95V>Ie5FaqE#hEy~ok^X4_~vwr6cXRiva+UZop?I#$Y zEsnaDzJg`wus)b9m@5&NqV`c9QJoTU)DyJXY)Itly5c%&NSyu_5YHW#WSqn`Q;dRj zCZ|JCt6q)$yh^MyVe6HEURa)jEJ3c9%CVtwxk}^OKGtW;}kPqBX44?#tuycPaFS;`bUjQN};r;cT`MP1oQ|=73u=)Yw4k%^&sW z`i>+5?EHuIHet42#ertQcN!yVl{UA%Vhb6)KO{)GAB;|kdI~DfLXuu31RxaVk~ZtA?gDPka5b`%v3{yS%tn*mJUmMSkY%2xA;v zp<+bzh0uw7aW$;#@akanW#)p_SiV zlTd@g9E>r}sj@e!>wT)b)9zG{6-Sz{OS|@G#pf@=HiwYDvPeueTT+k;g}^K7C%<|6 zNMCbQaibijtQV|6Ze@nSsRGmoJImYa`=fsA zQjOcu1Dtc-`^kdcU7r5*#}c1wFvbb;{#W7eeQodcv?bYkhJ? zCd`^u`Bg)jvXgPKWy)%uwcq`w-|RCxve$)$12JcQ?F(N9B><|>w1O!O^Q(VyOV!J} zONmhMVqgZ>v@4IQj*70**u^Oy*1zG#SiJ6qTQN3sENrhVj^M&V+NxJqnSWdvkW~VB;v<}=uvbb z%Yx#OBIuyi1EWY5llw$6sxi)(OR>c1is5o)^s+?4oUe;7gCy;t`_%9>G`N+>EVYVpo!V2x)>R5^>n##W7u} z>a@j(#iGSzrbWJ$QWed|2!7rxGs9%R$(%{x)ZSFiq>-Pn4#PV?oduWKqz|TQT-7B` z9(t;IbR~6j0hK|K`KFQuXnW zW!sMS+@h2{;iD<}nKWLoSC&N?ltiocSRK`dhVp_A%S0ZXdm{X-d z!Q1l;_>W2v=_?ekpL0Ch9m_85*^EAcr1*ZYBT$eOP1*_{dG2TX;+{}U^3lAHCG_bXfNvg^Dzp&h1)K2=JK?lj?D#_L8us(#9xMf^EbXmoFo%O3GNRw()Qng1brh-L8AB@h#l~uhGfyUFye%DGRC6R3Wi* zqADY7Yn%8Dv#+sv5xC5LAv?>+?hawMF}3(1`n<6lyA8W0%H7|0*p-Mb7zU&Ww(J|F zcwK2X%}g?Nzxa?;$M)9Igwk*s!1f9UoV`gaaUu>JW2^Ai;zk*SL5Q|vxgJR<$k^%_ zmg@bgyDH%!E#{;i!gIb}Z;KU?nWp|6nAffbCQxv_JlYzWS{P8B{N@C}HKmpeOj90Q zR3JBTo1V2lnwkvdR00*T@}veE~)%Qdgcqw zuHS7?qZyBaS#lM{m|6k!5iHtQzKjZ+Am#U8l^IMU$_=HN^)+^37JXY2_P?5s=5~9x zE~Enqnf%bP+!W?RG;y&*cuTQ(I0{YcX9X9_s#Tbz{j3-hrp( zl5o|P2x!`o8ZMWWG{$3a$Npr&)jMU9eJ{NbU#LnqY$yj7J8w1WIL=wPs)+5AuAwby zLS=-gd8@s9e>Kj^wBPX}1MxA&LZRb~Vqkk#1m2tdg@BLvb^qwJw$^?9 zE8*{q6hF`=2Y40?!w7luEmesb#p3QJcSDg8cy*)rER~CI$=|EPlg6VH4=F05k)Khh z=Dy{HOC{8VVUN1E&t^jBJsrdD&S5dT5W2`Pfppw#e|+a8k~rm}xrD%Rnfi0+gQ?BA=8{{b-p}VhOy6(qMbJ4Jq1F*1UF^fn7%QD7C$bLi~*l0hm!ra?E7Jis+a*9tU998Zpt-{^j< z|4XIuSylw@S5>34OObZ~hB$jkAi)vrtuz`|1lD&S8ogPJuAgGhmEg;P9D)cM-dFGH zVB$u^SO{PDH5=u|!Z zFz>ocV{ag~grcQobwR+?4G>J)ezwRRD9d&B~Br3)+Qr(8>8=RaU zXqgALFed#?hNpf6v|U!Rv_lCpq+NOM^xH)g{?oT+caU={MhQ3i8A3Kpx={9qIrwUOu{F=s@$ ztw&(LqNX+M!}5K-&hj&qpP?6LeA=Mqm6N1j?!%TS-0qn@LvKg0Y^R?`>{cKWE#QO8 zRn!ARbNJeH*(QJ|NjnM*NqI~X>?5f~eGaP2+P=++4U2`DJ(MB2OuH7}Qc=cuJpxV4 zl8g+T?4FmLCXwE?{8HsB{i3{QRJ=<7{pv*@Jz|7He6u5>eZv0(OF*>0!*=cvN7=bB zm*wbd+#QbMD5HV9%dYy(Ca>Q_J4B4ch&U(GqEbHNO)5!6&M4*b=@!nQY$lUQ0z2~Q z%tody0Gc-q$mbmI&ku;Cus`z*4dQaSER0AzTwdrTNxWo9@=-b}NF?#m4* z;T;Da?8m{vkA9o{SM!hintv&LxWD<=1B>{h2dNLK7dK#|KGFOMNzF$a%}335aD^o7 z+90u~ZptQ`c{kdL2GB76-Yw+Y{6q^1ew7k=zuF&6rIyV7F0;Ac5yW%ByFn`0*nGSi z+@X?E>+$&1TJXE(H-a~UOv)VWXB3IVhcpO>Q_S?f9+zT_!%H}e0?8M=*z5HxuiG5F z;E>1V3o<Zhu<>kkC49Z3#fwVYRA8e*(CNHGYR`49kY?!=`Sc zx4OM*w<9p1NLV6rgte)XBx4Oqd>(0{PeqCIXpUWCb@mR+up|%ttb0ywjVOx1Q5yP&S#_NF>fF zVp&#NcvdNkip+b{BpA-j+Xm!$+qw6L29Ydd(*WMdGvqjAqbzP|c!1s+4`DAqKnR8}giSW=c6q$QUOb%Y*~vU?E(ZHkc<{u0^{rpNa`Dp5SNA*d8_us3e*cTvPyc=K z&+8jM)e_0<#iNIERi^sfzL8+_Plu0v|Mtr_&W@Pgd#@{h_Qy44vKYhF(IfBvaOLk^ zlasba#=UoU-}9c0Ug4XnawrD>oXO31EpNk0rV)>#NI_Xt*S>);MO~+ni>8rh)n*H= zV$@;DtoHPzR{MMu?SsG4;3$P?jUK1r@jC}sva#1aOQ^eTVX|3|i-` zl-257VKnC3l&q{LTLc>=?@R;dBu~O3%7ShkmJcb&+Lq{j3y>v&hF?;L& z{adq*B3KMv%Wk^&=|kr26OG9auIV34Hl}7r5*R&A;>_apcr6f-W{X*hbdv}ifS^+i zBEjnMs@RA^DQ0%NXd^Cx)*e#;@AVDrz7p(vkoiG!X6Dkbn-7`~fBu{C|59BoKvA7n z_II{<8Yz*k_|^M9qTz?d1IldkvT zEr*;YtJ}bP%npa>@gUC27-@>t5q?LD%_gH9){176JIBfycu?wWr^jRxvD4}CidYn} z#{;Vx(`3e2LC~N$@Dv*(_<01r4Dbh7RX~i&)7Z0N5;Q_M5{_aA9PHUx$oJ=KB%B`! zNBlt?fu8W^v7C4@(ZwHh5W z9U2YII7DD1k}c#Y%(pcrqQf-BdxQo%f+#qV4zifkP8=df)sI=u zDL;qz!2i2rCUlU>q?b}2Lf~jR1h_l>F}P8E7VlA4!>91WTO^v|;o_L{3I4@MV1(Na zatn6?*eS9s|1m|jT~Y@x@RuLhm^Z6?c#|jaCK-CWCRQd$eSDvuUg59k$ILWrtTZ0O zXD}C`(+wmmNdzyb}3R8+(^Vo4w`O3_OIXqr`OG@crV4vPsXr5*w@28SGf zzMtfofEj=*OpGh)a50{`>#v=2Z3XH*_0PlquAVj%?`m3Bu{6-s)Y3@)h2O?C)i3uf z`TY^KLw$Yyx<%Oau6pZy!--FD?%DH@>mR_f+=19dR6dLZAVvk8n2us93~5Yeb6BGx zqClJ?(P;4YC>bGyK!_orI2c(Nfxsw;FT@HR13YF1Sm_Aw)z2Drlpr*;Ju6A~Rb>Zrr#Quw$7EdReKfuw?d$(20S^mOi z<&S?`^}?rH`|kg`{^^YRLY^3bgvL zKN(YMm2PEFIi#FYt}B9~xFM|#94<<7g2U-_CoL}N*u(GMhZhOV7V0JD&F;oTIGhDC zl5$fPtONuD`MQ0BKI-#%oCOIXCfUM*;7LeQR2q<|R3fzzl)%`Ta0DHXl`CDNK-vfd zLT2WhSgoK^&~dC@Wy~%FzKaM)3IafezgFR0X5A*iCEB&{FJN|)(eCaa+EBKV}%u4t&S{a?X!~Y!iYcw zfjW{#7ac+x3xhl#ASW@&6ei>cw#Wsxpa_;)nv-KqSbUa8(6ZI&5xS}7pGYIgelsWm z&lI6B4iuPwLpCen07&v9AYnNEOFxl&7Ks1xUQUfkK}!TY42KU3e<9-kR0 zn4%tlMfdnMuU8#A_qzIETV(CFRmDxKdb(eGCCe5m1-zC(=0?CP6HP{IWAg_5@4Cna z-EJMp(D@Op4f-%_GJcl2KdIAsxui?*CS_NaFXJMRZUP}+LNZ2;14e2rG`5k9guTH2 zJv%}h$IWRu8HMyl1B`^q;7Oci2(CYs$DY^mPc zavDpCZ~t;l9eWGc;K_gbv~OZsXG87J+85XVf@?3WuWYXRX8t_&*43SNH@%6gv4nTv zjz#;%CpPrIvT^gPTNxKDg&swKwgHvJa)};5)H*lmzt9ss#IMyFBoZY9gc6AWaTyIP zodClo2uQJ(n@CF|_(MTMl}Xs5EaeUit=?Ka!>Ybma$#hm2&z8%tKa?o+mot_SK%Aj z2FmqVd9qLenugws=`>!v-kTsqLJA`vC^7pR3jhl#$yf*<3Y`jF4^eL@7OD+(hXzA@ zD3o8Ebhz@98A6E(Xr++#UKkFY?wcHuWjCrGY2L?HtHZ>AX(F^3AVi&^L1)TAdV9_Ve zxOzoV`N94#u^+pp7dCEqx#f*7Hh(qN-HE3zUs&0=ta^U@|8$oNa8%V9$M1REd-v|L zkKEn7Fi#*07)wY(c1c(^msdhCU_xpTVIcv;Xdo}dL?MJ{Qjr=~jXb0ZoldY+hDQ`6 zWspt@Am{`c8mUF4r2}FM$a5UXp6z$;ZXi0-x!HSnce3X@=R5!N|9)T8%Y_9mEuC6e zOB|WGr8S={efHw6`K6jC`*2;=rxoc{J!@BWpyEQ`?1I9%zCdpIvc|IV*0NGE$v7lfX>J^CiVUcNkH9ms5VhF~-SgbT9H8MYc60r$gBOtT zeYT&S-*c)NpK2&AuBD5mGlAD3-n2Z0uru-4*jgn))$UB)$x zLmWk&petDzuEmnwxv=$Cx?5JUw2sKK0!U?$b)?df{aUUs%vF&O*$Q6N$tvyvV(}3< zC+Z_w1g|zEJfhK}#L?XrRWSorn9VS@(PFW|;8u%1c%}!S(dKywjs3&)V@Dn>%#S?e z{YMB1K`MnBdO<7@B%w@mVUf~31Owe+BudgA0Xg7*Fo6&I1iBBPPc(^0M1)F3LK(~( z7s0lr`8@FF@qmJb*tE>dn6ztY*SMRu=p@)OA|?ccDJTL(D2QHo&`N6qQ*lQP`a2qi z&O>Fm$L_*tE6^lh@}+uSlQk8HmdN`kPLj%`8i`0mPUC?DT^o<`xq?o7a9DpWWq;nu z4hzulEP_>i1FM=LB#M*6{SFpj!E`I=_A%hk#hQJlimY=j$YL>VQmGXdg5tOrs8KHd zJg8V*ak~>$3;!-M%Eg~r^Z>I*0RLyi8vA97y2_;Ht%!!F%G1r zW~BKzG5GX~lFa4lcJ-l^3yc<6RYxlk)<7cI+9zggE*>{N-)Cma9bla?UpF6^<9{xT z)uT=91@yVI{FMbO#=G5P=PVuBgTz_OzIgh*x}x$9wnf0f`@v}OhImf!3e$wnLqc}& z`wpNh$0xy_4y(gugQr#jZ_G)G!&U0}gB1_44RN?Uc^;ZQ1&#GiNuMyv>z&fRF=u!nPGbiWkt}xfe(-t$W;hJ^?IZeJO`{)L_#Ol&AD9|JcweB^BF_j znc()6mndj<0keb%2bQJ5!1?^>gE^|18Bx)077!~S}hot%|7 zdhEEYZ@cfJ4dbWR25Rfar!Pi%tLH7qn83c_O2mR7d7%o*z-oWeMi$7Z$A}6HrKr@{ zY@`MOJj4i{mLe*$yh;)sk|a{-P*)KOXOk*iirF@YOQFWMz+@$8#8i=zX7ZYZF)~v6 z6hRxwMd$@#DEOr&A!unerA9fb5G5AW3WwAOEdUgnXzs7jxAF7Ki)?DRfeRno7TYmT zi_LQ^)MljsiX*s8n8pQq^I19`imv0K%(?UTJ8s<)JMZV=G;9srgl0+D1eN|@utq!7 zi4>tin@n+~r4GL=!TKCF2X^>vDMcw8Q;01^OF5H5s^NxHQsU$M0*UwA)fz)R)RdS; zN|PH+LrvA#5#MBY+AEDvIcPvxyX) zyHxC|c(3in+1X3BWc1!bpLM-hQu6%CD@)7f)?XGo&%V3b=N;law4v@mR}n> zj%`#Dl`x-i3ll>2@W>=YUe!YwmPDgP=g<(Og^Czmh<-cl!(i79_T>e%2F*i}XzWy0 z6B+HSnz(hk_wDA@>+p<*ofqp~M{~ev7onDm-_M+oIBN9r*6>a(}n?>W4gIZ4mthh;9-}w9x{!QB3_d zxk%n9gWr#oHTjH8tKkNKZy+!=gWsfroF$_fSe_c1Oan}Pdk;pE_OqRTR1NsmMvnvx z_%DH6VtK%E@WfU2H})O-h|gj()PSF07K$)M%lJRDI3puCfP4;$DoMzM^!SQVc^Ds} z|1x;!+Dyv=&*Ra7lPntocLfD@KJZ5#cTVt%lnHuChSiTu0)`#QE4uAhnRC_T{n+Wh^f?B744 z`Lpw%IrPS~l4rUvUjO`wto5PHNp^kzMrjH7t!f1+iU}Gl*`!jrNis`SU_JeJiK7n~ zi^@B!{yBmyp)Pa-onYB4f{hV713`?yIf?^&c&0u8sa8Q8A~>~}Re0wF4HY9)ve zv8l>HNhPNr9~_|EzGm$Mbe!dI|KTGH4qm25bmtkY*^MTX4H7F5dlQbtRoK*M)U(NV z5VFW?b3~}eL%he+D@Ydp2_2uwZlC@3&bk3;A4+l#99ftzcJ^L+!0sPtxUy?Z`J8xr zZF4v)yY#GV*UH}|-2}glkKt~Gj4`}~u_#Ig#ULwG6sbX$TSHc^U_w?=#X+gE5+lU` z*kz(bAQGe!ejpo3(@Neg$W3M3xXoDUpIDD4BJ)w>5CQDx;r0z~?$fQCf@zD~ybbWi zU^`|2?-qPMJx?fE0sEFiJMa(uY~TkxB5;n_{M^Y{*&*aTRc zC?x)m>S_Uwsyf5xKj)r%@7`TD_ukzkn+Hjj&2E4-FM=Bbfw>h7)iM+4@DO8)Oa%#4 zLfQdAO%vYI0h6s7ia6K@BCVj<2QQ}*Ae7N*wH-#-2_Qy zckga;?w<4g-~WBzk7 zkpqrj)gh=Cd8nt%n3B*>qz4@vFH9(9Wl+r&R^};5;NUR$8+@hG;AZ$s5=_(eLzD$6 zW>CZ9IYa?3fg0GXKBNPJ>$4f+i(YAH-Q3UDP@~&7&Nr%I7Iq0jx9WzWY{z7y zvs<`;+>Rxm_QI=lBD^LRrY?&`xStPLe5i>84|OzI}D=+}nJ zR_KN0um*M=5hrhbCEj`$&cE{PkAM1V&(4GNAMhCTiYLT=kru~~?}tU{D`(&S^8M3i zr2{>Wj9QC`8Q7bZP9aLX*9f4_8g@>nl8e*|c)EO&^ zo&LE0wl3oqZI@|on8FWm*GM(_Hk+IB^7HaFR2Vf+DBj|w@@Hp%iJn>3$$Dso~Rg)T?n$tLIS^lNzIeFtnRaes`r2Q3%VwKd?{^bt0VyYIoqN3jGho}BEHh|XrWqjK z!Xycqq3+ONNC|~Vc@mgq6MK6AOs^Fvu)8d)tW%94U&;%*FwT7~g<*lP!&+S#ay{`= z35DBc{>}lA_Ecxd43UXrdHHzCK$yiUu!04U3H!2|FHzLnXI8dMTRuNpu++RP$bYNK zYiCY8UAm;Q;i0E5@KfJBx9iC_>m&I^MfUnKu^9Rn7fwhWVJm~42WsZbm5Mbd{R!WQ zwZ4n|Π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 z Date: Thu, 26 Jul 2018 08:32:44 +0700 Subject: [PATCH 26/38] update code des --- 3DES/DES/conversion.py | 190 ----------------------------------- 3DES/DES/destable.py | 121 +++++++++++++--------- 3DES/DES/huanlv_code_3DES.py | 159 +++++++++++++++++++++++++++++ 3DES/DES/main.py | 8 -- 3DES/DES/test.py | 8 ++ 5 files changed, 238 insertions(+), 248 deletions(-) delete mode 100644 3DES/DES/conversion.py create mode 100644 3DES/DES/huanlv_code_3DES.py delete mode 100644 3DES/DES/main.py create mode 100644 3DES/DES/test.py diff --git a/3DES/DES/conversion.py b/3DES/DES/conversion.py deleted file mode 100644 index 6e8fb55..0000000 --- a/3DES/DES/conversion.py +++ /dev/null @@ -1,190 +0,0 @@ -from destable import * - -def textToHex(text): - return (text.encode("UTF-8")).hex() -def hexToText(hexText): - return (bytes.fromhex(hexText)).decode("UTF-8") -def binToHex(text): - lookup = {"0000" : "0", "0001" : "1", "0010" : "2", "0011" : "3", "0100" : "4", "0101" : "5", "0110" : "6", "0111" : "7", "1000" : "8", "1001" : "9", "1010" : "a", "1011" : "b", "1100" : "c", "1101":"d" , "1110":"e" , "1111":"f"} - result = "" - for i in range(0,len(text),4): - result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] - return result -def hexToBin(text): - lookup = {"0" : "0000", "1" : "0001", "2" : "0010", "3" : "0011", "4" : "0100", "5" : "0101", "6" : "0110", "7" : "0111", "8" : "1000", "9" : "1001", "a" : "1010", "b" : "1011", "c" : "1100", "d" : "1101", "e" : "1110", "f" : "1111"} - result = "" - for byte in text: - result = result + lookup[byte] - return result -def dec16ToBin(dec): - result = bin(dec)[2:] - if len(result) < 4 : - result = "0"*(4-len(result))+result - return result -def toPermute(text,pc): - result = "" - for i in range(len(pc)): - j = pc[i] - 1 - result += text[j] - return result -def cat2(text): - result = [] - result.append(text[:int(len(text)/2)]) - result.append(text[int(len(text)/2):]) - return result -def cat8(text): - result = [] - l = int(len(text)/8) - for i in range(8): - result.append(text[i*l:(i+1)*l]) - return result -def xor(binA,binB): - result = ''.join('0' if i == j else '1' for i, j in zip(binA,binB)) - return result -def toLeft(text,bit): - s1 = text[:bit] - s2 = text[bit:] - return s2 + s1 -def toRight(text,bit): - s1 = text[:len(text)-bit] - s2 = text[len(text)-bit:] - return s2 +s1 -def toArray2D(text): - l = int(len(text)/4) - result = [] - temp =[] - k = 0 - for i in range(4): - for j in range(l): - temp.append(text[k]) - k +=1 - result.append(temp) - temp = [] - return result -def binTo2Dec(text): - bae = text[0]+text[len(text)-1] - betw = text[1:len(text)-1] - baeDec = int(bae,2) - betwDec = int(betw,2) - result = [] - result.append(baeDec) - result.append(betwDec) - return result -def convertKeyToHex(key): - hexKey = textToHex(key) - l = len(hexKey) - if l >16 : - hexKey = hexKey[:16] - elif l<16: - temp = "0"*(16-l) - hexKey = hexKey+temp - return hexKey -def sBox(bit,num): - arr2D = [] - if(num==0): arr2D = toArray2D(s1) - if(num==1): arr2D = toArray2D(s2) - if(num==2): arr2D = toArray2D(s3) - if(num==3): arr2D = toArray2D(s4) - if(num==4): arr2D = toArray2D(s5) - if(num==5): arr2D = toArray2D(s6) - if(num==6): arr2D = toArray2D(s7) - if(num==7): arr2D = toArray2D(s8) - arrDec = binTo2Dec(bit) - row = arrDec[0] - column = arrDec[1] - - return dec16ToBin(arr2D[row][column]) -def F(R,K): - extR = toPermute(R,e) - xorRK = xor(extR,K) - catXorRK = cat8(xorRK) - strSbox = "" - for i in range(8): - B = catXorRK[i] - BS = sBox(B,i) - strSbox += BS - B = [] - BS = [] - return toPermute(strSbox,p) -def cat(text): - l = len(text) - nl = 16 - l%16 - text = text + "0"*nl - nBlock = int(len(text)/16) - result = [] - for i in range(nBlock): - block = text[i*16:(i+1)*16] - result.append(block) - return result -def createKeys(keyString): - C=[] - D=[] - CD=[] - K=[] - #kHex=[] - keyHex = convertKeyToHex(keyString) - keyBin = hexToBin(keyHex) - keyPc1 = toPermute(keyBin,pc1) - catKey = cat2(keyPc1) - C.append(catKey[0]) - D.append(catKey[1]) - - for i in range(1,17): - bit = 2 - if i in [1,2,9,16]: - bit = 1 - C.append(toLeft(C[i-1],bit)) - D.append(toRight(D[i-2],bit)) - CD.append(C[i]+D[i]) - K.append(toPermute(CD[i-1],pc2)) - #kHex.append(binToHex(K[i-1])) - - return K - -def encrypt(plaintext,key): - K = createKeys(key) - hexText = textToHex(plaintext) - nBlock = cat(hexText) - cBlock = len(nBlock) - ciphertext = "" - R=[] - L=[] - for i in range(cBlock): - x = nBlock[i] - xBin = hexToBin(x) - xIp = toPermute(xBin,ip) - catx = cat2(xIp) - L.append(catx[0]) - R.append(catx[1]) - for i in range(16): - L.append(R[i]) - f = F(R[i],K[i]) - R.append(xor(L[i],f)) - strRL = R[15]+L[15] - strOut = toPermute(strRL,ip_1) - ciphertext = binToHex(strOut) - return ciphertext - -"""def decrypt(ciphertext,key): - K = createKeys(key) - nBlock = cat(ciphertext) - cBlock = len(nBlock) - plaintext = "" - R=[] - L=[] - for i in range(cBlock): - x = nBlock[i] - xBin = hexToBin(x) - xIp = toPermute(xBin,ip) - catx = cat2(xIp) - L.append(catx[0]) - R.append(catx[1]) - for i in range(16): - L.append(R[i]) - f = F(R[i],K[15-i]) - R.append(xor(L[i],f)) - strRL = R[15]+L[15] - strOut = toPermute(strRL,ip_1) - plaintext = binToHex(strOut) - plaintext = hexToText(plaintext) - return plaintext""" \ No newline at end of file diff --git a/3DES/DES/destable.py b/3DES/DES/destable.py index 5ea60d1..d8edaf8 100644 --- a/3DES/DES/destable.py +++ b/3DES/DES/destable.py @@ -27,7 +27,7 @@ 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7 ) -ip_1 = ( +ip1 = ( 40, 8, 48, 16, 56, 24, 64, 32, 39, 7, 47, 15, 55, 23, 63, 31, 38, 6, 46, 14, 54, 22, 62, 30, @@ -47,57 +47,78 @@ 24, 25, 26, 27, 28, 29, 28, 29, 30, 31, 32, 1 ) -s1 = ( - 14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7, - 0, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8, - 4, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0, - 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13 - ) -s2 = ( - 15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10, - 3, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5, - 0, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15, - 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9 - ) -s3 = ( - 10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8, - 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1, - 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7, - 1, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12 - ) -s4 = ( - 7, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15, - 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9, - 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4, - 3, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14 - ) -s5 = ( - 2, 12, 4, 1, 7, 10, 11, 6, 8, 5, 3, 15, 13, 0, 14, 9, - 14, 11, 2, 12, 4, 7, 13, 1, 5, 0, 15, 10, 3, 9, 8, 6, - 4, 2, 1, 11, 10, 13, 7, 8, 15, 9, 12, 5, 6, 3, 0, 14, - 11, 8, 12, 7, 1, 14, 2, 13, 6, 15, 0, 9, 10, 4, 5, 3 - ) -s6 = ( - 12, 1, 10, 15, 9, 2, 6, 8, 0, 13, 3, 4, 14, 7, 5, 11, - 10, 15, 4, 2, 7, 12, 9, 5, 6, 1, 13, 14, 0, 11, 3, 8, - 9, 14, 15, 5, 2, 8, 12, 3, 7, 0, 4, 10, 1, 13, 11, 6, - 4, 3, 2, 12, 9, 5, 15, 10, 11, 14, 1, 7, 6, 0, 8, 13 - ) -s7 = ( - 4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1, - 13, 0, 11, 7, 4, 9, 1, 10, 14, 3, 5, 12, 2, 15, 8, 6, - 1, 4, 11, 13, 12, 3, 7, 14, 10, 15, 6, 8, 0, 5, 9, 2, - 6, 11, 13, 8, 1, 4, 10, 7, 9, 5, 0, 15, 14, 2, 3, 12 - ) -s8 = ( - 13, 2, 8, 4, 6, 15, 11, 1, 10, 9, 3, 14, 5, 0, 12, 7, - 1, 15, 13, 8, 10, 3, 7, 4, 12, 5, 6, 11, 0, 14, 9, 2, - 7, 11, 4, 1, 9, 12, 14, 2, 0, 6, 10, 13, 15, 3, 5, 8, - 2, 1, 14, 7, 4, 10, 8, 13, 15, 12, 9, 0, 3, 5, 6, 11 - ) +box = [ +# Box-1 +[ +[14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7], +[0,15,7,4,14,2,13,1,10,6,12,11,9,5,3,8], +[4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0], +[15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13] +], +# Box-2 + +[ +[15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10], +[3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5], +[0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15], +[13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9] +], + +# Box-3 + +[ +[10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8], +[13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1], +[13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7], +[1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12] + +], + +# Box-4 +[ +[7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15], +[13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9], +[10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4], +[3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14] +], + +# Box-5 +[ +[2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9], +[14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6], +[4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14], +[11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3] +], +# Box-6 + +[ +[12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11], +[10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8], +[9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6], +[4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13] + +], +# Box-7 +[ +[4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1], +[13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6], +[1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2], +[6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12] +], +# Box-8 + +[ +[13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7], +[1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2], +[7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8], +[2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11] +] + +] p = ( 16, 7, 20, 21, 29, 12, 28, 17, 1, 15, 23, 26, 5, 18, 31, 10, 2, 8, 24, 14, 32, 27, 3, 9, 19, 13, 30, 6, 22, 11, 4, 25 - ) \ No newline at end of file + ) +rk = (1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1) \ No newline at end of file diff --git a/3DES/DES/huanlv_code_3DES.py b/3DES/DES/huanlv_code_3DES.py new file mode 100644 index 0000000..da41c84 --- /dev/null +++ b/3DES/DES/huanlv_code_3DES.py @@ -0,0 +1,159 @@ +#This function take input are permutation table and key 64 bit and return key 56 bit +def applyPc1(pc1,key64bits): + key56bits = "" + for i in pc1: + key56bits += key64bits[i-1] + return key56bits +#This function will cut key 56 bits to 2 keys 28 bits +def cutHaftKey56bits(key56bits): + leftKey = key56bits[:28] + rightKey = key56bits[28:] + return leftKey,rightKey +#This function will shift left bit by number of bits +def leftShift(bits,numBits): + result = bits[numBits:]+bits[:numBits] + return result +#This function tacke input are key 56 bits and compression table and return key 48 bits +def applyPc2(pc2,key56bits): + key48bits = "" + for i in pc2: + key48bits += key56bits[i-1] + return key48bits +#This function will return 16 keys +def generateKeys(key64bits,rk,pc1,pc2): + roundKeys = [] + pc1Out = applyPc1(pc1,key64bits) + L0,R0 = cutHaftKey56bits(pc1Out) + for i in range(16): + newL = leftShift(L0,rk[i]) + newR = leftShift(R0,rk[i]) + roundKey = applyPc2(pc2,newL+newR) + roundKeys.append(roundKey) + return roundKeys +def XOR(bits1,bits2): + xorResult = "" + for i in range(len(bits1)): + if bits1[i] == bits2[i]: + xorResult += '0' + else: + xorResult += '1' + return xorResult +#This function take input string 32 bits and return string 48 bits +def applyExpansion(e,bits32): + bits48 = "" + for i in e: + bits48 += bits32[i-1] + return bits48 +#This function cut strign 48 bits to 6 bits +import textwrap +def cutTo6bits(str48bits): + result = textwrap.wrap(str48bits,6) + return result +#Some functions to support +def binToDec(bina): + decimal = int(bina,2) + return decimal +def decToBin(deci): + bin4bits = bin(deci)[2:].zfill(4) + return bin4bits +def getFirstLastBit(bits6): + return bits6[0]+bits6[-1] +def getMiddleBit(bits6): + return bits6[1:5] +def boxLookup(box,boxCount,firstLast,middle): + dFirstLast = binToDec(firstLast) + dMiddle = binToDec(middle) + + value = box[boxCount][dFirstLast][dMiddle] + return decToBin(value) +#This function will return string 32 bits +def applyP(p,s32bits): + result = "" + for i in p: + result += s32bits[i-1] + return result +#This is tha F function +def functionF(p,box,e,pre32bits,key48bits): + result = "" + expanded_left_half = applyExpansion(e,pre32bits) + xor_value = XOR(expanded_left_half,key48bits) + bits6list = cutTo6bits(xor_value) + for sboxcount, bits6 in enumerate(bits6list): + first_last = getFirstLastBit(bits6) + middle4 = getMiddleBit(bits6) + sboxvalue = boxLookup(box,sboxcount,first_last,middle4) + result += sboxvalue + final32bits = applyP(p,result) + return final32bits +def textToHex(text): + return (text.encode("UTF-8")).hex() +def hexToText(hexText): + return (bytes.fromhex(hexText)).decode("UTF-8") +#This function will convert hex to bin +def hexToBin(hexdigits): + bindigits = "" + for hexdigit in hexdigits: + bindigits += bin(int(hexdigit,16))[2:].zfill(4) + return bindigits +def binToHex(text): + lookup = {"0000" : "0", "0001" : "1", "0010" : "2", "0011" : "3", "0100" : "4", "0101" : "5", "0110" : "6", "0111" : "7", "1000" : "8", "1001" : "9", "1010" : "a", "1011" : "b", "1100" : "c", "1101":"d" , "1110":"e" , "1111":"f"} + result = "" + for i in range(0,len(text),4): + result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] + return result +#Use initial permutation table +def applyIp(ip,plaintext): + permutated = "" + for i in ip: + permutated += plaintext[int(i)-1] + return permutated +def spliHalf(binarybits): + return binarybits[:32],binarybits[32:] +def applyIp1(ip1, text): + cipher = "" + for index in ip1: + cipher += text[int(index)-1] + return cipher +#encrypt by des +def encryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box): + cipher = "" + # Convert hex digits to binary + plaintext_bits = hexToBin(message) + key_bits = hexToBin(key) + # Generate rounds key + roundkeys = generateKeys(key_bits,rk,pc1,pc2) + + ## initial permutation + p_plaintext = applyIp(ip,plaintext_bits) + ## split in tow half + L,R = spliHalf(p_plaintext) + ## start rounds + for round in range(16): + newR = XOR(L,functionF(p,box,e,R, roundkeys[round])) + newL = R + R = newR + L = newL + cipher = applyIp1(ip1, R+L) + cipher = binToHex(cipher) + return cipher +def decryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box): + text = "" + # Convert hex digits to binary + cipher_bits = hexToBin(message) + key_bits = hexToBin(key) + # Generate rounds key + roundkeys = generateKeys(key_bits,rk,pc1,pc2) + + ## initial permutation + p_plaintext = applyIp(ip,cipher_bits) + ## split in tow half + L,R = spliHalf(p_plaintext) + ## start rounds + for round in range(16): + newR = XOR(L,functionF(p,box,e,R, roundkeys[15-round])) + newL = R + R = newR + L = newL + text = applyIp1(ip1, R+L) + text = binToHex(text) + return text \ No newline at end of file diff --git a/3DES/DES/main.py b/3DES/DES/main.py deleted file mode 100644 index 39322ee..0000000 --- a/3DES/DES/main.py +++ /dev/null @@ -1,8 +0,0 @@ -#import lib -from conversion import * -key = "hello" -text = "I love vietnam" - -#ciphertext = encrypt(text,key) -#plaintext = decrypt(ciphertext,key) -print(ciphertext) \ No newline at end of file diff --git a/3DES/DES/test.py b/3DES/DES/test.py new file mode 100644 index 0000000..070b1b2 --- /dev/null +++ b/3DES/DES/test.py @@ -0,0 +1,8 @@ +from destable import * +from huanlv_code_3DES import * +message = '0123456789ABCDEF' +key ='12345678ABCEDFF9' +ciphertext = encryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box) +print(ciphertext) +text = decryptDes(ciphertext,key,ip,ip1,p,e,rk,pc1,pc2,box) +print(text) \ No newline at end of file From 4f57a75d012528fed3b4a261e386273fa4bc588b Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Thu, 26 Jul 2018 08:35:02 +0700 Subject: [PATCH 27/38] update report --- huanlv_report.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/huanlv_report.txt b/huanlv_report.txt index c2edad9..2a19c6d 100644 --- a/huanlv_report.txt +++ b/huanlv_report.txt @@ -1,3 +1,4 @@ 23/07-Hoàn thành code mô phỏng thuật toán Caesar 24/07-Tìm hiểu thuật toán des và viết một số hàm cần thiết cho thuật toán des -25/07-Hoàn thiện các hàm cần thiết, viết hàm sinh keys thuật toán des \ No newline at end of file +25/07-Hoàn thiện các hàm cần thiết, viết hàm sinh keys thuật toán des +26/07-Hoàn thiệt hàm mã hóa và giải mã thuật toán des \ No newline at end of file From bf26ffc1c2da94605ec166c1c7b163696f05eaf3 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 26 Jul 2018 09:46:19 +0700 Subject: [PATCH 28/38] Change --- .../huongnm_code_des.py | 248 ++++++++--------- Vigenere/thachls_code_vigenere.py | 253 ++++++++++++++++++ 2 files changed, 377 insertions(+), 124 deletions(-) rename huongnm_code_des.py => DES/huongnm_code_des.py (97%) create mode 100644 Vigenere/thachls_code_vigenere.py diff --git a/huongnm_code_des.py b/DES/huongnm_code_des.py similarity index 97% rename from huongnm_code_des.py rename to DES/huongnm_code_des.py index 934fe5f..d344369 100644 --- a/huongnm_code_des.py +++ b/DES/huongnm_code_des.py @@ -1,125 +1,125 @@ -from sys import exit -from time import time - -KeyLength = 10 -SubKeyLength = 8 -DataLength = 8 -FLength = 4 - -# Bảng cho hoán vị ban đầu và cuối cùng (b1, b2, b3, ... b8) -IPtable = (2, 6, 3, 1, 4, 8, 5, 7) -FPtable = (4, 1, 3, 5, 7, 2, 8, 6) - -# Bảng để tạo khóa con (k1, k2, k3, ... k10) -P10table = (3, 5, 2, 7, 4, 10, 1, 9, 8, 6) -P8table = (6, 3, 7, 4, 8, 5, 10, 9) - -# Tables for the fk function -EPtable = (4, 1, 2, 3, 2, 3, 4, 1) -S0table = (1, 0, 3, 2, 3, 2, 1, 0, 0, 2, 1, 3, 3, 1, 3, 2) -S1table = (0, 1, 2, 3, 2, 0, 1, 3, 3, 0, 1, 0, 2, 1, 0, 3) -P4table = (2, 4, 3, 1) - -def perm(inputByte, permTable): - """Permute input byte according to permutation table""" - outputByte = 0 - for index, elem in enumerate(permTable): - if index >= elem: - outputByte |= (inputByte & (128 >> (elem - 1))) >> (index - (elem - 1)) - else: - outputByte |= (inputByte & (128 >> (elem - 1))) << ((elem - 1) - index) - return outputByte - -def ip(inputByte): - """Perform the initial permutation on data""" - return perm(inputByte, IPtable) - -def fp(inputByte): - """Perform the final permutation on data""" - return perm(inputByte, FPtable) - -def swapNibbles(inputByte): - """Swap the two nibbles of data""" - return (inputByte << 4 | inputByte >> 4) & 0xff - -def keyGen(key): - """Generate the two required subkeys""" - def leftShift(keyBitList): - """Perform a circular left shift on the first and second five bits""" - shiftedKey = [None] * KeyLength - shiftedKey[0:9] = keyBitList[1:10] - shiftedKey[4] = keyBitList[0] - shiftedKey[9] = keyBitList[5] - return shiftedKey - - # Converts input key (integer) into a list of binary digits - keyList = [(key & 1 << i) >> i for i in reversed(range(KeyLength))] - permKeyList = [None] * KeyLength - for index, elem in enumerate(P10table): - permKeyList[index] = keyList[elem - 1] - shiftedOnceKey = leftShift(permKeyList) - shiftedTwiceKey = leftShift(leftShift(shiftedOnceKey)) - subKey1 = subKey2 = 0 - for index, elem in enumerate(P8table): - subKey1 += (128 >> index) * shiftedOnceKey[elem - 1] - subKey2 += (128 >> index) * shiftedTwiceKey[elem - 1] - return (subKey1, subKey2) - -def fk(subKey, inputData): - """Apply Feistel function on data with given subkey""" - def F(sKey, rightNibble): - aux = sKey ^ perm(swapNibbles(rightNibble), EPtable) - index1 = ((aux & 0x80) >> 4) + ((aux & 0x40) >> 5) + \ - ((aux & 0x20) >> 5) + ((aux & 0x10) >> 2) - index2 = ((aux & 0x08) >> 0) + ((aux & 0x04) >> 1) + \ - ((aux & 0x02) >> 1) + ((aux & 0x01) << 2) - sboxOutputs = swapNibbles((S0table[index1] << 2) + S1table[index2]) - return perm(sboxOutputs, P4table) - - leftNibble, rightNibble = inputData & 0xf0, inputData & 0x0f - return (leftNibble ^ F(subKey, rightNibble)) | rightNibble - -def encrypt(key, plaintext): - """Encrypt plaintext with given key""" - data = fk(keyGen(key)[0], ip(plaintext)) - return fp(fk(keyGen(key)[1], swapNibbles(data))) - -def decrypt(key, ciphertext): - """Decrypt ciphertext with given key""" - data = fk(keyGen(key)[1], ip(ciphertext)) - return fp(fk(keyGen(key)[0], swapNibbles(data))) - -if __name__ == '__main__': - - - try: - assert encrypt(0b0000000000, 0b10101010) == 0b00010001 - except AssertionError: - print("Error on encrypt:") - print("Output: ", encrypt(0b0000000000, 0b10101010), "Expected: ", 0b00010001) - exit(1) - try: - assert encrypt(0b1110001110, 0b10101010) == 0b11001010 - except AssertionError: - print("Error on encrypt:") - print("Output: ", encrypt(0b1110001110, 0b10101010), "Expected: ", 0b11001010) - exit(1) - try: - assert encrypt(0b1110001110, 0b01010101) == 0b01110000 - except AssertionError: - print("Error on encrypt:") - print("Output: ", encrypt(0b1110001110, 0b01010101), "Expected: ", 0b01110000) - exit(1) - try: - assert encrypt(0b1111111111, 0b10101010) == 0b00000100 - except AssertionError: - print("Error on encrypt:") - print("Output: ", encrypt(0b1111111111, 0b10101010), "Expected: ", 0b00000100) - exit(1) - - t1 = time() - for i in range(1000): - encrypt(0b1110001110, 0b10101010) - t2 = time() - print("Elapsed time for 1,000 encryptions: {:0.3f}s".format(t2 - t1)) +from sys import exit +from time import time + +KeyLength = 10 +SubKeyLength = 8 +DataLength = 8 +FLength = 4 + +# Bảng cho hoán vị ban đầu và cuối cùng (b1, b2, b3, ... b8) +IPtable = (2, 6, 3, 1, 4, 8, 5, 7) +FPtable = (4, 1, 3, 5, 7, 2, 8, 6) + +# Bảng để tạo khóa con (k1, k2, k3, ... k10) +P10table = (3, 5, 2, 7, 4, 10, 1, 9, 8, 6) +P8table = (6, 3, 7, 4, 8, 5, 10, 9) + +# Tables for the fk function +EPtable = (4, 1, 2, 3, 2, 3, 4, 1) +S0table = (1, 0, 3, 2, 3, 2, 1, 0, 0, 2, 1, 3, 3, 1, 3, 2) +S1table = (0, 1, 2, 3, 2, 0, 1, 3, 3, 0, 1, 0, 2, 1, 0, 3) +P4table = (2, 4, 3, 1) + +def perm(inputByte, permTable): + """Permute input byte according to permutation table""" + outputByte = 0 + for index, elem in enumerate(permTable): + if index >= elem: + outputByte |= (inputByte & (128 >> (elem - 1))) >> (index - (elem - 1)) + else: + outputByte |= (inputByte & (128 >> (elem - 1))) << ((elem - 1) - index) + return outputByte + +def ip(inputByte): + """Perform the initial permutation on data""" + return perm(inputByte, IPtable) + +def fp(inputByte): + """Perform the final permutation on data""" + return perm(inputByte, FPtable) + +def swapNibbles(inputByte): + """Swap the two nibbles of data""" + return (inputByte << 4 | inputByte >> 4) & 0xff + +def keyGen(key): + """Generate the two required subkeys""" + def leftShift(keyBitList): + """Perform a circular left shift on the first and second five bits""" + shiftedKey = [None] * KeyLength + shiftedKey[0:9] = keyBitList[1:10] + shiftedKey[4] = keyBitList[0] + shiftedKey[9] = keyBitList[5] + return shiftedKey + + # Converts input key (integer) into a list of binary digits + keyList = [(key & 1 << i) >> i for i in reversed(range(KeyLength))] + permKeyList = [None] * KeyLength + for index, elem in enumerate(P10table): + permKeyList[index] = keyList[elem - 1] + shiftedOnceKey = leftShift(permKeyList) + shiftedTwiceKey = leftShift(leftShift(shiftedOnceKey)) + subKey1 = subKey2 = 0 + for index, elem in enumerate(P8table): + subKey1 += (128 >> index) * shiftedOnceKey[elem - 1] + subKey2 += (128 >> index) * shiftedTwiceKey[elem - 1] + return (subKey1, subKey2) + +def fk(subKey, inputData): + """Apply Feistel function on data with given subkey""" + def F(sKey, rightNibble): + aux = sKey ^ perm(swapNibbles(rightNibble), EPtable) + index1 = ((aux & 0x80) >> 4) + ((aux & 0x40) >> 5) + \ + ((aux & 0x20) >> 5) + ((aux & 0x10) >> 2) + index2 = ((aux & 0x08) >> 0) + ((aux & 0x04) >> 1) + \ + ((aux & 0x02) >> 1) + ((aux & 0x01) << 2) + sboxOutputs = swapNibbles((S0table[index1] << 2) + S1table[index2]) + return perm(sboxOutputs, P4table) + + leftNibble, rightNibble = inputData & 0xf0, inputData & 0x0f + return (leftNibble ^ F(subKey, rightNibble)) | rightNibble + +def encrypt(key, plaintext): + """Encrypt plaintext with given key""" + data = fk(keyGen(key)[0], ip(plaintext)) + return fp(fk(keyGen(key)[1], swapNibbles(data))) + +def decrypt(key, ciphertext): + """Decrypt ciphertext with given key""" + data = fk(keyGen(key)[1], ip(ciphertext)) + return fp(fk(keyGen(key)[0], swapNibbles(data))) + +if __name__ == '__main__': + + + try: + assert encrypt(0b0000000000, 0b10101010) == 0b00010001 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b0000000000, 0b10101010), "Expected: ", 0b00010001) + exit(1) + try: + assert encrypt(0b1110001110, 0b10101010) == 0b11001010 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1110001110, 0b10101010), "Expected: ", 0b11001010) + exit(1) + try: + assert encrypt(0b1110001110, 0b01010101) == 0b01110000 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1110001110, 0b01010101), "Expected: ", 0b01110000) + exit(1) + try: + assert encrypt(0b1111111111, 0b10101010) == 0b00000100 + except AssertionError: + print("Error on encrypt:") + print("Output: ", encrypt(0b1111111111, 0b10101010), "Expected: ", 0b00000100) + exit(1) + + t1 = time() + for i in range(1000): + encrypt(0b1110001110, 0b10101010) + t2 = time() + print("Elapsed time for 1,000 encryptions: {:0.3f}s".format(t2 - t1)) exit() \ No newline at end of file diff --git a/Vigenere/thachls_code_vigenere.py b/Vigenere/thachls_code_vigenere.py new file mode 100644 index 0000000..950f8d0 --- /dev/null +++ b/Vigenere/thachls_code_vigenere.py @@ -0,0 +1,253 @@ +##################################################################### +# VIGENERE CIPHER +# Function of this program: + # Senders input their message and the key + # Program will encrypt their messages into Vigenere code and send to the receiver + # Senders provide the key to the receiver to decrypt the text has been sent by senders + + +import math +import numpy as np +x_value = { + "Z": 0, "A": 1, "B": 2, "C": 3, "D": 4, "E": 5, + "F": 6, "G": 7, "H": 8, "I": 9, "J": 10, "K": 11, + "L": 12, "M": 13, "N": 14, "O": 15, "P": 16, "Q": 17, + "R": 18, "S": 19, "T": 20, "U": 21, "V": 22, "W":23, "X": 24, "Y": 25 +} + +y_value = { + "A": 26, "B": 25, "C": 24, "D": 23, "E": 22, + "F": 21, "G": 20, "H": 19, "I": 18, "J": 17, "K": 16, + "L": 15, "M": 14, "N": 13, "O": 12, "P": 11, "Q": 10, + "R": 9, "S": 8, "T": 7, "U": 6, "V": 5, "W":4, "X": 3, "Y": 2, "Z": 1, " ": 100 +} + + +reverse_x_value = { + 0: "Z", 1: "A", 2: "B", 3: "C", 4: "D", 5: "E", + 6: "F", 7: "G", 8: "H", 9: "I", 10: "J", 11: "K", + 12: "L", 13: "M", 14: "N", 15: "O", 16: "P", 17: "Q", + 18: "R", 19: "S", 20: "T", 21: "U", 22: "V", 23: "W", 24: "X", 25: "Y", 100: " " +} + +#this part of senders +def message_sender(): + # senders send their message + message = input("Please input your message: ") + message = message.upper() + # message belongs to y_value + message_y_value = [] + if len(message) <= 0: + print("Invalid message value, please enter your message again") + message = input("Please input your message: ") + message = message.upper() + for i in message: + message_y_value.append(i) + else: + for i in message: + message_y_value.append(i) + return message_y_value +message_y_value = message_sender() + + +def key_encrypt(): + #senders enter their keys + key = input("Please enter your key:") + key = key.upper() + # key belongs to x_value + key_x_value = [] + if len(key) <= 0: + print("Invalid key value, please enter your key again") + key = input("Please enter your key:") + key = key.upper() + for i in key: + key_x_value.append(i) + else: + for i in key: + key_x_value.append(i) + return key_x_value +key_x_value = key_encrypt() + +def convert_message_to_value(): + #convert message to value + message_sender_value = [] + for i in message_y_value: + message_sender_value.append(y_value[i]) + return message_sender_value +message_sender_value = convert_message_to_value() +def convert_to_key_value(): + #convert key to value + key_value = [] + for k in key_x_value: + key_value.append(x_value[k]) + return key_value +key_value = convert_to_key_value() + +def change_length_of_key_value(): + #change the length of key_value equal of length of message_sender_value + key_value_update = [] + if len(key_value) > len(message_sender_value): + key_value_update = key_value[:len(message_sender_value)] + else: + n = len(message_sender_value)/len(key_value) + n = math.ceil(n) + for i in range(n): + key_value_update += key_value + i += 1 + key_value_update = key_value_update[: len(message_sender_value)] + return key_value_update + + return key_value_update +key_value_update = change_length_of_key_value() + +encrypted_message_alphabet = [] +def encrypt_message_alphabet(): + #export encrypted message alphabet + for i in range(len(key_value_update)): + if message_sender_value[i] != 100: + value = key_value_update[i] - message_sender_value[i] + if value >= 0: + encrypted_message_alphabet.append(reverse_x_value[value]) + else: + value = 26 + value + encrypted_message_alphabet.append(reverse_x_value[value]) + else: + encrypted_message_alphabet.append(100) + + return encrypted_message_alphabet + + +def export_message_alphabet(): + user_message_encrypted ="" + for i in encrypted_message_alphabet: + if i == 100: + i = " " + user_message_encrypted += i + else: + user_message_encrypted += i + return user_message_encrypted + + +def sender_message(): + #this function for sender message + message_sender_value = convert_message_to_value() + key_value = convert_to_key_value() + key_value_update = change_length_of_key_value() + encrypted_message_alphabet = encrypt_message_alphabet() + user_message_encrypted = export_message_alphabet() + print("Your encrypted message: \n",user_message_encrypted) +sender_message() + + + +# this part of receivers +vigenere_value = { + "A": 0, "B": 1, "C": 2, "D": 3, "E": 4, + "F": 5, "G": 6, "H": 7, "I": 8, "J": 9, "K": 10, + "L": 11, "M": 12, "N": 13, "O": 14, "P": 15, "Q": 16, + "R": 17, "S": 18, "T": 19, "U": 20, "V": 21, "W":22, "X": 23, "Y": 24, "Z": 25, " ": 100 +} +reverse_vigenere_value = { + 0: "A", 1: "B", 2: "C", 3: "D", 4: "E", 5: "F", + 6: "G", 7: "H", 8: "I", 9: "J", 10: "K", 11: "L", + 12: "M", 13: "N", 14: "O", 15: "P", 16: "Q", 17: "R", + 18: "S", 19: "T", 20: "U", 21: "V", 22: "W", 23: "X", 24: "Y", 25: "Z", 100: " " +} + +def receiver_text(): + text = input("Please input your message: ") + text = text.upper() + # text belongs to vigenere_value + text_receiver = [] + if len(text) <= 0: + print("Invalid message value, please enter your message again") + else: + for i in text: + text_receiver.append(i) + return text_receiver +text_receiver = receiver_text() + +def receiver_key(): + #receiver enter key + key = input("Please enter your key:") + key = key.upper() + # key belongs to vigenere_value + key_receiver = [] + if len(key) <= 0: + print("Invalid key value, please enter your key again") + key = input("Please enter your key:") + key = key.upper() + for i in key: + key_receiver.append(i) + else: + for i in key: + key_receiver.append(i) + return key_receiver +key_receiver = receiver_key() + +def receiver_text_value(): + convert_receiver_text_value = [] + for i in text_receiver: + convert_receiver_text_value.append(vigenere_value[i]) + return convert_receiver_text_value +convert_receiver_text_value = receiver_text_value() + +def receiver_key_value(): + convert_receiver_key_value = [] + for i in key_receiver: + convert_receiver_key_value.append(vigenere_value[i]) + return convert_receiver_key_value +convert_receiver_key_value = receiver_key_value() + +def change_length_receiver_key_value(): + #change the length of receiver_key_value equal of length of receiver_text_value + receiver_key_value_update = [] + if len(convert_receiver_key_value) > len(convert_receiver_text_value): + receiver_key_value_update = convert_receiver_key_value[:len(convert_receiver_text_value)] + else: + n = len(convert_receiver_text_value)/len(convert_receiver_key_value) + n = math.ceil(n) + for i in range(n): + receiver_key_value_update += convert_receiver_key_value + i += 1 + receiver_key_value_update = receiver_key_value_update[: len(convert_receiver_text_value)] + return receiver_key_value_update + + return receiver_key_value_update +receiver_key_value_update = change_length_receiver_key_value() + +decrypted_receiver_message_alphabet = [] +def decrypt_message_alphabet(): + #export encrypted message alphabet + for i in range(len(receiver_key_value_update)): + if convert_receiver_text_value[i] != 100: + value = convert_receiver_text_value[i] - receiver_key_value_update[i] + if value >= 0: + decrypted_receiver_message_alphabet.append(reverse_vigenere_value[value]) + else: + value = 26 + value + decrypted_receiver_message_alphabet.append(reverse_vigenere_value[value]) + else: + decrypted_receiver_message_alphabet.append(" ") + + return decrypted_receiver_message_alphabet + +def export_receiver_message_alphabet(): + receiver_message_decrypted ="" + for i in decrypted_receiver_message_alphabet: + receiver_message_decrypted += i + return receiver_message_decrypted + +def receiver_message(): + #this function for receiver message + convert_receiver_text_value = receiver_text_value() + convert_receiver_key_value = receiver_key_value() + receiver_key_value_update = change_length_receiver_key_value() + decrypted_receiver_message_alphabet = decrypt_message_alphabet() + receiver_message_decrypted = export_receiver_message_alphabet() + print("Your message has been decrypted sucessful: \n",receiver_message_decrypted) +receiver_message() + + + + From 6ada05c876bbf16b9497c334adb5ff70855ec501 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Thu, 26 Jul 2018 13:37:35 +0700 Subject: [PATCH 29/38] update --- 3DES/DES/destable.py | 124 ---------------- 3DES/DES/huanlv_code_3DES.py | 267 +++++++++++++++++++++++++++-------- 3DES/DES/report.txt | 9 ++ 3DES/DES/test.py | 8 -- 4 files changed, 219 insertions(+), 189 deletions(-) delete mode 100644 3DES/DES/destable.py create mode 100644 3DES/DES/report.txt delete mode 100644 3DES/DES/test.py diff --git a/3DES/DES/destable.py b/3DES/DES/destable.py deleted file mode 100644 index d8edaf8..0000000 --- a/3DES/DES/destable.py +++ /dev/null @@ -1,124 +0,0 @@ -pc1 = ( - 57, 49, 41, 33, 25, 17, 9, - 1, 58, 50, 42, 34, 26, 18, - 10, 2, 59, 51, 43, 35, 27, - 19, 11, 3, 60, 52, 44, 36, - 63, 55, 47, 39, 31, 23, 15, - 7, 62, 54, 46, 38, 30, 22, - 14, 6, 61, 53, 45, 37, 29, - 21, 13, 5, 28, 20, 12, 4 - ) -pc2 = ( - 14, 17, 11, 24, 1, 5, 3, - 28, 15, 6, 21, 10, 23, 19, - 12, 4, 26, 8, 16, 7, 27, - 20, 13, 2, 41, 52, 31, 37, - 47, 55, 30, 40, 51, 45, 33, - 48, 44, 49, 39, 56, 34, 53, - 46, 42, 50, 36, 29, 32 - ) -ip = ( - 58, 50, 42, 34, 26, 18, 10, 2, - 60, 52, 44, 36, 28, 20, 12, 4, - 62, 54, 46, 38, 30, 22, 14, 6, - 64, 56, 48, 40, 32, 24, 16, 8, - 57, 49, 41, 33, 25, 17, 9, 1, - 59, 51, 43, 35, 27, 19, 11, 3, - 61, 53, 45, 37, 29, 21, 13, 5, - 63, 55, 47, 39, 31, 23, 15, 7 - ) -ip1 = ( - 40, 8, 48, 16, 56, 24, 64, 32, - 39, 7, 47, 15, 55, 23, 63, 31, - 38, 6, 46, 14, 54, 22, 62, 30, - 37, 5, 45, 13, 53, 21, 61, 29, - 36, 4, 44, 12, 52, 20, 60, 28, - 35, 3, 43, 11, 51, 19, 59, 27, - 34, 2, 42, 10, 50, 18, 58, 26, - 33, 1, 41, 9, 49, 17, 57, 25 - ) -e = ( - 32, 1, 2, 3, 4, 5, - 4, 5, 6, 7, 8, 9, - 8, 9, 10, 11, 12, 13, - 12, 13, 14, 15, 16, 17, - 16, 17, 18, 19, 20, 21, - 20, 21, 22, 23, 24, 25, - 24, 25, 26, 27, 28, 29, - 28, 29, 30, 31, 32, 1 - ) -box = [ -# Box-1 -[ -[14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7], -[0,15,7,4,14,2,13,1,10,6,12,11,9,5,3,8], -[4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0], -[15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13] -], -# Box-2 - -[ -[15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10], -[3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5], -[0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15], -[13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9] -], - -# Box-3 - -[ -[10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8], -[13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1], -[13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7], -[1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12] - -], - -# Box-4 -[ -[7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15], -[13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9], -[10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4], -[3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14] -], - -# Box-5 -[ -[2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9], -[14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6], -[4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14], -[11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3] -], -# Box-6 - -[ -[12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11], -[10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8], -[9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6], -[4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13] - -], -# Box-7 -[ -[4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1], -[13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6], -[1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2], -[6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12] -], -# Box-8 - -[ -[13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7], -[1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2], -[7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8], -[2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11] -] - -] -p = ( - 16, 7, 20, 21, 29, 12, 28, 17, - 1, 15, 23, 26, 5, 18, 31, 10, - 2, 8, 24, 14, 32, 27, 3, 9, - 19, 13, 30, 6, 22, 11, 4, 25 - ) -rk = (1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1) \ No newline at end of file diff --git a/3DES/DES/huanlv_code_3DES.py b/3DES/DES/huanlv_code_3DES.py index da41c84..99b966c 100644 --- a/3DES/DES/huanlv_code_3DES.py +++ b/3DES/DES/huanlv_code_3DES.py @@ -1,5 +1,138 @@ +#Some usage tables for DES algorithm +#Initial permut made on the key +pc1 = ( + 57, 49, 41, 33, 25, 17, 9, + 1, 58, 50, 42, 34, 26, 18, + 10, 2, 59, 51, 43, 35, 27, + 19, 11, 3, 60, 52, 44, 36, + 63, 55, 47, 39, 31, 23, 15, + 7, 62, 54, 46, 38, 30, 22, + 14, 6, 61, 53, 45, 37, 29, + 21, 13, 5, 28, 20, 12, 4 + ) +#Permut applied on shifted key to get Ki+1 +pc2 = ( + 14, 17, 11, 24, 1, 5, 3, + 28, 15, 6, 21, 10, 23, 19, + 12, 4, 26, 8, 16, 7, 27, + 20, 13, 2, 41, 52, 31, 37, + 47, 55, 30, 40, 51, 45, 33, + 48, 44, 49, 39, 56, 34, 53, + 46, 42, 50, 36, 29, 32 + ) +#Initial permut matrix for the datas +ip = ( + 58, 50, 42, 34, 26, 18, 10, 2, + 60, 52, 44, 36, 28, 20, 12, 4, + 62, 54, 46, 38, 30, 22, 14, 6, + 64, 56, 48, 40, 32, 24, 16, 8, + 57, 49, 41, 33, 25, 17, 9, 1, + 59, 51, 43, 35, 27, 19, 11, 3, + 61, 53, 45, 37, 29, 21, 13, 5, + 63, 55, 47, 39, 31, 23, 15, 7 + ) +#Final permut for datas after the 16 rounds +ip1 = ( + 40, 8, 48, 16, 56, 24, 64, 32, + 39, 7, 47, 15, 55, 23, 63, 31, + 38, 6, 46, 14, 54, 22, 62, 30, + 37, 5, 45, 13, 53, 21, 61, 29, + 36, 4, 44, 12, 52, 20, 60, 28, + 35, 3, 43, 11, 51, 19, 59, 27, + 34, 2, 42, 10, 50, 18, 58, 26, + 33, 1, 41, 9, 49, 17, 57, 25 + ) +#Expand matrix to get a 48bits matrix of datas to apply the xor with Ki +e = ( + 32, 1, 2, 3, 4, 5, + 4, 5, 6, 7, 8, 9, + 8, 9, 10, 11, 12, 13, + 12, 13, 14, 15, 16, 17, + 16, 17, 18, 19, 20, 21, + 20, 21, 22, 23, 24, 25, + 24, 25, 26, 27, 28, 29, + 28, 29, 30, 31, 32, 1 + ) +box = [ +# Box-1 +[ +[14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7], +[0,15,7,4,14,2,13,1,10,6,12,11,9,5,3,8], +[4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0], +[15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13] +], +# Box-2 + +[ +[15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10], +[3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5], +[0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15], +[13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9] +], + +# Box-3 + +[ +[10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8], +[13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1], +[13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7], +[1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12] + +], + +# Box-4 +[ +[7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15], +[13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9], +[10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4], +[3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14] +], + +# Box-5 +[ +[2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9], +[14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6], +[4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14], +[11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3] +], +# Box-6 + +[ +[12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11], +[10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8], +[9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6], +[4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13] + +], +# Box-7 +[ +[4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1], +[13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6], +[1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2], +[6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12] +], +# Box-8 + +[ +[13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7], +[1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2], +[7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8], +[2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11] +] + +] +#Permut made after each SBox substitution for each round +p = ( + 16, 7, 20, 21, 29, 12, 28, 17, + 1, 15, 23, 26, 5, 18, 31, 10, + 2, 8, 24, 14, 32, 27, 3, 9, + 19, 13, 30, 6, 22, 11, 4, 25 + ) +#Matrix that determine the shift for each round of keys +rk = (1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1) + #This function take input are permutation table and key 64 bit and return key 56 bit -def applyPc1(pc1,key64bits): +def applyPc1(key64bits): key56bits = "" for i in pc1: key56bits += key64bits[i-1] @@ -14,20 +147,20 @@ def leftShift(bits,numBits): result = bits[numBits:]+bits[:numBits] return result #This function tacke input are key 56 bits and compression table and return key 48 bits -def applyPc2(pc2,key56bits): +def applyPc2(key56bits): key48bits = "" for i in pc2: key48bits += key56bits[i-1] return key48bits #This function will return 16 keys -def generateKeys(key64bits,rk,pc1,pc2): +def generateKeys(key64bits): roundKeys = [] - pc1Out = applyPc1(pc1,key64bits) + pc1Out = applyPc1(key64bits) L0,R0 = cutHaftKey56bits(pc1Out) for i in range(16): newL = leftShift(L0,rk[i]) newR = leftShift(R0,rk[i]) - roundKey = applyPc2(pc2,newL+newR) + roundKey = applyPc2(newL+newR) roundKeys.append(roundKey) return roundKeys def XOR(bits1,bits2): @@ -39,7 +172,7 @@ def XOR(bits1,bits2): xorResult += '1' return xorResult #This function take input string 32 bits and return string 48 bits -def applyExpansion(e,bits32): +def applyExpansion(bits32): bits48 = "" for i in e: bits48 += bits32[i-1] @@ -60,36 +193,36 @@ def getFirstLastBit(bits6): return bits6[0]+bits6[-1] def getMiddleBit(bits6): return bits6[1:5] -def boxLookup(box,boxCount,firstLast,middle): +def boxLookup(boxCount,firstLast,middle): dFirstLast = binToDec(firstLast) dMiddle = binToDec(middle) value = box[boxCount][dFirstLast][dMiddle] return decToBin(value) #This function will return string 32 bits -def applyP(p,s32bits): +def applyP(s32bits): result = "" for i in p: result += s32bits[i-1] return result #This is tha F function -def functionF(p,box,e,pre32bits,key48bits): +def functionF(pre32bits,key48bits): result = "" - expanded_left_half = applyExpansion(e,pre32bits) + expanded_left_half = applyExpansion(pre32bits) xor_value = XOR(expanded_left_half,key48bits) bits6list = cutTo6bits(xor_value) for sboxcount, bits6 in enumerate(bits6list): first_last = getFirstLastBit(bits6) middle4 = getMiddleBit(bits6) - sboxvalue = boxLookup(box,sboxcount,first_last,middle4) + sboxvalue = boxLookup(sboxcount,first_last,middle4) result += sboxvalue - final32bits = applyP(p,result) + final32bits = applyP(result) return final32bits +#Some functions convert def textToHex(text): return (text.encode("UTF-8")).hex() def hexToText(hexText): return (bytes.fromhex(hexText)).decode("UTF-8") -#This function will convert hex to bin def hexToBin(hexdigits): bindigits = "" for hexdigit in hexdigits: @@ -102,58 +235,78 @@ def binToHex(text): result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] return result #Use initial permutation table -def applyIp(ip,plaintext): +def applyIp(plaintext): permutated = "" for i in ip: permutated += plaintext[int(i)-1] return permutated def spliHalf(binarybits): return binarybits[:32],binarybits[32:] -def applyIp1(ip1, text): +def applyIp1(text): cipher = "" for index in ip1: cipher += text[int(index)-1] return cipher #encrypt by des -def encryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box): - cipher = "" - # Convert hex digits to binary - plaintext_bits = hexToBin(message) - key_bits = hexToBin(key) - # Generate rounds key - roundkeys = generateKeys(key_bits,rk,pc1,pc2) - - ## initial permutation - p_plaintext = applyIp(ip,plaintext_bits) - ## split in tow half - L,R = spliHalf(p_plaintext) - ## start rounds - for round in range(16): - newR = XOR(L,functionF(p,box,e,R, roundkeys[round])) - newL = R - R = newR - L = newL - cipher = applyIp1(ip1, R+L) - cipher = binToHex(cipher) - return cipher -def decryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box): - text = "" - # Convert hex digits to binary - cipher_bits = hexToBin(message) - key_bits = hexToBin(key) - # Generate rounds key - roundkeys = generateKeys(key_bits,rk,pc1,pc2) - - ## initial permutation - p_plaintext = applyIp(ip,cipher_bits) - ## split in tow half - L,R = spliHalf(p_plaintext) - ## start rounds - for round in range(16): - newR = XOR(L,functionF(p,box,e,R, roundkeys[15-round])) - newL = R - R = newR - L = newL - text = applyIp1(ip1, R+L) - text = binToHex(text) - return text \ No newline at end of file +def encryptDes(message,key): + message = textToHex(message) + key = textToHex(key) + result="" + list64bits = textwrap.wrap(message,16) + for item in list64bits: + cipher = "" + # Convert hex digits to binary + plaintext_bits = hexToBin(item) + key_bits = hexToBin(key) + # Generate rounds key + roundkeys = generateKeys(key_bits) + + ## initial permutation + p_plaintext = applyIp(plaintext_bits) + ## split in tow half + L,R = spliHalf(p_plaintext) + ## start rounds + for round in range(16): + newR = XOR(L,functionF(R, roundkeys[round])) + newL = R + R = newR + L = newL + cipher = applyIp1(R+L) + cipher = binToHex(cipher) + result += cipher + return result +def decryptDes(message,key): + result="" + list64bits = textwrap.wrap(message,16) + key = textToHex(key) + for item in list64bits: + text = "" + # Convert hex digits to binary + plaintext_bits = hexToBin(item) + key_bits = hexToBin(key) + # Generate rounds key + roundkeys = generateKeys(key_bits) + + ## initial permutation + p_plaintext = applyIp(plaintext_bits) + ## split in tow half + L,R = spliHalf(p_plaintext) + ## start rounds + for round in range(16): + newR = XOR(L,functionF(R, roundkeys[15-round])) + newL = R + R = newR + L = newL + text = applyIp1(R+L) + text = binToHex(text) + result += hexToText(text) + return result + + +"""TEST""" +message = 'xin chao cac ban' +key ='hello may cung' +ciphertext = encryptDes(message,key) +print(ciphertext) +text = decryptDes(ciphertext,key) +print(text) \ No newline at end of file diff --git a/3DES/DES/report.txt b/3DES/DES/report.txt new file mode 100644 index 0000000..bfc86a4 --- /dev/null +++ b/3DES/DES/report.txt @@ -0,0 +1,9 @@ +#Mã hóa DES + +Thuật toán Des là gì? + -Des là một thuật toán mã hóa dối xứng, được IBM phát triển từ đầu những năm 1970 + -Des hoạt động vói đầu vào là một key 64 bits và các khối 64 bits cho đầu ra cũng là các khối 64 bits tương ứng sau mã hóa +Các giai đoạn chính: + -Sinh khóa + -Mã hóa + -Giải mã \ No newline at end of file diff --git a/3DES/DES/test.py b/3DES/DES/test.py deleted file mode 100644 index 070b1b2..0000000 --- a/3DES/DES/test.py +++ /dev/null @@ -1,8 +0,0 @@ -from destable import * -from huanlv_code_3DES import * -message = '0123456789ABCDEF' -key ='12345678ABCEDFF9' -ciphertext = encryptDes(message,key,ip,ip1,p,e,rk,pc1,pc2,box) -print(ciphertext) -text = decryptDes(ciphertext,key,ip,ip1,p,e,rk,pc1,pc2,box) -print(text) \ No newline at end of file From 77cc671ae2c9fe3315abb81f9664359cc3e85426 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:26:50 +0900 Subject: [PATCH 30/38] Create sha1.py --- SHA1/sha1.py | 198 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 198 insertions(+) create mode 100644 SHA1/sha1.py diff --git a/SHA1/sha1.py b/SHA1/sha1.py new file mode 100644 index 0000000..fcbc396 --- /dev/null +++ b/SHA1/sha1.py @@ -0,0 +1,198 @@ +#!/usr/bin/env python + +from __future__ import print_function +import struct +import io + +try: + range = xrange +except NameError: + pass + + +def _left_rotate(n, b): + """Left rotate a 32-bit integer n by b bits.""" + return ((n << b) | (n >> (32 - b))) & 0xffffffff + + +def _process_chunk(chunk, h0, h1, h2, h3, h4): + """Process a chunk of data and return the new digest variables.""" + assert len(chunk) == 64 + + w = [0] * 80 + + # Break chunk into sixteen 4-byte big-endian words w[i] + for i in range(16): + w[i] = struct.unpack(b'>I', chunk[i * 4:i * 4 + 4])[0] + + # Extend the sixteen 4-byte words into eighty 4-byte words + for i in range(16, 80): + w[i] = _left_rotate(w[i - 3] ^ w[i - 8] ^ w[i - 14] ^ w[i - 16], 1) + + # Initialize hash value for this chunk + a = h0 + b = h1 + c = h2 + d = h3 + e = h4 + + for i in range(80): + if 0 <= i <= 19: + # Use alternative 1 for f from FIPS PB 180-1 to avoid bitwise not + f = d ^ (b & (c ^ d)) + k = 0x5A827999 + elif 20 <= i <= 39: + f = b ^ c ^ d + k = 0x6ED9EBA1 + elif 40 <= i <= 59: + f = (b & c) | (b & d) | (c & d) + k = 0x8F1BBCDC + elif 60 <= i <= 79: + f = b ^ c ^ d + k = 0xCA62C1D6 + + a, b, c, d, e = ((_left_rotate(a, 5) + f + e + k + w[i]) & 0xffffffff, + a, _left_rotate(b, 30), c, d) + + # Add this chunk's hash to result so far + h0 = (h0 + a) & 0xffffffff + h1 = (h1 + b) & 0xffffffff + h2 = (h2 + c) & 0xffffffff + h3 = (h3 + d) & 0xffffffff + h4 = (h4 + e) & 0xffffffff + + return h0, h1, h2, h3, h4 + + +class Sha1Hash(object): + """A class that mimics that hashlib api and implements the SHA-1 algorithm.""" + + name = 'python-sha1' + digest_size = 20 + block_size = 64 + + def __init__(self): + # Initial digest variables + self._h = ( + 0x67452301, + 0xEFCDAB89, + 0x98BADCFE, + 0x10325476, + 0xC3D2E1F0, + ) + + # bytes object with 0 <= len < 64 used to store the end of the message + # if the message length is not congruent to 64 + self._unprocessed = b'' + # Length in bytes of all data that has been processed so far + self._message_byte_length = 0 + + def update(self, arg): + """Update the current digest. + This may be called repeatedly, even after calling digest or hexdigest. + Arguments: + arg: bytes, bytearray, or BytesIO object to read from. + """ + if isinstance(arg, (bytes, bytearray)): + arg = io.BytesIO(arg) + + # Try to build a chunk out of the unprocessed data, if any + chunk = self._unprocessed + arg.read(64 - len(self._unprocessed)) + + # Read the rest of the data, 64 bytes at a time + while len(chunk) == 64: + self._h = _process_chunk(chunk, *self._h) + self._message_byte_length += 64 + chunk = arg.read(64) + + self._unprocessed = chunk + return self + + def digest(self): + """Produce the final hash value (big-endian) as a bytes object""" + return b''.join(struct.pack(b'>I', h) for h in self._produce_digest()) + + def hexdigest(self): + """Produce the final hash value (big-endian) as a hex string""" + return '%08x%08x%08x%08x%08x' % self._produce_digest() + + def _produce_digest(self): + """Return finalized digest variables for the data processed so far.""" + # Pre-processing: + message = self._unprocessed + message_byte_length = self._message_byte_length + len(message) + + # append the bit '1' to the message + message += b'\x80' + + # append 0 <= k < 512 bits '0', so that the resulting message length (in bytes) + # is congruent to 56 (mod 64) + message += b'\x00' * ((56 - (message_byte_length + 1) % 64) % 64) + + # append length of message (before pre-processing), in bits, as 64-bit big-endian integer + message_bit_length = message_byte_length * 8 + message += struct.pack(b'>Q', message_bit_length) + + # Process the final chunk + # At this point, the length of the message is either 64 or 128 bytes. + h = _process_chunk(message[:64], *self._h) + if len(message) == 64: + return h + return _process_chunk(message[64:], *h) + + +def sha1(data): + """SHA-1 Hashing Function + A custom SHA-1 hashing function implemented entirely in Python. + Arguments: + data: A bytes or BytesIO object containing the input message to hash. + Returns: + A hex SHA-1 digest of the input message. + """ + return Sha1Hash().update(data).hexdigest() + + +if __name__ == '__main__': + # Imports required for command line parsing. No need for these elsewhere + import argparse + import sys + import os + + # Parse the incoming arguments + parser = argparse.ArgumentParser() + parser.add_argument('input', nargs='*', + help='input file or message to hash') + args = parser.parse_args() + + data = None + if len(args.input) == 0: + # No argument given, assume message comes from standard input + try: + # sys.stdin is opened in text mode, which can change line endings, + # leading to incorrect results. Detach fixes this issue, but it's + # new in Python 3.1 + data = sys.stdin.detach() + + except AttributeError: + # Linux ans OSX both use \n line endings, so only windows is a + # problem. + if sys.platform == "win32": + import msvcrt + + msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY) + data = sys.stdin + + # Output to console + print('sha1-digest:', sha1(data)) + + else: + # Loop through arguments list + for argument in args.input: + if (os.path.isfile(argument)): + # An argument is given and it's a valid file. Read it + data = open(argument, 'rb') + + # Show the final digest + print('sha1-digest:', sha1(data)) + else: + print("Error, could not find " + argument + " file." ) From dadc37c31e91743b36152bb6abe43b31913d18c4 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:32:29 +0900 Subject: [PATCH 31/38] Rename sha1.py to sha1.py (reference) --- SHA1/{sha1.py => sha1.py (reference)} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename SHA1/{sha1.py => sha1.py (reference)} (100%) diff --git a/SHA1/sha1.py b/SHA1/sha1.py (reference) similarity index 100% rename from SHA1/sha1.py rename to SHA1/sha1.py (reference) From fa3ed27cf731e0df69432123cb9fdf9a63c90294 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:36:09 +0900 Subject: [PATCH 32/38] Update sha1.py (reference) --- SHA1/sha1.py (reference) | 319 +++++++++++++++++---------------------- 1 file changed, 141 insertions(+), 178 deletions(-) diff --git a/SHA1/sha1.py (reference) b/SHA1/sha1.py (reference) index fcbc396..1d60d10 100644 --- a/SHA1/sha1.py (reference) +++ b/SHA1/sha1.py (reference) @@ -1,198 +1,161 @@ #!/usr/bin/env python +# -*- coding: utf-8 -*- +# SHA1.py +# ---------------------------------------------------------------------- -from __future__ import print_function -import struct -import io - -try: - range = xrange -except NameError: - pass - - -def _left_rotate(n, b): - """Left rotate a 32-bit integer n by b bits.""" - return ((n << b) | (n >> (32 - b))) & 0xffffffff - - -def _process_chunk(chunk, h0, h1, h2, h3, h4): - """Process a chunk of data and return the new digest variables.""" - assert len(chunk) == 64 - - w = [0] * 80 - - # Break chunk into sixteen 4-byte big-endian words w[i] - for i in range(16): - w[i] = struct.unpack(b'>I', chunk[i * 4:i * 4 + 4])[0] - - # Extend the sixteen 4-byte words into eighty 4-byte words - for i in range(16, 80): - w[i] = _left_rotate(w[i - 3] ^ w[i - 8] ^ w[i - 14] ^ w[i - 16], 1) - - # Initialize hash value for this chunk - a = h0 - b = h1 - c = h2 - d = h3 - e = h4 - - for i in range(80): - if 0 <= i <= 19: - # Use alternative 1 for f from FIPS PB 180-1 to avoid bitwise not - f = d ^ (b & (c ^ d)) - k = 0x5A827999 - elif 20 <= i <= 39: - f = b ^ c ^ d - k = 0x6ED9EBA1 - elif 40 <= i <= 59: - f = (b & c) | (b & d) | (c & d) - k = 0x8F1BBCDC - elif 60 <= i <= 79: - f = b ^ c ^ d - k = 0xCA62C1D6 - - a, b, c, d, e = ((_left_rotate(a, 5) + f + e + k + w[i]) & 0xffffffff, - a, _left_rotate(b, 30), c, d) - - # Add this chunk's hash to result so far - h0 = (h0 + a) & 0xffffffff - h1 = (h1 + b) & 0xffffffff - h2 = (h2 + c) & 0xffffffff - h3 = (h3 + d) & 0xffffffff - h4 = (h4 + e) & 0xffffffff - - return h0, h1, h2, h3, h4 - - -class Sha1Hash(object): - """A class that mimics that hashlib api and implements the SHA-1 algorithm.""" - - name = 'python-sha1' - digest_size = 20 - block_size = 64 +import sys +class SHA1: def __init__(self): - # Initial digest variables - self._h = ( + self.__H = [ 0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, - 0xC3D2E1F0, - ) - - # bytes object with 0 <= len < 64 used to store the end of the message - # if the message length is not congruent to 64 - self._unprocessed = b'' - # Length in bytes of all data that has been processed so far - self._message_byte_length = 0 - - def update(self, arg): - """Update the current digest. - This may be called repeatedly, even after calling digest or hexdigest. - Arguments: - arg: bytes, bytearray, or BytesIO object to read from. - """ - if isinstance(arg, (bytes, bytearray)): - arg = io.BytesIO(arg) - - # Try to build a chunk out of the unprocessed data, if any - chunk = self._unprocessed + arg.read(64 - len(self._unprocessed)) - - # Read the rest of the data, 64 bytes at a time - while len(chunk) == 64: - self._h = _process_chunk(chunk, *self._h) - self._message_byte_length += 64 - chunk = arg.read(64) - - self._unprocessed = chunk - return self + 0xC3D2E1F0 + ] + + def __str__(self): + return ''.join((hex(h)[2:]).rjust(8, '0') for h in self.__H) + + # Private static methods used for internal operations. + @staticmethod + def __ROTL(n, x, w=32): + return ((x << n) | (x >> w - n)) + + @staticmethod + def __padding(stream): + l = len(stream) # Bytes + hl = [int((hex(l*8)[2:]).rjust(16, '0')[i:i+2], 16) + for i in range(0, 16, 2)] + + l0 = (56 - l) % 64 + if not l0: + l0 = 64 + + if isinstance(stream, str): + stream += chr(0b10000000) + stream += chr(0)*(l0-1) + for a in hl: + stream += chr(a) + elif isinstance(stream, bytes): + stream += bytes([0b10000000]) + stream += bytes(l0-1) + stream += bytes(hl) + + return stream + + @staticmethod + def __prepare(stream): + M = [] + n_blocks = len(stream) // 64 + + stream = bytearray(stream) + + for i in range(n_blocks): # 64 Bytes per Block + m = [] + + for j in range(16): # 16 Words per Block + n = 0 + for k in range(4): # 4 Bytes per Word + n <<= 8 + n += stream[i*64 + j*4 + k] + + m.append(n) + + M.append(m[:]) + + return M + + @staticmethod + def __debug_print(t, a, b, c, d, e): + print('t = {0} : \t'.format(t), + (hex(a)[2:]).rjust(8, '0'), + (hex(b)[2:]).rjust(8, '0'), + (hex(c)[2:]).rjust(8, '0'), + (hex(d)[2:]).rjust(8, '0'), + (hex(e)[2:]).rjust(8, '0') + ) + + # Private instance methods used for internal operations. + def __process_block(self, block): + MASK = 2**32-1 + + W = block[:] + for t in range(16, 80): + W.append(SHA1.__ROTL(1, (W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16])) + & MASK) + + a, b, c, d, e = self.__H[:] + + for t in range(80): + if t <= 19: + K = 0x5a827999 + f = (b & c) ^ (~b & d) + elif t <= 39: + K = 0x6ed9eba1 + f = b ^ c ^ d + elif t <= 59: + K = 0x8f1bbcdc + f = (b & c) ^ (b & d) ^ (c & d) + else: + K = 0xca62c1d6 + f = b ^ c ^ d - def digest(self): - """Produce the final hash value (big-endian) as a bytes object""" - return b''.join(struct.pack(b'>I', h) for h in self._produce_digest()) + T = ((SHA1.__ROTL(5, a) + f + e + K + W[t]) & MASK) + e = d + d = c + c = SHA1.__ROTL(30, b) & MASK + b = a + a = T - def hexdigest(self): - """Produce the final hash value (big-endian) as a hex string""" - return '%08x%08x%08x%08x%08x' % self._produce_digest() + #SHA1.debug_print(t, a,b,c,d,e) - def _produce_digest(self): - """Return finalized digest variables for the data processed so far.""" - # Pre-processing: - message = self._unprocessed - message_byte_length = self._message_byte_length + len(message) + self.__H[0] = (a + self.__H[0]) & MASK + self.__H[1] = (b + self.__H[1]) & MASK + self.__H[2] = (c + self.__H[2]) & MASK + self.__H[3] = (d + self.__H[3]) & MASK + self.__H[4] = (e + self.__H[4]) & MASK - # append the bit '1' to the message - message += b'\x80' + # Public methods for class use. + def update(self, stream): + stream = SHA1.__padding(stream) + stream = SHA1.__prepare(stream) - # append 0 <= k < 512 bits '0', so that the resulting message length (in bytes) - # is congruent to 56 (mod 64) - message += b'\x00' * ((56 - (message_byte_length + 1) % 64) % 64) + for block in stream: + self.__process_block(block) - # append length of message (before pre-processing), in bits, as 64-bit big-endian integer - message_bit_length = message_byte_length * 8 - message += struct.pack(b'>Q', message_bit_length) + def digest(self): + pass - # Process the final chunk - # At this point, the length of the message is either 64 or 128 bytes. - h = _process_chunk(message[:64], *self._h) - if len(message) == 64: - return h - return _process_chunk(message[64:], *h) + def hexdigest(self): + s = '' + for h in self.__H: + s += (hex(h)[2:]).rjust(8, '0') + return s +def usage(): + print('Usage: python SHA1.py [ ...]') + sys.exit() -def sha1(data): - """SHA-1 Hashing Function - A custom SHA-1 hashing function implemented entirely in Python. - Arguments: - data: A bytes or BytesIO object containing the input message to hash. - Returns: - A hex SHA-1 digest of the input message. - """ - return Sha1Hash().update(data).hexdigest() +def main(): + if len(sys.argv) < 2: + usage() -if __name__ == '__main__': - # Imports required for command line parsing. No need for these elsewhere - import argparse - import sys - import os - - # Parse the incoming arguments - parser = argparse.ArgumentParser() - parser.add_argument('input', nargs='*', - help='input file or message to hash') - args = parser.parse_args() - - data = None - if len(args.input) == 0: - # No argument given, assume message comes from standard input + for filename in sys.argv[1:]: try: - # sys.stdin is opened in text mode, which can change line endings, - # leading to incorrect results. Detach fixes this issue, but it's - # new in Python 3.1 - data = sys.stdin.detach() - - except AttributeError: - # Linux ans OSX both use \n line endings, so only windows is a - # problem. - if sys.platform == "win32": - import msvcrt - - msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY) - data = sys.stdin - - # Output to console - print('sha1-digest:', sha1(data)) - - else: - # Loop through arguments list - for argument in args.input: - if (os.path.isfile(argument)): - # An argument is given and it's a valid file. Read it - data = open(argument, 'rb') - - # Show the final digest - print('sha1-digest:', sha1(data)) - else: - print("Error, could not find " + argument + " file." ) + with open(filename, 'rb') as f: + content = f.read() + + except: + print ('ERROR: Input file "{0}" cannot be read.'.format(filename)) + + else: + h = SHA1() + h.update(content) + hex_sha = h.hexdigest() + print("{0} {1}".format(hex_sha, filename)) + +if __name__ == '__main__': + main() From 7536ca39c6cb88f10a3824b162c56ae1504bfc82 Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:44:05 +0900 Subject: [PATCH 33/38] Rename sha1.py (reference) to sha1.py --- SHA1/{sha1.py (reference) => sha1.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename SHA1/{sha1.py (reference) => sha1.py} (100%) diff --git a/SHA1/sha1.py (reference) b/SHA1/sha1.py similarity index 100% rename from SHA1/sha1.py (reference) rename to SHA1/sha1.py From 638a56c890f566aca0b251949a8fb889b489c89e Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:51:46 +0900 Subject: [PATCH 34/38] Update sha1.py --- SHA1/sha1.py | 213 +++++++++++++++------------------------------------ 1 file changed, 60 insertions(+), 153 deletions(-) diff --git a/SHA1/sha1.py b/SHA1/sha1.py index 1d60d10..abb2a6a 100644 --- a/SHA1/sha1.py +++ b/SHA1/sha1.py @@ -1,161 +1,68 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# SHA1.py -# ---------------------------------------------------------------------- - -import sys - -class SHA1: - def __init__(self): - self.__H = [ - 0x67452301, - 0xEFCDAB89, - 0x98BADCFE, - 0x10325476, - 0xC3D2E1F0 - ] - - def __str__(self): - return ''.join((hex(h)[2:]).rjust(8, '0') for h in self.__H) - - # Private static methods used for internal operations. - @staticmethod - def __ROTL(n, x, w=32): - return ((x << n) | (x >> w - n)) - - @staticmethod - def __padding(stream): - l = len(stream) # Bytes - hl = [int((hex(l*8)[2:]).rjust(16, '0')[i:i+2], 16) - for i in range(0, 16, 2)] - - l0 = (56 - l) % 64 - if not l0: - l0 = 64 - - if isinstance(stream, str): - stream += chr(0b10000000) - stream += chr(0)*(l0-1) - for a in hl: - stream += chr(a) - elif isinstance(stream, bytes): - stream += bytes([0b10000000]) - stream += bytes(l0-1) - stream += bytes(hl) - - return stream - - @staticmethod - def __prepare(stream): - M = [] - n_blocks = len(stream) // 64 - - stream = bytearray(stream) - - for i in range(n_blocks): # 64 Bytes per Block - m = [] - - for j in range(16): # 16 Words per Block - n = 0 - for k in range(4): # 4 Bytes per Word - n <<= 8 - n += stream[i*64 + j*4 + k] - - m.append(n) - - M.append(m[:]) - - return M - - @staticmethod - def __debug_print(t, a, b, c, d, e): - print('t = {0} : \t'.format(t), - (hex(a)[2:]).rjust(8, '0'), - (hex(b)[2:]).rjust(8, '0'), - (hex(c)[2:]).rjust(8, '0'), - (hex(d)[2:]).rjust(8, '0'), - (hex(e)[2:]).rjust(8, '0') - ) - - # Private instance methods used for internal operations. - def __process_block(self, block): - MASK = 2**32-1 - - W = block[:] - for t in range(16, 80): - W.append(SHA1.__ROTL(1, (W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16])) - & MASK) - - a, b, c, d, e = self.__H[:] - - for t in range(80): - if t <= 19: - K = 0x5a827999 - f = (b & c) ^ (~b & d) - elif t <= 39: - K = 0x6ed9eba1 +def sha1(data): + bytes = "" + + h0 = 0x67452301 + h1 = 0xEFCDAB89 + h2 = 0x98BADCFE + h3 = 0x10325476 + h4 = 0xC3D2E1F0 + + for n in range(len(data)): + bytes+='{0:08b}'.format(ord(data[n])) + bits = bytes+"1" + pBits = bits + #pad until length equals 448 mod 512 + while len(pBits)%512 != 448: + pBits+="0" + #append the original length + pBits+='{0:064b}'.format(len(bits)-1) + + def chunks(l, n): + return [l[i:i+n] for i in range(0, len(l), n)] + + def rol(n, b): + return ((n << b) | (n >> (32 - b))) & 0xffffffff + + for c in chunks(pBits, 512): + words = chunks(c, 32) + w = [0]*80 + for n in range(0, 16): + w[n] = int(words[n], 2) + for i in range(16, 80): + w[i] = rol((w[i-3] ^ w[i-8] ^ w[i-14] ^ w[i-16]), 1) + + a = h0 + b = h1 + c = h2 + d = h3 + e = h4 + #Main loop + for i in range(0, 80): + if 0 <= i <= 19: + f = (b & c) | ((~b) & d) + k = 0x5A827999 + elif 20 <= i <= 39: f = b ^ c ^ d - elif t <= 59: - K = 0x8f1bbcdc - f = (b & c) ^ (b & d) ^ (c & d) - else: - K = 0xca62c1d6 + k = 0x6ED9EBA1 + elif 40 <= i <= 59: + f = (b & c) | (b & d) | (c & d) + k = 0x8F1BBCDC + elif 60 <= i <= 79: f = b ^ c ^ d + k = 0xCA62C1D6 - T = ((SHA1.__ROTL(5, a) + f + e + K + W[t]) & MASK) + temp = rol(a, 5) + f + e + k + w[i] & 0xffffffff e = d d = c - c = SHA1.__ROTL(30, b) & MASK + c = rol(b, 30) b = a - a = T - - #SHA1.debug_print(t, a,b,c,d,e) - - self.__H[0] = (a + self.__H[0]) & MASK - self.__H[1] = (b + self.__H[1]) & MASK - self.__H[2] = (c + self.__H[2]) & MASK - self.__H[3] = (d + self.__H[3]) & MASK - self.__H[4] = (e + self.__H[4]) & MASK - - # Public methods for class use. - def update(self, stream): - stream = SHA1.__padding(stream) - stream = SHA1.__prepare(stream) - - for block in stream: - self.__process_block(block) - - def digest(self): - pass - - def hexdigest(self): - s = '' - for h in self.__H: - s += (hex(h)[2:]).rjust(8, '0') - return s - -def usage(): - print('Usage: python SHA1.py [ ...]') - sys.exit() - -def main(): - - if len(sys.argv) < 2: - usage() - - for filename in sys.argv[1:]: - try: - with open(filename, 'rb') as f: - content = f.read() - - except: - print ('ERROR: Input file "{0}" cannot be read.'.format(filename)) + a = temp - else: - h = SHA1() - h.update(content) - hex_sha = h.hexdigest() - print("{0} {1}".format(hex_sha, filename)) + h0 = h0 + a & 0xffffffff + h1 = h1 + b & 0xffffffff + h2 = h2 + c & 0xffffffff + h3 = h3 + d & 0xffffffff + h4 = h4 + e & 0xffffffff + return '%08x%08x%08x%08x%08x' % (h0, h1, h2, h3, h4) -if __name__ == '__main__': - main() +print sha1("hello world") From b29527675c28a69e605705a7ac1eea004eb332df Mon Sep 17 00:00:00 2001 From: namtranvn <33787604+namtranvn@users.noreply.github.com> Date: Thu, 26 Jul 2018 21:56:30 +0900 Subject: [PATCH 35/38] Update sha1.py --- SHA1/sha1.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SHA1/sha1.py b/SHA1/sha1.py index abb2a6a..a0e1490 100644 --- a/SHA1/sha1.py +++ b/SHA1/sha1.py @@ -64,5 +64,5 @@ def rol(n, b): h3 = h3 + d & 0xffffffff h4 = h4 + e & 0xffffffff return '%08x%08x%08x%08x%08x' % (h0, h1, h2, h3, h4) - -print sha1("hello world") + +print (sha1("hello world")) From 0e4d06c298a228165da8b640cddd1208a3568b13 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Thu, 26 Jul 2018 21:19:44 +0700 Subject: [PATCH 36/38] Report 3DES cipher --- 3DES/DES/report.txt | 9 --------- 3DES/{DES => }/huanlv_code_3DES.py | 24 ++++++++++++++++++------ 3DES/report 3DES cipher.txt | 23 +++++++++++++++++++++++ huanlv_report.txt | 2 +- 4 files changed, 42 insertions(+), 16 deletions(-) delete mode 100644 3DES/DES/report.txt rename 3DES/{DES => }/huanlv_code_3DES.py (93%) create mode 100644 3DES/report 3DES cipher.txt diff --git a/3DES/DES/report.txt b/3DES/DES/report.txt deleted file mode 100644 index bfc86a4..0000000 --- a/3DES/DES/report.txt +++ /dev/null @@ -1,9 +0,0 @@ -#Mã hóa DES - -Thuật toán Des là gì? - -Des là một thuật toán mã hóa dối xứng, được IBM phát triển từ đầu những năm 1970 - -Des hoạt động vói đầu vào là một key 64 bits và các khối 64 bits cho đầu ra cũng là các khối 64 bits tương ứng sau mã hóa -Các giai đoạn chính: - -Sinh khóa - -Mã hóa - -Giải mã \ No newline at end of file diff --git a/3DES/DES/huanlv_code_3DES.py b/3DES/huanlv_code_3DES.py similarity index 93% rename from 3DES/DES/huanlv_code_3DES.py rename to 3DES/huanlv_code_3DES.py index 99b966c..465fffd 100644 --- a/3DES/DES/huanlv_code_3DES.py +++ b/3DES/huanlv_code_3DES.py @@ -249,7 +249,6 @@ def applyIp1(text): return cipher #encrypt by des def encryptDes(message,key): - message = textToHex(message) key = textToHex(key) result="" list64bits = textwrap.wrap(message,16) @@ -299,14 +298,27 @@ def decryptDes(message,key): L = newL text = applyIp1(R+L) text = binToHex(text) - result += hexToText(text) + #result += hexToText(text) + result += text return result - +def encrypt3Des(message,key): + message = textToHex(message) + listKey = textwrap.wrap(key,8) + temp1 = encryptDes(message,listKey[0]) + temp2 = decryptDes(temp1,listKey[1]) + temp3 = encryptDes(temp2,listKey[2]) + return temp3 +def decrypt3Des(message,key): + listKey = textwrap.wrap(key,8) + temp1 = decryptDes(message,listKey[2]) + temp2 = encryptDes(temp1,listKey[1]) + temp3 = decryptDes(temp2,listKey[0]) + return hexToText(temp3) """TEST""" message = 'xin chao cac ban' -key ='hello may cung' -ciphertext = encryptDes(message,key) +key ='12345678abcdefgh12345678' +ciphertext = encrypt3Des(message,key) print(ciphertext) -text = decryptDes(ciphertext,key) +text = decrypt3Des(ciphertext,key) print(text) \ No newline at end of file diff --git a/3DES/report 3DES cipher.txt b/3DES/report 3DES cipher.txt new file mode 100644 index 0000000..fb8eca0 --- /dev/null +++ b/3DES/report 3DES cipher.txt @@ -0,0 +1,23 @@ +# Mã hóa Triple DES +* Người thực hiện: Lại Văn Huân + +#Lý thuyết +**Triple DES là gì? + -Triple DES là một biến thể của DES, được ra đời sau khi mã hóa DES không còn an toàn từ năm 1990 + -Hoạt động của Triple DES thực chất vẫn dựa trên thuật toán DES, thay vì chỉ mã hóa một lần thì Triple DES đã thực +hiện 3 lần gồm mã hóa và giải mã của thuật toán DES +**Triple DES hoạt động dựa vào 3 bước: + -Sinh khóa + -Mã hóa + -Giải mã +[+]Sinh khóa: + -Khóa chính đưa vào sẽ có độ dài 64*3 bits => chia thành 3 khóa con là key1, key2, key3 + -Các nhóm khóa con 48 bits được sinh ra từ key1, key2, key3 dựa trên thuật toán sinh khóa của DES +[+]Mã hóa: + -Quá trình mã hóa là tập hợp 3 bước liên tục của thuật toán DES: + +Mã hóa với key1 + +Giải mã với key2 + +Mã hóa với key3 +[+]Giải mã: + -Đảo ngược quá trình mã hóa ta sẽ được chuỗi sau giải mã. + diff --git a/huanlv_report.txt b/huanlv_report.txt index 2a19c6d..5e66c0b 100644 --- a/huanlv_report.txt +++ b/huanlv_report.txt @@ -1,4 +1,4 @@ 23/07-Hoàn thành code mô phỏng thuật toán Caesar 24/07-Tìm hiểu thuật toán des và viết một số hàm cần thiết cho thuật toán des 25/07-Hoàn thiện các hàm cần thiết, viết hàm sinh keys thuật toán des -26/07-Hoàn thiệt hàm mã hóa và giải mã thuật toán des \ No newline at end of file +26/07-Hoàn thiệt hàm mã hóa và giải mã thuật toán 3des \ No newline at end of file From 6511978930d298bb5a9bfcbc58ac0c22636c6462 Mon Sep 17 00:00:00 2001 From: Lai Huan Date: Tue, 31 Jul 2018 10:59:40 +0700 Subject: [PATCH 37/38] update comment --- 3DES/huanlv_code_3DES.py | 107 +++++++++++++++++++++++---------------- 3DES/run.png | Bin 0 -> 25136 bytes 2 files changed, 64 insertions(+), 43 deletions(-) create mode 100644 3DES/run.png diff --git a/3DES/huanlv_code_3DES.py b/3DES/huanlv_code_3DES.py index 465fffd..7e38143 100644 --- a/3DES/huanlv_code_3DES.py +++ b/3DES/huanlv_code_3DES.py @@ -1,5 +1,12 @@ -#Some usage tables for DES algorithm -#Initial permut made on the key +""" + Hướng dẫn cài đặt thuật toán: + + Sử dụng ngôn ngữ python để chạy mã code (version 3.7) + + Sau khi tải về mở powershell/termiral tại thư mục chứ file mã code + + Chạy lệnh " python huanlv_code_3DES.py " để quan sát +""" + +# Một số bảng cần dùng cho thuật toán 3DES +# Bảng hoán vị pc-1 pc1 = ( 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, @@ -10,7 +17,7 @@ 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4 ) -#Permut applied on shifted key to get Ki+1 +# Bảng hoán vị pc-2 pc2 = ( 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, @@ -20,7 +27,7 @@ 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32 ) -#Initial permut matrix for the datas +# Bảng hoán vị đầu ip = ( 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4, @@ -31,7 +38,7 @@ 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7 ) -#Final permut for datas after the 16 rounds +# Bảng hoán vị sau cùng ip1 = ( 40, 8, 48, 16, 56, 24, 64, 32, 39, 7, 47, 15, 55, 23, 63, 31, @@ -42,7 +49,7 @@ 34, 2, 42, 10, 50, 18, 58, 26, 33, 1, 41, 9, 49, 17, 57, 25 ) -#Expand matrix to get a 48bits matrix of datas to apply the xor with Ki +# Bảng hoán vị mở rộng e = ( 32, 1, 2, 3, 4, 5, 4, 5, 6, 7, 8, 9, @@ -53,6 +60,7 @@ 24, 25, 26, 27, 28, 29, 28, 29, 30, 31, 32, 1 ) +# Các bảng s-Box box = [ # Box-1 [ @@ -121,38 +129,38 @@ ] ] -#Permut made after each SBox substitution for each round +# Bảng hoán vị P p = ( 16, 7, 20, 21, 29, 12, 28, 17, 1, 15, 23, 26, 5, 18, 31, 10, 2, 8, 24, 14, 32, 27, 3, 9, 19, 13, 30, 6, 22, 11, 4, 25 ) -#Matrix that determine the shift for each round of keys +# Bảng dịch chuyển bit rk = (1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1) -#This function take input are permutation table and key 64 bit and return key 56 bit +# Hàm tạo ra key 56 bits từ key 64 bits và bảng hoán vị pc1 def applyPc1(key64bits): key56bits = "" for i in pc1: key56bits += key64bits[i-1] return key56bits -#This function will cut key 56 bits to 2 keys 28 bits +# Hàm cắt key 56 bits thành 2 key 28 bits def cutHaftKey56bits(key56bits): leftKey = key56bits[:28] rightKey = key56bits[28:] return leftKey,rightKey -#This function will shift left bit by number of bits +# Hàm dịch bit def leftShift(bits,numBits): result = bits[numBits:]+bits[:numBits] return result -#This function tacke input are key 56 bits and compression table and return key 48 bits +# Hàm tạo key 48 bits từ key 56 bits và bảng pc2 def applyPc2(key56bits): key48bits = "" for i in pc2: key48bits += key56bits[i-1] return key48bits -#This function will return 16 keys +# Hàm tạo key (sẽ tạo ra 16 key) def generateKeys(key64bits): roundKeys = [] pc1Out = applyPc1(key64bits) @@ -171,24 +179,18 @@ def XOR(bits1,bits2): else: xorResult += '1' return xorResult -#This function take input string 32 bits and return string 48 bits +# hàm nâng độ dài key từ 32 bit len 48 bit def applyExpansion(bits32): bits48 = "" for i in e: bits48 += bits32[i-1] return bits48 -#This function cut strign 48 bits to 6 bits +# Hàm cắt key 48 bít thành các dãy 6 bits import textwrap def cutTo6bits(str48bits): result = textwrap.wrap(str48bits,6) return result -#Some functions to support -def binToDec(bina): - decimal = int(bina,2) - return decimal -def decToBin(deci): - bin4bits = bin(deci)[2:].zfill(4) - return bin4bits +# Một số hàm hỗ trợ def getFirstLastBit(bits6): return bits6[0]+bits6[-1] def getMiddleBit(bits6): @@ -199,13 +201,13 @@ def boxLookup(boxCount,firstLast,middle): value = box[boxCount][dFirstLast][dMiddle] return decToBin(value) -#This function will return string 32 bits +# Sử dụng bảng hoán vị p để hoán vị khối 32 bits(Khối L và R) def applyP(s32bits): result = "" for i in p: result += s32bits[i-1] return result -#This is tha F function +# HÀM F def functionF(pre32bits,key48bits): result = "" expanded_left_half = applyExpansion(pre32bits) @@ -218,7 +220,13 @@ def functionF(pre32bits,key48bits): result += sboxvalue final32bits = applyP(result) return final32bits -#Some functions convert +#Một số hàm chuyển đổi giữa các kiểu dữ liệu +def binToDec(bina): + decimal = int(bina,2) + return decimal +def decToBin(deci): + bin4bits = bin(deci)[2:].zfill(4) + return bin4bits def textToHex(text): return (text.encode("UTF-8")).hex() def hexToText(hexText): @@ -234,7 +242,7 @@ def binToHex(text): for i in range(0,len(text),4): result += lookup[text[i]+text[i+1]+text[i+2]+text[i+3]] return result -#Use initial permutation table +#Sử dụng bảng hoán vị Ip def applyIp(plaintext): permutated = "" for i in ip: @@ -247,24 +255,24 @@ def applyIp1(text): for index in ip1: cipher += text[int(index)-1] return cipher -#encrypt by des +"""MÃ HÓA VÀ GIẢI MÃ THEO THUẬT TOÁN DES""" def encryptDes(message,key): key = textToHex(key) result="" list64bits = textwrap.wrap(message,16) for item in list64bits: cipher = "" - # Convert hex digits to binary + # Chuyển key và message cần mã háo sang dạng nhị phân plaintext_bits = hexToBin(item) key_bits = hexToBin(key) - # Generate rounds key + # Tạo key cho 16 vòng lặp roundkeys = generateKeys(key_bits) - ## initial permutation + # Áp dụng bảng hoán vị Ip p_plaintext = applyIp(plaintext_bits) - ## split in tow half + ## Chia p_plaintext thành 2 nửa trái và phải L,R = spliHalf(p_plaintext) - ## start rounds + ## Mã hóa for round in range(16): newR = XOR(L,functionF(R, roundkeys[round])) newL = R @@ -280,17 +288,17 @@ def decryptDes(message,key): key = textToHex(key) for item in list64bits: text = "" - # Convert hex digits to binary + # Chuyển key và message cần mã háo sang dạng nhị phân plaintext_bits = hexToBin(item) key_bits = hexToBin(key) - # Generate rounds key + # Tạo key cho 16 vòng lặp roundkeys = generateKeys(key_bits) - ## initial permutation + # Áp dụng bảng hoán vị Ip p_plaintext = applyIp(plaintext_bits) - ## split in tow half + ## Chia p_plaintext thành 2 nửa trái và phải L,R = spliHalf(p_plaintext) - ## start rounds + ## Giải mã for round in range(16): newR = XOR(L,functionF(R, roundkeys[15-round])) newL = R @@ -301,6 +309,7 @@ def decryptDes(message,key): #result += hexToText(text) result += text return result +"""MÃ HÓA VÀ GIẢI MÃ THEO THUẬT TOÁN 3DES""" def encrypt3Des(message,key): message = textToHex(message) listKey = textwrap.wrap(key,8) @@ -316,9 +325,21 @@ def decrypt3Des(message,key): return hexToText(temp3) """TEST""" -message = 'xin chao cac ban' -key ='12345678abcdefgh12345678' -ciphertext = encrypt3Des(message,key) -print(ciphertext) -text = decrypt3Des(ciphertext,key) -print(text) \ No newline at end of file +check = True +while check: + print("""Enter your chose:\n\t1. Encode\n\t2. Decode\n\t3. Exit""") + chose = input("Your chose is: ") + if chose == '1': + key = input("[+]Enter your key: ") + text = input("[+]The text you want encode: ") + ciphertext = encrypt3Des(text,key) + print("*The text after encode: ",ciphertext+"\n"+"*"*35) + elif chose == '2': + key = input("[+]Enter your key: ") + text = input("[+]The text you want decode: ") + plaintext = decrypt3Des(text,key) + print("*The text after decode: ",plaintext+"\n"+"*"*35) + elif chose == '3': + check = False + else: + print("ERROR! You must chose 1,2 or 3.\n"+"*"*35) \ No newline at end of file diff --git a/3DES/run.png b/3DES/run.png new file mode 100644 index 0000000000000000000000000000000000000000..b521fe5fc134dd0630dc8a5d954c7b88494dd01b GIT binary patch literal 25136 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 Q+-b3>T|->OE1L)X4>I@{BLDyZ literal 0 HcmV?d00001 From 68fbe97e6cba765fc58795b326e4ce7c96be8d53 Mon Sep 17 00:00:00 2001 From: nguyenmaihuong2051989 <41557599+nguyenmaihuong2051989@users.noreply.github.com> Date: Tue, 31 Jul 2018 16:26:39 +0700 Subject: [PATCH 38/38] Add files via upload --- huongnm_code_Ripemd | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 huongnm_code_Ripemd diff --git a/huongnm_code_Ripemd b/huongnm_code_Ripemd new file mode 100644 index 0000000..5efed8a --- /dev/null +++ b/huongnm_code_Ripemd @@ -0,0 +1,13 @@ +import hashlib +# from Crypto.Cipher import AES +# from Crypto.Hash import SHA256 +print("thuat toan ripemd160") +#thực hiện băm public key với SHA256 và ra kết quả RIPEMD – 160 +hash_256 = hashlib.sha256() +hash_str = "abcdefg" +hash_256.update(hash_str.encode('utf-8')) +hash_256_value = hash_256.hexdigest() +obj = hashlib.new('ripemd160', hash_256_value.encode('utf-8')) +ripemd_160_value = obj.hexdigest() +print("sha256:", hash_256_value) +print("ripemd160 :", ripemd_160_value) \ No newline at end of file