From 0e82f16d203e9a7c5e61a43fd0a9d6fae43dbe41 Mon Sep 17 00:00:00 2001 From: bda-nt Date: Thu, 11 Nov 2021 18:39:11 +0500 Subject: [PATCH 1/5] 1 commit --- filter.py | 54 ++++++++++++++++++++++++++++-------------------------- res.jpg | Bin 65485 -> 32167 bytes 2 files changed, 28 insertions(+), 26 deletions(-) diff --git a/filter.py b/filter.py index f7fa90e..605d7a4 100644 --- a/filter.py +++ b/filter.py @@ -1,28 +1,30 @@ from PIL import Image import numpy as np -img = Image.open("img2.jpg") -arr = np.array(img) -a = len(arr) -a1 = len(arr[1]) -i = 0 -while i < a - 11: - j = 0 - while j < a1 - 11: - s = 0 - for n in range(i, i + 10): - for n1 in range(j, j + 10): - n1 = arr[n][n1][0] - n2 = arr[n][n1][1] - n3 = arr[n][n1][2] - M = n1 + n2 + n3 - s += M - s = int(s // 100) - for n in range(i, i + 10): - for n1 in range(j, j + 10): - arr[n][n1][0] = int(s // 50) * 50 - arr[n][n1][1] = int(s // 50) * 50 - arr[n][n1][2] = int(s // 50) * 50 - j = j + 10 - i = i + 10 -res = Image.fromarray(arr) -res.save('res.jpg') + +if __name__ == "__main__": + img = Image.open("img2.jpg") + arr = np.array(img) + a = len(arr) + a1 = len(arr[1]) + i = 0 + while i < a - 1: + j = 0 + while j < a1 - 1: + s = 0 + for n in range(i, i + 10): + for n0 in range(j, j + 10): + n1 = arr[n][n0][0] + n2 = arr[n][n0][1] + n3 = arr[n][n0][2] + M = n1 + n2 + n3 + s += M + s = int(s // 100) + for n in range(i, i + 10): + for n1 in range(j, j + 10): + arr[n][n1][0] = int(s // 50) * 50 / 3 + arr[n][n1][1] = int(s // 50) * 50 / 3 + arr[n][n1][2] = int(s // 50) * 50 / 3 + j = j + 10 + i = i + 10 + res = Image.fromarray(np.uint8(arr)) + res.save('res.jpg') diff --git a/res.jpg b/res.jpg index d8d97ffbcda90f190e9bf8b3376be16b3b9a1620..0f78001a67fdfdc8a76f2974ff41f1db1dca8384 100644 GIT binary patch literal 32167 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 I0eiIZZwew>%>V!Z literal 65485 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 From c31ca7803927a625a46c702351e1007260cf29e7 Mon Sep 17 00:00:00 2001 From: bda-nt Date: Thu, 11 Nov 2021 19:46:25 +0500 Subject: [PATCH 2/5] 2 commit --- filter.py | 62 +++++++++++++++++++++++++++++++++--------------------- res.jpg | Bin 32167 -> 56078 bytes 2 files changed, 38 insertions(+), 24 deletions(-) diff --git a/filter.py b/filter.py index 605d7a4..24a618a 100644 --- a/filter.py +++ b/filter.py @@ -1,30 +1,44 @@ from PIL import Image import numpy as np -if __name__ == "__main__": - img = Image.open("img2.jpg") - arr = np.array(img) - a = len(arr) - a1 = len(arr[1]) + +def get_mosaice_image(image, mosaice_size=10, gradation=4): + threshold = 255 // gradation + processed_image = np.array(image) + image_length = len(processed_image) + image_height = len(processed_image[1]) i = 0 - while i < a - 1: + while i < image_length - 1: j = 0 - while j < a1 - 1: - s = 0 - for n in range(i, i + 10): - for n0 in range(j, j + 10): - n1 = arr[n][n0][0] - n2 = arr[n][n0][1] - n3 = arr[n][n0][2] - M = n1 + n2 + n3 - s += M - s = int(s // 100) - for n in range(i, i + 10): - for n1 in range(j, j + 10): - arr[n][n1][0] = int(s // 50) * 50 / 3 - arr[n][n1][1] = int(s // 50) * 50 / 3 - arr[n][n1][2] = int(s // 50) * 50 / 3 - j = j + 10 - i = i + 10 - res = Image.fromarray(np.uint8(arr)) + while j < image_height - 1: + matrix_sum = get_matrix_sum(processed_image, mosaice_size, i, j) + average_color = int(matrix_sum // (mosaice_size ** 2)) + set_color(int(average_color // threshold) * threshold / 3, processed_image, i, j, mosaice_size) + j += mosaice_size + i += mosaice_size + + return Image.fromarray(np.uint8(processed_image)) + + +def get_matrix_sum(source_color, size, i, j, ): + color_sum = 0 + for sector_i in range(i, i + size): + for sector_j in range(j, j + size): + M = 0 + for color_id in range(3): + M += source_color[sector_i][sector_j][color_id] + color_sum += M + return color_sum + + +def set_color(new_color, source_color, i, j, size): + for sector_i in range(i, i + size): + for sector_j in range(j, j + size): + for color_id in range(3): + source_color[sector_i][sector_j][color_id] = new_color + + +if __name__ == "__main__": + img = Image.open("img2.jpg") + res = get_mosaice_image(img) res.save('res.jpg') diff --git a/res.jpg b/res.jpg index 0f78001a67fdfdc8a76f2974ff41f1db1dca8384..f50066a905fb74a18ad040fac8c2d3d1cc6b240e 100644 GIT binary patch literal 56078 zcmbTe2UrvB);2mJ6lo$&dJ~jtp@WpfLRSdAg91wL9fSlFP^34N8hQ;ydJ~i;AVqrb zy-Jr7ID_x|?!B-5egA)*bK*5K$z($E%=4_Z?)zSAc`WDdJMkcY9>CuZ2o4k%51-%)ArUcnLHRWR2LgrS;6m~6aB;z_eZcntTyi`L zHvR|rl&a4OZa7j2_(i5(VSiZim0IoRFAhNyCx1es>ol}<^fzyDa&hwr35$q|iQj+p zSVmS(UO`b^LsLszM_13(?8QrS3rj0!7gslT4^OYxZvp~?-o6WtijIkm`|$Bod|G-& zW>$7iZrZQt8F`uYb3hlWQ+$7bi|7Z#V6S60_{cK7xV4v&5x zpInX$0zm&77P$XwVE;8Pa&TNYxVTVUg3ED1aNNNSN{)-i#*a_&K$YORBjpVNzbjM^ zBU4Mh60!@b{h~H;`bl)1LumHq&gIbljO_p2!2JJzjqG0o`}erU01_w!oIEHw00VxV zaHXM${%fOstFbVbB0~kJUT%sIDTwe(35TxGH#^(#Yi)Ed4anOu68h%H$3}y|*D!nRtmIZvu_Jl-uyW>v-GF)88UYhD#_Ss z2G2`;ya4ou0&pF9xEh&qAgV;mV!1$j3qaYck%tBxyMQa1vZPWPC5_o>{&ivdztGHh zz&+Uq1i?|kTtM1CTeQJ%)0LbzjMZ|6o0K7uj&bUK_4`;{O;3*^A#brnAg~kxx(GEJL+YJh*ce zqBESL%nxUNhc=e+J`BHYU^AZ7=-%^NYtS>L$@Zmw$|g*DmBBtXyav`_6w6>AsxSVX zfW02LAIycu0ku3&=C4-mH)Ha|Kq66M9dhXzVhd0UEVNaDpeWaf8Fv#?@{61?$tOv z+!gA;F_)h2Lorbqb0629XfXS8`POHpb0PBPAN$<$so146jaZvi|Wb50!SWS&j@ zNsCv_l!uTY0;~!r_Ts%l+o)<8`Z6_vtKe0dWBl=Yf2|9gU~Xc-QwR{WrE9s@9w7_U zd(LriE8g(IS0SJ*#4V(sX)iP@O&}~F6i`|^^(_lI4dhq#e7}yMVRdRn@lm3l3U*xp z<_9^ieq!ep>U}J5kfPX>q43LHeyM*pL43HgS4ubPj%UNhdD-QzT;=ja4FC6bF*LES z{V5E?e7So7es=0h8RP|nLpQ$~udR5CI)&fQx7l{~+bowK|1ymc*LU-1(bR^>stC>U zgoVPd=dPW~@@qb#5R6ul175Yo17$^3^VFRll~4D|x{T~a>B=MK?K8}$YHm8Hba>{C z#lS53@63-d*4?R++RZRQNt%AGG#+KKJ(ipn?cA=Uojf=wvhO$BE6W#m4E@D!DkYFs z_o$^pn_h0@Q0~xJ)b~{y{)X*(<@(8Rwug#lu#ccZ<*8C#*3dnTtu^-LV+4V=3>5~5PEz}N7t(_xx>y9v#$1V5D@^T{#3EPP}t+`7%fI_|ZL2PizZUsj>mZk5X}cTZ;Sy8wDQut#U*u%->E zwd9~QCB}-VE=%UFPaK=DCPSBN8C;s|8o0|u0Gdd9%zlhjW6y22G^u*SXFXxk!ejm3ll4<%zx7?!$W=t|KX>^5bi@n(uNe0y<{<>& z8M!l+p3DM7yG=zyC>AQEo?8_*1@qICFFtEa`Q#31IoMwgUEF1&kS5IJ#* zz!e#4Urg4=xKxPndv5N*CJ&g?vir-9wI=<{PM53qnFq&KPhJ%p2-dRUIerC$8j5>W zPlLtG-*(pyH_^;APx=-a9 zy22Cm@k?L8NeasnoG`|hSJKq*Y*ja z8SdkoI#XAN3Qc!3uJsyQ^ea)wQyB=HHJWb~HPjmpx~}VcYr2P- z5c@SU2Th^wTk*azrd{2MAQ3h2;<*5JG<|zoYpm^?X?z;|kiYYQb*?B7H}b9bskTu%5#DV;Ef6nINQUDLB3<~laubit!w!v^UL1t%1Mv4y zZEegayqs&ITe1E)u)p$HJ*nrYUaqLG_I|!IRDl>JC*7b2>@noKgdrgIwaHeAhmI4h za(saJ%&>FLYQONei1s5XmE6NZWe@sEXf-Zn7#GxUSSW{LYqhC8)*vJj`*YKvG{?ZC z-e~nn@ss?oW?@+*NZZ62- zuTLDTsgf@%Y%l~{NSA5v>7lfea_s4=3!rIrix*u|*8ax+oNasx#iyrhH(fy^bsuV| z{3$CnibTKKr(S$Nr)*s6i~Y7>qT9)^X{O~DgNi-R(PQV(FZrOqT&*!MerYc-={M!I z#S~x{K;(pXx(dL5Hl>b-Rqn zc)E&^Ika21J{7RJx&DMtu$?aJPhixtJjA!H{(68W7EmZJrgh2dHy=i=>>qbTC}fISc0c-d^|2aFC95W5Inz=Zx;|W&WcO6jZy!g7Zkp~0^2Sx zq|mpAV{bgqJrvNeB!lTmX4T zU3%};PsO!&-EC=GH_R(D0WS@AtIia0GU>F!cY8nER*hV(=U|g5`^p!KE(3bjBrbWu_h z;RMO0J`6EI-LW%PJ?{V612FSo{C52USLnH<5SdBX}M%GUA%1PxR;B*O3--nBaWW$=Tmn^5<9wz_HqRV?PTBB z6|ZLc#}#jDXYHq;exfBuMHIsfr}PK6cb4r!q_=BBqWGu#YI=Ul`~KYZ`CupB^C@K& zPPyjrm1!d%VAg@!F|eca96NT*O--ddvN}DN1X=FV9p${5K1AvP6JlB-Ms3sFjsjt9`Ij0+*}}8stcR>RHyC9GS&5?jx1k0&noKJSDUWe z8_V0V5tK0hN$%+|B@31aC2;`|$t+qr74|iJ;UvHgV#YGlA5?U;Zk+!*JfudqmzfIz z9hcE4Sfx%n_O@`eBWMZqmnR-VXoboUc)FYEkzct~XxFSG2Fhk^hp%rRwVAG1R~MXi zO7;3JA!#xJ&!n!>Ho=^C-@*|-ygVo0B*O2$;yZN?F%OHKu!@s-nRuK;19Qj5FMo2I zPwXZ5VC6v0?%Zr`fMHw~pfWm8h&j%T^MHXh`Sxn|fpG{&7Kf0?W4y3;MGU#O4Q zxPCqe81(J;y_y(LT^;crmLpMOlo#QNMTjx+aLwpHIW|k0bobUoIYH2PX~9lhrmx{R zxg3m+>Hxt5d3=1H$B5A`KuW`w@oLNru)+m}{tH8fIArt!I?(pK1(bNU;B|3fsQB~O z!2r`SCnq)Zi(^?l)AySmEe|)eY0G9j64EC2> zNNTesSq!|&lhnN7F9SRyTZQ8uIkZ&@m`b-+hiV(3v5x*8xsgzFaWv5v)$^6?3@d^kuVIQ`;&PhJDuwNs?hsy! z>T_+wMFs$7*hFNH@L7QD&<~wC{_t-#$c^{N?at%yU+JeercZazP0zTXan?@!HT)-< zmY5NCrq?V1uAf)0pS`+#k0+`1)0KCvt1$lcee_jrJh9dNe37HlHnv-Hs;$z;`R??u zlvp7t**V}$ce@Y?2*R0^6AEM&8pB-{J57_?>RqlMJwLLI4dY)ovM1@HdfS1o=|^`m zteS2`(Y0)+K|9{dg7gA5ZX_l()Y&CxVcKrQF4hhiR!@{fPd>o%Y#?2*7C0v&WIvR7 z5YFH8EEdDA^0+$Pt205}mR0C}syZB}>!S1~{ASn$$^7pCeJ$R;_ivjIe}u@BhRmTP z1zRd;uk)1K}4lnyrLr(j@*N{qGt{ z9S>&qSFH2Odzb3pw%eOCplvhG(o@>j4P?UwN!6$t8z*2p{YDM5kR?ljXfSwupT`b@ zck^l3wtSWK`_I2xza#FwT3BFo@CkK~ms)VYZ$?3=wAI5Y4&!H97d85c8Eb)fB8RTd z_nvBL#$}5n2+_adWq2G0+#$46R(Z4yXE5UUD065~ZLq!iTRUZ?5f%yo7(2OpW(IqI zH)$sMw!8`deadp^vkq5X%sgLr({# zfQM(|Spx;A#p*7ZKXB|CHLDXhj~k*1KlORw4HU(t*+-z7aG?j8X($2vP3Wh$0atie zq7Y+Vhyk21N%B;lIf(boKWhg#B2OtsUV9C+P%ISA?cPgF8N1s zj^p2$h$-|LHuv|F*Ex!Hpn(yCUiyPM!7lEVE%WXSym@}w!ZzkfY<%r()9?YeU zcEe`{s@5_3{mr89%DLvx)e4GsyJi8OU2)D{Z%rwIA7v5T0XvnwC)$Qtx_A}O7mAO2 ziqL3MYhG@SkEr$|=XT-#5&b%?l6-0o^X#F#)geDS+OjA3O~cY@<*^S7fyPS*b-x#) z#Ulil`yrmo1wc8e1-K2C(h*KquL`RFi`zm}YyFA#;v*vN$NRl)7oQgbS{cEs)|K9?HtI)okw9U-Z-@*Cm*p3CvPco%j* zXZLy4^F9>oCx0~OQ1zzKIal8*(U-^OXqL&7p-k-eFuYru#tC#BUi7o&`J>Dyv$%Px zC`Qwi7zDmyONW8&2(4|mvywfXAou)Pa2V~^ZmRgP{{5vmormM{ErA|t&MkllgS#0A z^}60rjak2jPb_y7i9Ov9*F%OgWF1?BWNOnds^-fYHM49=VdrKw%}HT4gxjgma2s z9h=Mw2w0x$t$g6;&`)MBhl_FcuWCoD#L5zLE+M~_1%VzOPo)%=_w&&FK(A5;Q1cdN zpyfRt)Gf8oW=tR*<7b z`aHA?!9_O%%HEgHfA99)L6ZT4lKkHGlBbK65;UA7K7y+{0`Q@#sRxt&_T@fgIUd$e zsuU&*I&0Y&CH7jStltd3Vz86$S+Eo(*fzI_IPvZ!;LezS+^7GT`pBm3LD=;g9UTD* zDeD+|pT)4W<&EeTM&%A-S%>rpapC&s5+517oolPwp2O+aX2bBUe#jAJ<@i6CD|o!| zFyshLy!N$5y?;BnfVSw7dM+z;nhL_3Y8n~*tB2N7aLkflfxY!X;@u9FBmJ@ZpM<_%HB%!R+nOTO=kUL1MA zJh`6H>-yk4@-RQ=!`9}Mrt`26WKe%a`$5$FkD%uaCDF-peYHs9iCYO-3M5}Y#hWx{ zv(u_huNt{u0E7%YZwzHgU!w$)ctm$>2MBER64_K>jh<&Y(7yd1iqS5ojuPc74?R`a zq}GFWGTuAquW4Vo@`zSU$|D3B;HdgLTeIBumoc8nJ(aki@MaCl^^?rA(B+BaK;zgF z`j8OQVl-~RlhJYTPLE2mWK76lW1V`KdrET~IVIcnkBY>9B}X4#02Q8bQJtkP?=ggI z?Vo5@TMVg=TMn_AaH-)MFz)R7O`(K-Du&RzQXz22BV^XiNsUw+5eLB)>o-FMuWC>Ii^Vj7WrA?fETN$Oo5oH+ZIb%TN%^WE zoHXqpHU8g6oEDI)Uh-!=scDB+{wKL?hTXD)Er4#>dvBR;fkv03!nkk49edKRmYKek zCuQqXM6lfUJ*vdG))+>^5>8{q+6=sV@hd*O*we54G$o$}aQP=ul8#1SS=>Z4ObGLZFwhF?zH6rw>jFe_+mGaivLhlUD8%x%8jA?( zfybbO=OOZrt_n%iporoJQPv|-*^@zW>0c+B?-D(2AWNl-FDJyMq%5E*!$l$^sk?ip zKc`2AnHi$tcjhjbL{oKN0Z@q#X8N0stNbQi^bmeOh?vA@MC@QhvS7@c~%O@5VF?y_Z0mt z9}$bu;5ZKbjg{kXbNMn; zSr4H&7B~|in6eK0{hH+yx=}EEKNI$QeOLz*xf>n)ZO4GrF|#??@B2qaMx<-K1@zki zt(#Hjo;mI222ZS=_2Flke1oDm8i)rj(nX6+tzHHYQ$XRv^uly~pYI+XWYvadK)YnA z6OtQ30bR2(!T7$ug7bb?i{zKn0-6T%Vx1GtumIS_zi9FUW_(}(Zaa`R7S0X!L&8L4E7leS{V)6Uc+KAU^K`TzZtlo@-_h2Uc&c&th}3r7&7L6gqrcr`KjVIZf|wfDUzF}& zs^ed4|6iCyb6t!&i#7VlDn9jjWbjJaxcRA)Q-cFYs^Rqa4T#^nwzvL*?W}DHC5R1o zf3=_8J}3yiG5T%Xso@oJMRQzdTr&A3(M}k6yN&y8*>%y+^d)?J@~u0J)e-vK8lfr( zv~R2xn3v2nu9GeUe%B7ffU8j&R_7ZN91tkWV+C-f1^?N2M4bqY_|?EMfEJkl-EE6~ zDElSxP`;v5fd$TWleSxV64Z3md?_A2Jap14C%w4J&5N}IB#R}98eK;!efhn3mR_Pm zrCW>zC=!=^wWPv@llZQ>XZ<*^S~#O(PL%`;N_?)K_!~2GS@QVPq>M!I1Thl+=Ag09 zXPoH<23DWbB;juf7gDzGmU~P4ncvI`wMW!bSP zi_hbt=1{+SuJ08L)Y>g(u+C??exZpd%+Gvw^-emNMrd);5)tT<;Q5S0BN@HM`&07f z?0SQ!Qq>;oNF`CTo%ozeCg4q-fw^_&*Lq(wKA3h)YLq=iG48L_vn*oL(gKZN)$EaD zWqul%`iGR`*HX9gP&hfODUGH7Iq`?B$A70?SW1!soV6=fIan#Cy(P7|bK&n@1#lew z&hi`T)Ot~{dV|(XsAp+~EY9*inoMNpcB1W}LEO3Y1)w-*r@2RF`G%Y#`NDF znW$j5ukvP5H8@YPubB+H%;p_ZPpu4j7cqK%#Ex!maY3Es%8WmcM^oBOZe!;S-9BBF zoJieV-`1tK{W9n$YQD4{?zLuXvU{|bIA0DZzRiQQiDmx;lZ}f6tTXdMW05Sh1_<03 z*R;fxR|x1l?p^kJ>3@gKzhZqV@{0uyowtU7Pm{XRSiZypbqk<%nSy=9Imx0Ie<{|G zq`3HiR&koWs>xwe^)=rXw1C`BFgx)yy0*H@d_s<0{)()m8+FFC2i6K3_UUkhUPa<1 zgPq87@zD{Qbo;8sJv}P{dA@~^kHL$TUg3HhsSg+xgYOYo$*1m)B#q89@#y`_GXJsA z|2(GV88IjkS8Hj8rUfKYhQ|bSdlst8?;ul_ee$)-=j|qY=uehUG^XwjoaH~&8*cA8 z5eyx#H{EZm_sGyT((-+>JcW|}SY91AH$_LG5$%PKr^C2l&Q2}mnf*rc#o_x<(I=<) z6AvkW?3EswO3vF?V!VVXJ-_SQ-E$m5-OR~)XBI5;qI;1w+=xdH#L`1$EAzXORkY@A zUMY&rFUDFNLl{kJ$4`yRj*-%n)tf1bb46^sTiFcYT4It~!4W%OJsAL#n)^AI7N#zD z6b>@N3xK9IkW};S@>>swDr(zyZ`}{s4{pALt7w@w*~P?z+xcXiZFo#IW5t!s)AV)S z50Tpn)vaJs8+{dji_xZoe0ZpC&!C)ZILh-0LA>(ZRp|q-tX!Jd#aE-<-afo3N))r|4J zt^gAHUi_g1n+xEj{bcwTA1OSqJF!+j4F!d)@V`lT1uv9!nw<(dO@qQeo6&n)o8;$< zH3N_v{I~-PwoSyhJaGC|d%kP&1+pKNA$xfUZ<5CgPyvazek) zgfq!r>_CjfaHfEqJorC;#(xHcKhMM5$^M^=@0BXHxihp)Rkb}|k86fnb=V-4eP zAsSs9wrTj( z%$of5bMa+RWa|w8oSs2?)gw?7Cx|tw8Fest?Yvnp)ii8_nLiIdH8feP zibPfII$i(~EuPP?%SKZ%5UJuH?^0A&4L<~7wDbuXI%Kh{bgW)P^K24^j$`$ljYGMv zX+O4f$Q_y%F925y=tv_JO?}_zD`KGi2oI3tw)4-rEOoFfaR)UFG|DRk^sn&wtBy}| zlOUbW@qsAvuRQP^dDcDk0X3i5{lAPzosl$S=4HxLWYymq_uo^516dQ)yrV%CVawuj z0q|66F40X%Z|{jtt-nuGHhPojP$R* z0NSjtb4(`-2CoZQzv{9+t!V9egdGFc%B)C&z1Gke-X@>ZQPQ=^JvRw}?W4+dY|204NTM zD9Lx_M1%T1_UHbk9Q4;E;1Lq#^Yb7lPZva10~!#<`n&|tx#UNIQqR>n2S+gV@K4mS zvIIE~7@B?_pot3KL`|5ay50`a%({$3D>#N%uiH8SSJtLa2#aKjL)xIw@cLwF|EhW% zyz`L?+aONI9@wPtBoD^AQMV~aVAxV$&zaI=t z|7uMq4a?;CoF98H_88uyd30Fh`U|t*?#oyfFZ`^i0TKlB33xS&i=m9u`r67nd`65B zSgA40H+n3{X3Q7cBfu;LswbI)hL2yiKG;7uDexzINGj))x;ZNUU2J{_eN_;lR+gTMTzU3(vIimqtV&?KoP!I8k4TLWZwhp5`0&gGfBxRhh zxSYh#Ou~%_ynwKOCi&lR48Aajx~+R>^K3rT-HS>htBj#xF(vy{xOLT$a%oY{e%v0#;5?)#uSk z&*o-sBHE8g0rh`{i!!(rJO^}$Fz{g2azuBm-(Pdsn@^G(rjrRFo~>L=W`h zd9Bv*<{ayNi6)3m*{^Edocc^=wbYC9wTpFD{LneHVZe{5Bu@;RzK15uvVE~9x)Wkr z|CDn=_{VR>Gee(J!MX%DpE+geBaF)#IjA(n4oAE0GF||kY-e50Cw0k&X^iH}(0$>4 z4-^E+OmOy@<;O7loVeEQ`ywwJ_uyDkz@sf>X?o6j`vV=}^!X=@bEG>ag}NikBluTf z_e10gvCdC-G%1E$bS-W@(ToL)J6!2;owSCd$qm`3UwO)Fbays(vT%&VoUIDBMSm2I z-%2AFV++Nyg8JGE3uyWuav3Z1%mzdSz`yEXt+O_qL)5`JT6h)-&RKY204UWyR;TuXQr-1I2N~TED}*6e|9$Z=Jy5Qx&Cmv<$6BFJ7GfSX|^6@Cg9q4SZJ&pE^@>PYgs)X zP{sO;Kw{mPUv{@j-{pP1I_}Ii=iXyOZ;L*_6zjO{6pBPS103A-f(d&;<_@r^`+^EFj4aisbrC?e7dno);ijgdqK^k#|QEqK|rZsXrHJ zENGH)D~=Vzrok-F8c>|=Yv=y};Kc7ztwwa&=1vI8 zvutcQTxlcRKP+O17Y?^0Tps%Jz9yv0Tv8Ek9vWkweWR|S^*+-Nq)BH}_xYO(pmYNr1Jq8t*Mk*e-*%J`u;_JPx)k85pRBCqp^erdKGWl1q+VdG@-Xh9IGW7*x3k1k zY-SZCoHzUIYHcp3#T*Bu4dZG2?fpvn`EW;rv%xYan|i&6+?%z@fBWKqtARxk zWI&E9(C@;-0@k8eN7~2xu|GA^w$-MKy+>(X#Lge4y{`vce5vSms6QSev5@?!vsdOP+wkGtkD61Yx97eLxr{j$;{rc!A57ZsKVa2hL*^O>Bv)3(+B$TNXP zi01|Zas?F^_S>yIG!NU@sUXx;>Sm6NHp^lNg%;p`sVl>(E#`%b#!Y!B>&e{bgNAEk zU^(J^;?`sc*Wpo-#K7ITs_H5;ZOFn)I_R);8DwD1i2F<6tfomN`!mUWuN1Gv6vLWG z2h*TJ4}vpm0RVz|!;X9MXoAbSI2mz-rSy;Ud^HXmlvx-^&HBN`i3E$~(meUerw&FjB(rjp40s> zBqVax$p3?5Zae9*#<^7&InkAgD|Bcw?zDP}^`>F3u%27;G@aeCGUva}UG*?}$ig7(4rtxQz3I0PLvqhq){P=F(d7EioEO8f z_*J9?=SHv@*ib!-;(Kl@aINsQ*&kX!Q~Mu)`1Q>En5bHFlg8$;IZRjw4LCTf%eIt8 zBL+&`(S(^J?J0$USkJT)O z;Dbk$Ypcf@sq4w(Knx2UA}I99#eYvlVujYnS)-a6mg)OJ!@+?)&(Omx6geK{T`2&b^3{17)2L~uuib~*lsCBE-V z;50r?LG(K9w#M?)?yKGi+#d=ooSftFE|%<@h!CAbfZ*0A>+@nPuj0h9x{Rn{2m^DK z5Ck*ZiBXq7Rf)Lyx@$b?=T*lP)or8q1x7l?zd1X+b8gl}(JHlm4qg15`32!yrwzn6 zq@+yPww-#O$Ld)5YPKUe#W+K!u~xufxqWf7Nyyu;wj(esGV{gR!vP~h9K6$qq9rvG)R&UdG1HM2)sn^BJyXxyzH) z>w_M}eVPnW`QD}YLF@1Z@bjtBwpD-$EBEQ(>@-;IxnR@RFoDEU4Q^{Sto4A>4-wS@ z(Z9>v3&&+aa$-~3LLniUlOU_`5=w1Es@QEiZhw24_VhD%i_K%I*fOF#J`Q4&&z^mzgnWq*mvn-ijaQ;Zcr|fZs5W9EEQUZ87Aa?K@ z7`k4Whbgb$uy&`AFRq~aye#1)CXCdqKgG-IT-@#qXx(sw%^I1{F)3}{Pa5}>aL-}! z7CVOTqlsv0l3JEOEGx6TbZn&UmXePB*v6-l3+7wcBPb@IeaT=;1z5L0{$=$O?4fgXi&Oiat~4FmWl+Cz}>ca9IjBU}vy!M}E^!MP8KAu5DJm4Zknl9jORp zyyNa(us>Z2XN^9`G_dQf<8PdeoN;IIQHX-5Jw9$GJYF!RHIWVOVLVj$c~h)QbDTFm)&MVVur@0`K2?sLxb^Sk0|?{09&rqAJvh`sLPG$j({Ei%7s{A8AOz9%1Hyji5XG+X{78A# zPxr_bedPh`0weuO8QtMXmAUvHSrNL>C4_Yz#WUAndC@!ufmG--7c@QXk$r-kbQ3uiCpTn&xbtaB%BctY9e z2F#t22l-t~HEwW{ZqKc!x`Ra=Uutw;Xp&sJ+ab1wY%LvqL_!bH+q~XO9Jo1hV0zr! zL?ZJ@2*W%9>A?ULPd>7{cWEYdiacVDdA%H+yexUC<{)sc*bOXPXORONSb8~X6mZHu zlaNP#!HmnljK~K7y15G5GG6^03iqgIT?5>-Ghp6I(AHiu>D=arV2IPxJDGW-6-hT9 zN#7CsO4PW_E;+xhJhcDYMlzf`aeFeU*{!Xz{+SBS#>@70ad0*LTI->w_OABp_TAH> z>MzTo&Ui`JO(-n6M%~C9D~qD`{dF??Lev}s-Y#x|Te<<}<7IfWs|Cf)9MBC`Kh zk>eX62wLx9-;~YSe4@A$e!F2`UAwyFNCj*I_`6*LV$k#Upwp~>{+?ltXuJU8p4itz zOhRY-?WHSz^1R71p0}5BrS@-dtKCbje1%>#yyaXA^=`|+-qc7W4K{D z9UU@%GQcrI`B+U7hn2GWOyH8)lHq2Zz#DIBPLrwP(0+c;4G2UjRws6S<8oiovuqy--S&sITz-SeRRM zr?I-448>kMs3I%liNQC!8<9N4aVz&mZTjEsb`uQ80~W;O6El$hOcu*ZtwmIuam=9j zon)D>#KV$AE)IMhbno!0z_uL$qsEcljFTC1%@@;xr+X^-s-Q)4}<{fkgJ+Vo^0ow5&h$L9KnU@ zk;OZ$KD?ZW;X=&jV4s-6?XU;?(g!_;R?dd)98rAFs=khqWq~<&uVwu*iB}0(OwIw% zvAn_u2DRj_cLdvR>kJ?udV20BoyeoMy@Ij6{)VCP3t;#Gh;)9w61@QK!hVsh8~J6h zQI1#Ag717DhRim~jX7O8Z5XO2R=5CkZO@m_JK+pvV80m8B~_u;`5WHA$sWWi=1!#T@`IRAQNg>G{afK|I+p3UH!7m_{3d&NI(Wh;JugUXH zVbq!M``}9`?#uQ)Mlh{o)z8Yg#5jOQ$e4>JYBnQBe5P)7)H0Me{o3+~i<1_&7ne^U zLxV3O-pvv-&in zMj5;+oWD!&L!|yG0Qhq>XR_kHV>@U2S%sd_oMZ-pTc%0qnj|8GyC(9!Ti~Vf4oDd} z`Xf0;^L6cr93=PG!!dwuX+W#95&QgYWx88~m~ZV3n|uQBHVPl>(uN)DyB`*= zLr%2Atm8w5?`NJ0b<8OR*`UOa-}O*I6u{!JtO2n3r1vIgIuQ^#a!tLOHvhg+kaN!Q zmnRWLA40Y{Tzk-mxi0l0*5kFt`?{G5FEnqezI|THls|mNK16R2Ie@R0ay#@r~W!oPjiPp1wLFV-rbS|=D`w2V*ORYZPtx}1^2(KG!sqofcKc6>7eJ%+k2`brB6gr2)?NRo#X;=!*6$IYGc$7R*q--W zPV4rdXtt-D;V~z@_;_QnF;MJSPhoD^?*;LA{K@Ue7N<>yoKAMg78iu(GK%Fjy^fD% z5ucC&+lYINs~Y7JH%p7rT zS+!pgg}m->;4Z6(94i9P)?3s6ox{Z0tJ36 zsm*o8j9NU&*JCKAOIz%H%;V&!X&U-)w|?zMR9@kuB4a(kS)N9mAoyJoyHRQb4~Flv zP>|(!Y5$KoT}K0_j&KU8Zz2v1@!?==l=>CZF+$^^a2}Qi$Gy0g0=ez@S-Qi4UmKT_ zpO-U%0eTvV^-^W3n82yJ0K8Cmb)hx*XSq)&o|%&#tMR!tZN**yUvimlcSI0HuhyW* zDrK<4X92KH?v+8EHefycbS;^AR6I(4z^fG0K+_4S$ft)AB=hYnJviMQgF9;mF`Gl0 zfrof6)HFPUl^x@kTv@IeH^hG4)TisFR>>|0Y}bs~OLuR*?o4s2nAoJ9!CJ>O)Q7FP zx@ZG;q@PJW)r_0d{S+_TZW`UVFre|TCRwe(q+8?fpNAh?G<27)Ee6qOT>u9^kx77; zdr*q|m`AG!h`#noIk7J)Pg72BdkzP281E+|tFhL-LP1z;b$jbHHV$>4hZ}#ivTOaxL_jtYWSyU6awKQ;{n2D`1+cUGS(^TkH3$f{=x(5HL`i)O^VZb5q<${D z*{g`prrSh7UXxQKqGnU9+iIPQ#{u8!`V*FqB)xc66MfqvkL(FPq$Dtut_{A`$Z4ng z{la4LQGE1{S z)&$1GckbA`;u=0&+?;af36veL^pzv{Re=AIzf+uZ3MF#KwWmy$a^uv&IqCR3HhJ$j z%G^$H8=)3P>tg}=@PS#j=YyN`Gsn>`cPl4_j9&g=v)Sx%JQq$bEELGTQUAKpm$K@$K~hoK_b0NWsOgeG_q#SJ zUck^V?KdK;dM~!ezbs@PdP=!{_vqfX+Ru1ey)2%?hcPWH3!|Ntk9B?{16*|;EBH&c z)+}Pd(z~>2u)_ir9C=!3U)rXN6?o?-?N;g1=F+x;g&~f3 z0m_XiW#@)YCn>>h-tpus%dNj7clsR&s28QVddsh*s8yfd(??1LN38cYFq%&w2xy#< zr(aJCr>8)0p)HYfYur`5rwdDJuL8|Stq6u&rFznQx&nb5m%}Wm4L!dWV9Z4)?}W5~O?rp0&1lES$Ug68f`|EHL&Gm|@D6sdjG3(_$@&ITCLX zo~X-pG)aX5Dk_3DDz%B;1J7T(2!(@6zhdbY-T291xlbEyf&ZyTJJo)5lQX-^fe@r% z+6BuU>7H}r)dYqiwa zLRfyrg84N+I~3S1&8I#mVTPXyZ;~iI?vwP>m@Sq846Q@68IXGKrOlZn2Km|S+$nz# z#^R=YzyOl4IC!h0vUgV%cFK8Mb<YIh)#a1Fa7w4t- zFZ7uN|SuB;G5npKhOl1+_&_Y(-74?>WE5PM_C% zrCYj1&WmWx!}hzZlZKv^hYc-c@N<)Xy@D?dRzV;=Pv7}tHwt}tKhzD^{eFl|uw#HB zVSSa7aw1(1?}cf2KJts47`{FeJ3oZF{&H`@vZPX~W`J5CgbP1@HPMy|!bIgF^sl@O zM2m0YeHBfJ=lip@dL>n2f-GX&!M18+D~ctgVl^oXWO;0oUhM7wMtO_ z8D75IZrk~5I1>k0IAwXj$VW%WT>e*uo(@>g9#hur;83@e0>`^VcOWt6Q&nx5%0T19 z>g0aEd@1XsaXJ{E5e5)6flGqomK@;o3sbiGNz3u)zaT*1DVP|hM-Qd)qX^sce+0-X^IU(Zlgx!f z?ERr)vY2}^WT{4U@EYxeokFwV)3ZiIEc?;pR zOR%DPkEkjeu&Do7=f_spR}+O6xy8G=ISHV4u0#U{OTdRs47YDU^bRgXk@yHQ7BE}4 z)BoNLdw-(EP%Uo6uVsG$ET+t3c?t-ABq3bI*Wol9Y`Ux_3a2CUE4*u=JlzuBSuT7E z55=YDzBv9YSg;ml`+$AEy}`RW?!wE)$;5@zb$Q=pw=`xawB!6jpSr| zYrTJwln6}So+KUwxmbxtOhc6Z@v`)BOf>=(ZaHa>HRn;l4UJOoFUN7&F0 zDeN0t=#VY0`%i4ReaCpRrdhq5Rb39O5eHPmii`IxHq*#_`(gSK`vugi(!+YY^SQI2 zO8HlumUr2iD(J`UD9wMQRwF*9FA&Lvk^_5|tDo}E3xc5JT7 z0pZp02$M(y?$eo@$=}`~!lB4>CCeW)QJ)Y)(x4*vA)HvT*>Ptw$Ag=nvoex0QRWHO zwiGWvu2Ox+xHx(+tEgJiAC)4|O2=%66V>ezN%mlzVrcj}^~?$uV**t2@SVu!D=4f|>1U(59l9K@7lsNKPxhE=^hDqlA( zc^S@K;@=ZL%`o1(YBq6L(vg_`SnHt{lAz!*!5V5xkcc)%M~`HL zGSCjlQ@I$HrNjVLg>0?sDq+?4rJ#!*)3BwmiL|3KnH{2{6|-MKqd`CSvA%o1e&ax% z@CTB9xhK*!cDImJa7FcEp8j0Js_U8)eRL(3QG||Y8m&4M)ejk`4SNWkH*5d9?Fy+f zXvkhWUF(o*kxTz8r}Jl{BW-{@FX$8hK-p)_zk^DAlcR2O*(bCo%k9(dl9Jp9oe?>{ zBfoRUkxHK+cl-9U&t`w1pZ)k&4hpa4(W$A0_86cQ1m_0<>aQM{BxXAz19|!5Z@Nb* zU>2TBpASSAoU*PpfaU;nAeV7ZNsD~1DoFFm9Q2(gmMF2DBa}cp8U#}Rm7Rfx*E2db zSn7-Cl9BqUR=G=Qi^0sydf?L_~s4O zhq1ie@E9ZeV&uWJUE3M8yqp0>f5v!1-tX`C>Z`SgzjLke=u{YlkgwVFvSR zD)tU9_MC;LL_D18i}a-Ss^mdHCiikdJ?KC0iHy`?F*Yvo1?v5B@^us?sfMny^W$v8a z>_hA<{b|AG)ax>N5_$dDxX>?-Cm(|;FZFgE+2S3-Ye1L`!I>6I2(DJvBy&lyKIRwK zXjyWEKh{QVx6Rc>2Rwl_c|=K+l=0p?6@Epf(%H1^k31?BGOk7}KYjfNdLxc=0!RHu z-QDB!AZ)B$B6psu7{K>Gg}5EP2G}An{BjD2VeS^<5R#l+^eD!Kd&t=z%^<5jQao zci4E$gr9SKR!e4KDq%HUgVhXRMo)iMZ-r~`M1DlG5oXM(mn`zI{7ij;Xtw9%cqPi; zo|b7e@=J1i?Ab`K5M9t(g(*BjxKBYAaLQyhtyF&<9m3Nul2(u32d!jGTgjqFs}r5HW$@UsQ|%8& zm#hV-bbrvWrM`FcW$Mh!ww)A;fI@R9i@oUokwIW-1hTk%$kWqRtD?6mM-l}n>U=db zBxwjD*mEH>VL%}}1XeS(w&5P7TBwd=_oKRVu5ORhsDat2%-#N@KafK(KW{cMyHv>1 zXrUTy(t_X6BNY8&HhdZp0p+pY^*Pp1T#t0ZtF(@BwaOSV2PYRhc4%m2q`P*k%0oD7 zjJ;LHfzhSH0P6f_OPLvDH^XsXqL3K}RF^>qk|gF{B41`W%hvuGSYkLvvOd%Okkvl8 zz<6)H<5F3jCqazulxh8%{<&*d0K>aEblwT=2gp>woY?3ZktMVpL(|1Xc(O&^PARpzLrBkE%YklDCMMiY8X5?0S%pDU=2Q>xllRp~9x>TX%Wd9Ar zpclas#Z#H7E9G-comISK+!m1s#p`4=_uW&WsB1LSxLV9TU-6N-dLILhs>0jsX zJ3qY^YLxOM+Aq^Bgr8VT#-yNy->jhNt}q}rfM9T?BuFCz@2giZ`y)+F6($jPHn*LQ zvZp(9;l-HB5`%@?X*G%T*QreqYH=pzbiHJn!v|IV(7w|i zc}DYvI-!949~9p|$B{dg#60YiGdd(C9dCEaGG;Mui>`|y5I=s6F$~9V?K3F0Ow=oM!XjA3b4CF$;L;Y|>>N`ybBUzuTT}eJr=G_52ID&XP;BM?!)6 zce;d-i((+mgqEu|%P(S1M=$uy9riF<&q`decxr#38%0JO-79=(V80u4+)(&DH-TdL z4mSaxFPXLPJUN+oviDCdVnvl zK&R}G{VBb9nSo2`Z{TnlxL>McGM*R+<6Ik~AO5RS!NLYSG+p-ZArB(Srb7p_kykO( zyg$)ZzI@@%+FBO;a~q9^>U$#o0Yj#lFL`Z^r?{&r*<9snp1{T`kCTv=Sf_LSaMe=k zdE1(q>#m2+MoMhmGVRFHFJju$pVt2p<*Hf;RPD2Hd_QI1Fu)9Y#|*SW_m!A!o<0ug zdqA6nO}=LZg7oD7kkDNP3QrFa+4($eoWl79pPol=z*eHGNw2rDOq#eOf1N!Whw%mN z|69+`nOr~gaSKmB;@6#hG_a(5(P(aX1+P1j;vhhOWeo-9YkWV9CbfYer%vGgl z{h$z0kz!T@Ja~kXNmH4=6-+0UCj`$of6LKUJq_35p}J2YiIp%IEOURM?Cebn)4}1~ z2{zouB&NA0m5H>sIPxXtfon5UQ_>iurH~5!QxBwdk4}LlH2}H`2uua!e~py?E^u9H z=N~EwtiBfbde3CP3rn6lgS{&LNTCiDneWB*ygizpY294f`{+Sxv&nM~BT=iTCA$>L zV*EhTlf`#H2*b%AOFr(svIigAG!xsQot->t5#3e9>EzMBuiP3eH5U!kCd-#5f`a}< zCD}!!R?=thr3T(zR%&V6U{NQu{!FZ&enYc`bBk^H$GFJ>o@tZb>ZEd3S4J+ao4M@Zt;nH}3yn)7 zLHlfFcZXL_W#4lZ;Y^`$4wp#|R%H2-@AnvSVC^9wll+cT@ckf3nwv!hCpUDYK9fCW z0Um6M3k9_3mXI+7yHG}-PH2= zM6TWGp1#@U7jY{kaPBRA^f1W#jzL~_$+HFBu}nJ2Qq>x^(XInI@XO|U`yoR ze#J1yu?`?>IlhDXwU6oj!;7eHzM2HNnLQm4h&|xRVS90|q;@?iK=_poLuU)tUYT48 zr1Pf1>xALu4?Dj1qs$1@h@;qpe%m)ar}~NhOU{^*&D8Y|uiA<1X~S%^Av1wi=-K4G zK+~*9G@5OnYOpWghn=po7pNyeIkm=^D;M=5`}3Fbr%SA3s&OVJ>2GQ~(726l!Pl1_ z?%j4@v69311#nUg*GFD#dTt+Ef5ae z0an-%>~b78gqByYD3D|4T!x^Ejn4u&n&SFXp{g6Ra_Xr?*eZ7;l1y-Er2BCab?}J$ z2mhT+{ZB$0e){ju=I*-TE$L}Xdd$>1HBea#ylL=bizt~Xsge-IZnSgHkgGM5R4=Q3 zg7xMCwIkwixo+tDr0f(u1U-G^l>_`4=Pc^u#t(&`_RUK)e4D=W2SpUMG&#|rg`v%| z`7=kq=IiE9N4XdFL|qI3-e>okp_uu%-vHUi`we$AMF17^R$->n?rjg`@rB{#p+`dV z>hZhSYR{!lj9*7eF5gigi>7G)34yh_Hwe`n{uz`J{Og*75Lf(8ZGek;b@UG+cy!b% zRuT~je?UIW@(-kYO51mueqnU|bi9vdzf}1T)cVyfava0+E9+scEE# zULc=Y$unxWlcrEhRrE^g+km3DDg5NieS zu|J+cd2S&xT1Iugx>u$S|Jr{q(q-!@rTh~#CGG@EcASZ=@&=AYBQAg-uS~y8nCTAl zoPDn`6X@NRnSOnlYwD1!C6j&2a8xl2h1HAI&Ngija1j^ag5A(UtvF8OAw3TiOd?3O zgheM_di0Ih$a52Tf3-a-NTQdkiQ7uRySJI;iE#}n!&jR!zoBdjpSPBXm`!;qX*gfP zLQ$>gR$H%7%#zXG+r^6kb1AQsP!x4v<3VY2+tJ+%@^nR!Bov-PNapccRqt=XnXP9& zX~={dI5wYx!a%k)_=F8gT^Tb9?>|m~yK&pC;A}Yuk+xM-@lj3+!*3BQYqtqiJVErz zCSnb37^RG#mCd-!WG=P|#5hDx!B6#Glg6Q3HydRt*3FD2a}HKT=S+T7oDQOBPBI<# zc}T9_yRP#E&0oN+sn*$#ckr*ITVT$1?t6v2yQnB;^Vn&lNlA6lIE?ks9MQ%BI>!&my86_8#hY;Uf&0F@iS6 zz8es@-2oPquPJ97nkl%+{;1gFApU8UvB3(t$`9{X^kd2Un1iC=aiJZC&xElmQ`|(| zZtRxmQnXv6p!8F{`F%9i52e{U4M~qvkxTHv> zlxKaO#D>ameT=NllMhYOsDqLSXr8V5p4T^L;QXw5WAXf>euQ4i6irY-O*Xm;dRd32R4Gm#WaZM_~kW>t>t>botFi*JPD3`T1Uj*rY!_@u3Ek)*H?(D z6O?PZSlIh&%6NC$lBDGH)TSeT;000n15{CmjcKYRFs&x6(lTd{c93O`^r3Y{%Nk4wHhjG9}7@$Yl z-~=vHg5-JteKK|S`8$0NuEdH@$v!a32iAOMs!XH7w}wToTGZ$%DH5P#1GE}^JVvub zmK7zaAmX|e{4=#)bJ0q2joh8H6eP?(LTBl}90F|c`C-!d4n=P;ZbS!Mf{NChAC)MHcD_^3W zh}xn#CB*ViIGvXrGpM$H{QX8Zb?<(i+I4&-L6Z@6DZ z1VtMeiadrtH5Cd?)yBQ&ihyz>jV1C1?_Wc7lD%y{a*tGmDM!S8_%8gV$ zA2M$Q2a!^>a5?qSG0mze zy_#v?#&ut-ZWk~N?YN@9E(Xi&DK-%K&)2G)u zHtz^Eo>ySZ5_0?MdX5o5{}e2In0fd3VO8UoAkKIRFKb;_|m0vX2x*PMp zF-OmP=Z^b{Htrk8sW%$4_uh+HNyE|t9H;#y3RDo;>v44X8Mf6iZg{2><3g?8GM<6N zW1@~<{F!WfM{H&qOIc)xv3`a`M8fW`ik0YB)}HDq9Xd5z(exNz3imew__lJA9m`Fj z&(~a_!M;)(R^N7z)$L;BL$0ZFsDF7pgzJw#dPV{QMvpfPYPUbNpFhm zMN=~q4)ck=nqg{ese6S0{H#2MIWn+{0rJj8<;djBZ1QB6e^1~y;2ei};@>F`1e2$@c3xvp zr9qP9eXAy$2|)QP9UgmslMdKcKO`hySsxuBp|Vth^+Q~}U+Kqv8YhG5+oa0?VLY(m z&cEm+khf(PH25Do-sP@G)%82$>7 z0Mdk*IsV>lZi55~VHayiqqN(Pfbc(^=6_QFb!r>w4_i0bLt%k{Mh-23|*NBF15Q4vyvrFW2R- zN22)H(!8$sdO7VED2;SC2E1<9O4Oh73li*R_}u~45F^8{Ju&Y+x1Va`R9~ofM*l<} z-7fFtY>8JjKBr81;HK?NQ@mzzYO=^P1>h=n44VZ5&oru?WkIQuhxC^psV}t8bk$pP zM&yyk>^ot^F+QHghES~^degMU$R@pXIGmyIC8yZ6=<^w~GvY2uHe!!pw~=D=8iTU5Dcech`JAq) z*z2mGedCo~Nwt{9i}AxU{*f)&Aay?Df8A{ocN#CCeHaYB+Ea~QM#QhaJm_F(?-h8F$dGVZZ8jvX+m zETkKFo*L-L&HoHIUxSTfYz(6B%%tT@oNVU&0l79v`_X3yC#gZDn$vC zt)hzN_R18?@P=Ggs!-NSii8P!ur;okxGs8nZP?oXLvzh;k|7djOk)6r_BHtY zfgQ}{8M2pt>z2H+K3C~hVsbP6*95J$7#_MvImYW;ge$uBTh*= zg4OZC5pQAaTFz2qhOxy?v04w@P4J_fP0bBn;Z7a8$s9)qOLOT%#}bTQNEmw8;J<)>s+{&mFOzy9z~kC~qln zf!#{-Z+RqtHMT7{(gQF_iMv0FByh_UsGSu>?p!aSG`F2{+f1JkBUPUo*|I9z)g?@x8Bv2~8w}=>w4+lJv+~tXk*{g9PsAc=+t0g2 z7WlXohzW%AzctZhN2#N4f!QQ9?dlmE6O=ImFJ)fmvm;63CwIkSWB4r2nW0*d`f5nKq-c>De7ukIpfj99R>VQy90D7DAxYL?9^meqID~*4OeNU0DOcv zm#q)K(wO{aAJ3h((kqduZv6bCGU6+G793@FfAQuBPfm9UZ|E5d&_M3BpvaV;+xD%W zpE-0|_rG%Q|IEX&8x5Cyphsv z-G!F;fyBLJcv12x{0||A?WWkn_MABuybe@g=y`&Xe(&a{>o4)(1@OQM_Z9vkV z=~S!0s_8Q-G!dT^O4x)eCk61$e5!rwd#{}-$9X-FZjUV#L+jKw*eJS!=#^^=mZ)L& zR8(Ma4D9>vbwrV<<`hDh@u>0pmrX5#bxW47tsyfr(?Lel;om1`x>^}WS!kv;fK>h~ zd1J^Tk4X7=Q<{+PAE?e)Dm)H!OPR#pANhav^+hvQeSN5yAq6L1+FS>P#EP?bqAq(v zO%iQ$<|UBlb<~c@l_aWfHaOO#>a}JPIlt>3YACY?D2qh7N$63}pTdJa{*IVk?U~)w zt>R^6w!LS@FL$z!)!^=yT>jFvfhaHf)5D zC=#x;FvIIP%!;)HkSl(f4>5+Z3S1vJu6^p$&K}D#wEs1!IjC|~5l+K;0!&opPs0gq zLOvNmmn(EKhd#kFBZ+r@K9aad zs$(h;=7}*TpUz886H_pG{@@qd(W%ElDNs7Qdp$i1*hbnT%-^0hG&uSx*X?fojPAy~ z(=tCSf^~Wa+TVb7MoT7oDGW7t`R8{sKs!+1=3=5fiI7G{kXZhGv zbkQ6aV8oBS4r{MCAgX-K9ZDN|-E`*_6)Jr?(kriq?iHv6ke>8C)hYJVbl1}Bo1x61 zCW@24YCL=G%jumW?)PH0*aB%m6r*H1D%h3JY&`1R1m!$^nGo`f?K!4CCr<^zl&@(! znI1EPnG6BLS^B=i+ofBY#$~5%)c|<(Pcn}6i?I2l4}aS)u(jN6b0aSxo%~m^`XAT* zKqf2ZdopYjt$DQ-(oj;UZO}q1uO7&yLt07#mk%8TkAplYXEryL4?qO0C)B*!dTXm~ zg(XjuQ{(bZ(61D7dMew~cvOe7`i(euR1`l9lfYkTDJ5nXO*FHqKBTv6$+e8;$pm7w z(PE#_tJyAxF>+CAu;7;nP*)rIoz>3dIK&cjD&>3!UpCNB>{Mixwq$!seq@%4}QsY7s3Ph~XE)>(riuGP}pvdz&+@Ln==u`L@7ek6~}ONAlWFXR<#IxkWO zr!USky#f*bFA-0@sBR}x$etIaS=As(=I(_$Onm)$v4)5_bVL@?T1#>BT$R5P<`y(B z5*SSIy3M-v{sT`XA}wthcC5%cM6aXl;dbY9tpq7e$+)n>lUYUFZ`&61r!ILJE}PZlMiVSq5_jZfEoF$U6cL|J z#{w3`X_vI3$b#=7_x44aO-OJ3Y@7ZZmlnVdL-to)b&?%eDP)*(uVI`xDn+$;7P!y9 zzU}rcJK~P`dVHs2@2w=C`7xh7lbn^PlC;M!!f(?!rx9K15%=giuFq<}Qp0ucftMDw zdG( zp|=!i>NDBX+kfNrMx~q^{>HnVX)B^Z9#{CXEId^3?W*atWiX31apda9RQ_@Snu15) zmn3q#_7o9wlvpty7oP$+g#kLQ*ra9FV)E%X9)0YLLP@BXf!fbK`CUc`e-f(1Lah;|ls z)id^%lwOjck%abP1Jh@+*FxUwC1T4BGo4?30viw(Az!~f?+HKzOGbfU08^et4tJLB zuwCBpNGcQrhBU>1$xMO~ko)B@2q!?*)1n{~Xa#rt$KU?rW*U94y+Z>fNH4*|@D!EB zbN`R^K^_;HUj>A(3-D^vV8~PFKW-)$4anmT#o=Vd)C48@xWv3g9R>!i=UsG}MHTUD z&>r_Gp<>g5zBslVY<8eeW&4}yzQp7}wlbe3BzS)GQ7NvSCu_g%;L1!b;qENHidQbu zm3ZplI=9ijCye##awb(AaQqDFT_W2gtA)jrM5KJMB)-Z0UN25koM_`J80s$;U0&KE zU6E%HDcS$jqOX62O*+)bqf38Ess^*dyYPxD8W(aln0r|gzl4$MBCbQkw3Qdj4H5A% zVJkzS1-W-92ka-YC#ClrmohkiuDf#wU$sj2fPp2W)D#c7j?sviSom*jJKrEx0d%Av?T;%Yf?{^ZV^>S2 zsD`&_ZaD>GlaR=+m0oyE2irARIE+f501AHxM?yXP5&F!Bs+Z+O~16t;3B-ZcgDuIzcab+bRrad4g z;lt3ez4uCaO|V4s699aq>Z*4wi5n%JK0^{%B{LaqoUzz}bNA^SjZ>Y#51@#wRl00V zH-^ByrjFZB8qZUMWhf@}xtXJa!bPA!?DVPz(v|xzjN@4n7vyJ!4p5m6HjYVL|M0UY z04WV-Nmy;04NUwc7|f(@ZMtCu^)+DGLP4HI`kVRwKd@$^1qKT^w*ZA32434eSD;eo z)h~s#B+bu`3&z?!*>F7q7FD3%@VE911uR_Y21mv+1w&9SWr+c(0%u! z61rrl4=eqk&)_gUvWm3K0^C2WrqKQ|tA#6Z9`+C3RQlj2Fa1ugsR1O=F%7GtfC$fo zj=7|%sNY*M4f(L4$4^=u3cI4mMR;6ee>ZoH%YI8^I>!8g#z(8l-UJRcp5r@D2X&c% z9j_8=a6q4@?CZeF#kTWKW_J<}W+k}|kSY?zo zgrYNZqC#fvi(1Ec4nYSX8b84*qeT*+;)+GfZj}xSg#I4mD3pj_QIj}^&NVz}OL}KS zA6Mk!nTGF2UpY7ds)O-HtaPe_&~sW39J})` z2X7Z5hhs*!J(a2NTi%*PM2+`}@0YR|?Z{5GFj@V9lC3U`PBR^#@>1`(_#Z^Rku-bw ziZ9E{Bu1;IYPWfV1_wqGNwD{Jfe|dA==>wD7K<~T#9T)EeeGoE%rS(5AI=Fb!OR3ShS~cw0JSA&EoT8`?XNA7(u>R6V zI9Ak~>v~&Bw}nC>E%b;8dHo;KjubL*C_H6&eN1sVL^YzIN(Ny&g*y{?2Xt2G(Uxi`gGG3u{c zU1-HJ@bu-yCr5hjx^BFH8XPO%200Z)8upewk#o0A zsYugZ!z$KhdQWqrPx0QTiOS)UvX#lu)jeg%4%tOOZ&}D=Io96xE~w{`ufDJZV~^lp zbUxLQhX6HjVVr86mdwV?W`fhLooKmqJC#e3Ah*Z!cVQ!h!&uow=4C@ z(}q22>gW?5u1S^tnX1%hB0#wqoVNGyOIRB_OnJ=UON1UzfNNnE(bLkADxIB5nZYY=(ksHz- zTU0F=!2VAw*#Ahu{uavq$9>8cMe(j2_N5<&3)Y@s;p8_nUnHKaRyCM`nX0PHs_%^W zmpiUX{9t&sU;3K9{97yZ_;(cbx^Eop!ZaInb&0)a+xE+x#R4bAq9PJP~2{*zF%=J(dK@}cR{s0z{I&BYF5}3Ih@*C;ZB-R zbxUGq_!9gxF?Oa!89U4B8#y89iiJ4S|8BmaJFQuo;?7SPnc||WZ8H1Abg8_+g3a#g*j7Y`cq?D>Y|^kp24iJKxX)6&<=Qmf<7iEw^iF$w>%G66Cd4U+_w+p|T4%Acr@oZRj{ zhT{hdj31Rs)=klcAdo(SswJ$i)+<=pSR*ZKqjc}bk9AJi3p)3@mGo&DL3ImG%5+X{ zJ?SPdh)AG|1;(n46OU!DQ4F{Gx4W3*mooUj$CB)6t$2FsKaQH7x~G@SIMxl?#Se~T z+3vn}n=-N3XRO2;xI`F!&UjS<7mCVQ*IdQ@rFHh!CN1qDK+XOxFvKHc?Yn5Z> zEds1p`pA|ylptapU2w62Q#@(qce zYJ4+^DKN~SJ%Zc1PVpA_8V&F{zvj)B`-^!nWPlF`kGTcD!njzz)pGGziTv@v7KAv_O0doKBG9xxVDX`;57@Oe79AB3Fry1U??C;C6?ki>-9 z?L{YBzq!w=>$fKwx5Adh_rbsfIk#`6tB?EZm`2~`8(Le2?EOeyPDs$@wD3nR2D4SY z&P^Y4I%XT6*PzVbu-B(wegQ_7R7Nt*t&ALpTJ z{V)4RnuMO4YP8I~LFrm3u6_)X;6Md{DvjRX7%U)D(SCwmPNzxyaQK$JbUk^S?*&z$ z)>r!|>V(3C2x!@c&eqjWfb#Do3?ECr{4QD+fjw$m7+XO}iO~Jmn77l$H34Wk6bU~& zG$icz#yHsv*e_K&wek;3<0lBdzd~eQG$^xtThK5G!%xhPeu7mThDg(0icH48m7yE- zbTRK90Y3d=Fpf?ZUit&KrnB1i!57?GJs^+A+P@SBC?091?mh-YL)@voYugw&iu9o- zoY_Aw0@~~9pY~^GQO#Ml z%jTwbtzzB#^u{H5`VuPXWH0Tdp6Yi(L(i;j0aEli|Nj<>Yea(m_DYU2F@ZAF0cNoN z>oCHa(ZXAX0iIc3#?%wfxqiF6Do0g9Ui^}K7IwIv*jnIiNE|rTE{Px~*$$)L#$XuD zQ;}#}#N23h?V$5}mn3H?G_J})kHV-JH(%gNi5Tmvm+btFM=fBsA%JIKns-35I- z^^vsBcG@~FI&biEQgs?gBI)ij<`g%JB-*pycP>=buHUknWBgcuB6#0TOC6dXEb}y( zVx%y6*f3ucxCf#+qq3_sVxQz zv!<-jdmWTC2zVK`9JiavT{C>{=eY#-uqKCPp*YBJ*+QZTCjy!&_Iqz$U0;2A=wh{J zCH}2%zYrcjOZ@&$qDL<)%gIO)VdCCL(wl--tG#Ny5=as|lV6P|4nes=T>^mJ*wEL2 zCjstmHd;-y7s;{W(Scp6#2Gq&dVQBRLri9iNwg>Ky$N?ZL)GT?*5j0o@y z1f`j=j7LLo`}PC`MR=jeZT-!F!iKInL5|jq{y6em8y^(_MKQ z-`vK-AAl{bJh93Qyg=rxnl-H&=uP(H=&hJepeYZut=5F@Ilv_-A@0kbz(3189E;My?kBn& zUQD|33=bwNcaS$(Hlr1Q*7AiTO1jA*N^KK z*kv>OrBpylQ`!hd)z=y>F9X5#xrW;%;vb1aK_S0b+$?oB9Z7#O!WqxIk5xs2a`ROB z%!9NNmsr{@A^ps0J)(i}9T7Ws`jlLzX}Q0 zbO?`Ma4MljGwNKrk?^X@jK*hKb=n22s9h3?JY+A1v4S31x!6XhB{0*U6Wb_$)UH4g zr_DcGtX-~)(RH~)*4Zf*zXW5DvK#$kDky~aoh&Qk2$CII^Og zZ1Q|=3k7CrIMmbyU7ed#wuvydKw^&HRh%_!T8=eMrn$x2Ri4%?fUM;;l2m!fU(E+W zPqfoSC`v+kvNZZdDnQX-CP{N9=J!~F$^x;1eD~;dQ03g2hG}*G)>D*E%+cha*3Jw*2}g6SM?x8t82C z-+f%Zk0h+rBlMyp3Z6@na3+t29Dq~N4rsPx1OkX5*$AwTp8tpuHS7pn-PHhI9H_D$ z?A_=eGV(C7rUj1(o@v8#ol6qK36CA-;Q1fM)?Qg`1U;pbgVrFO};LC-!J8Bk!7rG{1nY$ zovx=&w`@V;8qlzLYrD0YkR6XMv+jHZoP#T+^-A`@{)j%ESW)@ik1w$3M_oDNyES;- zGn&7KS3w#Hq=sRp${!@Bn-PN8R9WKqWe?zd^4H2h4wrFB5O13Qej{yOcM&YN@{H+L z7Y&Uw7avR2L*jn)-PO+m6*vP}Fz`!4HYUubHGRJ2e@&1!f1tC9v!EO;Y_d2M^`u-9 zB>M4kh_OLBA$_F2&!r>`R|3y4BDE9O>6i_5kUw$N(!0o$9JMXM&{zVgTM?vPYrS_l zPphQf>C-O9D-c~l1Rw5hHSiBSEQU&DwZVIa(?+LMp0Z-*4E#|$P& zB3kW@lupM3U6vRc00Uu2)?7^b+2-%zFO|FPIo=1Q(`B)W(v}srhSjs+KS~txo`*8jd!-S!84YsoN%k)Lx(AtZh6Qf3N z0TS98Of(T-Fi4V!a(IViSCT&5VfsNMMk zNt{^GK)$1iPSlg%QaoiGQwBx&Fr-pPW@bH&t!Zf4*^w`As{R*MZynck8@GRdVIYWv z0RmDANJ@7Pm6q;Q>4uR4!iI=}qf5G*(cMZTp` zOh0~JDFw8V9wO(vHv$t^JdcUzY>tC0ywyK97%xvcxqcsHvN+La9yn}5RJvS7vuo$Q zx#M2|7D)wav!BbF6t2c=h9*#l#}GVPbI2{HapZcNtt=yJAbl_CODo!GXe)4i%NEAe zenWmLCa{}cX?v^sJ5St)az)sPP>-!lU5nT0Yh zrri|XAWzekGrN$+%0c#TolE`9Gs!k+4ZH{gW8-^@=2O`#H1Ah-glun;QIK6qu@y%) zsj=Wg5W2apicF)a@6Nt+IT6qz{u7qUZ+^dmo(GJWW-x00D`J!bd|=DZ+lLh>(^?{c94wi>pu zvDPY@3%|Tog~K4^kO$ymApiGo16k+ZMaI8h2?VJZUtNxYeuDKd@-LJI#L9eTwk_f_ zX@BA^F2MbDD0J(^!m`W`_cnN?YEG|9X=xzA^FPZJ?Qts%^#&%@-0u#eJ z^7Kv~&$|<3CUQ~z0x-Rc6A#KBrO1Exw^YuMdG|vfM@YiN;==d7kIu=^$I^>%bn^LM z2$`ehq<|O#7g+e^>oH=z^9YYdNaE#6<-Ot$L$}SgBUo~7P%Yq)x#YNBxSYyh_`;Tf zuhOtdJ-ItQwALz*d^;yz#SpyN~4b%sXCAb`Qs0 z3Y`y4+o{v>&1EVVsj0tD2Y3zvLWprmUEqYwX9vcg!ka5%0}%7$c#SzPOumM+S*$99 zsEKa=KgD`3RzUEz=X`Oh_>S%da-#OMbyT-Le$i_PuEvHN`(1Bxj=Jau+00#r849I2 zFVQZJGX_uTv|$u3;TlId&KnYwOL6tXGH1~lV6*U+Gnnl8j8bAvFS;Y4;J)JXq{0cC z@>XKr4#k#_`SWdSy_AmczxcL5wcGd?YK7B8p|8;K+Sdd1e@;`9 z#Q>0b_??c)2=uQ|ZNhI3amLV)s`(KQGj72LrJaxGV?i{J-DN@!>bBtf%H#k~UJeLC zllkUiY9+0+xn9qNKnc@9yQv%{hX;9=m=9U&GE z7Pi6bifi+LuT~}&z88z-yp1W?2SJ zWA~wti%zYd{Z92HD~{`q5#j$k=IGxRKm-3BCAU{#vffy575bS!DzrU0+^DZoW8^xr z(NsQ->UJdk3ubVqIOfi_Sx4LMGsKF0tTiIHLZ#!~fVcD9xwTcFDJ7wn+Q zu>!(v>*KxHBVHNy5KI8&ohTm2gQB`Tg*Q&S^PU=g9upGFXiS{Z*0*Ff}BQYl~FlWIo*SxDcKTjS|(zvSVg!)$<~@aX*Kwh4WP z=l#WX=0MqNwM+ENDDfe(7{6lzf+L0eBZ_a-7U3Lfd{~N(U*5y*z8i(FKlUtwVIjZr z#Eti~ka39&2h>ul$pE~S83o^VWv5*o*mZc6n{P!?ya1vRA0bXoy-CRo19V_nstk^q zDNA{NU!%n+_Xiu9^^ZuSZO?0>Tig`WW%m%Dj)ayE37Jy@hh~NtG~sl@F`jnMY7`v(QXday+=*!TG& zpWp~sSgiRBOkQco2#Va=l{Pe%(biUwbRje}c1wOkd=<}cjECJ{Rf?RL#~vD*sLJOF z7&_z>rLo@pBWG6EZQ^@pnOl;*uw{=TWH-P>F$jI`&?wWmIyatcNMrlMBb|&ly8TXv zQ}xDgMA|{Yg;0uA$|xIkL_RAuu}oL9vq48c^?N*Gguw~G#wFrkF%EA&U)l$Dt`$4Z z?%Tr~RIu5P&dCP}f1&Lx{pt^F8>L%!Lz4?}UUk@P1sUw)h)m@XykDaK=&pd}My|}e zoNkN?YTyAhBsi`RW4M0{qU6*=cTfcaif$d-ZA)`j^MZ z?Mj`($8L&deDK?<{VT=8$T|6(+C;sGAkI{Y^1^B%kiNH{PQvWPCT(#%@}9MTO%$jFfQqwH!K^jC2Tnb(+rEOdh zGHE0c_4Wm|?(^@b+MfPyE9#AknTm$WSB^iiiZM-0)%ktt<-SMw6Hbzf4;eJpC;o-> zS*Ww4#0+(;-hn01fae93c8-71CaiZ)*r{8rYg-+I@HH4X2iJQp5Q1drd%6aCElB;s z*_Di%?s-(n#K**%U%-T~PcZ(DiQswf>N$tLMjkHemb-7-V75MutGXbt>e^#E-tY+6 z64>?(4Wqa@idJk1=tq04!^kb}eJ&+HPe{4X(=TCq>|rOY+s-^2&1E#XSX?qTPJrt%lY5}r{)4^@JX1NVgn2J%(>@(CApaP@SY z(tnc@(0;|W_kE?Ztd4Kh5-U9g(U6!PgS)y?vW2c)k@a^i(4IvQFsS-X_@hCf=qdUP zo%P^#zE~T>f}#FY@hu-eEm`ydkU-`8XW9`APO=8I<@ftF6r>X*WiuxWu}*1!D@fJ2 zSk3BVm=VPBB6)bk8gFpNkx-)C?Vugqfm|I?sa)n|Tt|jyWjQ0l= z+K;?u^^WgJRHFF~4~xaFcQf7V(uqKrz2*2&?4Rw7J#z2fEv8dfs=YqMEWBYg6CrCc z2X3`0*DL}dZ}q0I*`F!x*Y#=15V|a{6iqnge<6~28ME+$Iw2RKz9+NhZ=jR052g<} zRWHozXV6Zt+64p6fxBpEE{8o9TNDt3Q|{wK`&*I1z*&r%{(vGiR%)NcAeA?x=B#7o z*l$#igS9?H?8@TZMUPF>xKKL>illsv)+Sc`@bsf}g7Y^90oImxcRmS8Y6??Ej>mbW zJ)5Q?J~DDt`wOuRiGksW8ITR8-g}i91sQw&ezB@$eP6~$mOdB7ssOCTCOq#2j~zXJ zEyYF@#PIZ~`7*fJZ_xjQAvin^C_;;UD97JZv_E*qOnha-J?N6xBR{0|hAk^J?qS;@ zY+~J5&-b-zE75r)*-jz9-61>sBo)=_UfNCplVavzKk>mbN+hdZUboFz&a}2p4*iM- zV_~d9$hQ>$V4&lB2Be6exvaxE6q;tA-FY|2*`CN zY?+!;$e-)UL%zhLf{<3}EQ68qKW8}LpJ?eIF2i37FvxL+oJZO~cw8)_41Gge!3$pI z9+3CQeom&fF8+#d&a3!O+NE9!TnjOv_fP5$ia9g&J@ChcfW!=C=v7GM2-Oq`yX?{; zsVy!CyI1Xz`jQeH-^M;|_sh;jY<5!_{egmkMvEH35imho=gm>Lfk998V_`Bp>%0*8 zDW7dPT}=?i*kDewB0J}aRe*-TsNbo+vL}@bX3949b3+6SCr#aGuTI28LY9>-*eFQ1 z<<&ChbK&paD4ooG)>K65KF;vqC$HtAb;|OZw-02WdR_OR`WYj9--1BmGR5BN@>p@HP7dKWM2ZhqSFf7ouX)Y}Q&8X3q?VPA#X+I*#CVR4cJ{B7e%m?JcIx-U0=mbt2nNH2PGB%(XP4#AkIJ#lKy} zQ!`lMpJz?!ENoK`kSI!+L-f`;XREPaLD#P!3R?dkV#T2mNrvSDDKq}$L0@9g93BkC)_jJ4;w|Iy`~lA`BFbOZ3(me47?jQ z-;hF}dBdQgy1iiU>Y6`3TTT9L;8I3m)2?S{nD= zm7T)j-sU8<<;k$3Vi(E7#Z6Ygs}g9LfKks^+W7Zekro0A5eM|uGd%py0);dRku(5_c}vA zzN_&)VpuR0^pe)p+Y_i-*_w!1^^K{C=epMrCz)YVB$B^h3J0RJ=Ukyx{Iden5){X= z@0rWHMS*Am9)J1tqz}YZn!-Q;*ZVs+QrZG^-R*s3V-;jy;Y0lCa?^-po&84Py(%Ke zKC}?uJ(aU=SGsq1Yw+UF#iq-2Uzw3AXU*7SYu2wgiF+=$*RRj|hi^=%or-Lowo_x* z_tQzuc53HLg!vMvE~@c4Zw~gWDT(!7LeMW2-2WWBP%WizR2Hzd!SRi2J{-MW-dxq? zd^mbLCJ@9_w-REnlb_h*UWcirUjaF}vf6d`2`R4PtC2tk|L#EDm?ZEuqik`iak&@J z^VQG3ZEtBb@j7cDQr5)IR6VAg-<6vPn0#-qd=7IfSYbqo{&H*@c-!Ble&oLv{?73% zyfR?V%iF6v$9Gikj_)ReMJ<)gUJo+ZZC1Jhj9_feQ)lm8RCx znQy@@6_)SwUb702FdI%PFpepYG9eq^p}NhMi~bdMPO?;98QJIZTI5ygrP+=NrzWU*pTt)ngyZlS!G0Fk*%J_bM=Yh0Pu z;j6EZXFL3q`Bu9fZDgZsx9uRQ#5rfl@IE`&%Q^l&<{7kwixlu_d~uOx@DbkTIm|_b zNe^vb9JnQxM4u;klpSAKFOsEv+)^m5_NPF)SSR`&M?8vv#L)C^QbmJj3VB$QwHr;s z5f$%HgKc7fC``thqgjtS5G{E#@u^{>BKFP;mv~YBZh$}2*UnwN?dzG$XCHU_3*rWg z=?-TEzv7~eq&Z3yBci%@HaEM84gWb*+Uy(qCi>8cei$j^_5D`p$2I7n*i?Q+?kUfP z<|hWz3lkdm5$c6?!%F*!D=cB0lb=Z`9-|>T;J|rxYIrf2^88dLA$BI^&z3@7HKNRH z%MDC(XLC(vly_kdb_Fbo_#}0&a1-<>N&{2Yq}^2fRz^_o+V{b2?S0JKONc>?2L^qnn0DBY`8 zxn0D`F5~cV@BA>GM8)aRh8DFX=9mW22$u6X{x+L8opwRE=k^L+GbinonX+(Zxm3U( zaI~~K*gbH~OQM<;V~zkqxoU%xgTWcbMaN${V54QLR~#QVUU&K^c;+ZT%h#Xt^_WZl z5v6Tqqx^8q81n*6-8@RbD!Ts}B8>0J|E!VwlHRzh7TiFYsry3aB@5`0ju&@V_VZ8# zaCTcmO&9DCe`&X%sDa?StZAAQ0uSIYX5?bI=L)0#AFphlrn5WK7&|&riy42 zp0_+qwWG}5#Io9g>$GW4qbp^ry|w_AY}+DC{j1|* z&?Zet@+KhaPG0!Ex1jTm1R{W%ngY)o-VX>xj~#poZ_j+mV2%uP5Ks$_n+asvPFv(O zG~sI-fFx78Sv~@Em3u?!`v?2y@(y+uDXEf{nXkm4lhZN5otnh@eoExg=fBX74$h;F zsryy8YbW}46J8E{XSTTC<>xm+VcJqX|K-{_i=S;qJ?W{dp*}6Ibjw)RlX(R^n_RJU z!nLh5f3E7Wa=Awpa?k4+OvX6Cu+2kC&tH9LFG^_laN!wKiNAWaCm)|}q`GQmQ~2kJ z$SMEQeqwLOu5YUi%`$2cQq5H;TES=G9U51{<63evFhRLLtG!}C%wq(@bZmI zpyllrujr?W*SNylUVfB*?c)B9&}P-ql&_q#`R?Ij!OR;qztf2{RSDJ5Hez3`roxUN z^!E3)X4r7pihi$B-ooS9A!%n~{tE>gJ|#8d?TI2g{RMsjS&T$jjrxU5fenM+>4h&? zAIzyVYA8czm$L7z5{^+vbvrPbj%E`1Ec%C``EnN#P z0{}}6GYsF0o>t*x=Mx1D@PMZh`wu7A5kzy08G`FgxBK)BSU)qq5fw!9cIfQ?a!Pf0 z_c@m4BTgCy(w8Gio{-J69p4osH8ZJL{1L96V`pdda=gXs@KGbxl)B@oZc>W#)HtiY zl2Z7R1pJ^I0~u9RgpJ>PHz@0P*5Rj{XP(7ae{H~beE!)gZ5w_!An857RJ)?2a2+NY zt*7$6(C8o#PFQ`_`C?$1gQT&%ivG`0F~pB}oYvUo2MPclx5c?ZQJ}M!>mOMFAJ8Xt z+J}=#<&oj*s_CRjpOtBJV;GKqAouTMn)NOWm>L2ph~D+|5=fSg*Q;`P);8Fd%)4|_;n`jJnTX~_eZwE?RMk&!8BD1SmiN(?Kg9V-wUd0JXBC

%#EmXg-B1imgtk8IAAcV(=3CnVHjew*HOwVr|FVTxPg#A|UzLKlUw{*ZBi} z_BTmt8=61XUFODKCJT}XCVh3o58iaa2_YJtSz2n}x-k~BFEV?*tU19X{xeV+-n92t zzgLF}#x|h?hpv<@m4{dp_x}hCBP`~6xGT0&7paT#xkenWo!DLXY#3JxuyvnaH(g!3 zA0le_9=lh-MCb2cbn~=B#5=lgSAme9n6A*DZ(WBQyy=M#GD$f6(xbAvD8gyp51D|R zDklkHetdD*@{{}-vK$Xz;ZS$7l=^uw>{meh`=f3rP2QZ${_ zknQeM_@j+1+iYzWS(f=+#VwTN6>&Xke;-UyZrMk0;A*M01cBYO`H)g=sQJCcV`It4 z^?eNW1M_HVn}x3-3tR_^G&-o@=yQ87fJbapTrqAseiqv74KNz2v*FG+709^VQ?n*k zRV#SGo6F;{*5HjU`bkJ50|vCl z|AQaWrGCbt&gHKvD6cp~z7Mpes2i8Q1!-V1EY4^czU1-kYv3FA62u6Xv3lDVHmY4^ z@*YpzuCt)Z4SEHt!lE0zeY@hiI{uRjRCxtc?(jR2{F{}UUL^(=>+0U`EF4PD4-AWBXuJ*<#PSNahCp1U><8=h+0u!>Xq6dvs zFYCMM?9BYTB@lnU;$3FLkqISv;yGIS*T3`xp!LhNEDa?V12mw0#puT8Gp(`jRKB4@ z>=*HOE-x&1Nfp-nzb+97W5b=+5*``yt&6g%e?DBv7{4ULgEXrBr{(&paJPhvI@fGU z!LM=<-CHU8iHZ8epZ(siR->?6~}26(&l;i7)o$bcDF4j8VFxlk$`60bZ+rMlf5#TgUzqV-5-cKyE>8eIbt$ zVyfSzw2Rbc6*b3Kw<$Dg$`)G0a{{x|4~BONHybpQ&w`EhnW8u49}Hz>_#-j9OV<L!YKn`uD7c_aSj`Uqqlw{!kP!1R#VAN<-V|D zYkpoGicVcPFN9Y1XKwGVIoOE%_s4DDC0@Vf#3U*i-qpCt^XWw5xYcgty9JH66648A zv$LHZ!(^hPaDYqF($?|e=Ae=kzrXz^q!HeJNAkIs;SaX9bFjA$RTiWZB;{(|WkQD9 zUdn)spuUT~%ki|#pHpNgN%o|ZOx@=BGAIcfB6!={&KSS_fbAvX%Ncw|RwW zs>R=8%Ndy{M$b>jvYq09S66l708+%h;=$?D@6f3%xU$lZ@rP!SSK;)`zO22qfEK&( zB)X}eW>lHa!p%)1v-=e=`HL=x7EnV;k6YfAMk%6QShn#et`1qOTMReOQn>wsd3e9M z0Emc}LmaAne=~DoT(FMbON7>|-x#a2Ze(+BV$0k|sMZa|J+ZPyIo*l*Kgy>O(|1Y> z90HKB7vZ(k7m_D_dPXx_@e<-uzF!H{3#V0(9u-@AWr5yz@krHa{T)U;mhPCgtJ_QF zS+W`Ib;)+iDDOQbGxo3ftR%A0k%K@Vf<8Uw;_ejcJihg8ABaUX2xQ$0r~54R>j+#w zQJK9c_RD(;3Ul!VR*DZY?`j%*56yx^_oP~4(-8A6HQ=N5c(PVzcSLOH=O&zTYb)d0 zU8RL-QeG+>jO74ALX@vYUIMb0@Kdju4QjRdsNyjwo;a$?*-P_sV#X4-?s1noL8{zS8fxKfus~Qi+s8;ey?$&*b;|9ET*+$%+~RHPUsra<$^lLEInFd%AkytyRT$8qQ;L>NAKWvk!Da`Yms- zDRoKN!lag4t$Pf~=(4~w*3qsyz4D{YreS=I`x|<>a=Ueu2c#B!z2el!KhrTo=qZEo z4q!;hIh8*mph1kx)_r*K65FHiC8C&>r{+*I?AX%160jGr2?$x%D3OXz|CX4*dCj+; z1T*D2IiqL!A;)6aOL+3Sp4DL9vLab@7~fGVP-K@1Z6#_rH`R0@S1xBWB@60_!X8nq z%(N8IVlpX+3an4al{5F$*t|T2rAI_IqEg5^kg3+N$Zo5bn!wjI`!`M!>bGf{s`rFT z0^E~#QU#1CF|{_->n7*pSwS2=rZm(u+hD#KuOUa9&iKPZ%05<|Yv^O!MmN>E1`rWL zmVsJ6W`Cg^ND2tHwiGNe9*qcC7%udHuvLWbC&V6~#-5^5jU^^D^?C?}~8U^CZW$CLwtsl19v_3Y7#d$}|2CLsM>0PpV#0K+z z>g+(E7wl3JXQ%|i#J`LHdC(nbDFQWpqWjSj`@oqBMMWDnJ*MpHc11Lu6f4{EM!m|X zBED)&x{Xw^b2+Ma z5a(hGEcG5LUK6&2chebPDdT#O+~@r{+i5$<^hL1cV)Sa~GkB*-B;fY@=G28cBfYW+ zeR0mGmK-X_NwvV9YD56!%S=%JYp6CEUSuzvr0ZZyA$xiltX<%g-0gi0ZDp!B1d8rb zSs&+?Z-?I2*jn#_u=<0NfO%>cp`s6P$!@!3a*I!QqvyiLvVL!!7>93itp&NnqG1;^ zy5(*!z1bEnq**Ui;kUW=KNuVInSIB;zuGf%rRx{X*~6=CBXdYW^; z>YDIo2ihXXQ6aCBSc$(fj)?Rs)ynVmYvYuh4lu?Z3;fF99y)>?Ij)Tyf|JK7$R_*F z;Me*Z0*#{g%6B7waqQU&7xP*s?J@j>Q^}S%-zSWcpu7j4n~>CNN%}dXhZJ!t*{~@7 zu)S@{68mFQYV%p6fT<5Eu4}355yPQ>k@CFWx0>_hD|_yZK;N_v&Pkl{xVS{mRbUBz8=AI*`@mO)e9q8uaK`QTHAepIdZ#56imagkYUFEIDo7oJ?>^ zXK=N@^@PK_fyOcvxDqLZZ}^D#PLybyhMO(!w}kj})zy0F!=1 z@&SG9Tc+EQz2#Li~tn3rv2a)}JJ$i8!g4kF6R5@-KhYzi(HhXVMKm! zryy~%UTPNJ4Q#!TO5hT_q=f%NQBu+xT%?OP!ADl2>A8cF3S;TD=O@g z*h=Xm6FG0++AS_1sa!%o{!ZtMam_GnzzukX67q1my`nSvtR`??KjvmmFD#ff8MbN` zoc-dO&YN$sB@cSJ)k$ZA&J)XjlHiWt%b7h79e?CpY!JX^8Vn9K( zH)HXsA#^O0QPrL>f*~OZ)O?jDy4$Y~s18`(4LLM&hpZ-&LphQ~g&i>;7RFP2k_|Vk$O~pUBysaXm6WTfUH%v_V8SCy{ zT_n@o*2(>vTjzQ><=>Hi<(fRYT{>CM`TgM^9@E?qgV8QH5B(K4DUiLsjwE+3k9`^R zo#<=r*yiSui;~)g1%wQB)t`#(&{o!aMlG)ZE8*mLdfh%5nS)#ux?B_NW5cOd$NM&Z z&s+zR?3TI<(BS>qR*CXtyf)Mrrs=PKs{2W$U{hDi6 zO7yOT(DAIz_l{L9$VCGCq#S*x*0H<^pnC4R^p1~KxeiAN963mlQ!IL8XddHgSGm`q z1pkSC5|ssum)2<^k|%#5*HJ+na}W-7MLe#HJ(!SsJ~#XBjUf1SO*K~-V$~>-JGE9n zES^_PmYPY7c2NV@z)ql-R^-#dZftFY(oC@A;bB3w@U3Ix7nfeuYQ|0*`@@}|OuC|4 zzBZ}gQ7sB#_goH<93H0F${y($oZhvlg2XjR+V_OOXaCP}Z}0bJ&-uQWM6DR}$(|+z z&7;6*l~>>ijFo&bOv%{Mb`X)wHefe3DYw*R^RCEdd0Mes5K1&rJ)Ko>SvSl2Il%H_ zs%x>yk65Ja<>QHgiExL3HyRMXEJUH#VPAO(AL^X|yA5w3pKo15=(FODRi`F(}m zzVbXm&SGuq91~jj<$*f|H{}vcimbI-ychludf4a?gfS^r#5FPJ7bUVc)XQT@|MTQnR8W0 zUq|8y5j61RayXrRBcH014I=$7GW@?uJ=_0G>}5Y)iHh;0UWMODwAq%N_UeAx6}LMs z_eSA9I69AVSF?GN$_~1aMw4|lH|>sZR0?pU3JfVjOD}5<$X9`}Y^?EvcL+R_)lA?O zi5>|3gdT#tdwXB!PJ$dskX#9@ZGFLS<{ z0f(r_p;4{+0cq6LUqIRb&M8>LKf#!Im%D?4e?ejdS({W{_V!`CM9CzU+dVZOc^SA4{n zM0~emMGxmDw)NI-{AOkF0|&<;87UAL zwB{fuvY(zn7~h_+)cW!x=B%VO-wNno-^G}>(W^qLmpkt~*O&QLNhO_J;U+{+MOpd9 zx?5DO*C@-Yyl*_nd+-`(NQ(^?we$3SQ+Ne3(|PbObZi&Cb*hi=g8U2J%JN+DUjc0D zT=%&hOxm5|_lI*J`OoSxj3}&Vy|P zoV%%tC2}14u`;b|%EF@1@gZ6mx?cm(9^D!UV z4_v{^n|Rht%{nPFUG|-al|=AdmAtO4({Ky;mC7Q=Q)3_M4oe{aKMaUnIf=_T&sYjr z|1z02KjJc->t7(CJK5PuwL^w-Ir_{PDiR|$WEo#)_AIXQnhR(_|jq+ zjP@PYF*HhnHga#iS31toin6{!v>l#vg2ijmlx#f=8{vkfS1-nQc^{+Bbl7b+nQJgjHi+}o*v&; zwDYLO3rUZ3;sNFM^ZQ7@GuR*hp=NhdU^q`)bK$`(e!RgQVB#S(c%4i$5el}LPG8P` zj7@b+<)jzbzO+`ik&T#P8`9Gr5VoF{fq_*@pzIFtit9p(PX}#MKz5MSi=M9VBr8eW- zH+inwBY2(WEIuMewyIw+)j3)SLVfHRpPZUNEE7?&&Z0J8N0aycBT~DW6*q{`*LrwE zfsO-1j^jgB)>}aRg_u?s4`>wyw=eCG#smaH_A_6c2PO1gvUeZ=}`m`hd>kIM+4P$0Jctz*vSbnp2aWPfI;6PBX%Q(=~40zuVQzjFUWCdp8(z6n8A(2UsYdv zS@*p0sk&tkO6-%tE;pUbd6+xJ3BybI4tS1aF?CCJ@$L|z=zNoe+Gs}D3t2;H%^;MN zbaf^0bCS(=?&co{1d#fIiUPnr!mpc7O)+J=Mp?p^wSW1q1?T1o?RD%HKkI3uO9xih z`eqrUn%X)WkC<0=KR^{{e3*DpoT_R!NstdVbOlAv%OV4j$eUcHo~hgmXPgjjJF$aDCHDF1`;3!ZPJU=U_j@vPZ@QW=xr;dC|k^yYZuA z3)C=49qyd+5GaGK?YV~TvHbOr_m>(vNH`<~B+=w6PPy9Ra2VUhIRuBkhgR~2GckNt z%z8y`{Yk<>C^dlXKllo}=!-ZjGzc0J>Rs37pUi-e#SA@T%}=%8jBjd=KU9VR`j7v5 zL^=?(_}p_JJ<*g?Atn*_iU9jJ}|u!4!dJ;JV3j7LsD=bMKux99&SnrujnSV`sYl zNZUviiiUjGImR-vPxLJZgI`>C8wK$3PITf9x0zq#HVX`x-YzNVHDiMbb01(#Eb zB2?)(*M;2^kufc~X>yQ-@e2!sxQ7+C4S^;$fYZe=T%{iDe6QR)TCq|7vGx7T2n*^` zceIaFYLj_-Yt5+@ro;Hqr@X?3x=UUF&LAmO8yUJ&VUznq-p=X0L#$a=stnO)ljcvJ zO8@9{2`>O2-2K8Zb2$k9b9YyWE~(bh+GK&cOAfMacN~0OtS0XVGaY*Sqw{o$>?CU) zWLYS_?XPlgWN2c_D=S%19BFE-m39tzD7{^Gluk@`Yr2;{t?(hk)k7N^SBab#MJ;?) z6Xh>Pj%@V8OSrIUr#5B+aMDM6uk1}PLs?#hK*`sAZ>Rz2TQxBfM63ahc0IC5M*LmR zq^P7eTl&?=U9jTPVoV^tep|}5Y0PN)_tM*`>Z`Z}EjVqIM_4sG$-i+qjIV?@+jQHaInL}*D1z8vBp59ZD{58L^Iz={DzwsAO zq&LRapB~t(!*4eo%QS;Aq>Z%Es|C=)`ARRK&2z%f&Clf^qqG%Z{hSPvKqNIS;$!lVN&Ry=BU$SuQf+=>-ZOVECve%wbEm0B+FTNJ6$Rn zdJODnOZR<@s(|Jmw}Fqr@zvAWg{hpTidm~s$$lr(3$xiqg(u+fl|RyMrZ+oQTt}zV zr;fd6qKushQ@N>BL|NPFIC+0k3kDw$rVb5vPvi z&q|)fwuwm6=E-<$Sm~ip!dd8~iA8_}=$NaEZ8zd;N$jiyj8Q}toc!nCQUmIX+3&?Y z@QG}&$z5U+n)$w-W?vbG-8g+Yox6G5r9|DuL8sFG)N!|U_|OTg>p(CAp2=AQEHKeH1=i``{MuR9bQPe)bj~OQC+}#h>RUdXqEonCDYZk zr`x=@((v{RHo-V$@`3}(Li!0!uQNxzy@!Y(DA> zOcpS@28U&0zufh7U!LvNx-7tN33YZ%qN2W~LPX-Eu@8i0BjSQ9K^C&p^U5#L14GnZ zbN1iDcw+W|so}1QfrV4gN6~I=RbWmeQ!dv~9czifkvAKoQ{u4?`@iJ(%L#$*r{}3L zg^j>bJ$v~;NUT_(v^S+Q=xDoywmf#LW|jlM1;3!&p^40P(gq-dx% zg4WB{uiz@d%Mz7D7;-d*323uT@xgB?xj(3zJ?>V+hifV^hpCFk$}faKwh$>hoHe~b zvJ^Rd>F~6LbnxXB1b<}s5*fL%Z0w;mV2IS1M&r}G-2y$SVp0(7GRNi54u_s;eZ8Fh z>12@SFI2MvSEqJc8!k%9kefHaj)oyr>F~9riws6H2b?igI6|YhkBlY1Tf{pfnsK^U zOw=$xSE);~Ysy~pMZ{PU=Fzl%ZuG@)yq(U=0P>OOZ&i(rej-ZgL|qTz(_~ci2ea)< zoKc183uVRC!8*@w>Fa_Z5$H#gJBNRszUlNaLG8H!#X|Mkg|I}akQQ;BmYy$SKyK0zx zxF{^m2-NzqwD$&OsaN%x;)G0WXixN|o_jM9Y6N$E!%kIeejrYS%9jiG8Yvj3S>sby zq?<;$h{`^(B$UA_lReU}U2`4whz*k(kmKJ94HFY$zRt1rNf6j{$#GObQc4p0tNtg& zUYpxPIsA$FLxuy+}Z18X750<8bAhKrD^Y+NhX&$QGr^k1GEN#MX>=)c< zW8hoP%0zKx56inniKiy$F*cC!Ux?Jaxw>p)En#TPDkeqZ&bAar$}y81?EIrkG!mHt zIjxJkq%8Wsnc@q@9zrc2!SKdcaZ1E?`gu%*LS4z!BpO?bKzkIcTBy9b=9g4$N1Rmq zEHcb^bsJ7a@JurBSm$o!*Wt?BVuCR^_Ook>iIPv&t1H{-#Y&PC$1~L>HbMBP*XCS( zv->$`IH;Z(2fus;gSYqC$F1eNn?Guz*5tIvB44TFB}X2VxNH2L*_a?2uTfeG{xsFo zw0L^XDg8yit|pH4@w-?mYJw5^>e1E2rGc?ZiEQ{=rX_-}z<+g%BKuo8m;*}5xvc(9 ztLWS%%{!h@_5Vpj_?)=XB+8h!;)LPQL3Fa)cJ_&5r*?(~Sa}GG9g~&Zr=o2j>O<(fU;s~Z9$GO?ION&1gkQuc}Kc`+7O>;*y zp%&KD#ww}1NN;Qjgg#4>a-}nm-2KeUKb!My_7ZqeU-1J`iV_9(6Z-UeJS7ayzCF_( z#kuDFhVMbSi4KC>%(7Ed}6C`>Wahswf=G*+C&r^4-jbzhs1w*s;zoSI)M}a4=gK>BTBZL zd@4cuM>;-4`U>RSgNyNDF1~LrZ53U{P#w`DiRH5n4bx3*4HJ zRxqHCP)t!}&eAQ`n{%~4) zOtd`TC=tG`pI5DNSOfGPMVD&*+Q?e?T&xmZp9`&!d*+th>fN(oDIP0Q0k*SX$U~jK zyyr^VVa&dL+bI}R3|XDC{m+j$FBM=WtKta{ubkRJL#MCx-@f{PR65uDTFCZD*s^D4Xh*rFC zppY8mWy4|7D#6(=xEM|i)pTd&=>_SKKqdSYckLFC%tnx%E~cv}4(0;gnwzRmdJc2mGxW3I z3aNB(ecq@S0vBFn|FIJSCFu_5Ipo}1I1Q>lkRA&utE9!{tgeU~U%Po!(Pc#vSpRuv ze_^(4+vBMAwWQZDI~RIWdLJi(%Ou&#ZorOl;XYE_$L>biq#oV79Dc>~Jy1)buyxdZ z!^%;h($G~by=4X(~+$SQzAB0QfxG=#;kU1EG8D2 z)i6R9A$Ewl>}rfwveQb2I$=d(3}tf9l*Z*ShW%0P+5g}7yyv`se9!rQpXd2J-YABv z>CRM8xOaU|;63hrg1M&$I$%t3BOX>xIBQaWzb7=!tkC{89glAFG%Jk~@RJ_Q0^JnG zc2N)U<$cg{rebVNzB}vO1xiC0yE9@FvMpbu_DlBgU(b5?TyE?Sq-y;mIq}5X+evw_ zk!}6>)HUf(vj=sn95Kj{NQr%d+=0>XXOxgwZ+j_hVyk3tmpjMn|rziHvykoNn)hVJ!rMAWX&GjRdU`oPjf*<6BGMeny6rliomD3 zr&gXDw+`LB;*HhpM);>yleBX5??*5Q15>dqbKUHB@n!GX_+tlJ^ePGh`wUHng4+K! zE0G4SEb^3!f65Vt2wSgfhBA7kxh^0FMw`R&qDfV_Yq=@Am2NVJhm*=YD??c83vLl&{@{FgniO$Gco?y?+H}uJO+w=I>*Y{M>Zy z6Za9=M){SH#}V@tWaP9Feyb`T<;1>?rspBJDaXqfs=MLvbECOc=-=K@zoqJe;d-Xc zbB}4^6aQCzRQKC7k8)KGBOT!`hGp=AOlalQ->pxAV$8&r0%3MMCsiwyjUQxMuZ*;I z!|OZ1mHzpZ3Osg0V7c(fP>~u9&S_pSEUbLXHqa~KH_12~h>VB4=$a|0EWcIWd^PN) z56lY~>wPyk`F;rKJsOr`tK#aP=L0zQ5L(}<8W7UZZeP>XKUGMf!JNi!cOFuAHBALm z?J&lM(7XApb}i%n2{3|{blZt<4 z4zARAK4}C5(P#XhvQ{6-jrmJ}Xw>&OlVP+gSvJ`lK2EaU-qD*3N=N~tC1ULs@Sv|l zYdp*hst^exEg?}05|79uv;X&A3}_8# z1WEi%K2Webeu&Y{95dXgu~a5nHKtvVIT8U4W`SAM&-qKVn0zDrnMhh9UfrwD;i#64 zJbf-3XVyy(IC@R&WL;D^*O=H?<4ewpuooULx-9BUOv;OdGg^M$g&R(#jZ?J9gA{S| zNkWpJfOv`!em1NjYh#AndIBJL#z7$+F_G_V&E=P=89 zUB<~HQ)lj&Uv@CXo8G-@rjcL(z10$vlg@+>xuZ?S zd2!`x)53I;ucz)4=XX;_uNQ-x&q4(*y7ET<3krJV@GnuRWy|5BW@bL;uC&+!{K4X6 z%$vzgHe@yY$)#ueHi`2FrTPsXd@IsB-*%`CVaI?7ELl2vjn^wYvknnGqRCfK%D*53&_8Vj$ULs4<98+7{4Vt=I!~e%4;)N8e=HlcrUlV)j~=epYC@A}g&+H8Ex9f+ zcBS~I7L|#_bL<55 zu(uythjFu&dLvnL*KJ6@> zdzs7){;Q0g$a!5UI{*j`e5`=?V;Z+EYb$}nRO1f2o51hSStQH@4ph+CP$p>DY9#vWuURx6?b z7gxS5fDHl}izkhhig)%65sCun#3<6lrB*NUtl*m!*$eCR+td)=6?&yO+!5_G6I|j| z0r!D?K!=?I<%>J3U|Xurfrhq{j+U$FMLSj5N(4^Ktx8)Sc47>m%*sK#q6;7OTc`sV z(E2Rm@AYt=f~Y_Z{?pzUl>B0CH|yzO#ly}RJ2y4pu-N2Gq_9pz18%<$9OG!{U)zMU z!&6*Ti#EkPAP7pFIxR-O)C2%Z0D@O20RkepB_29@p8H?96EN|drVmo|lst57IYZK- z;L7fgt@MiYIKv3-xg9Fba*J26ZrG=JDq3`+VzkK;Ds&1_WSJS+(n&=Up>#?b)u~Rh9F?48naDCT zmTbup>Qsd6OR}Cqq*Msm#{a(W=Xoae>GS>mzW;MxvW=N%x$oT5M>!golOy%O__Xx$${e(p`iaT;y(&iNLWNvY}$138Q=j~voI<} zNQf#dBqAa#3?A(Zevb*y7Mb(2$`;YN=D&(9^N?D9Hstm+`Crl=Nn2EXQc&IJd2YJ+ zy!i`cWS6g4si;I#Q`gv_sinPjo4$eJb|Yg;I)iDo+uFu)|AB)}&WBvQjveCCQPtdERI9bNL{Hz`?%t{ zY2%?IzCO`57l#b8UUo$0W<*V5<$kLx_;Cd@yXf2nAG$*S+1RGtXyqjuFz8J06Tz=bhyXa)yXTf6y9JV-}(Y8$Y13x|({p+V>t}liCFCP>I zxp!fGe1>;Mo&UWpj}k`uSw5eoD2t`c_2#W+1%KkHZ&BD^UK3E8X56bNlCE=|;^ME! z7Pp+lQrsVp(2t*tF>nnn9<4q(dlEY_s75jN&sw!TZO(kLcMNBYOFWFx=(sK5rSi2w zwz&Gf$9!GKaaIU-coNI$A1?^gs$dzLtg$*`u+&yQs^$(w>Fc8)`_+hgm zHnw(*73Vw=Hc?O=+poa?*h8y`mK!eEswb_GH>Uj8>AWVN4@G%fR~5Jwm1a2Qdqq!T z42=&O;Dkl#?P8ze^~VB6qSu@{!4@j%*FBl*z0pz1mp2hyAFXhOCbjj(W|1u&MiXtd zX2Q`2CNcNVoOY8x=4(CG_Qw^JYnJrdj zK7v1%_!G)<=9tx(T=I^tqKS`{bu=t(D0N8JMyHNn^o}7*w>;ONYrIQG_v4xC6t7-~ z_h&NEb93+~iLD48Ym39|&@;%nOk$3M+%u;V#Y!8kLNAp7U%C1Ydq!XWXUTwrk!Jd|ReIp0EXUDfWwERN!SHo%qgT7l zo~{_bDo*eL-veXI(lJABRvtYBP2sM+_r017kkNSnxK_QQ6lw? z(3Q57F}^qL5nFsi-^nNk%|ahv#p-0%Yp0nN6CYX&6Yd8_yH!OTyi?=oocj920`rLI zhn1pj@Hvzt(NZ|p3QtZs3Z7lJv(U1)8g_qoX%_XzKb?Ow$|Kk%yjRvX?3j#YfZRWk zhlQhcOW!t|QAAQdhILKQy5RFDExTNAX8f_a!1%k4-JtM`*(@Jsn^Z<%0wugP7M;^lv2 z*DBNMIrHV;nXg~(c(l-&l4-7wN&OEW&OZ(|LUINz7pHHq1^UFuKlrV=-!*W&zyCttTDr4sHkkt-mC(#n|dxsvdoC{1E7 zHoO9N?J8@q>Pm>E8)|Bk!lVb12(pUs4?f#Bs5gn~h5Y9C*U z60CphE-MAZXGSB|?wnHM5C4sS_eEDWL3i}VxNao&EAxVMw4SUK(|0#~VZT*yl28!{#ZF@DLB!B;C{{;aMs+< zlvul7=PEs!x_vLe0u|4|ue7u=eoDFe7&_y)=!qR? z94yvSU;V&kEL);o%FsPe$gR+q`&&$Z#(O|kf6U3zwQ)zA z>$jSHBIO=>R0B?AtW1KrNyyO8u1-=|Ph3|qh$r-DJScp|lAhjD=%_X~FI^iN9HuqQ z776u#vRzZ%s^Z#M8#}?sBTu}y(6>hxqh+T5{Y=kwX53nMWX}B$KDIi^^!j5LBBK`u zd05yOq<CmPB-%k#>2pW6X3CYdg{u{HkJ*ch|XfXX(nu4UYGovuv>7_Zn>j6_eN! zb+0j6DgU=gti6}7z7mfI7{gwt&Oms#+()@S&YWuD^4db*GP~^?*hd;FvbG-Q2WEW9 zc53unkhbjJFaJ&)8npcy`21E?G4f$-L_y7&dLqza;YE*~hn=mDTFUnv+80(mX1Z7JnfY1R`F}s^Xiki zUO^gN+4Y>3LoBc1)`G`iyRaovb#{U1i*6ThZo|oSnNe=TA&~!PmZm?(Fb3lfV{?g4=(ixtSEi=qX6vFQt z&s@d%?8+61btK|ZM!VODwKlYKJg3}ef|hh*Ve^`1r&hleG5(4m4+%b~SuZ}FQKzOc zpJ}Rl?tajGx}hj*%kumut8+Dn*rEvBNIN04#AP_5>rav5&a=QC#xuUW&#yh_uIl!o z$*b4Q-e%&KQ$?<~&ptop^%ob&FT2@cIMG&r2W~HrCt$Al(MRQ!LxG1ysVc0#zfH!m zlHRr#o-OOkrx*hNBy%x5|8Udq9x@VJc2gfy@1Pg92h>`W1kR?UpSj+I$1LfUC|jG? z2V(1&E6)<%ThkrmCr!`TD-q5@zu870I6UeFu?AOvVQF8D#Ulj{0t-W>@7jvJWqeSu zYRc@AiLc=26wK^2ucWGq$gHH^M5*%fBvzYc$)3ImW{mpKlv^iOr)%qnYCUS+d?ris z*xy#;=YO8W&azbXq+F9%X0>&#XlW=~Iy%aDYEgvkuN`)H^riMFE5!ywPf*8#+5KXc zaui!qr0)IRC3e?(J!)MYCuos;-hmBaon^T)6(x^r8tr<|CQr@3@9(a5~!>A7C*n(tlyX>H2bYjo|i`elnPD6Qx%+yir| z^%==oYYxm_Fnh&21CRM!WwT-j` z?3nuHg^51qk#$hX+!4DsvzlkFH$Sv)AhSza4Zp~yC^+YU;~Hm$V)oz`QR zp-g{l?IgzP9ARmwMzw}A6(bJ_gM^&?gUD@&=OZI?B5_J3f|Xd4nR`xozv1b1L-O=CDo- z#y-0?R*-BL&9jiOydro!y?^f^Lrm_KHa@L#P;W-XEHIosNy8ITeaMG zTEG^?L4(zyD@4XX$0ZH%0(X!+QYU7h695q(zz^@-u(F;edG>SS&6j=myQHvg-50Cv z5|1_1+kOctq<6`GQZE>q;XVSOMzAdQGU@QgFXPuf@qbA{0U~jK-~rDM>x($-Y49#` zoF*}gwo3yE3NAMrRl;3CsbKqwe~e5{J6uf_fQz=OZs@XiB+LH{#&JpCaMd2jPKp6qW!xA{# zZd-$ys4qZ9())NsCQ-1+-A-{0j>D{D{Bz;MYb!-)O8tq}+l8pn#LdGrW)7AD>_W@k zN!-R!B1lHhxpVPry7-9`=+2(3 zG0j9aqIkJyzg6L@2)f0SD>85;QEWiDO8xFb@@u`$LD9+|%MiH~EnfVlxBRyzP>kDL zdtY#nzqu(d&C+Ijn(Z>J#}XZ9)ZVgK!E4_X?Wv_mxTigK)a0O)ZC1Q++lA&|4K2-x z5{P0PAJleAv?XASuI@c^P#IhjZEV?wQ5lKQuU@$wcI{=k{A> zPAiuVspp_v;HOjtse{gwZMiMkoBP5&V|Ba(UdNxCz6k^=b3N$-P&dBK=5GYSG+Fi< z3>}FmfF!cTz6W_}O1u5!MWeqBBurHISjYG&`@$-i)7AhAr;i>1li19f)-0EWf4m&( zl__)c}n~^-q8$SH0gFrf8gdKA+hV(4Kuaxd3LH(3>X~ z?(qC@p5}4>ibO?}`2yj)F| zL&?fdc^Ary+bl+`N4%m>9Sg}!u@|L(R$o|H9Qas54ME_0Ko5Ic9 z-+G5MkGw3(T92c5JrO(_eNPKm*Tq`bB37Zh&GBNPhb3_f^<>p0Zj3eGd+*d3ALFOA zV}5AxEv+FgxKkXL90=?!K{_`R(I%;%DWBCyAfjxL!HZ!_^rRggXI%h^0u?`c^FV58 zF98YGzmS&!o(`}!pd6>Ym+P_W;~!rxAc!dBQoRc53P?EJ!M62C1%RWTV{{Bjsq)X?SI4 z*ZZl##8_vV0ssv+65Bl{nLQ5HYf+%Xy?Ymq)CxcB${9=~*4Z(vBhYfAfvV|$!OgU= z=#|3-TdY7Gt6Z@u%IkC+J8^tOH*b`_!D`_ed+)9VAA3#w9X9B$QTeDh?{#RS-i-ae zv@&yphF573^fputvLzi5?V0hxwYTxr<=~Y;UDe4GkQcihGMwY;s79$ceB*9HNR~=u zOGVbc(mAX4UwAb7!klX}kx()+)LY>?%G^A7Da1(uR6>q{_djgz7Lo<)J5!NLY!-BL zSD}q_Y{&dt!M7F+vBlFA59!G-OD6cw1|kfYpao4Zs5WFw0P9*RfuJ{fnu-0+zOhzW zPQ$BLZ#H@R0Jnfb1miHsXovdkTs`4UKWBZq`SkswJj@UV6|24A;ui!Da2aYR7S3AJ z+}`T9y4H#&+j3TB5lee_+<;eq`;yP#)&NFXPo@=;&@PeAOyB?DZxClg{}WLZ^y4@i zOs9C?!HG%jDz-$i!tRLJh;==*tSA0s-VyC;?%N06uy zJq~{SJw&U&;8ZCp2nDvX4&zzly2*|WVBJKpf(O*o;z0axcsyDu@)DIJB$Xi>g}}4T zW#cE51!|*$dT(m&hrUkg0VE9exOTaI{-5(6fz%L}9^!DOCSo7grJ#TAExyqBg&lD$ z^b+W}LA87Nr6=IHcJlD(P$_!6cFyVOwW%J~Hc4|>2Tl3`v0ZRK5=B9X30*|QRQwu$|GYv++V{8I2dDwWFBAomVO+Q7z5tO4k49u{fS;9! zuv>eLVA_w7Tr>p-+&Az#&mXNV;u|c^dhoXOXY!HcXT(r{&zpURw}L`Z&2EfcB|#jW zjq_8yO!9d!0I)$wA(c)LU#Xee=+XP1%Y;BbE^XGmUFNw)jDm6kL%m-tDARoW(EfA#bE1 zOmw@F6YcjL6%{L;#Mu6KQi>xJWZ06)%KTrBPGS!WLQ=x-x6n@NX1*FJ$ZKkNVFJT! zwcmQ)!6N>q_HowDSOKG>=8?30wy4xG$TD#!v1jYuzswwv_U5^W%NFVx7|K026I-oM zFl38c4Tv+H_K4F93t-7SjdtJh9oaG!EJxeH=WiYQ=U(EAj0Ya8Md;~=stLSc z2qsaA->q}6b2`#c-rDxwzwE}^wTrrR>TF{W4V48He-r6AHq=q%goWAm` zqbXMgkOGID#;o{%0npPn;qnhCFY8LMo+-dhciAqW1r00L!RG8*A3Q^(O=$jYbg$BeJn~l`CFIP z5HEDmT_cT6SuH^i&gw~Za~jKES*_SKGco=oWD3~Ry78i^M#eZ|_IbVOFxCTh+zRm7 z7MT=J6p+C3hYX1Y&eDqpdSwx~_y4r=FenDV+M7cou3tAb6edydW4pTLaD{_X`CWJ{ zTe9q%9Y2%5br$Pk!RNX5pX#1WvP#z$janVp-8ej+ z3j;_T=4A$pc7k8Bau&MH1=~2qC5H|VqLzY=LIL62T4H}!3WrAOJK;J56iIJDWO)j~ zOjtidiQwCsbQ*D*T!uFu)#GqHOaN|um?#Vh&dE^U88CsKs_+0+B19T=p(FB~=n*;GHJOzuoZ|)f8#kg%REk!A>gF1^M`P8&Lj9j<` zRsd2-IesNt1SPnrz4UE;%&9&rVtf4`#vKD~t?7r!K+B$SodByBAp%}zu45?B z3?v1MMk#&8XXS{4ev0Ny9k}8d-ITyND#buB-=a-B(x?(q$3>zEw!3l?>rfFJ2gS=4 z^_N!jV>QZ{qJuu@{$9Vg1r&P`kspwB;A!y6atT~-~-F<^*#iudf!@J;~y-tyXuV(D1 z;&|25B^9X~NH@i-$?K4aqMymt_EXYL0b`ZI>XA0;k$NJCf#Bh{nOY{*UE_11T-6eV zFd#<|5EP~rrnUWnr5a+@cd|pGz1t)9aqOF2bB;GfI2L4S*T4HX9u?UwwB`Exe*^rT zLga>7mL@^%J{Q0%)z(rX83#h^Erj;^(&{X5QOr-aU$xz%T&WV*#7-XQ?<@5BXc9Ew zc(H#V_!RbnvkBsU@e+RRBo?px1-Jxk?wx^mPfwcU<>E*Btyx96u5H8j#WY7JTo&e5 zq&Gj%+0%Q!OS3nevw9M{72MJ;*J~zHJZRgtyuf!73tIbyq1$WQHqwi}rmxlctPCWF zL}zMIQwpmqfv>In%gb#;?-b5^MRa`rXg!G`>74iHj*frQdRu}|N_^ zpPbjfbbtA^@?Uye-vGb7tuTDZwlei*z?hkc!`Ig^pWyjSVw(&4o&q`V+SpqDEmnKM z#3|jc)CpTW-QGkw>_q931nQl$FNfW<3Tf`|3r3HCW1PeWd$uQSdcYqBkLd%14W zNO)oLEx9iP!F~LLeyed?z=7wc_ud=->(SPlgj^Q-li2u4qc1EKy#=sv6krW8xF&vfCWU7!74j2xZ1kSlpErk(4I;A?=M!OT4 zD9J@pr~t{}hk71`E$v|XlG?EXh?@e8LVQh0T^7G#(Lqkn{B_9zzvqiB4o>8_0rod3 z*^0mA8tWnJFSa;K@YJa&SH=QxjpJU8#@tHSdl>k7fpsxEe`jB6Nem z$M^pUijPNrgKap8A$olCK5x4V&qiy=qLyObzQ6EQK#j{&qJ##>shmwsLee&)=PAff zQjk_b5G?lxc$(p!4M^Nw+Zr|)Lk9rI27f3(||pOSc; z{lI(@TNC|Bcj88RX6ndvAOceP27WWYDj)R~L&;&|L!c5{I8N*J$fP)#g|5uMy1mJB z(cbpO7nmUaF`&{@GY$)%Do86|$1Lkt9(V@CkM%&-k7LPo>CGn1DV)>z@%rOB!hGV} zO@gy3We)n?tkDwC@pPMXE$(+3wwQ6x#;0eqHK7hKJ%p@oFB6RugW zFzvj!wmA0eML}m9Uj*o3g#4Ov^>y`(=|mrZA#wuG)6cg9P^d3 zT)r=D&QFqN&RV`K(cEtxO{wLYTTQ?lAaLWiHI~qA$a2zF zL$|L>u6?}BaSF343j>BZ3#=-OGjh+(VR<}%66@<+`D*+r<~RlSep7vk;4*uUaS$O^ zT*dhbvK}W?ec(tj3(?TB>ynm8J9&R3E!ZU+*n_S@d(bA=znWFTu{c6#PjvarwONK0 zbMx`S$V#tsDCA+)k`SbSnX2{prx-u&jR1J5KA)&p34T2~#`yAK z!+rbv6?tBxc76QeH=p18zGF^r9|(Ih_}&>n=WkqFqQxF*CB5aFd*bR|G>>fdsp;HX zef1}Ovw|qiO$93Vx-|cdHpW&K^#6QlQ(i;S!n9Tn%bit|%?C049esZGy@^!*Xu zI$76n-9sHiCb%4Z%%x$+8{oN90eRUbKM;yPNuc7e;mg%$ z0tkV-U2vh^2J_s4+g$3BQ`<%+Hku31IjP*wk4bJSEY3Yz=%FWp3QIX0U`W97&yt9W zSR5)U>Ku^)&NAw^@i!yD7ATeadf;@ytpyeCaaQME43`d!4h`|F<|y|zdIi)h+navQ zR0P|BTQADdb05ZK4Ru?j%m4-tA!8Gc8$J0kb=_}#hBT4|L4jt^Ras}fWhFHk{|hxr zC^FC8TzE>fP?d2SQC!cKUMqG88HU28c0&KNRZTzU3V!)-yii}Hch+J5U# z^63;ee_RXV$-T5H7$^b`FNZ$1_%V95&91rEk3Ie=cG)f5nJARJnqTMn=ZB`;P3@aA zY*-Dtp9dzfKPR!#LE9adUzq<9`mn1YEyW*Sh^fBwqn#9d?sY9{-~4oUym4IYQi*Wv z5x)c=#I`RVC$T+A2)3pmG6ERKvSB@-h%Uv>>X>^o_D(2~SNPnH)!kOl3t2A{S?L9Y zgvGC* zGc=ME->0B7h}NVLI|nwdlerbZkg$^G(lLe-A#L5{^BnHMJqxlvDK`Z??90O zB#HV9UUk5P@qLIvr~o5q%Qz@#PAyVFrG>B$&_O^dQDjTl3K-`X`qqu9 z>L8vu6bNKqW+G*leCsp1)jW8$J6OT}Y6y$j%#-UI1Hm#7vrf4PPfA5#IpdCkQ1h}^q7OgahNu~GT2vu*M^Ax;8 z*0cs@rRUZwMIqO^5ja>>K-5{&SKXnUwc-j242$3D`tCbP8OlC+Rr%|stxQBInOtq# zH?Jka$4uxnD&ns7zR(@0nZy=L@A1b{y}VTIRMuWA`t>b+t%B3b`&}}eHC-<~-(_nS zv0Qko@(*ejZtkW+iBkcl#kaPju7_9uZrZ-e>)My_E@fU7yDd(yDJ`<4pizyo_=(Fc z?*J#YXV=x(vqPBfulvXIy&{H28M~3Lsy7b@IN`NPh*+x&?%g#C;8rkeFp=8SQZe_s z;Xgs=soWL^yYc7;gZ$ZMn?DS%?rhf?lt>@BKjHx@QJ+0_>mFT`?^cRB9o;%10&Jwx zE{Y*B!YRAzZ{fikJX8xbHVZtT_u~3CW^rTa)q$l(XFp5tvF?ao z;^|p#=*70A-Hi7Y0mWW%RX#5Zvn464dY%=O5XU;R!%U=IB6gBE9SHiGkD6$(Y7# z1Cv}+)$o+++%-UlQ#wG9lmdwY3I-H8LQ$N@O=W{d)^3=SkAdt|Loa?>Ah#;hf z;S?WPyh^($neT(vE^d|H{A&Hvy}%gHLqURxbKsoh4tmS|cFja*_KZ@R>Rydq)zLpF z-KKykB#&4wx2T#WYNF$h#i0~OKMn{_%C(bovzq?QS#)BE`#b<*q-vZ6;Xt^JtH&r~ zCLcegnskZ|EZQ6PvmOTSWtLqUKMCWIs@_}|)6~u*T7|4QbKZO)71fLTw2x8zZr!Xp0zQWUom4c{>X5C1IuI-asZ5}|XY$Xc?12Q@axfTG56F#ref z(8Cywib6Bc;j3KdJX)ZBhEu`MNkqW}YDj8o1;_+fm2^c*W<#%Lxw1jE!Hv$@<-4uJb=T*VDbaL0j_vn?e)+c#kfwlSjsbKB=@3t_ElkZl zTCQSIEc@gFjJA4n&FK$Ngw6emFsAH-DP^Ki0-5)RLSG)Wm4CYvnj4}KXP7Z}Ucekr z5G`O*IGCsqaI?`P{DzW!9CpvJ+HW=7#AGf(`TFvK<94DCM=dr5d};Rb$BumSiiEET z{7goGRK8}Q8HfY_!IhNuf~8e5=1AzB^#Pv@yEc@LhI2e*<6B~7%CN2QYSY1Kz^(vZ zX5nR-bgPx`^kg=m%~1RIIo)fZt;U6@p%V0g5upMZ5iZF6nuB|8+0$1o8#rBYYeA8F zvh$<)A?u5Cy@Br2$ZOc5pyTvcu2+EP%w#)KbOGYuONY-*AZ>vn0o3#0b^+c6dw#Xl zF?2vRc<2z`R>QlB`*uOsPIkkEY^No4l6yjTY}1obx58ofv~HMjalrWBI!b;D9MW`k zlHPz<5YSU(2n&(Qn!59Awmf5tz-92?J`y{xlogc)_*i5nCc}OjdWgeDQx83v#?buI z>9*b;L9MUvD#r;F>oj>v6gxZz%7wiqJNgCQ4Q zcS@03fWkJ&BQ5QkAH&lKT(wW>^z*&|pSnMA*&-6INYWyN<>KCWrb`&!w=}Qaw|n7& zGVMQ5Ve;bsU;T&UfI|C;i?=>^D zn{or=?j73#Ov>YjRo`#WMXd)?NE)6-+a<~rzr~*7iWsU zuzqHAgF?D|%3UTpSH5Ea2oW2=Kr(&)=rh6Wqjs01I_Oz(rfwz~*c6v+LFGY-B@rq2 zEB6Jg4@&C0@SvDLXk5@&{mrr`G51s*@LPi&UO0OKml_KdD6h;Rfci7j{ zE(8py74!_JoFeQ6$%tly^iMcJU9A4 zX-aeZ;)z7+FaQG8B8N}O(TE1j z;Wpsv&n|_-%3;ty#=IYB=~fl+CiT&LU~tWK^D0zr<+VNSJjv4VifS_kO9fBeq!uq! zZ^d{B8)a}2tClc0CQ^NjWNoh-YFS1E|C338>o~{5{F`zW@0uFwD{wTn3+hx^HjEiR zV|(cZ$d?scGEi_b!s(tOHBZ_R2^KHT<5dEpL4UNOh`QChlrULI0BRIh&kwaUy}#$( z65*JgchF2Ua7tBe<9+S@J^iK#r-D4p=%j3Z*<;NzChkMd+LS)>S3BrZ>i%X?fkj4L zcv(gRzyXH~QLWp5i!)rR$t>_OJ)>O`V_sGE{cQ~*=)l*wYySC}gU9AGdJq0Wb# z!R1q2OdqBrLxYRWC#S9aC&&=gRC{35%E09>Qn-Zc?f5Qq^% zu|2odDg-nErZp{y#T#ArKupB#M9WY37!d$X7B}}TMT<|_&?Gl9T&`q;n^bndXs`o!+h7*p zj#J*vP456ARf@HZ>DW-bN6_nAIH&J&hy|&TOsr{#(d!(;WB&wnbev)WTq}YcBUuNR zD=&b(H*6~Gtf7Y@kG`K$?HR-x83C~WU7LzX8v?e$=wA+CsMUx|E-i;-3=8IQ4A($* zfDi>khlQE&e6CH^Lzzu1?PmzWE4z?>fY~FczgFFIdV9YWU_yNl%aW3dtPVN^T1h~I z|PA7J!rMY%%#&FB~%gKKfv36YhgyVT*<>q=0|4Dd(@Skr_UM# zPO;LFw1}b4U)@yHBy;VO>A+@WGlip|;kCjYz`2EQZ?sx-o_0$1n8W=FU_44Vb%UTi zaBAsTdh9km*XTF~#9*0e8@Iz29bh>BuG{5@-*VUn$c`WGkKuj5yglTF(@xE{MT%Wb z{hJkbm!6HvJ|-)4(W}Uu6Ul(iC$K&%NQ|B}citZmW(RR5u~h|fZ>jG*3t@fiC2m;DA}XOyX8$WI>du*Lp7*KHM)#&Q zs==@1Ug<5~kEFKxtuA2!>kdAf#E!8psP+!yERGcA;8*pS>(!HeuSRWM***1c4bJcf zMWHwna@0xA`QW>?V$5>nmPYTt5>8rgKPOx12hLzW{^_FMij-4Xh#g`w1nX&P4j=?y z)ZrRqZEr=nt8+bAUT4Fi*M1AXOI2jbf}cgbiK|P8GE-K@s@Y}1DkmHh6fEZv-8OpC z&crZ=B~wQ-)L!?$ZH4W%z=R6WV>q0p4?g$#`W5nFI+Fj@AI|H-8lH=4X&__^%LZl1)TsB9*3ioiP- zWUJYA3^f%-z?+=1V{9CN0PP{}3l;5$Pg2AdPjpi+z?#lTDu2&!<-R@Ic-x2H8k=4D zo%7vPqxf|R)*2q#Ew`1=RW ziB3)49ld9wlogA7H3#kNe;M=6_lPRw?Vzdc7cCw&6TKvG-Jo9N!%KjTdmQv1JIW-` zkK!!>*Qc^0|EI6%WY>pw*8YI8p@4QNtc{@CP{Z{7D(wK6niPe!Grm%s*+cK#k;off zkz={}v60;KOA9t{G!uFq_Pk<2QJx9z+k7w$sYFaRu9mW=>!7B5P?8arV7znQh|u0F zYzb9~SZc)R1~cjoydygC0jXVVD<~)m8*of@arMYFU0ev9fY`?=9AOx0vIM2iTREQ_ zg{me~!Y)Y-PyHNZefoh%#8@p0VY~#>fHCiYcJ-OCTC%}%z=lMAV3_VQhz_hbi< z-D$v815sSJkhnic0wfuoNkpWt&g1`K&j9k?AFGJT1TzYberwCqM(9QxuNy!sL$WxD z_KgJTb!x!)KYeXO5Q|RrWQ^9E56hZ5(8o>$E|4XefI+S@^>< zS2if(>&kMi)6zV_S> zjnEwVkhr5ko(YNE^wQ3Du>B$r>5N^szhCYHtV;M)l=!>AS?!M20f-ls)sq;Kp{}G9 zDM!3cB`^`7CA8IAUwH-8;u{{E2Ea1X5CTEqwOnIc>jkfXN)hpI#0VPf!Ui5yRG8fM zMuoO6S}vf;c#5&$PU0TlAS+<3)tg=J4@rG>$=!gdj~?>otKoJu<@yU&NX^^*)ogD; zxN%Jhw_D6@f$i-7w3o>UEy%tM$L!X#*^WAOZZ9SlvijVLvalUo6?<)qpJvKEx6(p@ zo>|U2K8ejK&foQ6cv!j&w+JfNJ=3jCHpI#5oAc2C16gfX7rxu82*=U-xXkStoEhgq z;4H(nzQasl9MGE&I!r*f60y0>r}+JgcPDK-f1ZJorFix-_g``fU1s8UN;n^-uq_IK zbFXi`uvlaxVjU!c^GY3M*pv>Z!uANu{~&Rul>2}ZMb>%}LNHv21}2Q?W5GW`GCmUS zWgpmxvZ`Tqfe0nxn@L(@-gqe*<64;^sYct2XVfOi=e%>j(wZn>34QYi0y3v!p zOU%O%(5B*hkWoP8I&W`)Y^6XdKt+l)?pD;2cPg)nuynyqRW@%{?p_f3u)QG9Ecw>Q zF9XoNla@&BLc?G#RNe9HUY~F~(WOJKhv~Q2>CncHjW-K7`lo&EfNmv3N~WMY4l5)w zD+RO%epSTPAvT_pbHA@3|J(P}T8o$`6kyrbCE}_XwdZQ=p=!UEo4kjm%j?UA$4>$# zMrC&`-kmX_p}%W`N1?~WVT(rkp<2=6uI#LRxOfSi9wSJ+bgjcn5x{a3Mor)JX2f@+ z{{>`0s|OkVT{s8&ee|Sno=Y)$7*7cLcn1(5^T~4{8eW5dZvm&%On!T*a^F$?%#@C{ z?;{JtqRemoAwIfEv&dm4xX!^yyq=^t`}{6^L7{#+)YszFM#ROGK3@CLa#|2)&YDQ2 z8Rv^w9(s#7=|fh%%E`~;oKieP>a5b+d+4o)o+ zQh^UidEm^sB>l1Rk!THVZ?-t9RuXK10H^%>v686R74iHMu;rq3zl^a!X$=7=(S2)j zKLj~+c$q1s=b$QZ0MX&}`aa$VKqiDg!A&7=&i9{Db5LFQZO+D(p_%Pk z!0ju6@OkaCUisg>LO1K15Y{Y#RCB7N=RRnBXN$T-_m}qZLrp=9v06Scw5j6O;*In* zS7hgJxwu#oGqDdnssk^HayrslK^R&{Hc=)!|CPD-+BNIZ2QGZmR}pUDRnO|%+)&tk zdB*ucZYIV6j?@?GOW_@82p=H0BV!DK6K)8E^q&mogY0Lb`Yu&(@B2Gj}Pw`M6blPFi~xf?v=U&y2it zL^@qQU|qRkyPmAajyGMMg`0aMjZVDnPw|LgspvoOzm>hnNy`3NdXx6grHl50mYcJ9 z=tg3v)h6hD@h@ddZeLU2S+MdQlNiEMZ)Xux2sgHER+Mfua3?ua#}DQG1H^2^oiqN8 z($zZSzNe@FIwHieRQ%ObCqSGu zDd=nC=h+kWJC=CEcGlXP5k8DuTZe*yQSTT+z!wYcI5Xh=-n&o{XQjV(72&TKzdqCz zbZAIJQ*5H6$%pxxWhStk(Vr`Fea=xussqX+~)s>v@5@kQLHJ2WeTQh%_99<7sm75!}{B0K7Qu7 z9ninO*H$bDDC7=pj-_3TovE5|egn5^+qHMu@_n-2h zMNyGDeP4eXm@QPd2h<;6-Qy#!7$#CT8;rT3p3E#sU*j*g?RsGKM>maoY?yfXT7_Y3`zpjt_kO;O(*+(j@2DU z(lnl?uPQ!h9tV?bmf@l=Z(d)zTeC`p8D(*PktCRGBWNjvd0p8643~-_o!2R+{+8_m zQZ7<5PbmsnkY+_lS-)hi{;CMzY9|Rg>u98f1p}!95H3~dDVXZcpot6eWE8Sh#RfI3m1S}KXj0%8{35q2~)kS7i&NeE+bV_*RtI9Rry|GvVu?OVaE=98uqzE|CMKn^wEiW~osz zS6$HKD=)CyCL&T;`XJw7L+OY|!0;#obon8AIqC08F44aLfI1@>ZE|zMLy@Y#^ONf@ zO&P&17YUmUbKkzIbEYO1oU6X5y-jZ(hXF@H-T`WnQQP=N(C}vDo;Jg+d~+f}gj?fd z!a|)Zh0h=yYBc|YDr$`YjQTDF_i_INWUy9GmC^?8FC=&4j}4p>#X< zUvfR7Phsxp;lv*i(-+Nz5jGJqn*VX&&FO}>jra|tr|EY(y(#xi#PBIG_%%0Hq!u-- z#^+aN-m6TyBm8hQJOinX7Y$oG(*i1mb(9C8bG^&3oL!#WON zf}7UIx4@r=$2c<)=Q!^_p|c?aC(k?qKa87kn8=C4=pnbHI+_JqEx7&|7##^a%Z(K& z(!T^y&RRC%P6ac(t%y?nar)~`npFl(oRT6!iz&C{8*FaP>WOysuQi*!VK~ILev}I>WI``D8t>p zs(-lzI*&8o&6~vdy8D5i#};kgo|=8AT-6MO3&=-GE0`JSoJKv6=Ji2Dxd1%1+egUdu4xt8E-XIbP=dD^9B&YiPNKT>V%KGHu6T*q+a;r{B$UZ~n z4$v+MX7^<}Qvzwqdx0q_RKcpeCW2u^7&IYwph$g;k|vTyE?y>uFwD75iL`N&jJK7hBTE=Yj2|#)x1BuWP!`aY9Y?o4WPNw;${tz^oGk=Q#F(YPa$$&4YBreT@U!9W zN|=(BS|N8%djJcRSi&xZ&+(*p|M*)aCf(8RrLJ)t?74KNb`mfsREok*lJWdWfAxQM zVIb%Ym`f)D^~PE^Cg3JfOLQ)T`WnkPaJkXqmkux}Q;M<$RZi8k8?KaVmZ<#!2*qGB zrJfjB%{rM05$!FzvjeYrzXGFo$o`L6dz20vV*C5X->v-4GzB0$rFbD6mlKK$RJHe} za5ObYRgmx7x;l_3BAYw1AH-zInU zjNCITR1MVDul_uHB7Ij_P0nX2N*KI|hiYPwmu7YN#az(Ju3G{c{K!6)oUenhz*P!` z-7Qx08l~-EV2PTsUCz6sT&1~EWE#;=YHhpmxa%LE&csLKmB%_RXwE?eT#fI=Ce(sl z_*bL-EsdR8x?m0>`=?(}n~439`p^UYXS!Z|X&OJg(X6I-Z`#%EuN&JJY`hHTZ2SZ$ zkUK;nLe^^Jw~0p<$K`DE3e|cxuDlEH!X%EF{u6ZWcQmX}Z>|G?hSw3FXXClO`ZkhW@Q4cJ!xTK!sGUU75ez#f zQdSc2b7G#QpB(64C;W`yL8!OJCLe`mCSg}{7Fy$<0s3IC!a>QXIHw|O?mk{4oQujt zG^U{KXvcv$>M?V2HVqH+mY}Br$CA8b&Z=!-fJvPVFiYc4F8CdJoW=X}|M>I1t_>)! zK(rZCR3=icAtKx=X|js{%6WH@H8ZF zK{FY5AyAO$j64|>f_#7 zMR?o06{$Or;;2PXSwF&mLMRD@8v8D+xOr#Hpt(KpX73}-?>7D4+{Ibq7W8Od` z{%P~(p5!|V*O+I6$)CNp+U>lNg{B_4qs;xNyrfgSQ7ESFKabDus?zW5is)+m18{nC zDi&!DEOa|{)CAL-;?#}Fsa?$!U19f=?(bmIp6(d4l<&i84+Kqrx%94r{)5ir$qgTK zrJ@_}IUtvY`zP-F^>>CP6^`Wmw9X@_78^^p`~dd^s6|YDQt$m!Kc?Z%U)8msYt($z zoL#}IPdKJ7wa`CsH2s|8!%=@M;cID#)1huiIgt+4ld|^)jX6?{Z~(4(rN|YzFXO>| ze1m(3=arpnxxG>-y3+=QVM$CMrQfo@eTUaHfPn|xI_8a)ho%E3DO&_?pH!O_W7q8f z)4*U7Q7L(bVx(Io?8nH$?D6DElz-0DOp?3ldH23a$D}EvP1=nqsRa5q-R=bNnN<-^ zqh>;^EM20bCibge;Eq5cK~p%hHX&&y3D^I<360yC`c$eGnc7ToCnd+Bv~%RNlh()2 zJQF-&W(>+mk0&Q+R(xiQeTyqDBEZd5=IcXC$srBE__gIAt zIBm@JRdzuWJL~t{58xYAAu1&V8i7I?vty5bSQpFTJU}VeOf(t14yry9TH?o??AkT? z$E9(KLRx{4vay2*@Zj)}5w1u{i+?gB;&tSZ1Go=MTJm4U#Ak_ERp7fB#FX zn+LxFG{>;fT{~1tQ`-ilF@_BoJsgWu+_h~852ZX3jxrw4&nrsC49QO6evq(RJ~Tyr zDI-Q)zs5&QJ5y)APZe}1gOpM`5a(S0PT45=Xq!BIIhJ?08$j_YA^YwY{dXLe~#N>fcllTr0i*TfKI{5+^ zLKLCV;2_QQ$sXmY^Q}QKDGM54oPbFQdC7QHdb3fNiyf!|8QK^Pa?_kDy@jYS4=;q9 z4@{&+0A#*1sAvU!C6TbuT!h0Xsy{qDD@7q4fAj=?@+jv)xEc#`jsWa&Xo7W3a=8L& z76ooVsDL@=z#t8{ZA^J118?X7QJQFk5u$BLRUJT@&ri`TmAvy_H zTh^>fiG|*PfcMah9JHbJY+67~BBfZisRk`DB1L-=BGo{?pqVn@vp)Oc^NVatCkS$xy#} zxq@qBiv6rt2J3XiFQK+jo80rhrC@g8;yi8=KEj19e8~PH?9I3i z!k4wbg7YKr?hD*HxJmSWqSMQ(0&39vJ#c!DoT(}3YRX=mVNvmG$1h-5bXt%`djYVd z;QRubH&C5o{x$VrMn{fFfk_FMbILtE4Nqme$2aQqR)N76@_e<1W&OYI9(F4_y)Q|B zEgJ5@7A=l%+;*XQ)w=Eza(#)XahrYC@tnVJ~Owp_bfa_CtT@DB|q?3f=GmMSOR0fu!3_u>xU z54M0V)RVX}JTjo;daT!S)%Iivjke>n$m^ElMPDQlW|)B%1y{=Y`L2$e^RH6^QR7M6 zarg9>P0&|8cuP-KV7863H1tTLf*#avsx9Fr)Fe6u&h@2$md@BaL8GHYOeboTgW&p3 zBg#b{it|cv2UI95#+*uzs2b?)j85dXkwtWJxS~)LPsRAk z0yq)b#viLsKkhqb>fxV8yYYwLdY2$ULl0#Kve)x6L8rm+`k3Z*tIrp?yKpx0P&+JX zEhHuvTl>>@KLpGwx7JLQ|7Q>1yC&iYKg)A)hmEGt%HS^Rzh{m=0D~fuUGSzCy#@Iw zms<;*bCM!^OaJs#a``5nDiP&+G|4`(#q7Sa2hw;;3X^e+PB~a++_+R;EV^rlwkn)I zT?1?#pvN1taE>$pZ`g1s^t(1dC;$i4si z=?o506!Cyz1A@EVX~1j%oNjU*E_pj#pE?1Z9~8(N6uEnl>(^fJW;YBpU>KxCxQgle z!d_0#?Hk?}15p7%I`0_^-L+UJ-i;fi_?{ywVLxS(rQsdMW14zsuEx%jx|TrLoI(rK zUEUicfp_=C9FVv#zYM;M!#73UEZnmcYGEY1Qt=WPX^^_P`EB;$cCGio*F^X*jCtyv zkJm`tl-sfsFP>*3M}j5lEycTr|E6^vj$zM$&8BG1D|kx*04>09jk;n$Hh}T(_-JGZ zhAk}6;CnDVi5LS>r~MTva60k1KFX@}s9i0mTk|euVN8Tt&AwxkoxOey@iZO3q1EkBCmy+NF&+` zCdfv4Xpj17H<_pKO?tj7#+SpJ`Gb#dIQ^uzPFE#P9?9PPo9L~@&HeWcPjh0`ts&ReVU-E{06Tk+iy-j^NXq5DG!cda5piBfDoaMbsPy=DD!mtjSL;{c#jW?SF3;fGdEu9xRw<55faw*mtdke zyd;IFnWx_Ysd7P?353H;ro{T6^sOPr^jq7whNuh^@QY9`*f)m{`YBJqInK9_H*|VM zFj8Si2{k?0K5*;Jge2zV66SEQKOdHdOF~Tnlc;?lxTGm+EW_fkZhk*_51NG;P1T7u z^7@`Z?c%D}!06^YY1|@hh>X&DQeQoEM4Ry2;Q-m*XIhI`v~##Z20d4xry9bWIp)N4 zJS?<|i41Axwza4{uz=1#o2!2EXrU62>^4kVCdi#+$yL5FLuk%XP5v%FV$qRm9PyqDsqCSEzn-**DB;9+BPIOGMtY4=9+qhV;B98d1R){7Tx_>dP9R7 z3%=o$qR>`ITZe8slt%5+Ot6%tGvQ1>Oo14u;p#oMNaKBb;~gVu@QwpgV6Fg~V*uW0 z2x~xZhw|U1=aLXVh-m56*ytOy(A%TeVw3-0%^uh& zI60oeEfp4`MT&+s)F(ZObHoB_iU(I^c+5 zM6(Eroe9LqhUEm|jcP?u^}!w^Klx-JQTlCwG<(+aquFhJBOpm%aPHRa@0-LZKq#$7 zbszjwFfhp+SRxoc#MxYdBv%9;z412`0Ox`@oGK=4BVtnt-(Ye$Xx375A*ojI_Cd+0 zT>W26n)t#X+ndnHKmAMNXNmylAkQS;7lIt5M*zD${*`1{i}BNJ6d1&u$5>#>yR!Gj z4^J_N?RBb|j_TxFV${Fu-N-k|^=MNE`>zx{Hx0`L&~Z23{)2`@z}8J}MlPB=t&P`O zbtexDsDRmq}!LJvCro@O>EG_4td z{W1829DsVx)$X?A}v{U>1W8R=?7o@A`~+_t{6sSHqGI&C&s!U6de6A3a; z?Sc$K|IsRmin%3yDKxsZOBe8kgFWO-cWfid-ASp$TQ1a>5&ivMVIE0fp5MCI1#%Y* z(CFD@+q@0FrP;Rv+Q0bbXZ_Oi0`OwKO&Lv6*p^LEp5tw7UKBzV2V-52Hk8wlWLOE{ z+}A-)Kr@y9J8IW8(BnbNz;meuR42d`wPd_>xXau6l}N)@p3~LJcQAd!CA^b|%RswT zwwsTWI+*79R~H;neT-fqirxVy(HX28&5-0-p~YPVdHd`6x7_ppSSD?EFow4Wb;1^1fpmRMaId)~D;4YVO4+B*e*lb)1Y$a7dyDYE0n>Wyq>)~y29uS5m3ZBtz>X%rGjNNF|CRe z)Df^M(o|)Mgcw0;aU%+hC^Fh&aOq4-Q6Z9IQ6Q)hG%TV51%VW(d)YKVVGy)zBH#`Y zfza>X`|?7UANDZexDD zqF$~CzUb8`6>+BPZD~qfG9>yWPh8y*QXSQ(9It-}IxmzaXto4Ls z4y*UeQu+J3a%O82gz=H6X^?6n0$dV(L(TKHb4T@%f(+E6m4+3mG?N;`J)_gFskBjC z|48>u^rzn928pgQUv@6^Vd`M;iEiM79?u!2(p`stf+Qs6c+Hg@8LBzawE3!PBh2FB z!{YVtMyX>FZ@kPMH>);PbncJqt6K1SZof|bazpbx<*64gXY(?Y76%cW+G*ZvO}wj| zI*5l3Z}|LvRt3*~{H@*HUbtCqCs4Iy4VyW{tP+@pGUzNpJ$=ypV|t;uKzPJ{a*cMN zpuW}h`7+m|^;U=(BUNilJf1yLl-qTjSbjt(;u{XSjq6!^aGsJ#am2#|MG&y=#-c_> z5eey0p)=$>QfAYww z+y{KJ4$qfPAmNKyw9&qX_}Z@F9i%$JU~@|kw!N|Ihb~Kp__tasFLs21UWYG?7kO@` zQnIy7446bMpLsfxYwmF+J+0aGX3n4D=CaQH@#sEa_ecyn8L`rW(QQFckP8q877bX? zo{J?y|IJ81)QvHIp4J9?8a(Poe7V>=b*cMqpBqy$qrq%(f6U?xt&3RG4#%E6v<3nB z?v;ebG?9e{x4wqA@^PoPqL3Cfu&H!xMcChVf$b|b_udy(qL1{r3s(P^qg-zZEZkC89KsQw< z=n`f*%N_;ZZdmJo)Tj7^AMHZ2mwdP_bCi;{fDkflc(<%Pda1NCB5-g*B^pP*$j5Y| zZ*WLjiV!%wYN33NNeV4*kbp891*Yv&?zHDrzO#UdF^$fj1@$kwMMzqDaL)8nC(FO0xr93(+Yl8*UvR6aqAvXb zS=-q(xx3>Oqh& z{_#QqsRrD^dSjqbP@5Lzz6vX@dJwcRT98SnrRrhxOaCG}AcN;G<9+6>&3!F7w|?HV;2f~_>#;r2343lK|l=a6NVAApan4?xbP3@8G=^hRYly<3C&>V{Ly`(Wv+K)G#feI8CzFJRG zHqmKQKFF2{InQ{Z{tt3aj2DBR(|5tFGgr%OX2#ty!_M|}JTZgBK>#d~#q!(=kN{qi z!jp%dKJ=HXDbRF7{D7^jU%leKNFJR|!X$0Z!4+ I0eiIZZwew>%>V!Z From b0b866d0757174f2e4300a17117a27775a3ecc5d Mon Sep 17 00:00:00 2001 From: bda-nt <74663073+bda-nt@users.noreply.github.com> Date: Wed, 17 Nov 2021 17:29:51 +0500 Subject: [PATCH 3/5] 3 and 4 commit third and second task --- .idea/.gitignore | 3 +++ .idea/Refactoring14.iml | 8 +++++++ .../inspectionProfiles/profiles_settings.xml | 6 +++++ .idea/misc.xml | 4 ++++ .idea/modules.xml | 8 +++++++ .idea/vcs.xml | 6 +++++ filter.py | 23 ++++++------------- 7 files changed, 42 insertions(+), 16 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/Refactoring14.iml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/Refactoring14.iml b/.idea/Refactoring14.iml new file mode 100644 index 0000000..c444878 --- /dev/null +++ b/.idea/Refactoring14.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..a2e120d --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..6457f20 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/filter.py b/filter.py index 24a618a..48b21e5 100644 --- a/filter.py +++ b/filter.py @@ -11,8 +11,9 @@ def get_mosaice_image(image, mosaice_size=10, gradation=4): while i < image_length - 1: j = 0 while j < image_height - 1: - matrix_sum = get_matrix_sum(processed_image, mosaice_size, i, j) - average_color = int(matrix_sum // (mosaice_size ** 2)) + sector = processed_image[i: i + mosaice_size, j: j + mosaice_size] + color_sum = np.sum(sector) + average_color = int(color_sum // (mosaice_size ** 2)) set_color(int(average_color // threshold) * threshold / 3, processed_image, i, j, mosaice_size) j += mosaice_size i += mosaice_size @@ -20,17 +21,6 @@ def get_mosaice_image(image, mosaice_size=10, gradation=4): return Image.fromarray(np.uint8(processed_image)) -def get_matrix_sum(source_color, size, i, j, ): - color_sum = 0 - for sector_i in range(i, i + size): - for sector_j in range(j, j + size): - M = 0 - for color_id in range(3): - M += source_color[sector_i][sector_j][color_id] - color_sum += M - return color_sum - - def set_color(new_color, source_color, i, j, size): for sector_i in range(i, i + size): for sector_j in range(j, j + size): @@ -39,6 +29,7 @@ def set_color(new_color, source_color, i, j, size): if __name__ == "__main__": - img = Image.open("img2.jpg") - res = get_mosaice_image(img) - res.save('res.jpg') + img = Image.open(f"{input('Input image name:')}.jpg") + res = get_mosaice_image(img, gradation= 6) + img_res = input("Input name result:") + res.save(f"{ img_res }.jpg") From 7478be4dce96da00353593f9cd2d06e44a65a415 Mon Sep 17 00:00:00 2001 From: bda-nt <74663073+bda-nt@users.noreply.github.com> Date: Wed, 17 Nov 2021 18:05:35 +0500 Subject: [PATCH 4/5] 1 ex(bug fix) --- filter.py | 54 +++++++++++++++++++++++++----------------------------- 1 file changed, 25 insertions(+), 29 deletions(-) diff --git a/filter.py b/filter.py index 48b21e5..92e7d56 100644 --- a/filter.py +++ b/filter.py @@ -2,34 +2,30 @@ import numpy as np -def get_mosaice_image(image, mosaice_size=10, gradation=4): - threshold = 255 // gradation - processed_image = np.array(image) - image_length = len(processed_image) - image_height = len(processed_image[1]) +if __name__ == "__main__": + img = Image.open("img2.jpg") + arr = np.array(img) + a = len(arr) + a1 = len(arr[1]) i = 0 - while i < image_length - 1: + while i < a - 1: j = 0 - while j < image_height - 1: - sector = processed_image[i: i + mosaice_size, j: j + mosaice_size] - color_sum = np.sum(sector) - average_color = int(color_sum // (mosaice_size ** 2)) - set_color(int(average_color // threshold) * threshold / 3, processed_image, i, j, mosaice_size) - j += mosaice_size - i += mosaice_size - - return Image.fromarray(np.uint8(processed_image)) - - -def set_color(new_color, source_color, i, j, size): - for sector_i in range(i, i + size): - for sector_j in range(j, j + size): - for color_id in range(3): - source_color[sector_i][sector_j][color_id] = new_color - - -if __name__ == "__main__": - img = Image.open(f"{input('Input image name:')}.jpg") - res = get_mosaice_image(img, gradation= 6) - img_res = input("Input name result:") - res.save(f"{ img_res }.jpg") + while j < a1 - 1: + s = 0 + for n in range(i, i + 10): + for n0 in range(j, j + 10): + n1 = int(arr[n][n0][0]) + n2 = int(arr[n][n0][1]) + n3 = int(arr[n][n0][2]) + M = n1 + n2 + n3 + s += M + s = int(s // 100) + for n in range(i, i + 10): + for n1 in range(j, j + 10): + arr[n][n1][0] = int(s // 50) * 50 / 3 + arr[n][n1][1] = int(s // 50) * 50 / 3 + arr[n][n1][2] = int(s // 50) * 50 / 3 + j = j + 10 + i = i + 10 + res = Image.fromarray(arr) + res.save('res.jpg') \ No newline at end of file From d6d03e19668b46ea635af774aff359103ae92b10 Mon Sep 17 00:00:00 2001 From: bda-nt <74663073+bda-nt@users.noreply.github.com> Date: Wed, 17 Nov 2021 18:07:00 +0500 Subject: [PATCH 5/5] Revert "1 ex(bug fix)" This reverts commit 7478be4dce96da00353593f9cd2d06e44a65a415. --- filter.py | 54 +++++++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/filter.py b/filter.py index 92e7d56..48b21e5 100644 --- a/filter.py +++ b/filter.py @@ -2,30 +2,34 @@ import numpy as np -if __name__ == "__main__": - img = Image.open("img2.jpg") - arr = np.array(img) - a = len(arr) - a1 = len(arr[1]) +def get_mosaice_image(image, mosaice_size=10, gradation=4): + threshold = 255 // gradation + processed_image = np.array(image) + image_length = len(processed_image) + image_height = len(processed_image[1]) i = 0 - while i < a - 1: + while i < image_length - 1: j = 0 - while j < a1 - 1: - s = 0 - for n in range(i, i + 10): - for n0 in range(j, j + 10): - n1 = int(arr[n][n0][0]) - n2 = int(arr[n][n0][1]) - n3 = int(arr[n][n0][2]) - M = n1 + n2 + n3 - s += M - s = int(s // 100) - for n in range(i, i + 10): - for n1 in range(j, j + 10): - arr[n][n1][0] = int(s // 50) * 50 / 3 - arr[n][n1][1] = int(s // 50) * 50 / 3 - arr[n][n1][2] = int(s // 50) * 50 / 3 - j = j + 10 - i = i + 10 - res = Image.fromarray(arr) - res.save('res.jpg') \ No newline at end of file + while j < image_height - 1: + sector = processed_image[i: i + mosaice_size, j: j + mosaice_size] + color_sum = np.sum(sector) + average_color = int(color_sum // (mosaice_size ** 2)) + set_color(int(average_color // threshold) * threshold / 3, processed_image, i, j, mosaice_size) + j += mosaice_size + i += mosaice_size + + return Image.fromarray(np.uint8(processed_image)) + + +def set_color(new_color, source_color, i, j, size): + for sector_i in range(i, i + size): + for sector_j in range(j, j + size): + for color_id in range(3): + source_color[sector_i][sector_j][color_id] = new_color + + +if __name__ == "__main__": + img = Image.open(f"{input('Input image name:')}.jpg") + res = get_mosaice_image(img, gradation= 6) + img_res = input("Input name result:") + res.save(f"{ img_res }.jpg")