From cda054a9368643e97c514eea43ff43a3e34dc2ab Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Thu, 3 Oct 2013 00:23:21 -0400 Subject: [PATCH] Remove item_drop --- item_drop/README.txt | 42 ------ item_drop/depends.txt | 1 - item_drop/init.lua | 106 ------------- item_drop/item_entity.lua | 192 ------------------------ item_drop/item_entity_old.lua | 126 ---------------- item_drop/sounds/item_drop_pickup.1.ogg | Bin 7584 -> 0 bytes item_drop/sounds/item_drop_pickup.2.ogg | Bin 7635 -> 0 bytes item_drop/sounds/item_drop_pickup.3.ogg | Bin 7146 -> 0 bytes item_drop/sounds/item_drop_pickup.4.ogg | Bin 7250 -> 0 bytes 9 files changed, 467 deletions(-) delete mode 100644 item_drop/README.txt delete mode 100644 item_drop/depends.txt delete mode 100644 item_drop/init.lua delete mode 100644 item_drop/item_entity.lua delete mode 100644 item_drop/item_entity_old.lua delete mode 100644 item_drop/sounds/item_drop_pickup.1.ogg delete mode 100644 item_drop/sounds/item_drop_pickup.2.ogg delete mode 100644 item_drop/sounds/item_drop_pickup.3.ogg delete mode 100644 item_drop/sounds/item_drop_pickup.4.ogg diff --git a/item_drop/README.txt b/item_drop/README.txt deleted file mode 100644 index fe43054..0000000 --- a/item_drop/README.txt +++ /dev/null @@ -1,42 +0,0 @@ -===ITEM_DROP MOD for MINETEST-C55=== -by PilzAdam - -Introduction: -This mod adds Minecraft like drop/pick up of items to Minetest. - -How to install: -Unzip the archive an place it in minetest-base-directory/mods/minetest/ -if you have a windows client or a linux run-in-place client. If you have -a linux system-wide instalation place it in ~/.minetest/mods/minetest/. -If you want to install this mod only in one world create the folder -worldmods/ in your worlddirectory. -For further information or help see: -http://wiki.minetest.com/wiki/Installing_Mods - -How to use the mod: -Just install it an everything works. - -For developers: -You dont have to use get_drops() anymore because of changes in the -builtin files of minetest. - -License: -Sourcecode: WTFPL (see below) -Sound: WTFPL (see below) - -See also: -http://minetest.net/ - - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - Version 2, December 2004 - - Copyright (C) 2004 Sam Hocevar - - Everyone is permitted to copy and distribute verbatim or modified - copies of this license document, and changing it is allowed as long - as the name is changed. - - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. You just DO WHAT THE FUCK YOU WANT TO. diff --git a/item_drop/depends.txt b/item_drop/depends.txt deleted file mode 100644 index b88d3ff..0000000 --- a/item_drop/depends.txt +++ /dev/null @@ -1 +0,0 @@ -technic diff --git a/item_drop/init.lua b/item_drop/init.lua deleted file mode 100644 index aa7ab11..0000000 --- a/item_drop/init.lua +++ /dev/null @@ -1,106 +0,0 @@ -dofile(minetest.get_modpath("item_drop").."/item_entity.lua") -time_pick = 3 - -if technic.config:get_bool("enable_item_pickup") then - minetest.register_globalstep(function(dtime) - for _,player in ipairs(minetest.get_connected_players()) do - if player and player:get_hp() > 0 then - local pos = player:getpos() - pos.y = pos.y + 0.5 - local inv = player:get_inventory() - for _, object in ipairs(minetest.get_objects_inside_radius(pos, 2)) do - if not object:is_player() and object:get_luaentity() then - local obj = object:get_luaentity() - if obj.name == "__builtin:item" then - if inv and inv:room_for_item("main", ItemStack(obj.itemstring)) then - if obj.timer > time_pick then - inv:add_item("main", ItemStack(obj.itemstring)) - if obj.itemstring ~= "" then - minetest.sound_play("item_drop_pickup", - {pos = pos, gain = 1.0, max_hear_distance = 10}) - end - if object:get_luaentity() then - object:get_luaentity().itemstring = "" - object:remove() - end - end - end - end - end - end - end - end - end) -end - -if technic.config:get_bool("enable_item_drop") then - function minetest.handle_node_drops(pos, drops, digger) - for _,item in ipairs(drops) do - local count, name - if type(item) == "string" then - count = 1 - name = item - else - count = item:get_count() - name = item:get_name() - end - for i=1,count do - local obj = minetest.env:add_item(pos, name) - if obj ~= nil then - obj:get_luaentity().collect = true - local x = math.random(1, 5) - if math.random(1,2) == 1 then - x = -x - end - local z = math.random(1, 5) - if math.random(1,2) == 1 then - z = -z - end - obj:setvelocity({x=1/x, y=obj:getvelocity().y, z=1/z}) - obj:get_luaentity().timer = time_pick - -- FIXME this doesnt work for deactiveted objects - if minetest.setting_get("remove_items") and tonumber(minetest.setting_get("remove_items")) then - minetest.after(tonumber(minetest.setting_get("remove_items")), function(obj) - obj:remove() - end, obj) - end - end - end - end - end -end - ---[[ -minetest.register_on_dieplayer(function(name, pos) - local inv = name:get_inventory() - local pos = name:getpos() - for i = 1, inv:get_size("main"), 1 do - srcstack = inv:get_stack("main", i) - if srcstack:to_string() ~= "" then - pos.y = pos.y + 3 - local obj = minetest.env:add_item(pos, srcstack:to_string()) - local x = math.random(-5, 5) - if x >= -2 and x <=0 then - local x = x - 3 - end - if x > 0 and x <= 2 then - local x = x + 3 - end - local y = math.random(3, 5) - local z = math.random(-5, 5) - if z >= -2 and z <= 0 then - local z = z - 3 - end - if z > 0 and z <= 2 then - local z = z + 3 - end - inv:set_stack("main", i, "") - obj:setvelocity({x=x, y=y, z=z}) - end - if i == 32 then - break - end - end -end) -]]-- -print("DROPS LOADED!") diff --git a/item_drop/item_entity.lua b/item_drop/item_entity.lua deleted file mode 100644 index fb0527f..0000000 --- a/item_drop/item_entity.lua +++ /dev/null @@ -1,192 +0,0 @@ --- Minetest: builtin/item_entity.lua - -function minetest.spawn_item(pos, item) - -- Take item in any format - local stack = ItemStack(item) - local obj = minetest.env:add_entity(pos, "__builtin:item") - obj:get_luaentity():set_item(stack:to_string()) - return obj -end - -minetest.register_entity(":__builtin:item", { - initial_properties = { - hp_max = 1, - physical = true, - collisionbox = {-0.17,-0.17,-0.17, 0.17,0.17,0.17}, - visual = "sprite", - visual_size = {x=0.5, y=0.5}, - textures = {""}, - spritediv = {x=1, y=1}, - initial_sprite_basepos = {x=0, y=0}, - is_visible = false, - }, - - itemstring = '', - physical_state = true, - timer = 0, - - set_item = function(self, itemstring) - self.itemstring = itemstring - local stack = ItemStack(itemstring) - local itemtable = stack:to_table() - local itemname = nil - if itemtable then - itemname = stack:to_table().name - end - local item_texture = nil - local item_type = "" - if minetest.registered_items[itemname] then - item_texture = minetest.registered_items[itemname].inventory_image - item_type = minetest.registered_items[itemname].type - end - prop = { - is_visible = true, - visual = "sprite", - textures = {"unknown_item.png"} - } - if item_texture and item_texture ~= "" then - prop.visual = "sprite" - prop.textures = {item_texture} - prop.visual_size = {x=0.50, y=0.50} - else - prop.visual = "wielditem" - prop.textures = {itemname} - prop.visual_size = {x=0.20, y=0.20} - prop.automatic_rotate = math.pi * 0.25 - end - self.object:set_properties(prop) - end, - - get_staticdata = function(self) - --return self.itemstring - return minetest.serialize({ - itemstring = self.itemstring, - always_collect = self.always_collect, - timer = self.timer, - }) - end, - - on_activate = function(self, staticdata, dtime_s) - if string.sub(staticdata, 1, string.len("return")) == "return" then - local data = minetest.deserialize(staticdata) - if data and type(data) == "table" then - self.itemstring = data.itemstring - self.always_collect = data.always_collect - self.timer = data.timer - if not self.timer then - self.timer = 0 - end - self.timer = self.timer+dtime_s - end - else - self.itemstring = staticdata - end - self.object:set_armor_groups({immortal=1}) - self.object:setvelocity({x=0, y=2, z=0}) - self.object:setacceleration({x=0, y=-10, z=0}) - self:set_item(self.itemstring) - end, - - on_step = function(self, dtime) - local time = tonumber(minetest.setting_get("remove_items")) - if not time then - time = 300 - end - if not self.timer then - self.timer = 0 - end - self.timer = self.timer + dtime - if time ~= 0 and (self.timer > time) then - self.object:remove() - end - - local p = self.object:getpos() - - local name = minetest.env:get_node(p).name - if name == "default:lava_flowing" or name == "default:lava_source" then - minetest.sound_play("builtin_item_lava", {pos=self.object:getpos(),gain = 1.0, max_hear_distance = 10}) - self.object:remove() - return - end - - if minetest.registered_nodes[name] and minetest.registered_nodes[name].liquidtype == "flowing" then - get_flowing_dir = function(self) - local pos = self.object:getpos() - local param2 = minetest.env:get_node(pos).param2 - for i,d in ipairs({-1, 1, -1, 1}) do - if i<3 then - pos.x = pos.x+d - else - pos.z = pos.z+d - end - - local name = minetest.env:get_node(pos).name - local par2 = minetest.env:get_node(pos).param2 - if name == "default:water_flowing" and par2 < param2 then - return pos - end - - if i<3 then - pos.x = pos.x-d - else - pos.z = pos.z-d - end - end - end - - local vec = get_flowing_dir(self) - if vec then - local v = self.object:getvelocity() - if vec and vec.x-p.x > 0 then - self.object:setvelocity({x=0.5,y=v.y,z=0}) - elseif vec and vec.x-p.x < 0 then - self.object:setvelocity({x=-0.5,y=v.y,z=0}) - elseif vec and vec.z-p.z > 0 then - self.object:setvelocity({x=0,y=v.y,z=0.5}) - elseif vec and vec.z-p.z < 0 then - self.object:setvelocity({x=0,y=v.y,z=-0.5}) - end - self.object:setacceleration({x=0, y=-10, z=0}) - self.physical_state = true - self.object:set_properties({ - physical = true - }) - return - end - end - - p.y = p.y - 0.3 - local nn = minetest.env:get_node(p).name - -- If node is not registered or node is walkably solid - if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable then - if self.physical_state then - self.object:setvelocity({x=0,y=0,z=0}) - self.object:setacceleration({x=0, y=0, z=0}) - self.physical_state = false - self.object:set_properties({ - physical = false - }) - end - else - if not self.physical_state then - self.object:setvelocity({x=0,y=0,z=0}) - self.object:setacceleration({x=0, y=-10, z=0}) - self.physical_state = true - self.object:set_properties({ - physical = true - }) - end - end - end, - - on_punch = function(self, hitter) - if self.itemstring ~= '' then - hitter:get_inventory():add_item("main", self.itemstring) - end - self.object:remove() - end, -}) - -if minetest.setting_get("log_mods") then - minetest.log("action", "builtin_item loaded") -end diff --git a/item_drop/item_entity_old.lua b/item_drop/item_entity_old.lua deleted file mode 100644 index 6e479a1..0000000 --- a/item_drop/item_entity_old.lua +++ /dev/null @@ -1,126 +0,0 @@ --- Minetest: builtin/item_entity.lua - -function minetest.spawn_item(pos, item) - -- Take item in any format - local stack = ItemStack(item) - local obj = minetest.env:add_entity(pos, "__builtin:item") - obj:get_luaentity():set_item(stack:to_string()) - return obj -end - -minetest.register_entity(":__builtin:item", { - initial_properties = { - hp_max = 1, - physical = true, - collisionbox = {-0.17,-0.17,-0.17, 0.17,0.17,0.17}, - visual = "sprite", - visual_size = {x=0.5, y=0.5}, - textures = {""}, - spritediv = {x=1, y=1}, - initial_sprite_basepos = {x=0, y=0}, - is_visible = false, - }, - - itemstring = '', - physical_state = true, - timer = 0, - - set_item = function(self, itemstring) - self.itemstring = itemstring - local stack = ItemStack(itemstring) - local itemtable = stack:to_table() - local itemname = nil - if itemtable then - itemname = stack:to_table().name - end - local item_texture = nil - local item_type = "" - if minetest.registered_items[itemname] then - item_texture = minetest.registered_items[itemname].inventory_image - item_type = minetest.registered_items[itemname].type - end - prop = { - is_visible = true, - visual = "sprite", - textures = {"unknown_item.png"} - } - if item_texture and item_texture ~= "" then - prop.visual = "sprite" - prop.textures = {item_texture} - prop.visual_size = {x=0.50, y=0.50} - else - prop.visual = "wielditem" - prop.textures = {itemname} - prop.visual_size = {x=0.20, y=0.20} - prop.automatic_rotate = math.pi * 0.25 - end - self.object:set_properties(prop) - end, - - get_staticdata = function(self) - --return self.itemstring - return minetest.serialize({ - itemstring = self.itemstring, - always_collect = self.always_collect, - }) - end, - - on_activate = function(self, staticdata) - if string.sub(staticdata, 1, string.len("return")) == "return" then - local data = minetest.deserialize(staticdata) - if data and type(data) == "table" then - self.itemstring = data.itemstring - self.always_collect = data.always_collect - end - else - self.itemstring = staticdata - end - self.object:set_armor_groups({immortal=1}) - self.object:setvelocity({x=0, y=2, z=0}) - self.object:setacceleration({x=0, y=-10, z=0}) - self:set_item(self.itemstring) - end, - - on_step = function(self, dtime) - self.timer = self.timer + dtime - if (self.timer > 300) then - self.object:remove() - end - local p = self.object:getpos() - p.y = p.y - 0.3 - local nn = minetest.env:get_node(p).name - -- If node is not registered or node is walkably solid and resting on nodebox - local v = self.object:getvelocity() - if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable and v.y == 0 then - if self.physical_state then - self.object:setvelocity({x=0,y=0,z=0}) - self.object:setacceleration({x=0, y=0, z=0}) - self.physical_state = false - self.object:set_properties({ - physical = false - }) - end - else - if not self.physical_state then - self.object:setvelocity({x=0,y=0,z=0}) - self.object:setacceleration({x=0, y=-10, z=0}) - self.physical_state = true - self.object:set_properties({ - physical = true - }) - end - end - end, - - on_punch = function(self, hitter) - if self.itemstring ~= '' then - local left = hitter:get_inventory():add_item("main", self.itemstring) - if not left:is_empty() then - self.itemstring = left:to_string() - return - end - end - self.object:remove() - end, -}) -print("ITEM ENTITY LOADED") diff --git a/item_drop/sounds/item_drop_pickup.1.ogg b/item_drop/sounds/item_drop_pickup.1.ogg deleted file mode 100644 index f5ea6b9ed51a61a5d369e670599f50f0087aa9fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7584 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 ah1L52;DIWwyBX!I^H!-{E<4qb8u%|AyN|;F diff --git a/item_drop/sounds/item_drop_pickup.3.ogg b/item_drop/sounds/item_drop_pickup.3.ogg deleted file mode 100644 index 3e2d1e0b1f88257bd2c8e11db00524d7d17fd547..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7146 zcmb7H2{@Ep-@ol^8f%D*tYay|pb;Kx82d2RERCfsA={Hg%91Tv#*!uLkg=-~LMr=~ zC4(qb_ARo6%6E^R=l!1R{jTr*uJ2suK6B>&-{-&o&iNnXt5?kcO5m@yQ|PKhp57gN z5lnH0BGB6x>*hy(L7`Pn{sDm2cNE9J^%TbBmH%qwm1GK!L^blH%F#dDBGqp`(jeK& z&F9)VW8bS#PdBW^F?XmQR8|Hq0|z@)+|23Pl>k>4uYjvpUHoBW<`gu)7sE6(Ehqqb z@D1Dm+8#EThyefy05}T6SW;Z|V0c`fKU4kXqzKjx2^6oLpc0t1pWS5FkjFgt16ecJwi$5FGV3K||j52_a zS~yiU)7stk8$d2(|1~fi+W`f2(V*pVhG@`}*+;{QGkif-zs-UIVW63SP7;S+4M%Sc zU;mJ>@s^Y+yZn%xwwbvh25bR#mVqu~fdONIA=Vj@w)G*_^^vyYk#>8LSGc48>fb}A z_sIR&bSMRoCxlG<3@bRxTkr{4Kot>HP6;@ZT>@oDJ_}1O)GKy%uXM|*yH-|ry|-4X zx0d<%6MzEzgxvDnGK>F5cePG)`M z$nX9=ebm6XT^Z-@$hij%Nub4Y2o?*bobi9il9C7Sf)$;4kZ=iA8g7E-5ySi6JGLAO z01=SmEdF~qPUYWOT$CIu(Ift}PqtTzJe0o~P+F;e1JPuLgIO#k4`%TL;{0R3N~Ep_ zo=CEh#N*H?82&e+z@S2%6V+*XjzJQY;oAc%0a5YKz_f8B zW^yVRbBtx+b?fwi$>))F;{nrSA=6_I98N|3dt&_yIRFTnh+|CRu<`KD>~JFuhTj4H z8#y;PI+OUilZ5qag$;+L`nM3q-w;FW+NKCYGful9&VUgv7c&LB5qXypjLT@C%S4@v z?eh@py1xMP8#dEp0slY_86szq37>V7ss9@}dEyD5E+h!)B@0_8iw31#jma#1^mwVX zfbrjub1k+cBeo)m;Mr5T()fS&e<4T5R~YOda(XIHBAm zrCr`}zfxP6x-kc#2Dd$Gz!U(&;8E~4Zr=gD?jo%LI4lR(h19{P4C}$9)41heB6Vy| zU$P5_^?HhM-1>3+cs8e)3UCoX2R=;sgNd9JY8(K7Wkxf?B5~*e*nA?o2R_G#Mj?x{ z%?6P4{1H8H+MI9*49{ma09)XT=u@A|4j)t(2LNa*1^8%)Bb>DXh!`-F$oDn{q0b?r z&#rCE;WEZVAAzpurxISTS z_kjz8dG0c~8)8`(IW1>s&4n2y8IBSI#?nF@>H_RC5d8=;D?<*rT-VK;M6*adTQuu^W z=hahLRaU!tSm*Wa`m`b{(={_wypbRpOYk5Nys`)$lWF1v!V^O6>LY?=S*_G6L2|MY zq)HM9QgH-{Uc%}@i$rguG=We7a#<;sJZxD%9IstJT|!uHl$dO(>8Y(+X{mY^@L^A7 z1P6j5PFk_n-IKCL_g5!4)uAJE#?Z1Wt(_mTHcb zgb_ilDnNobzMadq0!FmZJZ2>YYahp!5!)@CKm$!s9-s`ghkP*!%M1!f9}ADG`CGU| zO=_}@LCxs6O}RXg%gMcl#N|{0C%t#7Xf8R{3M3#&B&Q1by<^MC>f%Z6pyj+|;cT|z zrDWltBaVgJ{4Lzd!(F=LSSu^1N|jCvC*ulGt8yaI!lPV%!OE!$teTiFfag<&2`%FZ zYX(4z0)Rw_w`b#M1v|3~anQDmaGXRZ6gOemuYd*JjB)KOrB(6R7^A}thrJ{#8uUl1& zI1PGy(J-1mABRIrf`!X5?r9BU+9^PVSjh?j9ncPl6TK3hUXNXqmR69FMnK?Dzvc;ftfzd=Dfmq$P7 zBz=z>Frp__GsdwM&3li7P2i-<;p^)3`PgzK7^#yj0FXjY2ei?gw$Ql%<7JW}-zp$f zfDARDE}lsNgfXyyHx`R($*0fU3+qc$nij)b#r)e`oxAYneP6T&h2-C1MaJ_vr)Fpz z^93a-09g+(=nL=3_r zqYKh(B=a@9^m^bOBp5AdJrrnFi|C`Kq%m=XQUNRwwjvbL>jh5v-x#|Kxd(}Wa?zQnQL-4- z&&DV!&(ex5a-=H#uE42*n*gAz5EdPMZT^CivZ|Vf)+Jq(fsx7Y3nV?D3INF*(6eVV zkqImhPbNZ=Sd-aO*l}Q${kuV-(Blbsa|58z;~OOP6RF=c@(q&A$MhzRH<#Es87qvn z^%V!*Bet(|J6l_;Ghe@bE~iO94H#T7{%*$`mPqlzaVxzf$oJdxtTmOhOMgU|I18~J zSp+W&6wy3vR;5;Cx$i;2Or59a$ab`j+D_znXSe0&zCm}e8c;E}|0$M{rywq}QXOd8 zdChAx`#$i@li&}OgB*bT-N2{OYy}Eok&yWF{F@8fMVTYKAyCNt*AtSY+>?}TKe^Iv z0y?sJQZ5e{Q`IXe#Xo*iZZ^7G-X`0puvJ~`I{$aB%JqO>JtMYH# zUmep-SZ1kwh~4<6d?_gCc~0Kz0;aRib{7hEzP%ABJ~85e;F@fi7u?IG1U_2TKQH7# zyr&deC(SKA5_{elYCe@ab!nmXS9N?k?lAP{kF~_kPiqxrb5C@tdJi!6{dlLOLd(a6 zWBE>N53%)`M^hIm7Ds*WW}gnVivDHyYg_3>{PO_&nVp56TkI28M9n=b}YN{o?KQ(V%2~sL6f6V$YSuss;JIn0I&w=wZA*O1SgD9Up6SA(X1c&d1*UL=OBr0hRw2ytoRsJ97y z`SRCN`R=qF0912}&3)df=;`T|tu*ph+A%>R@t?gJmdIsJv7$c6f0RZ7!f;9aUeI8Mxq*lLRR;4UtnXtj_5WX~G z0R2E=8p@XWnCTVMi=S7bE6tVGJmc)CZ%(vr9sQz<3Ez! zx#OZ@E7@~lBX$0qXS!H-x|uK=_RikvLKni`?+j-SHdRGRoBAvj7Z#eim#&~34t%@Q zqlLD$v^bleEf}d5vF0V2*_;`?#AVYa+h$YyXP<2;#$BW$*HHHG3=(Q{#(`Qa z^ylM8>XYdC_Wjgn5AVM!6Rs}|_;~m84g2coc8%o;A1mFHE-UgwZ9H~<<3H*6cVa}N z=VWefA~HV^2WzDH?&ucK--sG^78r14J1fjJV8=^x)Qr5XxcbLNx4+fSR!I}@>y+&Y zo1JL!7Tv^42RhAdg;`OfjK#8=BZSC%t97fK%z-C6H^1~7#L0w&dFOBdA1{Q=s9qXs z4n{{0+Xn(+srm8LK0p|SiA##uCSxJsLjiEZZH9Sxe{{H~Ib)=avZkf^N;+os?#Iow zzxopXM?m}Mx+RNc7y7z2+=^EavRGqY?&XuC8U_|!Q6N(6BzteZXcZP}uljnr@N2hg z62}y}iVfrT`al~tk*(hwl~z_7t`hMUyXd%K)O&Nz;(~M8i`#tp^W~leX1KHq_jA#W8if4>s;-D_t5Le))cSl|n~Q=9vdymJnj=V~6` zxk(b*$5SuM-qYf{pQ||6bYh~Y*l>1kJ1tn-L+m51>!HLCRrsw=`lAf+e>&Q`j zoX?83e}40-vAG-18UVz7Z(5}023&&XCYroh-vK_9Km--{06v$?9Cz)9i(xn{&jH z4?U-BFN9+qylTAWKLdAcQ?R2N`ISnh90ZcDi7)%FcTTzT`xX3G&gd&~H+2m0LY|vM zb6=*q@1$xCyn{o=^qwCZ}ZRHhyNp(Us72v4a zA|EF4R`R@c<0Scf72m{bZ! zRxAisNK?3d>$a*&X3?tru>UKczmpUHou;xRrm=z(R_bdgxH+$2FVaQV5|g9({!yOz zjd(wck4v68t(z@}lY(+LshF7o`}ErfZkMqGTTx#Y;i~{(5j`dWNbubZL>Y~U0|+2& z81HjBq-C^AE&3`}+5Tg5B)XY>)VWv!-C1XkGD48fmuq7#E7YmyP9N6thtutvXWZz0 zsu;)3O6@N9^u>tfy{!U0F+YX8%ejuaUOEvP5x9qYrG-B|JQv>0b;CK!4TnG7b1!m! z^z4p-t%g1FF(k2}nRqq-C00Q6g3W1$(MZ~;E{V0?;wc@iNV;9rM6(v0cMnQ+9ZsLQ zoyFg>uh6=_$0nSg_U_@la3{bg?@&lfxV~g9a=&N1MW2>iGwR2y{>-UKhZHYB^?p-& zH%0W0IW|?olM=|jOGA5x+J3cZm^+D5%>igFrD303So$nROU;Sb_(}2NO`Gzm3C<~D zj=i<9sRFup`9j=ERxsHBvv=n94jO$I7a4XFULDSUqD8+T9b9&MrS4yZB}mwZQrc~% z$`xMY3a(afC{0q9&EgHzEfNzz=r!g`4$%!aoa1?%;_(`m)nBS_fB?~yqQ8<{lzktN zHM4@`@winjFi{-TSF3F1O^yXmIS_V@kyLd&gKMd|a0tUC=Y%;v(X|2A_m=+m!|T7i z&}ZO>b;4|YXBBBw|7?2LY)`njGNR@_P7RnuQ4+AH>QP!Lp1>jvP_DShcGOTIqQ&Bp z`*g5`O;67WV)<0{i?H3S7VloF`(tfJtCP2vC7Tn%#f`*q*=$Q;UxnmEPvAEcTMR>d?}lVe@9nwK(BA10^pWx&KVtY4Ah@JH z0dbwrzNwTllhSe#VVV3w==#W69x3D93d#@VY!k%zN$*I!SJ}Dc!#*936X&r8Om9h^ zK|_wR@~>2LrJej?%9HR^k*VC1txrE@NjtrL^b@dPJV;WYn+;OzVR{S3Q&d^MH{f;r zk=pj{j9kVqzEAv^er@puz+oV+reWxaMxYedFe@7tox2%!dW1%lm8ZTg5e% z5OcN2*Dqi?J}I&}>OUL=Z=cN=8`~61@!pADD3TuU*A;kUeoL}vbNt>b%EyL&t@F!H zLZn8u)%?3D@RmVawvqfhE1%YxE?(a9>t6H-JGJlmfF-1+JBh;bk+^H*gh59}XrEUs zuYb&#iMuLuB*}Dn)!?+ETb3BgJ4?$oU=*Mr64`pfoPtbd67l9c`=3WRbt8F>UX;J(xLLw=-Ht1v(R5Qvch zXj_3NU)Wk8=MDaRPTc)==jiCqf}`-OoeBN?SzIu~61Stp?mJBM z@4a?ut3$S2w$*3a}dAl`}S&i~LMH>zc(knuuG+gA<`H3b*Z#<22$ zy=gbf)-WFj_r2b8ojG%!=YGz8pL_Y7`#$GgU9A8*;9m{7tDr%f z8YM1~ASWQfSN)yc186TGXRBy`0MI!OIrx7JIZs>p??zimqX@iLbU&)O|Iha6&>uc> zAlb&<*G>Mszbnkk-5Gnp9cBzuJcT%g06R>|3g>n?=nCE^$ki1e2&XZJF#K5z*VD&B z0A}zF!W7mWIg*M20CoVlBnD^8xMB<^5(=e4vI$1CS@)^e^Y;K#cHsd4 zdLUAYCAoOf*n^C8<&#YIFF?ARtChi+5-i^#S)PBB!1xHiMVTrtm1LN!FO?T3t1nA6jOZPfYZybB zA||l7ns!FVn*n4bHSb>o%Yhy+a4&j{{4VTz%ry3K@X~C5kkucxU_d0OCSaJxZCuAa zSSL6%K@sq(plfhxO*)jHy!)zbN*iXecZpU2ai~U#s z5jM9?>j$dCAV9%MWY$M`k*Gk?2V~Kq=-4Vcz=dWK7)!b+JiXYs^omD~dv23kWs~<{ zz3gB;^xzW!0)9ek1@1Ye|6jjin}z@1yN+9*G@t|8ve!?r*H6p%q?1q77`w6DQUrmqx?F5?J0YC>K*zG6S4_X5)_sU=8LV)IEfY~Hy z3Yta!=XUELUO+`e@~>ohL^3O-UOq5OB*>PpkXax4M-uo!T;V({XC!B97|E8iP*B00 z`|4S|b*^MfMRx9i2ffJrA3>zRs{Kfu(oKA$G zK8U7zS+lJ_I%5Fq)FQi567q9qbh0Gy#{R(K2nO@=R~q6ZKQf@l=7 zG|!5RWEP4ZKrrS=rlJp>Hb*DpmuvLykss_2Nl*;UOtnW_MuOBZXEw@U~bkq&h*RFKbHU!OX zYrZ0Ypa`3_#yH&#nvOWUDt?st2A0NE>>v7X?bJzpKOzZg{cWye_3^d6# z#60j{X|01kO{@6@W&}Q8Fn63PgmMeiivn?6z$JEna|A;n8mh-6LS)l3=E1QmQcJ9d zbXkZEyn4pf&QQID?C2pRyf8XT4=xwPj%Ec3D0jI=UQd)<51SsUkN^^@iCNC3)!jA- zMv(whR8Jnk0%cN2pn$9b+0e_d5^Js2dre_-BZq$jonxrsGtSP6O@7WR4Ju6LqXx_1L28v ze+!qc%S^X3t(%y#t5Rv?#d*|GcyZMT%4=M8d)dLRKmw9N!BwklA81b7E|KB^YA!$% z&S@`IK@$!d;y}3F-@+^0c4dRB(d@4U@x+x2-3YU!kAsRAOUT+l9w@tPRfr$(-auDOKQv_ z*nwJr6)CGASbuqq5NresXlKwL-0LOjx}{nUAeisyqCgL!6A;vrvna%39$^SU6)Pbi zsDcE79y76I49#3fAfRQy!sP(>jArrO5O6~rv<(40upV|CvpSPV1}CzwAdp>vStQdO zb&g2D+6|TvvQVBJ(dH;4crn^erUIXi@+4-`0iA4u;7>LhJjv*Q5U^4}(BuX%iVy|C z3>}q<9s<*}Gq@pGv<18;JAhrUPcVQD%vCN!NG6eJc6Ay-k2xPCFpChtvq}UEE%1b5 z*Mk$mUDDBxxZ?(@l6)-E$}ZwSDiavu#e@Jf+JgW_k94&GD}u4Ggd*LOmywQ6;=z%P zjcHK}2jjz&3DniDvXPLE_G(;o0AsqxF2Ef0oo9_^85n*l)HjELPDc;^o^q~k-@bpt0zq+zTGwSRbgn{zo;unA02$0ozzc@sSVJ|qz+qY1 zt%Cg!aEcz#mCAttkt}TBjRpHq=23%3@#Bh&wog%=l7TO-xbzXNhvv_YoKzWi7N08Q zdGn6pQlW?p1W*Kl;xW|NYjYBWg|(eL51JJf-)@b9GZil6fEms|%cK`{hh>#`pb&Xe#kno2scUHI=$$=hgfca^_;Z0|2DAVm zof{@9nuAPcOF5d#p2m^RnZZQ>tL#4w27?_;z?&NYgB{!;=>uu^La@iw^9F^t*uH6fV|`cbpi0J2NDX7HK!d)8Ag09xTe<3*Q7si7L`}jToh3Ep~}6zSnFZiZmi*6xM-!cOJziu3Gi@yD!sh_I~mc6m;XAR zaA+@`8n#%s+P#eHU!!iF-rV0@wwtCd(m(0Ca%OcVD^!yL3@xZb3R`b2v5sbOq>F&PyHf@Ao!N?O?q?pKIqa8x zSM^fiRUuVDoi~!y!*{hDjsyax>hXu(D@QG~o(~tSZq~TiZ6A7OJbbY7I(|=(T=^~Q z+fM4Y*I_)`3j0Ql&G|Z)E}eR^(QcJ0ysfSMZ2E!lFq>XtKzBRcM;0i+2yA=^b}c+{ zv^L8f7z(}XaSd;)p!Ra_^FAT0cA)jvOJxK*2ikmo>iroUK3MYT{^vPSLRdXa0dR!xy(>*526?wf`zh(Z2C(@xJ4e zwbu(PgB3HwpYg5EPWR=^$qN>lz2QpU;x2P-ObPXx@)`8NS&v2z2d36gUK6L|SVT37 z?imznX{D{2=36V565dj<*pwBsXYEqkgFuCsh>!MlG)n0G$_PNYJ_zsJ&>it5T80^Xe0V)M*T zyqhn7s@N^8BCvGg>xVU2Um;fd_5Bp>m5a@C-SEq{f!m1wo14e#bJN;V?*IHo~uT$OfiMQ3w&XNOcPmtsdMNE_PFfx44V^c&y8l$5j4Ny3;p>v6ZyDg#GK+s*Lch!D%*?Nq9>BQqFfn`c7o-Jm}u2?t%%@C?d%I$*;m}xCQ#Fboz3d59dNj(cyX83M_gZ$nPNoI0v5ORTk9xr}wA;YbH^!S8jHTS#cVHai}N>%qio)Is9y?TO-rUd^wLWvfl){f^~ zqf7a6z4O)9=0H7Jr=XxYoGQ) ziuVxr|VW~Ln`KyCMP%8PyXm_D-OSJvik?(*$P4YIki-jeyJ+11-5 zBeq40)AviV4Xhq@JLEm=(0ZEb0DbEj7()M>Fxd9=Bq^Ocsvh$GZTE8=Vg0Ms{1c?b`1;$Wmc>w<#$E`t zNPz9;b^a{**+~z&jNghpQCD;5H)dIJaV>)MCCKe_Kb|eqAN{>}y#M0XiJo2vLTzD` z4S-z;V+Kg1BD9yg)@=bm9s*ePeEIDp2k}a0di^}{>+W#_?)aiiUR#p*Gn1vtdfvNz zo#XPawpuz`)-FCw2{+317FjDAv8&jKrRvwtRs^Y}TND*1dv&YR9pc)(+>*m#;paWn zU(uYr7j|!a1;Y+K10BBkQ4O0C)r{9D#QaE(KR@r!Kn~=m*yFUR?Yv!!!~QasUTs-) z*u9<9_EVcCH4#M;-K86G*H{51*RRjb4GHT|d8o=0KT&L{8WC&&HYv^+zmg z;7Dg`%G2zw2)# zPLbzhPl{b*TbH#9$nR2!_qz5x;Ah2Nv04-=yvI9Sgqe5yTgJCRr-1gEGV3mMCecS< zQGKi9+qzI+TWH!7-HFuj;kejw1(7{fs{Ns1rp=9C3GWRy)FCX(o9}KI((4w%%FmqH z@)&>u_nUA244El-TYK6lRtSLIy}iNt)ITJ>%f#VWmmE#K=ob4L`0nFzhoy~OA^a3i&j;CC)T^O zUdX;W|JC)k=E7KO!>{JF*=4tWd*Pj#k>J}u^b|7pIA>Rx&{qQCQj^j0JhxWz#>A#$ z=aSo5wGG2Us4GkSpZa3;ds5im{8+m6UT7N)4=8lhi|pR_2&XUKW}M%F8Nw* zel}J>L2=@jmK*GZ(9^XTu8udK^(Hqk9Ac*RK=@xbGu>xktOkE&O5Hk zqVv$HFB4<-&>!O!T?6WsYC;OviOPmJ2DP^RFi%0htnn?6okpsYU77K<@ZZ|bZ9^JK zMf#}kNjws)HNbt$^P(-c|mVX3td(j)A+fqS!|Vur3# z9H!O=m&TJFQ@h-{Y(M>9s;LjJkELVd(e` z>+T!Id!x80^po#aO9m*`Tr||YOE2+lc={}FDWBi?y4Hcq&x~@mPl6pQ}m9>BE*XcE}iSLpD z_%XTgh$!2&xysxN>M|z-<8Y3BD_V8tgp-m$aZ z`@@ZKCr3YF6q47)STnhu4#!u_i3gTAl5h!`?m|Jbp2oIU9>_en>z}Ez%eA@30R55F zVs)=jS!Pl>>9U{;w5lQI6iJIKQE+JIBQA;q#}B;ax!J6FkF?~5C|5fZ_T+2$hbF4z zjF?L#mJ_vt6$Xl(HHsm1%}`11iFM4 zleh0)XX7Wc%vH{ZTnNd1%3yDE%w#tQ>l-#Ekf3lf=(3#y{miN@CR@L!SNi9#$8WSc zUMyyz^hP&*EWi7`)oL* J^YBIBzW{3r#Z~|S