From b1e84f5229b2ea782e541354a23aa12d9e22f27c Mon Sep 17 00:00:00 2001 From: divine-mercyx Date: Mon, 27 Apr 2026 17:32:48 +0100 Subject: [PATCH] feat(delivery_contract): implement on-chain driver reputation score tracker Closes #28 - Defined DriverProfile struct in shared_types. - Implemented get_driver_profile read-only query. - Incremented deliveries_completed and reputation_score on successful confirm_delivery. - Added logic to start new drivers with a score of 0. - Stored profiles in persistent storage keyed by driver address. - Created unit tests covering single and multiple delivery score accumulation. --- contracts/delivery_contract/lib.rs | 35 ++++++++++++++++++++++ contracts/delivery_contract/test.rs | 45 ++++++++++++++++++++++++++++ contracts/shared_types/lib.rs | 10 +++++++ tests_passing.png | Bin 0 -> 65103 bytes 4 files changed, 90 insertions(+) create mode 100644 tests_passing.png diff --git a/contracts/delivery_contract/lib.rs b/contracts/delivery_contract/lib.rs index 146d97d..7446829 100644 --- a/contracts/delivery_contract/lib.rs +++ b/contracts/delivery_contract/lib.rs @@ -3,6 +3,7 @@ use soroban_sdk::{ contract, contracterror, contractimpl, contracttype, panic_with_error, Address, Env, Symbol, }; +use shared_types::DriverProfile; pub type DeliveryId = u64; @@ -43,6 +44,7 @@ pub enum DataKey { DeliveryCounter, Admin, EscrowContract, + DriverProfile(Address), } #[contracterror] @@ -283,6 +285,26 @@ impl DeliveryContract { env.storage().persistent().set(&key, &delivery); env.storage().persistent().extend_ttl(&key, 518400, 518400); + if let Some(driver_addr) = &delivery.driver { + let driver_key = DataKey::DriverProfile(driver_addr.clone()); + let mut profile: DriverProfile = env + .storage() + .persistent() + .get(&driver_key) + .unwrap_or_else(|| DriverProfile { + address: driver_addr.clone(), + deliveries_completed: 0, + reputation_score: 0, + registered_at: env.ledger().timestamp(), + }); + + profile.deliveries_completed += 1; + profile.reputation_score += 1; + + env.storage().persistent().set(&driver_key, &profile); + env.storage().persistent().extend_ttl(&driver_key, 518400, 518400); + } + env.events().publish( (soroban_sdk::Symbol::new(&env, "delivery_confirmed"),), (delivery_id, recipient), @@ -345,6 +367,19 @@ impl DeliveryContract { false } } + + pub fn get_driver_profile(env: Env, driver: Address) -> DriverProfile { + let driver_key = DataKey::DriverProfile(driver.clone()); + env.storage() + .persistent() + .get(&driver_key) + .unwrap_or_else(|| DriverProfile { + address: driver, + deliveries_completed: 0, + reputation_score: 0, + registered_at: env.ledger().timestamp(), + }) + } } #[cfg(test)] diff --git a/contracts/delivery_contract/test.rs b/contracts/delivery_contract/test.rs index ebfc385..8bbbc3f 100644 --- a/contracts/delivery_contract/test.rs +++ b/contracts/delivery_contract/test.rs @@ -649,3 +649,48 @@ fn test_raise_dispute_emits_event() { let topic0: Symbol = Symbol::try_from_val(&env, &last_event.1.get(0).unwrap()).unwrap(); assert_eq!(topic0, Symbol::new(&env, "delivery_disputed")); } + +// ── Driver Profile Reputation Tests ───────────────────────────────────────── + +#[test] +fn test_driver_profile_starts_empty() { + let (env, client, _, driver, _) = setup_test(); + + let profile = client.get_driver_profile(&driver); + assert_eq!(profile.address, driver); + assert_eq!(profile.deliveries_completed, 0); + assert_eq!(profile.reputation_score, 0); +} + +#[test] +fn test_driver_profile_increments_on_delivery() { + let (env, client, admin, driver, _) = setup_test(); + let sender = Address::generate(&env); + let recipient = Address::generate(&env); + + // First delivery + let metadata = DeliveryMetadata { + recipient: recipient.clone(), + }; + let delivery_id = client.create_delivery(&sender, &metadata); + client.assign_driver(&admin, &delivery_id, &driver); + client.mark_in_transit(&driver, &delivery_id); + client.confirm_delivery(&recipient, &delivery_id); + + let profile1 = client.get_driver_profile(&driver); + assert_eq!(profile1.deliveries_completed, 1); + assert_eq!(profile1.reputation_score, 1); + + // Second delivery + let metadata2 = DeliveryMetadata { + recipient: recipient.clone(), + }; + let delivery_id2 = client.create_delivery(&sender, &metadata2); + client.assign_driver(&admin, &delivery_id2, &driver); + client.mark_in_transit(&driver, &delivery_id2); + client.confirm_delivery(&recipient, &delivery_id2); + + let profile2 = client.get_driver_profile(&driver); + assert_eq!(profile2.deliveries_completed, 2); + assert_eq!(profile2.reputation_score, 2); +} diff --git a/contracts/shared_types/lib.rs b/contracts/shared_types/lib.rs index eb9c0e4..7557a91 100644 --- a/contracts/shared_types/lib.rs +++ b/contracts/shared_types/lib.rs @@ -62,3 +62,13 @@ pub struct EscrowRecord { pub amount: i128, pub status: EscrowStatus, } + +#[contracttype] +#[derive(Clone, Debug, Eq, PartialEq)] +pub struct DriverProfile { + pub address: Address, + pub deliveries_completed: u32, + pub reputation_score: u32, + pub registered_at: u64, +} + diff --git a/tests_passing.png b/tests_passing.png new file mode 100644 index 0000000000000000000000000000000000000000..cf0599f95f4faacda3897cba0f0b84ca3307ebfe GIT binary patch literal 65103 zcmdSBc{J5)8$Ya)WXL>=P?UKlL?I+oMTs(pWQa@|D|1MaG9;OYOo`@XOHx~|V~-C=q<>Xc-xWJE+nl!r7_ zj}j4W+CfCLVV-m&en*pgK!k{Bjq#A`0e#OqU#q=O9XnCEUZebmDE|5mwR`-bGJ5m} z;^_4PWT-Rf^|Y#+ETaO3bRQgdl)L)qhs#W-_>!BPY{n^9l5N)Zv6hpeGG=;1?+O_o z91q-WN6FQ$N=iXpP@}Z?{cDU$@rfJS#3gMjRHo*WrElj>wt2nnec@|N!Nb> zjw*bZ@%N82k2a7C{{B&7)Bk5bS=Mh9;NluynE3rkp68a_PS;sH?4b>_`urw`r%3wO z?+>t2h!n+XeF~;z>wNv%*T-kucDawk!(zn6zyI05DP|oVohA0^n)S8fGcS%FJu25Pnwix)5M+qaK>8=tuN(H+$1W!ZD|6JlcK zzV=8Ix8OtGzkhG?#OIKeUXH$)n3y1=fSjDs4(gIekNm#(dssa1Tv?pd*48HF;*F{B z`{|XUXY1e~6ssvAAz@nOc_8EIt5?GN_WAA~3E}ixD)j#uzO&dHYt_s3iNz6Gbkrl)^$0adGiId(J++ zw!ON#+UmfG6DKN8-HnUO*5?nSkJgZM`~0S{u@Otr*r@6tAaJ7KRFPR-N18et8=H(n z@6DSxOD>G*O!k%>;g98x4sErzv9X!%fBgMf3}3JMrcIjy0s>xlcKWR?+c-H*?btE&zTyJOxlM!(8ai=p*f_AOtE=Ycq!TtEve0#Q zq$y1;QqK2B$L$D#Fjz)j#Wl$lcxD>G*Ws2xlL^U$gq{ zu!~!hndmJcV|V=XA3uI%W@d&niP+g}BO|MH8GRnZr)y+v+;(^0IUAd?iHWmS8V+ys zPR1lBi^OV5v1*?@dD6ilKRKCGIkas|Mn*=-f9+IS$NL)pWW&=Ne#Oy{n9t_>MMdZ5 z$2+j?i;Ig}s5n-q9#216U-R~%;p5AytgOVkZJ59xvB@~PUbyh^!2@$qW>T)hhYwFu zh{xw;WreK9ycjh)d9vDP`G$ffhlO~&k7BaIo8I2u_wTBo zp)x~2-Srovq$%laSp#|A+S=OT+rn6(vx853 z*H_1sJf_~qCnWr6pi*iVW#r@(iFvm8wI}UpPF{Zg!-o&UHdBTzekS9R9NNu65+D}W zrR(A%?i{bpR&k1hjSV07K3>9RYM^>$pxT>H_inlaAsG=}GTqASlX=>VAa#>aO!@#w^fURHS1*Vp&v zjVi~;dD&CKCsOo=1a>l>XJlNz-(^=?nUQg(IfBJ2+||`pUtizK#wIH(Yh`))?CmaN zwqMJCX}GBlM~0c2+U(r97iOZFI!OqS`KM8wAHwMw7#8N|?fV|JzIt`7VOS8$@MC_0 zHBv1{|5dV5a+Ag0y?Y(r71iCFz%nJuI0c7<=*Eefzb|)ANlEEdFEp*;U}sl2^PGNL z2oGa8zQCC?yPhaVs?B}w5FxgZ?Her}9TmH*-s#iY^gTu9 z4LA23+s3JwcbY1^>1tTm@}!gh{p0sVOrNYetuHzuF!^K2etzFl8S1o~I{B>U+G@oC z^NpAH3o_0v`;e29Pf`iw89v~am5oD`OG;t|(r}`(vYs|KTel`iZM=M`$)fA++fN@q z+A3`c&Y}Fh>k`3ChC8=z-O8tP$1~qA@QRpFb96()a$_9G>`SKc{oA?(D_a z5fBzuBR#09ifyd@OsHx^muRkSJy8@KgrHGZQxi6+imNk2Am814Au~VUq5R+<=Zksb zk3w=uX4_KZulFUo6n}a1?~-#V{^B_%!@GCyR#a5@``#;SHG_<6#B<%?7Z;lWy)!#$xG}71zRp1u()-|Gn>f}Sw>4!Q|`hiEj6{~ znxB0&kt`C{En4aa58@d{*o-cT74_JMsfr_c4l`N^($LWOFTXHdTP&-YL?-_F?g7c1 zMEuLm7Zmavn#hr0c zO;p9CqAsMQq@fWJt8>Zg>_`A!^W){^vH=Gb6cnnes~;8@o7`vEh%}DSo{YI8&Beuq z+N0v@TRp4!GW5{f!OUnW;(CgNc6UF0{hNu2ebGGXscC67%byajU%!69=s{VTKSD8@ zbHCsAxrZkewEBds&3Ee>t2EE($TqyXF6FOL6Tra2viw4%=8mFo!qQx4#^H~Dt)SXI zw|+K-GaF?(gqcyXKI~?d-K%>^awRh)U|7jq{JvN zgTCLB3KKFDTaV89SP*x4yA zCx@hxg%7=Vk7$}&UjFg?yz7XErY6~Jz>@yYcMmLIzkVGP6LZeaE_8moyu0DalS#79 zS8~-!=gAr#A7oNje~Q}XH{YS|QgKJ)kdDr+XI7|Y2M!!)YHIpEJ*ZBawD-cN#xOcz zVPVy5y;)R*xJrk;lmf)$jDqFf-wOr`%bjKKT)ITm*+%T8qC72nfOJ@$%s@l$WEL4i zuKAS-`j=*n6v9nvRlS64l$kNqBlyZl59i-@>f5t}Hc zX2H_derlO*MCW{A;AIm?`K5t@T zqN^KqKp@njzQZ{2VxNZFD{)J<$h|2Pwu+gd1938YDud_AZe?YS;dsw;7*)88UfE23 zjbk4x9o_49@8WLWY_t-mQLb5Tb$Wsa>nn3|dS5QKYga~bvH0%Yp@OBh9jV4;jt37O zG|<;?eEQVb$cQ_TL(yk9ZP?mOh!V31#j(c0!S$*B$48DF866!(@(tt>O+-{wbl0vkU*6`gFFjS-xN#$e(a93qBfh@ANJUtdWJO=iAAyZsU9r!s zczJoRs&aE5{j-yLWZ!dCPw#qM-1yMYek+qQ$E1f3FZlSZ@+JGwGBbysxUbKDkh=qQ zF_gOZu}7iCPGrT#9Y=EX4GavdVo;O!@7TR(57*k8J|1Rs&$4mu+b_O+{=B-n8mhFH z{Z-z{htHos7Zemk`n;=fQ8~TFb2jzyWAEOQvrD~NXGD*q)xE3eoBO@}+vtlk;yn!^ zRHbwa!Ngsn2j1{(rlZw=o1+|L7pLb&mPwi!NwWFN73Xlh-FeyBp;xc+3kgL=McF*; zS$d?GqpTM3bOW;l%~|;xyijiX`;+R-C|ZsmJ0>x7oHV(u?7@Sa{QQjKZ_8uJ;i{=O zZrteXJZiB@dqP)Cg-t@~SjFZKbgUe2$(x1Z9&UQ_(A7qV)v-=BX+YXS%PjDSRA7_E zcG>gy($XxyPxa$)Q&LhQ+LwZ_k8it}+xv1rt)C>JEVB8I9*HF9vA_ZSd;QHR#%5yi zTE@o48Ao%z+v@4H#|oUl8g%yddM$oEDK9UttE(HRXKb8!O8B;BMr33pp~XCXI%#q4 zk(87aP{QQok~OuZf0X6<2<4|dDO1-2eRQC z_lX3lbKmCX@R(|8djtgT=jZRz@y6RfyRmEY=FMb5$|-uM%FmmND(=~{XZHJdzDMPY zv$GQu6I^^daye3HgFV7cu*oeKD)#TNJ$v@z>e7SK(uM3JY3PQ-=FtzmeS4gZEwN7W z7*p@@yk9S*P*qud{c;Z^GZoAJ4SJKG$Z2qDY)t)CFBY#+Ztdsy z!FBvDwK5upW4r0Sc&>6REwgkar9~8yZHhG(wb@c7+8-YiY%F?2JuOndKAW}Jb9UrN znp%>guThSEZrA7gCko%beamX8JRPWFkl53g-92Y*pH@eA)p1Vj;JEhYUI+Hi`7ZMV z+~$NPdmW8wV={7VYisMaZQB3?zD!N2k-DJ_&d=`%^z!m5;S}8&KEJrgPfr%G{yO7; zr6td7T6OhyE-MFzNa_)n3UuD-3mfG3e;Iw1B#*wa(f?uY{rf;`C8txmuL6-YN3!+5 ze{XMZAG%&0%@nBdIMA3B|L3V-g8$mv3q~i`nNfQboo5Y(bW$L2!GmagHPoC@n+C;`1b*VrQ0hRjuD=pXb6%~o5=#_g+57bFs zzk0x^qpt)F#p3)tb+>m(2j$jWbLG_>k90Ey-7`rh+2fP+0U54+wt7Xvo@Li99~KrC z0)q_<+zsX*(GB>}q3@bx3PfyRu#1`$9bl5J?%2tzvGccUj6gZR zLU?T?38))B|Hf`%hf&U!-s5t=UY-hfr&7?;poK@QY}4pwquo?XK{v_mweQd6)+>$H zocYw62<&`ll`%|Jzsusih1TP2eHQkp%+#_krqx~shJ;tk*xa#W$A13&86F;vtjtUi zj542=_M!A#w>2UZ-6Y!oIz!G&b<6Ps>}PxoNc(Ck9XnQP??)${S^fNc>Gj)7*%H>P zpHl_wZBt)qkPNC--<7dsqr9uG)6>Zc7mMqDblJHbKKvqrMZ%S;w4}t<-Tj7B2J6Lh0i^WR za`=8@t%*$Z^l#eR_bbK(?)D<)p@<)6+&B_^bN>$TD2?&ug@w~S4{bhP;0ITerXKZ{ z(VCIOGNZE63p~drS~L;MK5GkKx+8NgH;dMJn-n4qU72?yqnx>N!No;&oiaYugM6>F zkf0ztJ9|Vt_q@eZN z<#2rvA{K#XEy|3AB?*7i)pgO^o9f$&Fk(T*X@G)?Dp}OLzTEkPvWf~N<5qHV<0n29 z`T0VLtw5YNo>^@={&Z8jt)ym#%i8L)AmfW?&z`k(bG0Qa)p#w~adL8EBM!yzIt*0B z&xmr#3JTie@xV#|mo&f0?65Vd_8Og>)K+lJX#Mas3UJrTYUi@2{04(4y{!^mLd580 zUcGuXUH$#;V(dVDef_0Nm(W4J>+N;yEy;QG$h}r&^s)Qo4UL^kITwj44^kMVjG&L1 z`_#%dqx7)7y&cGyb(wKrs+3mt?7Ao8sFyd za#hP8{MNztVk@)p@+nsRlV0%{_q64b2R2 z3^Jcstq&av)7$<2kwc<#%F@?|ZO8}I%IeqHxgK9GH;BG{TU{~aZerr&3uCV&Y+i}R zYkgZd;zLvYacpePv&!=6wVbZcFK&zI#*1$jDbLQf1=zlSJm2DhVQFb8frB(wuhNK( zjm`KER0L4sqga!YGK}i-QR`-Ma@(j2k_P$~5tFLW^?Ip8*4CMZg4?L5 z%8H7ZX9}F~lo~tHe09AlBoq?c^37c7`uqS7r%s;^+v0cVHJ%0C%$bKhN^47LVg}lA zqQg=Ct30!bo>OCBkgx%r6tQAaF|7t60_}vhHZ3g;*h^`B^@8}Nv!o4C>iuDxEw4OZUSCdLudwUN z1%`=WmHIrE?62rNLR@hbhsW90c06DU6}XY~qdBp$3>|8$V5hhD#x2JO>)MjPK3Hfx z!5m)?4VSMsxnTP~Gf*4z#8E&w8-ZBv#9adB0uc6WM#CIiBsmy8c zmBoVy)71Fe!=-BiTkcR%?5p{f&35ZkO{q7{6UR?4CY&0~$0<-sxPVbeI z6Fyno*b)*#bOm_A#qG?wbMpRcKK+Ff6qF6;exBGS%gOBJH+n?oRBMQUp(M*bFIOw8 zk0VXtEEH;I&Ws}7(Gdn8d}emft4}~c;LGz^0sRb=H?$a6uU-|GkSM(!dww%HfhHjx z82W=Gscj*4r1?eF5yi0>n*AnL;^NEPFON=4#3v@+Pr4Bu%@qxp@GSLUc!c1$g!8`$ zlio!B&u2c8k_>G8)Ryf3v4zIcrMamID_ZTiulb(*QQOAV^OP}xfyAp%^$5htVGt)` z$KTm6f*xG|(Osjt^9C|R`~771{q+=EDMVDNYZGLhEsh@T#PJRWc0i zPP7I#Ir!zsj*B0N6Sqqz3Po$Qh-5|iU={z$n{*Go&C=q%Pva*p%E zL`TO%8`d%%e}uBqTtVK+S+oPKhD#3Y~QI;D|8HC z`!ByAx;QRoQrjn45VAk+0A26hsH<1O_{+O|)Npm3ml^b-qoo!16hNv*E|;+`ywdIL zE*c(k_HmOS#pt06EzFBsZCaQ+MJhm}t$lkTf^x>YR^>WDdolExRe@;@T1a&Dhch}~ zzSJ5quKs_=l*m_fS4O9W=V|~H+Su?Zw{&-($Ukm#=1hOJ_ifomiw7WfHg7y|?%WrE zeLlu;oR0#J^&=ZmbjHVRIXRObJ$i)o-k^>|{$F$lW!<%F*FYz)j;BR^blDqy6;by0?u~yxZ4bEu{Wti>TJj735NjH*9r0RW z`e6Q>I!S$X^CtbsmgR$Hr|SU8f5|vEG@>;#aPpA?8c0#1nd$WN8$4xq@6IkSk6Y4P zL6qv;ksTfxQEtpN@mm@uXfqq8+cw16U9my{qSx+P$&ua`LPt%#-|LbYY8Ti7&h|a} zNuiusB$nQnh;pNqr8LBnuEdjxs`S07(->t;6*_e25C;bb0XJG(^PXgg+`5HxppsdF z($4#Comth&)Z;9jBvfljHt+9K6Z=Y_k$|CO-{&RC%bWS& zf!LlsVb83%1O4U_2YnX0PGFk{%AGAWH3{svo*wl{yN=X@sF+Abxd8l8QDr41s-*jT zmh^Vg{v4+A7d2td46UhI2LYOvn)>|33rh9VZzD1;w^)yicB({z-kP6rB?ddfAjDiB4m9XxFgamvO zBe zpQ5*${wg_>ur255ht}GDeoyrIyKE&9X!yb(d+PNG1V-`3%l9%eMrS`fZ8kh|zl-qU z?$Zz?msVEjR&0MPEzQr*n`J6p0ZSZ(_F{hGH8wc^IM7z1}VmsvMX*xD-okVHv6ut4t-Cjd&+d}Jw z=6x(a2da!RzO2|PqUAA_I*bF}VapRM`cO9)_&PT?xGYkV6<{(kF)>-mzo5f*3hK<% z`wFh=gQ3)&-Z596S$$hxy)9x&>yK|OEh8f@E31Glef*e>>rH>Z_WQG+Cnh@l8lwa| z`}*$d?WR~WjUhpg*ci3A=pJ~zv{Xtt^p|WI{Wk3WQ|3PjjLkI4h)D&GsCQ@MmUL+Y z>UKD}$7%k9w%9v-KH#{OILom44G4>>2M>bD@Lm7;T{&fDak6id`1r`jkNPK0sJq5X z>;F8wn$z8YU9xv_s&W3H1|=4~WNKt1gLZ@{tKP-9RVqhA!#MQeC~iXzlxEj?=eJe= z=0C3A-h0SZe)C|M*V7!a2mAIDS*M%b`%JG;>5wkQJnP716a3`K6R6SN-rlUap-N)I z+Eo1oB764aJxb$zN#{m&lW6{^@=vpVw@%R20Q{i2!Bg-sMx#Q$;s{49ksH|NOIh1e2~b@&Zm!W=3La*E2ZJ_1l|J+ zvePeImAm?)sH0fsY5m-n90OjD*ShYXfGCQWkD`*4RM+5O4YFoI!L>RwS=3-TIg`ik z4iKY{W$6fsh;T+MY+zQ9A9o|)muzN{nCtJ>pZeX|m`DD_QdjIOU+ab=G8TLWxm%wy ztNF2wx?Hrk{|c01^Xg6o$`*c6PDmI+<@o;XTc`H)^xg_aSnYAD=TY@y1!_Z=WIPXexN@gFNIP6Jge92|<~ z^?{)Kf`WrtW0d~NOZ2M$3wv?WTQ#1)ysGMbPtS7o_W`!^ER0SEMWQ&B@UhX+(IlKs ze7pJik-K^T%9E0|hcuk5be%xr4^x@{aU!jw%4^|yUtgjpJw@`dzc>LXJyW*wy!52o zsm~!SC`ds{8i)1D&!5cHPP99Bt~6O-u=Lz*Rqi_7)=lj~S7a^^|AX9^BipwjQm0Wp zseouzqi%oKo=j!SIJ5WS4!x2iv8gjNGgyxHx4~3SRzCz&%D#LU8L6tO!h)5Sx@l;H z;z^fJMs`G=Qq8)={som`T2SWDB>ls}69#&CX-c(hu@NJ=&^rv`}S=uUbaq~B6_leE-v4IbpXHTki?*0 zLGO)}ou4clbg6jnyRwKXb||A0ybs$2h6m~Cs=MhO`yQd*_$>C=;7E|B@TgzAer<;% z8j_=z!YBR~Obzqh8WQ`xP)r?Y7@dP_*V{hGJeHljG zX)77BZ9BxLW9WIn-U3QHJBvAonyhmN0`N9jID2}Qg9KV*BWp}F#TOw9;s&oNCf31h z&Ktku-na9I4n4zj;nicm7^SopmymF^(560ctN-c;&alD83rZl|SAKjc6g#LTb>OIp z$rFS#6&2M89Th1Tk|bKLn$=MewYQgS-MD!_XA|p1(y#95>f0mPEEQ>f#rcKO`m!!a zvt%GSnEZHBj;Ob0V(dTx2>g25+$3Dk>_R z3ZCuV-F&f{`FVMv(w(-Xm#6ME+}Uos6!=K=^nB&!buoS)8*|YCAr;ZI5jKm@=~v^= zXXmmGNRO~(cWWLw(g7vtc)k$?P{b)nAQn)i&AT}+L+s8+mh+<%n&f^^l@?PMknLftIiPr(DBzu|MDC z1e@FW&EdRYaj!*0oT~B^3#iM^%Ts`T!q~X4X!k|!oqT+cD=NT!p0T#JE8L!A(t!q# zVA9gdAy~pL(X_Hv)&8b2nB!}Olz)3c{$ezovlc8;*thS(g$t&p(I_rp6<)jjR08!2 z0d$c!jOP|M=M;Bz+>Zm9-K}4yOf8ucbR;`9m6fk7hA5CwQF=W1FVlxuoRYNkEm9#% z@hG1^I1nBQ@}PQ{*52sTSx1=@5vkGhoVm=v%)EPfkXrt9jrMQPhneY*ltLi^fx{kA zvs|@Rty@fFAiaYL4i5{X2~%zM5ub!0u0L3lY2m4|(b5-j0e6^!$JCu@1H^sryLVOB zT0c<|yd!9{VSMsm9=#28iQ_~PE-Nc*KltS5{X&93T{to_;_9IRry_0GPEpaB1r3r* zrsOKsJrab*2BN{|eflR)p8Xu+b(VfZF!}gkHzlPmBRm^^`!_6a#S%Ae z86WhXu3rC9xGp|$^`wQYg2F12hN;hN5R6z5tFTaY4hUHlnEO0XtD(F(^c0VNuUY@8 z&grYl0pZNU%}wg8j0F+Vy!aJHLoa6!556*CPEi(+aBlAI+<`v6zR(1~gy0>-4l+|T z_m-XuOA>&rcoQl|wbVOM;ZOw?@9_uffor?UAOLYii}yuqYkqDncc+k$5K0f+oQOa& zGP0TcqK6L;>+16PWu>Q6E0xrU-tQ)hH47+>S3Py=j#2)rmX`gbura)R`4YB6o3^`0 zDww#S?{^oPiqMlGD`gx#3lu)vG=^0!DJg-+4swHxw6wLA)$06fUC%oGq|vFVC+H~f zkN3*UqxyA2yR>}R1MUIMRvJGoD=R-^cxfWKMCpv9VY5YtlCoP-_27AY)}}dJXP9zT zI931X(HkKlPep20Z^XwRVo&`n82G<^C67gavN18Kn?#%}GTWd$4*HRbL*d?M4^}hf zD-FY7m&k}W!jcxN35g?=gga2${@u{0PmAA1507MPW^fl=I98hUyn#f$9li#b_2h?M zxG!z}2u=>C9@Z`}58-v6UXRoBD}sz2Q3quMv6+^Z*51JZuqbGcawAn8=#&7rzX;DLBNqb|ry_lrs{c|0=R60jhc({c9pUdnBd?`J z5%a8(es*q-oPt8@(4ih+W~H^+DA-8?3;;1nwrrtG?iAU*TSH3==Bypx3XRKN_4Mpj zR9uVERTT3SI-R3`RW+4LX_cC*#ADjTLgI*vbXKwQE@sn2mX0rUf$cz{OoE04+htr_ z9MW!j`p$3dU@t+|BZC+mIYPt9>2&sN7*oW=;Na>f83J(vT!n%YcjLyzw; zOmyyYNqdWv*J34JYNXAc`VHHs!NxBTH?B;&_3v;zpzURtYHH50EZ8wPWY6#4O@Cv8 znd;cWG$?Cf+AvTcnuiZ>^{4H25&h}NA9vmGzw8`xwO8-o7l?VLrKN>M`*@64-y!Q; zQ60_4PoFX$KjZP+82!u&r4|IGWahG@ToZHiwe9dm_H}igvGN0n1+OgJOfKoGQyw*s zFV1D6v|pzibpPX|F)}jtwwY-sNIo-*{yWNk|G@I8h4|d^>ZebiU`;qDnXvMGn#!|Q z*~#GC+q`FOZ7?#hMrK0efAr{WTN@QuBmA<0Ct)yw(~zF52{4M}^?7~)&pH*NSnq%< zR|-y5pm@YUt%9Ygx2NZ#mltgaYBRn*9v2;3o0%xdoWABiT@ul{_uyqX5AF;-0bEzA zS52rA%jj}y4O2dQY|PO&0yR7^u+}OwXe-G&qDkBQ9EcdsKtoj5H*c&y-aW@l$r(85 zA%TtiZ?vv`M>bj^_qXTwTm8=ZN86{(`F}eXLIvb{nc1Vz-9xUBOvsDONm8!2cyPSn z6lmJD*KzCTAhaFcc>@kB#pL80HZl~wZ;c@Dal+}zG5o9`LNMn+ObJ>_v9K11;Nk_2$wenF!Q zKnxRQcQ@TZ*u>A?uy+tWK6536sCo)i73{wDE)WVXT#&dp5u^pcVz8UO_qLT*kRc(b z(nSS;#ej&~Y?cFPLLg@dxgVyOFnWHf*W-;iziR60G5)lirR(@zbe7py^-k8!%Wt^I z0CP9A{R7_*Svi!SDu9Y|vSNyXv^q}GXXdA)+SkcR9EtHypR6q{RXl^sw`uN(c}AkZ zq1xphz|ov0|2EiKA>qxQop6>w_=27S!MFJ%4*Jv6f8zT%J>9C7>onDzr-GFQA4o_PSGJa$ zHbpZqq6|jnsrQwU>`P;c362tu^W&tLot+hrw+GY9AN#zwS598u*f?&gq1&^k**h*B zB_%B_fRxH%=0kLy8L;l;;dAr%y7$zq^iT8Z-u0OoIxs>bY&j0{$IcG^VpphZp!Ctm zVyBl?nUn!IGHdOufJXR`cDjrxBh$$k}7 zGLUERcy61`S`?z7Xsj^5bR>cS=9$utd)3uRtES(8vnW6PfnF0|4xh*VDW~jM+xa?P zD-$;T#h9W`v=LnV{JCXiGH5mAqn|g-%XR2y=MAlF=aMw9Cmta@VnD#A;X}Ev?0&2F z0(>tLXnbm3tH|s${HHhjxbm-kC$@5PTL7AKeJ%C@0yg@v+{(({du9(GI`+$f8deF} zHk|CxOQ(~n7f4A4W%0inPl2HQAvcz_!I*w0`wJq09rbZfnKeQ^7426 z{rh(98U;av`tW^mQQGk1KecYe;jV45H*bQZh8qYXd7I)&URv5Fk#`Y4VN8eEGt*eS81AcT31obV=b8d8?~F98qvW zip<1~?Z0Z@gy5_SSuo=3eDUH1I=JcKVP|+)#3ig1 zXbZ(xpZc$cMCVIeW>I@#2;g8QyX<+Q3tWVukRJ{qT6M@L>C2QVQns@?dKM6f708kh<8hWzq! zX08$dZB$LuHp`ZpPmeYciCVBsl#y;A5)DShM&HQ^3H(1Ec zrxWvxT)%#aKj%D;e9FUNBDn&^9Uy zYqAJah5yx7G%FyW0YH{uEJmH=7Z%p>P=5nr6Ey;s>rhqhZyyBlj-aWhpR5$j-WWJO zaH)(`H%ZRG$msdl95gAv^_9Wtf$GF}B=5drD1miubezi?3(FN47`QsqK=twXb5FHQ zK4f*c6M|{@Tqce$plf+sR@EKiW6FAqzTvxF|{MLbnzzviggaicWNLAQGDIL&%ZegQv`%5 z*wf^(m_o*nR@YE`A)S^;y!(ynYWWz#S{VlZgX9bbjGNhtYPoIg?0!H!^&4+bfemP% z?+C%Uh>W@I#E!&xKhBV|QVL(4!io(8ssKx$7jy@)I1g!127HSx@nJK^d8{ z+*~q3zxlS{^x?11zhPwP&Ye3TQ-}P= z@$C&l=c`(yYS1TUtgfl-}>wsmoh021zon+hYf=Z#Fcl!|3+N92G{J_bLRwh?{0Uz zXClBnb}W+KQtdsFIkSO&JrFR)+Uh^d!k34%78e~o`&w6tW|?wvdMMwrovq>DbnVbd zSutK$6#{7Xg~1f9kG3{tw9Q|n>@?PNI2@3*lvCP!dyV*Gt*xz}c+PG-qUAx7rsHJ) zAtazcRQUEe(MN91?(S=lrAesjqSsZH#KQc0wWgu3DS5ZWjlemI@bp^&Cv-s2l<7m#H8 z`da-A0uMe4^jh;%L-SwERR_7*iJWO6eU;SRfj$XEJQ5yn5s|2{Fc9oZ^I(_&0iC_82Yn#u#H`|y`$p+z6`h^1Qin# z)8tXOt>6#^aFw*({<=mvr3m~sI;fHoNr)rf-O?0Zn_r(NS8i!-ja;JIw6%Hpzjfc3 z8#h`mrPHc0Wb4mfn)cdwy6tb+wd2Xc{xd0ixkdk^7lzpzo(_%xx%lq|?9=&oRh$S7$${&N5 zNKve8Y^9b49+eWjpIt54B-rQ4B$}@ZLy(8*7x={Hfgw~?M_XGkeOm|Q!r&lQLr*K)KJ|=Pr8r`{Ti%Q!uNdWxm7^&|zU?!^F&N zc;W=IMc7ROi3WBSBI~VNw0GY;p}-U&T3zc`cf!6;8n>}MtSv4rrKF<5Izuxy`}9vZ zI`UdO|0-l&<40d%ZCY4ZKtnb!O(UUJ#B%Z zUEEcW!>9=y-u^3-WzCP0|A8-SEJ!*8;)0F;0Ez1~tPTI}y2psgy`xP52VD2*er-JQ z7hD`sVo^00$>O{z&|H5wsO!xetjMFXGRUp4a$H~6e)_$zA}m<28=p)R|H zaj3}Q8#icC%q+f~gE0n54?=V}-;(6)zt0WukLKC+KLCG3y!n)pos~8Aefjg0S-)Z%x_CB03uW%9*LU# zstskN1TNjul13R`!4H@%j_5Ic^x#4C(gAx5JJ{lNWlH&xp3a1ii}!W)_~dW-ccH2uWSX~^ zSLk{k6-n_l$}O}u*W{6O{tUwAkwzpx{2Pd!=eg*6uuwF2e^Vo2$J##38VWKl57C@` zb&ugglGDpjwjB|gu?NhpUJVSG1Sua_JHatn^QqX8AHD*@be5~@%@?DneK0!0ciS9? z-TD`Onk4y63L#C$w2j5&J3?-8bmZN4$f@!*Lj=pVrJjbJYd;6qeIZ)F66*!T^M`

