From 20de519cd13955482776350e8dc9aea4e968c34c Mon Sep 17 00:00:00 2001 From: 2ndbeam <166764593+2ndbeam@users.noreply.github.com> Date: Mon, 20 May 2024 18:29:44 +0300 Subject: [PATCH] Added base items on buy/sell, new valuables icons --- items/{ => Valuables}/energy_cell.tres | 0 items/{ => Valuables}/food_supplies.tres | 0 items/{ => Valuables}/raw_materials.tres | 0 items/{ => Valuables}/water_barrel.tres | 0 menus/Base Menu/BuySell/menu_buy.tres | 15 +++++++ menus/Base Menu/BuySell/menu_sell.tres | 15 +++++++ menus/Base Menu/root_menu.tres | 20 ++++++++++ scenes/Base/base_menu.tscn | 4 +- scripts/Base/base.gd | 37 ++++++++++++++++-- scripts/Classes/game.gd | 2 +- scripts/Classes/item.gd | 4 +- sprites/items_icons/energy.png | Bin 254 -> 0 bytes sprites/items_icons/energy_cell.png | Bin 0 -> 796 bytes ...ater.png.import => energy_cell.png.import} | 8 ++-- sprites/items_icons/food.png | Bin 260 -> 0 bytes sprites/items_icons/food_supplies.png | Bin 0 -> 1057 bytes ...od.png.import => food_supplies.png.import} | 8 ++-- sprites/items_icons/raw_materials.png | Bin 311 -> 1442 bytes sprites/items_icons/raw_materials.png.import | 2 +- sprites/items_icons/water.png | Bin 243 -> 0 bytes sprites/items_icons/water_barrel.png | Bin 0 -> 901 bytes ...rgy.png.import => water_barrel.png.import} | 8 ++-- translations/base_dialogue.csv | 12 +++++- translations/base_dialogue.en.translation | Bin 554 -> 1142 bytes translations/base_dialogue.ru.translation | Bin 677 -> 1541 bytes 25 files changed, 113 insertions(+), 22 deletions(-) rename items/{ => Valuables}/energy_cell.tres (100%) rename items/{ => Valuables}/food_supplies.tres (100%) rename items/{ => Valuables}/raw_materials.tres (100%) rename items/{ => Valuables}/water_barrel.tres (100%) create mode 100644 menus/Base Menu/BuySell/menu_buy.tres create mode 100644 menus/Base Menu/BuySell/menu_sell.tres create mode 100644 menus/Base Menu/root_menu.tres delete mode 100644 sprites/items_icons/energy.png create mode 100644 sprites/items_icons/energy_cell.png rename sprites/items_icons/{water.png.import => energy_cell.png.import} (67%) delete mode 100644 sprites/items_icons/food.png create mode 100644 sprites/items_icons/food_supplies.png rename sprites/items_icons/{food.png.import => food_supplies.png.import} (66%) delete mode 100644 sprites/items_icons/water.png create mode 100644 sprites/items_icons/water_barrel.png rename sprites/items_icons/{energy.png.import => water_barrel.png.import} (67%) diff --git a/items/energy_cell.tres b/items/Valuables/energy_cell.tres similarity index 100% rename from items/energy_cell.tres rename to items/Valuables/energy_cell.tres diff --git a/items/food_supplies.tres b/items/Valuables/food_supplies.tres similarity index 100% rename from items/food_supplies.tres rename to items/Valuables/food_supplies.tres diff --git a/items/raw_materials.tres b/items/Valuables/raw_materials.tres similarity index 100% rename from items/raw_materials.tres rename to items/Valuables/raw_materials.tres diff --git a/items/water_barrel.tres b/items/Valuables/water_barrel.tres similarity index 100% rename from items/water_barrel.tres rename to items/Valuables/water_barrel.tres diff --git a/menus/Base Menu/BuySell/menu_buy.tres b/menus/Base Menu/BuySell/menu_buy.tres new file mode 100644 index 0000000..8688a26 --- /dev/null +++ b/menus/Base Menu/BuySell/menu_buy.tres @@ -0,0 +1,15 @@ +[gd_resource type="Resource" script_class="Menu" load_steps=4 format=3 uid="uid://cbvax7aprnrig"] + +[ext_resource type="Script" path="res://scripts/Classes/Menu/combo_menu_resource.gd" id="1_xamua"] +[ext_resource type="Script" path="res://scripts/Classes/Menu/menu.gd" id="2_f8fna"] + +[sub_resource type="Resource" id="Resource_5pmle"] +script = ExtResource("1_xamua") +item_script = &"res://scripts/Base/Menu/send_message.gd" +item_menu = &"res://menus/Base Menu/root_menu.tres" + +[resource] +script = ExtResource("2_f8fna") +item_ids = Array[String](["BASE_FETCH_BUY_CANCEL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL"]) +item_actions = Array[int]([3, 0, 0, 0, 0, 0, 0, 0]) +item_data = Array[Resource("res://scripts/Classes/Menu/menu_resource.gd")]([SubResource("Resource_5pmle"), null, null, null, null, null, null, null]) diff --git a/menus/Base Menu/BuySell/menu_sell.tres b/menus/Base Menu/BuySell/menu_sell.tres new file mode 100644 index 0000000..af1985c --- /dev/null +++ b/menus/Base Menu/BuySell/menu_sell.tres @@ -0,0 +1,15 @@ +[gd_resource type="Resource" script_class="Menu" load_steps=4 format=3 uid="uid://cgxrk15hgidts"] + +[ext_resource type="Script" path="res://scripts/Classes/Menu/combo_menu_resource.gd" id="1_u5y0w"] +[ext_resource type="Script" path="res://scripts/Classes/Menu/menu.gd" id="2_0edl4"] + +[sub_resource type="Resource" id="Resource_5pmle"] +script = ExtResource("1_u5y0w") +item_script = &"res://scripts/Base/Menu/send_message.gd" +item_menu = &"res://menus/Base Menu/root_menu.tres" + +[resource] +script = ExtResource("2_0edl4") +item_ids = Array[String](["BASE_FETCH_SELL_CANCEL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL"]) +item_actions = Array[int]([3, 0, 0, 0, 0, 0, 0, 0]) +item_data = Array[Resource("res://scripts/Classes/Menu/menu_resource.gd")]([SubResource("Resource_5pmle"), null, null, null, null, null, null, null]) diff --git a/menus/Base Menu/root_menu.tres b/menus/Base Menu/root_menu.tres new file mode 100644 index 0000000..cb42b86 --- /dev/null +++ b/menus/Base Menu/root_menu.tres @@ -0,0 +1,20 @@ +[gd_resource type="Resource" script_class="Menu" load_steps=5 format=3 uid="uid://2ohcxoor22hr"] + +[ext_resource type="Script" path="res://scripts/Classes/Menu/combo_menu_resource.gd" id="1_d2x8v"] +[ext_resource type="Script" path="res://scripts/Classes/Menu/menu.gd" id="1_h4chp"] + +[sub_resource type="Resource" id="Resource_iiy7m"] +script = ExtResource("1_d2x8v") +item_script = &"res://scripts/Base/Menu/send_message.gd" +item_menu = &"res://menus/Base Menu/BuySell/menu_buy.tres" + +[sub_resource type="Resource" id="Resource_pbhiw"] +script = ExtResource("1_d2x8v") +item_script = &"res://scripts/Base/Menu/send_message.gd" +item_menu = &"res://menus/Base Menu/BuySell/menu_sell.tres" + +[resource] +script = ExtResource("1_h4chp") +item_ids = Array[String](["BASE_FETCH_BUY", "BASE_FETCH_SELL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL"]) +item_actions = Array[int]([3, 3, 0, 0, 0, 0, 0, 0]) +item_data = Array[Resource("res://scripts/Classes/Menu/menu_resource.gd")]([SubResource("Resource_iiy7m"), SubResource("Resource_pbhiw"), null, null, null, null, null, null]) diff --git a/scenes/Base/base_menu.tscn b/scenes/Base/base_menu.tscn index 869f7fc..4ed0b35 100644 --- a/scenes/Base/base_menu.tscn +++ b/scenes/Base/base_menu.tscn @@ -7,7 +7,7 @@ [ext_resource type="Script" path="res://scripts/Base/actions_menu.gd" id="4_3gtyd"] [ext_resource type="Script" path="res://scripts/Base/close_button.gd" id="4_68ool"] [ext_resource type="Script" path="res://scripts/Base/Menu/dialogue.gd" id="4_swpa1"] -[ext_resource type="Resource" uid="uid://c4jg3vwtxskjm" path="res://menus/Base Menu/test_menu_1.tres" id="5_rkret"] +[ext_resource type="Resource" uid="uid://2ohcxoor22hr" path="res://menus/Base Menu/root_menu.tres" id="6_78in3"] [node name="BaseMenu" type="Control"] layout_mode = 3 @@ -119,7 +119,7 @@ grow_horizontal = 2 grow_vertical = 2 columns = 2 script = ExtResource("4_3gtyd") -menu = ExtResource("5_rkret") +menu = ExtResource("6_78in3") metadata/_edit_use_anchors_ = true [node name="Action1" type="Button" parent="MenuBackground/Actions/ActionsMenu"] diff --git a/scripts/Base/base.gd b/scripts/Base/base.gd index f9e4cca..aa0e29c 100644 --- a/scripts/Base/base.gd +++ b/scripts/Base/base.gd @@ -17,9 +17,19 @@ signal dock_requested ## Menu which will instantiate on docking @export var menu: PackedScene - +## Faction that this base represents @export var faction: Game.Faction +## List of items that this base sells +@export var items_on_sell: Array[Item] +## List of items that this base buys +@export var items_on_buy: Array[Item] + +## List of prices for items that this base sells +var sell_prices: Array[float] +## List of prices for items that this base buys +var buy_prices: Array[float] + ## Decides whether ship is docked or in process var dock_state: DockState = DockState.Ready @@ -37,6 +47,7 @@ func _ready(): dock_area.body_exited.connect(dock_area_body_exited) dock_requested.connect(on_dock_requested) dock_ready() + generate_prices() ## Switches dock state func on_dock_requested(): @@ -90,20 +101,38 @@ func dock_busy(): var menu_instance = menu.instantiate() menu_instance.base = self player_ship.non_colorable_gui.add_child(menu_instance) - ## Sets dock state to Leave func dock_leave(): dock_state = DockState.Leave disable_gate() - +## Shows gate func enable_gate(): gate_static.visible = true gate_static.process_mode = Node.PROCESS_MODE_INHERIT gate_area.visible = false dock_area.visible = false - +## Hides gate so base is accessible to enter/exit func disable_gate(): gate_static.visible = false gate_static.process_mode = Node.PROCESS_MODE_DISABLED gate_area.visible = true dock_area.visible = true + +## Generates prices for valuable items +func generate_prices(): + # gen prices for buyable items + for i in range(len(items_on_buy)): + var item = items_on_buy[i] + if item in items_on_sell: + # buy not higher than avg price + buy_prices[i] = randi_range(item.min_price * 100, (item.max_price + item.min_price) * 50) / 100.0 + else: + buy_prices[i] = randi_range(item.min_price * 100, item.max_price * 100) / 100.0 + # gen prices for items in sell + for i in range(len(items_on_sell)): + var item = items_on_sell[i] + if item in items_on_buy: + # sell not lower than avg price + sell_prices[i] = randi_range((item.min_price + item.max_price) * 50, item.max_price * 100) / 100.0 + else: + sell_prices[i] = randi_range(item.min_price * 100, item.max_price * 100) / 100.0 diff --git a/scripts/Classes/game.gd b/scripts/Classes/game.gd index 4d1746d..4eb1d12 100644 --- a/scripts/Classes/game.gd +++ b/scripts/Classes/game.gd @@ -3,7 +3,7 @@ class_name Game ## TODO: rewrite item system -enum ItemType {Valuable, Weapon, Hull, Shield, Engine, Ammunition} + enum AmmoType {None, LaserEnergy, Rockets} enum BaseType {Power, Mining, Food, Trading, Module} enum Faction {None, Player, Peaceful, Neutral, Aggressive} diff --git a/scripts/Classes/item.gd b/scripts/Classes/item.gd index 16bf762..f2e7798 100644 --- a/scripts/Classes/item.gd +++ b/scripts/Classes/item.gd @@ -2,10 +2,12 @@ extends Resource class_name Item +enum ItemType {Valuable, Weapon, Hull, Shield, Engine, Ammunition} + @export var name : String @export var description : String @export var min_price : float @export var max_price : float @export var weight : float @export var icon : Texture -@export var type : Game.ITEM_TYPE +@export var type : ItemType diff --git a/sprites/items_icons/energy.png b/sprites/items_icons/energy.png deleted file mode 100644 index 25f87114e84db39f285e7dcd70319a0838837459..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}J3L(+Ln2z= zP7ma2FyL{H{`fC^o_rHep`NdD>Vx0&vZq~JTWXxmc0p>(n?rXOmRd{6+%@=h_M2nF7<}X(0^Ex)1W~qqVcG1olo@!Xz?vzR&_SU4`Ob z8yG^Lem{|aNbY2E3tMs{i^0K*U#9$L4d6ZFH(B%C7Ur9`H2fXC4&0xh5wTfO^DX<8 zDds8zOkpfm*LI5bKW8uS4)6+id+QI-4-B5JelF{r5}E)z C)np<7 diff --git a/sprites/items_icons/energy_cell.png b/sprites/items_icons/energy_cell.png new file mode 100644 index 0000000000000000000000000000000000000000..9ce806e9602a96c0f2c93bcff37125e6d294499f GIT binary patch literal 796 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 bba{RN2ii*cnhD1Y00000NkvXXu0mjfTx#ZA literal 0 HcmV?d00001 diff --git a/sprites/items_icons/food.png.import b/sprites/items_icons/food_supplies.png.import similarity index 66% rename from sprites/items_icons/food.png.import rename to sprites/items_icons/food_supplies.png.import index 1aae01d..18ceec1 100644 --- a/sprites/items_icons/food.png.import +++ b/sprites/items_icons/food_supplies.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://w3aft10s2hxd" -path="res://.godot/imported/food.png-d786f9d11f7b590dd57cbb0e0eba166e.ctex" +uid="uid://bvun3kxlvs712" +path="res://.godot/imported/food_supplies.png-ae0622133a25efc1a080a47bd9df0359.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://sprites/items_icons/food.png" -dest_files=["res://.godot/imported/food.png-d786f9d11f7b590dd57cbb0e0eba166e.ctex"] +source_file="res://sprites/items_icons/food_supplies.png" +dest_files=["res://.godot/imported/food_supplies.png-ae0622133a25efc1a080a47bd9df0359.ctex"] [params] diff --git a/sprites/items_icons/raw_materials.png b/sprites/items_icons/raw_materials.png index c6b205a1b3981ad8cb2e9ca112803117d35ab870..295422070da3156f1027f9afd21da09cdf66194f 100644 GIT binary patch literal 1442 zcmV;T1zq}yP)V!Z8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H11uscN zK~zYIjh0vl!TFy5%l%-p`)V%(P&gI1(fqGE?>SJ4Gj(O`Fwcz z@F4_2KqwS~*XxDJWP;sp$E#PbuzK}sSrGm^QOwZm^=xTrVKf?LUtb^h?%m7u^mOX= zdKMKGQ4j=HR#wtvGV#WZ8w>;jT)A>(T%Ny1?8LTh+ZYH0_~gkGu3NW`>({U6?c28* z4u|sBfh3bwViabRG83WXvu(18O7D2gJFA3x5NloVdQdX8yn{bsZ=Vyd-skPFJ2@7wzs#_?+zIOnWbu>yPc>_Jgc5p+5oCMPHH=FJ-{TC@miwR%p+DFMK0 zwc`H$`v`}_sHv&J_3PI$I5-$1)MzwlZf=IhdzO)rK|v5^HEC&SJbU&m zzkmPE&dyF|WMstmsK39TwY9Z07z`xIoSd8((fRY|`RUUq>h*d8;E^LoI5joJ;o)Jb zRH_(lZf-7Lym-O4Z{N=9XF+%G-epr$6H`)Bc;dtfE?KgK)z#H(YHFgx;h-pryl~+H zQ&Uq}U0uzosVP=fRZ*!_{%xT#7xKf04{T^?h_$!J<6$ruKwQJYd-QArK=-9DieD>@aVX;^^Jw46r>}=N5)X?wu$GPrbC5c2LOiD_U1zD|D zhC(5tt*wo%t*ulll^h-(PN@EQd3hws%*;$#?UpTDI5{~01_PZ=Cw)F2hlYk23aPZ(kxZQ5J-ENS? zs#U9CHk%O&g-~B#k1JQM;OEbuG0oO$waClM!{Wt@F)=ZL!NEa9B9S;#D1ILcn7KW7 w?b?Ncf&wTM3JeVm!R>aVtE(%aN8)_(3uN)vbSVUsQ2+n{07*qoM6N<$g50vOJ^%m! literal 311 zcmV-70m%M|P)Px#@kvBMR9J=Om(dQxAP7ahP5=Lw*^>>UARyB=*?nB_asr4QT5HrE)bV8UR{)&a zk3@b~0IUHZqL6ts&eK;5q$v@Z)c_Exlqa2D5UHhBcR-y9xW-h|cLGQ5TnWs}P)n5)<`Ua|=@#+6OT z&$=_PdL6rO0f1pest|`|lId{;;;KM(pk^V=8QAd>4gq%Q5dhw*skgu~jV!OO9*ZXa z7tCz9%zvB%}vAJ{#Z85SH{C*pAP zZz{vgHQo%XR2b)Mo_~#5bP?mCoU2-U)-%~3C~3%ez4CUzsslH5Hg_$RpS0#>;QQB& r=NWDOXB}gaE3@qF(L303@&-eSQHb4)bS?{^!x=nX{an^LB{Ts5@H}4W diff --git a/sprites/items_icons/water_barrel.png b/sprites/items_icons/water_barrel.png new file mode 100644 index 0000000000000000000000000000000000000000..f39dc704108e641c54b7d548246c2d605b82238a GIT binary patch literal 901 zcmV;01A6?4P)V!Z8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H10}@F@ zK~zYIwU*6GDs32tFYVm~K}uOr5E?~oYmqdI7=|H=BFL}*pu$D%UA8HTf~Z!ZMzl(b z+==vIL|;~*%OV%Hu-Q}^LN3DQEaJ%fHhQ!=?+>2MbKl(8Jooc4KOLY_M0&j*S(Xt5 zfu5co%w{u2qY;C_06;pOCX>mKOeTp&qnw?cad2?J`}=#ba_EYIY&IJ+Gc#nfS@!n! zh(@C%5(!>jUdUuJ02mAgYHMq0Z*RwHwIa(hH8nMOJRX98o>#aDrl+SlJUnD)XQ$|Di-G{&-rfj@!-T`(QYl}OW{=8A5CjB4_2!VxRI+uS<#ak(US6iZzaO1WM<^6RRaLgPxBnh!aBz^7l@$gC28hSwg}G2D zL^hkPXdlbAuC1+&jg1W)4o3k35R1idxm;{+ZqnM?`ZJJDr^Dy-F*i5I$;pW(etdk) z!omVRpYLZNS(d4*t7B6beSQ7= zpofPCrlzI{1OhZQHEH6_&CLV?0VXFW%eJ`eJ=)sZ!teKUeSOW?*cc|036sgh`1m+i zS68g9tq}+W%9W|?Wtg3v<>=@LkH^FO{5S`t?Cb+%5)vTtduY(T*DM=E7AYipx3kK3?Gy)%<;raQQWHQO+ ,Осуществление связи с {race}...\nВы вошли в систему как {profile_name}\n> BASE_TEST_MESSAGE_LOCAL,Greet,Поприветствовать -BASE_TEST_MESSAGE_RECEIVED,"Hello, gryadki!\n\tBye, ponos!\n> ","Хеллоу, грядки!\n\tБай, понос!\n> " \ No newline at end of file +BASE_TEST_MESSAGE_RECEIVED,"Hello, gryadki!\nBye, ponos!\n> ","Хеллоу, грядки!\nБай, понос!\n> " +BASE_FETCH_BUY_LOCAL,"Ask, what they sell","Спросить, что они покупают" +BASE_FETCH_BUY_RECEIVED,I would like to buy something\nWe are selling:\n[ol]{sell_list}[/ol]\n> ,Я бы хотел что-нибудь купить\nМы продаём:\n[ol]{sell_list}[/ol]\n> +BASE_FETCH_SELL_LOCAL,"Ask, what they buy","Спросить, что они продают" +BASE_FETCH_SELL_RECEIVED,I have some items to sell\nWe can buy:\n[ol]{buy_list}[/ol]\n> ,У меня есть кое-что на продажу\nМы готовы купить:\n[ol]{buy_list}[/ol]\n> +BASE_FETCH_PRICE_ITEM,[li][img=26x26]{item_img}[/img]\t{item_name} — {item_price}[/li],[li][img=26x26]{item_img}[/img]\t{item_name} — {item_price}[/li] +BASE_FETCH_BUY_CANCEL_LOCAL,Buy nothing,Ничего не покупать +BASE_FETCH_BUY_CANCEL_RECEIVED,I changed my mind\nErm...Fine...\nAnything else?\n> ,Я передумал\nЧто ж...Ладно...\nЧто-то ещё?\n> +BASE_FETCH_SELL_CANCEL_LOCAL,Sell nothing,Ничего не продавать +BASE_FETCH_SELL_CANCEL_RECEIVED,I changed my mind\nErm...Fine...\nAnything else?\n> ,Я передумал\nЧто ж...Ладно...\nЧто-то ещё?\n> +NULL, , \ No newline at end of file diff --git a/translations/base_dialogue.en.translation b/translations/base_dialogue.en.translation index 961cd2c332adb3713665e2c94cc02d4c9954bf7d..ef11769aaf4543e457d121cbc8161d81c2e010f0 100644 GIT binary patch literal 1142 zcmb7^O=uHA6vrpAMw3?CVvYU4x5graD;$PH6`vl`tI=^&!C!lQJbMz)cRP zGSn~ye3EWxl9DcO(^Hz1Ge9K72CN54ncDsSKb=(A8XO6Xl1&&3 zyUxVYm8XRdG0?D%I>6E&T{-n}4*al*rH@SWH;;gW`SC9C1;e#T<$3WT_;^S zdK+vAzQ_<8e|`pW!1~2wNY^}Bel4~qtwggR7KTWT%8dG z>uHO-o2OW2dZ5n}xhL210e0-+X`#ro_5h1J+zYluUMMnQ>fnN{5P#-yvqb4xKhpGj zqL}8n+Ih9oZ}-g(2t`Qotr7K~Df+R6XETFc*Y Z3v73}^61R{|J}op(wB?(*$e+T-vQ*UM1%kU delta 181 zcmeyyv5IAbG$U(LO1_EVWCcdOdR7JohW|hSq!`$sY#tyD5?26XAs}Xi;+Yc9m+1r9 zAax)N6PLWAU2Y2GD?l+!{OgQ4XMsWtAU(D~4ALVH#Gyd^&ow~W&2!)6r%ZP8oKBUg bItm5(dHKbPTy_dTSq63>1{o6+9OMiDl+z$z diff --git a/translations/base_dialogue.ru.translation b/translations/base_dialogue.ru.translation index 480fa474d594729283a3aaec340322f29e7aff1a..6c0c4169d530bedd9b33b2b41fb5284c87493a94 100644 GIT binary patch literal 1541 zcmb_dTSyd97(U%|r7$ScC^}LJk-A>OLa4yNq84ab8rsy9z@VX^bip}*7u*CDH8)9I?Lxj|9AfTKkL?=tvk-#vlenS zunyP;oN056uyIYlP;Y4w+teH*8UdX>Yaqr?UO%<>&d%)~w-UJ#M)`oH+tHX6(t~C+ zq?th{8ni=tL}!~9-$k^r&T_znb=%gOb(?K~qC9k#i^mqtZV5VClc}>!P@7_*R^4$4 z%49p15oyl4*&)klb3ih-3fKdvNY#G-a-9atVh77Fv;Aa?^Us0Mv}hQfv|@|~$pIS7 zPaFv51M+|!0CC>ou3qHI;wATFSFwaU?CO+~1GNAxj!J!y|LFy7snA7j+37>|xbQQKl~OdqZovmqH`Z}&>!7itm=-_-y=udns6+YRI*fOsUkWJ30d6lAv;6Eh+u=0sYgxa<;Ra!|Y$X*}`{OAG1o z($Z3&xGQgSSZ3r+Sf}wwrfKD$60 z7&3OdIWy3b(E6Epj`TD5WMrb4i*ebB3MLRQUFZ`-h&ly!9zo_{(N(BoK2Z^&q6Wk$ z=CT)^WVo_Id1O8<6Oc(cAiJ4(#l&F>ZT-nosxZW=$IPhGMT*5{dr~nPcF{XKT`TW)!_%=7lbi%%m4rY delta 187 zcmZqWS<1RWnvpdxDJ|V_vI3)RJu3qP!+#(EQVeWRHV=>ni7NoH5D+s$@l1*5%kqG1 zMJR@eOJ30~?+1#RKru}G>x?;PfkF%*Js=D+Uml1L1M!7<7aK1&U!44fX^AT5g^3q7 jT-d3jaAE(2eHZp#*mto}k;_hjfq@;U5M)?TaF8