From 5f5eb4e7b5c33a084e7a71a8eb8b2cb8b747d998 Mon Sep 17 00:00:00 2001
From: zxaber <37497534+zxaber@users.noreply.github.com>
Date: Wed, 3 Jul 2019 00:25:50 -0700
Subject: [PATCH] Adds a research log and the ability for the RD to disable
point generation, makes the R&D servers stop working if they lose power.
(#44783)
About The Pull Request
Overhauls the gui for the Research Sever controller (see below), and adds a bit more info about each server. Allows the RD, or anyone with related access, to shut off servers and thus disable point generation (emag to bypass access restriction). Adds temperature readout for each server, for fluff and possibly future relevance. Servers are listed as "Offline" if they are under EMP effects or have no power. Servers now have a random four-digit hex number following their name, to help tell them apart.
Adds a full list of all research history in a table below the server readout on the server controller, sorted with the newest on top. Lists the name of tech, cost, name of the researcher, and the location they researched from.
Adds in code to mark servers without power as not working. This seems like an unnoticed bug, to be honest.
Animates the working server sprite, and adds a disabled and powered-off sprite.
The "research_log" list variable for /datum/techweb is commented as being meant for IC use, and was being updated already, but as far as I can tell was never used anywhere. So I have re-organized it a bit to feed the prior-mentioned table of research history.
Why It's Good For The Game
Gives the RD a light bit more control over research, allows them to cut off passive point generation if people piss them off, and gives purpose to the server controller console.
Changelog
cl
add: The R&D Server Controller console now lists the entire research history, including names of people who researched each item and locations it was done from.
add: The R&D Server Controller console can now be used to disable the servers if someone makes the RD upset.
fix: Fixed the R&D servers working without power.
imageadd: R&D server sprites are now slightly animated, and new sprites have been added for when the server is disabled or off.
/cl
---
code/modules/research/rdconsole.dm | 4 +-
code/modules/research/server.dm | 82 +++++++++++++++++++++--------
icons/obj/machines/research.dmi | Bin 28898 -> 30071 bytes
3 files changed, 64 insertions(+), 22 deletions(-)
diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm
index ed9ac03b6a0..3f6994f044f 100644
--- a/code/modules/research/rdconsole.dm
+++ b/code/modules/research/rdconsole.dm
@@ -167,7 +167,9 @@ Nothing else in the console has ID requirements.
var/obj/item/card/id/ID = I.GetID()
if(istype(ID))
logname = "User: [ID.registered_name]"
- stored_research.research_logs += "[logname] researched node id [id] with cost [json_encode(price)]."
+ var/i = stored_research.research_logs.len
+ stored_research.research_logs += null
+ stored_research.research_logs[++i] = list(TN.display_name, price["General Research"], logname, "[get_area(src)] ([src.x],[src.y],[src.z])")
return TRUE
else
say("Failed to research node: Internal database error!")
diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm
index 20e05782ef4..7150b655c4c 100644
--- a/code/modules/research/server.dm
+++ b/code/modules/research/server.dm
@@ -2,13 +2,15 @@
name = "\improper R&D Server"
desc = "A computer system running a deep neural network that processes arbitrary information to produce data useable in the development of new technologies. In layman's terms, it makes research points."
icon = 'icons/obj/machines/research.dmi'
- icon_state = "server"
+ icon_state = "RD-server-on"
var/datum/techweb/stored_research
var/heat_health = 100
//Code for point mining here.
var/working = TRUE //temperature should break it.
+ var/research_disabled = FALSE
var/server_id = 0
var/base_mining_income = 2
+ var/current_temp = 0
var/heat_gen = 100
var/heating_power = 40000
var/delay = 5
@@ -19,10 +21,12 @@
/obj/machinery/rnd/server/Initialize()
. = ..()
+ name += " [num2hex(rand(1,65535), -1)]" //gives us a random four-digit hex number as part of the name. Y'know, for fluff.
SSresearch.servers |= src
stored_research = SSresearch.science_tech
var/obj/item/circuitboard/machine/B = new /obj/item/circuitboard/machine/rdserver(null)
B.apply_default_parts(src)
+ current_temp = get_env_temp()
/obj/machinery/rnd/server/Destroy()
SSresearch.servers -= src
@@ -34,11 +38,26 @@
tot_rating += SP.rating
heat_gen /= max(1, tot_rating)
+/obj/machinery/rnd/server/update_icon()
+ if (stat & EMPED || stat & NOPOWER)
+ icon_state = "RD-server-off"
+ return
+ if (research_disabled)
+ icon_state = "RD-server-halt"
+ return
+ icon_state = "RD-server-on"
+
+/obj/machinery/rnd/server/power_change()
+ . = ..()
+ refresh_working()
+ return
+
/obj/machinery/rnd/server/proc/refresh_working()
- if(stat & EMPED)
+ if(stat & EMPED || research_disabled || stat & NOPOWER)
working = FALSE
else
working = TRUE
+ update_icon()
/obj/machinery/rnd/server/emp_act()
. = ..()
@@ -52,14 +71,21 @@
stat &= ~EMPED
refresh_working()
+/obj/machinery/rnd/server/proc/toggle_disable()
+ research_disabled = !research_disabled
+ refresh_working()
+
/obj/machinery/rnd/server/proc/mine()
. = base_mining_income
var/penalty = max((get_env_temp() - temp_tolerance_high), 0) * temp_penalty_coefficient
+ current_temp = get_env_temp()
. = max(. - penalty, 0)
/obj/machinery/rnd/server/proc/get_env_temp()
- var/datum/gas_mixture/environment = loc.return_air()
- return environment.temperature
+ var/turf/L = loc
+ if(isturf(L))
+ return L.temperature
+ return 0
/obj/machinery/rnd/server/proc/produce_heat(heat_amt)
if(!(stat & (NOPOWER|BROKEN))) //Blatently stolen from space heater.
@@ -114,6 +140,7 @@
var/obj/machinery/rnd/server/temp_server
var/list/servers = list()
var/list/consoles = list()
+ req_access = list(ACCESS_RD)
var/badmin = 0
circuit = /obj/item/circuitboard/computer/rdservercontrol
@@ -122,33 +149,46 @@
return
add_fingerprint(usr)
- usr.set_machine(src)
- if(!src.allowed(usr) && !(obj_flags & EMAGGED))
- to_chat(usr, "You do not have the required access level.")
- return
-
- if(href_list["main"])
- screen = 0
+ if (href_list["toggle"])
+ if(allowed(usr) || obj_flags & EMAGGED)
+ var/obj/machinery/rnd/server/S = locate(href_list["toggle"]) in SSresearch.servers
+ S.toggle_disable()
+ else
+ to_chat(usr, "Access Denied.")
updateUsrDialog()
return
/obj/machinery/computer/rdservercontrol/ui_interact(mob/user)
. = ..()
- var/dat = ""
+ var/list/dat = list()
- switch(screen)
- if(0) //Main Menu
- dat += "Connected Servers:
"
+ dat += "Connected Servers:"
+ dat += "
| Server | Operating Temp | Status | " + for(var/obj/machinery/rnd/server/S in GLOB.machines) + dat += "
| [S.name] | [S.current_temp] | [S.stat & EMPED || stat & NOPOWER?"Offline":"([S.research_disabled? "Disabled" : "Online"])"] |
| Entry | Research Name | Cost | Researcher Name | Console Location |
| [i] | " + for(var/j in stored_research.research_logs[i]) + dat += "[j] | " + dat +="
^qu{KtNqeUl%9y%}pH>L1QPSmSeQ9vVu4)UomuZ70Aw^?RqD7l5?r4%#zr-xx`e>)F96+YNuO?A1TH@Qc#H8%BwoQ9)37w z!3Y}5)6PVZjEI0QrUq9dE15(CdB86q^PhBBIvxg>BK^!Lv)l*wAd`+9CMwx@xup82 zblZSoP~Sxoe_z`!d>FY&SX-vfUW5C+?X54~JJO^d|7oeD3{ZJeb^2f#gZxQBHs-mp zucKxTip6l(#XNHO6fmUBu;OvCe(KpHeu8BAmhxiNU4HnE581s)XOjHbfMwK^2y=Q| zXZ*{P?(xoDudQp96CWu&li?~@+d3558~U9)B_4t{w4}*Asks0h@*@?xl$isl|Ip!6 z^9Cj-q*RYmb+>L%f`PE9YLR00uFqko3XE=P8Y~B)yOfoxokp&tAP-MC;K_Bb39#ms z9CX+ban1g{BTzrv&97E})SX(j4YxV3beO@n+P_raCIif2YL`JslXISic7Fb`GblZ6 z#_BG!)jPpSt=4tUCw}$xJl3O-=TkWFZ|5HiM65{OIZhbtlVlejDSSX@X;Pv%e(d}{ zil7)MsFb!4z!?)~3SN0jxfAT)4(!unnw*1Dk^3b6SGIQTuUL1i@8i5;{0bV?_l7~J zPQLo9sWK@fc4BNTAVTep9bodnKusU6CulaM)d76*U_!-LtPnuwptjPojxThd( zso$eu54`RWt>#6L3xx`-sWlTJj)?QG8CZohL9z~{f6fu{_APs)bHw@j9}E#sVN|E0 z+-vb=i(-Li6BD5y+rgR}7l&<|!|t}emymZ`jGgr`iiH#s1_~c24I)}4N-{RxhF@H3 z7k$0Te>^B&|4?S*jhph>;dl|MyK$PG2wCQ*1$3IHh0Jznj zai3b4_mrw1s|k2Z?*)U-G0K$)GoDh_V33LTfkRDhIwz! zSix 99bDD}l#V)>K=v*z^vvla4N-V($cbUUEn@ldProA;Noj*<%Ky_Y zX{T*acCkC>BNm@5o*Oa$VAlj52hSw5+&G^w{H!G>LUIT@hZmrP;$V5w!_fnUpHiUi zI)A%3a=%Y|ja51Eq{a@HeJdu0@=?-rF|-Wl5^8BAu}c~G>ONk{mu$P6WC3Su7BE|W zsq0FU(Q<01?KcRIH;E7{-+#D{@9W~y-#2MKqWbCHAV{_wuY!|9ef&edFJUHF!eL`5 zPXa?^ShK*$43g 74-r?>Z$V|T*2yDuZ;aBS-IP@ $rc&XzmozjqUKMczN97%eNx6qFc{(uOKbcjQ zsz!84Lw(nF6TN3ZD!Qh6kAlTetimj$y&(EnWQI@y1rVzTUg}Cc;Li{tYfY`*#a>*) zI(`idMR!V2WJxE0i+g~wPK5MM^0B8l{K&zig{eI9=FR;Qfb7&qXlT&DcPg+{&?&&c z%EPEs-dB>lSIiL}>xM>m#2U%Pf(ZZSiLbZz`*!Sy_lfTR;+TJLMwlIS!4GA_c|+C_ zSq=F8zit|10nfrGS(2~pMyEbZgcF?0QE1pql+}i0?7(RI=_=#{;6xW_5OdoxOgZki z)TlnZK71KpGBtA*aM$Q=qFx??;^Rfwxn_YZ{4U-_Z`Zzz(e97uDRW8NQ&Kl?%^`H} za|6=#<+xhFwq)+T=(y-!V5JtM@!l#(?Sp_0u|eeqK@UdyzMa**0=smOAJMgfvmJ6# zEz+yeQ*#>tR8R0giBi3Q)Il3qL5VVPZmw^SxS{a3L%H&QSd#yP8~(e4`EM^Cvec4` z@JxGDzIPFArd@Sn^6<;KNm0M=>3itUJy`Ti0zZlLBjvS(prX&j*#~$AA@(>yeG4MC zM{P>qlCyy!|A1dZ4e++(KWU+F&wf3ndd7TBHSiQxo)Nbp`fL~kPiOgS$m3KTtZ&~_ z0-4S$h6q+LiL@8*C@w?&`>Bo+)!XwmLJScOqQ72=>MIu0+;nl_i04h{7#^O~fklQd z>U}RDj_F2BtWx!N%0)E}u#ae}yi`=%*k8CrFzQR-Z#LG9OhTH+z`1C^x!nFa*Ew)5 z_RESQs_miIs_C6Yn6Dr`j)pKJNKqj9fHU~PXrOqc!7~DRV0cIEB?`ht!1qp$(X4*q zz6BhP%~qI_X69bSSW_Co|F4Fzwk*{g1%u)!5l}W$ poYym?)zf^doC1Oj3s{_=b5 z`wHt#(kq><0Q;!j@OBnS3aM8F-0ZM1@(4U E`|=`ZW6IE|;T z7-p9DyoqT?A{++f{2tl3YSS?1K;*Hk}|D_{^tj?Vqy``i#^11hF> zd #B&M2S<7x{k=-oG#2ExHRPC3nhQE(%T#mnPUb_ljEX& z6J{eB@_OOIH!Hfnf*dGsAAk=GSw+F>C)NU`LE;he+pJaj8%X{obx4mxmOl8&
9pn4oL{HFf3RCk3k L%jSiN_;2I|p&lIlP $0 zJli@HOz9U<%kod~i>N&etbZPWNqV8}I$FPo^L`Ah&g>L+?387TB9}xW$5*Rvsb c3xHOgk^@0n4@dMzyY$>DJfQ;G zyv*iB^K!ZtmMK^`r4!u61Td-Q&B
2ihPUfwSD*Sla3M97=^mb8)!hRm#6!)_$MYtz z87INw7I_cw_Vee@MUHpD@(J-0f*g`>y%#<|MU*!P24lV8lHV3V?RO76jnF%;?8WKn z>B$gaF|x@b0>e{aY~&Ts-R#otb^p-wMahz(% fk_pGP>K!ye8f2irZj z;IKiZ!53j}8Viq==bE)I`-+x+I2b~GzHe#cLI>*Leg{}RV{8Zi^+}(eN7V(k?vZ6( z?!iuG #r;yPm~^W^;cch S&Q8}u=m)3DfjWU2fe+avEN)z zNLCOQPUmEO`NH%d(b=C9JuWFO&auqmE^0_xGLy6MeoJ~-61o1Q82Pjn(|jKKeCW`* z_UGI+gy!id%QaFXq_?SIx84}Pw>td~2){{JR9iqyswRIW{FFp |vtvgn+lLnsjo9o_w5mP~r8`xuCk zA2FWZLnmYsc3goP63depZ*s1wIFk2B#QpZ}5%=#_+!NVnF}3z3BX+^CVZQa|_gG0p zk 9^@(a*pk )V|h8{ E2C<_T`vDt zj5xnvLS;y3o0>w<3sop7Dd|I#HYe&sZu3$yEvTutP`-}`Q6UwDg&YGKc tVu%29ETbRd`ev|z@yevhG_LhsVIGPrS5ePd*V|}e_0nda~S}g4Px(*8d zmuUDylWSH-J`+1uy{k?U(?#(1!=(KQ=x8ro>@ZsP3!3RHKN1aJ`{T@AZvjPTXxR+- zk i|C@Q9(>l^IgZn3KS+0N=_e`{UVF+F#;F Wk)P7ds3r{$n`^Y%5A8WL%*cLfG99N(gd E47Af&2K!NGOid zL-NvT!!qc_^@KGH$%78E?p8ReyC$`?k;l1Q(rn)*FvlzbGm5ZkJ*@V3iqhyYz3h`G zPtMNH>c|%{g7K`95f9xidZ8C}!SjKsEZA49UfcVjd5^ZJp|GX9ABNKiog#%WZavj7 ze&sinm6d)P6%?)0)NVz2g|vvc>{y57y%-d!0j?x%=J0t!+R#C%I3Vs>@VfT9Hd2b^ z%hOT t5PiD7%cCC=1;yglcA<)C4bFY@mlyMpv}GwUs(La}{9mz3<>YM!!TKKCTf{bs15y z(rA#Um>f Y9*(llCPASViyO~--rwp_Sv+JT0ESu3}LtPTNMSvN?>Ey!( zl`A`5`>2t)-LdP!1TP1mvT%1_8C82?Uz7|HOL6vXOV^iqiRV>&_M(q~^A~!OE^3 z+Sk|j f-Y_zXvc4p1v-d+))a`KE zl4AqH^8QIkkS<~zBYBo-H(=(_4r*~;UH8%HE8 3)6@|}E6O1#lcVWlYw)`G za$?J~NzP3vsX776<=KgsBk&x1hb94+qix$cyi`!@iZ4^OzyIt&c~o??5DX@;w6w%l zZ)o9f99d+A85wn0MEe^N)`qpixDjx58TjWBJAzwj=-$$^tXGKJD0J)O3g*l`{C!8n z-n$(dh?zfX8si9bL}m$`2m>?T@`?%r(Dgi3lSbG*eE9p%pG~AeQ;2omxFx5web1IX zVru6DX|m1;xRWTp;`nk*6)|TuW}7%+_&G7^0A8HNm&Ny(ig_u*+)-+shHCN3I{qUL zGrOqi?kJ^l-RtlVyuRZT4Sh$ch&WU2#e0MY&)tLzKQrDxq5UBd8NVeyB`MA_^31VU zAQD+R^3IRY$1(DYvb6WLk4mkmOgRmP?_yqY`ksv@((5hj$A{g9?0Gs{Pc4MUxJDau z4$jLZta(;l;EwlXXSuYh+CsWlVDY&H_4I>1kTaddzFCqQLLCA$a9GLlhC+;rk~OiQ z1O`g?mF4C4(<_%;&zygoa-e}3;qETS9y833HeD7WO2=5cJxw|U;RdQMf50QTqiOb9 zPff^;-zG#)DLBVSFNDv8jT&$wDzSMyXr7YslE?T2S8=#_F+yh93Gr#jsu*TcIeN_e z*_cP=nm@^P@5OImx4CeaN+QAK5oxihsZ=*G2|Q{MqX!q|#*14Wf91@`5yZANXG@Tr zkM&B}WhDfKN8B_@WQls(+uM}VPs>zwasBf$Cmty>VLY5Re{%TUr=ho?H&9$MYeqv9 zMHi_@M)4wZNSe#Ns*rNk`mo!Wk-H);DQt1c@jI$v#QpuAugW7*A`x%zBDy{!a49gE zA8$#=ia}vZ+Qr4s_~Bi)SG4WyPMr!9kn$lL7klEK%W_{)4J#@VWTnrR%8-#wRxTnR z_5?rypeoQEmpyV1Xohb(K=CBQrJ$9}a7kbQRY4?MV^$+>0Vdn0pD<)a+7>uVvRC@1 zl+rlS5X1o?r>99V*LnCb?JEdT%>vSkVj^~4Nt)Kw^zAA+&9PMG5qX~NM8+=ad;4WI zHL4ExHugCyWgA-R7to=)_i{@xB?ScTqW&ZD)jENy_RD+UipzKq*QnP4dJtAY$UkO6 zO7Bte*6^t;gS36L^vUj<-+2P2T-|J1-LNYKu-EH|4`Xx xOVQxxR!G56IEIw4KQ zznT6g>i`vnL2mH;cNH~nUkb{eYh{ITJe0DhQ#zC~Ys&SzhrzB!N>yyw;fOYtCzqcc zv2Hw}e;`_LU;aS(mj}C^4E~f+>vVB4icmJCVtL6R&VPNc;?KIKsOvYIud7m8wxw&$ z@?$&AZ58vM2G~#_VP}+u4c>SEopuYY`^i%q zLWHiB=WHdon=R-|`qvtg=f0A6@{C7Uu-BMCOSQqe1ZKblP=yWXv<9nXz%CvXmv(8p z!13xoDBwmw&~!{x6t~5 ZFurZ_a~v_N zehoA0mOq4gs08}RL(E{#Lts?CFn7}-AvQ4MbnS3qDJgxvQ}Kw+S%dCc?k#POrElE= zQj!(K&RNf;)hCT7T2bGXxLc(vNZohI`aqVfc$^&KKnJpI@hi|eUjl|L;nUpf9`nfh z#>bxe-|z$5MtNGU<7Ets)hP;w2qI_=yX}USFRdmxn=OT(iX75Ivy~*l)1{d{?CA#( zVO~{1Hu >(Q`NcbB9C!w{F9u zk$N@TO5ERo;r|3KZfNL&T5)gB%a!yaR}xayyRY!<&|VCW<&Bgu_vcWxg_14xYQX&~ zKX6Cf=lq ;XhKTW2uLeRGb$CJ??JdtpMz9?u9~NA<$b|CwYak+V0pv(ljPzm zP16GCiFcOgcROZCE^gDTEvN&JwE!~Ip4U1sR Ov7TExrt_Or{&01ynu?z-VO0uF1qxfOpf zi-LJ21aB@xoB6>ahaAYA@3|IXo;N=UK=Ts~*6u{m`WYlsrF_dHn7RtpvCQ_p7DIS2 zjkyYSu{89)eh6bVIZDyPW~iS5dc>nAGc&sgc0szT@3HvUF)38%Ku}w*WK`%PTIKoV z_sA$}nR!@M&SB-MDlu`X@L0*Zyju nInk&zLc z(OUs}J^>1vc{@p`-uxJ @Ue;AFNS^(`|4$~snvl*`@mx_g6*F-F0HXX| z1WWs+AUb{zL5(NL28fxDhNs$lci){Z=^@?wT8BFHH~g_YyhL}ex%XrLSJyKXmY`hx zw79s2i3v|ZVPRxalKmA+lVlEep7eiQcU$z;Ez&)TK&*QNO{G-q0MM8ayguB9MYQsO z2%%66l;Xnehrf%vms-8&jWBkQCRuGBHvW)<9o>_grdu3j4kB(hS+_Y_F*Oml8?D2h zzoGK=Rm*5nWlE1kHjt^rltavDs3!3~5VGaXn?SQ?H|t|z56JL)c6K)7xHah#+JPku z%!5@~S($A}JqiY3sOsXyqjP 6@<^C6v75({eZ|DTw6`Vaw{k(TqKf0(~XY` zcYb2*)a-lBRJWkcb;aVlh^Q!>QM;Ti0h!2G(Ggia6b$mZqLNb2TF(hBza}$N;ST}f z;bJP+Ey6)}9pJWkSa7#~e+oHh*qoD-6OxdS)~g_X)(%k>WL16f)9q`w $i|I!Z;lR$ z8ZP2?*zp)6&EA1O>jsq%5MRx2+7FEuo_~)Q@Hyr2<7CVy6b5zNYkRyK^X2_bJ0Q< zAKJAG%3_ I&XnW}MNa6&`XtdF03uK)rr%<#mX83E#7ohZDGw{qMp@&ntc0^-w}~AjT|L z)I6%_#-1HXNlT*!djM^Qig(Vsv}Y&3dGqEF&PQcyGTlSNdH7yjEBzNlFNJLTfh$CI z{6K(>EZX dqh-=VeyxPxp=Pl_kJ-+hm%QkD28NtH+mJ6e#vpsFupn>iweiJ zsMlTk2pQ6Scgb7&=f(LwDJ2OACwBlz45_!TyY1G`eavM}8)qWS*H%zLu!@ ys9`}k*=t^k;}0K0$loFV%q8E;FCZmNJ`nvS#wB6Od1 eB*TVBoZN@}Lr)Fi*-MV!PHy$i? z!_@RmZ|`l+qetskcGACoWs9-&`e;vDn`oZ+_0cf< h&Xl?XvF5(Ea}7M=gnn z@9gP$Jw9$TM3_M#RLaZCBch{U->vt*yE0mp{ppkXlPBU{-rk-4{ecAqGDCy_w72}S z%vkG(cUGyL76(>fZMA`HjUF4JF+ChNaIPK|1m&Kd+7;tOsuXfV`csbABf;(yGHoRd zFgL wJlNp~sARa38=EIjgO>APw;?iSlPxNo2lCE-A@jsow;bsG zg*bD^fULK{dqwqe%t++(8yvSU#c#Ub-}6?~PXW6X`Lw#by4YpgXEyHkCN4OW?#Ve+ zOnEI@R`MF&*004ZdvYVc(m+rMpAwft39ok8aWw-2wo`hEfz#7=z((m66}+N)i8V*9 zeC{T|#Kjq{i1WtIKNV)IajRouXU}SaoTHbd`1;eQGezINjlE(~$#2JYb-gqxv=d^b zPXW1|V)pe`sYnzmTu8$|1&rs2CKlVnp_+bDXC|7PN7j34tNqaoow_LM*~(o4v0#o{ zdK~p@Zmh3yX%nsTOr*C8r|#dylarPvJP!L^@qXkbIVt}z%iYZBop)>G6+in@#**KC z;>onE<=e*}A5;m{oiPu=FPELRC02UYmaT>A;*Z$OBl-ZuM{WrilFiQMk|i$wLa^W2 z! dT1XFGV^w!2ROkQ;r@91ax4IQM!cKU%WDxGNg 5}KG3*S5%CO}ka=`UVV zHZn3w`T8RqI2skjh!gtN$fi@UV+jO*B}+aa1&xb~6B84w0VSaG h;Os`d5j*AMOOFW ca|;<%J&) zYL!X|D;b5;dG8PoI93svCDBjIm*B5m<2>)c94+&wCzd?+;(90>gF~;w!6p69y`TE7 zK?7|XC(rzfM6usQs#Ok19+!fE&C?vnK%Bd_Df`)AW6kXgN=~X&QWkUL>%{K$KJtMt zWGXZAsjq|`M?ggoF^AAE)_JRG4Kp?h;vZgo+8_06r)$KKGm|b~#>duh5iuWxn>R+k z0X$?>R8&fSKC6U;1h>L75wJ&*;wLn8%z{$-c)I(qVXXAl*lJ&jqd7Q8HiZj>zoKJF z196OEzWMq2@ybduSF-m?RRGX-9anN=0%Rm$cKlnX)a~shw8HsA4brv7I#M-?cc~yU z+wNL{;HsO}L)@MiG4IEAUTa(Z%Vg#)#l@+Z>&-wq&DIC^W 7Pq}!APpJ z>l9wKq|MQ R5ebTwKtXFK2yr zr()=7sli2SnVBWnlh)UtQ5-HM1=`)+?Jsu~|8OntWp1wIufDz$0Lz4ih8FJ@78G<0 z4FxAB^MgFh#HYxarI)0xrFHP}lPA(XI48<>UjnoTw3SM%XXvmcvQR@YJ>%NvdU?_T z>=3`t&Sv)uM~j2^ray|JjEJh^>*AO8X483~)nz_++UVG*cP~GZYw8JXLsqXkina4U ztYo-jmF4aaJ2$8P9@Z9Uk7cy3-N}`6kKtQ@)v?HbA-${V+H ccPuceVmU2(7=Ke5t5}P|4*frOXn|Kplp8teUvaS-Ryz_cI|NfZ;dR1)3E$L z?Jy?djGW9*_ov&U1U-Qny=o@X4`|eb=kske5^UtIPjIX}n?Z<9zxvf~sp&U(#w7Us zH_CPDl26f&eF%^2L6FsdRpHOxBF9SG{#wdQbmBy_$BaxpAhNvO(`Rp;#{vk<@Vzr# zJ2ECF#;Lz2=`kDF;A8ee*|CaRwc_1JE;-3+eu2d;8?7xP9Fc0+t#zo>d2Nf5atss{ ze=T}Uj4$-ed6hr`czva%^G~tWe1LVA_gohV6M!+JvEjf*0CLuVgqWR8pOceQj0+A9 z{%SvT5i~h}r-!Sk-@kuSg-mb(X1LoDb^4*BqxL!Oq8tJUY93S3#^*fO?-58lXl-3x z1}Fs#0aAu4up9_*_8T 2mi*p#r6?pl?UIA<^GD}HweyrBulmChmzRGPWK)LNArOw<*%-=l z!e9`o{7fMQ?kkp1Y6c^6dWu +}8l_nH6!0K4R$P3kms zI3Rk&Z~4biHj~oDz;4aTEn}#mKl=5QGSw SfqVIiv0yoKElw^{*OZ0}5f^RJP zUcYhWKKJWCq>=*3C>2|ZpohRJ10sHoCw;j=xS?-PM8n*QPGp^9RCsMNd#o$Y=~8oa z@Yo3pZk4Xr$BiYyo3>zUzBFPii9TmLCi(W8uI?*`@#ze`&uzbVXVR;9QrE^W2MW9_ z*kJKgglm;~hs)VKJou-0o5JNF;kKmM8RS!JIonW)L&N 4=Nyb0{p zHV*LKUi_7qd*IK!o)K=Vp*<0r)a<@CZWW>?{28F5ni?m%Rzt(mFdTfgmAv;oa@ERL z8BSF*^(?ijz2D4pBcM@b++yH+jD=g=^d{I<68mQ(Ek*8-D 029WHTRu|S4hbwU;uv@b7+x>*Otus;s42YRF@jNXRc2Wg4E|gGd z4!)sb4m2zGFV&OevGGkzO5if$5WJp6n0K+E;)pyO*m)j;8wN-TO=#pOOkBThkz }YVHxoChUm#9q*pQ34w1q(@#ip 2Jf`yBKGUK7mMM#s=zpt7vfp8L#fU+b+i=Wm{dKSqrx)XC9K#8TN VGLO)F2MQQaH9yY44s>Vh~%_M$g`>i+)H@$mUU?mYDn+&3Rt$%;z_C?;a@?vZ;v zf3JaYuMx*F>i?uUN$kp1zuxCOq|XTn&aN9;Uk ^5Pf&WYG?={0o>L0*^2F`kKTP&O$D48KDlfY(?2$3driV-~CgJGwDiSsS zQ-_12Lr4(K8@AVu+6eC@WU^n-kB*7?JYgquBb}t#;h1OTMx=CWdhr};Xy1SM?~^Pa zbG0)NL!}=nyA`+kH1wZr0Dn8R-EMf%Yx7*Z9M*%UFgKB|#^*Kfn&=?aY)K!W8!5Ni zo6zZ}G+RPp{3v@J%go~$8@!)<;YsW39ySt?mh2V?BhN1wNPC@M5BVZH|17d#?VHbo zqzgZ9BznQEG&Jh?kZ?S~H1G@MW? sDkPpSP7Q69rSdi3bU&IBLZ2Keb58Obbf+e2TRdKvr3+ifMyDgws#hr3DGctBM{ z5$2ciUKS}J9s zh#BeUF?)@!Wi-N&|BG|?|IWOx TUte#d`?+LH@=m^>SY4sRh+?~*@jv`Inj10r zT-_qyT5a{y=iIulw#`qsKw)BA?|)c2dVlLGxFegv8~?Q3|4-kS^KX&g-?o6Bsd69_ z{fOwbe>!n24v0Y!L3{fV(DmV%PNTE|D7?hf|6=<8pTfR7s;TB%JE0>|6a`TrfFebu zDqVtfLBK|@7CH!s^pJ!uO7BQh6cGWD-ih=kO{5E tuJb=)cYl{=-2Da9)1?QE2mG9bnJ%=YXvMaLg&QT2KlC0p!f6`Z+(yYWYXb(T5}v z^H-vkPzq2-4NmtRsk(IWF)?lR;>Q6!)F8nfjbj5@5fc&FXd80nVlOp_U{CZF+SNmu zA>>G;IXv(vFw%bTqrEOOM(_c!tCNJ*#i&bHnUi*1zT`p~37Msp!HbQf^hi>pK3R8* zZ10bXhcDr+F$f!?eH!xIa_ohS0Px+?YdqytmyF53q#Ht3C?)v_o#~+aSW2bc0FL`a zB{Bk*O&pkjauoa`Nf3}&a#i7;`(ap2G0_@A2C^3;px0Pg-g7-VZEbZzU9{e4#uBlR zg}jp7rpvla%l9~DR!^+Q09uJ?vadL(CbH_5b{BaNB>nh+fxmZ@N4w$2O&^MY;~M29 zPpUly=k0v)Ct%zE0%aBnJPiQQM#EC duAjQzp@y<~+uG=|dB|&_O%mA0HE##|z7Y*oJ>tPFZLfRGS ziQ_caqq$!fm^~e_RA>kS4J9MkLCV*7K&F4(SVE`hH34`!C0XjO;ty4wqTXK4-OYaZ zukK$${8~c3yrTfJ^Njje9BtN7Fs0odcnpQUqVT62lw=1`)CM%K2#YxKhV?4z9LrZ$ z75|^gOzE}&+h(?_bSu~F_*aJu2iK;x{#gO?%|)L7eZeKN|6OnwfQkiw#@;I`>wkzt z{yz&>WeWi7xBF$#zoKF+b(F@(Ywj5u3aE|`4;RY*=KwAg`jI*~<|&7~r_(RICuaK3 z$S`vP$Dluc{CKQs090`jyXxK#btTGsZCoe*WfvLCBTnGz%_fGqFPeHg{VL3@L~hVk z%LauR3Eh3$sW%+weGUXp4Kj1pTmZQ)rY2S##9xDg5+dXnL1H%FmqExr#Y0Ze^x-e> zy^L4nZte0z{rzXlXXa4C8WZGp195og0w&| D#x;PBQJRRM_2?N;c#_wR#Q z)RbW`qLv&iS8o^t@h8=~^t3nYm8E?(nTNzOf>NX;84!~M>rv@Q0iHaZ-yxxRK^jh> z (bJ5pYuI~71vS%g|>62qy4u(TG5hTDqnZ8Q@6Lzy9N(=+Fg_gi{Nmt z$pZ@O5R~Q{MaL)~m5_MbYxS36#89bJf@h&oUK;6yc%9(5z37g%vQ%Sl9JDsz)L7La z?btgvR{Fcbq^VP5L~AC9bSx-mmUeyvu|vu5S~<78T%e()Df?={O>EBMb5ERU&~qZ! zEvsjbI#8tf ixeYjz@7h#WwfmjTLH z)8nU1G>7v@;Wa< E)pJ}A|qNI=d*(%d9&wVOz C)8(`ZIQ@D`k?;!T zrRs@zoh _2Teg66q0HOD*YiF_T5Ix}BS|jfJwFf2L=wH7g z03YCP>Hhnhr?#6-UDmeV8zU5nOq;07V`S4#_}D_S8M)_uSGny0aVPg3P)NjwOk|Ev zG6fSMk4L{c{rvg!oXIc~qU27-f&QI0*M<0L|4{Z`Y(BlF 25S9Xp=5rIm5d?JlkjlO;>aT4Y}LRzPaca~q!T>>lol>ZrzjzDUL zKtpqnvr$~~Hu+zxs?HsOvw9ZQa`Gy(fV8wU5Pk-n9XU@t`ZE*|0^C!XUl?$%+BrEL z`NsAzXo%Ms5T``}>gw)Z$70sEmni7aeeTrw!5qSgd+n4OiBK5C)r7d3PRpqeCy{8^ zF+h0bz-0om$PM&0!z{z?o~pop_LG=H->^}+Xf2SF!1zU9zn3B|*O%{;3B>MjUh@^m z*WG;}6x*(u5^0tK>c9$r&?ZWPV^~#cenQ1QA;@(Mp`SPvVO3-m+n-sn7^CIB$OG2( zXp!1pPnP>|B`^6=3%De@_(#^;Dd&C1q56meW=QfqK)ME;ZNaMplXZ=U3go&!=|y|t z!i9VK`e)x*iOo4XIRP;}Xf7CTChUpaki)g25&VrdmrW>Wf =mVq`~;$Gg(O=+~l|{AC2vFS8e( z6d4)tx2*RGaO<1?gDnRt6ZL}_+L+fXE7i)x$c*Aa)dS}J$nGr+CT(g=`pi1o59ivl z{-LQG?R}1@L!WV)5b3|rm-w7;uLAL %0lf?s5)p~IQgPv6;lSP9opI6x=xNS| zH)#5KHA^P=3gP)PeY+~s*E8h3UGk$2$JeM**278^J*diinD1QmCx;x=AUeE0(*uMI zXYbRg(# Qz_3 VnEhxq|q^(s(>5*VkUuzo9qz$Qe*DhFcpYLv^(8cq0$p&%L;OPoZ{ zB;>9x-+UB(gg<0*r58yo>d8JA`HOg~JF+}$Uy60( -L2N$WZ%)AJ&=SD4mSQteg1I!NnLN=Q(LUqJB`6|I4v!?WbkwXr^nUwHh6 ztJW>Wl~_LhxY?}gfqe!#KK?ELDZdXb5CjVCcL`C8)28XjH!PC4k}?dqzmgUG2spQ8 z{|=NQ0qYbRyDFkvQG7D~EiA(fl7?abBKHJO@zUJ2LcR}%TEX_r$6K;nIx-3^3|C~q zwooSscbGeXK$@);I;-7~USd{mY8I4u#mhQ%-m4oj0Yt-6udVivbA_*YXkRATN~GUh z=+$FR$5EXO1mzk6CFBTfxZJt?YA>J6>7uUYPgw}reUWyqt>g))3}<;8BqMT3?{YFd zJcah>Y4Q$?)KaUpM}DP%ticP|vTrZXXV>o8?jih^(4Ax6iaOW{1#+}r?;`2N5933P zT-$8{i@2=Buta;Lg5TcBzAR{8!EeBaF}J`jYB3FfaBC%sxc)0t{}g_GYu8GQ78!e? zZO5#L)_WlNaKNvvCY%gLF8OFD?RtM^UA^_TA_`h9)4cing9mAPlL{G{z*NR0Ik+Eo z@hOK=WSONVCuc?rbK#1-E}wm&eS-lwG_3udK+Ezi4Y!pF+ L>mm{&|2IsiB!_bbA#9I=wCD=X3$i_x-q?qWtO3{8BvSUs^ zg!|i_$3F%^&zm4Rn;|U4jl3U%^Lu1R+0gWO6BSKbkr#{Dz8 w^aS>^gnyH~UC?5)o4eQj`R|M4^_Qa6q(1-vpRCN%9oJr7sqZxihD4-+c za*kPbeW6_DOYeAm8?K6ppg{TQR6`VLL)BZH$p*f0?(Joq+<~qf(?gbEGEtTt`4M-& z%hm2N3rJZhZ;io~6?Url(Qd$Zj>Hs6(Y|dIyey=Xsa&XX0Yqm7J4@&~}i+Jc0cY zIgG}8=U(qeom~{(g0}Go46d_XZV+=n6xIBD)HX5A5qaiz%J&*d^1-#~_kE~4R}nX* zR}zXo6DHWYucDvDS|*P#_Sux?@S1^=;zEB2qz{iJUBgdqGixkmU?&@SVHk?LGh8u) z?!{0Abql)B&l*@ByA7P;+fkiA2kO}bpX$jf1ZzGBOTwAh)7i%E2uOB4i;Mn5ZkD&A z2bXn?+ybepr_dldF@_IdcGPcah18r*uCnz(<0<)rsZ@W*c1oerW+u?0b;$0n>q@UK zE89#4klmQ-$nBzY9)8uIq-GFAwoOP8O7m*+4W!fzx*=qA?nzSjd8M>X@FfLqwR%yT z$Eh{*=GK-38jUeGyDb+sbe08pAS;W4<<3pPLen`~QarAYUFo`zVFUQCG-B`RD_4q| zO&4iol!Dlp8?FW~ym{*T3)o0rLKhc!fC{>ql`!7$tYP>>fXih*Qx7uwB$Upk-$acY z#Hds`P8LqNb>&nBBHIH{Pn+1Kd&@i}YRS=!ap3z;Kd5I~G{C|U=pN7QTY0J^ QRtO3qe5d_MD)Pu)^=InUcKNM*;jvt?xLdtdsA6hc}bW*3M@WYPT{Dvj_R zaEfrohOF_2alh)P>^C{gVf8aF8+Og!GM!Ti<%K-j2vo}_GA{?i3ZF0=<+od^PSO7E zXG+$sU1!%#@i@cr)&y8KHyeTzm=X-!<{!`%`wH*vqscl8C+c>G)4VsQ8^_lT#5*ua z%$HbS4|h%t|9X__CFFOv@oKrhi!&@1wzWE4+k8<0E0Qgy`I}}~xvVXW4r=PeI?OA| zob9RDB=`Gw@kf&|-q?!qqQZ3cc!o!N_Ce8h2W|oVbT>Ntoh#AaTo13etNSfkz8H!g z=lZPHknnm><6Tt&DVi~6qzDRM+FO@~yJ4m-giKdh)Zwarwr=mPMx#3qA_&iL{zBr~ z&QJ7so@B)=e$dX+G=6}!5$a~tP{iwO?jNe)25&1c?tVv5+%WxO$_fL6jH-%lvcAA|s!YQtx(~UAF`}!*mIMV=GMS5uMf3jE6R6RUB{1b#1aawm0;8XP7j? zoe7;jHk@&=t+d(Np!ePvxNwEokT 1Lbt-tlK{jTO#?Hog2t%rxJ7=#8K3YXD(#K$iZf>iyHShw=DEO(YM5JZ}X z (L;_p79ksxmg~S0nXS2EA`aOT-@UPEy!4Q1^zH>4}a^| zo&x+DcZ@K5kDMB5k f(5CE)ICt8;j2i}?q zgIEt0-H1hBL(Iy=+;0=Gl*@F1ejbZr{FpmSjcl|MtIVD4c~b~zQl~%`VSQfUWK6+) zhm;!Jiy-56vNQgf4fLW_YlE?XVJvIrKR310yj=3Jc=tx?(pK#P<(R<44@vdxC7KvL zMf`lc9_ez82jdsNGivwFs5z%L40})uzRDJSHLiG#{~b3MSK{+xGc&U@QIcm*9o>D@ z1hI{$XVx_K9`awg`ug}Gz#sAomLu@pQPa;J{K{e;y}yms{@$-g^4yfPRgQ%4)+_rA z)(rC=b^fRw*=C!SrsFY_KbYJ(D@!xLTFBlFGLr`C$={S5|ERU;k65UP+}1gCk7_n3 zM=SPKtm7`^^ad3=KoMjhIp+aTMqmkpdWS}kO09lC>nb2#aSpDlD|=Xx&OKWK__|1J z>93?8Z5|UIRU++>4g#f}8G-0^g+z*<#UP4*g_;}?moD%SDCq!C@3R$G^C+n6dot*G zD;gn4BGu+Kd&rVN2r{Fv_=(HnXY&PVL?sMi_xQVh7`+J8Ev#&;oDhuxVtgy1xs#FG z)CLu`Zt$9Qb1w3ZY(E>K$IT_Z4-IsbK-}I(i$V90>FMd;gLssRMi`)i-n1-KU|n6^ zMO$0jaQfR!%*>MQv`aUcyu&Rwncj-S8|9G(<0$3AGDItvlH kX9&c5mySI103m02=IW`9kxm=N@D*&9~c~bl{ zcc`0$QOfLuz}1?56BVIE?@KO8ob9)YMuJ! 4EhRHFf+B8gz-{+jMoMsCm?LXl^Y}|N2qo6VNkiXR3|j8 zK=ECtODMv(p8;KDbF4ojud>9HJ|x`LdgS|?vi-z4`fq1DtwEbN0=I>J`Abh}2%R<6 zGja5uI!hBoxl_P^S~4$8ulqpX;OF{Ni2PPX5$V{R6{XjKK|&+oh(8h|As2x3aT!la zOUfto=~t|R7ha`npiK`c81g&nCX^&=O{Pvd{;Rxuo2<>Q?KYZ`0g($$E5#%25@wZ8 zXVpzsaprUZ7DepsugZqcMYpFKSN)eJPnbJKx%(Wi@>qrq_i8>ZGL^tW;%DUKZe~HT zUuM1Uvrvsf=9eD*?19SGrsxT<3z2R)5(@Te^9rVICZL&m0?9y>M@LXz8b-(q?mK-6 zcT7qDF1F@JRlZ^=l;1kcTVA~4voOj4fmqKU{YF5CQ+|0{YpYsQiLC5}K5$D?^zHky zP_ApnR*_pd!3N;qnEvxJ^0E%$2ytd}-5Fn_k9LtzIoUJ@Ar|KOVbF(`u}}P@Wjq15 zb{Zt6C>vqsvR;mUu<^_72lRAEz|Nm#i=rWLfl`k7n4rZ)>*wwIU3w12X0YaU t|?h5-&*x)3jNZ&8>*$!UDDQlT!a%p%*Qw1ZtIL3#l z5E9%ozjr7=u5O+Y@8jK`ap+_q)YOik1{Fz=p^{ANNeb-;y{3v+cpHxYkn<2EM8#um z=WWMW|JccG5?1(7W^F_ZHXw&C$xm}(vati%jZVdQ;!Y?r-+$$5U|IN1|1}XpHB-#a z3vn!1QICQmUk_fS<8}4%jA$G%b|jSW9Ye4b+zFWyuI3PLK$k!hsCLdKab=OV@v0Pz zr)At{H*GrXJ4@Z{IQpEW &kDd;q%b%P;oC3-*q|@2WT+BJgzs9q&@CkD~J3jRY zn1!AcW%(qRi~#Iu?UC<|D7>;(6|va>FPxH7;ZjKiUX--Eh+qUAa3o5wpL|f|le$~b zmBJ7)EY~Z~a*ta*Au*NXm3<)Oa$_iax(o;FI+nGO=?c}5$>B9!Z_cOL+>zVwcq2vx z }(q_S3aI?RDb%diPJN#jH0 zURu14CN1(=H5qsw#R=qXxcYp6JqC9e?_L#jag8~8E*UE8lE^%B$>Mk#D?C9;-cyD7 zK|y#iI ~3|78b{cNIiSvHt>*C)R6?;ts4W zw0BK*);+<{JC^2;4F?SQM7y51Qi;{FGR;68R_EnEh8)dAy4JV7ay1$t0oj5Mh5tWB z@Bz|Xn^&{=;D|H~)t%;!DPbpnKKyBHkU`+X7G8eh`lkb4Ehx?}OYEZ`B~X@ciPRN& z-!X5ACmW5Pn^z_||KUC4SJ--sYZDI_G3<7T0B7NCc{>CjRjC8hzSPefSw~&? xw3ZGs|*16zy{a z{CSV*NfyC*c1hsfi5Ipo&^z#l2i=TnW_QB0gba0WI=VbqL@tQ` p_ClPp2rFX*S<%xf%ZuM-K)sfY|#d7sTrRd%j1>RdM)ARFB;hvtJ z-6X>1rfX)o|I{2Z8E5}QAeYHw)3%g@vt20R=NtIEE7vhf0gB>02QWIHvJEGxpw*g? zHq#53p!>p7Jb)c%p^CYm{nzZvC@7@ca)7l7JKjqXD?eMkICD$%ZJ8{L$7o~z&UIxZ zU|P*aLWa+4<(0EV<(0AUNpXKKVWA+BScr3_IYb4FaB1D@x1wwvChors!sQCW{!9c* zc8uDS*<0%OwMMz=-VX+SeV%Jrs(f}O4s!^vTdNU)p`+2xIrS>~%*X9W vkK_j3m8RTtqF(i$}1OTspY5}tHv{*%EHvO!k1sXnUH!9 zN1 *_e6=B5H$9Vq XK_0OHI;vYNy-F*NR#yYusUyBR z(fuI;omY)>9?k~3*hu%J&6GL9$Gh^cPBe6?m$&OVs`)!Cy|y!c+n+8Gxr=DTJ2@;Q zJNd1{OwD%@;qE9;cnx`dUkaygzNMY+7r9ybbBL@5zVV!t_(|gla8o8i)<0$w8DT3K zVdmvl4Cxlb4~}&17USWkgvB#ytsZfW&79dL0# W`Cfy;0a6FnlW)&?oN-R_|^(R12O-; jn~%eE+lA<=S6x!;b=Ud7 ejw( zQEnL}=np^fU@sOE9e)h-(Q3>?f98nv z-gc~t-7`F?;{3hHRiJ+qizy*%e;Oc(a?pGt9zAc%C_yK%fQU=JLs37xUUWBFy_bC2 z0qDxXe)9W&DM>Id;3A3#Ttu1^H&70zqgHFM4O&7whs5%$PsGM pyl(+#cz1TC~*-nYsZP zb-FAw;(^WWQ*6e-Hy0k4>H2oKCMX>i9(qZboBRcElnx;$_3nC0uSZFxz83#S<>V6D zv)}Je><=$`z33E83obQ74vpDt#GPuw-$CZY$^-34H)ajf=}V>Ht*J_mb6%6AFVRqZ z;kFm(tth`up6D8Vom0>^pl$&BR$X5IV3*eU^*5F`=xsYwikC!-mqa*>(Zo$A;3W`T zc>e!3O7Unp;FUs;x9?}|78k@+o{R|HJX-^m4U^~OufPf{rAo$n_RvacHyNMFj^7aQ z8-pcRUioJ{P63UBmnLiEWKx)eK+T`{ScTk#s4lViah51BSFGjr14a`ns|PD8@7+;) z(Npx~a+NehkqQ=El>b}BZ>#`nCi3qrL_(I3W+!5+s`NN%ZF*pt@XEv+XMKlb#tNwV zzu;3hKHQKvd^k4p<>EgNzlac`_c-2Cvy)#ahTPo!oRRiuOLUE)?xwyY3sq`qqJ;o_ z=u*0lI_3zhPoY-Z-)*~XGPFr$BIYZ50p|)2-7JCbFgxq8pF`V+eV>n}-D8Hbo2yos zK9@dLk7Tf|ed(4|lV~i}I2~$r&&!|CiI#&mQO0=`>shwY4!E1XxtmN7zAa;urT_lf zAKM2&x%K3hLeW<5@#g!UK49pS0fU-E6Lf1t|E=KXivytW7vA2ZMs`Bl%L6h19qxg> z%C69(r+g}Q?)wP;Gq$nC{LdJFj2~{@1u-Ew*P9`a8|#Cs1HA9Snew57H}&@~O_Uc# zm>uotv!8wWqEGknnzYy?>ez4>eu)G>_x6@?X{L5Ex~_b@cb8uWy{^7tHexQ{7g`^= z u;oyi#(ST38$ zv2h+Mr@VUd6&w`}0J7uVr_K*raidRBWhI% zt{J-pfx;tzAnF+)@y4<8#>8a3U!@ZN>u}gsWh&6z(~g#|nfHDd|B&)GEr zj`lrQ(82GFpVBbD8=HX~IeP{cQD1*k0YR$kmvnelm2}jZ$w_mN(k8Pga;&IH)S{ja zjhSLd#!ONAqFXn1bk>0MP_IZI;e)00PHBZ&CM7?ZRpZ8+J`!qx2=sUF)AQ2~8>)}( zFTVdUfL$5N2lBT>EOUO2e=ulwb0w3A%GM|tUV^Y4dBxfsSpc>C4iCvCqQBug>v4Kj zn*Q3`gX}0nQ6x&%E;=hmYNC&1In20$0Mu0F0{=TEV6*dsF6F!ecmBo)&?VCEOei91 zdJ@zdZ5Z7`KgGy{5N5c*3u>xGO?iO{!alTbaL;(>N~R_!TTRJ_*GU8-3T~91+A8Mt z?%OOy|79|&D9)>)$O2>++ebq8l5z!C)E(bn`q^mpm9r*~_xsk`m?U8 wI^G>$b1_ z9_n1kRRPI5M7Wf?k537r*$xqY2Y?n{D2$A|Yd#XWudnqEjVYo&uh(4@)47i#KU-W% zEq?lsE5TZ2Ug4nOvq9C{L9c*FJ2kquXW>cXPS8Vy@x)K^8MR5xp}1fN1%9<=88xGv zxZ#Lm@g(HyejdQDuy`29`Z4jvt%(Cb9YDd)?BjnLn((WDBC!mip!0L3 8&p@0 !?wMtadt^X@EnCvD;e+i4GJxAQw%-5e)Jhl zwhP*G=_iLWmZ8Z~eiz|M!)4H(sh5@|Wb*FvApf2^0K34;rqS>AgfW95GpoV}{T5QI zj-;SqL1^sD;bnn=p%1`7>3bovxG9Md&;?~eATLsZl-vFdQEwRMyba7?2`+I=3iX)m z(o(^3_5ksuqDOR$T>jM=&bS0syZ6u}oaGKjs{iLT$GswL{fH!G;pIRn6(;CSrV+9e zXG7X<7a$Uph7zAxWIqZ15N0;MrbT1aO6q$|d13R)4&se-lm =P6cu53x=-LCi8pW!U^k%xa~Pnl@A*J4+pPo1XH+ozo7i z!s(pjZ`XK(d-V!x>y|V{H0){ikj=GTnAwHy >6x+a^4s3kgcmpATNbhnl+)IX zum@oh>t3K=43%HL7mbs}{Z!yJ+-e8V#xLP6D__45wbvN&{0C$Rmq3tt#1U56y}$IZ zRF7-sOy720Btzb cAz5OGY1ZZdG(&S1F-^eYUJ{9F-Bd8W~fao1wzg_iW T8~9mO5a_m=uId+MtHA#Uj@Hta literal 28898 zcmcG$c|4Tg|2KZwLfIu`r&8HdD9Z?0Dzp+}WKD(07MW4@>?uM_qR5hx?2LWQmJoxn z@B2D4X1ULJFW>L|xxe=x_wVueJ$jhY<+{#wu5+H}^?JUZuh+T4uNmpF9z1#wf*@7{ zeVrQ+L@Nq@Af^N0NX7Ai(-1^6=zHsqhmQRdTX(0&9!{<<5ajc&%B0q1Qj|kIr9gAJ z@AE|IU^ye) ~7B6PrskcRuuF9ryBq7m$7eRh^MSvRDE?60`atdG`=`4Kj!2X>-d ztV*UVRpffQlQlG?4ZL2f6%~D&ercB<8>;k9<5_^{eZ$qG^T|dBPW }*9w2GXXyUHEghH6tgNR33KIhn_Bre<>1g z8hfL8$VJ(_woCQNz0|GGTDs2ZKf4Z;Wy!e;ls_GLg^sX0-MDAUPJ$p&$Ux`fEuVKw zRsKGQr>iIwwqthOT7^?ITp##2kEQq9aEesBN7p7C{Ge`b@xJ($+9mVFdfpiKOmk;B zlGF0Vm}mZ9tfQv4!iG#b h96*pExd0Lp>b!_-z37u#U=AP3n2#@2*zypL_Tq(2I#z=3UA?yYqzkEEEEK zAm<3@xMP#g{iwC~#vVj `gfr1DbBjO};m+J`i5+ $&s#O_XBQgx!1CQ)KU~=P&9# zvzCnd3(Bh|NG9bSgnX}*b *B43W-3X8H#&IVMML1{Jzo*ABXl|H zqM_!4{@({&t)59h)_n`LdFawozQ)GJ{*;XO`(p+p5yiVVBVHh!DWzO~Rh%-S16JNL zkoC&&Vr u5_C354oMIMJ(O z5`U?5o4BC#bufRL_qK~VWhr-t`N>1PeIlhAD_75Y=$-`&Cv!`=az72zx!Nh-!`7|r z=tI!l0^6~>aj)>;00dpW(%fXH-KM5K_ZJXQ2uEBWeZ!)2Qy@F(M(TRo&^GhO_3pju z0Zg81Ditc!XZH?)8*1(-FWq*P*!E5NX4|~;npXbMU%=SvT@^&nJkflnfpXT8SS-d+ z+L0DK#Ch~+-rm{LbgO^bNL(K9=SXs2tr);WHW}~O)SZXF (jAfXc0jw#XDj=~)$rM^Asg zJQ&e-F7#lJx+6^u)@kMZh8IEZ*}ccvhfDJw-PPeb^Sb>X7|+kd+@}fW4HAAbYrebm zw1TLbAezTu_t >K$|NB`&3*m}1_^tR6#VeO3U6SSRoq^te`$p54@x8mRFZfHm*|kp(-R5iA zX&@ UT-0XY%Db7PR{hvF9eu690D7fdh82tk#a{A&xC2Jzp1~nLk zw6g76qt5!rlDEK-`POpfk~s|%&GDg!vggR6$F%5cuE+;*(29 }A@jGr z;`8Uy??XS>mVyFeyat+oR#-pafyQPUm4{{$EfEA`V;I$p(scI;`TE-84DOzP$}Xtl ziLO{$v0xPmT3)Ld2|iVJbGuy@M#{=UQB5t&TF;8_(w}ca%5v45xh7~9=&hN$5U`E9 zyP~;*@A6fck1d*-Yu=dlIEmDo8FPC0`}0kwZ=`wS&MvBj{!mJ`c(NV}>u &_2? z{av5&OAE6?s>Qa0BPDD Hws%{Vt6EFZ*eUBh^PSn~Rd#%6T-ZxXlFwqC38Xoht_uaUf9D=>CbzhwS%}RP zHp)8s$|h>*LS(#U=tq17v14vS`O2oZw{OqLyx~*zav4#tkyo};GDZ8)K0{j9pKeG= znY?^kWD@%- kPYaQzH#JynHn}+&> z$kXAWJmgzkG5669v^TzgQhNI+^ay}iikgUx!}iwO)x{B79qK|y$&!7BD{;Eg6@F`8 zIx?YkCyeKAH2z%ZmTGH$!y|!yFKYJV3$_X`k!Maic$EFz#Jt{%(uL7)Z?ADCQ|doE zmm;jB`iV0s#rXPf--&pVf9W_19cbag|Jg_tQOFGrXb~a#$&f4SQLc8msEU`yv~xT& zXab|DO)XJy`#Y>c)uwucEQLlgRC|uRM?bN9KrZ#y>_`9T@d&`8$1n6^_ZKX%nn%pL z2CuPw^&Kc<7gl3}vPagc^U145cVC`E(^RV}oULl77(zA4Sj{kiK=zeC+=|OrpOfD^ zDqhHtJh&w?Sjnw-jG#*15W66~CAkztXn~C|LoH<3;7RGzm)f~VGX2|uj_HAji 3cLQU<;wpY~mQ;`FX>3e{=4C58_KEpICcT;N!g(T0(Xw)Bbu?)r`VfC7MP zyU82rM5Ay@Ub}qH8(t(Ju~7J<`t(nBQJ4QdHiv+LLU+yfIwv0pAP~xf7Ug}TMi!&0 zB7nC@or{^Ld!>A4BUo{lq~T$?7ZOazO|X{oC0~L>MMFvvGz!PIFoJ<%=qLrg9n9gt zQ)pI&w>zQDqU|u&w-=lfZlQ1cRCSyr^q33cw`o1^m?+6Qlwm0L3~7YjS`Anm4N={g z82ufPw-;Tr8I-eY#{To?ma3i7Cff>LTj<~=xMDqB^XNDp(00h3ta&AZ;H??E@?avJ zIGcV~?zD`Mz$RAzgGIo;Be2KwX!!4nPld8(l#$>j)++;DTFVq&;UF68pMTs1PY dcvm4p-rraC_CH(9fTUR`F zKP+Ah2fV~&lb!0D&{xr*qjVb5LF|F`YZQnwPvFT;<~mxC%tau=kzZF i{j`mY; zVf*Jva$aXV6g&~BdWcdvrFfOk`$(E!&rtL8UQ{`3aLP7&Pl_JT-N+dY2+)M3#AP0d z#ZOfCm^cn_q2NqFP7t16B#!@JSt725ynQ& B=;+<#&iz2?;62_yfhXJ%j9 zQl2b#rLe(DnQ_ZkY6Q@fw8NCGi0AAj=Lh5->@8}9U5)dt>bOs|lRNQl^W)olW`iof z`>WF}-u}&-u0t7&y!&L0A2B`UN2(O{LhzlJ>zNK|&vl$H9z7|ew$6yt-BC@Q}{1(FBuid*|Hgip^eD(r_Q|+i~ z-X|^a1bFT2=D4JC7XwuJom2DAxitdeLeUQ;F}0?(t~MbSRJ9*xXSI!AgFK~%UafG# zyVQGdcTRZ@>Gb0%<#(c0eQ}m-ePanS08Dv^TQ8Q~b7uH MQh z#8w&f8?w$cm8*Gkbla}nT^y~_q?%i~_SJ2r`em<&MvPhm%^33(@dT%b&RVzo4p+_& zGL>NRpKhq{y qhMO>|0|4K?J$szEg3R~h0jHKz zENKapr@xHRH%ZCNEm^3gG_xBQ+ 2KIWS>ZHP1q? #quxrSLr8cF7l1QVI`3gF77J zm8}EjmmXSJ>rfu}+)j1NS!8u`Dd$lEfjQ$k%6B;ZdVJ%z&b4_j!uC6(Q^-<1*Wo;v z3oTb?xNX$j!UApV$BL_kj7Rr7IY?d$bXM8k7NM)D5fbchYo0IZ5-AT9@8{PTF+!*H zo| ut29a+#0EXak{X39K2bwBQmnArZ2J2{#J zZ0(js%#3sCen9MHQ_2pwC;u(12bypd>bk;iK i-_(Rq;yyUg>VzqV z=~LsqPg`ftW=NZ>m~Ot;0xh*~X7OANVB+7%X4daW9vbUfMIY)I^%@BtS^1NwaSHdW z$%;G$Tu`HJ7kvi%3tb}Mgn6o~fMWgv5rzT5;4rxQTWZ*m*e@&Hy>zf4%L1c)7P?*Y zvEl=WwI8T3_ei86`xX*Cg)TqRWv>GaB99Wsnj-Huam FQ+sC)1b%Wf9OEdT!DCn7oxS4_$uB5$hCG^4Q|+y# zZ6;6SuEfRt-eb)aN$Gz-3rpkQXpO;FSWmnQaIqp IS&!@HOz@_ZL;&MOTz z%6umXIhv_h7a{n31cB;`aeZC-{MDa%able{m=p m9+alf682j9FGCtiQwh=tX(ZJj|MfWF1ML3}($7419bCY4$ve?4LBh zYBnvYR7W4CLf^}*|AG54F2B5uS$keb`AZ%jo`IpY>7eL3v(L#r(0ZH@SN*4mH30)? zX+yveTKa-ysG`>lqEOo^gToH}pa=*AW^crcv2csx5uw%>fE}alujqWXHg*xxTn^bi zH=A;?Oy>Hb3Q{;11U{-=v#|QKq94dSMO@Hz#C~I_FYxC%r_$HKPZwo7)V_ajare_< z$F}a(yU5k+V^NZ+i{2cZ%=&;Xsn^0mXn_Mzk$r2 `n5MSSO8Cn`8kGtf9-ovbDMRSPUO{u|1s||jt&+Dqf zd3*ZiAQ%R#R_C*@tz?hzi}ak#VZYQCz1Yc#sFcYYS(2Bb8^`0YZIt&wZCRj;&4VS| z?Ll|OW4xJbT#%q2K_cB?*6=*DTM_wBxV6IW|K8Udq#h15TdG*mjseniS!XN3U`qKF z^k+UsSBeIZ#Ve2wZt^(vp{*bh3fovb4gnJRD*qM{h+0R_(ST^yEyW><80uOSTn8L> zQbLPJlnJfq{@H8I;Nmw_-2U5)7Xf&R?*1WqWR}QN2}afA5TsF~F_YMb@cE#HZ6(`< zD+Tv}Z}<)TYUx`!T}h~oW=p-Rsk9DwPvGw6JC!H?#~yJ(K&zsD*fu3(I1VSSPb;2& zjA*^(iAM{KMs=Z8f;c<;q}S;*`|`|c2~h%yukQ^9JHKCTlM1Y-%px=KW(dbbm?g38 zS`kvaFK_IfuflYH m%|tQPM|_5r8W3oC@>(mKw6EC4kuS-|gR@nhrKi82z;kcY ze8sRgtkQ|ri4?F00Nsov1F&cS<>Y+&Gh@mXu#OL2+f$A8wmD413!S9z#$qEtXCBF* z>(;p?zowU&Z0p$uBX3&?I|Q+IoS}r{li8b|Zg-lp3jHpgnz_9Fo!BXhEXTb`zmLpm z4dq8(rJdNs2YBm!5D3)Hkb%a3OP{*M{^Hz~gRG3G7IwZx`uhOElA0AnUDdnh%gV{n zpJ~vGIx+|l^(iggyiK%1BO?!JtrOug1qDJ7$5K~=K71wst?Zzll`8@{RIcml;;x MD!LUPqJsVG H)qlJC{qa6!4GgA#ht zkz2Fsj4T45%A`rHs32oUyTlX(p|=M%YlK(O$rxmu`VT_(`AERutj%z6GDiK~8kEw4 zI!W`j-SsT^C^!by#|St580e_ir|54{hGI-VRYqSAJ`SFEcgNL*z@o>74Gibjo2XG` zRasGeaXmQDm^G8KwPW$T=aUt1Z`eUZhlXfd?JA=(jVn>Z-RcAV*v5icc@thf}98~CeBMbv=jSetXVo!O@4jzBDx>5V9N)Vsou5~GiV6XB=k>it|bV&db`nVlHyS6&ct z)cK{Ip!# -KV1y50v$<-g|`TosA^zw@LLv2-9k?ixf=;|euuC$#(nG;M9^ zWGmOirSF!WwBhUQLU3MHaS3W_I?&-nJx!2$n(i{)Mk+%@Ae^+&sFhja Dm%^(iolf@elzm#a=Sh+>D!ld6qoRT&4#|-b$>M+GIaEpr5j?iajXY1Pu z9_x7QPJ0Yv9MJkvJ)3gZ>#)udBPv6<^x>(%N>7H~H>chcg6h7vJk-Gb-gUe?|3q*Z zy pAC~g;E9^L5|MrqsV}l?K%3JkIDVhPXpFeovMwouq64m!Lp-9~ zc*Cvqa{x1km{NQKbJ!!$BQ3jH;AI(3h&nO-)5+@~gP|Z#^J-PH;WPD%H+aQT-fw4# zlb?~al?(cD*jNLfX-lH_v2_eU5I$bpHPBelpb2<%cSaMfk5jq}WF?RuNwnV2dkCHo zr4B78+uvyuJw=+&$>*f_G!7eL- BW z_eUANpO#}+tP62SqBK0~sDW2)-qzkd;@sNtX2B6}M)o*~K67{(brY@d(GLo3+wmrl zn>SP|h~m+(;$epPg#-F;SZ{x)+QyFr8qo{?Y96uErZ%zjj5lE4fNF#{{>d&2tUCW0 z@e)`JOpP3boLQIDxgd=6K+(Bh$k?6)2p=S$_r6dsB6mPiv| AqPr)vYoI$&L}#-&27JKS1Racna3 z0OmB@9Iq0-GK6qA*3q||2bgryyHHfqLR}ZkZl~vCq3z2q{zp8w3^16-_UiPJ2trB< zNHAf^M h3%^z=-x&6DS)@A-WZtC?&j|7yN!pV42oF@+skre z{|%pumTwY6`R{4>kY&os{`X6ly$S2h^9VBe-A#nW$_sE2aco~?$u+xi--qtb_&~C3 z8#?`g$yW!1^jk2Fp&6qcsgrIk8&V1_TXdgMe~fw2;O>Q_`K>+nnCH!?EmiWL9YGGj z)NjUGdJ*OaY&ugr*P0`q|A|?0Hb(jqejq5%*r-bpq$(@^=Qa8N5uX1n>E`0Zp43jY zKHoBe5*pK7Ejh*dVtxw1EQ5f~?ZcvHQ-sOn*4SVf(F@Ne1s(U8#ki8BjV(#ozKhew zR)-syzcK_h)Ewc{66~~tSlxd=qH$-tsu^|ytHOxum2{_CRX3HZ0fPI807f-PKae?= z1LRjfJdfuV9YoNM-PKp6d3Cl%j5!vBRCJO?D#dg+EG(pk%*}iH`xo?KaWP9qErq0U zgV@P6+CNJ2uN%v_Msze@T)4O?%LgzJ2wHt%O{-;NeTYR&=P0-r9YCMgKlhRc_u{&A z;h3hg%++cpw_|LV1AKTR*^q?Sz`1ny_rHYEK<3ZCxf3ZpN^2Kipdg$SY3oYep)m%9 z9FRelXwspM{~1W`f3_0Q4z#}j#%kBn?K9dQTZbR%FGd1#KO8mGZ zzVQuwQ}!*u)LTxav+YF5nTH3+3#kQ1eZLUj5u#41BQ W>n~XHmPUVX z@0w)ag(bi%;dXfEvO~J7u&`UmKf3=r?n-I%)*c#qzl49L09t#4)T7X{M%60|8bo{9 z!}dt+JE|nycK}LxLW$fE`x=g0NE=wcM^D+p`a2n+Co4tu4zdSqV1*^>r1^Q??Y+e1 z7~VjTtMVcki~N;m2;vxD+aK!xx5PPV*=72lS^yAl{9_pZLEe7?_uI6+$FXxeKmGOm zQ^pb>qEAe*hJdUVB*}I=w;4q|$Q}c0P V&FI5g~gj&Q!z-h?>FDMGhYRs zjl5b5sbK|&`0tdT8Ta9rzwxgxXO{nRca%A{Mei1ECYI5zkhI}*i&8%HZGd7yz^v6~ zqd$B^8=A9lM<*IQ;l{Tt(Y Z{4OO9+dUFY{Qa8m>(FE*W> z>JO 1QibbFm$&RFKgvCl%=wAC z`7sN!K1C(O_LmJ`jMJ}S9gWHL+j@JHG6Lnv(t4;0qty%Gpv#YGJ_6E@25bAuWkN-~ zshSb;=w1>qo`CLZO;Hm@m=0K-8>(x~`%AU2QN!$R;z)3WDe1!J_Cs5kRYw5ZWWYyb z^$!laXt(FX(PE!hd*qr6QUW5S7`@0HvAsw3z5msKsXc>ZBdN{@5(S?d?7?UuL6u!v zLho?FAaft)VC6OLqiveSC k zRK)Zs;WP#%tI#r`oQ5)x0rRgq2>zSNtrsnL(a6ZC?w+w6DJvf3Pc7up|5)VlXxQnz zL^Gecag1(g>zt>gdym{-Ip(mlm7@-og +`qQUw&3++e-M@cl zev$Z&VO@=0PBv0RNUX4-MV3?b#QX0BBXM5?#JqjV@@0`{Ky6BgQMSLS6+eAIj@kE2 zwJ78DwhgIi(~u8?*N$fmADk~FrB+kE0WAT|9RvHWJYcgkV}5u2M?qFm+N)Pw?>zg> zZV+EqWM=A=!iH0?;!9k L@Y=1MVpWUiptoxhaJ36!?
f|LWxeFVV6Q%1UZa~SE)$~44!#s+0Xnd5)yP0!e_m2{e%$>t zm;dMIAnddt1Z29emGlC!z!5juI7V-m2x?`1jIB#*nEP|QnqC{PhXQ^TKCuzpTU4H8 zjhgB_jh B!*KY tR?=|M=yi1zH4ik-2`ey7H-Ik(eYO>TLr z=-ByN?fTHT@S8+NZ1_#i%`VkdwR _5tXsTa ze<9{nYrHBKh9eGqo1}>}_Vq{6WFOqi^T?~59p$Nos~1XtDtOt4xQ|<0G$b@%-occT zz-rcFii_@de*bxxnY$~)Q|dHng0x@cmU(>jsS=P{fKu0k`h?gI{C-96stMe@@bpu; zFkyLDky;xk9tFf3swDAr+|}7Icy1e{tS&|N$~EuTX@uPZX`6HBMsl`$ zg>c;G-^WaKPv0~lN9Jxv6eU(I$z85>8UH@>`LD+o1%WCPIldzYG0}5(Llk& zhL=0*UpA*PpT79tYUeh&z-$4cY&&O=O|@a>@=qHl4Umb{G~z1d{$Q#Ba`y#~apn@W zh6U(E!pLFz2GCG(3NmO?19fk_&$KHXM
gYN?!`|CwCg*mRGk#uqCB~}&j;3LKK{R)Pw1~bgoMaytph6Gp5<{>IH{Wj-Cg1-M zC{IwQ$};{W*~Ip4cMB!7$T~jnC36DKJ`qK3SnRn#V|Ga#ZBo{8%;hs~ySR)ASxG3y zpzgyJCzRg>0NJ1at~>pSWeOAYcx?Dk NNl7ZPIwJyKb~X zQJrwqqDIf6(bNYpvAylCMeO=n==vk*rHx+HpMvQlU@^}|3T7C6#}rJnp NhAspdYKWAVR|KrccHnzF_N{cl`+toz=Ohr9z^WIB5z%{JAToD$ zW_4**+v1|ZoHkN~5G?}BZ%0L9Vb{pU$MF vd!*#!j=cd~OH9Mtvju1!US18bhKv7t4Qz5eObiH cc+M@`anFcdJ^9Fy_>y=X0NEo@$rNVCMJg~5hVh#T&ZrjlqQ>J3U{ zBgUP17d1D3@w%JB%l4N& MbeJW%*+jzzkdB%R9TtV($bQ%K3+Y X>yH zdC^hQ*Uzs9c)=4jABbfg9W8Bbb=4sUAdUsow*1l#f-P69->NaGHTW|~OB?O%stn8d z?OBY=3FDfxE}lPiXeV)xQJ8S{!RyDA1~OubK>8CmwR>|N#l!Tz1TBI(Q57;pa`f{0 zP=FTUOEcG7vLiY&(DIG;2EJ0Ty WPAei zBZt`PFl2(e*}9Schg?YdOf}!O%ZzJvhveQBBL*=j^48Yw&d%jcMx!*AsAKnOzSUzf zn23hsCCvp1ss_lP$KN`qWYIwgU*z+74N=|c0CHg~E~=CV`P9j4*#0MBvMj^ qU&aOQr2M9**3bo>13k2kob*MDPpR_UTHGYd4 z)qv|=TTl%n-U);%D<|@j|K6h~k{h$aDgo6Rdsd7bT`1MB9qsLHL3`hKm+OI7zkc57 z)fx#tI5XbcVSSS3{O~9n8e32u+xF9^Kde@H>h^8Ji~jyXAWLq@FgQAz2JZTaVrM$x zH=h9(E@pMt)?=Jsf&8iK=XUSRP9mBV`V!ghwaj*ZT?Ii@f!^mkui4+!ZMG~6Tn*Ci zN0vKNybl<$kau>D5n&>HU#Q{Fq ii`J%zh9 z@RyHLt}Ykgt%jEFyvPjYo{{wCxEi`aJ$(nSNb??KC|pV`o;+VGnfa)- 3Mdy+4RlA>JSHgTW42Z*@Oic| TmwA3=s0uFDAh zhr{1r+#<>3QsyvBYN)d^g{j%U`t4IwxVq%TCShCP>_E@gCE2@`3j+q{R_E|h<;!a+ zZWhbRi^abHyiQYKKTFS^D!Gjq1mP>eG`5T)$sH(!P*nIct$Z{v6(OPUXW960AaK-t zI{0lHj`@L?<0N{7wu~rrjbmGXW==@PR|C5FJY`+L4KuC0P+afY z7(mo zN&fW$OlSwmkc38pM(35e0zu+YAq+@=7hl8W4#Xky`SKd(6b6 Hxruh?PbgMe``BmB*38L2V&FZA*r=d-eUo#zC)?qZrdZJgx7*JHQ&;X zLtM9yiX>;y+~R0WE2~k;-Nz3A7KN&(U}o29t`NSt7_O*R{grsL)Bw- zk7?bfS~#bsrn2jGHe&?O+g#wwAm9H` *=Y& z%>#-2ZxXYjy}jv1g)p|XYr*!HTX8(z>r>$hMye!gY&mRhR6$g)zpLUV?U5=os#H>s zN`*&`VO4wFCUokYU4Ec(kv4Wu{d#(P11A(;a$i`Mri5`yT)S%`J o2M(<)57y~}3DEzUcTxKcUK|*tU zC($OBVQX{*Pq8);VQnAFur0c8o?=7nI{m>cNFSEZu`flK`Yv5}`*s#>W<#YK$hx(} zu7mXQm066(Z4VT%3u!!4`4|vM=vrFRfg@p;FJF-W^(YVDSiDBsAYp~H&)>R7ti`OZ zG_{fufF8}s+9slhSM}g Tp&fflBs1b|!4kc&2o<>vgz;!edVC!$w zaIpw>;Q&8*jqip(mu?~Ac*y9e)w9#B>_O4&WeAv;{svvTEvQ%jogLJ!drTC}evqAd zkD>ZM1|R*MnB=SYI-uxU;V`&z>x9_9QEvWIUDES-NyFs)P05=8`mHv>Fdk~Q7SJ1! zZXdRm;*Q>L&YK=op v1?r)RG#6!o>dkt7#>HMxoBFIHR6yO@^_Pp5q^u #SnLtP9aj4mW#speoKC3Z7*(dn-*$oZxeTEHDI-+ zQU&>ExW~7Qk`F(*5(@x8$JjkE!23-`2mj>B6PgB>C%_gu%a)UuH=CQu8 (8IDtv{KeC{de%y!tawMk23|nF}IX`J0v7rTGawP zI|oztWUgKeTU1Gj-c@!H5lf$t^0b_sQ-ITJ_d2=}m<6_A)9zw&a_skAW88+8;p)C; zi3r$+M{xwO_?Tf?bdR%3DE6n4$jfQde#!6T-g^||P%Qe4>?Y2!NcPpns`3is#6a-K zv}x1!LR}GD;(!FAs+?n<(PmNn6!NeGvBxv6MI=6e=z*9*rXht?g=>6n(u8jE2jqP1 zy4;*Vt&1e~NwnKssQWvtMIWY+wj#D9D_IAk)4pClk$DctBY#l@5dt|V^%@q?05hMb z+j*JjEBovKe6Xv7z;=qt99|fE{)-|?_m(5ACMYWyb}5;m9e3@x@^A3|Up_ZiMilJM zd4Ra?T5iUb|6eRQ8V0Hf?uhRvgB33S%=p7hjkK3S{@z6w|GUCk-$wWuuI&98a*cmU zgW4Lv5!jR?#m1mI!8xt)a%ou(Q@|5SyNE(C?9hDUv#*D3PZj)jD#5z3Lkg<2q%FD{ zV;8f?oE(EXQqMQyR6^ta-jm$kl1KQOUw5c&k9|zE`h=*qelRx}(WOyhemRMzAI)`W z5u4O3k^uyZBO7D&T?{DS4bwHY%FM1=foBRg&CK{$kYi#N-n4|&Wu!-AL~SFCNCRa{ ziUbn~bXx2!!!}9nOnJzDs +Zwfmz1EIcw=;)tar1sa?U0N*Nm0iN__qLeL(>`4-XG+B0}!k z-Mf*|(QJp09I2b#O#k?iA<@z+$(d{re_|Zu$g^{E>l3TDj)M(=wr#IZwRCniRr~LC z120uqr-dQ%-hE8t>+2hvloTE(p=YzZGLoI0t*NKSNZ8x!`St4skU=rT(CQ~ASI&&L ze~O2vf6SrXrZ~###>h5cT&q5%1=JPPW2RSgzpx<+mZYITNn!hxlS_9ixlOIBkCU0> zWt#>BWE+d@d&Or+4;p*d@Wj&P{zjY?7_HRWc#cK5CTaCgxD>+a9;vJHaIb99C-TkO zmjv%*>^0h7UzfgQ1}0ZdtY@O7da=AJ(GwFko_vNtz598#U?5`fiE9JH&D_UeXl!OD zQr{N)9!2 Ll|OG zQWCDswED$nrz(4fZj=@Rp;1^^_;_Q=;MT2M@4tWN7V+PTa|R)f*UvO{0R&n^U0odv zP|fF?S+OZ85%=mt(o0HsSF88FID=BMpxT~~FcEG=zv(Dvr&&fVNz^ZbHg1n6(ROPN zc`GXv&Rfz;nR%;lXRocD|FUBdxK$V>VAae^fb6|-MD4|!WUO%$1sz{9COjMh&-Xd1 zIXCnqn;!>#dgsk7T)LVN>A5+>P!Q#Mb*O;jCPmfDW+*t1@|J+Lb0fJHrjz4qeqqsI zW6%yvig=(+WcR!%D6u@6FcJ)uxN$V{t(#K=yuPsF>N)hsKzKo;gfRQC_m!pu8Ikv3 zA<5)xsNuKTse_pIj9_0>MCkstpg6p~FjgDL2ORpw#>O=>v+(**_6&eMFpAWJvZZ4$ z-qJT*Mh`4D4mzTuh{R{_RNQD&Q&XAfX TJNk_9e-$g*QEk}Z+T5HFGX4I&hEO28aNf0ov;KGk+!zB$6bZp1`~1c zFINRaFH-1sM_#SB$eB) hDP5y{oF$eC^vL-f(~d z# Ha`a}LuesizCDR{;p zn|SEbrAyQY_w!S2isTOj#qv`#Gd2`5sin1te9>%tcaKD^2mymK?p`ME^y`?Q%45jh z-d<&I>3h$gKYX*(mp<>oaAS10Oid@}dNQcv*w*#}v#hJFP1h795DGT9PJk&X#?wGu zdWcGKrpgq~qt)k4C=Uxs4?}0IFTzWFg?7NuM8k;Rjtn3l$^!Hl{6f^c6@f-!n^&cA z#3y+qAE|(Ap$&;9ycwU%M*g(w)fc>mM=-8b9G|QWH9e4$j9Cv{g~xoF@w$3`mFu^E zCC?#3`8qktk+$QTOhPNpjKcPra_n0kS?Dh{wW;eFBmeXBBCd4MBb8N~jNFpnFel{P zM$Pjla$kSC26eNG{obNZ(CZkfriff&QzTCJdskDFZltjKQ3>71n(XTtRLWxK;4lGp zDX#62sD#SVG0U0!>(`B~?QJT9C@U-bQ~6YpTDy~$CVckXIWeHC$;ikQ;}sPZd$8D; z>S_(3qDS&6&`KJo>FDYnIC}J`{Da>oK~4!ngbq;lj;e5+X2g0cLJh@Cht_lJRmcq3 zk)zKjKNX)N%W3)2GSZ&i*rp3_FIdA(#yCPXd)^~Fw`^`09sES5W8c(!gk;si2-lWB zj~}Ii$!)-rF>pYG?9=oEI`V8+_lfu5H?jmVpnd_yES--G#j#3?0yI!<^y4Oe#|9y` zF2Q?d&vo|V%Xm}>s?9ON4T)J+&w*R};3T>z3`3~xEFnxSO;%R~?5p=v84$;1-D={r zoNYrGCv`x)yp+zIIRm!e+NYqwB6M8kxbsgfK>P{AIx=bR`kgyrAmS`4E*4i+6<}as zP;r}}A3Bh%wY)Y9GF7XiRV}TpwfI?7On<+Lho|RweEJ6ZHTz_Y_prWe!FHl R3V_TALWc9SaIw zMI|LA$G>JN_ldWxOO??2jXo6$@RGbK;{tZNYYbV&B=z- 9y~Z9TBd#vcNV+!4=qKq~cf4MU%rkJmU@F+$vs6e9x#Vc6n@KA|t9Rlxk!=JpN3` zNlP~*$XIlbj6|vX?Yyt76htA(=gloF6r6|7f{_s8V;M3b19vgGJpgY8AY8A&lGwof zK>?r%K^Q{t{Q2`>WtViYL-z&WWetqW3X%N0Le;2CtgV@667;QJgnTF0NMvE!yBxKR zO2$fSpitz)M6gHC{HWhOxo75`E%eJSbX)h&M(KeV`$`Dx-RS7=!ffiEhh5UrY&O0_ zv2@iDX3Bm*cd*J&IpEqa2F*?P&{T4j->&X6lP|M0HJz!d&bxk9R(5uFV+BZ(6f_2; zKThom5>J6CpH%{&vLfc>Tj|(R7&r7!@|E^qU0-`6np*>R=rRPMij{1o- PsBU8|u+quK79CL#LhEb&t9`*R%BDfLF)7 z`CsvgT(c_=wVh+4J(4pZl1gAS12Q;gz42IjsPM}&Ub6&Bhl1@`#f&adFaWp()2weL z8#B?7{tXp{aRsFl2Rr7=&VTv0SIq@q
*z`?TC3GjjIlB0A>TF`{?1IwRP03SQ7K_vP>4 |Dx ZtpBtsade1yls z55;X$<0;If>8BpKQCFaCtF7JHSo40}Ab^yV`+a!Q)wOx9PVx6PNQP4-?qrR<-`8m3 zw?ku6wpTHx1ulPdUPlS=x+P`LM8d)AJz%r}ZwLAW8Y9s&jg+jkpn2ZaL`%xPHjwol zc7g^!Pl_A3Prl%#7O);-@~P1gs*A|*kgobS2P~1pLNRTQytws7Z#tE}558xlqkG59 z>?7P@H5KY)j?#4uSU=qm25(p1d|7a5Cq5mkgnp4npo$2~>kluY`S#`MQtnGm;o#jk z^+-btfiF(Ejmh!@5ut1}P(Ku+ST`uan=|QfdN>R|$ULzOZDD4?i%Yh8K>`kpJ qx;;Q>dO zTVB3y=|F;~dfoe3WU1=iE!To#`YXWi0BYnI^)(s8QQ};Kh+y#Qh~ri*^6HB9F#nxF z$rO#frT9$JjBN(?GWzLXl26QR*P4&ok;@=Be x 2QiH-7uCtT99`GSIxB>IVqs$)A`0(KNt*LPJ`u z8;&4Sa+}3e1^%5UKwn1=9T#0*UJgl+l9l}gd%27$Ng=cSWi_|j*Rm|Zt9E!TJ+2Sq zeHr|x;`F$_?2Y=Z8kYWC!-R(FrjZO9wgUfGS6?0v_5S_;9(xy2h!P_yWZy-Zp_1s5 zeTz}ntdZ Dlr(bj zT{yU&)i*Km>8jgAx%*Q2@bWD%Pe{+z`SSo=ON-Iy^ZgTmNu{SS_~m()7G`>2s1*Q` zFcU7Kz@?47_9DeS3GCG1hXM$&mb@p#+cWlTE-0|{AYKfo=DGRcwE?m5W!Pr|X_=aK zuZ%wC q2n~{0 zp5>!tzM&2dltq28j#tR8?d0>_yIql6F>xyjS|C9jkhE@L>Ry~0eg)1~9{!TBs5E#o zAp}l`$`6)Y(pko{AB+(n?akCxKN<;#@k3pf$H9q{^9#g<(M_jI(3w{3qYtzK959eG zuC)Vy^9eQb#d7efXqVe%h-Pz)b D?fMz z9;W03@(gA!pMGaRL{E@nkX8>=7mC0B+5^?Gt?BJdjx46A5q~OSnQ)S7_*VpRSv#en zWIxHoTP+19NUhk*;TT3z{1&ryzj58YZlzDcmy*l$WKL(Crb#2>Y(CT7M?pZG4xrZ# z M{BFZJvwoxndSWsbYyV_dS-|!b1#BtSuPd0WI?vBc_SsyC{v4-dpzB% zXC4;1ciVnSB44%Z4JHKVd@T%DOh<1P)^!Qqevo+P9V+l0{BNS#ckp-4G8rRIHn?g* zni7L|_( 8TQ{_gcv!askqP6EqEbyBzZb;{|fVUGEI<~#(PrX_f&_sef z`nlcfXI>RuKUn{9=Dw-4`W0`?wf))n*UhiG#I(SbZ()?VIrrGu*g)^Lzt^oU7Pp!& zoiXyH{ol%UlyDo0o4}zh2H`;}ixwM9Tiog+0H{^2C*(IYHv54wv^rjLQ<;lU2m-*l zlH^|FcTMiyJiR#;fhsY7^$q4>b7pC2iAl^U0%n@6L-{NFZcWd4C(oY6*Gyb- BjNKdT{&M%DAz_wLeM9WZFP$56r3rL>+Ogder_tqBw#(qh7rx1iMSWI3p zy_E6x?Kv&;5C2$mL@3JS3gYt6!_v)o(tlQR=a|?9COzX9uNO5bto!PGh1Y5L^PqF7 zdnLX@aO@KGKlbzmSi~7o6V~d3rH}5v7j(_Tz>f)t8j=SBE1oDtag4~+_c^K{w2Ly+ zKevpp+6xZIW@Kbgfs^0I757KV+z=DCA|fIX0L1p4J#Ush3!q_F2E&J{Oh8;%+Fi)q zj37{Je?+Cu6lQkx;$bL?Jc*oyelIe`@!1_H 0 U`^Bk3lyUZKK(ZG%-lQy z(MG_E@jYtToa+n$8wQ5i82*-g<6Bx>Y_-2RSAQECD4VUHKeXwWim)cqQK$>M-PU2i zcqjH9Z)hT-7;nXhj@@h>J)^cmQIulZKQMkcML>LlSuEjy;c*8-Ua!1^z`%{lW!9WS z6mbShpZM~&CO!6Ms06{Q>L}C+1{z8(_Fcksy);2C50!z_PFZiYgT=CO!p5f?e5{Y1 zj}mZ^HDKoOej0FI2}TrYs32fyp}4rX$)dKn7@UA|fYJb`LBPA0B8jN>7-;l *|WigQvy_*mB=5RHw)gl(p~ zY|AVzyXao}y0E1sr?3NasxRMf9 5x$V6$6!*dMNC*`P}c8uTcUQtq5X3vo=kdGeJjR|X>KS>uDQ z5U0l?zdinOL71GsoTe~a(hOy=!Vi@}08E!9%|%Yb{NMBekd>WJw19!7hfBj#v(?>_ z;@ml`l7Em7u7I`*Z^?-149gpwCP8QlpIR^jlX0VrR_`swH%SziEb>Q4dGkTz4h6hm z7v}v)*z0xz;uG|7-dsV-l}45oUd1UR^%A;gV0x=HNmR*W7*M=29tr1T9izymiDg{o zOHHkDaCVkuxB1}dwd1J$ iNEXTxOx&eq;fE=;7HUL86oW=>Oa|3w7oy)$X3pKqaEj8Mn5<>`~k_wS516{)Yvd?+d))4Lp~>KzQ*@~ z^deZ_Mr*&8B-`b?&y?|NY{bPC?~40NB{D0FKyOu0qKcL9L+{W;>aE6FMkc$g4$10< z#GLWP>r*fPHKIqvD=<{t4P*+7i@!`N4LtM$6C9yp=UI3f`a3%6JCHw_4fu<1grbm^ zNw5)vY@0M-;Bw*mFIih;^{^mF7%?Qn`GB(V)sbVS$#c?MF+R}KdSw{}Ok*8Hc8PyK zIlx~wZn4PuPU?-o>*U+KJETf?ev+qk_=KxtTOljrORMo&VslB>(#db2N+UiwK?-A# z5HjK#PJF?%N*Y{QhK6sGOH_Nu<}V#scOq)6@+2w!x3Mg1NPm}5*Z_-0EQM1fr0V)I ze;FzT2^bw>U}kI+2VT+Dn@+AM_e1<9c(H5r=8Fjms+!n0S)1>sB|_;(Tst?h`uun6 za>OMY%J4eKv 0jNR%S z#Hd? !&uiJ>;yw2e$i9CG2 Eo+`I?rxj2mQC-Qd1c})6 z0V?;U56y&FzUDH(i`d> Dsx} zsRo&StJKneJUtQ@=;_H~OiftLRzU}=u#k_<=_R)R`@*yUW!zO^sNzQ*obC1a>dUGC zMWgChkA)5sXD{*){Z7P+k?ZQFdN`EMmYpBV@n?zU0e@cuhg5)=Sh_W?=LEO`dwlie zk8>maROO% -j-jx<}u!3MNC+Ae&A0n-*Bi8EaR#mMIsLo@%2@ zS196Tew+Gd+!sY1hj)yB(VLk)Oq&OJC9Lc9t6mYv2 o FQM>-^fnArB@*CAY=S#{LTV&=VBCe+qPGYDR^U}zM zcMSXWU50lVZzX;Z2>c061gTA=pE~z8cw!aS-6d622U!iq11>a8XI#9w@;p}(sGOqa zZx_smXz0`34#<}cEn}#RzjU}37xSJpqil5oqByrKM0NV&U21sP?ne=oVk${=0>4~% zN#jg!6a2&l$SHrDj&6eM-VT9L;+=A>-l_Mj8&a`c3YDMf-@EeJCDBj%m!VPql-90! zf}AW|ehTHoSbl(o*{LYVq2;Hj+kCDq`62E;#FVn%Pec&aTjyrJ&EiFoK7q6Xf-qXX z%9HPky;@=#>=)ZP;c*Ec#{h?9n7>!FBE%w~A?h6)%iVoNpYZ^WuxEBkHOU5=hCT3w zU}#wHxqQ4l!YNEB< ztIQ #3|u{2P3ID@1kV{OE&IBgq88hWf7UfH8YV@O7QYt^f!UA)HrrblX}ywOOL?WT z*iic$wObBPJV^2uroY!GT1K{-Q&m^lcUdQGNTtzY+9fqs=!Vo3XD(JuN(?>kyvIS` zrv!CB>$z#7pFeZql=1ekQP+z=`lU~#_}?>B&kwKrR(!@u0S0k14L>$8_jls`T0Pn@ z9=en!R?ktg-AFqZ4t|<5aVs>7uI+G_pmMn07=!dB{JdQ Dy^FIJ~zKgzYAlF2pw;%u=_OS5tc zJF7lnK?$CAKsthvcXR^sV zDse2|US-bcECz2pAe23+g|GN(cB1=daEW(w{}vwu$@WgvzL|U0S(0>*9iM(k!nkCs z=f~ao{qSewA}w*_kzMLzKV7AhcU1N*Hb{N$l`mha*$1TCv06&gBzE0&Z^xK5V@OTg z5~0rs 46K^;UWzADT9c=n8l_|`5r+RHWi~jFX0N&Y}Vg4 z+dL5{TE4WWS@FVc+T#cj_(>}!)#&oSjqKDc&Isve$!9-YlSa_g=YMQ$+*gd0)aG@+ zmUucQ41IGbv3kX-P=88YHx#U%kiDsCyCCKA<|#2d;)0Mz59hB8Hse}o?NFY~J5CiK z*Ax~Y;Jr3B5xd)@(=nL_&3Z}*1Gfs_`$5k4fe%$Ul;tJYp;EZ9DSnm*D|fd7$v<9y zxfayyS@l&|e;*LoY!}3WdPN99NWyE$2gzSIuYUi$m2*e->*6%gr