From 1781b398631b6bf66531d4fc1533bd5c6661ac52 Mon Sep 17 00:00:00 2001 From: Nathan Fiedler Date: Mon, 8 Jun 2015 21:47:17 -0700 Subject: [PATCH] Basic API in place, some tests working Reading an image, getting its dimensions, and resizing are working. cargo test passes --- README.md | 6 +- src/lib.rs | 127 ++++++++++++++++++++++++++++++++++------ tests/data/IMG_5745.JPG | Bin 0 -> 107302 bytes tests/lib.rs | 56 ++++++++++++++++++ 4 files changed, 167 insertions(+), 22 deletions(-) create mode 100644 tests/data/IMG_5745.JPG create mode 100644 tests/lib.rs diff --git a/README.md b/README.md index db3bc8b..11b7d52 100644 --- a/README.md +++ b/README.md @@ -12,9 +12,9 @@ A "safe" Rust interface to the [ImageMagick](http://www.imagemagick.org/) system 1. Write unit tests 1. Test it on lots of images in batches to stress test it; should not crash -## Building the Bindings +## Generating Bindings -To build the ImageMagick bindings, we use [rust-bindgen](https://github.com/crabtw/rust-bindgen), which reads the C header files and produces a suitable wrapper in Rust. +To generate the ImageMagick bindings, we use [rust-bindgen](https://github.com/crabtw/rust-bindgen), which reads the C header files and produces a suitable wrapper in Rust. This example is using the [Homebrew](http://brew.sh) installed version of ImageMagick, and the LLVM compiler suite provided in the Command Line Tools from Apple. The only real difference for Mac OS X is the `DYLD_LIBRARY_PATH` that is needed to work around [issue #89](https://github.com/crabtw/rust-bindgen/issues/89) in rust-bindgen. Otherwise, the same basic steps should work on any Rust-supported system. @@ -32,4 +32,4 @@ $ DYLD_LIBRARY_PATH=/Library/Developer/CommandLineTools/usr/lib \ ~/gen.h ``` -Then copy the `~/bindings.rs` file into the `src` directory of this project, and rebuild everything. Hopefully it still works. +Then copy the `~/bindings.rs` file into the `src` directory of this project, and rebuild everything (`cargo clean` and `cargo test`). Hopefully it still works. diff --git a/src/lib.rs b/src/lib.rs index 0da5687..d9f7bfd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -26,6 +26,10 @@ extern crate libc; +use std::ffi::CString; +use libc::{c_uint, size_t, c_double}; +use filters::FilterType; + mod bindings; /// MagickWand is a Rustic wrapper to the Rust bindings to ImageMagick. @@ -43,16 +47,65 @@ impl MagickWand { } } -// wand-of-rust wrapper around MagickResizeImage -// pub fn resize_image(&self, width: uint, height: uint, -// filter: FilterType, blur_factor: f64) { -// unsafe { -// bindings::MagickResizeImage( -// self.wand, width as size_t, height as size_t, -// filter as c_uint, blur_factor as c_double -// ); -// } -// } + /// Read the image data from the named file. + pub fn read_image(&self, path: &str) -> Result<(), &'static str> { + let c_name = CString::new(path).unwrap(); + let result = unsafe { + bindings::MagickReadImage(self.wand, c_name.as_ptr()) + }; + match result { + bindings::MagickTrue => Ok(()), + _ => Err("failed to read image") + } + } + + // TODO: make a Rustic wrapper for reading a blob from bytes + // pub fn MagickReadImageBlob(arg1: *mut MagickWand, + // arg2: *const ::libc::c_void, arg3: size_t) + // -> MagickBooleanType; + + /// Retrieve the width of the image. + pub fn get_image_width(&self) -> usize { + unsafe { + bindings::MagickGetImageWidth(self.wand) as usize + } + } + + /// Retrieve the height of the image. + pub fn get_image_height(&self) -> usize { + unsafe { + bindings::MagickGetImageHeight(self.wand) as usize + } + } + + /// Resize the image to the specified width and height, using the + /// specified filter type with the specified blur / sharpness factor. + /// + /// blur_factor values greater than 1 create blurriness, while values + /// less than 1 create sharpness. + pub fn resize_image(&self, width: usize, height: usize, + filter: FilterType, blur_factor: f64) { + unsafe { + bindings::MagickResizeImage( + self.wand, width as size_t, height as size_t, + filter as c_uint, blur_factor as c_double + ); + } + } + + // TODO: get the image from the wand somehow (maybe GetImageFromMagickWand()) + + /// Write the current image to the provided path. + pub fn write_image(&self, path: &str) -> Result<(), &'static str> { + let c_name = CString::new(path).unwrap(); + let result = unsafe { + bindings::MagickWriteImage(self.wand, c_name.as_ptr()) + }; + match result { + bindings::MagickTrue => Ok(()), + _ => Err("failed to write image") + } + } } // Automate safe cleanup for MagickWand instances. @@ -68,27 +121,63 @@ impl Drop for MagickWand { } /// This function must be called before any other ImageMagick operations -/// are attempted. +/// are attempted. This function is safe to be called repeatedly. pub fn magick_wand_genesis() { unsafe { - bindings::MagickWandGenesis(); + match bindings::IsMagickWandInstantiated() { + bindings::MagickTrue => (), + _ => bindings::MagickWandGenesis() + } } } /// This function should be called when ImageMagick is no longer needed. +/// This function is safe to be called repeatedly. pub fn magick_wand_terminus() { unsafe { - bindings::MagickWandTerminus(); + match bindings::IsMagickWandInstantiated() { + bindings::MagickTrue => bindings::MagickWandTerminus(), + _ => () + } } } -#[cfg(test)] -mod test { +pub mod filters { - use super::{MagickWand}; + use bindings; - #[test] - fn test_new_drop() { - MagickWand::new(); + pub enum FilterType { + UndefinedFilter = bindings::UndefinedFilter as isize, + PointFilter = bindings::PointFilter as isize, + BoxFilter = bindings::BoxFilter as isize, + TriangleFilter = bindings::TriangleFilter as isize, + HermiteFilter = bindings::HermiteFilter as isize, + HanningFilter = bindings::HanningFilter as isize, + HammingFilter = bindings::HammingFilter as isize, + BlackmanFilter = bindings::BlackmanFilter as isize, + GaussianFilter = bindings::GaussianFilter as isize, + QuadraticFilter = bindings::QuadraticFilter as isize, + CubicFilter = bindings::CubicFilter as isize, + CatromFilter = bindings::CatromFilter as isize, + MitchellFilter = bindings::MitchellFilter as isize, + JincFilter = bindings::JincFilter as isize, + SincFilter = bindings::SincFilter as isize, + SincFastFilter = bindings::SincFastFilter as isize, + KaiserFilter = bindings::KaiserFilter as isize, + WelshFilter = bindings::WelshFilter as isize, + ParzenFilter = bindings::ParzenFilter as isize, + BohmanFilter = bindings::BohmanFilter as isize, + BartlettFilter = bindings::BartlettFilter as isize, + LagrangeFilter = bindings::LagrangeFilter as isize, + LanczosFilter = bindings::LanczosFilter as isize, + LanczosSharpFilter = bindings::LanczosSharpFilter as isize, + Lanczos2Filter = bindings::Lanczos2Filter as isize, + Lanczos2SharpFilter = bindings::Lanczos2SharpFilter as isize, + RobidouxFilter = bindings::RobidouxFilter as isize, + RobidouxSharpFilter = bindings::RobidouxSharpFilter as isize, + CosineFilter = bindings::CosineFilter as isize, + SplineFilter = bindings::SplineFilter as isize, + LanczosRadiusFilter = bindings::LanczosRadiusFilter as isize, + SentinelFilter = bindings::SentinelFilter as isize } } diff --git a/tests/data/IMG_5745.JPG b/tests/data/IMG_5745.JPG new file mode 100644 index 0000000000000000000000000000000000000000..2dfe6dbdac6344da165658351f9a6378a669901e GIT binary patch literal 107302 zcmeFZWmp~0vo1OdcXxMpcXxt2A;H}j4#5KnI4EgEZ z&)(;rd%oU(4?XivO;vSQbx%)s^?JBpxL<=`koUE>0RS~MfCT^mBmfzL3BZ5|0nGjo ztlt;~#32wI02aJLzypAg0Pw#t07OGb|Hg?BrayT=4G`|%vT%YN+yI2&CSUgu-CM6b+M-6_jn*Fff+32k1G!sH=hU>p9l{x6*sR4FRuuf5CBky zW&Twv3{zOn-^(fW zxHPa~02T;6gc?EyA%+M*gdivoSja7K0UQJSz&BtMSOp|NDj$Rk!VY1Eh=T_n1OtK$ zfdk)!8{ix`0rVj15M_uwL<%Ab;Rmmh5LO5+sE-hW13`lzLSi5R5I2Y|L=e12Z8E z3d}FaK4ca$2^oR3LrNj9A%T!1$N`v7AjjbO@OR#a{DAC2Rv{CR9!L#XnmZ&4QUYm& zR6&X$nUFZhD@Y0?6_N{yheUuS)&X@u6VM8@1Kq$7&<}J1UBCd)3-kd!;B^!*2ONMv zAOr{oUV`sYJdgqe0ndPd-#GyA1Ly%>KpId46aXE-7%&73Knd;NNCTvpfCCFXKnpMf z+<+)}rU&nZLAo5E4CsPVDgY}$3{V1002ROp@-YF_;F%F%2eT}o32=f}O7NfpXaG7; zmIc%!1xSEr9#9(xNTUZc_3x(=fEK7#4bTJhK}l6W64b5<%98^W01+su4p;+E!J0h* z9)pK5_)HHldKmS7CzwBa*%z{G$96SOdlAeu|xvhtux4Dy-wUMX2 zv$cn%xs$b?wVSJ@9To%^05XU)b+{C8L^Fp0EC30ckerd7Q%L*|mA_xm2l&t<|D7bk zo8NE4zplUEGVuQQ^}mdjR2Jrzj#QTB&el+KDn1Tw9%pAN8%`b$9ssysL&3H4^mG&9 z8Gu;#FIb>{RncjM&d;Nk?tBz@gLX=_g^3u{|@7jc@y4;?gA_EzFF2K;JV zYHqUDcJ@mCP-`83bzMt;M@wNV8c7K%F<%j1XE$eSPjf0?XD1gA5npkd-^xWm{6OZU zq593@=_pQPsHRCJ>k0)&bq+obE*el8YGos$EvN9OEO;kQ^JgV}e0(^3csX35ww&C; z!or+fJe)i{>>vlbho6h5xi7nm2kl=PU0tXiG@4tudU=Y|fF=J?C1bw|x5FNU+(cxd*5;npa$pvxc^Kx{x%k+5cy<5!FmZsx z`5%mGu2%Loe*YumzqGkRbzNPZ#A(3qBn{QyWr{qA{!tp(B>z)UoS;uR|8(jD{JV7| zsQ#1w9%XMShx0?r_Oz}XvczYq9=>+C-!Jyg6LT!4^_ zvKrjOavT68$soo6EGfMr8Mu^$0l@W!B!Ixp%gf6pL@kmX$Tt)Yec?ek2b-z^OKx(j$8pR~T@? z?CjzR)mD_DGBh%#LL3JRM+TQ}+yG#1>EWiPqoDhsQ(0b?$^&Hjt^e=S`TQSC!x?rZ zO)9Ft$^T~n+tLl{3C{L4L3Um%a8e24=OA|S@pOBjAAuOp!tnvaJopF?3RV!rL=V{Z z56t$P=MOCPfUTTetU#WJI=fjpTRq@j5J!1?S%Vn%5r`wb?X7)4JPTqvCogAv5MP2A z&)M1>jDNtPJTJzO%wmJhv1>V{A+DtZ*9r(;LyL*|0~1aoc}ZUS9u%{<^AnDDmiN#b1x@P zst2c9x;nXfL8&~z<(4%S`+x1k|JQ>5s@A{i!KQ6(V-2--0gKWHdzrn9E!f;HR`$Oa zOZG1RQw#rJiv6n&5ActE4FcT4I{?p=1HhU9!(aQO030qV0Be#9K7st*ZjX>3*609W zK)LfrzXvh+{P+3)ae|2lZ(%&_ZK)o}vf8>-mR?Zr2MoRw4<~pqB!>y$fl&mC-|+)> zFft$r#u}smd2s!&0Y({&z*WB`7%XxIpnwk;w+ICyffz8Bkpg4_c|ajh22_JFkY?Z` z82RW2Mu16R4p;&sKU=^aa0JG9ZXggaj)M-t1!F{%V6=!8!UM*HB*0kDBQUyR1jcG? zAubRv$TLVd7*9zAV=VcQGDt0?719M6f=od^L)O4}%n9Tg1{MYl1`mwnFu-ua2*F6h zsKV&NJb|%=afk7Tc@7f?lMeG1rV^$JrVC~SW)5Z*W)J2JjNYNb62MZ!vcn3&%ED^E z8pGPaLSchoqhV8F-@;bIzK0!voq=72{Q-LghX98QM+L_YCkm$orw3;V=MEPH7YmmO zR|?kz*9$iTw+43vcL$FSPX^BlF9NR&ZwPM-?*ktRp9)_L-w59aKL@`Be~y5FK!CuA zAc&xZV1(d+5P%Sikb_Wz(1|dGuz_%fh=@px$ciYAsDWsX=!qDKn1NV{*nv2WxP^F$ zgo;Fo#Dk=OWQ^p36o!x=_bc2kAOph#rtbuHW?1vnWT!{Q0c>;M0`340W zg%L#@MHj^ZB@`tcr5dFVWf|oZ6%~~RRTxzZ)gCnjH68UG>LBVG>J=Ie8Vi~%nhBa0 zS{zylS|{3Pv{Q6+bOv-ObYpZ+^f>e~^d9sT^h*p}3=Rxs3@eOaj4X^MjA@JmOk_-Y zOli!gnEsflnDv+wm_M+Pu^6yqvCOf8u(GgPu|8p)VdG+RV{2eLW5;5bV-I0}!$HJh zz>&wX!g-EUfYXDsfeVXEiz|z3i5revh}(y|g@=I0h^LI_fER;Tg*T3OgpY&Ihp&(C zi=TzxhQCSxOTa*&OyEQiPf$lNPjF30PAE-iP56?qnsA!%f{2tzipZKMny7|oj_8`0 ziddf5kvM_4nfMC{90?1F7Ksl@E=eEB4^li*QBq6NXwo{;MKTyN7BX$J0I~wIQL-~~ z3UWnqH}VYf9`YX)1Qb#f4iw20?G(F|xRer<_LRw#9hBdx@TsJ!oT$>NdZ~`6$*7g6 zy{Pl4$Ej~<7-{rq!f0w}zR;r33enooCewD)9??7tDsw?N2V8|x1&#^AE3Wr zU}P|0c)`%j@Qsm(QJK-7v4U}#37tuj$(`vf(=0Orvk=o>590VMXIKnuZISx4KIE^_II0rcIxcIr8 zxC*(JxN*2uxWl;LbD!|A@L2L>@yzm~^D6KL^S1CF^Re<-^X2j_@Z<8U@xS2j=D!sX z6o3j;3+xKg37QFJ3w{#96Veol6&e(V7nTtY7XB!FB_bf=DN-kLD9SGCC|WN1O^i{@ zTC7lPL!3t3Ts&WVRf0;wOyZ5iswB0fx#U~PbtzgYE2(0s9cgB12kA=b0~szEs7#~G zg{+8dplqictem1;wA{Enj=Y|Hru>Qmje@O0g~E{{zhZ!5rxLu9s#1c|CuMSFOXV`< zBNaiFK$TuqG*undOx5*AERUd%-mAf=si-BXEvwV3yQnv702;~~Ng7`?88zKCKWHIn zX=-I@ZEJIDKhqx2!PPOC%#XHo{~IudfH}+X=-j-Zw7B>U{-GS z%Ur|!t@)XSvPHJVk)^Cp(NxM|LANI2L znfAvHN)CAr7mgZ^C64z_22M53NX}-?tu8n&jxN2f6t2FmQ*Nwok#4K*BJL^fM^II0 zu?NKCiARek9ypmA^;g@g4PJ@q6jF{2)k>MNoGzZSeEptq{eK(omF8$I!7buCT3p%_sS zi4h5n{PaTfMP3wKlzr6rOWv0mFYltQqK9L+Vp3y%#ahM=zv6zC{^~x?CT=`lAU^js z!fTh;^9hm(rHR;y{)rn&YDrDWRLRlFKT}LohEn-b^U_e#ywXN_?2mw zIhQ4qRg+DY{WAL^$0}z!S1PwUk326X@A{4Xn}vME{HC`IZ&M2p3cL%p3-t>JiiC>F zib;xNif>C?N>)p?OMA-%%gV~h%Hu0wD!eLoD@`gVtK_O$s@bdaYY1v$-U08t-hHn% ztDUb?t?RBAs;_RKZ^&-MZH#V$H2F0hHQP0>wivZcwW_pszZZSq_<`d?$w%ssS#9`j z@$D$>&)e@i{5#G%-8z4C*>-Jon|3et81~HeYW0rysrC)_EA;maNDp)jiVuDq5*cb8 z78-6I5g2J2h`Og4M#e&rY9@7rhs6mO_@{m!rR6eMwy*TY3AH`D@Lpz-rr?+}h~6&ic}Z<;LEo z$L6oC=iBJpsXLTAW#4$decV;po&5gz`_`V@-p!B5eeC`01Ezz9L#e~jBg3PuW9aey zN$e@{X~|E%pWSDgXDjE<=QkJ8m&BK)S3*|<*9O-+H$J}*f2H3t-@d<7y<5I_zQ4ck z1hA1HA>eiwxIqbn4S~gm-1map1povd{Ah#eVTSOK{tDeAqo9Hejo{8E1Qr$s4i+B% zVF3hgqky}9aMQ5m`BT1w|!g6&+nYeFJcMV`*h=V{2#c;Nj`z?c?j`AO1Wd@3`UeJwhNov{=jJ~xd|q5z-`L#R-ubrs z{rKec=h^wi<<<3rUEr4BA7=e+*?+MM8?*}s4h|L$@xd+#jL(DN*l_UF+z2?*T8QTE zxHLSWNO&>{`L$ihw7l9!_!iJ96aqTFHTvTR(|%j_e`Z+N|CMEb8}^S~OW;P&-&Xww zFmNyr3GShV;NcMv;K77|h>VDUfCOSB6eJ{MWE2z>1VmIcR1`E2BHx2b9z-9cz&~UJ zcm(AC&*}aPIHQ!hUj)!#Az){M#Rhkf?lL2`deEo2C{mDPAV|Tyw0Sz024_9d--78X zbrUT2r{N?e>F$BAdYX#Kwp6u@Cxve#kD+Wi3fi5uu(f?!+yXpq8tx z33v5E9KjKiLqz)c<)olzTX0tWShxmLYN4a(hqx8bhTY`vFWM{ zTg`UH_Sg!x1F7%s^Q~UGi{+oS{l;XwW}5mFM$3OX?MbdNwGu;j5Sv&Nu$5rLFFdl( z^3CkMS#PxK78R{2V>lFcc_Mj)$)Y!!o|Wrb;Z9EbvT)|J3fBA@aCr8Fr8#|Li(KlP z<4bPq!9kR^QeP5IRlNFG#Z&U1LA-RE@*#nkDyu3y)LmrJV_Tl0c=e--9#e|1q}f}A zHiRx}gml>;K%PmaDog&twD4`ffxp>tN*TbJSdooCijf}q5Bu8=lQX1W zMo3X%qo`0+l#}V_DQG4U`$qSGm6laIRki=HZ*^~}gaf=wo4oHi>IY}c5D|*md!W|t zD*o28Vvb_u9za&eRdvb0vy5{bgkzJUI+!qZFkNWyH*sGliFr)X*-l;WN&S?3BaY;w zTfM@9jHaMAbFjtq0Vrws-CMD)z0GF1@=XBB@w&-SnBlFzK6IG*#r1&1K%-*Sk|g!) zrx;{<_$l)9JpUKT(z|XZ@~nHfi%WV@`P5y%9Q))xp)5W7j2ZMXGbO2eDU*XHc;qs7 zoL^K=R4z|2$Z-H6-=no@P?wX+whEIe9$JvsJb50!&lIXli25$>m&Hf7?}E;)QT?K` zA4^6X^EgV+HTH=h>%K$3_68!$pxC;$+lSgG!8~bL90PU5Z{jd^u_Js}=UjR$z197v z*s|*ROyoXL%r?98yf*STGkA3mI6X;Jb%7TWJ1f2Gb5%{DpnjnnAhRq7bAo{o2|(Vx6*Zb5?HTtloKQ{P>i->pdHSlvzom+g??LE3wcu*p{|qo{Tq7$%&U# z-Ci}m?8iWmcc*)4r4)`| zsY9!+exfkBl2dkT`i9Lmqt1o6wmHsk!eQ{n0k;85fmd~bKi~AplQ9oo7!O)r*y%d? z;kLjFMk8J}W|M4@U#l|dEpzlIJDVZUN0l_6;*L2bQ(unjUK(7>Ykszh1RdsadS4GfBDJtxo2o}oh#2pmrleBhp&21eeWIrMwIN{v%FHAl zqo;eUjOR%2uy8}nRAzU&PAHzs~2k1`u>7p%{6A(`}rHN!3)9oq!$YyzRC(#U(QDb8JQ|IwD(+t5c8F(*e3 zM^e-857Y`4U+9WwS;I$hjZjaRtT%W^XhstvM404N@bW2+2zX3L58(Sstsbx_UC#xW ze-zHPAfJJMpE>FKb>vH!^!~0of7H21@>8m*cWB6n{Ld6*LQ3qv`{vK#76hWrg)lEa zhP==Atf(P@_EM<3D>m@zdM%VsK~dgWla*HV5plCvQop~R_EHNBO`Qx=915SrRGB%M zp<1;%8*m6(2paCAizn9p%1w^6r~gFYotaxu!)=L{&=nrd%R1c+*69XsKw(_@Y`tPJ zKY%8@8x}ihVpqTW*A8Mr*LqrmjY}5uN0kpJt4TA{4RWSTX0W3ExlDRzBqhru*2&f0 z75JTlRkYYd)^I_5x9=@HZ}2Q)OGOJ9#Zca3e~wxe@jol`0C@|x@aR_2`>WrrvNAh) zWa2x*O`3oXLsH^{4x_l zr$FdE-hTG1c+`Dp6<{v^f_9rB$2qF|W{{jWR&Nc1(vLccGKFIHv$j63HxGpZm+wZE zX(E?y0Zf%2s=M>=p`&`2=k2$KA(0XHxb%Ms+dis=T+2@ zc)el+XPPSB<)e_21pQH!CBG5eUA^&__1|<^3=f2aE-Lyt(?*bEvu)BEfWcPuafuw<)c_(JggiY513YPf!Y*2O$$G!gCS! zrqK7jfQx%`_@RLS8h{6e9_(VL+|>?j@nKs@1Iw?w^OdO(TvAFJm4rza$_XhwKTx>q z!)y>E5{sj2@Xv=1e%4D>#%oEU4$$kMH^Ey`g3Z?Tph@OuMYe%RSYY_u6xpR916Eb` zz75(?<6=w?AxXM)cGXQ+Du9quAkgjttLwKS$+StCV+j}=tw@`Z4p@FxXj<|zuM9D%?eA)7M^^bxGR{J5W zsb&-LA7S#w>wOKqNk{`_s5{@*re_Z_F{A>ahAOApFqEa&^PgtticHI zjtB%pj6R|fYw#zE)>p^{Sx8Y`|E$Jidv0wMw-G)86JI*e>ON-WPx4*s)za1?Vw>Mm zhVM%#aG04A^0Iu)c=jj#9IY8j$1sNfS&g8Pk!}QgQdb}4=c5CI^O?^DvuQdpd3oVO z+aITh*J4llLI!uLR7VP?(#W>X#pPBwwRN+DWIpz}RJZFZ6LI}eQ#^Ogcss5$Jy3Sl zwCT2`>haXZi?l(=l6rz4XM_^k(PX*sb2FC#jG)G`jv*9y)sLPcYb}X^A7JbDEw*j( zcr`&HNSb59nBTj(>H^wrGa}8pCdqx@b8%pNpb*J-$jh0J4jGV@ARYu}F9|FkvcNWg!|=>DrB_3m?2LJI3Uv+ZI- zf@Z$E>3EMaK_xfCB&vOruDMm(RJt~e*>tvUMs1F8K~J52$Mm>sF~rjt9HF7k!XxWS zf04*^mS2T!P>U-cb8AHRoy9VaHNo*KKsT z6GNyZeZjgmk@ebr^v)#N^<8&xgn>_K31sTRQcU->&X1T_UM*iU%#WXynl_S-(*hjq z5eNJ6R{YE$Wd5^RDAiC5p)pRo-ZxSn%_C@qJJG(ewIdjWnGWW|gPX(s&{mh03OX0P z?q9iY%XD#zps!ykeA&r6jjpq_Sgz5TJuml?D{zUhr_lyz?a4N#OHiO|F2bHLRHXD zQ540Y9=BM>Jy93Hi{oCbV%f}FpQxf(5YNys@9bPAsphdn?HpS5*ZjWxQmgd|-hmLg z2&VBnE!6|K5Z~+R^YH7|C&^oN0-5i26OH_}&nsUj^ieXMo`x-KL^qRI;U*>Q8|=UI z{1v_B_9iT}yt}VMh>Bn%Q@j=Np&KE(09}DeD4-+D) z2*r!k$&+GvqP?ZeD+W1r(MedW@-t)uhWOe_GO`LR66A@9hMU)nQE{?y6t?#F6r0|) z#W3+uuAx5P-!rD6M}oqXiuq5SJr|U28|}>FJck&ruC{;HSY zoV@%p)`bp7Fvvu&{0m&^g*;Hm-6wo^Q}X7+=)ErDz7;>RY0b`d7K_$VJdJWE1thKs#3;3ltp$E{ zDJX9z_15Lk*<7iVw!jZ=tkjea-_BtK+6Op3w`-e9#aHSiw($K~v8H6Q>Tl*EC+W-Bjia23~V< z=WbW?_k2F%nNts*i~U)}|C}Y+sg){-ugFBAI<@qT7St&F_~M1}$3bFg0Cw4;NS}4# zn+?*y=!P57uL{{gw63PmCE`8ZJ!}@H3F{4SF6jw!^e4VOWvCPqE`g+?qY#kOJ=vrbbNZ zM+Us#UM9ZTxq>6D3;W=h9g$Hs+6Ln3FP7Vu0D)n8eD~SV3I4+2kW$6~jG#u0mH=Gw z4SMxS@ZHBqaVszD(kzhJlbk)T!ThRHsAb87Hh_)&H(xdM;F6FC#R2JMrP zot;iva+XE8{e;>V;+Sm|OK)z&15xA&iM3M1JgdBCI5y%$U$U1Nn(P}edFSQtDmJUC zMjMK}eA=%t`Fz7i{cK^um$lbFrT(kow@()W<-Dzyq8gX;&{1YZMf!^@S@!C=S;}R1 zs{w|u$p_-MtWVdw9c}Hln@@^#8V*;Z7jqeS=6G4sjjHHk_2gWQ%%C8clDo(D)&$NpBj0bG55ZmBCt?iWLZ!flwQWvS*cQAisrUvjFZLE zl>XcWQ=LMDhAVtvf1^EZ%}r|UPE9K$v~M8x20xRl@ZzHEd~o`N>GdJQ_l2wA!oNYpt_n+aF3{n<-L?Z9=U0#Ae9r@h-;Q zXu7(XJ>0NKO2b#d`a)wApO-aI&0z>O*L=S@$ZPubBW(zkUk}Kn;-hIUNwN0Z?+;hF zhaT#j#UQUKB^b$~M~@u%>l}9w_XA^+l}(g-Bw8Y?Xr6e>I0K;#WL`!4QNErWorGYIOjg7OU^574|D}ajhVOp;cu0ks$oQ)8sSpaS=&%3W%`lWi&dj*6FEXpvm1^t7T)8sM50@pGig`!aR z!J>U-Pfbxob_$`VZ!~=^8DKVwna&FXO(H@RPHrexl7F8W7Dlw7BCVQ|8QQ3s~u9T%p|`;j`$QxJWg&1BW>cwj3w*K(r0 ze{DHD@ax^aMqX~-9o9*9ystPfZ5};N1Zbwp?+qB| zSkbbECN0fZES*u#MIlnB=lA&gl+E(2ed6c=2V8UlV)%~Nwpv`>p{YAXI3LuAy&5_>jh$~_UXLR-v9v@X;Qdf6&b*2{^epy#UuS6?&5?P1;Om$jP`^&#&??*>APch`YKE|*j`WP8_Ul#>@-U_CDDo!FPTIWY z?=}U5clAgjp@m|?RKHr`+#I;}=ISS?G{1W@evU+*z+)h)9XJ%#-ZB5-MURFSz8Ya&p`0c@gkEV0U-geeoEt^2Ao!d~4_1+c$E zui&+n05gkNwybm*gVLgXxLtJ7dr*KWoLY@(0*bj>0`LDdT`l&enmXkj9XU$ZwF zJOvspMYVCA63C5r?_QTSeduny5|7;qc@ zOx(w5zinEN0d&KlVkq+srkeq7%DWm%cAU0>eJuFi2W(&b4y8wGO(>I(b<0gHtmQOO z_GyL01CdJS^=%fF5NCag#`_%6lM}z=`!L@!cZCu|k;w=AJM0%!US}zL>VHF|(}{vL zhl@QwE80gF&mu#%?Ig7%^V-!~Z5e!u*hVoajQq%miY5{^^SKHx3l!-avqxQ9CfU-- z&#VQj3KxnOjRr!u>1(f+;_1*(Ucet2J{QYHm+%ynkMl?|^JU*xiW4Yz(g`W|p%AWkB_r(h?l`P+7!P}fZ)W(1 z8KvFChR%eyL(&1ffj!-h`-DoA0P-`QFd=-4^G8_#0vt}EXX$C&R|w5Q_qhc?o2e|5$3C=DlC9@afGqzLEm0+e2b^_lPwk5aX^O!3PeW&9 zD#f43z?)eO4XD@OYrFWa(+i|Cw3l-eoy9NG(Tlb4M! zth;xD3$T58mLOTdX9JYf1B_&vzSK|E-gvFQ&>Yi&kd#@b@(69&R_AkDcllBHO?>gsDC#+-Iz* zGM^|bFCleM?i_AXUvVJBFtAc|JZEUo6C3i}n0%dh5AcTJQ6x`RB6DnIk+&2q!4^3y zvfw7_g`OAh2m|jdSJE1B!|+vV&2(#x9S&G~tm~5wHFDnR>dfBH-W82zy{qcs+%wY8 zOsOs+Ge|Y?z7X(0t4t8`3eG1p*l+KDqIK!@aZLQXp9RF#c!Ec>dvZfE%DXmg)jr8xq(9kS+sa}ogZH< ze#DeeC8|FATBIY0QhuV^C8aFX`D;&UI!(qJXGvnY!aDRYx+|%dM7-9+tK2?y9rG;L zxtn9=6C&db{@Vhbt4DO}@3X#Nu@#VEphHXgDF|QlE?wqHCD8UOwZ)+3J+%+iuef0o zuWQ=T=V`TpZ}zU??YL|_I#fx1{MC1)=Xi_?5oS|4L><9XK zmOGJWEG_a`ceu_J^!g|xtRh$%P^5_sjT@ehla3ZzHg)OIm?=ONA%^MWf3lrJ=Q>rd?1KYw34 zPWs@jA&kF9cn>sC_K1qMu)RHIF_ovXxDa^vv9?!g6$e3CqH}J5saNobC&gd?GT~q; zD+qJBpLIj@9$4&9i~IhaU9datB6UzH&gdYO=9imFi2H=o4rPk>K;*HuDf08$hSbp; z)=}8#OMTbH8NCF=g^%PVj|aI_ReeVbF$y5k#Nxu`Caf`crhQ~516sz*H#xwRkoCi_B(N)qv@F?;jfNplF@Hxw#)5)bmSj~w%hsN-Bx;j zZIC=qd+vqgY!sv)x&P$CA4`hpVq#76(gXijUNq~COw9Md%*3Q|OsMd#DS6+G!LE&4 zy|1cf+=9qf-y$!(xH|U`MMlwG^?FCrvFWzK`74T@g)n^!?rhuF0iXIsCibmu=1)1o z*F+mSk|=c3>T8m7f8gdlJ=0pNG&Q_q(%^dgKF{_*krp+iO~LUrcjP?(@|CL}U$f?= zt#-3Z0;zXYP1Bas#u0!0nu%V6>LJhFTtVZ+l!byStGP!m>srOc;wNppXk%Z2?!|Sb zcKyWtbk^%t%n!NY!lfqsF?*D~6e6Gvqm*VggH&EMqhpHa(U)04HF(Bj)tQN0v_G2c zih!RsLz1r?De!v57kT_%(YIbd*@k>@9~2j^8M~2OG+6hlX^_6W#s$we)-^=CwS!Ti*-TpNy*ICiy zus;WHzu)lFc0)(QKp*o?q7p{~sa5jp+M*B|wm2?jx{Z})6Y41crjDA|9gWQAl1iiH z<)eOZ*{9PTTxXc^9e6gO&RfTPQM%#V^3G%~fpzfqcO~-&5p2_WazS|rj2;-6ML}{a z&!ms5_IDN!pJ~-haL6LuScVh^*upg313HYqzV+FEOh7=S`?Q(bxN%6} zoA%@D(o?#*Gr6WGQS|Anm?j(uffM}htGiyAHyx`fVk?}w@$-$zW*J;4H=Z?vW1@W$ z)YG^$=$s46Qy%}tV7m{?ps$jI=Q$z_Z+tJqWSV+ci}+IDr&s{|bh?DDkU4s5o?G@Uc< zZ0D!mn?DC=I)p85-?lUK!OC2x#*4LFSp~oi$9IMrO5oRg2{xqx8zui*um!=4OIm!w z_}6XyZOKP3SeoVCAkvO_u_UsD)L&V!CzVCr3+*ohx7ZfrJq}NqcVO8~u}5z7zgI=X zbQ5qlarITF@9g&3v{(|fPpn7ZeJYyEbIDnH=S$O0@&2~FF}Sw;^QEaqjHXVcpNr8( zzbF9t`Q4$QN9e;I4%o_`w#y9CPtRXp#xS8ey61n!DG+t)G22PxQS+3I zs3mv400&OIdKJZQhAFWbLaP^trpWdkjg&9<6Y1vo)Npm|me`KdLem2!%rI3lj>cK7 zYEBt%v|n9F{QUaDc2U9wY3x~G{@v`k&IF(T*NB?RH>>^g^_7JbH{s5==viM7C%yaI*+(?7IDck`cUVzfxDyvD%&Hwb?8s3en<+3vO6( zn!`zJ)OJ0-B9k#~dY#wMg>TsQAkZtm;?sOwy#5_=Hlfd!4c+&UK-WPh*q)-Uy2$&T z5Mtcikm2Qrp0pK5!@XuieFg zqX*X{4I|)`tzwubm9cLC{zUz;{B7_1TJ;NYx_ZBGa}>m9pC)`d8iIQqAJ@BLk+qK;@Z?l)S!J_HP{nEx`DqZ1I?W79p~k0+GjpXXVv_rADp-b_DT|P-oees|90gVF9iCS{qAA zUdnQ%v6vP1bjfFpTK8yr8yonPcB_5eM5S?!bfKSz#&p-XLg#$2iRH*b;)?#Ib@6HT zLxX|x>N?7aht3f?~_9I8k?QY}jGvy)#hqee>MzZ?{Y*YdM6kLaTKDKGKn6LeU; z6W(h}179yIr`H({EmRL`z&?U8_5nBwnDa{BVki2!eFm&$J0kfl>+68G78p_|pBjUm#&d)v{h9NIkIJ;ziNAe4Y7C+kRrq?8 zb(t^6?MGKN1fP`K-sXRHQNxm?xkMMCZf)Kjmz+wFc2d(ax6bHnv}}4AZaTa0O6SQu zKiz9rRQ~1I3^44TZ2*7%4o@uRB2wh6T-TC3VSG=uLNtcmRCk8Gr2gGJzavrgoxNpq zt0zvNcY=vo+f}H>Ye8~*^^^mA!(??M`0V&EoWYjKgNntj?vVvNJYLe6G}$zIhKcKH+}V#Csn5jXMMB|}Yv{md{jS}N-?e?vK z(S;j_ANnTo{@p(G$_8|d>h=MmDVC3KWRzjE+h;ezJNcvN?e1g*BUVob$FvJ0?Z--$ zK+6*iVwo!=<21JlB$}=W)2rU%rSTu}V+F^?Fw}U+vhg{z9=DtTH;AO{*b<@+4acGO~LPt8Yx;G8K$gmiH!jb$K$~nrbVoeHudr|3T0dI zoWZ4C{6Ujr2abxwulF&^8g_E$GHXWsN-R0meG7NoqQANN#o)X%&6s%R$v;u_H8J1E za;cQBHKSai$C;ypJMocOqNC7gZ)zu;Cu8hng&_&O)MWd>;FrBI@funt8m|??)D8ZU zCZ2P-W994!REDqWXZphLTEkI^h5NaJQY5DE2S*Yn5?f?QB!g0n7%1KAP|04~m-$c+ zwEB!MAGGQI6!)w2&Va?v-l-A#tTqN)`z(_b;I@^g zGV|Eeqi%U2eDla^BleUMwSn?&ZcFY z$Z2n5i4LtD68)4f9$JO0tHuD;taVd<^7YnX;#A<*7>DJWBIR^g4$qHg@i|9dLdy}n zEsPmWYGmwq&z+q{PG4RS*vjk_V1($qW}j3G^=r_SajfnReoP$JWIbF__rKWJ!(lGa z9evf3o4%dZ_yV7!_$RM`jCnKmm`%|nT`U%=&%ViNypFo8^Z~5_3M!%2J@9P)*(m}d z%dyftHNsD0pm~UDWi5HOaZT2ylsSrcF)RTjF5N)uxy3R zhYA-l3}(Mg#i|f8(r!}<>XqC(xq#7+I*!$==6qVZ3Nt& zere}SqVeYJ^$Bmhzti+bw@M9{@|_gXx`CsL^PvR&=Py3K<6hWn7rO_r#?@?H(U1*4 z1H_1Qrz>TA7Nz{P?VQ%G9FmR811Pt1M(NH2C1M6_CqvsjP5Qk39%GW$IEQ@R{+pv_ko=S|di+E!+9!#)5T-=QIzR@;=dl_T(1 zHSCSRory&oC*sa zM(mnWD0)kMiA0c|&Kf-G7`aM3o@;t^KYzX2kl1Ur@= zEYV-y&p!+44T;lI7xb>el{=|dV1RuV(Y^m2(|_<(W^f>tO?YTmC2;uZ3zfQ;+@}g9 zWd4~wxTP6EW|fL!KPy{BGE0iahzq5V&|hP2>1wO5##-I+og+*1{y2V3Ttxpk;T!Yo z5!}R@h-DG4q4T2g(2~hSVFh(lVInhhgIB9KIIEBY5zXzFTPY*vIceDamvBkT7Ae-x zCAz3yiDL?ZF=hTu>!^g~e29WN7rLfB9cxYxrB56f^d#XNCLvAJEbn^^=Q82YAC*Eo zhF1D{9Nlp=DwA(BQ7iIfPRoCz%KGY3L7MU4G&GarrJLO}ZuvfovSfOtEZe04T&(*5 zUvHK%Ig$r!O}cli6~KzkQ8@G}YT1u?PkS}v?I%x9^=YarDPNt#fO#ha9-r>1(2NP*{C_PH(S*=Fkk{ zr9*Nhk0%Nphcx`nwVthnRfZgz=Iu)1+>PF>dd^6~0Nuh(o1{p&ZHlI!q3MNxbea~= z6Gn@@=QvJ^%A)#SA5=~fTDC6Xjx!ws2hTY@ z1LuUP{l#Nn&pQL*cI$Y)B8Q;tjISAAs}&WWqA}Z*LD*pN_1+&<8toFPovi0L0wV{_IH6gg(zF-VaamefRsti9IwiL^;a>@(Xx}G#Kn*? za7P^dD=8;dP!1Oh!*;0yO{FqI#x2OII)m1!iB(3z;Ag1qOPLkO>@S%h3{>^?Jq#qi5b86b zn^W@{cL-I-BWmq9{-(LO+>hR}5?AkLfx&5JZLH*ZjOCHn``xQG=Z0u-g|`lr(5JSA z_q$ec6Dm$WwJdy}h%WG83?^sMW(YfF!|q6sY+C7(DhKr}d=qO%~|Ioy-oK z_Wih9glrw5nSuUBxOKjkLfMX3c96zI$4^Re#kLWp6n0bU59K$LsCkJyV`ee_dRGSy zsEHX-5k!xoFv06b)-@(nk=nt1G_JAAQB?l`9zOkX(rR2ysOodbZJ5+sVQe6|d zc^IQPxnmNxQG)RJ9V>(W-o1`bv&kFJYrAkoY+#`~gTnAIyCP4Ax$!MP<@Yz?oFeeqmT@mpJ7P9=TmzvXfOetKu=PwOndW}DFM zzR?LxG~rq=n5u$L`Qo^UyhRa?R9FJY?SwhOz~?#Z)BKvsc#freD?1(3@(AUJZ1OV5 zygMoHTy)y$FA`u+@<1En(voPAk91-kmfsmivc89Cp_mnqxL?T9M!t^8^h>!OQ@{r zBFVT(yJkyp4RTWI5E(%7K@tz|U@kwc5yW;gcyp^s;@m`&%2=K=gIr5^h2z^Cc4ZbU zglv(>>T}o9t=7<9#^<72G2B49Na8F3BpxfxCD*PbwTYv2w^5S8m@_H$8UD4KtiwD_Lve*QUp%at2<2{2d_&(^e6*)BdurzyH`-t2`EJO*9Z zAfIaTRPim=!XTF5$tHJ&=-KVfCsl$+vMRDfmjv+n$IZhE@)Yq_vj*uSU>yLA=Ldi1 z?@QVJ#(AdYV+41~sW@0?egf5KOEtgfasauh!p0OOEGc=yk75pU?@iTV><>nVPzfxKMCFw3Bkq;-=DhVhRdFLn zY|vU;lmY9Wovxi@lXSbXQ9^p- zXz9tuDSKk0O!Y7A1!Z#(U?W^^^{+70JXUT9iU_puC2U3`Pb~f*6YKg4k7&WtJq_=p z-5SR%&Cx(T>&u&6xj@Yx6U#LLyXi)u$4aNX*Q%SocXWwvEXNl^KE0qt#fSFnsx4#X?TP)Nh+3C2c4h* ze;n4ds;;EEU5`qSS55d1su%8@<8^r*?33#7l()XKfI-RCXxk@msLLslR$Fl*5O$sq;A_iUQq#;27xsvrbWQ8Caovu< z^v!GSF0>)x+C5t8?&cT~#MbQce-3_S`q!6P-g&aG+I1;*xdY~jhU^b+e<4z&#OU-r zEpH|%8S@Z>$83u8drejEV3H`VWR$?UI3#Ty$i6a zTx>S^sg{|cJ5e!)9mGw=G*22!tu{iG1jeBEx`2eHN#01(tyB> zka4@xyxBDg?xSzCeW_PC$m_*NwK0_@dQG+Ti6B<<8K0rXM_Tgfb(!OpAT0iRoP}~h zQdcFF(|v!X~yBx{NlX6 z-^G4x#Ug9zSbT*d&d_s$F-NwNH1=8^r3|v8Z7kSdLHDcA)5cef%(7fvvOu|2+rke@ zUfx7|BhY@<=@@Zxt&&L{#d(yzD!9CsCuf!`TXC@?kv?qt3{mZva$BM4&2=o8@}ZtY z@5fBnokOq1ZwZz|cQVQb)(ZS{jP$7X?K4Qi=WK7x4E|t^bB+n;HO5|E8Dx${Dj@Rn zyeTb{>&0KzZi$v1K8K*Lq`q0mM=i?Z)84$kU18#h(PuJxZBjn9KGm`vBhkjB42>K` zHxYx^@~=6M#1Y$pJhzctxm*B>M&DzR*QIY7_Cs`&=y$Dqd`Ffe%PGb^Ym0}(HjK+6 zU4+Rv+;DM6){2c3j`rGpM7p80X$u@-4tN#9f5KB7Od+?_VrIc0$H+tIYJRmLx=8eQ zO-=~>+nqM?B0MRQHc|BCSDud*&mydG>l58P*es19Di5v+;L`fchNz>xlTnf+R-GRq zaxy#j;=JBXXcaLTUU?hlR`UxGdXfGWs;S)5*&c@mp*+$^vRmE4n97!oh;iQ>SDL1) zdn!rh&vk5(kDD@)*VDghe$f*uHa#*sxx}p$aa{>i2Kko(N4Kh`iD~s(3K67A)QW+ElR<#0y>)~nk~ zsk~_&^Xn4H<)m;%0vu&VH+!1k4z=X~vB>VOdx4tC)$^;w{mV~$vqKR|2B z(_FF}npBloxdSBe+LD>4vuC2obRofMB2zaXF*U=*soP4q_&#XcQ62- zo4-+>{Ex@jJV||VqhH?m9`E6&fbQ-5CvdhNXWC_qx0Xl}z^cSeoLAt%0|FB8E8O!R?LlvBaUAmrC?9tW27Q1P#Zxt; zwQ{kvGMdjw#PYkHLGBh?Mze|t+D|cM^1yjG10eMS<<32FYuvTZ*&E`ohplXGH8bHk zjohnmDbwe=yM4rDe5jt3U-d?U8-jg{TrrKoB*`i;H9#cvh8x~xd#joFe}7k~-tf^nQypV}1nOv&YQ zj`2L6R@IVWCB^0Sq;V3mDOLH$Uzd)#AIiNl>-Kl})qiRw(>@A(OS!kb2_jtDrL%dv zfx%#A$N*phqqkF9M;{mVi2lu;{u9saZXuAPJg~zI#hcB#j~+<=>A*dC#}#Jp;kS=; zEm-((#oid#JT0h0ZXGP|7ZT6Y1O;P~!*(&AREpQ@DXXbmiDm6{E5oT6?qvI2utB-L zQoy)h;UgZurFYk#vzNsqWpk-V@c#hD@mWDIf#JT>o(YKSzpp4jKX>NsjMhI|jrRqE zpG0}}mZJs4w^pLc>cngxD->XPbg`m(dd#-^G6JiBCWe*FP2M_ z^KNWyBoIbDYek5SuW|iV_AK1pN9M7%wzmlvFC>eWkbMX8t2TZL*Ce-jFK%osj3g}H zZli1F#F@c;zF-F)na@rsOB)5$Us0c8IOd5M3tMU0)bc~gcC%37` zC-JXM@i)TTp8@GNx`wM|tH*I_N82sZ#iahsMj&pP)rxH;hSM2w$tP|NHJZjx-DFQF zsJBOv&#PO|fIKs=XjVF+_~*g;RIMzje--?a#x&BX z85bZIcWuJ~Q;(aTIp~gSPCpYc{>7;FN1ekwa>DZ+N9>X7xuG#NRyiU(L zL*^44s>%WB`gP{5YhE7HZLhU^F9~?JLe`F%Zf-72(XEt|#2aaKMxSXQM zsF`E(f=LAJzy~Dpk#8^HV6^ydSgQCfF?3-Q!; zX6d{$d8z4^(MVC=;xiYO8iM;takzybl^H(VQ>B>2>e*4iO>{Zr)!Jbj+FIN+$^w!l zXJ5p6ZmnCbAI4r8p5IT@w4FObDxujP;xR00>PiMok~r?z>sx(wHKA_?*67W-)b%71 z;O>K9+yrU{+=IJ4Mi>#rV_aKXrL1=L^NV%0Qp*BB&E^c2Ad#M@-@PSYOPM??Hw^a} zlHD^hi2TKA6fl27fPX5+TYYLvXk@m#SY?q_MY^HHToQLl>4Eytu?d+=4$*qwQq+Hb zEG)doRV9RLkU$-?-|1Dfty{zzcBynMZaf*N$rCEE)F4R_afbcal|tw6>Bo9g#qzB+ zDxMzi-ZX6PudckSNbRQ*PRfWGMp>J}O=@WHO8Og@4|K0B#o9atKu5^OnU6v1QCU6Di6UWbrCeIv=&>tG zn2faf9N_2XJH5M5@pjzRV6KaT{_^7Ad{VUb>c1j|KoxP%AY{}!rIdO#nTGnp{{T*w zIEBo~ELk!F$73pvg0NYEjIfOkYnd#X*6KMNxQLM`0E8sq4`a!!_rDJ7rbnqsXK8Aq z6D%zGJd(KTayorzjxJXt*mNg~=j_&(5Xhn*An#Xa0c05il0{<2sA-orkb$fXL9Wxw z3oI;*sz~g^kH?zd>kOBNb~dKIp5fZwCyLc#AmamR2iCH!?IpD{o9%8pcbo);S}~k2 zpwFS}N#hbH*fT{^{@tXBHAFVja<0RIPe3urC;TfmZ3@&|M$zkAv2aev*qJT<>E6Q} z0!hawq2N%l=)bG8ZXtT0hr5|gum|Oge54!z57R$dt7~g*1+~L8_ETHSwS4#f1{uK} zxggOjb+!*+&3hX=*L&Hc^X`I2w6TeZ`MLw1gx5cL6tHcPbr|Ey5X}!)Aob2M*WbM* zj%>AuG+@*k+Un*r4c)uD7>lxG5JnGvoYs6-mxA78iL}C(cw-z$p~=p23FqsBSM|2Z z_6?hBb!Ts3b8jn4bs~;}G8R5Fk`G+g3=(P#*Kagp@)RABQ0zXrKAx37S+`L7yEMes zR~wQ+6j9H8 zJ?pU{g8l4v9Z4AHipX1e5v7<-G8<&c@}>a9I_@X0uWos$c-XTyK^%dl^c$Zr9pWTr@1M4th3mkVir~(rqIBkCEx|>$mWWi+f$l zio2BwR=^&)=lp7glwKjfTZk<5xU+mj=&NR}G$jBhYk`os87rJ)sP9$ddhZw7M zS4KzGG`l*RZFMefq=CV{Rx9LfLhi(M0Cyiu)d>7|J??cVbUOvOxn1%bJ8@T?qX3AJAJ`&*xQb|?dw?YsA^LAGU=C4Sh#vRoHkChA!?v{Og+XKy0|slfWyHka`lEgt8}hr>D!r7ZCf;9lPR;C$I|BpEq5 z?a!rYEJTS^7ROHB8}UZin$t+v?qIwhD+>k@$@!iSUJYd3c=t-yZ{JhYd@UZGWv51q zZ4_wt5kBHKGo;csThL^W(vro!*{9W1jlr$znoJi~f7lifT{tPREdY@L7yyz<1RU2B z<8KoQG|TC{G)0Z9fUH8w*{#u-cL)Y@I{MK|5Zlzhsl%z$YB!g0%8+QOm$F#uQQ9%NPm(R0T%TMKoROO7VfdS|^!OJ;(WJSvn1^X@7`@W; zRX7<3KArK3%6Yr&ZT*=J=1tzA9jw2&({1hZ$IXy4>Tr2A-zJ%=T+WF%gyNM8rNpk# zOk$Y`1($vm$>*rXPkP7uX@5-5`zx{M2T-_y6|NAJoq%Nk_s$M`3WoPzp5t5baJG)l z&qGZ?($XY_u#t{JWyxXz{_!Mw@m(QV5FtS0o_h55 z71u~@G@ETU=leR$&2eh7$XXysBz4bj4k{y>E853ga@(yAPSa7ij6d3EU5cTK$XJt; zfI8P5uj(4Uk0J|LuWhZTlX2Z>S$5!Z3#lY?+O}AwBZhbfbJ81E(*D-+mFxS?y9Y?AkA5(f|F=eJI{_wQNM#d52gQNX*|qhjpplH1ySt4DiM zsv<{4m&=s;ka`pK?OS*Hw!bX)acGl$vsKikme8QYYN{0(M%G{f$UingCbEWMb*a5v z4YoPRq*>NWh@NfCyH&v;H@16;UY`Q*=;mjC1+5 zE~DZYXSmZZJWb;L8uH3eE^OCaof%kiN!cLd1qB`uQJ!>z*C(AH$y*cz(-Yhr>Q2wbU=7w1>*^ji7Z+ z#o1Nkf02r@jikztm;ylNzdAKWgH#K7J)XOFtjloG-5DhFiCDl;#IZY10Am>BV~QOX z*5pk__liGfAe-P9?Dz2nJW;H8dh6oX!`sgY-0Szy>)PIdtXs!#9LTU-S;ud3tp5Nz zG(}`!#4y5~F|Wk^T{OAue#@q5w^J?N=Xk_%#t7hz#ZEr(Q`g?S`DD?l9!j!o^)T6t zscQs&<6r*Te+)cLt!TD?3x8+d*=NO<+N=*PhMPBr?_s>sLYyeOVLIEwbKWT(K*7&7 z_^GFAXTn!nMx)@Fb!|Uawgt;gC?K(n`JcoF+!CO1)7v$acykQ}?%(e!rxDk0{sH?3 zuKw7c2(=izL*dOk_8Is|qv={bs>pQ@?2#wfdHh1+;eQ;ad$}-YMXhdu*C5lHypD0__mmH-+bcUn0ZtFX9h}wfmcG zSK^P1Zv00dn=PwZYth`yvA--EYZVz>9iU}@DsZ7BbJWGDYI=po$6tn?6dpS8Ka0E# z4~RTp_E_vRn~5g4YfZ#_)6DGu0BD4Hh+oT8SM?R~;r{>|c(=n|ExAGV z>jB~!O|G3CtmST+*;$N-d})~0QU)Z?7_W|Qli|LunqjfJ*O-ZdPZpq-@gJBHp+by+ zc;}JLM5!z2LayG3`%VP-X?v$@_m)~GjdhJm>v=@fZY*O;;pV#bS{34A5H06HJ6Ay zOMl@%5bIt9@Fu@ww6>9}YS$|aqi340<^dv@q(%UK@M8y#xbS}!_@m*qzM)~LKZW&= z2wrOTzFb$9I`oSgAZ6{ELQS=`V68=*8FVC#>khO0m|wA)|PP?@85dZ-vnDh0N1glKYId=&bRL zrKBL22k&Kg0>3hJNPKB3Sz78d{h2R;-E?kGmf_DEpBP2K`@kNDnr|wgmZVEEuP=u~ z^>kFved`Z$SG@&rm?JV!SRWyg@-rDTdl90I@qu5d6;0o*wh-dl!iQ#j+XD`WJV;m_@B@DdAIE&O}o z&kJa>K|Jx;c)r&D`%$}jC1pn1v8a`1WFQv9C<(Y8a6dm|msjxKjrN}r_=^7k!1~3N z#v(+qisi(d6)3)D_Q)(tsKDvXWr@I1sI7PMWmCu1j<51Q-}t%WKZQOcw$=4-g&G~a z)97w>8RoHzQ;z*vcj4Mw$hOFv*p}K)xH%+zV|{Vr@pWM~qpNspQqiwrMQhotA`Kq= z?hK+wd=hd&>~qI8ID9IipCcx|Db&_S=yrjocn;>@!=5DY%s;X}ighz=kE*(O>h{k5 z(6aLKLo`8S`Nj-;k1gmq{I}Ju?ycgPG;LQ+)-CL&-}b9>9FQWp8D2&Xh(|8{5%CefnQ5uD<#Jj^RM|+@en4w%rhaQ~| z=k=87b)*|R>uc!kno#nOvJ^|F2sdN+n;e2Mj@@ZGR?#vQZs`3O@xAAUyf>=rUI)DK zhKc=wrPxWWT-w}e)>o5h?<)x=9%8YRXqDKiqXsH*jx%4MTCA6PgK3dlCY`FjJhWE0 zSlZMt+%KF32ewX52&;@*>S+qAdmm7Ef8rm)Eh%nW#4&ga#~Q5dEwm3dnJvwXaIpp{ zWVdDw=BQ7(mc~fW74q+jwRY0qPkXIB86}HjG++b{r{*IWVmR(`=}ppashqJ^`zZY= zx7EH0wvpkDLrU?#>`SWY_xi7uE`zG+O`u%hoOy+=5!gh_k>(GTM>rN8CcxHfLh7nH}1r#_p0nC)0k1%2erA&=~j(0_}c5`GH22S?MtXCH(g4A;UM%71D2 zkHZ?8>-LvXCeUM3ZW9~#VOZc~dmMZmg5ou})7MB4CCf)PqKH9I{P|;Q<0Nk2pYI+8 z7;F-Q(Z9X_0GO*(l$NKo_@Bl<3bon1d4J$-SNj7%w4OPw&Y@v5%M4BJ^LJsS*?4bkmq$^#*o+;DU^QJb zUk*cM84=psi=pSdho~#OuuKp`41e2NbhlsyrTk9J!7QNwJBU8D( zG2DH(TEDeukRfcGr^>s40f*i!I#sxpF>u)H5HL z9yljB=qnjTzqZHqq?MFW_1B61G5jLXG#g(JS$sPEnY>hNqDzCT$!&MyJBx&8Y^03s z9FoY2GCFMp4tN#fQhY7A(zM%!)bE>5)#r$`5Neu*y{1V*Ren}tpzSyylE;oZ))A7v z<@0kbk1X*=igg_?#Jb;xw2QqD#J1XO%+X%kZA6kHpn?v1jQ8Yp>s>vUhP2piytCmA zV^8r5LIc>`&SjC`3fUouBO`GEbMl<_uV#)uF zILVDo&BCl~(e8wRq^k}Xl_!-Wt_iFqn8E#%SYU6|b(f1iAM4&7(=D}2sk9A65#qU2 zwi6l3uwccWMG9Ch2HwPuI@c{CcxGsW-F!dNC)EmxAhmnxT_qt2*h#|m+A-7KlEp>r zH-xtAbQ<1+d2t-NR+B6`REZ$B(-LxKwZO`J?8FeD9ELgf;<-qzG8%XIb)&7qGTeUt zc65L-Awnw2fSlm=BmwoMRLRq}$E|AKF!)EPL2veJZFU=ZP%5?5{{U%d_b?&MYJqrA z+y><1lU^gMcz62;{w6QsYs+gn-6EPuE*;h)dHGN9?#E1Vj8=+q?l{qXk7|#`-UQQ9 zYi(=6mmV_m*UyH1JH$_9q63|TqQu1s?ySL=pKSQ`&V;J=l4<%irKr?x&D>9Uu0;=< z5#VGo`SHo<2b9@pR?_;WtEfxm-&9_!u;9JG2C^cZZ`LsbmrEH zA5UpsJNRX;?$Iakbe<88NPPJ&EcI#HSCn8DWVn%|&Oyoo4i5xkyf?%@4lVQ>^97vx zh0>d0JX2mE+XIoDNWB*aJu~>%EF2%g&E+d@k63>fd^#5ze6~+5-K^28+{U*IULZ1G zjEwVuIqE$RJ~OBIl|CM8t*BVt>vr0ezG1m{w2CzVfW;KLkO3fe`=IpC4pT_Y%^sDg zc zcjtF6xPV7aGsRUp%I0p9dmYz@yi?&g^{e~e5ok-ONYP{LkV;~LVYPu%#^M1hf*50* zgI-5r;hWuGK$FM%Ub7wUoeR1Va)qwYuipu7K4VZ~j#X3zU{!N~dXbFtTF#?RHUZWb)tY`c&6MFPP=y;a4c93;uj` zi61oF>fRmkUaezmqUfF_vDO{LmbO1@YuRs@fHtXAP&W@iPH+bm)%chD153BH*6e&A zbL8DB-dVkrFC5SzZR&EA+y4Pv~$I8_y&3O6xMC5t@T|h(_Xo6KF?IPp5{BL6yz2& zM#`DqPbGfw?^sVXsGg|O7zJamxsq57qZhep8;wb*NQaQ_P>a(HCIQ9e=l#GsR|Ak0EA*x`x@|1ANT{}r-Zyw z2Y|d*Z!{~$pZB)caah8xg$r(3pv+}RQUL|BcJ!}KglWt7kRiIMax)?I7N6|;v;rMc z?pRqa4DzsPgLK@Wh8=T*>&|mqT4%v;5bD}Co2^5q87>?PluJ9PZk^+O-bV;`D=@}Y zhH?#T@sNw&CA9HKFV9!zHJQwJk$dKe$Mi)=;s(%eXNB zk^wxPD@a#Mc5})SZ1>-W{{S4kYw*KZ@f_L&Uk~E5)PK;Y{@L*5o~Wf&j?#kR7%Z7N z%Hy|O3i4~!(uu6T#XF}oN9cCL|FDV}9* zp$Y{L>yij39c$t*_(ptFJHIM`i$gqmaa7y?ptn=pH!oF0F5_v~oer zfNB=G0AuB2k(?Y6&u+D}WR{9Y6rnDs)_x86p`vJ-Z-_iOsdzU>@t=siNoe*EYepsh z(bE|Aief?A(RO34e0P7M_?A0k9;2w(Ti9M)C_Aq$j3!1n1mVw?$BgnjdeW6XXM2}U zwBx0ZyY*j*)^Xfj=&R-Ui&@M%d|HjQ)55k{LbIz!A`sZZ<0Auc&r0~GP4M50)(Ld` zn;U^;b0Wr2OoSsbI4g!E42+zNR&F+Wv$~yTdmZi2#p@n)>oR&$`VH#VMaio*V9n1#_(+!yufn)AD#gx?o6nPQUbNruks z=2v+xBO7tZ1OuLZ0Q%PPoj$C`+f@Ej**r_}tHQo8@qV$aTWES8hi>&(Sz%kbqO93?Ke>Hb^ic|ej>o03Gob9dR~=pVWnKb z6jzA_*tkA)lFC6iW+(|jRws%vsQQQW1uh)!Q{UCvvg z1|#n9M?;Q(c6h~f?tW^i*=%$kAMnnXB>w;m^tpUHtXpdliRXsZZWb>(NI%vzkvfxy zTrkfBjsWU#lR)tumHw%q-uPzX*TgGk*1Ei&Y;q)?Ncm8d!Hthl!yB-ooUxbH6BX4X z*6q9@;+Z@R;OpzZfm(i%W#Nb}eEm{IwI6SLySzr%k`~X&lBpO{R1!`zTqcpNzO~_x zhCUzEd{N=Q4)}iaTeQ8ln)(T)jnqxGVv$Z_o8)Kv*$N2A>s-$pZOZmM+al`e>~*W} z2WwshvDc;W{E%vLSy{<&5`Ue?knITEs@U87Acj2GBjfK1c)!8g{{V}8HDPOWr)jOO z%oaPF7?Sq(IVQv*BSlszv?~ToCJsj&S69{(SGmcmm8^BP7B}8F)@}7I6X9=$G#?Il zw_8iEA_!Gr(%7cuiY1#1b9ODy74#mCZnL;Sws!G$7ypax5+e+$Wdh|@~+So zO(#lTbd^1&sC*?gdi&+@oX6}HEdjyWE+k*s){>P>6IR$6YS{iA<%8I3Fh2Aai; z0VZ}CZ13c+f19AGg=?BloL<8;ajjeG+I8NG;B7YQ&OEZqb9}c}&`8Jxh2$%h$R`R; z4&mr)dA=V(t6J%H{vg$6)nvZ7OGScxLNvLyaK<(d7$bTpM%vAVAn;EHws@#pRuRLu zvAZg08s@jIX?M0BF3_}J4%*Evq|;3X`&*ETV^-L^WZnZ6&&&V^wQ*XtzKfu1x_^h~ z_>5OYmRYBjwJ5~!TgLz&yJHjYVnYC`Fu)@cPaxq^ww~)QIBrMp9)){t;j2w+!FG~p zdghsNCYux%)_P9MJIEy@C^ClLCk)G!=)-$wI2FlwGJQKm)1O+s@g|k=8Wz1+t#2)$ zc`qz*8wDkNmpIr$5()yO^~GmSwYNGR4ar_8g3D9!hO=|=A5YP=t#*5(0f$q9N#cu! zI|$mxZs1deQJm)^HS4+;gsruGJ4NxFpAxU@$*G<;E8%8y!BvX9qU>;b7lZC}zqaX;co$yPwA};=5(s?9gIGelqXE-t+>Fe3 zg2i$7NUo1n@ju6Z5PU80w~YLI@l)cixubZd0M9$>Q^}=j5*FHv6uH7b50yA!j2=4S zEPS5gRAABMJ|gi>y?JwPMvG)D{0(Mh^42i^Td)eO%)>0(w(VWMzfs&@YaTZ6j*;-6 zSJymKtY3IH#JYB=E{$Pns9VVLv{OVTcPh;LfyUL8AvicVuF5#3_BmyRYje!(JW@32 zE$+2M*0kv^R2z%iP_jBmszz93Z$Mw7s6UQt(5y9I3V7>7)J5Nmr_uCJ1YQem9@hT= zP>R-RmRQS9S{M%%Vh>xMgm?KvEtX>@OeJ|*$alKvp@=Z>sxq173n(k<_`B#v0+jXrqY*mEYu zY$yXN1!e6bw`JOGY;t}g@tuX{lcwqo;cNXvRJ=nJnr+6S-ffoP6Q&ow9PlddfuNTS0Y1j`l8F^mQn(?Q>P7r+0NW{uWQynW)Fy78P}p!zq*e@ z@iabC-|06N_e*&3FcC9iO}k{0Qg;#p^u}ssUM*-S&}ioLO?O7oQ^MAA*lD)DA z9wSgy_BN$DcIh4UeO}CZw+X7k;5P+Ek?zrSe91#WQ=bfZU#6wtxa#>$BZs~Ii>14 zmbUkL)JkDC(rQB9dvJ;mmXOSTIgd*5!3vVQM zR=a}!@r14#Qe2Gf44X$Bit3Ik64{*I!hMa$@n6FGyN5IUF|`b(=THnEq@3z4+%j0G)@N6I)Ia&cUKm!kNi#2SRwmYSBO zX=A2G<%`Q}Td5UO8<^?%C;{algc=s^n)bteAG~HuDy|la0bqmdMaM4@eGEH*Y ze*Ova@wBk#C9%QdkZYKaLh;6*q|4(U_)4bI#CM>=+Iw6^(8!E-$s=PJ1SlE71m~t} zHwAm6MFw8HTWx1g(P3{N+gZcmn^S89Z>7xT^4v4bJyaZS-L!FB{FWXu)Gp=wPN#Q! z;!CMymRl3&8^t4YGpd2kMp*6Xnrcl3wk}*-T0^7SqIl0py|oh?Qb?S%L@6qP)mM3b z2d)ShAae$trQJoPJoh@Toup2Dp$*hm3lj-ch79b-gUHD^$>-^Q(Gl$C(bhRn4aur$ zSDN*^-z)zBXU>MwS)-7DbThJ*Dga!S`Eqawu3|W?HG5524~(p4*5bR8-a8BH<%Jxu z%Q%r)l#|aL^T$15)kEcy+>Y-4#!Gv>2I|XFv9r0DOXXV^K4bL-SaHy29DCM(i)^($ z4(>}U4R2Q0baNC_%{`c#WY6X0kSISnQO0qc3f`Sq^&vt`?XPC|eQ^s-7lu4tdvw-J z?|n3p$pq8n6$N&#BMdU>mTjbCr#!9Qw0;uPZ?wH%P_ol5qSND$+D9^7Dx`xbW04(( zc7V>ibJ~-rp3J^UTFmdSbqy0xyVI=iwJjcP3fZ?t@WnDHInE0nK>q+_^MD7_m9g-) zs^8dB+3PwUp{dSKl>`?}@&!;gyW;>p@s4@P^fi;8a7sy?b>)tYeKc@c-swgJR}vwz zXaYsi&Rh6;bUwV-o!{AbuR@jM)VC}%vd1K`N@b2tyHsu*Z6IeO9W$P_ns0lLmR*b1 z*CS8VwK)Q&#g0hKj5eq}K^eio>IX{M@T*>HmvAPr;s|vc zt!#a=>+G`?y19q~M4n~{2dKaYkVkrk+;uCO>|G1T9xCwWs@@>byjyXnT-(C(MDzKk zIN8uExZR(hW=G7uIP|JsC-APLVW>o!M~fzdR@9?bx3JWsXztLI;x%GUbB=cf+t1Rj z6)tHQHd~+K-;Df2e_^aMX!_Qr90C=(g2FK^@*(BsRSK@y<0O7{$asc!)2;OX0NvO} zd8STU;`2?L$eUmT?&sy)2_xnJ@O^7-I**oXW8C~X@yFs8qjjfg{wLPFO|E!O%5=Os z5(y)=l2ahcGr&?s47WulXH~t_EId{4x5Ju+%gLl!M-$yaZM1?SSGXITFRn=i z&uaP3OZjiK+g(EE#G_A@U}Uw1<~$i?k+-;#T$Ef4{Nxd|0qIDp{Mr;84`;=c{7ao<{7Yg$5LlWJ}1c^g!I1) z$Kg*3_%hzY-qKs0O%`{Ody?;z+aWv2RLI_WIR^u!WeSj!*y@!@TSL%1apIeO7g^FF zpTOQ1zDuam-EH*08EP*AEM#y}Cm^^4azMyYo}75!!pJnuR^rdZnva6~o0tS_CcN zor?^OkGOp2o`77`G|z^Kuboy87e1-lA^5NRKbuQyKM?-KAF@7+I$p-}O?jZ+thdn+$s|mlXG0u{n^;IWeuYQg zt^!YmzYn}kHPk8MZ-N?}mr{$FWxVnIj_Kb#zQ-ybmf^loGICBUp7f)wnQso-(V03w z$KQjV5IVJ#GQs6NXos8A_HbhWSrClUviqQ@<)Roe9TV9=iwaH}J~#`@ve@ z#6N|MDiJ&9vc}X5_lC}%AB3sGL?CyvFrXY__6Tc;!VeiHQx{> zr=nbH3_i%Z1IzX+6(K`g#|*Rn?gCeTLdBb(O8GeaGSw{QX|?@NRkw=Y&WKC*4afj) z5d{P>QdE)7Gma~w3Y<1)HCfJEqul55WPc4OzHf&&jjYM8tYYHV#kyUju&`IlF;{me z-@}oNhwXrC&om7a!+KTS(U<#iwQ+A8ki@#HAvwU=_jz1kj;)i5x#B7HFjU#=jpP3S z32SodT9=5v5O_nv=IjeS-UrrKPUirS$nxzjK2ydHI@KvWKjRM?>AoJ&JWKI6!w~p$ z!q%nqJv&yGD>Q{&xj~3Tj@cL`@zvGO57~L3zNS*5;*Ic;WbYH-^Zl+b4l>>?WJa9jqeufU@&k5SOGy{)aR(; zw1zG#OO9A}x*ey4{uApyB(h%-t>h-c-hU~q?0iKGx|G;W{$aE7h-iu0IC9xNIL&jOA2ZS@olMGsfB#%vZX8 zH=2|J>MLtqF53HKT?-&p2WH@Vdv>p%d@W%QhAwoCO*Ow3cvr=iGG@b2@YbeNAV?ZD zCo6&v32XlV6TE4Et7@JKEggsU?wM^NMrPh4m12$~DmNr4$Ysa7Y{)^sf*8(Y`p-tz+<)#U=4~ihde1iEM3VytmXp zvr}%&Bzl6#(kD~Iia|UcD`lCxUBu|8MRz%Pd_tZo(yi>Z4~bqRvt2Gi%N({6O%kyn zsmw_p*#j5Td0$>K|^@^(ME}{6}Xc z%EN4y15CNz>dl8HHpw71Glt0P-m7Sz6TTd8Ey`8Dr$S3OsUzk|I^lAg}y4&v^_&j(r3BSp6){}wfv58Z8HG-VrbXR z8%W@k3!L&zeTU&s**D=|h_wjdu<+%Ur4`JK7V$jk1c;=K>WAmpagmYGiu)h+o;=)* zJO2P)XP)we;m)mN;|~&OUmHAG;`=Wd_;u{tWA$D74W07vYI-P1VV?k*D)=@*@>y2mo!P2cXX!Q7$Y{e7vS`$l)b( z^L{-e#r_!Z_1}iI82%pUUIqApaXrPArHt%uv}Pf&3qI713yku9S0Elq$LVwa&ze4+ zcYmX4@g}XNX;%+oqE~3qOlNE1BwfP{21v+pm{*apd8|u&OI5^Av2zVq0*?&H%64 zyMNh};Z~t%aj$DI>b6?-+^G{>Ni=D&lZ?r*m0~uN!(z0d#<6;GJC0l~)!bS5!5)=w z;(rN4;dHoNPebtbqc!!mrEw!os#vW50DVk^k2Wl#<$SPL3`P%M*Sp`@tKn6Sy>X@Z zYs6j~*L7=qma}!UkwlyDSc1yO_<26WRoCKarG7(_hDR3c+4&vg9TMqoEcLBNPtmlk zSuD~J{{Ux5qJrk~@jp*qrTM}@p z+nXai;NXr8De(l{Ih=GlqmkNHi$6QZ#GeDT{hi;6v>yi9KiGc3X={CKCYwyDx^kXku%t9X8uWT}CGwi)pg5vAnEUH)^ftEx$|Z-2Rk>0W%8Q}!GXs`SBo5#;ZN~3!(}d;<>!AR z@*l^yH#$CvqYJ`L9cbZ z@yEd{NUyK;9XrJkX_IP@>9)7FyKZgoe9kv32>iT)3bKYLI302abH&w`zRjK!!mI9l z%W0?l1o3Bu^&b%UL*ccKr|}){t|HU?AtlsjP!X8|#UjknEVnTgf0i@zMt{5p2SKj> z*Z%+xz8>ouwu_^DGx4pokl!0?sbth)iP<7{*(i_8+#Da6DcVPT5sKOv%v5!SHd?|` zm&YWIUqJY6;ja(;UGR^A?7RnIu3a{THotab(qocK7-D$D%Wx(j{EsAR91Ma^c(0^9 zW%0k@weNx3$NFD_{C%qUvr^IJmrd6-4I%A~^sIoTo6Z=z#>}7)QvmR5rRQ~|xm_li zFv}?~d!FdXp6%f;kSf-A-<6xhJ1Z{XxDRSx*|5Ca~noZ_|g#;_H_d$J*R0n1miX5OE#(PIe8t< z->X4KMtEi3sixUMrQCR9!5V*vpiGWqRE=OEf&^lZE zGx0Brth_ut4e`Dky?CV2-QIXg_Ri3Gu2*!fVgUx_`@{kHR_`*zTJ8+N;Ue}v4c0s( zbMYs|{{U$5PNS=MQe7JHZY?cd;Tk(Xx$?o5+ZwTqWA|ZBMnUI4truUjkA@+*Ydfa0 zH!MofnrDYRdE(6)D@j4RzSgwp?JO863zd?4bPRHFg#_?=;<~A0($Phk%P((PGsWco z-i}KNEc`R0>RL;|=1X#|BgP2_9#a9i&UhzoG0(MUwvpf^)bHleyjS2|YI~y`vR+u* z+{q2gIQdACU?@*qfO_V!lXBOQmg!;F**U#4Q23vyYaSw9W8sFaZQ(m%oig>TE?y8+ zVDE1%mo2*^2m*oB=Z{U(ygn~xxUsPDw}lPOpZYZRjj7#RO9%=ZV=KnHeq0cz9CpQW zx~Y6LwfUTlBz%+cCO?RtAn+IbBVHxY{B3Bh;w5`4%ZPr}B1mC7BSb5`A}5iMsy^xD z*W1>g4ZKgQT}`IxdWVDcTjyQp?3%jDuiuwZjorx3am{zo&Z|LLQ~ti=k>EMsGH1pA z0Pux)Q^Wcl?~ao9#-9cJePwK-Sr{ArK0-cO5u5Laq7WseZers|gW zeiiU=ve*9r)9#~Llt*&>VpkgmTY-k_#dR$Hru>0Cvi(nmbbTA+j)&o&59)TXCye|7 z;oWI265WK!ZeVAyB3XC-$bRReMQ*XS0J@bkz15xdg$T_?tRKZA8&68yIJ zKihEIHl|~3r|%Kw0C>sIwIAyw?{8)(Wr=k@2Kb%ePaEE8`t9zd{vWdN-^5Fib!BwZ zZEJa?Uop{KWV^=5IN+V69tD1oc;~=g0evy`5008=!!0*h)LGJPUrC;84N?u?D?3db zZ5b>RBYtzw*1KtEm1Moxl{^Gl`Co0PO<|&?-;8xX6i=vVYKtYr2!`tQuuN=Z&jcSR z=Le|lE9j5f58)TX-7CZX6xF;V@f*b+711sO&82HzDuLTcN6N32E&K}5d5pLbwA%^B zJJ$5^@{{+D3i)z__fMOyJR{*B5J9QSaq(kX@TI-sTjfn(OP2o5Hgp9naP)D*`dyw8!!tt|kq!rFMHLP*} z0A$+_hK;W%oL_`K6L^QldhhmEfqZ%J@5C2A3oCK`i4LK0b9C{vVMV}*?A^FJ4nAc# z9M_9C!`*L8yoXW#-SCHpFZHQD&u1K#_Y+NJyM-$rz(CH@8+knsJlCboCcW7g?J)7y zbno+L)fPVvJZCMhigbJFv>i&wU!!W)))onKaEN@gW{KI$z{d&z<#IAe=DtFM!a7cg zZKK(1x*fx7mgsJ6SYI`Y+{w&jI8U7cakwbxSQ0Cmbt*@wql?46BTmQN9xeDC;-7`8 z+Rux0Zwl-F6x7PyTWXj4X1udG+G3hDak0?=FNQcc#&U7;g~$9W&jsoiz7g>U!HrV$ z$5wL3aV+nsEV8lr2}3Dwo(5ua2wlq7;T=QE*7Uss_r_C7 zzGM=?a`NnF*={Y&WULz_`3T531&Qa3%?IPv^{;^6LSF;ux4t-@?m1cj47RMRmz9Rh z%M^Q4XjM4??gxWey0w$h7woA?YG(Ma;Qs*pBieqos`$6SbNF9Jx@BE5?#33BPV*9D zNhF*B3|)(5iTra|{wny@;~yCKPf&y5zrs%zX;%gvmx$V&GFaSBfI1{n60GrsSISBl z{L9edx2IDTBT8G3 z1nUA{5o?kQm~1aDL<&?f1$q;eKQB4S+A=d)RK(QY<|_)fu|NDF8sh2t*M?^C0P$ys zV!9Gq-`J{MLaKlb{#Hc5H{N7kg-IawraV4B7IvN*@LqweN2^B7t6mk|X>(>oKufto ztW&An&GMGUeQ{b)#7_FNI+$xMk0a6apAxQ{K9{9x7n<&wV{p^l9V*j$h{UDF`8AE4Q2acSNo_=~Ife@E0Wp5hoR<$_|4v6KqIvI>-?0OPdcw@yH#-^Sf*Vn%p>6&f5^q*%xSZvOzX zAHmX(_3pZ{f(q+pR&hq zY``nUEWdEFu>`0jfyfx*xyxNkR~`w|v}=EhTAk*fcc{;0aRJZSwL76HWQ<1Jqy;1e zLnsPzLC+YUZ!PX)EIppak(XMrwADN-q_i6G*CKl<6|B~4Ylv5B2_v{T;AAj4131V$ z)<%Lg`|TrD(zUBt;gVNrt}WuTj9uH5l8H z=*4WUovR(pVRuC<5J=eg00W-XLb8!E!^vpKH0?$|4w-G1((=b&n&a&dMJ>ObI!dJB zSsx-+eb~bT&>HCcEva~#2(2TVNbx6zUs7>BtgP_fS|sQtakl2+Hex`7Ajk;d3>um0 zN3eIgFZjnsTg^I4-x+u>NwU{2Y+|~NGl5J{jp2 zT5gUBlKRkHi<^}SWAf!QO4-5ZBd$5`UOf%J#I0LJ@aKXLgY`L=!cG=_Kwe946p}MA zGDsyR9mJ9Y0m$uLY7n*CGjf*JKAfB5N5v6!VQUN;8)O%Dy&2UZ>w`|!|ove2LB)+@x z1iICox557a2?b9W%HqtO3MO98c32o!5eT;dX6gLh@%}MTT_zM)9}@XrKiPX;z{E1RgZ^sl>0Q+ zazGjhoM4`0AZKXCFmda^HJhVdc#BK5X-=i^p5s}v5*sO1MDcAWBnM%-Fx>p0bjE4C zOL|0cpt_mz*=gFH{`(CY@w91WGqlnqK%|Uv5K6^&bjAVWchbF6K-7K_YTDO_XZVZa z3z>XAj7|0ThBWJ4O6o1qleoar!w5u?P-6h}ZccEXD%+RK*_@7^ExaYGO4?49tm&Fw zt!{4|UB>{31q2vbknP?SXQ$26Cz|hcJyYNfzNxS2kK^x(-W>4FeTxO+Ksa-3g?Z8XSsOW?mA=~|7A#D8aNg|vW60)_?T zjfQ-=2sprE!;W!ZWjDaTg#JI)yg8_kiZf_>9-(Ivz5cu4;r^2%WF&Fv@ZYN_mluDa{P z+G_Y3+VwT5ZtwoYWRF+2xzukjF92Z7k0h(IJ)nRib|%&XF*?Z|Q-8u7P< z?4j`fqvIW7=i&B`;wW7oSC>pTup^<`+k%il+(2yn-AD%&=NhMg^{*2RBTv%wDRtd8 z-P-o+V#^~xn4l8zkOIC`WDXBpb6Q4p=es!W;j!+Y+y4Lzw4V@O-(Tu_uf#tF*=irz zLgvmnETO;oBPlF0q`qM}d;$|5r>Gx4TkH3>QR+5+D7e-9y%9?3_FD`PN0~E#ysYlW z0dl~AFfmmqMLi0RDLv0`)#kRnp5FUM)onZtp}pkM*e0X)p>q;13h(AdNyywXgk+yV zTuaBKc+%5Edyfs=Phono>6Sm*ChE#bXJrijT13QcC+-%=atH*TD-|Z0P2K2@!e0(} zmsHfWy=z3&bo;$SQB|~5Sf!fUFwu~vJ&b(exGq83PCIts^(b#{wA<&?F23F39}VBF zg|)V$G_c1GKh+o-CH>wHCC|(o?-5;8UG`?2nrjoWJ`eDRf_!zOf5OY~=Dl%cs^9&l z#?wPHx>y9qo~CI?bZ6YnM-s&s=2*hT~C)t%agWO2cqM zuK58Ys0TcbE5LM(PsCbwv8!lzT2vbKmBp{y&909!O)mJ`YaB>a3=xChfn4r`albKe zsYyFV3;Ow<>uqM9EV#X}pI^|m2+$b;Qe|{8kgONxEEp5?BDv26c;5TNcRm)s@VA0I zEjFRz%P+CrN8()y8|a7wdn5&h3NXs$a9gHF2Dy1=wr5moQ*QD_UlDk3Oz^^JS6(i* zita6T^X&GdAM|Uq01+k!BnJ6@QdcLvdZ&&2J*4W9#d)QCCHQsl(@~L=QMaDfN#ch@ zk~x+s86uWfj6)!0A_e(D1c9Cg^f6P|nfo-a6nQUkx%P1Sry99Gk4ej8yjt(C>9{e-E)DNw=2IKubMb=Mvn(X|PL zR;J|ZD>KbE+Ga~F@#F;sRFy0M2OylD!n!`V-lvsY2PdhM;O~fk5i|tVFT4rk_&hgz zs>S5X9;YndVwsLNmsSpk7~qjsH7yHM@bvaNg^rxEmw}wYb!Z(N3>-X9pi9C7mwi99^zk6A=Z8dFUQ-s`La=9Fl$qF-HUnH+(7@s3g z9WAG)-FK(YvA~GannHD8~ERsu*PI$>QrAnRd ztaisbaY{U|`uU$Sd^NQAqix`yjK31@{9*AkN^c2h9%DQv>PywRn(iBGI4+V&SZtA6 zW?{8tz$KkeHLvjd2ZNW1aI5b{MVL~>Vq&c(&#rV21pe1;;cWxrEuZZLpm?w0 zMzU?Jp}oA4-pYMi;zb33x1Mxt?c7^3D|OnH%=ml6-U9gT@N2`?pR`TRvm_r6H7m(u z)3pn$nB%rFp$h1Z1jGm&5?}s$W751TRHt^UMm|FoKx1IB-8{R`t?z$Loz zrh)M<;o|B3KfX;bQ1JDSiR|vNs4UT<-F=WvFu{^kS8&O-YD;34Oac;`Huq?6e3{D9IWapgMZ6^pz-i&_}mZmySOUv*)!^gi4 zziRIW_$O5ON2>fs_&ec<{uA8U>AL=t4epU+dueMux|?|3>I;Q?g=P6l$MY3s-oS1Z zsjmDt{hW13b=^0^zYA`(EpA7S($Z_s5iBuSHtfi#sI8oV%5VljJ*(1K$i-bH_Z+;O z+qS-F_OO66h5Y!XicHOc5dAN4&W$1-Yq zmYJg+G_$pwWftR8wJyIoig)7#<%)#^(zsmeMiz_~r+l$7dbu<0olD|x?KL05ABHKR z{8Ed--xR(Q%ByF0W@DDeQ?zwhoo;;SiyTI9pCdNq8E$i50sKMuuj9WTJo+X6w0u3` zOY;l0yoHwanl>d5nt(EqfN)L@2**n0r+|&GD69GrTQ_&npL={n{h&W+XqMN;Ha`>m zZx4xd`5Na>^So6Ik6|L2BAiEQ_HZ3pF@=4^b->`)!}^Q-Lh*&}lj03i#$Fuom5eYs z)9>{dS^m(wglu6*_ZM>6f$x@|Sx=8D-Aow+TqWEu2*Zee^An@I( z{?D4hBbqo=znhlc8P$x0v2Nt^SXxbw!kO>2j|BK9LGWF!wPZZ0{K!rG_m?c^d`&#k zD@5BAC?QA$lffHkoTa_l>)^0er5ndn+%(^ZKLWgLmcAvkx3Z0HE$5Uiz1Xov0gs&S zqZwfGWRiH?ImZWnx6}M}d+`UuRS$f;WhQmt*3_k6RkF#;tg5tuO8b_yoT1&?XAOxM{vrj zQ93ABp}hc#p&%6ZJdUj-3XdrQfBwl(Vtja^6VXo@M|MzT6V0 zit280)19-=#6?Bzq4xfjuKXtbog=r_H2rmcBI}+v)8U)M+HRR+BfZ?vDa4ldtsuBp zk8vp5SE0zs#4*R;{94t)#kSu_SXqsLBi}Btv@@BcW_ybU3I~ zB=v03R*G65TI-(`ej#4?o5Y&doqgk9_(3&SSF?t199%`H-1&+Kifc<;Zo@MT#E+K* z_anqKy;I^>i=e;LweN&p0oCq4*#7|8{weVbE|+pvMq-O3!X#&gHe#x(idhamV}n{o zvP#znibte)+WX^Yfb?GtPjll>7I=Hbn(S9s?RtDj+Kl>8hFr$;+s(c)ACkz99!@~q zyzVuPq-dTEw%2C=0EOM+JvUtNUzH@c7McXlqFK)<3FNCXr=0N&6>}zYk+fpCF?ozA zE@?%-MRQ7Vbsmgvi~Co8*E%+(qj-y1@n?X3F8F`OG27VL>1k^S5n?b5%Op{#jhm9_ z%tIUwIW_8y;va$++MHK@5BPoXYs30;g_#!1!?I4%oaZew0$iK}m0TVxi~V7uC%d_T~9dtu=TR{K`CTUe)C3wYH~Niu-YL<6%BHnU-X z9D-{zUihEkKNe^fJ`3>|iaZahcz;Cz$E81qq!8MG09?i+P;daobB-~J<%V@lH+Zt^ zV>y+fr^w5*{iOV1qu%^Pu)Oi7!>udA>2k1JEEZPQuGW_i`;FGmWUV3<1whCo43XZg z*m&di2k`y%mFL9WN5Z;?i6$Z&R2DC$3wgHgh1KySlFA0=3O46!XM;zxIN*Z4<$M6pK~(ec?4*n>ilPSeRhC3hgSBHM=r}0P&LCV7n@sn8O{bV&lTM)(+w@-ul42; z%kd3qBjmIDZ+_5`YGzG$#J&;LqttZQg(QnhnmO6hKiqC(E1+UmRhA z?6u+h%g=+lSL|K;KX~I(_^Dzv?MmZIOX~}$P(PHfJkdzW5sp2(BN#kx4U=58GfFV~ z5AOc}f^ob&)3cHCBtNys#h;4WFNQT8E*&xnwJ?xFe`u)=C5Bzo`H?CT;Iw4}BV`Fw zf!4nE@lWlmW$?PkR`_Y-uh_f7uzVl!4}{EGkB;s{$rMssjBS?M-oPw-_W*x-g#Q3} zuxUd#guV)I`tlrb*VmmNnSU4m0BBDeUikAyO$WrE7;WaU)t2^4eMiQ6jri4K3y~OE zScDl_K4s@<90QvB-^YF>{hU8&KY-eu*M$E7WIu-Av7O(BbqAVX9$G+_HoA(mEfa|$ zo)IjT?9%QcJZ^PRubtJ?Lo|z@DyG-Tf0(Obq@m2DkAp2gZH;SCQ{gM`2l#&b!kX3N zBI&+q)Aap}gqS36Et$^dW-M3@$L@h$4}<<4d^yy-1LCg=_zOeu=f>|8++Q0_U&VU1 zoi&Ua05Rk}g|m>1HiMGxNMfY!7{{~CO8Xu>m1cR*?CJYN{6N!ucj3E#jF);K{h53n zX?Lc-hqbA#;nFf6eWX^Agf4DX)Ci9V!yufM$0eug8o!K8`hLG@;Js&6@aBysm#17s z``g)U?9t0dDx55(K_e=9ZSRcjE=Ln)6hG#X!>L@}Y`o zN~^4Zq~%%d)kX$ML!WA>)r2&Y2Tr5taCiP1@UrOh_>DD5WAQGd3>Po2q^ljIu+H1e zOA#PG5CT}>;ep3dSpGPbVDXQJwaXh117CPg$9k%1BTsn4?vY~hf=RFuY<$9{at904 zu1zUVm>`mS9>IU%Y5Y@nt5}QcX*FAoKhL@T)w}asP_s;cVY%P6BhGQOsq27ioY$>< zC*eEK3iwQXGq%=k^(h?BD2UwM+xc&j8Ytp_HaPbTlY)tyoOR}vO)VE=)TJ12Bzhl& zJOkn16Jz2e9zF29UL5#$q{re*kv@T_%{(x9zFYZaKwaN1IA{4A--v8HTjGhets_eC zCy0DG;hzp`5w@KzrjMx$G-x^V9b!SSvjf7oC9nYFHOD%$y{=T8BP7zX)F*?!73q3C zpNsrCW#i3T;g6E{x?{zu-`zn3qvV!Fj#NjgxW9(uPD*H8LW64Q`hhHZx>!` z9}o4#cr7lVzIb7|NZiFFYZIR(V^g?3)E_YzAaHhba{EVWtA~^{TA1D%*R5^uf8jLH zt?lk~OC)=H#Wyj|_I87CD=IEOh;Bm1<<2_uUB7}nPw*bw!agz4HBXAScKR*#s#{v! z!zHcZ4nn*MaO@wBqoL$`SwcrotN8Wx?N0Jv4{N{LH>mMNq|17d z+s3|ORq{zOlA|kvj9rKVo!@LS2|TS|gL z?IRFnbY*-N&(ATFEA zHz4J4gU@`|CXCh+a@NPE9e+mg1)jaE&7}B`M{f<>+&q?^AhMPgy}DE_^9f^fG7#Il z50|eTa~EF|pzu$Rw7akPTJ{lZwz3#B;i$})7Zy=m$GUKVw-7gGFxWhBFbT{>Us7t) zxsTv^d{b(-ejwL8LEtOj23&`_p8n3o&_j5NP{kB26Doy_lGqqxz>&slcTV_)XQyqt z_;PfOf5Ey9*|@m8T}DeQiMJyFvBJb4MF0VT&OUAqP0p+66sRtwT3?85>@=+#`+vro z4v!y*bwd`3er;xo=Sv3>1erXu_K2JnAb>&>oB_b=WAM+xtBps(9w6}}_&dY4b3odm znr{$2%jyPUjjI+JBVhR4k%cN&xhi87>~^dSn!WTrH&csA@LsET9Z7h;_dsRkQ zXOqfeBfvn>0f1PHCPycn)h%B_@O7q(qFCs9=ZJLOe_6I|PTN+KRgl~1?xZgd0Ev>1_=}(&J=y0+8Y}IWA<<_U+i_JS#@{X6PKw<`1?pr=i716gw zxd&^4ao+@2t=`}KQMJ?TJP{VB;TU0_1Al9*-do2F{M%PyW-&-wSrtBBm}MBi#Zs)J zs8>zB8Rb3;@jQB`g*EGc6MQqf);=HF-@&IoZdqZpW*hv=gxo( zJAGo)Q@)VfYI-&6!FOeG5|M)?v&N`CLIDwwdk!m>b8>ne9?B6{kuSsF4EXoO9wygg z(zX8p0{FUb2*n&%)^D$Ug6mQ{T!#b5WR$X~VYlxBI%hTK*ZTgkd!YC~REy#dh&&DB zpM>-I+7^|m_;^QPESoYf*=2!M(LBIa6`g>MagsO^;@;%98(t@EHMhkrQset$;NOCL z7vk-5+Swt#u+X)L@dKegf1M1=8!I_z@>Dk6xXx-j-x1w-t69}PFnC|Z8V#?BGy(Qq zO4{BS?7Ty2zh_)F^vBwgQ_z)gtfXTjA}B^bX%O0$%;;}oywdzRX{~tf*WoqYwD)pt z*5Bd+4LeJk0k(TbVHWkBWMIVtwn7y(<9;=_)w~zs4Ku@fN5$U|YnoSx3f=gE(tEj* zDU4)hbLOJvP6}s}@`8D-J(O-_qcpTOUJY}_J|w=p@x}iDf-m$*bVBwL>e{#Vcbw0H zkG0?*Apx?0hFqx!o+#K_{5tV2nI4-Lh_wlPU2`Jo+B|o-@|L-Yj~W?Z8}3~dlW7}iQ@^jMnG4wP+KZ_tA%(pV_OGO4(#l;3lEQa z*Ndz?HLdAZx{kSgv8?R{)sVH+GB{gXmyuzWi9$jvk_K`I0=VdPuM%nc9jAx&UlHkg zwu|DMk1F%R`q$gdt-PfC{zOOwLS4DQi11G0IVQ26BX{L06=u4f9o6rNHEjpQ9v<-5 z!~XycYmxX`?mKS~PpHQo_5PhSVZP8}PqZnIf~0v$!1X-_eE$Gf)^+<$Pr{d<40KZH0^-+Cf&V?Pm8T@Y3r#6Y5fE z9wqR1gmm2}Ok3?_UTaa@T3p2Mw%$b+q@Osl;O_&RX1bpWYkJp&Y<1mB#C|P~ZxZ;H z#`e+;Ps8!0sMD23*M|NU3T2U-l=*hx=Q$ZJq*B=&vWA*7mH2z&Ka1Wp@vJ&G!M_wq zd26n;t*S!zQ-5cMAS=9t510fP!jsNDt7qYtj=X)Rcss+M5wW|~v|k8nGs`>a8jZAX z9Lt=v(98^Mk{sj+*?Am;in{JL(GH4y-t#P9Yj*w)_>FPlpBCyK4x2#Ity0SJ-$B(U zS)qk6!b1#^GkJtMu`0PBan4P5{wdV79~Jmc!@&CHv8H&-S{_y8n%sAg+)rW|%xt1) z3cs8pE-=R=ag)grO0Ac_x!XJ}7O^s6_;aqE6HoYnntzMDSMdJcI5qtrRY|SdZ8|k` zmEV|M*y5) z-gP(lwdZp)pNmr`@Y_99oJ;8EK;-fl?F>M;&QSvbEDWR9p9r zT{Gd9kFMD2_gZg;FWURTeeqGeV zDpC*?*54tcl*_y4!P*C2b6QHQ)~xFK)Ec#pg7Tt5?;upNElYP-(s;y3?+-SlRA$dnIcdSuI@vM?eECP9NqhPSQ!h z^!awj;r^NNFUH!ZfIs16cthd8jJz?Y-Cx|z;x@cndD7Ubm?M!@_sYe{L>v&U&r0f} z?ApB9gt3!~_fM@YJYA{F@asy{?>;GbhvILAb(y}+dugPYu4mKmq{_i#jI4quTsFWD zQ}15{cyr;O#4Aq=w~elJol{2AbgQP0>gL&=DXkUTXj2n1I}*eu6L!Z z=CAPk!+M^BZE@mlOT|7shD(SVSv4&#Z4Frfba>hPxmih9$WU{fFv^8YH_P+5Q zh2M!hLE)2iZ*}2zi9A1eZ8Y?2nGQp#MTnS8dyX@^IUOtVH%rwc_=m6ESYKYrqiDJX z;>oCLT4k}CYg=-}dCLS!O^$M%EMbR7d#{{V!~S+${AuwvzvHXV6J2Xj>K-MO zx?Emd5~5I3V>Z!%cvax=NC%qw(^LJG{{Ug%hrbOjekJ&a_Lcad>uF&0Labc81<~9znVNJz`qtX?+SQN$DR<= zJV|>EzltG}=H@F~r?r?fylW)8(Bp&*3gex}(~oTM=j_MuOTu^7*Zw(=#9HO0wX4mh zY0Ily-P~$>a0}c?YE~E*=Uhe(?1EW`L+94VU@FS?y}K{?W1?9WGM$}B+tl-a4t!+N zC-CN@r@oP^U*1NGXLPY$tTHJ_3TJsRS%5?XXaJMPOw!5l_u%!9#!XL1@a~mAh&(F} znhd&92#>>Bknr@|_YFczUv=Zr> zcA>9DVyaxsuYG!(R3nIxn9*2}%smHXY|4xprMvPbmPuN0b#G|*XU4kMjT^-N1k$`= z;*Sbicw52um%*gfZ(wO4yT8G8`xCwjx0H>68*SR89o=ixd?E3-;%CK!;tey!4LzJ1 zoy>A-8kMrG)LK+NW>`Yk3UI|3#z0jCV?!=JhUq zAZmK#Iu_f_LV2Yca~3L$Ry!suIgiUcmtLfmY-YZO_*tW99~C@Laqw^9&abEVi{Z|u zvfOyHQ@?nA#o_A&n3=-Ku3JK4r{7}oq}+@_>aV`tJ|Gp!!{aw`4QScfqb}|e7n$vJBciF+nfsYuN{8PZ=n9rUNG=po#USy zS^O{fTJUMwJ?58Z=gVsTR5K-=uxQyG6{H7tc~H5@&UBU{la}bbK1))hIinYEGvyB% z>Yo=b{vYYLy0qQ|@kfNT?NMZd?9fYNd1THD9rrTGuOT8K8_5wJ0P9^`z8KUs9};+n zz`9nas{BOoywZz#E_KTbB)7Iu;pRajLY_;2!(#1TryVjosA8a*!&3;?!c?D7@E3wS zQ*El={6Fw;(KWkCk%XGP{EcrM(j&!kvd25Kx{z{1s}Rf>XPWf;U)gqlh`$lEj|%)D zwbFF&9ADW@Z=>1YT}Nf2$7=$#w^2joLf}gj8>9=6PkiK&wOqyuHf)MGTHMx(IUR4t zz74bR#;X1nv$49p*Qb{7%WX8Mx0^`_t>%J!waCYqWM(6%s6H6$z8%(lTdVj!Eh^8$ zz6sR@!dlHGyinZQ+1p35K*f=;Wtv=!ZR*?{3gdO6<#T63w2|Z964AU(@dEo))4VO= z`&-W(&luF;(XC2FFWGuY<+HdB0)=3^hDmNZ*JX9^L&I99jC7v?{4>#`)_h@n@yBtg zTuU9(*h4XAS6CdO!pHZR7H^Q?C?>V5C^+6boHN1IzNg$)-?GQWeJ8^%;fH5Z63)3?2;< zTTL~T{{UdV*Fa~AXPg8GuEaWmqXcn-*1Wp7ww0N?z}BX@q;>xQ6=A=F!uoaosqu^9 zXT=G>w=A`2ZFJpq&vS1jxps-|A!xvsHz+bg0rH+Rn!WpEe#}~@!M$(cJl+KHhNwbrMxzG!B<@a*gi$smz_c8s`@!zepQA&CqPMJn{AClvKK>vLOFVaoQlTKA2m z@eZfs9~$`6Q_|Q&WpSZgTtt^m<(MDKmzg3jya5ug-N54&^8WzEJwiQO#agF|^`8>> zXX00n6HA8V-FR{`o1GJDPb7m0xb0l+#t0{j*KImcc5*HiT6Rb1u8BW{yd7z0;g1#C z_(MpyQg5NP)T55d=M%b?m2KF0o>*pn3vJ+la4&^V2*3;Pgb+E zR*u!~Ss*g2I(eiJqY`kr8;0$mnz>;h?`C?Q)yLvT*)#lR@D71&JRjko0c!sM5glch zSCdlI_S^lLuI6&F!i)@&BAlXd-yl-CuO{)ohki8pXTx3s_~qjrGse2-!XFw%J>HjT zplVZIJ%U@YicuqNc7@(YLYs>K3E@uz%%K`h+FOxV6#E@@uZ+A871X~C{vi0j#r^=+ zJ}pfSv!u3_0lPL~cPTQ0tbcm3GHq-Cv4#OlFt46|BYY(Ahl6gs74Zv4zww>L&ZuBi zvbc!Hdt)Q+ee(RE5~|D&?x&vo`oC19){UI&7U3nK_SKh-ZYR`Z(tHcA=vsDxCZ9E! zUl2S=C@~;EX^~$ZaXx4(7~>Hh2SM|}_$%*BFH}K@w?SVz`ACLTg-UhSqr-Xhe{2#VDM}{?v&xV)2 zGt(|$nrP&8lSk9!Ndq#7c23eokpH`_LH^Ytstn&aYg-7joJ3K(az;I_11F2d3-wk6(RlSo_E6k$*#33pW%F%;(FS zT~c2+!Mx~ktjbeM4X*{$tR#sG-I+3On+5$q8I(*NP%;@_m0-YwHGSsC2U zw+`9bJpc2>%fRb#R_k%GZDr?-n(v&hMN$%k6e|ToSP2KMF?|#fRfet2|Hzy{U!4rx7O4SCdUfa`u98l?3Uh(kK zrs0O2(uY`Ev_)&D7YU|o#MPvyJ?3`m>+g#VTIbxgQH$8`+fH zOl}U?DGQ;u1`jbRcC*mk|Ig^fw<*+s7)m(p3D#Fzo>KkL_V(CxZBP6Xm}Q8+H=TEW z;EmIK15o2bee~h%5H~2AAqI$hrULm_?W(?5sn+y&ruAm&qwF6%@S)YDd%*|_B4*@# z6LS%Q8ZTxI)$BkBT~wdZg&CsN25>LUxNbpIB82hQY8mT?4o`Lr6HmbP&7$sab#IMZ zl6S}Q7|)rwNUAQ%$fhQ{>6r-!Px_q1Q-@DG(so|XLR4L4upYAO$qDSk zTOzWDbn?7m8!O-AsQGt~!ZkJOg@i;o5TS?-mF=&qbxW`?N~B8SDHJpJY7VH0)MI?r zJYNUgQ{QY{Yu0edT*>2o%=!QjieFTSbjd`)kc*YuJzmJV_%sOU^QyHq=sK`q;tQ$8 z{#*W_Hqm0Z8h6`7W79#&dJgT8I~!28O!69k~KfD)X!#GM?e0IK*a+ zSHVuGOLQDx8WFW=pq}JUW3bUvW{dh@bUFvvz!bG`pZw*pl+r6)z>P!1QiN9n%?_U& z8Y&){YWHmF%wYWd=s~GYWxU_5UWk;o;p+wA5-1t~FKxa~?$!%+{)~yxZJi5eTdUab z2nz6ewAeY}Oh0b@UXXW;B!i1DZC`*1j?>yIF%g4XB+9&M+kj*ayhhZH+Z;7x0>kd+ za$RRiBgGu!OXD2xNU3Lg-gG4qjthECW(wLX!y~hul_}kF=xk(qbT0{pa>NIt12dKV zS25pa_42i~ja6-?MC_jJKoE|v{`mRS;)vl6HOBZkDsPyQ)O}N|vw5zY&)uD&u>4p- zuPjXFBL`3WMZewix3{eayQC%V^+hJ2)`}{qjboOMq4F0@&GuOg2L)z>F&ZL+C?y}* z?n`D7#aXre$c)r!2X==&X4Hc9Sijcy_f4N~`}QyWEM*1;q49S_udxDF-l!e0!8UgM z8?1^iXR=}{4_~~%f%~yUCz~gY^Yd+n+TZgZ|Aw#_4Qmv1nkxxgW^XUW^$J#@T}lxR zG}tGz?@c*_aAhKG#hcGQ-zw}`?r6H0uTG|JL>ECiwi{@{uI8wNMC`jQ3J75(*l6xG z?obT{lNgN-a+8L0{sQtaFFt7fz8(sRix3IA+i4rj5m{9Ph8FBYIH z9{aE4%PK=n#bK-4lA)w04KcSXvj(e$&n1cj+HxJ@%Mn27x{_4iNvBxDcnz|!u^3~5 zG}Tl66CGwfpfZ+GY0o@8W2nmHzmjdNg0Grw!}+vMSz~e|t_>loXf%g)@c9N}wCetb4Bl^z zF^ja$C)UnF5)ZFLk$fVO`uSVPfJF6?!d`4zR2{}%=a)yFjZQDuEJ8N{xgH4bb<8g} z--#QG{u=FkpEh%>3n4;kiVv0w~m5sxx9L1~opDp%^HLXIluGkHFubJzKEv$TF_maPEIuS(GU6Y_bZXun1)`JoS8kw&w_PmTtPg1a|PyXtvX)G`v=2b2`*kmlBV6+{DEZ z#=R2kseyhKTVQv1iO3u<%=xaT@;^K;TPt0BZ4gtcs4TsrL$J469NE_*bd;SvsNsKs zUnR#Eji|OHtbDbtttz+Ms(2=y-&e=|DBjh+o?s%uMiZaW%l)BV*LNKC1m1Rk^N;PR zY9VR}Qp#9`X}C%p`gge8e685GzGQt;i1hLI{d2W04I5stCp~(a=h@GTI;kD;;VxT8 zWN8WzfZR&LB~t2nnj`O$Se2?pU&hk&rKvldXIT5;`R>M~5lHB{jl#{p9lVo@KyFr{ z%5eb}3hB{uOwM;*w5*e*^PGr3(YGJa`~-5kl$%uNL~9jzw|I{pAsmoU$^hgGMRg&) z;OU8Sa&}4!vwPCz->t1zkB&+514rFFd=5MlnwowHcv3=kD?y>RlKovwW{$OWsJ{<#bJ;qHk!_B+V7;HylYNr0i#$$xD{>6n&UK~(fwhC2h?M3tZ zo{NLLxi9Nj|6D|5)#8*VqL|k^4ygo>bk2Cp6Uo?T!cNpRv|Ez^H!=Hub*|o*VAYNZ zsCpO9i}Bkzp&c$D=&R|=4|1)tVeMi}G-X>K@o9S>YeTP?Z%ged9MZ6Pfa>iMEG=T+ftUbIFPaM&2*Iax=~y7FEjU&)l(Ypmz_F>m|c6 zJss_5{(@u_Z!Sf-vNngG?5YZDd~TYC2}5Goa)$j#aVM%y^mSa&N!~l8qqE9Jj%5^k;HTcIe?$gsr}%3Ak!|L8UqO+56Me@M-t* zpD@~lQ!f7J%*kw$^gJ29680)MG{zPVXr+?S!g`_+W^CD;zY_n*$8)ct2sSAD>tF#^Vzz=!HKGXx`*Q^2SgCL{rG)P)~fI-(^j8RCu>GtwiP`>Q|PkZ^Qq{s!_QhF zhnwO#h2R}`rD-#a#P%{I4B5v-s$F!+QC48+>fijuqGkE}B&!(vxKYRM7D)V$i>c zWUK=sG`BJHuZ5k#kB5|F$)iO5)C0gY?PI$SuDEo5fvL!!v}PnlW)%eIvQiX}@8z%t zS*6~DZh#<)6?d7Uo1QOpsUBN7jVN2L4xB&dp`Qk;AO#Xz+{3K3dw!tzau&;h_8#e4 zi{c_y8_1tvTiqP$#=Wk~-GHjEAKBL!#CLcgF96d*f+1)yvB(I)wlD1#`)V3^%3 za@aPRe`}| z%jsi-Pan1FYwD!yqk>`sN-0#)xR;i3GEqM}s z0t5c`V?934uflSn?DlXEaTo^!$}|4E8vs>;m0u7MxIp%Hp35jHoR7%oYP?GZihQ6U zK+49ng!mcTf{**>mci3{t!RU|Zl&_}_?I1>&^TQ^86pR|cf0KnLC$y^j+;Z9`$dhc z4?$X0RiJ;lmF2$`D*BTCHqb7+AB&*e7v)aA^T@4d@GwyH_4`2mGJL(=;QKv@h@?%f zC1@W3h=no+y1_r`+C9?}CQfzqKI!q~QHxt5g&cv?dkRUZqFHd_=B_YnCt*T3KvkN9 z7=2o}qvVLV`}S3=R`k#1)27ww(VU6q^9Q$+7jHPebk|?oF9KjJd6DJ6fWl&l(oK@h z(2i`wu&;lzUgf?Nu|Pa5%FJ>HSLq@HrLJ;a|69EGdyCdvta&8oqwV18RjJgLFFL=B z_bO0;*YOcLyNE5Ip*H)<=)S+La}FYmypwu4$0B1SW2>Mz3e~WMbGN^FejfEE+>|^+ z>0(k@Y{1X1s88x(HFIhm>ph2+-$|zii}(KvFW&ZwUHx#ic*Ni7KI(Dt2&4#%zjJGj z^TgZ!-?kLjBJrr(2X%(@$V=kuMSbgV1kd!0kFt4NTG8)5(=hj)`APp#CSiXtJp*oA+dkX2$<$6hj6k3IB@HOax8Y{mDs}pWQ2! zHvH3>2QM}-%rlsizVjMVmYx%cbxJp!6>Y1{WEcvqFp<>IQtGhTHjlBh44;jl5SSIe zX9d4swOO&M`?7x6WTnU3db+mAu*NmT`pib^VRuR7KkrG^=>fF= zey9wIV`N-8HslT1xq&iD9eOi7$J+IJ32@p*U^j8iE?a4Wl|@0E#l32o5qK=E~u9Umsq z3w7#63x@SaP{}B9AZ-Qg8rznfT9#_RaT1XaO{iw?Q#|v7e!`>heJZ9b4yMK`Ax`l7 zJC)*NFLlQ)8tS0$?nikQ+B0>5U5JU4{Z}cccx;yqYPV)ON7Ozy7W<`j(-!S0^JtMT z=m;3O-8g(PMC}t)SXh_b=v1pkqD3UmEZZluBFA#@oDRD@Ei(!cL8n!I2Ol7&Vv)9< zgTs{6ZnL^PR^4Uw)+v zd_*NIfHX*5|jAFM)kX`jXU+a9S$31LsjQaH>M*592d-}Uvg~ztUe7qde#eukK$@D^N-%R z95uKcFg4)hl7|OX;6r6@jNJBgDsD#?hL3PkAq*>~|8UN`^L2S+|sMW~~_-D~|dQ zXfC^aAVMZ)TD-iqcxXXMfZ94?L~X%ZOR2@XWl&uMo1Al83ud88%EuP>)15Q^snyA3 zpcnxz>w+ad(QAF zoJN54h`8$FL3Zh>?(`Ar$G=|b$=#H-1THKa2FX20ACqKS@)N|!+-kx=l@MuMCqiYs zfJR&4t%4VgMMX*-RYt`o_rx}pypi^^)%MY_BS7 zS^BD1j53K^DFXnuMb%64&VJ>eM&{?k>7aKf-0%a|oKCG%mZ0;6b38nWpFk++vf8vo zGufD2L2AF_0=J@~#~5$hY9gKQ+goQbFue~eptcalP3t{A5S}V4&rc@`;`d=Q!@lmV zn6_;L!ry@fZSkUzu+Q(>!ueVon-}V#O87<{^D>HhvKm8vV5q6C=bMoVh4y-F zi*aI|lm>-a*F4-kiZiVUNy~nPfA9$K=%EZ$&Tj1Sm zttmN@>-=y@h|gU?ukdd}tm54lEK@H7da9J6G62bL{NmO$=i@X_oJ+Io<~fxKgPAdO zneAst<8vHHY zJeQGD2@b6ZZX$BdUvm>eIL23=guH`rJSZdo=I@1yJ?`eOMuTtlX0U)NuwXr|;hLM5CE9Xb?@^ohThbh} zg!oOuY)&CxAdZMg9wvy68H_+JZ#5sl>=XLPMO2z0uf5)5T@kJeC-+l{SLwN6=hTbX zf`_+HwRpusmNKK0%8kx9IKD~d=w#fj{lX{?lrrP~#SSPhSTN8PE$RUUP%Nh^u-m_m ztyl`EdLY_r&ShkAu}zCQ_wc^eOpcN`P!yJ6G0;``vI-_AyrX8y4(an-`$%(T0giAtY{liJRBywNY`NN?q;aZMkZWsaqs%kOii#8})@ z^>6?dd)dG+n6g}B!QiPDb~zu(SwH*eYl_&V5cXoaZ(ra;uc8GE5!yih?jPl!apZ>P zP=QlOe6;AL$|E@8)r0o-2w80xkgP5P2d{z5$8Y_?8$%|e)i3N>HS4qmjrTh)PqT0J ztsu{4AzZhLSi!q*P_M|&u$FV{fpT!jUzwIow=?Ro)Z3=BrHMDT>5tBZ_r*Cdw>y3D z_lyuW%#zQo5*AQ8V4fQ4>`{Fv+v)rX{{};>!nlv7FmEgxb!ud211h zY*68`f^PmWT)8yFoaI%4KcI!9s)m_|ClW1WC zAPztuAfC`xLI-Wc1f!~_%~5O-Zn0QZKOwh}VnhP`ht-4R(gHJAFNuduRU?EPMNfsq zj`YHYbXqEvEyoU)0|Bhv!3=c)1Qocv>qGFdR$D$IR9H{;$*Bh&O$}Yv@bf93tTAn& z@ZZlGQtn0W7o@;y!~fzV38Qg}ueo82esr*iddq6Eu$B|KU^`8j#shqMuIM->QQLG< zBb~$1u!+tbR~_Xk8R@_FyI~th6{g>%G!Th8FklE*?%p_eK+cYX+TTJl6dpP{a6Big zFV8NCkCqfZ-?F}|u5SsG3{AC%m5}`M6cYAyaC{!)uf@{Iz`bKmMn zz$YL3lItzzze*Zib5a(Mt%=9qsFl!J6F|UFsb)~p%GN1{v8*G*NQi5();;jy8a+}s<=eZ?GOwJ=g ze3?TB(|4^kA@| z4Uxg`Z7!S=2fUezK>||385aWVAA171|bkC~1N zoSqXkyht){F^exY)Y!b8Kkg-S4=UkoU7{Q+CK-o^P{yy0YxX3C>72{WdYl#wSDe%> zw0Y)`FuofwJAyr{QgJm%3+Hb|$EROLFm7Oiw0e8npn0ah0>U_LZH`BYy}9K`zE~^^ ziha#pwUDAf`gr@K%hZ}NZ>%)`w(Mob%x!NL$dJ>*J0sHXDed)wzS&`(X-xGwb)-Fy z<7p?%!^EQ8 zA6b3eq>n>4hykU9hs@qED9!15I?>Q&c98VT;xS#b%k5AOz3XMETN(_b>|d>2wJXED zYXTcXtM3t_R0vaDx^_#7``DlFqkd7_`giP9Op)2rckC(Cwk-6DVnPit!H7_8tn?Pe z-}e1zc=z+R){tFV4a3?$4-Tm^aEJkNt0 zCX;ZblwjV@<^ZDeHH`|@B$3v?DK{yEtcA53V`fs{R#P*kqpY0sVCi(49teB#6->lV zT15lA{3thMvmt;!ztQniz6Z|>G>&+RCyOY_*#)owjnPdob<|!P+>7+kaj;XG*uhn4 zF-JP6tx+0Hwp#NmwKhqr3& zy-9ad(Q_lgz`Sf}&&@EH@GGu|+C`pY59v7E56CHpHkId3%23h(>J}wOy||4XYwNBm zsGxK^ur`x$yd6*Lr%_;*D%1WKs*eiA6h7bUry5`pk8o2c!674n`kr%HE)jR8WvV@` zx3@x_wt0nl;b~IUZ;bcUKPqv-&_~&j_oEB8NMw3K4YG$yDP(NjjoVQoR+DXs(979B z*p+Ur8k%y|W~UU|_c}vOSGy>Qt{Oq%^_@x`@fWzgB7G$mi0X@jxNbke`URl&2Z>Ks zZ}oe+=PFz9?$(lJMH;={H#J2|W#^3Tr^Tav#ba@OCU06WQNfPe9)Z6%$Z0MaUoW`w z-Rt`2c+<0z@V=46I|`mMIS_MiD>HpEpr$u^a?h|1F~Xr88z4N@Ta_tif7VV~JFl9q zm-N^ubFxftN{E=6ipNqkP!{KU4&Vq=C_1)fi~61p!j-L!sh+hN2Zp#bnQi_Q`Ji>i znxT#3LAuQS6w(y<*0LU;VZz0%sD)x@v{|SNuz>I&4M<=hzSv{y$`$FQj#6WZ_Vua@ zy#MfI>9juKFy@yWC&=`qwg`$XtrqlRHf~TG1o^QXF|^H)swh3Gyk?{lc}K5dI$-k5 zr{qJyVY%&;tj}$7Orj7lgfB_Zvu-PwbY8ycFg%oYUn zM)XEatU@?uYA}pL9D}G@!v0Scp55Fh^S#`gBy}v^L~sJ1*BF6_-HR-BTOxX-U<`pAl#QJw{0_Bt(u)Q1@p+OzpWkhb z1!)jyK^_B5ryt`8AEk)}7XxU`0B$!ks-vJ0L*F)^S36^V>6b=8$4GckQ3HRErF3qk zj7(j<#Vpn_2g^74=Pp(<+78LCcXng*-Q)~AWC(j+feB{wTEPoSuXyF3}SfCoB zFC&OB;|6H+4@eXwRkWl+DRp-U0X>hnk7di&WoAeBPLqqA&B4>m1NAW`XaKB%7UvW61G{f8_JQg#+q9zL-=0|C+4|2bYeGS(r@j%*2PyyC_?8cw7o6jn9Bw4tdUM?n&N7PIL2)9=$ zEySMx@fJcqi!~JHVPT5P4@C}_dsJB9$V+H~cCtwywBKIMnxw;>WXygww{ zcp(6*?J~4pS`AW#vNsQ5PlOR35)9|*=*S)9Yn#{nMD%feXyEM&zY7n9mgn<0)Xm=De$TbExp7*5Y3t!(t!qiJ!jx~EyRH@~=a@N7uQJ@D0<)SZ z03?XlVdb`M35Z;p=H_(K%l2=!L1iB`&^S1?c{7~lXf0KzBC0`3(g#+8=$ua z!Xz(cZbQA;G5ogTh{cQ#wp+G^*2Vfp+pRm~?Mcqmk=2vUXC=W6#gNC97%6R(e%+2J z&#?G=4=CYmL+WCqa%lkbV5c6LLw8sEhCYeM>kn+ZyYVtlj%=J-Wn54k$!Nksxp6<7 zPZiNxT_y7~?pU|eon3}HQofkm=UOvpm6$E*cWt;J=E@({HfR8F8-azm#+|z0&=r4l zLznCJ9b+@TI$kGp%U_TdIpJFgswD8dJT!-`Zbce=sE78&x7`z>h7-w}DiiAd)^rhj z?i9#8s3=f>xB6mB(pe{i@`Y-3XI!ZlTGwt4!tQ`9rE%ln>V>*@wEVub|8pW|Y7x1K zwqEZz4|;;o?M!jjWU805lymXFvmMtek{eQbac$CyaaG)K=dnShmGZTg@l6E!tQm0a z@vV@Q|FojbvkZDTpi@E)!UXN$q)VWGjXgD11mhL7y}^L=;Kv?k)Gh^cY$*dvw{=X&cu7~UEv@7+_jt$4aPigF>B4KTwyH|JaWm&eoYUJIGYLY)! z)Qwxx?fRzr1j?<5tv{lbK5tP@mswfbEL)BS0qdkDj`epFg4&wFB3*shkcVUM!Z2b&P942LO~Y;55&+kG?;;vGtQ zFmA!xe=o#AkA7V7C#b|9HM%=dF0Uc@b2plp@SEb2CjeisOMY#Bu|%{!zPIx*Pk3)1 zAPI~~Q8vKfya=!}LU5t>ob(FB>|bCxl3Y@PeZEynZvoCvn;Ajk$?Z z95~wq@adtlW4r%06?k;}mO0!!p-MbVk@>Aab;sNWHUJ%%?rr`G6IG4tWXdrmUl=au z%yQyU;nlb1d51G9y#GgnMWHK)lr)jjsfa#O495Yyk4nb)k+zTH*XaNVwHAkwMpWDW z3sPkQsd@aUt9FqR>TBb+i7}%#813JSp+3f5Hi!|%@Gf!3Anw|G1A`Cm^e>oBb47*q zt)Bh8%BZnkw!Lxd1JQW6NTrKtgrGCgL4Ph0#@lCr$$*`Rq+afp#lIBixgOEEd^_WFJknAo!m!*9v-Bn65Dp?OsLMIR zIq6h2(_8haT!N>1gAO*CDOE-fPD7R|?A;a2%B0ksJS(8dnH@wIT1tJTJNC@Rio^4> zQf+0wQ2u*O&-5a;ucI#uQ&n@%hGeTExcqiE1=okL({VeAXT$9{(0n5a&I@nmE`^-~+M4E5`&J5g zw>(&);~#{3FEayOKhx(i4%!;6vv%p$3BdCV8M1^!`xKUkB0lg3@gtf0MZknxX%or{ zMV*;KGG@QgXSA5XV>pLEQ{SBba5HML(9z}UwVQALLrI~VvWt`$S>)JLE#=E*@mOn} zG$kD6!Lep@%`I&LFp=rf$On^Rw8;ZV;PZMD^7s6F>o8s>PPR7xYaU|o8RNTnf2@v) z*e)jdcVH^IXE$_h7A^aRN~rg#)|9mm;7?4!4%Qwa{J5j3@HNiUjNoX@iC^VFDwguS zX!O>86XZEXLFlQtm{F&9I+d`!pYDM1!r8jm^9BI`H|?D@dopnO!0O(@ex`$Lp445v zwxix}KI6F58QvWx!_3SKVc5wZsGi*bl=W7zlo+CXZuuV`l-3}BJA;NA(jZ6-EbUf) z{eX8zCN>zibW5wqT~y$aV+o%WF13X`#awu8+wwaIzgu-Ksd1%mvRyrlc%QW>=#;rc zviHT}7yXS6^HXnyZOCX9h81qdfSM}m%uXnpXqtT74q9B57H!F7d8^_5M|<#Ovtvro z0c~P@x1OdgFBZ4ih`QKefa3h%Qb^4Y-5j_&?4Syp@{#&OoWX;HT4FSs+xUI;7;(yz z+tD_kDMdj1R*L}~_Y4k&Z4#h38g^1y2dqpd3ci2_X9|d%J%%+DXQD*X)+5091M~~P zsjtrN!t66;amBoAkgcfStya=@+#YJSi=vlXwAdHFT8PD=iS;kjFt+C#PiA` zRgYVIV$vm14GH%%+W>m3@e<9>tGq$0AqDTwl9wrKq|w#A{stV^M!xu7qw<7l?nL{! z;pj0O?2yz>8m$7GrgaOK#{`hdcGO}dQp^fcbC7G+w!q&cV=xg?G1=^*3}xtHLFI{g z{W^wG19cEHbqZg^WFY7Y1*&6&gfrM;=qLKi>* zoQwp(NK+LSr}Z$nq6MqUxR&EkT5k6_J@SbkJj}aUGdt(ImH^P|?gzqm+e-!RAw6H# z+_EeY4FC2OJ7`|Z+1zA3<{=4x`yFoph_?GEw7~}DaxJ@K4IkfXJAf(L$A$zAHc)S1 z++lX|nBZ-AS93sOYHk(Ki2j^MwT&jK<;D^3RMB9}2m2eOOo19nhB(w5=7zK-aQ31f z)n}i|qH8~RtTr;Pj;VP|v?B~WHKUCAW3sCRdm`{RVf&XRbnnwai@k#2Tiv^|ZZ9<3 zaR^_n6Ibyyp^3pp*}Jja*Qz4k`r0zX$AIRg5#j*h&|^ycqY}wkvHIQK z_72@~r5|u6e98SVxCwTG-q+i^@>zo;NKhbQpZGN%T?=@crbHArgaao0ytQ$Ci9@p5n;H;ZIZ$~nq-0G*0!ALeB*AA}V5Vi#u=kGbc6*Gm1a zU@^}rua}`Y>qu|a^LqxoZ9Lz}M9M}o67ucsa{;dd`-JXb!h|zV&%db*y2r^xU(){V zIr*odU+g`~h$iSaDXy+b$sX2oW|LV36^qq+R9&hJZqc|!kcZ3s4u8~zDfL53A%3)W zYGiAXh`4lhnL0VetxM?~icmZl$M5El!?k26U=C|B)`NEPsJ2+~ieH`(>&M-cVa^Aq zk%N0n`(}@dQ(nv2_V`&3rVBOB=+uS)^dYt=+44%90*&@8{O%S)kk)yw+*N6?Z#hjz z$_h01kx$JFoshjz*O2Gyi)%l_yZ=@41U1mrs$L>DT${|Gc zFUJrWg3OLlX|dk@<`V@0OEAHf9Nq7mOB#!(yTxbXwRSsyPA#G&BTYI}JBGmhOmMeK zy1J_Av4bupoD?$h&lPSfFvvn)-;A0)u%8v^Lg!%x7-_z^5x*yW|D)4}K=S3E!k3(< zTo#lclP>z`v0CZ4XCh7)m3BXovYGvBo#4gap{KC9>_!VeCsy0m>3F%({EU}E$U)8{ z#W`+qWUh}CXzGVgrqW6hia)Ml1$j)=u?DYmHRW`-8>{X0(16$?t$< z!953*iG*qY++-RrzVv7&|b860N4+Y3(jf zZ19EM2!2Yd->IH!{V&d3N^?<#>`9s=JGuH2H)aW!l}><<%o!w)pVFw zq_Xlapg5XP6>4h;4X$gssB@!Hb6Zid~iWMA5gEbyeBZpUmpM?=;FA*W$#J} zPH=cH-1h!#AU)yVR0En;CysTC@wc+rTxzq8&CYc*a)V(NWV^B}F~k^cL#1klyr;PT zxkY-3({2F_(q3u*;kCr|-Kwluz^P^&7VbIRXq1liyEYCob?Z7(ulZ+*JuNt3gr8m% zESibsS{oU4JNk*k`&t6icZ!8gQ6+sf;8?74we5HSK@G?6lL>NRpxyhYLXo4)=P^{? z?ee2CE7+HJA0W=3N660xx9A}9XoC-5p_cU!^(uHBCU9yWQ0ST`x{x1dwDR-84PJ?c zFxatb{yI3dGTz(nym3FA@vh^Z6C#c~F>G&{R((n|fj#T`q``&wJ)zL7UsmJsc( z2&)t; z#Za%){k%v4^Hw)gc89;1yO+`3Ho(UvyO`?U{;KmQ=IaV*SIBR*+|4-4l(dK!dFd2O z0v>^?TL|*8XjR+Yc3(e*KI^9FqriG0CKX5iwWWyo>pIj~V**8uEV$EbYCR``j-im0 z&-LC{$S1QjG=LJN+*yOd|0R6q4R6c&f@>IQUD9G$c-b`}j zJma~1Kd`<=e=6|Dk#lxdx9Kz)#u?f07$V=EjuV`v0gM=Y`-@y_^(C>%jiCorjU~hy z)|bGD$6xWFqGqLAQKhl>O3KMjUNX9MIAg(+8K~%%Ts{aCv@Zk~q8bRt zp@<0a3IeJt7Y}%!N+x-(mVOEP4-ZdeyQn}e9wM=0pA0~mPsbOSCqYA_DmQJcKtXa( zL9@1k`N{DgKb61!W2N11f#%)|%urzzznqlY4!dutgNWQU_0ozbLDYm-4;lK%l%K3( z@{BE9-fr7iO*^HMe)&R7;QSiK(Sb(Z-J1)C{fD<7Xn1dx;dOxf>3?chE_aD4E~RM^ zt%O7Ak-c2#1Kc}M!5&s@<-tD!ck>cIfeOYBWen`m{7ycIO*5f5@YO!g9)`3H-YX{k zi=aDH*g5KzTY$1YnwOb0H$}^qyDNA5v`a6dbgKAAC6%2OwQ&9=yCU={T~CplO8%rS z!Fas4=_o6TZN)!QS*&Rlz`blO~pDlDTC_c1aL zMs9$7RU*BJ<#Br8v$bfVqu_>gpy^kcb=m9JHb;SS z*J-@bB8;hpRWz~-l4_Z-?dYVp$j6P2hp^Cwu%&(^wC zqptkOg4E<@=~zomk+0gGW92Xpf2+_ z08g1`1H*`@*i5fG{-^iXoTauiw!Tohfo;|IiTbjd%Tr#(uVm#s&xV5=#9L8qab{Pu zim3|jhdJ|8XFR#-%(va>n-Ftn$a~(?G@X_szK(0JsDM5K9EZMgn_W&HDnVTrHl;A>J6`dfyS;2E*{0TiIJYa1%3|5}3AAUtF__l~{zBeV z-l5%Fc=rAQ&K{D9wnw~dy=UyhVOQ0C5a05@hS{AnF1+dIcqLUEcw5)OOX%WlPDuES zX<_1UCa};x_{0H~S;H_7{o{vQkVYX>1+?y$QTA{psevn+M2_p1ETq=z-c9WvGbLOt zt>j6mCg`vuY!K-0E&N_4%(Xfu-L(eOrxl~0JUCaJJIj|==PX9RI-#w`Gi1HDs$uYm zqkTU&RD*c@Q^Ib5t1xeHJdRD5=7TlFHSp}%lUpBUS|2jjc({9kq;o55M4Ve+r7-E} z2;L~fJ)^%qfQN24j>wwd(-`1dF*yo@p0(#LJ)ikosHjDIANE0)l$vFm`ohyrL+e=s z=^c1*7}7iwVVl`2%xRJ*T+)+1b;gJ}-+`5IwxH|IV7ey)NZATnRVlZ;SvLu{S3k=H zvgGqeK1F$(q)^Wh^aPpWE*g1gFzCCR3RN#3YZs|Tv=l}0w}JgEc+`8&3nr&X?J312 zfAE}WNXI=THeL9L=8sP}IU37=tFsE{U*58WzZD22w;Eex2nqe8zWkCZ$ARBKK)D;w zef}N*p}~Zr&c}zUIQqV0qPh(sd0TFa(ya28O+HlV)H&YrBoqen(}w**=y035KL-)n zvSoSt=6cIFC0j`KiuAbm&`FhntG0~w(a!T<%fXB8lIIOA*qZ4l8MawN6W@FIUb3A8ux1XBTFn z%Iu%`&p75PAatmg9CXkbpgZnE5ZA9;Hz@nVNZ2=Ca;6Q|FL@b1n^Mk9nVFcFWOP+N z_cGV8Q$8@WrIegugooq}t~C(gS}ALB(a=Kvs(Q7cgXf*9uDpr(QQY;2%)RW??KfmB z*Ejbp7<;21P1y$M=@i0*y*CBLclU*SOQn?WP>?S^Q7Lgd4Q`1C7>%2vg~_tWI!}`p zWeT)@147<&PLJ5fL1Z#+uB->dm6-55rT-bzTIvY!x}mGZATFFD5>u{I004};`cAYi zNm;I1!n*{ne>63ZNj`sDPw))CCty4Qm6>`|?*pu^$$o`#G(y|Q|Lw9BfGM=b)8*>) z@wF(VPU!ruB+WP9PbtA{BYWI;f@1&RNO2K}iXoRRivyv9P3CWl;Rk=&f8}%F*`m3x<-B|9)Y83x~o5d(y78oAdWdpJ%|s!hf1Qd!WL3 z$-_Kd#qML5j|ekBT#S%lVy+6&21#N83B3#M+xxPWQsd4QXDXP3s?Ed7 z$4!qRCg-J24g9zsQ&JvAjRl!43XG=F-1`>cJ2kuZ{1Q3va!d6Pp1BXcq9%JM?P3q5 zYA43D=H2T50SiI&zLWev_#6KK2|dKOuw6&5d`|JC_xKSihKVd}St5rmoxm^*I_EeX z-&Mmm%_@uTV|ZsBTQM}>6zIMlwOu<}m&IC~nq9b_>KjyhfM#%ZBf5f678u40b=#9& zCBpc}#d=1NQC|z?OWBgh02Cwly_Bim(zr(MA{xa}q?E|7+3H0p~N7Za6mhj2OMZ(S%qLoU% z*$Wd-egO5Ot|Pl~aXmnAr* z`Gq_lRZdrw`H!H#XYbid!9M_QZtlJre$N_ThBbXs-YZMH*t}hNsLB!`O0a2=ki?&v zfg8BbO8FB+{jhv{Jd$cQa*wlH7HDA?SP^gl$yFPd9sd9-@$q#rv;HH!yw6sSZ?MyP#g^zAhunmV4h4$TaUQMoepH(Rp0*Ng(w-yPMho80bl2|0G$BRfY@0PHYLO)N$wD@gP4dA3;ZCBLERTGxiY z9{f7-zlrq^9cum%@lCIb;WBAjC9SNp{{Utbtt;Z6YHDCZeCCcZMCS=99llY2GP zmp2!(Z=QJxcXR5^)c!Ts3XJe-W|SNEQSDcrBhn$3?&C`EriG<6yMnn>FOV2>wRZqH z=uUc9=jX)#0NO)I@YT17ZI;(q)2=jE@)qY%wVntkWMiF@6$!N9mD@KJS#@5&aC>>5}fxn6J(K@k*1MduvUOj6_<1EZ>yB6ZL z)Z~n$vRJY^9iT>jQQJ8@p1h29sIAJ$u^rtDWQNB|zwK7GEmTH~vg!#uD;l(+!CZ+* z2mr{>ws_*HO7q(ZC3(YJV;hOU8Sm{&`(k5tQNJCmfJW^!(#Q|pS37clA6n-v^{MT( z*V8piJ54)Dn$2dk)E@FA7gFva;@D2?h1fyH4)4z?X0=|-e_36PR@N_KxqCZX{ZiUk zT~5_!D#V^T@Oo6{{?_5QG%WFj#_W%j{VHB`==09&7Y zbm!?<<5ANtp7m{RXOiN;`BQByyAB5j@IAPuvscv4rFNEuMAUU#S!9lDbda#ad5g65 z{15*Cs;J*;`VNg6&8q8gX~?OJTsGzadS|a%*ZWFx_zr)rHf&mWg6~gB51leHKg#Oa z!RwKc)K({kJV&N@%F9!ePl2IL8tJVZNL9m~pn?kIV1t^O;_AoZxw2<%AByJzzS#}s z?D8gZ*dfMylUXegiZzmKG7=Oq$OQE3>T^=D)jBgbDI=+ETf=wJM{TY6OTn7@2i{@S zGM5;cXwW>KRLaeUBq<MKMGpb1vRla>@>P85HZiUeeAfU0{w#tw+rKZ(cbS zr9L3VrkAvTdlgqs+9MIXFYqJ5Qpv99{u|N!J>wx9k=d$hGedDalBoqF+{JgWJ8}WQ zJ*(j6_|dBTZPaxihW;DzZ-VqM7u?^5v@=|O<=I$+ZI#^qX+TZ@JF-Rw1$|{d?G%)% z)MDF6RY@3Thshic$!tkwxJH7VYt(7WJ!_+4UsB7+?ON}a7f^E;<;ai z{t5Aqfxa5(-Wl;yTxjy?tu?EMz8hwQx5@k6k+v{O{KF#xy!>W)S`|{KKh*ST)mFSw zZ{vT#U2Ebs&Xq5MHO~rZm-dzoX>+FPvda`Q44u0t<)b8ZEuL^!7&X`US3#S?z7y8I zA6R@}i%gR0>88{5Jy%nUQIkqTh7ick8RT9F1f2ZX;Mb#p;=ENkSxGhKzu}lxf~d7Q zEhFJI&wzFPCtKJ49ehvKHFxl|aOyg~g{nh;Wpz4`B!|k7sVC)(tAf9EiO&L`;O~h3 zH1NH@h%CM*EE<*Fq{zBnq2S0~SoIjl`I>(?N9D0@c7Q+~&3YAhzZjLAV%L$w3^h2u zR?ROH{07m!CF}b4iK6(Kd*F>n%eR~C@@NvXUv3{Eick?ij0WDU+sCJK-Ocf9RMvbW zso8jY;dhR$^=(WdS?bp}Ht=Npe%=$$3f-RBlaV&;HBaL=*B7#0}a6A1yp?Ig_Zl!PHSMlwZ zo2C7Ncw*C@%H?JIb-P42mift6Spx#3V1h7Ca3;TqRq1?iPtl%jN@+jcv%;bHU8i_| z;mww>d8+uITk$`{F!9Shr-QC_O%p_zhK?7DQbgR-#zq{E-SQWx=iid*+UhASB(sM0 z&4wNc;u1#LIs2!MzSYG)5qYI|56AuhDBnhTj+gr{{7~?Z!+URse-u6yc$-qT@O$bS z?d8R+cNVfGwbb5cn5!bh?-)=szjhcfP!thf{co(H|-Db`omM3;f3zM@VCa-6TCW(f#7(hmJ3&wL^fs#u5Tf;GD~jZy*(HC9xLET zzu^`ZT9?7^+Ka?K5WBX3K|ZD74IwPv^DIdQOKCunK;eASBztY_wDIhON}W%u>SxL@;TOF87+!_6u!~5{{Rr*_%p;m8$K?4Nb#(; zbLves?y&~jNMl0MES_PJ!C}3Wg&v)2xbUxzejnQFl52L_Mv3GYg^DFEJ5*(a13LJ7qGJc&$ z6F76mM~t(KI+dJ%1NE1~H$S#{*8EqaSo}-Sz8Uykp?Rz>J{|aD!fAD>1kUK>ihVo? zq+rRk2F64D{0h|gE#rL`Tkr;(t6F%s!(KPO(}{}bQnWM0<~TfV-Jh7RB(EKD(!N_0 z#2CtQaCXzw_wduDC3}8HRpKvzzZ5({;MVaE#7zTHy|mL%y`HDzKN@&{Pgv7pd7J*v zG?N1Cha@P*>;>Rg1Mwrm9}hk&*tVVHi8Z_XJ7@E4?Z&Yx#;2y`80%YMc#9CI@dJKN8#6nb*)2MG1*#b(p=mNj}A>4C+&9s05;DxfeJwcW2bO_ z#L&NE{{VqL9BY-+^{*JrCs1XLwYeE2Yo+hZEkPDobt-6x$`*ed^taf zEOl0r+ftT<~ z;z^VMa7j7baqF7<`2Ng40j!Y(Uk>f{7-vzvr14IqqGQnV2_ujH09`2YRuOzR`@i6o zN}2g5<4Lbz7B=>_`i`Y!tdeF3Lrhsl3bDZiZRWpXEItDK1A%T8J_Yz)rkDWWc%Jy} z^f_bAbW-C?G;Wk%_46~YhN&rOvH2b11-VTsTd4#~Xpw_0vwieI_edDVMl*rUez~{6 zKY&`5lWF�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 literal 0 HcmV?d00001 diff --git a/tests/lib.rs b/tests/lib.rs new file mode 100644 index 0000000..0561f08 --- /dev/null +++ b/tests/lib.rs @@ -0,0 +1,56 @@ +/* + * Copyright 2015 Nathan Fiedler + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +extern crate magick_rust; + +use magick_rust::{MagickWand, magick_wand_genesis}; +use magick_rust::filters::{FilterType}; + +use std::sync::{Once, ONCE_INIT}; + +// Used to make sure MagickWand is initialized exactly once. Note that we +// do not bother shutting down, we simply exit when the tests are done. +static START: Once = ONCE_INIT; + +#[test] +fn test_new_drop() { + START.call_once(|| { + magick_wand_genesis(); + }); + MagickWand::new(); +} + +#[test] +fn test_resize_image() { + START.call_once(|| { + magick_wand_genesis(); + }); + let wand = MagickWand::new(); + assert!(wand.read_image("tests/data/IMG_5745.JPG").is_ok()); + assert_eq!(512, wand.get_image_width()); + assert_eq!(384, wand.get_image_height()); + let halfwidth = match wand.get_image_width() { + 1 => 1, + width => width / 2 + }; + let halfheight = match wand.get_image_height() { + 1 => 1, + height => height / 2 + }; + wand.resize_image(halfwidth, halfheight, FilterType::LanczosFilter, 1.0); + assert_eq!(256, wand.get_image_width()); + assert_eq!(192, wand.get_image_height()); +}