zL_{}yk zHQqSL9ZkGt3n-~|NKz#Es zOFmCd31^X2L4oUg_s&*{o|A!L7d;uUUYL?tN9W)mxG2ITG3<0ui2|s;@&qzdkVHLY zJ0H1zq9xHeya>}w1qH&mB0*gI#%j8{x3~PVX)>xTRmNSAaM!MF`*vj}a4Q`Jqu663 zi^`7E_b0SZ-0woYm9T!xx()ZumD zn#vGK)<`kkiRkOTHs zxv=Qy19=4z5sWd6h3Kl_`U7-sX1XYFQG(HsU`iH`kD&Mo=cAXWrxuvN7o!D6rFOex zsS8v7Hr7oN9(OulE$!mM=U9*?vo8bd=Al&m-%W6fe_Ow;Z(x2^??4)G_!00R;QSHc zvh1(WZQ-+Z*vTj3VEQ>+kAL<*b>w1=i8hy4@Mi-*upn> zwuFYu71a90xla>1CY7(c|8C!p>s}DMtjR#7|90!V*WDsoMn-ABRZnm4mC#U9p8RpQ zCj-$I=Nl);8nWxj6aUG0gt}_2Cv?b(?+XTC2H6C0XW!&_Q{uf5#G+;f9JrlBA0~<8 z4tSy292yz|{)X@4fnlCLKfJ}WrAH2KH?V$rzLr#?>p67OC4v!2AQ;^w{t8e_-H;hO z1Oe!brO@2(C7cHxNHBAOA}=<~!{8iTr*zY^6Aqz4K?f}?MnJKEa)Jc`jRmmP;k>Sy z%j!V`whtaX(t!-%<^~@X-p~iL!g#o)S<)+m7?y@E9M}EXe;1+d9D-#4-OBB_I720Ww+Q5)d>9-j`&(Tt zl^V|{gWN576}A!ZV93RLq@+qA1;MvR0Qnyg5mQrZw`*1pI^|$eGD+S8BkjS@tZrNp zy9+D)A2f)zf~4I{Ece_a8ZQ0+D9%v?VqP}=i_eHua$cTbkTT{6@Lg?-{BrkaT-_4k z7BL2^<6mi=XKfrKhy%qgjk*X~%vj~l)I){{R31iTg1Wa!_EmdgrrTBXsq~swlsUMu zW5+&x{`{kf$&~r*MwR~z1xWEqbnQ4u>We<npHY4oenY@ye$+oG$pvh12bjSivmn>wQ0&uCE&PE)%f}1h7%0n0A*t5 zfggA|5*t($Y}Yy0XE{kOJXsJWAVlK^wkS+*ul-yB59GA^`Zlh|J0Kz8hHOe z$-w44?Z(Dxb?+K`8_|++vy2_zdS75;`IUn)|MRAU+Wi9w`?n_qx0hd8czgZMov)uh z9mgq%kI$(l>-Lj4l86=+y+1{)9FgbTr9ZDexNIEw2QNgz_#cMo|35!jTM7N4)`u8x z{>^FKW0rcqF?btq%*5Cj6HM<=ztO!w52u{~Ukn9y`}Ms-LhwmYm~tiJR*zQ$@cW^l zk>s>S82lP*5d9jFxA{0GB`_mta%>bvYm_7~!pI37I@4dj5|p=O*gM}tkOV6+lVJ7h zlV{#qzS(&0->8PhrY6kjfZYzH4r#z_JJdU$#jh;NyWtyt_>hk4ETR0x zDWK$InywN4Rr-;q1h+YE0wU+4|G&KnsP@D`17gDW!POcM+RQ2{E5+lXd#grk(9_Xb zilQs|o9{YKi&ydIa6<@p^f;COQoyXif61GyJ=6-QwXi@|UYz4qOgx%{)x$$^Dcd4_ za}(x8Xzt(t1=ELsZ9qlQ)6?(d<&~3_-4Tdk@{OA|9XopTkz@Z4!X(j-9kpf#`Uih4 zH}f#_6uJZ@V8agusE;FqWu4g)O4r2eAo;ZmHfl$0PUb8tw1X@Kwu zKkZgaBmMPpJR2;T3@h&oOvY3PHPs53V-l*@pY}ebmK;g-!H7M!{J31D)%y0$n-s-& z!8pU#up!K)LIE^03|7#BK~;UnFP*yzVTB=TG{4?cZR31RK-a*4j)_03l3!K)Jo90A zUSPw)bq--ld|Gj$OLDhy;}LcVXoF{tE?j4_DZ?n=@$A`nG0WhARRkMC4oKqn>}Ky~ zxBKFTe?$)XPrAkbR$0`vo7)Em{edpvVuJz+s39yV>3W^v8XN&&!Qi>W7yiRp=lv#o zy@DEd%q&AtSXo*!G&0gjkUWcjjH?+)Q*f~iFgXU>i+k*0(}I-cdq&5}VCj$DF&y{b za{r%_1V_ZR|HvU245C&BQM#nwjcRyNVF3Cz=5g_+Sz7V1Du+K)f}fD!HUJzD%K?b- zg=s_eIeIjZ#@atu4gM;GJjvHX^*1-?VhmsQ@l#Q006op2;CYD}%AFBHKiA+s42=MI zc6PaSxfG1QvW%HkJ;uja9VxAA`}=*@*M35T3VB-l>(7|o)!yEIuWj)^uf2(`W%Jp5 z4#ox0=U`|s?g_IboU5Q2*&L7j+F&B5ZySHja1ohVZ7lrx>q4x*j&2c#xJbD^{u* zR8g`t{=_@u2ICL6hAF*41QW7o#Qq^N#!J-7cq{;7W=961{hXoZ1g8_p0C&kRzYXVg z4Idl!f5}X1rWwC1J)1Ue#BuoT>UrJXeyQ+kup9q|PsP_R2OH1lif2Z84WF0A0wDSu zhBY!eQPh#%&GXE*{WXF5`eA6}U(=^D>Ax9@&@=!r{KS=PNF{^;TwJzbFTH|vf&`-) zA#?R__2%URtYqi^#Tkaz#Onuz|<Xv4lNTsaGQ98F5K-frCNc1tq@e}ak2draAwIR_67f&-oiM|=C1EiFqE zS;;MFyg`BRPPw|4L`CUhJoCVTx|;QsnwSlT7#iZFE$Y3QJHA{TX-8}V6C8d|xFu`= zK4v?+&#>!-7~qyaS&CD2M+w)ejpK?IRZ?6Xbb@f52e*YL<*$Jl9k?!v&m4xk%)%lS zTJMqP|8lv=j6p}yHJbf>KcGJDq}`g>%CSR5CW){Wsbh?R1m6r`H^$5e$r?^sm}z)p z!X8}NJCCWAXpQ+0rB(AwTmL?zQ@=qSXc8%g4R#w76An5$6~pyb@J(GOOd-#ELyiac zj~K#}Exk(3eXd`I(Orsir>3zv2YY*@YO&*@x!G6EM5Si3<)TeA%qs7a<&wZ$;sSpN zCXph;!p_2L5!i9;pyV9*UIaLj7Ib{H0;-icTo0f{W1B&#=qfJ5`KH%LY(Qbz8%i}j ztXw#@<>Tcp2BNAx?KKC>|E)-bs{Bilh%rhdrife^HgNk_e+i9K)6Nb5b%jS~KYcN- zcuP%9#nnUbvY~;-wL_#Sn5d{YB^;}XIR%1s56+!$Vpduu z8P^2KdZALbx9g3ts^PpC7{vC-Jg6hR=dcgVgpg3{(tOI13?`sYq{zyOik^4xsDnev zH!%zFZXNn{5e7t>oohESh%PQEElsP0%Rgw8p?8v|OiekC3}SdGP!C5B2EQ4{6vPA8 z0o(f2N*u>FUW+%mEm_*Z2x5qusL5X!VZvd@@V??NI6O$-r6OPB$xa&JJ~TKXa>b=~ z{u(>MU>2ud)`9s)9cG?XYrZFQ22 zOiUcx$zu6g>$N5=kVfuRTNf8Cnchx5OB^?wWZS&H34`g$v)q<+ESTYet)a~B+K9K>v}(Gs zIrababVQb1*(-VJ58CNk7igyl8nvK0+mw3GG9WGm-yf22je_gKkQ@x>s3aXvuAEUb zV2+?t@ZtL`bcNc^$%#)SJ(5#tK;sK<$M5U<-1q%)S;WRPGOCjdG0&hl@NrbjbS)!N ze*0QpU6PwHADEG5@@(S?L|=nDlH%^(o%;9@x75iJ zA1u$F-Fvn(9rhyJo<|e%4?79V^14R#A6cz(mZ}1xjaqDuW5?eJltU|}dtj-#v|;}H z_ra=*5?Er`zLA;8DJiA0$*6dZW`v{$gm9M7#I#8Gc)JG5|8wM1v`Ns9vDIqVPj?mH4^TW48i%%SAR z&dT}&7s23g<>YlkTiMZd-Fgl_qJ^ql~z(_tq2*DsU@Nig-{tPLuANQQKC_Z zD3mctLXuEs8B1lJi3Ul^JTxdNqSEL+E=r1hKl^#!=lwo^x%b|8vDUSIzvDd4V~~+L znR~1F=%p(;IeLp3%PT8|1O=HG6ltg^G?D{cVpMC0>FZYp;gi|s%*3T^V^dvIv(TP* z<>Gv5Dkm=b*StqM#j&gUJCyL%Y^OaQ1GH3~hiA-9Wun`kpc3|T>OSs)eaqkS3{n7x zwNu;jH&K=%D*R-t3KOBad)4#~R8;Lkoj)ZSNGZH~X$%um)zOP(j3c|T@8E8(Mj{yO z>(B*B`@wjJ|8XEv*~MU7zHV#i?&*}*0y)Vq^hPyso3i_O#m;O&<{AjcXFCL`L9^jz zvs)@Xqe%-~frbD=Q5}wlc0IrQ`Uw82VkdyO0X3+hlD>Wz$_?1A!igWH-GJUTzGN(G zHfkgaO2==Dl{ywpnJ<0lam!6jn#FusCKpO|&`36Y9K`9Zl#}zTASgHtKCpVi&w^7P zhUkS0mok!IZ5i9EJ7ZoBR+?^JPV!6U9nSb`&#q{l%!WS^239_=+j)64A5LL)iStS6 zOE3Q|6YVRo3DjCIf4`Ah&)~Q6xztu9R76Ni2I$_rWhf+W}Zo9$PYoyavFI?X|H%%->ur=Z?Hx6feT@SdzxZm@p7w z27lYFHV(a(KT#9;Z-(~T#}a)eO-b~R;U%t|Nf&jVTWA(V76g`6{1#tBd94*GBPb}?5Bpv5$7O&QRGn#F zKg3H{?0JlolZ{um1gb$#XJBmHhoG-T-9w)t!^J`dOgB_jOAMHIp4w3Sz>vpGAF~km zirtT}g$~_-VYLv4CnA!Sdx4FiV#EZ7Xf;S?Ao!15xu4Gnip0NBS9mhz`yP=gA!sF+ z^K3R57^t0RBhAF^1juy6e|xl)Vyt2FqVsN-U|+ag^dmCkq?MggKq`gQ{Rh)RG~vja(jeZ zR*E5zMlo8)@yM9=I2+Rgj;x(9pH+dTu(rc7lD~p}cgjU<1q((Ogw;OJ%*@1Rgh-CW z+J-QJV5?X{UcSEgj1kZAr%jcdTU@ zTZNhICR?prhItee2U1vfBa(Z>Zc*iDm(`kU_!r-8schN+St}AlpSJzli!E0Hi;Ubv z2!o?8UIe%~xn2lo_MVc&2-9CYN~Dv3cP9jUh=hU&DKjVMqO|QptWKb&^--~~uz->! z_xg1t_TWOt_AB3!7;YyH8dW}v?5Aq+kqqRb5>T zb%SSwRQy2pHwa?WvzdXeI?AQa0X)b$6%jC#8%I*M*8$`;A8a~G?WuR z#c|vHx;l88urq_Rq5SJ190B;oGIJuKxCha#sxL5i;h;&~b{*Fc5{i-P)s6R05jWTMQW`o^dcTkTB8C!hw14Rx7Rr zOfop4?4M?NYb01a2XcBw<9$>8d|23#!R~clXON+tl!WAo?+7r=5tX#@_QT5%tf9AU z+iuOBA}@8F!`C z*m}nf(_062_*9U~IG2!-<((B7NsQ50WJHXdzfO>ePHvNobc7a_`1&_!MKM~5EQ&QW za+jr3XEgtvmMj_XV|Jfmxj?%O)2nu=uW)Qi##dp##PSR?| zmbl8!l>-}QPK972Cw|bZ((iRYP{FYO6>{as;ajEy3b?E#$s?McQBkH)tqjTw3VM&M zJ?0=MAYfhL$ELuoBNXx+I~9F>riJ5{vwz~J?9Fm}^>=7;CP4@C@52B2+^0#zS)j|N zuhMH_YrBw(3&TtU(lj9(a;w%8g;XA)wyH$NWXLX;e@N+d68)VM+$9~lfsKVl3L)Vb z*FX_NRnFIPnoAz&6zMd_n|5w#;@^E=cMbv>@fa+iBVy!0s!K@?0nL+Q@PEP<5{_S6 z|Id)aYDX)6cOQK>+9rS^e7%=H zKKtYXk(YaV{s2n;07`1}v2_~DO@V(BU${bdJ2-Qa$>c?gE}lRC5eq`3D*#?pR#ma= znh(PvmIi<4{)c0dtpeHL1|kd?=e9p*+aV77`jk87oJr=Hh7i&cgc>+)umw=Q^mTV{ zF*eSFwhoFQh;pIW!O4RpZRCiZi44ICFdBKgkhEgU4Z{|~YjShLl0`H}ADTlAgIgSk zjl|nO&(+4zd1N3)L*V`Ju%?E_Vitr6AkQ^Ax&y&Wo{UJP2MJ8*X6*yma6A2OMF`!1 zff=$8-&yRiUXo_Ie`$yw*eiX#FG)eiAW_r~r~%PDD+y=6RS)6c z_7P)~KX@$~F>&#lIBa@;hn?u_kNjA{#vN2;nF+4cS7|%M1ahh8LPLoPf%^K*5@ASm zz-_?7En~AzC?r_+g~qh#tNx@~lkQ=@P>N7U&C8+n?+`;Xp1rb|$n=>Y#C+|DY>{^k z7w8oI>S{e?F31Yhkt#ovcx58L4_5Jf`tTum?R+XKN@Cgp#J_!L_e3KEUV;A}Iy=wz zCpvREF+DmFn<->>|*O;KsEG;F)ib7mj*c#$f90?g1W>siU0yAUhD*9ohb^G!Mo7+F8-+ z2jkB~bP!G#xb&2il(JIo^`%oeS8+t8kijRkWGwl?ZWJMRyHcd`*pbYI@(d7%&C>XzVLHdd*<@WeRb z83S`o1cXEf#?^mtSsfGu!B|p~?=bf->WlYLL&Fg0a-3!u5cKr*??y;fAxWy8P0VGp z>g5(AOf2QzTf80+My|(e^0Lij$uFmJVXol9$ZN@m)i4u5iS+*CMk*RrJL@9k>7#22?-fou z6n#Hm`}{3Z3K0$~5(>)gqN{&DUgDUT7&yW4kwvi&pmX!Gn-MehSuGTF@Tg(@0JOly z1y7Ki`;UA)t84pmoeOARA_X$8z0SV|rOUcTC z$~l!GzZ5HapgM&L_wRM>nF;uszv6!bTNc@yrBFOCRT;}Z9P%)mgeIM={v9JG>u>R? zX5jR8U_@Ec%@ecogE4np7!DrfwQ}+fG|a{C_N|#R5J5X06!^1a;hWu&sqq8LaSKAB z0O>A*zmWGO4D(n_4E1)ld3|~`bvxSf3A_?6v!$!ISD4)&Kqc??ZNU1W_wVr$T)9Zw z+WN|x#hv?B0-h~d@)DGy>JL~G?%mV&Is;)8;tG&=arBc!yh!rN2W5YDK&<(CCdmLU zAUps*jIZCm68yYFlbY_2GBhNo&sBBL@MI9S}Z#}@adBhuoYNy7~mk)!Iy)>GJSknua-dZb1^Ea zr>BQWxtVk1LB{*B-6pX_KXYb{(4FV+v7-YtbtwEy%Uj;H4@<)j@aVLWMZs-Cks&FG zOmXI=BB8Kl!0XFASB%{s>F7U(6O_7I61S3%U&Bi|_}%90VUhb*zh26~%_Cn7CmJS@ z>T%Py0ff*Mhyv#iD5PG)1y1`Vm((;}<<$Nul~e1(xkRW{tlXUR#m(}a5E%l^DMY;h zUAQQKl>i(5j!*@>H<+!0jiIjBI(k-0%7V_{xKDcoS%ir_oce;LgkoeF)Bt#cb{jGf#9y5qF$Gf$7XF_mtmS`sP<-z?+;sv*r zoIC*XX~Kc;PUt`n8zQTwCBwoK)^8ID;3=ezEm5$0;HN3XZ|}RC08)R2@Egkp4fcLe z2sO7(JUQva-Ifn8#-j9GA8y323U(6;3~SooFiisDw#$~AjGu$JX4xuF zyEv>CzcBuId92$&p>;sRhO5w1()z3iZ?+cUakue9Is>g|O#f)X{VEVUvv9g)qmvZnbpS#Tf2EwC zRo*wfLaBVJLP_lhgP8-+rWGE*!aYqAzN)1=vja6{YsAU=(yd!iG1btJjrbR!qWPz? zv9tk)y+@kk>Xuc=*g*mu=+kF?UtCg3rM<4e?A6k86t5($*3YHn|FW_&aWOHUPp?oof^W(#C8O^<*w_$>3RuGU)IpgC zip}WyZZ`jlWCVR`X;l!5AZ4Eo9#7LEE5x1jYu1jr!P;eaP#5JRxLDceX4=1F*#amci8Fh?Zccxh zl&b5@JtL6GYk}Rv5iYaB?;nkUClM=z7c@zah!!tc=758QZsrN-ARu>XQ|ATug@(m( zJ2(|TYo;Mk(KB$gKZ&(@GYX&0r~0!0&>@p7>l$zmP1ilmBafwlq|D1{eiLo2d}FdZDvA^g<3J*~5Qy(^ z2Jx#93d^(W{MqY;-*$E`4%QfP{b8Q!VCPZ3PRGt-y zv)Ci=p4Sk7YL+X1HHZGZ^bavfck@flWI_Ak&%3&%U>0Fd$Ci_7YlesHSs+Y)CH>Kl zgL~}d!74_cIDTIm(Wh4v5?G2L-t^&lmK#1bu{rp7iFvANo(wddckaA~tQpo0OiBcz zPGB~d=zDS4-%P(UCzuXrMW!L-@a8^LqE&x5tpl;kD_=5!qY!K-Cd%6%wcf!fJib z;nNnOc|J7MJ2%Usj20eaBH~mVQGbYiM#{YwmOR?phymcuLLgfietsE?a&lmWbzq@11~2p#RW{XuD+#b4ZQA#?N2Bb`%_yh3z#zUqMLdfPnJg?jBhE1=^)C(BBE}Sw!Bz|uUDK+$Y8p6kVA@0HdDwWo$7pxPea^KI_oN^z|8=nQ1#cxy%-!sn*Keh`0uMoITi45nhi?!uf7r zZ`gC2R>yxBD^-H4JO6M2@fq{%eO&qc0JQzp90-dE)-SM!K0W&W67O+>EM&n)6bn@G zxVIuZUk+z=XQ0*p9j3aX{U@gKp5J)l;WU^^_8&0SF^;q7NE;v?PhD)?v9 zdajj0Y0)2gF5jo4M`>}e&m2+cx8=J1{w>bdc%z6oTsCtGJ{&?#8H` zLR0m*3m2MksbarvViLf}XQp3!=gt;kR_NlfuAz-wL!9Vy&>{gM-1$Y_LcGVD_Q44k zRtxxsixivhZWNyS9O5uIy=axP7&Vh}xmz)=gYLn-lWk%)TP+{Zu>o}Q1tZbtQFxu| zF~r;e>v}5>KHU|KG>He<+Rr64TO{=d|17k*nw#5H{UYCB8ti3i0ZNVL_+scBmM&fY z$yWu>PcVHM+N^J`peiP9w{@Ma!k`(I(S(qJkAsE)`~&OZ92`WVk2tQP0LWVKGqis}(R()D6C zvChCN=xnXlX`C@k#Q^3Fdyr_`Kaw%4?>oX0hmzkDRXyk;#%DY^S%hzfXNe(Fx7V!k z2n}t7p#~}dnCl6#xVB)i$>Y0y>;=gIw)|{(fh{wU5>)`3Ba$-EOqY;=^We`YO6We+ zo&}+^?9Cfh(&sN<(8h-qC5Btea1HTvg zwV-@*49VTw60avB$z3`8b>PJQxxP4IaGN1w7aBt)F+Ru%<0LbR$He&)o#$JR*0xMo zqOjM)!cQK+Q&I7fq4daDy#mq14zLWJ55OE~fHFM{Q)*Ou`w$iI{?n%>)7IYjhJ66g zv@II5{43=4b&l;y!LC6@jcVEj3&JqqVlF_K;1U4=h?3W-sX++|H0#-Voai3K(gkZ< z@M8Fj@dc|pY|CH5Xkj!y=;(MlC`g@T>(HrEb_df99P&72m6d5CgnyNQ7NW6{aJxl7 zStH>BnUCG^socdHKS}HC8h1)wxlm$s6q-3 zRzBT~f5JS)%(E1EJ(`o1Uj~x5!5fbbAZ)kOP!h5G0|*iDK1|B6Zi!&P#`kCr*w=L; zDyj`|zh=u{)ts0MD)hWxZP!IJJC2g2!oo!KrFS=?CoqzGf=tOuohZtbG=SX*O}9w} zrE5q(LEce^36K|biK5!&?7AzWcEj{}9$7x^H#mvnBJ77Xw6p|2&3@DeWgUaOQ*K?P zECYdb>6!lWp-q9gozFlt+H2c1g%>ZTgg z&;B=u=HPVSpy%n`VA%~BC`vLec| z!}%pwx6XUDaObqkqlFuV8A*B~Y|dG-m40S^lR6g7>$3L~8_BCn$2O9K5ra|QNq4Sn zf_{|fN8q~mGhvbvpK69#&E@FPnys@*i3*yH@5<)4ivu+vHc3-Q=g5HrV2U^uBQTLY zC9lvzqAWD~h)`t-y2AJm36J}Q@hQZ#fMjqxnU>mG7%+oJa~~UHb3#12@0zb~3ib|+3psco>LdrfrD5(x$4MRPOezxqIl@0e%#+Ps|SVZ~+R zKPb0+LQKhQwRIH^X3I;~Fo<{XCRq%ickFPvZTLP;lzXQC3kYK6^kvf>mUy z#%<+`b?azE7_brBhB)$$W+A19HP0=QkMTGL?B6(PLHW?Foe-umOaljhE+Wf3mff1+ zaSRb~VPZxH5M9y5PEcq0&h)Rvl{-I3b_%XM`%}7~Nw#w8nc0H_#qr=l~5Y`<#bXD zR2tUgv+=9+en8wk?Z9L8HpYwz?S8)gKdIirZ;{QAR6S12&GY}TeHFjdV(Np`-{(@P zP??m_v}*u-27c4~&M0N+9pN8i+iCnxZHVSAjR%v@6rQds?thb~Q-8B1cY-||%NvJG z6UdA57BoAMh3d{Ey$c~BL$F%9fQ6nSbbFLMc~_|;GTpAS+H@!}wfArn?3us2?Ct(o zPb$NX1UC_h7r5v8wy4n1!-z22a-&@v0c?$o7zeOFQ9Amu4oif-^dd8a8%5q#bbN!o z2bVsRh<^CBgx!ndW!U{;uNP+|A&;c!>s$FuLy!<3G1PL{mwPcbc9ve2eS@Qr>2eqZ zD=@PE9RmMsa|jJ{gPO>Z`pA8WdiDMmx~D!e7XKY0{{m}|L)kb5k!mHiV#Npe&Q+E% zJME$TdxS_X``_A;dbhSe`K9S+ZVB)77T=bW2*(aDFXEt=K@x`&DwxfNp~lMp#ripU zo%wi)BAx8=Z{={NMm z%zmd@P)eEi`KL>C*6i61a4^LMDf%H_fsXDAYD7;gjor!?-zPcmO0t#!vsRSc3Q5UK zY<|N7BPj-n%B0PjE1g7L$}T+-S9eeuprIHL``0K1=jGtJ5FS7Jb@YdlWrXGKHI~g9 z&m~Zw2J4fgrj-o?_3!LFtOjK~`eM_4Vkc4EsP`MP*pa6EkcSSYL(r3TO(qHF+4Zgqtdfp|?r7q(O* z)*Yb$gWVNSOycRcEYff>S0>eSn1p9E^|9wui9mlgIm5l(?UN~Al-imL&1xKqB`M2S zoV>d-=dQ-|ptheL>UYmZHgk#pEjluJp3RQs3!OvTFH`=|=AFVM`RaNw-5*lC^?4%n z(>o#R4=+&eotA{`A?(EyQSQMp+K<>yI*>N&V5zYA3Wg#q=|=cm^dm9@O(ZbY_`R_Q zrI~jinUU|ZY59W)O3e9^>%Ebk33=%Id@FrSEG%t zJR%=X&KpS&zswctGm6d0j|^5}%$@P$zSe)S6t>jgEIw$U|r(H*XHcX$})8tU%`*3C_=xrp~5Kz+zahp7CRM#azs` z*d}pCL~kHZZ4>{vnd4FuA>D-Q8!fLY-`2PLOU8=?s#&>8`To-HNy*PEnfZqo zA(X94E?`S%q_$x!C}Z~1HWnex%cgAlq+oN}Fo}_jge7a1S<8$up*jl3Rr7Q;ck?SM z1uivRrYEVH7nmM8PJ?El;A(zYEzY}Dfefu$P%o+(S1%lT2e#R4Lov|!)afT9UOS6SW83ISNgi+B z0!o&&Upg5K)AEOR{-xlvyrwOElu32Z#n;NiD3Tk2Z5UJJ0uBzj>g3^*jLW5O9x6Gt zdLFeNJ|ursmp`lQLU+X@nTO%~Y!XY$DFwxG7wjZYQPv%rwj^xE`$WBDfHelikz%}S z;d0a-bXL3I{m{%bT*S?74<~NE&erJ?I@VZAOiAbvDTEY(Nf}x!`!+Fq99jC|YH_O$ z^*(_9dW)_uuqV`z7>NeABq5dI4^`hhr`2}^5X}8&V->N9He*{qd0Rb)n#dPhvcFr= z9H|F`RM#gPKLTv?)*^sQm2Wc;tz?8`>9A#`wloYGZP#S4A1B334LqlJvf8*nL{yL0 zD}ZcryR+<4vbY{iqVUqCh@(PZxvns4wA)7`b@kc7+HtyxKQFa;`r+hwE~oU+sZv1` zhc%P;+I6~TsXR_~p<=F;gUZ~CkKG>{4A+qX*lOO(bfVb?+cNC3M>lZqg&gfC)w*vk z^f^vbQTBUU1kzkY_8iE2_?LWqeDG>+uX#;}rS>n^Ny$ICPMAKo(!2CEubhceM{InF zP!4+9xU8)AC=pZr!sv9sMs6-)qXn(2GAY<4AB1Cnd|B zI{P;cr}E$q*k+#j)XrCx2$m{oiQC*bu#M+JbDe0N34J<7gP$GL6>^k-fVwV>2CiU|Fn>Lg3AC?p5kE>&9!7*nmZI8s5uXepPQb)#@=5a5b>8CEo z)9y@WRRf<-!>R_j8eh8OXLclzOI~KIOZirO{K@JYR#o#wMN<&WX7085@cyy>B%!yk zfc$Px;(e`MzG%7a0}F(P&YKg7k?()uDm4&*6z;xA@u=@Rp8_j;M`8m;)w0oHcs@7+$@? zZZ4N6iKFx{7~J2_dY63W#jK8R2;syiK&8g<56Z+NyQV4=cYORVNtxDDa(efIEx?QI zw#$X>GVTyB#H_;L`?wV( zQfup*&d$qG>SHg$_@=!X{kwx@`P8;*19#E+fZECZ+qd&PgJ$pFsj6Gi~Pz=VM_7az4Y={Ls!>)O`(?TT|qF=-napWm5{c$Q{rv2 zW#zshuc1BBCr^4I3!nyHXV;4A{pC(GKK*w_d=`l6zf2Jzj*nAu|(LNpoqoTQ{diOv4V|o z0FZb^sCVYtv*&i|M~DEHFOoZC0}t0YJB)QN;H^`VUMVE6H|(CC{Z(v3n@_Xz>`O^R zCH&D%z=snw!mj>nNZ}Eg- z5&aSA0AzYKWy0EHZC;_gc)nJ(lX1 zgF>I;2b)2I*M*hLHX2iap5&V0z=SeAC@&c_1d4jOri8Nm`)EC61x#)(8TsTs`iba1 zT(Lqjq7G<(uD3Flb0BadB0gj2j@9^y_4Fq2E_M2SkxF;!BOq8n@y z+doMS>Y3_zBZL<|d?sahU7F{{PitoJasFBl*QPrn)zHF(eh_8SA1rBE8ljVM3M7xr z|0`_epE2IQjaqrS?RV4)td%d{yjjG<6U6wioyvN8f3EF5b*7k2BM9yNj4e7iLwHv@ zZtUeeR&e5#i^$|W71~8u*8gQTq31PpU~+lO!9g#_L#%PXjrO-4)zfXdEj+L=mR3V0 z*2hDiG0m@HHhKQ6J@tNz)1G_K)hF+N(jRXrsK>N6{p$7peQ}Pp-h1*gug=U_K)bVn zPNj|0l{eD(*^`*r1BOZEv5(Kpyg-`6>6`zSr!U~mqO&WqvkV0iJKizOHVXReHWVpU zBQ44>(0$q6mjbdEpHhi1PWqD&|6x+d$e>t;ojRosI0RugJ*^7jMKaHtFEXO}==-)f z6TZKgP(eCTp(i9KA2-pvJrH2m@4Bf*n-;wJLQh&yb8EG=u3h&vy8%vO5BVDsS zOE6?@adEqnfG_}1PmoDqdE~0-{_x8BoX7)Wu7iXame49X?SJr1=!mQ=B>vDdBZ$zy zLK)Ikv8!9wzbQcJGVD6=wL$L#mIiqlJxVIa*Lye)!=ZTb;-c3r{UM>Nj;}$@573NH zWDxgiz8~h;dvi{>DiZ}u_d4bJ#pZ#bI{cX@35Jig%d%-M%`SnO#EUjh$U;&qG3%zU17c zSbEwr>_oklyKe3ub*TVlh_1=Q$m}3eZxVDmP$RKv6Jw?*(rIz~VN!f{;1*1>Cc$Wajix@ z8aM1={wp}NR8(eU_BCyHH@&&93z3M>yCYChi_`Ua=vJQ~*~*Fvt#C>V5X4QGoj}29 zhf_+1o$4O6%nmg2vg6tQP2ym9H%rboC_qdR(TV1S4>=HuD)=WVDzUM$`c!ly*8rsq z-9v{kZ~>`6(^OWba&?O-{6IJz%1Z!1;VHu@^?V-;Y~t{=jo_D3Cj|=@I~`KHbK?G; z$K_zi5ftm_c*86m@0aW`wy#hd<3~jg3f^x76NA7EjJC`}e9@XUYhb#-3kq$XmvT(z zbwa@n6DN@X?ckt6x z2bb$99GruPohoj&1k;$+fI>g<&CmF7de2#prS6Yy=bfFLHmzDop=7`couivI1NI3} zMTG8MC`8;aqxfc<4S|QduYauRHyUiM zlOu1ZDkjfNH!m=REDfT^XT4(N&R4HKBlK?Q-Gb{nv+;KplFSjUHs9j;9uAyNuv+>Q zA&uKdDPa3WV34&Q|Z=6 zi2GNhCJxv0;ef<_2{eGlGaP~8Z}F)ML3%bMa>~leP70R{QedT3CV^QX{8FSCtk!yl z0&{bZ;G{rqH_A_Z#j)u}1gA*o*~2q=yzB6R!y$|`EhPFNLJ=>W`;X7NTy;^cjL;_l z)iIYLoKBt4){G!(p4KOM=cuYPpH=3_4R#45>&d$t+TbyxmO*y z0!>`Q0)L~fU0hF1DvIgZjkK!GU&!csR&?f!ZXfM)M|2e0*fH>htrUWtrJ~}w|FXj3 zmom-OYS!eKO>ichg`^5CDWd|^PK8EB=C;xt!5Zby42SI>UG8~~v8?NFq-40v~=aeMgj?=`kZ<^;QZj@E-y5FiWO3g@Y z=Z@<^*2GQT0rGQ^kR2XSZY#k$FZXTDG2v<^{swDe$-;rwNPf%1;#v zqTf>aBU8xMp6d))G_AT#rOblY{;?wB3UBzXcF*Eqi) zf~CkpLDe2gA}C~B8xRN~UCPH4mn6tKj4#;QAlAZwCn`d#Sh1cf9G~o-lzYLEf!4!~ijA8Xd+mq_ ztC23IL!=quQf=t_fC!TVM~*Pi(_bO`^QE}u=;JlUc?DVz#L;KhA6M3gFe<}m`vMj- zMA)EE^^jZ}NTPrgQPqb>vdVAg+ z3YTQY3|6{X`)B$2;nNK54UjA{uO2*jfJ+0S&aSF3HP!|N^bY|;q1ZNlDMapFT^0)K z(wiVYx^QXv0lhCaDIY&Nb_Wr8xM$D^u3TMJm2mxf=$nM7yI-}>KY^sdR}H&4A6;y5 z5aw=veHnXpX~yAe-Lq@sd+{I)mRRmVq43Q!Rd)e<5oLPfcnJO-ZG!&VwzWNZ+NS3Y$YrtYoxvk|}UyJJ*ZwnT(cmg-HUXfKopxu+6-twbth1j& zJUnvbKJv2>5l7ZRevGT)_B4Ya0cy_@3L18L?$-Clt%KTacxXs!UZ6U^q>Ecgom`#C zimFcY;JbT8xE9G28c43}N7%w`sKBr~2;H!5aPPUeJFk5X9U&@IO)(5N+DF_wS9$;x_V zlW@SO|Me&MCBtXhs1pg2nnFDXZn5UJ=&@@W+&I4jZJ;22k^F*KwLui9WbX`Y)Exi> zdx4`K##$tL81<9(LKN@Z6DVt9YTAUz<*^8x!K&@I4=t6GbAh@N30Y$7(DC6D5G;Vw zNmMua?%6%F@~h2eBtb)X2ucmNtFwZcs%km#$zZ|*jeyFf*4guwwu)Qs&Y&D@***Ji z)qVx|kR*smKZCc2bW*{26fvD}p@^|%KDynsQTUWu)2Q{38 z#J!pt-w_2Az=fh^%TVm&zyMlP;oFlr)_ z6`a+XowXtpCmx#HqoUH9`Y;1Px4m;kBg%OeMmPD+<%4?x*BBAxM|7D1tsVQ&xV5rJ zvS*_X%n;*zA*k!<(Qhw7Yjy@HA+t03zS6!<4}X7u6A2~cJp5?b6+WLCTpm1;sA8zu znVojeqIq-OLi&@aLAHa%6SHnnKO*Os%KGj^-*Rm71e4n9v&X`msFSB zkqZU)B97?O+A}>iqo@GNgh6!g$jdQN6&q4_z?MqI-;Go*%L+fhg;m5qCNGcGVLDN7 z^(9kCcS}+Z+yVD$HVxJZ1`H~E@LpQ?_?dI^K9F4qIz;VKV=fyFm6`B9-!X#3!(!r_ zpPp26vRK9?=dqZ;nH3jxmTTXwR^-&Xe`-5|rbxuLSN5~Zhet=F5Yl@2 zQ)DUjUl1gx@bU41N#cr{Mb+u7W_!Hi`2nOvB70PgJ4j9UbfA6o<8ZAv>loSCR=~vx zFK)1g^@m75W)>D`(+yI%`cp4`T`DP)O@oX#l39sMCZs-g%{evoMwDXY?_j)ovAya` z>mmH`#Zq_gB#^*G00y4iD}AhI2*C&)E`8##ly4Ho+lNE`N8V<3qUiG~O6Vw<_s%>|FQrgMbP_L;{f^ z=-@kgyfBW{JU@Ug=!ebCej2oMLmF`@zkmN8P9;F6jdrleI_}^98Ciy@FJzLd;~ABO z(PEC54elZm?OPxjhv(IL8&y80uv%EiTZ`O_UcCzkZcpsk>8OnXr8M?^+)vap08o(|oK$Plo+;DVHD_ywSU>q4Le>THl9 zf(Z<_#3Fe|dS0l-v_Z6Eoa>SI*>yeWg-t*Y9&t38e0FWP-;V;(BB zy1?gezlVqEKjA!?7YcS66eHW~%~*CKnz=@9VLwpf* zjsY0folmIcqTWV26vo_q3(2(9d=m`~jjdaopcFgtic}y>ih;@=YBdzdBG(MOOvBa~ zF&X>;`bI|1K=K72Z!VpL_iU$vGOnh`mG5z^vccw9NFKn#n#E&b*!nKV1~|aTbDc4I2KlM^z^=ZbqlNz8eBnT@tw)e z&L)1_oE36LJj93RTb2X1XiNn-T#+_k$s*~w?z|zivk=Z9^pKUC`v>|xo26ydJR6r{ zQi7`iIaxOOqTnh#)rNHmi8#oI7cIcRs(eQ9P9tj=;~R1?@XX4eT_YoCp4)r+j-Qiu zg+g}oaO>mxdfu>F{2I$lZc>mq(a=HR<;1U2w`$e*zD8XUExePJVXvyU@!YK^S7CJW zR?b8eLYe{2pKXSQ8mWg#GNHlkV$0uI!3p-+BHn18m7F0v8p3nXVyU2zf9sYr+$ub7 z!@-TIZycVm!uW$T>9oK9Ms008c%3$N5>&glh8?3U0t*D~FPJ&Rp1Qe#%*-6yxZ8J^ zWlGORPe~mh=vS|N-BS>=wnkkY?*@c_FNfgq(O||fgO8(Z`;|8J$jacdu8}WaE-AU2 z#nsc#n|BvsC6=sNOON~7pLXP_p`9zW`A@W#<^{CI`uZ;}%oALgLay-YIIyOe=|Git zuV(kclzfJk3!tZ)+eZ7HiCP`4)NJ1gePTtt#3f_ZD7 zZ)vsHHKG_j-F6=24>)Bc*K0>CuV`pEc=y5z1Dz5Wzb+ue1)4SlAn&@)pM%%#WuR>P zzQc!2bM3kOE3&@S-o(k|cltD{1cidC&?3eW7#|a3AutEA)LS2UmjV=6SuH*JA&M&NyRLheczr0IEn91gf#{@N9>1E;Fe5qdeDBNB=}k-oL?F zhTm(Egv*!Lh_NG>0dfpQOR0|WK_^C4V-_+c@ zS4mu?%06P$m2pyA*j){72pMeKcIV{~J|!Pq+?<_1BZ@9H-UZeL2##3XS(>OfVz{oY zB`hsOsx)rc@5m_)sIsaIyM&GLcq~m~<7-gz_ksUQc--H%u2PJ4M~gU`5^k9s!&GJw zJsR7-mQai1&w@wjsojmnRhlO&SH5`m3?33Kq&79ahM0Cp$L*}7!=2rS4zhnmG`q<+ zqwtba%|}40Na{5<-k9kb7ud}@nP)3EZU8s>EY+2Pohsl7GJ7{%1w($|5MQxev!~z$ z77J3|0v;`spabIsS|op+)l*zjMn9iV$Gl^PRs z{EMt-gChP371fQb_e+&=z9Yxqf-`V?NB$H7Eq>JgTt#z+MH%jF(4A8`G)bFtnA0)j zZbrTr0=iEyA}v$OltPp*=H@QoW#!;VZg_QN%PW8!O2Pww?YL3}?qy&;1O&WbO@00z zoFKM^4V>GTv#WI0c0=S0u|CR40m7g*BdX*QNaSW@?1LLD zzNm|1;lj`Fzn2rzZpGBA<0-X9YL@7^zYs44opOchCzA?$j0Xj9i$N5JZhJCE|yI&*!Dmu?>m) zG&SomFB58E(C_#Uu-`|p37@2KRhXElCMhc`ANh+!z%23wm4#R1upWM8u)r`p6?X3T zL|5i7?Bh0cSC$A}J9tp)>C%ysSXn_eef;4#Y!2dsGY)j}fsYU!s9IV%i=FUbdaM~` zwg3)+h!I5`WO^LuxRC&;$|V>Wf`E$=VN9k!3B5@}=uFRQ<_w)-$;fF~9x}t)xMc{Y zN=r`0Is5k2D{OfKurdU>KagN9L=I$pu>%E(q6VpO#NpC~b{=X#y)UP02%*3T68L_> z6Qzpzo)wqzUtw?t#(VYQ3vLXweSm4Xz@6bVXh~#>Q5}CFdn@nOEig7H$O_g#@i(D0 zTe$2rVc~)q7}_SBz<4K2qhLyu8)vDjf<3Z(S`PQE{PdY|NSY9h|>`{OSAnsqL}y2ku82CfE}ISzOB_ zx^F0knuud3HdP|{(P90=>Y#`E_ZI3b4K7eSRV5;k=_wL#3r+tMQ==%8&9P{abisOs zBq@Kj?RXf`^$LO+s}JBpblHWLSC7BAyzJi6=WkgX!KYvS{5@zYRA1IbD|HON+*7Tc zS!N!{Z8a}Y7DUG)D6cPGbRFm{+5BY`TLJ}9VNCWF)V7*>Yv|GeNL&L`)MbJR+hGThkrfzBL_-&uL;n$9WPRhl>2VhK85T^)e}AyqxT z6_$Z&D959`A^&~-I{nz>_C`Wjn9;uicN!kg@|Uk*wE=}*ZkY*4y5Z_=WUqiU^6`YS zAA`Z;Yo@hb`@r^QWoHi(1Ue(%MvuYXfOE5=L(_b@AVt9dS>928H4%*c`}YT$6P~a} zsd=MU9@nu@=mxYVAVd*;=d6;(hFmq=xDPK z9)5=Z2}H)QXk}-2H(yvS7PGs*Q0vD{qBQE8ns$vUKvgVu8OJMe)lhld&U`-~!VF?t zb#g}g;EY7dclrxUlk{K@{Oqb;m7!y4b>l1k^(D3mK4RjVNyLQNAtoj!WUoqVV^9;5 zkl3lf^Yy5`oF$T4@qQ{OD5%8^zDzf6t_3TAIY;x0uJTUKPZNz;r|PY;g*Mo$9UlkvZIfI>jpT)N)-Zg zSVo?YP4l2GLC#5pL3Gqs_ z(T$%C`H~n1&!0QTsI<0vXEvgN$lTn}>xqQbqUZu@2p@*7f4ra<_sIvYH*~}Ecf^-Fa;_#LaLkyJ z?%aYczaTh%Erbs{0h=RL46paMfieb!f}T2gvhc^3zVPsH{L*Lw3j(hVG6i=Y96FU9 zQcrVib?xllAXk8(`RZ+a0xPQy8S^~ADjuYwyxnmkW}O&Dq@~NNs+Jkw5L>#mraL{! zP@G@LB1_RSw#VP0ohijP7%%bDbJz_5R4a{sJBUvmPE#8jn>~9(2U+St>A%Y#x`+D& zOTt{cr|$uU5g5womPw}J9Y)&*cCVf2o*2vZ$FdBYAlD9CdOzn|6qd6k>T|O8SE+X7 zI&8a8+X~NfrQ|y6PD&Q_{VQR0KF>-$#;*0BghGEcJ<@@ZsK z7KU>dP66O1mx3SA<=}4v*Avb-h2f~YS*z%_B=QWs;s*1|C^5OecU67Yo6I-^-?q>x z6>7FEq^3H(ZYZ)97yC?_<6}B6G4{EJ-+K&mIGV%+5cSM9`c zS>W8nSE56%jsZJUQ4E4<)lD{|_cxkiL8Dxa!4BFHV0vVHsL}u~#V-N#*UhRsapA)d zmZQrDeHDv4lED^xftOc*a@n~wT=DF>+%hkLjbtf7S65fam+!jIkGQ)N790haVV|2x zO?{X^(EwAeyx40d5uqnJKYGx_I=#^N;+eX!U;52k56umd6v}1nsB3$LM+SEc+#^x# zOJ(}5N5~roM_c2O+56ALf|ZD9_tGWe;#x7A(4el9(uj=;Y6+NI0_(PJEx+~0;IDDX z1ADi-*&K6*yd>QO{O#{Awa6^B{=|w<>GQ8Hho4&faoeJm>TO&B6}w(QzPws1M+u5SPcn+&ep|LIA(&DUU)a#gZ#0Lf|6tZA*3Qr|0q|b*wnCsiV6JkJc3aoib$%z5WDhL=+M@)$r`0JidVg#r>7StQM)-EA1O|jHoRfi0! zxKlT0T4{@fLe-{dT+h|AfOf4q{_UojVdGUhWZH>uekxH}dar1_{@3jZEp1 z07g{)sbX{;6ul?uq+o_~R6~OlR25SD96Pj1M;n1fjEn;{OQIKhVWXhAm1@!aT{t!X zv~amNxPOf_6l+HXGc0%YRqgF&UYl%e615W$xexe5B9V~TQ{X;Yh|>pmV9|l+8zjPx zKC2E!!;hvnh6#t{H*I;j7#gpJnQeoP?OoBR87|{Tk5JwPF;{+FT^#^4^C`h4OY&~s zbRDc%Ff4){@N^`{MKp`Xzq4k$@#Ki6fn(XU_>0lc$LC3gg$f!yl{Fx(xpKvN*DhHZ z89BM_R34s2&a*bg)%&Q%f-7L)&2b++MyM`*eP$1jNpftuKM`_I>{EzNv1|xM5X=hk zRJ;4=_oC77@30~(BiKA*JW3k9Lk`R`tn)K7qNG{C6h<^S;8TIE5~5QPjb48LBHoe1 zu7gJKqiYHjap=hl=7&2R}Zafr0175#T$#>KdAwaJp~9hAp^wBV;qss}l$f?G*R!+(F$MG}g*b z=#1_B+V$3wAdf*zJj#ZET(K_Nf6FAzpykmc>$>Q&E@)%$Q$4sgkoT^zudgri{CP(_ z)z#G+Jxi_Ks`SEB1Ll9is%n|(Z4_UZ0h)mhh;Lg$DACRTwYCQMai_5HhH=akTi=X* z%PKUrLM>?{%@L)21XTL@^Xzqw9JopDM6W)21Mmr!GdwcjKJZZjfnX(L0ht;sOxVc5 zW{i#FP;}QGd;4p6>agc^8stM+va~I;a$;VdagrX^gy3;Hkgo|DiPMag@uk*U_54#M zx?U*XxC_$CXS*&k%HNLVBnlOBWzl6Drm~3|KXO2-_P=VKVOgM^K}ar%zjt&1(LrZCaJwN@Z6Bk&2s3CG)MvMd@(cA*~sX+HK`uP z82b-J|5iX1y6a+u^H+3@P)v0=n5iR2630@C_c!i3?$RUrkquH3A1*exIM~|q+Q6MN zmoVNG)!WiC&{@sf5~mo=X1^KzRsE_O8uW^#wYAH*m0o0|q=Y=^d)3^mfQXEX_ml9L z5@H9KT%ct`Lww_rL?Rmt3r3C#xIm_G^(Z;9nJ#0cqU4~9PfiY!s?g<1%h6XS=H+bg zChIM>%s8^x3QCc(dDsXj2ZLbt06e^T#}klo02s24b~QY`xAp*znq7?Oouhz!JLfPT>dz9-L#@GUN^6_n$pZsYQYx@r(yx z&LkN$>=^kK%*iZn?H_f?*`LgR%zhSBV{N&BqL^U^eGT6Gh^{L}pF35uDEeRU%7%La zzH)|k?~mKW?*>gHUZz<03cBmjiMRP!(}4IRc723L?m2kyO>=WDv;b&O&JY;wV$LI0 zr299ZH&&VGwFDzg#ptT{Cs%vsT}Q#Z`Ds3m?O%5K69a#L#U_Ikp;SNPSml*?b+Mz)l=HFA8cQ zdxA9)TgAl88=R(!de=JuQ3O?qe9OQoIV1_I58=hEMqhOpfpj~RA{CY>VU{3uJEZz2 z$j0>4JdllW66$}sxs9>%7q`RBo2zAIS2lw=qT)`YWD9w=O|MU{A)HO`2udYrsi;cJ z%190BdU{th1;itU*g^zyxHLXXyxc)HLQ)4E6mgURiZ``;l z=Xn09d26|%3x~$nam;x{*Am=;Itlc>7a6+-f%0I$>@h8Jtu&7M?LU_n3%?hGuqH`c;~ry_5) zBK|``;q&7s3&??@)5b8wMhe<&0C-Gcryq3U!lkT#(xX@ZGDP7OQuA8u#gJMCiPaSk z$m1h|>|(PzoTn39%si7JO91SLMQv27R9<0;>Bv`fJFDui(Cr{S@ScFyckS2#s8T0) zP!Q`;_?Q4PRF{_=rix&4W6WB`jMh~ZI)l6gBdug++mq4lVWPaW#9R2L#)jMJ51n4W zfPy2xtX>?ZK}TB~qq~Kf8KXN}uG~B-vhWui_Q9VNrr6GvkQ?;BB0HwZm@}!y*DzjQ z1m%YjEf`^NFn)L8Srieh@p04g9+J|RbTXKvw*t2b z{1?oG5O>&ag=xMn8r~NJPL5ECzu>UU3M)+6Vn(TtelYk8lFyDJDH< z`IbBmcv7~2EGT)tIdpC{hF(EfL>(Lqgl`PO3@`1N#(Id6il_}0_iIQ;fTWR78oeWI9CRJfe93!y73XlGTp=upsCo$(-bZFnaIF6jC=;qi1KM_K-+)REr_=ZJBHo=%4 z-?`Ci_0CHi=nKS|1EWYmLBCTU-MemHMtAXRJYzx2x{tm+i^DjsdPDaw8*}*E)vF_J zQAJ}oojcJc0#Lvm@DR?p*wWcw={~8ISc_QbEK-~B$`PO(Kxq6v2E}$)RjQ}gWcMX# zgNMhq5SJCGBE+SM!YHudrx{xMPo?CHzc-v3-=}1Jo2Y7?G(VT_-*tSHBv4hO|6$}S zwzk8~oHX10-AOOD@^$|%=?>k{7N+meZthTCJ`Piw#EQ_@$33L zE1EVY_7lo9BFV>hBQfyFT$rNl8btVitFiGgSW8$*1UWXVrR#ivKlZAe)=?s>Roqt z;P#3-oBlBu%-B$t#3;Fpx+wM6SFd0DDd1LNP{bpiiko1HOWn6T2ZKgLmQ(jLL!Ova z*nZ2gF-fKv=FZiyKCD0Jba7T=-BoH!3qbrH#S;LFMiaF0q(wIZw$b~RY2OhnJ7h9F zggo5&Z3x+dy0ABh_dzJ%IYvR@%sw52V@k27!GgfmOiyBz12F!)93JijOA{gVP|7sH zUow?}mzgGC*|b$wI%tTQCL>rRXw!P4=q4FGLpJPHj?)xC5+lC$Fl=RD+MvVZ%9QW< zh@nie?NqD1n!135vZr++KpKeP<(!;Njg46lU8sI8eXlpV@Rs_ANSt|4JHXEFgyRxy zzKF@q3~sjruhoX39lTr@;KfN`dQer6mB=z~%2Wtn@_2*)b1n9MB4KC_U z_M{pJAPD$p01CwsH?SidXWB=#lx%^=v%Sook)-@25w`dJz*tPD5G=H zPWBgy>z?mpP5;i;4B{d{k^L?4q*C_^ryT5<#wZ%h{{bBxOs#_AflSOti<`>^^{0cS z#8Co{84ON9bI2%+rWwVUj1#n|vM}~N`Z{C#%{}S+5ANARn7FYr$Oa=_U)^>dFW2J`*p2?_sUxYP*>hMIEG!!*uNQC-iD{y z#waE@a=2uf{P=iz3nmT{DNgUsAL#G5wgZ+PK}yICRjXnhHgFA$xn>#OaTmuj#dYr7FONLC;<8JJ+G&8$- z?ZOIK4t>_M^k{V(#Mca*8TlR@gMjE;p1rP9y>90>#{DGzNU8`jLjFDU`28n8(vPgE z4QLMldcML6+jx+DB<3xGH%6*SiFK|hn<1xPI0P-kOY;;$6&%FJowU@RGcotge}TCN z3Yu(KSF%G*jm1xCe{x;i!Ae>p69vU)Mi+kuDFf_9?AjOQS$*!}#dn=7FkcrE%+9o7 zvUd5h>IBM9l_!iR#@lga9=7n3N-U$FQlZHZd}Vd_a~n~G zDkCFw`gyIHU@ccLS>8#Yhx6 z_Cvb*%#x6}kNrlw0^!%+PfzcGe{|vmDd5M;%PTE?rTeT-lDU~!+3VxE*(eG|SrqW- z<5)6_UtYbsNW2ht9poT(+27fvNcDznk}h1d2zH5suJ2vasz2vTqt3XS@o$s4MyK@_ zqXM{|lE42>%WXPwg>vVRQxk)gFlZq;fj!|lSJ*rGN?Ta2LcWNgo|JZqTJNI! z6I|OW_iKz0ff4;%lMB*I%BkeMpVK{$r|Y_Y2Pd2m~Xn&XY=`>}GbYFt2TF zJb;WQAjtj}S=E0SMhp{dd7OnHCc+CiPU5XLK=Q;%o;Iv!->m!vXK7#@9)xws#Yizl9nBeALDWjtL|Mz(E)OfyESoTP{Xw`YpDru`v7> zY*|ntS*WS2L#Vy)=b$U8um6PSKDzJ$P{5nf4o?$I1Q`JF*m_d@D<{4&%=QUbPxwce zI<>NQI&?7_Q|!aw6mmC z$FQh+LwGH2keJw5#4nz-_5)y0i3Q(y-6lqvbYtXxd7W!U_U2yLWfoD>)6!xy>uPj3 zlwA~r(~jMa(M&Orp~x#h8DIi|$3Mb8n8i`)3!^C}QB&ZmsIiA*M0=*_CzeGG> z^z_aJIjA^!Dy9xU^KCYJ_Wl4S2h+wQo-;3Mu3tD6AJhxA(zMDrf+TOE1|k&uFy!ZY6^0ibAdEPsK>t zUu1bSdL)o3#4-i|#=3eH4#pn^Y0@@Qx1UlYe_Pl+30&Ikhi6Q&uTKVxQ&6l*#VnHJ z+OHHwFVIKf0zHg4qyq^N?^8V8%tQI-*!@G*F_#UTEcu$lP^$TuzfVirgvC1hM~Oq_ zJ&QliSMXoGa^;~>o(E2jINh-49ssfV_>kvLFS0#I^W!I9%j^q`&J4%E)cbA*wmXAc z!T|Znv*CdO*sdT`V~Nc~FOj8M@uD79F8!^WUR5vAIWj<_E~;Nrzk4w6?GJeqtn?S^ zrXmI_VnVmws6DJILdjmR%)IJlg};?c&xVhcE!~7FqB;%5pPT!rSvONfW1Z_@@4Cg} zWedW@Kgrb=*5$})xGtu6Svc1X%yFDMQ~u@#{#A(2B14GvZp?F4TTB(^iQtvBg4Jq8 zUp}fF4hV~^U7I#utBQzRl*_;p#ak&Ul|xq^H#9iTwAJF`bpsWTrujITUE8XLFne*m&d8O6RI+&$de;t`oY-MBzRP5X5tHqz zv|t)u7HWh|fpem+yeEo}BAC#&Oejc&m&p$ln7mgN1Pt<#+xU1mUtnsB)k=PbED4yb zW2wl%0M9dQ=s?D<0#-e+!l}tmxj@orNS;0^M;t#nXhBZaIhmokZ8|GgsLmPk3A7m= z``liaL=2ni>M{^b!jO9k@GEwVqH2eT9N@H(=008%<#Uu2{G9f)=s4xrR;;jmR8C-V z@>DK9tcUn(x%pl6`YZG7-m~X?ZH@?*$wOQMF#vjpyOqa2l$Kf#lZDW|19$Z`Tv)b9t2IFK z)!n6f5k^CD&06_)=#Q9+{>Ck2kj196?@#afXQ_epEI@xakyXT!D;%0(!hj|KW~f_M zhm?^#8g16BIXiCu+0<+|MpfWLVRl12A{mbPm2VveM|kmrR^`{o4 z^>2Zhpm#bhoLS%HxAaG}iS}L(9A`R4GA_zgr?2gP zq_j=W=HDXj*@eCzq`tZ|4^BvNKDJ#jp}f5u!>T_owx*eW(5 zn)hbW&m96pJ=YH;F(`g*a$0~H9+^TDjI%h**SgcXF-Ya4J$E-{L2AN4W%I@Bp)YTx zy$Z#<8Hr?!N?<)AL?$DkPQl^x{NM{CQPL_y0hZvEpHlW^{hMxq-|v1if8rVohOwNYj@myj-&!qz@V*cu$%CY&Ts{4B~r7NzVBjpGh1n26J-`Lo$ zKX+hv6-Q~6{rXt>Oa?{b5+CE5H-&e!7TC%K2^tUoQphb}e*^83m?-gtB8iMWZw(3> z6dWFHm@Rj5kl*x?>-y9`PQUY4R>xE2b&9#!9bqFQ^p+i_Do+BcRN1>VFNx`oiAAtc zP`sr6Zh3tF$qes<{0BiQkfUIaMQ3ErzRHRpYT|$Gw|Fxsg6$`jOkMchFsE^{8rwWk zCeXw6X+_I7z`vX0a(Uaw=G-YzJwW6Tin?yI!^p_U+WJn{CB|pMs>5%xcumg69v%p^ zF?v|~aZ6ycI&nBjO|;@ymY~lm>hbtk*I?mt+(?ks+Fo6^RcVJg!aN@wK>7Szyk&de zWJ>0rqLC4mErB zIb5*#V9n;)5G*=CG2D`RlJ3H9xsap4xL45Q5WQAFAob;fERW#>dJj%SYYKouDagPp z$X^X3tVSczi4OP4_^s#f9-WG>$ zO0PZi$u;Sum)^bd0RmxybI7GqI5SUfbM>vhmmDl{h||!uhD?P_jncOc3O2l_)^lB0 zj&r(*NXV${x^)4gt=XTNcvVQo_AK=8FJ+qd9m^Vij09mIdXvYh$vP1iFDiAX5lT+EpHG4afFY{`NWA6AU>3p z7X}?>137pw+bK+-3r2PBXvu1zPY4F9K$&L783bd=isF|!}f|D z^%a%)ysM6p?(AKlKj`_$Hki7f`$b)d70ZI|#>W22eGi__Y}jyfU7UQw!Pf*mwxlIN zX_S|sTy>JO`VI- z%+ezDe%NVIlxAsJKxuETsly%|&`XYbRbi)t{l`YjCUz}mrVV>VUAav@aKwpqJS{hy zqcr`7*~Pf0W#)8bNC%}E*yGXGrhIi7dCYqyEDWxFFQ`Fx^mwhv5loz+07I=$Dqq4U zE3Ubn6ucmZqW2%|nJxQJsETcXsU|899>u@{{9L=wFx#fhzm^wGFq2c0%~Lzo)RM5? zZ|6>|v6MLWGf~L?*&{)&LAXN5X_hFJ7Lt4)hMjeIY;4F`H3cgIZHxO192dIRq0bAe z8o;O?J^H)YP@(5?y=KN40yim6yqNT{VLv$z$rw^%EREG|E-#zl^bi-j3VB_1mZR--r=_+w3%_xNcJvpvVVbajZcft=Z@ijp z8O}I8WbpQ<-P*=|ji4HMi=JA~kuf8mwf6>5tB<*saOB>a8`2Zn+#dpzGoBeImWb@X z*Gc+TIKwT6HgA?PXm5-8hm+q{;Io#h+?{rhU<;_kR%>o2MZ`c)&O`Wh{enSh25K0% z?}2eemuAPa-x5_pjNFGGivqW#q(CGqrwZ)m&417uuhYl~uws~_p=o+1;WPxVl-!k4 z&n$`1&5%B<+^u!^d7vB&{?T}`_*{*>n>f<$a5TWoIF;Y`m>yikS$$!C z4qfMic+GEDxdl4;l%XK4W7UEp8}9uMGKsd%G-;>S6g}3^4oGe=R(#$WkZjB5?t+?n zTn(f+FQ=@%75p-U@_8~ME(bi1Xncwzoj>&95z3aqBH`V~NaQa!*sjA17(Fc*=W`n8U zp{qxPz=4D-Mw5d0I*H)rP&UIC$7|jwmMKKXv-=m7_kEx*?&ju3m9&y}V{2<;F&SqF z#=)KGDs>J{kk%71VB%kP?FGwZ!queo>d14Wovh%{61dQt1#=g#V8@37LGohi>TCS} zCdeW`N-3n$+tno|Y=aC2!R=C>5u1YBL~2kVA5fL5>T2Vx&5ys1dnGulW`|k|^YtIv zwBfQq5GaAeN{t9w)yawJ`0;lqr0`(tsEk4*4w6b6%qv9Yy{#I5|Cmoh0M-K@4aupq zW{N1P{S!=-#nW)*#-aZH6{w-luH4r8Iat!lUf$NVcbec7y8@J=;k}?ve71C2ny4;w z;UT?JrVN?Ao$@NX12>tMn}roEHdgu|UCQC+8k$75>#es*dPWSxW{H-3bmV>b`dcqU3om~?fdtSum+DcV6UNJ2m`jg zqKX24TgM40_`GpkA0G$GHVCI};b3RSUWpwudCUz$_mRRaGhM${V~{EuBscD2MD&dC zbk@(Xf}1{uKSz)?k0q{G=St-t7Kyz|I&i{Cu0QNU^bg*;s%-X(-sFyu&Jhm|ZPqle ze$ws7Qq*bk@W3fnF0as@$}Ogcn!75D+a=67`ZWY3X#IaP;(Y$3D)L+`t-{%-Q5H{v z@pjvxq2Z36T;!snqMG41lNv#@#*GYwXS=Xz_vW0KRw@)}&KK3O&lcj}%=!fZS9oIx z!oeaJCNF9zU`Nn)*Y@qwjstuVPbJg?L%k~JWPoKvMUC8aXPBU?ng)$8;HnyPpX!}b zpHM$Q1zdCpFEI@()WyQFxiLAs53N8bL&XwE)B%u&Q$dCwHoGXIK%HFRK_W&8vgVCX z?2XN_Vo5Nnvhvxpx(~zXcSD9}!_%j5?SQ9eW=0TH`PIWwCHCOJNB1xF?z9o-B)C7w zDx!8|E9PhXlb5DhQ>NC4yr&lR#2#5aRV1DlF31Cki8e|gCot13t?43Sqr4goG{(2v6Ga(225+b0V~Y#>Au09YakbhZ65-Ub3LNc!b7di{rDvA(`JOMkE~v zOd(iX*V&4&EFN)19a~D)KpBj4Mn%XM^d@r2CMGU-+)+i*#_nmP8L0p(Hq|OH*JEKf zDHDeukOlk!MMzXgfmEhSF(YxSs2rI-{yCd(5`rlWvpVVY|G`P{f9=Tm|NAfMp8EAl W&1dmT{J~_4V7u}zr9TvnJpK!$O1duq literal 0 HcmV?d00001