From df13999a214ca3d7913dd67ef8d7dad49937b872 Mon Sep 17 00:00:00 2001 From: Riley McGee <mcgeer@mcmaster.ca> Date: Wed, 30 Nov 2016 16:52:17 -0500 Subject: [PATCH] Redundant Code removal, DD Rev1 finished and Compiled (Closes #29) --- Doc/Design/MG/MG.pdf | Bin 154212 -> 154678 bytes Doc/Design/MIS/MIS.pdf | Bin 77795 -> 83490 bytes Doc/Design/MIS/MIS.tex | 149 +++++++++++++++++-------- src/Gifitti/Gifitti/Models/GifModel.cs | 30 ----- 4 files changed, 104 insertions(+), 75 deletions(-) diff --git a/Doc/Design/MG/MG.pdf b/Doc/Design/MG/MG.pdf index 182cac2c788509c6776b148412d33c15ad68bd92..3903f4fe3a724c93893e1d14ecdfc93475da9ebb 100644 GIT binary patch delta 14773 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 JiS1J1{{t0aY1#k) delta 14425 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 Xh^P$_KI=t*ZU`F|(bP1zvk>_o*5lpO diff --git a/Doc/Design/MIS/MIS.pdf b/Doc/Design/MIS/MIS.pdf index 1b23b6ca1df309b16ecf63549c5d404615b93022..9485fe9b1e2c324546cc84d30e212bba506e78d3 100644 GIT binary patch delta 41476 zcmZ^KbzD_T_dea--ALmpIOova4T6A_q|zWEbwE-S6pn-<4I(8CDv|=yAV^4u0+IsK z_1oaR@Aux<_xFb%_L;qAP3)Oxo_W@CaTX`%F>ZMRHd+>s5G{v8iY~z>LYv@lpgXYz z&{;U-STF>-0*49Bgu{xC$0ETN7lokZap=(a*c50#pzN|5h!Ky_-p$Va_FW<|akK%h zAeI;$&4JH+Sphx3NPsTIB|ul;F=L5?|5JQ~OO7QDLtkJqV2Y#J@p;h{%y?)WJbWy1 z1lk0T6FrD4fG%ey_}ecWa@7kiysKWI_wdLu;plTLMzlXr0`!3#DZn8kL-bcK5FoT6 zJ~!t7wf2<tKb{b<D^G0rzdeE22nhbJg~r5TMEl?~TsKF8I6xc*9M@Iu+_U(HUnB%5 zz8t2M6w!4pdpE~>P8<-xVY#FL$|pfy6B|qsxpg9h_km}y&F)&-dO)!reG=WB1CH0x zK5_P*bx8&|Cu`c`YuPa=&q;a@W^8k;iHVA|&W6j@)^}9Q<#<cmSyuhz!l``7UU8Vx z={2=bPYS=~h<wbpe6KxHKUu^bewyEi?KOnN#)=b8(p<Z7P*RO#tA9)R3&rZh-F5Tv zF;;2y3%PGRH{MX|?_xc7kFpMrx0n-_S${`Cu#u<#eO$9uN#-X8tRiSnMt?V4)~DWK z$f@Ipw-Etjdb+>HX_50m@NoY0$ywJy70p7pZOg)kwBCFbDaSF3ttRSsE<#&;UQTrx z&P(LnP9K9=2)Im7GrViqcRNHEqMdfTm0x2r)Tn8H*1y9nb{;gD(;tFCz2feA`CYv4 zdD+`sJzY*9I#h*==4v_(h^`yhd%OF1+1h(^Ai-!%IbK2}{Brt<WMt4S_|&*W*OfTT z(U_{j=*Joq=n6F&G&zDHWgH)q6g|yOL;)7(K#KkKxxjD^B$|_3m>vTC^Gm@YzrWN* zs<z=Ih$3q1h*n|(pE-D9D5(}x0yK<CPCpTz#xD=W^!tV}jGDcXhfzU_5E#a5<@JJe zz4^7?SjJ@oQ)XZ#@nAT3)H3swN@?dARf|4YK4Q+O)%Kdd#{KwM@cS5<8)IPZ&$mvp z<54tL_&5sIb_JcXFWDk)^4w6+qbEk?MmPv0wW@M@=6KMt9&yyhQZsyl=e`U3DZ1cg zw!)SDa)~PBb2`7$HPN_7TEX9_=@S(?pGQUCQp((OGVb81%<s{!OSJA*+TvM%$m7^V zNBo(4mz7#(RY%$A)efKG2C4cv1Irghf=H@X!~UwLGPof)wp6UizCrZEQi7#AD6+os zW}>nJH{+w*z93<Tu~e)@E{#Pc>klG|Xi78>hgrykMG`JuMVkV4a&WMzgkasPN-|<S zuyncIj)--3aK)4#G4aj*qOK{Mu=s>Gwo(*&QHAN7a~At7Yy#sa3$55Gxy4>ZXFE@d zy;#h6%b%tT<Dkt)1yPE4AGGynP_0$vj0&Fj*c6`)z1UgSsw*`dGD(#-StS)8Z1rTx zrj~9ZnI6LW^(1AV9g}xDj%PyR#Gzr}@jZ)!3Wo=TUmajB8x4Zaik=sxQ*XXoR&OkK zMYuki5^o)v27Qf3lABN7ublQ`tIgj1CU1wYs(3xWbq_64wx(`hHg(^c%?Pz$azd~l zyHsVPKXG&A)lRpcmSvFZ{qOa>*BdiFY#xBVJ{vPo4A`%HMH5)}_Psrytlhzb^>5MZ z$Ln_mJ2$6R>g{fLkw+VkPf8dS>}(+Gd`BvrQ>fFrv^P?x+9tdV>v`*L$n{NbMqo2{ z>9raaG3-8$*OoposUK;3qFmx{@@r7-?7D|ZS<`%7pU}==`#9>m(X6QZcaAmA-rUM2 zW@0CvRu7l%ACP8qVXE;I@PNrff|m{oAB<jQKc5+o8aHpI(T3__rxs#(agN?SzurDa zj(<w5j;17|M$0o&qxIkvv{&o@Ut0?dx!PMgf9<X7@@{VK_q;jGIgp5}&4WZ<{Q-l1 zLmwCf{_FQ8<{5B+L6<w~@-OVKzgK$>ok(^c$KrCQRuD3yXDN~BYH|%sB-(~v6Rk<1 zjn*b0L6cCZpjUx^0z@QeDaxl<AP5>vX@KUSQcih|i%AXCl1IOzQcq$0`-d^LdI}ux z>J1W2&VrBLq1Ht^k!xK&Kcmq_UjWZP8Sv5Kv>NCXimPWjn3%XI91aHX7%2(|Avj>- zNKq&f{h6E&T}DX)9Bp`L9!ir-7xXX~OjI0(<bc3HqT+Bk2TTkmiiE+gZ0G2?(7lvb zP0_=kAW;Y~UI-K+3WAGszyNy~67iQEB^u2@iMFRQq=$jUMB!ox4k!pB3I&OAz#!tH zATj8F+6FOFqOqv|@(BWqLcx&#Ya0v}6$inuY?~Rm(3#YR^iYJjC_-HPKkY)1a8WRD zc3zI98Sv%JM2VKCxg0hD4ICm01H6feiNXM{Py|F24n~8ixPkMO61@l*k+TrciNQsY za9|vNjTb785QT{Uo|`#(a^Re$Mu*Y@?ZTj<Vh~_n{u(b-3@VC%{2s@podF9qnv?FT zT{;L-6oi0sK*T|!AYdw?P++#<zo!P6ZeRse(cJ>trXc&fO$ac@P{?0%M~;5VN{zOr zH>87tK%!tI@Y()u6Aa8T0zF7hkG^aY#72$AVz~Ok0Hy;|1w&j77MKoTI51!smu=Fb zTiNKTA(t!j@6#DLGQbcBx*0A=4TfAU)qlM}3$P1QLoQF5e-%T}+X~dU2&gC+jt=9e zriNT@jXy0I!Q!GwF(`+dkBiIY+W(t&fPvw$Gm%2Xfm)a3;XkJl^ndUMU=d#NhIF*1 z_ZJXJ=;di75&b%(Grlh&j4oh>1oqt^K#kfRu2>mXBJi>4)5DKC^@@`DDK{%DGkG3; zWc5Jw98xb&3Q8hrc?rUFoC!zp@)Ffluo9FOS&T$(RSDK5j?^^_5c6tYoB0MGIqE8; zA(!srP{z-=C3AA(HXB#JqJMWEl|32lc`RMen%GoU$^JZsD;i0rT1=>BdT&Y|YBvUF znRqRQAFsoBSd&VYRidmd*e!j_A=7~JiGBpg>4vZZl|(Vs=XwdH5R1F*jo;!^GpRDa z@jBAm{yf3mn!VYYb8nwP)BH?oba95Q9HDHORxa8hRr@RC{E#yxd0HipAEkSLKH|1Q z)J8AuBHe?hojmZaNYl-9`DFsORh*p<99|ECr+l)DPwu-!iJ{9Bnbc32;dfFu-hOiq zAq#;kM)2OPh!V+DUi;RgH{z_<9vg5Zjk|W@pi{orvn|pxS}#tR=E<~5@qT)`7)&eM z`enfSe1ugZAPF>im};B{dL^x*b1p<b0k>(GIp)!7JlG4dNdMyVvH!i3Rs}`S@n?a; zgzB?Q3;&h}LZXAoIHTEOYj^KWZ#$f0CO<hQ1TdEdpqU<goU~Wp_}_>N1zoZkp8v3! z|Ev?}KiSFUN`<21xrBv)t@rQc2K|k}*KeAdaX{b*Q6#YHVZdev!_c0B)L4LjFqD?^ za+&?T<RD-UU=;!kDCHpzCMoe>92E?PfzcHJNj1^*UKA&3TsAr6A83nxT^BG_+x2Q# z%daED^1U>Oiq+FNS&EAme$j}5DOk%_Uv>YM7E#+GHwKnRwf{|}M`@2@#&pvj6|dbC zR-)|S(xgw@P>A6dwn=lm!%)zEdsz6Ku+58C=_PL68H6&7HTpZzs6$aH+wu3NG}$+A zlrd2`Hc9s2yASD#5#);y?jz<iF{;9v0K#vOLA)`+r@!t*m0ENtdo;5n1$8&B70gt) zMJIGtuHk(uIl<4-Qi&`1ndRE!qU3+ef$??F?Ipp((eQhWED|G9{9MzTxj)GW%<^nr zEa6N%7cG|C%CjxavE~bGu!^-_<x!|t5|k51wXOUte#334TT`SGFu7*tt7LGoVT1i4 z*EqQJ=8N)hJL&a(G%obs^{nwQ|4sFE-s+u3Y-RPAl1n(_@8!i)l<v~3-fIol*LoJL z__)3$9Tsq+#0Re%yO)EBGcyx${rOZiLnlv^76<8GwW0L;F^K8&fG;F3OkLNkRl+tu zi=d3-q~GH{d3nLn&vl5mef!)-vp7-guG^0u#f+69tOwOw&+6X1pqKvk@<*lU!yN1D zs+u^CSp0B*3!N_>?=)JP-9N#dZqC^AyQ~Ouyfv(~m%~eEw)c=Em>&s!ciZNZQA8*f ze#8$5Zj*y`KesO5_z|Xn->=u7vQfUCFA0fmqh2b9RSXGEC=3;Z8rW(uaD6qd48@Mi zqo(J=oJnYLenh}k9CNbis~wHMu_N(uJ+E2+^c6ii!2slUL`0we<RMjg0t0)u+#<Dy zU52f0hW!s?b;-DHbVGy-Q#;E{k!I2Z176uiN45Ob>N(6`c|^rLyer_8_mWnNx1wkn z^H2)YU7s5Qcd2=wu&XlRtLQ(EAg5%|`obr%Qe6?%`AkDjQlV#oA~`B`Q$U)<=gn(| z3MwpRQLXLIriGGp*Q&s)vO-=YyS;3OYtGM<tA@>sYHr;$YsbAEQeRoyd_BgjCnGQD zx!0Es&|aUgO4!|__06a?bg{d9+<?96J2wkd`I3&Ze&D|Nt!%C4#c~x|i|;z8Ue~;s zvfdKqaz$}}Ix~%rb4L^py!T{nwUG#*msKdg9UPHuN3!h<3Nk3o^OM$E#1H)$uV#sT z`)n#$^P;5u=g5TKXyYW`59hflgF5A6D-}1PZiaoWZJhx-_lO<7UqgNhKW92;3Fb|T zQ1wsTIvHk}nYW%Uh&lO-c82#+Y4r04V%vVznIP{*?`YrLeC-P>Iw3$Am9_k=GmcKG z^Sj;jawD@Y?M7mRX|m_Ax|;q@!>g*9+#w7$?&Oo>w<lQ>Fs-4WO_>`vF~kiRjuX;X zS@@+3z1s^*x2mfUG{_6=o6c-T+!-9!!zcs7??v<cCF}<UySNlnU!JT<716pGap&tD zPkN@ZO+dL(rFZh>m({do$LR|`Oz8Y%4`aTu5&rQ^%L|=5Pwoe^q8lLH^K$bIX&aP! z7259mW-w$t^l0(kvA>&J-P$l)Ek#mjsQmgcOn9gFqE2GzDA;>j)<(p||LO{erXwRq zGq97O1NrD^p;wso&)Xju3cCbMEF>J=&&Q4h6+_FZ3ZfbLDJ~!7<*D%?Ab_WdqZQeC zFvZZ@YSg%50D%)nhyMK=2OwS$bSOU!`aKurWhKA{4<K9!7!<w4#g6+MYOMum1mSQ| z7*y=f6C8Glxc@xyq3BC<fCzzrWBrc<AD~|U!<+<y5ETa_ew(8`xL7f-yx@WWz5+t) zD^R1)1xfL)Is<f3fm#TT6h#1h`%m}(O<XRAq(F@WustZ661WIQ2wu$%P=*JA0Q?G! zE)(S91O|3RKrW9BFu<n}VlWOcLJZ(?e+>cM$Hs`3f|C6~RYd6j$$0)gJwPxJaC!)% z(hw9417&jrH^3D*SSP723wE^&8bu2eJuYNK*5<TwhCz>=&(C~|&1*f!T`KG8DN08T z*Y?)vdgdsE!~Og;Lz-r$8>ZAKV_-T%T6p!r9BmNGLRhB}QxA;X*ZwEPwTj1d3Tm{C zZ{j61ln(7&>ipd`hS_qI6N^2Z=S5mkUM0mVJ(~w9%n8`WAB?+OM8hMWRdh0V_`#$P z9ZkoZC7usUIIa|L3SeorlT9@JxH10f;Wt4RbHkOE@#Nl`4zU3@8`W23WN(=UeOq~N zwD*5ZIFML<BQ^hFv#32m2fM|#T2B3i1I-4kgJx=y3ZIQoxMA8#91B*Ne8VOn7Dd_k z#(Kdi;SE$*@kMZxvJK^CSNrsy-Q=rn<A%_RMA3-ndUZmf#tIQ-WE0i>ez^MYU9Cs% zF@pvp2+SoxZs5o7-(+^(%DN!x*B|n8?;`G>4u0anBQ_^>@*|P{fz36u99@U`{c~@v z%I8Itr)XF|WZoyWoJ^K`Hmi<WCI;nBG0*%>l8RG5z6j^wrxm~9n~`Tiu+-YupDGvb zOeZc(sTSgE=Z37P#9-W97tP=$Uk%^r^>FdOy<R+|I6O(YV4ZQ2eRl~tjEz@Irm5+k zBFQ4<%fn=7yl(TpXij}`fwhPXvVJJPNSKpNxj}+WP^5T2wq_aYG3i?9TMTSew>Pap zw(oj%pH(leRy!7Q(jg`-kKR>7%2PM|n%8rQt;Eh})wteyI-pyH)V;WlorTm6=@P8h z3cX{SS8*1bLtghIqeLDijy%8kAYo{{9Gpuo+(mAD@#&htPFf}HAj#T9{_&ULgBjm% z>R{q^v<RFcg|mpDd{P=&+5B<?rEf^*(ZGvtp)T+HX`r2HTh?T7TGu8|L#iMB-mAwh zL||u<?SA`@h;XGgE)z!`+m@1Z%2IjE^p=glTY-(A+#a^Eh?p3PD@&PDNy*_`MloYo z77N*h=A3yKCLe4pBAVs2OsoUusxj6vz6)pJe&}b>Dt0czQaMAA$wpY5pr{90*vgAH zP?QPS+K!aweviacDH;XppPXn{Klo{LefsVCh1tqo-&|?P1AlU>bFyt?9O6tlzQ|u( zxEIWorBU2tLl^lG<f%vtiCD0L)3+&*m!7&suvZalyo^JHWpR)hW}|Iuqz>inkp=2* zIn-{G7^3XRRnK`{UIc;t0Hw4l_9Mu=gTGwWa%^u-Un*ixXk6z(ivU*ohTkSvAP=Qp zVf@+A`p@Ao3-cpio`KhHoq|91zWe3#P>-N|3onHBWRx|I3>v#ST6d2JYL=4r(p<ME zd=6d|&lVrP_()ETha#!X&Yf&r*lnnvefflAcQ@D?FJo2`IUB(PVWi3(dKQa*`T2X> z_l?cX>$+X*uP-$REEpUhz+5y}GQz*$9Dr&7&hdWpUvvjQ8#)6db!mPH>v&+w%SQm# z(ZXQ<%SQmL(Rcpu@fDZ>O(8&q9s~=cbp)sYz1K#78qEcvLq8Ir{{0IVxDkpWF0X3n z?!PVYKmb36L(%&JJb=+9GG5+^#l_Hk5U#6MfEyl69Jq5|0kMkUrQ>Y{8XVvr4ZiYp z9ZJe}iOsMp5t8GIeE$bU;eg11Kxad!(c0Xk{}Vz1l@dfs^cQp@kr3dLCxo(ik|seB zJZsg$trpo%miffB#x(!#gqm{j*ZnZkemo1T1npXFRIsCzc-XW3{WqJMpzz?O-sjs| z3d>!D=_hG}QnNJhI?a9-I^0M6^EwsY48-BW@h^GevDor;^pWJ7Trtv_V7B^V#Umam zR6@t5if_5~rZNAGI$gV4=u(t~SnG+|hkA=j8jf(Oc(H($!<YEN;J59K#u@C9z0%Fd zj3K1!xNj+bl;bI7C4BO@;pkS~CqwsSHFZ<y=9XlD(2wl?B6@tYOrs+wi*<?n1X8jO zy$ROF3D_CAm7j9QQswwl;F#`<fp+MnJQJWY2lnP-Ijt#Qf`9ohW!yoPnl6x)j=m2n zs*Bmy{W<?8i@Xe89Qx~d5qUqo{?j?)9~q}bC+2gQRI-ato_2@77K0kG`_^CY#8{q( zVLJ^nc6Knz6~~j(9~AS7_*P<jB75|=x>9PwXh<7Sgo_^OE!UwpS*3fD`^RW_UbG$L z%1m}y^0{1tK2clO3LuL`2^r0iywK|gGq2F{H{_7E-&ODV5?uGL9zNQKUms94!_lJe zdu>AGX7i9!r%tn0h)m%9Z^@M^l|%z%e(MsLsT-g)hp;J9)tC6P-STt<xpyQ;cGGke zYD$>(SIX5{v)LM{TuFAQ>3$gZNXmbF7Vc)F(|=e3#q6(MV!Z3dg0c_Kee_J|!~G_| zL{rzLmo6<`>Wy378b<Fm&Z)kDo;b+gc%p#mcs*S8J_Wt<dA#$fx%|XxdsdgQ6K+<H zKy>%n_0I)WF;)t6Ht8{>50cN$iRc>7gvMOx-hH&&!>|c_5_a}Fj_%iS{9$e5p7z7* z@W`~ZO1iU|>em-*Ia<yrdLrUGMV3QGLw9UHD|2eHN`Lc|*bw|eaec!=e=au!mPMxR z7??Qp_+bZ(M<CvS-!_ji!P@r2!j?JF;=Nw0!8(d>_pZ@dc1*i5IR`ux`*>5kIBjOR zSFFwNjJ@V<J&yKCJ!?ynHdIL|nRSY?#Fg9R4s88XU-vrf=J@IMeH6=xFi4dm?e$m6 zAG=a>>Os={hK81H1P(S~tftAOtzh?p1LBKpVY$k#Af=D5Wgw5)Q`vh9dYp!=N{;ku z_qM-aFm~sQC%$@K`l|Qti@1&gPsoc*=x%w3zzeMMl8C%~wsL`ZuT#`8aaGGV#k)6X z7)R7ERKE_J7p`!8@i?<pOi8Y-r4=cm+uL+$`h0<f16j!lh|KS>`0O4|Xf;e@Imrb{ zDB#F+BaLxcRSj%wucCjlw3f$kGT&jDPY|yeKK149+sG$v10<ux^&MV#Nl_z7_(!c| z$6Xoq3rl?2b3JZXPzZn#pasx~U1_QR!a}h`xof<CDgok`YU@AwCg9;xvx5GUhh3r( zP=1M;t8hwy`pU`E;35&1&}W3;`s+79eSvrySds>P2By5Uzykx21`|UkAgIxP5K2r0 z0I)Q;Vt`zSxGJmptBe{K(D1~emvBfe{@)TB(8MK&h621AAeVqEs{f{>zb$Y98505M zx{@?hm$d%BMr0#Eg98w5@TF>jE`?KK0hItS#}fx=HRyK_1rQW}mjX(l7;pt3L2~_F z0_dtRpmqX+8yM_Q1sYrgAYfi;AXM-_Ch*b#4+a+n0hq6j<YEMb*+1DZQd|^<)+eI5 zj8uZ5jDHYeVS4yKHJZQS91g$I>}rhv)=^f}`i#sHU$HgTPTN&hO{S|$H~4#73-b@f zv#~vVgFf5CCG3v>P;~ObQkVim7K<HoP|Bao-^1_Y*}<p2zIt;3EY1a=#7=9&oX$ll zefbx!Zx#uU)3hX)E(p`v@I+{hyU&|}rN0~(hJk~of)Lpa^|W6}P#Wz*8Tbj$D%7MC zV;s#NxaN(%+)!vC`}oO{UT<o8HtMs6!#c6<VQ`%+15H~Hy{aCqP~$bdcLWn$PV6cW zN9D6fVxI>(tiP7S?}rDgE5dM_s46-Wp`=5@KMA!WSA<$(QOybgagq4VF{*8jVnnme zDyDv%1~xGXDeU~Ga8&oR1|5NM^r-rhf=PE~b>V8lsTmOioG!w*BrQq{`|%!}<ExR} z61C~8rt+8R2LUYE9Hvj~rq|>bO+k<8)m03GP{BU3Hs?v38S`Te^>UgdG_%{ETPR6o z6?02>+$j@wh`IDUtM5sQdSo+`q$_DKM0##bwdB7jF}1QpP@qisr6L(N)*|-~K<X3+ zb18g7>vv?XZ7eLw*jc&pU0Vbh+?CD`<@G!EwU@1)_!6udTO>-f;_|$Nr#SAyz|^z? zcls*@>AU)3<(lsY?Q$kh-*4b^DBcNlO2u715++{)H5<v2u28PD7NW~nZfK<Qj8$k+ zuk+9r7%QhgJCQ+gtwLP*XSD}Em}(lcFma6EH{U+G#pz~O+dB8dZ9}Gj!TJd<nGs?} zefSfrD75{!0Hi^4LL{k}Z0jmmBF0z$sJit~g2`#aHRk1X;DCj0=lji91pT<;qWT4r zvyhYQgCwz3rl5;djg$US?P2qk#gYpH_Nar+rtrI#U0?2^K74pH!_MSt-MUYa>i+?@ z|CZf<^`7>{+Ef#%cb7}TlgUpg@I0|3UC{1z_kjYb<k}}45E#Q_g}3}~qO$0~E<iMy zWd7K2C+h3P{<B-W`~48xkgybQFW&&m^rz&ZtQ&U`dr4fwERO4sIB)!*x~F08W4x!t ztE#~=u563Xj53|d@2z-c%y|5&LU9zi>N#N>o$7P)Ee)TqMd4tsl=1Cx^|!IRQK`=> z3^G-?GR*vNwYJuicXB<BJ0u^IZ@vrqpz*5M1tgi~Zf|aGf7F)M{qsj<l%g|A`XTnw z+ug3{+q*qeq`}1<gqx#?d*-Pbiq7Q&iDE9uj?5UlA5V=3?5mYl-%*0Qq--dIBQ&W# z(=3;Wsv{}oid$}wcD<0Pf3?-@{=nhX`xB-H0|>Xpx1Z3F<;*dyjVSp+srgxuDJEA^ z#TxjRX3&$u=RGHVee87_b%|F94kQ{}s<~IY|KDmZ5LdyJ<HNnWTcc4DtXP2Q6D~ot zwglznqnxS`y6g9&Bm$tfl2lCa-=VXAF-UPB4gv<F?d7;JfkX;G(?9^R86Z|fq{x1y z2mqddQd~F`h$vn0%r4pAQo+>=8eE8|7(hUCuBu-m^JU-%ghaE-U;48Vpu<P}))CN; zC7J$q2tX~aI1sV`5Kn;yEg?sFWl9aG62biR)If!Q12)joWep&x1>{j&Qe78$Dxk(C zl|};H0)V$q;j%TL02dIWfs~I+qoTi!aDj*q^fxJAk*8w(A9DZ(#tgc$0J!)6jF_Yp z<NZUu1|g7u{vd>MUlgZkST-S8QO4sceeKRVxh^rCBOf*~?pm=CmV8GuhKGo&;p?w4 zzbHl1<i(CVpTp(7)MUtJrKBZ1_I2i_W^o)h$k)>RG?S5!kCYQ5`U95BLEENG5_hOh zY+fSQN_X4iPTMorGUF#-Ubno3vw0HGa;xTN>g4qgAn$xC6beTjLpG|1l@9yvlK)_b zr-mANPSVHS)<>;hT<?E6$f2Fa5_gW>c6*fGdt*T3QSt+OZhsTMKy-V(eJ6!PtRcFb zo-QQyT0DJw2vxgnEABU3KTp|_g|5J-7;RIfPFa0aV~-X60-bQ=`;i0~FdVw|jj^Pg z{+@}tH*IuoGN53KkIOmq-qOy5y^GU>Eonnt3!XZyOuQ@J$nm1M^+-fyii2|i=6S%{ zE;E+yc$0J~LX`ggN_X~+x^mI*VG5Aw6rU3P(u)7%R?no@_^X0_J{AT|h4rdtufKb8 z`j`bu+a%z9CRh0S4O8BiCPmV0pzw&uZ}0kdVmram_y@hHmqq2o^?1z8Z8{{_RAJn` zc;;>?+PEM_0d_LtNAx!Jg;o5B;1C_YJ>mL@%0=dUe9IRaN_Un<^R%_Nal4hsBfn!C z#bRw31u8Sw;!7$ALh2G@ekx&q6zm^$l~r%9jPYz0>iL)zPk4(X!6SC+HMgLg%+r(+ z-XK2Mm}1T(Dqt2%{Z4DVa5G6rK5ysH6jg^R>3qQ>iQCWZi^?ZL^E%p>Znx`ejEkLG zb??qAN$EGs(XvQlF1>Pg%eDWQM8!YHuZCG?OoM_^(KWCp?+n84Ny@!m4OZTcLn=Bg zFxKbfiYXa3TM~U!cr$w6fNM4RmXmjR;}@2mm=Ksf7K&R@4M9hbH7w5;CFY$HbJX&! zG;%<t%8UjKvf3pjTK(c>H4bC2emW2wYjN)fKH0=;$=BeIOam!d!|kDR81u@Z?AZa< z+kT0SxZB#)bT}7;@eTVfB|n)JUYEVPIa@s2xfQ~0e<<h>M7hhh^;WXRK^SNC!{%`~ zTV~#_fj^2nZW))*Rh}*4&HCha(}<$no2c%O*MGUilJRer$)p#r8ilLY%+K6+C3)!R z7|6Xa;+6UBfYNf#DzfN;>O$<@NO5F{*r#Hqp*c<=k&}A73~+PssoXLJtqIgJjb}fw z((QC~Stik(JxqVrgGF|D#fgT9tYAim4CZ&?SvZ68Dn9HRx;fhCvyWPe?)T99oEhIH z^>MJ*dM13aTUz^9xJ#g`6iM{^2WZ?qat#u3!NPWDF7{~>=FI@fO}Z2|LnNE1uuXZm z6NF4xqJjoa<$70Wy-C)M-b1tatd`HPq1And?hZGfci6dRPOdP7QK1S##QD<jjpt^B zGs}?Dr-aC4Cz6DaYt<QR-J;1~iogR?wA8(kjwCTtjdN)k{F(*#d&@I;4dO4P`#T>r zT{Lc2whru0QAwEZ*aYvwH3aE*uRtDgsaSB*BL0*t5SNk#AI}xY|1+|S`0vmh-~!<3 zG~laDv47HC;Ke0T7g42TM*I&2K^y|;u>iE|t8rlgrT~Ns09y3_P@;jD_`hNKx3!Qs zZ~}n;m;HZB(ZB6+0X7Y&#+Ss~S(WmyCh;!WIuJQeQRTiY0q8j{{4!|*9jSiRt4sJ7 z1B(J-N#Ig|UjAM0lCT5!00bC;rdGSEcX<FHfm7nQAd;o_+dXhh0H*>30Y>-!pBWfX z#Nk)HU{R+8Cg6Wia&a+HaUgv8hX{^9gP?T(Gsr2#00I4T)PJ#b1P~X!%*Y!_(e|GB zo#!Pp0gW_^Z$gOQvF?PiI(P)A2k4b!Xg}^7kK(y#6xx^=pQACj7R^T0Gh{ZgJUyZ@ z-qBhf_c^lR;6tovBbli+Xq4SQ!&b>V9BG+(6h9y6HtUJa9UF%~yk*{$J9!LU%w8sQ z@xBYL>K#=SvUBJ+;i^O_e4;7)zL!`)Oes5&L5k7}z6+u^CV0#yWij^26eSRt(V3b8 z(JY<Gr%siMyYcapd_s?E+PkVKdGSx%UIMQ%g%$?UBZhd%)Gx}$(T{vYi4x2PMeT{s zMLp#5w)I4^re<u{ZoHA0E0UHo2|vJ{yMH7rsP}Y{&xs<Z%BBDh#hq%<AC3M&15yfU z!lPG!Mp;_M=3+VRHsgfoXIWK*>QcWs4GxU<gRw1i8hfn^{F)f=V60LQY}c7*y5|-A zs4jU~9_El^ERZOaz;6Gdkv9KkHk2xo{>Z_CN?GM4(!?g9rS64D{>|g1TcwA%(I$-D zJXFs`$wtNt?yZM(q9zD?*A=@xFy6&(cQd`y<8R%Ly-p$3WAedEz0TR+Or<LDZEv4Y zS7wS}Mu=L70(R~axt0z$3%hO_Os7*Nnkgf|2Qt|+hr3TCW5}u*G;DUG&n3U1YEu8s zvSeWfr%4sl(}mmkTu!nY-)Y3H>=I#qEIwn;i>mw@n2CDRpP>qH9{J#{ktvTq=4@b6 zP+goaPkPq(_AuR3f4#gf`5TKXe>V~`X!AfuOuE*HQ$z5F(N3eyPD~TUXExh@)tGCt zs+j~hRha|cN0b?pU44#Ng+DIRUw0!9xRp%&(0*Ybs=}=Ickh4DVJl%8c;C!ItiE{f zjZ{hTroRbE;^R-Ko7`B2RPtPOQa>`Es)iJ#FxtG*+mb6}hXmtoyrC|fMj2o1yV0|5 zqEgylkPYQX#Fal7zR?OtS}=&;Lv_A($ln8F7gN92Iv~r)R~tpZ!jGCQe8`cJ$Q8RN z`?>zCrLUW>W!c{iE=^)vXNHC=TC<0R=QiIEjN-#si;!S8`D*XR{MFu)*t7wjFoGXb zBJ$%orngR&O-}L5XoX5LL>bC!u=^#S%OlqAr*kg(yU*e5EG?mpyXM#6pWE3tUB!L> z%-e*3F0&mt=zed!e-UH|=rY~mZ-U&Y!GZ+@yW+Wo(D<5^*q8M#Vey3~k=kYQEFftB zMSr4zI25?*1L>UqjRFwRf5{4$4gsPp1Ta!@AZYie{eLC*{A~}UdchHYM)Dv)#@N5$ z_Ah&MqC7nf1oU6%fB6zXZV~{Cfe!y}9NnD2cuBbbdM5+{s51Po7~nrn5(xOeaQ)K$ zQXc`*qX7K`Obw(f{n--$dxZee8YGVVbEM#Z3Kf5K;L;w@!6E<Spn!n?OXIofumZIp zkQ4@lWdE2*z{MXE0|37gkN_qIe3U=!|NKyYerDj<6crbPpjFk`0TG=D=dVmD0MNnz zoa(;-T@1KlTmpIx+QNO3gC=TgSLkiq(0bTL+c&R`<h#S7*LX{fYwA62Q{_t3+INm_ zj%_t_S|#WEKKD)VK(NdOv&S=jrBHEGDS=yxsBAe(alcd@-bP$|Bo;BuZ(|5yEYN@H zV5k2SpXlA(r-dFH_WJ~e;QUfETu+ruhp@Too;m~64WDMzk71whChM8PY+qAbo=ig3 zdbwKEJBRtT`TS2+^Ct!CYOYHVp#2qYG`PKYbu%)w<+8%#EP+efE;Ei)CJN=Ql8UZP zQ-!AuK;vj%Jxdj|AGuxqV0b+?NL*Sr+k`e;5VU0^e|NCj<bChwg%3X6dBV-7h2EZF z-lKl~f&GlrC~**dwVpG_*#e=5GYhs~24eMNiOlOMtML1}4>@^@6Yodb8Xcze9&%La z+}$(ZKRhky_wZw7vYjQT-a528R`7qao%QJ*`e^v*IIGOJ1Gd+);Vk1GR}}g*_$7}@ zAt=X)pnu@J@g8~5mW*WRc0V2OFY_@M^V~plKQmtjOcY$W*Ymv7-|VPJ9R9sxwVL!p zGmHAXBApu5cq6U}BxWr|Q0u<M(%#aZ=v!hXtz8Y;6USvxX(>_0T+aHlnkor_@h56n zSbn(!Et<C9(mo{ycRZGuO<6IZB@|$*??tRT<35&tUMfMi^++2v`VNs$I*trq+Sy zS1TJ}=Yj~4m53HcSgz5tura4ERxpmt2CZm&VlvA-<hI7bw@;uTOm=V-%cRSd%{#2Q z^?%@%0;a^I19A>%X@4)Tf5R3yQI7xjtv)4$3iJ0K1~|?oyMq9H<ll=QcmcqeJ_PdL zn-mE5|DiJef5Gfu+3A;C763<i8bJgQ%>vf{A6x3b6B~b<6J6f3VOQ2EjkK6ow|xlE zKS1Rr0+KPse}ibsQ@Ve?qGkdp9H5N;*$9yG2qcsJXD4DqAn>Ym%|I+H2%?Hf=N9l6 zS>>-6j+N5Qh)G&SU}zx?=m)b?!c~b+`7x=XS6RdV#5pKBdxl0B0uvYe`@c#+fFuM2 z0{-_;0Ji>q<bZ&nK>Kque5l8DxOyzzwXfsq>!Vtxr>89xIVfC0<?;Od_z;8?QxEFv zaR@ixv{+!{+_&5E_S=7VVYO$ekGorHIa6GZf7eS)+rbkmNuBkWb^Q7B^hj+Cj>3|b zeoSlIMLQeYMY)_;qd?pm<APfyXB1OHB5b`G>%!paJsc*<rtZAQ=~k${XB*8Jxb(~z zl6;}*s-fv7p>d?mEgc;fva!DLSQrAfCQljVp5ta&<Kszi>T6DX4MaQ;7EZVNcsihp zkuD$|nx2`N^5eR9=v$FNO1rxxc>K(g=2)&)+%K3WF<={7@^X$(F1+OV?0&4fTyO4P zU0Uk6?XuQ(d)bLoVF1Sig^e`Ff`#hHshVUl&iS=q(At{M%_dcF=wnw4%j=+e#5Q`< zrysM1g_?wscG3{|2Gn?9reU&TmbGBM*wMha5y)}qZlB*on~HJqgETZf@{HZ@qT+mm z0O!1CeEiFo{?QqRbxbUCj9z(hxzM7=RFA6aq14R`F8k)6$2+<<Q6n?sBMf%7E;~g( zO_n+^7(IPLx1GZ-1O~dkP}*&+w=LjQ9$9d$xx>pWlJU~iC%#T#we;(#HSMCYkXYJQ zlbbEa2mNN@8&l1e7nt4@<GrVTln$c%B@@<9!-@4QS7imuxbkEn#97eLw79sqluTlb zdl(qg+9IZ?`mvpI6#jWl=ehZ*S=f`5hIHxX(;9*-@=lh+WBjh3u5nrd58r#3$Np!5 z^G$>g(^;+YAU=4h7$S1kd9pKB?Q*+KM?Sl(@|zgJwPRmx@ypN7kCxFbYyQu_hPg_e zzrLtxDv=;E^D6Rsj50YLco7kiF4_F(Ihwe+x22D4Zg~;=C(5e|Gw6Ks(F^d3tZDff zI0-*(67%pvXTL`C0$sj_+RxmSbqr_wIooKoZW&ESkaYrG-1_?VtCkh2;zCyU*y`E^ z3j2Jr=fbt)!cPI92jVD^;j^0a3sdo0+^@hnG4JDG@zQG9>g(nnP3T44D)4n3jTxQr zyeiISi+B1_9c9aMEG{;?y3F!A5Dver=S-bnzwB(;9GSm4J9+vwv{_C}l5cR!9Jjf* zzhl2?)KWLOaBr<|{+C1oN(9r2ydM?)3@>fs`I(Fj%ajy`t*WXmIZy4F{KDK4o_|FX zn=&-(#0pAcZI3yLY<huV*|Uq8I*H^uo6%=;!zeyPxqqH*!?sR3RQ!Np+$GzFZ=H0k zc#2{C0~M1(+AO#mJ&svYiHgB)7CeYXV3zElVu+iIenwk*>z^u?z2iU29=rAIV$fMs z5VaykKZ1(c5~Ht?{l#RlNZz0_2AF)VIUjVsw{cmt3>2YGqAhdR&a=l>w$3@vO|%zL zvcHP%>_l6h++J{Uxl0-p?9`in(TTiBxCk~oH}&^%Jtp^Tl7QA!-A{jZk>KHZmOMUj zPIwp?akK9{vWznfCG~+0_q2>)-KFddd=cJ6_)9f&7yka-v-#ZIde`x+?tS{B#ipqS z!JDVVR@Bv}=uPKn5$Sc2usPJ758ZMXsMax(Qoz%6^*Mc`Z}XDX;RM^HZ0EVzG5f$& z*{iuR?q5$rcg3j2+eg10Oxtglkyu{0HLjOMHXc`>q|lyhC68a2hQ!%i99urPaK?T& ze!+dVwXql=(s8~QTXixPRo>+L&FbtnO1t}qZhsTu%5mAbM^lkxLnHRZ+n~~JR9DA% z*N&B_W$x+2qkxZ<66O+E7d1c11SIRfp7qR)ME5lPtSNkR(K?3r_RN{XvUK_)vTRct z=yBinDSE1yPd96EHv4=n8RFv^v=P5+wbi*syDxh>mV(7G$m$eZjc{}nWN^7bJ>_e{ ztFzwm0eVeJyJ2^qTDod1$F{x)h0PQM3AR_6d%sxfzoSRq(OnChjvJ@?iXPMVW(~Tj znG>*fed`nXHWOO1RE?P0f3{=yNt^SDI;DDQO`C5+Cd&sOtdi_BPD$F=RjjuT2fuh# zY)u{8O*@}xCaWqe`+o5gx=)k9uK6m}wmNqfpQcZ5IW_1xZ&s+c!!>2=W|V}VYUaCl z=^fonC{Du|N2MKP{Jikbp~<<JhRnTNBEt(Ft6X_pU${9U8(Wy3=WQpB>*_aW9teuw z^kY#^Z+B*&uGYR?_qAYmO8@g)Z>hJiylgi5EN&j_$c}_3v6k)$n&l!~x}l55UX3~B zo1&<$NtcDTycZY&`Ze>V-$zk$OS3;hI*azEq6<EjezqqVE^pI*!;5|36`i2qFfx=C zxx8_cM5<%1tbrY5!D`uF=)Rx|O}ysnb}(Dn`P!2hadU)=-OQ8yS>`*vpD&60q{kh~ zTaZoS+I1(R?<80495kH>o@-fHvGaeh8cBS~8`-PI5@~W0`Q>|Z({qMo6n_*1$t_a< zyvmaF{#>|xUq2-zIN*DTa})EBh5yC8xXwf0u1Eg%_r<O79At7>PCt#GsJt%k)2EmE z`cNCQP^_d}JM!na<NLv>;=1qBCb_I8j(GQbT@-|Q>0VH+@C%Boj|V(2^3-q~MpjI< zMV<OIAO^6MV?{{HX9^%{VW^htmJO7l`JjtL<egVOt-V%cu6l=D8^$hCg`27ZVykBZ z)$bed`9knHDP1`fo^i@6kT-DFFfU(A-MGasm5{O;Nqf=&U&nkQapS2BJ3bCk{iw#{ zvfgpwlck2!(+HP&2jrBFN~Hmtf~TVJ+omH0{8uCy@*LCn2^70McxI?$)sy(lTYZDX zo_BSqvZ7Lbk`)AgDfG?@HF#Rby#JARjqEF(SFZhlFVS0wQG!>Wb4-6*r**<c@i0!^ zyS4Q6CBC`)It3TEk8&83UI%Hbu)i0EePIY*J<bz%{h=$+CaPO_Z1d@kSW}I=-cmuN z=8dg=!i=t{5lAld*2=Ud>b64v(e*FF<~0TZeiP9fPhc!kmMZ&8-pMPJhq9m8!E?59 zAYD58yzczPE%O_5J#Pj@XN(@L=F#fT*X!o5Vd-i=+>np_7|TDM`I+3{zDa=6i0tRN zd~f-^AA5a+1v1M}D&_H_gU`2jcU?p~cU!+R?QRTe*vn}fJpEDm-2z1d&!2{}#ix}r zsj=kEX=TTf@!X_g41~RWNI$B@bnYY!esJRd@kvTYpBILP14-<rUZ_u*66H$&qy?jF z;BsyS+znj*amyU(ITvJ|dltH;Zh2ddd5Qm6^I6MFm$QCJw|(D4QIlh{+7t5v1{Wcs zYvU5rW8Uokl{8;73j$C=L-n<#PZ=$QGL$os`-L#ACUVL*H6(m-Mv^%uhlHbx!cn0o zcw;g@KB#kRo;VKkiuYldn`?r7Z*jO1?W!D)G0CidQ+GU~_w<WOkSfyNp(TcpI$<GE z+60LP@^NmgG1MER7q<FdX{`+3+bh+{h+Rg`?CD-ol*-H~J%~o()om-u27Go{!BUUd zTc=^AX0iMzvi7UD3{LdG{?%(WK?`*flh=>Hl{^-aN6e3Aeh@+%+*@mQt+Z5yM!gR{ zN5#52oQhN5e<eKZZ@ou}q#Ik~t6Z3Q`os0@U8@4uuhoV34TslAVA)?Y>UvW`INMvP zUfqGJObC6fH;&oxK^@bahQZwPuFXSBR7+;L66#V^tlda-tt^&2ij-DWErpIUm40F# z+MI`HA`Bj8+>P_(Vte#j-%{q`wioB42Dv#lug|<st1Ac;Gq6;;9zzO*?`-tEs%4x; zTd4X3D>y6Vs(|d55#W3^Tmx)UW|`4tEys57Ak5oh{5rzz9qN;mn-_NWtQ`tgt)yE= zS3h_PqN-QCcE{F<0KQQ5rFp&i`Y7ZbS&*qBO|e_BXvBcqulRe0@%OY~?ekV9AM;NV z1nm08h^z!sZ?#Hte0q^O)|pgP!J|6ZJ*_XZK@P9WwRj>qz@xYz-Ca&a!%7loL3c;1 z)|Nd?g(5HKAq17Jt7Ay^h*h<6Soiy~^vQ5ClZH}p@YMUe)bq`sdGl7&Qz3}T&-Ux3 zlr{X6?<LrO)T9X);1*s~Su<CfV%{2#?JH+p;Ma$KqSnaSUmA(iq#qdN>w3q3H|N~X z3|`GN_8D8r*pR~1*Lyv$o7b8>fBDH{isgq`MFV>!+$yrD_6Pf~s$SXpd2o6}zkP9g zO@sF7-~(R092LAmjakM4<F0wG*iR>><?~&|e3X`irG%~d=U#hs67yl12^OcEODv07 z%uFJc$X}l=*_vLykKK&hta0A?DOyGz$SRwsUFe^`U=S(G!>EgSO+h18{x%%XcH*N- zjrQptKHHSg1d66Lm$09f+Zj*f8Q%NYGQ8&vD^gQT#J$JU_lCZIS|IxNQU|MC4sUzv zW6}ponwt&FiSl;}B$B$ECMAX+CKA&ne-EU5R-W<mM-K_*UO(uC!@@JngV^-k1P9%p zeAWFw^_;sF1iho{dLMP^%1e<^`u-%zTxT?O6De`|RmnPwx+y`8Vxj&{Gso{?`QhfT zEY9R3t<7uq*5rJnd<{kfKjuiqEh+!>F$8J9Bt5lG)Z<*8h(6P?f2_~BH|fjkD@(2| zKH_;?hTya#FHzJ8{FS+QW6(M$%eh#Pu9Us2lLBsoa{|jxwF#1hnr4igS=nv09@VQj z@RMx!Y@LaLP&*aVA3yAMlAe5)oXU$^?kg_PiDr_oz0L@}b*ru98m-{<Pt{79?%A{{ zfe60|@O4r0B5aKtBA;m6@MQ`{Y9BJt*=*N4Xn(p7qWC!6Jt+a#HX%qY)XT`nTjCYa zrru(5e(QLU7%lZ8q0X5@@ml^#WWfmZmfc6(d*^ereI2N=l9d$5$6Cu3UJX!oQNZ9k z1_BZAJ)QZTif?!wWnG04lKWjrJ@lYL@z&izHyR4Jc-x6@qluBPxN(~zie9r(3G2US zR^%WnzH865vJR>n5=#{N0$=s<UwOk_OOIwY3g|D3>8pYrq8dIa&&xavWpF%C<<B?z zbk^dj@3xG}nrh)Hf1S7&w`i%)(b3rMl+WaI`<Y}`?|L~jzehSy<+SV9>x*HJ9)F$9 zMailg@2&B|dL`=_pt(P%Zh3yk7emjj=s9?V1dYq*L$w}Y+6T+G!I_C)WZ$v&yo)>z zi6yLK+~)}|f^qq=+^wli{*FCg6z9x`657TO=saOWwNeTOcKxb$SIuL1%zaP0yCSB_ zRr7Asy&Ni|4eu!Ym)g8>W)4+#<3qM5cTa^5-}cNr9Nrsd<B6ye%Htf)rMPjMPn(!L zTseQk))pSe3i9TjHJM=_8bVz(*Qia*=N^g{Bv#D0=(G*q)8>m^W~NK4o`E~QYT;vX zQ8<PSqC{YW<XIZV<}&H+q#eRMc-!h8ve5MqVjZ7ZjJih&KAIN~5)A?=?{wiA%y-TT zvoni_(bqptm`#eAoB96D%+Sr~?L*(m1GmwJ$Jh2{TqVX(E!-BHTo=t`PHCG^?~-jn zf0&~BxP!(^s(P69EvFdwC(mxF9Jn-M+6J_+l%wvjIGfxPv{XWaKKJ4Yvr?dMH1Hi8 zv(@d`a-~?P=M>#zd1NrJN@{m@e{95iOPRV*T1JL>lOF^Bwia9olNf55V4|xY+lsh; zG!bNy(U7WiucP~2if@c=Xp*RzjG;K6Ga(z<?Y9|xUKmlJb?PEL3R|5%lTYT&7Eysq z4{o5E{pNp4G<6%F_p=UI9+7#awz`wXr^=Zo=~&PPZpYAwB3${fspTK}cf!HF8d!m! zWlcSMk_A=PE8^%4C<bwB`NpTW@DoMxQ4H-Lf867>8dTF%w8xDRPrXf%)i*t#r6yWH z7PR!e)JB}?X5NEBVH01AXjvZVw%s?R*`BMYM{J6PbDw#)s<Lp>;-Y`>y|+0hAj25O zO%v&OHPJVoa3*|A;q}t)Q&_D?^@Q020$NLLNa#cy+1|BY3#3ltFh$|n`&*gaS{iG5 z?qrK>_C;ewWuDw1%5SCJm3)0$4mpG)3tz5dZZXy&Q^aqoT4r|Gc#<W_9>jb!d|Xi> zg}RI7zIynu<j4zoE<!2!A`{UraTD(M?Lh-uWs(pM3wxH@M5$oc;{vX8AH!7k*$3u_ z-%7JjRtQ*20_7}bdkkJx&!!b^@;b@{k+3I~tRatX7S7M*Md(td=ikA#OaF%HiKD3J zTz*c2C-amPf=EBJ*nTu*HqH`W%f!Li){0_N)v=YT4a*JLfiIa8VxN?kCcI#TxqCL; zi&^FnoJ*Gdkd>U}`ipj?>QzXHb1Y5h`;QrKo72Bj4wz{6#tuR73x+E#Oz$<^{4y2D zNO6c8-lEqL9rM_LMmf$OUfY$)xVha6kL;`+8(WnU;Kr2iNK#s64i#3|4hqA?K9@#q z)K5*iSBwROC76zb^C;)NXX<aB!hSMtoH;o!#eY~yBRyYrZJbka2&M9ikQnVJEDqr@ zk|YcZxt-Ni6h&N4aG`IfTI<g8u9<ovdq`s=kQY5N*$~Pj6_-y$KO=$vWpPwe$ecNE zuoKoVyp!au5b`Nvjys2eVgWNML6aTDexDRht6wUhwcSv=zpOf9BX5=Y{r0bGy^_#` zxlVbm2%GAJXMskLN6BRVH`SOoR3*nA6m$x!^qLX*+|`|zDZ1@SphlmqatoJ@^y`<& z`S(c)Ad|@&_L{>l@Pmd@(;7nro_*`xM46T+LhJ}*Jcp7@H;?i=@s0AF>;zcFDEs@% z)Yin`3^#KozkcbfH#J{yr{qQ@P`=5`cf{%vtNVbwO>KV-$98F<`R(~jEO@1{r;Y57 z;8OIk3SH8j_T1QHF(n>#v(Y5dU^WtkzGpnQUaU;XknRs-IM~xN3=TL*z--4qc<%E~ zH+}V?3pL6)qir{8lTl`$4?4bM`4x3wyC)N4TPoOu4_i+CC`rhyp`G|>gAIx7zR}F= z(|XXb%`@I4;Q~sTobWTAdw2HeS(>zRVb+Lp5~5cTxsaOhs^cWe59Bl=Z0IJ)e5ji^ zvOOxvHlE+;Eb8?P|6Y*OqTq)b43l3z#`jO*opcXQ9=dcdDOnN|HrXN6DXCGm4`9>Z zn)hW4MqK!QlB<rf!DS!!?S`K|g0>-*^WAMtVW3K$L5?vSKP&?q?N2ogH?BWoOsi2Z zTxH>lr2ojZAQ;o)sp}IsrNZ5HUyC`d1iBm*|6nRd>GUJ<@(R}~qu_330LNig<z6P^ zHeF%%eye5nF#90BY*k-pT<jn!xXk<hq>RPfkMuWU26d&}Wgjf=^p|JQ_YQ{>%iex( zQensc>_v8q^lJCIaZ7pb<Hn!h({sT{X+6F=3S63N$J}r|`Bo{Ow4Xhcg({phQk`qj zEcUD^ybuclJMjwTCU<5kEBxJC>!&tqC;ai_tmy-u5-qlEq8Y|`FX<}1P<K_z&F=eT zeSUtX<sYBmSUm=H4N!S2snNzLYHNly<QJ4}$hmxk6OvTjzM0^|d>=Wqexu-eL#v~X z+^?d9Qc8wX^QIu*$cn@=67cSgbgQIavhe+O1US`fDn{gR!Yr+xPIIS}jNBSOIwxnx z`Rm%lU|1Uo(-EEp%}dgS8kD>6cPBM6BNM^W@1<RJTMDjiQ0mFtG0;j#1&zf}9ccx9 zzLf8ProHV0&q>;v-I4|^_gnH$XT9_jo+=hdN0mrFY2O;VZ~lN;`%MoNTWi?0;r8CH z=lflTvqWEoy7i9(Y@S2?qkA9kY#aKsPwCQ+$4on)HV77kNtqfw`FVgkI!sI<qWJm? z6Sihi+fDhU4K(?cJN@UKEt@vUdOj7=`y0GHmAlVk%ZY&hY4Fv}4eUN77PPhNV&#t$ ze!GX#Vx)GZ!d{5I&hHDs>(9=;q_1U*B=8S|U1q*sD+jw%*G0{Cw@@*@=pp)A!nb>e zg7^Y7bF=CU>tt_LgsjgJjFJ}qem4FAb;In})b$RQprUL<yv1PjfE90}|NGXLj0p^C zY$Ob+kj)c(EtNW)u@(pp>Fk)vIzM%lSY70K?{k!_#36~}L7dBx;C^?lGX4)C!?5I# zN!nX83oku?GP*X|t{Z&1y_gEJ74He#jXoB*W_HoaCU%@({4hsLH41g7SNlyJ=l-tI z*G`@Z%e>ytr0wW1D#|vK(2^BBuIT*rfp=;hDn;BgWRsK*nbzK;;-3)YF<AwH=C8%c zP0KzMJQHJMdLEba5H6_SNVKyqDC>XVxMy}~d3+Is?;-HHtoB`Am9u$JSQ=qD$FU1{ zT*!JdAWTcs_pY#SIHFLlwMNCx;k)`8W053$a6`IxM{$JF5SnrpAHD~e2w7Ae8IXbG zv+PVatDA)9e4Dpvthq0&XJ0KTV@8QwZ7b}2idxC#|F!kh0Z~2AbA*JHba(d!97u?y zNT+m%bhmH{5|RSK(TE}-rF4lXA&P{gbcci@4GQ{u2m1L5eECP-yxpmtnVs2(JHo#T z+k4gA@>BE|^haO%IX_;Ugs-&hje5?PdgLu-yXhLU?2xBYc_ee)?!0;|bzCoa2_#C| zTE#ekfCnmaWWzbPZQeG-4J{mZ?*+#eAFcLIG8ZaXf1&d(5iThfe5f@9jkwiZvXQCf z!7oqKA0snY8DsUjNVo6MP_tO~z6b%~gU75xA7581>EWf4h5a~UUspUn44UQdayYt` z{_Tb`k`^a@4?g!WSBI+a9vC`ERDP7dF{Hs|jacCt*7#9-^IML~sw_O-BBG(eJ+VND zNkZ2A#*<1dYHkw50V#ZzPZ%rti_-`BV6{2}mXdf2q)F!w?q!DhUBafX(#5u3MP4}l z+;R1vO`$YpRYnyx9OKu~xQWwqrs;3v**yk-UF0?(pdV&g%^iCp)=}}XE?3@u=eArq z8V*AG$d*3GqMJEeph8xb#9F_yLA`KRjN2)W+Wnyn!p?&Ib^47p23wX~TMnIi6LV4W zk1*A^sf_unjaH3!OQadhx|wt|yNe7kghw#gOC(x0o+=kLm%Ob%Wa@caNMh|HSH6hH z+#1Ril=K+!E+iW&Qd;nYgiBtfVX{)uR_QK+Hfvcm+`Fufvqh4;y+yU4?(nWSe+v#H zP22mSRWPq!Oyi}W>^?G<dpf`A4YZB=2`s6(EBjb&y*%W!j@oZa_+P(Lx&N7#fZj%t zK@Q5JQk<Ie%!OR~NlD69D(O`R3f7cyWu4_RIX2di=<ChjyN<^j;?4KymC>$_czRG5 zA~tPWb4c#E{=~3Tt;SpR2S0jK+MzlWcHL%%u$!i361MemnKJ8Dn#(UpJp=Y@p19m2 zca@&#iSmyh{hLR3)+U%z(7Iuw@2=kg)9mcMKiCgSx@2OeGF7(xaJi_2d_-`LW<R@v zJr&_pd02<%lBJNC5_SD~WyCbni>$7&fd$b%ktU|sara8kPtcX-_)6ieMQ2Gcj3MW9 zhM$qr*D!^*3f{|hb6*92kS7GJvFoSmP4}<9n!aA_nLzOECf@8SsDn~%^K0<B#Emdf zlkUyyaUYYV?ihqq>%C4<o^+M!otnQddg$amZ1|17-?7)10m7-WH+Pr&>JUZ9Bo`k) zBKA_|U5e4U4?6hY!OL}S&^Wjd#g+0zYKIa+e}$XfD*XN)4wvmy@7`{Zi&3Gvzu`Cd zAbL*izQgZb$!7J3APEN<@8<@y0hWgcS))0<Ry%>ly9%w_E3~to4+lJM!O~bKDfI@S zOjj`(OV#|gLrw3K&<al5u^SJ98ouWVEh6Nj62G+#zM){}%_?tD`~GFw%)R>ROWhv& z2m4!b5wE@IX%3%%^;j5>C77t2nowC2qnhfR4w@1oiwdy=aZAtKVv!{vdiYT~YdRpl z2I?JU&J34kpCf#xBb^bwP?hziMV!ncq%n<d(K-L{`D<0O2yIP58TF92<sW><3$j@e zX5JXn&sSeP@jAXNl0(!Ju+fn0QvCw_TwqOVYOU07r6byihO#Vb`q`!SW9!?WhMWU9 zXBC7K7JJoF7iO;CnlV`mCUWQGqrd50Wds8)e=PrXOef<%=YOT13jO1ZCAXBQA+I3P zrZC<4CC(3y42S7Fm6ptFuQ>d*E#4oQIwFiyW$KCI(`oY|gX1e&3okE??HSULn6J-e zXRc+;S(S{d`g$u7WD_UnTbpcd-V7wOFV>M<oNq=N%&X|)a3lAh)O?t5BOOw+TIFdN zGa`8CR=m<?a$LkzL^YKd%B3TP_fjXHLAm|z%hvS)<f^K*2D~p@BW(AH^k>h(kKTx* z!5I%-ssy5|K(R<Y$08*t(Ic178)jyi%sr<rUm@hgH;ksMt#02m)bl7rocid?<ND#& z)U~bMhDplz5Z`)+2+_NC)a3|8Yw)dIe~!@Q`eNVOkhHgIV4Y7Ia6g`0pYEkwAh8^F z%ImCmZ*r{#|IAbV=!r3gd6ZxSk2XYHnhVxb`{^i^6NWsXAWsb2aaxS6G{a@MPO^tj znq2qv*Doa`+cni($y&D|6Ue};=Bk>4P*Dd)Xz*f2l5di;g+KWuk5uPMME&v=s@Z)B zZmvAlEifi1p(!pidxbhC``fJ&#u#SyaHc0sqxXdmbk|KJ41AiR%qaX?t`S^8ScsZ0 zd-Lc#`|fhEm9AnFA9^WBt0Ss<%;eL)3Dy&WC#BhWQ)v?EWZn(>J)SpX^RMiZBiahG z8E${W;%4%>_3o9l;bIr#me0>`X_aPiG7`JmL)(-5+fA|h-g8e1m44-AE2#D)Eac&F zw$BdNZuj^!;78Xyk^Xpv^RVD{?gPYhlo@$$l@a~ttRwDYRtY#CK?HF^bmOhfagAt? zVtHI6L~xZih+K~Bli13$aV|-EhLw>Kc``_La}9}rTwPK^il~Z}!krJq)8mX;ZhT1^ zQ&R5u*j-`1jyC#rTE!2I-9L?0xEL|iLa9Bpty*?o`dw=}<QtV*jG3X5=?p|jVKRIh z%kbavmSP2q>&{5d*bN7`^u|P*<$3vFJG6Zj#e5kgE^AfNDLEyhf!|iaNuX6zZrnrL zsTbUw)75RrS{q^<u*7u-t2DASH%$^x{oX-goF=T}kf4lnJ;BVEgvID#Q6{Wl5x<g3 zg2y{fi8Nop1^S)PkkGX73oH<^sinf>Xxp~(=qXc8p|~C=_P}$=_eZZh76NB(d4v`D zHW+N@6}7ewLJi!HZ6EQc)%J@N3wC$-R4CP5(<~L)VZ7s9j6v)?b}%%WGCPF^)@un( zppTqz<FyuZe*g39yq~X}pA#qC?<3V~9v$)zD=lw&$KJ+Buv9XJ;|Je8Ldfur$SbH0 zKd?;wO(9x{i;FBldO>}0R+3D*J|yIe?8km%;p@8O!6iA3r9%IXN36i0^ZPHa7`PSk zX7v{@wSv2Y4v(!{hnzG0FO9PcClOwA?xlXG%KsvAYk5Yw3X`_4OQqaLG*P3H_|ay| z-cU>Y5W_?I05+P4<2wqUCp{1oqDi{imo4r3UwlLhoTtrm3d-IaPntAUTSWWd9sASq zs9@kpH%@9I?F%!vDcNOLDJZwI=Z+=C<Frp-7Wp@^CesB|^_ty%JZBGP6T+^#d{-?b z_<<SEr8qJfe{*TDqT%WBJ%?f5Y*SX^R=%;YPR@zyg!1GLq9avhCCPeQgjx_t^pN!x zBkOMmEj8{Z-!@J93uKcGw-oFH?L*gCJsB;Q=O)b@BU__CU!$j;E3;%}{*cl^LPL<7 z6^U(Vhn@wOTsO;Oh0fT^hB_)E)0N-gz*sE2gav<*mTNgJh4a1)F3!VyoW4)x<6XMA z`naI;5?sWcR=TuJ99B=1gD4)pDcdV^-2JnLZLZAtQbB=e(MXfll@tTFjE4=zdQaQD zB#DjgF~%=<AP6Sq-zRlm3fb;6z<&kY9!T}}GY+=cWeS5lt8|9AOYF}i58%@`b``i? z!{i*H@6FAmD#p>TskzD7R1;;Bk+BX5%OT3jVjZk>p7)y9d<(dhj;4qZc9p-Cf1qXW z$5GU$sL-O$8ZO`Dkm0e$mT@nk%wKM>G4A!(K?}5T2U4~M;|f!XttW%pWbKFjbIEt; zTIDdJe8x>F7w#a;qO8jdr*14oC7`oh@-tfQ_gy!R3^4S%6<hVYgf7-Vsy!kra@7-~ zqUUgppEY)pOd}xeM+CDY;z7D%;`hN}1~iE0Pm0Y3?wsu`q~pc`?l-4r;YG^(52?QH z$&HzmxvhV0bJBh%s_+>$oxl9ELXx^gL3h(MxEe3Wk@mVTecH#)RnssENNW7H@_WOA zD5TGO3te2r4pQcL%hX`pTCT6+C4&rj&+RN*B;9&tuRIYOI>yt<x`B{+voPwJOaSYW zucKsXr<FEp=fx3LE@l*}^lT_fyFZY7vnjC|KM8ECsM2ci(F^CB<1o)BQ-rcUD=T&A z%+pf($v1BYLY}jVb=%^zzis`Q-JbihB2=exOG^Cvfr>qj9W#Ft-6QTjvO9C1<PLjE z7dyoAN*a{a!#nI>ro1ym`1&Z|gy+?Ze`;I8z_0JqSi%*P!ir(LQN*U-$IQC=HR8~m ziJ_|~p;`F&@})Z1LSw3E=}i3VqZce`WL{<rzIHL??cK9gx}sL~;!b5Z(b1|^`ac9w zn^owMZh84d&8_!b%M!PIKp~k*VQI}Sef>+woL0^g2bZkWargJ__=vgeG4@vt4{xl{ zzI&$8zrJl{&1tXoRB*${&zvDxCRn83pej0QD(~5hd<1-T0xwyGua_k8sjI=v^NB4} zgWt(_^R}DhljVA4Lc^m1O}t$Eg~!CwNPZC$4!uGDIvQf7ZWHXqZcM*&{Z_(@eQgM< zMO)u2oRjQ<5^ro|yptIM`2T+#P4qA6RpRYOxV)S%xe<K9T~L3e$aCBNnvHtr`^yB- z<)4uriWv_TSjMtOz2;+iWeJC`T{)8Pl)dbCE0qUf?nYAR$ITs+8J#~9OjH0)S;<;# zl`7GW{2^kqPWQ85H_v!?S#Y2Zhvi#Mf!)=@^jwDQplmaJav_FiT8L{OKY#{5Cx&%0 zJ)BV4tK*!fU|j!hh&A<+H2w3-1KZfkIDC^%nGZa)4~-DLO4VPcs?6+292}~j4*Zsn z>)uhZrs7@5ClAW9RawDW9f!@d_<xJIvm{2i%AMc*?n;JD`Kv7=QiYthK+k{-N-mk( zB>s$XNqiB*3wOyv_4{ri2JpV}78<<Ho6ubod>&vdCiMZcxI?Riw2bL>zJ==6rSd?n zcP%zyKcnBadL{aMfK#9NGzUn>sLEDNH!cb!bY!xI?Tyo?wctiSYPK9Hi=bKXpY;wR zSChRXu+;tRIb4(xH_+|HWD{7W&u;fqdl}Ks&|~LAepjEt^~WanUm<Yp<2B6V-gSEh z1#TYs3wg$J(~J-EiHz#rQKl)U39y+V-q_n?b~L+rcymmHhX#?tiNDYxX*yig0=pKK zvLEgc$dpN{Im=XH(uKa(d05OtJ<_9OI2BHBzpXn;_tEtFgpqPPOCI)5r%wIbThf(} zq>F;{=xl4nhfE*RWqBf!Z}V%)ng?c+4MILJDXZ<)aoYWk?+v)uQF_nq?T>^>ZJoTY z(y=LluO5I~riMTEdt7<|@itrG^$4#NLi%E+`Kf#(bs^BSS|?HYm}2rFN*OnY>hMRi z#<3;obs4kEH#MC`VV%7i)y!;Lq(|O2NDYG1+X7P3vbWgyy>yju5%GKE)x?iCdjwc( zM%&Z6+xwl<Q=4Dlhq@emY<vp6+$F^oAI$8NDtf0;HBwFn%flTfb7zE#qu%U_c4)-# zL{Lx&$Fx^Y5!H`J>Y|+`O;Z~zo5u|=BYaZqrz@_w#~M=Q9lra}#Sk_Fd_xx!Ut_ne zv6#+pe0DwiVVu8vRW7212x2);W|G+}612AjW2rj^d+}Y(^q(4is^=crS=DWQ|83n{ z-Y2}+Vc+aC*Tx$%t2cL^U_341OQV{PjJ)@{N{~$dIhlV{pom74l*7Da;}-9;g}MXu zZJu@~WG?&q^I%d+k1+<9JcWiVo((BgrH7Y`^4KBGJ>vpzKWJnij<H!vpK3kX{vOTO z#z~vD|HH<1LF5VNT(MrW%QsCrtuJ&q%pz$iQV)#o$Cu?#^eei0BYHQ|!NrlrP`jw! zETi#t2z+uPwEEYLe0f#IhQuZcf~%WP(R?j&ExyiP#uxg{1Ww>Bs=dq0R?ZG0!9kSw zn^Tbo9s8;Tzf&lXLvT%QU~S(;x{td&F{*2aL#3qMoy_W2MpNmYTC&IHzTmsXDJJ)e zS>w(N5J$x`gzc<fLvjdi@%U|Y!B#`$;Z!h1&W&xWue(1$QDV#En@Yqbz0#2_e&wrE zyPjTA@4ncFs@=mZY;vvCNH0zazilri%THbQB7g9P!_Y!5zcIqmXe6V>&#bBuw|wv} zg;I(CPf|^x7aVs4C>-L$0RO5*J6PG_Y^~_NWV#BAkZHZbpSYmDbxT#5=XE&V6=TJr zO2)V<;mt?4_o}~-Aneu2ZJw-uNW%&cr7V5V6fATcBgZ)WGdw->(bc3^xun}oB}1$l z`Wj>h<)7-q(X>+#o5AkE#r@_c4@nLSABG*&DQ>Gy(>h`&?>?F|T+x$gCnWD3Rf%Ny zKt*bg8TEks=$Q876j4L(DDxPxG())2Ok!OEA^r$jvf|gQ2U{Z1vEP*Drc64Hgcf67 zIH?ljf8LA_SH@1aL6qS5-EJf4^BV2Ge&dZd@z^%{ZSR9XYXleWFK+6%&V%<BwRRKL za^vrRn!50-Ry1KYOOs~(dfB?793hGpeTDCV-sZcQS91aHdR4>6+$+`jOjKy%p13Qk z<BrlMRz^T;-eq=>-nX_RZA!B9_ji*?Ht*}G{faL-nw!XF<LAojnlM?eJi>B=&BPTk z``{KGSgO1+lcE<fUie|ZMLJmmOmn5A<$+&R2Ca%Gd^H#x8O4WtLug&0+1PwtzHg;_ z(0S<d=LbnF(hc$VMM*jB90h#7J=)MtJj~r4y3Yr8S!UDLcJh<2AzK(?gHvGq-n9h@ zuPn`iinnl^YSiM3h8km2nKF8kOTvgcv<-59wdZ2JME^>N$TKG+Ey1;&Q3)q&IM|dG zQ1#)FrVjy8uC+H$sOJ=i^BdO6{aXDJV|JbPdW=SPqPWPl7E2?;9kyokr+eX7_h!Sa zHa`$k&fcNq92LUI9w?Emo5#j&n_aF-tBrnHdTU>>>$%3hMEuT<V(Bk)X45uxp^4ju zxE3#8ZDgd1IU=|R@UtlUS7lm^>^0drg*Kg8l4`nL{j{9BW|r7}>$5Q7kS-?bpf7Xz zubmJST~eVWdT*L%_QTaYeoN<At9_oqd2<b8HX;?K>`}Qg+d;0shEBq6uE_V8D9kf` z%a^tfSN-F)A7=VC8yhd!vK_jt+uV!cqq0=Dzyh-)YY@Z|xkDl`-?zN_1?7))0uj@< zg!YkgU;R2VzFD=pc{npyC1!HmoHc*oKl+)bDxommy2*^pT8)#!_D$Ln>1Hk~fABUl zkKC=7H23n`1TXEs+iPpj5q$Eit><`m7JJYxZJCF!ijh)}mF(x}k4^UBK5wk#bg%YR zkL(U^5myp%1nK)=;XXa-`317}H|l=Mwn2@9%-&4NZ&QDpctugz?7SXK3a<9_e)R^p z->9wclic?!)8C;M5(~oNWKCta+%~@~!84G%tY4=##r8Dp^bQT#6OEd_)H1l{zw-&S zCY{!uK8VV$M<ZQh?Re<_<xT~8?)>9@BbA-rhzz#6wa<tGRdG*(!x}aIMy_m{Y2JWk zSLvwnVZ3w^nFp0u^B2d4HnQeki`_7C?B|EWW%b>h=~rP3vmuFtTjN?w1@5?AD>>1D zsWgmAZ%R2?O9+Fv=btz~#$F1{jdRN0jY6-8DSt_axsP^yKmiF2;>Yp~7>>$0iY^SV z_!X(H8zhM+4bxtXmndC+v#);Br%dUnDbonYlegl2RF|)F&21=5rhXF-B$X;$vgg0U z8ssClu{(ZnOYJx&h~U0+fs{jHHq<Hlx!B5}A#GPNsdbPc@;y@$cLV?7)d|ukVR0+Y zy1LbmRLaN23`ZnpjO^1q)PqcRD>}YMCUVUVJKp0*+<!D|&QATl!C|^&Kl01(Fc0D( zewgkPZ-wcnYaQTcq3F%d;I|_4+sm0<{goTiEF-r&@{+9R{qft~SSo@LrXtR=oa_n9 zU)X8n(sHtNyy|;9>^hB{LD>V=%Pg{1O3vkOdJV}`ayL8^(Vp+84N!6h1zgH*u&>ck z8*_^7LhuX}Nc%l0FL;#<FI$n=x4&jjKih}#Iy4H4*VOhFqB`2}wgsB8lZHNxvdBak zZO@2p8Z9}=z5JO+5czHSMtb{RN&U<IpasP&_^3H$@l;?Tk&g!`oS3m1AFGs6X-2?* z$)cGH?{=^?@zjQDXA)Hyx%}sNInS}wf@fYug9x|oXOuMaTc5A-rd#qfK4wgnGnS6? zXp7rtSOjkQ0kI6+8Kq>*xI8WCMIVt?)!Rembfayg`AevPbby@}?rwt;$@4JVJi~V% zN;Mq{T1{u2G`S&a>f1~W?M_PZ=)RpInz}F@t~vdFCU@E<e_^p{)o9=J9S5`Bx#rO= z91+CIY<i+Ic@YJ0Av|mBN_DzjfGD>e?xQI3YmbAddcM%6GPQTU9iIJJ=(tu|xWlJ# zeFAA;@b%iuy2kv)P`mx?u@(snrM6D@unFHyXF{>Tm!?{jtqBG;a}#`?n%HDKbH3LK zifg%<KT9IXbj<jr{FGP)lnvA~jtmd_d+HI0>~=7+CZf}vNVl}B&@|ZJ$v5*|<Jyeh zn1k2hoe_@vB4&ios{_l>hGlXR5DLqN3M$QaC!?Mic>WlfO^C5E{P{~IrHb%z;d<4R zMb<R#T?3<l$?@+DJyh7zznip=K8{?~t)?IM6?q@h8lB(S-V2jK791>4eaGSahW?EX zgt)TRx0Fm|)<g({i8RD$$O=F*YxqrCe~2r~@y#<QYe`Hy`D%j`1+PmqFd0fOzfr&} zlR~)d+<8g<bHuG!=-H>9OwFpm*DkMBk4yV6@2Uoq*-N%)ldfeITe!)|S#my7$Cg<d z-GXI}G05x<5O>=?1mmoA2*5b}@hM^(IS~eU+D_wDC57rPAA@B3C1bp2A)k)a+-Lh= zwl#djd8-QX|6te7SERs%-RVyqR$%a*gmt{A*$Z)#8a>HV_(k-jbBMRSJ$WFWz<cW1 zF$>XcC+=OlALTrax)i^tTEDyKP@0k@ct17$D*R)fv@?0l=_b3aW3wP39o7x?4H<ca zM4<&^-&4&V-u*yE@t=uf@U6Y<hAk?=(Xyc7$lmUSw?>$3UM_qx$>Wtv%-?+Q6kF*r zns7E4N}qP_fWsKH-$~BYGvsLc_02rD?~R(=?sJ!YdFANVEVpY~8dX_HMM}7Meo%em zFgkyymEq&c$BsKUmK<^|sc=HaZ*P5?M6~r?i{OsAGjUvJZbn<mc{6&xF>iGMQ;!*J z{~)6|T#%&2bo=|ktGJoCN)S2URf24<EmJ1qOMZCYcysdd6OtzH@ji{UEgm8w^6A@4 zMwiqrGJbT!cX=~CC!oBQzN^OXPMo>jHidQ6XWYj)mTg3t2|=ar-)0(raH_X(rXfPO z@2;}=JA*mo_+aUl<|S!Ap0*{W<ivaE^cBgKiae-&$uGD<AUK!VE(HPUp}|QNJPe|k z$2$_XEXXlz5|{Cg6bgp9>iY+E!7`UcO4@fRD@^N~=7q6e(Qj9E@;JN~AL)5RsoO+& zM_YcI&B?58R5qF62lyk4GEdp__pM5Z_lNFIJXU4ziK9z}sbTFgB?|_ga`hWAB(L8U zK6hG3;9wN#Dy$?|JH(TSq#q&frU+mt*Q%A|kNirhtVX%Jol8YTMIs^-I#Za=x_Ye| zub}fwDKr96&@~o}mlmMdB+wX}>6coT=|v2*3HU&uJ)j5Kr<YtV*Byt-;j$_ts&^(= zN5o+d7A>5!4ph0_oNGMBakQHWB#RQ3o*PTw*I9g#p_PB5DSBhTcimuoKi(B5INU+6 z<wp^9?Qr^DFI{A+5394N)2DepDy~aUa4sQY%bSk;{8lGDNQV@|d@LG>;-79s`mhO6 zCQ)&SedN2o8;p%d$eeLx7boIdf{4RSD`}AyVfr-i%<0Or(&~U|$9n_27zjVi9e&eS z3q0?%u1ltba@r5Q=4nVFbrBel@Ed!iiiU}S2XWTCG#%hQ6j>ZP3z<v!K~ylX$v*c~ zl!v5{7JXnWzl^9YMYr78k60VC`et2feA8}yzj)V*uA}^ztdEeFc;u5Ndq)IAG0(SW z1=%;7!PbpdsiwmFJ21cB-$mC`l1E{hu`4T&Bv+VUEj60ub63y`o8D&h+VWky6&S-& zYODmFSx(}}h`&EKT%a|AK5thUJI6#GU~pMF`BIjft?a&AWDn1Ld!{s;Q=;T;Gjj0( zZ0fsWx@XET;j#;1WY_0j9i9?I5gkG;@Ozw5{^xG_D(3ZL@cX!@l`5ve?K1a|aG3hs zo94PXn>@5%^QmC&wro!L&|0UJ5nxdwoL^Hu8mxJL%zOv_#Q{_Mqu1?~DKAs=5^%f} zg(|z!<mk%B*1+^7cfKN8y(3#|Ct^mApKPBK3r0P2C5_;wVlb#9>^^7_5olZ)v8<k& zqr3?BL{CnW#e48sO~vSH?FQ51Kx);){ANEls)hVAH?biq%;@W^MqRnrhwi=utw#iY zVPx`b#NKA+n(z(o<mzC2_+X>%hfn{m@{9_DaU*@{qWEpQ$->Yd2CvzRYuJi)BV8vB zYM=d-9{nD96q6XH(vUq@fr(h<G4!_^P2s+qfK{C{ErxU5VBQO?`-#p#Bz+)4Q~52c zn+-j7%cp7MO@>U81VQM^L>q4pAAi8MrMhbUD`uza=eQU_SFaOvsuqg`Obuyfj<{~y z$N38;RtZ?4EtxK|UhcthQ!J~Yc5lP>-y@Nv8o~V?mBdG0Eyi4!BXbAw=@AblZs7OF zPMV@U*f^}$YDS|*EpN4~`Ru*fa*{7p_f;-=NHS40%^f?K<Qo#PY7tB~n!BXZ=M($( z+BK2dUvKWwSH2hfqU8}59a3+H1D$DxAOh6i2Y}{(*E3E03@qvV0hd>`*YFO|yH!=h z6b*MBI&OGw)XlN0j)`32K*;o7O?mcc6hbJ2_SGV(G*{VwZCTn-PMJeH`Cg^jq{)^K zSlCFoy2n;g+{|uArT*BcTY&PBD5t9u<v}6AK<bn{b_E;7Ji`lV*$PUX#jd1uBKAFs zaVuQ<n`X=RK4D`q-@pIy>UPaw#Lp&{wK+6TW$|6YUmNw(lx!vMKQkaUdh5i==4L7Q zHRUTTha;MKW#bJjS*};%RrP3A?Q-2t_pB07lX~IUF5@Dlaha9v#y5XK#k$(6w$&}6 zq_$D-TyW>y59pd959FZy=LFed{ioY4<f^x`dJn&qYP0eO(z@Xv3T5ASP%Lq_iEVhp zVV>7kP><OmI(Gev<;@uxM6n}LtG;a1eetIz<#9Y=6F<62=pyed^O>3^sgroTbK*K= z*A|99)VrG5yxKMxXrkDgemLMCB3+nQxE$B|Oc=8X_G;u-R%d1vtC}lS?&{Usitn!R ztnga8&&C>uL{TI#9eN8hetJWM)WK48wp!b(!W1eB(HmufJKQfFKSY%7V}UdK-h@{B zh*%11Q|DVocbg})=;llm{~YtEB&8h9DxnAedbeO|?mX43SvRVab<Ka+?5p$CugK6! zd?sO)g>wID%VbD27hb3;Ao}txqlSry=fIz3lc>V3WjN0Uko4J-`s?%JC$<c?vc}vP zZ*=3VcNTvYckiX3ax$WJ#F&qf!6f+E-OqP*nIP?5IWcd7nY}lN>ULx3uSu0x*-jDl zUQ%teb1eQyB;NYqd9x#0M42aMys+J<3aJTIFzrkH^_f?(cLIGam_?2CBhzNzKf5PO z&<6SbdrIFy+tlB`x=wK8)*E5_y&4JJiOF_4x|O-xHH*tK30(7}2(;sHxBM^lH^O#G zMbLKmjP6M;nj3O@tllh6xc9D~7EZ&`7`jc$6DTkn`6kOE=f1ug(~~~$O^F9sE4OPU zuQl5wQJ{z8%jrI%-h=5~e*9gdyo9%NtvW>?H%Jbdqc5vL*H^(MN}A!}vq{?gYd3i5 z^MKuP($rDiJ6C&Q`VPddiE`#DP7)*QZC=J<sPQ%IG_c*rFxD>Q6{w*5a=_P(L+akr zsP6E%N}opZ4Ko+q2l10z{N5p2q_VnGB^s;xKZ5-@b79xz49PSb=ZS?hQ@kPyO5RRc z^!eSK&Qnx)=(D4?AYTVcLsMkAC1UR6oO1~tw%I5kU;MmgB(@Ym_{0o*Qrwy<nZ{d^ zh}ZEd=8qdMywt)vdT?ZNc@y_&rmk#vh|JDq+_kY4aobd}3u}zH-9_!9vuCNNVmoDk z&f$az$L74G_4Nn>{DB*ubwr0O|F@V2{#a_6FB0JpFW!DFix1)^6WfuqnnT#3FJ*ca z(rPe&OnI-(<_w1kA!@PaKYYTmkd?RB;PN*i(X^ZQWuTM9(9&oSjeOCGuAu})uBBu= zU7xnn@byT&``YbAQ%+vqYFkVo-nZr>3ULNkM&fCq<R5xv!Xd?6aa;_28{F4?+R{j@ za@=|u0&`;tb6M|e=b*cXw7;3zHjkA^46$;C>?lzlkCox0IU;&hl=4P=JId76<lkp> zZ0U$o<*FY{e6+r_s>}?XznqRsN7Al?{;X}sNuMLVE0DqZmuUi#3*&NrBt!9~Ar-C2 z0upf-O+hT?Fzrd##ENqCYqgBj&y1HHrm>Qio>8ud4o=N*epnu33%XUn+r5^QX6otg zmqE{6D+$9t#!NxDi_9ceyq1!TzwL1>{UhsDSIl8tD_5_V!FstJD|se55w;DD$jx7) z_81XY*au;gC2e#AI|}hrYxx@4cfPp2o)s#t4w9d{df9pdV(wNg%W>U%yp&bx_DBZF z5b<uVU;H+5At_xnaY-tDuUp)LuE_Ysu9IR)Nh86Ix4!f|LejXL|Lf-w#T?;p6*zbD zhZ4Q*74h9DGF3hwb)}6=NuVv;lykdPiEe9&vZ{yllH0Ji=;jI9K&(Wk2_+P_eZGqZ z7isd&D9p$OfYAqhH;jMNT&j7IIA<O?x-c_X@66r}DJ0*hdDWFiIF7DuU1N|P{e%?= zAGy({dss_7h#-}v1ex(9hdYhk3(@rZ_k(IzCl;9)w(pp2XY9X17ybqpCm?yL!oe_1 zakG$XInvm$39q*6?ox5qGPZk$m1(rDHoaCBNo(hlH}rj9W(7Z&%2#2%`?)@Gxp%}Z zt1ts6RAXVhH~i7>$;?_><C3K6X*r<b4s;<k-qbS~)*?iq^&6D$t8zLSz#UGhyKTk! zCHY3|6fgCoE1g)rvOO2f$7*O&R-2-QL6q(a_9(%FUJL1UW4MMC9<9V1*{&#EQLyIB zcv|-OzGk^?2ixW3rhu!LnfD?-uuDz3iOAdy2qu_(SgwMw5pkGm#3y*YKJLf&>&>1= zjGnPZxqT7hE5`?j8I2SAQ-1lLVq^C}O~wf+;8PSlM`fKksluA|-KA9*Y{4O>Fiz)s zq!Ip2yWU0eIvbW3ys0+AaE>?AO&VG~W007FNsPHYIs103hV_W(4<B#;RO;p0We@&B z&Y`ecoMW6umcAh#Bt-uphIIegumHun2C2)h1`D412s3PnD)ndz{>|o^{?gW6C;LL< zo*VsRB+l18JtuCbJTISp{B&w=pmTQFTuNu`(Ccvp8AnNoBJ~Gv_pF4(@m6w0p`ca* zuyK>q*B-qMGmd5C&%VBo17jGQ@6nPt>a(nih$H$`TybW(9)1!a|F9-&HcdJGi{5Ch zJ%IY!JvPLAr~T-+(iM#UWObuo^-Zc$F`1&h6E}{TXUjC>+`?%veumzrTMHQ?%us}5 z@-$&=St=D5WtTo`7{1C8vd=ML`2)R<`Dx`dVtKxUp+~arG}LssE~0)c8r*WyuX0qp ztW-?MemKecO?=6^^h3Oh4Baa>#<T;{sdJ03NW)bCu|v+dhGXj!#zEtHKv$V`cgN)5 zGJ8Z%ui1;MR2B1hD_2z63w`k0_`ck&42mvDLSoKT7)*vz%0K=k^WsjKK=+o%>I4*e z#lNDte74d~1k5}MX;Kwfydy>T0{uajoN7kQn?%)!B0XP*>Te_K?>)^f|Evf|+W-Et z{!&c-6&l34pLHdl6wKs-=I<MF*c6Tiv+8m6Eu%}%6phC%-Cq`CSJS{aZTHLTJj4wI z$28<?-@O-PFkEy^V|*8O!|PRf-e-o96o~fCWxuJ2zWw9|HMK9pG#{A7O*tLzNS4w9 zdq~M<#|%^5gI5Yw&i;1~H?wVAo<66_wn}~Vg<IDRp}S7f8OH^CPLsARq-L+zUfSTK z#8x3-`r%rC>vxTxXxiIS`(M(2+j+}|ss^isSrO%UYK|U;;sv}6*>*5nAT{0ps*&`9 zepXDJ+z?6oq(Bf^=n_e)uV1CV*S%S^K|tBa@7r_Z%347|l(bbsinTg-Z03*T{e&7h z`VYC1g$P?xm5!S0WI^ow#1QEHt6SUCgZG#66QXbU4{+S8)>jZ23WHUIj0BAih%cz8 z+>0q34+!8(tYzPM;C)NJ4f3fwKdX?ceG$JuVDA&qk>WtH7{lzfj{?nbX#unN49}2P zo5)p!Hd-z;hcUS4vVq_R@5(rlb;Uu={m93~l*I_qgi2lm7Y)ZWdA4Kfc4FrNT(c2< zmQ??%yAK4%ZX`Vp`w`m`qApH#{2Q}`KzobUmh5dvvI&xqmgQ=2jfZ58Np+X!0ewE9 zB>Z(WkLF=7AMn?LP*Ao=FIm$!*79L5_k5MWmWD(Ie;$&&->nKJW8s;7{HYt;Ums~R zvyUGmqSl_XZ6M-GOfv$-zo29J#Y`6N8XMNHL`iLX8AjtMJ`6+f4awEyf~gk1lkbFw zWP==DDGX@eE48(+F=xFjwEdRANk6iia2$R)+)byxMoXAig4LjiTxvFX`P$AQebuu& zeQwjgK!OrGC0?&a-nufey`pbseA4~Msz?M1MNA@<{O4#2l6WmQ2yCd{ZoEoqL$}Cz zwfOS;tYCbYv(0^|md(B>OZckSic+^EY3aR1EZjjS5&`iSayP_wEjh3g*Qstzaf)m) zG7Bol!>?kmbeo}@vdi(1fA%u+(;6Je@_2(`juB*?^aTUi{*Z1!y#()y*}jMruthk! zW+9wSV_|q(rcqqGgmZSxz8{NUciQSc9>{MFnEc5Y65XW4E%$l8b3(UAi*oh*+z^Si zhi`okYteT?KWx*7k)v=~UlQb^`jTWxSEg$K<%niS!oo1cwWW^fRPJJ<p4bCq-;3cn z&jedE6JK~-;@jUpKCvP#k-u$|e{5{LlGQ_4<lV><YFU!P)oV*-3gBxR_1s-EArt~j zLs?~Z8Wxg?@mAHEUy1m<-IQ@;mLS_oVeV^Rf19Ipw{CRarnOk30~F#&X{&s%n)jiR zvi>t|S97gyw4@`_`GNffyM^Kq8^Yl`3>La~2=i5ayE#^n6fF|7;#A`^Ta5BfxE|&R zI?)uCnxXE2qa^xaaFn3{^@4AmuQgG=+R|64DQ3Y3c)j|04+yXy-~Y6bc7rUR9>N#- zrLmWckHn_nsL>FYz>C4GQ+u(t26~_WfQW;(VuY4aUCWP7lo;+`F?`GYyWIzi<}l_N z^#@#N%GOPt+G`JP&)zbrOvv-R*^TR)k9g-&O|PN|-+1IA_SrWz>6PuElLYnMB=3|k zou)pWLO!(X@auQk3TBFgb`eMRF{>i};x<d6*Ar*Lt}3s);a7J@T*iA*%yru)F>DuK z;u|ZOR@`#|b_K$RWvtkK-ER1hsbxn-;u0N+Jul&pzdu+oQxw6j&qtO~($C~)uQnjY z=*U2iNqyZRT|BjeQMsgV$K-zTX9X~MVYUcQ$e9t9VAiPh`Bcg}D}?GGe(1DKkAO(4 z^#*1n%8Y1)6#}Pv=x|39Vm}gT-*eZ(0$FMC5}2Cl8+;`h2_50)F&dp0`Kt4lZwx)3 zq1tFIM@}LyyHz(&ohDth2o#{2J8O)fQ{ehcSYT{gy)^ShJ3Qz(1F<Yf3-OFIZ$@}o z$vqJlj&#t+{(=E<wyF(KjO~Q|*4{T<k8WdPeYb_}cra>_(M}@&Yt;A~-A|FNw5Qps zZn+TeJ1)WO=^mr8(ft_8HEPGwu^kV}(H;!Gji(CY_yy^zFk~ig^_QTx{>3$bAR!q_ zy4MhHJROqC%~10L^L~0pZPs1l+BV`sd`ave&+X*K&8rPn%`F9;ZQ~sM)FWQO<(94w zS+f!|Rg=SM7XxNO95O<Qtzz?<uta#&r*c~Bh>Mo_8gw)V-Fw=bUK6FsNSKZCU)`7G z`2NUrPPcSg^oQu{xJz2yFny^`7sTbkN2v;{T%r=XYP4=S-QU*b<{a*F;D61^PvUDC zBP1R;S~rbpDq&4<)~SwkV1-F!RNxc6_%2xxf+umOY-6Qs=7x>5<ocb5+zTAE&;^bw zcv`}%owVSW<B;EGX{=7O8A`outf6rJCry?ub);{#M(B0o9;f|0Ueq$)Ts1|saH3%# zCs|Cf+z%PkbO~$s8+BOX9nCS7aR&3Q?8H<{z^Qhvv98j)1sKsC2IJV>V5`OOTe+-> zb{xC)`E5L!bwGrlO<3)37~!|D1*gO3y6;IJy>$Cd!-->4{`iwtdXiO=`fP-4I4^#F z!uS}yT#Qf&l#(Vz^2;Mn?MIB#h{Rngkxx4qO){lEb8=}tN~~CFzCH~4RI^HgRpeGw zj-TPQf#ykSIEMXGp@Fw-e=_=IeuBCYD*AP(O~yH{;ZJfC5ViV59qJ_e_cbMXJ=d1H zl=?Ld5Bq8FWq*w1sKMt(?H*Okl_r}@zPe2xrL$R{zo5;U(44GQpv5%B$VI#)5(?Rr zKg_?A+0qxGe9WcR%U;7q#BSPj*ZJ;N_V;f@c9L%`VCen#uXKNVmc6TS)xBqE4ZHBu zL$4r$aGb$0tFYqNd)8#PRs|GN_Pcw(k1wp=x*5j8(4%WLm-W1~zWz(67Uxwbkr$&8 z#;G4EN0%;rJZRP1<nX%bimCGO2+>3LCU(G^7|w1BGgr~i&17VasOMIH$n|(aC|!Tz z?wzJhjEB_S>K5OhvKRGWO}BDq<q)SvFMqPw&F)<s=VS9)hz*%i8V*LA3eyy7j(aR8 z*R6vi_$}(yp1rxmz|~cshEbE`hm#I5fya|0^YTtBL2`!1qh7q+M<vkK?UxAjDTRFG zwOch&7-5W!Oxc-eMbnV}Ys3dQdJm|rq>X~rKdN(Ykz9IVvIp1Hop9B&vG>knrhpIE z$0*?j!iW1P0<paaM{maN<f=a>pDixla#Wbf4)9`zGKi4IeXSO1w!$N(%JX5;NfV+a z@y(~}3~z{8k6=m2(O-Nz^q2{uU+cWjBO}(YHD(;1?k(-I!K>Jq?5UiJb#2P#+M2{v zp^#jQ-5bI%U$$Vzu`+2a+J?3wZ&JPz71!rxndxzjTWpX{IkJXD41VQA)i1HHwuZR1 zD{fa!afFgC+}rhh@!O&rm-dHcT#CV7?JraO_ifW^^^#f@UGm|qES|%8h#hyTtM@hT zi&Q!>cD~KDw11aYu~WljClTO&$-5OcmGc%Ow*J0g>;~3rEy9mKYB4^Gar3*+vQWoD z(+A&?Y~OXQoq2C0>gu34<LG_0${zc1osrY^3CXd3^s!IkfixUs3Ua0ti*I%`U(q?W zf_hZcdAYm&_mo}`Nteu<-XTIzzNbJha<rBcr0QsHjMT=Ek8dPM%}sM<d`$O^*k58+ zp}+KjoZ;6cEc)`ODe@G7;_>5W)kV&@NurGpok!OtS&^=7mD+>4g;7~TcA6wt$*eHy z-J?dK8D<2v@VY2s_0fjs>7=&YgxE$u6Z#mU^=wGuUAJuzS>HpsdmZ%=QO!n6JA;Wi zE1n6O?3?yQ>|XN4WvQ$gUvz?Zd<d3Yv(SKEYIqa#-+IJNgCEQ~StRx3x$K1YVIJrc zbx=iVakjqEAjmC2&v{-xYD1iGa3ycsRBY=lZ0ozX%23v?TBX#)r*eYtjnhI64g%X4 z3R5wk_1p_<Sf2Sd;wyqZih!EuSY}KfH#wjoe=6l%-ghijWY2O=^G>Y)xhw6ka;;>! ztZpMTwl!lF!Ef*kTpO49vP{>%TjuqL32SquXjQ2LP|-KNAr-84v5;zbK3xLm_lkWV zOh#?GhrK@5*25f|*FIME6ThFD$WrL_52U);*50inEF}4}&;j?Qz6e4<_JQ&8e9Pmp zpa6r%X}|S}7LCXwJZX#glCexn)_A0s4Sap^y~N+Gj7q$1V|e;GFooF7a0^}c@R@Cs zC5Sb)u(V8E`O>6S&75X;nWmZRJFm=D7R-fVg5*^86a)589S+yuzuakATU`(ny8TMe z@KNNAa=nVIOijPbk+H&$5DzaMr+uXuRQ1^rsBGDp#kOdZ+}7L?xtA4J6jr4C+Kka< zq(hasVUbv@QP^QOysA*~VEQJP>2&c*__~a%x2Oktk%<PD6BU16n5L@S-s>i;2W<8@ zWDn7?*q!UAQmI$khgaQ@Z$<fQYGN0cZ&T3~b@qhaEKTw=br`3uAVvHL6(SLw(u5;7 z@>N5l-;rzZvRpzl<)2ASVq+nkCk}2iY`>nrjyDrosx`G0%(m*_p|DrhtEp}?aGPq~ zn`TQj`*s@sJ>sXJ^0)^_GzymL8+<GU0TH?LO`~}HTMN&E!@eXOZC~GZKDIaHY-sc9 zPtzv!EAJn9m}BX$*{_PAmHnL-J$2+9&)Gie+2d@;M%!enujO~ZZIGghK82myn_SP= z*J6&#SLoyEsedn?>~_h78Yb!6=G(dHG8~}lJOa<v`PB@c+gn0B*AlO;`wPOf<vbmE zjv${XIKTlS>Jl3iEYlb-WPGMXLRy=1#!{Y#YS?wZ+KhY|QQsYpc>XgEy0>jZs!Uuj z>7S%ug+C%DZyZ{6gX_oVPReDqws*zHO<t{%cdgpj6c9@B3`R}Q@p*0$Lh}r<_Q}d# zYjWR5+oyQc)fqj2P1}+%O2%#se$qVB6TFz?1R0hsaN}BE^-vll9$UsVN{KUOxhL(= zSo+=SaSn+qlqX)lA5oW=xSP4ECXL1<A&{rvPL)fD>-IWdVwcPFWqbG)rdH+80lDP- zFm|2n8$TY4k|`S_@+6qbEQaZLpJuj;Vmush+^(!Gu=$DPFqg*lGy6#w)s_&Euvsqr zCL5`08klF1Xsd-xTdXs~`}vN5%&?2-4y>s>0xJBlr?Ak3FctCfgEenY;GHT)boCno zaeE%t)vc}xJXaI&5^~oK%rm*2x5<{KGbf&kmXX9VQC?b(l)H0K&OvV2Jl!1adxUgJ zup;xdsj~SErn<GpeBGgE-Zu8B&5uc}&yYlt{yI^qkUNJD<fst#Q<PD69--kYb;W`c z*P++C12s<WYsB*Mu(5DP&eDJ=kXaZYrb~J^b#AENNV+mvimNNACwNOxU(g__dGb2Q zDe2dwW|HQVB=Q#xh_SMCYMu?%@o{E?7ukdXYPbYkjR;)Gm{d#4h|I(UT|<Y0k&~Dp zp3|<+TL0WsC?*0-B1b;P1ko{_Qsb3X)dEBC1QlFeyyR>=tvu}Ayj(qi7S&J`3Pxl! z7U=S6Z|F04P{dF1Ajh#l3;;K%;S5OXOCWsGlit2(hNJEvCr7GX0+HSP+X_?J-Wur0 zesZNa&}seTj!EF(KV5*qf7&|!ZA=EV1VTx8rUA8Rk}D?#3MZ~23{OzQ!o$YJ3*h@t zr_EFJ;6H6CfG!LtS5^Y|zn=bkdWGe`_<)&znZ)G;1J^bFVeoV!&{Fa|0}v=2sfZ0y zM6%$3_(<WXyIg_GHZ?qKe3*b{;lKkj90w#y_y?|L<LAXB3P*O~fW(n%I3NOIkrT{- z=IuQ^fmcu@GZBae1VPf^g5acoU!I@?I=!RNrQibS{!BVS2Ny<8;Qm1;Dty8qp5W=5 zKU7a~pUwv^ptJx8!T*etb@c}H#ScO9-~sgh&OV`c+R_P`j|b5E7pn*qxsLaj9_&QM zKlJ{xdrI$bOQ;iiB7esHNAK!ofZpHPC-hFc&mn7o7es$woQNR|Mjl=MLl7B!8AQPQ zm(No|rxX7OCVZkLJi-46-NXlJUOL5B`wky)3v^(`u!%tI=x{Nl01-$Q_3TLm(n3Jb zX!T?v|G(2Y(5)SS{Jr*G&BECRuv;!US1W#PFAEPZZYHr4?_=Up^0ILj0CO{eg-<RB z{R<ERAg4<B3qg%J={}`(3ZWJNLr|a-UH=^fMM03J#2^SdR17I`1w>^IhM{1m2Kk4Y zFbZ;d9qS*62nuqt{C_dQ0mw<~s6XTcz@jL~8ERrE2omoKNC+J!grY`ge5%hsNFXRF z;Qx|_primUeFiM^?--O2r+)Akf)YaXUu{58B8Y;KRaZa)AQ%!%3ZgcHpo9=bT{8P0 zCX^7TPV^TON(j+^6%9cN@h5zoiVi^uanefQFCG+mVWbfWNDv(cLB^1P=n!DBe+fZR zLWrGM=pRB*ln`fD6pF$ET+{vk>_JgN{AojeN*an1;k4tK31E))&h}m?BRR1MD4@Fk zMiHF}IWQ=SDQW~tT(N&u2}Ox3_U|e}0dXNh|0)0qhzk+=moF4s!v6{b14y6VCJuzo z^K1b`PuYT95#m0}7VN~{5HLVH5TSn;9R_IU^!o6>Duw~tIlVLdKM24E1pM!!!vO7^ z-Ua^O7=SqB<nr%}jG?HWFh(i>6FJA2@E^ti^*~PU0{;&oN<AmHeg6kRspsTE@4pb# z8Ufvb|9>5YQR)GoY#4u3A&ipv<Raw%!52XERAD5*u(JviIps?jrJg@q+38SWlzL9C zK>m*llzL8XIsOlVQV-<cg%n1q2WVjY|E!`c<TUnOSV$DnQ)0yD)rCwT22mTLY)SZE zWGK%OIo$|PC!!oj<d0uCyLg{QvD2W)#B~BddBsT_1eiVnpqv7V1d#%{O9Lqg=-2bV zg5=3alvTq1n8OJGwGO~F_9w!f08ql6beH~%9L4cz;Qm7m#WC#9(w$5}aSS_A*{ME| znq(kW1PtXd=OeY7g`Ev5EdO=$lV_AXC!+z9CjgW@Ck+b!0#Izj|ByTxfnxilHOk)+ zs6`SwakoEfg4`hkkpj+q#x_niga64B%7`I<6mvqs9-#2oGEM;~2=tFfd)ioe*}J;% zoNO_F&E-EJN+1ZzRgu=@AYvHgB%1tdD<=q1Cj8$N=s8AF(U=T5Lk_}0-Usg31~DP0 z$w7u9|04M_7sUdXr?=(bN2tJgTo7aq1%TiN1&G=B+)zMme;4}<3V^r2-gyQNti8w| z>pcSpOaLy5WTpm@@t$f%04e}1+F8ED&dCTx@kNO=paS6|StvnV$RSGLv6m7=g9&I* z7`aIWqD<<g#sa!ABKs&o6xcvx0f0UPMTZFkXlI6GpaHR=3&Z{&Ptr?TED-!;CN|Kj z5#S1TGBxQTJr;6+3PeKzz<@RkC-&}TVd->YjbI3pi5es!b>h^2&EquXJWV*XfL!); z1AzST9>^c3f&5V)1lT^zh(XM%K$t&kawuZwaQ^Wg$f?sX0e6+3Fa-J2`4@8HzW`0x ziBF$|{!_;|Z_X$iJBRyEz61G_F+hY*LkZ;1UIaN^)_?8jKV$r>kF)%Xvi%PtrvVc3 zCz3&g;V9whkV7;ea>Pl-`Ijr8i~)9E$Z5&&Pw@je(|}aR-_3?eP}aiB!pYSRRX^AP zdEI~IgSxkulfBCc<YfN?^4yce5Arv+MU7W=wYCw|^|Vn(+S7vM$xegA8G>MB3oR%d z2Py<4cS2B6qy`;`_Wz$e=|FbqfNf3Cfdr_9#6(e<66%M^g$eKE7dT7^CWd6C2f-<X z#Kcf$aP~Dcg%R-B`}80#N?~Du&vS2qngH2K4-%skL6tk_Uc!MajFbU*DfB;Piip9G zR;ZWY|1ncU2#%~gd5KE)&Y^_?g$xEGF!RJ}&%YEBLu#X5ilFj?b1$Jl4f&K2BuWJX zqoUinw}62nw}Gh$Fv^wAy*!DUXJA4?VyF`GJPeh=o`C`T4$2eGz~E3JltrI`34w)B zaac%5<)7sNfT(Ts%s?<q6tyRufx#hS@bg53z+fQZ-e&@_BY=g!FhLaMLuZfx6HsaC zIoL_8I0FM}4OAg<1_p<q+OwR634tM}_|8fMMWruiCIhC6+9}V#0EDPq^bAZ03<cux zGBY3%9CaXZ<|Q0($BR0Jp`zcJaYDeZe105I@}Sc1Gvfe!s4h8YU_wB4cLF;rkuYi( zKQj;v2UhbO3~2QTbhkM>4)9v25b`q%h@JeR{@@TOa+V21DhWqr$Y<~i0g1zT{6ISh zR5(8~4i14J!OSQWs8s*VD<PmDI*%5pZ7$j>1dO}~pg<QDMZRMNv0(@SY~`{6d6_V> z4}epOUGQ!pVE+(92C@P95*$$Nd7<Gz32}Y};6TZCUWr0bIBGvS%QaLKRezm@0Ws`6 z4I$WxEhFXGK|}~BYTGzBMfjq1!9*_j8qnSOLU;lK=0!sjK1nan(h!E6Djo5!Lks^8 zixd_CI`*7nP#At8^a%-zq0XMp5)lES`UTj@KJ?!>fIjd8^mV#88R&j`VKT5KT!4w9 zDo@nUe;bDo9AM`H?4+_eH%<hoh|dp%!Y)bz5kVczotq3roh+S$!A|4kKg_^^%He`= za8&0j)KuVP;_r4R1i!e835mi`XLe_ah{AxQs5MRy8v+i$;K@Rw&<mah1nP?m1_b2` zqKgWn5~4HIz$Z@^U?<jyTD<?*2LmDXg4+X*d_H!80S~-L1d3|BbwcW|I)ET`LBC+3 zGx|ME69Ax?Fw%}2&<7A^&O0ht2#z{_I*S@OT)4m%1V~fPj{_2-3v+?^ae)S~J)@SG z9ia06`T!EY^9Brth`_-}Z4|43k6(}&Dt2Mt14BeFEFDl!UStafy%30jBJ#o#19jwy zC7)e77z|Y&p4AZ$3ohsgb}<+LLHU0$criEvnE~q1?=Ov0zX!HERGt49c=8KyXni3g z0P6J%krga_QX8I~3+z}I1QCH<q#*)S>=zaX2(jm*3s~gh76F_%Uet_;*o80&oI_sJ z43IdSSQ#My|62;M5&ff@zgoD!H5@p-yI?b7!WRhxZhU^v0mGqZ_PP_d29ilsadK9L zq5wA+V4`B8$Ot|Va1zS~B0=`^0p}ityg;=t2E7m$fdj>h#w2!eX93QuF03hVpocmZ zJIj!m$OXp)PW4Wl@Qf7$zzcyEIKR8#gun^jg>?pCXVin@065pXkjMcr)XC>x22ZUR zIPODLTYrHkzW@h*sKbr(Fw{BkIT!?0o1TL~FJyPXc^~TN``kDLkjtD0Lf{t>0?p7a zi~|nEE-(XuqIwpdB?5ftIqy=y0p4kO@vjvFzzZ8OaISY@BL+_PE@}oMa#1rtU)l2k z2m*zjiI6Ay2THAr>W5w28Bv+od4w<__=O!q1o#|xUNa(q)1TK291K4BbaF;raNtbr z{JI0M3+e{~<OMCjfz>=u7+A~;%LE7Z|5F->{|_Q?82m!A1!NhhuOnv}1j6QdLxKZ2 z??o8wLe&Nr7CCEMDE-5M(&itRIH3j?{vU(^y`DEhU~5Ko<2=hCa8_^u9}tBv!o)-o z7l1&FJnv3$R7HE92%!J-Rt<*(s<|*u1PIjU7zDWf!!+W*7!FiO|JDdz9v1daHXe8q z5=?^H_5n6bfYIX#YPq@s-)K+IS@8swTx?x|C%~*wUrv>P=716qQ6S-vk(Cvd2b$@D zWv|P_WW+?};MawO<lrJeB`3vnc8K8r8e_r)e7*BTeVp_2u(8F1iwcQ~;jy#Jt1ICB EAK!40x&QzG delta 36207 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 Y^110{XHNp;%MdXVUS35lB@oH~16P=NjsO4v diff --git a/Doc/Design/MIS/MIS.tex b/Doc/Design/MIS/MIS.tex index 0662415..20d3729 100644 --- a/Doc/Design/MIS/MIS.tex +++ b/Doc/Design/MIS/MIS.tex @@ -32,9 +32,9 @@ \title{SE 3XA3: MIS\\Gifitti} \author{Team \#2, Gifitti - \\ Riley McGee, mcgeer \\ Pavle Arezina, arezinp \\ Nicolai Kozel, kozeln + \\ Riley McGee, mcgeer } \date{\today} @@ -55,9 +55,9 @@ \begin{tabularx}{\textwidth}{p{3cm}p{2cm}X} \toprule {\bf Date} & {\bf Version} & {\bf Notes}\\ \midrule -November 12th 2016 & 1.0 & Initial creation of document\\ -November 13th 2016 & 1.1 & Spellcheck and formatting\\ -... & ... & ... \\ +November 12th 2016 & 1.0 & Initial creation of document \\ +November 13th 2016 & 1.1 & Spellcheck and formatting \\ +November 30th 2016 & 2.0 & Updated to reflect the release of Gifitti. \\ \bottomrule \end{tabularx} \end{table} @@ -67,8 +67,8 @@ November 13th 2016 & 1.1 & Spellcheck and formatting\\ \pagenumbering{arabic} \section{Introduction} -This document describes the internal workings of each module implemented as a part of Gifitti. Described are the methods, input/output, as well as any -environment and state variables that the module uses. This document will continue to be updated as more methods and functionalities are added to each module. +Gifitti is a software solution for allowing users with a varying knowledge base on image manipulation, as well as technical experience with computers to be able to load, decompose, and modify GIF images. \\ +This document describes the internal workings of each module implemented as a part of Gifitti. Described are the methods, input/output, as well as any environment and state variables that the module uses. The MIS will continue to be updated as more methods and features are added to each module. \section{Module Declarations} This section simply lists the modules used by Gifitti. More details on these modules (and how they interact) can be found in the MG document. @@ -92,86 +92,145 @@ Since the hardware hiding module is implemented through the OS and is not actual This module serves as a communication layer between the hardware-hiding module and the software decision module. This module covers M4.M5, and M8. Again, this module is not actually coded so there is nothing to add to the MIS. \subsection{Software Decision Module} This module includes any data structures and algorithms used in the system that do not provide direct interaction with the user. This module covers M7, and M6. Again, ths module is not actually coded so there is nothing to add to the MIS. + \subsection{Image Loading Module} This module allows for the conversion of system paths to images in a usable form within the software. \subsubsection{Variables} \begin{enumerate} -\item Filepath (Input) -\item Image (Output) + \item Filepath (Input) + \item originalImage (Output) + \item gifImage (Output) + \item numberOfFrames (Output) + \item frames[] (Output) \end{enumerate} \subsubsection{Methods} \begin{enumerate} -\item GetFilePath(OpenFileDialog o)\\This method uses an open file dialog menu within C\# in order to allow the user to select a file (path). This file path is then stored within the FilePath variable. -\item LoadImage(string FilePath) \\This method takes as input the filepath and converts it to an image file type using M4. This image is saved in the Image variable. + \item LoadImage(string FilePath) \\This method takes as input the filepath and converts + it to an image file type using M4. This image is saved in the Image variable. + \item frameConstruction(Image img) \\Decomposes GIF into its frames. \end{enumerate} + \subsection{Image Processing Module} This module converts the input images into a system usable form. -\subsubsection{Variables} -\begin{enumerate} -\item Image (Input) -\end{enumerate} -\subsubsection{Methods} -\begin{enumerate} -\item ConvertTo(FileType ft, Image f)\\This method will take as input a filetype and an image and convert the image to the file type requested. This result is then returned. -\item GetFileType(Image f)\\This method will return the file type of the image passed as input. -\end{enumerate} +Implementation is handled by the ImageMagick.NET API. + \subsection{Image Conversion Module} This module converts the GIF from a GIF Model (M8) to an image exportable by the system (GIF, TIFF, JPEG, PNG, BMP). \subsubsection{Variables} \begin{enumerate} -\item allowedFileTypes[] -\item curLoadedGIF (Input) -\item outputImage (Output) + \item allowedFileTypes[] (Static) + \item exportFileType (Input) + \item curLoadedGIF (Input) + \item startFrame (Input) + \item endFrame (Input) + \item delay (Input) + \item filePath (Input) + \item outputImage (Output) \end{enumerate} \subsubsection{Methods} \begin{enumerate} -\item exportGIF(FileType ft) \\ This will be a public method which will call ConvertTo and return the result of that (if ft is in allowedFileTypes[]). -\item ConvertTo(FileType ft)\\This method will take as input a file type and convert curLoadedGIF to that file type. This result is then returned. -\item GetFileType()\\This method will return the file type of the curLoadedGIF. + \item exportGIF(string filePath)\\ + This handles exporting the currently represented GIF. + \item ConvertTo(string filePath, FileType ft)\\ + Export of all GIF frames as type ft to path filePath. \end{enumerate} + \subsection{GIF Transformation Module} This module handles frame by frame manipulation of the GIF Models (M8) in order to complete operations such as resizing and modifyng the speed, etc. All the methods and variables of this module are listed below. \subsubsection{Variables} \begin{enumerate} -\item curLoadedGIF (Input) + \item curLoadedGIF (Input) + \item modifiedGIF (Output) \end{enumerate} \subsubsection{Methods} \begin{enumerate} -\item Reset()\\This method will reset the curLoadedGIF to its original state when loaded into the program. -\item Resize(int x, int y)\\This method will resize the GIF to the size passed as parameters. -\item AddFrame(Frame[] f)\\This method will add to the GIF the frames passed as parameters. -\item RemoveFrame(Frame[] f)\\This method will remove from the GIF the frames passed as parameters. -\item Rotate(int x)\\This method will rotate the GIF by the input value in degrees. -\item ChangeSpeed(int x)\\This method will alter the speed of the GIF by the value passed as a parameter. + \item Resize(int x, int y)\\ + This method will resize the GIF to the size passed as parameters. + \item ChangeSpeed(int newDelay)\\ + This method will alter the speed of the GIF by the value passed as a parameter. + This is information hidden, it is meant to extend more for future releases. \end{enumerate} + \subsection{GIF Model Module} This module represents a GIF object within the system. It contains methods and properties that allow the system to properly manipulate the GIF. \subsubsection{Variables} \begin{enumerate} -\item Frames[] -\item Speed -\item FileType -\item FilePath (Input) + \item Frames[] + \item delay + \item startFrame + \item endFrame \end{enumerate} \subsubsection{Methods} \begin{enumerate} -\item GetFrames()\\This method will return the GIF as an array of frames. -\item Play()\\This method will play the GIF by looping through the frames array. -\item Stop()\\This method will stop all playback of the GIF. -\item GetFilePath\\This method will return the filepath(name) as a string. + \item GetNextFrame()\\ + Returns the next frame to be handled by the controller based on Model state. + \item GetFrame(int index, [bool isResize]) \\ + Fetches frame number index (index is an element of [0, numberOfFrames - 1]), + if isResize return a clone, else return a reference to the image. + \item Dispose()\\ + Memory management and system cleaning. \end{enumerate} + \subsection{View-Model Module} -This module links views to the ViewModels using C\# partial class declarations to separate view-model, and view aspects of the system. +The View-Model Module handles all View elements created by C\# WinForms, as well as their static link to the model representation of a view. These links are referred to as View-Models. View-Models and Views are not abstracted into separate modules due to how the implementation occurs in the C\# coding paradigm. Views (called Forms), are linked to their View-Model via partial classes, this keeps coupling high between the View-Models and Views, but low coupling to the Model. \subsubsection{Variables} \begin{enumerate} -\item curView -\item views[] + \item MainForm + \item HelpContextForm + \item SaveAsXbyYForm + \item GifModel (input) \end{enumerate} \subsubsection{Methods} \begin{enumerate} -\item getView()\\This method will return the current view. -\item changeView(View v)\\This method will change the view to the input view v. + \item MenuOpenHelp()\\ + Show the HelpContextForm. + \item MenuItemResize()\\ + Show the SaveAsXbyYForm. + \item StartStopClickEvent() \\ + Toggles between play and stop for GIFs. + \item MenuOpenFile()\\ + Launches a OpenFileDialog prompting the user to open a GIF, the opened GIF is then loaded as a GifModel. + \item MenuItemFileSaveAs()\\ + Launches a SaveFileDialog prompting the user for a path to save the loaded GIF to a location. + \item StopFrameTextChanged()\\ + Validation and Verification of the text box representing endFrame. + \item StartFrameTextChanged()\\ + Validation and Verification of the text box representing startFrame. + \item GifFPSSliderUpdate()\\ + Updates delay of the GIF via slider position. + \item AdvanceFrameTimer()\\ + System interupt to draw the next frame, modeling the GIF. + \item exportFrames(ImageFormat format)\\ + Exports the GIF as a bundle of Images representing each frame from startFrame to endFrame, exported image will be of type Format. + \item MenuItemExportTIFF()\\ + Exports the GIF frames as TIFF file type + \item MenuItemExportPNG()\\ + Exports the GIF frames as PNG file type + \item MenuItemExportJPEG()\\ + Exports the GIF frames as JPEG file type + \item MenuItemExportBMP()\\ + Exports the GIF frames as BMP file type + \item chkImage()\\ + Validates the Image loaded is legal. + \item openingGIFLinkClicked()\\ + Displays information about opening GIFs in the help context. + \item savingGIFLinkClicked()\\ + Displays information about saving GIFs in the help context. + \item savingImageLinkClicked()\\ + Displays information about saving GIFs as other image types in the help context. + \item pickFramesLinkClicked()\\ + Displays information about selecting sub GIFs the help context. + \item playbackSpeedLinkClicked()\\ + Displays information about modifying GIF playback speed in the help context. + \item resizeLinkClicked()\\ + Displays information about resizing GIFs in the help context. + \item SaveAsButtonClick()\\ + Utilized in the SaveAsXbyYForm, Prompts the user for a file path for a resized GIF. + \item widthChanged()\\ + Validation and Verification on the width text box in the SaveAsXbtYForm + \item heightChanged()\\ + Validation and Verification on the height text box in the SaveAsXbtYForm \end{enumerate} \end{document} \ No newline at end of file diff --git a/src/Gifitti/Gifitti/Models/GifModel.cs b/src/Gifitti/Gifitti/Models/GifModel.cs index 68aedb7..2050548 100644 --- a/src/Gifitti/Gifitti/Models/GifModel.cs +++ b/src/Gifitti/Gifitti/Models/GifModel.cs @@ -159,36 +159,6 @@ namespace Gifitti.Models } #endregion - #region Sub GIF Handling - /// <summary> - /// Fetches a sub gif over frames start -> stop - /// </summary> - /// <param name="start">Initial Frame.</param> - /// <param name="stop">End Frame.</param> - public void returnSubGif(int start, int stop) - { - using (MagickImageCollection collection = new MagickImageCollection()) - { - // Add first image and set the animation delay to 100ms - for (int i = start; i < stop; i++) - { - collection.Add(new ImageMagick.MagickImage(frames[i] as Bitmap)); - collection[i - this.startFrame].AnimationDelay = this.delay/10; - } - // Optionally reduce colors - QuantizeSettings settings = new QuantizeSettings(); - settings.Colors = 256; - collection.Quantize(settings); - - // Optionally optimize the images (images should have the same size). - collection.Optimize(); - - // Save gif - collection.Write("temp.gif"); - } - } - #endregion - #region Fetch frames /// <summary> /// Fetches the GIFs next viewable frame -- GitLab