From 9d942f81a81a784e465b87e30cb8eb82280990fa Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:25:35 -0700 Subject: [PATCH 01/36] [xrGame] Artefact.cpp - removed artifact particles in legs for FMP mode Ported from OMP commit 62b3da92837c44b3bae66b7f07677e56fee9c83b --- src/xrGame/Artefact.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/xrGame/Artefact.cpp b/src/xrGame/Artefact.cpp index e879c581c29..a962924d267 100644 --- a/src/xrGame/Artefact.cpp +++ b/src/xrGame/Artefact.cpp @@ -118,7 +118,7 @@ void CArtefact::OnH_A_Chield() inherited::OnH_A_Chield(); StopLights(); - if (IsGameTypeSingle()) + if (IsGameTypeSingle() || Game().Type() == eGameIDFreeMp) { SwitchAfParticles(false); } From 55dcbae5095e0a0820a6b442c094ad36df965055 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:29:23 -0700 Subject: [PATCH 02/36] [xrGame] Actor - added hit marks from mutants for multiplayer Ported from OMP commit 41d8c755a81dd93c342dc5945ad20149908d7028 --- src/xrGame/Actor.cpp | 94 ++++++++++++++++++++++++++++++++++++++++++++ src/xrGame/Actor.h | 2 + 2 files changed, 96 insertions(+) diff --git a/src/xrGame/Actor.cpp b/src/xrGame/Actor.cpp index 9dedcbdb2ff..9b4371f91d8 100644 --- a/src/xrGame/Actor.cpp +++ b/src/xrGame/Actor.cpp @@ -658,7 +658,16 @@ void CActor::Hit(SHit* pHDS) b_initiated = b_initiated && (pHDS->hit_type == ALife::eHitTypeStrike); if (b_fireWound || b_initiated) + { HitMark(HDS.damage(), HDS.dir, HDS.who, HDS.bone(), HDS.p_in_bone_space, HDS.impulse, HDS.hit_type); + } + else + { + if (!IsGameTypeSingle() && !!smart_cast(HDS.who) && pHDS->hit_type == ALife::eHitTypeWound) + { + HitMarkMonster(HDS.dir, HDS.damage()); + } + } } if (IsGameTypeSingle()) @@ -814,6 +823,91 @@ void CActor::HitMark(float P, Fvector dir, IGameObject* who_object, s16 element, } // if hit_type } +#define MAX_LOCK_TIME 2.f + +void CActor::HitMarkMonster(Fvector dir, float damage) +{ + if (!g_Alive() || !Local() || !(Level().CurrentEntity() == this)) + return; + + SDrawStaticStruct* s = CurrentGameUI()->AddCustomStatic("monster_claws", false); + + float h1, p1; + Device.vCameraDirection.getHP(h1, p1); + Fvector hd = dir; + hd.mul(-1); + float d = -h1 + hd.getH(); + s->wnd()->SetHeading(d); + Fvector2 wnd_pos = s->wnd()->GetWndPos(); + wnd_pos.y += 400.0f * _cos(d); + wnd_pos.x += 500.0f * _sin(d); + s->wnd()->SetWndPos(wnd_pos); + + float time_to_lock = damage * MAX_LOCK_TIME; + clamp(time_to_lock, 0.f, MAX_LOCK_TIME); + this->lock_accel_for(int(time_to_lock * 1000)); + + CEffectorCam* ce = Cameras().GetCamEffector((ECamEffectorType)effBigMonsterHit); + if (ce) + { + const shared_str& eff_sect = pSettings->r_string(cNameSect(), "actor_hit_effect"); + if (eff_sect.c_str()) + { + int id = -1; + Fvector cam_pos, cam_dir, cam_norm; + cam_Active()->Get(cam_pos, cam_dir, cam_norm); + cam_dir.normalize_safe(); + dir.normalize_safe(); + + float ang_diff = angle_difference(cam_dir.getH(), dir.getH()); + Fvector cp; + cp.crossproduct(cam_dir, dir); + bool bUp = (cp.y > 0.0f); + + Fvector cross; + cross.crossproduct(cam_dir, dir); + VERIFY(ang_diff >= 0.0f && ang_diff <= PI); + + float _s1 = PI_DIV_8; + float _s2 = _s1 + PI_DIV_4; + float _s3 = _s2 + PI_DIV_4; + float _s4 = _s3 + PI_DIV_4; + + if (ang_diff <= _s1) + { + id = 2; + } + else + { + if (ang_diff > _s1 && ang_diff <= _s2) + { + id = (bUp) ? 5 : 7; + } + else if (ang_diff > _s2 && ang_diff <= _s3) + { + id = (bUp) ? 3 : 1; + } + else if (ang_diff > _s3 && ang_diff <= _s4) + { + id = (bUp) ? 4 : 6; + } + else if (ang_diff > _s4) + { + id = 0; + } + else + { + VERIFY(0); + } + } + + string64 sect_name; + xr_sprintf(sect_name, "%s_%d", eff_sect.c_str(), id); + AddEffector(this, effBigMonsterHit, sect_name, damage); + } + } +} + void CActor::HitSignal(float perc, Fvector& vLocalDir, IGameObject* who, s16 element) { //AVO: get bone names from IDs diff --git a/src/xrGame/Actor.h b/src/xrGame/Actor.h index ea6f1603845..3f1bc71e4a6 100644 --- a/src/xrGame/Actor.h +++ b/src/xrGame/Actor.h @@ -186,6 +186,8 @@ class CActor : public CEntityAlive, void HitMark(float P, Fvector dir, IGameObject* who, s16 element, Fvector position_in_bone_space, float impulse, ALife::EHitType hit_type); + void HitMarkMonster(Fvector dir, float damage); + void Feel_Grenade_Update(float rad); virtual float GetMass(); From e2751a87d349e14533515f72e9817ff8dfdf712f Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:33:38 -0700 Subject: [PATCH 03/36] [xrGame] game_cl_freemp - added faction synchronization for Actor objects Ported from OMP commit df2fbd07b8b58c25693b2617da01250a7d043fc5 --- src/xrGame/game_cl_freemp.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index f3d65a72d4d..9426f8b4830 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -61,6 +61,14 @@ void game_cl_freemp::shedule_Update(u32 dt) pActor->SetName(ps->getName()); pActor->cName_set(ps->getName()); + if (ps->team != pActor->Community()) + { + CHARACTER_COMMUNITY community; + community.set(ps->team); + pActor->SetCommunity(community.index()); + pActor->ChangeTeam(community.team(), 0, 0); + } + if (local_player->GameID == ps->GameID) { pActor->set_money((u32)ps->money_for_round, false); From e0a4008cd4fab270364f77e07fada11f4b9332fe Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:35:18 -0700 Subject: [PATCH 04/36] [xrGame] UIActorMenu - improved characterInfo display for FMP mode Ported from OMP commit 6b2a0d57be1510ebfec4c842e2a8f20478299e5d --- src/xrGame/ui/UIActorMenu.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/xrGame/ui/UIActorMenu.cpp b/src/xrGame/ui/UIActorMenu.cpp index 643ea661a0e..5204c28eedf 100644 --- a/src/xrGame/ui/UIActorMenu.cpp +++ b/src/xrGame/ui/UIActorMenu.cpp @@ -995,7 +995,14 @@ void CUIActorMenu::UpdateActorMP() xr_sprintf(buf, "%d RU", money); m_ActorMoney->SetText(buf); - GetModeSpecificActorInfo()->InitCharacterMP(Game().local_player->getName(), "ui_npc_u_nebo_1"); + if (Game().Type() == eGameIDFreeMp) + { + GetModeSpecificActorInfo()->InitCharacterMP(m_pActorInvOwner); + } + else + { + GetModeSpecificActorInfo()->InitCharacterMP(Game().local_player->getName(), "ui_npc_u_nebo_1"); + } } bool CUIActorMenu::CanSetItemToList(PIItem item, CUIDragDropListEx* l, u16& ret_slot) From 1a6627eb4603cd7306c60a14ef63cfeedb8438f2 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:40:28 -0700 Subject: [PATCH 05/36] [xrGame] game_cl_freemp - added game_cl_GameState::shedule_Update() call bypassing parent class Ported from OMP commit 1828ca4810a7c10abc746f9a3986ca416f68bdec --- src/xrGame/game_cl_freemp.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index 9426f8b4830..d302aee88a9 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -47,6 +47,8 @@ void game_cl_freemp::net_import_update(NET_Packet & P) void game_cl_freemp::shedule_Update(u32 dt) { + game_cl_GameState::shedule_Update(dt); + if (!local_player) return; From a247595ea4597942ee971174895d57aef34e2c61 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:44:57 -0700 Subject: [PATCH 06/36] [xrGame] game_sv_freemp - added AddMoneyToPlayer method Ported from OMP commit 04ebdfeba25a1fc8fed8ab3c8ab9d44e13865c6c --- src/xrGame/game_sv_freemp.cpp | 22 ++++++++++++++++++++++ src/xrGame/game_sv_freemp.h | 2 ++ 2 files changed, 24 insertions(+) diff --git a/src/xrGame/game_sv_freemp.cpp b/src/xrGame/game_sv_freemp.cpp index 5aeac1a39a4..63902caa284 100644 --- a/src/xrGame/game_sv_freemp.cpp +++ b/src/xrGame/game_sv_freemp.cpp @@ -71,6 +71,28 @@ void game_sv_freemp::OnPlayerConnectFinished(ClientID id_who) }; } +void game_sv_freemp::AddMoneyToPlayer(game_PlayerState* ps, s32 amount) +{ + if (!ps) return; + + Msg("- Add money to player: [%u]%s, amount %d", ps->GameID, ps->getName(), amount); + + s64 total_money = ps->money_for_round; + total_money += amount; + + if (total_money < 0) + total_money = 0; + + if (total_money > std::numeric_limits().max()) + { + Msg("! The limit of the maximum amount of money has been exceeded."); + total_money = std::numeric_limits().max() - 1; + } + + ps->money_for_round = s32(total_money); + signal_Syncronize(); +} + void game_sv_freemp::OnPlayerReady(ClientID id_who) { switch (Phase()) diff --git a/src/xrGame/game_sv_freemp.h b/src/xrGame/game_sv_freemp.h index 2f164ee3564..3271f953087 100644 --- a/src/xrGame/game_sv_freemp.h +++ b/src/xrGame/game_sv_freemp.h @@ -20,6 +20,8 @@ class game_sv_freemp : public game_sv_mp, private pure_relcase virtual LPCSTR type_name() const { return "freemp"; }; void __stdcall net_Relcase(IGameObject* O) {}; + // helper functions + void AddMoneyToPlayer(game_PlayerState* ps, s32 amount); virtual void OnPlayerReady(ClientID id_who); virtual void OnPlayerConnect(ClientID id_who); From 66ea6e4c97946c04536042d3baae24479b57bc6d Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 00:57:43 -0700 Subject: [PATCH 07/36] [xrUICore] UIListBox - removed StringTable().translate() in AddTextItem Ported from OMP commit 5803358d8beae8511593ae307573fe983069bf09 --- src/xrUICore/ListBox/UIListBox.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/xrUICore/ListBox/UIListBox.cpp b/src/xrUICore/ListBox/UIListBox.cpp index 5964ded1f9f..8824b440d03 100644 --- a/src/xrUICore/ListBox/UIListBox.cpp +++ b/src/xrUICore/ListBox/UIListBox.cpp @@ -42,7 +42,7 @@ CUIListBoxItem* CUIListBox::AddTextItem(LPCSTR text) pItem->SetWndSize(Fvector2().set(GetDesiredChildWidth(), m_def_item_height)); pItem->SetTextColor(m_text_color); - pItem->SetText(StringTable().translate(text).c_str()); + pItem->SetText(text); pItem->GetTextItem()->SetWidth(GetDesiredChildWidth()); return pItem; } From f6fb35c677f1a83f662fb5b2cdf5eaa6676b1d88 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:15:53 -0700 Subject: [PATCH 08/36] Port upgrade manager fix for multiplayer clients - Move upgrade manager from alife_simulator to Level for MP support - Add inventory::upgrade::Manager to Level class - Initialize upgrade manager in OnAlifeSimulatorLoaded for server/single - Initialize upgrade manager in Load_GameSpecific_Before for clients - Add proper cleanup in Level destructor Source: OMP commit 37300539 --- Externals/BugTrap | 1 + Externals/FreeMagic | 1 + Externals/OpenAutomate | 1 + Externals/cryptopp | 1 + Externals/jpeg | 1 + Externals/libogg | 1 + Externals/libtheora | 1 + Externals/libvorbis | 1 + Externals/lzo | 1 + Externals/mimalloc | 1 + Externals/zlib | 1 + src/xrGame/Level.cpp | 8 ++++++++ src/xrGame/Level.h | 10 ++++++++++ src/xrGame/Level_load.cpp | 8 ++++++++ 14 files changed, 37 insertions(+) create mode 160000 Externals/BugTrap create mode 160000 Externals/FreeMagic create mode 160000 Externals/OpenAutomate create mode 160000 Externals/cryptopp create mode 160000 Externals/jpeg create mode 160000 Externals/libogg create mode 160000 Externals/libtheora create mode 160000 Externals/libvorbis create mode 160000 Externals/lzo create mode 160000 Externals/mimalloc create mode 160000 Externals/zlib diff --git a/Externals/BugTrap b/Externals/BugTrap new file mode 160000 index 00000000000..c619077b40e --- /dev/null +++ b/Externals/BugTrap @@ -0,0 +1 @@ +Subproject commit c619077b40ee6e7ad6ffc5a194a5d3583af8f78e diff --git a/Externals/FreeMagic b/Externals/FreeMagic new file mode 160000 index 00000000000..ba39f90bef4 --- /dev/null +++ b/Externals/FreeMagic @@ -0,0 +1 @@ +Subproject commit ba39f90bef46fd79166ccdb661e902f45d48560e diff --git a/Externals/OpenAutomate b/Externals/OpenAutomate new file mode 160000 index 00000000000..9ee089894c6 --- /dev/null +++ b/Externals/OpenAutomate @@ -0,0 +1 @@ +Subproject commit 9ee089894c6d403aba5968ce1c8c26578b8e2b0a diff --git a/Externals/cryptopp b/Externals/cryptopp new file mode 160000 index 00000000000..78a64e37d3e --- /dev/null +++ b/Externals/cryptopp @@ -0,0 +1 @@ +Subproject commit 78a64e37d3ec8aa1fd941a1309b1a2eef43b0bb0 diff --git a/Externals/jpeg b/Externals/jpeg new file mode 160000 index 00000000000..5c1582820d0 --- /dev/null +++ b/Externals/jpeg @@ -0,0 +1 @@ +Subproject commit 5c1582820d06a81d3f9991520b9c193f0eb2786f diff --git a/Externals/libogg b/Externals/libogg new file mode 160000 index 00000000000..db5c7a49ce7 --- /dev/null +++ b/Externals/libogg @@ -0,0 +1 @@ +Subproject commit db5c7a49ce7ebda47b15b78471e78fb7f2483e22 diff --git a/Externals/libtheora b/Externals/libtheora new file mode 160000 index 00000000000..7180717276a --- /dev/null +++ b/Externals/libtheora @@ -0,0 +1 @@ +Subproject commit 7180717276af1ebc7da15c83162d6c5d6203aabf diff --git a/Externals/libvorbis b/Externals/libvorbis new file mode 160000 index 00000000000..84c023699cd --- /dev/null +++ b/Externals/libvorbis @@ -0,0 +1 @@ +Subproject commit 84c023699cdf023a32fa4ded32019f194afcdad0 diff --git a/Externals/lzo b/Externals/lzo new file mode 160000 index 00000000000..9cd30c85a95 --- /dev/null +++ b/Externals/lzo @@ -0,0 +1 @@ +Subproject commit 9cd30c85a9518569278d0b221f234c141f85b495 diff --git a/Externals/mimalloc b/Externals/mimalloc new file mode 160000 index 00000000000..762e1dc67b9 --- /dev/null +++ b/Externals/mimalloc @@ -0,0 +1 @@ +Subproject commit 762e1dc67b9bc6bbb3f4620c06b1eb0723553f40 diff --git a/Externals/zlib b/Externals/zlib new file mode 160000 index 00000000000..21767c654d3 --- /dev/null +++ b/Externals/zlib @@ -0,0 +1 @@ +Subproject commit 21767c654d31d2dccdde4330529775c6c5fd5389 diff --git a/src/xrGame/Level.cpp b/src/xrGame/Level.cpp index c1b7573e421..4e14bca7add 100644 --- a/src/xrGame/Level.cpp +++ b/src/xrGame/Level.cpp @@ -50,6 +50,7 @@ #include "xrPhysics/console_vars.h" #include "xrNetServer/NET_Messages.h" #include "xrEngine/GameFont.h" +#include "inventory_upgrade_manager.h" #ifdef DEBUG #include "level_debug.h" @@ -170,6 +171,7 @@ CLevel::~CLevel() #endif xr_delete(m_map_manager); delete_data(m_game_task_manager); + xr_delete(m_upgrade_manager); // here we clean default trade params // because they should be new for each saved/loaded game // and I didn't find better place to put this code in @@ -1078,6 +1080,12 @@ void CLevel::OnAlifeSimulatorLoaded() { MapManager().ResetStorage(); GameTaskManager().ResetStorage(); + + // moved from alife simulator for supporting in MP + // only for single and server + // for client manager creates in Load_GameSpecific_Before() + R_ASSERT(m_upgrade_manager == nullptr); + m_upgrade_manager = xr_new(); } void CLevel::OnSessionTerminate(pcstr reason) { MainMenu()->OnSessionTerminate(StringTable().translate(reason).c_str()); } diff --git a/src/xrGame/Level.h b/src/xrGame/Level.h index abe7339f381..a93a9f7c73a 100644 --- a/src/xrGame/Level.h +++ b/src/xrGame/Level.h @@ -51,6 +51,14 @@ class CFogOfWarMngr; class CBulletManager; class CMapManager; +namespace inventory +{ +namespace upgrade +{ +class Manager; +} +} + namespace file_transfer { class client_site; @@ -398,10 +406,12 @@ class CLevel : public IGame_Level, public NET_CLIENT_CLASS // CFogOfWarMngr* m_pFogOfWarMngr; CMapManager* m_map_manager = nullptr; CGameTaskManager* m_game_task_manager = nullptr; + inventory::upgrade::Manager* m_upgrade_manager = nullptr; public: CMapManager& MapManager() const { return *m_map_manager; } CGameTaskManager& GameTaskManager() const { return *m_game_task_manager; } + inventory::upgrade::Manager& UpgradeManager() const { return *m_upgrade_manager; } void OnAlifeSimulatorLoaded(); void OnAlifeSimulatorUnLoaded(); diff --git a/src/xrGame/Level_load.cpp b/src/xrGame/Level_load.cpp index 367b62a5485..e6bd08ce9c9 100644 --- a/src/xrGame/Level_load.cpp +++ b/src/xrGame/Level_load.cpp @@ -10,6 +10,7 @@ #include "xrPhysics/PhysicsCommon.h" #include "level_sounds.h" #include "GamePersistent.h" +#include "inventory_upgrade_manager.h" bool CLevel::Load_GameSpecific_Before() { @@ -51,6 +52,13 @@ bool CLevel::Load_GameSpecific_Before() FS.r_close(stream); } + if (GamePersistent().GameType() != eGameIDSingle && OnClient()) + { + //Pavel: for server and single player the upgrade manager creates in OnAlifeSimulatorLoaded() + R_ASSERT(m_upgrade_manager == nullptr); + m_upgrade_manager = xr_new(); + } + return (TRUE); } From 189051dcef8dde26188fe243af71b5fa7dcda253 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:19:37 -0700 Subject: [PATCH 09/36] Remove ai().get_alife() checks in upgrade code - Remove ai().get_alife() checks from UIActorMenuInitialize.cpp - Remove ai().get_alife() checks from UIInvUpgradeProperty.cpp - Remove ai().get_alife() checks from UIInventoryUpgradeWnd.cpp - Update inventory_item_upgrade.cpp to use Level().UpgradeManager() - Remove single player only restriction from net_Spawn_install_upgrades Source: OMP commit b70a5582 --- src/xrGame/inventory_item_upgrade.cpp | 9 ++------- src/xrGame/ui/UIActorMenuInitialize.cpp | 11 ++++------- src/xrGame/ui/UIInvUpgradeProperty.cpp | 7 ++----- src/xrGame/ui/UIInventoryUpgradeWnd.cpp | 2 +- 4 files changed, 9 insertions(+), 20 deletions(-) diff --git a/src/xrGame/inventory_item_upgrade.cpp b/src/xrGame/inventory_item_upgrade.cpp index c5439654de0..6a54e58b384 100644 --- a/src/xrGame/inventory_item_upgrade.cpp +++ b/src/xrGame/inventory_item_upgrade.cpp @@ -151,11 +151,6 @@ void CInventoryItem::log_upgrades() void CInventoryItem::net_Spawn_install_upgrades(CSE_Abstract* DC) // net_Spawn { - if (!IsGameTypeSingle() || !ai().get_alife()) - { - return; - } - CSE_ALifeInventoryItem* pSE_InventoryItem = smart_cast(DC); if (!pSE_InventoryItem) { @@ -166,11 +161,11 @@ void CInventoryItem::net_Spawn_install_upgrades(CSE_Abstract* DC) // net_Spawn m_upgrades.clear(); - ai().alife().inventory_upgrade_manager().init_install(*this); // from pSettings + Level().UpgradeManager().init_install(*this); // from pSettings for (const auto& upgrade : saved_upgrades) { - ai().alife().inventory_upgrade_manager().upgrade_install(*this, *upgrade, true); + Level().UpgradeManager().upgrade_install(*this, *upgrade, true); } } diff --git a/src/xrGame/ui/UIActorMenuInitialize.cpp b/src/xrGame/ui/UIActorMenuInitialize.cpp index 3a172064777..66b20b2b6c1 100644 --- a/src/xrGame/ui/UIActorMenuInitialize.cpp +++ b/src/xrGame/ui/UIActorMenuInitialize.cpp @@ -283,13 +283,10 @@ void CUIActorMenu::InitializeUniversal(CUIXml& uiXml) //- m_ItemInfo->SetAutoDelete (true); //- AttachChild (m_ItemInfo); - if (ai().get_alife()) - { - m_upgrade_info = xr_new(); - m_upgrade_info->SetAutoDelete(true); - AttachChild(m_upgrade_info); - m_upgrade_info->init_from_xml(ACTOR_MENU_ITEM_XML); - } + m_upgrade_info = xr_new(); + m_upgrade_info->SetAutoDelete(true); + AttachChild(m_upgrade_info); + m_upgrade_info->init_from_xml(ACTOR_MENU_ITEM_XML); } void CUIActorMenu::InitializeInventoryMode(CUIXml& uiXml) diff --git a/src/xrGame/ui/UIInvUpgradeProperty.cpp b/src/xrGame/ui/UIInvUpgradeProperty.cpp index 296a64489c2..2432f9bdf44 100644 --- a/src/xrGame/ui/UIInvUpgradeProperty.cpp +++ b/src/xrGame/ui/UIInvUpgradeProperty.cpp @@ -17,6 +17,7 @@ #include "ai_space.h" #include "alife_simulator.h" #include "inventory_upgrade_manager.h" +#include "Level.h" #include "inventory_upgrade.h" #include "inventory_upgrade_property.h" #include "UIHelper.h" @@ -49,11 +50,7 @@ bool UIProperty::init_property(shared_str const& property_id) UIProperty::Property_type* UIProperty::get_property() { - if (!ai().get_alife()) - { - return NULL; - } - Property_type* proper = ai().alife().inventory_upgrade_manager().get_property(m_property_id); + Property_type* proper = Level().UpgradeManager().get_property(m_property_id); VERIFY(proper); return proper; } diff --git a/src/xrGame/ui/UIInventoryUpgradeWnd.cpp b/src/xrGame/ui/UIInventoryUpgradeWnd.cpp index 6f424861841..2d43ced79ef 100644 --- a/src/xrGame/ui/UIInventoryUpgradeWnd.cpp +++ b/src/xrGame/ui/UIInventoryUpgradeWnd.cpp @@ -152,7 +152,7 @@ void CUIInventoryUpgradeWnd::InitInventory(CUICellItem* cellItem, bool can_upgra } m_btn_repair->Enable(false); - if (ai().get_alife() && m_inv_item) + if (m_inv_item) { if (install_item(*m_inv_item, can_upgrade)) { From e1eabe68c09c5953cddcc0474adfb5b41e3ab5fa Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:44:25 -0700 Subject: [PATCH 10/36] Implement mechanic repair for multiplayer - Add game_cl_freemp_messages.cpp for client-side repair success handling - Add game_sv_freemp_upgrade_and_repair.cpp for server-side repair logic - Add TranslateGameMessage method to game_cl_freemp.h/cpp - Add OnPlayerRepairItem method to game_sv_freemp.h/cpp - Add GE_REPAIR_ITEM case to inventory_item.cpp OnEvent method - Add OnSuccessRepairMP method to UIActorMenu.h and UIActorMenuUpgrade.cpp - Modify UIActorMenu_script.cpp RepairEffect_CurItem for MP support - Add GE_REPAIR_ITEM, GAME_EVENT_MP_REPAIR, GAME_EVENT_MP_REPAIR_SUCCESS constants - Add GE_REPAIR_ITEM server processing in xrServer_process_event.cpp Source: OMP commit 5ede6c85 --- src/xrGame/game_cl_freemp.h | 2 ++ src/xrGame/game_cl_freemp_messages.cpp | 29 +++++++++++++++++ src/xrGame/game_sv_freemp.cpp | 5 +++ src/xrGame/game_sv_freemp.h | 2 ++ .../game_sv_freemp_upgrade_and_repair.cpp | 32 +++++++++++++++++++ src/xrGame/inventory_item.cpp | 5 +++ src/xrGame/ui/UIActorMenu.h | 1 + src/xrGame/ui/UIActorMenuUpgrade.cpp | 12 +++++++ src/xrGame/ui/UIActorMenu_script.cpp | 22 +++++++++++++ src/xrGame/xrServer_process_event.cpp | 11 +++++++ src/xrServerEntities/xrMessages.h | 6 ++++ 11 files changed, 127 insertions(+) create mode 100644 src/xrGame/game_cl_freemp_messages.cpp create mode 100644 src/xrGame/game_sv_freemp_upgrade_and_repair.cpp diff --git a/src/xrGame/game_cl_freemp.h b/src/xrGame/game_cl_freemp.h index 580400fb315..45356dd664a 100644 --- a/src/xrGame/game_cl_freemp.h +++ b/src/xrGame/game_cl_freemp.h @@ -25,6 +25,8 @@ class game_cl_freemp :public game_cl_mp virtual bool OnKeyboardPress(int key); + virtual void TranslateGameMessage(u32 msg, NET_Packet& P); + virtual LPCSTR GetGameScore(string32& score_dest); virtual bool Is_Rewarding_Allowed() const { return false; }; diff --git a/src/xrGame/game_cl_freemp_messages.cpp b/src/xrGame/game_cl_freemp_messages.cpp new file mode 100644 index 00000000000..c468fd79771 --- /dev/null +++ b/src/xrGame/game_cl_freemp_messages.cpp @@ -0,0 +1,29 @@ +#include "stdafx.h" +#include "game_cl_freemp.h" +#include "UIGameFMP.h" +#include "ui/UIActorMenu.h" + +void game_cl_freemp::TranslateGameMessage(u32 msg, NET_Packet& P) +{ + switch (msg) + { + case GAME_EVENT_MP_REPAIR_SUCCESS: + { + if (m_game_ui && + m_game_ui->ActorMenu().IsShown() && + m_game_ui->ActorMenu().GetMenuMode() == mmUpgrade + ) + { + u16 itemId = P.r_u16(); + + PIItem item = smart_cast(Level().Objects.net_Find(itemId)); + if (item) + { + m_game_ui->ActorMenu().OnSuccessRepairMP(item); + } + } + }break; + default: + inherited::TranslateGameMessage(msg, P); + }; +} \ No newline at end of file diff --git a/src/xrGame/game_sv_freemp.cpp b/src/xrGame/game_sv_freemp.cpp index 63902caa284..6e9886c20a3 100644 --- a/src/xrGame/game_sv_freemp.cpp +++ b/src/xrGame/game_sv_freemp.cpp @@ -147,6 +147,11 @@ void game_sv_freemp::OnEvent(NET_Packet &P, u16 type, u32 time, ClientID sender) KillPlayer(l_pC->ID, l_pC->ps->GameID); } break; + case GAME_EVENT_MP_REPAIR: + { + OnPlayerRepairItem(P, sender); + } + break; default: inherited::OnEvent(P, type, time, sender); }; diff --git a/src/xrGame/game_sv_freemp.h b/src/xrGame/game_sv_freemp.h index 3271f953087..f5a4ae78e3f 100644 --- a/src/xrGame/game_sv_freemp.h +++ b/src/xrGame/game_sv_freemp.h @@ -23,6 +23,8 @@ class game_sv_freemp : public game_sv_mp, private pure_relcase // helper functions void AddMoneyToPlayer(game_PlayerState* ps, s32 amount); + virtual void OnPlayerRepairItem(NET_Packet& P, ClientID const& clientID); + virtual void OnPlayerReady(ClientID id_who); virtual void OnPlayerConnect(ClientID id_who); virtual void OnPlayerConnectFinished(ClientID id_who); diff --git a/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp new file mode 100644 index 00000000000..15bc9aae105 --- /dev/null +++ b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp @@ -0,0 +1,32 @@ +#include "stdafx.h" +#include "game_sv_freemp.h" +#include "ai_space.h" +#include "../xrServerEntities/script_engine.h" +#include "inventory_item.h" +#include "Level.h" + + +void game_sv_freemp::OnPlayerRepairItem(NET_Packet& P, ClientID const& clientID) +{ + game_PlayerState* ps = get_id(clientID); + if (!ps) return; + + u16 itemId = P.r_u16(); + s32 cost = P.r_s32(); + + PIItem item = smart_cast(Level().Objects.net_Find(itemId)); + if (!item) return; + + if (ps->money_for_round < cost) return; + + AddMoneyToPlayer(ps, -cost); + + NET_Packet NP; + CGameObject::u_EventGen(NP, GE_REPAIR_ITEM, itemId); + CGameObject::u_EventSend(NP); + + GenerateGameMessage(NP); + NP.w_u32(GAME_EVENT_MP_REPAIR_SUCCESS); + NP.w_u16(itemId); + m_server->SendTo(clientID, NP); +} \ No newline at end of file diff --git a/src/xrGame/inventory_item.cpp b/src/xrGame/inventory_item.cpp index bc5ae138e69..9518bb8cfce 100644 --- a/src/xrGame/inventory_item.cpp +++ b/src/xrGame/inventory_item.cpp @@ -245,6 +245,11 @@ void CInventoryItem::OnEvent(NET_Packet& P, u16 type) Detach(i_name, true); } break; + case GE_REPAIR_ITEM: + { + SetCondition(1.0f); + } + break; case GE_CHANGE_POS: { Fvector p; diff --git a/src/xrGame/ui/UIActorMenu.h b/src/xrGame/ui/UIActorMenu.h index 224b765c88a..7ddbc733512 100644 --- a/src/xrGame/ui/UIActorMenu.h +++ b/src/xrGame/ui/UIActorMenu.h @@ -376,6 +376,7 @@ class CUIActorMenu final : public CUIDialogWnd, public CUIWndCallback void OnInventoryAction(PIItem pItem, u16 action_type); void ShowRepairButton(bool status); + void OnSuccessRepairMP(PIItem item); bool SetInfoCurUpgrade(Upgrade_type* upgrade_type, CInventoryItem* inv_item); void SeparateUpgradeItem(); PIItem get_upgrade_item(); diff --git a/src/xrGame/ui/UIActorMenuUpgrade.cpp b/src/xrGame/ui/UIActorMenuUpgrade.cpp index 80222656ecd..9660837687c 100644 --- a/src/xrGame/ui/UIActorMenuUpgrade.cpp +++ b/src/xrGame/ui/UIActorMenuUpgrade.cpp @@ -141,3 +141,15 @@ void CUIActorMenu::SeparateUpgradeItem() // m_upgrade_selected->Mark( true ); // } } + +void CUIActorMenu::OnSuccessRepairMP(PIItem item) +{ + UpdateItemsPlace(); + + UpdateConditionProgressBars(); + + if (CurrentItem() && ((PIItem)m_upgrade_selected->m_pData)->object_id() == item->object_id()) + { + SeparateUpgradeItem(); + } +} diff --git a/src/xrGame/ui/UIActorMenu_script.cpp b/src/xrGame/ui/UIActorMenu_script.cpp index c0a28730a6c..0a145b71fe3 100644 --- a/src/xrGame/ui/UIActorMenu_script.cpp +++ b/src/xrGame/ui/UIActorMenu_script.cpp @@ -67,6 +67,28 @@ void CUIActorMenu::RepairEffect_CurItem() { return; } + + if (!IsGameTypeSingle()) + { + LPCSTR item_name = item->m_section_id.c_str(); + luabind::functor funct; + R_ASSERT2( + GEnv.ScriptEngine->functor("inventory_upgrades.how_much_repair", funct), + make_string("Failed to get functor , item = %s", item_name) + ); + + int cost = funct(item_name, item->GetCondition()); + + NET_Packet P; + CGameObject::u_EventGen(P, GE_GAME_EVENT, item->object().ID()); + P.w_u16(GAME_EVENT_MP_REPAIR); + P.w_u16(item->object().ID()); + P.w_s32(cost); + CGameObject::u_EventSend(P); + + return; + } + LPCSTR item_name = item->m_section_id.c_str(); luabind::functor funct; diff --git a/src/xrGame/xrServer_process_event.cpp b/src/xrGame/xrServer_process_event.cpp index f48b30811e2..7f24f5e5ab0 100644 --- a/src/xrGame/xrServer_process_event.cpp +++ b/src/xrGame/xrServer_process_event.cpp @@ -264,6 +264,17 @@ void xrServer::Process_event(NET_Packet& P, ClientID sender) case GE_CHANGE_POS: { SendTo(SV_Client->ID, P, net_flags(TRUE, TRUE)); } break; + case GE_REPAIR_ITEM: + { + CSE_ALifeInventoryItem* iitem = smart_cast(receiver); + if (!iitem) + break; + + iitem->m_fCondition = 1.0f; + + SendBroadcast(BroadcastCID, P, net_flags(TRUE, TRUE)); + } + break; case GE_INSTALL_UPGRADE: { shared_str upgrade_id; diff --git a/src/xrServerEntities/xrMessages.h b/src/xrServerEntities/xrMessages.h index ceb9ae18dd2..4314e010f91 100644 --- a/src/xrServerEntities/xrMessages.h +++ b/src/xrServerEntities/xrMessages.h @@ -110,6 +110,7 @@ enum : u32 GE_ADDON_ATTACH, GE_ADDON_DETACH, GE_ADDON_CHANGE, + GE_REPAIR_ITEM, GE_INSTALL_UPGRADE, GE_GRENADE_EXPLODE, @@ -222,6 +223,11 @@ enum EGameMessages : u32 GAME_EVENT_CREATE_PLAYER_STATE, GAME_EVENT_PLAYERS_INFO_REPLY, + //----------------------------------------- + + GAME_EVENT_MP_REPAIR, + GAME_EVENT_MP_REPAIR_SUCCESS, + //----------------------------------------- GAME_EVENT_SCRIPT_BEGINS_FROM, // don't add messages after this }; From 675faf5e4ce43c86b18d348e6752edacd6e2db99 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:47:08 -0700 Subject: [PATCH 11/36] Comment out script function calls in Upgrade::construct() - Comment out m_preconditions() call to prevent crash during testing - Comment out m_effects() call to prevent crash during testing - Comment out m_prerequisites() call to prevent crash during testing - These calls were apparently for testing function validity only Source: OMP commit f86314c9 --- src/xrGame/inventory_upgrade.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/xrGame/inventory_upgrade.cpp b/src/xrGame/inventory_upgrade.cpp index 991c8069054..0e0e4d7ee66 100644 --- a/src/xrGame/inventory_upgrade.cpp +++ b/src/xrGame/inventory_upgrade.cpp @@ -48,7 +48,7 @@ void Upgrade::construct(const shared_str& upgrade_id, Group& parental_group, Man R_ASSERT2(GEnv.ScriptEngine->functor(precondition_functor_str, m_preconditions.functr), make_string( "Failed to get precondition functor in section[%s], functor[%s]", id_str(), precondition_functor_str)); - m_preconditions(); + //m_preconditions(); // effect_functor LPCSTR effect_functor_str = pSettings->r_string(id(), "effect_functor"); @@ -57,7 +57,7 @@ void Upgrade::construct(const shared_str& upgrade_id, Group& parental_group, Man m_effects.parameter3 = 1; R_ASSERT2(GEnv.ScriptEngine->functor(effect_functor_str, m_effects.functr), make_string("Failed to get effect functor in section[%s], functor[%s]", id_str(), effect_functor_str)); - m_effects(); + //m_effects(); // prereq_functor (1,2) : m_prerequisites, m_tooltip LPCSTR prereq_functor_str = pSettings->r_string(id(), "prereq_functor"); // prerequisites_functor @@ -67,7 +67,7 @@ void Upgrade::construct(const shared_str& upgrade_id, Group& parental_group, Man // m_tooltip.parameter = pSettings->r_string( id(), "prereq_params" ); R_ASSERT2(GEnv.ScriptEngine->functor(prereq_functor_str, m_prerequisites.functr), make_string("Failed to get prerequisites functor in section[%s], functor[%s]", id_str(), prereq_functor_str)); - m_prerequisites(); + //m_prerequisites(); /*R_ASSERT2( GEnv.ScriptEngine->functor( tooltip_functor_str, m_tooltip.functr ), From a0caf0467960709c18e40cfbf22f52ad943945a5 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:52:48 -0700 Subject: [PATCH 12/36] Implement upgrades for multiplayer - Add OnPlayerInstallUpgrade server-side handling in game_sv_freemp - Add client-side upgrade success handling in game_cl_freemp_messages - Add GAME_EVENT_MP_INSTALL_UPGRADE and GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS - Add OnSuccessUpgradeInstallMP method to UIActorMenu - Add upgrade_install_mp method to inventory upgrade manager - Modify net_Spawn_install_upgrades to use MP-specific upgrade installation - Add can_upgrade_install method to upgrade manager - Update init_install to handle both single and multiplayer modes Source: OMP commit 686fef02 --- src/xrGame/game_cl_freemp_messages.cpp | 16 ++++++++++ src/xrGame/game_sv_freemp.cpp | 5 ++++ src/xrGame/game_sv_freemp.h | 1 + .../game_sv_freemp_upgrade_and_repair.cpp | 29 +++++++++++++++++++ src/xrGame/inventory_item_upgrade.cpp | 10 +++++-- src/xrGame/inventory_upgrade_manager.h | 2 ++ src/xrGame/ui/UIActorMenu.h | 1 + src/xrGame/ui/UIActorMenuUpgrade.cpp | 10 +++++++ src/xrServerEntities/xrMessages.h | 2 ++ 9 files changed, 74 insertions(+), 2 deletions(-) diff --git a/src/xrGame/game_cl_freemp_messages.cpp b/src/xrGame/game_cl_freemp_messages.cpp index c468fd79771..2b8319678ec 100644 --- a/src/xrGame/game_cl_freemp_messages.cpp +++ b/src/xrGame/game_cl_freemp_messages.cpp @@ -23,6 +23,22 @@ void game_cl_freemp::TranslateGameMessage(u32 msg, NET_Packet& P) } } }break; + case GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS: + { + if (m_game_ui && + m_game_ui->ActorMenu().IsShown() && + m_game_ui->ActorMenu().GetMenuMode() == mmUpgrade + ) + { + u16 itemId = P.r_u16(); + + PIItem item = smart_cast(Level().Objects.net_Find(itemId)); + if (item) + { + m_game_ui->ActorMenu().OnSuccessUpgradeInstallMP(item); + } + } + }break; default: inherited::TranslateGameMessage(msg, P); }; diff --git a/src/xrGame/game_sv_freemp.cpp b/src/xrGame/game_sv_freemp.cpp index 6e9886c20a3..fd80d061d16 100644 --- a/src/xrGame/game_sv_freemp.cpp +++ b/src/xrGame/game_sv_freemp.cpp @@ -152,6 +152,11 @@ void game_sv_freemp::OnEvent(NET_Packet &P, u16 type, u32 time, ClientID sender) OnPlayerRepairItem(P, sender); } break; + case GAME_EVENT_MP_INSTALL_UPGRADE: + { + OnPlayerInstallUpgrade(P, sender); + } + break; default: inherited::OnEvent(P, type, time, sender); }; diff --git a/src/xrGame/game_sv_freemp.h b/src/xrGame/game_sv_freemp.h index f5a4ae78e3f..9179925421c 100644 --- a/src/xrGame/game_sv_freemp.h +++ b/src/xrGame/game_sv_freemp.h @@ -24,6 +24,7 @@ class game_sv_freemp : public game_sv_mp, private pure_relcase void AddMoneyToPlayer(game_PlayerState* ps, s32 amount); virtual void OnPlayerRepairItem(NET_Packet& P, ClientID const& clientID); + virtual void OnPlayerInstallUpgrade(NET_Packet& P, ClientID const& clientID); virtual void OnPlayerReady(ClientID id_who); virtual void OnPlayerConnect(ClientID id_who); diff --git a/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp index 15bc9aae105..355b2951861 100644 --- a/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp +++ b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp @@ -4,6 +4,7 @@ #include "../xrServerEntities/script_engine.h" #include "inventory_item.h" #include "Level.h" +#include "inventory_upgrade_manager.h" void game_sv_freemp::OnPlayerRepairItem(NET_Packet& P, ClientID const& clientID) @@ -29,4 +30,32 @@ void game_sv_freemp::OnPlayerRepairItem(NET_Packet& P, ClientID const& clientID) NP.w_u32(GAME_EVENT_MP_REPAIR_SUCCESS); NP.w_u16(itemId); m_server->SendTo(clientID, NP); +} + +void game_sv_freemp::OnPlayerInstallUpgrade(NET_Packet& P, ClientID const& clientID) +{ + game_PlayerState* ps = get_id(clientID); + if (!ps) return; + + shared_str upgrade_id; + P.r_stringZ(upgrade_id); + u16 itemId = P.r_u16(); + s32 cost = P.r_s32(); + + PIItem item = smart_cast(Level().Objects.net_Find(itemId)); + if (!item) return; + + if (ps->money_for_round < cost) return; + + AddMoneyToPlayer(ps, -cost); + + NET_Packet NP; + CGameObject::u_EventGen(NP, GE_INSTALL_UPGRADE, itemId); + NP.w_stringZ(upgrade_id); + CGameObject::u_EventSend(NP); + + GenerateGameMessage(NP); + NP.w_u32(GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS); + NP.w_u16(itemId); + m_server->SendTo(clientID, NP); } \ No newline at end of file diff --git a/src/xrGame/inventory_item_upgrade.cpp b/src/xrGame/inventory_item_upgrade.cpp index 6a54e58b384..342c2a36a68 100644 --- a/src/xrGame/inventory_item_upgrade.cpp +++ b/src/xrGame/inventory_item_upgrade.cpp @@ -163,9 +163,15 @@ void CInventoryItem::net_Spawn_install_upgrades(CSE_Abstract* DC) // net_Spawn Level().UpgradeManager().init_install(*this); // from pSettings - for (const auto& upgrade : saved_upgrades) + if (IsGameTypeSingle()) { - Level().UpgradeManager().upgrade_install(*this, *upgrade, true); + for (auto& upgrade : saved_upgrades) + Level().UpgradeManager().upgrade_install(*this, (*upgrade), true); + } + else + { + for (auto& upgrade : saved_upgrades) + Level().UpgradeManager().upgrade_install_mp(*this, (*upgrade), true); } } diff --git a/src/xrGame/inventory_upgrade_manager.h b/src/xrGame/inventory_upgrade_manager.h index 189a6af5328..18422f1d4ad 100644 --- a/src/xrGame/inventory_upgrade_manager.h +++ b/src/xrGame/inventory_upgrade_manager.h @@ -62,7 +62,9 @@ class Manager : private Noncopyable bool can_install_upgrade(CInventoryItem& item, shared_str const& upgrade_id); bool can_add_upgrade(CInventoryItem& item, shared_str const& upgrade_id); + bool can_upgrade_install(CInventoryItem& item, shared_str const& upgrade_id, bool loading); bool upgrade_install(CInventoryItem& item, shared_str const& upgrade_id, bool loading); + bool upgrade_install_mp(CInventoryItem& item, shared_str const& upgrade_id, bool loading); bool upgrade_add(CInventoryItem& item, shared_str const& upgrade_id); void init_install(CInventoryItem& item); diff --git a/src/xrGame/ui/UIActorMenu.h b/src/xrGame/ui/UIActorMenu.h index 7ddbc733512..829cc856e3a 100644 --- a/src/xrGame/ui/UIActorMenu.h +++ b/src/xrGame/ui/UIActorMenu.h @@ -377,6 +377,7 @@ class CUIActorMenu final : public CUIDialogWnd, public CUIWndCallback void OnInventoryAction(PIItem pItem, u16 action_type); void ShowRepairButton(bool status); void OnSuccessRepairMP(PIItem item); + void OnSuccessUpgradeInstallMP(PIItem item); bool SetInfoCurUpgrade(Upgrade_type* upgrade_type, CInventoryItem* inv_item); void SeparateUpgradeItem(); PIItem get_upgrade_item(); diff --git a/src/xrGame/ui/UIActorMenuUpgrade.cpp b/src/xrGame/ui/UIActorMenuUpgrade.cpp index 9660837687c..a2c11a0b13c 100644 --- a/src/xrGame/ui/UIActorMenuUpgrade.cpp +++ b/src/xrGame/ui/UIActorMenuUpgrade.cpp @@ -153,3 +153,13 @@ void CUIActorMenu::OnSuccessRepairMP(PIItem item) SeparateUpgradeItem(); } } + +void CUIActorMenu::OnSuccessUpgradeInstallMP(PIItem item) +{ + UpdateItemsPlace(); + + if (CurrentItem() && ((PIItem)m_upgrade_selected->m_pData)->object_id() == item->object_id()) + { + SeparateUpgradeItem(); + } +} diff --git a/src/xrServerEntities/xrMessages.h b/src/xrServerEntities/xrMessages.h index 4314e010f91..412b134fe8e 100644 --- a/src/xrServerEntities/xrMessages.h +++ b/src/xrServerEntities/xrMessages.h @@ -227,6 +227,8 @@ enum EGameMessages : u32 GAME_EVENT_MP_REPAIR, GAME_EVENT_MP_REPAIR_SUCCESS, + GAME_EVENT_MP_INSTALL_UPGRADE, + GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS, //----------------------------------------- GAME_EVENT_SCRIPT_BEGINS_FROM, // don't add messages after this From 51304de34ea0f83407403d182a7fb6582245b275 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 01:59:52 -0700 Subject: [PATCH 13/36] Enable and fix weapon discharge for multiplayer - Add GE_WPN_UNLOAD_AMMO and GE_WPN_UPDATE_AMMO message types - Modify UnloadMagazine to handle MP with proper ammo synchronization - Add OnEvent method to CWeaponMagazined for MP ammo handling - Add UnloadWeapon method to UIActorMenu for client-server communication - Remove IsGameTypeSingle() restriction from weapon unload UI - Update weapon unload calls to use new UnloadWeapon method - Add server broadcast for weapon unload events Source: OMP commit 24dfa253 --- src/xrGame/WeaponMagazined.cpp | 81 ++++++++++++++++++++++---- src/xrGame/WeaponMagazined.h | 1 + src/xrGame/ui/UIActorMenu.h | 1 + src/xrGame/ui/UIActorMenuInventory.cpp | 22 ++++++- src/xrGame/xrServer_process_event.cpp | 4 +- src/xrServerEntities/xrMessages.h | 2 + 6 files changed, 97 insertions(+), 14 deletions(-) diff --git a/src/xrGame/WeaponMagazined.cpp b/src/xrGame/WeaponMagazined.cpp index 61cfcf36730..861da591b2f 100644 --- a/src/xrGame/WeaponMagazined.cpp +++ b/src/xrGame/WeaponMagazined.cpp @@ -309,21 +309,56 @@ void CWeaponMagazined::UnloadMagazine(bool spawn_ammo) if (!spawn_ammo) return; - xr_map::iterator l_it; - for (l_it = l_ammo.begin(); l_ammo.end() != l_it; ++l_it) + if (OnServer() || IsGameTypeSingle()) { - if (m_pInventory) + xr_map ammos_to_sync; + + xr_map::iterator l_it; + for (l_it = l_ammo.begin(); l_ammo.end() != l_it; ++l_it) + { + if (m_pInventory) + { + const TIItemContainer& list = m_pInventory->m_ruck; + for (TIItemContainer::const_iterator it = list.begin(); list.end() != it; ++it) + { + PIItem pIItem = *it; + CWeaponAmmo* l_pA = smart_cast(pIItem); + if (l_pA && pIItem->Useful()) + { + if (!xr_strcmp(pIItem->object().cNameSect(), l_it->first)) + { + u16 l_free = l_pA->m_boxSize - l_pA->m_boxCurr; + if (l_free > 0) + { + u16 to_add = l_free < l_it->second ? l_free : l_it->second; + l_pA->m_boxCurr = l_pA->m_boxCurr + to_add; + l_it->second = l_it->second - to_add; + ammos_to_sync[l_pA->ID()] = l_pA->m_boxCurr; + if (l_it->second <= 0) break; + } + } + } + } + } + if (l_it->second > 0 && !unlimited_ammo()) + { + SpawnAmmo(l_it->second, l_it->first); + } + } + + if (!IsGameTypeSingle()) { - CWeaponAmmo* l_pA = smart_cast(m_pInventory->GetAny(l_it->first)); - if (l_pA) + NET_Packet P; + CGameObject::u_EventGen(P, GE_WPN_UPDATE_AMMO, ID()); + xr_map::iterator _it; + P.w_u32(ammos_to_sync.size()); + for (_it = ammos_to_sync.begin(); ammos_to_sync.end() != _it; ++_it) { - u16 l_free = l_pA->m_boxSize - l_pA->m_boxCurr; - l_pA->m_boxCurr = l_pA->m_boxCurr + (l_free < l_it->second ? l_free : l_it->second); - l_it->second = l_it->second - (l_free < l_it->second ? l_free : l_it->second); + P.w_u16(_it->first); + P.w_u16(_it->second); } + CGameObject::u_EventSend(P); } - if (l_it->second && !unlimited_ammo()) - SpawnAmmo(l_it->second, l_it->first); } } @@ -1307,6 +1342,32 @@ void CWeaponMagazined::net_Import(NET_Packet& P) SetQueueSize(GetCurrentFireMode()); } +void CWeaponMagazined::OnEvent(NET_Packet& P, u16 type) +{ + switch (type) + { + case GE_WPN_UNLOAD_AMMO: + { + UnloadMagazine(); + }break; + case GE_WPN_UPDATE_AMMO: + { + u32 count = P.r_u32(); + for (u16 i = 0; i < count; ++i) + { + u16 id = P.r_u16(); + u16 boxSize = P.r_u16(); + CWeaponAmmo* pA = smart_cast(Level().Objects.net_Find(id)); + pA->m_boxCurr = boxSize; + } + }break; + default: + { + inherited::OnEvent(P, type); + }break; + } +} + bool CWeaponMagazined::GetBriefInfo(II_BriefInfo& info) { VERIFY(m_pInventory); diff --git a/src/xrGame/WeaponMagazined.h b/src/xrGame/WeaponMagazined.h index c4fcd0fa5bf..d3895c4f078 100644 --- a/src/xrGame/WeaponMagazined.h +++ b/src/xrGame/WeaponMagazined.h @@ -83,6 +83,7 @@ class CWeaponMagazined : public CWeapon virtual void net_Destroy(); virtual void net_Export(NET_Packet& P); virtual void net_Import(NET_Packet& P); + virtual void OnEvent(NET_Packet& P, u16 type); virtual void OnH_A_Chield(); diff --git a/src/xrGame/ui/UIActorMenu.h b/src/xrGame/ui/UIActorMenu.h index 829cc856e3a..26eceea18d6 100644 --- a/src/xrGame/ui/UIActorMenu.h +++ b/src/xrGame/ui/UIActorMenu.h @@ -333,6 +333,7 @@ class CUIActorMenu final : public CUIDialogWnd, public CUIWndCallback void AttachAddon(PIItem item_to_upgrade); void DetachAddon(LPCSTR addon_name, PIItem itm = NULL); + void UnloadWeapon(CWeaponMagazined* pWpn); void SendEvent_Item2Slot(PIItem pItem, u16 parent, u16 slot_id); void SendEvent_Item2Belt(PIItem pItem, u16 parent); diff --git a/src/xrGame/ui/UIActorMenuInventory.cpp b/src/xrGame/ui/UIActorMenuInventory.cpp index 0d1ec74e450..75b318454ea 100644 --- a/src/xrGame/ui/UIActorMenuInventory.cpp +++ b/src/xrGame/ui/UIActorMenuInventory.cpp @@ -388,6 +388,22 @@ void CUIActorMenu::DetachAddon(LPCSTR addon_name, PIItem itm) itm->Detach(addon_name, true); } +void CUIActorMenu::UnloadWeapon(CWeaponMagazined* pWpn) +{ + if (!pWpn) return; + + if (IsGameTypeSingle() || OnServer()) + { + pWpn->UnloadMagazine(); + } + else + { + NET_Packet P; + CGameObject::u_EventGen(P, GE_WPN_UNLOAD_AMMO, pWpn->ID()); + CGameObject::u_EventSend(P); + } +} + void CUIActorMenu::InitCellForSlot(u16 slot_idx) { //VERIFY(KNIFE_SLOT <= slot_idx && slot_idx <= LAST_SLOT); @@ -1079,7 +1095,7 @@ void CUIActorMenu::PropertiesBoxForWeapon(CUICellItem* cell_item, PIItem item, b { } } - if (smart_cast(pWeapon) && IsGameTypeSingle()) + if (smart_cast(pWeapon)) { bool b = (pWeapon->GetAmmoElapsed() != 0); if (!b) @@ -1500,14 +1516,14 @@ void CUIActorMenu::ProcessPropertiesBoxClicked(CUIWindow* w, void* d) { break; } - weap_mag->UnloadMagazine(); + UnloadWeapon(weap_mag); for (u32 i = 0; i < cell_item->ChildsCount(); ++i) { CUICellItem* child_itm = cell_item->Child(i); CWeaponMagazined* child_weap_mag = smart_cast((CWeapon*)child_itm->m_pData); if (child_weap_mag) { - child_weap_mag->UnloadMagazine(); + UnloadWeapon(child_weap_mag); } } break; diff --git a/src/xrGame/xrServer_process_event.cpp b/src/xrGame/xrServer_process_event.cpp index 7f24f5e5ab0..28d50a6854c 100644 --- a/src/xrGame/xrServer_process_event.cpp +++ b/src/xrGame/xrServer_process_event.cpp @@ -56,7 +56,9 @@ void xrServer::Process_event(NET_Packet& P, ClientID sender) case GEG_PLAYER_ITEM2SLOT: case GEG_PLAYER_ITEM2BELT: case GEG_PLAYER_ITEM2RUCK: - case GE_GRENADE_EXPLODE: { SendBroadcast(BroadcastCID, P, MODE); + case GE_GRENADE_EXPLODE: + case GE_WPN_UNLOAD_AMMO: + case GE_WPN_UPDATE_AMMO: { SendBroadcast(BroadcastCID, P, MODE); } break; case GEG_PLAYER_ACTIVATEARTEFACT: diff --git a/src/xrServerEntities/xrMessages.h b/src/xrServerEntities/xrMessages.h index 412b134fe8e..2902a1e93f4 100644 --- a/src/xrServerEntities/xrMessages.h +++ b/src/xrServerEntities/xrMessages.h @@ -106,6 +106,8 @@ enum : u32 GE_WPN_AMMO_ADD, GE_WPN_STATE_CHANGE, + GE_WPN_UNLOAD_AMMO, + GE_WPN_UPDATE_AMMO, GE_ADDON_ATTACH, GE_ADDON_DETACH, From 1d9d3ab13f4ae381088650ca5a46ace79a8baa32 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:11:19 -0700 Subject: [PATCH 14/36] [xrSound] Created interfaces for main voice chat classes Port of OMP commit d4fb5f79e3c2db47fb1b01843bfe138e96dfcb0c --- src/xrSound/ISoundRecorder.h | 9 +++++++++ src/xrSound/ISoundVoiceChat.h | 12 ++++++++++++ src/xrSound/IStreamPlayer.h | 10 ++++++++++ src/xrSound/IVoicePacketSender.h | 8 ++++++++ src/xrSound/VoicePacket.h | 11 +++++++++++ 5 files changed, 50 insertions(+) create mode 100644 src/xrSound/ISoundRecorder.h create mode 100644 src/xrSound/ISoundVoiceChat.h create mode 100644 src/xrSound/IStreamPlayer.h create mode 100644 src/xrSound/IVoicePacketSender.h create mode 100644 src/xrSound/VoicePacket.h diff --git a/src/xrSound/ISoundRecorder.h b/src/xrSound/ISoundRecorder.h new file mode 100644 index 00000000000..b542b0aeb2b --- /dev/null +++ b/src/xrSound/ISoundRecorder.h @@ -0,0 +1,9 @@ +#pragma once + +class ISoundRecorder +{ +public: + virtual bool IsStarted() = 0; + virtual void Start() = 0; + virtual void Stop() = 0; +}; \ No newline at end of file diff --git a/src/xrSound/ISoundVoiceChat.h b/src/xrSound/ISoundVoiceChat.h new file mode 100644 index 00000000000..59d258ff3e1 --- /dev/null +++ b/src/xrSound/ISoundVoiceChat.h @@ -0,0 +1,12 @@ +#pragma once +#include "ISoundRecorder.h" +#include "IStreamPlayer.h" +#include "IVoicePacketSender.h" + +class ISoundVoiceChat +{ +public: + virtual ISoundRecorder* CreateRecorder(IVoicePacketSender* sender) = 0; + virtual IStreamPlayer* CreateStreamPlayer() = 0; + virtual void DestroySoundPlayer(IStreamPlayer* player) = 0; +}; \ No newline at end of file diff --git a/src/xrSound/IStreamPlayer.h b/src/xrSound/IStreamPlayer.h new file mode 100644 index 00000000000..7f569067410 --- /dev/null +++ b/src/xrSound/IStreamPlayer.h @@ -0,0 +1,10 @@ +#pragma once +class IStreamPlayer +{ +public: + virtual bool IsPlaying() = 0; + virtual void PushToPlay(const void* data, int count) = 0; + virtual void Update() = 0; + virtual void SetDistance(float value) = 0; + virtual void SetPosition(const Fvector& pos) = 0; +}; \ No newline at end of file diff --git a/src/xrSound/IVoicePacketSender.h b/src/xrSound/IVoicePacketSender.h new file mode 100644 index 00000000000..4ed705327e6 --- /dev/null +++ b/src/xrSound/IVoicePacketSender.h @@ -0,0 +1,8 @@ +#pragma once +#include "VoicePacket.h" + +class IVoicePacketSender +{ +public: + virtual void Send(VoicePacket** packets, u8 count) = 0; +}; \ No newline at end of file diff --git a/src/xrSound/VoicePacket.h b/src/xrSound/VoicePacket.h new file mode 100644 index 00000000000..c5a429fd380 --- /dev/null +++ b/src/xrSound/VoicePacket.h @@ -0,0 +1,11 @@ +#pragma once + +struct VoicePacket +{ +public: + static constexpr size_t MAX_DATA_SIZE = 512; + + BYTE data[MAX_DATA_SIZE]; + u32 length; + DWORD time; +}; \ No newline at end of file From e6ff841895daeee83c91b92bb24168d41d0794a2 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:14:32 -0700 Subject: [PATCH 15/36] [xrGame] Implemented voice packet processing in xrServer Added M_VOICE_MESSAGE handling with distance-based voice chat relay. Includes OnVoiceMessage method that forwards voice packets to nearby players. Port of OMP commit c30024739a81730dcef9a96e97dc043e3ba4da74 --- src/xrGame/xrServer.cpp | 60 +++++++++++++++++++++++++++++++ src/xrGame/xrServer.h | 1 + src/xrServerEntities/xrMessages.h | 4 +++ 3 files changed, 65 insertions(+) diff --git a/src/xrGame/xrServer.cpp b/src/xrGame/xrServer.cpp index f36defaacca..7cb9a473ece 100644 --- a/src/xrGame/xrServer.cpp +++ b/src/xrGame/xrServer.cpp @@ -583,6 +583,11 @@ u32 xrServer::OnMessage(NET_Packet& P, ClientID sender) // Non-Zero means broadc OnChatMessage(&P, l_pC); } break; + case M_VOICE_MESSAGE: + { + OnVoiceMessage(P, sender); + } + break; case M_SV_MAP_NAME: { xrClientData* l_pC = ID_to_client(sender); @@ -897,6 +902,61 @@ void xrServer::OnChatMessage(NET_Packet* P, xrClientData* CL) ForEachClientDoSender(mesenger); }; +void xrServer::OnVoiceMessage(NET_Packet& P, ClientID sender) +{ + xrClientData* pClient = (xrClientData*)ID_to_client(sender); + + if (!pClient || !pClient->net_Ready) return; + game_PlayerState* ps = pClient->ps; + if (!ps) return; + if (!pClient->owner) return; + + // Msg("VoiceMessage size: %u", P.B.count); + + struct send_voice_message + { + xrServer* m_server; + NET_Packet* m_packet; + xrClientData* m_from; + float m_voiceDistanceSqr; + + void operator()(IClient* client) + { + if (client == m_server->GetServerClient()) + return; + + xrClientData* CL = static_cast(client); + if (!CL || !CL->net_Ready || !CL->owner || !m_from->owner || !m_from->ps) + return; + + if (CL->ID == m_from->ID) + return; + + game_PlayerState* ps = CL->ps; + if (!ps || ps->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) + return; + + float distanceSqr = CL->owner->Position().distance_to_sqr(m_from->owner->Position()); + + if (distanceSqr <= m_voiceDistanceSqr) + { + m_server->SendTo(CL->ID, *m_packet, net_flags(FALSE, TRUE, TRUE, TRUE)); + } + } + }; + + u8 distance = P.r_u8(); // distance byte + float voiceDistanceSqr = (float)distance * (float)distance; + + send_voice_message tmp_functor; + tmp_functor.m_server = this; + tmp_functor.m_packet = &P; + tmp_functor.m_from = pClient; + tmp_functor.m_voiceDistanceSqr = voiceDistanceSqr; + + ForEachClientDoSender(tmp_functor); +}; + #ifdef DEBUG static BOOL _ve_initialized = FALSE; diff --git a/src/xrGame/xrServer.h b/src/xrGame/xrServer.h index 2849214ce8f..4d9a56bdcfc 100644 --- a/src/xrGame/xrServer.h +++ b/src/xrGame/xrServer.h @@ -225,6 +225,7 @@ class xrServer : public NET_SERVER_CLASS void SendConnectionData(IClient* CL); void OnChatMessage(NET_Packet* P, xrClientData* CL); + void OnVoiceMessage(NET_Packet& P, ClientID sender); void OnProcessClientMapData(NET_Packet& P, ClientID const& clientID); private: diff --git a/src/xrServerEntities/xrMessages.h b/src/xrServerEntities/xrMessages.h index 2902a1e93f4..c395fd75e61 100644 --- a/src/xrServerEntities/xrMessages.h +++ b/src/xrServerEntities/xrMessages.h @@ -77,6 +77,10 @@ enum : u32 M_SECURE_MESSAGE, M_CREATE_PLAYER_STATE, M_COMPRESSED_UPDATE_OBJECTS, + + M_VOICE_MESSAGE, + + MSG_FORCEDWORD = u32(-1) }; enum : u32 From be8e5dec870ca74af8891ff901bb1a6f52498476 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:39:44 -0700 Subject: [PATCH 16/36] [xrGame] Added microphone icon and distance text in UIMainIngameWnd Added voice chat UI elements for multiplayer: - Microphone icon with active/inactive states - Voice distance text display - SetActiveVoiceIcon and SetVoiceDistance methods Port of OMP commit af9b7c6ed86da3722a2dea7c1ba2abe6106712bb --- src/xrGame/ui/UIMainIngameWnd.cpp | 32 +++++++++++++++++++++++++++++++ src/xrGame/ui/UIMainIngameWnd.h | 6 ++++++ 2 files changed, 38 insertions(+) diff --git a/src/xrGame/ui/UIMainIngameWnd.cpp b/src/xrGame/ui/UIMainIngameWnd.cpp index eadd88bdae2..cfd59f2d664 100644 --- a/src/xrGame/ui/UIMainIngameWnd.cpp +++ b/src/xrGame/ui/UIMainIngameWnd.cpp @@ -120,6 +120,16 @@ void CUIMainIngameWnd::Init() m_ind_outfit_broken = UIHelper::CreateStatic(uiXml, "indicator_outfit_broken", this, false); m_ind_overweight = UIHelper::CreateStatic(uiXml, "indicator_overweight", this, false); + if(!IsGameTypeSingle()) + { + m_icon_microphone = UIHelper::CreateStatic(uiXml, "icon_microphone", this); + m_icon_microphone->Show(true); + + m_voice_distance = UIHelper::CreateTextWnd(uiXml, "voice_distance", this); + + SetActiveVoiceIcon(false); + } + if ((m_ind_boost_psy = UIHelper::CreateStatic(uiXml, "indicator_booster_psy", this, false))) m_ind_boost_psy->Show(false); @@ -308,6 +318,28 @@ void CUIMainIngameWnd::Draw() RenderQuickInfos(); } +void CUIMainIngameWnd::SetActiveVoiceIcon(bool active) +{ + R_ASSERT(m_icon_microphone || m_voice_distance); + + u32 a = active ? 255 : 100; + + u32 color = m_icon_microphone->GetTextureColor(); + m_icon_microphone->SetTextureColor(subst_alpha(color, a)); + + color = m_voice_distance->GetTextColor(); + m_voice_distance->SetTextColor(subst_alpha(color, a)); +} + +void CUIMainIngameWnd::SetVoiceDistance(u8 distance) +{ + R_ASSERT(m_voice_distance); + + string16 text; + xr_sprintf(text, sizeof(text), "%u", distance); + m_voice_distance->SetText(text); +} + void CUIMainIngameWnd::SetMPChatLog(CUIWindow* pChat, CUIWindow* pLog) { m_pMPChatWnd = pChat; diff --git a/src/xrGame/ui/UIMainIngameWnd.h b/src/xrGame/ui/UIMainIngameWnd.h index b86844be5e6..8e1542b290c 100644 --- a/src/xrGame/ui/UIMainIngameWnd.h +++ b/src/xrGame/ui/UIMainIngameWnd.h @@ -42,6 +42,9 @@ class CUIMainIngameWnd final : public CUIWindow CUIStatic* m_ind_helmet_broken{}; CUIStatic* m_ind_outfit_broken{}; CUIStatic* m_ind_overweight{}; + + CUIStatic* m_icon_microphone = nullptr; + CUITextWnd* m_voice_distance = nullptr; public: CUIStatic* m_ind_boost_psy{}; @@ -101,6 +104,9 @@ class CUIMainIngameWnd final : public CUIWindow ewiInvincible, ewiArtefact, }; + + void SetActiveVoiceIcon(bool active); + void SetVoiceDistance(u8 distance); void SetMPChatLog(CUIWindow* pChat, CUIWindow* pLog); From affc7509a059ba8191158c6cb8a8fbadff4a86f3 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:42:18 -0700 Subject: [PATCH 17/36] [xrGame] CUIGameCustom - added HasShownDialogs() method Added method to check if any dialogs are currently shown. Returns true if ActorMenu, PdaMenu, or TalkMenu is shown. Port of OMP commit e39534a6b64e0e1262bc0497e07cefef882c2f93 --- src/xrGame/UIGameCustom.cpp | 5 +++++ src/xrGame/UIGameCustom.h | 1 + 2 files changed, 6 insertions(+) diff --git a/src/xrGame/UIGameCustom.cpp b/src/xrGame/UIGameCustom.cpp index 27db0882d7f..1bab2ae24d5 100644 --- a/src/xrGame/UIGameCustom.cpp +++ b/src/xrGame/UIGameCustom.cpp @@ -528,6 +528,11 @@ void CUIGameCustom::HideShownDialogs() } } +bool CUIGameCustom::HasShownDialogs() const +{ + return ActorMenu().IsShown() || PdaMenu().IsShown() || TalkMenu->IsShown(); +} + void CUIGameCustom::StartTrade(CInventoryOwner* pActorInv, CInventoryOwner* pOtherOwner) { ActorMenu->SetActor(pActorInv); diff --git a/src/xrGame/UIGameCustom.h b/src/xrGame/UIGameCustom.h index 26edce70ae3..0ef1a697368 100644 --- a/src/xrGame/UIGameCustom.h +++ b/src/xrGame/UIGameCustom.h @@ -118,6 +118,7 @@ class CUIGameCustom : public FactoryObjectBase, public CDialogHolder, public CUI void ShowCrosshair(bool show) { psHUD_Flags.set(HUD_CROSSHAIR_RT, show); } bool CrosshairShown() { return !!psHUD_Flags.test(HUD_CROSSHAIR_RT); } virtual void HideShownDialogs(); + bool HasShownDialogs() const; virtual void ReinitDialogs() {} StaticDrawableWrapper* AddCustomStatic(const char* id, bool singleInstance, float ttlDefault = -1.0f); StaticDrawableWrapper* GetCustomStatic(const char* id); From 0a70f6b0bcbc72b7fb2b5cd3c805f1706bf8acef Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:45:02 -0700 Subject: [PATCH 18/36] [xrGame] Added voice chat action keys kVOICE_CHAT, kVOICE_DISTANCE Added button actions for voice chat functionality: - kVOICE_CHAT for activating voice chat - kVOICE_DISTANCE for switching voice distance Port of OMP commit 4c8baf78230ec3e786fd2dad9bee6ccfbcfdd5cc --- src/xrEngine/xr_level_controller.cpp | 2 ++ src/xrEngine/xr_level_controller.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/xrEngine/xr_level_controller.cpp b/src/xrEngine/xr_level_controller.cpp index 21dc51a6c8c..84dbf26ab51 100644 --- a/src/xrEngine/xr_level_controller.cpp +++ b/src/xrEngine/xr_level_controller.cpp @@ -82,6 +82,8 @@ game_action actions[] = { "scores", kSCORES, _both }, { "chat", kCHAT, _mp }, { "chat_team", kCHAT_TEAM, _mp }, + { "voice_chat", kVOICE_CHAT, _mp }, + { "voice_distance", kVOICE_DISTANCE, _mp }, { "screenshot", kSCREENSHOT, _both }, { "enter", kENTER, _both }, { "quit", kQUIT, _both }, diff --git a/src/xrEngine/xr_level_controller.h b/src/xrEngine/xr_level_controller.h index f50c79db9b2..cf50c0f749b 100644 --- a/src/xrEngine/xr_level_controller.h +++ b/src/xrEngine/xr_level_controller.h @@ -63,6 +63,8 @@ enum EGameActions : u32 kSCORES, kCHAT, kCHAT_TEAM, + kVOICE_CHAT, + kVOICE_DISTANCE, kSCREENSHOT, kENTER, kQUIT, From 0bd7dc13e6c881c7270d867a7c84c3cf40254854 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 03:46:11 -0700 Subject: [PATCH 19/36] [xrGame] Created VoiceSender class Class for sending voice packets over network with distance settings. Implements IVoicePacketSender interface for voice chat system. Port of OMP commit b2d3e8320ab895c81a584ebbfe18a6fb9b1db000 --- src/xrGame/VoiceSender.cpp | 23 +++++++++++++++++++++++ src/xrGame/VoiceSender.h | 12 ++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 src/xrGame/VoiceSender.cpp create mode 100644 src/xrGame/VoiceSender.h diff --git a/src/xrGame/VoiceSender.cpp b/src/xrGame/VoiceSender.cpp new file mode 100644 index 00000000000..17de31a46b5 --- /dev/null +++ b/src/xrGame/VoiceSender.cpp @@ -0,0 +1,23 @@ +#include "stdafx.h" +#include "VoiceSender.h" +#include "game_cl_mp.h" +#include"game_sv_mp.h" +#include "../xrSound/SoundVoiceChat.h" + +void CVoiceSender::Send(VoicePacket** packets, u8 count) +{ + NET_Packet P; + P.w_begin(M_VOICE_MESSAGE); + P.w_u8(m_distance); + P.w_u16(Level().game->local_player->GameID); + P.w_u8(count); + + for (int i = 0; i < count; ++i) + { + VoicePacket* packet = packets[i]; + P.w_u32(packet->length); + P.w(packet->data, packet->length); + } + + Level().Send(P, net_flags(FALSE, TRUE, TRUE, TRUE)); +} \ No newline at end of file diff --git a/src/xrGame/VoiceSender.h b/src/xrGame/VoiceSender.h new file mode 100644 index 00000000000..e4765064292 --- /dev/null +++ b/src/xrGame/VoiceSender.h @@ -0,0 +1,12 @@ +#pragma once +#include "../xrSound/IVoicePacketSender.h" + +class CVoiceSender : IVoicePacketSender +{ +public: + u8 GetDistance() const { return m_distance; } + void SetDistance(u8 value) { m_distance = value; } + virtual void Send(VoicePacket** packets, u8 count) override; +private: + u8 m_distance = 10; +}; \ No newline at end of file From da0c0509e32589aaa7ead9523436d3b740da42fe Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 04:32:00 -0700 Subject: [PATCH 20/36] [xrGame] Created VoiceChat class and added AF_DISPLAY_VOICE_ICON flag Created VoiceChat class for handling voice communication in multiplayer. Added AF_DISPLAY_VOICE_ICON actor flag for voice indicator display. VoiceChat includes distance switching, message handling, and voice icons. Combined ports of OMP commits: - d53e7c2d12ea600a078a05dc8d1469dbc37b4952 (actor flag) - 9c544b1101af66b9ea7ce89f6bc812269ec888f1 (VoiceChat class) --- src/xrGame/Actor_Flags.h | 7 +- src/xrGame/VoiceChat.cpp | 225 +++++++++++++++++++++++++++++++++++++++ src/xrGame/VoiceChat.h | 61 +++++++++++ 3 files changed, 290 insertions(+), 3 deletions(-) create mode 100644 src/xrGame/VoiceChat.cpp create mode 100644 src/xrGame/VoiceChat.h diff --git a/src/xrGame/Actor_Flags.h b/src/xrGame/Actor_Flags.h index b41f3d35a63..2ecbfda26bc 100644 --- a/src/xrGame/Actor_Flags.h +++ b/src/xrGame/Actor_Flags.h @@ -13,9 +13,10 @@ enum AF_IMPORTANT_SAVE = (1 << 9), AF_CROUCH_TOGGLE = (1 << 10), AF_MULTI_ITEM_PICKUP = (1 << 11), - AF_LOADING_STAGES = (1 << 12), - AF_ALWAYS_USE_ATTITUDE_SENSORS = (1 << 13), // or only when zooming if false - AF_USE_TRACERS = (1 << 14) + AF_DISPLAY_VOICE_ICON = (1 << 12), + AF_LOADING_STAGES = (1 << 13), + AF_ALWAYS_USE_ATTITUDE_SENSORS = (1 << 14), // or only when zooming if false + AF_USE_TRACERS = (1 << 15) }; extern Flags32 psActorFlags; diff --git a/src/xrGame/VoiceChat.cpp b/src/xrGame/VoiceChat.cpp new file mode 100644 index 00000000000..d79456c6c91 --- /dev/null +++ b/src/xrGame/VoiceChat.cpp @@ -0,0 +1,225 @@ +#include "stdafx.h" +#include "VoiceChat.h" +#include "Level.h" +#include "game_cl_mp.h" +#include "Actor.h" +#include "Inventory.h" + +CVoiceChat::CVoiceChat() +{ + // TODO: Initialize with sound system when available + // m_pSoundVoiceChat = ::Sound->GetSoundVoiceChat(); + m_pSoundVoiceChat = nullptr; + CreateRecorder(); +} + +CVoiceChat::~CVoiceChat() +{ + xr_delete(m_pSender); + + if (m_pSoundVoiceChat) + { + for (auto I = m_soundPlayersMap.begin(); I != m_soundPlayersMap.end(); ++I) + { + m_pSoundVoiceChat->DestroySoundPlayer(I->second); + } + } + m_soundPlayersMap.clear(); +} + +bool CVoiceChat::CreateRecorder() +{ + if (m_pSender != nullptr) + { + xr_delete(m_pSender); + m_pSender = nullptr; + } + + m_pSender = xr_new(); + m_pSender->SetDistance(10); // default + + // TODO: Create recorder when sound system is available + // m_pRecorder = m_pSoundVoiceChat->CreateRecorder((IVoicePacketSender*)m_pSender); + m_pRecorder = nullptr; + + return m_pRecorder != nullptr; +} + +void CVoiceChat::Start() +{ + if (m_pRecorder) + m_pRecorder->Start(); +} + +void CVoiceChat::Stop() +{ + if (m_pRecorder) + m_pRecorder->Stop(); +} + +bool CVoiceChat::IsStarted() +{ + return m_pRecorder ? m_pRecorder->IsStarted() : false; +} + +u8 CVoiceChat::GetDistance() const +{ + return m_pSender ? m_pSender->GetDistance() : 10; +} + +u8 CVoiceChat::SwitchDistance() +{ + R_ASSERT(m_pSender != nullptr); + + switch (m_pSender->GetDistance()) + { + case 5: + m_pSender->SetDistance(10); + return 10; + case 10: + m_pSender->SetDistance(30); + return 30; + default: + m_pSender->SetDistance(5); + return 5; + } +} + +void CVoiceChat::Update() +{ + CheckAndClearPlayers(m_soundPlayersMap); +} + +void CVoiceChat::OnRender() +{ + if (psActorFlags.test(AF_DISPLAY_VOICE_ICON)) + { + constexpr Fvector pos = Fvector{ 0.0, 0.5, 0.0 }; + + game_PlayerState* local_player = Game().local_player; + auto& players = Game().players; + + for (auto it = players.begin(); it != players.end(); ++it) + { + game_PlayerState* ps = it->second; + u16 id = ps->GameID; + + if (ps == local_player || ps->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD) || ps->testFlag(GAME_PLAYER_MP_INVIS)) + continue; + + auto voiceTimeIt = m_voiceTimeMap.find(id); + if (voiceTimeIt == m_voiceTimeMap.end()) + continue; + + auto& voiceIconInfo = voiceTimeIt->second; + + if (voiceIconInfo.time + 200 < GetTickCount()) + continue; + + CObject* pObject = Level().Objects.net_Find(id); + if (!pObject) continue; + + CActor* pActor = smart_cast(pObject); + if (!pActor) continue; + + pActor->RenderIndicator(pos, 0.2, 0.2, GetVoiceIndicatorShader()); + } + } +} + +void CVoiceChat::ReceiveMessage(NET_Packet* P) +{ + game_PlayerState* local_player = Game().local_player; + if (!local_player || local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD) || !Actor()) + { + return; + } + + u8 voiceDistance = P->r_u8(); + + u16 clientId = P->r_u16(); + CObject* obj = Level().Objects.net_Find(clientId); + if (!obj) + { + return; + } + + const bool isValidDistance = (Actor()->Position().distance_to(obj->Position()) <= voiceDistance); + + if (isValidDistance == false) + return; + + IStreamPlayer* player = GetStreamPlayer(clientId); + if (player) + { + player->SetPosition(obj->Position()); + player->SetDistance(voiceDistance); + } + + u8 packetsCount = P->r_u8(); + + for (u32 i = 0; i < packetsCount; ++i) + { + u32 length = P->r_u32(); + P->r(m_buffer, length); + if (player) + player->PushToPlay(m_buffer, length); + } + + if (isValidDistance) + { + m_voiceTimeMap[clientId] = SVoiceIconInfo(GetTickCount()); + } +} + +const ui_shader& CVoiceChat::GetVoiceIndicatorShader() +{ + if (m_voiceIndicatorShader->inited()) return m_voiceIndicatorShader; + + m_voiceIndicatorShader->create("friendly_indicator", "ui\\ui_voice"); + return m_voiceIndicatorShader; +} + +IStreamPlayer* CVoiceChat::GetStreamPlayer(u16 clientId) +{ + if (!m_pSoundVoiceChat) + return nullptr; + + IStreamPlayer* player = m_soundPlayersMap[clientId]; + if (!player) + { + player = m_pSoundVoiceChat->CreateStreamPlayer(); + m_soundPlayersMap[clientId] = player; + } + return player; +} + +void CVoiceChat::CheckAndClearPlayers(SOUND_PLAYERS& players) +{ + auto I = players.begin(); + auto E = players.end(); + decltype(I) J; + + for (; I != E;) + { + CObject* obj = Level().Objects.net_Find(I->first); + if (!obj) + { + J = I; + ++I; + + auto voiceTimeIt = m_voiceTimeMap.find(J->first); + if (voiceTimeIt != m_voiceTimeMap.end()) + { + m_voiceTimeMap.erase(voiceTimeIt); + } + + if (m_pSoundVoiceChat) + m_pSoundVoiceChat->DestroySoundPlayer(J->second); + players.erase(J); + } + else { + ++I; + } + } +} \ No newline at end of file diff --git a/src/xrGame/VoiceChat.h b/src/xrGame/VoiceChat.h new file mode 100644 index 00000000000..961c4080111 --- /dev/null +++ b/src/xrGame/VoiceChat.h @@ -0,0 +1,61 @@ +#pragma once +#include "ui_defs.h" +#include "../xrSound/ISoundVoiceChat.h" +#include "VoiceSender.h" + +class CVoiceChat +{ +private: + + struct SVoiceIconInfo + { + u64 time; + + SVoiceIconInfo() = default; + SVoiceIconInfo(u64 _time) + { + time = _time; + } + }; + + typedef xr_map SOUND_PLAYERS; + typedef xr_map PLAYERS_VOICE_TIME; + +public: + CVoiceChat(); + ~CVoiceChat(); + + bool CreateRecorder(); + + void Start(); + void Stop(); + bool IsStarted(); + + u8 GetDistance() const; + u8 SwitchDistance(); + + void Update(); + void OnRender(); + + void ReceiveMessage(NET_Packet* P); + +private: + const ui_shader& GetVoiceIndicatorShader(); + + IStreamPlayer* GetStreamPlayer(u16 clientId); + + void CheckAndClearPlayers(SOUND_PLAYERS& players); + +private: + byte m_buffer[1024]; + + ISoundVoiceChat* m_pSoundVoiceChat = nullptr; + ISoundRecorder* m_pRecorder = nullptr; + + CVoiceSender* m_pSender = nullptr; + SOUND_PLAYERS m_soundPlayersMap; + + PLAYERS_VOICE_TIME m_voiceTimeMap; + + ui_shader m_voiceIndicatorShader; +}; \ No newline at end of file From 406342f70fc8549444e50618e5ed5a5e60331b4a Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 12:10:35 -0700 Subject: [PATCH 21/36] [xrGame] Implemented voice chat in game_cl_freemp Added complete voice chat functionality to FreeMP game mode: - Voice message handling in Level_network_messages - OnVoiceMessage virtual method in game_cl_base - VoiceChat integration in game_cl_freemp with keyboard controls - Distance switching, voice icons, and network message processing Port of OMP commit 5d7198eeeda7d7e2719655c61733debd00119ce9 --- src/xrGame/Level_network_messages.cpp | 7 +++ src/xrGame/game_cl_base.h | 1 + src/xrGame/game_cl_freemp.cpp | 89 ++++++++++++++++++++++++++- src/xrGame/game_cl_freemp.h | 10 +++ 4 files changed, 105 insertions(+), 2 deletions(-) diff --git a/src/xrGame/Level_network_messages.cpp b/src/xrGame/Level_network_messages.cpp index 87a7275d221..3efb5c64cc4 100644 --- a/src/xrGame/Level_network_messages.cpp +++ b/src/xrGame/Level_network_messages.cpp @@ -357,6 +357,13 @@ void CLevel::ClientReceive() Game().OnChatMessage(P); } break; + case M_VOICE_MESSAGE: + { + if (!game) + break; + Game().OnVoiceMessage(P); + } + break; case M_CLIENT_WARN: { if (!game) diff --git a/src/xrGame/game_cl_base.h b/src/xrGame/game_cl_base.h index 351619b908f..ea132bb7633 100644 --- a/src/xrGame/game_cl_base.h +++ b/src/xrGame/game_cl_base.h @@ -94,6 +94,7 @@ class game_cl_GameState : public game_GameState, public ScheduledBase virtual void OnChatMessage(NET_Packet* P){}; virtual void OnWarnMessage(NET_Packet* P){}; virtual void OnRadminMessage(u16 type, NET_Packet* P){}; + virtual void OnVoiceMessage(NET_Packet* P){}; virtual bool IsVotingEnabled() { return m_u16VotingEnabled != 0; }; virtual bool IsVotingEnabled(u16 flag) { return (m_u16VotingEnabled & flag) != 0; }; diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index d302aee88a9..373d83812f3 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -4,13 +4,20 @@ #include "xrEngine/xr_level_controller.h" #include "UIGameFMP.h" #include "actor_mp_client.h" +#include "VoiceChat.h" +#include "ui/UIMainIngameWnd.h" game_cl_freemp::game_cl_freemp() { + if (!g_dedicated_server) + m_pVoiceChat = xr_new(); + else + m_pVoiceChat = NULL; } game_cl_freemp::~game_cl_freemp() { + xr_delete(m_pVoiceChat); } @@ -32,6 +39,11 @@ void game_cl_freemp::SetGameUI(CUIGameCustom* uigame) inherited::SetGameUI(uigame); m_game_ui = smart_cast(uigame); R_ASSERT(m_game_ui); + + if (m_pVoiceChat) + { + m_game_ui->UIMainIngameWnd->SetVoiceDistance(m_pVoiceChat->GetDistance()); + } } @@ -52,6 +64,19 @@ void game_cl_freemp::shedule_Update(u32 dt) if (!local_player) return; + if (!g_dedicated_server && m_pVoiceChat) + { + const bool started = m_pVoiceChat->IsStarted(); + const bool is_dead = !local_player || local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD); + const bool has_shown_dialogs = CurrentGameUI()->HasShownDialogs(); + if (started && (is_dead || has_shown_dialogs)) + { + m_pVoiceChat->Stop(); + CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(false); + } + m_pVoiceChat->Update(); + } + for (auto cl : players) { game_PlayerState* ps = cl.second; @@ -78,9 +103,42 @@ void game_cl_freemp::shedule_Update(u32 dt) } } +void game_cl_freemp::OnRender() +{ + inherited::OnRender(); + + if (m_pVoiceChat) + m_pVoiceChat->OnRender(); +} + bool game_cl_freemp::OnKeyboardPress(int key) { - if (kJUMP == key) + switch (key) + { + case kVOICE_CHAT: + { + if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) + { + if (!m_pVoiceChat->IsStarted()) + { + m_pVoiceChat->Start(); + CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(true); + } + } + return true; + }break; + + case kVOICE_DISTANCE: + { + if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) + { + u8 distance = m_pVoiceChat->SwitchDistance(); + CurrentGameUI()->UIMainIngameWnd->SetVoiceDistance(distance); + } + return true; + }break; + + case kJUMP: { bool b_need_to_send_ready = false; @@ -110,11 +168,33 @@ bool game_cl_freemp::OnKeyboardPress(int key) { return false; } - }; + }break; + + default: + break; + } return inherited::OnKeyboardPress(key); } +bool game_cl_freemp::OnKeyboardRelease(int key) +{ + switch (key) + { + case kVOICE_CHAT: + { + m_pVoiceChat->Stop(); + CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(false); + return true; + }break; + + default: + break; + } + + return inherited::OnKeyboardRelease(key); +} + LPCSTR game_cl_freemp::GetGameScore(string32& score_dest) { s32 frags = local_player ? local_player->frags() : 0; @@ -140,3 +220,8 @@ void game_cl_freemp::OnConnected() funct(); } +void game_cl_freemp::OnVoiceMessage(NET_Packet* P) +{ + m_pVoiceChat->ReceiveMessage(P); +} + diff --git a/src/xrGame/game_cl_freemp.h b/src/xrGame/game_cl_freemp.h index 45356dd664a..b01c873df7f 100644 --- a/src/xrGame/game_cl_freemp.h +++ b/src/xrGame/game_cl_freemp.h @@ -1,6 +1,7 @@ #pragma once #include "game_cl_mp.h" +class CVoiceChat; class CUIGameFMP; class game_cl_freemp :public game_cl_mp @@ -23,7 +24,10 @@ class game_cl_freemp :public game_cl_mp virtual void shedule_Update(u32 dt); + virtual void OnRender(); + virtual bool OnKeyboardPress(int key); + virtual bool OnKeyboardRelease(int key); virtual void TranslateGameMessage(u32 msg, NET_Packet& P); @@ -32,5 +36,11 @@ class game_cl_freemp :public game_cl_mp virtual void OnConnected(); +private: + void OnVoiceMessage(NET_Packet* P); + +private: + CVoiceChat* m_pVoiceChat = nullptr; + }; From dbc7b73f0f1c6feb175a30f68d32b4f5a7bcf04e Mon Sep 17 00:00:00 2001 From: yohjimane Date: Thu, 3 Jul 2025 12:13:45 -0700 Subject: [PATCH 22/36] [xrGame] Fixed voice chat distance reset on screen resolution change Added OnScreenResolutionChanged virtual method to game_cl_base and implemented it in game_cl_freemp to restore voice distance UI after screen resolution changes. HUDManager already calls Game().OnScreenResolutionChanged(). Port of OMP commit d2832530849f39b93a8f3fcb1359a71b33fa8873 --- src/xrGame/game_cl_base.h | 2 ++ src/xrGame/game_cl_freemp.cpp | 8 ++++++++ src/xrGame/game_cl_freemp.h | 2 ++ 3 files changed, 12 insertions(+) diff --git a/src/xrGame/game_cl_base.h b/src/xrGame/game_cl_base.h index ea132bb7633..7138244b635 100644 --- a/src/xrGame/game_cl_base.h +++ b/src/xrGame/game_cl_base.h @@ -122,6 +122,8 @@ class game_cl_GameState : public game_GameState, public ScheduledBase virtual bool IsPlayerInTeam(game_PlayerState* ps, ETeam team) { return ps->team == team; }; virtual void OnConnected(); + virtual void OnScreenResolutionChanged(){}; + u8 m_u8SpectatorModes; virtual bool Is_Spectator_Camera_Allowed(CSpectator::EActorCameras Camera); }; diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index 373d83812f3..64c0508dbbe 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -220,6 +220,14 @@ void game_cl_freemp::OnConnected() funct(); } +void game_cl_freemp::OnScreenResolutionChanged() +{ + if (m_game_ui && m_pVoiceChat) + { + m_game_ui->UIMainIngameWnd->SetVoiceDistance(m_pVoiceChat->GetDistance()); + } +} + void game_cl_freemp::OnVoiceMessage(NET_Packet* P) { m_pVoiceChat->ReceiveMessage(P); diff --git a/src/xrGame/game_cl_freemp.h b/src/xrGame/game_cl_freemp.h index b01c873df7f..522c03c91ac 100644 --- a/src/xrGame/game_cl_freemp.h +++ b/src/xrGame/game_cl_freemp.h @@ -36,6 +36,8 @@ class game_cl_freemp :public game_cl_mp virtual void OnConnected(); + virtual void OnScreenResolutionChanged(); + private: void OnVoiceMessage(NET_Packet* P); From f580bf3df1355ab9fd19466c43ccb961289e7bc8 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 16:59:31 -0700 Subject: [PATCH 23/36] Fixed build after claude cherry-picked commits --- src/xrGame/Actor.cpp | 2 +- src/xrGame/Level.cpp | 2 +- src/xrGame/UIGameCustom.cpp | 2 +- src/xrGame/VoiceChat.cpp | 12 ++++++------ src/xrGame/VoiceChat.h | 3 +-- src/xrGame/VoiceSender.cpp | 4 ++-- src/xrGame/game_cl_freemp.cpp | 4 ++-- src/xrGame/game_cl_freemp.h | 2 +- src/xrGame/game_cl_freemp_messages.cpp | 14 +++++++------- src/xrGame/game_sv_freemp_upgrade_and_repair.cpp | 4 ++-- src/xrGame/inventory_upgrade_manager.h | 6 +++--- src/xrGame/ui/UIActorMenu.h | 1 + src/xrGame/ui/UIActorMenuUpgrade.cpp | 6 +++--- src/xrGame/ui/UIMainIngameWnd.cpp | 2 +- src/xrGame/ui/UIMainIngameWnd.h | 6 +++--- src/xrGame/ui/UIMapList.cpp | 2 +- src/xrGame/xrGame.vcxproj | 6 ++++++ src/xrGame/xrGame.vcxproj.filters | 6 ++++++ src/xrSound/xrSound.vcxproj | 3 +++ 19 files changed, 51 insertions(+), 36 deletions(-) diff --git a/src/xrGame/Actor.cpp b/src/xrGame/Actor.cpp index 9b4371f91d8..2a8e1d4fc65 100644 --- a/src/xrGame/Actor.cpp +++ b/src/xrGame/Actor.cpp @@ -830,7 +830,7 @@ void CActor::HitMarkMonster(Fvector dir, float damage) if (!g_Alive() || !Local() || !(Level().CurrentEntity() == this)) return; - SDrawStaticStruct* s = CurrentGameUI()->AddCustomStatic("monster_claws", false); + StaticDrawableWrapper* s = CurrentGameUI()->AddCustomStatic("monster_claws", false); float h1, p1; Device.vCameraDirection.getHP(h1, p1); diff --git a/src/xrGame/Level.cpp b/src/xrGame/Level.cpp index 4e14bca7add..d05cf8efa42 100644 --- a/src/xrGame/Level.cpp +++ b/src/xrGame/Level.cpp @@ -1080,7 +1080,7 @@ void CLevel::OnAlifeSimulatorLoaded() { MapManager().ResetStorage(); GameTaskManager().ResetStorage(); - + // moved from alife simulator for supporting in MP // only for single and server // for client manager creates in Load_GameSpecific_Before() diff --git a/src/xrGame/UIGameCustom.cpp b/src/xrGame/UIGameCustom.cpp index 1bab2ae24d5..8a5225a3245 100644 --- a/src/xrGame/UIGameCustom.cpp +++ b/src/xrGame/UIGameCustom.cpp @@ -530,7 +530,7 @@ void CUIGameCustom::HideShownDialogs() bool CUIGameCustom::HasShownDialogs() const { - return ActorMenu().IsShown() || PdaMenu().IsShown() || TalkMenu->IsShown(); + return ActorMenu->IsShown() || PdaMenu->IsShown() || TalkMenu->IsShown(); } void CUIGameCustom::StartTrade(CInventoryOwner* pActorInv, CInventoryOwner* pOtherOwner) diff --git a/src/xrGame/VoiceChat.cpp b/src/xrGame/VoiceChat.cpp index d79456c6c91..c3fb9658e41 100644 --- a/src/xrGame/VoiceChat.cpp +++ b/src/xrGame/VoiceChat.cpp @@ -104,7 +104,7 @@ void CVoiceChat::OnRender() game_PlayerState* ps = it->second; u16 id = ps->GameID; - if (ps == local_player || ps->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD) || ps->testFlag(GAME_PLAYER_MP_INVIS)) + if (ps == local_player || ps->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD) /* || ps->testFlag(GAME_PLAYER_MP_INVIS) */) continue; auto voiceTimeIt = m_voiceTimeMap.find(id); @@ -116,7 +116,7 @@ void CVoiceChat::OnRender() if (voiceIconInfo.time + 200 < GetTickCount()) continue; - CObject* pObject = Level().Objects.net_Find(id); + IGameObject* pObject = Level().Objects.net_Find(id); if (!pObject) continue; CActor* pActor = smart_cast(pObject); @@ -138,7 +138,7 @@ void CVoiceChat::ReceiveMessage(NET_Packet* P) u8 voiceDistance = P->r_u8(); u16 clientId = P->r_u16(); - CObject* obj = Level().Objects.net_Find(clientId); + IGameObject* obj = Level().Objects.net_Find(clientId); if (!obj) { return; @@ -184,7 +184,7 @@ IStreamPlayer* CVoiceChat::GetStreamPlayer(u16 clientId) { if (!m_pSoundVoiceChat) return nullptr; - + IStreamPlayer* player = m_soundPlayersMap[clientId]; if (!player) { @@ -202,7 +202,7 @@ void CVoiceChat::CheckAndClearPlayers(SOUND_PLAYERS& players) for (; I != E;) { - CObject* obj = Level().Objects.net_Find(I->first); + IGameObject* obj = Level().Objects.net_Find(I->first); if (!obj) { J = I; @@ -222,4 +222,4 @@ void CVoiceChat::CheckAndClearPlayers(SOUND_PLAYERS& players) ++I; } } -} \ No newline at end of file +} diff --git a/src/xrGame/VoiceChat.h b/src/xrGame/VoiceChat.h index 961c4080111..9c38f256370 100644 --- a/src/xrGame/VoiceChat.h +++ b/src/xrGame/VoiceChat.h @@ -1,5 +1,4 @@ #pragma once -#include "ui_defs.h" #include "../xrSound/ISoundVoiceChat.h" #include "VoiceSender.h" @@ -58,4 +57,4 @@ class CVoiceChat PLAYERS_VOICE_TIME m_voiceTimeMap; ui_shader m_voiceIndicatorShader; -}; \ No newline at end of file +}; diff --git a/src/xrGame/VoiceSender.cpp b/src/xrGame/VoiceSender.cpp index 17de31a46b5..8a471399928 100644 --- a/src/xrGame/VoiceSender.cpp +++ b/src/xrGame/VoiceSender.cpp @@ -2,7 +2,7 @@ #include "VoiceSender.h" #include "game_cl_mp.h" #include"game_sv_mp.h" -#include "../xrSound/SoundVoiceChat.h" +#include "xrSound/ISoundVoiceChat.h" void CVoiceSender::Send(VoicePacket** packets, u8 count) { @@ -20,4 +20,4 @@ void CVoiceSender::Send(VoicePacket** packets, u8 count) } Level().Send(P, net_flags(FALSE, TRUE, TRUE, TRUE)); -} \ No newline at end of file +} diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index 64c0508dbbe..2b25463d9eb 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -9,7 +9,7 @@ game_cl_freemp::game_cl_freemp() { - if (!g_dedicated_server) + if (!GEnv.isDedicatedServer) m_pVoiceChat = xr_new(); else m_pVoiceChat = NULL; @@ -64,7 +64,7 @@ void game_cl_freemp::shedule_Update(u32 dt) if (!local_player) return; - if (!g_dedicated_server && m_pVoiceChat) + if (!GEnv.isDedicatedServer && m_pVoiceChat) { const bool started = m_pVoiceChat->IsStarted(); const bool is_dead = !local_player || local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD); diff --git a/src/xrGame/game_cl_freemp.h b/src/xrGame/game_cl_freemp.h index 522c03c91ac..8b10282beaa 100644 --- a/src/xrGame/game_cl_freemp.h +++ b/src/xrGame/game_cl_freemp.h @@ -21,7 +21,7 @@ class game_cl_freemp :public game_cl_mp virtual void net_import_state(NET_Packet& P); virtual void net_import_update(NET_Packet& P); - + virtual void shedule_Update(u32 dt); virtual void OnRender(); diff --git a/src/xrGame/game_cl_freemp_messages.cpp b/src/xrGame/game_cl_freemp_messages.cpp index 2b8319678ec..d4934e0159b 100644 --- a/src/xrGame/game_cl_freemp_messages.cpp +++ b/src/xrGame/game_cl_freemp_messages.cpp @@ -10,8 +10,8 @@ void game_cl_freemp::TranslateGameMessage(u32 msg, NET_Packet& P) case GAME_EVENT_MP_REPAIR_SUCCESS: { if (m_game_ui && - m_game_ui->ActorMenu().IsShown() && - m_game_ui->ActorMenu().GetMenuMode() == mmUpgrade + m_game_ui->GetActorMenu().IsShown() && + m_game_ui->GetActorMenu().GetMenuMode() == mmUpgrade ) { u16 itemId = P.r_u16(); @@ -19,15 +19,15 @@ void game_cl_freemp::TranslateGameMessage(u32 msg, NET_Packet& P) PIItem item = smart_cast(Level().Objects.net_Find(itemId)); if (item) { - m_game_ui->ActorMenu().OnSuccessRepairMP(item); + m_game_ui->GetActorMenu().OnSuccessRepairMP(item); } } }break; case GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS: { if (m_game_ui && - m_game_ui->ActorMenu().IsShown() && - m_game_ui->ActorMenu().GetMenuMode() == mmUpgrade + m_game_ui->GetActorMenu().IsShown() && + m_game_ui->GetActorMenu().GetMenuMode() == mmUpgrade ) { u16 itemId = P.r_u16(); @@ -35,11 +35,11 @@ void game_cl_freemp::TranslateGameMessage(u32 msg, NET_Packet& P) PIItem item = smart_cast(Level().Objects.net_Find(itemId)); if (item) { - m_game_ui->ActorMenu().OnSuccessUpgradeInstallMP(item); + m_game_ui->GetActorMenu().OnSuccessUpgradeInstallMP(item); } } }break; default: inherited::TranslateGameMessage(msg, P); }; -} \ No newline at end of file +} diff --git a/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp index 355b2951861..099b778fe64 100644 --- a/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp +++ b/src/xrGame/game_sv_freemp_upgrade_and_repair.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" #include "game_sv_freemp.h" #include "ai_space.h" -#include "../xrServerEntities/script_engine.h" +#include "xrScriptEngine/script_engine.hpp" #include "inventory_item.h" #include "Level.h" #include "inventory_upgrade_manager.h" @@ -58,4 +58,4 @@ void game_sv_freemp::OnPlayerInstallUpgrade(NET_Packet& P, ClientID const& clien NP.w_u32(GAME_EVENT_MP_INSTALL_UPGRADE_SUCCESS); NP.w_u16(itemId); m_server->SendTo(clientID, NP); -} \ No newline at end of file +} diff --git a/src/xrGame/inventory_upgrade_manager.h b/src/xrGame/inventory_upgrade_manager.h index 18422f1d4ad..cbe7167898e 100644 --- a/src/xrGame/inventory_upgrade_manager.h +++ b/src/xrGame/inventory_upgrade_manager.h @@ -62,9 +62,9 @@ class Manager : private Noncopyable bool can_install_upgrade(CInventoryItem& item, shared_str const& upgrade_id); bool can_add_upgrade(CInventoryItem& item, shared_str const& upgrade_id); - bool can_upgrade_install(CInventoryItem& item, shared_str const& upgrade_id, bool loading); + bool can_upgrade_install(CInventoryItem& item, shared_str const& upgrade_id, bool loading) { return false; }; bool upgrade_install(CInventoryItem& item, shared_str const& upgrade_id, bool loading); - bool upgrade_install_mp(CInventoryItem& item, shared_str const& upgrade_id, bool loading); + bool upgrade_install_mp(CInventoryItem& item, shared_str const& upgrade_id, bool loading) { return false; }; bool upgrade_add(CInventoryItem& item, shared_str const& upgrade_id); void init_install(CInventoryItem& item); @@ -95,7 +95,7 @@ class Manager : private Noncopyable Upgrades_type m_upgrades; public: - Properties_type m_properties; + Properties_type m_properties{}; }; // class Manager diff --git a/src/xrGame/ui/UIActorMenu.h b/src/xrGame/ui/UIActorMenu.h index 26eceea18d6..02232631e13 100644 --- a/src/xrGame/ui/UIActorMenu.h +++ b/src/xrGame/ui/UIActorMenu.h @@ -26,6 +26,7 @@ class CTrade; class CUIProgressBar; class CUITradeBar; class CUIWeightBar; +class CWeaponMagazined; namespace inventory { diff --git a/src/xrGame/ui/UIActorMenuUpgrade.cpp b/src/xrGame/ui/UIActorMenuUpgrade.cpp index a2c11a0b13c..4346b2f322b 100644 --- a/src/xrGame/ui/UIActorMenuUpgrade.cpp +++ b/src/xrGame/ui/UIActorMenuUpgrade.cpp @@ -146,8 +146,8 @@ void CUIActorMenu::OnSuccessRepairMP(PIItem item) { UpdateItemsPlace(); - UpdateConditionProgressBars(); - + //UpdateConditionProgressBars(); + if (CurrentItem() && ((PIItem)m_upgrade_selected->m_pData)->object_id() == item->object_id()) { SeparateUpgradeItem(); @@ -157,7 +157,7 @@ void CUIActorMenu::OnSuccessRepairMP(PIItem item) void CUIActorMenu::OnSuccessUpgradeInstallMP(PIItem item) { UpdateItemsPlace(); - + if (CurrentItem() && ((PIItem)m_upgrade_selected->m_pData)->object_id() == item->object_id()) { SeparateUpgradeItem(); diff --git a/src/xrGame/ui/UIMainIngameWnd.cpp b/src/xrGame/ui/UIMainIngameWnd.cpp index cfd59f2d664..ff8148123a7 100644 --- a/src/xrGame/ui/UIMainIngameWnd.cpp +++ b/src/xrGame/ui/UIMainIngameWnd.cpp @@ -125,7 +125,7 @@ void CUIMainIngameWnd::Init() m_icon_microphone = UIHelper::CreateStatic(uiXml, "icon_microphone", this); m_icon_microphone->Show(true); - m_voice_distance = UIHelper::CreateTextWnd(uiXml, "voice_distance", this); + m_voice_distance = UIHelper::CreateStatic(uiXml, "voice_distance", this); SetActiveVoiceIcon(false); } diff --git a/src/xrGame/ui/UIMainIngameWnd.h b/src/xrGame/ui/UIMainIngameWnd.h index 8e1542b290c..e38597ecffd 100644 --- a/src/xrGame/ui/UIMainIngameWnd.h +++ b/src/xrGame/ui/UIMainIngameWnd.h @@ -42,9 +42,9 @@ class CUIMainIngameWnd final : public CUIWindow CUIStatic* m_ind_helmet_broken{}; CUIStatic* m_ind_outfit_broken{}; CUIStatic* m_ind_overweight{}; - + CUIStatic* m_icon_microphone = nullptr; - CUITextWnd* m_voice_distance = nullptr; + CUIStatic* m_voice_distance = nullptr; public: CUIStatic* m_ind_boost_psy{}; @@ -104,7 +104,7 @@ class CUIMainIngameWnd final : public CUIWindow ewiInvincible, ewiArtefact, }; - + void SetActiveVoiceIcon(bool active); void SetVoiceDistance(u8 distance); diff --git a/src/xrGame/ui/UIMapList.cpp b/src/xrGame/ui/UIMapList.cpp index 47b07a7aaa8..468c218a4d7 100644 --- a/src/xrGame/ui/UIMapList.cpp +++ b/src/xrGame/ui/UIMapList.cpp @@ -167,7 +167,7 @@ EGameIDs CUIMapList::GetCurGameType() else if (0 == xr_strcmp(text, StringTable().translate(get_token_name(g_GameModes, eGameIDFreeMp)))) return eGameIDFreeMp; else - NODEFAULT; + return eGameIDTeamDeathmatch; } else if (spin_ms) { diff --git a/src/xrGame/xrGame.vcxproj b/src/xrGame/xrGame.vcxproj index f60527e34e4..524bc81cd57 100644 --- a/src/xrGame/xrGame.vcxproj +++ b/src/xrGame/xrGame.vcxproj @@ -729,6 +729,8 @@ + + @@ -2224,7 +2226,10 @@ + + + pch_script.h @@ -2254,6 +2259,7 @@ + diff --git a/src/xrGame/xrGame.vcxproj.filters b/src/xrGame/xrGame.vcxproj.filters index b9f85f93713..5fc227b5f0e 100644 --- a/src/xrGame/xrGame.vcxproj.filters +++ b/src/xrGame/xrGame.vcxproj.filters @@ -9618,6 +9618,12 @@ AI\AMonsters\common\net + + Core\Server\Games\client\freemp + + + Core\Server\Games\client\freemp + diff --git a/src/xrSound/xrSound.vcxproj b/src/xrSound/xrSound.vcxproj index b23ca399f16..00699bda04e 100644 --- a/src/xrSound/xrSound.vcxproj +++ b/src/xrSound/xrSound.vcxproj @@ -44,6 +44,9 @@ + + + From b097bf7aaefd94c7c58b5999da41a2b2d8448331 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 17:05:14 -0700 Subject: [PATCH 24/36] Fix crash when launching original multiplayer modes due to missing upgrade manager --- src/xrGame/Level.cpp | 8 ++++++++ src/xrGame/Level.h | 1 + src/xrGame/game_sv_mp.cpp | 1 + 3 files changed, 10 insertions(+) diff --git a/src/xrGame/Level.cpp b/src/xrGame/Level.cpp index d05cf8efa42..c7357824157 100644 --- a/src/xrGame/Level.cpp +++ b/src/xrGame/Level.cpp @@ -1080,10 +1080,18 @@ void CLevel::OnAlifeSimulatorLoaded() { MapManager().ResetStorage(); GameTaskManager().ResetStorage(); + InitUpgradeManager(); +} +void CLevel::InitUpgradeManager() +{ + // pavel: // moved from alife simulator for supporting in MP // only for single and server // for client manager creates in Load_GameSpecific_Before() + // yohji: + // if we don't create an alife simulator (in the case of vanilla MP modes), + // we still need to call this otherwise there will be a crash R_ASSERT(m_upgrade_manager == nullptr); m_upgrade_manager = xr_new(); } diff --git a/src/xrGame/Level.h b/src/xrGame/Level.h index a93a9f7c73a..5bd84a1464e 100644 --- a/src/xrGame/Level.h +++ b/src/xrGame/Level.h @@ -414,6 +414,7 @@ class CLevel : public IGame_Level, public NET_CLIENT_CLASS inventory::upgrade::Manager& UpgradeManager() const { return *m_upgrade_manager; } void OnAlifeSimulatorLoaded(); void OnAlifeSimulatorUnLoaded(); + void InitUpgradeManager(); protected: CBulletManager* m_pBulletManager; diff --git a/src/xrGame/game_sv_mp.cpp b/src/xrGame/game_sv_mp.cpp index 73c92f9cdca..b473363ec3b 100644 --- a/src/xrGame/game_sv_mp.cpp +++ b/src/xrGame/game_sv_mp.cpp @@ -487,6 +487,7 @@ void game_sv_mp::Create(shared_str& options) } else { + Level().InitUpgradeManager(); Msg("Multiplayer>> alife.spawn not found! No A-life"); } //------------------------------------------------------------------- From 617715dca9124076b704fa04cadf9e80e67b9573 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 21:04:32 -0700 Subject: [PATCH 25/36] Fix build --- CMakeLists.txt | 2 ++ src/xrGame/Level_network.cpp | 9 ++++---- src/xrGame/VoiceChat.cpp | 4 ++-- src/xrGame/game_sv_freemp.cpp | 2 +- src/xrNetServer/BaseServer.cpp | 2 +- src/xrNetServer/CMakeLists.txt | 23 ++++++++++++++++----- src/xrNetServer/IBannedClient.cpp | 2 +- src/xrNetServer/NET_Shared.h | 18 ++++++++++++++++ src/xrNetServer/empty/NET_Client.h | 1 + src/xrNetServer/empty/NET_Server.cpp | 4 ++++ src/xrNetServer/empty/NET_Server.h | 16 ++------------ src/xrNetServer/xrNetServer.vcxproj.filters | 6 +++++- 12 files changed, 59 insertions(+), 30 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a2209c2958c..f3812641907 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -225,6 +225,8 @@ if (CMAKE_BUILD_TYPE STREQUAL "Debug") MIXED ) add_compile_options(-Og) +elseif (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") + add_compile_definitions(RELEASE) endif() add_compile_definitions( diff --git a/src/xrGame/Level_network.cpp b/src/xrGame/Level_network.cpp index df534561f66..3b3021bb2b4 100644 --- a/src/xrGame/Level_network.cpp +++ b/src/xrGame/Level_network.cpp @@ -148,7 +148,6 @@ void CLevel::net_Stop() else if (IsDemoSave() && !IsDemoInfoSaved()) SaveDemoInfo(); - if (!IsGameTypeSingle()) { luabind::functor funct; @@ -383,11 +382,11 @@ bool CLevel::Connect2Server(const char* options) } else { - u32 EndTime = GetTickCount() + ConnectionTimeOut; + u32 EndTime = Device.dwTimeGlobal + ConnectionTimeOut; while (!HasSessionName()) { Sleep(5); - u32 CurTime = GetTickCount(); + u32 CurTime = Device.dwTimeGlobal; if (CurTime > EndTime || net_isFails_Connect()) { OnConnectRejected(); @@ -396,7 +395,7 @@ bool CLevel::Connect2Server(const char* options) } } - EndTime = GetTickCount() + ConnectionTimeOut; + EndTime = Device.dwTimeGlobal + ConnectionTimeOut; while (!m_bConnectResultReceived) { ClientReceive(); @@ -404,7 +403,7 @@ bool CLevel::Connect2Server(const char* options) if (Server) Server->Update(); - u32 CurTime = GetTickCount(); + u32 CurTime = Device.dwTimeGlobal; if (CurTime > EndTime) { NET_Packet P; diff --git a/src/xrGame/VoiceChat.cpp b/src/xrGame/VoiceChat.cpp index c3fb9658e41..8c4b8c106a2 100644 --- a/src/xrGame/VoiceChat.cpp +++ b/src/xrGame/VoiceChat.cpp @@ -113,7 +113,7 @@ void CVoiceChat::OnRender() auto& voiceIconInfo = voiceTimeIt->second; - if (voiceIconInfo.time + 200 < GetTickCount()) + if (voiceIconInfo.time + 200 < Device.dwTimeGlobal) continue; IGameObject* pObject = Level().Objects.net_Find(id); @@ -168,7 +168,7 @@ void CVoiceChat::ReceiveMessage(NET_Packet* P) if (isValidDistance) { - m_voiceTimeMap[clientId] = SVoiceIconInfo(GetTickCount()); + m_voiceTimeMap[clientId] = SVoiceIconInfo(Device.dwTimeGlobal); } } diff --git a/src/xrGame/game_sv_freemp.cpp b/src/xrGame/game_sv_freemp.cpp index fd80d061d16..ae926ebf782 100644 --- a/src/xrGame/game_sv_freemp.cpp +++ b/src/xrGame/game_sv_freemp.cpp @@ -20,7 +20,7 @@ void game_sv_freemp::Create(shared_str & options) switch_Phase(GAME_PHASE_PENDING); - ::Random.seed(GetTickCount()); + ::Random.seed(Device.dwTimeGlobal); m_CorpseList.clear(); } diff --git a/src/xrNetServer/BaseServer.cpp b/src/xrNetServer/BaseServer.cpp index 5b4ab1b36cb..cada1136cc6 100644 --- a/src/xrNetServer/BaseServer.cpp +++ b/src/xrNetServer/BaseServer.cpp @@ -300,7 +300,7 @@ void BaseServer::ClearStatistic() bool BaseServer::DisconnectAddress(const ip_address& Address, LPCSTR reason) { u32 players_count = net_players.ClientsCount(); - buffer_vector PlayersToDisconnect(_alloca(players_count * sizeof(IClient*)), players_count); + buffer_vector PlayersToDisconnect(alloca(players_count * sizeof(IClient*)), players_count); ToDisconnectFillerFunctor tmp_functor(this, &PlayersToDisconnect, &Address); net_players.ForEachClientDo(tmp_functor); diff --git a/src/xrNetServer/CMakeLists.txt b/src/xrNetServer/CMakeLists.txt index 84012b9f117..c18b5170316 100644 --- a/src/xrNetServer/CMakeLists.txt +++ b/src/xrNetServer/CMakeLists.txt @@ -1,13 +1,22 @@ add_library(xrNetServer SHARED) target_sources(xrNetServer PRIVATE + BaseClient.cpp + BaseClient.h + BaseServer.cpp + BaseServer.h + ClientConnectionOptions.h guids.cpp + IBannedClient.cpp + IBannedClient.h + IClient.cpp + IClient.h + IClientStatistic.cpp + IClientStatistic.h ip_filter.cpp ip_filter.h NET_AuthCheck.cpp NET_AuthCheck.h - #NET_Client.cpp - #NET_Client.h NET_Common.cpp NET_Common.h NET_Compressor.cpp @@ -15,12 +24,15 @@ target_sources(xrNetServer PRIVATE NET_Log.cpp NET_Log.h NET_Messages.h - NET_PlayersMonitor.h - #NET_Server.cpp - #NET_Server.h NET_Shared.h + PlayersMonitor.h + ServerConnectionOptions.h stdafx.cpp stdafx.h + SteamNetClient.cpp + SteamNetClient.h + SteamNetServer.cpp + SteamNetServer.h empty/NET_Client.cpp empty/NET_Client.h empty/NET_Server.cpp @@ -31,6 +43,7 @@ target_include_directories(xrNetServer PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" ) target_link_libraries(xrNetServer diff --git a/src/xrNetServer/IBannedClient.cpp b/src/xrNetServer/IBannedClient.cpp index 272c32252e9..67a2172d67e 100644 --- a/src/xrNetServer/IBannedClient.cpp +++ b/src/xrNetServer/IBannedClient.cpp @@ -34,7 +34,7 @@ xr_string IBannedClient::BannedTimeTo() const { string256 res; tm* _tm_banned; - _tm_banned = _localtime64(&BanTime); + _tm_banned = localtime(&BanTime); xr_sprintf(res, sizeof(res), "%02d.%02d.%d_%02d:%02d:%02d", _tm_banned->tm_mday, diff --git a/src/xrNetServer/NET_Shared.h b/src/xrNetServer/NET_Shared.h index b1c8674ddf9..65d759d2140 100644 --- a/src/xrNetServer/NET_Shared.h +++ b/src/xrNetServer/NET_Shared.h @@ -24,6 +24,11 @@ // #define USE_DIRECT_PLAY +// Define DirectPlay constants for compatibility +#if !defined(DPNSEND_GUARANTEED) && !defined(XR_PLATFORM_WINDOWS) +#define DPNSEND_GUARANTEED 0x00000008 +#endif + IC bool UseDirectPlay() { #ifdef USE_DIRECT_PLAY @@ -61,4 +66,17 @@ extern "C" { typedef struct _DPN_CONNECTION_INFO DPN_CONNECTION_INFO; } +#else +// Dummy structure for Linux builds +typedef struct _DPN_CONNECTION_INFO { + u32 dwMessagesReceived; + u32 dwMessagesTransmittedHighPriority; + u32 dwMessagesTransmittedNormalPriority; + u32 dwMessagesTransmittedLowPriority; + u32 dwRoundTripLatencyMS; + u32 dwThroughputBPS; + u32 dwPeakThroughputBPS; + u32 dwPacketsDropped; + u32 dwPacketsRetried; +} DPN_CONNECTION_INFO; #endif diff --git a/src/xrNetServer/empty/NET_Client.h b/src/xrNetServer/empty/NET_Client.h index 2f3b20c09cb..50ea9c626d1 100644 --- a/src/xrNetServer/empty/NET_Client.h +++ b/src/xrNetServer/empty/NET_Client.h @@ -3,6 +3,7 @@ #include "Common/Noncopyable.hpp" #include "../NET_Common.h" #include "../NET_Shared.h" +#include "../IClientStatistic.h" #include "xrCommon/xr_deque.h" #include "xrCommon/xr_vector.h" #include "xrCore/xrstring.h" diff --git a/src/xrNetServer/empty/NET_Server.cpp b/src/xrNetServer/empty/NET_Server.cpp index a8b95bac5b5..5397d4ed527 100644 --- a/src/xrNetServer/empty/NET_Server.cpp +++ b/src/xrNetServer/empty/NET_Server.cpp @@ -94,6 +94,7 @@ struct ClientStatisticImpl { CTimer* device_timer; }; +#ifdef XR_PLATFORM_WINDOWS IClientStatistic::IClientStatistic() : m_pimpl(xr_new()) { @@ -127,7 +128,9 @@ u32 IClientStatistic::getMPS_Receive() const { return m_pimpl->mps_receive; } u32 IClientStatistic::getMPS_Send() const { return m_pimpl->mps_send; } u32 IClientStatistic::getReceivedPerSec() const { return dwBytesReceivedPerSec; } u32 IClientStatistic::getSendedPerSec() const { return dwBytesSendedPerSec; } +#endif +#ifdef XR_PLATFORM_WINDOWS void IClientStatistic::Clear() { // XXX: Ugly, ugly hack (just following the lead of original code). FIX! @@ -139,6 +142,7 @@ void IClientStatistic::Clear() m_pimpl->device_timer = saved_timer; m_pimpl->dwBaseTime = TimeGlobal(m_pimpl->device_timer); } +#endif //------------------------------------------------------------------------------ diff --git a/src/xrNetServer/empty/NET_Server.h b/src/xrNetServer/empty/NET_Server.h index f713b39d176..9a511440f8e 100644 --- a/src/xrNetServer/empty/NET_Server.h +++ b/src/xrNetServer/empty/NET_Server.h @@ -1,22 +1,10 @@ #pragma once #include "../NET_Common.h" -#include "../NET_PlayersMonitor.h" +#include "../PlayersMonitor.h" #include "../NET_Shared.h" #include "../ip_filter.h" - -struct SClientConnectData { - ClientID clientID; - string64 name; - string64 pass; - u32 process_id; - - SClientConnectData() - { - name[0] = pass[0] = 0; - process_id = 0; - } -}; +#include "../IClientStatistic.h" // ----------------------------------------------------- diff --git a/src/xrNetServer/xrNetServer.vcxproj.filters b/src/xrNetServer/xrNetServer.vcxproj.filters index 5915ae864a4..3ef52978e80 100644 --- a/src/xrNetServer/xrNetServer.vcxproj.filters +++ b/src/xrNetServer/xrNetServer.vcxproj.filters @@ -52,7 +52,6 @@ - @@ -124,4 +123,9 @@ {e9d7a0f5-655c-4c81-b93c-cdb619930612} + + + + + \ No newline at end of file From e89326859c47b7a4b7bfe9012b9a679da0f074cb Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 21:49:36 -0700 Subject: [PATCH 26/36] [Gamedata] necessary files and changes for voice chat --- res/gamedata/configs/ui/maingame.xml | 220 +++++++++++++++++ res/gamedata/configs/ui/maingame_16.xml | 232 ++++++++++++++++++ .../ui/textures_descr/ui_communities.xml | 13 + .../ui/textures_descr/ui_microphone.xml | 5 + res/gamedata/configs/ui/ui_keybinding.xml | 2 + res/gamedata/configs/ui/ui_mm_opt.xml | 46 +++- res/gamedata/configs/ui/ui_mm_opt_16.xml | 44 +++- res/gamedata/textures/ui/ui_communities.dds | Bin 0 -> 262272 bytes res/gamedata/textures/ui/ui_communities.thm | Bin 0 -> 138 bytes res/gamedata/textures/ui/ui_microphone.dds | Bin 0 -> 5616 bytes res/gamedata/textures/ui/ui_microphone.thm | Bin 0 -> 138 bytes res/gamedata/textures/ui/ui_voice.dds | Bin 0 -> 65664 bytes res/gamedata/textures/ui/ui_voice.thm | Bin 0 -> 138 bytes 13 files changed, 551 insertions(+), 11 deletions(-) create mode 100644 res/gamedata/configs/ui/maingame.xml create mode 100644 res/gamedata/configs/ui/maingame_16.xml create mode 100644 res/gamedata/configs/ui/textures_descr/ui_communities.xml create mode 100644 res/gamedata/configs/ui/textures_descr/ui_microphone.xml create mode 100644 res/gamedata/textures/ui/ui_communities.dds create mode 100644 res/gamedata/textures/ui/ui_communities.thm create mode 100644 res/gamedata/textures/ui/ui_microphone.dds create mode 100644 res/gamedata/textures/ui/ui_microphone.thm create mode 100644 res/gamedata/textures/ui/ui_voice.dds create mode 100644 res/gamedata/textures/ui/ui_voice.thm diff --git a/res/gamedata/configs/ui/maingame.xml b/res/gamedata/configs/ui/maingame.xml new file mode 100644 index 00000000000..3565659358c --- /dev/null +++ b/res/gamedata/configs/ui/maingame.xml @@ -0,0 +1,220 @@ + +
+ + + + + + + + + + + + ui_hud_icon_weapon + + + + ui_microphone_icon + + + + + + + + + + + + + + + ui_inGame2_shield_Psy + + + ui_inGame2_shield_Radiation + + + ui_inGame2_shield_biological + + + ui_inGame2_shield_blood + + + ui_inGame2_shield_force + + + ui_inGame2_shield_health + + + ui_inGame2_shield_stamina + + + ui_inGame2_shield_radiation_cleanup + + + + ui_hud_icon_goodmode + + + + ui_hud_icon_artefact + + + + + + + + + ui_hud_icon_PDA + + + + + + detectors\contact_1 + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + + + + + + + + + ui_inGame2_Patroni_HUD_main_window + + + + ui_inGame2_Patroni_HUD_red_bar + + + + + + ui_inGame2_Patroni_HUD_blue_bar + + + + + ammo + + + + fmj + + + + ap + + + + gr + + + + + + + + + + + diff --git a/res/gamedata/configs/ui/maingame_16.xml b/res/gamedata/configs/ui/maingame_16.xml new file mode 100644 index 00000000000..26b9a2621c1 --- /dev/null +++ b/res/gamedata/configs/ui/maingame_16.xml @@ -0,0 +1,232 @@ + +
+ <_auto_static x="512" y="384" width="115" height="115" alignment="c" stretch="1" heading="1" xform_anim="xfrom_rotate_3sec" xform_anim_cyclic="1"> + ui_icons_newPDA_Crclbig_h + +
+ + + + + + + + + + + + ui_hud_icon_weapon + + + + ui_microphone_icon + + + + + + + + + + + + + + + ui_inGame2_shield_Psy + + + ui_inGame2_shield_Radiation + + + ui_inGame2_shield_biological + + + ui_inGame2_shield_blood + + + ui_inGame2_shield_force + + + ui_inGame2_shield_health + + + ui_inGame2_shield_stamina + + + ui_inGame2_shield_radiation_cleanup + + + + ui_hud_icon_goodmode + + + + ui_hud_icon_artefact + + + + + + + + + ui_hud_icon_PDA + + + + + + detectors\contact_1 + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + + + + + + + + ui_inGame2_Patroni_HUD_main_window + + + + + ui_inGame2_Patroni_HUD_red_bar + + + + + + ui_inGame2_Patroni_HUD_blue_bar + + + + + ammo + + + + fmj + + + + ap + + + + gr + + + + + + + + + + +
diff --git a/res/gamedata/configs/ui/textures_descr/ui_communities.xml b/res/gamedata/configs/ui/textures_descr/ui_communities.xml new file mode 100644 index 00000000000..83b104bc839 --- /dev/null +++ b/res/gamedata/configs/ui/textures_descr/ui_communities.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/res/gamedata/configs/ui/textures_descr/ui_microphone.xml b/res/gamedata/configs/ui/textures_descr/ui_microphone.xml new file mode 100644 index 00000000000..ad9f3aa89a0 --- /dev/null +++ b/res/gamedata/configs/ui/textures_descr/ui_microphone.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/res/gamedata/configs/ui/ui_keybinding.xml b/res/gamedata/configs/ui/ui_keybinding.xml index 9d0217ba01a..bbb84acad29 100644 --- a/res/gamedata/configs/ui/ui_keybinding.xml +++ b/res/gamedata/configs/ui/ui_keybinding.xml @@ -60,6 +60,8 @@ + + diff --git a/res/gamedata/configs/ui/ui_mm_opt.xml b/res/gamedata/configs/ui/ui_mm_opt.xml index 4e76b90b0e8..076a49d9e39 100644 --- a/res/gamedata/configs/ui/ui_mm_opt.xml +++ b/res/gamedata/configs/ui/ui_mm_opt.xml @@ -574,6 +574,40 @@ ui_inGame2_checkbox + + + ui_mm_voice_chat + + + + ui_mm_players_voice_volume + + + + + + + ui_mm_recorder_volume + + + + + + + ui_mm_recorder_agc + + + ui_inGame2_checkbox + + + + + ui_mm_denoise + + + ui_inGame2_checkbox + + - + ui_mm_fov @@ -813,7 +847,7 @@ - + ui_mm_gamepad_setup ui_inGame2_button @@ -822,7 +856,7 @@ - + ui_inGame2_servers_list_button @@ -830,7 +864,7 @@ ui_mm_gamepad_setup - + ui_inGame2_servers_list_button @@ -867,7 +901,7 @@ - + ui_mm_keyboard_setup ui_inGame2_button @@ -876,7 +910,7 @@ - + ui_patch_back diff --git a/res/gamedata/configs/ui/ui_mm_opt_16.xml b/res/gamedata/configs/ui/ui_mm_opt_16.xml index 9ef450d7a56..5ba61b4b8cc 100644 --- a/res/gamedata/configs/ui/ui_mm_opt_16.xml +++ b/res/gamedata/configs/ui/ui_mm_opt_16.xml @@ -577,6 +577,40 @@ ui_inGame2_checkbox + + + ui_mm_voice_chat + + + + ui_mm_players_voice_volume + + + + + + + ui_mm_recorder_volume + + + + + + + ui_mm_recorder_agc + + + ui_inGame2_checkbox + + + + + ui_mm_denoise + + + ui_inGame2_checkbox + + @@ -622,7 +656,7 @@ - + ui_mm_fov @@ -815,7 +849,7 @@ - + ui_mm_gamepad_setup ui_inGame2_button @@ -824,7 +858,7 @@ - + ui_inGame2_servers_list_button @@ -832,7 +866,7 @@ ui_mm_gamepad_setup - + ui_inGame2_servers_list_button @@ -869,7 +903,7 @@ - + ui_mm_keyboard_setup ui_inGame2_button diff --git a/res/gamedata/textures/ui/ui_communities.dds b/res/gamedata/textures/ui/ui_communities.dds new file mode 100644 index 0000000000000000000000000000000000000000..2ec15f3e11ec8f7cab995a20b9175f7a4b08ec40 GIT binary patch literal 262272 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 literal 0 HcmV?d00001 diff --git a/res/gamedata/textures/ui/ui_communities.thm b/res/gamedata/textures/ui/ui_communities.thm new file mode 100644 index 0000000000000000000000000000000000000000..19f22342bc07865faaf0f15f6f981ae41eec6eee GIT binary patch literal 138 zcmWgOU|?WkU|wzgM(H*d%H^8B{|5aqV6G0oK|hMP*iFX|`Zt~bcR&6F%>{U~?3dc#n*gn} z*tm8=8iYTz!2fO9-jUyszxF2*+88bi{pQX}x{YD$+5ZlUNawH3z%Gp=Rsv$I6GhP9 zK>V~?d#?S};a`9L1M-J%?zxdS_{$ev`wRH{ImR?2{AdjZqxJc&ULU0aJ8?fm{6TbKY6DVk8_I;Kl>(d>F!!wf0gMP%_I<}h*b(l zgS?S_wo^u(Ij;mJpOn^ReijJd5W(9U!ja(K>Rd*pUw}e zYq|R7ALkppUHcXB?68!I`>qK=cCcUS2M?7C0kb4+M?90MJFi!5__Yfn{)xEzX|y}n z6HKRM4Z$BQ$$m4RVu~^MqVjB2rw_@US$qZ#XF-I)2cYn-H?^$H>zLqDbD};`R_P%3xBQ? zHW=q$#iPfb+06-Te=IZZFPz1NkqfF*i20INuugmgTS0{eSO&d*ZP0QE7e? z-A|7n(E6&MM>Yb9`D>1UKmUoR%M{MX(NL?$=bP}N76@{1q}F3~b}!Ulx12}Vs@Jvs zN@dOV#kMr&KlbVT1>4fjfcL0J5-_Eu-d??KW7O^N%lVXg$3yR+A{w9%Cu~xgbb3Ym z&V-Q~#*ZC4X1p==s8Y%K{NdQIxc&A1x%vQoMl&?oBF~?6dhdZrzRLC-g+^+F?AI3J z3rAV}QK^1;e^Qy981?r}L@X8e9-8&#^*b=hGjC>=sHYr*Hoi*`M_t4Z*S^zVu3eD* zP+^*tCKo;&e9pM^-$2&$di;F6>(@e7fcK`BL~5E-iWfVsu^Vbu3?z=a(1NY@Vv}|4z*VBwO=yVZPz3DuFCB{+WQT z_oLBA9?oNKzB6BzdNq^z`LyxQ<)ccux*MOs^aF)&y!P+Ud`r}R`mJDgxTTl~obY^o zxyO3&tKIYOLu^b`OY!Gw?5_~&>l;^q?};hZMkhS-GW3JXM5%NZ{4o-N{|LY6Wx7N^ zzW)Q(3y0%GZTR=`0)6=f^kgza$LVD{Nuf91C5oO6S6-o~@m|(LufK->cj;tT%v)&b lZi#uNzpv-jzOA%X8#unLJ#w=voAo;Oc0Jl2IX5&k^fx%v9nt^* literal 0 HcmV?d00001 diff --git a/res/gamedata/textures/ui/ui_microphone.thm b/res/gamedata/textures/ui/ui_microphone.thm new file mode 100644 index 0000000000000000000000000000000000000000..fe27fe462627711d5fd27f2dbb50f0cf9565c308 GIT binary patch literal 138 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 A(f|Me literal 0 HcmV?d00001 diff --git a/res/gamedata/textures/ui/ui_voice.thm b/res/gamedata/textures/ui/ui_voice.thm new file mode 100644 index 0000000000000000000000000000000000000000..e6e114e872db91989561c16f0867aeab34e9393d GIT binary patch literal 138 zcmWgOU|?WkU|=_?hkX{A}pa7U531a{N#Y_Z6 literal 0 HcmV?d00001 From a4a8ca461e37c7bcda0d684dacd47a699e0a2775 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 21:49:46 -0700 Subject: [PATCH 27/36] Enable voicechat in all mp modes --- src/xrGame/game_cl_freemp.cpp | 28 --------------------- src/xrGame/game_cl_freemp.h | 1 - src/xrGame/game_cl_mp.cpp | 47 +++++++++++++++++++++++++++++++++++ src/xrGame/game_cl_mp.h | 3 +++ 4 files changed, 50 insertions(+), 29 deletions(-) diff --git a/src/xrGame/game_cl_freemp.cpp b/src/xrGame/game_cl_freemp.cpp index 2b25463d9eb..4d9982bb045 100644 --- a/src/xrGame/game_cl_freemp.cpp +++ b/src/xrGame/game_cl_freemp.cpp @@ -9,15 +9,10 @@ game_cl_freemp::game_cl_freemp() { - if (!GEnv.isDedicatedServer) - m_pVoiceChat = xr_new(); - else - m_pVoiceChat = NULL; } game_cl_freemp::~game_cl_freemp() { - xr_delete(m_pVoiceChat); } @@ -115,29 +110,6 @@ bool game_cl_freemp::OnKeyboardPress(int key) { switch (key) { - case kVOICE_CHAT: - { - if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) - { - if (!m_pVoiceChat->IsStarted()) - { - m_pVoiceChat->Start(); - CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(true); - } - } - return true; - }break; - - case kVOICE_DISTANCE: - { - if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) - { - u8 distance = m_pVoiceChat->SwitchDistance(); - CurrentGameUI()->UIMainIngameWnd->SetVoiceDistance(distance); - } - return true; - }break; - case kJUMP: { bool b_need_to_send_ready = false; diff --git a/src/xrGame/game_cl_freemp.h b/src/xrGame/game_cl_freemp.h index 8b10282beaa..e1a4a18ada4 100644 --- a/src/xrGame/game_cl_freemp.h +++ b/src/xrGame/game_cl_freemp.h @@ -42,7 +42,6 @@ class game_cl_freemp :public game_cl_mp void OnVoiceMessage(NET_Packet* P); private: - CVoiceChat* m_pVoiceChat = nullptr; }; diff --git a/src/xrGame/game_cl_mp.cpp b/src/xrGame/game_cl_mp.cpp index 9d6f930df2a..1f02ff0e8cc 100644 --- a/src/xrGame/game_cl_mp.cpp +++ b/src/xrGame/game_cl_mp.cpp @@ -51,6 +51,11 @@ BOOL g_draw_downloads = FALSE; game_cl_mp::game_cl_mp() { + if (!GEnv.isDedicatedServer) + m_pVoiceChat = xr_new(); + else + m_pVoiceChat = NULL; + m_bVotingActive = false; m_pVoteStartWindow = NULL; m_pAdminMenuWindow = NULL; @@ -93,6 +98,8 @@ game_cl_mp::game_cl_mp() game_cl_mp::~game_cl_mp() { + xr_delete(m_pVoiceChat); + /* TODO: check if shaders are deleted automatically... CL_TEAM_DATA_LIST_it it = TeamList.begin(); for(;it!=TeamList.end();++it) @@ -236,6 +243,28 @@ bool game_cl_mp::OnKeyboardPress(int key) return true; } break; + case kVOICE_CHAT: + { + if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) + { + if (!m_pVoiceChat->IsStarted()) + { + m_pVoiceChat->Start(); + CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(true); + } + } + return true; + }break; + + case kVOICE_DISTANCE: + { + if (local_player && !local_player->testFlag(GAME_PLAYER_FLAG_VERY_VERY_DEAD)) + { + u8 distance = m_pVoiceChat->SwitchDistance(); + CurrentGameUI()->UIMainIngameWnd->SetVoiceDistance(distance); + } + return true; + }break; } } @@ -243,6 +272,24 @@ bool game_cl_mp::OnKeyboardPress(int key) return false; } +bool game_cl_mp::OnKeyboardRelease(int key) +{ + switch (key) + { + case kVOICE_CHAT: + { + m_pVoiceChat->Stop(); + CurrentGameUI()->UIMainIngameWnd->SetActiveVoiceIcon(false); + return true; + }break; + + default: + break; + } + + return inherited::OnKeyboardRelease(key); +} + void game_cl_mp::VotingBegin() { if (!m_pVoteStartWindow) diff --git a/src/xrGame/game_cl_mp.h b/src/xrGame/game_cl_mp.h index 264de6cad87..b26b8c2e2ba 100644 --- a/src/xrGame/game_cl_mp.h +++ b/src/xrGame/game_cl_mp.h @@ -8,6 +8,7 @@ #include "configs_dump_verifyer.h" #include "screenshot_server.h" #include "xrCore/fastdelegate.h" +#include "VoiceChat.h" class CUIWindow; class CUISpeechMenu; @@ -180,6 +181,8 @@ class game_cl_mp : public game_cl_GameState virtual void CommonMessageOut(pcstr msg); virtual bool OnKeyboardPress(int key); + virtual bool OnKeyboardRelease(int key); + CVoiceChat* m_pVoiceChat = nullptr; virtual bool CanBeReady() { return true; }; virtual void shedule_Update(u32 dt); From 1326b97f13f792fba40ae50259d9b351a6dc1e88 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 22:55:32 -0700 Subject: [PATCH 28/36] [xrSound] Add precompiled headers and binaries for SpeexDSP 1.2.1 Added SpeexDSP libraries for voice chat audio preprocessing: - 64-bit and 32-bit Windows DLLs (libspeexdsp-1.dll) - Import libraries (speexdsp.lib) - Complete header files for echo cancellation, preprocessing, and resampling This enables voice chat audio processing capabilities for multiplayer voice communication features. --- sdk/binaries/x64/libspeexdsp-1.dll | Bin 0 -> 538689 bytes sdk/binaries/x86/libspeexdsp-1.dll | Bin 0 -> 498759 bytes sdk/include/speex/speex_echo.h | 170 +++++++++++ sdk/include/speex/speex_jitter.h | 197 +++++++++++++ sdk/include/speex/speex_preprocess.h | 219 ++++++++++++++ sdk/include/speex/speex_resampler.h | 343 ++++++++++++++++++++++ sdk/include/speex/speexdsp_config_types.h | 12 + sdk/include/speex/speexdsp_types.h | 126 ++++++++ sdk/libraries/x64/speexdsp.lib | Bin 0 -> 53342 bytes sdk/libraries/x86/speexdsp.lib | Bin 0 -> 54562 bytes 10 files changed, 1067 insertions(+) create mode 100644 sdk/binaries/x64/libspeexdsp-1.dll create mode 100644 sdk/binaries/x86/libspeexdsp-1.dll create mode 100644 sdk/include/speex/speex_echo.h create mode 100644 sdk/include/speex/speex_jitter.h create mode 100644 sdk/include/speex/speex_preprocess.h create mode 100644 sdk/include/speex/speex_resampler.h create mode 100644 sdk/include/speex/speexdsp_config_types.h create mode 100644 sdk/include/speex/speexdsp_types.h create mode 100644 sdk/libraries/x64/speexdsp.lib create mode 100644 sdk/libraries/x86/speexdsp.lib diff --git a/sdk/binaries/x64/libspeexdsp-1.dll b/sdk/binaries/x64/libspeexdsp-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..85b2cf4d9666c9b0441fc470035e681f19728df6 GIT binary patch literal 538689 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%0DOiz1H`k1nx0aR)GM$EYm|4vWuBG_*) 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

$u!-&%Jd&h^3=XDnWj6M=@tlX1W2aW!qEpX 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%0DMr{ehD} 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

(%GZSv-G5)%?0e*l}+O&R;sOHeNS}TUPhVW-oxZ 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

Vuq(oNs;QOq#RE{gug{4TxwOtw<@9o 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 literal 0 HcmV?d00001 diff --git a/sdk/include/speex/speex_echo.h b/sdk/include/speex/speex_echo.h new file mode 100644 index 00000000000..4c1aa5a5f2a --- /dev/null +++ b/sdk/include/speex/speex_echo.h @@ -0,0 +1,170 @@ +/* Copyright (C) Jean-Marc Valin */ +/** + @file speex_echo.h + @brief Echo cancellation +*/ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef SPEEX_ECHO_H +#define SPEEX_ECHO_H +/** @defgroup SpeexEchoState SpeexEchoState: Acoustic echo canceller + * This is the acoustic echo canceller module. + * @{ + */ +#include "speexdsp_types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** Obtain frame size used by the AEC */ +#define SPEEX_ECHO_GET_FRAME_SIZE 3 + +/** Set sampling rate */ +#define SPEEX_ECHO_SET_SAMPLING_RATE 24 +/** Get sampling rate */ +#define SPEEX_ECHO_GET_SAMPLING_RATE 25 + +/* Can't set window sizes */ +/** Get size of impulse response (int32) */ +#define SPEEX_ECHO_GET_IMPULSE_RESPONSE_SIZE 27 + +/* Can't set window content */ +/** Get impulse response (int32[]) */ +#define SPEEX_ECHO_GET_IMPULSE_RESPONSE 29 + +/** Internal echo canceller state. Should never be accessed directly. */ +struct SpeexEchoState_; + +/** @class SpeexEchoState + * This holds the state of the echo canceller. You need one per channel. +*/ + +/** Internal echo canceller state. Should never be accessed directly. */ +typedef struct SpeexEchoState_ SpeexEchoState; + +/** Creates a new echo canceller state + * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms) + * @param filter_length Number of samples of echo to cancel (should generally correspond to 100-500 ms) + * @return Newly-created echo canceller state + */ +SpeexEchoState *speex_echo_state_init(int frame_size, int filter_length); + +/** Creates a new multi-channel echo canceller state + * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms) + * @param filter_length Number of samples of echo to cancel (should generally correspond to 100-500 ms) + * @param nb_mic Number of microphone channels + * @param nb_speakers Number of speaker channels + * @return Newly-created echo canceller state + */ +SpeexEchoState *speex_echo_state_init_mc(int frame_size, int filter_length, int nb_mic, int nb_speakers); + +/** Destroys an echo canceller state + * @param st Echo canceller state +*/ +void speex_echo_state_destroy(SpeexEchoState *st); + +/** Performs echo cancellation a frame, based on the audio sent to the speaker (no delay is added + * to playback in this form) + * + * @param st Echo canceller state + * @param rec Signal from the microphone (near end + far end echo) + * @param play Signal played to the speaker (received from far end) + * @param out Returns near-end signal with echo removed + */ +void speex_echo_cancellation(SpeexEchoState *st, const spx_int16_t *rec, const spx_int16_t *play, spx_int16_t *out); + +/** Performs echo cancellation a frame (deprecated) */ +void speex_echo_cancel(SpeexEchoState *st, const spx_int16_t *rec, const spx_int16_t *play, spx_int16_t *out, spx_int32_t *Yout); + +/** Perform echo cancellation using internal playback buffer, which is delayed by two frames + * to account for the delay introduced by most soundcards (but it could be off!) + * @param st Echo canceller state + * @param rec Signal from the microphone (near end + far end echo) + * @param out Returns near-end signal with echo removed +*/ +void speex_echo_capture(SpeexEchoState *st, const spx_int16_t *rec, spx_int16_t *out); + +/** Let the echo canceller know that a frame was just queued to the soundcard + * @param st Echo canceller state + * @param play Signal played to the speaker (received from far end) +*/ +void speex_echo_playback(SpeexEchoState *st, const spx_int16_t *play); + +/** Reset the echo canceller to its original state + * @param st Echo canceller state + */ +void speex_echo_state_reset(SpeexEchoState *st); + +/** Used like the ioctl function to control the echo canceller parameters + * + * @param st Echo canceller state + * @param request ioctl-type request (one of the SPEEX_ECHO_* macros) + * @param ptr Data exchanged to-from function + * @return 0 if no error, -1 if request in unknown + */ +int speex_echo_ctl(SpeexEchoState *st, int request, void *ptr); + + + +struct SpeexDecorrState_; + +typedef struct SpeexDecorrState_ SpeexDecorrState; + + +/** Create a state for the channel decorrelation algorithm + This is useful for multi-channel echo cancellation only + * @param rate Sampling rate + * @param channels Number of channels (it's a bit pointless if you don't have at least 2) + * @param frame_size Size of the frame to process at ones (counting samples *per* channel) +*/ +SpeexDecorrState *speex_decorrelate_new(int rate, int channels, int frame_size); + +/** Remove correlation between the channels by modifying the phase and possibly + adding noise in a way that is not (or little) perceptible. + * @param st Decorrelator state + * @param in Input audio in interleaved format + * @param out Result of the decorrelation (out *may* alias in) + * @param strength How much alteration of the audio to apply from 0 to 100. +*/ +void speex_decorrelate(SpeexDecorrState *st, const spx_int16_t *in, spx_int16_t *out, int strength); + +/** Destroy a Decorrelation state + * @param st State to destroy +*/ +void speex_decorrelate_destroy(SpeexDecorrState *st); + + +#ifdef __cplusplus +} +#endif + + +/** @}*/ +#endif diff --git a/sdk/include/speex/speex_jitter.h b/sdk/include/speex/speex_jitter.h new file mode 100644 index 00000000000..8fc8d7ec66b --- /dev/null +++ b/sdk/include/speex/speex_jitter.h @@ -0,0 +1,197 @@ +/* Copyright (C) 2002 Jean-Marc Valin */ +/** + @file speex_jitter.h + @brief Adaptive jitter buffer for Speex +*/ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + - Neither the name of the Xiph.org Foundation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef SPEEX_JITTER_H +#define SPEEX_JITTER_H +/** @defgroup JitterBuffer JitterBuffer: Adaptive jitter buffer + * This is the jitter buffer that reorders UDP/RTP packets and adjusts the buffer size + * to maintain good quality and low latency. + * @{ + */ + +#include "speexdsp_types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** Generic adaptive jitter buffer state */ +struct JitterBuffer_; + +/** Generic adaptive jitter buffer state */ +typedef struct JitterBuffer_ JitterBuffer; + +/** Definition of an incoming packet */ +typedef struct _JitterBufferPacket JitterBufferPacket; + +/** Definition of an incoming packet */ +struct _JitterBufferPacket { + char *data; /**< Data bytes contained in the packet */ + spx_uint32_t len; /**< Length of the packet in bytes */ + spx_uint32_t timestamp; /**< Timestamp for the packet */ + spx_uint32_t span; /**< Time covered by the packet (same units as timestamp) */ + spx_uint16_t sequence; /**< RTP Sequence number if available (0 otherwise) */ + spx_uint32_t user_data; /**< Put whatever data you like here (it's ignored by the jitter buffer) */ +}; + +/** Packet has been retrieved */ +#define JITTER_BUFFER_OK 0 +/** Packet is lost or is late */ +#define JITTER_BUFFER_MISSING 1 +/** A "fake" packet is meant to be inserted here to increase buffering */ +#define JITTER_BUFFER_INSERTION 2 +/** There was an error in the jitter buffer */ +#define JITTER_BUFFER_INTERNAL_ERROR -1 +/** Invalid argument */ +#define JITTER_BUFFER_BAD_ARGUMENT -2 + + +/** Set minimum amount of extra buffering required (margin) */ +#define JITTER_BUFFER_SET_MARGIN 0 +/** Get minimum amount of extra buffering required (margin) */ +#define JITTER_BUFFER_GET_MARGIN 1 +/* JITTER_BUFFER_SET_AVAILABLE_COUNT wouldn't make sense */ + +/** Get the amount of available packets currently buffered */ +#define JITTER_BUFFER_GET_AVAILABLE_COUNT 3 +/** Included because of an early misspelling (will remove in next release) */ +#define JITTER_BUFFER_GET_AVALIABLE_COUNT 3 + +/** Assign a function to destroy unused packet. When setting that, the jitter + buffer no longer copies packet data. */ +#define JITTER_BUFFER_SET_DESTROY_CALLBACK 4 +/** */ +#define JITTER_BUFFER_GET_DESTROY_CALLBACK 5 + +/** Tell the jitter buffer to only adjust the delay in multiples of the step parameter provided */ +#define JITTER_BUFFER_SET_DELAY_STEP 6 +/** */ +#define JITTER_BUFFER_GET_DELAY_STEP 7 + +/** Tell the jitter buffer to only do concealment in multiples of the size parameter provided */ +#define JITTER_BUFFER_SET_CONCEALMENT_SIZE 8 +#define JITTER_BUFFER_GET_CONCEALMENT_SIZE 9 + +/** Absolute max amount of loss that can be tolerated regardless of the delay. Typical loss + should be half of that or less. */ +#define JITTER_BUFFER_SET_MAX_LATE_RATE 10 +#define JITTER_BUFFER_GET_MAX_LATE_RATE 11 + +/** Equivalent cost of one percent late packet in timestamp units */ +#define JITTER_BUFFER_SET_LATE_COST 12 +#define JITTER_BUFFER_GET_LATE_COST 13 + + +/** Initialises jitter buffer + * + * @param step_size Starting value for the size of concleanment packets and delay + adjustment steps. Can be changed at any time using JITTER_BUFFER_SET_DELAY_STEP + and JITTER_BUFFER_GET_CONCEALMENT_SIZE. + * @return Newly created jitter buffer state + */ +JitterBuffer *jitter_buffer_init(int step_size); + +/** Restores jitter buffer to its original state + * + * @param jitter Jitter buffer state + */ +void jitter_buffer_reset(JitterBuffer *jitter); + +/** Destroys jitter buffer + * + * @param jitter Jitter buffer state + */ +void jitter_buffer_destroy(JitterBuffer *jitter); + +/** Put one packet into the jitter buffer + * + * @param jitter Jitter buffer state + * @param packet Incoming packet +*/ +void jitter_buffer_put(JitterBuffer *jitter, const JitterBufferPacket *packet); + +/** Get one packet from the jitter buffer + * + * @param jitter Jitter buffer state + * @param packet Returned packet + * @param desired_span Number of samples (or units) we wish to get from the buffer (no guarantee) + * @param current_timestamp Timestamp for the returned packet +*/ +int jitter_buffer_get(JitterBuffer *jitter, JitterBufferPacket *packet, spx_int32_t desired_span, spx_int32_t *start_offset); + +/** Used right after jitter_buffer_get() to obtain another packet that would have the same timestamp. + * This is mainly useful for media where a single "frame" can be split into several packets. + * + * @param jitter Jitter buffer state + * @param packet Returned packet + */ +int jitter_buffer_get_another(JitterBuffer *jitter, JitterBufferPacket *packet); + +/** Get pointer timestamp of jitter buffer + * + * @param jitter Jitter buffer state +*/ +int jitter_buffer_get_pointer_timestamp(JitterBuffer *jitter); + +/** Advance by one tick + * + * @param jitter Jitter buffer state +*/ +void jitter_buffer_tick(JitterBuffer *jitter); + +/** Telling the jitter buffer about the remaining data in the application buffer + * @param jitter Jitter buffer state + * @param rem Amount of data buffered by the application (timestamp units) + */ +void jitter_buffer_remaining_span(JitterBuffer *jitter, spx_uint32_t rem); + +/** Used like the ioctl function to control the jitter buffer parameters + * + * @param jitter Jitter buffer state + * @param request ioctl-type request (one of the JITTER_BUFFER_* macros) + * @param ptr Data exchanged to-from function + * @return 0 if no error, -1 if request in unknown +*/ +int jitter_buffer_ctl(JitterBuffer *jitter, int request, void *ptr); + +int jitter_buffer_update_delay(JitterBuffer *jitter, JitterBufferPacket *packet, spx_int32_t *start_offset); + +/* @} */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/sdk/include/speex/speex_preprocess.h b/sdk/include/speex/speex_preprocess.h new file mode 100644 index 00000000000..a2e1210d412 --- /dev/null +++ b/sdk/include/speex/speex_preprocess.h @@ -0,0 +1,219 @@ +/* Copyright (C) 2003 Epic Games + Written by Jean-Marc Valin */ +/** + * @file speex_preprocess.h + * @brief Speex preprocessor. The preprocess can do noise suppression, + * residual echo suppression (after using the echo canceller), automatic + * gain control (AGC) and voice activity detection (VAD). +*/ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef SPEEX_PREPROCESS_H +#define SPEEX_PREPROCESS_H +/** @defgroup SpeexPreprocessState SpeexPreprocessState: The Speex preprocessor + * This is the Speex preprocessor. The preprocess can do noise suppression, + * residual echo suppression (after using the echo canceller), automatic + * gain control (AGC) and voice activity detection (VAD). + * @{ + */ + +#include "speexdsp_types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** State of the preprocessor (one per channel). Should never be accessed directly. */ +struct SpeexPreprocessState_; + +/** State of the preprocessor (one per channel). Should never be accessed directly. */ +typedef struct SpeexPreprocessState_ SpeexPreprocessState; + + +/** Creates a new preprocessing state. You MUST create one state per channel processed. + * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms). Must be + * the same value as that used for the echo canceller for residual echo cancellation to work. + * @param sampling_rate Sampling rate used for the input. + * @return Newly created preprocessor state +*/ +SpeexPreprocessState *speex_preprocess_state_init(int frame_size, int sampling_rate); + +/** Destroys a preprocessor state + * @param st Preprocessor state to destroy +*/ +void speex_preprocess_state_destroy(SpeexPreprocessState *st); + +/** Preprocess a frame + * @param st Preprocessor state + * @param x Audio sample vector (in and out). Must be same size as specified in speex_preprocess_state_init(). + * @return Bool value for voice activity (1 for speech, 0 for noise/silence), ONLY if VAD turned on. +*/ +int speex_preprocess_run(SpeexPreprocessState *st, spx_int16_t *x); + +/** Preprocess a frame (deprecated, use speex_preprocess_run() instead)*/ +int speex_preprocess(SpeexPreprocessState *st, spx_int16_t *x, spx_int32_t *echo); + +/** Update preprocessor state, but do not compute the output + * @param st Preprocessor state + * @param x Audio sample vector (in only). Must be same size as specified in speex_preprocess_state_init(). +*/ +void speex_preprocess_estimate_update(SpeexPreprocessState *st, spx_int16_t *x); + +/** Used like the ioctl function to control the preprocessor parameters + * @param st Preprocessor state + * @param request ioctl-type request (one of the SPEEX_PREPROCESS_* macros) + * @param ptr Data exchanged to-from function + * @return 0 if no error, -1 if request in unknown +*/ +int speex_preprocess_ctl(SpeexPreprocessState *st, int request, void *ptr); + + + +/** Set preprocessor denoiser state */ +#define SPEEX_PREPROCESS_SET_DENOISE 0 +/** Get preprocessor denoiser state */ +#define SPEEX_PREPROCESS_GET_DENOISE 1 + +/** Set preprocessor Automatic Gain Control state */ +#define SPEEX_PREPROCESS_SET_AGC 2 +/** Get preprocessor Automatic Gain Control state */ +#define SPEEX_PREPROCESS_GET_AGC 3 + +/** Set preprocessor Voice Activity Detection state */ +#define SPEEX_PREPROCESS_SET_VAD 4 +/** Get preprocessor Voice Activity Detection state */ +#define SPEEX_PREPROCESS_GET_VAD 5 + +/** Set preprocessor Automatic Gain Control level (float) */ +#define SPEEX_PREPROCESS_SET_AGC_LEVEL 6 +/** Get preprocessor Automatic Gain Control level (float) */ +#define SPEEX_PREPROCESS_GET_AGC_LEVEL 7 + +/** Set preprocessor dereverb state */ +#define SPEEX_PREPROCESS_SET_DEREVERB 8 +/** Get preprocessor dereverb state */ +#define SPEEX_PREPROCESS_GET_DEREVERB 9 + +/** Set preprocessor dereverb level */ +#define SPEEX_PREPROCESS_SET_DEREVERB_LEVEL 10 +/** Get preprocessor dereverb level */ +#define SPEEX_PREPROCESS_GET_DEREVERB_LEVEL 11 + +/** Set preprocessor dereverb decay */ +#define SPEEX_PREPROCESS_SET_DEREVERB_DECAY 12 +/** Get preprocessor dereverb decay */ +#define SPEEX_PREPROCESS_GET_DEREVERB_DECAY 13 + +/** Set probability required for the VAD to go from silence to voice */ +#define SPEEX_PREPROCESS_SET_PROB_START 14 +/** Get probability required for the VAD to go from silence to voice */ +#define SPEEX_PREPROCESS_GET_PROB_START 15 + +/** Set probability required for the VAD to stay in the voice state (integer percent) */ +#define SPEEX_PREPROCESS_SET_PROB_CONTINUE 16 +/** Get probability required for the VAD to stay in the voice state (integer percent) */ +#define SPEEX_PREPROCESS_GET_PROB_CONTINUE 17 + +/** Set maximum attenuation of the noise in dB (negative number) */ +#define SPEEX_PREPROCESS_SET_NOISE_SUPPRESS 18 +/** Get maximum attenuation of the noise in dB (negative number) */ +#define SPEEX_PREPROCESS_GET_NOISE_SUPPRESS 19 + +/** Set maximum attenuation of the residual echo in dB (negative number) */ +#define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS 20 +/** Get maximum attenuation of the residual echo in dB (negative number) */ +#define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS 21 + +/** Set maximum attenuation of the residual echo in dB when near end is active (negative number) */ +#define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS_ACTIVE 22 +/** Get maximum attenuation of the residual echo in dB when near end is active (negative number) */ +#define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS_ACTIVE 23 + +/** Set the corresponding echo canceller state so that residual echo suppression can be performed (NULL for no residual echo suppression) */ +#define SPEEX_PREPROCESS_SET_ECHO_STATE 24 +/** Get the corresponding echo canceller state */ +#define SPEEX_PREPROCESS_GET_ECHO_STATE 25 + +/** Set maximal gain increase in dB/second (int32) */ +#define SPEEX_PREPROCESS_SET_AGC_INCREMENT 26 + +/** Get maximal gain increase in dB/second (int32) */ +#define SPEEX_PREPROCESS_GET_AGC_INCREMENT 27 + +/** Set maximal gain decrease in dB/second (int32) */ +#define SPEEX_PREPROCESS_SET_AGC_DECREMENT 28 + +/** Get maximal gain decrease in dB/second (int32) */ +#define SPEEX_PREPROCESS_GET_AGC_DECREMENT 29 + +/** Set maximal gain in dB (int32) */ +#define SPEEX_PREPROCESS_SET_AGC_MAX_GAIN 30 + +/** Get maximal gain in dB (int32) */ +#define SPEEX_PREPROCESS_GET_AGC_MAX_GAIN 31 + +/* Can't set loudness */ +/** Get loudness */ +#define SPEEX_PREPROCESS_GET_AGC_LOUDNESS 33 + +/* Can't set gain */ +/** Get current gain (int32 percent) */ +#define SPEEX_PREPROCESS_GET_AGC_GAIN 35 + +/* Can't set spectrum size */ +/** Get spectrum size for power spectrum (int32) */ +#define SPEEX_PREPROCESS_GET_PSD_SIZE 37 + +/* Can't set power spectrum */ +/** Get power spectrum (int32[] of squared values) */ +#define SPEEX_PREPROCESS_GET_PSD 39 + +/* Can't set noise size */ +/** Get spectrum size for noise estimate (int32) */ +#define SPEEX_PREPROCESS_GET_NOISE_PSD_SIZE 41 + +/* Can't set noise estimate */ +/** Get noise estimate (int32[] of squared values) */ +#define SPEEX_PREPROCESS_GET_NOISE_PSD 43 + +/* Can't set speech probability */ +/** Get speech probability in last frame (int32). */ +#define SPEEX_PREPROCESS_GET_PROB 45 + +/** Set preprocessor Automatic Gain Control level (int32) */ +#define SPEEX_PREPROCESS_SET_AGC_TARGET 46 +/** Get preprocessor Automatic Gain Control level (int32) */ +#define SPEEX_PREPROCESS_GET_AGC_TARGET 47 + +#ifdef __cplusplus +} +#endif + +/** @}*/ +#endif diff --git a/sdk/include/speex/speex_resampler.h b/sdk/include/speex/speex_resampler.h new file mode 100644 index 00000000000..901de37b3da --- /dev/null +++ b/sdk/include/speex/speex_resampler.h @@ -0,0 +1,343 @@ +/* Copyright (C) 2007 Jean-Marc Valin + + File: speex_resampler.h + Resampling code + + The design goals of this code are: + - Very fast algorithm + - Low memory requirement + - Good *perceptual* quality (and not best SNR) + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. +*/ + + +#ifndef SPEEX_RESAMPLER_H +#define SPEEX_RESAMPLER_H + +#ifdef OUTSIDE_SPEEX + +/********* WARNING: MENTAL SANITY ENDS HERE *************/ + +/* If the resampler is defined outside of Speex, we change the symbol names so that + there won't be any clash if linking with Speex later on. */ + +/* #define RANDOM_PREFIX your software name here */ +#ifndef RANDOM_PREFIX +#error "Please define RANDOM_PREFIX (above) to something specific to your project to prevent symbol name clashes" +#endif + +#define CAT_PREFIX2(a,b) a ## b +#define CAT_PREFIX(a,b) CAT_PREFIX2(a, b) + +#define speex_resampler_init CAT_PREFIX(RANDOM_PREFIX,_resampler_init) +#define speex_resampler_init_frac CAT_PREFIX(RANDOM_PREFIX,_resampler_init_frac) +#define speex_resampler_destroy CAT_PREFIX(RANDOM_PREFIX,_resampler_destroy) +#define speex_resampler_process_float CAT_PREFIX(RANDOM_PREFIX,_resampler_process_float) +#define speex_resampler_process_int CAT_PREFIX(RANDOM_PREFIX,_resampler_process_int) +#define speex_resampler_process_interleaved_float CAT_PREFIX(RANDOM_PREFIX,_resampler_process_interleaved_float) +#define speex_resampler_process_interleaved_int CAT_PREFIX(RANDOM_PREFIX,_resampler_process_interleaved_int) +#define speex_resampler_set_rate CAT_PREFIX(RANDOM_PREFIX,_resampler_set_rate) +#define speex_resampler_get_rate CAT_PREFIX(RANDOM_PREFIX,_resampler_get_rate) +#define speex_resampler_set_rate_frac CAT_PREFIX(RANDOM_PREFIX,_resampler_set_rate_frac) +#define speex_resampler_get_ratio CAT_PREFIX(RANDOM_PREFIX,_resampler_get_ratio) +#define speex_resampler_set_quality CAT_PREFIX(RANDOM_PREFIX,_resampler_set_quality) +#define speex_resampler_get_quality CAT_PREFIX(RANDOM_PREFIX,_resampler_get_quality) +#define speex_resampler_set_input_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_set_input_stride) +#define speex_resampler_get_input_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_get_input_stride) +#define speex_resampler_set_output_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_set_output_stride) +#define speex_resampler_get_output_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_get_output_stride) +#define speex_resampler_get_input_latency CAT_PREFIX(RANDOM_PREFIX,_resampler_get_input_latency) +#define speex_resampler_get_output_latency CAT_PREFIX(RANDOM_PREFIX,_resampler_get_output_latency) +#define speex_resampler_skip_zeros CAT_PREFIX(RANDOM_PREFIX,_resampler_skip_zeros) +#define speex_resampler_reset_mem CAT_PREFIX(RANDOM_PREFIX,_resampler_reset_mem) +#define speex_resampler_strerror CAT_PREFIX(RANDOM_PREFIX,_resampler_strerror) + +#define spx_int16_t short +#define spx_int32_t int +#define spx_uint16_t unsigned short +#define spx_uint32_t unsigned int + +#define speex_assert(cond) + +#else /* OUTSIDE_SPEEX */ + +#include "speexdsp_types.h" + +#endif /* OUTSIDE_SPEEX */ + +#ifdef __cplusplus +extern "C" { +#endif + +#define SPEEX_RESAMPLER_QUALITY_MAX 10 +#define SPEEX_RESAMPLER_QUALITY_MIN 0 +#define SPEEX_RESAMPLER_QUALITY_DEFAULT 4 +#define SPEEX_RESAMPLER_QUALITY_VOIP 3 +#define SPEEX_RESAMPLER_QUALITY_DESKTOP 5 + +enum { + RESAMPLER_ERR_SUCCESS = 0, + RESAMPLER_ERR_ALLOC_FAILED = 1, + RESAMPLER_ERR_BAD_STATE = 2, + RESAMPLER_ERR_INVALID_ARG = 3, + RESAMPLER_ERR_PTR_OVERLAP = 4, + RESAMPLER_ERR_OVERFLOW = 5, + + RESAMPLER_ERR_MAX_ERROR +}; + +struct SpeexResamplerState_; +typedef struct SpeexResamplerState_ SpeexResamplerState; + +/** Create a new resampler with integer input and output rates. + * @param nb_channels Number of channels to be processed + * @param in_rate Input sampling rate (integer number of Hz). + * @param out_rate Output sampling rate (integer number of Hz). + * @param quality Resampling quality between 0 and 10, where 0 has poor quality + * and 10 has very high quality. + * @return Newly created resampler state + * @retval NULL Error: not enough memory + */ +SpeexResamplerState *speex_resampler_init(spx_uint32_t nb_channels, + spx_uint32_t in_rate, + spx_uint32_t out_rate, + int quality, + int *err); + +/** Create a new resampler with fractional input/output rates. The sampling + * rate ratio is an arbitrary rational number with both the numerator and + * denominator being 32-bit integers. + * @param nb_channels Number of channels to be processed + * @param ratio_num Numerator of the sampling rate ratio + * @param ratio_den Denominator of the sampling rate ratio + * @param in_rate Input sampling rate rounded to the nearest integer (in Hz). + * @param out_rate Output sampling rate rounded to the nearest integer (in Hz). + * @param quality Resampling quality between 0 and 10, where 0 has poor quality + * and 10 has very high quality. + * @return Newly created resampler state + * @retval NULL Error: not enough memory + */ +SpeexResamplerState *speex_resampler_init_frac(spx_uint32_t nb_channels, + spx_uint32_t ratio_num, + spx_uint32_t ratio_den, + spx_uint32_t in_rate, + spx_uint32_t out_rate, + int quality, + int *err); + +/** Destroy a resampler state. + * @param st Resampler state + */ +void speex_resampler_destroy(SpeexResamplerState *st); + +/** Resample a float array. The input and output buffers must *not* overlap. + * @param st Resampler state + * @param channel_index Index of the channel to process for the multi-channel + * base (0 otherwise) + * @param in Input buffer + * @param in_len Number of input samples in the input buffer. Returns the + * number of samples processed + * @param out Output buffer + * @param out_len Size of the output buffer. Returns the number of samples written + */ +int speex_resampler_process_float(SpeexResamplerState *st, + spx_uint32_t channel_index, + const float *in, + spx_uint32_t *in_len, + float *out, + spx_uint32_t *out_len); + +/** Resample an int array. The input and output buffers must *not* overlap. + * @param st Resampler state + * @param channel_index Index of the channel to process for the multi-channel + * base (0 otherwise) + * @param in Input buffer + * @param in_len Number of input samples in the input buffer. Returns the number + * of samples processed + * @param out Output buffer + * @param out_len Size of the output buffer. Returns the number of samples written + */ +int speex_resampler_process_int(SpeexResamplerState *st, + spx_uint32_t channel_index, + const spx_int16_t *in, + spx_uint32_t *in_len, + spx_int16_t *out, + spx_uint32_t *out_len); + +/** Resample an interleaved float array. The input and output buffers must *not* overlap. + * @param st Resampler state + * @param in Input buffer + * @param in_len Number of input samples in the input buffer. Returns the number + * of samples processed. This is all per-channel. + * @param out Output buffer + * @param out_len Size of the output buffer. Returns the number of samples written. + * This is all per-channel. + */ +int speex_resampler_process_interleaved_float(SpeexResamplerState *st, + const float *in, + spx_uint32_t *in_len, + float *out, + spx_uint32_t *out_len); + +/** Resample an interleaved int array. The input and output buffers must *not* overlap. + * @param st Resampler state + * @param in Input buffer + * @param in_len Number of input samples in the input buffer. Returns the number + * of samples processed. This is all per-channel. + * @param out Output buffer + * @param out_len Size of the output buffer. Returns the number of samples written. + * This is all per-channel. + */ +int speex_resampler_process_interleaved_int(SpeexResamplerState *st, + const spx_int16_t *in, + spx_uint32_t *in_len, + spx_int16_t *out, + spx_uint32_t *out_len); + +/** Set (change) the input/output sampling rates (integer value). + * @param st Resampler state + * @param in_rate Input sampling rate (integer number of Hz). + * @param out_rate Output sampling rate (integer number of Hz). + */ +int speex_resampler_set_rate(SpeexResamplerState *st, + spx_uint32_t in_rate, + spx_uint32_t out_rate); + +/** Get the current input/output sampling rates (integer value). + * @param st Resampler state + * @param in_rate Input sampling rate (integer number of Hz) copied. + * @param out_rate Output sampling rate (integer number of Hz) copied. + */ +void speex_resampler_get_rate(SpeexResamplerState *st, + spx_uint32_t *in_rate, + spx_uint32_t *out_rate); + +/** Set (change) the input/output sampling rates and resampling ratio + * (fractional values in Hz supported). + * @param st Resampler state + * @param ratio_num Numerator of the sampling rate ratio + * @param ratio_den Denominator of the sampling rate ratio + * @param in_rate Input sampling rate rounded to the nearest integer (in Hz). + * @param out_rate Output sampling rate rounded to the nearest integer (in Hz). + */ +int speex_resampler_set_rate_frac(SpeexResamplerState *st, + spx_uint32_t ratio_num, + spx_uint32_t ratio_den, + spx_uint32_t in_rate, + spx_uint32_t out_rate); + +/** Get the current resampling ratio. This will be reduced to the least + * common denominator. + * @param st Resampler state + * @param ratio_num Numerator of the sampling rate ratio copied + * @param ratio_den Denominator of the sampling rate ratio copied + */ +void speex_resampler_get_ratio(SpeexResamplerState *st, + spx_uint32_t *ratio_num, + spx_uint32_t *ratio_den); + +/** Set (change) the conversion quality. + * @param st Resampler state + * @param quality Resampling quality between 0 and 10, where 0 has poor + * quality and 10 has very high quality. + */ +int speex_resampler_set_quality(SpeexResamplerState *st, + int quality); + +/** Get the conversion quality. + * @param st Resampler state + * @param quality Resampling quality between 0 and 10, where 0 has poor + * quality and 10 has very high quality. + */ +void speex_resampler_get_quality(SpeexResamplerState *st, + int *quality); + +/** Set (change) the input stride. + * @param st Resampler state + * @param stride Input stride + */ +void speex_resampler_set_input_stride(SpeexResamplerState *st, + spx_uint32_t stride); + +/** Get the input stride. + * @param st Resampler state + * @param stride Input stride copied + */ +void speex_resampler_get_input_stride(SpeexResamplerState *st, + spx_uint32_t *stride); + +/** Set (change) the output stride. + * @param st Resampler state + * @param stride Output stride + */ +void speex_resampler_set_output_stride(SpeexResamplerState *st, + spx_uint32_t stride); + +/** Get the output stride. + * @param st Resampler state copied + * @param stride Output stride + */ +void speex_resampler_get_output_stride(SpeexResamplerState *st, + spx_uint32_t *stride); + +/** Get the latency introduced by the resampler measured in input samples. + * @param st Resampler state + */ +int speex_resampler_get_input_latency(SpeexResamplerState *st); + +/** Get the latency introduced by the resampler measured in output samples. + * @param st Resampler state + */ +int speex_resampler_get_output_latency(SpeexResamplerState *st); + +/** Make sure that the first samples to go out of the resamplers don't have + * leading zeros. This is only useful before starting to use a newly created + * resampler. It is recommended to use that when resampling an audio file, as + * it will generate a file with the same length. For real-time processing, + * it is probably easier not to use this call (so that the output duration + * is the same for the first frame). + * @param st Resampler state + */ +int speex_resampler_skip_zeros(SpeexResamplerState *st); + +/** Reset a resampler so a new (unrelated) stream can be processed. + * @param st Resampler state + */ +int speex_resampler_reset_mem(SpeexResamplerState *st); + +/** Returns the English meaning for an error code + * @param err Error code + * @return English string + */ +const char *speex_resampler_strerror(int err); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/sdk/include/speex/speexdsp_config_types.h b/sdk/include/speex/speexdsp_config_types.h new file mode 100644 index 00000000000..ca1f5a3c20e --- /dev/null +++ b/sdk/include/speex/speexdsp_config_types.h @@ -0,0 +1,12 @@ +#ifndef __SPEEX_TYPES_H__ +#define __SPEEX_TYPES_H__ + +#include + +typedef int16_t spx_int16_t; +typedef uint16_t spx_uint16_t; +typedef int32_t spx_int32_t; +typedef uint32_t spx_uint32_t; + +#endif + diff --git a/sdk/include/speex/speexdsp_types.h b/sdk/include/speex/speexdsp_types.h new file mode 100644 index 00000000000..4b4a76a474a --- /dev/null +++ b/sdk/include/speex/speexdsp_types.h @@ -0,0 +1,126 @@ +/* speexdsp_types.h taken from libogg */ +/******************************************************************** + * * + * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * + * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * + * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * + * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * + * * + * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 * + * by the Xiph.Org Foundation http://www.xiph.org/ * + * * + ******************************************************************** + + function: #ifdef jail to whip a few platforms into the UNIX ideal. + last mod: $Id: os_types.h 7524 2004-08-11 04:20:36Z conrad $ + + ********************************************************************/ +/** + @file speexdsp_types.h + @brief Speex types +*/ +#ifndef _SPEEX_TYPES_H +#define _SPEEX_TYPES_H + +#if defined(_WIN32) + +# if defined(__CYGWIN__) +# include <_G_config.h> + typedef _G_int32_t spx_int32_t; + typedef _G_uint32_t spx_uint32_t; + typedef _G_int16_t spx_int16_t; + typedef _G_uint16_t spx_uint16_t; +# elif defined(__MINGW32__) + typedef short spx_int16_t; + typedef unsigned short spx_uint16_t; + typedef int spx_int32_t; + typedef unsigned int spx_uint32_t; +# elif defined(__MWERKS__) + typedef int spx_int32_t; + typedef unsigned int spx_uint32_t; + typedef short spx_int16_t; + typedef unsigned short spx_uint16_t; +# else + /* MSVC/Borland */ + typedef __int32 spx_int32_t; + typedef unsigned __int32 spx_uint32_t; + typedef __int16 spx_int16_t; + typedef unsigned __int16 spx_uint16_t; +# endif + +#elif defined(__MACOS__) + +# include + typedef SInt16 spx_int16_t; + typedef UInt16 spx_uint16_t; + typedef SInt32 spx_int32_t; + typedef UInt32 spx_uint32_t; + +#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */ + +# include + typedef int16_t spx_int16_t; + typedef u_int16_t spx_uint16_t; + typedef int32_t spx_int32_t; + typedef u_int32_t spx_uint32_t; + +#elif defined(__BEOS__) + + /* Be */ +# include + typedef int16_t spx_int16_t; + typedef u_int16_t spx_uint16_t; + typedef int32_t spx_int32_t; + typedef u_int32_t spx_uint32_t; + +#elif defined (__EMX__) + + /* OS/2 GCC */ + typedef short spx_int16_t; + typedef unsigned short spx_uint16_t; + typedef int spx_int32_t; + typedef unsigned int spx_uint32_t; + +#elif defined (DJGPP) + + /* DJGPP */ + typedef short spx_int16_t; + typedef int spx_int32_t; + typedef unsigned int spx_uint32_t; + +#elif defined(R5900) + + /* PS2 EE */ + typedef int spx_int32_t; + typedef unsigned spx_uint32_t; + typedef short spx_int16_t; + +#elif defined(__SYMBIAN32__) + + /* Symbian GCC */ + typedef signed short spx_int16_t; + typedef unsigned short spx_uint16_t; + typedef signed int spx_int32_t; + typedef unsigned int spx_uint32_t; + +#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X) + + typedef short spx_int16_t; + typedef unsigned short spx_uint16_t; + typedef long spx_int32_t; + typedef unsigned long spx_uint32_t; + +#elif defined(CONFIG_TI_C6X) + + typedef short spx_int16_t; + typedef unsigned short spx_uint16_t; + typedef int spx_int32_t; + typedef unsigned int spx_uint32_t; + +#else + +#include "speexdsp_config_types.h" + +#endif + +#endif /* _SPEEX_TYPES_H */ diff --git a/sdk/libraries/x64/speexdsp.lib b/sdk/libraries/x64/speexdsp.lib new file mode 100644 index 0000000000000000000000000000000000000000..be51055a82d413d5bd267bda96a4ab5198db2c17 GIT binary patch literal 53342 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 Nf-c%@AzP%~`adZ5|8oEU literal 0 HcmV?d00001 diff --git a/sdk/libraries/x86/speexdsp.lib b/sdk/libraries/x86/speexdsp.lib new file mode 100644 index 0000000000000000000000000000000000000000..b26ba69f621d10305235d9722210a1c179960e1c GIT binary patch literal 54562 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 YZV9m#Rn4r_Tap3R2$P1S5jO4r0i%McmH+?% literal 0 HcmV?d00001 From 17af9e19641d5f5a4379e513a405cf639e47da7d Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 23:45:48 -0700 Subject: [PATCH 29/36] [xrSound] Add precompiled headers and binaries for Opus 1.5.2 - Added opus headers (opus.h, opus_custom.h, opus_defines.h, opus_multistream.h, opus_projection.h, opus_types.h) - Added opus libraries for x64 and x86 architectures - Added opus DLL binaries for x64 and x86 architectures - Required for voice chat audio compression in multiplayer mode Ported from OMP engine commit 981dde9d677a51bb99fa6a49cf21e2972fc5331c --- sdk/binaries/x64/opus.dll | Bin 0 -> 963530 bytes sdk/binaries/x86/opus.dll | Bin 0 -> 957440 bytes sdk/include/opus/opus.h | 1172 +++++++++++++++++++++++++++ sdk/include/opus/opus_custom.h | 381 +++++++++ sdk/include/opus/opus_defines.h | 830 +++++++++++++++++++ sdk/include/opus/opus_multistream.h | 736 +++++++++++++++++ sdk/include/opus/opus_projection.h | 643 +++++++++++++++ sdk/include/opus/opus_types.h | 166 ++++ sdk/libraries/x64/opus.lib | Bin 0 -> 304964 bytes sdk/libraries/x86/opus.lib | Bin 0 -> 22876 bytes 10 files changed, 3928 insertions(+) create mode 100644 sdk/binaries/x64/opus.dll create mode 100644 sdk/binaries/x86/opus.dll create mode 100644 sdk/include/opus/opus.h create mode 100644 sdk/include/opus/opus_custom.h create mode 100644 sdk/include/opus/opus_defines.h create mode 100644 sdk/include/opus/opus_multistream.h create mode 100644 sdk/include/opus/opus_projection.h create mode 100644 sdk/include/opus/opus_types.h create mode 100644 sdk/libraries/x64/opus.lib create mode 100644 sdk/libraries/x86/opus.lib diff --git a/sdk/binaries/x64/opus.dll b/sdk/binaries/x64/opus.dll new file mode 100644 index 0000000000000000000000000000000000000000..823e6025569d461bc0098fd72d38e46aaa195c14 GIT binary patch literal 963530 zcmeFadwf*Yx%fRh86aqMO&}^NmZ(t^MI{xFq{W&|W^j+rAQe!s(4rBFtrx0^(h4y+ z8DKkZj8;yyms8KFJwJPnmR=MQZ!-aM0nrdd0j&l^oiU;j6v9RFexJ4XB!SX%c|Y&x z^ZV!JqnW+;y6m-{`}3@4tsT9g!I$gv`TYFf)8q54~?M1iTUKG4$QqgU9+&t@| z6HYj;*z0;?$mhFx(NN$2dEwSMzNUQN%9DJ)F5kID$LHjX^nE$V=X=xe`SN|fqMt9qgNWO7ES|H|jWF#Cui0r@fa?ln?fm^xpMdv=kiYTf%7m(Z7qTXU(go zaN=&}EJKvJ_a6t3ihRDA7u|eg^^IJ2@xL#S=hM?ZK;3@-Dtx}=MR&RtS4Meh5%nhU zd+6`#Ra`XJt*7V6Tz$jn=qi5u{i}c+E}G}od-iM!8YmY8-gJz5H{ErYG#zz3f09R* z%X9fxC*zyt_NQSE?0w&&V9}BFE9AYmxb-wnz>SZo9Nn+3SADB~uf}c>^#n&Pf7c&y znRV+ORX!Jo;8GL*y1%P8?&8t3=U<1suY!8~=X?Da^~%bnn(v3-0=^TeG?w2j$EbHn znXdPKB|i-SC&+K10IBa^h0n)(FVzp?OZe%a`~iNa9;4o+m+5+4r|~lv1{u!pj$_oj zY?Q9INSLO9dVYQnAEVwFcYKRWD1U-_=kuGxZ@+&PGQM*6y@wkpXrufQen%doURl{C z()4m6xw-J9!10y8uP1f>|9}7YAYeHs>|Z|Em)V&f4lJZENxhcGyYgM*k>g!eBU_ESJq<>Xr@AEz8V2-zmSID zdNx~j_bO`px-9kQp_bib#gjEVt;FSV8YTwCx^q;#gmOl47j4tu&kXW4YawMVzGS5| zv|?*YzW4nf%rK{$Gghk+zSsey=A)HD(`CD6{m@GA`nh?Gq?isPiF2kflFmZvS>;Wt z{ufl!12KEvwCuDD;u0Cbj3vOR*%sSs(%{aRehV481OHn zWPU!{RG$#F)2l?NSoZ#&w%CAee;n*HGE;kcdh~p)#7PAj7$+Q{P4hq*d-|cb1_7|@ z|13)$HH`}2%Tgh8H_d13_EcG%+xcJv{ro|{^n^$FNq-1hng_~jGq+Ipg%Q$il7|gy zL>L}u zx%v2~eK)4PCcW?Lo*uw75IBa)b_VT^<`Bj~PY<&wa*+Wl>gDym^tb8NsqCR+-521z z=iBKOx`XP*?9+6dH!z6u*g>OuGEY57evzI}0k7=*r8l4SkKG5cgSj<}GB@~_C*2jMGM!+c(d$je&77T>Y&{?TYcW6mTyXLpFF@9t$N>T4i*)w&`!J$xa`8xN1Ww%dUc`Q~SVR;rx^UBRdA=hY?&>hV&-mo7NUo7jL}ljizAn1-^J|O_88@V0KKV`gzI} zQT*FR^URIGC6VF_XtxO*OnZmM)8*>>o9KBf7me>4ri=3?%BHr-O-Nne7E+U`GG$9h zUAL(`r5y2P?6svEoGCrA19@uE6MEVQB8fgX4;>s*kGlDQsm2sam?FH~3@ttM zDiR9n$?W3S!>{1)p$h0$!xao>)`*Pi4ursaRQ)B$Lm9(| z?u0{XDs+1BJNLW_^?aa8*4(|KbA#9)dORDw@$`GyKe%kr-3e5M>Hi*#LWilEZJB2P zN&=>iBwTLJe0K1t2RnEm;F}I?`@IZ1XiQdsrLQ^A)6;+w9J3nX?dm^MTPb$S!u7cOD3i2r}EtX!hER$H=}QYh2~3jFJiE4+8MoNr%W=O`t%%o zci6ewFr9Hdu^qW}2QbCHhb*c)kfZ8XaZ%r{>f0FtTD<-idNtLGNd_%)?6>XBv5&7X z?XP1WUZLuvlm*rDkIjXL>P}`*4~><|u}^aLHdd(m9Q^1I!>&J zWZp7Ociu-#_PorA+9;^wJt#c}@+v@cJ6!^;M5>z0c3tBHeTO5qzc`Zc7hmHP8}iCG z2gvkR6qt1f4yr{zVNlv?ec63%8W3o{5S#h3{Jqlg-yek7^JjMHe6`IiZ&VMR zOUsCniSJVNL6L=UzJ7ip&x6kOJ+U4Ta3;Od(l9Z#RsBfnIahv-j?5QpebKwjK9U$& z9Cpkc=la9fIJcJOM9R~51w!`bsIe z&Yi91CP8F@nZqQiFO#bwbX|R+T%8r`&aFOMuD%)T_E(=OSL0&c1FDr=T^s8jR5L)X zZZhr7X6(c6*p5M_6Ef_zs{VcffZZJ`O`Fcd!)7dE z?Y3CQA!98>S3S{G&jaqNwL#}L<7%hSH@njIo74=Ie^Pr%Y;DeL(+(Eo1j{!sI7e62 z_x{ddTK-|KCQ5617S@EB2DM%zV`WEAgnlwCt8h=@vT&D?k2@s(+rLdi)z! zuNIn?oxfU}BF4r@d9tQcdU%35zUq^$M7_SWY`mQM;-`2Rv`0yW$8-f=QLir}rCWo> z7j|AW-cy}xF1gI^Mo%3)@P-MH|;L6D{% z>gI_6tkRxr9?qPrY1apU%>Mkt_>FKZg^iJll&`Dl%2c@ZgltDcR+?iq*$RF%*`C4U z5R9Co-#OkXd_;Q#&|HD0)pls|zFND{GWH9P$iRZ7?U^?ZA($KNu2@IjSR-`mPIKYT zBBZ*xa7~g9Gk-yTV~=RQ(p;$NX-A>+0dwIe!uRIFro;S* zlz1pZPp?wFC$p0NJv<4E0Vo-Gqv<+tk5LDv58CY&bzj3Omv9d;@@#Z*#NHs!msA($ z<3R!I&Z|9pUvpI_U8xnO;W8{X+$$RVcF1Rz?tUy--liV<83Qo7%-9+%!i)tOmNtgU zKT=B_nrdP8e{>&Z6?KOX-tz|pQjggU+m;*sh$|*Ex5e&FkA> z({*s5dMp3CA$tdH4uy<1Gqy8V)!$5`XjPjGSy=SDNXH=|XQBaTs-;&_i20mDN$^aV zb*)-DS~R)b`ZJ|mLQBYTdki|fqHY(2KM@#!Bp{WU$3quCBG*KAMxEey{m>H}Usw!p z=FGMy9uC8tpJh%JJZrU|DG(A!j4oCyK(r{vHM~eVJdY0DDhr^dRlvPxHg0+5Ny=Z9 zyUcW&u9Pd7&R?8K=n=MOK4MTWc#j8XYIxd@+hjaP>FbE6uOo@4wX(K6WsQ`1AGVM& zz0I$x-vfnZmG$%BI;*UI&U5>Vl}GC8AuC0PZR+T?C(`HG`z)=gukDF_oLf;RnxcZH zT%oH!qQi>%9#y}93(>T3{kBO4ZTfWeVXdowBt^@cFLxF7bndc>IzED%Bc@v+7Qm8u zJO-#C`%6grFj}hvnl9g=bbXhekK?@|=eoloXSPSrozfTd3>CTb{7J9oK`|U~>A4bm zKH$=GCG>p2rRPfM`G8B$mC*A6m!2!3=L0T1SI!LDAEJGr%Rx}Ks!xbyu=kmzpNE_u zGJwx>%vev(-QVb=XtYlLk9Dg&YC8l*8 zipVP6Vj^g;=c-RBON#!f4BPoBPyd9=8*4hFglfn% z?S7uC6_u`BH?cxYSFoFQE&}|q^0xbaf=n-M)RH-Kz0iKc-bSP5dm9hvM*w1IR)2VM z{?z0-BIE~X5&u)+5nTBT`qRh?L(I3!WvbQR62r|bZB+JJs%ri03Ucv2Jo$_K)-W=) z0?7P;6448u9-#aCp6*=N=RdjRwSwM7n5&5WH$;YrbP(5h#q0)X!l?d{mgRa5N6T`t zuO7UImtEb#jOqlkw z(yHtj|`RFUe=O&!d!Lo>~d2kaS^D8Q>u7w-wmNd=wa zuvz|QP+hYl_OiU)K)55+ti+V5mJnnaH;M69F!BAdL3_&Fi1W-7yf>K8Lyg!OJ2XEr zz9MMIRG&S*NY!r{A|M#U@TIanzEIWQFjQLUK4bGn`I{?-*L?>D{cRHeH1XUV zf#Y8LxjGq++qY#em;-5B_WKcgfv*>e3+6|h=Ool;PI30W3epHWokj*5wu^{ud`q0Mf>7=Yfm-p zE(vh&58Ba*;Z#RX`tK|*;64CugNYe=k;DR@c85MM5Rl9& z*&EkDQt=cI>J|(`i#{(!0`%%~^>REZvsor#rdZbqK%W8hPB74+>K|qqJE3VcmMm}z zzov>0qHw+-IBZpgx-mw~m+6ZzVMh+4S80kEag(Nqx&>zg{YY^|gh{CSL8mfVmv*s2 zOQfsB0*gTtSDDZpDod8Nm+b{_634U>nkm!gU|m3)LX;knXKF0wxK~6A1rnfV)sdu)IS(_!!+JX3Sf7P!r{{q*@jl1`XMvQNi+A6>8~E z3ekS(;|HH&);zM*ueE;uZL+>m)lZ^y;X$EFRez;iXF06+6nTZk=v#%OM0CKYcC^^z zrp%wkx{^0I|E%W>mox?K5Bf>}*$w3f?d~j8qV|3@VKu>j4HE%J`V6curn6+cOy|11 z($zY0+8%Yr{v!U)efaFN=J)Fk{ff}rf3gTYE%B@i2C4X0dYtnu=l9|f;Zez2lmxqH zte)MVmfk?udiLisIpUWB0Hgy|ed^cAqQ)gthN<|4FmghZla+W`_&C;OoD~|jBy={^ zFhOL7{#uk6PZE`L`& z_*3ZGn{;--;MDMF&!a?{syBV+3DH%LGM(68K@skQTKotwvYeCFk)eRh?+uUFwWAePIKF& zPo=&cDv>U?>MoaQ86BOM7#Cc)-zC)N@`Q12t3WQy50(Edq^{{?6{VoOrTT8sUxX zzFqRTOGb9CJ6S0X#rIl?3ecvdA}ct-q7Dd0#Tyu8-GVXj)kE;M2O4yTJB7cn=As?=C{LAF3tlhPjh~WEkV~rA9E$|Pr zj25$eW6dXFo3LgM)l_H?7Y(jVrahDN@y?Emw2j zz4;NlCJ?cAPjE&*C#@zp!-s@ZALLx)_(z0|cko%Qs%B>%%Z+KnUXTt~9f~;lFH6m+ zy#bjxm$-aHEl)@6*THvKg};i}pF|SR)KMd1eC9se7_~E~sctKQs#42S5oe^9!r|18 z+_14RF=Zw_Rm652p5Ww(riVj(0PZ<@dYDt9V@E{MJjinV^kj6h2dmxyYH4{yZ z>Wg;J_m)J>7+E|>gr;8O2_Oy9^)yPDRhn;5Ea zvwOd;w}z~Mot)N))94#1t6^sOYc+|)j8Ww?W>$}bJY;AV%1@QNCNFy|5t7>g%V^l>5OL@s~gkuW8V5&4uFa^5ddoPhhs_pU+rhzJ^l%DC^4g0LR~^* z9?xs^m$k!D`|isJ$%!kW%DLq;EcMWABE^XrGu84f@po#6nl>+;GBINB*BU&$ZV+N? zu2qF-4~>cUuwF%{iJF=5y=v)x*vYDT-LanKn#2Msb`9+)n$t^SaMF<^ z)*whdn!a-S=nF#g=W2TT|AfFGm-5$Z5=hO7BHk-|2`oCwBd{fjP%%c`7$LBr(IFJp zB1YcP6t=LB!sbd4tdGPR{bGp6GtgMCcpE7qvjDMQmh?P?+WbU335qV!Ziq*L_Lb8U zp?UU|IIp3z?JFY*tp&mu9ijOce8Vz__d&Q?q67N*y*gUeFGkd64L)twc{bg?w%qti zUW1hh zuMo*2&k5T!i#Ho{-|>|AZZTG z*KvRfuWAeqW}H&Lobq>Lm}xf90ug<#l-p>4lz1K+TZ*6rG=#mlw91T*JfeGI5?uzaW6vtd_qK ztx6(?(f(RXAkrNs3ZQ2MOna@}Eqdm+d+{DnGQZ&WDrfBR(W(!T!XvDzw{Vr|_<&W# zD$6HezMH@n$_!0%0SUZ_;aJr1KZLCyD*T*Nc!q|;s~&~rfNJ=?yb2Z2ChCQlTv;my zdf0v)HPaQb_eK)W)yY_ly*##5IEAs1WtHJ6Y^6TVwf1e5(4IJx z;^CmTN;lH~9Q%vd_QUo%EFFxS&Eh;%;T=!$5%D1N0bLVY(18NF2wX#7TS$I^VddRg z=gf&1NlY47-=tM6S6ADH$Jv@)|JL~t|HdR;17^4IL!p)`BXh-o5d}jcz<+PSi|Q$H*3*q6QVBMC;tuULPt_lgfSE!Qd~4`kYLSv6>tvc~vEO&k4h z=^N^5&+JNhL%oQhW+oyGdgYVkf9xUagT4mTe?G{!N8OOz&Gme))9M9euNxtPS9VjR zmRot^8a&(G)8m-|fWF3&FFhG_M4^GfGIB;@vjlQ|>QyHQTz?m!mU3kYi>9w7J+&Q6} zA1@%6E`Kk#PoE^_Mvyr1%H1IH1)()B8W1Xb$MdfxOwixQhN(R}!wV7g#s?mhSrf-X zKcG{3GDQqqfV38I=9$l{xU{M;w--#r_RY#2&%Cvqi3E`>fhB_N+Fc^p3P(7#J@C&t zmE773im|%IZL>TFt=9xbx*&f7BG`6@ZQQl+x~TC5H;A*1*w#5P&?s#?JNYNuyO|KK zm`E&%PK4%SQLhIlI}m1~>!UNnRj=_=VNV$oTTqO|`WE1{Q%Gy#jMz3-Y`cN0w(&De zZ`gCDYb=ZKnxl>7Q7R_hA4L=Yv9T=rOT@_k1$#L<6_31nEYwn`hZ(KtvzIaBq7y|l zXnXm8Z7A;&na~a?VcO&&FQFgHvuea6!4G$(*PWdr3~B<$mRJAaX~Plr&yn`yDU?mi zFYL8{PKg-XNXEkcv5Z8t&;F^gwEgqCik~S%Jx{1!*l@<&psii!^gXBMz=Pbou5>1o z?&--IzV*L{%RB}^5D0hZXku>^O#S*FKN4 z9*#r1N0=A+(HFDLTuH+|<5mn?JJg+BCHN6+CGoGmRRTKD%LAErKNgPb4TKRwhnwFa z1|#(Ss+G51lKL!GkTlXy-HT$zz;q}nWa`+TLZmp=CtJ@x|OKe+LL;EgdGBwP%5 zvcuYhfr#U+b0vD4E~2T#U@h0ul=TZ46c(pFrC46xDwYZ89GH>+$@7hckCs&vsS z>z<%}ukCr+Hf?*>f1kOVE59uv2;J8tR|KRy`nmo=r;=_io(o@#LB=9FqoxiseabRM0tIN*7S=_0(urSoOrLQVF2 zF0zhv=`x=JK~I*mqU6Pm`+?=_d?i=k8WG&%t0 z>d6exVD#Hxy5z$E1i_g`)PuQlf(xhf-_vmVIp9kF3%LX4${B7!fm`r1DTwO=S-c0b z-G9?925+a}R$U+q`4qhG7Cc46^dwzyhFj3&77UVtZ|Q;y-GXP_f|KPPXHp=sThBWy zXCh^qnluezflti*2eUC(PI24*#BIB-gSH>OB?BMr7EE;uwo0e3Q9zg|WWOm9zsz#X z3v=a6x85kX-lmjQC6?81_j(`;=2omDS zu4a7jfxK#z+u7Q8HOT%b04S$35nC|6@Ji+&=r2o(QUi~0+|CDsKe*L+J7RloQB)ovWuVm+xi{f$CdNvqjP)>^T> zHI^I{>*&UZD^ACs@%w04>;!XWcD|JUCrj@zfj@fpmyD8qK3~f_F}Z0|!mI4{_S+$Q z&B6ncEmD2{!UM?}{GP?VEHo}_T-c-K!ZOx@s`D52XeNuF5A~W(uo&agP>Y9iXF1iy z#jGmwoy2M$WED$*hO zFVdfG_QR{qsh$zdm4Jiy^=9avSK4h?TIp{s8|bquN6XFv;2!eTOhyd>`%&Ib85jOC zVq$>(KtAMY7vw>KInHS21o*STd`V2T&Oc}U1M?+rdpiF${k!p?gnWbS?yOPlcDm+J zo-ds613Qfm(D7EpUb}F=M#s4e_iJ=~gL@Ah`}@$5w{X9pqvi+BctONH*SiGrbwLi1 zY8G3sPp^Ac;NHyMCsltR6UR%J9X_dah7npMljLG>0j?=}=HUzc#WmNl-K*cs#h#Li zgPPs#LuEakn>6Kp(GLvA|EEWJk(`xK4&lb<+CrGOIJfSXoy=8B-5+|K`Fi#c`f_AgcY^ErZ7!t7` zE$(J^!NjCIorWw#sS|4xmHFnvZULoQmgGu+2~D5bCQn^}>T4IKjrDESCs5+jco3H< z`0Yv-{=SWOkfy9cR`3t($s`dbv$%mtrx(vlA8Hdrlrk(H z7>_G*1Dh?UzW70nh5F(;5VP0tO9x{j&V$7X>40}=KLjW?%1s3inMWfbdRb>@evcOtsCra)uV04`BH7W^!35(W8K6MbODbis{IGiPJq-i=ugzR6 zytl&5!f4^f{wi4dHFc_gLcVQ-)K64RL{PBw#m*^ttzK{1+B;IlRUtQeU5wvRQioq1 zpVVuCz+;Y#b!Pf9I7-GeQ^q9gbW0?cs64IWzYx$b|8X8{gEINvSd0BX>QzQSXF>a3 zf~s5X%8H;piR_zQ(mNybMV-hql+Ks+?{_s6Y^a!sF9MA9?Nhr&io0ZQU2uwuxAHP; z;Tqwczsna6SCQaK{!Y7O>`VGi>cDxWjfB$dw@Jq9u{V={6Tgd=P)zl3=%?nCObgS= z$}eLr`E1`3?!ukhYh!KyM=snVQG=D5WmIrWW{s{~$7p=v zsuqAO0KcVGK>xUv+J7FoQ2X|4kk|i_SFaS+kU5{LzIbt#I_;{7$mSnd&6Sg-J5*A} zpkjkpPV!9=1lvcwE-wCO)SF%`asI!6Wm0(}&ebTq9byrK$RJ=$mo%fX98~SZj6)^K zqVCDWxH4CkFnioU@gJmAYWITX2C}@S42n zx4Pgqw_u1{@SpOcMY=!^qF~JX$uJ_MbKE-=+@=dUgrS_1I^2Skw3w_5=D1xoy9Hz9 z<=@r?v)qC|x&@16xM%5tDz{*nTkr}SiqnHBVEb=9C7gzlRe)~(-V$B?>Eb&1OA!qg~j}3@qCwBS_x0crhwlzh6s5-DyG`tsAN(6g)YD*F(66q zTwF#y7-H>F%Qv@P&g4tiMC={#3>=_EA)Hq{vzL~l_7@aX&|b^&BLt#IDK|AD{Y^2& z#Q>`vDpX|IyCb&5>XYfb(*}sy*{!p28tFz1EN52U5ve#?dqA!57bm`(4|`Ql8k<}5 z1Cr2<>RZVzt1c#w{i7=)_I7*9rx@ll({tBB!BakER!vUfwN8GWlW&)AyzdHz@NKhv zZICz;iBjpzUI;h~Ztwm_-i@}e@}ng z!`~-I;P2)m@V8y?M|b}ae@K(`oy0tVT$Hptf@mjP0&$nM6IPA4)|MYTdZgoRvOw@C z(Jhh{E^M*$e?fB#y-q_=v0awpaAuUwlQ{;?A;}dXUq5_bukl?4zGs2%ouE6DMfbv% zEV|e9NB3n6`VzC8D56GpSEgA6YA=5E(qQLG^CgYvKe;k@7PwuhvHU%*(t`k^xzce_ z{mJVZ)tlhh^!Hm})&7%b_u!{}qh2ZopZ)^qXCI#3_Ox(q6ytlRvO5=h|ddtcZL^CtfCg>L+eXj=ru$m$3uq z-g9!q8Sp#AOt{M5!17N|hpRtVvNTD&%k?c){C1$>S^B&_D8h#J5spf5Cc?TXO>)Rp z{pD0!^#-p_KiT5sdp0f5|hT-fwH8W1d#17*snkEdYoGPDO4P^ zD@U#R59#z8Iwe#i*vR7R*!@38v&5uP(tqYMYWL|&6y#K)Y*{DK@gr4GIfnnO^zLTy z{NAvPt?7LvoQQo;iIr7Jj&pXKrfjQBb+gqHKaigP2H_n0{g>+Z=j-=BFXYv`Klj-6 z2k83Kb^XPEU;ppmyqOs+yw^(_eu0}rWwB`sY{InGewg4#;O>FlY4Fw221SlxxL8uY z?8=eUKlSMPa{PsdCv4wI6ZM$(pv*l#E!%JZdf~*Rk-FacBkLW7Pvf4VRj&&k7dNqj z{9CEpuqq`F?v@8jdEl~JJy+>}y9|lhkQw^#tiJcbPx~eFNC6U!3YiqTICeI z@@>|2=hoy)^8bmF{2%MMVznOYYAqJ}`g2cG3EHda=mz?c9=?rUx>%ZyQ!9RApp)!v z>7A>=ljtFo&?8Ra_Yi(;JCd_cT>jD<#5&(ZdEQS~iD#>K8>Hv(?#pF|MeQ(I(7vU|Ub19~mHNEM zXvP3d^$ad;-a8OcffHk{1PneKWg+a2cP4_2@QKJR?b+0PCp~SwRs^TW&O|9@k&%e? zezn54shh+maXn-()&)ar#^H9zP{r+V=b1j;ZA~tK*P3zZ)&Zl{ZrjxD^|tB2;5Itz z{B!z&OC>Op<^Sx-H7)r3iK+QmHnml1MUH?y2-w-#gE?@OT5+cb_gfqP4(=n50r%ei zUHCWk-n;PM;KIL&{TZ^Bu)2>vOzhPN$?EgPOX1PF`}=ock=QY?nQ(*jzr`E5Jp7`0poB^~GyOUz z4xHKaZ%6Qtmg}M>hKY74T3wdxKN{pUZr#9UL!`eHHS{kPxuV&=Wu=nE18Uva-4TDel8|TUk4+lKWoL2d3D~9<4pTuP1hx z^=OF)pq7@3&CC9&7X*D0J*n5$Tvdx~l5oCDKF5bq=hl`(ELOI&BAyfPv6S_RW&AB% zzNs*950nWI8zAN)$Bpp=rTLvk?kAC4H?v84!S6p|{MR41oc zL1fX8tW7noNln{89+#TdESX#Z46J}vzPYB+PO=PTE3s22D~nAM%CL~=KtI& z989tZmKjM;)3MH`t>=FZTG8oXypKCc?V%8+R9 z>D0@rcUbDp(R#?manh*kP{><-%F1`k(d%zRSU`A>=l^j$hyThrE{1yRIjk_N3w$~RI1{w@Ru~ z4fQ`Er<l%(*5G{km%}>6ZkzAAx-n!8tY3kvUOI#c@^z6(WJKL>U729 zIUXcpkokPf4g&cFy_6WBt7*Xkml6Yh$UM(tQ~HaUIbPqNz0uou&i|nAY5oG2BYciP@)3OQWKdoV#t*URx+7wY$PS_Y===b+L5iuzvCMdyI`@Lj;@lD(^q z>hoeB95%LDRqKMrIV6{vjFg&29uFlRQT;5jGK`X4TLriCH zD!2MJB4CnCG&WkbEnKw~YOc+%iyEuhH6Yjif9adbP(42Acxq}KQ>r7;sQMyFGFr!! zaC?@pLA4-ga4N;;N$WA0)*_kKyBlO$QxQi6NS~vG4f<1NYhNUab-RYYJL4XVOU#-l zfPz)^YyHbIL%3>v>T~kt11Bt^SHcV%!}hym>tRZb{2s! zJpGXT4=#KC2X+`2ZsSk!`639o$l?Ft96ZFX=bPT-e@xL^8v%^BAhXsxG z*(TBx8<_jG@Tv#%$lYcE{Li}nIwz#8Fn4i4Rd?gX?#bzvjfYrkpG@uzTG7Je!)t;>bo?ZvW;r@Xh#}$)HC(lg5g`j( zaVI18YE;lWTmjpqv&X61^B-pf1}{pv6s@_jmnp;RwS4ZSWZs9k{Q>WbeS8=x(MQf| zxqDbhrdXtuQ0lt~DYhsdR`H9a{!4mPY@a=oyC6pf$RI=bvn-IvWstaVp-GY-gmBVE z_FV)yOHN{nFB?)(EzcmC{c!KKmc0p;4k#OC=MKv#TH8kO6!RoOFhZmtFIu%r;ta#+ z?3{W!3zK5Wu`n!Y1UD#8MrI1Ocb8XVKTQ5ls})yLJn`g2}=%{lf@k=oV^lgiQujJ62aO2 zNL6dD3s|9jNaGFike6`IM-@8qeE(ATWet)MF~m>}ote6ZRL`}X4)8e#VPK7GIBF=X z#VsJ2oCb7KP|WmJHiDmsW3S~?zqY~huT}il)Xkht2b#CG3mMq(7CLD0lLWMM<4bv( z^{4a_S0+w(y1}3NH@GX?;CP<$(iLh`Mx_z8*0_u0PY)ugXH}($DpE54kdGX&2Xco(Fus7sbSl#I^-&o&L>6dN-)*f5VwI%nd|D%eOOrg;5MgB)Tc_nh^>dM9gk-at5PjxAon zGaL79TexEwvoYE{Pn6fm0_}@J_Wg;mfuk-h=fd&4O(ZrOx`+RY)Pg$J$P)9PLutQN zik91^mIt5n*{_!#R?DlG`OMO8qYF@UXKn;P=1N%wei1X(*ZF62Wf3!f5qaqAe9~Mg zYs_+ZlCSd@%y$7ds8V0&1AT;lw7t=5Zg?IJ$7G1D@dX3#<@WeK?yRak=wfkyRs9d? zl^b~k?>i$eLo$*80`WV=1<}$SVQuT0)H1PCkPlj|zlt9(3Zj+Ci;N&`qu>yJ6cRy1 zaepxNjTh_o-a;2tUq$a`X}dl~p~y16f?@oBKo8%{OHkW?GC3fk z`W()IIUF?FBUSAfBaC4{h+@wkndW~O-YoDp$S&q3-OM6f^$zorYTpn%IipEWEqqSq z$6O1-rJsbW((V*V!C;D0^%M_chK=dW}gDGbDgZT}`MkfI}g<$D3UD|6t z^rpEP=%}2$&H!>$7B5*uGygRu;Y-qH;LN5A5c`11R&JXwR#ZB z@J+ScRZCYnqkm7S&v@Ue63-<61=IPNSUxR6Z~0G{<=wU8gT@=#`f_MXUtL{~lUqmm zL*;F?-v}A&Sj%!jZyMVGC!GlCV(5&*(1CQXMI?9{5w8^@4vFVF3wbkID_3OI{t3=l z!N`}A-0}otV`P@`J}C|2-YV-Owm-fsW6omc<2%pIR+Sl^C^M8Tv)0~-fxG*<#kQkG zbKnB>i5~_CYGgH8_GUx@N`7_fGi|_bZiJC=WkDYYn}V#JAgk$ri>!Vq%<_-M-&tAw ztS)#zcXm1bal+i;kb$_s?FkInNIe8eLnV$w*3t^HKh|SI zH5Et|qn?OgThgQc6e^C&IC z;iw^^HO|PV*tP=6H<+o;oT&Y|P@9E07!Y&X!U*!HP@~`A=nwC3NJ2c!?!sr;W`UXa z3_otZrckCtaL97WW75|mdS8$rkgI{B(0atP4bPY-ZJXY~Xq;c1m!)7b_)iHNt&#GU zdrpMvBIVduDi)xfN2>R88MZS>`hH~fzqxebhnVo6D)c7?WTU3P!iT+`OR^=BZPyfD z+a*DmX{*&#?h3|XJZ`I56B37a`=OA%E+k%d9cYF8LZur_iMxyo+izno9tayfaP131 z==qn)iw0#0kl>vcXX!N(8%#MVw%jGWOtfla(6bW}9hLAjiUt0y~tWFRz?R-V3+%@M# z4S0gz8T}Od*B?F-+UOUW953nnP^Kng265G)aQW_Vj1>Q@Ce8*NT~G*044EK zx=)e#7&f-BC2k?xcAn~oK5spr{s*(ci2gUaOfuCv1eIHdBAmsxBQuyu3E7B`al$Bu z9=1Qhh3MDMKe+6bKOiJW_IyQ+-Mm1yx=u9@2`tS+Q8rw?e{6{U6Z6VE2p|RFWgH0A znmGX=m%Rgg&)~7n=+De!!u{Sa{C<@EHU|4mz#(BHH!}Tt$ljn$ILR(CoeE*wKT*RV zMxU?ZexAm<(dENA1PJ^&3OK%Pjrh;m2jVW7BLk ztBv0lPD>-+a|zKME*_w7r6a8Wi{@|^_($*jmaj~%P zo)oRxj39Y{akX1j2cyQuu(4mFhW-hr-6|ZDeO1tC;q+Tx$eH2t(z(eAummoUxKOQX z=!r6bq2u$a?=YRn0KG;VscJK};w)*6h`VH}SMzCfe#)^V4qo7Y1W&H^ilC7Z&x&*V z@Ur{Wk}ARDh(aW5PiL2))Da0zFaGiLqK|D39_Q-gdPB>a{DJT}2cKdZGBIL0mKO56n57lY7b0CHQ zDrjsCr?wMPVbg5kalL@o!bhMl@+VlHT5t`(pWsYB&M%F?0PT)IL7%V!3uj$L%{)+n zCYAdAap7rH%v$o;-A_PxW^DyLfVEPMM}j;N_Q1lls@8{Xe1r$}1FTGe5^8L%n3q>O zBg4cQHc%BW4dZkd&YRJ~j@t44Sc3C>p7)oIQ_qjKVTEm?5ZEFZum*R@v#@uqo-bpu z#k-kpsoMe1EJ6);q=35X@_!Gfe&{%&4(_uoX-i~43c4fZZ`VAkImxp_7h#%*`VqO7 z_cAd=qig*cTao!!YI5foZw^Jv55~3gz*{UB>0f|;BnwD2 zmjiBfwXK}v8(@4{&=TB|mdN#>-Ne~%S3CZ}sn2q+cE;LaKn=(@ggL_{_0a(EflD0T z_bzYQX&I;;34md|SP`QoVtj#7fU+4Lr#A*7c^|;peMP2Pr|d+8Uwz% zeT(3SklC8yw%oRGTQ0Zxt=vki^LBW1P2s8Rrrpm2*zFF2ptpjUW3iyT$KyfKTbx~9 zFb*!QH}>aKywNdOyh72w5c9s5`vEZsy9K-1qV3_A-HR(=Kx!6Eq`30EET$P#%| zJN*$k{Y?_*jP8j2HYVwQuENgP@mDz`&kGx$Rx*o7NIjolEHo7v+!9pJN9A+}?^=16 zLTX7HHgV@7Cm5$!F>m7ZF9SZvi^Qr*cwcLnXI^>S{+ezv#{6bN*Kq&PHi9kw?EXz#NQ!`MnZUQ!hT zR+ZZYmJMsFO&FPVP$35!Vo!gB?w1vb!4YSyLl>gYtbOl@8pT2_(m4_+)B)I?`2!_F zq82TNF{3^W~|wPI{#@1{UV79CgpA%1es&V?UwOU$nEg^^?i%n58*z) zQB$vuJX5btD7x@l2H$P?Z)tcvja(8YE*(aVm=N%5Dqal%!>0lg)Cm#ka`#5n??$Br zy`m7u)T3I^+G^2e4ZWtToyl?LcE<+MCzIoOn6PZXCGU%kqB756Oj5q&Q76@%k=F?T z$ONfA$)}#b4V!*+aoBiEPR%_TivB0eJcyVEqoM5`0eQr&ToPB+>15%-pUn=d+uwt# z*YjFf_(r(ZwFE?5ik8CahW2aMX3J%0Bw}0kk4QBXTfwW9QbRdte;o^7#zw8p>Yrzn z1Uw|gE<5N*75#snl+E3SUV;!=M)vstpTyEp7_SyyhbbWEDor(*{U${JsFsJvXf8x=c#yBX2vc4L0)z+TxeVtDQiDibpCQBQlXfJn7<8MX7r}$Y z!;Es*3{>^IFfTPJs>Syqkt9Idnz=wizyuNO>72unSto`mq1S^V#m9;v z`%AG{rTW8iB#6W!?i3!>C%7+`P_m9mV(0RvLimxI6EVEq2N}xy{N1DSkspKDvge7a zg69O(s^H}$KYX_)-sb)~9q#Y4F8B90V)c-{Jhxf0m*TS9g3MQ_5dHopD#tyMRLteF z3kb39e~M?{J<3pu9L-yDj#4@eWj%MAt6 z#YBn|v8OI0x_s~4Tx>l%G+NdFkz}-B;>Yt4lb7;jSTONdIY=hq$h?|ECDKXI?s|OR zVKQ_1sL4sBDR=Q4=IcoWWNU;R8lFh}iGCA5e^Q#p9^=}M`t2!c*<%xtj$%?S|GdNd zp64*n=J-<-@gG-z;s=StP!jW`rzzcuC{EjgQG_CFzReJHhOaH8d}RxNO37_OBCa-C z#(A6a9e+izbSo#lk^H|8#3>{k(i$wsez_(oi+JN0otT%rbgu&=716@kV!GjOVQQ6O3|6Xp4%!NEJ|2L?WcY znSGpu(h%RxKC0WJ|| zI$vojO>-K-7->+&DP(@FNg|wS!y3V(u{S|mx^BTB-@+FK|L(q`l>s61P=Mq45{Wt< zvv%+p`wQ9kiuUgg7%5vnPVLW2Pu?qA;47^TJ(M<6ALWu52}vG~B>uXRs=@N^pqjv5 z`|gl^D42LrLn8JmU!PgtVWxKG(v?2=s9w(MWfw|uRL+!|bh^ANAp)3vnC#xFmNO9R z$1;>e>{*`5faDw;R|;G%38boi**9QH_h^riY?lU;c}`dBU@QlhGA>BDrx z*EgON3rZeR{frBM{guw}dOn~Dih~BET=$-di!X61~kcrx|<%QMkaYY;?wcz` zvB+a#Bl@kErzj557#xTcbPD@x43=uk+96s5N@H&9NoiTS(Nz^F4_9*>Q)e7x4_mL! zIM`ojY&@3Ecn_l1Is*kVp^agoEzlHvuQ23ywV;gJRefCeI*%8KkNFQ6qU3NQG}@HU z1N$x%q9PsSp5xhM^{b~Ok-$4ERt|T&!ID!MwD`y#6Pq5-GjpYAU$ z0^sW5iK}Hh=c*y+0WMBw+%F5o@Jjl4-Q8W)uEgbZ3{Jf60!&8(xY{&IjFH~)wy6s5cjk3S;V=+`3{y(bBI9$qcUvLUDyuUlLP5CeN}IL z%}MbMSWFSCa!ujHU)5B>E)u*H_G(N5uJPN(W28;d;tmYHISa0peAdsrpk zr{t)gB%Nc03~pO8C=rU3wb(H+!@w$t*o^d(7woBis3tjE#g(B#QElV=a%gIuKs7oFCCY`5b529^5dRO&!^ISRh@)Rl{(D?oRc&8j*?!W$J4rD(mAC86D!{bvF}8nUTy1G#=|$pBu)6?bY#JsxRn+-i zD{0cjKKwwiw1xWvMv~(5xt!L;|J_ozMRtZh%0XI;CFWZEfy9GQgkF7(e^3A!y4L=D z2I^V++4Z16F(KTNEvh7~N;nRA+Pj#J)3#%Oc5*|0Tfs=rwr6KS2{u3b3Q92fr@cXu z_p<3*RSDY#rjn~upx-MF0N-!$4FCE;3=PRdp252GX_E$uU423m8&lN9Eo$*6dq8Mq zwJQWU01j2RRzm}?YMGFbUjAN~Hs`XF1$cXJ&HROS4R#F&{O!t2Lb$~4t>*L6;-RWn zWAm9j{?p9am-k$umi_>Bfoauq1!YUG<)$~EFiWpfMsiNLrd5vi&1$}z&|^Zn&jLTT zRr_TFb^Iqh>{Do2+H{?nGl-ISQc&-w_IekMXTCxwE;n!*3a&Mw35Y#?`d``l){$;T4Nbqou_5}2NTClj@s6>>R+T*-56hWCi7>mbbf>i{I!8$ zsgjf`Y!b5mS7rf?4}tQAd<_*79>8mT_6bZasOV{a@m+J}1FaO)9=-kwokFX%TcGJ$ zKTg%Oudw7HF;3UxE3<0a`$09dkR%`Zs;e9fT1(2a1R!N^N?^D&co(|f#{cW($#g$U z?Mb4Ly^r?@sgrEt`nvq;;b#WvgM0ZNXVW*);{cP)M!0S25h@v1U&xJG`y zFjh$KJ0IrYfaPT_=hQ2gUYkN&gl0w^D}2@LhGjfsEpr#=ZZ`DRKeFt4%CtO^Z^6L9 za7>ZinEvc5*H1qYo^uN_ztV({I9rF!j70X%%OD&hCuWqcBLu^#_abZh0x|o3496@( z264XLGBIRzuH^-BxlDB&A9U`Y*xJ*BwC;ATTa;VYmW_{Q*R?BI&gaULEFx8E<@g`5 zg;jlk5)Nve2$tH#Fp@~X`QkjDF#seWRl^C>f_%;={1_Uh!*Ba^7y~+zeJ+U3=^XY? zIA;1r5eo^^|MmGsf^?apcl4Nd#3T2T&H0%O|Vg5xx=9BpaS~iC919 z-d}4+j*7sR+&vu(r&}!BX%5BMfm9 zB6323)e%%DZ$vq*;{jj6o<>exU}9HDH8n2b&$_?C%V?h0Of{X;L#MqDuk(HAtu$!i zQLFUuCD5fvKjXe)C+$*8qye8KmQNWIh(C$LN&O$+EnPPsUi~6G8$m*4@m~ zW|L1>X|Q(yYao#(EH_N#Qqm;FTk3^K){?`RF(b7!VqaU-DfEY(Ac99G`~dKg)VEs6 zU#$IEo+{jq1iR{20x&jbmHbT=ey*mmOY41rDU0{JJbAQJO_v>643%6&UfHPo=dMGZ z^8ZdX^)*%UfqZUR1?C_nyrb}_4NocdW?1SMmD)V{V` zEnra7-{<}S|BJ0axNxf6L+P~$)FCqH*4?UYs~S4YbSlYnZ>pUjK9502RC+C@*I=Q{ zgjAntGT`-Iw_kF?#W04B{tV>i?(`$cIO>35@k`6T;q+Zpbn%-EVrhTBMeW<3d(QxiiC!x}|llZ}^ z-At$~Rr43V*2dx$i=%|)bxyQeB)lx6Z4VQTqRfGQFw2l%qly7G4(G06Q-V8YGd%Y4xbcdj-#a4{*!>(dpw}CCjqk#7X>e9+67mVp}Qqq_|k=xWP6-4&$U8X+Av_D(qz_t zl{k`|lPE#X?p(AQXF0Nz&jD;JC7KW-s?IrCK^5uFy6gG0$QrOpG{5W4$%{)HopA&E z?AEHMunEPzU+k@La#s((GtjjDV2c0ujyQqjYb22iFSw%v>h6D(9);uuhq18cCw_e1gb} zB1SlmKVq;$X+9suNL*_L?VF27$?l{vScoNwaU|ug6I(I8KPlG60u)eai+kqzc~!W( zp^_;2%HB<#F$ukdC=Pv*Opr%>n<~U{zG8VMqHluFK>Ezh#4;-N!l>AcnF~2wwLx9n zs20uVL{eeo%w1f#cAi&JIPhiw0RY7B=obocdC`jz-B*~k_lXbjwN8l})qdF<-2Mve zbL09)I*ae)I)c7ZuQY^0qgmq3{FQT|J%dyqoZCta(MnX#Ap$ma)yVVU zF^-~M5*>yqH8tH+rfEDnOot5Re7FA5zwMODeKroWk^7^feXsB+8(^uLGO9Pi;s)m= z7}r0pf~+qP-;W^>Vj=XHOmBGB4bsV3p+^MiZl>qnIL`Il&?p-SO<&1<)-iR1pldnF z{^)34S-Tt0TRMtkle73zD;A7){5n?WT>n?hyTNUlYx$OCHgZA(JNm0Qt{ifShyV zyHGDESt(R@s)NDBTIw>(ISV>FegceaagtS4S?d!2AeAmEZOgRKt>|x0Fw}ocxA%;7{S73BTc+rBB8^$V!dMU}lf*tWL(`(URxtWX^+Ov|iBL$uehy zw&svt6w8z|XEze6={%N>$^;rSL!o3-({?WOn|Esdf=PvizlkzOPrtt%w zxskujY2YYY)qG6jp#3LKEw&yfxTdH4thiEOFeT)zf33}LU|MLh>`CB!=)9cCc z;X5P0QFip=Kmq>UErfAug3o@BoH7ti-2Oi5Nm7`p#okiTd~c^ zENpbqAYg-nqEQ5G6?LPul90H&z;u{^MZC0Hd0(YkFR#6*Mbvf^APL|lfFg>uQBijY zwt$KuApF1Qd1iA#ZTst=580V{?w9kN=RD_}=bWrn^3$>3N_+C8JuMylruPVwtNvwJ zE$HMoK_pCrC)LSo;z$l{B|IlxOWFHIA>_+|hgD_5Z}NWmo&qru`Fa0``DM;Pmi=qt za(FWp+9>t~8Cqtso3pj-*Zfoa^==jk0O9p#b4RaR@F6>=?0vqt0t3J}h#Q&i&F0&& z_p$4FIZ8X`6K@e)HS;Yn>Xqz}>}Rc(;(e&C$HakMFN+EcSM41K45Iz*oeR*g`$Wp? z)p<5`-OQOYVg8+5)EsDn4d5+efEm?OOP8pl)%T)2&F481W_dT$V`(538PhkfpjGy@ zBfTdn&zUkjo`UfW<7rhEh?9-G2&XzYCC%*q$kf~Y-QRS7d?;Q2Kn9q6trT%5tb|q- zxz3ci-X3&?I)-Bh(keX`2Ofe%`II_rpNDM9@?LA{oRbqcyLWCGmYrgq zX>|aFiRPc|Oej2pAJujLuqPC1xv-IFrRaPRmbV(J!9aEHqr9_gLfm$O1)>jD=0!UC>3*Z$p-+9<~w+Q zhS;_2G{Cou^nfqWxKubv?2mM@FurpFRF2*z1v8&OM~{Rt(lQJ=AV`fJ+u#SLr|jy* z-t-pK9U|2GZ0HcT|9T$jCx0eJGQ*I1M9kL_xxXM{84=i@?yx_;<$pw?fk{G0h_AIj zexBCbMxjsHb91AZ8L!L@dzVtV@UP&XV1nGT*OdUuswohN_RHuG?rHgdvr0aXt;r2*o8+=hnQo#W3-Cni z;WijM2Sp{!NM1@zhqdy$4FTEjA%PM{5e`=xYvoT)6^(^G=|_kZ;;4Wa?mrh`tz0^0 z-w<=>^tPW6Vk!Pno2|G$h#LxO8dUU|;w(AvZu-N~y{O2Mu&6sW*NzMI2?K1pUo4~= zwAxt&a-2;o3+CKB$a&R)@YC{}#<9YoBT=b5pwFZPF3)i?zbWTA(%EAXS!}&Em#~8L z%G04$Y!Nmme@@YK%Xs?B4kPHji)8;9J6u`aliuxv#6~@1KE>2Dt`eEGT|UQtK{lhv zU*#h85P7qeTq?3k1&FlA9y?EeO#~qlosd+%ys0t1m@i2hncXCES243^zwnqOnVk{= z3&^lBzJl*XNU$2?B9eyU{}F7yQ^Ae}MVqk0r^s-{o3zKyRg&qM`rMda){G55r8T7m zgF-wq!fSanDq)$(U*Toi@oEZgRH}f|%=86lQaEGh*zqRG!CV%W48zL%6-E$PL>B-s zFYdgafEBZ9(y2MOy)Jgn&wNxvxaDdPhsyWXD_N9EZ~ld)d${!>^Djckw%(imQ(D7+ zC-jfT;`{X9&wfdf?t-c${Buz9myx%_0U6_IN z+?vAz=oPcIHTb_{xJ+4tpPhd3Qi1Dr%39+B$t>h$S{sBflS#wmSP#1wcFK&1?WKQ8 za<%U9IHrdT^YGD#o$h*>gR#PF^uE~kM(*&_=`BLnu~yJ=>oRcdD}B_kSfK_K-Mkw~ zo&M#=ED>@)=o>m)uIei(PjSgeG`O{jW8Hpjq7hZ5CSyqzEw5=8_%RZX^X~rQcIc$| z{@mNI+XBK6kG}JNO3L|VvzvuCV1?>qm&|UKnU~k`H#A=(&mY~;e1<&F(Kchb^b#9B z*3BypZHN_&^Bu~eIu$!M%=wL{5m?V}AE7r_Nl&}jORL%GP$^VqbH{eCfL{Q**}Iv< z8h=`LlQ)a6Ns*deDVn1&p%^+VhDV9nU4EklGx(icFo)j<3aUxO%OlzvkugBq`XJ;P zrL4?mTf+HqQ`Fvg{}=n?ZKKd$%MrRv8-aOhAsaXR(X(G%AUnAD54!>$s>lPyJk-(Y z`2Lx1HIuh$?-aj;X-mWtdXw|Be_|4X;YvTk^9>f}5mD@-@^^?`uZGyHs2FxzVt3ku;NcxXV*N=Z~7E zw(_^#D0`RS&j|XAPgvShH|wC?1ksJD81*`=L-rU``44Nij1tP|RTf+>gLBRbPtj3*1y)EsXrC3v%W6`a=0VA18f`%b=I#2bGy!k(S1)rUJnkLxBP`4H%*FbPEMw4CW6&Y8?&3Rj5#zdxo=c+j z$RI8VAokcbYGeZ4xOXmPsI52~`}}bPD5WE(;%{=23zupp8o9TNS`U z;1xo;iaWn$A1I&=p7`54*-}QlZ7jqYSeB1mNOC-X(Bf5}2%ilx4zDy3VE_+gv_{o_ zqrROpZg7&EAm2Bp?3Xn=@LVcv(b!H7jtCLzcjw5rG5I57%5LM*&x{dV+aCaZwBSAl z));Z#gVKP7Zv*X=c41Jkp`roAFkvyp^?!r};3b8Pg9;l56*dlLuyHVhje{B+Q)wM) z%aeB-Q;=p|+CXNFoiU4=qSDLPETyWPbd8UUNATiRAsO$2Lr0vQBkfusn}cfq>5az1 z+f^ecs%u@J8WZ;!r`H(^AC?V`6Et%(F{P6>7z_VMsKV4o|UcuCg*y0MR3{DF2As|7(mCec@ z`UYd**gWrMaFkDX86(~?7Q71$<+TWL^<%EAQ1lKt#z%#7RM;Q~mh_Yo#;mX*J%Ojt zC-hWrwpxK_BCt&EZ{!d z>(TVO9+bdnY!@pQ>}<0CQZ565M@CWBzmgH34wGer`0@PE`0ji{J+XykTKwIb%CzT*`#}*%g)aAlmO_GX zKWGIHD3#>zdE#NUSQ0re&5{Q?kht=>bXhKv$F-dPxaO1VxSWt__!ml!B$}&1@<3*UN`VUajj%pMhV+|MF0XGG$>&cNO+SeYR2+?_^do^(NS&sP z#FTG~-~iKS;aTcd5p17Gc~6XD^mO7+Qb`nd+o3w+BCMC~5mxc*$7kccXLzs1WQ(+c ze@5*{mYP1Dou_SI4V8ckW6aUZNHuC7g-<0?WJp|@C8Kal)ZQ$&I=awIU0xNv%Qz!{ z-z#=Qn7`e6{=TrO$lqrXHl)b*hCTTF|-FYxL+y`4|9+>il zcNjOz-m~R>|6s%nu9IfG$hVG2YeUnt{?w~8LCP{lG#K&Q5r0vAGFx!Zh@3}gg|V;)YVD31Ejv8fJDFSppH5sR z(+*FQqv=1H+{XA)S_`t1&FH+d>0o30^>GC8uQ5DXKT0Luxg(~pYti9U{4h6NZl_Sk zkt1czemQ9xi3bUZ?>}5&AjE;8i>Mw+&_TP--tB8u+Rh^+*QYay!tQ}-<0>OnG26|) z4M~Iqx`V_h5*h*S`P`GLN1d;3=TPir!eraj9%v@X0sqp9T1E(Y{vNgunROrZ#GHUx zcR-X@o_PH6(>ThW%uOw)$%xhtN5EOL|4M$1+RzDdtVO$QkTbT>4kOzbZikEQCIS4!_c`o2Q;HGqN6eSz z)6sbSWq5srdN|sil8wbJ?itK+2Q5cwH_M)q?<}k41^p$fru}(N{jo8~OlsO!%j+m- znM@4w(?u=8tgP9a#pq~VdoBxW^{qshp*Kw9qBr2{2dLCCteuoSk54@j&%nN) zBw<7NET!-I1IERkG)Aku)>K;Ra^IA~*bkg#!g0tn;5=GotE)(wj|iNXH=u*)A0w5e z|5J;atx!utSHzCg{%# zgBfCH>`0`e+_Fg-ch_mbb1p}s*$hwuP3o(7I+c;t$I;bQmHd!lH28)7gx)kRdb6lG zemDn9h76SDF77iErZ`O1$8UodE~B0}6Ae(c4A)T^{-)1&#@uN<-4-oxbSfvKUM<2) z1b;yb-&IRKru>@y>Q-9qIjHD|UGtE|-EH_tEEuWteCI5(?~ax?9GUkC^0LxY=0v;H z>Y4}1eCXe2o_|Y6#yXvmYoZgs{0}mQIx;RIqa`)!38V5h@}F-!oqea0%t=2*xtVU( zP9v>Cl3otOHgl=J6Qw^J4Hr)B4ubZ7$gLK3iO#*CF+7bvqGmoB7Jp@F=av9$CO#D{ z+!v~e*Nd)2)@f3tAn~?5V+k$~{XIkm$XiG1PWqZ{K*m-}Pi3-_cT$c({PnVqLp04`8V-9<}u^*DH|Egkf`gVC>6bT5!4hSi|V#5C1*<; z)c$@$!x*(AVUKsKn-}!TiIII#TCjqK>lVnHsu3x=0{e&Hf?)`4KW(~~#pe?>u@ki} z2ZBwkz3lI6BtBv%4g<@Hzwts)o{@M1aCVdyak2562GjUWU9s`pKGQy+gx+n$LQLz* zR)grXR!fC6R{F|9?s~lueqK1R84V#oL5ckL__`#CO7diMOx80Ua1?w&MxS~m>^~sa zL2?nmT75QXd4F#O7TD*n3My?CYteYr#FVy*zULsSJLgd@H^;wktLqj*3@Q(I=h14e zTPX4}=#!U0O z#Z))@uV1@$8Oa62dVglX{BpW%Dd9rEY)KSQlAS^I)qFvA4ZO95Eg9tQyM@{-lCJ|8 z@fTJARVckT^5IO1$aRmq1SB)K^=ZO=JZ>cZmybqucLwO;S{^^hZF|A-hE9aSC=gZ`<%_*<7#*kl;p!_?KuLeHEl{(pPVEN z&zk)L5NwsQ)tk>tQe(*8=o(>p2yEb&*#QElX?_u&I~PC$!C9Mn>YeBi8v! zwlWCX{fV-Ee67WDY`ZB1;e# zk{hOl?T_tn*s5xV3JTFGO4qezhng#oi@%T}s7FOF4BZ`9m9Jq}^6`C5Rj|79tgM(% zBa#6d>iR@=V6PSWmLmX)D5l=I|D zwNd*nS+%T5zBLJBEV+(kI#ke&CTNT$6FWi$oNE+KV=OthBUCMy;e6_Ilicu<{px-a z1Doz=41t{acHXF969&uFoE}`E(bopba@x5@lAds;ToM?bvehZe+sb0s>xjb?w9Ad; zjkq}rd8h-`jZ6Zt3M=!b)A+-xN&71zmlaDb7{r>BVq>_eWu|fKrhI;0=jSub7kwrI z+U+Esvx%RpSspi)B8$8UZrx3n@p8+1M^O+4=?-yu{WEOC-MU$FV#sMuN^)(MTm;|J zLb^k11X5PgIZ9}rXFE&aGeUF2vV3it?kdmkp}B8*Yl^t{z($vn-pwF zqLWpk8+U2~mde((ASG2afK2`vaELdGALPuV)~j6IPUKlNJ7sb-K8tK(cM$CkwzO)m z5TrVDsWj4A_9S!TH+2(rG&9Im%{A>BCWI?cR2P~+4^D!@B#P$FNllS9`{9?WW_NT& z;_IZ0O#E<(hke^b#CpjH1E{X3&O48y^?b%Fiv#mdsQUqVTvVnt&Oh zK{)}Sf2vN#fxT|@=)Q=G)LFp$C+Y}_J~8cffrR9E(V4Y(vZCLZy;-zzL0kGRQV+}h zW$8Fprak4Xias^aEa}vrOZGdhWw;Dyk27 ze?$Kv(4;2#aNZHa;}2ot4LD$anqkl=U1q&=sA}33rIc9Tnf7xqXZK+<-8@#B+P4zV zlh6rI)}X?@(5pE#aqH9v6~{>^80-Qt9oz0YPzR^oX>wgZDcStGYcFGdI~Te>p465| z0w1+Zd46bE?LQ9-EIm#mh7r z66=h_WUBrb$TD-gayY2iAJrxKyss7*^^V~!!rc>R*(y2>Q)~`q-O{Pw!Qjz{-%Qt& z!=Ni+Jm`ZWXGcNH;1U=S-jj@qAf`5gw2D!3njdtKAn#&6;%!G852d&Yl_T}q>agaW z0=*3UX3sy)9kj1QZ0c)CeOm#qe@fNWdgoKpD%k=?Z5FTBS#k~2-fTXv-qqequBzrxb0nLRj|+r@5)cw*O_kvJ{W6^)b--R>gbNm*Qaf94&@KSIhKZ zwjaAng>j__ayT|re4Z}4UryAaXN6IV)|!6W{$q2`A>Bk zu`!J#WRS+Ap;wK>cd1kEX^mR1Zyzup#hPKv3wwzS8upk(Pi{YY!SED?Pgv9*sy8mG zm(etm!=bdf!7R?!XN2uE2Vz0VxOOXZCKU51btZsLpWbTmUR(mNI$8j1O+zri8_I7J zB8YMC7KiO49d{1Bgo~TcSD`334SfczVyA%EMT@D2)P>?sc&~zIj%qNz1E@o`{hy*d z7R@3}v^-p9#v1|_uC@aWR;Xf#kr2|&nNTn)yB0Q4v&EqirF>YA)FJXs?`HdqvAAevmX1FGD6BypZ zA@U2?gv=Hi3mpa6zm|jkHY_pp1mzJPJBULBa^p1s(d&3d-*+D0VA_v{T4| zjzYft&kETN0`yxGJN*dG3M|6js=W1nS-)VqQ{FPN2wkW*6YsZRLjwl;=wRM)vbb6 zy&MMJQLH*2A3sNF8B(B-)16;Ir#{*@RrPzRiXy+hI%CPNkr6v#D~z9P`z==R4Codf zWe%Kw#M7vV^1uXwtnOkbJdFoNihKm6q&Twl)vW}g3c1UgD|)f%lYS5R`v9QixB55r z+PFmWPb_uWGN0htc^veXK=U$FxGTVPi9LN<*lup5M!MbUN*aZAK9ebII1pDTal)Pg zrzzt=Cu7czHXv9Mw9Z?;Zq0capPcB0u>g)RXEzD; z8QO2S7tlC9#mP!&|GYlW%WNk$R}_V3H;t@NiJzBAH$(d?2Zv{;TAl#M;~1#Tc%ZJP zPUsKhE)$yc`7P9BJ0f;6F0RvuLGM-6!&%UvrcDYprPTWC`HiUQ7;Y(KP}58R6GQ-N zGC@t7S-%~qNecLvsOeR%-*lj+6LmqLCKJ@;7o<_szbz=)wV>C5RayjkGC@y%K^i^% z+k(b)Ey$sue}SU%elf0R-kqSRI&Zh=*N-jqiA13gA4D}8HPh;=kbx`mT2Wyrj>?ME zC$tQqnYaoqXy?{xV(KlM{Y4IIf98g_PHQ*$1a;D-NF{#o?&HnBixai$*f?a#Dq;wp zdjZlDG3_2|FXU+hym$D~5)LKYFp@*5qjhP`PbUjc z#=DV)Q?$Vgl35d*>JX{<#pa8OQ&MwK^EDnK3*=i0d<3h>pd}oOH*LZ(kf)z#YGiZ%knY-1ZQ0~p;jb)^U zTA5B!-0y4YgD}P(qDIXad!6C&8Dm{o-!LATPEx>8K80FfBl`q4Z?b`+qQBnnv|=NB zBGcu*Dj48yAf;}OB~|BsD*mCEEy+|kMIJ&GD>O;CvmA}bu|;G z0L}|@hr$PE5k1r<0e=oudg1{~WvX@vi-Zde1!VOPrFRR+j@ox}JxV&aapdt~z@KuN z?R|N@&{Ekgf_x?%6{0J4dnZ5&`oy=lf_-Kc%{c5Grbyz9N zc~fWEqdLMy0QWlVRNllQ*?J}CP={#$tn3}HE7&!S3S_tFUcokoU4TAzh6qnOAzl@s zMU;^)Sj~kI)oO~9EWQlL z>!)iF{FL&R&^U7y4yxf24mN)*Jc|B(%it?c8PDwzp+BeS3mtfgLle9@qxyrZ^7u`; zn5@{0d0)$^5i+a9-WYKPqVUt^+_i#lv8wo5`h?8_QgQ^T9SGtHiycp8GPVix0}(en z38KXjR?F`6W_b7Nu!jzw$Zl(IV_Z!(Smi$BWj;`fl672kx!jKfws!cQGvsc67fSc* zUo-SC{!6nl_9uz9ox$N}ITj9~!ZDbx7@|W8UNwz+D!T z!UL__(zpDX3lvMg5#9!3)aE~cwK}XnjZ>N2%g_VEV9znwBEd$Va=_AD z@rnW++(zIJ_eOsT_ab|`g<|)PHBQU^BT(`zbu*!Ziew7+G7n<;haItpOyg*O0wp!m z)g}6THH||gUPtD3jg)!JTj4gfVohKD zI4mEoleznGgSn-JIJx~{EO|l74b{)Pl#_yJwsUb~BCkyZ^E%GFq3If)Kje7^&+lW} zx0=6STcNjO4E70^pb{U;_kCrB_QVDUw(@I)1KTB{_fmZ!JmQ{xW~~Bve-&VRI>zy= zR4hBHwE*~+Vz?fzR945bz|cM(#l_PoSHh?1z)P{?;dHD=2=Uq->-nV%5@7C4qT0ub=Dm*wl7hT3gL5qBfdgbDRw2I-T zUqYF$kGPpwPHT~JxY5G{HSL?gyYnxpX@7`k)wgSQ3c(w1A9ee&>;Q$A2oE$Hf2>W1 zTYS8^ik(8*5%I0_E31eP3D>Y@?FuT?H>%bwt!ZyRjcG|d3A0qnFZ`~2-Nsi<`)TU^ zPEyyj59Ph$@hF}mTKJYWs%8U|g%j8;5|!*pN^w(eC!MpmXI5)c@jq(X`wl~UZB|Wt zKb{yfpjq8=M>0i9Dd$j%bJtR8u!Df<>U?YJ6mr-BQlql!qGzbpz{ZQaTro!ItG<=LHe; zx%Y}{iztmPIGVB18gRl4-kd93@0u6HyroFojfd)0(-W%rV#c5Hqm(UGNcn2CE~fm| zuQ7$vg+6qF23EpSK2dF+B2zCm3*3{>+nzAk=}24geb>EGlCn3+#~Wi{fy zP|avZ%geLVZw&}Q@qXN9Z_@@qv`&vSzNoDv@Q%AkZV|(JZB*QK35U-8H1dS3?eBfU zYK`sor&hMD)@&a(el6!xbn*t z*c`#C2#t*y?kHZ=0{8l>mRMg8hq3J_DO0y9`hzxUb0@s|<$^zNf5uj(KxpD$NOVN~ zUEnU}=zTzyx9l6sGZxNZf3o8*>TX{zWqu7l^BbV>%?L6$lL}SAKlp0;Bk=4s#==8v z3YbtVT>XDOu6+jH6dm|dsjGa$co>OBvN_9AnK5}yrLN}lYsLi+=J%02i4-YC0^hX! z*pbw7@7Lt(GEPR~N~vekaMhpdNqj{AkLXWdW8vw#KbafxUU~Er3!`e}5Te1W|B%DhI`$%(85-=P6D|4EhAIWFD$Cys)&lBBA4;WyW- z_UBSnm9XXGyT!~F#ZOjQis85WbdC^WmR<9V%ms*K2kc94M3-{iE)-aX&RMF7lpY;@ z`dIclb@87n_P|&3`}&%MkDW*0I|K^fz<26E$Ob|hsa37fm-tvE=wErfXG0a7Y2Hvb z1_JoP7~2U31ijy}=pyBlvPa>3?(O*MZO3M1^)Vi*vvZBwb7*n=jyx1tz9(<13oa%< zYGvx9_(v*XJ(?$K*h;A^ef;m_IMT5`y!f%bIcEOX|I~S=&~yS^#J1eXmx}+v;TR^; zJY(SjdWPaiFy1y4)g(Sd6uk%=5Lrcg6+8A+UMG|zly5GXT~||GU9GkM)A{IO*0uGv zic;fTD~O&fR*N4YE&QQF(!<&qAMT~fbe|w#kwbqypW_=sGv~1eYk;uPFT|hM7KDHS zzZn=jn;?!cW#gB|H0j2uTf@6e?ERv`KYxv!P~2NHc~HqvC_mG95I-hburr5R>9|FM z0x}Syt>jF?hekb?z0)I(5#w-^f*4FZhVu{3&#}n~4ZKh`etUQ9dOr|6YK1l%i~pBk z_M3|5B}3~g0#`072udDrZyL2Z{vIQhsw{-AKGsxDYlAJJxDk2 zQ#W=-kJdXCof6txHJ+kl{kdS1Ydj|nrOEC%j_s;lnembkk_|#j-)``FfJayHci6jx z9|F#h0C3A;&*aBk^(&?cR@!r1@Z%u$F^_cLv&0Zfro2deSE2X?d|TA+-jkm+JO*^< z=B#bu=am+~WbV~y0$1elR`Da?YUJ%V7y||fZz*C=3`QEwk zHxX9A){;Vg%rVlDHRh^2B#}F~K(}b6v}o>`Vl(FFI-;MB_^Cu(sUqg-h`r-gA0C#7 zaYVolq$bBKq`d*Em6L3iZ4S@0z;BQ-z|8GpFTtKzyrv6CcDE0c4;#RlI2=xZER&$_SNTlAV6UlXE4Ub)g8SRsdg)m#QLY}dt4@9cE8cEnX{L2p*ZIS2R$m$Wusa(ak=MdSY1F!fKVu~K zkb`NO{|;@VDXa$cN(A;E3oA&vYaEbtaAZ%_4@TRWRUCT5sJ%{Rx^y@YP%BE_QKqJ~ zs$;zX|BUyqDF{UgMtVQPB|I1|>@0bkP}I{qT%RUe?_$!J z;lNs}XeTPsdJJV2!uFoz=J{IzKpDkVY^}m9%I{{gCaXBHuVSn-$Fe|B0ElIUipNyF z%uLR|)`wjB53zn(gYF(4 zy%7UFKq`sXLQHTnsPa8k-Npz=pBtdlWh9uoFQ)>5a&+LaV3_{gp`Q z6+^iVv_fUYMy)s$jU>0nj*FBxMvJf$J`m$}Md)W;jtxzWD@_Wj9pK2mDEuUwVMYr&Y7br7c z*8@Mo-u)Ec0iUW<{RoMaAC3gtz5cXajSuLjc+s3FQ&ds};x5e>T#p9R6#>wEeT$$Z z&~))guRn*&PWl9>9D2LebM9z+?r6rqNU&W~+l>*6nc9xbBwDmdO2XPVmSW*IUkxjg zF}W~EX+0Ge3eD4}DU%r*LjV7)&l`9?SoAo}WG&dUhJ!XtZ2K@V>Mp*yYA;=7r5-ZX zN;Sr^QZM=G#*@u7~`cRmpzBG?QP#ITAcPf@a=UBwaSdpAvyYdnv7O>sbaZ6cl&p&HFsr_KCN8EIBNe{Mq8Q>w zn#O?af)aRM!PeK()rcrAJ;No#WG$QOZGBgr7}KqWPEtem1m?eQJ`Ul zF-sIImN3a$riN{n8n$`yw%l6>J(kUVD`L6KatOns_p!E`zL~S1 zK;I5w8Q&+xik+}?u@KgcrERBlrHxk4gHmVf!yQD`Yd=)8Rr(`_{gl&~l>d7`CdH?$ z{-9$AN^B0X9kX?xjwq3cT}3imUDkibept;eA&M~}_N_~pG2_N33q%b9+`$D0=1-;$ zUkPiFv1+4YU1m=%UaW6X&O~HKRUG0S6ed%7M%StQlt4T;OTkR1I%s6(QU>rR8um*g zycPd<^Vxc;PiKVAiA`oLPm{F_QCQPlb)|IH9b9;xnkJc#^t?iu2%ji6 zbi`5~>2ej}ucv)uRE|d_;sO=n&*|TE#E&Fml!~}Q*RfVdoGNt;AtL?oujJghw8I)= z&8}Ib#1`TOrMZx~4-_=Ce)uNdz0C75R`RZ4>2)P z5=vEkQc}LgzB?ge4%tL*rF1qX5GTHL?#ooV@HE~!5P`q;1Zt3bm4ZkAD`e1m3G$2b zXaP6-6N{yOWSAB<(k)wmp4+Q(2Baty%DIWVCEjq8l1erUR11nVyn%uFXk@bs8Uu!? zweO`x0ZSllg?*AhnhbM^Y(H1A_GO+rpiINp_73=RFqvm0mO&Ait13wdc&*1`0XX{- zARv9>cX~qJvd@{T?$WVO=-3A&_VB3y#xL&cg1B8B`@?gIeUDghgw7Vz5pPIDlZx;m z@NymT5|8xLDnjl)(v0(UL_ewM9u?t3d6ABITyj(r(G}e+HGka2VrR{+A>db(JAOMM zH_Lglpjv(5Ry|RW%PS&|y9;LVQewY4!N!IA;)1z+30e{FMe#2IzMn~B%Gb#*JO}?z zG9LmqwN5Vli|}EBuMsD<3-4mKaXWbMg z)fTIOK1SjlKcG|va07dzA234&}mM`ONa3??JTS__6zp*paSR!IEj-*!vCzNA-WEi;i~1mF&Anr%Iisaig8RUDM5-hTtN`j zeT`qG1(e8Av0p5Bj7QXYQB7VEnp}4mtdjCvD+gHg4Y&b5%xQDHB@nT-u{W{V`eeb2 zq(tjWdR2jWY@n zE4ao!6mfo15W!o*CDM9XQc>rcg1HyDCo}=WOqkS5_6RejnrLsxEK6DHShiZMrndFl zT~=7<_?AFe%IqXQrWiAHd3MFlh@xszdaX=b!M>Y|l4e6d_T2#3;@`4_u+B^SBTrW0C&oKw`o zi`NYyDwbo0`c(YGvMm>RaUHDg4f9iW>_G(xaPIwXCXbV8r3qj{0XZ4Z2#Y{~pE+Kk zKJ`F)-(fz)B-ktgW5%&n5=sVv0*%h*70iJ$S3Ign=zx)Y0;yFL*r=9NcB2(~L}6$= z+c6a6S_I5P0VI-~Z$mFC@H1-X@_`?`*f91J0Z2^b;Mv3~S`#VX7!B-6pMD4$2>CZf zfa~|9zr#0em89Mn@^+qw)Y!T=1-xHFayh;1-rifp+jUALzLIStv7YbN58d&wIn&1C zwe(Qo4u_&mRRJJsBsK^n;;NVmM3t#?qh?PTMNCSyWPkeQT3Vu!5`^B8ix8H2xeRay zf9tsh63!G7@ZXR4Gqg_l7=I=CVQ&V-AriZXhiUKgCc`W;S6v5~K)>BNQjw9ZXF#TH zJ-#PLJxxdMXOM_4*U^h5`p-nC&!?s4DlsfhY*@!W$|HS0vF0jKttVo*j+ibH)kOT) zf-gU#TyHgVt)3{5YM$l%b0XyfuvIt=5Y3AOHgth?={M}oF^6M0h>t1<2@pp@n<`q> zX0GiHj!JbE56oPuq$`%w2fmtVl%!a9n0Kx`Ie>H3);u}K6C$ds2D_FO$U{(8v5S&2 zcA9m5KeOcoRQ^=u$riWa0~FCm=TB7`#&eScc@R_;pC~?)s&~yd*57ktF1h=G@BU@| zOS?!KJ7KuX+tNuE5Hvbkjyj+s35C8C5m-`K&uZ6CZjv|g0$9F9k;;A4OlB_^;4QJ& zm$)Znl@z^If)#9IfzYeS;U>7ztb-jos$Hg_>#K$*yz~WNq_MzLK`|Q%eqq-`J+;1P z>=G_F^u%Hwl->pI2`*)eZO>r#Qm8;Y;0?&O5zAE$$5I~T28nbeYO2<8D5BO^9c>1X z5pGBKIhcK)3eLUUKc_>ikl|uC`@T{5Tz^k=X}cXnGwVx=6dz?1#GT2208D2JuJA5r zlB%UWCFS)K-0Y?B)ViN!yXMahk~MpP+;J4=p1Wv6hy3?aH37vk0i)FftYCE21pF^A zdIHp`mI+Xb=X(fdggFF@?)mgl%7^Wax}807pN61abb|k%_0M4e|6BcYxSf_Me(IQ| z<_f45W(hMVa?dUy=ZG*T^`cFt*zi8k0x%3)TXb(gT=Xy$XW>H}{xm{r->fZTwS zx{Mk+&NWdcM-d$Y;y+MEHwGSM3>=pmn)vLnH%bHcl<0KrFLv;g;_O&#TTuJylN4#&zHsP^3AtZw{?_^#1b2TAjcq79)^g=)3mM9`1O zVlA-Qc{hE(-&Ko(xDHTFF00PJ5!6|k;PtEnM*_M4ruG~8oJ_F6h6i_~IqB~|!=ZB0WWK6sb(&#lmq?nMXVu`%uhm;aBP4HXd z2|r{8AwN+}k^B9SIfMv99xXl{vY?tL{+on#A8+duyOsJE$nlP_2UJ+!*p(8tLWe!6 z!urK7lrWhk(#d%WD}J$aBrK)FURGiKW2Z=1vkp`HVw+K6NLY&w6ST*;a9K$3;94W` zFacrvL$hdI7|sI{oL;vb8+EdeiQ3k{JgnQq-)|Fi_hIkYJUAN0b9u)siVn;ZjgZjm zRkJ}~ok1vwyk2!_x1gR9G`3q1$m;c~k==qI(qFGSk)U|0SEe|*Lf$uWpYhzFUW+F8 z%o9=9S~Qf9XH0ZZYubl+_w?3l)qb4rr=$>vW9R6b23Rm9_4ob2Z*%55_txynP?yNi zt-15przh(a74Moa3CMB75W(5#Zmb*eq1%*8_8*e9Ge@>jdk<+ROIR*T2=2G5Om|vVum2M!GR^%Fs$554b13x}J;hgD? zJAB^zRAVgs0|=j@?w^Kh&ZkpF4e^h@LD#<^H&L1U^b32IbJLdLP4`oAEo%&7uKHM*-!9 zkZyP7@yWxnJPi@Q+3r!B(~*Dn z%JN=eb|dcGTo!mE{o!!dXa(EUiwH4`kYggc4D8Xm-d+p9gu2B|K&r?y3fU5WLXdj* zR`6!;)5SDeBM(X`-v1FellyZ%Ltg~rHM`PmCz(r|#(-y2tbgpa<5~%>-+*L`e!9E$ zb9ol234buCpDXkA^C@(8B>dT8{d}pECwGsk&lbt#KT{DW*+xjzdA6Ac+Bc57TT<9z zShEP1xr&q&oB;`BPhqvbM%5b4CtGNFy0Cvw=6Crv@?a325R^fiSEcxb+GTRcgkuH8@pMnN*xQG4=-zmW zP-a-m4KyEaVFSwF!IX~vqm=z z?ADKLopO+Vh}$wUoTVQY4=GJ4Hw{RZ=}hQ6d4Vq#6ZB{TUAha2!}cO&bf~75;wb=VwxnN|7AKskmA+&HYS&nUH$=7 zxe;5Ov}Z@LiykRz#*%;O1bB-00;7CtT0t^gRTl(F+k%yp-8!2XOlj7yNC~DFM;+BB z?x)U>Eq59I>omIvUgJp8VRBeOBtYk=>V+qZcFS&T zq<(KbKkU201srKUKbS8JLUE78vVX!wv6?kmDE!kKpe1y4}G3W*({69to5D)Pz=q@Ten5fVZnL3v!6oTK6gs6vQTp}}Onj;xl) z0R0tAj?{rmb)bAjLTj`zPkJ#LB+CFs)#X-+)rbP?r+U-{K4sJ=fRH2U7t8STa2NsO z0nnu$%lp4TAzIx~zZ5wG2yHV*2~MDIimK;=S%lejVlv6zi_h8zWw2BnLz}*+q!n5vlm|yE*8QAO5^tEyf?~nHRf3o^a3H--oXy46 zvJC*6Qd%S)E~VMwIg|MrIT>6tBN7Vd;-vz9Fr(F^ak*@0M)1MkGlpQIrxflCE>H0( zipPZ?5V%rd(xBT+pl~WoWBP|i;Z9?~^kQOPY9W}QUA#ZLn|EWtlo`A~s1fgkIlM0y z?90;?^lJ>bw$wBV|BinsF_gh8-q5ChU<`OlRywb5^M@Oq;8TL6rG0`UlX|OIxq>uo z+0sK}!15FiX5%RV6b!{Sq<3w{5=T&##G(D{PflVZ3Qm|~1g95s_TFs-r_3;d*OofV z1*LK69IJR!zrcl#Y)D2~8b?@0**2V58D%Z_4nkSyDcNzPF;WFVIMgB805uqR4B|@? zZUYSPp=BA<*U>l`Oa>s+M)jqdO3G&bxG%p_?PtN2D=1a66WX962dMF+RQw2iE<}h7 zsq9#~{}1XdZ>8P* zP7o?Md7IFMq7VnfOH+KkIH4pPwM%%_x}yE@y2+ZNBzHwUMBBz;q8p&-vBTIc#V$?gHzlUT^|5g!`bth~O7P z0!Oe_dd33T)L1g>7%MR<)M6~quwRx!QksqIGaF|%+tPP$rZ%_#OW#ubTU?h7XW14a zj{)uL2;rrVEn;I=xTBw?uX@r8QHDqdqxv7({BYCU0i7+{Syh+Qn zV=LAr+k~Qny<5u;7aJ;d%9N9l^eF!`GZlbqPLGZ-# z!9!i-KOI*fkT-~Y)z@Ax#4q($E?wn|-c90B8lvu<{DT*jgR5#_G3aJ^3Ki!fdYk|K zL4w z*-y9M%L(A53$n8?_WX3(-d2<@HkLQUTfW3zH0VNXQQ7Ih?uvn;cr!<<1)&oVj$=C(6`R>yv(ag}u}c7}3XWBiT-j;I|nj})PDBajv-z8!{p!J3l zx-DI}s@_dl{qn~}L_Za`P)F|kpG3-=qVC}OLHM{q9?01MmKfwh-x4?4H#h7Y7j{aJ z5u9Y%hSGPFd!eH5b}3DRl_ZkvKGvdskI~wz2%=RKn`11&jEC5>q#I6euD^Pv^l>S+ z0W|=fNht_5;7T1NV^1>rTuiy#Wr@{cybz{e884o|d4r)zU=iwa8(<3pRDU8_a=oyY zOk;VSIA+c@xwICjvyX}(6iKWko`5=AhDpq7)>R3=*3CAR&e>5S%y)WoJqmXeW@zL5 zkL2Xpi%eY*dY9LX{LU<@L$Wd;a-X$m5K|x);wc}i?P%rAf8Sfj&ZpL8)aeto`@w#^ z$eG-y?IL?}zqY7*VQz{2c8PHMiZ;OA;VKLZUdHrJxp>Yy%3@)A3x(!hGQG@yQF2K1qJRKh^D5UQW6)qI6zPV!z(enh=KUxMlURM(I1t- zk9ACPRLNgn@B_E#z!^#e^IJdgRUJ4- zNn!5t1J|p-cr~9Qg{hRv*Xb}>J@K}_vDp$rNbdt}v# z6II}$jU<+YWV%Yi`xr#{`eCaLs0lQ|CGH)&lJyDSZ%pNM@VyYRz%>4Ftvk%h~` zyt^*2-n$n{F9ZLbXozvi;&zKl?Zs3QOR$y~P@Hg343IpQC|8Gl@Cm)k?{o)7g1n z0lXeXn@k`D*)~j78%KW)mc7x(y`rxY#ulE)RB_449*r9#2@?&@zwqKqRB_~Jt(knJ7WwYUddBN&0l!)%uj=d0p~Aw;gWXpzv6R z9q-c_YD}BR$CxstTNu&__ACC7mdWy=Yib-t$si%B{lbMx4wfifD2azFfAGFNFEe0@~By4_=n6Uy=F26wR{gV^w^a%Znmn|&SglR)^wDR+JPo~<&TjcPn^qG-l5MHH%e zCZ^`mwEl^V=YGbM%~{Khe5PhXL55;%rbk2F$)FlZnRgk5xiYG)x3FKZeFZ9h5O2?& zf3}E&20zdrT1it%mNU|F=4N9szN$|cRcvP39U3x?{He= z?BDn4m?z+vi=`3RKV2qMskp0okaR7X`E1?FV$$n$54_|aG+5}Vmz@Kpz(gdN0;S@JZIJDLMEhBsFQyDTIQ?>rwC6LR5M`k zE>?V3Xr;6F9G}Z|?TC}iCkMRmQeGu9S`o-yiV0y7lMzDToX_GDYE48l_eplQM%LJ< zeevf-mdOdi+^-J)F;kBl3{ex&xCZ!3hAN9ko)M1MxY$&Bl zx(f+&mWcucobGv!DmLA#3W&kcfP$LZ(Rja+xC^uIx7>Ms4vYKMz<%~IypHa-&V8wn zmKaNVlL{1ayns;`Va>0v>7^Hh8WV_3IyNJngEU&9QREltwz)K6AhIAllOm8jqJYaN zfV}Y+RL9W@S49Mk#P8^pI9Q;U0xPQL>3P4WET!L}GobX04=&n&VXiH%M8{?uiI#qR zD{YW?8{I?`0baxMdMq0n&vC;Zl!K+t6CxI-V85s=Q~pfstyuh+u-nakma?+!@WH@t z{6}B|SZR@jhs3^%qf!yZVt*@S+0EhE8^vx`UCU5RcAT1pMHMqp*E&@0`!5az8G1=$ zJiXCRP&^bE3e>GyMa#Iaf8|b$^Bu!wVpPL0-Xxw_wDG1>@F{|i414dW!|1h9zz0Qp z1I^-aFx+N`b7`?v)Kb(YKER+O(ZaxQt{JFbm46ZCZfb|vvW$zHR?AIf{%3hXuOKFqNKJEP?rtRmJ)i#j^xM(!{90*OgjVZd5(q{J|Ro5-Cb zf~i|&P{a81J%AtHJ^>stPCp19u|klvYZ+l&ISV;f+eA*g0Yi$p+Dl#3eX1DXtNRB6 zshvoav%`TcVI%TZi97FXl-oaue-spQ;{ApH6MJeXUue_94smS^sh33BDt<>&&46H5kWKQj(`<--@f~7X-KHC z@>pzA^x)HyMG@Lo)tmQ-dapCwck}3HMV8zu!W=%n&DNSiA~Jn@or)po#BL7kwd{R$ zhjIgl)NWuICGVO=Yn6}H=s`2S3o8jw9t(a&CfR#kp&OyTuH^>yjXU{6p4m)qUqwhZ zc{#3-kN zA7=lNN=5IuNGi$ZWT1-9128v>dxOAcP7C6!B(m2GH5lQ&_Bq_2WZ>p81BjFVB4&z2 z8pN$4body!cSYHg-fu^cxw8vg{J*?HNau1sWUyrLW(vIut@?MKt?+$|cQcsHqL%w6 z3F@(ziZiusxt!S0-#o;~-lPI(gnU#roBL9XXB*PO3FUA9RT|6$^|;WDotWhu6KXf2 zZ`#M80p(u87}gu^#kpBo5}EBsa!~3a3FK;n`$tN-*qwZ0uK9u#WI9Jf3j(4nQvsVAFpk=n( zy^phRItvAB3ytyHuyb!d?`$Mtr*|k^Sb2UfaVZez(H+2T9+H;fpBQ|;*tYQ#;h-~j?IgWedm4`e9g zCRXbdUMbPXWHQ*-j{S(p9|7!nx$IGKCD#8P#M}oNYwf1NaZ6G_Y6YK zjTD>Cg($q_TTVZi@mvI%Fas`p@nK=h&rnHJdX-L`D{;<;d4WX)N#$ok)SrL2nb{#h zex^au!0yZ*N@Ygk0tN;RrEJT2N;dGY{Z_c>OS5Q?g$5bSld9fhU8~QRTzg~2>!cC!?{lW&q*<4-N=zu}7O1DM}fm-JDln%&iDLpTCl0w>OnpWr_4huLdAxPbPcUFgo?H(!v+tv3r8NqK5WZHDlIFzm>I70uJLQ{#xbAgG zWbOIr|7e{7E`3QGFo1_es|Ji4$)~hIY;UJq#{n5QZw)j?0&k*rQHnmG;fm25fd(e6 zEZt@?3Y}Arf}pWv7wSgo5wBq&pOjgU__%B7n0wXdF7qi-(@~zpr2tf7|>$M?K04v zW4t`223?IX=|)PruEU%lf45-{G0aQur{j1Rg}A;usKjQ9Ru-|@60jv=Gapp&J4If4T{_FFsYyh3)9DX(%+^WGw3yE3;dyLAJ}|Fv8fXeqCYAmcU1R|A@RpSC zi76X(F8Su+XP8&|!#{`Ne|81s%Ty4q#J)!i{~U(@*>1xRQTewDK2Qc#&sM|%AzjC1WccThkZKTMd! z;>nkau)LB*acy>k$~KixAwo1+v7ax<3cno4iG5HN&=wFB4G@g)XHRe^56+6eAB-Iz zag~ydB0@_-^|5bt?ia=YsGt;cTMTVgUjZ2`+9jF}7>`b{jZ?r&0-UgW*w5q$y{Yzg zF>@(<{WB2Wz&R3Qu`pPBjAYPZUKa0iURRE}yuKN@6XOwzfcCD#IEOOb2(dJw!A?ry zGqJbj>hZ_NOf##+KeFI-4K%GrB`MaFyl40k`dKr6W}<) z#|&>}4)hE^#Cr4g0v{d3xlrngK!<{ND)TJ&N-n!@!zc1*Bx2IMyLd5Y*Jr(-jY=BX z#RjNale3%e`vJoPuNKx{pt*B7E%^hA6lm=M_tGeABk-Avb)JP z$8#Q=|7c!|1@F%#t@!5@5=i6!DYGJuyNKX)>UFx&myZ7nOz|}+!rR7vB;ZMl?gGrA z9OU&8mXN%9J9x35mE|JLFeCA2`e8pS3vm?~DuY;vgOtCKIPo&I*&8M!HEMfi^*yvl z*Wumz4+cwFCGoBW73qE7yNuWL$jM@IrVFlM{*cd=MVy>)U$!s$I~p!twNxsX{9)CX zpi1cu{;a$u~Lt?|pt`IqH2Zuo}shGfb+^@#G8_xV@t zYiu~8JX!wIzK-(Vz?i&hUxriW^IPF~o%dF*l#Rcetr#tdIEI*~D%300{f%(F(r?bp zEY-&JM&98lm^FvQp1!eUAZVM9ReV%^+jJL<2R`C$#~2GY(+0-wi!WdwWpsU^S85K) z0mZ1jLGrn^(@CzdRb)%c?;bzxv@9bj^1t7eP8r1OyOi-5AhCdFiStuz9DKrYj+~8< zBm6VtYZ1SVZ>5&1$Rt1#zzcUlyaYs@ zF`$Tw0Tlk9?>Wy*CJ4R!|Lgbu*7|3y%=0|we)idCpS}0lXP--W`5iBH&-6n;$~d>m z6eX7SD}$V7A4OGQIvX%z%AtiOPok0PSM;)+AOI1$91lk-K)67l|HheIlYtOt*e{Ho zZu{?;BLUDjRt5r(3F@v&bDpMSzE0mb&2nR6&!yP@Cyyn->W6V#SD}5+pKH;vTZGYz zb3~zaIkm0d_{8#QB-DsOYG=CsoAWr6tRo41^=kl@*a1ic+!p+f!ZZlFW7R)mP@weY zoLirQT14FS(KvphsZG1VlIUI1n;Kun*Sqn4Ko^;zU^0y}feivg<1)uR(lGX(%K?H z;g8f7J?{FIQfjbYRnd0+T65)q?%<8gkjj8k()&!G;iUu=T7KWGzbB2c>n|>hj|0Jsv*13s*$YxWr{+#SU~e&*0ohNk z;m1gE$*H`#>1_=)XC}UOwM(N=iIc7ZNk|gC7jMg()I-DgQPM0#AN=U{>G$mNT-vVj+f#e2QFVkpD+ox9Upwq! zKCHDp1ZDgC9n;@!_7K$C^dTs&$L`l(^L@Df=3i?1Yg|4hzWEe;OW$LJQ5Zpi@5Oc< z1bmRWN7xr0$2K23``|+8bxiy)#&(iKT&HNYk zSsC_0s6?8KvyveA>yNAt$tmwrIWA%3Q;yPSev@@fezNZ4oZJfM-lch)oo1Y}8T#~j zp8t^fObJ7^!fE}C(qiBexg;lYIa*fPD@X#7dr}-BH@0&+SBG-{t~J5Dt>X>xSAtyI z+c_A7=9_(5*%lF8hO~UaNybC8D>IiNsaZER%cR#=nkj@#Wn)@{Rf@R(!d(Ovi^K)!5RNC-pZFIg9iUBptdci_#R3rF+wz+s17vCU8;gtW%j z=~aZJ7))Xdm7f=AAsVAinOM{!tYiinBMmG#`UM(OjSCM6GzJ?Z4+%788$|>*wh!zp zmd4f}gYB>LM2@#5a6AWg_a+8EWfs9Ew#wZ7#n^p9*%5mZ#h9B}>2-PHB;Gleitd_Y zvgcvIz;YU@+1YcfOTR;&9#;C&pXSw{V#QLtJV|>!j(jX{-OK=EdS^@zjC{I0wIrAR zH0RdA_%Al=Uf3-sr+%1~e%*5N-Ew-Ku<81&6-|kASiVNA&7c6l*V_`Nix^&oQ6RjV zbXcK`;q}#!AiMs2-*80@^gJtL{*977h}Q1I+JlG|A8HTscZD$vTmHgJKYNgS2r%nS zVhdM|q=5MX??8R>;WjoPwb#qu14{*K{2}rnbjJWhqE2xlj$EdFf0oD` zAHW_;OrnwO8SqG%cBGF^XV`zdp0*d*tYR`uJNjg-L*)$|wqE}+CJxxeMP9^PXL&Rq z&2viNNbLNiueV!yXNxmtc8dMe4_bLcaOC4@_{RFH{ju3&5FqTiv~}A)YWL*i!s`45 zJp8D=h?4jzoxs?OZ$*C#6 znxd5Cupq# z(X%9motmn5k6WcH|G4<^lSA;s2w&=A;zYNy>%{Rw3L>!eBSTpz^Q&!(>{nYtrZM&x|X#&y3qs-VmG~7J?JXVpq z)wbZSUQOxo#hhIZM9jIwP!vaj&5IZoC@%DT`$DPE4mz{0VyrNf2^n({#e5UQk8}vy zHxd=939?t(|H>>`UBrfz1xxn@os0LOj{mmVTWJP+n7Ley`*(kzjY~K-*HA(@ze(Z9 z_~GmWj!N9MH$_&0d5H)gsKq7O7;}oX;pq6`PV-k`b~=JNs1_8H6|K;w6<){!kpr(LF<@R-p2 zEhKx+$aMz86b}!!s}tr_uW8j%6q`$C#GP^NafN+lp;$$jLQW8Y92JhNfoiiASEh#J zcU?4`t!0dA48(PEF&x>Kc#@NwIy7sP>~)2lNDh~n&X#*1xLgLa$Cdyl809~>o>*6B@Z-m|vUeg!)~!T~I7(V` zfIYm&XY>>Qq@3aX%K5L1as+WR1K9H}rb%q^i00|^mK`vEY=k5HHJ${+)ikxl~dxR080bTn156y-v#<@<9b-fnyJzV|wq*eiwX+2DJk( z!YGZA)}z>j3+&v$5W*PO1$9SvI97p#Hlc`U&SdB7E|FdSam@3zU6hM7IWu>=y>Mc=7cjyL<V>!5qHwl2z#tly0nBYV-YizC z6d=Hn=-|@bw?2~`MV{39a(KMTXkZ^+ZGG%;c-8tai&il5QSu4{A84&N*}=YqUZQpE z;!exqa4}oR({_cU*CxWz8@ut`JOPxPS^+5r5~9kU>UZ^A^gP9*q&{C~En@|@@<{xg>6yqK z%_1xOKEz*$7Qobc$WY(=o;+ATB!Z6yT@!M*NcY;;+m^ew-0$;Y2w`=0t{=Gu3!);^{anvYuFq{O|u z)9YSV;+K42tE3c>;12Y2oIo#jn#c3q5$t8%lh!oL)s4Q2rA@SA2i`x;;>W&gZ)ALq z*1rm{XmfNt#yXSDy0{5 zu?t?2xQ;rqb6bwu?9A2%f|@ZC5q_7p0Zszm*+ye7K^kYfOCqVa(l^J1tiUh?g1CSZZB3w7yAYES8a=jw#Q& zkOYuMH1}+2LHDRX6bpWXb-#?s0HqC{!1riOgbZvWb&$kP7!qVB=p%%29W=8Wck>K+ zUQaIa2nrv{08*nc_s6qA8luV}TLqEzr&-zQA^Ot_aHP(Y9&+c?)>-e=Hh|t54KYPc}Lo*>{ z8Zwh24LKBr>_-l1zZA9*S$US5^*xFcHD=KPq0sryVERYR(56@a-oQBwX)H<7G)XY4 z|8hdK$Qyiwpzp|B_w&;Hvth^%gOzExWuhk}%UU170DzhOvC_pzwls?pUuUYZVb9X9 zTcbG4CA^!}00YRD!a-cQbl82#phR&DmvNkd(@!mXMs4w4VyG`(e$5><& zvifzK*^G4*hF@t`>P8%DrS0W7{hf0@Kh?Ox>sZ?26z1rn3NQYx>$c+r4Ns=AAsAic z3pQ*6>GX2WT_CM&PO~_MWZalWxjk&wj~PQn2R?(HuJyW6m@_vvHd~R}bFz_MA{*la zD30^rIdkD8W@-Jfkyw$&L-KT*)0q4sp{$RwAux6 zf#IJ@ldUvC(qMu?5{tV^rK<0;B?*g#uQn_{1B>$s)w*y5Je~vomFa+MCIa^)H-f;H z-#-HUuEnS=1;4GpECs)zEHoB=a%k6wZ~q#8*9d;g{%^sr*NOde__=gmZYpCx)@sV4 z1L@3zUW=k5cw|ayM({uk9)CjeB4g9?AHx5xH2jaa?z{A%Z@oVjQ@hl9e=(zOhotWF zhphF#xSzG2d*)nyVG1w)6Z+J1d*5)P_PK%{rpx17u8lIkKW2Vqem{a57gjFMaMExH z(Ft(Ub#T#6%g3M+xZElwJ^UTNV)Z=9h1tg`T*7sqm9io{{uSs4>D<2Bts z`6zE(%FRc}AFSVQcIx`&DPup{(~0~C!N*ptvkn&*eptcp=7dYT zxF#K&x`wF(kykik*v3M&G%u`jJ59LCozwFt%kwWJNczCYx}Lk!i+S=`8nA@1IhdSB zyg2<+`LMp^ZzBXg{}(*ceEyZ244?li9*H{^!{-kh-hTt|Q2&6L{C@Ormd}^M>!CM{ z!pmzFUWPd{3NJA^R^j#j@5Cu_$q0N1`mPkezd3Osra0pF=NJa%@cjOeGGw<)HpX&} zjg0plqU>6EW+uaL{E6yN)+8|!i9f%YX87|H_wx}Q@8e*SWtL5?%(af7utA-XiVJtE z@F^$)<=W$nQ}%OIlS(<7COhd_8oZ1lorA(F%}C)tt&inDfemA^{L<+Dg2MW<{H41L z$7Go)%l1EE*nTx4&1+?_`slW>pC_OQT=t4vNOSzV6E7yj@!wd);WgOJ{wzNVf;ul* z)u~V5k&LzX6ZAs88##>Lg=?52FkOp;I2d~@%Iu%DhdGYHOOfM0i8|GoQ}4~s^9~V) z$PZh}(NLbbOL#KrFBlOw`ZMTQF~LKy6Ruk4oHg`OqMaG%lka_J0%y0+SUEY8e;x}2 zyGy-wYm%+B!D*?Xp{TDh_&=Bu6kgNlNKlXlY*v^AIMdJ(k{GV}BGVAzd`46NI#P9~ zC54AHBo&d@tbFjkUt;OB1Y$#E{Kq{xbF>#nPAed2=}rT`bZJ^KQbygZ#8!cF1OZ|0 zlU6|ZHGGiNjR**01YZ7-;4Qk)AmK^~+?C;Z-e2;pzw}iOC%^@uQE_J1((flBWay;N zt=yI&AYcOZBZ`#W-9w)e5GK!=9EhBq0-w`73(}Y@&!mqav@{>+4}U1OnN`IgKv0rH zN;{Y=<15Wi=BGyVz4c~93wH9P9U}{=~EqWSu4(%|2}H&1i?@J!8N1<~@D* zYP`r8e69Pri>t@mp5+d9dv;_Gyn>j)UpxmG{N1sRPJH%oxVypJ=S!P?W;`Tev?p&A zI-C9=X1KNgnj!#8!JRze+5ZV#UH;vL-;Y$a3qRPYKKLDlU|`|LerO;3@@UJ+MrK%E zx5(Its65U3FH@2`-WFba=J&x%_w=OZ_bl+;V~ERF*GTmq8X@+TmKNp$N{ zo@w=5mM8f*<~6J};hMoZYB1|mrZyM%9E*atr?6bsPK}+}6=ZDE<;CYUOdY`D{uUa` z*HJ}g%CDI8lA4yBXv~i4-Yv%kW+-+^c31`zFTm=UytSuOC=5eqjw$r-gu8{_(evjg z8PS8u2MCL_C+G9P_!(oEo_S9aelU4EA+#|vmJf&+A-52cIJQ{##kdN=k;Y|J!4G*P zuK!zh-+jJ^=mRUYIP{$~UjS5`!o_hOERNc!DUUn{yKwU>hFw5Ah~|Mwkkq4$_t}+s(hBDVyhv{hh69;dw+JJBC@q~(-AlZ zV0$RXpiP?eJ`9*D?Vzn@U*ZuwMY9cq8i`GKS2<|n%xSSA1M`{Wuc$d-x-k1Zx=`Ns zRyG|RdEj~Bgs|qK*yz!kr*fp4OzgS4kAB=v=JJ}L4p}NX+mX8_z2}X*4mPDDO z3EBZI=yI91h~^2G>jBZXlExJI3mx6?Rw?y3y& zU=W>1{Mv4;V!d-!bN<`%?`>7!O|U0({Nx7*KYKM{%0&Z zP*DC-20H*ukD*A8l9{>XwR20Z@*dg*U=C3qmI1wB4%c&WmSUE?A!<3Z!>aW(I?Zd5 zG5JHjT>5JDQBZx>rWxT#_mOCOlMqi!f?2E02(q?dW1;0J#0YLrzGg~oaMO*9KRb}) z#G^m97-ZLZi$7n#s}FzfAi0Y_b$-)~Lvg21I-IQgQM@_JsJ+wT&uwBQwPpx^GV~IM z?T@>@l7-~}49sjl`oZKx5ZzrTh5cEy-?q2o&c62k29lX-?}&7JGx0mHObC8x1K;R* zocjCZld~6EA+E{h2GKg7ymPS9!%!)>wku~gUNkN15u?&fG__uW`TN>Fo;<4 zRi26KPtI7VT2~l}b~%qk{4Xq28NCxeBp>G_=6_(%ddT{wIi~e(4o|1Bj{j+1+$#o) z_^B8U?>>K{ChH*Nk6!k2BNbijgK_sC>ubxm*xWG3>PPD396#qpzrtInW*;X)F_RE? z-x-YatMy=0$?A{?Zy@WrjJdQ0+C|vIC@5+_hx2KY5t21|%=D?}9oU~$KZpQkH#JY# zg!B`RyqLnj=)8NUKrgtr@6}yo!G^Kv^SUoH@qUArQGaY)E`gW4jjn-h@7Hd9p**s0 z(FqhKDs@bG&2pTllyN+80F%Ue!~fnF2D0L@5yry8r8GE}34Xxt^CIoAu@4YTAaE`S zuqz#iEWV$DIN+Z#26#8GsM+C<&Re2pl}B3-nr4-BM}i+*6bsylp~%@C_>pV+wpxj+ zZY%OuBofCqnsvWLcW6c{KER#gd7+v$AvSS6+}AkdJNVMwSRPqZUh*DBUwO61(clw2 zS8}6Qd+mvR6vI=Q&(6aEMqTrQRB4rTo-$Q8>q4) zuxTD@B?zZ(Px8iks?jo=Fq`2+!ZpG5eq*1Q8j@QF`i+$$w12&`WaT0aSC5mr4-Otd zHy%v(mkv3vb_Yqgmn&OV_V}ioH4sI}lKolx8MNTT5xkPUyOz_R2XV{0L}SeN9=_j| z=Ro7oBNS^IC_iWnJj=Aq?^bbQk z<0;OMRhX`XmbEY-!nfPI_~)%J*xMlqrT!E>DQiFPBR}LF_~b1kEl%AC8gjmxx~y^Q z$9|8hr21>QaqL=ZyO!qAednr9{$Buk@r%`GVqSY5zZ=~=JJeZ{^x(1Nrfnp{o5@wL zlXNYv=MKm}9pxQ(&bD4<{bWs%{ZLmx%mKAmm)ER<{DxyWM}b`V7fznOcR$L7`#2{N zKFY&6M(!RhT{G<*E;b8i>yqBS1h|256X9y3{zQ`kBg}Xzg$~H%QH0R(0%yq$=N<5S zxBvme#fVj>R_*$RV)z~#46q}gcf>mL>v8$ow0*_Hbya0Z61{1(a&chHraGKN2 zW-Rms7f_4flptx^Z0(y*^x&uHIb}GJSdH66m~9XK9Y4DD%|LWQH|tRxg2G<#B0FPP zoSMrSOO2ZfuVCXgHnk(~qS)EzS^gt>e1)?F`iYPsw!yr%K91GIf^<;%u z4Kgt8{TqHubXhf(U}>HGF);h7I?i3atXZrwd3N_CLZwO>m6JdIu1RM~=w z?UJJtn}08!b~|+?oLREKwM!Y?d6P)sr)i@zOJaecrp<4dHvRqBy93#V5{m5|G`uy1F6BbQxXlMw=F7bq&$9j=Czf#`z?w13e-qc+T5{iSK=KxUm z1+m(1;JGA$CoBAF>1YWHChlC60()BpfchFs|MYHfm9!P{#5ZQb;lwV`y3~zj2h75R zMd-K(c+5nPO?B`pT;MsV&wxdYH^ zFfCr$^e%QKFIEZ8-_cjBNS30?u!~tTq%3!*NrdoG)7^NlNq$y&BFmHWdD@wxJ9f=X znOd1bA`qyt%j4qrIz}$D1t43B{v@A;Q{}n|=iQwnR?x!a0kvW=AUT*khYGlgA}MW` ze=$D?lf?ujCLP~@^Fr(0qDfG_41dm{NLQzyAOc-I&yM1MC{5zYW-te<|3RJj<>OB$ zEtYcriQo+WCF6Vp=fKbS^RtGKFlhLV(MAWZ^Ip`Qf>Hy>Qr>wYJ9=pjbfD?8e0|k3 zdVn)ii<#Lc-kX?)C6={`)Xrw82DdOn20D+;P4G2+UtF|d_I@=cHe|UNC5U|}*4k)T zIuLl2X=tozjAanHump~LusO}ZsyFxqU=!xdmbYw2;yx7!J4<;UL8pzEetzQ~J zdV5ao4jb}%FU=(FPNn6P-Y*E|H1UXdTXo zvIiH0WAi;4i_~gY`?-pmmBbTdxb=%%ZoNyWj*$`@5t|Gj9eE$4ruzvDM&1fWHijbb zSJFpB=RM`}@B35y`#FYx|5}~p--ir>ec#7I3H$!Zt*gZkM^)^rL8*3^y1e{Br}>MF zRGNvub1=wWvdr-8X3hFZo^Y}os*bN28rBVeQiji&L^-^F;`g_4)Drqm(cR+ru}NiZ zpSEcP#}9*$Yb`qy7HPg&{ysYI8MoC34q@*rVxv3Y?!TozR783$@rAoT`=^$>Zw1#Z zcOQVe*Xe|Q+r|o842s{6j%g!%I zv-A65=bsW1xa@q7*!ib~CK>Gf>z`)l|L^hdZ7KfUIX07h=lwu?ih0ju+0)PVw!QZ7&r=HlQEd z-p944nDzmOW7;7U5J_#lo-f+U|0H=_mM%mZ6q5<~3MVB#!Vpn9h zgy7v-^DhEP?fq0G=s@9**;FhAr^P5PB#wjFuGRpr_>q0?8qP_$q>Q}N_7lcVBgaVm z$>&*um$)4BGVBM_9P?i&H^nh?{^7_BGZX9>{Iaa{$EN0Gr+PJ6xyA9iz4~*U&SrKg z&@z@j?R1)T1*z%CFX({VVoOiSK|r@2X>POmYUY#h3Jwa3co~DbqQymh@=CdpFQkH6 zo{fZ&msmFqM8mO(vm}Us!JSke)@^~(`E|wGD)H~5DK%QxRa)0QtqA6{8(nL(Zgon` zDCy#6FC${yK|%KZGl6^sE0>zy9M>A`UI@r#Hk=XD?hAZtBW&}*@{&zlO^#{(IC3ZF z5kmhgKP63qmJ4Tg1LI)Xvt%8wsEULh{t|4~E9^jjNE>Cm(zK8lSBK_|_;?8zA*?sY*_PV3YV)s8Fbq0m6J@HdOM}1>DXI6yfk)($k9-Q0*6RHV*k(Ic{ zFVM0Fs}N7D$MqY1TtNR8N#d%AOX8AR9h~U`E1AJKMa&RuP}Np|OI)C^JMnwA|54XA z%~M4wQRa6#xEd>1%OmmOuQ|IZet;Quk(J-x1Q425uJ{JHyAk0$oybt0&T}kiX6uxs z3mTeg#kZ=I_~y~{Onlb1yxXu1lHQX-Su^c^PHq=_Tpq`rb6WAyGh$Xj=NF(C00{5+ zBOCB%lc^9`!pQ_zA@Jd?Z)nA3>MW{=><2yzl4D@(P$MQE!6NBXlRJ3|vHj~#&VUh& zpresUfJE>RgW=*jeu*^_ND7gy0M&pxCEwB3u0-%Bnm6OSG(635c$QmE1Phrw?CQP2 zWOBQgyqN*ONa`4-nM*Ar?L7~=wNOQu6(UVVrWR^TRaAl=cYJr^B@BhBO7QHmRsAJ& zH`7qoT2_pVtTf(}6GfgbBSS`3a%XI`Vzp;q0FzDUiE>Z!64QI5)`Fw|Gkgjs}^8h4h-nNLGJ>3k{$Vo_)!!bT?)H z!M!S+@SK$Dlo1j>vRAQ;;=UK$OJGTl>_n>7ll@g-!q&h{lDyTP^Sxqn?Oj^Iv>7(SosPG<-5I^O#! z%qGvN+W=wzpywX5Y24Fgg}JuG-v%MfNnQ{>S>-~i9zm~2txd?ICoY%c&L!`vNpK96?1Y??fYO|5VBV5qr%=#Pscb>4)B_&^@l3PIV#CKS2jr9w8 zLM)q!_g>J>_;QWF&&U+2A+^~baUPpzQl#+U3WEpN_$C=?+#P$$c9EgAX*Ec|C()q{Cv&lEm$~+TLr@h{T4*{-V|tyvZZ6^$xc8 z`uS4;A7~GB<+!JWn-CPxL4AdyH2H>81V@AL1S7mC;LFex**H0~jb~uo3_G)QSd;A- zPyyBS4ZbVfgY(rPogkZIECtJT{gZt93Rgpx>Co2 zC2zo~otx$M6JyQP=+II-!QA#1QA}1st`Ob1)iax}_N=z>ZcKbOM_RPh{^23;)$O*- z{U`px1AT(6d;2qJx2wHgt96IlASFw-GQZZn5ddbU0l+k18r z-!{iiVo3_&ng>mTn8&^%`h-1?na30Tv0#RZO%9iG|0lt2J531Ui+c!IbH_dSnTTM^kCjC330B8e@pprnRUwQMINRDd!ipAw~R1N#>}p~=}~ke(CGb!SGpn4X#%{if$X;KdI1yg;X> z_N?F}!Sa8IG3$9Iu_#NLO#9czDjoI>`(##Q9Q$`^P=}+v4)KHo8z1Vl3l~- zQu=_{Vd%0i2(nmAGT`0IXxU`uef1l9jkKsXK}L z%6@u0MEjOMf<5uH(@P`AutK9>7rb0Od^Gn`z#7eqa_Mq3_Y}R4ie8tKcxtGOve3&v zhyR7Q6OZbXlZ3U;L|#JUvS#0!y@}qKkg)dA*tl=yd9W@%q}%qPZt##P9r@+wSBT8-ED>tb`aq-fvzgzV|_&82m64 zT>4>ixelxduOs644~lGHvBKAT1;TS=sWVTvT2|o`Ye3z1gOF1k$QZz%&ozCK*Ahdx zdmcN5$5xlT*!b2bb;D!d^_0gh&f|`i$Pi!TB|SMn#DE;ffDGU~ZodIxpG3Gx%U*um zE<9=m3lDA*L2IyE4ey8DuDlSA=Khh+0ERnwFcFJGoZF6i1JO{PaWof*mgOYQ9|En7 zUY75VUYwUm;y=_M8OVs;9-HE%vS1ZjMhTH!x~-rF9ZT-X0+MHsElb6SNh*?2{YR9* zIpXMN68D(0&d-UoLxq~YK_7zAd>=+{(Efan|D20C-h48l{?aS+oz~-dEB(CFDi>Dg zT#WtAKt(kk#ARC(1P|S6ZvGzt&E~cwzS^KQVhEc4$U>$l4^avoYp(j7>xSXw~=ndD{jR7CIUl< zliY~)Zo~o;fm62uZp11#B5op%a+=%9OS^?BU9?#1Enf%LAbFcD{qpC;rvob2bly zoOIw&e7>2xrPBC(qCSMrPSX>R{1i@;4V-@TfBNBcj8B8p$uCnS^n?0JY<ihJ{UBjwVgYkGhjx_jf08-mU)yhAIAn{0Kye8>xo0b?eR5cmX(C z+`^dq4=D<*9wvx~&yT!ciRNg42XjJE`n$`yQVdcJLazBUV<{3}-q@Z8W|q-*wnL52 zaj}4Or-2aGueWqulPMe`RiDps&o5cQN#4#+7Y>DfGe-%rH*HR-;k)PSKOp1!Y+;M%WE-}fUEtt*lffBkPU z5YSb_Ht2p22BXhSVoJYA3+AY1xSs}|(Vyi-OC-dqIYw|A@Ut9{$!U_fD-mNK`~+NX zgqymTd*ayPJI#xULSu26v0RCVYc_CycDbeB^Gbuz^(a0|irL{54=8dMWm= zrv+M0muX8&Ehlf;z2zWH-DbbGaXmfU99AcPc4vdcDgJMsPX!_7^))esd+O0qf8GGh z0Uq;s;>NKbjx~)xhs<;-l!e#H=avfNnR^prgyFW5&-0dei&kj;|?br~94UzJaxFKRMKVmJFLkxEVDN)Wup0?d+>~kZUyagsIHNR8b zbK1YC4B{SZNARnOS9s!yN3TZqjI{Oq%7yR$M*9*>xqqj9m?~r^j&U1!mmR@Y5NkuT;NJ$z&&Nnh8{(yG`276m9 zFer}!%Zxw7UfswWF^e|g=ott8Fes~nLu}#5;w}mcMlko5LX2ur<%;JIu(S+VTxQ<( zGIhEzQ$5GrF2ilDxy*x_HZ0GwtkV6G_i~NWJyz`-&Q8iK*?}Punya$wN$lq`NBk!r z%;HMIhO7pBxN~E+mfNlR*<$RI8MIud@Y)4z>ulE|n@P-A|KKWfIC^wbI9slR$1mXL zM$+omz#py7<0Z+<8eYD?fqzVOWm|mRdTYpg9ag%NcJR;A{-a$a`q6v*^kAafgNg3D zEYI&^0{jWjPgcR%55OIBz6{-q%1h&Q&D=)U&3%n=8A}?+qLCHB60QzQ-Bi602*N`Q z+x%PBLQh;BxHvW>yWF#hLn-yy`nizmbm3uNbGe1uHkVK}*W5TgC9ZT>Ay0A}K1mIK z**08O$kx8twBGcihi3P*tMY58+;&6V`NVd|?`+Hi!W+xD4w5^pyL)lifei!V!*Lo| zoP|`>w4LufF)rJ~Z%($qZChUOsCEnl(eRF$9E^AaxW3_rb!XNaLKBSBD{8hV!)KM@ zq|e$6FOhO=Hc7E&C8@5UBq>hUkB~HnqytRS**59GBPJb4QqG*LslSdA^NyG-k7OLJ zUQ_QU+0k6BeZ-VUb1~0J{>HX^T%erCcF@rteuo_0)}43M>dF2{8SbU`Az4-!tTnv+ zYVpMe^QDd~!t^7uTOu`fnr8WzV5|d*0U`bQ7U}2m4ut zfsfn3B6C0dU2foCY~XNnKm2qz@Q*gIOqat?Q6&%CfU&w6exd^YU;`#K_8wDvu>yW? z1Ew_g=GUI9fQL*#a|1;-_7>EZDC~DOOiL6Lp?0Xk?y+I_6K3hNc==tCb`GdF$<8tI zUJ2fIjfFqlx>WN4%(vmzIVxPAdlR`uIlBKDxBeX^I+R-vn!rzU>%;EuOMG~4eP}#_ zHmjGbNVy9Bicrn!mcY^l{p`|XvA7xbd!kH@h?w&eTR`Q;M+6SN92n~%`M#=iX0Qm&(qfH(m>?-#3-;@ zI=8wnqKgujAIuV$|Eb%vS)=UwH0XY_KCOv`2jy{MNj`@XSA0+Fo~{nB{YP3bVb=(4 z?>225Vfo3l;s}+!hTRG#XQl*`BGt_1ORqmNL42j`@>8~>4M2gSbr1K(D$M-XXRyPT z|M#Tf$@Vak1Vj*qF5g34Vml>oNSr8B16-C(Q#=&QodzdvxYES?cyyxTe$oZ~HS)!w z<(mfmTjeiKmp}LaNco?n%m3Qp%TM`B-hQ8i6O>z$z$&BaQNK$g3_4=0VkCyd*B?mp z`hCumw~1Z>7;Hq`!&RI+KH>8y94I1e#QfeAe={PU zDZa@+8gUr|dYKwr9Ie)F!8qTf#-)S&5$-oS~AY8H*&-S0;+J<~*Mw~Fw&>35K!Sa7ZyzT7)<__OJ z`6{C+Mvu)Z4}${p;PJvZctZ#iI|7kSfD6OY(xtUm(xeiu?>^rgTDo~?MKtF-!0=LU zWVgNG_{{;e-(=yv2>%clIDgMMkE8y9Le}3hE#wOOf?h)Df05 znRG+INR;Rq_U$ZyXpcQxQv5P$hh$HVj5E#4E-zhLx6{pIh=Tl6_!oufFJkrZc}&q* z!BspGO?Bpwf0qBU3<^;cU1%f@ybft6g8d#%pFpXsqVECVp_-#$1X}OlmD8c$l=igw zeo};EzB_qjjo1mzAXfwL;n+!Ikyvj1k}Q`y$w5J$})W5Fg&3nc) zZ%%m)ES%bxGdJvETkh<+TqB-=H2=w~^g$fgF}ELn? z%`zQS+dg!fF%B2C$^@c+(bd41VJ^SJ4D(7JiFs#;iMINRgd2zo(ijK1 z*WP(-mzkV5^DXamk#$Tw&RPc+>wJOr!o@7CsM#;4KG0{)V9iNZH$F#~*I+1*rcoSUA-L6>HH5!SC`cM)=JmytO*HmNg`SG74;tZ=GU zIakExd!%ZmQ`PQwD!H%3JGPq_E;|qH;!@7;Q0bbwM_hu@CO|d)2?&`6igG+3t3TLy z5PEeVb*p9cWpp0By$Ocs*bVOoo%(T4=Ha>ZNeZc7+XBb5R!y<(fhAf2?^e$| zsb4{}^lI9O;{^h$o;Lwi5-Rw@JBv-JMo$hAro!`|ERR&=Mc#8N(O-V->1up)fZrJ$ zL_sv4=4r=86Oq-PL%g^1IgnQ-XgG}Qc3K;@Z6GVh;H#E{y#T#%AQvpuV`FpnQ320; z$|@fwa#6@F>&itje|0hbkZeoq&+vQN0-jx_!n?s7as&e2i(>h=lY`!+E22_dUq(S4 zCUJ$Q7yVV~qXrM1<^$5YdWGIzgWld0VtWmqdo6mi{iS)(N09sy$1Oe_w&2=FT#QOC zqymf;TT!zKmuyTOsIC}sRt70&WBG=x`GAPMx-RHh9`?Ld`c9p+ zwq{#4b?VU&-;RHXO_u#BC&C5taBRq!{wMzXx{yiYWDhzdTcha_8C$`O$#x!F!w`XC zm2F}C=DxyMwbKxqz(@_U&A8iG0nJw;1YWnLexs(I`OGc#{ANH(4EAnDr2X@uHY&wu$ zW5BV^r61MZmBa%GL;gG3%aE^cHA6l=#*i2P(5$Tu#PqjkYus^5fDNmJvdC{Xh8nyE zbooiEb{4sq9IrpEKju}Wb{CO`c)Gm-h%HIzlZbe(Z`B-j*SJgc}!A* zyJZPgCK-T}Z?WJ29@n_xm~v#$OYdi>Key%YqRCayIcF72Mn!mgBf)fRu-&H=KYf!w28;xf1#UN{w>n!or-Dd2PQw*Ez`ocPjv*fVJxARC$_^(6xr+=4U-rGmL-?7x&^2;wXEGg=pqInG_ z>_6g{PZ_Y#FhRpU#}mFeh420N=Oe(T51PiF-{r5NfVi|iEyZ7-#)r5C%V%%m<5`!_ zhV9AVwPzi|hW@|fwLh0Z)K4jX+;**uCtb_z#s4w>TfG+#4g|)2+{cK!0N7Q>iU0sC zAD#k$%ZtnZ@*zO*FWSM7vMel~VQ}eN9PmyQUI#Au$GH|(Md6xi-z{ilH27?iT84T7 zAA!;noz_3_!V#%i^LUyyAj*pvXc*Tia0?^$Kwt~L_*Ze!qhrKjyz9G1&kS%G{knI+ z2n}VM@qR=J{p0;nR`18+m{r})5vjm=-g4)$wveG#A;^^{=a;$}uDo1t}j)yzK_1MtW&8D-L(&vQl`*il-_>+FcDLmUJ`9q#|0-QW>3NeM_7mZDj z-D4zCJcG2o{e>VdhA?yz6Ey1sdI|*2tv2h9_moPWTx@4tg?P`n*@lk1m}md~g1O$D z)xZL`mHdQqoZ>FRs$sXQuo$QmnD}uDv*5kG<5uIEyLcu4aQDS)m2ib~`9`8DmEl>F z0T!AixKM5gy=4d}RnNWeRIes&rP$QvrWjB45Di$GpX|3E1T1CJJeEZ9=!7X;ej#ou`Zw{E+J}#< z2}Os#6q6>XvjQ0|+AR4#6vf$t+!>)nX&R{otg#orIP*IFjr+4PQ1hSMi5roRR<|X- z;6JK!`hkY0kQtl4Mnc}drFV(<;hOi$+uqDBkDYJ#jt0MI_KwhYh`(T6$4nuBqMf@f z8mJVhnV2GuD%|2fxHj0t3C9u^dg*awG=&hzb&yizh%bt47P9NS6lMq99iX$cPR9x? zLz31#nHT(K1a^gRpTBd@(gC&Qkxk_9{yB)94tc>kvs}{r20#zd5=#}e}9$H_Xl_vys;Z?XqDlOypCY?F@$#G zU?h)qEX8V1;Czi|%b|dJd&9p2sA%vO?dw=r)sAT1Qh$c4>Y9lc!-K{*kuHjln?uL` zXYy!nGEZn__Z9s*Gs&@WtlGCGW@3>7Hs*etwZj-P_Tf`3=X0SNTwi=4bp4jg#*ZH# zYU?Q~;f{@4+-9p0=`lXbHXTmR-?o<=apgG7h~KFZmsbts@*+k)P|~G)gYCFC=h1$O zy`ntwIwisWHDe%z;+2ceo?mZZqib!;nz!6KA^8QMZTNO~D4MyhJk!D19L{S|f!qwN z9Yg1Ihown>gbHrVs34^}yp%dP9*VCGBnjvaS5<7wsqpmE@}%dV@i_VppBBYuF-ZlPv*>B_pbQXGC9X+v*VRkBKFe$Fyz8G|DjQhrHn$Q*?JE^zZa zXvA@GUXIp>ch6E!ZE@r42Rxf%`DNTMAUC3kHY=K(;yXMw>g+UhjR;8~O81Xdl|P!-f~VK6-{8ZwGE zMo*_2=xgw?dqPMSJ|=!c>2uQjng8-d#b*KUG+UK;X|1W&(8M zL|jK{G$jD*-2Dp-uuh9R#qYlFT$zCQKkC~KMC6rV_P0iA86#vhA-rHn&kLp`)Aw02 zEAq#?A+yKgX(0Nv?_t5KbeZgvo39UU?5h0@p zxtkDPhx0nez7{8*WDh3Vs7|pQH5O4Ef&fivGJ8e5n6Pu@JIa}L8BGY)JTgS75MLKi zNGSHWK;WK`kw2!VeN()U@SrC){+`C(8jg28DR4y^l`V1F`v=VZvf)_nYZ#9ATb|2k zgLmHGe22z>1wn66`KrxK$6 zGI33p^nQj`HYRgI_J~N`ZyC`WLeaU;k~9>n&jVs1-D4VyDkL0hRQ;jIT-8gmCaMcX z?pmbLFX3P?hq;~)m28~eF83|yE+cE+4?V=TlEx((6(D5_#M~iFLvUVf;mO09Z5l9w zW#?wbflV9oi^yC%N_IqKk2)7p6*XXu zjlH@tk?n-qLv3%cr8w^^3xPF4d|NkPO#}3WYIBrR_)Q+SUiF$S_E$XIcozvA{^}KVsCM7{x|IpZIqRsjh)TnXa3C^tP%-zO)HO}nN>AbY3 zXWsNbGxOLqU^JL`z3JHnnw)#RiDSCic?Tbv3eePaCtq_TRRkm5Shc`=cKg@#qEQLB zk`O}~C%0K z8Hq)vs6;ZoQuS9$g^$1Wf zKs!=>c8Yh?wB3x;8>-@seuL!9JXvcx12yxnkTeP_xcE;N#2XAQX-LWxBI$@B6T+PG zH4{+zJOP!AMCF?Vt~9aK@)osR`Me#QZ7c|Uwy*Y3@)_&(1x_lFGj5wReuHz_Hkv6U zEqI;Cr2Hvd5X-s7UC;2^1WR+Pl@)cUN|O|kG3eca zyd!V50Xxzi__1xtJDD9wxUt?-iWN&I-f@aQwEg%jA(R%U^+Lm81Nk;F!?H|C)$gm` zBJ*DLPEuCu5wip*e+Jv89H*N&?@*NuIrsH4ks;*1(M)9GAq6_d_b?Pd8(wA$tB;A# zSW}Pin!&%8^*Y|+Ai3G!Mk3zfOzgmQzvDe`ms7dQnb?LJ$SFJz*=kLlNJFb{yV_C% z-I&aMWzcn?S8Y;=QkjVkn9w8`?F6*X zsm%4#?f0GU#S_P$&I=rFweJQVz~lD=vvw0f#$26A;@o751wTXds80)NC?bkS4lOB# z^L-6wY*-NI*cW?Tk`ZX~jfLQ)`E_h&R@^6)9M-|ZANklH*&ofp+t!e$w09Ak;LFN- zQj0f-6-4s!pjOfjTlzdQJFZN)Hm^K(l7mE*jquLd+>MZz<&c_`{*rm*%`c<-(6P7k z^i^#XE8oedGeFY}7a%eaLH@yB$LM?n8803kbngVvfrdPn>x^6Dj9=wkrXU8PvYY=n z-K~UWEM`Bnnqvt@<%e?2sZ7Y8pn+0yS3d;#J!_dWBkvT@2!IxRkC1T9-||4$@|rCw z;#mwj_5>meecix|3HsedW?~jzb7vN1ol-{zk%VNxIdg|o%n(*uO&<`oFV4*G7Yj)* zjnjdHs^#2W51R4R-ajG-Dfyl36n7@RahkU0-d(|%0@PymO3{!_;kWha1uU0| z&`8k%;>4x2(y|m5Bq>_6^M1nE^WH=1F`}AE73M4o zH6F}!X1oA7;efpF9aRd#uk<(W$WsD0lQpNw9YhU;R?mN0j<6U2_*jrc4hI=0*ez$G zZ8jXvGA64S5JMU*O%dw2Ck_rC>omWDH6n??8MY~V*ovlTD4BTp@(8oQn|mJ}G@L2u z7D5OYF$$-4!Qoi%C!E&4#Q)pMJnX;7K*m;|5R{h`iK4eKJIQQdlY|{xxzu=*zRc-bAidPBDAEqzyO|#7t2p;A*v|FBHnx zL~Q1ZEm0@xXFD87Z0~;FBpURScpJO;IhxRf;E`sAZjCna4J4)%Rt%yj7N%a%bu$XgVjRK$C%Gulv~h~f z@t|)CIZ|LYotaQP&>TG)tHZ&O;8*yNVz<`)8+Mir$SOd*u;9Kqf*zQU3X1ZWWB*KLZUj26mpijiJG zMjJTcb+?7p7&Jk_4GesyRa>dqOcPBfO4&szl&>jR`AVu)a`I_PobY-oXpR~x2$}*} zJxoqpa zWSWvekKl?;vL7m0^=7r9)n|HZs1e{BWlJ4)=RIa*aEk)KFo)M54{I=i6P~r`pK3LT z)$R7m&IGwyRrvy+1sz`yFjJdG&4BdueyKEU1h@KLHa)e&ryN*LrE(OTwpFtzQ>+lf zj3vkyXFZ9IEc(VleL+GO?g@IYd$>wh7^f;o_CGGML*Da9)yMyw^PX^cB zCLtgk`)$#Q(kXVc+gB0U3`vC35b0vWx{&{JZy4Kl3?{wT7x8n|@SyHFM{hWv!!T4@ zUscwpDsa4PF~NWbocf=aIn`~B_d+&P;}pud(Be(vD&Gk>9h=7Mtw%utXXqw2whk&l z)0Qo4F?=R#kyt|o+58=ef0j*xpUE}+Kg+dDx&CE6G)imDmY`EDZmcp%d+UwpmIzAN zS9kb1&b+%bj0@Qm+hf`!}eHSrLvTq>?aXXp41@rErHN2er zeYK(ZWlDV+o(9wXi`QU1{KI$6iN-=W+DRQoFDbg z43@s`#9klj%JqTBTbhuZ7hV@Ac_~ox8X`URrkEshJ&$J}CnPs!Oqe-p#}|R9wn^Lb z%F(BSiQoBHA?5kN->6>bjpTXcdu9Ssf~)3W)K-_5uC05DLaHEF-h!{IXG|MSr-^T4 zpYUyG_7`cHM)M_2#iqtx5?arajA_&W6Wa+cw81xj4Ww8ZEaBiKrcTH+5ZQ?kA8+nA zRW7^!THMigoz>;c*f2!qb5lGB@7T{!nwhU}`JJ<5%`tJC^Q-nTk#WsT&NwGII-S|= z!UcM3K?$7e-)-Dm=*<2DgvuYgJlp>doP1E^1s+ao->=t_y}(Xcn7h~?NIs7f9`}GU^-p#=hK}z77 z_%=)@raBDJPdR>`F+e-a02wh-dYaS#Dfs4d>;Op*Zw3gYumkjKw`k$M8K0RKs#Gdl zgNVO2;9Rh4L|mU5plvFa0g8`_1e!nA0F{^aT2IaDsvRJ#jk@Quz{t8dO>7K!1R?|WH172Sr~=*=m#c?g;B z+ipU<3w`n{Z4}8yBdDluLW0sO^CJcG9>BozDBXZco9~lRG8M3mo{^XNLsY^>J?MMd z7P7_WT_89}Yimo~$=*Ket-9nLww}`}?H*s+_d#4G46(xwzJ^DGQpB0ou#ryqb#EH_@-T(RF;% zj-k)-bgD*fw5c~cRcCB5A*XCNkD)uwqhODTHx;45CF8JwiO5wvpJ#k%pCdo9&vSFZ zAX}A0jH+R$5bid`j;YEhGKtk(cUY>14a-cY@l(1J+(0vyP~LS0AA}i-eaXh6;(ABI zTjhFj>yQO-UOIrW0*G?Mx+Pwk?{C8d{iY z&FwZBnU_N7eQ}xr?leAaw3U^OwdU!4+-fhqk34F_AD42IIr7LgJelB3Aa7&bhBe+| zp56x**zX6fv)^+U+V8nH@FdUk?Dz11!SyySvr&yxc?#7Ci!Rc;bP1KwDZCoQ6IPNZ zp*&q~o(7(T?NZpYZdj8I>s8olH>`yxGAG(nZ{vD5tks4=7rl*}+^{(cgU^dA@MSk} zo*QUVcDsRhyMd<2?QYzQdhX2bNGa8r=uI}cTXyQ ziv8Z1`krLJ-${Lswcqb*`kuQu#+bVWml1&|%;kSWZ;skvGlA8H;WjSah$4M+NC0=A zt-dlt0&HWwZbUj|mK%_6?=BFA0kO5hcoDA}Rtt{+Lz7WPKsKK?S_6@+T}tB3cDz3> zGqzvT+f}IJ{f!s3ry>*no%@}RRV{v}WA`hBO|p4@ zGhA^UOJAXjyNN7DnewsI@$)$?PRG@Aq#@ftjx8-j_wdzmhfLOq`;(rpm{BtQc$chu z$;UBv36&k+SwLz889O_RUo^3+$N&%PbnI_|8SB<;Qaq`5DO051O6q~NDp`B^$)m(^brEDPc(`l2?r;i*j_ocyxwqggM|@E3vW zeqy%}YiS5sUQ)Z%B@l`jA}qz!pLm-_I-49`*A>r{i5B zt)7;;J_53-W+QNzLW_5hh&FUG?rK@bTjaRLH!MX)ge{C1z1!)YVekHFYwW7)De^e@GHBWDyvkWk;};gK&e9eFU9Yu@fwqN zObw=(1pr#nXrvP)X(xvrC)y1M0T{?o^{z>Kze!sKcG&dfvFU{meMQdcUu2spQUL8s z($GIi+_ZCSU;LDe_;mG?2xLv$VZm4Yyn3&uIF&Dp$s2C+RBd%CQ9{1rbg=LNuBz7r zk0RonDto9^AQ?-1s~Kb^c|joDMFV+fL3){e7Rz~6t`o929d>z4mzJf{D%ZK|T%n(> z@-CO9MM?>W?Gd;guq;JfyhE3@82-l+nR*?m8mFDKD~JAyq}YDI zp?1?E!ZF1%FISG7s#2Wl=V4{F*GGX@=C(p9Np!|Mo-n@DaY~ZcUyHoKFRpBRdl;I4 z4ubG_(ai;SeT*&k8BSqL8}$r4Dg|%B7*kkPbQ2eR<~JFDAu*0cj~#7&sDAaOh08{9N_k*U@joqCe0 z_s$*7lgE5L;MWNHZ8h&2YZkSq&1>a0hv6-TyI5tm^5I3d8_-mLVl0`wr`$p5bOyqD zkYcuLKwn2+tG@k06;m=>!y4sk3VP0bv$9q7ppc=ex6!I5>4T~xPwqt~PnQ81SRMvC^L*4n8v46jMKUs%Jq-Sjs7dF~*fnJkYs1b}-h*ZWIIa(2&PhmWNJ5`0U z`j*isM!eMq8$eLVql)!5-e3~_cC>kzGz5mt*HiXklF*pOmlY~~OflEH**)3n+}oIS zY5?tO^4%Z+k+M6L@&j&fPNl5QOgY6(xjmIKo{{qFnJH`Cl!;Wz){K86tsh zma$Wl#ljC?2s%UXDOPZLHTI%x+b*CgXGoVE5NgCQLJwgaakoN?vFU%jnECC;rX91D z5-JwFTin)J5w<$_WWvor+)qT}0rvMP|K%&>iJr?7zXGw+jQUX#J#8fQlQ6$8?t({D55Z0$>E3L6saXQKF@&`os@ z8URy8a*jzaQ%WEq@h#bjicLKU)tF5Ip0Bx9IkfEDKTcP<^sGTWgHWD(A0c=QNZaWs zuwWK};LnAw!H!K1vG42*+(|~NnF=iE(zyXsAl&C_6-dB0QUTlDfYVX|apeoHmg#Tq zbQ9<;_?dm?>KTeO-cJvR{Q+NQo#}`(3!;-0%59iDAZzL+fsz*aGV)_#RN^6DT{cd_ z9bc05k~=oZim`#ZLFhG7SzERAm$|7Yc|nq1zz@BYY}%1}+x)hARt4{mb>doQ=I44y z_*s7Zk&fh3Bm=tWtcuqpe@jX}(5w}&O`cASbYuxC(#+~?%GHF?U$ScraW%_ru(2~Y z!T&=r`L`QYvo&wp+(6IM+US(_IoYi?!Mbco-mP}B^gKQaDrAsL{3h)!_;0e(VwjT3 z%_v@3d>i);ahkHhP&NXa*4FBn-m7GxXQUtc5-4W3MSkm+b;c@#brae7uiD_8wcDBT zOO?%R_tN%ZnY#?CpE&^?8vBoyGq-qNlE2*ei*oBR5fGSw5TESontraSX zS_>g`cY)jM1+3WW^VpU?)jsyARa=Y2Kaf9Q67UZRPz1G#f_B$nMWqlT!uS1|yPGT& zX#0BoUcbCv**kaU%-s2N=FFKhXU>ttaGkYiou~uV&~E;MOZZ-fF?v$6b#Xh^m)`&& zE%7r#J!^aiE;3S|rrue4=lvE44`r<8D5di(JbJIr%z$Ui0+~AXMOoC{pW4be=;KW$ zf4V7%y;a|h)}s3C`rax%|^;9i&pX zSYLkUwomp%4SB=>DSG3rL|=V&CAC!F+_nNFc-^=Y*6XdK&8IWnbF?5d^#P;F`=h(iCP&?ySttdLKkuPJn( z51~E^y{pjXf6%(LJs8hE8P~(?ZONQYKP$=Qg(EiGa|?p2ANnf0B+QG-zDjDwDNvv@ z%efY%Xna6onld$!$fJ&5NT1SkBYfsb?mr3v?f$reH2zN@`gZ6zYK4^PzA63=$k9E#S$3|xDSE)@$DD!Yh>ETdW%lyG*FIe#c zcty@lV+Utgaq*3c+Xt)2>Ex1U`anFZ*e&ktgU2kNmJQuQ;--Rk5h<+u=iX(cnZ<;@ zQyg(7VcEKTc!hlh-cQC1mriPY48=gK1DE;3&O)^tCy=p&ReXGj#8&gXrPwrwYc&RqGjIhYOF-z;YTxdwhUr-AbxYSLbFAxCa&^wOZ{bX77H zP?;-Cl}u@x^%1|zgzABK| z$2hmB7yL6-{KnqFcjTC@WURS4TJ;WQRmk*ksh6pfOn>z<`D-R-fsQ>HXrJ1WEYKo4 z>8Mt{obCnj9I(LyCjU_6=8L-A!jf>k4qpe3@pIy9S<8meWSOTESG#`%x^{u{etsL^ z(6jtI38a^#z>rt&AeJ6~X5e<3i;f;Hrgk&WXCx1y>9Pa+|U>!8Lzq zHMbdcg`J#2Sd-BfL|2Rnu+AF1m9FA8YCebvPUxP+>Hq^<)@)5^#`n4|pDvvP%L9g? z4ryvUjv9MyrFf}eUjK$Qj9NW!4BU8%UJc9@R!*css@xRhH z$0_$Z7%H`>KYlWSNOwYcc4ad?kcPy~ix}LKlvP+aSC)9yo1yH24B1e(d!HOo6Xigg z+Z%l})(`aaW=tm4s{PXHG{LaOV7$>xY6F--3R6rkK64jN3w%(=X6#2%n7aC7iM@C} z%j{qxPCWFI zjl7KP=K8OBKw)+KFzAY+9upf-ijWMAa3+bN5t!m~epz5yyk}-^qhf6%WYBi@lQke2 zlkaQPc=nTV?}hubdK0xJ>5k$GXW;{cE1bI?)`Nu$(<)lSFo?TY$ltScWpM!2%gt(Y zD=URS7J94AU81urV?k$3F@u0uk=2T20`g*(D#$$+r+-MM)iW65Cp7?T!8JzvHIP4I zzaDA&8wC!bTjSJV(G= zx+WVkbw%+%eWIsyvxdD+Jx;KOWiMN5SE?_t&~x|e`P>bzD{{a7D;CMRfE)a|-H~b} zktgZr)l`{ zKo@slz|#zihXSiLOy2lOL1e@RxxGbl0Cy??Lm)E~u$Mq$N_@Sp760=*yuOz}=2=UB z36Oi)5x$&wRQCueF+(6Tg&sv9{Z{;@;JG^9AwQoez}>ppMoix-a?ORyJu^) zmq->`@y`KTf&E(8i){Lr)%XF{(!;`dcaqG?T8Rh$o#tCs{5Qa**7KwJCDt%8n2r|T z3E9qRV4clLHJB|5_?%|l?dMXL>^pMA%vEOEZ`jMQ1z>Sp1Mig6V35usk4OxYZZh+l zL_Ham(rxn0 zG}Zn%WWN-&_eJgfmG*0y{UqvMn4-99DqoQMCd~9iv6hahc1o5RkFYi2`B3Suknb%D zXJ3Tz?ht@Dhn$CtqP0(9i2aoXPlX)56LI)Th>SIIw0V2DbbZKv(6mUVpHf&kRqth% zH~HpG)xCe@$iHEv>m(rm(f*ZfGnS_?L*>jJ9Id)0AomJd``nw4M4eNjRoh}8W1agN z(E2jh|C5Tcrnv(ycl`q+EPg)<6C3*&Pk!|Tu%aKer6q{XU|sUY=;M34E1Gs|E?P;yh&bs|ZMS$+^7Rn!(mVwjHNY#!Re0-pFnL+1PuWj)lls81>zZnJ!K_ zW^cuUE~)LZ>Eq>?PL5g4GOUZ`-?V9;XjyaZ&y1skpuJvOwBW2X#V%wJLFuA^%+O|^Lg8}o`cZo9yF#1pJK+-K~QeV;=8C3hRLZ;<9KUriI4gu zh!VfRF@Y>xE(~F%Jc#QC_s_(mp_+#EYtQk;MpAQ;zJvzi$fLztdiM!n@(fG?Fm-c} zSBBrD7b^YA%j?JYKo;iw%U~vd$XfeFeN`8UF$k`Xfsaia@aAn`KiRT?YDUC!l2 zQ04eppes-pcYW80_%7JzJXl@={jWVT- z1IX0#ROt%qHtJLvdcT@dNa3tNwkx=HL3ze7h&IXJYP7!GWG%h}(Ku%Y?Vi%iqVMvm zk8whVeGGPzSyA9j}A7c+c}TdC#+-^PXq4de0&2yyt)hJ=IY^CD1uMt6w^Z z_WGnf-6y(&k*Qp>6~ErAZUC)8bQ5VFI~WOAd;5Zy-o8-otiI4IQigP2-1cMop^bu? zZmsXU_b9W@%b6{MeL`UG#DYmr{}`WXZ)IlAvKE&6)Oc7~<5FM=0f-yc^Rehv%37X1 zSB|wWFHK;nOieP+XUx52+8HmA?12Dwa=ZW3lXAJIo@IgDyVZ zGuvN6+h5UAGJ8wYJ1ir|t_-5pv)|z#ntUU6rKi6I{eQu_W;Z95C5@02lHT-IiJeAg z(u)!~hG@@PpIIq9Q_pI-*b#|e5~Wx&!b1hF%2iJ6O?*+cqs$+F+^im+FDl&B$39~D zn1S#HZ!J{TvvG-br++A)-j&H->H7cs=-U4WD+!z902SpCDWK4kttEm9@KavY<9ez& zXk1Snq7l(5mM^oO6#D62d>QESMO^KZO*DjN*3zxK^wRm`!Q~pbhyNuU*0L#2`?iyp z$NJP%H|^vwc$sRd8=YBSnzg?CQ`PW8bvhyrwJ^*gGgvKT-VBVdXrvAm&Mo+;om^7F z>Jov6!|G+>&mvXt2z!D`Kk}BjUU7JOk!@7T|MRyv;qGZoAHl<70bfk z=>}P4*|W8Oh&YrFDLZ>)HP`TMB-(-Vd<1!3@bQfvwHmTV0m$86o>=QRpKvDbjAR-p z|0NG-z$@v90e>XWdA?{q|8J;55TWMnqWf5anz9|b|EdVt%cA>IE$!^9cq{ z=jUoK89KE~aJu-+-qJV|FvOo1G>Ehc0AgTuQ=g&$*0txUuaNkyb%yxYdc?oYsHj_u zWM37Cfv1~(;?jzfSzkSJkSvs0jKO|^@3s*n!8GE7;nk*2KNm!1Z0Cnr5w@m1hm!Hk zb*5ASe5jukKR3S5&-B0ZGYdV$Yu@Fbb96{oIg?pHT%Cj1P0|~_B$Al|r@ugfvz`^W zVJIPtfEd_m1dQ3m?}IqdJm`c9gHG7nxXKm(8!th;`<0^J@L>qN85QgF8DbHlH9>p- zup`9$A(h-H%Nv0QSUUMq1?p)xb9sX)b>rrRt)5tMMzel|Gpr7|Y$ zjvOeg<~+gpidZ{xq%hmP#b@Zr!|I2!_pPP7nIO@szx!S^Q$SuNdLVO;hLrER6F}x2 z4Y~Zpkp67Qy6>Ezy!@k}aCx1sU#uB-8NF4^g6gRI44X-AeQ6?BZPt>Em|qG61LJ>E zTOkY%gax_IGEB^x`=FZ5o$PPeX^tAPf1-PC-%9&!?RS_=g^yRdGcGuWUSzM*z2aD{ z|Akru4F##d$&BZK1`5K2G9*NIJO>s&9>M&xNY^hSRAo3D%u$v0K7DP#lha`?eJ}U$ zed+nX?qAOTYncCAy!roWO8Wm{{(m|WTL<&ErFZ_v4qDdILmXN%{X<~sd#?m-PUXD$ zzXeNTh5)o@<|`XU2tcy{H}eB$&^tTQb7IyD-b64203Lzy6A&gIAOP)pV;b$u6bP39 z0a%}&42C}d#K7((fIbhL!h9Wg;iV1^VY8roOKG)OJrdHKIJ=>^D^bZn6o4}j1tk)yr&zB%Oj2eArkduKQZc9~I~} zXbp(g8l_B%bt6A^NFj5vGEYmVOpA5r)zlKp1#EBO5&WE3x4-6kV#^ga_X2$uyq8T0msk3_@p0l_TT4lY=!^3Pa&Eyn5_ zJIlxquapwMM0|5nyb>2PrX=B&-ePuPLJ?j`mJ$aRF4DeC{BAer1}f#;MSL*ekCEHh ztl%y((MG)+iwcC=VUtWLZ=H~ng7M&f8XuCmAk@bRy`_-szkF-G;iRtdI4Rh-VY{qF zmAs{H;796Tjf_;pozJyljOW@@P$xk?`3Zv2AzhKukA2BV>ED}@d3F=_aWO4B{mY(d zS?$z}Y1tGl(R~K9IYb3~8VNKERP+Lw%^|l!z0DyvD7?*KAhS6{@6_8IQcSzbUASIb z&TJv4caA65GQ%SG8v6}}G5G0x*2nJZ<;ZU?GSe;1K*Q1_ZRp{kH`cypIOv!W;FRsH zZAe`v@pO;KJrT{z8CHU!R6N4Q+q!T?{3_`^{l=d@&7iC z!S7+k*u&B~4DLQc#dg>4Uo_o~#pB7+cRpHgn|6)NL zW0sINwQd}T9cIB`nUJhy_6~k#nYH3otqJ^d)0U+#z_=(KlR^XUH<#+P{NS9|n$<-7 z^o}$GJRCSOv8Zrut(cdTj{`aoa(1XBpxrjxTnN7r-y-dV8#l`pAJ@0_X>0nc;-~dZ zFqCL*?@6AHICU0|+g>ph5H&)GDlsnK(c8edxipme_Flf1X>q4o+_PNcX`1zaJ@xHn zhYfc;%j1dDE#7TfEE1_UYUcp=OGCN2irAo@cmbvxEV^jmR}x5_271K~=2^=Ia^eGV zgpiHcoO;t7|8Ty8-V0vP<=;2<1H>{9`K^QvJ=H_+H;Gr7+pdvgAv)Dfga$^WUv?)yLeUAg+m0_n$9*lk!|=ORPMt?&g8 z9F){X&dpJEF!J+XDLk0Le6P_RnxMr17UpshVI#sDE`Gj&CY$Fq*mw_K&(>wDh91$) zO-+D-DYLp>jvdNi_%d=U?b!I0ClXKP{#UZ<`-(!qT!-2iU2ZQzo ze17826o)AtI3@{|Av^t(Nq8&@;^(DY^&@tb!B7dG#QSs~cz4&^at zE1$d>jJ@Hn66VZlruv9fO=MchH#4vL32F)$3TFSn`}@{9>VzF|hs+<)!3>!r&1O$x`naMSY#GALXB9 z;hqS?7{TsHJ>6yvTqRZ@;+!$QRF^znh}z)-^yMn54n~|)BDVVwsX@mr1S=}55<-sP zMeby(YsFVkP8f%SY3u=EbfjuDd3ugq`Xl2rD08#n6EpZi=c5iuM_4z%pGGA*`W0Dn zCyA}(%^U&=XXeN)q-e)sMnWURPXAxyOri&8{(wFnAHvfGr!Kf}+X(k=)EJs+SJ++$ z&V=161bl~bZ~gu_x1>NQLalaWu!b<0D0DG6{ns?Y7$h?FQQb63C&rrS6uxB8Cgg*n zKH3iE7`zEa*=XWn(fuZfGkFS>+5WL=9xmHn_Zbpm%}7A(9}9C(YOFgY#KBt7{*h28 zJr-cl&t}R5tQnFDJ0V1>h^?8*BgabIRU|aS2&f{ z`#r-LU3&LJ{yX6rpy?m*PxB4&W>RXBPG@vxZL7Ar84x*fyJc@bUQB=-3e1N3LyAes zB?5YX%T6Yv%DCly!J2?z2?(igc^|l2-T)@sBOjXG$%p7|olEKvb9$108fi#YH$yOI zH?*r;smC9wqsBySH*LP%&<^}ZNB}@=nk%=0mj!d3YZlx7>_^4 zyM$jngjOMZK%c_ITd`L>a zP>`C>IOB>qC%^L}BJ6ge@@h`GXxz~GeS%Lh0p)@qWKWrwT>ol*juW02wGZMc$9i-f zZok~g34ihd#ZL$XoqIHm?KUn3t0AXz`2{~<0sMoZ+cInO=v7`9B8782HP7;o4sE1vUbx4k*a2j^0IaX*uzA*HeEYTY5IF^1j5RzdQSL-pOGU+&cs{FC!vA7(|??nS&weU(OT1+`K9eRmHtl1 zTGRFvwu2eH_s_&ulNJ91wF$Zv$slXSmS($SOIu=dh}|(`AA8dm+qr-}@~1X0d~?xA zEEP59)I)z}HU5R^yrJXZmTv3M$PPDB6Ljsn@GoAH8*JJg2sRx;5%8W#)U49IM@aYN z5x%+b$YFjL1ge*J94y;3uRDSJtucH)>Rcy>q9@p_WbI~p_7Af*Ul4!%l!eXTt@_kg z?e?awqO;l}_XZvRkH*>|ryP4}?725B*ui+K4q?Zg#-oC&FexIgOCvNJ3W-cMebZ-1 z>$i=D-73Y2xXwnA(k%X5j{y6;$lHpofhDVefQuNps@OcwT{WC1O0qTmVqF0%@fuRH zh}B@e5wR=hDEuQJ2+veF?uDl*yvPerRd|UPo}}=Py>LWf-LWTcxx!1m@F<0sd*R^< zOU(nAVHH)+^C(t5;u1bYaSP`7S82Q>_H}_sRpBZ|5mlyhSB>IX=}syJq#)#sTs4~a zsLigrYVfKO15>hU7*9Jq58u!@kR7_}Twa0XmK>$cFG@X6AblQmF~Kg&eK4O49g)^X zUh9KT>UUw2eyt^10(wU>;!G(HHi!qulYBwgzN{D&YJMuG9`+wRYU=8X*rB5fQd8L; zD#OCZ#Frp@2SdJYFBhmz-UXixHYm%&ZvD<1e6b>N(LyZ@hZe%AHJ;ImU@1niSIw=c zdI3l3_I2|r*mj5Qe_%(xLd#Pf8N&99QHK$7!WczEXX~heCm`&6Ib}~!G zK?t}7Q(-ry91@TdFi!P3*0R^w8IhmO*=`<Qzx28S#q%bG;!I{BQ z#J}T_QM#9<=>*e%OB?Q~aFHlN@rEH32YumB?G7&7Em9F&xSmge4Tf5D91LzbMBj^C zFwpu^(6=5^k(=5|U6#X5YVl>MHTw~`3Bzf^DrGZBhWBR`o-Y31a2cu7Q0=2#OoGG; z>Kci4mOF!2(QYC0V^NS<2puw*SNMJ}+^(?JBw*T@d75R+AVQj7b~r#tvx;vQnusD$r>nwV z7x8T;OCz)NA?a%f4Wm`_1LlnF#@m@LGsDi@;dX6-K@;#H>{OvbIaerx{A-FqOVh1x zsBeLXa^1umv<&&WD6ELAiZXcVMctl`8YW~T3d~Q(>`cdyPoGr2?LAS#dBqrfHra%| ziZS?XVl)dBlkCZrfobdc*hOiWcEtpJ=v0KK5ruJ(a5+y+x4jiw*$9Vy-I{f5B*M;> z<(dsRJnk2%s`Qh}MS+6>U(-VPMrOgXztgn~5AxGx-FX9a2fvN%qRDD4`88BAnAm77 z`6hv0dQ`y;9h>h~76+da5eY+;g7(;Q%Iu~g@*qN1;TSz{i0IQswwlLRh32d ze7{{e&zWBU*|M)I3OV1qJz91h^67>ZUg(rO;76^4(s?Ei!8q<(2=Pd$;)AG*Z!jumZAUF&@!#B_143q)zE<}ah(#dJUv zHk@gGA0fnyAQSz zjcm5pA?EUaG+F(W`m1RKtbwbA9|3$q)f}-oc{=_8J0HxnkGefZ9Un?vZ#of~GkkHX z+fx~){=ug}r<~LwNvtG)$nJ>LgT3PfKb&0Mk)Hz>T;Wdf!w)BarB_eRkb22bGxCS} zbv&g`HvMhcRg{pLYKn=gemSsZPc8ZrUz~$FGxYDI9M0>wmP|7<;%p3ya}-yDU$&8k zt5LFe9FMm#Z+K`MndWc;c!Pw^`CM@IeN+MaXg{4Q{k{PWJd*$So-b=YX&h7MGwwaI znI9qWGu{~Yq5MnrgU^`yzsi(N9-e+Y8Qnh#?Xn_{($9|V!8P~AKlr3j;7=vOfeNRu zl%$7^XdDZX2*w%GNLcMW?rgL*0)&)d8mu+;u9p^USAMC3DJH2PQU0 zeaSJ_6aL{#LM5NKp2&-%eD4=tJ~7s(aIqK8Rd}=)HZYPu0^?V_xF*8+3QMj_xR1gQ zd*Qwcw|U_Lg?D@5ehTM+lEC*@SQgF+pQ5k~k`OLbc(NBBpzs_oe5%5CdSQ!jJRp=` z3o}qa%PQ@iD0M?B(;a}bW_Gj5J*VX5s4o)x%v@(6==};gq^+VP?l+A(>THDbhhxf1 zm-7JSP&f5Ye5Z;!0o*(fPJI_&e-gOK9-R6${?JL_&h_Bb=kYsF0_XSOG#>FeCxLsl zziEfYDn9unaDVdPG>-96CxN@ugVPwthn@s(h6ktdkLR2OZnOs{+=%ZMT{%HN5BA`M zH}STU!0qX0+AExjKYS9n^&Xt?Ex!CDaQAy~!o_&aN#JULOI-;-@~P{fAwBEWap=R< zgZ@MMu;~Q!p%IMs=)<@oip0sZ=tDk^(2t@I#i9>Uj9AB)k>LdNp*nU^P7jT!8yZ}# zIfllaJPCIl%FS^@IV{4D=2hEy)v+Ju<{%`^2Kh@b$k^O!oB!Ak{l@}5mIdSo$PZAT zV}YD3pgsWg0jS_upz1830)Pqt>VGUyFbk+ZK>YzKJQiqZ7EmETg#ev;EYN|EdOBe2 zsQ{e{P~cdg%~?PJfC2!Wb}Z2Evw%(m=rn)^9}Bc33urJvg8}-)u|QQ>K%W5U695$* z3v@{qP!T{y0G)m;(5JG1P6z08fQB9mw6D9j3x)zT6rj(r#l0Vt&&CAEadEO0U?E)^ zX~rHV!(m}yq7LwE>B{m9eXbq&PqaBX=bQg}HU7qxk=P!V*NFQAc1q7hIOprSd+E{H_&&pf9I27D3`8@Z^OLVaUSXVaFt#NzU302Wsy~zVUzX zUya6|#q~YsL;s(Aul0Ykzjtt#_r33De=oyg^zICf8(MzM`O-tQC+mEvoz__c*X-mG zVxzj(d%9{h@Av3<7{!FPQ$>(qR1)G(BUKBF=@@k;f*kZ3x;U3=w8Jwa=$bR4o^WvF z)On10 z!kciiHzwlbpFgm#1mlAzQQAACKdF%qa^WOw9ILZk$~H}sjiXr|-y6*E_;~K3S|pr*;^7)nv%t+tG!fjG<=%qR0D2sut$d zkoClGG;U%0*}h9c#ni}w_xuG*)7_O zoH=6imbdX+UA3PL_kn}*N^LcC;dHTSr*`QtNs^Q{>vG^_3FO&7hmZ(LYK57Xmf)7d zrb9+j33WUQvc4RLvp#rE+456d$XOyudB~>kHq;D=t-h8wbji*pPq6+Fp%*#a79@QT zaO#EPG-RnPEJhK(uq`6>Is{}5YyL;QU^T2-siz&Ds`MuaJ9m5Cw5Hxmn4|=4TgmkE z2fXK+-|$R#q#ce3Li)U51Y(nhdmbW8kq9ap63>|U`Ev;W{Qtc8QHo!yc;X)Ro~v|> zN1oxT+G7e^4G;d2XRKS&<8GwKt!hM78+#E6V-Z9ZaTRe{)UG5Swha?YfOgD`1A(S> zblKsXI_Fg{Ps?BP#ca1W0#lDp7%k;Zw-IqnthMv&OiIrDEPWfRXiy(z;L)%$ubuN!+`hw=Jc?`sKyp{&E+OLSp6+Q?#&?Gjaxj_MWM z-r-M24e!bLHN~XgXne@&M{i0zI|Y_J=q{9eHfXmd8gE}vQPrB7Ek@nDcfruxW6Htp zX_9}bHo>NYeNm|JF(g^z7xaWnp7=X#RUS-zgF<@gB>Po9fav)4a46CCgZqv`iqv7T z14d5447=U&ggOmWaY1SqNs=enn^Mz>$k5wRzqTK2PfaAo%SRuAoRwUd9qiJp-h7LN zi+vTSFh+b+B&!)7iG}y#=EsO|W=e!J`)Co)Or$sABJSKql%|DD($M0vn24{ntN?iv zW3oExh(c~h>vFb7f06gx*|#q%tfARnJS2jngn_jI@3lDnTI{_JPrvd(Z?Tn(s1_=M zjHsP7E0A8S1L?&&kY20<-eT=OI1E%jN`&O~g9zw4h`Zf<;AJb)Zmrpjw45{USo6>= zJ8@J4WrPH7l6aEm`&`a0Mj_-Me3J8Fj;x4m)im+7*&VS|z*>SgrkvQpGp%JeQ0kU0 z9qeMe_~u5*V!nXp!hV!Q%**uw>3E@)Fk9{#XMdwuzq5xEST-;OCRnADJp&E zO@3w{;U^k;JVBy$sge117PJ*R8F})y0oFB%k{dgV@q#^zhIi z*!Knp<43lWI=9_qX;hZ=$|AMA*)J+(uTrX|g@z6iky1g}9WZ%Vjat?#`<$Jo$aMt2 zBQ?Gonyi*XSPLI`DKThEnL1c=x0;Vo{e7JGQ}IlZ9Ldk!XVMz0t*wXXk-zbgzoA?) zcWVG^=hE8yh#aUZ%-PM0TCe=p){j)Q`F0D@rrp&XFKm6i+N%DCm+O{YD(5B2`G~A@ zURPn=Wc!XZ2yf`JT6U?T-v($lx%B0^TU7i({()6hRovVUiQI~Yh14!on@qU^@yec! z8pl5L4b-LSLI`XncDA$`Q0Op)-0*g_^_{xP=P74EUTa{LFrxmnF(a z)vo8mv-$Ac&8ikdwy&Lkm7FQ{10|qFp-=5YwPH3Ud)3=asir{k&)G~KuWfYrR$&oi zYi&h8MoJ(af^?9fO*Nnw=WN(+wKS=B#t%=GbcvRfBPT@+cqI7rnVOJ>mr4B+{Xh02 z^SdgMX}QSGt8u#as2(CtCFtR`^5W0$AJjiELFg9S(?eh25Gyxg;vGMG-+? z3$J^5UDx}%henv!kZYR<%1Y6eH)Ry{f03YjOyX}@$s)1&#lBlddVQl7L9dr> z2ZVJtRgUNxiYjf?UvLWWluqcL6k?`=ywaz8@n*L=hn0n4?25FK0xx89S2bjp`%Rxe z<_9GR726|Y25+?(a>4^s>&g8<3hU0xS(>GcQZ>ax2zeoQLxT>1UxToRr0rQnX?r#v zERR%uoz70_Yzx~i-2r=GMOj;IDkYiTlUnOaz4L+NbpxL=OGc`V2AXQ#YnWY-1lC%( z7((xbxf4s~BDB6$^M=6>mSQk_#YAu3%x|Z16P+~%`L8W0mf4Rqz9;Ly;!~T^MA-)R z)C;eura99MrLUEy-s1o{xcUVpxkKJ7H^&6!L5>MxFZptkr(Twig-RX5lG@>=<|_3@ zQZrldlRl5xeCcGG)P&6 zy`4jxpxM?&?Kedpk`w=nvYbDwrz@%!>+`{~7VFNx@u6U8OGTQ%RJhC3*OgWKD}9(| z*_&MXXB`9?_{-fpFEj&TzbukfM@rCs-+b#$of)0+7rNKp8?j&3+a|UgL1(eJCT#3Q z?seh`RV`>Q7JAwjn!!4U8$5~Yse*(yHx?Yt%PbE$rmgNcD`G!5mCQ&1pe=m6dAyMk zIN{rA9$$;PT;(;*TvA{@>viu3QTq*)`j<&!z;m&7ndvSvz`q-yuFn*bJeP`8W?Gc) zQ2U^P{MFw%HTvh?Yo^an)_XTRaiZQUCk5>yulJ7r)`Ry_Xu7t+*2PALRNt`|YtPC0 zbKAFxmcUAX5yx~*>ibN>;OdZK+#!Fw#31)B9?9Qq1-VDiVZqhL3Z6S;g_ruVQkRe# zTs_mv_CqgWw-RQXgauy04PL@2my&Q53EngaUe#mqX5pU4fRuHEdh_(W#2{Dl&bA`X zd9x4U^tz-`$}l@M$C4i&mL*E540Y*;*Tu zTxc{`3tr^aoUnbsWb4tFJ_n9hs>bXXem9I-@C?b&kXVRUNs$fw*&j+x+G8JQAL1Pz z=EjeSxUrEJv_9u6^eCZQX7n;C`mJQqU$Trl2DFZ2I~e z+KG=dLbT`ZQJHp?dyViaZuDBot=j_A_o(hDJ9~AfNk;9P`po@{>LLafu5ZpJsxjwX z)kPp=)U5%p{^G>M--%B%^;g|r5xl9p*fOej%P!R&7Ea2)rtYxh=Jtx}-mJP$qw~=n z5AJW|Ui3I-DoWcE+`=ozSPjw1!_j#7t;Q)-nqrIEbTBvMOI44tqmw6v+$-=&*={X8 zO|!ddvmm9{>g78we6E3ilWt1GOQZE9@OcJaB9k=ymrf4vH}F5|g&*DnAGSMtsuc7+ zS3SLTsVf()b{Gb_ zC+gk|>u6?6#GPC+DQc&ZA=c9Lbcwi*x|PdQm3E7${*physK(MtqluT9Gxbl4tfC;| z?U3VIL8Z2fooD;~?W^mYC17`WFZQ6{^-~nWEtw8VrLMW2X{#VTj`^UsjgO`D$^b}Gj@>qYL4F5 z#$GtVcfWJo@7{FW@7{dk@6O5k?k!S=kME?5Y43|C_-@T{zkBO(zkB|9Ew4NHe5%~P)em z9fGTbTmK${q2$I(vrnnA*2mbMX{>?Y{RhVAod-%9_2u+JICVrL*L^tEh0&|kb?-6G zoeSrHkmCF9U>1OVkAr=ggS8#W+ShY)*kwTuccS+dT#^ub6I^nSrlFL`t+-KdaPkk) zA{w~4Co9{s_T*Q|PMHnaWj5{1qa3Ze$xo6T%r)U)Y>lRaFP&s9O_+LLu!3@X%fuVa zuGh%p0p|j|fpY4u%|Kuoa7VJK7eZg!D2T5e1@X&X2tN?d38LsIi1~t8lF2fuXz!-Yi1_)gg#CGwijrfDf$0B^vV*zWyeUG`TeHY^z4c}MU5GuBm5b7d^)AG;)eK}T<`DzFY=HB7>C z&j)qU%Q$AbHC@lVNr)47Bv<`4m!pB&rcC3IpzlboB=W%a&OaD=MEW${BrGNYRiVzG zRWDC>F_ua%120zl84X$?Mh12ANGQ3j)+RuoppTBNdomyocl91qk}C8(YYQ> zN$oIHuAV4$)4=R*N)94(>Q_DENcvqLW_4roL)Lu?SAiMKOWA+}SOAIZ>5Ak=0Ii00 zoi^rae`5XF42~NL97uhQh~#}=)4t>iRl*%|=qqN|a^CsuGWK$Kf9z)aDE*m*dnEnV zj>DW>b3*M5IAt&N75iuPq*T~1g>Wvu#NeE7Z$?Y8(hoIlUDc}IhFSIIHN>p zrbQ7`M5NR1dd?#wHq=Mw=k~U!`}T+&eeTlAS%AJUxnxvNmj;cQ z*yQ(j`4FG5)V2mjh!9IaXp~JTKjT~Dks=retT7Rb_6lV zko-&ruIA6d*m_*lxB8{G5iWb%T6T+s3RQoPIy6NFRm<4{?N`Mnd1S=?J3c1zqxO+X z`}wHvaE1Ms3cE!<1nNx-Y|dm~roiHg*m{3*)k+#wcA(~ru;VXb>$Tu@PGd5usL$du z@<1)d-2A^+W_2H2>E01XD&5

    F%$7(1%_6`bzt~&NH*bQ_{Dm$`Ie;XxZPa_+|mqrJ#Uq^4Wy)Wc5 zh;}sYg)u0*?1xOs)DIcFm}rBBlgS+r;*nguzGtHK?B>y;3EErPpUZA= zYcRI^BaVS<`a{nPtc2DcZ^Q0RIvjiRV=M7(Vo+H%7m|YRO&8?Yzmve*dNf(~xQKae zVcF9GMZ~{D3ubLgYFTxi@cRU-=*@g zgUC4Z=Q7VDRw&=m(~g;izztoH!>+@QNy24n8lR^=bn=J1*9Qe3t>^(Y-}a;jPW~Eo zo%?hYd6y)vBxtq4ZwgvMEk^dxzgI7)w5v5H!PN|kaF-}FqOmn5fsFppC5p7hBplNp zL0M7K9~wqDDD#uRW3cxq@g5_2*rtE%-$`60^;Nmcx&At-gtMbjV{7KpfEpT*Zf0cl zN=g+WCqgYH`Ru=&WFr%C^8ZYqq|P?`oe`VMOvyD5c;iJc)?AMF2=aVgMOxwf(%zy| zv&rP?i8}+%GVzXjHimtL_?4uQ?es63PwB&*iRBbka}BXuy$T38^+i*NIBiom8+7*i zK3(T@Ek~%93yjF>96=(FJ&&T@0mWYeCqHaLRLy*L^6$$kdXoV+w`1HPjUM<2fv*Q# zYsHAhby)qq%i+h2`zRwtc$W9cK9vu+zOb$Yg6m#p+K5EuF?^qxOLj`#WcF z2;z-5-W|AY*xyQgim$XToBW-$QfIJ zBoEFxvar>R%WU>j+{SXo`pfp#-RO+PA17Y!Mo>)M&thG}kO2{lb&a+Xzr(hH_cc|} z`xrCcB6IEWfx5GMBCj-&dG`3h zb%CD9ONg|`7iHeFx>DAF?8TEfhhe{J{m4yUi zT(vu~x$d`Ugkk*Q4WE4~_*3&=c2mbey-o0AlB>o+B*kvl9#_y=-@6`HxJwNxtk?!B zI8SKoFe(m4*sFw#W*kL{oqP03qvF42RC^IMbq*8*I&v&33OUld{Cd+QgQ`N%UgSwl zV(APyH@0y)*=VeWRl_w^R4o;$c7wS(TVmPGs6dYRa=vsD9Ww?cDz!Zy^bwzKk9+ApC{)mCZ$ zgIT}RShBvPJbt9MjJucnBJO4W5u1%DEf2SL!B|2aM{FqF3+{c%!&|myzk=0#QazB^UsDuz7K!xP?;BM-?UKB6PA3tepE2-+IoB~< z6H38M4fmQ%s2J6oog8j&Pwqo$mZ_VXW!8f79Oe_pdF}LMTP*~F&u#Rk$qIc1^}z5x zZi71h@pOrzm}zK6E)^SqftRLP8hh?pN>UMGys) zmvI@tF@#%gBi26xPSc4yBkq(yg}X>hhwQlqN|E*iF6hUDKHnb3@R>ThwjIXxGRMyw zvY+>(2=9{5j?mHKl%%LpUZmOvL^Hzg*lM=bQkG z{CO2|ll-Ae8r?iu@bJ23fi{a&V3aX01!xN4k0=ZnIEbh*r`s14ETu z_Gt>}2(|@19Zd1q*jVFygHa6H9pTcZFb0D#CYO8b)hHa*`NvV6%@{aIph(pgk{)v0~z`RclD|HEz-osarZaX@v z?MPA6c;^@1#nz^EH?IY)TF2^|Z7%^YB923LFi}$grLI4}VHRR7v*r@t?T`T!w9IN9 zFspTl+ecjI0|4f&_c~woa^XjWIgr7R8hstTQ|1YBXPO9dpo9*({OI$X4dYg-!nZ+q zl3ur@JjK+LvxX+j2Q&tbhZi6PX1lJ&uhR}}q*gRqEjy+Vz?1v19oCQ?n9!G7$O;@t zwV?*1qzW9iw^>7Q9yKtCnopzB<*$8U#a=~qMawqS#I!C~WwxJG&2t zHV2OfuQE6#{OZLkaB4axT7D`- zl3oxanfoEk(JIc-gdu?eiB!e3L1v2Lmnl3GxFt z`7;I!$Gf4jTu|{iIhahYq#8om&lrpx>qg5YRnFk8@x&K$b5b_|Rt-OlYS8m&4uN9g z7<@Gdzt)P`!fMu^h=&E321ixl{8VHJYBZHM*sKimshvlK`-BpS%`l>oQto2^RG?&B z%?cMOZOI=F-4SK6e=3*A#;hQ{n3t;LGZ}hfmaXyNSf^Mixq^OUn^w#4 zPG~y<^nZlx@3r&4U32ae?5yNj2LDwF7!dJ&Vsj)1n`!!FJ{$l%AN*_QY1A|1ELA!Z z0qJ&!J-rF^lZ|hMxMIVER@vq7a9gGA*9=FJY=QX&5(xFZMY4K z+#7c8OnB|tVBOQ?+mM=p9vkj$#023}CyjEfvj0Qh(ddw4l6v_fD?8*`uCFs+)-Fhs-B*e>2E znX_G+oXUNvGwEl#X<5Su48e~vJs6zzQ_TtSI2T=6Xsu}O9Wv{Q&9>of!3Q8y4tc=W zvCcD(Xjl?QYJTY9GmS$&X7B49BtD)KB$HlY?*pHwj(6e@&jTErNokFsH^dp;)9l+U zEJgtaZK3Yugtw>*a?fKB9KD%4OVSE7@e&;}Bx~?%ee^EjrFl;3bkRT~KhPX32f2DN zj#}299-L(+ziH@L8ro<*(P*1pC37+LC^xXv>z>C_3YWf1nJ{kLIy#vA%orbp%)?73 zzGxJ~A`o3(1_U2S2b1TF<&2K)i;VovB5NwDyYM~ZEhCQ`Qad$bnayuPbhN?^{lzeI zZ!k95j9G71(=Nz9h98-+1%w8M4@Jw8wVkPl$&{(%9YLQN9pMaigc9FoFZ8p7Wc!*Q-8Uyde8TiwI&*}s785F<{Q6%k7Z}?5~?|_u1 zDnT0X#cTK1pb}C0@0mRfs-9(Smit9OoNznmiFzBVx7v1hT%O)e<&A9{!8^N!t%nWz zl^Z;cy5n;}b*)OU%E@1S9yKC-jlrIW9DEExsyETIK{x2xx+{Y^V4bDH4QnCYO%{*y zIb+EguveJEi1^;OT3$JdLtYL)%o;s=D+->ly7E=!@v9z_>Uo~JTKogN11=(AULvqR z9pZ5&!TxkuLpsvzPb7=|iS)8R_Lgh=b z5SV7DYgubOej4uQ*`au{KB{W}98KmWZMSPr zH4G1sc^EW24lr%4I|Ih(RKx4U8uR5ZDa}KvitHQM)U9Dk3BwY5xiFHt9yAL%Klhev zmaSKa>|L&xeI1-jwJPqJQLJ&PhshjV-9lTC`2F>ChTa`8{nLo>e2+*C?RhU@y_XPC zLh|=MmIBV#e+Z5zzf&wJ_AfoKpL<{}Jd#a-8F}9@6vQ&}zHb-@<;9X?v$bo1{;gJW za_iFk9Nk;mk?cnHB_g5^6XQBFzd-tKV(n(dd$+doKPM!$V*xTp>^@HHc|<;rvy)%M zMb2uTNG_b%Rud?6V%tq1;KW`vfx%8pGA?^ukrT@?fuT;Uzyyk&Sil5I0RE(4hB>iz z6By~lLMCaH)zCDnQDl>^H6oePnmaBUI~b_#?~EO4OyaF*Mu+CA$wpH7t?SnXS6}V* zQCYf=)ki%M5cN^mat^H#I}(fSFy6+tFxjwbBqIOO5h80RSA zawCZhqtfTx5<&hbaU*hs!L18N(Eu{$v@Tp(mJY@CTucOi$PZd$@iZflEZzaNuv^sW zLyEL$hp!b-(5Zy1O;Ye8XE6P5ExU>hTiBUjWDdeY7d@@6tt}jJq|Bt3TleUG$j#xL z(05HmX3%LViSy_*GlJ+DhcTseU+@6;)QZKtF7*x4;{5XfRW;1lHy8ljVjG4MHT-E~ z2ojihkw}#6)i}|&C2M(~mC&n(2D^o=vMRZ(k?7X2Dh%C~N8zPA2};?$b}Cm^E9}=; z?d*^2*6QUPLluYZH_SQR`v_f%g`D4b4J_amR_zRX`zedmfwdPpi-ZzsmQpBcFS^N0 zv@q^`cGk`2xWiZbhoG}oDA|dvrno*YZo8iTMbNW0;x3I-6w)HIJ;#*HCI?e8zp=xd z;9am~v&J}#>Qx^scaQ~(V(fA2DTAHuy*!TE*JHiycv**4)NPo_jYnvpB%ZXwz@My^xD-a)NOoJ}AYo9`!hIzfiKZlbp87g9a# zJJ08dfhIhN_3#%^-++G+d(LL-%lT)LZY?TR!*Sq-Yx57S^SE(j7mjBs^U3KN+U&8F z)bBEP#n?k&Ap9d{DNzw=3fYyTk`vDKQS~XqLwR?bR@mOdsT}1CPjX^vQqaM`XQ@HS z)|jwIe>6(AIxF3gKMl$V=H-mLl~~EFp^<*tR&$#3^dybe)4Q39R^mLy5A9h^Me&7+ zRn*yWH5tI(_yX;?AeHYS>}EFNQ>+$Slh&i#5W*REpN(58Z_u5K&zH8}ci?Fu94G#< zgZPwPLqXr&{1xZvLaLUYUvA;0r5l-KwO{Q0Brac^`4KGgHd<>Y79Z%yn^<&?Q=mMh zY;Q_8E+mVb8s7p%mkR6aI;nEbJ8w}=%n(1a~% z&8M6xTv@noDn^82?_kmKWi|%QhCf8kRPzbg={ZjAP4r}4|NDSBFh9U01`Vu6HL<@A ztupmz!!~_*%5dpH?{Mx`?}v0mOl3yN)@8J$*!pE7cWoiLQ_7KW&>K%nc?!a z#zr%``fD|)t`N1TqdB#skrZ3zc*twUBSz*re-yihLAshVe=7UQvM$qN>xm=IlsWM2 z%Z!GDq0ton09c~G)|fCwe_lo1F-LIPwKksTXOQez3BQn!az~`*R3|1JV2I+c3Xx)> zN$luFC`|`i@x_R}W8tYjZy`-hF}r^Dw_NEh$;=M!Sc!w(!B5Y5N!d0t`d0LVh26F= zqVnkRPv{~_q{{Rqn=W))@7BCxS#Q_)o0>oYuOKbLc$ZIb?;QI9DN#2zgOhQh%bnPt zsIDB3@rM3J_$Fhr3EhoBYHQR+sa4y#ufrLDb{e(%XG}LRk)#h2ds@B0hIv3?56Y$4 zitCo-sUy5q2GNGu+<0Xm5{z(sU(Q_@Q={Zv9EkUppVT;5iLbGxvDU6IpHq(HH5am< zDCyaE39TacX`0p!)l|iYFW7B=UzCZ%%{P81VqShC8@CTD1`(!8E9xwc*>< z)zw@cJ}X$-k?Nq-<*xtMNY!2tuc_-yYjwHP4ll;SCZ^|=uQfH_eWe?44Q?yh% zQwE3aU83$+50W<$tb+SQ<0tY~QMCajOW&5Ph2;dn<%a&tJ=@e!3!YrfGEhVjx7PJ8 z0bA^Cu{V9y9f$EU7PJSa(Y>vfdwnNc41%BXYeKkY5&aq%-D=f6i^s?V`!S;D(VzF=pm+Oxbfho-R9g@=anVp_d) z+=o4hF5Fvh@YcJ7pD%5DQjj4ZmOh%E48WGbCQfW}oS|f}O*XEgHDT_#23nw7hq1;1 zWro05?j|j(_#Fr^XY81Aq&mC{e&uY}TUBsQ>NZa<=sYfpD)9{@9BLK5wc4I?E4uU( zmbFc>$5Ck-xtlo3 z&?>A^lcKqt>p8I{8l}cizedKTW}x%tJ9n;s@l@y@(FkF@9R1e1LMqEDM z$jWLh?Idoj^QZq+yDRO(V8%QnGMPf}j@TcyKg#gWP%T8p1IIY=UkkI%Mk`BdHp-(q zP+eB&Nb(X9d`D~P0Yc1g{te{U; zQqKIA}qaPxVNDK?kTSx#+{1V2r6pOnz2$y)X-IGRQ4 zmeT}u=XO|YZZAIYQr_)Fu#=^&$!$MTJ5J6R#*XyEY6k?#xmznuth--bA78iqQpb_f zuGD;Ux*&RtbZ!ijAk+U&cq)Amf7i&1ZB|Thq)W%v&B`f-hv0Cesdj}bU>QPOPf*Q`N(a_bUf1(^zXdJ^L z8>cI`gKUv1jJ0!1>AiQOZv0B|7Qv=Yj)Y&r4a}7)wxVelXY!f)vl7fM3?RiC{0YQZ zD2~j=ZH4Yv85isLbkNnOS=@M^zK?&(mBWI=T#%Bv;ahh4bcc$clR6ynBN=Pv5O_=N zU3Lr3EA0=YIrk5`l$r+RRbwnOY6c#amA~=T3bNv||ww-f3%C!|ratxu=+| z;gG>R&DKyn#3{UFO`;P7d*sW0`K;Cc@%8@NKVHqu?qwc6gk>0+Udfv|*EZY$3-uL1 zv6Q7*h&19`@hvb1naw4;O7@pgne0t(MUwBr9b$C`qvzJ6cWe7D)c3W9d}gER#I#3@ zR^2VuUsJ;!`4ddy7llgOefzmNJaMnuEr+$|<)2So#XWtRXHUaVUzaKm-{(#BR2zbmG(VfY z8^;_Sn}Ed}79f^Fc`e`9$h8*3 zexv>YON!1T`)}uQk0sS^Y1skJHd5DvMzq@FXj7F!DkBq3y-R5=hHqB=;kBVAsr6)$ z$jxJ@6`%NnO8J8FnbB`CtTFp5YneH-*QJ?=bN5P?9q35_{>FG=!K|fyx40eB+Su*z zHk|DZPR%2w-R_TvgZPosZH9I{m`br|9#e)JGnpYj5%+OZc{n^Y&Auaf&&qxbec_i~z7=7>H>Tjr`?vR+5 z_NQFZ{)VwPj(@%c>IGLn;^nRK(jDb(B|W&hznAecFX7ipc!Y#xSsxu3z3F8;*GrwL z)a54IdtSmIFX193+-4H~;U#qEm`Z+D3Ev_iP1jcIN-p($#Y?VHJufBs*b7Vl;rmhd zn__!rV(h!@X;xI}d2=gBl0wY?Zev>2%!5n9247=@D-XCP^d&XuzBX&^a&0`Uwe{L| z-~w34ZX%;=)7|lN$zVM(h=NX|AYwd-*qeQm165YTZq^`Q)Hyqk0@g4j+=jzn z_&FY!F$(^E1pS)iu19lo${rQ;g4ZL?;%QVDqmyILFn2+3Dk)BXxgij2??T_9k)?r~ z-d7gT$qU5j1&t~p&RMb;ZFTZZwlqdVUwBK2#06-xX!)SqfS{EY66 z9to~N*mb0ui%t_#zon8OQJe<^(-0Kzo_sl<7-OxCUeqsSzeCl%w9<|0hZ54#Uy=T! z)$n!hmUh=o1Ag*F{U)HEHa{nt7aU&SowwlA_1z!O`%SFb?-iizZ(*&fvjKTcPY*uD z-Z3Zn0`XoEURQZJV(<8qk1L0}-0NVjo6eNN;G4#MaNu+-M1YiyKRxoIH(cwU@*iR9J591y;k)?pLu5V^1$_cPACZ zx(8W{kZuZHSJ92$x4fl5R>OBscb16}@sfeP4_G_dagb9Tt6>8N5#}E7`=x)e zo0EV2J=EHCxh}@N&p=LMw301ETYnyVI`30?CuPLD9$2-#*i>rml|z#&1-14{B#Qar zr?QYSxtIj!XTmK;{B)97wy^TKc5E@Db58Ft2oWnC|N7)rWJn|9b}o8p(xFU$zWUcV zrRZgj`QDj)ua-i+3TZSyNp@qL5qkz}uRM$Ne>|C;egG+S=O2l#gLJr)`t|1gD=Ded zK*iwd>-Z@2%Q=ktpF7~(Bl$VW1xrOoWp0XuTfBrp~DaF&v?P81kGXK)qmKWY>Y>{R6WY$LXN{o^<+hunCvzmDl zH?5KQov52|*|EL$k%;?sj32+b7k4kow-0-@wA-=ARWdwkCvK;b$xTEfe}$feN4(1s zvKr##mofIO;RjUx*6>4m7*j~r6SwC=;imdp!;dM_dLm#wQO;VuN;a4x_RlBru)`}j z%~ucD^H(B&Z`#=hQ5nWL3VE)YY5@0!?bopLT92IZ-l!d360)~=*FYTH{7Qm3Ziu}UrJ!B!yY zB$(aJ4zWUuty$1d7gis z!|O$6?RCF=*IM88y*jl?x3)dAkw#kJw9g&OpEBNoDXrbe{NMCU=SgxybGhkzNqTDNDNHv7u6w$3QIcGLBkuWtHF}I& znGAbl&w`U@EgR1b=|&6kqWSpKSr+Ci?3NXU^U4b4t#sKfCL#(|I65Y*9JiW?s*-SC zRdKji9iUve3`^C#uap8&UVnWL|TQ}Py0My+Pq0&+Tw?z7Fs<(LCmqdt=YHOP{fp)l%S6Z&JQpdc<0`TcsDR!<*d~!+|I5(v#M*Clpn=271bU zQ@ttYM-=z2iCY~mJ!mbPNqDL^{;T2AjJ51$J`iC3bWUmI3Ts&vh$O7ajY2;gFXaPP zNfXbkI>9t_#8sGT%?GxztGmx?JRw$$Yk()_`k>(&7=lEHX|tIdjBO`DrF-UQ_`tgm zc3Y)j&0WrpH&9j?cqHmgF^#Tg$3Mp^<1fVWhP}yAl0IvVZku!42!jc|;8wD!gXJ78Nj*y+*WIB*e!X^2 z)ceVAnOID(ZH(f%%&A;c;oy`GWOh+IFu(55r)>8;W+2&jT0SLBW%PQ3>HqkT+?-hH z_3aC8iMZoYSAJ!|6GJkxAvbgQBkH#3RQg9`wi71;i$5hi$*&Aie|4XW+vH1sojl>v zQ?&wp{>dCrF5PCG;gVy0_wU1Hd$uC*HY$KP7c7Bef`eegQ-1JU zj4`o;Gl|ZZzFphR%h19e1=`Hp$z|7_N)c%*(Oew9nXbKuV6ig*-fS zpFzhTY|VMxtz2z8e?y{tBUXn|#R@wIw57a1k!s6H-`_H4!UYQ>#N^iy!Qh_L3meg| zDs!=)G4m3XbM2>=yjU5Z0^lWsQ>_Q4l=`W)&-LwMHuj>AXe%%HBmz1(erD7AyZ_M7P4or* zXThPy>~%**c3FEShv8?V%y$nR9ei1CI_h7Rx+%HN&0gmY{jDEu?!rtpW%>o;nvNKh zXA?i^WsM*(AL$MDz1xP^>nXjc2t%9|@E@!9UAPOsw=M z@+GuT?iTzxf`srUq`$nDy`uM6+vKPBQA*3!X4C8(d-CiYL_z``6L&Yja%|nq3qNOa z2R@zbk#DI5YbzNVYS;#$j{fhh?TOZWBs)iiIyqH4k9on-o0!y7liTrHyQxG~h-*py zi1h$cbJ)YN5jK%9=x95H6NiGbji#ZLHKW~bs?6EA#6svHl7j`x7*ilZy9WF0Hh`w_jRHDS8k>AaG1;Cl_gb&mSpL*UR95^ zbvV;p*?QU(fN|5iV99CyNx%3s)9VD+O4A}%`pSZd%u}$$*&iPHvXffyhpBvho)?FW zA)j*WlF4-1Z$g~}?L&9fn0E&K9?;7lv@gK)OJG%?D8i(2{#jc`r@HYLmkIy~DzOI)w!q>rKkAlr&UGQf3RmRZaTcEaYy(tB+ zeEuBa&vhgztL%PTZ^7?+3#|B-ZZK+-Y|I{BM>^jOa8qFTX$6RhfA#u!NQvIi-KpbqIQ`XtSQe6o(LIb6yEhkkBv z{3qsx$K;K#o3r>He$qL0dVYT1PnhW^+^2+>mi&+DYJ<*`xoB>l_z$5xJEIO7mppx- zpxLfn0O|Qc-)N1@?O)Gs7)+#qKv4!NbXERl@eHt)pL%W-Hx>|tkIYl2@^Y-@vOVcM zS^tu8MbV&aws%Y5$c{Rz@tb@gSPvoK+kXK6h~qE5=!!~j{E8@6iM>fz*zWh(qb2v- z;98+q@mGTE#!&>G3IlK3?t+q_b7M&vd4lhgmQPxkwEXv^5go-0%)$R0jx&|-?8$K# z>>)5~Pf-8Ep%+y6B>(oo^7$f6*{?zw^2#j!cXgkn~FxA88s7a_DM zncpx^>9w!*;~9Nq;X${6xhL#dvyIBa!*xLKSAR#V*49xm_fxW7v`{V|=fq?-3M^z# z)MHJsaG7pe$dXyxF3ZJS`jzx9mB<9FrZ=>Y;yZOS#Y)N!g+E~94s^h8KXIt0BHq>C zdyLjP!3r#X2XM$yChWgp6+^OTk`HI0PZ2lNn zAh9i~!?{{Q!uOk|5YjmF+E<33R-Bk5$>-2^P@X5A{$S{ek^{X0GKxv9>@gtwq)D~ys-Ill1D~^cCcr^W% z0&~L7Ys!w;In%zPWDZ$7Pmyq=4&#bARR1vAn^RsbyFxG)i7wRZR1L}I`DLbUj zFH=p_xPsr9bGPxyI(TEW_`bO+t!<pe|)YhnsSG|k7fiC3< zYM09ybU2{+-oWv`l;H!hZ}r9HD~?0AB3{))O{RuXs=+UPxG!J9K)!TezOx4Mz0jA> zwCvZ{-Iwp|fqZ{czHB$LM(YY|@pQE9sv`QjuY$mNrmA@L6FBxcpolTbUy*tTm)2cm z>L8x;VB1w6ReU6{zcOC^SYO_;1Nqwf@?9{H?_rbARJET0_JJVk)RS0%oZ8!DL~UUd zNS@3h#o`xof}JPpX`JlW=F+kKvG|p}s#p<0HKxih^Jbls8;gJIEmf}+X4-U@+&z7{ z%}mo>@*Ng@EbQwG)U=OsCQsr#$6Q+@DwhX?YP{tI!JoA)M4xVq#@E&H$&|hvc3KpS zrcQ8=K-tM%{0-YzYUbX9^K$j&C#S{zJq4+82i88vUQS!j@bTod`2BuiYwfcj!>u*t z*4_rQ{e%pu*HQl4fdk>d(~;6WOV-i;-6homX?js56ZyB5RMWR^dcfpdNQd^Ta(A6h z8x>Y1cHmICH|3jQ?^*~S3rgmjTC`g#;|He4?>0W=D7Dw00)KVu9x_{8#Km)%jtN#{ zO1sx9TB)VskkdJ4hu&c0phVyNjy9EhHD}fr!|peGoj1dQ1JU>atLa}`Pb?+{zBc?L`t#{#ALDnZy?VG-tP0KI_%>Z>ziZBtO15>@CnZnm?i0?Ln z*X{-GI-Ly>r^^l-9I0(>WnV{n>o64z`foM-Py360a|4(LadBuP%up@rI3armgEid2ko-Qyjlrt%0z!xAUYe zj1-pUS@kF7!2Ch|u_~WYgOf$MO}&)MoQjB9<6OWDgV^uLwVlF<`}KEI&+{lGpPU|o zA_8OrDaUMs(DA-o&oQ7E+K<#-3w$1~G;?Q#ow2_VY~rDCah)zPb}fYZlf2UQns00C zm8bIhkMwcMJI6mmqmZZ@SJ3YmAfo3HB3!F-xGi~We$*P>7rYMlhN}zx=o@$puPOG! z-%Hz*F{7 ze%2l*_(I0GG&Xn%aOkgD=0*tNAS(@23fz?Xm&xMkwm0?*G<_&x@EC^X-+<4^*t36u z`4-ICS%R(5GnvOFE-~`Wtx#f?M6KwXneDo4FRW9&f`vtw!mWP7Z2LYnSjec-0!K5FYZ9WMo=k$Cf!a*2_7H^l;ean`g|Y3aikUX?k`#0m+;Sh2@QUn(8fgDQCys5SR~DB&SH!^)%T4Yx=f!}#}D#V z?D3dmd>=xw42SkP5X4a`b$_S!(bye8^3m@w&N)YRNTm#$RMNi`%cN1@3b}l8xf@)E ztRXGypVQje%TbIM&5<2WWC0oGl)FXioRzCdtiwcnqm-P&ji?|r<`9aw%Qbru*N8#L zpHD|Plr#=~tY(+~BM_+Bi1>1WC{!5DIH>p)UO^0!0oF#*fP)CF{shpt04Xk-nZ9qA zir%ie{m!xYn0eFoP{=V;MenMt2cjQ$8&@k%907GVxXv*V)>iCoo7`qyNSr&>Em*ga z{dXbswFo3o{EI?bwegh~@xB2K{wW)8d5F!%lhARoK87@bbU?ZbIg(o|Q0FN3iXNe@ zoPMXGn;0WRgQtXp1&~5Z+FiY3M!ka!qp8UZf8y@cu^?}jN~fz6n`Vf~?OuF=-q9dh zVV+2mOQd!u_zOh4AzALOebHU1!J>RPtFrM(?MLWJV+VtgdWdA78^sG&E;|9c zLaoU7K*jw8xtK}b+teSN1rm|;tN*#GFYR1{031SlEDNODhKY!TiznFdZ}d5WJ?^9X z@x9u?+?biMv1P?sIF_j~Ua2IDbT%t}6n0QFWo=0&dM@;$r|hnSW@haW>PWjP<2%C+ z#HK=L_SI5|yt*RZ!4Q&+v_n(H801>B*iIeHi-d49+CM7%=Nbouxpb!M_(W7viUkx_ zWk=Y(Q#Tf{Ca{oespsCX&VD%J7{h02YoqgwtGlt3F}{t-R~+(@2K)oJw%v@GjJ5`M%JulXfz z`MW?!E+kJ-Z2oJiNS-HeP`~9u@@@M0XR~b9%_>8?zSAH00CLQzj;gXByj@J-RdPW4 zS6}*SRu;eZn-392+`@MvX*>r}!4t&#h2_Ghkh=CXko}G(O<+R~ zwq4C}-c#CkPx{||rF~D3+IkdJC!bKYRB3jP=`oE;3&-!I98^B7k)zo1))TaKfDeC^ zDom_4wckl(Rg}&5Y^lz@tb**~`LEEyJ#^5(Gw^+H*^y2J1dAkt)qt5 zsBQ0Gm><5~%~{3~`2_6Cf8;!tvoq^F7Nr?=Y$~{A*fE$B$f?mBah`G-%+rquNdoiL z!tKb{SiZv09P9Wbwuv7%5`)#U5Z}*Wa^kwot#Eqz5#l<|AgXP=H6p4dS3YBV$h2x5TTAJj09`tLf1HoPoIH6ens3M zrO`yAijTrg_Cg*7XGa6ZOKU~ok?b3U4C?iSu+-;1W(Yz)!kzgY%0uSe>&%|-W98&S zrUXrfEM4E5_PQ;6a0&P@Msk)E;=z;`1YdS(5}_~fWDbIV26VShL`q=7hVwnF0$`^Kr$cj`(KX#8TPo3|D{l|yajW2 zcH$r^mOEqdofw(To$eK#RT1yU@N6g7;D6HIChv3)17IM4Lvxs^`z*=Ryx3WA$pZaY zU?5XSG}F?}{&}J}bBOszymJn4rAIX4T5fnLUS*4BIte|>0ViSXh)m?9FTHeF-*;bj z&o%g|x8hFylB<#B$w{A2PN)l?`zh={2mwT4tEhG+Mv9Vz@s!@dPuMEVk|heWWQjtb zEaClb40~*d4I_Kw&s2$b?sw6WL5>28Lsb(}XIgHE;q!DN$<6`mpA`S~^BKt^_VKu}R;R|7D%Wae&fT**w zTU~b|JmVX)E&&iP9Rw22aA15$tn>z4RHj6XqEGlMNG2)K(6r05J85* zQL{UU!i^zLgiF3y0mqRS1nQ%Z33_R_BK2Bs`e!yaw|{M3Ue--WN6$adEjHC?W;yC^ zQTN>2g^)w$_(eCrG4FPvyixBLb$mIEX)+?XLh_#!jIM&2bGuo1&OT74J=WGJ<^W8C zlFf|{TOH&|0HYnJKXVEloda?LHK{v8k!ug*ry znLyP^a@?p0>*mi%jF|M>{7(@b*Bpj6Ns@?;tKap**Fkh#Q-Bbe;>(C1>xZwavPL(> z2*V_Zk(FHI`69y)^>?DV1q^$v>rIF?|K4vB_k`GZ> zM3Rl;7!$8D+nV0Wgz2MBrqiGQ7?ZnYHQ&w-@3Ir6JFMwDFm*9~ho4EUvHkMVrH2}F zq5E@f!n$KYh+V0`enU|Su4E~EYSxcB`lwkFpTicI7e3pEf;mG|HtL}~n21%TbbqM@ zD)=RL!2kFD+K_|2;ANP)8y(4?0SPbu@i(Ll5 z7g8lN+95L1dx>G@sA;R~BbJe^*if6gDPxwZapw8ZY-+o$#xQ{>>aSMAjTdlCxe4tY zcfE4DcM4GeD)4>XktLPQE+*bJbVGlJq3`Wet)V0)95zBI+lkXkVH}Xlie)NlT*OI1 zHdA*4DMPZHGy_@{V!=?>W~AdAsL(X3323`reI~2Ov#Qs*-K<(4oVtzbn13o{N3~VC z9TN|gHOVwZ`>1IvNWr}fgK!%EMwk*4+$kFyPlc@+Z8j7k%w+Xk7#2~;X){D2Olkgq zrL66IFJWHZT5@5J50iQ0Wq95(+&Cp?Oa^e(uGNpwxKON!Ygut#KhoP8Ms6H<|i8eiMa#NUhC_E^OJWu_@kwrwa*E#1b6^fVvC?Iw>FSh{LuRe(_9vZ7pVoQd`>XX=ULu2(xtnRfz_3D$@2}5J`N$jMdvHB!-^3Yg) z603`HP`AP@;_U31wn{j1@WV}ZG~HdEo%ORK4-B^oc35IPlh>YQ+@-i2W)_FI39 z`HCT$`$R>3O6WpGy+MI0N?-3&axq)n+!GtM8_jW6w9ZYG2`O`H**4c>{@@)YYcN#y5<(bijL2Qh`N)OI_t|wpn`TcxYTJB7uv}1R(%wJjGOAFdBLZN z&WVNgL8^U3!KepWT}WAHyRO^y-NgBqKbJ1@LEP6^sx!Lq^sIj2L*G|t3wi0L$JL?bgg~cXxC8#Z_96pLj#txDgI9Q-CMUw0I z;I+(=$5c3xx!}hX$bL2!6W%BxfDrx8=R^FL?6E>+MCf1bVis&6hYq;+HD%E_;wd`- zuWi8#`4hWPPbgSIQ?W3>`Jfmh4?>PPk&r~e;h(8w3CI~ zKnG?`O&{7CAIkQ`^;Xj#46cazX_hnJE$el5877(4w3(qdrlM^rGSwl5u?tvHF1kLK zj?G>`FW>b$FTc2c8WwBaEgGu2p-u-nU?PRuoGogVc7#q$^TrxOU0@el5-yJ4wWwli z+XVhEL^FN;8s)aO%}1hOON$>~IEwhy+4vywb=ml{h+mbB2lBSe_rqJXA4qD-CKZrW zrLePpVK%CeCd$qxVy+@wbF{O}bIey`onJo5Ps|&OJ<;{;3WhLDvc8%uVdrG$NoV~= z<&GOTA|c8bnvNSy*?ZRUlTn}h-}~-8V^q|;Q+6f8SORap0q&UX?2LqvDVK%QAMx$p zBa9Z_)hKJ5CxkTO#m--cEaOuV?+#rs*4n3#CwK$-x7Qs!uw&A{UDbwmqM__o%?Fzc zJY{XWN0F*@E%HE;MhSb9&I#-)ed@N+VKm>Jy$-Cjo$$A8XP0|Vn#``(t=61;+D2Qi z3hB>XNB1`#aPR3b@$-wrR&-bDrC`LV8fyoha_`wkd^qr^vp&GR+IeF zguMqCf1Ta9*WPLZR`hWRheRAS9bHfDQKTU3?1mxOxYKs3^Zj;cW4G-@i(F5&+W};~ zI-Omi<6y3Snel3@(^f-=(5|gFqCyXtD5_zhCiP{xoXNq-FpN?-hUfGz4>!1;{^{o>(yT}XgReN_^F7` zoD8G!ad-V>MM@Id-LgsvaCfx>>_8`ZCfR}4DbX^Jr%A#7bf6y7x9rOfF$xCf5ahxz11~lfH{- za#!l42S07x2iHFu2SBQV?v{-jkh7nx=*@8hzf+i3{hiQL&KN|+zyyhhbw?Asz=Kg7 zverIoK9AwEHrHw%!%lIl>CLu9xxljXOb83ZMs^)}9Ll~WS#BdM|5ud{+JQIR`M_gU zzVil~N)qAm-RdU)pHRi7@5ciBsXk~mZ{pH&tC^NIMV?i^$(^Tl7(vFJ;j+n znIrLyem#lDhk_8otH4kp25J53%T)aZPSq4-v;HxV76;yR=ZBr@GUtsDv=?>(vI}b; z9a_E7!cYrmTg~Utf?E}3z;qo!M+4Oe=B}mR^!ZI%uKlD_9VO-s?FA$@C%W^|b4KRm zeKwhn8nekblWCyHYW{D|UAMYQBlwI{75nfd7-yDX7Cox^@Fh5J@ocxc+Nqi~xL$27 zBfA)QL*4%zRaMikH{7bLv-?&WDe>I_rhQxGcufxfIc+$g_L~zz2l6-_F77=O_|bKT zmw|l*Im*r>v6!GUYZd4|Te^A<$2+9hdv& ziq1_Eaz&UWMra|VfnC;&PVVfd>bK~)$>B1@AA%SfkW|1Oq$s%jM!v0vZjw+s3vD5!^%-doxhrqY!WM{9(SUrmRQck z{MaEipNHHClBv5ok7qtfWKE0rOA6ODzWJbX>Z;Ea_7dN3FF))F9Kkt`*hUVLx6b34 z+tqzv4${3RpH@qsvb>*>Z>m=?T7%4-M|FnZgvGiZ5MSal`%Pf0ieLPIe<0+0(6#byb2 z=)9y%VyBK>2zp);YUiz#>dp(bdgbG+3aG-WCeRa$x8F5jUc1B&bzbTfIjQIJLLDT5 z$D6ft%Yt^|9W0Nn;i8RtRZ~#y(~Uid{^5=am!=jC#|f70v?g#;kZ7H3mu|0psS@I^ z|I*5`3@QT2>0XK12FP$Gsirc}J2j!CCcXL1uMC zeOa-7c+yXf*0%~3)XRN;wh4EO{{#o^b)&_JQ;h6k_Jl?@@dy&A{@4b9jrujd&c(w( zpq(A=w6WpRof<5-?Dp(nOWSG>AnIf-Z{?;6mzo8#n%|~VbzAge&9ThGo*s1b(I@>Z zC7io9i$7(!O_~r=p{;6OBo+;ctb>?7>1fxiTi7d`(>JMcMEJUMr=fN|cy3yvZh3+G zqcK{BXqH^z3v9XN9p2clUg`wz%91gh`tcCX-ST$luE!Mk#^0R!We`(Ry(1Z#bC<-H zJA3Us`z^Hh-g4^2<#5X%;{y`P?%JRGd}J}1Ve_i5`qkMKEO)}g=F`trL=xAov&1F?@Yb%$=RCoM&)%j@(`)!ga)aPDP++@c0I=O&z&dyCN(P zYN5rPft`|N#u#bvEHmaCFlJVXUPhKHV9d0L#uY0~)*>x>r%y7!9x6~I%0{Y{O?^1o zkvSCsSQH8IA>eOUlRRdE*w{M-F#Tk2cxv0**Z8yB+1nI6Z(6+J(>=@=w?=A{r1kZlPW6sp_T^oq^VlUuRKL)!KPEB#P5NV7 zl{>itx;1iSRsHh-U^3MB8mFKN*~UUnaknLhE$jC!)DvCh_^dMgP$x+ft(sW3wu+RZ zrBSChBgX>je>A?MGTzm<23}F!46op4sKZt|AO$!ZO+Ak_qg|DOr(%IODtY#J1wWtW zO={k3wwilZ6r9Do6@B)Xup2v)H{5jh>a%*MJ6FRe2_1`u9!EMlD*=l&z-Xuy0@fY| zgVX!pNd?_qpQ9P^!aK&2Z!Zfr&KmtWe&%4P=emN-uZ+Yy=i$h9bE6;zzbkVo*NWM{ znIDi0)j{wRbCMZ>v(vbmuZc%8|Hca0-i+5bb3iQVI$qkbq(Fyy9YGmkfH>}SWL{9F zEmMd$l=95ZG!xH+=7dtBh%YhH2TRVl6%w@N~ufLaNmUKFM-IaotP|CAUhV}wo-gl{l9m2Xm1cw5iz~vg`b;!{oh{qD3 zD~6s4wv!aNK+lx#u}tRk6a*sj-4??+!+7UsUceS*Ig0++a6ZibaG2d%u{TYdsdO&J zn;^3wATxg#Al|bT2oQJmMIv6%Zo+Iw3W2|q2)W&iKtl}zF9+IdtY--yYDZ$U7AEe^ zpce4(_va%m@IKinB1_ai*pGbxiJaC@{s58B5R| zlxk#ha@^qUiFBUfS^Dfsc$jv8HERx2q}&Z#K_AXf&y}lO7i4qg4^7VuC*E&~-3pIv zT|j#_f2v!wrI6`z?-hSaw_o#m-G2V5#3kYTL-d+UB<$>B7NBF%a0xv-kAli%&(_jM zYhS2{KN_272*#CO%WA4XFu|#GQixLwuMDKJY1w+Gx(&k%Xq6s}3pY)Lk6k-KWK@kG zQHWG8Hd7F`kl~PMe2b#-g2CZA$G99_*{yi-b7VYe{G}vRM*}D-1f2?JyY?(M?-+mq zltFtV>`$0&bc7Iq;p)b0h|mU^RMK3_i$q*qtZ+gKV_zD;?QJ>nMWS5#8ygJ2jU%S7Sv4 z3Kbs__h&k~@I$48%V=9aj(I2)e8xpWTGs5prnXNyS^p|4m= zHmoeGvtcfmd)H;dWrUO2aMd)oVUuAXIjl2j!?@_mQNa5h2C#+-wN%9W z$?P0r3qiKC7zQk7?ErV9c7r@>Sj}zba9bzH-%Jpeyn9yZu|>n6t;bt=onO%pqHSfMpwzMNgFZdDnn+xi{%zF%^UY$KtOYeHH^&)ht?_ ztmV6l=0pRXF>lJ1QJ~fFI>;mgbh5730Z}*2w>Oo}XX%dbutDw`@DEcG+UpfPU=Uo+ z4?%MeR~@G+1q{r1MfC(#>rl{c3YLnW6OI4WKzEk2H|V}T)7;ldyR*0dzV01-U$>(X zU$Df7YALJ8arIDsbxm=zoR% zuZ?^eI~nh>_gHNj{bNa;+Hfyf{2c-92$r**2)Dj~x)EiniaN9RA?VccmHPXsXhEra zms)kqm$TowW`6WR;5w&>|ET^)ox9YYbBEufb2qBz&K>HJUb_v&z%K_ZwO-HF`txED z>K00|b@AhoOJKMj#}=^c=DSwISS*HTsLHb*IpoOkzd?#_GyXy8s0>PMbsM2`{#jPrC)ynu}Q+H%8SHw@u z{yh|IVKY_4!z)>4qb~}7$DkE$sZ;rY^OBq;XV#xGh$nW+tk}c21qxqrGKwr@1^o3^ z>}$<+7tODLOal`&aICVlr?#cSd0H1xB_35gpUvnQMK#+wR_UbEqaNYq=Y_unOs!nT zD2R@Fo|yCL*B)jjJVo+6ZsEsWsd%lG-F3|Mn#{-bbKIp`->|#%A%41!V|Qv%ULqY} z5|TpcauUfp86p9;2y$nzrXabIYHP#NyD3rQM5ZHRR86ok88tRa&TanFu$;u!tBJx0 z=7y4TTpDRAy>q`u0=~i_|4b>j-IXOQleMkQ-uQjCg?xHPdeXhkqNq1238%;En?kY9JRi&R3aXIb}6QjuqC?$~DBSLK7y{dzKlY{50IYiby9?;NGsi0BhNQ zU+}JT9zoui9y^f<;ZQo%<1IWX02+NJ9j9b8-d5@Kzz@y|b9jS^j);28@*dI~&@e?2 z6D~%C7^@PM6YS8j^rSm=XWy>NPx?H&7#cXyMy^gtU`0F71w%n{m*pCGMSr0zcb>H8`nBaGw<97SC`lLeE>NPMW;e6Y^REJri1>!x2h1|f zK;vtx#)x6Ai!rh$OsBMM@n;4-C|g+9;7q;11op_+v`D_jE`4$d7a0B@>a;DLNLnp9 zx zGpgO(obZ}3;|RGHD?O27{5}<6z~LDG55bweGaA@|3CsDUABPlreH2qp*Nov$Wg!gZ zIZh=oYZ$;h&g7}nV>RBuLc7Jj)ndnxTmZT z7M-t|jN<+EQP`zz7f z)yNZ0>bS)@WvAY?Fe)HWVZyGDf|Q0!u{blMEfK*v1bzX~-xSp;rm>_e6u-`ohwHg*rBD*$=P3Ta z{rFqyt>jSc39sT;oLwv`Y0agzxfX-|Y+%1A3znt0Jb_V0f0|Nd!>$vazdTmDmV zNQ?mU(L+CGKh+;6rq{Qu3+oz6Yydhu9sqLe#!jp0d;)_upy<70NAt4dPGxhAv3)#H z&=34#Xo17S>Fhk_TUoH0@8t^O%7h-0#4>C$H&z-cvl=FYk+Cm$%U41Cs$_!JKF)vO zD$9ZF#5b7K$g3m^g7qy9Jbm?O1NDC$=4(&?SDLSZoGu*qe!GdoP{}}P`90$dp zxuBeQOodj$>>Lz-)`HIw|1j}790uyQ7Mx9dlK7l~c$~y*UQdlc>3}VSWW#3YiA(BJ z`U`>9a=t~hAq(-cB~Hkma|Ll)tqP26<};m!C7n7pg2#I2v6>d2wq_gRS{UM5rjq=? z1@Db2YwPmA>mFOK``YNP-^F^mx9d&_yT8_XPquwH{D{W)y9K}2#kU54q1oou{2~ka zGpQ|mMORweZkfX|bj5YB#t45W96*j?+Z8qZpGy?%LbluTNzmma1MWRZKrgO_#|aoz z6;E$;!uG0o*GR*i8h_MR<8i{&h?C;}8ZjiYTgIlBPX*R4^NK!Z^TB1VYI7GXQMakf z*m$EZ3SKvdO0EkBUQ+lwm?z`Y^o}UZlBggrPKhM?V5dlk7iP` z{5osfv^n8GN?~eg=QCSN3NMqYkQS6YS14u zk*2>(g&#z{nPogqg{KQuOCRK!iYr6)##y?CSa3xD`k#+wutdIluT~ri8AqC95P!l4 zoNMNyA%LdWUW1hKh}m?dd3m=}kufDKF#=xR`}iKBPU7>UoLyNFEXX22S$(Vi8p5RI z{G2zNv9mis_U4w=nPCX#&?xQ@Lc%#;%>TJ^8y8imYJwYqUi$Ak^=)hPJltK6t|;cu zBXE0QE!7lK@ud$ zvd7$!F=x3VtPK_UHO};Wo84;op9k~9&T?~4BW|Rf_id=4X6IECh&iV+4kTrJBS*|B zUv_$PF@wlVk;amD?yTPoJPtC?&=YJO^laAI^L_;8%q*kl6sZFD9R&JLi=dRl%1{Ft<02}(q>=HdazB}_XCWD8jjtxBy z`eqrjv_HL-1Jeu5Uo))S@ttnL^3=h6+n-|QJo9~E$BUl$e^t?m_p9g!rlNPX<{06n zQTh~JW!B#G>T5AK5Od6d(6{I=Dr(*N{!x&*mGb^Ev~zRLBtT`*f^ZC((bsboq%XRc z*W1Rg8alf2NRGxjAgMu>4K?WK|D4`KNWWVT|rKtl5x?CBCryVtGUF( z6SBq$!AE!yp*B-2d$WDXXEB2-}OMd9t-qQ&+q0r!RB6i4My+jq>W>#GPhnnNM?k4Ajs3Y+kC0 zUZO<$-e0{}&v1zS$;9F4fF)?|fn5GigKTg!wi!}STRV<5!OrO=vRt>svH}%ix&U`BBp8L#fuEJHm{eJY>g1q9646lRo?6Te(6$O+?(xJGYO~n zYYasusmMQ@>R-_ihQ&?wugGoDpxVcgHKeRT)y|B*)%c3(xync5uNc1>+58%{@@F`; z(ocldbAOcirs@~mnZ-lu)+qm^ylcqIjP4jbqfd}i~K$v(QNkMR_ns|+OGaq*2KJV zI8{bp2W5al>7IKw)eM4U7t!FnVOy@CgU0stK>5s?OY!^Ecm7{F#6!SjbKLJS$9-~1 zc~l$~PK-92hqit%HHSglr8i@B>UOQUP*R4^au*PWQSsO zLfP?~c6#=%%gKI$vOB4e$xhbgk1!rN9NJ0wwi@Rgki4(us*d^ZSH}|7vH#1tkP1WO zo{7=HAImv})%sgYVYZeB&EcB&tA49;k0dt}J}@bT z*-3fDpOl#*9{uat>f_w^t7M)kc^JXh?5q?qqVr4-UjPj|t%uW;eWkLug?9LpvgB4k z2PLU(I~d^@ihop%{fW}2O~|`5D1D{h*p5syS$zJ`X&Jl7D7De?=@7ZYE+GiKp;YE< zrfuN9I<4HV)WDHR{%A6CP2=CY?*+dfDBt5IA1jmTG#6yq=_~j(<@^TWT|Q-_T;!_20~Ba0zfsg};$w>XGf{-E=1rJ1J`$4p9QUp5gRl?i z3NzUoVfTs~D;yB-PRwz>#OrX$$HR^>Bi9Gt--(h=&-OI0zNlp4L&ZxsE?!{0De%3ZzOAD7+l&c$Mgmh^HmH=ja`oaw7LY zQ#HkDDn`yZda~#ZHlx+Cr$q9qf>u)(_0U$?KWgh+{cTnKkJ_rDt?vwOtBkhtefif| z{HpK=v}NNKtNBq4(7k*X17dh;u76y3_Au1@K&z>MX<=Nm2DcM-?YVYd86x~iXnOQI z7QZ~&-&*ffZ>$kQGP4*d-M+}CK(*MhrMnRDd7qY&*_L|4j$J*trRXzKTqZy;ednl;TP;qKv!zGL#xZ&Ml^7h zZI67X0QmRGmnNEgM#RyKGgGd;Fz9;+IR=0Cz9(Jh<9qE@tYKATuVS@+-AlGk5ugQ;7)Xxft<9 zr1~Pfjz5H-qpvuNUbxH)qBC%P8r%}~;>cm~Ji<9Xdo;7$Flo`D2KB-izZBeKo}5xR zZy>#P8J@n=d%h>=nf*|O_x1676a8I?5;7fGoZh4~?EM!Tm*B_9GO5xlSd#t?@!r>1 z8>~ET2wqkLhaXyQ@G_D2?$veX>`J_Ynus_|7&CyLfI6a$J-`ZY)`%k&UU&qk_To`* zU<2r5HP-hJLiwAYBD5E@d~psRNj{FHvVpxkxsE~c+rcD}KCSoka^MLM7VUnYqTMR0g!dHf zrsy!MVL$6lj%oYer|3QvRl<9U?xW~%tKrw#q8;y3v_nOe@SdU_6dkc(u3Bt=pJMGQ zriAwtYp2-A+KDQbe4k=T6;r}{iX{P$=iUvWMDbkSg74dy1|{s-7}hzKyC5dji%=I2 z&5wP}n`IrJ;l-?XxjGEA9PEb{LW^@j({B>&B>D2e<)AS4z?#5eW&2nq-X~8iAL+h}$f)9zgKatHq&rYF8sDunNB4x=QEu zO`KLa8@Y>w|$<%9k ziSFJgT7ynxBi{+6K_d5KaC>6XuxRB9HnHfT;pOhE-*sC{#g|832wEWeHw9RFUD6F1}}w7bEy;l&6JA7!vS1qL7uC`ru(}=%y@Ih zK!#rpRdZFP^LW-Rskf+uvl_Ec6OW`1pz+`azi7L&zB~u(A9mko=TW!I;2sE-UnsydG$m$GRO?HoB+ z5#Kq8QWXv$w=mq0vyDwuXoTOs58@$@mT0`_3t(d=+D6D+`r(O_g;wJ*>e+M49K3)Y(Oekvfw5uKWCM-9&N=5P?)6{mJPE!kX zc)>FI)s7pq_O)zHn0$#;UHS|6YM2L|?dfrZ*oT!#@s6*ZL-5=^|2_;!&870AEUprr zuCb0kYCB68A~M)_)L?TK_h?0pOh5Dhvokx3*@?MW&Sd*z^cER^!UzNV4#0M@iLYY= z8{wCyw4?h!w4?bze4SSZw$)47$l+E!YyOqvh+K;ip)7>~V1?N9 z6*n{1Wo0>sQIR+nOrLX)Fo1?H&t<@UOIW)N9BA_;kOcbNNS;CG^s=}@R>SZ3^!I4yB7hxIzJX~5cEH-wlQ?o= z==H94=XJrYfOdE1N$7`YoC$J~Xb_T%bdpbHwY!eP6J?aX=!@5oE5IHYx3fL7j$O`q zZU~T6l-WSHI^W6MWuklSO(IMx{#CIFI0$q$Br_)y6o09oIOmMasM!5Mn^!t{@*GAlFRK)29!wsCWmp83#s7g`j%c5Zu zYpsM_WRJnVeR3-Djs?VJdRWz(777$*`)gxpt1pM>N}0#W;o4*AptGGI*;H9(1L3|l zY_~kzW{*)TO#gqAg~U^t6)LH**6zwkL2h6ThtRL<509ZBj;wz8FWN)cyfmNpm(=ka zbC#8?qrI4WhJyJ-aTB??git07WNLUS)MCC@l@%)GwNgYb!H_2~XLy2yB{Ug}U z4;@+(#n9$z!cnU3Hoy0mr1k3#n>S^+94W1)+Uafy0>i_8LCkbFsNiiTSft<`1S8hg zu}Jtfn4X5+aT22WXTS(;QBy$-WBoxYiaGa{G*SITlqe6!vL24)LL*5eHu+)g{>v8i z%lHtz+c<=fJG!|@DWHV*vip!E}c0$$0N3E(Ql_ArGZQ`in75fueXRO`wq~2Dyrk z@Pw+C&#F4oh>n_NBOHb0G+%yn#;HqXW?>X9!9m4f9%b0G7Z1-VKULI0RT@(`?|##5 z)IQ(NyW0%Mi+<6HKAqk>kJLc-B}q{5;{$^j^fc;$E&nP?m`0?+aCelulxu;&C1}JgzEyQrSyLAXr8hc7)(R{|@{*2+iEDP{4 zfR{zlw1u1U(?57E2zv2H(|QbQ;#@YMmML>JtHQQGW9w2v=|9vBVR;QXFA|3l3d@2z z3znp~_K?5ZSD5vW0=BAF`+7CM?nm8e1v(NmT5XMu{HC5Ckvcd+MsMA31fg+GQAgMK z3B*ovzme}=QE0cBlY-1`Qeap@3P9{18%UiW-M=Hx0LVejkYL{0)?k3hD>xfOmwFW& zJM>Xsu96ILFUw9GR#Ezh)$pGxmW3Q3F8ml7d4dh z(7Uj_{|HA;y>v!nQUl>+pV5X8R~YX(Q>?Wa+8ggq4O(lbPmr`sIP|v4AP~8B`k2r@ z_gVyLf$%HyBs;(rY6p^hUPk_X=naJf+i9{`X?7s(-c(|(O@{-I5I0G2*4nQ}BcYzK z`$N^&6A367Q_xyFbxtI7Qk{r`|J@P}^h!i%mB?WH2dnaJ2YC&JpQzK@tjMO>85lnj zm9kUefDuY-wY}gxgOPx3Z^c;z*ckr9KVq#t&nrUG%+D_IxDKo7KY5_6fLsp6`6A{qhK%%fB?tn%U`uJ9wd^L!I(eFXt$NsDU454<;ihp4YHq_$ zaYhdyA76kUQ#}OqvsapN#(226ZqpVnc;t5MB98yj<+sH*wVAaI&U~Brxy(G)X{yI0l*V3=v%%f#n5yS6Go7h<$ygY z11e~c9?K8(@JwiO==7#9@+Z;z#U-OQ{RNl>C9Z5o(nHuV@URKNDq(!{lE0L-NlkAn zRP^+BX?GLfSQP>@3{5HtO)f!KG6f#U*Biv!~M8Awx2^Ul8P8aI4C|0?Tq^ zP9}Z*0wSz!!%>ewd7x2*eq&Q@(T@$S5y|4IxqWoTs+jXK8*N;rJH3#*veKQJpMIMK z#-w1i>CQlTULEOwp$gO+ltgpGr7Yqclc!GVc`iNv4hlN^(naJ#XMjvdr3%vJ_$OR4 zQ|}hp)=eGCm6=_Khx0W(=@)<0ucuNKbt1j4X<4_`fAUtupfB}wBF=O@l2O;pLG(Q8 zZP66*vc#h5WQ?8FrkzNUo-JhRriwD7RTUW%^%|2Jyc1zw8&?ygz&<|n(Kn2u;^7Qt zaOnJxOkh}xb1OKyDl{YUV!f@cwGX4aC)QqtnUhI24M5Qyk47b?Sc@y1hcmyWb~Gt# z`u)djz!meB5A-233QM6oc@yJnw9j`8OpVa4i1T=*@g8GiB*Z>?@_+0(#tw8OGUqP5 z5i*x?8zbFbIU@dMMPfU8p3hp%jr33qxUsk`4quZq)!J5YEk}Q-W0j6qynyYLKq5uH z#XLkw4p!?OVl_&r!yaU!d=lT5-W{9HrAj02XE+LBjFcajVlg&+V>~&M_$}}19@2^B zKc;Lfe*O3u>b%fW@{!15+73!x!+9MAl(cmG41|J~R655hoPB^NT77~7LS;%DPGGVE zyedj2RJc>&OlL7OPQ1#p^rr;DZtY|#8Vo1n@T2=b0V}B@Z|WE$sdRvTTMuwtQE4cZ zo-_wIt1UuJzO2w`-6-w{;R!*eMhc-+6c}!v$q2&(ZIh#=kug@IJerY~MkuPAVeAY0 zfNLAUqNq3fYPLrDeAH{A@!1eFrw0Id+bvpw=5o_{Fin`{Ubxg#a}Bh%rZ0FYh_OHB z0g=N@y1PlWM|!|!KK*$Pf}oaX`+U{&CR-STf~Y_@i$nU`M4Hu zBNPUe>HYdn7jo!>J7tul_XF7(huz*@`GHU$&qLL0hE=P@>NWnOe#jowin zl}+3^h&U`f3Vt)#d@A6yI@>#5PCOq-fQcROigqKjRWyytt8y`r@`?Qwn8Ct`4?e9P zC_2Y(DmueyO{Rm%mxp1D(t2R`(S3fAS<`a+%XDxf6no)(6vzOBT)QcJ1}bLs7QOgf zdn_p1i1Vn;szc?o(X|Qdbw~;g{qj>B8z58jcK`CTLU(*uxpW`z zQS&e)2&PL$dbM98+}<*bFkYoplQnvoaaK&k^Qb{cXRy%rIu*% zHdB#babJZ$>8ntc=?!lx8(dSJiPY$ZmaHCJQfjRICDp!&C)qiH=y)^c3g%J6w>wPd z`Ge{W4L(FJYxIheKl01SALEDhAhen(V@W!gVZAH#&v`QOT7Z{rmDMy8(n&1N-EG{c zaug+*^(oW5hk_#gP<$CbS_H|z;QKXLql^pX(3Tc-8c&W%AIpC~>j>ubT>w~+BdQ$i zT zO6c1Cn>9H=Hv$orU50QsqbuxvV^q^eaBw@-+Hn8f8gL}=c+J$jWp``9VVa!881FAp z?RX{Ub$*~`YTuaOVa)S}G3Iv|bCDVIjT$q@$<^lu8Th%wSnMX#u}64vKA}+dwPkI4 z#ajCcBh%1d4(thg3qDT&w}(TIN{nW*8a4Tyw@vR4kZpgUi&|74ADw|N%|vdwb9Z(s zPI0|z)$b!i#5o4UOff_Dr-LGYVbSdnE(*8p=Hg#il$gK%yE%&&oP*bZ2WFi!EW-G* zuYH`3x;K_grY{FrD3<4K6qg9?j|3jI18*V=7kXTWgOGCs)Nq8$08oi}Jg`^8&SN6} zMv`-XcJRvAKVq}~1}a1ZI3@Yv4v&<+YAydW_?jRIl01ZT9UU6S!}`tAvS`ZqF^@R=BBgIy%R{Eb z-R5y?Z{mD1<=ah(he{5c?`6g{5q1Sjk6X)y)P-@1E`kyLeTX095`pmDCO1}=-;6jf zOT4{|-3jH7Lo)LUY5n*Kf*$gtJ#OMFw&6KX+|7x!?5Ju?O%!vHMOyw2pXgb_Bej-^ zgJNS{Og%nZ8`XKnF5PD>`=kkPFMY=HLImAqD>NJ2O!tlNA<)*)u#O-73p@8Ubm*76 zQV;pW>p@=s>U~?oiX=ar6-%6D4Jr?;DTbY}EVi0}9L8%7tQQMF-8YKE9n%>uh3 zyjq_=Jqdu<^h1_z`j1>Z##owdm~BOrg*bn8hW#MfDz}d zEyX4`aF%0ShifXlx1m04Q^H0qmS&{+RiYx!yY?owVa}Eb{4pz{8S8K1>rt}Y^`f-4wqPF$}yilivpR|kYOC*e|_pA+naf# zUB6xXDAQ^(aL|(eHtFm$?;AJPw<kCQtgcbBDEpN)b9)Y>ZmdmWeTXaf4`~9H6&XbxX?8^DoOIqPq%)0 z0O69=gv@TFu62s_mrwV<%4QrmczyN|RiREt2B95*1iqOXDfsGa(6-X=-}tqiXQ|;Z zA*XAz0F*wiFojKLRV0(7YHku1`ztJ(7WM*6Wi^~=ddx!jkjn~;uy*6N&eT} zh^?6$V49tIm(C{MA?5F87<+)(1kWe`4$r(qVfAdB{ooiggsKslr)Y|iQ$)xnl`(RP zWLg0@kj*AqP+o&vSr2@3MCP}q5*)XHcF-`F?PxHM*yv%IC7LO&#BrPb+J87Aa~rjo z7EKgLS#==uU0O8ROzG)?t;(G#?<>4XpC*a&<4vrOmU0Fzqc_=2&GjRge2~mJrLQgt zI&V)rzyTq6FHKv^L>IvS2QdZ&pkOQ$dlMNEqPi6#YWZ&nfFmlKfLC$L5(=1XW>b|W zZ~GouXjKqYx?|Bd9~2DX`1nF+pY3!c&=!;hGp`}oLp+qa^o38#;zlaTZ(#z!xE9N-Z03Yf@nb2h2fm)2;MdKx51Go$R&x>$iObGw=HE%mhT(y%y&A8x1NnEOvtKaSj`3yF?xtpf=1)uu5JlcATOUA8BNu$J@Kf-~zjttApM zoTZEh0`i}YRK&a^H@)-@mXuBw*6)~B!2S53OvvTd4tIJwdjmTp8b6u*SgVk?3Q1PZ zhp-g$YKujk`O5VwVH&d;R!Y_%(d7ku|KW)`nPkK4>mEF_&?y z5OWGO4pC&q8sFk#Xes?UXAy039#@^aY8)asB(sD_kuI}9WWWd3nE)p}3X_akAnAh` z110IyOxD5#SyiDqWh^a4iu=|c&7kySHw`Wg++=|-ouKq!*s7iLJ`lBC@`(PfWr2Ja zQFh5rq^!{mC3Q@}|HIt7z(-Zy`Tv<@fPjG$BwA{zP@A?)s}@>nNrg5C&cH+`fQq+P zTWBO}tQD$(Vv7NsL^&N!psluc+ue4z?QZ*PYwh-8v{f?Uk^o+E5kzn$;%$bApeQ5( zlHdFDoS9^TwB7yv_Vxe&c#$*bJon4@d7kg{y{5jvnw`2GTe+#5cpIP`CRQ8D;pf*t z1q;6k?6+1(7)Bf#XkJilv4aZPr;t8g+Id;l z&(7em5OH=LWC7qWowwak;Fe&p&05;Xs!R}6m5|U|6k3;KEooDl=ZJ zSd~<%64DW-Vu>ZJgU3=i-6jbIzGMny%h;!M`#N}>@>@h>I+*GLF11FeZr{#y0~~9G zsEvIjTd{-46}YNi!8KS7F~w4gX?L6Idq!bT_z@&&)mx(?Oy|uTTpMe#oUr@NR2Tw( z>9#IL$Z8+9!_)?Pqh$UFCdhS)p*A)_Q9SKx!E8Wu1oDuLg%PB->TYBKfdn94Y)h&b zZQ?uG@#FUkutH4^n+g_JV!fC+T`tHEP}bo?{Pi=hHN%$Pr4_d@56SAKTiFcHtF)HT z6nWql{crIeZGz4)qL=NPM_iJ)Bm8yp2aGL#hrd^N$0KkbYKhBUCQ&cmz58D0_jw{9 zBx*XXrKHmA%GtZM7-!;)mMKQr7jGr&v3b;g(Nn8LG&SWcmN!b=A1>ZP)>oDF0OLSX zQ_d+7IcdV~QDhtaW0OsT!~|M>>s zFd$DVHLK*d zeml_3bz=BHkyw#bk+L<)F6x(N=laFfd^Qr;JJ;F-@6OtU96ObV8lf(5R;fLlYmS?X zUOMIWdIg9T$UMwoDM5Hujb$J}7AFsK6_MD1Bkt^zFnn!y1e~Tl@f>$f(2ftsm{V^pLmwa_cpMB_nj$AKS(T&|!6JZE zMIMFqptm))U^ovHRLv4^vg$s==AG`dyJQcDjoW&uS>IOezmH)!3><_Kj!~VEF=O2; zq8MxeSc_+Cy)!F&j?Q8wn}vRgdf(CK4H|+aTKhC|3F~?Z>sXl8;@9{Syl2+5mcz0} zRsmbLwKToNmcB#^8m}dM`|Eyyu<8s^8_8UgkGfL_S!j|sgtAzINUWN|0O zP_e)8S%W=$8S~vmb6DUL=Ex!1$pFIUEGQWOL^lH2c3e{B%=3cpD=BZa>hGb;C1y}+ zYRGw8DW*7y5?2q%-znKqo}W9}5& zd<)vTX$-9jQJ))}r zbCVU+&ka^CtA)eFU^h#EaI>mRu zZvT6WhI7kbG;A1V(QMc8#NtXXnur$7JhzQ|OrQnbDyz1O?xEb*8mZ`ZkgJJ!1)syV zP%B0&Eo`P+xnbBq-j7GIg#1ye|1R$U@dvy}uC?jxSYsYmKOzrsE)-k~Xa?to-It77 zO(($oWdJl1ttfA8>jg|fHh@lTL>PzQn_Xx%vOgql!OCEgVx+>DCmplkd^JE`bj3`rlNh4S3axYq3ki7cqpyQBAyzfx#735!I(tgD=+*yINZEezcCHh(Ns+EsoBwrw;p{c$fwhUak3R*w>7k_ zfpEEFop+?FUrBMVytcU&k`G2{Ua(_FC)y}uBIx6rVOramlQTM}`fL<&j0i(ZmMlA?0(KZezJ_omKsjlkuBCIn@|Usgn({dIE0zp?S!<* zE+uZuVySV~x^+;5(DN}eLD-0EvE8?wlBccuP8uBc?pE(95LKmgHE6SQun>0DPAB96t zm;}fKJ%p1ED0X#p7uwxO$6YMYzH9>SiCXA?xluItwMlR>84rV3xK~ctMj4WT`X;$h zQM>GX^30mx6}`jY!9OW~uo7K`x?OyrbL$msK!0L<8754nkR)MHnf&_%B%3_)AbY!Dnf2@_d#YAii!1u)(!lUb>`fz_WI#eSTj97<_%O+02pxyQZ3XREbKR zDJprCg*$b7dU!Ms=`1vw?zP};{c|WB$+D8hN&}+KubB=b{*(y}BX)$HRrb-+^LZ5F znVp|VuD?A&oq`37B%k9=+e(=-I38dfJYgqZ8ii1v+lvrNXh*!9&7v1Km7xO?0N8Yd zQG!{z+xl%ECRe@N1HOM8%&?-Y(AMXKn%er^#EyBGi%y)qa4s({UdeCs<;n8O{la1pOkvl zNgS(lKkae6g8cNox%y6SuHXmP%6N4d4iz2&`~UA;RR3+>(2MH#_(n!qz?T+0HuqJj zm2H^&CTcdFbj$2319$o&Q#sDHtvcbSsc-O*oMIY8_aF*?@65NQT>PkZ z>D0AwQT+KZ&UYTo%=a0*_M}P}&A|l_w}ZNo+gUeq+uX?Q{D^niS&`U_+$dU-e=JXT zxW&Jj|2+Need8?g1x#-op?x{;S1O25pd_fgExxoxRUbUyh9@`=)W8oy_q#(ivcF*0kbMA#lnTY18@;0Z&V z=M6|0T4Qf2US>b0m5M%0H<^$y#VQ9h3pdx0E4XDgvt6GbFPeoS1Ii zI%~OZWZ;Ugur}R#MUb{%k?RCr@oo*H8F5y$qBHTzNRAR`K`u>w34vW&dJvrn?Xi)> zDH_`uNIsU`#53))uUOG8*7mInb$>^O-nbF z^9(J$iM!#lLrO0KqM@aW);>s&ngKBcOK#jNAr~!a){7ocjIF9}U9#~(!X2CIoll9{ z&P}pPw020xJVYYy6JfdUY2GC1*~@K9)KJH&+=maT&AdQaPv_=hWL239JTwEVisVp0 zNiNDbbY~vhRgB2!L{fg5(oTek;Ud%;8Yg#Pd89J=Dn$}s+D?{A(1FH179XK1WS@<&Hh-X2w>;;JBv`V=^oRMqTQDHVno!c!!JJf_`t2PNx zxV@sWUkMdK6n5dbq8I@(FPDqKxb%s6UeQQ=S&5QxHgnC@-O$Y$$Hi?594QFl`o82v zVp9BRdS2)6d8lX~>Re)|;Uc{+h0tcqcR)W_3dyeTEv6kZ{Zgpxy-baW`jup^grv9P zKlwYQ&Iu9>MPffGdl)%Gj9A>Kt_m8UKayZuI)cD%!xmU(>fLvOWc&9pRr_ho%nB1& z30bfbx+lC4YXu@VhP4B!o?@ON)u+NrMLp0YD2_4MN2B%w=UoD(-J@s+lV1tpPp-~Z zKsr=OrrU%s7SEuQF;SNnlSs6A7&$&+uu`;@z2tn>Pf5`ZN-~n`iF#M&V(%W; zfMd%8P3+0%`E^Y=D;#>x_dB-sM7pjMrW~`oQkP^d&-YWjt1gpnTr1`JL<(^NTnrfN(h;w_c#D4BXJvKDvz<`;(19J39#{--Qw+R3wY$w;(9;gtA4~zMf{72 z01i~gLODZ_kPchFwjXvlt{CX829udo{)r@*Lp&J~noKeCCBSa(77oV86Ys;ENd zIM867Sl4w0DBwpzt=*CN7v6;r@oOAYQ2i6H(3TT25&Nd z`z-@cr^$b;qqaf)*H2x1d>Gv&M-uJ-sbOhWX&BniTTBCkVCwT3BF2*YyN4$b_cDMBDGCF;@xLB=^g80Flio}wEy2d*Zp~uj> zSI+gm)viiNk(&JuQI%gH|M&4y%5j@<+pEqY5eQt!+KV6rgD;_0-BHRaq)D5$9r&Bi zaSy~+4b4WNH|qWVC+8Z%chp;m5ka>dUoj6QyJxerK;VskSH&Wu7OrYk#lD&%>gLHm zeU5NrIPFa|F;PEMV1jIR>`=hQx>;Gp)|FGUdOv_Ka}K}-JluHH`e@TpB#6vdr2G03 zP8k~FeqZ7zl=6kr66^85B+P$BPj5&l@G6*}^72RI)UFE9&vnIJtZpfXg zX0;#bDs|WIM)EB-Cdt96k6jy*pJZe4uPJhk`JMPRlX)RiBz~^ru9X!WlB}cZ__t?}*>T;C zd|(-8O#Iss0-!pW%EN!2qRSMeoJT6N!`QtFJo&bM=^sSQ_wN;0PyZj_pP zuju#qWpzbRZ>JJ}>JW%1n|cVWq*i@7bT?i~3*+%g zJh8ULc63`KzfE+oTQ!$})ZUtKe^pGp+)!9!V}-m%D&|ab|9l~DZhSINY`o2)Kb_2~ z8$U_L_`E5O`$Hr47|S=w6j!&sdYmEu&)_=I9DA7{I6Ay(-Zjc7u%|6s`}?tu*jkx+ z(S5e|i{vtz0v}?YsrVU6?8500F{6|^%wq8A5E1XsKO)lI6KRgUm+eUZv@ZEvPw(_k7J-{%lhTo)Zg1Uv z#BlI8$L{k}*Vuid}d626V&YfN-*Hfs8cBf za0mJFmgd+h0MQTm^3LX1ZTf2v!Zc6Ku|~4qM6$udW?O7LZ5%}b15th#0y*1aGE0#Y zJC$$MUdh;c&Y>KnZ(`j+tM(I&8z6l-+e{jyW2XwN+MQa5@zKGzwfnS?n;~HC3MqzU zi+F90X-#wzK;N`T1n}wNhTU+Cd?|d4EFfiS>HwYf(zV)?tlE==_{ab-UH=AO?AmFF zNKG_^(lwMU>t&xrQqt(T3__1+K6vKV0eu++a(O!|D$vZ<4ZZ2Fsx!>Br? zhJzn-&TnEASW^B1%B-E+p0&-28C*eHPyYHz{aNJQi!+g)% z8U{RT#Oh>TD-s{}c_zS6Ju`!baJGQ7mWG$Hggj%=AC&f6aGwd?>IUvCpBe&UT%aZ>_^6^N}VBqrP%(rCH&>J zp~)US`ARnp%lO{N zpLK4ucoKaVP+4Qm-kSRT0Nl{hM<^+EkD=k0s^zY}SERpvMK+pj+BvW%svl-gG!6In zM2%p&<*$+3-v|8s**nSC9wV#2vkK_-%1**YoY_g#k<`xz>NmyuJCR^((OvypXB?tG7Q`s)#x~MsokP5&W6~_tKn4 zexWMj!-|gpo#rqzJK^AzF!EZ|s*iDPHcNhw^7uh*yQ81P}f^0_jBK6XX+*ofy@;}zt;0T{w*Rs6D zMegUM+k{cGTHp(;*O(WM^#rPKjY7P>8DhWGa;KOx?D%t3l{?=Ho-et$g@JBNEy%=` zI$3rcYSOay7b5|vcfD#%O~Ln6C4W0AXIZ;zi;j>?Z|jRRX!fy0pn4VrCRmFt?p{+{ zs7X3W@#yzXdPVZ#g}oZa4oe;1L%7mLrXkcC!h(RWspH-kR5?-9DzItwqvACbAN71S zA7oC#am$WhjWGCSClMMyw=D5eZg~I=4-}uuLwh5Eo@_LFqZ7aGq?0!ij2Vf-RM2tD zf=K1yn$dChmX$Ou-yb^xLh*1RQ-Kb5?T>kpTGSNB`$C^>R4X%1dv1Q)*l#N#^NS!p zJFWU#kj6xxg8Ym0hJ9}@c(Dek{G{E+nTFWNi+Rz|j;`~wn>2Vfs5~fkvMUYpkmUBK zQQcjdAE9BdY8b~eitZl7Cmzsv#qTqkO!#N%w&SJwHuQcw))nA@4xyOYh|S;*tL_Wn zuP!Evv7*(Pt6r4h@5E4<(%Jp~1lm=M>1xEg`EAqr-)Nv^=sc^rPRV9WmzOSoTwR_|mvJRSmk-e8_O7$i=jmVXpM7jA2CD7YEA$XYwF6z$+=mv9 zpo=i+#F$l8g0n?o?`n}j{&)fN|M$;;epCP3GzApsKW z7!tsm9~y8{rDvC6cy8GNZ=asx2mzM+uL=erm!U4AnKTCn7v93MiV;T0YOq<+(<_af z9^jlFP&(y0kXsK|2O(W4p{RcadSiXUV=~*q7Yz9&ePs-stDS z{)K@X9K#M01w!ZDEaz!h)^g|j)zEPkiR=NiX zH1KtZJ4M!dic|oLf-hs7ZU=5YBnTGHvnL?Bl@>MA=lG$YMMFQa#*m%3VCZN5&`;TX z94r|k$?B0|>3@g7QR*637TCx4;nTwMQ1xLuYYxEuTtio^`h1!mV=@C$x-vR;e;7&l zpHN_nqCR!A5o(gxH>CUSGbdw5Cn|q-s4*D^ITP5HW{$vSN(`6-u$wZlGN~$H8vPXP z$m~Kcx1YoNIQft#9C4)F<1FL&L&SY>zx?mKX7J(vf%6l3c8>d8s7;6G&8FjJ2<+>0 z(&1Tld`}rWZF!(qlCcX5@xIAekfj`#Z^!8rXJ<5k0jBiX`TZehXMt9^IXerqjJCvF6bK)yGKe0lY zIX{t>2;q)!I*Q#`4o#n*UlXKoe%5cM8Z({#$#cXORlu zvgR*lmw+STfz@dowYX&~RNKN-sBudR0z87bf`gSvBufE6Xjl+7d}Co08Jm4|fG4(17*kfJcaZc(-dbFu@PfMRTv%jWKPI zjbjXzU<7MboJgPrelBzT4evJ70MEsr1~sqLp9}19>%K8K7l!}jlaU|R!NG&Y}YI_4(4jS|Tej=4ahKG(_m(+v<#*7o-GbDg_acoU?{LKlOp!?2Cl zil>PH!vch{F?N?#w8P8^v>2W;hFs<+g#RoP!d~eHuW(BI)6%MMWGoy=oWz2sg8axQ zM<+Jw*jLtX=~U|w-ZARa#kRqr%$bX=<%4Av1tSxk1x%8#TY+8eFN^_*vj&AkEZ8bhc(|EjTVp&DA?Y@q) zBfAn<|7^O&jRVL|?fH}{n+>KQ2728rNN<2n%C|3lBvlO=!`+j59ZFE5XIOgFQd_B< zMXp?$l^~hW002fN$;j3j5rEA8lQp-q^NM~~hO9LrzIP^5=NM`ki1XC#;LWt*bSSrd zWYMgEN?gASTk%oTihMZY8r7^d`~Nj^ZN@Zx0ns*-+KJSk_Vx|M4B^1}RJ)%q?P~@p zPJL*AK4+5luzFLEDTPnCnA$Fb?aRQA8*&)z{8K2)M21(|d4(KtNbWA^ixF<-cLi>NI_ zgdzNm$6$=?KA9O|LzyJ((BF-Ggfg=inHfn%=saNa4sNzFHi`7YpSsz9(pzo>BkS}A zknt~e=+6v-jIk=+Xa+L)JrunIb?tX{0rd8NeGmL4q%oWWHl~i#3cvdQU|%VYzv z(0~rAomz1+Vx6vTLwd1wW%}vEp$~VN{`q~*+Ho(XHoAIb)cy7=`$-#(hi!tuR;K)33Y!e(*_CYGV*WEv~VOa=(vbx$|YV#qtG`z02unYakC z*yQgn7_fTs*U5p|^gkIEyBUd7xRSWkmI0{xH)v8>#oJE&Je)2DImiOXj8yCZJsq~+ zw9Anf9R(Wcg!ag$Y*qXD|3d$aS@AjEh2!xKIE7@@mm@f@bZ;TE!?r}a;*Zi{>Ed|7 zv%_A|xkiR+jyG*GmWM~#v2B5{dmO1#TN)pd+)2xwf?8YAUC=~Wg+=*xS_E{Iky71e zxAo2R^##Z#K_5&%Iac%#f<6~Q=1Sy7gv5q*K6_3v@H)|PuMMiCQYEp6tjD49!*+bS z9bXnazW?|OwtLcjC(%C!!>c;>m)UDymJ6Lk-rqv@X+BC@^d5I_DD5$w-TDbP;zkCtYIxxKdaJAob>Iv?5cl}+|gP@6Fc z15cYXIqcpUl;TkT#MQ`C8F?uOp*So0RGHb@kOSYGTaMNJx)~%IGGtlDk~3>iF?J?lxl9zN!z~-5l0k1`5-`P)^7$;)tHbD2OAvMJVGv>fxxDvsJr3$)d;ioFbd0#>?FPh(PSK^>~M zfySt;%wwvV$>K|UUOt-o1ho*OnkMrO)v*T)^UOv!PNL942;k|FZA?y*=u$;E$b@Ig zPI-i`o{k5uybjU6fviHvtDY4xv3T%W84KVmi%E%E~&8e023T5*9Hb_eA#`V* zbRfEOOeMN4v*wu2vXb`Y&)}Exhf+~gp7bf^=E{ii|HZ#3xHsxbe)EwN4%B=eQ$KxC zcSpH*gPnWkR%eA`hJnUoba}A3mF}#*GjyP1c?Yf%ufPJtX{mGnZ+eiHZ<(wcz%utq zgoZLq$t-3i{yU2SyGc4!NlCO{y(rjQhKnmp4ZO&!MP;SSGanl8)7#k{ZZGU{Df*vj8Ns)6XlIwV(;nohe zjs4AUU&*#rA9702jEgo6ZJ<^E1r|ak(Ovs&cUpFH5?RfurK+sDskO14T1^v7-DeTq zb+?@{q~3lh*o-$iZw7q7OMXFP8!jOMoWe)^h=cqj-%rHfgwAWOf|upE3CT9qFJ+c& z&&Gluwlw~M5A<%!Dvm(L1F5hRU3uc(y$VMO&Hpq%U6h_&$N`Xg^t{lJcQ6+XqvjP! zZcE%6A|Lt*)&Zoq51`xLhg^DJYgx(W<;Y+!ZK4k2f6|V<)U61GWqeTbQPT>;Y=l+Y zLg%y*Tbm}_4&C_@@Q&Lt3EXiau*dek05Cjf)&Gn%*j~ROHy2Hq>fGGHczjP1uOT+^ zK@%SwjK}Nbb2T@cxZx&l_+VU6aZwYOZ{qR?QMg0G_QijcAa0vCayO zGe7;=?SGC+e`2i}=Ri%d{^8Y&Bi>a7W!~j)XYKBP_f`5+qmbP<2blP`)~0V@=?7Ou zGMIqC>C@Uh15HwDd`7LyH8?he5sV8Zy3gW#a}#YnKE{k(xlU`j5s2=>X9ss!c_{$V zd)}(cW3uKmRP4&gBc*rU%yFH1r&gxeW^3fVbAIt@vok%jdGiGj(9?-reOHjAJRlwdv#O+54q$pS_&A|l-+g0D8 zB1#KM_7Yh;(^;`mQ>Cr$3|SW`>oS;c)zeMZNn~S}G&Qm_R-upb?rc8s$3jj*&`s)u z!!2HJdolP!2GB=XC@SNQy==~X?4UJ`*4eba4=c($tlD4ancX}b>R`7Np=8A(@nZ@W zsPmV3&V8kD?l6mp?$8qU>!q?r!;Z{wET&P?vr(C57^J*o?WV_aD0=&w49xBbym>UT ztUKE1jqhi)`l@J!Ohpx4ceyv=eGb;E5(f(AxC?&-x&2DK!L-$Uf^~Gmcs#YWgTP?P z29%owH{4f>ef64ih;+t_G%52|f>)O|&cq*WPR%Eg8H~^T&UT;-s+gu0XCzkLArVg3 zZV?C!xsjN43%P2tbT}L(!bAmkzfyY>NlUpuq799F$@&?O@x5jfpZ#UcTl8+nuMc{$ ze?HuwGjqoN{=nDo!Fd^S+T=P8xpyCqhJ2hJ>ldLWsDBVP2@oHAl9QH4a`~Ylo+Z?=?_URn|G}{{YkI6<|JA$gG+l02a!;J{%?K@fX@}n`O z4bz>_F;NEfrmaccO)-+&U)#vb8mh4C8q2K6GxTS7q@z~|SELQArNNIzLB#I9Q%F1a z8QaC`#tu4sK1454bcdQ&esfs52&azw>*+-x5%JN8inxR#%1}VE-ElZZ36_`auD-s! zBCo6>7uFzs-z;f~?(?~E2FkejhMFw*i;SJ)X@=Fpa9uOS?@C=yXy!b%@h_Zde?qZc zYt8)2Mc$NX1tTC5-}Ex}%Gj;NsH@bCrx{(J$>hfz{Noh28b3mPB}Y~lJg(As-DX9P zbiA7SHxduPlMg=n60kMA+!03v!#fUGq1iGmRFDz9M1yC_Gpr=3vOFmurE(*_S`{4sXf;ILJ z#cTLw&3tj2)(iq!cs(J6btE@lZ4Os(1U;)kUa%Bf_sx89D+^KHIQB{H<_=kVzSfE%q%7uuq-;Joo=T&{&fFJV`~ z4kZ(>C_u=%3uPA7yf|h>2v@ zaqfMX{P=Y`H6}2OGhS3ka^+NW8ior2Ztidyz)UcZ(+zbnKI>$(BKjm{BjGuXs(`pB zm=E3mGRd)M;kdUW6otLpd$du&e*8R!;%Y8?8&+e@3ox!-m$u!}@yRSTH6h!N>wyRne))uRVr_gleo~%t^R1_0Vq|2d6axkJbK~eA>)*o8z}e~l(m2px`|=eiUt(q z#(l$gSuV_{l-D(%f8keiw~QHGW@gk(r$3X}%pE#|)tbSTSydsJ8!cX$J%j8W|4+@} zS)8(F25#I3Txd1YuJe}fdJCVdLOl=Xo3WZ1U2xIkW-}Qc0Tu2y81$Z|SnP53aL=xy+ z*7!bo4pIVZEGMEA7uxyAFv?(@)B-q=$x8DU7CT&4v1S-*47I`LTVFhhl-}hhIMdzQ z^(q5e)Fk^6-_qRL;wgml zvOeRBsS{KRAMA7jx2n$L(IO#N+-fXzU_$bjk`Bn-Cz_Xj}?nJv9<7OcQ z*Fcc&D=s2|<6YHfhuSE12I$xvcl~|JrutSPf)i*B%SR%4nlOuoH8Euy?`JzD`)BPs z_-CbaAsV9&(-Llnrb5-FeD@VkAd{-~u7axAPK}wWSOXYtZX}<40HuN7;i8>cNNNMt zme}cQ%>s~@4EpURv}V?kFO;AWy7)+7k%0+-0473h1QeS97SMJs>86wN;;Xr)s`X?I zw6e+;*rDz03-XCEnJ8p;G3`bJ2%`qwK@=tEp%rRMD+5krE+m8>L0ak#P!u+QHJ_Y$ zPO+0|zLM`y#->aM7!5Tn^*Qp`4QXZCNgosTF}jSO#B)B1bfvK3SRzmS z3t!9sVrh%JuZKgaSbxB(mpp3&e`4Jmd7)T;Ud{a_3~^u^lZ4~>AObA!T_$Q#5xw+_~F=A_&{4py=peJhN9U~ zxX)lua}3MpSv%AmF6pTmP7d4cV!J6hTvH6G$r+c6(U*ni!n!yTLnaWTV8f#$J^7T)z~v0B`@bPnq%b=U9c$M~-i%=bUzL9xYf4)EV9cAKE6r=O-44=UZaj0L z`|lQAF1*Br*x0iCk7CKd9>OvK-8T$==wh43Vq$TAQ>7d5=JsKH|6_fT2mUVAB`X2e z%&<5$Cl}Jzrh?hrwCA@`?QG-$18y7ow)-KK40Uwuj~Dg#_lIQPb$Dtw<71`ifmnd3 ze#vILGBntKVS_~wKZ2VXaDN$VN1i1Tcxw>ZMG0&Rdz&-QNNFw0#L zkrqS|M1ZBwhka8S>6)9+vxJ5qq5R9vF&_p15L+-0I+f#L zGq+@C&3g%mo{MF2r~)m_A*@o|&O-L9lEWRY{ z&B!&@GeowAJBw{4!{62Uch4<^iOq)WQ6~erU1$o{Dsf<37TTIMng5;F^m+o@%cW<} zAUctcmxxBRPL_ZgWSbf3WipImmEM-Jl3mM16=ziLXq}`X)|d}7>+jf>yz0-`v6oNc z5h!#ZT5({$cVRIjQC#VSIvwxJ{o#`5&CuL*abN6Ut^!N;)|jEW_++Sco_E7p*!OEK z3t%I2(>VS@X2~3M@RWuvVfPtHo5fy+oziY&`{ToQ$+LHT0%0uq8N38I%&W``ibgfGiui-MmUigA+G`?GC7=tU z7Cx7J_`O>3!)X?a4SjUE3O8#JY5455_@4Ay9Ff{a6V6QVJ1sQBe=_#DI;1LFFVAN7 zu|}@;Q+YG=(OJ1hm?_j!*XTBbc;)6;^LnSYAMdZ*&hBWoa%*18)OHhfyvNW;fxUEd zhWj`vCy;cHPer|}ayc^a2N>~I#fE1Ajp!$ay|(GHT+}M59VxhX73^-sByPT6Hp5Pi zS#abwT^9W7S!kr^49hWjL^6Rm8)T|x_eD#dUA`WcB)cUzZo5u^*?p9wE}q^GT#n4) zu9)VR4LHvDOtCp-zs67U4UaB1Orzb9aX;Wk+^&dSM3|8u+ndmJ@bQd7M#DQS!n*2Bcg$T@KZLdtRSU*m5bh9Tz zit!3cA!+>KL-ab(Vm%%#wB49+kFp9%LLRVX(C7gORiX!_P?qIBHm?PQ^!K(VQ*+)3u}6!|mo+K4H3mJOTwX#|YKY?v75k=LZn} z?Bm_KSyi-pkpNe;HVM!Nb{NeE%Bz2kyjftD^|}#}0O5t`w>zDBoHP4Y*#`r`E9R)2^WGjjLKR*V_6`v=AwfoZF5q&bbCJ~7gn z#6NCAx5Q7*=rPPp1hdf5&FE{qy@KxmN|y+f9zaEo@y<=fv(CHBbg5E*rc|j_+plW_ zZC1s#Z|S4qi-INZoXb9F;I*2cI%5c zdLO~Pwf5f#cS@eMYM(bRZC34nm>0|@$QE{ByMuw6x_|~SKI}iJsLYM&V!+q0|75-d z+ooQl;XAcI^>O+{^jC)@{_SAmE{uDto#~d5Jtvd(ZF)y!EkVTl6UT}&Q%8{(3@LI( zR*^Aci-yF$@yCJIrM_%#Ys0!O$Zq~)SqUV{O9|~m68t4A!6Xv+_FWkEjt`h&KgCb7 z*`=WkOK2_;kNOcWE8;;SHfDim+s9^fYAdk$6Cl zRA7i@;axe&;Z$d)#K;y_by4pwk`@NZXeCGlPVG?;!CWQo7kpbLmk-NFO zfipr8CnlPR8HzZ3@4HxUr_qzg=aVTu^W2AqF|gv9HXHpy+~=_J3d{VaA8{Tg{Ym5aVbQKa&!eG$7z{G4;CAPSv+ z8Dd|z1R+h&8qV7{M)7t_{t$SD$htLBaZP@ij4r@Hz)-RE+h@z&&C!ZE1rpwpj2MYp z#JElyImfW9Z(+;{JcraaJ27+xyX^$Vc>3XKk3o9M7eoXzi#`QsV;4nptvZXMQE%(@ zjUev;F^g7Q!?3jx{-o*(>@d=JiQZu%sDf&@^+>SFFVpa9Mf0G{*x@`R@*q}kE2wlY z?~C;#2Q5=(;!QXj4~QLD?U^=*ajad&7}l6ieOnq&(!Tkf;5dk zgQpg+li_JBB0H!jqq0-gxb}xMox?291g3Nz@}n1!?51^G2jC*6lcq&TH-4B2X9%H) zctu4%bGv&KBrag>%vP6oWv+#hlAh&jY{XqKnCD=-RrfZ(gINMmS@_NX&m$`gdsbkw z(~+S;5)@lmw;+%>mA~tAqZKXju?PicCC+*sC=0|76WJ(3aEu4zLIQM)FVSfRPQcUln_OWyHHxOJ`>FuLben_D?Mo`ImRce8^>@bevje)7REQKy|Lc$ct&EkjP({4_JT>&8-Vkwb?2N>3|Ev~0G0)-f;zgQ$b9ee1lnAT6Cs_cZ8-;5w-?5>*wmw817X3M;38zSC}`2c9r zs>fJ1$HJI0Z*{(IBW127^A66K?sC_$V1xH?Kf!YztxDw`jr`n+Kcux1jjt1or>29T zW$-gDx&UF#J(+JdU?%-4ohf$=SN|%umwUktc0AwCTPJcV0Sv;9aC|{9oVSsaHwRiT zXMj93+>x&#(Fx!L+DMU4irS$mMh(Um5W8k*EO3{}i&FH0Rar%k8H_3-YGqbbR*mC{ zs?Lf!dob4oqLyVv0lS&HCJ}XORuo1iGEv1u-JFgZ44q8qP3kae+XJ0HZ!rEs;umE_ z0sol-rx0~RR@C`}QPYUJE-Px%VAOP?7G_0VFc>w1s0CS3#e-3$L`Bn4gP{(gk#bx& zG0z_c+M5LJz_4#|FLU7UfXI@DWNf?oCPob`V{a8;P8nbh`@p=@+OP$fO3gHYr8$L? zEV#1jKdQ^X;6btRZ^2jOh9ST;WGvndSwqHSC|C^{kJDf(Gaj0~(_o508JNt|V9Lpg zIt`{uv!YIeDY08JOXD<{nx2jtoEE{UZV_c`5|JUjKU!e1! z8lv%!;NYs;iT{gsGk76k_vzUldI>u6GZq}X4sqVc-(UR8VdBc!z%&WJvvmCkRUU{RXr;Yeme%sGfa0f{2gcO@OkI#k4Vg^eODzfMPxqVyIiz!}Au zbTVoy>QGY3NfQGTffh7UKr9F4CCB*klCVzzigGBUZ%JCR(!It%uRZ_*?!=cokLwr? zsV(8qYvI7l_za{7!Qb@5%*dQ=l{f?ute&g06GJ2 z7}*4?nfXuus+*EMKH^?6DFZ-b-vvO)KfRuTlkEGO+y*Q{&!$YuUEt-n3M#lEEQ(J} z-_fqjMc~beU!QOPMV$g;FL2@@AKrzf@v;#;5bBfJaqY;VGF+kFEWx3Y?DME&XkAHB!L0LotD9dE*9qr-*P*GSu& z1M2>6EiT7>hl|eZkgMHWMCLYiY&*}d1J?$a@+ng7j)%eSs{3zR-Av@934@>tc zzy4!;2I@!rC!ZxcQ1j!`cp3CLGun4_KxS@kZyVhw$Nhu^B#iQt%pZdOFOsul!}0mF z`=y}cekmWU<-&W>D?@5=exWTeCyceyy_3jgI4f6 zc+)dTo3|hUw`VLYP#oio3YP4-YuIep8I|wu_YHN@&pGi4uEQOM=9u#1MQdS$SoKD( z0*xPRX5DSO3-9JGoD9Ue``_ceCPWi$mEj0^G#U1!6`q!fI0Ti0Q(^IA{XEF)*Ti>;w~VIqV!q@Dx{2dMeK z9&3(_Hhz+mR*25?DUtyZ-}NJsiWp%c(q#T`_z@2);*I5})9+-hxvstD4hJ^|REC05 z^}?)i+BnC0*eT1!jz?Bt*6T*x``MK?PR>6Jo6hET>(2_;zZMMxRFE8eYv79$zQo`- zctN|X({7NQ0ZrdiX!>-HS{PLev;GZ{{-0uvomMQ*E`@k-fjs12%Y|7X`TI4%)wUk% z@%`W7>OFRRVyH(r*HOiIU+Z(-aKn_DsEKVcIE&gYk35&-JUo;2?D^8&;35Fa0#)K>FE`E3M`wB)PUul%j z1QOtI1D^@-330?=Rgt0!Ua{53M<24~?fdzIrQ6rV-&^o^t-3pa7e3y=00FtT!s+Wa zd|b{Pf|Cl*=0HA&c8u~*Qmk)7c3inmc=DOv`{@e*W?-CcYwT!#8gdtg_`p}aj$p{R*@k<+tCK%|fgQn6HvAA`w692kpxPPW z=P2NCa0vXk^8dRv_KFWZfkUy^Mw}6TtlDq00YxhgF|b8YcUH+*Z#!&ez8Bss*l_{} zIt~V!yl}3pX$f=~PG`D6N5nb33wChh1MrZH{oe8fIwne>lSwAn8Avt&IwqMWJd;eY zGmy-Hj!7cW$s`f%3?wn2W0Dlbwq_S3&`GB%>8d%;Br%|~*}NLi*`r1yxbkYBdlXd} z>4AL{l>i8p1=oR6Znry9_`kFY*^qFIQE0no;g^j)DeR77ubVQ63$W`sFoS&f!i(iM zt;Y`eu=UQwPzu;e{faxGZ`D8`hfhocZ*?09?pmM5Bj6BseTVbHZAw*{ogmFmLh|l> z(!rcRl$y^$0ku9n_2twk$yv$B(g#e%I!3M_+iA5Jd&A}K79-=7I!qoU&)-A3!3{VY zzw|BpLna16*bUWv!9R)h^i*>C-8lG+U$mA_jKA9rCPl@bGWYpN)jpZtg~@|tMxq;5 z>xmD9HhaMzLat5*$QF&yyd^sul7vyWH~H#XN_63dq)T&~lN|&RMUc1Za{<2+cPo1L z$w!FsioSpV`_n%fmV-D1cb`DCq6wP1ENyaQkRQ&XE6_0D6SD;Wh`562ROrS-7Q88d z2t~7>{_iA5{-rV0j0?JeMXS6d`mVi}tKh z9^jr$vL2s>?CoxxFo42akIxx~+8C5l&w4g&XR}HOt;PPmVN4^ZBFb#P7b!(ruXHNBqH$xJVHXn1~Dgh#&e9Pw|snO++@k zQ20)K*vNsNSdX`-ei#pAANZ%iTZF5tdq1;^EyahZz(M<8iwDsjIE)Nb6u)ipak9TO zUE<`ExuC*=i+D&SCmXTG!?(gORF?^ymi!fgaGoxdfC`Z%AgGOKt~c3WXkoY6j=k3B zU@wOYP+P|;giqZbU$i8_*Ay~Mfo}-*JP+pBL8v`blK;3x7pYsNebOm@OYKNb+_2k; zSyvp|Zb2oe(T*L#J1^d9V~sf6eKF(HHe7c|K5bLRLGP0T4tlXFn$aObzCl_;iLl!N zeZ+<}WgkEBZnw75BEmoK0sQl}l~?fp$tW~g(Mu2$jHO0f>*_eC7X*Sg+j>wlsz61w5sER4 z0;7!|XrhCm9hk}3$KXz50YXjfK=>)J6=!@}rR=ie0gRzlRhdRTk#5wBYLvu8Z00s; zyNB$Ktu*OLHR%9NI;1AOa;7F7Qj=aBXwo5?gw!@oI#n1r*m1yY6>5oE0Pm@8yMY3h zK2lQ1{aLl+RIA&_EIT+PK7E!uI<3ccnDI-Pxy0-gQXovH+u`m~cM|EzEU$oBy$dqe z5%F13JQn{kUGXGl)ZB#ACL_?Hi>1a`>-Mk!rnWPktIv^-V&juI;*;RP6z8|P?~(Y` zbQpV9op|TaURc|a)3&QxN}&rKNOLuESd=s&v)bB_Q%acL=eJ7P&82C-J*ZJ}lgIa1 zk*zfG0L@EfobzBepKrn5ed5r?Sv z<>4qtpkb$#vq^1a4Y-Zar<`kZ!|{(v3-7ce#+D>Ek`QlTQpSqBW0xGa>QgiY>D_f> z@x8mv#_4bTQYa{ec4&XtJ!K#NPj-#NPRScqeJcq`fHjm)qHQ?N3H8C|@&RsJxMXY1 zHAG@W`h6JT`HU0la$h+9f)zPxmmIO`|BoGf4186|L)^9rr}n4;;6v>%O7mz4rAa zRm*>8scv}-%q?#bPmIU$ysvnTT4s&?kuRZcjs02iPy7&HON^*L6gT=ISnkpb=f(n- z05)^jn^!NAC$mx^Y?KYQM%j2WqwK;=*@c<13o~UGX39np!Y{kfFB_h@nmeS&kn<(- zUP_hWsmG=s1IWuOUY9I=grLVBhqn)9BkKD0)uZlVXmy+-V2$sv)dJ5`_f2i@8a+5( z5n0bE__5of)t4|}9r0!dtmsj6ESJA%$NC@`e0>{u04nP1*bdLE!q9^xw58Gwha&4T&hjJKRA-)DgNZ&x6k)DEj zQ0AVBx)`7K+b^8~L$OFgCA7Ij_J_H5Qw z8rkQ5UNHE;Nr@0d|LO>&KdevmJx(n-C>rH~>~W_$_PE5qu`oLfw}Q9H&4Tf~xuz_@ z1qS6Fu0ywNGrlr9?`jlhLrEl@@3wuYOrm!~@wp*V^GOCinGbK*py-VfzHTJ1Q;}`S= zh2bP}?3G7w#JEFQ)RO(LDZ}f22GVvC*`&y~6{%L^sFIv&-@X@_oBdBJ!wbB1Juwi` z$>&@0(zAcFBDUxgb*o6H6oaD3TGrjhM#D|Qc;ReBcF3yz7?&0RF4W}R-XH5j7JMD> zgE^>sMcQ%O5Z`|P_WmH#STh`#kF>nz{RzH}>qj$ z=a`LZ%&-|W1_zb$;JV)r`Gg7SY9^#oG$A?4T*^{d0gSGAQzf>mM7|d9rmdeErS!Pm z#E&SYDo#px`)KX{-GnTK1keTb>2M=~?;yRtxpKC(yJ)V;Aec5&GhH-3H@n_Q=V0PA zZ&sI-VIf2?ZP2Rry+$bX13C1>XDxF?+x&Ubw7o@=-SZf`-NUWg?;yw&sXz(^a`lAY zu%@|AOq&=#x1-l>gD^NK7+`I949g&Ho6l3V*3aeo2z|X^saT_)b5Tym0ry-e$9Bmx zR{ac>>QzsK3jf@h%Bo*OS%#xyB&%@19vzWOL6DqPj6kNo8?h~{M@`J93_E_d*)!eN zwr*ea%Gyvu1Kg&WVvyW5%CLA12Z&NAZsCZakcZrqOdzs9Kp{AQf^(oLbuUdjeY<@3 zURixHxPw$f z;xs+}5W=c{dF)jS=N9q|&Sj3EMhbLqe;HUd+f>HWYSr_^0KZktvFMmap8=4m0=NzB zQlPjwdxM22rUnVFPsx4n?t=Np zn)0mLk5VyaEdmJnw8V=xz-sUWY*aoHWShxBP|peMWpsy z58gdAxzKrlkliNUvGUy}tkKH8Es@TMVCpd<%#38txL(E}>@5F5_G@2O4(` z4mcfYoL9Te97?>Pe>DOr3i6LRx^>$T%)Sp(&{I0q*3kW99AnjHlh1ga#>a;i{J`M{ za?D|-hfYMlG!~Kk@S3MN7q#&(Yt(ou4QHjnr-7730++1wO&c6aM(iU32Au*1TG-GG z;ralr+y|-q_SXbd%p$IoU*ciZfp#jADI%NMQWrzW?qlPtV&`D>=K0zCH7tLqkzj!i@2P~!;`wyFpv`;#;d*v(sYl(VN|&pfZ-pR`L|=1s8T4Exx*3~x1auIlH#+w$v)3KO!tG^V)XI+s(z~65Mn&4Sw6#IrsnQ;ot@Zz^ za?q)4#h-)O5Z$q<|3&`612;8`?RelU_g3*`4o{=)nffZ9^w7vttd|iR(*10owWe=)puZLJ97 zH)d7+zu38{Bru&z9S}`Lwfmp)UTWU_>4Yfz_G*az zGOyl=K3Fu)Z7tl5S2@Y;NKXNlI7YKEk%Gi=)%LW+F^8BjI((d=H!Rx?ys#90&JO|Y zH4CHOr{eD*eC$3swZFWgw>{6HJh6OdY9-T{ z3@{FM!wry7A*|m7QyO`VZ}F474uZ?Z44-GHy}Roo6?S1Xeg*0mUz;RiMkCFFrt+6! zksd^Uh7t~>8fkn9s>f%QVi+&#KJCQqA}2l)dUgN?2qI%;Q&86LB$u>0N+Vq8TU3@e z0jY&O@sZfxk%mRxuUMAh+J386i#?VsG*&fGnm|)G^xO}QpYpDFF_xNyB2TnMrgQ4Q zLb8TZNHryHllHpqK;9gNj`XSt~y9@ z$)7F`;D|IJ2Pul1X4M|2&P*2A9_Xk@OsG~a44n9!Qhn6jh`S=kdn9L)n%6(ZAD4CX z#7!oW69dV%ZZBGz#|e_}lyqC`pJFBl`bfp5CCTJhO)pK=);dhaa+r=fkh#>? zl9YA#@5!3J{BWzUrwZ;HthRG{-$YldJz-S5gVweo1e+nWn>BPj$0{rsXB7tDV_m<) zy1vPp{G4^&9_t3E3KPcRtmZwU=tzAY^8-*7a2RMVGxw4aj6Gyr9?hZ7d#DpUqu{$B zT4rb9Blvy4OkTJ1*Jw>{v#x8U>{-^hqC6hK5%QVxS*?XWt|t%B_+c|C$jA!?Hb(;8 zgq(HMx*i93*XNM^DEW_402|3T{s7BT1CHHaIuoc1PHO+CQ9_8Vl%Cc$0?N()l&kBo zs__O6r+RH7r%?0NGa5eV_NqiZXT~sP!Ms%Eu&XD*k%1vI5OUE=?|*=AbE$ERJjLqC~{=sk_E z9Cq^jM2|&RE7vAYo)1UGdYJNmyJKiFSS+LpwLC!7mQ0lP2@p7_k38Ug-BpPBEm%2M z7ZKx+w{MT@)&w`?u(WcAnuK6orWZ|oUPS9g@=D*y)sEJ0)w{enC8wnyl-VqVq4V?4X@ud8cd%wjoax@R#@t#_cMru8H~W@bPlx)L?a1n zW;K*xrFt{{W0)>P5Y3YVM1|q1sl;T zJ8XBnsEn2KRH390C044(*hk;nd;;mHLTY9~1 zy?WbXsV&z@0!aX00`Y~HszFg_j7q>3f+9TM-`+FHgnHZm{r{impU)?A&e><5{krzr zYpuOr3_cF8>q&e}6s_aruD{kNhmiVfbEA_Q+)ji-x?K9{^%5Sk27I8iohX}7c0br z@e;mEJS-uTdmtr0>aX`Vst$x6z-C=*9fZEHjB$#VBT(BGD8geSdqn$=qndRBfl;6{ z+iqX3UxjY`COZeD&JW%*q|Pf`;&+y7w}p;UlfbsvZ0-2C``NT1OW(j#TX))MSwl>y zX0wrZc4;dID$G`10crdX_P;On?|(N+c_O*_Da>k|L6bgvgUjR#r{>etl^iv)rv|k5 z{X4e?$m%~HH1A6G2hjJ>s%|>x_7b;G;rg7`t#}2cU>Lk8 z!op~+pnpaN;a+dLPJ}rNa-SpJdO4jl%GRyZ15X72w|3(n6 z*=axg4lAMzFzVw6(#FyF8%$uC0G;On?Z~oC>%fZb;vorj?!R~Lt02=7;jeke&|F7c@f=C?e!>j4zI)$h{ zDg2XKc&j>@l8ri}dGG>VdM5sfxR_OU zvS0KgbxU^U;wFdXT?z4QcHSd@MLh4e5n|^UC4j%9({ZMIF#hrk zf_GBOm-vcZ8P_s~CcpV`YMDFzH?w)9^M`FE+mql}425p{*yAPqyRz3)K&FGr-fW8Od+Qj8TPaA&;M1WgIy=`#o z&0ONSLDYx^p-spq^QQ8h^Bk7x*;--7EAdhr16Y?SL2~}^MqIAAp#EW(; z^P|(U`2dGj=`T85d}jS0`=YEGvgzrZJbzJ>xZv{vXxwNooCSE-+(bL`@*2=>u0(;>)KQiv9CK}w#$cZA5nxTD#V%q<5To{o^)WOCNN z7Mbi7eWC#MVxM)~Z`fzE!%92u3k?O3H(+~vwfTrrMp+D^IxJ1aszk zv95{H(TS*`xJThn=TN~z1r;= zR^3Lu8|W7dBgMqWei2D_f7`@g;q?R1dz>u63#Vr|;fv{uTwWT0MbRUsH%m4Pjt3}u z^x-SF9q&&{erB`h4=bQGV**;4r8oG^wwsb+Fyvh4?bc+~WP4wW$MA$*w@az7!d zWkJVrd`v=q{H5W8G7`6d4wCbj%wfOKm{8WwQ)T7z;jO45p8I(|8Y8^YH~u@0hpLa4 zHNA@j%lmaP`g4JPE(?+cnxjXEKFzv^^f^w$>slvlV+&-;k294roRCEA)LZfYffM-m z1=%n%d@(gyQZQ&iQIV1<>drT6jx$jHy9_B`l2v?2EI_~K-SmZ)c$zE?+PBG zFr+-|xbXZZ6RtPaD$0M9bkIP9ay?Y=bCavGhb^?XF6T&-ViY;yH%zmCXKD#VZepc8 zlmy#@MNP8KJlE3>HCx<+24Ab+-HZZcct0CSm%peJI&jYTSh)wS#+wRDi{1gOF(7vW zy#ahU_0r^flbzhr%OY4z{iVf!aaO#`4INy7d<6|2NnL2t@64%Cl~sQHiLCX)SXVl)l*D4zZgf8(JAerl6w{Ks*vJJ z-GkKfCsT`jsLZ7nswgoHp(?H#alypB)bd?w(Xw7liJe_TdJ{Qd@qYN|TZ$DDJEWE( zM^KZ&@rgN>6oQWHYXQ~E!A`Pbxj9`y$$c$KwItP7b^fFl?G}fVY>_5O-)pT57>ZUj zn?}^-E%}ofii{F79GAoyj4pN546jsaT|t2zax=zO@^w@l%k$(g|!F?q)6b_l+UETkv#VQO*M#UOBCHU`4`7vHn+e$5+y2i}u# zo&@kDxYIiW=ZW*g?;p*`#}(GM|KOz^sN~9!vJ-2`o zycQ3$)%lxx^O*VzVobUpCBCh-uYh=?*Rv{fy+2CaCptkW;18ffm=Nz@xtJPJ*~E`3 zDyR6pYf7wOFylqPL4z`d4+q#QFL~b}*66Pb*712T5*DO~A{*AIu*mv#=2AIQK7=B} zfA$?z&D~NYaUjxi0*#mB73ixWcOeGO#lqj^T}Nu?2HetF{BNe`ast(G{t%EmD|xTq zDI-`xb9wl%({MNAQ!W|H9o&egTeTxQgCH@jc#ZlEY7~ae`*&_a)upot#RY{IaHk^& zpApx|Mf}LQUfMS!9>D53vXDA=l#c(P^PSEU`p_kaNwTbqxC`Kb0#r7-`ZdJfc*S`` zCH1ebK%_LjU$HlWF0v=sFEt`LDVjc2@qFt5f(=uzCl6WkN2;Lg;kw8+2P^ znY#-ycG{f&Pj1;C4Zou_pqP9=t*x76`Cfn(x?poke4)?wb`PH&mu$6{X|C&3(b(p+3Tva8F~#x(A}eP z4Y;=!lrToHljlL6X> zP;HQ3YP8gyhX14hm9CK3zTsVaH3e>S+7LCuVWQk|xD!R)!~P+-3?hI=-FFF*TX!3> zsv$)9V0fYT6pWdWfQ)x+z;N5~o6Ptv|9itXnc-VrPK=Y{$@snD6E*YQT6)&j4{z3xme{gMeIWFcnnj63y_3ZkUs8{nImc6jI=dLLQxJCw zBJ{=!$LvFnFc3DJ+;f<$47^Z2P2ekfG9zC5D4Y@pT=Jo}Vg_^Xwy{7u-woC;+$AA2 z9TU3Yf9oOVg3?*HITyD(%Q`t+ID{Ml>V8)+`c2Ff_4-B*)7pbY=sfjiJ4?glVJM6V zDNOI3dYnGXh!-SOK*S)q0@8#`i4t zI`4z3*hmccbeQ*nNcm<-=Z7nzdAmd(l{vWEn?aV`oO(n4x<@SmeBNe`JF}`mPWJTB z3Fqpd1gn~p4-w78Rzcsowe5CJL(z+Vyo(8TXCT=34gLD=zo9=R0S?~ zoa-TkI+5uZ0nViufx|VU0VRw{TnMijgi=FPY;kiue)m3YNz*|vGeFe;AMwidobRXM z6hEdWVu6MkF~AP>_HfYs_C`!LI*+qi%KpNddAp@g0d)3U`+;AYb8YoQ-m|8%Rdo;u zfSz!Me3wwn9rz=FWkeHPXFfvcatQ%Xf`8odI7Y|8B9MLhj-7_O?EErG5+Hh+6%5R` zmKDcp-vcufmLV36YZh} zZ5+kVf-)%&SSb5`AC&q3E_~sE354<)@Rh_T|2=%YQoBLGRU5BeYoW`+KV%G`ZyLwY z8~8W0jRx6SRgMw_0F{`{H4RYO4WO8wmkT!H@hjgj^UEqE0ie;I8~!PUCz|*X->1!2 zvR$FmUvp(+W)EW>*)5p8`2W`ai}OLVb_J0xNPL{Bb?^U^uu0-HK9Q$B zfE8tnFi9rh@fyvJ25c2Kob-2fdgY)1H@oEQlJ5=t!ck@yz}Sv{<#H)*yds;+sP{pP z>H+)*r2^T%Tiw=}2H%75A8X)SjspbSq2ls*?URP`MSUS3L{WR$GiqS`m1{U|X;oE$ zNYGn9yD;16lZf>NiCjdXS=}^_E@c{fR&7Y*5Bm*XcgALxI6rE255*gA@MLs9qs+}@ zR;)wJU$?_25G8jOf&uhCcxe`^wn@VvnT=geF5XVOLe6;A>E4XQmvndjzsZp3B>C3} znk)HN2d#E;|5VV$747*3qmjVPih>L?4-Ey4xH3cY`TX>=Gp-fV8ok7+&zD z6$Px}1-B(MN~-wWPT=40|BHE6Hu(S7;6b4P4DYXHs7V-a8g{`7W8lf>62Sx_cNgk# zCT8y8VpU{=6$CUCY&KsS2C1Em{y5I-ore1j;koU?hfFvkF_;?A0@J}m7&ZAjK`VE|h#xE^?htXrSIA#=FvW0A^-Fakj#8yBt8oWf zm&WrfKt{o|L|wyPl^G!i?kP%?AkmJ7MEtPW9y1o?VVW6;{z1x*H>1`TxbW^mhQgK? zC^}4@*@h3+80d3O3@(jBXTS%?lO@w4f;PbSD*oG4u%N0)79315wz`?X_Zhk=)D5}v zX*#Mv@t|r(mu7YVnUsG>o8eYMG#dT^pF~4$6z$VsPNYp(7$49j8JU0@TF^mE)}>p= zmx610VBi|Bq7-wI;A}B@Gx{5!)KyXA|EDdN^g$z^8r*oD_I1Wkv#uAVMH16v&NKo6 zU2+H~MFSVd<+8PeUX&tkPKpyWbWE_B-QTF*bJ3px2c;`P5Ba=Q9{t5z58=_iu+@NuGJuVEsIWPB zc)=;`FmPyJRI8^%vC+&sp?t2{TZKLNm z$Lc>tr~Zo&xaL6bL#J>b5n$P^4CUR5(s=8B{xOwGL*k!#o1`<~JiU&8&^7VWyu*k;F=9@zMKq)CyV*o*H_J0qa*MDg6Z!DBtC*WaQw>poFv)iUV z4$`*Ct5&6+qLfK+;@>p%L&ICp2n?t))=kuKt*}O!NO2pe8__HiCB-OCVumS0or9*6 zGt8WCdkYM}0-qF`$IFVrw0ba47-f0^6UO{nO&a*g%iAgZyPJpN7Ts=t;#Xz@U~a-J+4n#(E-J9T zq1(1W^`nuH$)fKK zoyc^>e-%ItCUUp8{<|U)57!LWz;T*Ok-n_ft!YL7yP2P$`)Oi6D=>+_EKry?Y0EQF zh2Yc9PtrexU_ldTavFeG&Qts%YS)bG6&2cz9hNOQ^8i6nD*&fupU9@nMvD#-^HTGV zN03b#7Xa#n8JmkEH+iL{(#wRa3xjPJPLZx^_ze;huk*v;Y89GF3F(}I*Q3tZGS+5?sx5GL`-oF4^fg4Mg`sD-Am|($`tePLzu;{DgQ47Y2S&24WR+* zZ#?WyMgTq_8QfI|O3@A=P&x{4xa*M4VhlAqtF+iLKxxtFx*4U#K7BX#;U}AHfc1`) zZkyGA!*4ojaX9@W9>YNW@!9>x^pHQhn7)XATqyDbX!_@LviEYi+lqAs`oF@h#%(}Z zHMrDw#UEQit%w5*VFL7F_9J{W{)4nx0)NnjoVz%ba-I#`H3+>hR176G=|W8(R~}Kq zx-rl3>$?YKpvhkV5~yf{C&bOx#XTlN-ox`Jiwx0{E({`LX6+ClZAaqH~fSg#_*+lIi&a|ig=9*5T!4X9Df^- zLI`7mI_Sg(@yqrs*{?Jc;jJuMb)SX;ZbYpq-t9zxNN(h1$e46Weo4^%D+0izb4(LX znx{~-;09zUQ$m?TbINr}273^2<#@?us1 z^;YYx0tOLzrZ(8T)u&yD|Zfrl~RAOUS*c2c2X(qbJNAUh3 z3dZj|+HALuBHV@?!9h$jv40TTcNi5wpL&Bwljva6ttJDReNc%ur0}a0JuLhs)&8)L zk)p)DV~8IZFyaN%BTh~Z$1-a!mx~-tNs*ut@C!uQR16Rzw2vt2SIwFJ`YtpYx(1bd zT0))}ovW0#yw4?YwkVX+24b`aI?8Y^Zv>?ETf7)84dkk^=~|b(L#~R>1ZYl3adwCH7e=jxRkp`?D>@VG@${7#*)$`;xlFdYVc)|3q5*IN=GV_}G&k|G3y4F$9Lcv8f>n3Rd&q9Ysu!pazM z*$l|X4goi@_(dOQ>c|jd&I4OJyMS!n!4^>rhgT-|N5pb5M_9iGC+G;P6gVd*9``^C zVw&688YY^m<=925qSQT7=6)CiN9ieTi8e;2XA32Sn1NZmGKULop7zD}7K|l=mX@ox zLBBcmHKVbPEJUMgr=CYX^pP{O)7(Ai6k^B%Yd^D-mdKE6DkT|)YK9no>F`!z{R#(C z$X4FmoMrB(wL89Um-56u{i4o)!167LB_LYxtHD3tCnSqg{H`_8k zjFIXy1pAthhqz7NB|3;*`4fPRL7PCkkfDnqdlj$DgUhS8hB8+ea2n`-w@*LG9*@>k zaEwGiO{_V)Jhk1DF@IU3bF}gHy`tCX$dVSLLe{ppHk1By($Az~{egosJfpFza(vBE zl}J z#S44UI<5j=@E#dM)~%aF#xMtrznKQcKQ-){4?2gjgzUhZk&>s#QL43<;;x3r};I zXGdAo`w%g1R&d~vR(vDv)SSg68-n4VcQ%LX9%t;XdAZPxI*E10cKMwjwUv54(J`KE z&7NaCu;-+T`gkTG1Q$7kwmTJ*wyvxr2R$OiJvf1y9Puvo7jJjg5?lg5eJHBxZYvt1 zJArvvy5g;*sC%9k1p~&oBj9;iT@4Qhltgnt3^7hY5BSC$-e3NxJ%?D)26TWTV+^eO zx*%&EcVHxqbP52%vD)uy9VSR)g)f)CJ2$RYW*<5H4EsVx(H^XAGVxqOY+Y|jblRXv z8g~`GY3;L ztp1wI!Dj!Fo^F@P>Hd{}qYk3kjJN#WY{s=4*^K{y7kdB3 z!!(>1zqT&|da=&D7;C?H(7u?d7t46jXxHO6cYF*-Q8%9>;k&0qM;efyfc}=4gN~%q zNjf}nC?g2#!;c2OCV|u&1z14Y->C0MduNi+U&w1S1Bt5?4+Sj@0Exf{lzqU7XmD&Yd@5T0tU(OLGodak{$m6ILbuWz*1C)U~PhNtXx zQ;aLxUL`6#vNp&ivSBvAfyjo(P1+{;hz+{o3=L`|Je4Ouj_@Nx*ZM`?uGZ$wYmqFx zRwF}^;*h(kkb*;zdmw(p<7^2}(QvZNGEZwosPNrf``vPzrNln1vro(QBmv4fBiN^< zO%&p$E&M(O35X)$1!RN?e5kp8Q;gfefY5o(&eP4ySBLr54Qsd6hY!V04J&1Ncp1NF zmhY0xaQhia^=Uj_qCnE?al`9)UE(~}>O9s`;yisgRJ~q}=l#`DFUGgwHB=jdr*gw$ zQwWHmT{fyQaKmxEtMQXC)^k4>yT^B z?yGGX(K*C1C~BgTSroi@lUklp7KOkLxlcUB0}6IMyw%?BgtrXWu$neJGmMOwp%d%i zpcsoO$4&Fh)Jbn>2_J3L_w{e`eMkJBWWCV<6}n-cDY_$GJuo>tnH(CJ{J83(kV^+9 zuS+JMLvmzwJEIqg&gC~)wAo!Pm!^@`9ePxq0e5wWDI8n>NLcXUM&l+StO+JfAmFaf z(*r}!1Da@j9dOsaq&MOH${h)70@}hp0R?|#-KDI9-3=p1a>LpD28yGaN+-ICLE;n5 zWYAsMWl7|=a3f#nFBqL`ycA$D&l!0JfpLfIB4!)A`r05_mWP+}>xb8O!$0RPSZ%;D zs2DWid=erC+^rgl8=jyn9tsGr;SPna3(e~grcZ9TP%k5#Yr(E~RrL`vmd0%f(F%{- zgRsF}yI9%QkbfLEiJkmdd_^bB%$njKCpi#VJ(UXpUz;~RR?=`H=mhM1+i4F(qUt4F zbIlo&oh-kDW1GdB)FI$#1`p2D(RDl-MH0;S`0ISDzT4xz5s8|mhD=}Q)x{e$2~PMB zo5pBpSX#EWsf zSRVK%PJA}Z_>l4XPKq58s}T#$atdY-;$*X14Nq5%jbL zT~kx2czq!WPQzb(#*@DpltA%%jZ(l}U%{osd8m!{F0d(G=JE~$R?QjTTZ4jOv^8?h ze#W%YDMe0!y7y}JQRwG8cu^~Ac2}!SBL5~Eu#Yb1F@D{7n6^e6X>*$yC6(YdyQV*^ z4AP4_Xo*=b0sFiI2qxXY{WQvO!@c~H=_yj{rUY2N+!(5&w5ZEp978@6vt>zOLoYOB z4A#${kqrO}iPvsJc1EP{7}CtLCf7711xyVwT9g8m&MrHFMeU$Di*|GAYv-GUviN5} zk#e1e1GqyyY5!!zOL%u>#Ji5$*=nvEexFP6+#F}se<8wWO+UpmZ#8PcHnUhX7{IXx zJtOFpwgla^kL#^#G9`Y*cXs_n49?(aBTMHWG--V!`TFUBWYfYmETd!t&?N(rl;lI) za*YZHA(YLQ47vyo`ykR-vcQuziIF2=N;Gds5wWTLMetEEO-;WfZU!S z4-C1{E=rWZ1t%!k#NYFU+||7#h1{_E5Z}s*4Mf&zEwdby6pGjk5%a0kA{#bCa#HXJ z-lmF)H}YZPSG<7l0U-Ha+ws4Ewd}IS-!uz8HDe&6cD^>7&n#~I*l)4OHGgKj*@?8o zorXtpfF!f9H*8d6qH8<2KuBG>_erQaR_}yz_ch58f@Rfcdh7@`y@Ti)X&{JVJfbAo zuPDf+S@7%l)-HIn64_lUNJ%aDp*tY8(H@VORJX-6wy%k)_Nmuqr}Vr4XOY4<)T|i9 zYEK`+8K-6y+BWo|9gvNwn@R;z@iiTszWkJ9P{xg|LI4t38)rsnNho4Ab2jR{DS_xz zyy)!gd@~8^d$81&2Fnh!x-os(M(EYk(f~Z|HYGo&LwPqKt12fx44%4+_bmD#vPsJy zy>7qflkP94eUpBh`ksSHRE7#gM*_D=~Os+3@jp-~${HfoX%Z%HPzDYO$Po z9zY!X7V42W5$a597(DY`r{eh-7Y=fQHXEm8v+!+*GgRkxPHk_IvoN{u#8KMq$WY8P zUcK<;WjuX#?%6;n z;S3CSnJ2x)VVHUQXT9y>frPvF>S5R6CdX-bS=x?8Snb~~$GoRFOQj{8q#R&R)zzS9 zk0kavXG^G$dpdP();2kR-#3^$a~zEyv#r7M#))1x zW25$TdJYmo(m=1|#OH3iG=lkL-6% z9f?RO7PJ^U67(S~Le_V4))#(dq_TB$$B?T6Sw%%Jctfk$jsDpHQ*@W=2FKI7a9sCp zwB5ex;R&kd0YMM6(1<>e5n1iM%-ULLu!&NAD`O08Ms-Loa~*UM>s+Z7D2*ovJ;uN zEWU&fX?z#u08@3Z`v33=q(HE`4N9FrVou#I^1IXL2CI96(QrPkkYy?{8{AS~{MLWg z$7Xr-m+^{OQhhMD+D99ZTbNZBbh9G{_$m37iflLN)4-8I&kOR%Hg%+K=Z>LREd@Q8 z^~h+Mp@hIAnWrAUiiG2) ztARIt>*N2ya`wqLDAR_4NSTBzIy-4PfN zjc{@oj7&mO(5=Xh%$Va6JT5YWc2uxNXH;+nq_iT}8dT`oH5w^hfURF2Y_T@`1QBL! zS}ubRr}DxqQ)@rRlZ7(YrWHz%XBM|wrtyp3)v{Qg;ht@BO(qgCk_t>iZm(e=sY#M$bTw%2yK9Z4b$oi>;q2#tncA3#-ZM^TfBT<`VDIFN{0u?AGl0gIRsE!)0xkN<`xIEfvp zBNmaJ*glTLY4`?!&_By3O|M#Nnc)~MMu zPwM86T7;33jF=g07xk{hT2?CIn!6%KHW!RsdM(BbIzk9bZXCSu6uet97LL!#xqV4F zw=XH@_9f-qzNDPnmy~n+l5%ceQqJv5%DH`3&K+I9i_$sg>ksfOzRdC?9vGYTz4Ukd zUWnlOX7SMHLbT)F)ctchF!y7av{cGLtbA5r$X=YRBGVsKUi20RKvl!AWG7fmr_Pt4 zjTh}n!gwfR>Pr0U`&x~QHO`v&DXc{C`z+~bo)r+w%{;DIU$~n!O(f`~tX8v?xCC4E z{?@b^*%#^bATcS?S1ww&hZAGXsyFrMoXo;~a>W{x+@VjbV@)7PNb6MEE&bCf@o0ZA z{yux>a=v<7$L1p(N8EnVJu}%SNXM^(HHSMfL$VA2Xs4Lunul z$vc%H2ow=(3Wr+=M#`c&uD>WoG&jy*V!<`nBy~H=SibS2`w&Ykf=y{P;(hjE!>2L? zZASLbO-ACAceR5Z*bD2*DIq4qFrAFhG(fOF*MI_myo|(VK2zkaSYjFcJ3DkD#?`;E z2Udd9rEAs-g$(`jPdG%HME>~m-yaa2=rbJn{(~eN{}*KPB3AYRx79=dJTd(3!%VzR zIk9*!+YaG|hx;C*+Fwy){6D&kNq>Mw)xTf3$8@R>g^wHQ1a_E~slH;oaDVxLY_Zu-S81SrNF(oA5vn$wV|Hf&$jSl~J zMuS0lL4$G;$R<6aTw_{%*d^~j#Rn4K5XqdbLBc`D^NWoOztc=Sp(>*_bE}CbWRJag z^*gH*C)omPxz4LMJ-WRy8)u$+ zdcl8WkFKx4W?vJ%^@k=4q0QbL#CbP*kf&c2opbuJYoax$V+`(W$91zYgs4CdE;lD>ci7^DzseF&%L;P*Ch}|y zRoZ*T)n05M>Inu8j>%tiRLnf;Hz+RzJx$=ZsKzw0TG}kq6Dg~1?gzQjB4nUlsG$n- z=r7u12Gk9p>Dj7@*|Nw5Oe)oaIL{V3Exh)@=s$!`Pizo=L;f$oJ&GZyE~CGZcn#sQ zt}k=7_+>f>QJbldVUs^HIh(`z>&heF%rA@lb`2whw_-oO&B$!=83(JZ;Aii>4!5Sy zj=8Sr0HKiI#f#t5-c#yhCA>wKt*xndkn4R=r73tzamS*qT7*VFB^b>rLZTi0#^Cyo z2haB@czafy1RQk*Bi?rONVCr5@uaAr{YZU)e$JBj#dJt@`(^M;2Ka^Wm!+sLdP}A5 zQHl};!MvS@Fh~^N_;`K|cn*sGK837EmPiX#zbuuRd-3k9F6vSiaU)giT(;#s~0FC>J5(02Qel*_3(t{ z#9z3$?=hd98n1VhQ~b)c;2W3}jQIU{(vU00nWQMLlyCS0APW}ON}OM&ynhaGMs3y^ zIKVu`vL{Wo`zX|yyEWI$qXI}0qy737dO-!_gpJ@tRvK;WmHOOx zzyyQ9kWkVv?@FT*`&FsL5}Ov{2Id8I%)^fYVNiQ~O5O4`30|p0eWZeG?vOMRj1dsa zPFFAELjSwbd2){^u;Kfm>c2j6#J&$z$4iUeFLw{%`XS(cdR5fBo*~L;`T$_rZ=irA z<7q9}^tM+CQ~fw-6f|)U&l?Z8Zxaxh$bV(HE9s{%r9=GyB}s~1e{X@fr3)T1O>&lM zGeyG@q6|*HSGw+LA12`^Wxpg1_mUo|SAF2_(wH_E@2a`n-EEcI&yzYaI`a&i_u+np z;)kWveum-Vl72(I8Y|?cxjyO31)SDwy)wtz4Zxca8-r4rWVxBk) zoU1346KtY{B#6KTTO?N4#76Uk(UWqPJ}!dYq~L`hatbNE_BdNuHH}wE>Xn@T9m}i0 z(MKVZ;-}kZjxR$=>Ycz~1z(_;HRaLSP8oKS_3s=bE=6O=#jO+OaBw^!d573_8zSeO z@ICQ!Udcpr;cy5S5uvCw!&kP0Iyd4|$`FC*RnR^lvfYnoLKD&H(({#Y7pE!*4r3e} zkm~SV$7K~u$U>&}qMN|xgcH&sjF#f4?>@p(j0~SP3IT<&pWVw;_^#vp>2_SW+|uUw zzUthx)42%=!^_ynIu)Ie3QomKZ2#CV;ox?786`MXZB9kjwcMfVmABeQ1Euq|nk$i} zSiMc$(5@+zd)IL)xN%&n5&ae2lmB;WqT1mn)}(66O4T$jRa3sHX;95gswLm?-7}R6 zdeloQASll*tpf`8-BFU>6{qS|%750BPam_kaA$flHC28IH;g8s{S@-3)oJ(|h_)2} zr$z0h(F#t!J^}gK>8SHw8{jB~xG6GEtsC7)VLD*x=J0|suNyUA_4uynPTA-A+Qq)a_Ht3eFC?S7$p_oAtHvg`6on3a7yX z+_EVgV^cuSQ3~K6@UIO5bA)RlIxhg=M-Bl%hyRjM5upCYjE;9D-S%Z|cvy)Sv^a&d zw(>3hoB4lRge~J>Y|Fj(b5_UwW)d;K#9PA32y+;%IHkWfcB%`yQMj!-S9tv&l|~+0 zS_$@kFVvOP$F$7$+lH&CE{Y1A3(}O|I%sd(D$(F+t)h??HK`=Ktok^dHuMVaFXgvn z)e%4nEy_Sd{1DYHHCtv&(C7s}ALVMw7}%Gmd$ zrMAkx#e_wXZBUjS1okKeRj`W#t!JI1RqD$zs}!**${0Pwt&sJsqD16+MXlTAt1XbM zW6a8Se14x(wZ-JnN~f@zyUp8to_L#|daLL9-prcm=B?H$Z^xzH>bbtxTk{q3w#2?I zNxju`eQ#FHS>~U3-z16c>jwU7s%W>@pB^o!WjoSUu z>tVZmqn>$4?Ehph@b0rCX6=we!?L0CjoE__x?3)is#rQR#V!SpVKE?&vR&BDQ%K-) zSTx_L`KBoE*?DM(h0Xbj!GZgCq@}ZwI;VZ)7qTrN1f|?yT>KznIpT6at68?&*U=* zM9UneNJgTC<&iH`d}rKgQ0ywFkSJ+0Kgam{N?EGLk6%SBKJve0hC7DXJfAH5ZCfS- zpV9qaR?c>5&kwj8!!GC0}<|VD;;*a5*B?KEEOSVU|#?)1LMYA#jGoi71YZI)Z zQqQj9?TcPaY?JO%pT2T1Qo9RvTvNOy9KPKZ4J;m2yldg-P^~2$9l?f)TmzSHFcOlL zO|%h2AGpxyiu$7^?6iaC%|?>@IH%OggMeQ9chtL#srNoRlnXOB}Y>_8=K#4SQ@=^<9}YS0?K))gd0G?2I<=GS$IRCzZogupiZ( zW1rdrXL|LnK1Qg>*1Bw-v-J#@2{~gaqAOm_%c9MklqlTPU?+U_D9u-^<6DS`r&jyF z2sWPxHlGMKp9nUe2sWPxHeZrp^I3u|y8dx07$9JV964SZz5ZCz%Ka0!6zk$EKP`)f zz7BBtu6XzX&^HAQU&u{xO@(R|T+sIM-@li50a zTbsQ@?Xft5Dpv9RcEqjQ^mF0IqTDwN_8#8#fk;28m;Y_vY}uJj+7k#WM8G z@Xs76UCgNw29o=ry+|*AD!%49PL2$W0F6&Ue8mJ4pPo(&f#xvy@x8;7o}-V`1fH?BO=Si>i7#A|a5$b^-a%5!cHLR#GjlJnGF+89^DA%X41E zbI!$L1Vd*@{?kqw@4@|3oDta6`-@+3Rz9CAvaAAsBnN?7#giAtd}ViJ6%Ltj8$g>Us&?@gDC1CHaVYFl5uKgcFYbvAL$y+sm7-?umz7`x9@yqN-_oqSh~V9K4PwWh$r z_eecR#qXGk-=Sj6gKeLw_%&zQ6}IBHoMk_@U%aJ?yQp}xI?Rb8$1>PDXZmH_Q{SAU zM)ax$KR8xO1gz+De5R&cpr7+7{1ckgJujQ8KIN&KCf(?B#%_0(-3RAK%187dv5@=Z zw&{d-^>RXB2#NrEFuP!ippdh*@Ux~6J}Gqbs$#*i#y2W!Uc^*(NZ zW1soVJXAgJ%(N7V9%bCy@UN-d`8IdH$!#9`bL+AG(lhZu(=hS2U$5}O_d6~C*s?9mod0nfL_+P3LWBom{t5BD>xTiB*JBgsOP-HDgG`?>w}cR)Rjf$wgNZ`vjHTp<0N2~|uQMwou??1<8BXwj zD6!P?_gYBv@6h|!#CZE2gWAGR5+AUwn)NvLy?J*4Z>_eB)h4-wWhWwc#^yw=EypYc zlW;2u{rH1)sb5g~P1>iSXM~4lY)Ndk<@cBT+vIz*oZAv(cqAuB4dxgCgkg|JkU>Ch z$WD{j%XrF(v@a-tXNAL24Ab-H^>{nWee84dPNPEVc#b}GFjFQ{tV+;z?yB2KLk!`a=Yk!nsEcy4TBUQTlLC#VL$aARMd z?{N1rZAq{paQm7ww#ixQH!T8%e3ur{nr4Fs=ph>iFwm|RomN~*i|zwFH5@+uRDgm5 z@R5v6zMcsNJFqn%<=J+B`5!fBd#X7Hxk+!1X^WFfHSep_Tb#o8?Wq2Fz7R1i-Ap*2 zDtJ~O-bhQAt5G=(+_4&Fg4}W?&4B8*54!P{c;$VC!q{LnRW`G4Ds^=RdXHEH>z<=eD;@j_oAZ5(OiY}z<+KwluOgtQWyRwBN~A#EyY zQ*GMR6efY#sky$7(>agb>R@9_d(v9%V?PI3np(nA7%p zhD~5$m>y23%Nv89@?G_%aSuLR%RJkHp6w*ALEc+zEIFK2+X*R?ME#-2!gct&It?tB zqLqiTxr5;X7aCo*VD(y2sD32WW`B4V{KurgXUe)|E$}BX)=ufuM7=)g&=5YA=p6m% zp%Hp(5Hk<=%etuA0swQ^WITlsh`M%P#Oll$F}0@|oS0ejJxVvqGc{j^W^Tt2Np)yM zjKh$eWlohaY!im(9%hvms%n>fydY?a87M$t#pWx9)@?qGEn@3;fHo7VF_`LS31ACqCA!1_p0&)+qD zor`jqWk5RM8vF=T+@01T-B)FRh18U)VfL2M;UR($-N-xL-)txBCN<}?jrctxwDlQ^ z2XY3(piKfk78?`xWdZk9`BNDF8n#>N`OrUegRc?OF(qVuUJ0HzB-0ST#vu8;Ujc#b za+Y=gDJj$b=J<7gNSgL@!YG^%b9mxONwCWwhe3?F-tmU1OC4y+cV>r=5`aU$T9xzx_-+Nk}*h$1t_&}Hn-WmwaP=P&}qeF3ClBsR*lHObs2 z=R2B9y4#cl?r)&Ah}p?*;3uA}D z`lFbT9HZmO9&rwy?9|?%hrljt)hYT=H)mBg6y7SZS>UuWwm-5YnYE4XtY4z;82b^^ z7ff+(fuyM0Y9!|pk{ho*bRGG(m6OveC7P59Ns_6+CrLKOI(K#PJ!UVra8IGi!+%P` z&KQ{|h6OP+ALgxcq!l62Iy6jO?6xvW(TiJGjbI}vL+`eJUvD{zw+NIyEb2E0v)&+k zhLwzP8pg6DlHJ7b41K3fzO2s0-VEIQEW6TqI*>Vr!Y*hJL?;2MI-sinx#teS0MUsa zWaL2I`fOm=%YV|D{zx` zX*O#We`Uc!KU}lD`~*9BLRc^_l?QmV#K6~6!Eh;#~A`;%lhcLNGf^v6odM>_}7M_avGVgb(Sjm3VEX7i`v08LM@) zih%*Yu)$;Q2Z8DsL1gfqPidzp5Pf_m@8;YOh0NhW->X1@&wltgheAJL93W%d=15d! z*vD8Esw-&~#42)hg1`by1aqKe4R2 z`YH+fW(i}H>wPG3HXp!#Y!<7M_%hm(JZ#||oa|_xJx#C=IUy_ef0E(1(Ae50>8FWAwnV7MJt3Jaf3k1lHvZhC4cw zop7+8vN`<)cJ}cPExfs3v;yof?B+D}bfXj}7O}3~Y2NN(xb`~Jb~w}9o$JlPYu=g8 zFfm>%`nsIKeS8Iin(3lw4GR`CUasr5sQ_oXc7?6xe3IRxGV8-1z}O5ML|>V`-vA_7 zX&%R!X~44^C2`iDsx8BSL0n1bZK z!u(%o_LgoYKyUiD6Ly-!SWp{mn$GRefLA5v+-Y^%zL^g=kKy>^$rjv2l)57y;n)yQ zoXvh5bgrzVAsnIKh^ptaBX3msIgb%JliXrCW^C^?@^dhC&SQv3>V8+>JFf0r&G(G? zz$OJNs|t?J9qa^Kn|d?5A2nlTDF&ea=B&$7S@CLhQ&X4McvCjO6UH}l9~@o_9#7mY ziKiVrhUKvy0nHxn9>G#ZVEBvuuyB7%q_4P%flj!*#2y944SqD`r6kF`nzfL~qxck& zVodF{3?+n7fRaorLIFs{R&TB~9rTTwIZuSm&XA`GOz<}by?Ijera zEGJGd@yVXx<@VmM#aW>Lh%L*`>>lxR+hq>5n_)Xk; z-t3L1-pC|jH+Y9Gme5sci|mJK@>y4UI;4=XiQX!ezTQ>R!?<17Wf_CnFg3HV7r*N$ zMErAbG{+1pbHb_o*l0a|!YlDU7{A~0XQMlVl8oVRa_=F&QUxb)zUw&fQFH*`b@0+R zcJZ){!R>K!uZrP0z-c&-<|V$*XvBZ-$2#^6xUGo?+Vs&#m%EpRlK+aO5Hbs|H~A_1v6E52Z2PK`xlX^cA<_m zYv+eQsJ%OUqAmm)f@S-yj)&l*YiocyL^=bcRYtzUwl8LZtwS5lE6B`wIs(|`B~`+E zYtb^wy-bSKh(c*9))XcEx`=E&8Yj0Gk1520?NTdj^dC@I-4;9w@OU51Fu}+T6+`G* z1Uy}8*K2o!vUVm(k-yQvq+FUeOs&i1Xa%ndQowwlZw;AAc>0|rXbh+LoxIn2Pb@){#)i?TUT!Zd5bWMNS zub*(LGj?bZFXkhM-UlHxKhKDvAuF08QK#)P;$|>7ex+HzYT>r-FQ)d_P<30 zfuzGF9NGRw*U8l2-#CM#F0>B*kS6a*yEWrV>rAl{dplJx^iR)K$Bg|_Viv`4j^j5+ z*5%dc_WOn|`@ZSM_?Ti$T@%eSinD1Yr`?jBaKfID2LeRQPwt?Q2j732Yu{1)!)e+9 z8bFk7g^C_5LwWHEp7OSSEZ1T`2e zejzv3NBGcZDTRZzXN=>3{xy`={6@9k47-OJ_zWn%j$ztSyE{<~sum8~L+Rv~j-bbX@BUN`jE>!u8q z8o4z8Bf5iqFHez8hywtJq?!3EAxs9Oq8gsfCkmY8Mi;P3+QL8QSAU_%gvi|N$kc+e z$hG86qO8$`!f98}CZg>tY;mjTqhM=O!end(xpiCfTN$=KM) zTX%JcUm{Cy(mqlj|0m~3be}bMBE@9Fai!7X=%pWTf0sdtL za^z?L_r+nA*3^4SpF_AnQ5P;9)QsDkbm{CW!o4{{=WEbcF!M;Wa(Ll1oLM1gR{`uw z6O%m(L}pKr|EV#a6BllLi6&y>aN?BuO>@YG|7Hv)8IBN5R^i;Pc;zO|pN1u}Nnj0$ z=!XByBL%AEk&>L^UYuP~lyeQ;K4x;N!%^?o+!h+EOkqJ51g4a~z1C1wR;q=?NhM6{ zvXuGvk*}|*Q}aPGPwl5@x7SWk5kBtP*zZ1O9#`hyshv8;29Dp^Lm{{4+Gx&Fj)3jH z$fr^pW8)UxHe(kYT8JeO7g0ET=AAlxxPhHy=5}Z7!TH4$vX!Ibv_-`C=nH)$6h|)h zX51wgz8=C4=i7X_O<&=!_+TU~z+ri$S{0i^57wwr2mqFXWoZ$I3`^6B9jwHfY^5n(gPU8AAFInV6AF$-0{5W;U1ExIOJ5LLE7 zWI>(@#QE>$2yv4gVB=E(bG@+1;;tUY7p(6tCJ%k-F9o9;H}htr&?g1}9VCYo(DI2M z?#kRxBbzjzoL((WLIDHqWA+wnD9&wAp?oI;AQuZ}98(=lS%(`x&9J*h^$|Y@Dh4}} zLcADq%UwQPgP=uuU?(D|6otMQ?K=BSHjr70~_mvLw*0C}^RbGN8q0eX!}kpnB6SRAlDia}F9@ z<7h&^cHW_9Gp-2jG=vP6+AcXy{AcUs_`^K257ckcXQ*ragpUBCkp@@Tj|0()?TKJ>>2+xoHaP1r@l~4&_G9lvXfL z`$+5pSe@`4&?pjV$$Ih?OBWi^li&`vO~ZgAy3**R<0$Q9)=2nYutf5#%FUD!|HwHb zX0LUDC0?6I%_fm6iP<(0`pYD?8>;f3ELF)-A^JaP)EV`Y$}UQJpXXa2V72P0GVnk) zY0}SYFRMmDy(MW?;G4J!s5WP?Qt+vSdhy-51l_j6S3wPxulkt*xS+~|y!!;o4^0-D zOOr|4$4^BMKMJT@@mJoy%hy+A-41QW8!>nlY6d# z%0uXFP%Z^jeTXWNv+SjbwpCfb`Ho0Eg?g*x#JTEq^wsVjX?WQQvvr*RwsXVipXhGv zTh4upuM?C>plUb1R2h7X`Tqu1xZb?>w|4RU7v~zg|mVsbS>z? zFaL8yX7*tpOh+gHy8aC2QP;YhKak8l(__-O*5y24)0k(Iwp+?+HN~83!8j2iphIE2 zeK@<)9mc6zeL$hpBnFxa9Bn=It9r&7C>IGf=N744!-c25n`63XVfpMTY1MnUI;XCx?5rN(Vv z|431E>vR=I7x&w)Q82>4I9lctlif4>uYiU=Tw;QkIF*M@`(L22eINj*^`KzwF9X{D zj$WGf8$(3X`ju!=Q^Dy-$WJXV+J%rGXWfDb%}L!QYB^=A;rt(lkEGQHRgOyM|F5>? zhbbm~5Y&2Hvr(d2&#GIZe)UgPe_tSW?0&2MplX(P3P0XVh@6pTX24q8ur_J|XMsm6 z_JQa42j)?Vdk&-mqVJz0(3cvvFT^B0nd)RsWw~dYsXjGBm`~*_3AsDVi}0Tx3l;6* zn1iDOyw_ndLO*jJpw@QtxP-c!O!qN+f=soINJ6{ndXs;l%MWyKcx^3ChNhCiXNh1) zFX4#d)}G3_qCtZXe9It6q$8E6*$REWcekXYzN|B=g&?;%Hw;~UIE%O>p3(9yjY|LF8`ckoc?Qq#~RBq2#dLT)nfwJdA)jQO> zy+lEYPLvbhHls#DJ)*IEd>{r7b*2k;Uz3b+?7Ft6J zclDu0|1zG;O#PK@?|mux71W|r`M zuJMHm2p>>Gad102dNV_sCaGxD3+xpjlMNlmww`XCOnhn~Ftw%9sHBU`F{-0gEKeQ# zR3H&AYy)zRQp8AM3FG~tHApa$7HUQwdO*AfVt-m^>Oh~7{0F7ONV!#?aFd_jrvB!E zKl#Wj+GARa$`zO+AU3`!q(Ot}18Wo7!w6Ssffs`Sg)Zr+Z8bd$xxFWMslWKot~4!G z^;0PevJmQ522d3MKQLVRGRy|O&y|V5QN7vB)fSZajR51^pNOe1tva#jVb= zJjh(0zd;x|GagW77wkC1B50)tzDw6@!oe%7@tY|h1<;FQ&i$wHk#q4*=l;a)VnOSV z<~l2z0WTUb{EeB+v*jCu(Ql4pcq!+K=Sk%z_X+J^N%`rZWWgBVqqaH?Rpg70&Xb#q zF=k?Ti>e1ZJt@ucQ%ap_36iRwC+YowGd&I=;didzLfEWE3iofM;Eefap>fyY-*`gz zLrqcWSxmtzgp2@uSY3v26I)NL3|4|x5LtYtO^+Ngkc-mM!XfUab*w?Z+iIfH^!STE zML$V$Fl+-jJeg-cdWtNJ+2N=+Mx7UR%usZ9vu+4b)MNee%^SgxW&IV{ZVPwNB>jPW z+U8%1pROgx+j(?fRTzUdcaz>b4dZ5#W6ALwXj+}mVw3()sSdZg7r*W-8#dd7Jkq40 z*>fO9s35kcs-Y{X%4kD>aHE7^*+Mk@1tSKlB%T|uR7nG%i8%SXqV)|USu?^j8AP>E zt`!$x>@+u%7WtAwJYQ0X=SvFld`TgmFDbB;C0-MCsob({(*`$0%=41sm1M>WkJpJ zow1khyHOJDiOa|*NFj0$Hoq~S!eAOH1Y4H&&E%#7evE|8K57IQgke|Ypm9X4EHlE3 zHZP)z36v#lloVj7dFcX-h|Y#3z##ar6=1X(0mj{{jR3=RLjsHs?|lgAf%*YTd5TNo zs~nPY{HX#>%)*N=76s7ABldFV@zB4b`*-FxOs*S~C$S&ZN-t5V<}0xvW5Qax(j zL^er^S08gQW?J#*Kp%Vut2bzxpd%`Hj}zV=p7a-4Fgp|(7l=Nb!9tXC-ekJF=}~2j zF1Xi<`AQ>oUURQUG%;TbDnIZJ#e01Bf>!vERvF0z{Y3#VCFCs9b=f&V07f*VAPa`YyU=@ zAx_VLtzA?MN2}p4BRGczyO8_N)e-MI2(fS^pM%GmpyxRK%nn9A7p#AmLqP6U_DWUV zU2ZP8u`O!NQg`qf;Wm8~T(9q$)((|RaEBnSet8?e>p?|hTrc`&(GQc7rI3wj0ZFFD zNYo#G*Pz>9lZ#3+p3#q1Rua}D!F!3#0fAe&=I6Xgrn);K6?2MqyX{AIIl-o=cQGPe zoN)j2LhY`;Cxp@2ZN7Dbs9@hkr&O5h&{OSo_`}!hIroWm6bR8g&#U^hU5(z)7i@Wa zUf(;S4(p%x`rh*wA*Dp~-w?4BS2CB)^tWW3cNRDEl4aguu2tLSL1t8KgXDOL1H2s^ z;Bi0wCFlAbh&!ESuU?=UISlh%noA=@^Md!~pnF^no1jcc37?__+-I?x04yD!nd3#2Si zIchuE*rcI!Za9R$R0dw{xkah&r$l`rL4O>XEZ`RZnG>i1dg6t0_b+ZwwC)5XEuw!C zlOSk43L7U*#zh-$S;p}t`&EogK!%V^X;F7^i&Nf0oSL~j`rRpWKuX+M6644&|9P!} z^WwoZW!0~9PVyLQ=Dzrt2Qmp|j*YV#1<)uzGD{WUtQ1t&n|2Js@71O1#R{{KouwG zhPNlhi_B+5yAA?7+(SgAEjiqpSyMVmXFUqY=JT$KUd4=x0c^)H#DxJ*ld;XU?@})g zEj%5C=cK^zN6A#6)OJY{+HeHv5(j0WVC11KLKkJ#c%w372qM)2O5*AOQfUl=@LW_b zH$cJYL-%Vz;z>1fU>z;6zU_R={9EXk#5Zby}uP z9D3o_B*5-=10AK(x5e_dI%E6RYCF=Rm70W00#*&+1+cbwKL@m;wh)lY`~5v@pCnNG zcIN;2^U<8W*Is+AwV$=tv!44i>z3S6j8-DydcFT@%6~H%*v&dXWQ%^ZL_f$$aMSfCW2eXM5r_q{KRJ23AGMAm#lv8d{Xk*XNdOo`bI4JYa zoq_Qu=l4<5HJ*;?+5v|s?a$o?WWv(_T5My{Ax{=anyhQ$JY3hyRXY4iNxJYs1HB!9 zQk=)q!4h`{E_P?&;dJ#Ai#zQQ%oTD35iz(j~!y{W*93 zwPGZU=J1yOOr0Hns?6lMw{$fR$h#xB^ABQ8NM6#C_S0yMRW+9%3_V&t@IFM&$FCLD za|<={N;}lPwX{gsZJIId^_=H79UZl+3)W{9PxFhN*8O;4U z2JeLGkjTKhVbLPGLjG0!wFYKz$tMPCssf3yEB=`WTyKT#wZJ`Yf;C7=YHuNhH7WxM z084q7yW#{djO~bKpGTeEogF}h7c8{(pWw8eRgMY0etixPAg(HbEy~F3OPjR-DrsM; zNef#`%qeff#?}MpRd4aT{kO9nTY=77>-jvy0_X8pDV6%DUcHfkHXnOT`|L$~o1>;6 zdp-rhDq)9&Md9U1CM+IZkC)ZAw*cX#vQ~_iLH3g2Zu+Ci4j&oWK^uc7{EVo^z=W>X z6fxm_XWP32q<((VyN#r$9W9RssO@H%3r+1Jtt#~om8_Pe1-&od)EFM>U%n|S8I}pw z3HR3dhl7chZ#I}%DO4A_e($nWd(Y1le8B}B+ zUmzap#-!z_QUt`nta7A!UH%apoaw;vQzJlY{M>^~R+uI%(e%H=eh}ZdwVcdG$4M9=%ZSvu$|duM*X#Y((vbShs64ok3;7iCWb(8 z$f|-^Xo;`^Jt=O^Gr+d`68x(lBQiL9ZaD(+#M!MM|Y{F4Tc*+uS%RPO(=ABZ*lZ_6^W#W>*)bljaaBTGBtY zRm_tXmYChjV4VgH*Q#*_s|5aNvZ0Q$pGgqNlcQOsT54B*Ad1SD<|OeQTOB$nwD2i< z4r7xo4q^7QOIYF#^+VJOohO4dvq-4m@z&@10|3wLfMhx({s(xwzQ41B;|x+_8Li9_2xn7 zjSJr)^Dhk5bkWXT_2}c<{xn`FO@sck4#vHCH0))AoV>!z+0MjO&9-$yWFKb zF{0V1WI#5TuTKTnK%3uYq=N`%rdU|XDD0%KSg+x?beyDo5)(?a5|(1)-m8eVm0YiY z+G?;l;etakrlQ^|#Qt`h*)&aqeZzi@}F_i+|nio7{z4JJlom zSA~-&0+b!F)x-45Cy#5Jqu3i~jW*{x)l z-qMy!^yRXmiWk4CFEDe1vQ-b#5WVG%<(P{_*0xy_$<%G_2lG8a$J&;H{l#I;`2eO}bBTx|J@V1d1d>&?@LMhovgPz=BPqLRpMFXe%z4pQ# zBiHgPPSa({P7|nEPgLT}(3#EI>XpptEA5rGk*oFVgb@MBAlgPQQ$c97wHjE&Z6sh$ zj-1zjdd{V(tTjcv=U~!!U^F|JG=`tXz{H4LHBhI4Pbd3St&n~?n8a^}^z3jz{l@|) zvW^1EsvM-assxO}vYg0iYrsr_I3TnWvPD0VSQHn7s=jO$KG~42Q68lM*y%ILlsPo7 z>1?l>pdF^UIep>8sI>WVMkpF3Qh_#K?8ZXe@6$2Vh>X805C}!zWOPkVt5$OHq_by~ zZQSy2Q`Wjc>ynfI+ZkXM>Z^dPMnW_?GkjApX!24a8o`%&Ghi;SX?-EyT*?L{FTu&| zxMqGuY2jJmLKYuzo%nrF_^q!MHjjy##Gb>Qq4>B+-V&JF*Z)UkAVYCz_rF?12)aW5 zt0e<6Cq8xzgRv9!fX7D}{yCoTUrPly4T@0pGT$Q)Tup_NWArJ$s>QAfH&L{UWKWq))5gb}8!3rj#o2h@;BxWn>4 zGiaW4dmC!mJl70kRV4i$ERJznz!~7;3h-8NkA~?Se4MTlKG!{)7*2`DAYc4vgEd;W z$(kJr@Al2f>NjiF2zz1;56aOQLu59Xfy`E3TCP3QkC>TfHUP7!k*Wp3(m! zYeO4h|L{Rm=@;E)4rn#MUoc*-AYpk)&9h(1eZ1%{*dM-E%KX_$0<%6P( zpOkEanEjWP)sDXmh9ZkgSu}T%0pfbb4QLN%U;m|mc+D^-PE#9f(AT<6D6oUC1@hjS zL-TKRmY+@mgBwXQEWKI@sMiPv)rV8Dt@x0!b6Rnd4WhAOAM>~-F;iIl!yXPz^hc-4 zbT~=W`X=n?eqCDPUv;#uW=G3wdBsa%4dNF=U|x6y;|}H~B_o&wPt;vIM~xYU7}a4Z zY1oN}G=FfHPkjPgiH0fJaez6h;t1uf&7)jyY76k#dTjW@GZCM49y<>UziCsaPEB`a zD^0@Gpapm`@4BN5Lj60ZDc^4>=8Pq)#y{qu{H- z?<4<{PciiAZ;WtJj~DjJqLyWy!FS3DRak&JkL&P_LR++wOOjeVjKvK`hUMc?0A9h` zTtsmS`JdC#)%gbpm@Jyn5f;(=kB;F*f(VzUClZu6{a(;+hkf;K{8&5D)Y{(hH<2+p zQPZac5ng>CD&d+Zy=xAqs*i@HI}Ubeba^3> z7V5W!*B*=7T=)}EfhK~DrD;m}FF6JtVs{_wHk>fpkP7*#=1*oi=Bhz4T(7|H02Lk4 zR-t=QmJalfz2p|NG&L;d_+>2Sx8VY_Hv=#I{_bvlHj6Q%9%1s9|G3CnYoImfxAE}1 zl;CxPde>>B4pni6=OcOy0hIOmoKAY+^YC}$A zFw#(&^pabh$56B;@wbBEE4q?($?6PJUw4X3bB&cpj)bIyb1;F)5I>A_OAK%*Q78Hq zU0QlMgM!xzZ(|t9)6V_Uz4PmI99 zk$(}~vHb~pK6HF|GpcfPnI`O=0sC_2KTf~h+2~jIo z%H&>ur!yML9{Yv-ot~#YoUKSi6uj2ip!bMHyjy|C4bHdsjTX5g>0E-ZgO&R~H3U0vQUb|k}*Pit_v zk42D62A@Yv|3-6Nu*RMDVJX9Ycqo-V_gKMvok3d{mVfRsxm`c3rnvW(ANZg?Et}Ek%$`JEV9myzkxiF2s6WX!-qAr6ElkBva#=EWi@v zITD>?RfG`dmgD%$9WQ&{=op&Isk8l!?K_&|xG<2XJhKtcSu-Ap7!H5Z?0$}6d_)gv zP*uuK3xg1@rD64syde}97IktQZ;%~Hv>=Y*y?}x9+RI>oCZXw2G7bQ&UK?AeZ$g}9 zU_sR*9s*r;Lnay2PDzJz8}f1o%x4qbzL(Nvd zSQpz2ljIJUIxo37LcmG?C*}svts3!N7CMzmAfdETtND#))Tzd(W1*L5YR z*%%&oxJOoi*|(aJ1Hv4&FCxSrt!lUOEn4St6qN{wwLmYy_2Nw6p7uIAwz`)_nMxy} zqNy}qZ;hKugpq^!hG<%u=>~!6h=kw8Hk}r)5cx+f<)R1=XTvWR;>8G27=BY<(*!L^ z&YHtyohdlU&RlH0x?9{yESjmKa*oul3=f>=D_@u?5ZRhDwEIGE!tq} zB!Av5ff=hwrq(#upV#cQr%JUp%(hTUhPF~jQdX6|#K_K%avyBat-QJ0K7ENk-+3*Q zVTl1|NNbP@OHb-IS#0ei2l6+m2k`tOQaCO7;{YWb!46>7hu2==ABK-ynF()mphL9O zpPvDJ*bt~XxZ0Tn1kA^GB7UhGjRDH!vu&Q4(CwQxq=_seST-AX?LRaD8P9R3IM2R$a%0FhMn~$3cT33lSL@xmB~!gocix>FYukS3 zGUX}3WZTziUUpH|yy-L{8f0Ho`~`LnF&>9p70x*6D9SwgtLuEJ2;)>OUP7#w7AnsA z5dGm3JL2^<8(XqY{4e>mvu66Tn)(n;aV~1X;`R=|RKOKdW`kqXj_#t{SwN!F%g9ou zzqWFpS@8F>K8i|_j1!uXLSdxFa)m}zDszp6u_%tfwf4i+5h=4>oycGo) z030`GD>889&e#iG)7eaf;1<-*b37~!I>W)}@Z!7dxtVSt%?ci`UHsM2f|5}q98U(D*xR74zstn-5FSu4vuWo{ z8ayKdVwZk@vu?2((V8waXb7KMZs(VCFPqR|kt(E{Op8k&Yjmrr`qM{G9K_(>UnKl- zQZw~e+V5(4IrlF3VL&vVt0H(=ckL7gUyyr~>waM=5&|qZ^w;Qton*jvB2xcZL_Cpn z^tKl%&V82m9K4LWZ#9dbSi<}MCT~N6;1Y$2VL>R;o(&6MbKC1B!e$33IK`&L-;y|g zQ|qg-72iYV{Gmi$26GI0F#fZkDdzqIy`#;q0AO5@D6vW4Rsp734jS zhis)a^E`fkkK^2GlD|876w7(}EDV(Ht(VOT!NL`}w7!qY)nJr+^uM|g{s zuH;yR&@5Vl?$fhiM_o_`MYIt4?M59yx+MGG!{S0C5&~~jrpmISZ{@Z>YEyph^owlD z@B5?LXX@*9k6;4VLU~)@bpH-N2hg>?C8tdpMJsp8^UvsYc^*!e!?KjPtB%rytV61} zn?YWK-QLn)ShX3OywL}|CAUATcV_I9U-;7R@g%pH60Q4u@Pqb6zt#F#8?6v$i4)8H zE2WMZlYrw6x&di5xB;KraUt?MbAi)(9y*rWWaK3t+}A-%C=nsM*9d@^(lF2qhN=!C zbv5KTN#JL+bF$;n93z#*ly)h#AgqpCBRD3FDr80?kMOEa6q4kynX-xhn4%5_#jhHcMMh*iOCo8}svS#E%f`=N{QYA0IpcZ`Q_M z`46`dZQpDAJzLSd$|n+_)ndX(zR5QK4J7QRn#3>0Jzf<>%^pvqfrty_;1Y83#jTHp0nn8Iq}a)oZ_k^MLg- zhS?6*Nj{-O%o6NPueiGk%HFw8K3Y4R7-r$*7>D&DEtOSWEDyz&O;J3A7x~$>lYjzSYegCfZ(v2sn=S zpD@}9qtpJ;V3pd-_5B94McT0ID{f~-iQSIKz4A|9Rky>QZcKXC4{Z z={ThiFw|^kduEwJY>Ybm`13-G4+2{Kiwwzf9;J$I_UJaSe>e32u)i4<2}*_I)h3ZP z#asR;!A)6CqGD6kk3|uNZ=E7^Dum|m0RdrT$_@8LU&AZ0MA~9|OZ!s`}kDv4|Wk+O5$RD4E$PhQ#9`-L)c>tmtftx@%c4 zeELwXS2|h;YPP)#I7hRFS#c4Tb%YXgYQ*FzJqY!=<$0P9j4VBw)Do|4@+dKJ6^=EGX_<_$786DMS_XZUz=UKE?OaDJ6O*zivwDFcVi{LQZQJ4PNoAp%6f0E2&?+|V>fzTk)`bwc!X3j&()-#I` zK)HlBD@)lTtsb37q&1plN_G6W1c%%idZHAbN5d-zEKYlo*8drc)1qc#&Tk|-n+6BN zJp?h28LcUdMfo?l(E|>SyX|wiKzOj5kj#)63!aiE7r)Qp$;HnOZ-z>Dnt#_+4tn{r zpM}|3V;51yo4;iFb1)Tv^)zcBKKc!_MZMeR-#M6!_?FQKT~8~T@*CciJ>Jx(?P?m4 zVu;(&^?dZ;C2#8U-n8HH>}6;g9@2N$Z;QPtJM95?ji{h+Ve|@dnvk>QDiZ=O7fsS? z{t)oUO;uVeHXe% zpm{GoCr(5Go2BPjQvb6?(5)V3mC#6Ke*HL6d=O!lXItMwQaNJ2%>HzCE`56<% zJk01cGW@Ng)^SvA3`IgFU4(ZEgi>IEQ4J5Z0%Mr4X^)phjInb4I)hXe1_``K)= zL5Dk9fqI;X-Nwow_pU@Bts~$#>**BrN0RT%jM83U_L6>9kXSC|4PV*;O>4M^FTKzV zG{9)%UK~Nd1ZRB!?_PvUP`%G8kY(^0y`ox)K(D* zlZ+aVd1Yy`z$(*?GvMgqK=HeXBH4EJhx2&ZFdxfrLd)2~2~`OcWG4iRJ#kpDF3(~g@NV0uPR*<{VyXwc z8eEviEoLAZbN-Havg5p$c{0z2)benGsP9KQ#s^e{*nSo82s z3UeWUm?6bWR4Ol>_zkIu-8aCxeD%Ex(+A|6QBVB+*PU`;>YnvI0fR zwv0Rd)00K~N((a&L6zumDP!j9pk%nxsLbJW%^Z~96YN3jFaV7Lma1l&8roL7|6%s54W-nmzleQ6Z?@`VG${L5BHJrH#^BIUDZxuT5UkhhQpIg_!C=Y*_+Aq-!cb@ zhc*;i$C3PiqB8!!q*MOpK`eKjXb(R(miA4|!Xnpb1f?@@x!%IXlrx6F%TDhkw*Iqu zo2zGczDATa?~aYKhEe0`re`zZNK*kJlMO5;EddrxTd^44C41(SLiX=5r0~`cad7d?zQ`o!KE^Z|n|B`-lC@;~!` zK4SjQ-JHu4L_jw|bUs7hMa!`rw6%#VG|aQ2ZFJT=x!?k2oyeS2ggY*!tanPEUEsM= zG9I}iE#eOTGTVrieaA1l>GnGqJ;i;Q2qf%=QwSCeX<3tkea3$efvT_u<3Y$W^3a~x4rK{Sc9H51sKu`I zi>~+DKEs*CE7~WSnpHwAUfUAN@>mG$le_!qv16a>SgB```A;>5KQH>LR#U`QJ4eUN0$GJ`aDQ0(evy#w(Wa#2(~&DbYRxVwYcXme6&4+^}-_KUF>H zedF4*v~(1jZRiJh_~mzax%h0Wb_0&0H+CwI-9uE*-Z7Dg50W;#P1q+h&v3#D+Bz|9T&^({$ZoRpJUon`x_0(*}E$gXRM{dI&fcw~N zoY5bKsWlsz6-OZxKDTobvmq&@nb)*-otb-uVlb?X8O&Sl4f<2Q<>fDP;b_aC{cakG z;Z3YrAudOsw_+HQ{AhG6iF?&ake(vzgoa>)$WN|#AhyLU7A(LrSL1^XeN^UZjL3?x zc8(5ZOi%hU;iMVRb2sU}67H>oM)EZ5YuDiB(v`b+r^x36JcuYLr)_d-aO!FeBrNK6 zb{*yl5%rb(5;B);^Y7iU_}BecKN-~+uxwhdAz;}w-aT<-9HWOwaZbyB;lG+oZ8q8X z#cR&6rBOWpO#PPKCjm@u$z!6+Ldofp{$65<(?0e|^UH`V&NS-0&0AH*HaW2)hY=nn z_@LQBkeTGwtRAHN1}Rj)K=7? zD)GN%mqA7!zhFOFV}4g>X(2L4u0aAZ^S4QFG9hVURLt%(X^AN5#ukF)eV(aKY-L|Z7Ke<^?X z%8x{I?GvR(m>~NP5T?!;J9qNkO18Cka6G}UJa1Imx!3Y#$TKlSifEMFPZjk7;`$n? zjZ*w^>q?rb+<(BuIeV3gdwDUpsN3$n(NB3xnz`l!p3Z%q3m3QB8@$t-tbxMtL%^Ym)Dg-}srmCm6@$NjX3yShR zIE{6pbu*$1ofo!|V~3M9&XTG92W%0F8?^WX^E*ZB4O(Kin?ovyZuxMW-|2KmDr_E! zh;PbBgf;PT51g*0d10?(q3N&q22YsxeptpEEnp>qo4DPiN)#c)iC4VDS1{y87WZ_# zb;xt~OZt)zDDP6?f*t&NOMgHiXO`ld}2yk8bw>37}Sxz8iJ>h>cyCocUYIPsie z$eXDFR*?T@Ng;(0ROh=}~=--zAyd781W8@!5>T z2S?~Fq@LC@#?1fI5l1Q1E|HK&7xyu;TTkZ(`AiqDlqFk_rV)oq8S@`R@nu9?84Pb| zqjf0i@zP-yr(Yp-?`N=_(*oQiU_kaO4Ji`OdRq=6S={5rk!(Ee*yt_zN_u4t#!0^h zeljLnDO2Vosy9VG$C$pvnn%Nxm*4I+5{%nW5o~uOK%tb(YMYU;b)jCoU5xcdjj=XK znKJjyAjUmu$KAtsPMv?pm4UMn2+OZX`}MTFM!3_F zqvV!6*bRN0!~>of zL59gz>nRqFAb#b1jn$OXX0Vv?&1f*9wr^gU3X4W0g7OuqV8rssa6B2?ODZu;ODFG2 zRKK0{dx`YqrMr^V``CLMp+6u^5{FPjrn}Nu?U4+G!j0*g!!1A0yMeeq992mSscUv| zDCwK(a1O_ubV$Pg6kbOgz4i}a6B3w^wWb~WVxaSc_q`6L&gLYjpBFg#@)sQtG5Wgm zcfqbc;a~%F#e>E;Ce%2f*9?%Z#wXT{O(4Q}19nrF_v@kUaFz1XT;xtfmK{>6p3KU$wwWn&`QAS)%!1cf6hpBGj-dG z5+tERXAx`fm{$Rt+_Ep2vUpJ8SN0Q9XBiDU6+=yX2iIQsGZ28=BMK$dg#jaRC%h$9 zPH&@uU^EXOEED-#PCkkOgymdEcN4?m6$ym-zcvr83v1&D_X-dhp5Xb~+d@pDUe||| zQmrrIRZu$KYx{e;P6Q1{p?{neVIr)H;Re6dkK>EA`~!MS&RMX60P3s+Y`|0`8l{B zqpy$bJR*;yQ6$|%qoW#}rdnc&uwFt0O`_r}S<~R%tr6zu902jZ{{;Q*(v_STc3k|o z;-_^HKdn!P@G~Vv1ppLWSlC<_jfos6OpWoek`5HLCRtWdT(%^(Yv=P~^2{RamZCz+ zhFTe{EC)uT(wTN(4#UaWiO7Ic<9LSFThao?K$0MiHt`6U( z`FWx0aGJ>OD~VJR`Meb3;)#xz?BCZwaU|f+__=KJ&03KY(UTwHmil8j zqMc~;CfcE%&u@jfRRQX-L| zXY5h5^DSFNGdwqF(Lrw~{caaq{xCzY3#SaFv7W(I^7-vM^UmtTSd|7DyjZiV`D-bE zccOZ`lG!zn$PnD!GQ43014V+-Wvuz^1T+c$NG9yps$(HJ>O(YECiX&I>_DpKS+D)e ztN@4!ZKDCk&vBpbXpi=xg)qvs{ZbfUPy@|`MeMeqB3h-|^ZoL!w)h*GgPeaP+RLyT zY-WO~0wW!~beWx!R2|H>>{fEI^{1{b~hY$74L^j_D&FWWObu{g-gILddJBg-;8*JVrE&g#@u(_jrPb6j7FH8j_z{OMXG2I$rJ;s~Vi zp`R!eOXn;;5LG)7083M_z7b<1?9FcP%HI1`V4&;P(=ZfB2G>{STJJRQNxDLu9yx-Y zV!T`Y;x~sVV5q!`#J3A>mmg#GFSvrmeeuufufKR9)Y-zSiwlmp0d@ABYCXf2yhaZ?@Q;lK&*89?h^~>~rDV_n>5?YL_@>#WQe(3LucIStD7> zLh{kWPbMLI2jU`EtYuW-xGq{H5)v}jUgCr!(}S#L-4(ZJ&;&v6AX@#5;?Hx(2`T5w zo$$(vfzHAB<{OHAp4GQW`H<`45rl)^>11>#Mvs)sa-*McLF4vJ0f?0TNvuIzDEUZJ!@xO(GclQv+QJ}Lsq24=&bYEFyC1iye zO-c8a0!u;eLtL{o{}qWLKl}cVproKVkeUxrfi+URgz2>T{oj}%5kUvw63}rQ)WQm^ z*YBi?3xESZgmbA&;`{(->R*Y5^JMOg^%7P;*E}4@NL%^N2ex>+t)EdHP~3TERImLk zmN9GHw29u565R#nBll1N2KRbBS-o{$r3M;fpoK84lpMy~42z4c-RWjDM7fl< z2!M39%JVY!AjA!4Q<~4^m}of_Wy_)6cuh*JVJ>#v=79*bka#&k$rdyvoWj>%d>0^* z8V5{qLq~S+KNf04ilFzH2}hIO4Sl)qudzVf3@1MH3)F{BFdNW`w{s*X`IA`x0^1m) zxC2KpK_5B^jrWk0_8xi>pmbLRBf z{@j9pKrG4kC_+{YPV%;sScya;Z`R$D3O@CCzHcBoMQn zp&pUL=*xr=2jJW(F-e3s4VlVu!idi^g7*_fXp61ReZdH-4OIXIh}H6A!Nk&bzp8{E zlx*9 zxo6gyFz|gvp5{Z|FZCoON$!_Sw_HRJ0Q$Q*5IcZV_I~V}*dDqbP#ds!%kGinA@_p^ zS!^tcAx_NLpF=SB!k_J|tLR36&qQrwqTZnWXqMqE8yN4e_+K+|kVrM^A$UN7-+F90 z=rWS^P8s$dPTmOFiiQ!DWC(n7H90Sx-c#-%t9c6IXoC+$a|Qai1Ibf%^>7I^8xP<( zbVkchnWu3l{h5L2Ou6_dT0~YA8;*oV%wc@o4Lmd5PgidY^V@yiRE~#f`&!?_Kyd*Y zuW%ylLPTELKza91B+2{#WvFkQJ;XXsdNUC$z0>l4IGqkMK={zAr}rfpGj;laA8bc9FGUH})n;CBQfc3g-bG-kN^#?O+(8qtW&|9ZNmi z&Tja#r24cYo(OSl9(UYRy?8v6!83~=fsk8drd{VwhYf_$RD>oSdMpxYs25y3ix*`7 z9o(Y@#Jbm+A}adkq&N5Jy_|J#K*en|&k$bT8*TP4AlaMyGR@3=PW<&q)U5aKv@}|0 z(M%exq4&j#LdMQgT8wz4a1cFB9&Dw!9wVj>ck-wBpA5}kI)J$O$Yv5_14^LZ2rV_p zsJs(nYA*_w9obVOKj>-sdBRM@?_iztc_PX?BYPqA4yiB&iTvjw&DSNv&(S@ez2 zXPWlm%HEZUWx0KCGwWeN`C>PMgm;9YWBL854*OBq2N`bHyA&w!Znn};}qQ!c15FzEQ*a>xs`z%9sfuZ!8Ns<*{;zpVOG?Gw)L+{4oKlZT@ zM;DWtRmoLY2j4xcf}Vdno12Os>uD87c~=kY>vnHyk0noc0Su^MOCwq_tY2VFlf!)^1j@+!rt<^{VOW4t<1BGUt z;6k%bIMJ%DpZ9eVez;oV0!Z2sF}@rK+86}0ZMoi#`zV*R;;(*6DAq-RvjD*ZOq*lZ za##JBBeO3uq0NF@5o<1;;FqsZ%o&9Zcr$km!$hFwtwF-rfqX01Y}|?VXKo@VoH)GW zt-;#f=1Vb6%iXLm-kN*sHK#D1ddM(Fae`l`IKC4a7x=dRNyM#oy^g@pnGX-u*v$;d zcC@hH(58d(QnHhewKxMRY*y)F3M9hhO|H#uxT|GPZsSg=y~RE1Uw8Xjn$y4B+p8V9 zQ~hqP;GulKM6&MwnH^SRsE1|Of$a5N{We1#ycgNHjO}pZlH4Z&OJe;xSP_V>uf1hN zSMqI$uF)6?IyTrrTmAN{X2qzzpNU)ji_kv<`RzGubl~J(I~*;Uy8xj<;M0G?7vWOA z4eb59+O_%_#l?z~o|j z@#l2W&kN1sE_dYZ!Q-*BA$t~Yvm2H5>8oca*0&2#VZ|cyb3<>Q4+OH8TqBsYxd;E` z9_-~OdkznbeQkS|i|70`yQmYztp3P<>ZLxJnS>P|b1yaNrB^2lkbTt5`3wg+h#SX8 zNjSpl+mSz)dULk`ro{TaZZ6(@(*_jNfPP35*^hP(DOfoeyRS@KpO}`InwT>6`f1mt zTVE$iz__iqN`cW9MPqy{Qr&{Xs-Y}Ai&I?4ZWJ@NpyI#zV)i_Y@e-xQ_Zx@kNakY*-kBxWXV zOw8ISIq>3rXM98r4ga^tY3K|ss(eG%PCAeo05PZ10qYUN(=>YUQ|+ep5k@z*WB+&5 zPJg|qnjF`cevw}B!U5ae!A{=6X7;Ze=1+*T|2{1l-}}55HXM_|*3wIO)t^vG&3~Zg z%`2__fTBw%8fh;tqWgh<2aV5byO|0cwk2NK)nN56Ho%kK?v(UjY^?OkzWY7iqn-?>PakUfUk&k&&w}4;of9|JT)0&46>hHBkFL z{jhirX{%32)6bEk8hL&^`kwKWzHFs7ubJS|WYAQS4zF%V1e1yq!SyA@u&&Z(KgIu> z(oOp^P1!KH@`|xLqO4MNF`N!as(GK*1@RjmxGH?)<43v9z6J?PsNxb-IlnRM$t{#7 z$be`Hl8-a0w4Y6fQ?E!L>V=%d0#Lyo&Y`?6_H^W8{Q(daKj)+W!&Z(jm5S(WAsGB>@ZGHQK zY8V0i2g!cF?kEd}$u|N3tJOmJO;&0dr049tu6L4-HLhQ8J#@qZidPpD<0E~Os+O!}B( z!f}2ds)`l*ehuwjC#@-SJ~nUU8rk*8Xy954c`y4TIKP#7d%u3nJ4U%!Dn;^kr2WTy zz`o_-4mJ;NSPv;$QOf@f1pI-$+5dI7KC)Z%`_d=$fwJ_L{2UC39XJ<3Z4t{w;@tbU zc=ta;!VGk2xV{5B;!4JPSux3zYKebk$`uj;X17%9BQAaT5s)|U5hd!&CBdZ9?g=Al zj>TDJ!w0mZ_%v+0CtQ*ainsqkLgFS=3=`tqo&g}bC)5tpNZ52)X-7~*d>#dqKcNzY z7U%oG^cUBu;v(Bf`UA{@GU30@ zNry8=&c+IN0oi!lK2cB!#zkN-btUxyZfefM1tsh~fBvq7X>z+$;^{>yjQg)Y0^;hf z^dS_`m)U}sdWFr_x$iuTkcptRTFoV6=v-23jfL}{g`39~`GM_3T=D0(vE}fTIvPuR z*KA8yGmV*;f{k!LxeLpJ^>yJjn7P(3q zT2VSk^)lOt4NeLsj>5v-)C6fR(i$~~ePb|j3O}{M#72I`^Bog2-t}U)Q7GxIK}xC0 zd=WaS$>e)gW|^sbvt^SYMKru%>Rxa8580x0h!C(gO(`kgUa*q-2T;VGo(}3U059b< zuU}6v+`5{rT%nb|y^|b9bvUKo-kB`HL;G>w$%N^m41lRdJ$)EFB|SGSo=hAs*W$fE zhPK9T9ZcyA9EtB=8l5AE!HP~HhA$f6cxGsU7aw_Mx;3Y`Kj)y3I)`k#GE8ek3Q<-R zm!)*N=19vnguK|_`r8vIFugWV65F*eQQeClTCDk>GQm_OJdUv3f})l6;Z=S0)w|`1 zR(hKLmY2{t>7{qP03!=p!Q)Kw)CHxt1H85P$`c(}EUunf=V!K^S-@(s)bW{!$Mv^e zG<8m9a;!p`MIAHE>9Xo=Y;yKKL~+sWEW7G$b`#I6JW7S>r2(8|Cw6AajF5UA zzM&?ST~NW|1)lI$$nUlfoQvarbPF21fcqVnIN?+8PvBiS%wc(Z<$6-5?h8=R9I(uT=QdOh~JdaNCJNB zsT`y<{3mSHa%hX}wZ8zbp0NKl725v~=rxM*jz=#!$6eigBgsQ~OmomV-!B4#| zYuxrv1HI~=)(y+(VhDvTL$M_1ny3nofY{vwLdX6~))W_B+caLlFV@cQ?o=;T8Cq&D zraxpL{zf{Sz;2s)FGag>W>}l?r*_=Dk}Vw6XM?E^9@=$&*ZJ(O`t=UYBgzTFdual< zm|B9ixvTL({k;l4hGh&tRhT*PQ^{LvnF#H`Z>4>3$?ojPbFrX0wqQ0$t(P^}qtLNI z3pGY|4c}LG8l}S>#f`wF%iVvL69e!k2r?sQAqrRhwNbMy?TYb%Y zEgg)XPt`hO*GZ+d7wy$Myiu)!H zBED}Pv!TdpRY7VlKR|KndM0Hrld~)P@;Q7$Q~iS~#Bjqk!!D*`)RG!W1~YrDMOquw z66R;S>cdiB6Y*Ud3Q}2c$lmr21`hqMLyb4H30V)deVFgPD$I-rCt|$1E!}zqoLEL- zBD@aK!>**iTc&_ZE}@9sRq>A;+gQPHZbkke$IYkkUpaqD&mfAbf^;}kcZNfC+gpCG zj`8L;beF8z)BJ@*^-g-xSeh?q;P=wSvv0s2%Z=`vb@W zzUENNqq!z}chl*X(7=oiUK@jFQ-|SGXS47QU`WWqJJ6XuPjRWPFL8kpO7TXf%GgS2 z8~(+n+PN8U{MR*YWKH$fHT_v%Dtdtr+{@{W$0UAcpn~v{Se^fyl>fZpPxpO_1;}Q6 zv95JfelzAjP-{Qhje9deL4B;RE_N)tio>bC=G7LhFpS??deMRbMfxBWe0@0Tq&$5V z!H-RF{9Yg2d>($ZUt1D&aEW#BC*b!Xn4G^2KlawH6JfY=*x!WV8-FJl&g2uO?ge`C zf?V+sdp>s`lsBt?=wAFj zeX=O#trr21t`@0jG(Kgd3P?b{mJ@B#{4r=%CrsL3wU-}l-vz_!nx3Tw#O$hFdKANg zY*m&k_{Mi9g+-qtSK+V(YA&dW`X+6`^)x((-$k^xh>9+rF8XGi0*h*~NwwawL%Pf* zGHdPo$ig_Wy-O3pf?Bq6+nvJdfqh>hm^LEqe|C0I%h#`^F^jNUbATSa%ogW6iZGGS zm5rkH5V;+4B(J;AfbLf3MOKSMDS`??nSljnGb_2tgg45e&VNJRlpR zkE-qW3Kxsk~q*MlEiR!n~fX{b!lW^#W zSb0iLi0~o?5ZL77)|PI1LI-}rf0}bk)=Xa8PciyH-|U8C@6%uz*@4GrV%=CUKtCKK z$>IQiKc5%KzfAL-4!_p0eJJXU!wFLWqn{&^WAfK?U=Hpwr$HSStapVL(&j0^I>8cv z5oPJn3#+dyD2o5a%PxAyUx;83jWtbd4oGrGX{4V`1UBYo7g15t)fvi^6 z;hWHq^vFPbnw<}KDSXf0D|#d8lbDq?ix@0+1gqh;&(wzi;c}z|_>ag?9UaSzjmW`K z0hN^`!bwnx8yA$jb30))R?QagHrehmhhu~rmVX$af@=DN#cM<}J>aj=gur+E z?_q+wmg`K@ff`of@*P~eso`vym+{~6%~+dVD5x9$#r(qq1KoN=D6^dwJ%qm3I(mbqR#{b9c`b8cW@AZ%4&FklmpO87U9$%O5Dd5OaXKCzK2@rko}TF!3+ z7H51hPimtlX&s8=9gX8iseXzuTtpo-7R&g_CjZE+bWfb2*Z8f~Zc7JXgEiVoruK-y z`EVS;Fex-XIJ*cJz}PO66ej$MmjMHz&-6tnW35%n2ge=ejYpW5WUPjH;|}wN_Y7mG z$B~oTuou08%>O#hC~(m*NmNcjmJYfS^E>Vg9;QRf8p7@69=BNaTN+ctR+tU3>5S1! z``i7gwcy9`h)kRuA^synQkl@4*S2GMJ#!>`V&q)x@ASETsxiWa-R)~B&_A)u5CCLp zY?(&|#9hLe)x8$K2z~805=QyVrrR~DpQy%aMY9^=5W{{BA^NH0`eS@d{;p`fY*Y&E zR3RILO?RxrPgM%-q^fW_Ghu~uB_#&Hmf3O8DM*CHftVpq&Rah<3b*ak^?<>ZuoL+i zlMXF+Ky)Vfy{^NFoINT3De&D|4KMhfL$S&(b^G0tJ5~2e?x^X;Exx(OO&umN0|EG{s6gT@|u##a;L*bMmd~l}I>%m!jHz0a5--HtY-tBmE1{@5V!d+h zkw!k=X0f?d=vtd8cdQPK24v}eBTiYUXqWy=38Rv|A-iBTgXM6&mmjzwsFK3$*%eHI z9e`ve=Kz`Bg9YUBAG4yVuZpq|*(&=5CV5QS-BqG1?O+9 zJ&y-9?TdK+<#;AUq%GRI$NR=VLjv@_$XmEqed7R?Jqeef3weQ(y#pl@Yg5uYP!e|~ z9RnqmuH=D%k};I9nDWgEm9i@vwDRlxo}girqFMkl4KTkCoMtcD0KTDQh!~wk*&nkN z99Wx57wv8=ob?ub*!ot9M{AzgZjd7^F|N2(BE&5ayh2qA5u;GJ}4G`;d4xH1;4 zz@Ai1@BGmzGFx;F>3^PohLPEP@`CSiE4t|Rd^yXwc>eFD_?<3?_#SV`zZ#@RZ}pa* z&eS>-MlTZ;nY|pX=3+S~sS9FL&-na)PtlFSenthExei4ZZyrQl308etC z#N1$TS1Yww4Z+f+p`)S*!@ipPj(k#sn@3?nADw~e&}`BZj@|I_^+Fg-ghE?4UCZ@d z?Z2TLl~+-@KzkLGTbX#s3`N$D0n6jllKu9bMlE0d>*os#*7tHMU1aZZsv{zCbV#>X zbtt!@PlBOTi3Gew?O>gP>}iNPa*HL_!Czq;_!kN`7w}o>rm02LLV~(#5fvkOBzs>T z0$sR~WwEGbduu=Ea(i^*_n!?_!f5%u!GOnb79bI@hByxT*c$?0b~5S~EsOVlYs@s@v~+c{3GQ*BlZ(k}dOJ{9G#|URznz$|_kK%PC?| zouBDFt78x2s|c}lVx2Ypb?jl>0-2o9j^AHrq#B5?y5z)m=p-H{Rf^YknR_0u__W@W zkf=-HILoX;_UqqgRo%%nVM7O7-S{N`lbFQ0etRFq0~Pidm|fe!#0rK+hJVm{d=vUT z5^9xF2_7Cr0?u<+7GNF*>K9bKM9-~SjRgFKlFL8ajvsw9guP227V zk+kMrx?)`zm5W-kFIO5re&qG%wbBsTFu_m#C{yjJBg9KAv$s@WFExd#gUS z%X!X}GG1vaw()iH=OwrsD8f+(Q*k0R9=(~e#FIMrUn~_M(VZ*dBJ%LK zl!~%_7DmcjJ5*%wijq+vkYZ)DB3eywDl*M2Ei!F3~A zk5qUoWQrL~D7D$eRG`gn8Bw2TfWOwr<7v6MpfG|4(>w6fcxvO6h5&s+7W8#gA_f0sgxnTmIaaTK75gG-*`!E4oe1I>XRJnSC)mmWM}55DIf{BQT* z2kK*;J-Ev~Smqw&^x%8;;D5OXUvv+8)KsfI(5KVKH22^bqt5=bJuqr7thn4gcu&K< z)*c`p)*B<;gOnbOw+FIv<-uw0!BI7Jo;?ucdGL0xefdT`ILRJ}f#bn$_uy0w_l+uj zxuj@3=x`4{O^ey5>_MA*@SpBMr5^ms9<;g#%iV)V`N{sk9)O;N!yuK7}g!*KOgp zbmg0OdA7_*hEJr!X>-UTT#4TpF8P)s2U8o`E>PPOhozi4mLOtx>)rP8Ry=}yd3Gy5 z85m1#(EE|0v{!PU@He7S@$T=)H1#5OMdFJ5vV-biR3{M3#Grhyho%}K2KNAu!lF|M zcN5h~%`-8dzot(GNZul0ulREl22mhfDj%|C)$~mY(J^DU?jO3+Y+bi|E6P>q_w3w@ z*JR5+|H(wnHt)7$jLk$bJNGWOpjgUP=-o-Iiw%2ejgMQzUySNXh*$oE*Zw5+IiB=M zX=J+gqp>WbmZKS~cLmN>Uy6-z6v~bJ9-x{OTPt2ueL`09J&5gv-EPCnHs&2-LJevtEF{m1nIRYPsR) zy6G$%t0sjJ_VD9ED2F39bFG2sEq~4HdeSgV$yJqPDLG^>qgk<;feldp5XeLrpn5fi z=NmNPNMij71ZhI#J?sOZPK@3Do!>2~IkMk8$p2XA{#G6Fue)6sP5-)6&HAwq@Y*Ut z)&Aj3lZ7>){-K%z?j@99B#KrTz09kUZr)m+ z4kyp9Bfl?^*;zGh)=u-Oi{>}6W_Fx!G@n)}nRABJg%h0ou3?qa?6^VYqhc}<4e`Jh z`F9eB-m@0lzi|#tG+AUno?oy8=+`1+9pUVY%SSVqV+h{vx|PAo^0;@qhU+Sm!F9u6VDwcf ze>>_vV2KGyqI!FNS@`W$w24Xu>@6Or?e76d!h9tx0kWW{qDkQ`F|u4gM~s*LjfYRt z?Hg0oyZX1_&;L$M5djfW)S`bPFX(*fyrlnLz5iOu-_-f;dHx3Vml}I8({!IE4mNxk zKXOs$r*&g7p?bbNV&x?NlKbn3y+pVr0boImzlXMX_N7;pPWsPd1)J-KCB|-1PC3<1 zo^ntxxLnt9&I5aKVK<+z4zQsMtm}k-hzLz36!E#ufA4%}GC}b_PX<#oJsX82gmfoD zcacYe&Kk6ETb1T|#Hr&)V4HCc90%N+L$ropJ7S4y5<=QK^tU6^(U6k}{6ig2dGPm! zr8gjWPgIj3qv#H$v4&?Xy2B!BmOrgEk}0fsxgM1j`m4a?CNUX65gMob44xp3jCQjMQb>TAF{te z0LFb0?Gc6m4Wwz#_=EWmrl5ctiC>N3U6PAr7Q9FL=mj|SMq?)$suGH-8I)0}8k`+* zFs$EA`q)IxV+n8aV+sGsu#{*CFL>de3I@>Wmh#wxey_i6|5%4-w6l9hYplD;43I76 zE0lM0xUx>COOmno%>I!^=AWFXY5w)mg-$@Oi{Jdv z(Hip`_Lg5=$t zPx`+pHHQ$(E7cbN21Q$r(wnN3{UOu>zMY%F-h`y4Lb{Ug%|`AgQKzocTsKD7|H_rKT&7NA}r84+?2i(v%BX$p`3+2hSqSE74*93ew<%SA`?i>HEN?bxm995bhNczG#@hc4{)XksNHHV5*#_fkCl)TNIs2rpeRLy7gljtsWdEp^$#1 z4@rBejlqp0lLX$rms_TAt%~_aiO9kXnQB+_3x?HVjk2C5Db)%C#RvdJT zrB4nUE+rrnx4$rI|?Wl4Yg!NeJo_RKk*FPn(6w*3Ksh9|w| z&nYap!pysz{UZ3F!8cOP%oMe@DZ>a-pyp~!V0;!=Rc@BJVwbHG^di7AZ?^oPwdX!1 zM18kF6xoGaZ~_k4q?hR-mKZ-BbxoTx!6TbBEC!hLF(CIRY9x)sRwfoR^V(2nCgtFg z_c2G;_eQqpc3Fiff($e(v)>vf6IQSN`qMOhL~cktLMH`o%X%y3aIyg5i5Xmtzc2++ zVqk2SS5DlhFK)r-c(WcP`P1v2Ihk6|Oq@a~IXj-2mTW)PJd|P5s6z{%uI?Ey*GZm9 zQ)_nd7#+MxfLFq-5v?8n)Zrw%Ts{ZdcQ-g{xePl8i6jSKqF*bL{m!TYZ|3I6)=evt z{HxZqg-VhZ4F``k8dY7a)0!ku#c-s(NTwH*%WenR{t4Muy)%b6onqm{%Yf_9FKsF; zxO^>5SoDy5l#rpHr+DzkBc_hNn#DbVy(-Z~ArM%}F4G7y{x;#pTey_}L~GX^rwZ5r zi4ei#I(+j`L$(7UVjBPwz;V*itHLR#&+&I7NhT1H8M~VOQvUnNH8L0k*e{&`f-4Yq zcM@W1G2$JA1)p4sTcd-7K>iEEk3P}SA2JJVf95&sXDM1NGR#A(<6A(qF9fU zEuqrP%SLoQ*ZWUsJ>Nf6NRTKm$@33Kfq6)S>n%A@!dQsDtRXo(KRL_{KSvpFhg06G za^yZ@ek0kB&`e$TW(~fs`f2J|LF=E%e`^#?#@RQMj(2mi%_0$bZQrDqMH_UiAkvxd zy3}iv!x^WO|Mmd6sD()1>~z6o$cQVfJa|(KSZmz85+{h#)07(bRQ)MoZ;>B&TT2#h zM_-&cxUsPL2B&S7b=}}Jw&iW0gYu?QS2H}s;Clr%K)!?EYq?MANql<_%QSvGkR@Qd1OeMR2jndd$i%9M zfK0rPJdjP<29UQT+l-;}+Ma?H=?8K*H_>YVSxJTga)*HY&5pkY>%5U2W$YhXS7QNnj zUjgupCD!v7dCzE6I4saH+(BrSLrftWdKK!hgU2w?+Oou0uQYr6J32U@#vCs&%CZ6K z!jzK|U5J84`Om92(WV`YQTi0VX^^0ZjAi8;XxL0|z4o6Ytb^{?JX7z2sgDXTm=uHC zbEk0|2}%PKwIZF7wCv`Ubxm7MCut+S?QtEW*MuX6)W!Ow=|=KEzW8N`84ws1gCbdt8tYQd}V)9Qq$rK3@(1aPVi4HP=o(CF_+vLaFlb#>>rI+X9(w z=bc$QFu~}(bsjoDtRKkJh&>P{+_NmqGdC9!(`Dvk==BJoq?A6>x5+wa2loWTc#6=< zr1zP+!<)7p9Uv%NQ88pUiu#ogD;1$;Ie!-!8=HVr_1cwYH}^dvJ~%(mnNTq#nIv+} z4*tw|8q1}!^8AZlJF)VP4SM<8dU+NvyYCm;T%MC-incQ%x6@fdh{|=Brw1ISC7uh1 zVeB~1+}BI(xPTEv7q{fQ(8PA;T|1mSXZ>Wrw@)Mk%szGC{GWB=`LDiRsKic0+HHT% z9y?~trW`xSx?UG%PN4&3d0kMx955{?;R?7d*nQm5hhs+ps&1T|XuvYB2d3(XP8uXN zY*`ez7WNs+b(Uf*mJP{;RF_aJ%kN(b8~4xSeeF<#sTjadnvfE|{jOXOa19&0nmt}P zRd9@?h14#{UPLwDC_7-@{xcvKHIx@)_RA!57ZF+TFMF1ZevoY5N#t{%W0bZm+P=wK zPS|nWYM+l~bNu4R5n1L=0l(z&pC(@C+lhNI{~VbuuG7+IH*QiCok8MTBF>a(b!rc0 zh?e|R?%!xA(rc&uSAv;0kZBhghAC_`C5mI&~uOw_Bdc^)ZFP zDv>x>hskq=c8j+moD%NI#P%5$Ixbzf?Vs) z#^%!)z7f*u!i|H|gwOuk`@Jo%44nNdiZF&a;gI?+5ioPp=z&mz+6R#!DXdUN3+1f& z%(%{czaYELk}=ubAFzqc}l==Vvy}v$k|9fL?|e+ z9UCgLK0(C6^}YHK7JIE8V&pERgUKy;9WGhBge%r}t*%(z=;s7V=q9npd5Od0ufBII z=d(>2veCmXSqhIIpaaRCh%7j4pG1$gQmy20_9RMKmsTU@4xTbXC|3Mw0-({{`}dJ zIcM*E_RHF9uf5jVYp)eLOTeiIC(~Q0CtChCG_{uCL#A%Vbz}(<9in#L5G;m066IAW znF@p`;C)|#*W@`Rc3>5dF>c|bLgniqXzld7KO0NrxdB`rbYL#_0E;Qq3v<~(H6=8} zUUy(V#^K98m46))cD2afnS$RjZi)aOG`;pjm+~7GP-nK<@_T_^YU@PAl10qPiqN{` ztI%fj)6ynvJ_^FBuV#!%Y;$vlu-EjQzKXXlCApx8X+}-c?x>xUQM#8N_w^aggFg=caE|?ts)h*v zATSUfo=_r!L&vo0Q=F0~=TfEW1D*LrMwJLBGfP8D>iyUW~HP7-UOt8r>eisFsIkQt&=b0r=VC$g*qA@Ln$N48sQ_H9QJuu| zk)TMo`mvkjhh5S3S^x>S-%S{CAiz91-gc77Am3&PUYG9xx8K{Tdf=flBK(u9BH@ z77K(q`7Nwn8*84WN%=47q5B!HRcfDhBp*2r7O6#M^g~W&`L&CQi?J&4Acqo$xy!6u z>7fjs&dD)6XO+E#Bm5+8qX=+Lu~R7v3o&5wv~xoR(P`rPhtc@@L7K`GDecNY~FTrh|1CVP3-5v4Pu@Hep{?7C4piH!d znwv9-PFW``4{T>*iTvagi0n$l%CpJY+c0px{eIzu(1Ql8S~X|9-b-R;21t ze%iz@8lIy%Ug)KdD*a>r>3#*l!lRvX%+|3`@fB(RfGPi7B1itnDW&}0eV=E?HQX&g z@f`K{ez!#L{chQ{>N_^4c{Cw+Hav&y_2SNe*EtXB#al-d4RV(v!?t1S~ z^%|<)uS>nXEK1NWH^70(q*Wr97J1dJYp!Y`09}<_t2RPT!ty|oo zr*5)Ge=SsgFj{_)Gn%WEp`ZQm&t}<=$rqH|7_ujh8E1QsU|xAikAFMy#8cFq_$=Z2 zaEX^q_~mTd!KJ-+OwL&Labe=mAO!eLDb!h0l8ouRuLt^|9>v)$Jz#SxJ;D`ZE0 zHcMR_f}Rh0^AB7i*^g_i-R}NJ1U>pu_@{s9->#Z^RExr$e42kd)C^LjuYWrZ?j>RT&%ZlXxIn_HKR<>FKB3Filhx`>qfc!7Ie&RJLd6?OjLx)=R}4>$U_8;)Y*x6cV_QZDZ@D2-DO^gq|#*=I{Wpj>6HWVxJ8 z?&fYu;yEsV;Q()e)R&@51yIS4`@Bp1_f*;C9A9^TrnK^PCrl%bMQrbbAd~Iggc?EO zOUe}*oC7vHSOn?B^&R-brIJifckgT)AmsEWi4lQkjq7j^=oJ8SvKu$&;Np7oc*pad zFbNKYh$$0M)=%Ox_=>cTJbd9Le#O>pCKF4JpW#5(WsdiLrq;RmaQAeK*B4Mh%AZ|w zCHvLcj@|#*t6h&jzN#C!WBaj#){8?~ix(*Qzpq`YAg z?}p`G6dY(Qa!ZGoy+aEq^G!UxMdxteG$v|cDQ_iZm|cp|vD1D%zRb8}WaPGIV1aGv#PI@(|k6{n|}{B+Cv}VC-L{L zGgynQb218@jN2vScVvKaMOl5k-9ospvd9jXx8VgnWWH@~4zx<2FfYeP?P|_sU7GzW zdl(=dXL%P9YhsdRtj^*Z&$6GAjJps~7wQAOS&46Ezpy=(y}p8+m;2mDgLw7de;tl z7)Ml8{W|xPTI{QQ6}ECVf(4I>kLnl^X0z;RXQ(7(Mb^XjrqVwPbnI!TKb9^LPV8x? zK9;^;5NX=UkEL%=>G;j+SN~sC`tgsY|5~NvxujqDM^$=Pzw|i|+S88pPy3cV?W6u_ zlk909_D}nUJ?&`!v@hDzj`UBv$ewmMGmZV$@YjyFbNr&nA`GB^t5KNL-Voyj(IMBu z*EWT)zSGT{Pl?Gv%?)gR_U)%b_QOAS+fy#VkQYC8hX~j#t_#r)m}~W}Z5XVMYwSc{o8%|}lN1&D zgAS-p#Cunb_)MJNhwn8e(B9vv1{q6p07!2{g@_Zuk=njXQ2%VL{zwVJV^T zWdLvXL=@PciDQ%S{Z2{_Dc(qcC=sGHKZNsmzE#v(9#$xpz}8+r^EL5 z&bMJ6B`qvz&ip(j1S$Dl_F45FDX(`3S3`0fX)Ek$XOkl-4F)79%J0g}Ko&AO@IMt9 zy@Q{`Lq~*+ZgMjAKdUk{$+(M*Pv65VJ>Sq?Z_;CjFAJM%Ulnl_+vC;*6nY_QR*>GT z)va;3kxJxXltrk}SR$LzAyfB;tU*fLm{wu;)R;(_& zw{0mQ|I8MW2c0GRa@Ng!eIW{p1z8WabIZdp!y_B@e6ki8=H$_)?#o!8jd~tnC8+&H zs?}5vh?h!9z2!usE&+N0S+mrz01ia=i4#$+`YxK`W2ijdgO?fuWEMo|* zP981a=Sx4F?$?=<<>LXBSLiaf-7+>Z^)5``U#??x@@eu?D()R0O(40zWxT8p;Hzx@ zPaC5oX-J)^JAI^$tOZmZI)4UE}oX<%hOec}`8j4`CSrMs&c=jyIz1p|eT)bHkN z8N$Gh4fwCr^9hnljJB>${$Oja7g!9r>#&Z;b?#tu1t3sMw*lEWm>_PCHJL5ISj;h6 z6NXt-U=>lkQx`QH7VYhy@Ld`|Zokda@%S>?7li0)FEj=HIB%Wo6Gg;fslZS0n-^-q zmi*L|YKs?=Zrwl9D$TYgkGAwY!=9vYK;~Hr2HGC@HzM;WNR6f}N|dImw?KCH=svC7xA)j)Y)>+?Hp+QVqY0WT8^R$<*InQjSsv(`` z{iDy(A`33n=3%AMaVX}&?QlHs~!w|Ej^^hJo zX&%?LpT-}!K=+^YcL&W9AAFt}%3pX~P)b|;h>Y8sJyN&kW)lf@v~CpvsN1vSyRw63 zF>0q!exUn-`vp#Wvh~KI6rk$*0IJPdOJD`vHOjI0qqA*VeY2Q0pA-dm%?U5FuHGsoDNI2;!g^ z!7l5v7uE@>N)=1dsvSBAta_6|Gx^>DT@kG0XY2=D>1NIQ1$4vAwL`Y)W+`;$91X+T zq}u+Q>fRA^Yw}vUl_4U+U;R_?d&PV6{|~=&!!ILNM*)kIjYGmxJaQ*Q74hrr-}0Ge z!wTnHKl16?>#eaPm-$;`Ckf^CCw30~uOlU!`w4vM-ymC6OX~;rBv;pANO-*tH8s1t zj+#3}BMgVSMjM9%`Gi?#cKZ|lq<^z!aN7rZE0=ys@^!0Zq@E@KS13(vNkAaitTtFp&ur;)fABu-J4KT$jbfBx~~ z3WfH&vd#KfZ9k+}RX(_rj)U}}{9ck#?CY4&BmagiJO_T?<@8ZEXXTC4Ue56kSqlM6 zqdoD$9g40%k?QIr^>h{D=LMueE97Z?&+Ik=Tju-_LMSkiJFBsWm;=N9t}AR65c$ea zINez}P>Xwqa;;Zy-D?w}VaTr7@sabd)B~%v*uOc&2cWYL`VUCq2^7AZU5=t2r)X7G zpYXRU;2h`y8;jv;rGH+fc4^(uzGxPEx|(J5#;B$t4SL|{17E=RT1@;jII&mMefwA= zQ+Ci?oBSqhy~so6yFf~gZt#rQr?kUws*b)*Hscz2&W?_xqjIP;1zJGqIbNiHJfoY% zIoit{p2XWn>O87IwGhETOgPzB2)l20o}#8dT492pe93R zg9KX*e+wuYRBZeGxy=EfPBH%sI@AY?Li0*tXKh z*^8NJ#H?KTgN z$@>lXJn2@7{-ziULBn*vuApDeKEIPqGdV)&ui_iPEf7mvF2PikgCaj}yZ?wVFd5sG73_wk9;lEt*$c_W zb=I6)VU*x1a&-8jQTW`-epL}2e>}FU8*cP7_LTE+t{-jg@GE@`9A3oAHn$q^V`fnf z!^|0?m}|M6IAmSy#K@|b6h?11{4krvBU?MnVy{`^aWK2RtJxUUc4v>!0MlPe=Ln)R z=pKGka==XW*k1@3jrmDlea18jzRTtgmtwXGPkLD0+|3r!=HDt8a^V=oFN1K6uE{<& z=NlaMXDi@=shqh2Q0Vdf7wZd8$cC#`uaXQMpII$>{5XzR=8l#f9`F!jTE~gQb$YfI zdzC^F%O(0VVe0fHZjYspG4(OlH7mja6t;Oot{ipQA6W2{g?&6!qRx={9*l@LDlMKrC*mb?ueN$TRRDe&V>k(8|Ac zu$vI?OssrA1=-%Up!S1)^z%(s>L0A{hEIp@{}uhrSpN_IzkvUh0P;==cI3#9A6x&x zMz%Nqnq)h~)B*mu{=m0-zL&5@cvO<(vduxLr09ko5hBXL$yvokX|Fd6*WW^HoT_`? zkiFNx#XMpjZ%wrB=Tyw#07i&f;v$ZuU^`!>E$rFGd)RNSiC(>{#dZhuQHNvQ`42td z`pHPO4aYg#GR%qiPEdz68T8DsC%Dut>{M3rZ{2-4qu%K~_nwuJs_5_d9DHl!S+`~D zt~z+VIoB%&VOT7g4W%5P6I|lH2;Cvf%;5R0^fXyY_w|);FihB!|8SI;t3_A&=N)Ix z+In~6ctu0iH{FA)t~b}(dZ)a__YaKicHt(iDi6AuW9x}@8Jw_rc=nJt|HIVxv0Z~Z zR+#aQrTzM=W&@&w3#lfv)e3u2ENazNbcge6SL{UogEKO|_=k@xkQ5B7gdHpd08kyQ zn==X5A`xpO0MPv{aLqR@@m>Inp&-yAjTo+?k*#}-A*~Kyq$UE-Yb_2)EJuC2mY>A0 z-T@?&yHneWs^rArs`0wH#-0pJ_MX1<>=z>;hUTZs>UM#`3+QMVa_R24a z=A&lK+^=>ukAiHswC)}P1Ev#eY*j&8j}x_At-Fz5KA%P260s?ftRh5OhPgoah1UJS z>n7(v@VQqnBPHH`F$^W;zo7e4)%nyndWuDHURLgPfHV^W64=@|_(}YDJ8W&wdUO2w z3Bx9uKTMNl;RWg*_yQOjvWA$Q5r3_Cr^KU(E1r1pwE%u=MQe`N`kp6thQMH_sUx$S=Oju>P69#ziph1wu`-XXpT$s%X#>Vuhw~Z&DYEW=lvmbsjpoD ze`xDjkrp5K)$%G{h=>JP?GqDOOpWlE;o*t@i^Wm6d1h?>g)Yj92W;()J92oG^GU7x z^PiQ3n>={*pv*-ssu-y{6+^9UWMLD+mHryuv5u-%Evn6^)!3G3%m0Y&G4I$sWM81325L2%2RW5WBihSL6(B?9PpghvW2L!v>79Me4u0sy z(>_^ zjqk>nVr{70>GUMqyPC4JfF)JbY>_Zhcr6c6e;dhI^lsN04no3ngo3Cs*7Ezhn?C}i zge0cisu1DtV(gOd6ptrGr1RC3EvI-XRxh+L2C#o!`u7wmSiXIoXpK{RvqJbYj%Y8e zjn+JPaN;Uh_Rm zcF2;uP4*8w5sO=UQfh7_Q0AK*vcKoiep(+6bm6r_HBhAev|-56NZ@JT0=|>CNPtf` zEowA|oRQDxj(Rsl(rmtytXWPLv2&aXMjZ_Woc^UhPL)s}=Z|_f8u&nahUi(EnO?hrpP4}i9tZf;Z%06m|@f2i@Zim`0JAq z^IdESuU++&c>FsUHVz`GuI1taeWLVuNJXPrK~ZQ z2Ukdrg4q$j!kbzWL#`bmS8Le5rYq#)ws+MRS@N60_UJ?Ml}rfNva5nU5Fx&0)x(#| z1(vEQ!|@Zs-Hs|OZm`*JShI`Yz5H9F6)@Dp%B%UCI1HC;NtVIz`xgJWLcUA%Ico!<~W-F03lio^V-5d%0 z77-L*q9xsIy_A>TRz>gmia2udq;`Ezde`@)cYRNK*Y~7%eNTGV_oR1yPkPs^c@dPwZepFq)lJhRFZ3 zl3!*h!q*A45!@rbjRF_sK#*DRTJT$tIco0fr3XyK7a#_R4E6kL$d(z*@d>&_xmR$C zFqy1qZep;a#dSdy>ukd=mNJimyl1t7BmC^uO1oImT4|$$v@->}1Q*w^>AvEqXeGkclA6R}h&Hje@O^2Wb%O6(rgV%7Vbe9xp|wQ`#Q$w_h$d17}cb`U2G&%<*jzXY3_F*!1^f`e(Y z&9wryXs!Akt}?*VEDKS*hYMkn+9?ZXVa*?FEp?CFXsMiV(kp2#=jKKJyR2oc)l6uipcj*WgxOFf zOFoopzYunH2*kl2EAPAfks@eLu$0Q)46-Ha?1?09 zr&f>ZjMMFXR4A3tkcOl~+ljWM6}+RBwLv9$U!x5xk~~3X!ZyUUf}>hNhgQO{_w(&G zZP+-;mNK3XWDQYV8}@JA5ZIFLP@q+-`7sz5aoy|7*Ad2}uJ@v@eeyac;@V@t?G$M> zV+AMoocJ`HbX(b4&F66zCdjmsqImyO&OLSw^FV6fnob31`JTXkuDBA4JGZ6zL} z4?%}`T$vAL;`c>Sdug8MisYxDiInGxd1QyL-@!}hS)SG{VcqZ4Jab=U?Z3N3^USE# zJhPj5IU{9O$b}{V{1J|87Et`)4st%C*i*B~;L{|c7_1mYXRP2)Q9GQ*p(Xrzo00`* zw1QLo;BM(XYHK(u8Ld00dx=&+=%d-}f(`F1;m<}XE#JN;MH+T!1&5_`JNR={^)S^T z+A2~VrBBRr!w#w~=vIB=;Sk@_8L9A;bo79H3d$6mCS|{*oS^ywY~LDM=!N0Sm$Vj1 zgB5CMm$xQ)YvApuywyt$@AB}GyzP*;13bJhZ-?aV1P?9pcAW3Ty9HlEaXn5y-MHe!L!u~ zpg&lmHEiRZ7%31KRus(^bW!LCNY!v;x1kMt(ZQ?&c*fydsJLsY{7Fbo3Q>+o(T(g- z?`p$}VOpq(+}Y1+CF~oplMTDG__tdd_H35I%H7n|OyliSd9 zM;U!@(h4?_#GW>T87SE&^hFSJSkZGC^{V9x-`86&b;>#uX0R6!Fx;B~)%wT%Siy`P$_g$%=<7mtzG;v(6IE|EX8XUN~sEFcNeh>NSLfD{RZbj=Ih@Pa*fd?ICTvHYDq zTl0ciUfjKU8~7)FsjBY1n6NY-5pRg{NnksPU&xvFZN7b53fy<`SYCGqHSb&eo>A46 z(B6miQ|)P()i%^lBEO4N)@tn}DI*(HEfZAXo2A;G%ligs@+5v`t6T$lk&k4n6$#{+ z*07!Tf-a{4`74|Cc6m4^fAIS3eP3nH6&#pE-S_&6>1Arwcp<0-r$7QoQ&~69wIFdF zMGsPK8EegR=^<0r9*z`qS?ORog+!F0AUAiV&j_5(wP>W15*AWiD{GXPP(YSNT5yQk z6#yt$_5uHzr6$N%Nhi7Ww6|5uMF61u(6G*PXn=Qf-%_KzBbyFEG%R2&HBl@t)+nw`CN9AtT^8AcDfq!)Np7>`Yzz0ba?# z3@KRCG3_bEO18qLckNKY|)r#L(C6nhPA#A?lZf+^#* zBp*oeJHw}qIL%CIUf4NLzBXc;R@R}i8{QShbGBQ{okiLA7%NnU$!${2mq>R9@ozVf z@yI~R-d5_1kds~$;_seh=X@h#ZjP9(QM0v=yuqY-q^Y}zs#TkkC_Lv$YUq^67$R># zA0^=dx6JA=6pYzSW;5&{IO-Yij<{G~gq)zr`B84Tl30oaTe?Sz&+eALv*exSB^kWJ zIl&~61o0|qCs~KxF53i3kp{w-A{KfcAWd`~o@u98B|MZJqH5ydAzeUlI;EoV?vMn^ zP~Jg27erlq_(c4uK#U7SG$<9KUPemEVd-92IwQdx3lMbPl-gvOm9~;vhLo_4ml7ym z!4?XaY?V)2D7&6)MZ-#(B&nUGT6)tU$qjI(s%Lxv)i027o|HP9r3&DZJDc568ZYUT zkfg6b)4=;r&WQ?gK)yu6Yo+l%NJJQ^O;ooy;Y3QP$?nZ|*$+0VxeVmMGD*+$a zO!vA70NigsbT)Qop!Ucmd}E?p@C=Kq~b3t{{)r`Ip*m#0& z?T!W>a)Vrd?9!IWJ;sPVFZ*WOeH|asIN7x3=5m{FK%lYeDlqLzc0SLzRMt4MruYU1 zwp3jtStI*oNi<<|4Mco&;s|#-7&N#)T6^RQnu&iffU-lU(Je-f79C7Z4ZK&MsJh^p zksAN1|GV*je1KIE8JrqR*tJvgZ%PB;Cbu&><4TVnTgCp9IrzY-d5q3bqw9r<(2y}; zQK+Bx6})o>o;Z!GAergK8iGN;?sU|u`K1bwxPL9ldcMT3y|P>H_hC|}GJWNI2WP)q zrIyW~_(?2#wf}ua$KHdhi`MyJvsHX6oM5%BY@d(k(X1k{Z=Hz`?aR2f%Z0-+u7!u=2@QFq>Z{lUT%Eb8_Rh}C6|P#$c_wfQI{>S=IA2uU5NMg7xh>VS0e!$E&C-Ib>>a%ng#i-YE7q`m0jLkHvoz9dfm`bjK2M z!SZlE=loV&W!So_fM&kQf3R3_G-%d6ekwkJ+r;4Ex(!5(fU_T@AXOcRt>W zVscfa3*+V!XPGK(@hV=$8vR~<0`d%TYoGuAlBg0UTAch zXI^X~>v7}2RUg|$k%&WQ7oL=UK9nytuj}}`zB1lUfs(Z-VZ04E|Aj$55vnRyDb#iRL}TnN(#y^H(BdD>Z*AhF912!~s@eatjLH z#0IRX*#D-aFdn7-4fA(=Y(@-owXULIh~W-KUeZ6A4`+VZ7@X-yY?Kw!pv)$6nGmtO zH~bqW@0O5`J%6G>&-YkMa} za07jg1hDS{;F};O z+)RLEXt6flRe>`)eznEIwpx5cW)@kUE^?Y81JyJ=)vw5((?w2E#4U%0)s_8<{3>1K zBt-@(o0(ht6nWr0V$>UcF8$Em6BIg6#M5f=3Det~K821`XmG6iJZCk3LZNO7Wdmld zdJj0&TS$vtn(k2-MTjq)tyS0dD{_9i$T5nXAL|~XRX@|ONEh#_%O6qXf>`(Y6;+vy z$RVi8{*dgPSoZ}LcV}jAO=lk^duXgXr=qAgJ3Uw|RWGzdM`GPWD?U%I?#!L!vJY+` zUU9_*7weoYVAzJ%o(RRYxwz%a<7LJuSyXPzpj3TqM$V!s_w;|5_JvFOZ93bzgUSq zmeE$`V~;&6-we^NZh7cSA~_Z8L1lpCQAcd>Decmp{bJ!H0otvd_C zmQjxy!&8FsSFlaD;Ah2==Z31w2uj`y>J{);m}8gYmty`LTt2rF0QY*PFX<=u_{np+H(i$@v{TO6Y#Qs6Z`%#ups9iRY!}vO-JTk2B z9|)BPX9xYK!}h}qPst_VWzBFALGuH;SjbJf_rjc^v*}jLP-O+=h?s+gR5Ba&I!zKj zQdCiahRWT#9XxCJ+drkf!1oVm%NEmsVSW2R#G2QHV`3UP5H>g6VqbHesMDhU)4dZ) zQ*KRQfY(+2=3F3u?^Td!0tzT61QO_Dyca5HX=MNdjkg1gRL@pbt|V|#8)4y_3q|*i zr>D`jj3&f2vq`q^%D(OWO||zLf2(p%gtRx@KbBC3AY3i~8-4Ovs$5d^dsY8FU0lv5ZKkOQnI)Vmp6 z88YL<+Q57gZQ~P^0d=OfSyK;0O-v6fYr|dJ`p2K(GTe9 zC|1Wv5a>bdiB2=GDQb2H%^i{QXH-uaN0=5J3kvj@jS;hriM%t6YjJQ6{pfqLpqrU$ z7`~Y+n9d0(y(f4yk8dDTnJ0Qo^uAbW#W`zjSt5EHPF_pbX{85H^(k|z^)jPk?UH*w zMW%`mJMT7iR)t~RnzQQt8}c{jD|{YtiTPD7>hPwi7?tJbP<>O>-=xXORxR_NJ4DL5 zb0hvW5&YlQ%!1e(R;5Bm!Ykq9+$6kar&cXey%}c>MXc%V*to@s^g$r|p+}vT(@L;I;mkDeQu5^d4!~{#U z=^^{u+3O$U@~}!N^mA*iVhsQMKrdO9IhM z8F4D&-z7HWwy~Il5qIW=a20>(5<2>2$38D1EW*T7tOn0DzsFn;B;we@QV)9C{ zU4d|y?t{ee!*NC_HlrmRbd`Zwx#ivb2}xmM>3MvQLN}nLV5i`nS^>Zf@lr!1!CeDF{RuZ0?5T`0=> z4QhMkfQ1xJ(YNoC0~8^5rK@EUd$(VOdWs&1c~~ob-=z(^7_P+ioU7uNSo@iCbW)HS z{?Q}e_C24M+5X40hN8Ix)ESE$trVkenAJ~7>hMQ>yyC;Zr`x(L3?hNnv=)UcX=K}5 z?GDE}6leD>A$EdU4#7JYvAaW^`JkJ|k^Y~Oa*@cHZ`cG`N#A}Gnl)bzWy}-I53E3P zJ{0TYO!~s(3;vdsRWUM(=4`OuD0V)acZl%i^nc-rS_nqP7vMc4zFStsXHuayoVN?O zpWzg#d_7%-5R{NT=-1yJh;O)FPU@UbE95?Av6g!c2QUx&JQzVis`$(D=PyTPA#2bm zd~imrr+o{kH*5|>*Nb98Tee@;1D9x(+1(*tkeEC}5Bv_fL155KJQJ3Xn?tyG$kmcT z;xivtaGsGgk$_L977k_3D$vRO4v=DwbZJ3ueHQ`4VA-kdU76x z&?@c`^(T|2D$)Z@RX#E!pJkEO+7KW8%Bx5n|v@71YgHq+Px4L6JA!a!{0oS}I1%BCnRBX1sdC zgU^crmT+gtCNSd7+SMDi#mbwEIUdAj5W6~-r11;F?2{G5)O*y_V*tU_%PA>qs`$?I zeNr{K+Hb{_tRS9j0GCzD>EDRUf0gzF($KHpk>N3x`)EK`w&2-v8EpYCV3l(>iif4X zXPuPCl?ga0jx{h3zfBpxUwhvg;b3kQL*iLz!qJC^%vLUvw&1n}716SXxn5=1cbt*? zoXWG)&yeaO_Bc0N>n}t0WN3HYoT0pIMPSz!Rgz0Nj>hKmVbBy)iQ!8agdCBe_=1R& za_J+aK*>2S+Ca39Hz9bRpj7~WLvGD8OPwD%1it71RvM>-rEFLaWo%r6-PaOzLxO85 z>*Qz@Jm;cEB+ys0Z_I? zPArYzxDDGUi(u%FRXNY)i};O{C&J|$K}_yS{g-rz0>)!(z@90Ook|NrAetZ>h$^*u zypQn$TzL_${!av*{F*xOf(e*X=#G}}6?VY=pM5@4d9o;bJ~XbAW_0(rjgQ*jiJ z574Ur2bu%JR?LqCmLW6=jyxU~zUw|>s$l^hGWTOIl8inP?|0#MIY^11@ zQ*vg18Y#LuY^FTigGx1gL^vjF$XfY-8S_O#q8SwgH%kJ1ARia8?C@|Sw!#IqQi6ox z^3sesBsw(qJ}8-I&}S%*iNS7Jp%VWPiw!IXFqU(OB|>u`3Z8t3i0ohjDmW<~kVZ-brdTJc zEe(OF1Z$rH=3bbn624N*dl490&swScy|8_=LRX%r)huMcku7$%+yz+x6rl_0#mk+N zXPuPv;^j_Bt&@^kyj&dNz0a;J{_&?~hq#c(iu`wUSZZl*Q%m!9xGHC9p61Cg!70!1 zgK`rb-#IKN_7hSr?U0oCF10k-SNbi@)Owt))}t_4Fq^6Mh;iXttVc22Wlfguhnmjj zGDV$Ql&fV?mMB9nOc3IgD`_7ny&2neO82kjjL#u13mFhxlSooP=Gt56i>?-@alTrd zQ_gqezEW0a0e?ItEKW?bQ0#5fyqh#HX8N)?H^|~-RdVnx9F$m-4yPu`R4F1tD&u<= zCo8IIip46Bm0HI_wOFXcqbP4?Rffx(Bn}r~F&y{DTY)6I>lz`79 zvQS17D!X?P6IqE`Tphm>If~Ll^Z!F>Y%ee1SLscKAEWPav6h)4iccXTQlUdg)ac$$X7<4f?XZG=-WQ9Pq$y9f^PP9 zqDgImPX8IDXR=gr`7O_=0S^7T`c(pQYB0G25HIk59Z7XAX|Y>E`H_iL?~>BnFo6MxJRAve8W_t{@#2b6p(M`uQz=xZGbxA#ypB9bSkW?^%)VZKH1 zBF8^Its=<`ta>nPZZXXLXbDe6%~jZjP<%ALxqV}xKgUFCMQDexecuRAPx}O!*UiIN z#zAZ~WvdcvM4DOUNgSExVogAH!7IbZ_IA1wx3l;9M$7KT2H;k@ObJScy@<{cmARFh zL26eC+uj=!7fpA;W@09#wn4#8_Y3&Ht12O+_>DyEkq;6F%Um#>Sc*u#@lDw8)m2}Y z0@+Rh*=Q0?6ms&jX|w8L$B-8<^(NVdq|wpaC?(O=wLT` zSD7PN>%F2Q5XSVlJeV95pCH&?9b#sUG71m{_|YLsK~B7oY!ni*rH#QCE2@XgLT@>R zkOGn3(Vb&FltA+i@%^u!ivH-7QPYkBU#s@hsBVvgv4>5%RbJFtAOiFN(IRFnB=BFh z^6~t+Z@h<#8cSryCtg7a((e^yzAQnu@G1Wh-W(i}}<7Wm0IXc1p zqV>8Y7+AmNv)<6K3|joU>?7|FHq5CUu}^Iqch<{v1yL{@4iQ`wb!}s?Qy``^Nrn|n zu#L7QiZDh-Ulugm(Ux|ipaFNPe*&_G&90z}uve9BtaJ#|wbQs=9Wu}8UGGLrZrI`L zFwNJGx4mB+*XaJe)NVF+wP~R`1iGpbR`5f^-0iBxiBM1K{7aO!fjjTV6Ze*~+6z$D z5Cxh^&-pzx04+x&5&QO4{t=xc9%;}_bfI45hcQ5i&|;%<#~Etk5$uJnV5i`^MZ?$~ zGzR6kK8rx`H;D2RVtNsMCY9l^>byTENjAEhWv`g#R?H0ds0%s}m6AfIwX63(cq{&~ zqX#4&=Dc=4I{2Yq2CycIP|<*58uL5q(mbq1``aV?XhC}=vs6DiUg^PA}%qw`cI@`?LA;l9cB6^%eX=r@H?p0{`#C zxdp&har+|H#SwFAH!gDsVJSD~EcKUd#R=0IPh2)orL=Guv09x7x_x^5;AKJAYJ4DF zrnj8dT^ms2o8NC%uP2mliqBe3h=(0>6V?a8cZA5HphB`BPWpz22kZ8&XUSvh$LZSC zjdJp*n_geynAL%@Wsn)w#7#PUcyw{F$;&S~P)UpPC-&5Hx ze+T{Vsnx#Rq%96Ydyi_9xzkYaE(boquIca4I8n6R)fO?o{i1w$)i(K% zhoMOxi17rVR=S$Z=xb*1O^)=h$})p;J*QPnuoNG5>1(N`!056zxLo)w{C{8F^q^)= zZ=$H!iyz}3mU9iP=`$Y3?|>ED2sQtjxSjvd)rk*zvpx`P)0W>OIH!WNd{bfHpy#;B zT)4r?c@e$%dfPoo+|8Sf5j&b7POcbi9*)S&uvBXGt~QRtP$mEkan6MzM0V5V zyBe83fI78_1Lb!@HYZB<^lpX5xT^`<*FS<@GU!~8Mk}9qQXm~W1QVM(0b_%A0Ur?W z9W2BW3zs zN2jLO+U~j6DJr2w)DN^~=__n~rkjZ8LZb&)&J_Brd4y_tglc(&YI%fed4y_tglc(& zYI#yr%i~Zj`**_W_aW+u+214V?s-5^Xh-5(yvY(z{uh)tF~#K=L1k#Glp>T(Su~+E zDgr&j{)%9y*af067v*_k?GFdYd=JE6RFZ%`_2yuxYk*C_H|L>Qe?PB zKAQoLmwxyd0Au|H&Gm43M&K=N*)l!?ES~Rqg7!VGsMyYaKvL}V0PT?>EPWhuM$BfJ z=ZLv2rA>|W(WJuPuq$ewv5*#y6ZXU6aF!q!4Dfj(_ea}BmHMVU4(CnIS{><5MBLT- zvDE`BzN5$Xoq|6Mm#;Vc9AtQvdDMRA{2SDWWC;U$_cs53VaI$#k}zjx%bA|h8{b`;fvUJMay9l zP8jAcVN!*fbC7{vV&0GtHXAkK|3vuzUahlXa(>AYDBwh6Lp(8nYklYk@JZy4?|EsS914uavaY5+@`GHA>1~ zO>?`%j>E^5vx@6DBgS=Ec^yM+=RkjvneYpLnt_7UQoq^>`}Ai9Je%s!IAylSJhr}!%&yyPZ8 zi4R0sa>t;x%Y?M7XD~oK8K9^v0ek}`rwZq^0p1B7DE)mO{s(zjlz%gzE7$xlk=!e1 z_lQ=QF13ZtH|0hL=AG61SZJa0x6*beVLPZPv!Z8CK?wb;@GIfV7Y}jbnuMru>Wt%$ zd}DUqY#Ub~if)S^8W2X_iofp;`%iuXZUHX^mekpwEKa5PZL3Tuvj)rn238a+o07br znMXi$jL4t}#!pYNHwgp=1~yk+ZFaFk`L~41V=QvgQG6Un zF)q6vZtcZ@LAS9W!$JZ9-!P-IqUQUE_HYG=80{kA!%ARJPTlBZU5FpsRAdHE$zF_e8_{b}ifaEZ8g*^hk3p+Oiwf z0w=)W4=}iD4*8ov;c9FmJUNdGw9f)<-8^b`>E3-@l6iJ z6H}L;6QoWK=Vka+itics~Kd@X=m-eW%rYL~t! zY6NGy41CO>1M~Xi3f2e9BB?S5-W!zMBCFxU-3B#u>81;j!y;ARuPYi(4Z5LgbyHfvORH*e*iVa zUU%4Rj{4h~e~9;fHov&D`Q_?pp6V(QkfT`IK~_9Nf5ed48+0}YEEw3s-JB{S4#y+@ zINw9IGS=rEaap2r)VPmP=z-IkEz!MWhg?E?B?3rvt{^$ zjUbm}rn1smgA>$l#p09YU`~H=qMi2@Ov%_IBj!%JcI~?+5mXZpk~gJZ4A2m=o|E0n zFcrYV=0})WxI7^dbWE{WYsgrgLXTOWFi$Ym2nawZ;y)tFIB}2$rS}+?E%T;U>a909 zq7I}w_a;sfnuKTsv$Q+d14QqcI}v`b1U8#&SUtJ<$?YxqJC#D*PE>{N{E!E+xR?rT z#R^PS*Ueyp2Pj)Qo$F3qaum}I-oC9wny9RYRs4fRlr!EYY2uV>ICtWyaNt9&Mgrde zHbD2HfH8${SULdE=h(LNz*g)a1qI8uBOm;dWYzziUn(>a95>9Q*mYE(NmNf}#C^M&=e+SAgwN8=$>ZFTRg#xae zUnZ-ZC2h!(3D%OBn<~viy0EtV>y)DVRdb{ehtB9qn$fUvY>o&F>1IE0bw*s<x__LK|Q6*@Us_*zEAX?-*kFQ7~9``iu`75)B>XA5g#*OspqC5LQB%Rk~t zRGQ1LgEn<6?9nGXxm(h?V%DW@Dd;P=$!y!hFL^}Kt?B%5T@1SQ%a5R2J>U1CU+Min zQvUt9*ak<;L)_pASwp|{C-`vlt+2TfC8T01v93}sOM_6cgue})XxJvct0-1~$214Q5FCYhOAlecvyrC=6cCAKYtUG$$sL47-^>f&;l;x->`0Vj6 z5p6@(pkMt#ofi!@ta)hdj-%#l<{r@!Il+vSZx14p6|RZ;cNk_fc2)lkTT4V7ZJD?+ z?HR9Oe-DVt4k*eYa~pULcjR2_%v8;0Ox3v`)8{(iKO1Q60EL1Qr>C!*Wsq?CFV?)C|KeC50*x$`(;~Bfl8VJC+Cf!42(=qHfN|K z;6ur4tnv~a!x0)DfxZ|cgkr!P$hlh`K7KotUHo{hBxk8uQ06R+2DVn@Vdx5|1V+pE zfj0sO0Z&IGauFL>A<$0klUfaY9fk@Y+b!jrOAg`i37kUIU!(1p)4g;9lOCTRu9<$3uxO0H~;aJ4#1l6s61bFNI2KppDu82Tt zs&dekR=Jt6!kGR?@|H>87YC|G5uJrtKwQ6Gc9r5 z?HHj-xNT3)lT3@y?VQKV6aG3*2b5`Hsqy3~nYLW_LRMO`n`JB@>T?C)lg3^xxS|B$ zJ}s2G&r{7nwLlyo!uAYp-8_F&$J2`W{|vLGuXGfh!%uTY&6&&ti=YmNtK|CMmzV{} z#$G35ykxYIktjbb?9Rvj>vNvA@W5EU7XQhj2^Eu-XZb}HP@OhVajwOa^0+ck;o)gt zyHn=3%1taO&nsWQJp4s@LFVB#U%vFpy7WIVrIO3*qEivCo6oA`*L+R<;_kDZ9|Olc zostaA;PwTcDR@zO*VUrW3`u&Cx|LC_+{qT!QszabP?;pJhdGvQ&P5rIY4^*dl&q^l>L}dWF-+i`7`&C2H z=PP`7qPpBe3cefgNAbS=d5`Ku3NMK#_C!$I7}{to$R76z?#Wr#k{!r&+Us}ZTT2zl zx;6~FW2C>uunod>$GR_`f58F_O7Pc-4Hyi@hN9|Y6&@^2YPc$ROLMBC*zpUsrbZz57@k*%hLL0(jx~_}> z!=tvLC(iXftGhM}%>xLqADuI`sw3ec8^kpu(1c%X)t24B6IEU#u$vji_l@{Mo&l3P zb*A=10)u)v0Rf_-W3_V>O`s>9ycJOyrXba9lrWyL0zNq~o~5AL7m(;9(t!Ns!~x(g z4MeDP)=_OV_c*AcW;=eJ1+LnX=Tbm5GNG#bTY`3;Uyq&ah3ePoxVbF_)a?qWttp_w z7Xa1&rY4>MYhDVh8@bKz#Ng1Xaf8|mS2mZRDJpp)P$~dtKvoNhi;`R)AtJ=_M()@Y zB#(yTd-5YgS{X>0oL{+C%a_IBz$&d~4#HEm`1)v!zh+&BesC^IVrQBuqiM9%mtUda_S@Gv)Ni%X2m3Cb7oxcKWv zRB@IU!3@tMpyuGjwl`AOg24ug~kGi%c?8o8XF9h$>^$Df9_L6zr z%EX@bplmTqpTYGn8%Of@^n68%Xe8fEwMSL5-{{Jdi#kM21gO)nob=>Xd@TLy?S~q2 z|9%YO8(GUC2iqJtDxmfN)72=jjFz9pxc7C&1MdboO#X?EB)*n}Sy1v}ANgXTIt&Tf zY5mAcvgSEAeU=~SOO3PKbM0E^{RwBW=RVW!y#LNw>bd`w#Rw_?lC#ir)d_3JdPY_! zDi(om$a-CPgNXHC&+)^4^3{;_l5hfO0cIf4OvQvs$N9cFy~KK^U8M&x1LB&QvNkBJ z#Ri*`+7;v&ru`H@{uYq8=9_~^u%788L7iOt*zT<-Bp*(Bh8dl$%qS~qOwxoqE+mfN z3B#J59W8&Gm~?P{=G0j_sva{~VK$=)=OBD89ItL}6iHOa$%`#Fl4J8K5K?~Y7S_3m z(-W7%S(s8S;!5_OcL~3Hk>>Gnsg>IiWvi41yGI1!?g12?t7T~^T$wpyCy8_*9%$ln zMO7KC_-H6-?#7(qdTz_j3i^dEx+=!fI8AeG!V0RIVgt%5_j1RxGWP*%r6O?~C%^i! zdRN6Lh6eMy&2TAYEWP`=kV)eSzI2Ks^aov?foGZkkhWYx(8+c`<;TL=0l4UFc42Em zK8JMdTdz06QrtdLo6@LFJ#J2|h}8|$Zto5}@uGaZh%=!qXZkKsQvxJqy$m}0BW!+; zpI=oV695ILdsos zhY{vX17Cdn`PO>=+}D)2f1e{LqsXTc7G^#wD{M*&3+~AnR z!&BfM%3o@xQ`oW0ooKsXMhE|I)yO!-rJQ0c!R9e3PB}O$Y#Z(?7~k~8SBl9SKG z&A^sn1?h>zQIt`(tSU1&7o9~-A@hVxA2PpPkeG;@5W4ll+w&sU2!Ugjg64x>GdR+k z-~lw4Zt~{`qtWH%6R9znXSNYfZ@^0G%L-}1Iy8akV`??D3hGK`qF}EAq}j?jUmBEQ zv7U)$CnC3D>0kvzj2|da`{tS1A@e*gGy|GRdFBKUxkZvL^Etumz)e6!Ycj;yDHwhl zsET_*25c}i}>_dQ8xScrfjlsDBy2cto0Ov_YDgPz! zqNtN0Dakta#6VD#zWEQ|qt!@sPtb&UpPTSiDTRd6&RFwCnspA&$wKbtTRxe4G^AZo z>)>s?eF%WU9=J3vOP*3trMpndj;?hz2fDRo&r-D&%oFSBh&e)#!-@*7ZLZ1&1?1sD z{6Oa3o+pn#7@ZhCSU%YYRNyaOH1>q`ssmmq)+p6 z{z3D%k)K=(XO;NFF0~m8uLon0dA}rO|2jra?28nsC>GYdjdBt_Lv6pJo#JZ8+i27l z;P=Qz3y!F~R5`eZaNqEo3fW0Fu}VCH=JO0gQp@-FUsLiA*|op-bV#gHWU3Rl-6-I7 z!YKvipkj0_SDd4KQn&#k7;a{JPrS84SRd{e9m3rl2c=a0_N#b3cN`885xaG_)X_wW z%n1FVNJ*2~OtTF-);oexxXD-d*?Ddx=o+#&_ZJm* zL0ekH-bQfii1{8z{^()qapCs7f{s?R7o?Em;xTeu4D2~BEuJ?DBTy&Q(iu5-f^_ZaM$8Th5n~RDVD7{}DqIsu z0oYjbu znQ{Egh0H@8`KT%kkxIqfv4PXM-P$tIIRyhpwWXiqL62Sk%3w^S=D!ng|4-!>*<1>@ zGc#;WJ`>%p6EZ6uNz0(G2}YLYmkG&IxLxK{c*PW>?b;3gAhuOJk)=IZ&+WojmO0u^ z!3mjj?TU4;4yC*TrhaA4D-w;N2Q6w%R4%KTL7DOs9iaoUqq?|DQps41FT>ydOQ7t8CIU=mAtAfYzyAZ&0NbOkO~O6bTnt}8;&VS#@}uYa zMZEke^>WQ3ok(c*HLIx$^;Ml_&jLAw%nbF;mYY>abnG~U>bQ8FXuJPE>fSv*%Iezx z&m8#ZuwC*)v?dk zJ)#Kqjqf}&Pn%0~9S|3O2TJ3gIq-34sPCF66U>RFdr&aMFU|G}Y(_{EVsFmgdXQS?>ciY@I z8Z9KQ(`4GXfQ)sWbOmJ!BaNXi*^L*Pet5m;iXCSTbm4)J+gYNCG(aOo>QlD{y~Fr$d^WSr{=4H^nHC|MA;4OAjSr%`g8h!+MI4@Y=;lW^IOKEtwW(HrchS8 zJ#%Wsa_i-5KCHB@jr|#q+IJgq4-9Q{ZP)-0VAWB%S`vJ zo9*|LUSZR3uZCYyLqEYd3BQef)FR#o*TseKw;t9jPfW3;rSQ34K1F%PrHP7PfsV8eKK z&d-5b?W_2Ox{v0X=Jjh}0jmSeetP@PK>nwupWbO$PqIiF=Ck}tc)5d0bN&+L--pdB{8-7B_iA%^7EPKvbaxIhNZJAf{ z8DZX4b=Z9$-3D!%DxuBSHh6f?r_=Z%ro`@>Jzc` z>aYj)I7>bzDW*p+(me-)D&6DhH3=rB_~1=!H_=IUT5lJ*=;N;d24hSyZMUW0KEO%% zVc?;hlUV3mx}D)#6IXxtoAnQ2@PYYSq3LVD|Lx||&6g!cFErOi*b_v{%{`o+->`d- z=^tlw+@1|{SB{#Sg}(zp*KF0@y31L-gtcc`#)RBA^gz2L5a9_e~#&jE~MtV91$U87Fp6gyYllSTm>v z{iE%dV{?kfA(+x@6A1_}u53V?C6N07UBg}mH=$W<`9FpuIIH~7nn2^ZTo>?QsFSMU%oZ2VxGSl3B7x;e`OkCv)aV1_9 z@@?ma+un&2AI8dYe%Oab{6=ll{vV5)g#PUTgGbIHnUD}rNHOz6;3149;iom|{;@77 z1pbhXrM@SA9v}@tZiJZ5l4>g4^Se_nMgNJ2ljNgD2-7bgy-%$aJR$6W5o>L?zX{ z1|ed-lSo|x#=o2AqOD#5k2cu3x6^raV`AJ3Dp=YRd!mI_c~vy3(q_l{>q6QMJYBc7P` z1{K^c>7D{>vZe=}nOtjr=eCW-<{&2n6lkcFd zgCRwmOjq`hJVt#wV9t5(I5Yj)&u5O*4aUq3`Xe#i%!BamGjFWo^ZIW6d5;dRRl;`u z9N$X=*O!y|8?RE=H=gFtxAb-N8GUuC>{L2^6hc08>vZRP@AxRd$AOm>U<8*r`Y{;^PGj(Y2pt2Rndp?_a#n|x}%!EgWHHZXoR^_wcs{2jy1h)LTjF=C917Uw6u^+XJuQ2r?1&$&&nWJH zmbVAp%l+}nUOqeG35_*Wx;2*K3S_yuLfLe)^k>tKu)8u?x}BDxclBW>w2~QvQk44> z6SG5Q*94r!r$c_s{0vGLbhm^{yRnQ*M|RQ?L&m*fbsRzPg*k}m(?p1_v9}_gyFAbK zXoKxhX$L+C)fo&6dIkHsMXyeoki7JS1Q8;B$czNtm;e5xJOXGb4;N`d5I7SD}{&(sN*!j-?Uo@PDS zMt&b~d?;9?SHl8E;fKt@2LOg{MR}`Z0V71i48JfjaZt2jt=Fmr$O`yz-c<8e`^Fw* zyMo*`B>oUIO<2V9Nolt*G_T^7sU-a5_%T#&2FEw z9CrgoR13Zw9i)fw>G=gqHk57^k~pCaG2Vx|1!ZRAZoVF@34Jn+x4pR(q(z$6)F->G!Gd|aaD1grqN zybz7+KRmgLIaL{F-w4RS3FW19^}m z;2d|ea2_xrZqpbJlPGLMMW*&}_X1Ag`M0KsVf%A1=^M?dxp>bf+rsg}J3?jM*g@|` z1CpE94OU(lDcjuG5O%v*9sgI6)%b^pQG>(^x`w@J2PP3P6g?~&Z<-y<@&6?FBm>Ms z`=cwze+S3QWzE0l*0|~agyN4F`UBlk7kv9MGm6c9uGnddCYtUB3dV%W5(_ErB+g|7 zK^>IBhW;^$|IztZcYX`BWxxj5bgdm1k1Rg1HHKQybS zwcX>PU?1TJCpnA9A&an=?upBN@uoo8ekbuos;O*vR&&OD)nn{+jLlN%a`ADu>at4`GM^Bnir3h;(v|8-yjZ|9w}~sPY=DXNC=VvS>NE1}M+?tnv7XrxN%Y1X6qR)1;;uoIFs2o^Se^BC5bKJsR2M-Y!g+*rjc z%XtY=Re`|#^2F#?O$t38IZ2a!To?)GTZ&-cpge@(Oy-n66?l||9m@19R94yREE!ag zl{G2uU%-?Gv};eyDV+D1s&pb7fDA9rpN{L87|&l2O5_h|UB`~i96w#!ZNLVo;Yq&F z=%7@VT;k@>qqd@nu76&d1Ca=seuln~9ZdMo1PRI`ccw|}HC17pt9V^z-Uo?H8C)&9 z1^}6W7xQ>!mTv?4P0pkFXJ~Wpr<0KGjw9LJs!|~t;MQbA?EK_^PW0YL-*41 zHMbWJJj?s#$MKs3WjEJ5iK%qdqq#6=0SGxe8a}Yv`KgMV6LTmrBQI|DF)+~$iwHU` z+fO$u0U2-Vh5(BrSP#C=O1D=Tzp{uYY@djmEy8^@lBhz11`nZ6MYDOP6Rs*nZDeYR z_P3`-VgY6?zBFJct^yOnXvCIogSr>VKtjCm9ss^QRLTMh#Kb!ToLWC$Hx@GD`F91& z@XJ^EOxfBw-wHuQF~kr%TF~r_-B@<_*$l|Jr!!GKY;dS-YQRa{k}HzEe1nHT&;rY* zbT{Xh-Cd;Ii8}+@r7F2KwIGA+A=Z_beEJ5d8kDF*n7j}9c9(9}Bc&1NKXE63g|dC^ z*AT-rpa}cu=rX(ZA>Z3{qIZtpcU&>GW;o4u7NiTKciL;v;d)1B+zC$N_P?@o8V z#o729`=%p2Sj(Spkb3l4{&UKm$(j878>o;2w=*+Ipj(0U{NK(0RdmA~q1Wjg-L5~J zOr2}@BiV>fK?ZRx_rEj!Q#jaD;qlenmre;FdYmGKyb7kfwbtxZ8)C2Z<`_*v zlABD?LD?XJO^u#~al4A_u$Z5vHo1C`Up0{_qn7Adm|?2Op_=BIriwusRpgVzbK7T| zt4XRJlxK<$8dy9)o?M!_d5kGOB-W8xL!m4koXKG%Iw+s?(4Zk;CEfQ$&pMm+6%&ij zPq-UPxNS6Xc{ZSve>pDBxaFOUGIilXo-6rEyTR96UKP#sgn`hHdQ39`Z{5zaa7p|T z@!MnZu=sj*G?7o$$RB+xQRl+i6;x@@ce&T(AXgQ~_)Yt!-pBHolF|(v(IT6aqdInjk_cGr}y3CBx?N(&3n4hY5nMMC?9pX9rO*UhYyk+P$} zrHRNr7r|G{f*~m+!g;q#6aAE+iq9` zCS}Ye=lgHt=^I=EyTL5T&tD_)E6PKq?LpVabQWHLVx@V!)^azc=ibcAik78(@$54% zY!q#pVA-$P5-wxkx_2eK+4hictBz0K-nvKpgELF1;Abp8bF(v z$i!S#)bTziI-u)qXL6?zDl)H=JIU)TUlq>zSO`CCcT3%gz3R4j4hzB52TSE25(9q_ zys;;YQ5O*{Z!8^CV()9La3{S;!BXs#Mmp_^AlBA!*W~ag z3mafcH@_q4nI zrFxncEZcMo;`EEwqrAaH>PEoWOg(TKT?L~8kK9KT*0Ubu2kisz?jzvceFVI_kAQdg z5%BIl0^Z$6z`Oeh*t?I!FC$FL09{7T6H^YMeh7QNxRT92ZfG-D7=ZSK5S%4mgI+*# zQ0T+h%2UH44frpa zfschg&e+d0Pn_*`a^Ve11H1Tt#|=^KuO5A6FL-j z3l%B~Ig{nE%brTf##0iVCb5eQAF;sn!xt`HmC*%Gp7ddr?ZXcBq1X1oo^a=%dV)+x z*rGj%d5M3oow;?`IKW7@!j z+Q^+!>w`dX5zOf{O?=@5tzhGyIK=tZW*p(XV;j4}JVUZ+qX=rC<69Us45iWS9aMWI ziaQ?$_L}s7LUJ-`4x4T#ogbvm`yqY^m{QdT&xXp=Zq_sA@LK0jA*` zf7~cIZh*y3r`Q8#I%Q+L`b!9>nu;c3_`VgOxIA3X6Jd;W!>ol|0&f07dw{Fxbp4A{ zU#8FOl9n+I4t(hkL%4 zrCu8@#dV(8A3p4X70HHVka8&)_uqv$%eR&Td0B^3*}*yPmQoROZ=VR4B=4RoU<;RM zYk8Iqs9u=#Ae_1HXz6B5Md!&(h4bk6L6*|{j$@9U6N2COEIh31zc(0r%NOA$uPh8Z zegVWiUMY6Gh(n6coLR~YJ#Z2eAR>$m)_%KpEYi7#<57v6WyNXSW5f}nczpN0oV>)L z=NJO+raACL^Ff-Kx>o0>IehjFDfw)*DUjz5PTfd?UdA)|>P`QN;1QNc+;rql2EJZh z(V0N^qBWdt(9u(N#yquZcg8{bY}F|bw+eGpFLLPi?(1RS*gMKYM#{jv<(~#x zr4LDht|1I1Lx}u{Ven$ zoOHJu&e32zxSeiir@MiLT!1_S%z#YhxAe)_m^4E;`(t3Q{gBEg2q&1-ZU{8yaP#Lw zI=f4sPK$AjXd7P1v=wwE)`N)qd?z;xMYHW9`-`^tgLt0+tenU*G%RsoM%1QIyiUaO zCWz%W6dqyCP@$N-xfJ<9H0DpYti}wL1Tb{=T+-V|A(5-=~SgnMm5KnY7t!WlMUzD+nw2|pqsnTs=m;0o6^ zG{dIe#!s@2)W4@rbER>hUH*X{SkN4Lpm;9mDKr09Ui95dq&B<_J|bM&p)Yz|bG_U6 zQ~Vgl`1$3noh;{fJGIXlbxLC<#%Ln7d5mW85e`55LvDj+dA_T}st2-Rt}3TntH6D;;EB(>SBLOUknkpYBCyKrWRJm<$! zwrniW!*c&*GLY=qpj}f2r^|X5YoX&C~zA`=t(o2_iM>iZLTWn)~ zfO{LX=gK)t8GD9kRt3QgS#*)>rqT~{RMam~&R7i2OLRj2^B=U}gnvh`J3A~S^*P{R zmI?|Vlra-N%H>k5X=UmfSQ&dxH}F-66_vFa^?&qd+ez(zMB}pih>a#ao$X3}2I7ba zi)U~D1ue#2+z9q<+(DJ}5hK~taE2Xqt~~GEATLsRf3SEEaLgNEnmr8zX#aG7`=`<4 z$EawApXUos$vY4Tx>t)8GMsW?0MhzZ#ral^UJS^fC74R@Wd&y~_W6$UQVna2^NvB( z8owLcZTwSc3I&jd&5D*{!Z`I|W|2Jot^nk958!E+#`tng;!wxJZI@F>N33H}Lrco( zY`1KHb@hQ3;DievPro-fwa=ru@y(F=HVv6CtGy4|?Y=|i<;O$i7^%d<3n<1uE4|}U zN8L?qJl`P!0Ujp^%!MJ>@@)mbMlr5wy-W+UUpwLZWby11x1%K6p1gLrbY!n$`U1Jr zNJN?0STDAzAyOrCPWa!aHD%m_w$Y-y`F4-2U{SN+3Nzp>Jsx*82U&MF*NM*Z7ky77 z^>~XzN7&uMjmFrw4j+y-?1;LrOPkliF}eXkH|b*41m_S%$#ZxJXdaKb`<;@_n5px< zk^Cue7b@G=^nAa5GXj#6-j6Y%bLmu;ZD^eu+TyMheWm%XelVgvQ*jWfNAkFY*wzipt`4VOEe8EonEblhM&Xrh!{2MIKm1|U< z*Hhj|Pw<}CJnS=_q9~8gi_F|aeS4A;w}r~yY+9c>1flfc^CbOeBL_^}AeW;k2A^tt zUw%L0L+_}Q-RS30tOv$CJ9KsfXmtdN=GlFBG60{!6MA{B{ueCpMPhHHEz#|eLh$}y zn&c?Wv1+h>i$A3!eB!GZblt&ib42dw=MN>$Z1yq=dkF!I!kSB0Ky82*XJ(FVgm5Jg#}d?+6(Rp2%k(H(n__ zoa*PC&Xqp6g^D$PJ=+2uw|83A|jT$<&c?2C;VLO1ar%)b~^yBl(%>W`69k;nX}f9d42M7y#~@0@mr2*&6;w^ zL5+6k&Zb@NT4pTvT2A9AnPPKlkUV?#n{?8Cv3WT6)I^6)_j4PL)il2H47`8+Um-OY z=Fa8krUJ%4^hYKFmjb(CI}?{4kDc%dx^p6lulU)<`$z2!_Kjie7FNAmPn{28A8OQd zu%{HN89J8Ah=A8Tm-|Z$a`_(uh4e0?wj((QyXrD2#Qa0$Ms=c|_HeNDMGDro8_S=v zBF7VGy>56^kM<~r{VS&i)vLp|{2_5^jwX1~QHZT^(%#N`m@&o6ER`LOJ$0zg(B*`o zU$nf_DS4Yge$nh=)bysRA`@g4M3hk@s11y%mJ zF5KoUF!x<(=;1Nz8LV+brYPlCsqwL3%-=!~E7r6OEAuW;hFS_QrCK?wo|t>{KC9=D z29-w{oq=_%1pdD;-Iy_;Hd>qsmg#3aST_^(<)a-;{u=IbJH+x!G6Mp3H@#rM$?e2- zY-6;v1A@_bA;p?O04-K!0>j4yrIoGW7<+-1Rd_3c@53-bjZ z)*n%_9oluJZb4*{7;TZ=ESXM|81a`ee-iiulIa@ui+zV!cA(3kmhAPb zKUB9P>>FQ9pGK|egPdBw5gjqt&*Bb`pZ%$ORG^O@VU528j$lWsif903T6^jXa0RLn z4)8GfA>^iCo z5tAJ9^AEL0I&bf9mrwGI4LFn<9iHJ1Th3?&6oLtIv2jj)o=q zTznAfWVrCvd?Y63=xuF=OQ;>#&u70tYL!)nv#2^A=iejYyR)o4uXEwlJx!UHoC9zTt4!l$K)Fx}a+3T=cY^y_Eh)FR9Si|=nmk6{n6 zDjkXMZw2}lXzs+g_t;Al`6!XDn|OL*Jd9h|5bj{l3HwmAZATJmq7k+?4+;CWaEKsR z3=Z%1&Y*8)rEez}=$m$e-@(&fL=nL1KXB8xvpNmqn9Ie;A(wk>@$yuG7GEEX1KxVJ z*$>_xoe{g-p1K}tASnPWetet(Kywfn`oA_H8afI^k9{X1cgDxx%5_jLb^9QX16j!* zklkY?ITOH2P9JQH8wPT(Ck5UfwJsSA>gOkIwl9;73l*t(o1+3=Mw~@bYQ=u2VJUT& zmO)*hukHr%muulK=}i|GJe0X*w^?$Q+L*>LXNXSAT;ZzX#x2^o-AC@D5iIb++8Nk+ z=nFd1JRt@N?K2$Dp+na#Rt%5U;>6r8!#840jJ|I*-00N3$s2JL#luWu;R2~g3|Uyr zYSeck*^Z<$ScYZlz|_4>ct*K#3%<3~01CPM<;JNybq2`)ArK$zu@Dcq1N4Rw?MXf` zR`~_-z-~(~zXlpF=yDc(3lPU0&mqmc2#dAyag^`c)^;))xz4A_1W9KMMv$}9*c#86 z(u_|tUf_Flj&t>D_D-mED9tZ*H@(3e8-@w0*jPaaOL=AHYb*gohOvb>W0dpI~Hn`#no9mM{*QLsp zO|E3(zeRle$^Srm_OZP+BEIM?o>M%<_=7-QkeAKSx!C|?-RVd1^Y70`kT)Q+^6#`ki^78T_E}(@?;fvT={y6GDjUz%b=!A1QAYUv0TJjQB$*#Ad>Tl6! zExCaJh`MO{YMul_)Bk2@dT$?1XR|mKds9SRhWVlDko`=7OK{$COW#*gC)!|zr_%S2 zd-Q$fKT6+E{C}eFyEEv!$oo}*A>=)0avynb3Ip&TU@BVYT0_V8%yo|#Tg2Zs!1;X( zobx_sKzP&z0O$3e0XTcOnn>=+28efoM8Oq}HeapHH&OW}kZ%C|n(KgzjqoJsb|VbJ z4!jGmb0B#jB^ay8{a?zlz!va+#jJXOH}qR10Cf5uq$-8h%BY+&a20r(+W>k*&$ma*$C3*Tj2x8sYebfqlm6?r0BvAhzmORhd& z7W0N^|Y0k)kabG&&i#f3{urhb_TjmZ!_aHuhxr< zRR=@j%W=45{FOq2Kfz9GgzlH|p}o_P*%|^gIN@&Qk^^lY8|{=F&ZwUK3-4?>uz2S7 z0o=ph5ynPvi({C4j{WfYHLo~b8>WhF9I>AX0&{DSE!P~7m6fh;c~F9()T!k;{%_zj z!=(r=--+ziaqV{Z09fF5^S+=(H+`j8EkS<1fKOSsb4s4$9uyz1^u@QuDU^3+BRb~j zC;8&AcK&l_u@1TqINhEEl4!a9?SLJ_$6BNDFc5)k1giL>%)?Yz1^I2>NI{VZ#;4$Z z%;DxTO^8lC*OXV#u)ZU&qSI2f_-EjR=K z^96Bcl>_IEA1#}>T5|-EjE^sVWYBnvbK&dGf?EY&7j`=H^(cS>=QtGLBI`Hj3s7sx zSgZDQ#(GD|z5VeclIB}!c*;gVw%(?(Fw;!{3Z_^ zkiU!3?FJSHIyK?|vQit&?-b!t3!kIk67fZyb&z44^Z7Y?QQV?;ZUh~x`@6I<1TBM|l`>YUJ`I^p0S zCxNyO^S?LsFOaMLbMHm7O!a}>8%$n^On0i194a0rN@pGL$()~9;N+){%jKs=#Z8r* z1n>p?1adDn^$7DdU-I%H-%^1Q#Wo%ks~tMhd>h1)4Ip4t=IsJQA1pO<(UHnyRDbWH z^h45gUlB}{LltoLd=xk{_lm6&+CnURB9!Xl6w`d*oJ#X+t?L=2)(Gl&c#WM+iK5OT z^Le9f=Ambs-`dwPeQhYvPgFfm8=kmM!sHc9!OaQ)t#7$9WljQDz#yb-0aMTvg8vU(A@9`8WWf|1QmPQ&bpR>8 z(Yl-d%UnSOSB#;9@KP&E%tmyCpX5vD>Z1D#HsM~Ia5i(ETuB0RnsHxIQqh2)))(ZE zm@7=Aj*f0Snq1I;1N85 z>(00R#%c#1tB`8F+VqP0$_eQj9g$YHon*gcMnyv}GSak_6duexL0gb`drNXz;)ahM z!=8vv%n|&(xY#30KK2Xo@z&Oi7E<*p~uW7}AoA^b1ItBY}bCPE5Q%U8@*>kdG- z)g#jrIuiB0R#CRG=^5@Ax;29M(7Vwfn8af)jRZ$vhbAY+e{6E1`eQr^_U?st4i1{L zb)@uodR8Lw{0)_uBjs%lc202TRpIWnz5x>XMm&PS)6<#8XmL5h;h|Li0(#{Um{MZ| z6=gO3jaUnsyEqnVY{o|L8*7uf0%GEF6Xm=1+c(y^IqT zysDj9G~z@Wg{&0#|Hz;0sPAY6_kiu{WR)HrL@*Y^vlF~+AUDCTOT^a|EyF3c(<<{j z0Nso<&;_RjzrHd}P7MFSgQeU_Xlumh9UN{T+gt`k61N>C7(7wf9$)&fc|R0u;Ynue zp{9!1(fsBiYhsE;S3WEL(3Z2Zvbtiw8%7}UHJ`gw;n>k3w@h9Wd!A4I8@qAgvYff( zuoz(NORAy{bN05SeUbhG1GC%nRqW^|n;!)g$9)D=beF2`u^adNs&79CUb*7zFVg9+ zr4c*%biy87;uDIbm*PHC>8=7>7LqFhDz(uwBWP+V&Lc{eqZbv=Rw9<*XMr>Nr|;R` z_nJ^~V=i&L!um7|KbNe)vwnECfEcC1#vw@n$Qt9Ze2uu_p&m_O;wynrJeK4W33hBp z4w??x?oyK@u~d`2F!o1fPsEBbU=RTZM0ui#@ne!-{qJKZq79~Oq#?e8DuClep&N8J zq7=jR>Fm!V9d{#lVmM?;Ke9ScEt;f?LBn>AL>=ZdG!O9dwYL9o=T{Q`d%@n^w~NI_ zYD3EFIFbX=W>+Z4!z~9_tW6Hi9b2gn9cl$B2OwV&4~a7p&5NCsHZIHZ_ie( zZb4E^pW?9y6NGG{^x#z&)ZnoZ^Ns$v z$yFgnde9_nT|8r_g*0w!Tp5tWg}T6SUlq~y-_3o z9JjLqbmkiU0YfvD<%VMP|E!mVcOt)3MOn;&^QeIxW!yo%He=Dkmg46KIe&`XbtXR~ zBK66dP8lfy$76RAOF+~ub`)P74SLI!c<5oe8+9=m#T1F^&5&hjR6I2RK|9%#Q*Pj7 z!h=V5Cz-riqQ__u8#0mnM(eQ?7TBSy72H!lxm5JQWO1I1{hsgS`|dGZG(15m4<%*s zFjS1aV8phqzhs`uEN(f8d-CXSTyrWFq#-1MiPzB)I&mnPxXT#FenK-re4XOWg-9gv zm$ShoF#S%Vx>|~*MyxFLki`@H&Q=laKjl&Uxcr7h`pWq}+VI=GG{)pSNF4a{7XNn% z(nJ;HD5MHY5Rt^g#gZx`-3+-86yHTwntGU@sC&P+Pd{$94p?DJP3AFlL0m$BV)oJw2m6^}*TJ9xY%kct^8w_VAmx|wdo^P1&blmaIXjyO5LnNY}{iYEm2V-yc zs6fbfG#K0ED9Mv5s}hc2Ex3i^7J26-&ZCe2i{K;dqQv$R`rL2wFk%;WRYQqudD`~8 zllT%jv2pfybMnd!%dtcMftTS2%6{8Nof- zEpEG~y49le3b1U|BE8SZv=?94NP6Jk^6@){U=Q%^lc`Bh3fGEQtn zZB&fju~)N^AXD=V|6I-2nVPemmS5AFypV_uQkQwU;?-QO7;2vN&(%D`)SS~eMH4%x zuU0%bn3?#RS8L-xSL+QFa~@^ORxy_G;tJWAz(129seEC~>;+MTbMF3R`64!`rFNIz zpS*T4A+x_A?A01AX2fZE+ZWh;U_*xf6>*$%b&HvBbDu1UBFBENT?;HLQnt3SCWvw= zFrowXXrxdr%d|e8%o?%ALRB)nWtlh^qqp(dpyzQeExB%KQ3*~0xpm})7i(!zW}vZN z1`LB`tDTlx86gpKOyK%lWuIwz1RYldZ5&YKbeq^645fk{YYb6v4<=50fC(0v{Dvhl zjEmjxsiXH?N+o`nSK-d<4KSUtH}Nr!xd>~lHB#Ek`x&t~rCsh?JtplCH)44QI0CJL zSdRfrgXM3XKUwx;x@))+np#Un*Dxa<*CFM(o(6gtJI;0E2wsOC5u_WIbzKXKijMWXRXQgPI1|SHqVrs(v-n@%<;2+VTOIZcAIhSNqm9DrWED{jG;~H( z54kNT7<>%qz$esiTj&*22?H5=OW^ohalHUVH1R+z35V?Q!9d-OCiy;+#XwnpSiB{7 zG9(7#u?LmpT1X4J;i5=`nGAt1hkC080iU0Y&h;@*=2!~*9RN+49U=K+@byg5&$48J&SXgi>sXpBZ0I8kosCsSJirYm6k(Ba_EUtLRDO8NA|W}t`k#Ru82>xo zsjX$1vWpy4l2PQq&<=wt2tq35yK^fuq-oIN&!vlzgnzD%I2iEe$dOZhHcsIAhzr^n|9C>!hXVF+B;s?B*VEYSg)ah`e?5Sop^wvW5tKn*0ftm9Y2cbToR zN>_DrJfh<9@L;yKQ^Vb-BD{f-9u}m2c6!In*l)Stbr0}-AynFl4ulikooY63;rfpi zH)HC?dFm~%(nR%*S?&uRZ=LIV;m=tR*bVQOz2HpVor;)JAx3G>5q8+q$l;CP=FjM0 zSI^|wJ;Xb9Xv)h|2m9sDV4{&2%qeax?G>xAhU-B~&;A}6lfmYZClRqU<(lvw-EbCE zn1Q@s5g%6!JYN?{JYJkN7V^=X_q{x92c>dA#Ifss<8M4IeunEjMwzVNWH(}E=uiGL zriWZV-i|u50lvY!>pEj0L8jCmL$wC==GTn9DdJwPEJC z(W|_)mq4Ao$26eV3TKw?sXY*KcuX&uStYNJbfxuu=wEsuunpIF#5&TD?C3o=@~yYN zIeq%{NXPr1DqX#zoc^#IN0X`Z7}oSQ?)A$k&Cdqji5YdNw^1gBcNmcvo`Z-?$6io4 zu&6j>2RujTP~&+|w*s9VKBs!EGquzC8qyJX3gr?){36H9fu>Rapx}0=O zbY^sV_?F@8pAC;f;=NBIT6cckIbPLW{j#he~Jz|KAqrkV|V25 zf!u4~{b-Q8`KD7qE>)yAD=TD3p1ZWsXTUxthThIkvdw?|gaJsiDK}p2(TUWvyj!(^ z+IlUD9;w%voa8&$pwa$s@}?-7l;|tEFG?bp}I&yOv4Y_EX9E>j!e-BA-d62OO=RRc`Z!8bS7np?hrXj)DQ>xV8 z_?6&_Z`ujE&Q8$XnxMQK^uyBct-SJ0FVLX6Ys9hpllM>VuiI(W1&i=gqcVqp^+d>N zubC%2?b><5W3QQ~d8=y3IN)s1*Phokr*$IuVCIGqso_NEb6mlvxG~T3^|Ggbv?=5m(xdVI{cXpPt!MHiiS>I*n(WJ zjA_v~dTq$vBS>xQu}~qGeKRUuT+^e}R$W|!a<38aZw)eLRZoecnkdUivY;9QBY)xm%JE$0UDfMcc=)DE!wVlT*2<${5RC2fIWf&AcbQTA zOwC9`h0}t5)QMpH4uKMPORX;ozux3edOe&AkKFXso;Ar9l(2*!1MnfX*Sx_imu68F z=K?JXV84SOz&_GopL(Hh4R}-g;=Lp!E`^}IS?Qw95}5GH>Bi6Gcy48GBYe?D!qRKj z64?9GiiWemkD^K@ZAGr?UDE-5Jy8)`gKtOPl$LHl!!9xIbY?plcnzWp3y9Vwx3k+Q zR}y?og_QXH9gw{0;_H3+B!o1P~1Ie za;ysbo(U($@zUdfvqZ-(UBL@c%E8K@+0D3+uV}zuNs4z&mF|lbiSfLHJeoY?6=tv@ zrfT93sf7yO?8DnG&!odp|ne9zlKA)U<4JCxjQ6gAORfwl6BUk=f1xE z+FpB@&*VcdGyi~y1}6E(?s%+3m}8E{F*6!Y6c3U$ghF|;c$%5v-0C4hPLLNpFnC&3 zB|r%(I?-4>3+_qPuvD-g*SPY7 zCfQ1*FM|sWrYkwPmGLjN^#(?4JxyKMpPX_lBb@P zrH0OKY;4f+dTcwj?xNc;c>haJyJ8RUH)~Doy3g{%KbHB;^JoE@pj9;FQ-@%YPXh+? zRtYKwP|N=NSDG*iIOFLggBfwLI-9s%4RReD_vU8k$B5=wC4o*f5myh8Kd3v5pu5+3 zvK`WBR4G(QQW_={V6PpzH&6BUrLCoxT0$kgKoX;`v8*p&RqOEmtu>BUCp6Q#UIZ&OVbveN_O zG=t=^?eTfqExFl`xGzRg7NuMD`ZEi5Z}E1PDlM-0CR+-Nkh_H5JAu!7lA87`XWA+k zNewep*2$iWbE{I+p?DxvimWF08)mG{`AeKLfk$q_rlI>8T2vL3%JDftbdLLU3v(|r zd8gqtnd+8R1?OUKqGdK+0Bf~($ai)28MAr zrWaz#n%|r9mTQUIYR1hE`a0~&Ry1s=OpM1$c+V}XB=kuvX=8@robQZ!g0ke9FZr_8 zELcUu`nM)FhOX#e+{hZ4l5-ka2BxcJFMYK)<`qV&6is|H5CxIzB?F{?T3j~CWDCqL za?(n-$KL-YH(e%bbfnTKKgGSlE?G;H6ah-KM1qod%-pI9M%pK6Ic8p0T+iPdif1_m zzfcoS!Ef)^OaRJS--`3YSx)OCn!|ak1P=o+Ej^)Trd!_!z%rx(+?U3e2-V_74txGm z%^kWjWgDD?UNgj(iWg9?R82P-qlrH$e-u(TmtSca8MclAsM}F(X1~_-Y95kH*y`+L zfu`WCrZtjSx{M#tS0YTZfn(m-%WWkQZG7o|lL3_gvor>AB-0y{d}FG%in~rl1YBFBoXpOd%F`V6y%)ouRc>3Z zp-oE!A8evSXPfX<>ylqbXCKVp&d!U%XCU|cCZTr0<2K_tUpL{JT>Cq1OR5vj#L5ME z;jl6FM~?2v-TxueFp|cC^p$>t^o#jP27BK>(I)#Z^Y-o_RXX40hEp**(DnS~+J?W& ziszEd$6bd1=Hve2`)teuc0FLLI;cP4v!V#*OCFK#B$eO2#)M2BYc zP`Q)0V0_NXTRcq>v3u~>8lPy%LQLS|NUsw@8o>t z7!K}n8ZyXfk$<}&H=PXJ&ctg>G+i`0*kfXyxiDwVp*GYr12Y(e(Z=Szf1qB2sbMg~ z-r}RGkdIyb=XG9)D z0AsD>Bo%8y*}V!@lpaN=#J9nSAAZ}uI=X`&=qUQ9u_JlT;_r!N2YdnTB4SQ+T9$z#2HwBht4LI``r+MKx-xH@h4veT zN$&PY>842Ry%J~sHH3lo!v@;t7n(W*?s@uC?&k>xb2nSSJ}W=*BNX!kGnlMEJ9N_T<)|VSh5qKdT;8ml{IoTqZ$FAL!4qzF(7Kg-{c=KXYt7jV@ zw8_&Oh);^y5#oHe*G}mLU=m{kap*%ZC}}isRHtk)YM7 z2nbr8ih#)vLcm=gjexigCmH+pg)z?jZxaSn-Zhx=BQZy2UpQO9QI*~p_-1tc zEf+}47OKojZw=c8OfwimpnfEn0y1n=OidAgs)`M=7zFvi-GjV#p9Wuwnc0#Ie7QCN z&|rMJb|)Z?<=Mcs`2=1|2k@*|yCWSCCcWteKF#+V=>%cY-_ikL(ynwsnDlx&AWSmN zWb8mrD<+&zWb8sioR$r;Ok#GSLw4S+7(7sKkSP%Bls|W~4cRFZet=CIGv|)5j$*Tf zPt2P|HiKd{tbL%0iR(kLNHO3KSb$=n78ci5ss7?Ng@mU<4YQA-y;!@Gyaw5bqXmOD zyO=r^xvq`3$hEJX5_^!?9jC;CVsD-j35vaON+c+T?Y91=oaWcnTwU8Pr}iZ;VY_*Y z(!5Ox)onW7x;oozZEjlrTNLJN{q5OQx$f!XjBLWstR6rBiYC zmvH6%`rxr6`Oe}W6XoIU7~p59)8a>s#O`kg!P_wd@HS(Adl_YkzWwcDXZ~LagSGD% zto<`8o75o~E76~Nv%m3CV{o>L9qxU_LxlKS?(K22g|f3ove9Xe6D%^OKz*^rVd+f- zYD)N1H5&9a1_|NzPT~L!vKtgPykL4SH1GW;js~B{WZ?7n&IZ<2gSEh1O&2}+ULgV2 z-Ub2$B$_lS!gN$HY(SXalMV>e4|{>n^L;3tAWX;Wlr17m?`uYw-q(yU-89pW=`T91 zm0)`RzL{UP*=c!$lcn7^589>bvis(2gX%@G&eH|9;yCS0YnKF^(NkiX>{{e#C*|EsEc;x4tkZm4bvL#_ z1bEnH5)QEde7>uM8$<*!31br8GN$92_bTB!5rGdT8xVmHCL3EmjBGsr(PYE!=Oefe z|G&AP@Ax}(V~f&QcS}W{S7>xP1a9{60aJ{cNeJYR9l?F#M1meYDJP}?ei;d)r6)bm z6YTtc2)|6WK6(;?UnUGa*=J9OTrvQ8r##Arh#!=7 zywYp()5Jt5V2Dkm(2|ow#&AiwNY3n$Dy))Y2+dOQ8DbOO5+A)w4cCk8)QIeCSDaxd zs+2i0j^H}WZ=Xzx(get8Jn6mh#PRgvM;E6F5H#d{0JsYZfjz&#k7%;?SUONd;JtKU zB!Q#pz}W<_gkj5wUa^hZ04#kiyRHr76F8m@1w^?P`<%A`HC&PV-&s(*qM9naOuytCm3xk-Bz^)wKhcz zR1joJpDPuFOr{T(3KlEKp@RM?2->EPmI{tkkUw53lsL`ADwSesE>^*Sf_6JnFke9$ z_sZreXs1l6Ktp=Y2%1DYXG%P#M8@eA<%_*cGCs`5b~>%^BAiIg!R|Tlxrd%IKN|1A z`7vXp!OStzq8DU%ne$`D$WXjgGsgb;F=Hf)mukjH1zyk$gDLcaW{fm$gC?;g9kOHW zpB}yjj1fylCsKD}BS~^0#(BENY1Ut(88|*Og8uQD5%iDGjDU`MoiZcnAD&H_K^Ub*cP zz>ue4pC|;dQqYcvRN44WLp#Aj6QoW?OVCthr-IN(lSsF{sbFB~9vis2Q9UlE$7y_{ zzk@%zzorY4ao9F(fBPD>{q5_K$=sJ{yW8I*2A%Ga?CC5?{bV;#?mokH#4WOyWxmFz z(qF$o1Ixz!UN(SCY6Yjo;EHXQti-vXhpepUC%NQRZY&1=JL$giHxx3)Ych>)Y-5n@v*gpgP{@53o43093CL@2$6I=ljAZq1{(gAU zEt^`4x)@Xld|7}7FDRM(_3^71~6&I&GA zvMScJGkGVt6O5Lwtt?#|^>tVJx+}_7@g$#KaI)sry0f%Bl()rck=Pq%S>{@!rCY4I z)`y5gmuw_v`X@4sC%FL2`iq}G=*f(2kCr|gEyW3BNmBPA{34Yq;SpKMrl=1gZpnH~ z=caE-D%Pw-T6ZFoKdmf%rqZ`5-=F%?AJk+RiIKMuJ)GCGfYc5E59Ok-lPK8D-5 z(stf%-)8JIwCrK9umvx2N6_s5*=325cN4))P3Zn4qxY}v;NsUT| znlg;z009P90|r+E23NUInac{0z_| zGkd9WM4Tr(7uv7*i1)b&mTn1dM<=3z!YbG1u6t7^bPE>jpmp@JjIoqH`|>h7wx_+H ze$g#w`JqTdSI2QQ^V`pD-7|&flINB7BxYr&%EAAEzpdD&I9w@%gemq?Kp#9*LDIX{j-Q#1p zSeM#pOiTd=7xlcs_7Wc~WtI}dkGuGQD6R%Ha+fKR#5R7ND|2tRc?xb_!O|KNnmK>; zp|kpv5cOfOgPY0-tQn3wo&DVPn9|H(@ zS`~qz6Vz9FrE~m>DM7748sl$8YhfaYje@=T^g-Xr)?>oOJqgj-h=#jY(tew_7GN{`l#Dm=^myD z*qJ#{^b^43a}}Jcyb=hMR_H_}5oP|bv*`}2cZWm#ZzKBb&u z2ggD$LWyslz`cO8csFKvG=sh*{R*_q*Q!-CtZFkxz5=1xfUSg}wE%O=4u;Ovc*#5N zQOX%itLvfR91|j8vmGY(UU|=a46f`iG=zy{%yn5a?~?n;V*W{{-qZX)H{D`}sG4mF zCa4qpifKdmjT6&WT|YxB!=6Tkb?5}Xn*EDCh9T$-_b--B*RwsFuDoiD(LGB!fVeEo z0xbC>6A_6qo4#QDPogW>-l}KU$D=TjY&}b+v-bg}0RyIip(kF;hT-kOc$CQ85kg7? zsw-T{jdab8_R}}+hj>6mghqSW`Cy@q?Zr4Vz#MKOE1gkJ!2*R4_JqaoN9vGy9J=IRB9hpw zu2Q{!i2#cK>-s1#Byhgj3?L1^*kQ7bT5L2$4M#+*ORNk&Qk(u5J9W8!)d&@)u8l;F z`iT(NX<2QF_t5t#!&-B_A>C@p+3Kv($lBZ=+eYd(sY7?@bux)t6u7sAfH@cZh-ov) zvz4r*g(eB5$iZqsCFi7*7MUd6G3_-9tbqyLuiDYxF_#ptg9Z1t+5CaUBS+HH5_rGB zc~{xK1nwy!PL!Cw!U)M~qwl-v11A@{%M`+y0rkS3*KyHf?Bc-je&;z>UGxk$XnK?gFJ{)|tL|Hq`hQ@zT$5TN{ehjS@@Oxk^viIgRqUV{}# zI`YwZGo*Nwv5fcghxtHd9e%ShevdARC~0*Gp%H6@(Fq#Iw?ot*qt z<|TG)h|?-V>#3xaCgOLP_bz&!BE@|@Q8I62lGk2(8>R_70Ngoh{d!-mBOe6CC#BjLO}KE#ofyS-SF zhGXz6WZ$FU=3ML1r{Bs*{7VPS{{fC-J~RI>r04(FLQOG*cp;MXVFvr$Bnex1)g{&- z@l`)Yt5cW{-pF3}+5r2`)Q`E}(Zg96?m`&da7hy)WgD7y!J(o_nYhdsJhTe3_CK@| zbl(e>ZVD&9is1FV?8XZ!64fKjmKVB1$K2+^JG9U`W!JDC!~N_9?0%mLvi(_?tr|}p zz9()rbe6p)n{6XiG~CN;lfK6g1V5IvCwEB&DNMo6)N z{rM=p4!Rq0+h_dLV}5&sl;O`~Yn+sxJImkIF=OViEqPkWc9S-3TWUWg$8MB4uB=oJ-!d8=Mh@FUBk6BRC8){n z<{AtOa$el@D=^`?7tJsNKl$KoU4pCu+q&E*sb6+$PnAORsqS;dRA-#hOgms0xOc%0 za?Sj;RQ<^?;!7q&uesX3dY9qirs4eN4Wn#YBS1UP)FIvLnw{qQxZu~8;|ZMiG@UdV z>vlSI=)x8J+Oj|Bg1=1t#+i~~1l|4CjQuUK_A+Yh)ZlRZ^j~(6&EprOpKCZ*pK#8U zcF0C&+M6I9YO=dVFvjb4*5w-z1Ye;TSctT{d~y;QL4x zhE}D4jCtCnf&V*IL1IDWQTN%&n8s*puxGuK395S?_`6TzWL5dD+X)znb>X+*K8=#_ z(2bkTb}pe?ojt<>7zdk=UP@uL4zMFFhT=P6SuHa2eY^_c0>}!c@O8U5|OHhuA+gJ(}nDY$woD z7&U*6Jx1rguHoyd1`v9cZ>@uV&C%jP{$9decF`^A4MH}#)!8mgNWOCH%s6D#dt!^13AA4gW3DIRaDf%UJjRW-V z9+E`8jL$=qrVt*~)%kw(g-pK}@v7;Dppe$M=w^B}aK zAoehM#eqc3vr}datrwgYiu2+r`MU5{4ks>ZR)=$Y4{iD{TK*c8{ls|m7Fk&{N>)Tea7N+>NG?9 z=F*ug^Iq*fN|=vZn3Ck!dmxW1sWACjePvNY@|>n$B0>Eki%2WbYSb zLH_gjw$$DZE#kH603MZj4){0^0uMrATz_^1xw=Ua9!7ZB%8dH@&NLZuC%>0nNE5n$ zt{0h}RpGA3-hmMX>NY`E4HtfzUN|kM@z-6O_#rp7k6VAQcr#kw!AWeKAjpt`=&ce> zV4wNLNJB?uV%)OC6#7{^^ka}Y9nGRpD_B)Hi5o8+8W1!AFJ{M|RiRtl z+860F9uaptUAw39`8R!zAheO~um=6Dnw?Qh(65Dut_!+H%Z@Z&QPHrCRj9t(umFYk zGN`)+5y8Y&T9%z38M;N=D z5;#c1G(~0gsv_}q?z!I_dnm+(eNE87U&Kw@VyG^TXd$}Qtea`^w=IOV{&BoJd=k_r z?cGr6M%oNImv0W2ZqgajnSUCcBhFcz#YfOZ72s9o5vxQm2l238;d`e7f9jJHBk!v4 zz0$_fEig{f-N5LTn2eV$MPPi)DSTTWU#Rpw;}jmoV+y|AdYm)=ALiZ#yvpjz|IY~r zMH_feG+e4!(;E6D7RFGuLo97`@I+7WM5DzTD7AE=3~jAsBq(+;29pE49$tu3P}^$D zbZqN?ieuX16s?z&fJs2K;UXel8W3$FULxMYMfiWdd%x%81VQZYncwdjo`;6zB=9ey$W}s3vL8KcRNp4EhYc1w? zt8-4Lv*!N17 zbI$e~??qCxXC*StJs*VEd|8xx!#6&qy>93U6x`kPDCRE%>QI_>g#F7b=CSdQ!7tn6 zf9*DV=?7{xVj^lqe#3#cV+nlftS*T1rR(LTjE#Jr1jf=OT8-3;7cidTsx!|RexsuL zuv}V9tnkL(iK7q{E8XpDO>>-pe~biANr2-rZ~kMfrFz3>T5tDnOJO%`0(a>5`YJ!x z({pLWi+CuJ_s3JP{|c-;V@$*W*mf}ST8GsT0zM~L`;V}?-9`)4XoxlYuq6Z z1XX%KCvYw|^+8MJT~(^$D!kwlc{v$sDZgk)nmm?zpXztGBb|=Uq(_naD|Cn2{L)AK8m)I1fmmYr-*&O$C-C~h+Ze>) zd(PbgrNyi_<=k5JFq(c?PFce4mUpASi+YcmJ;y}x9d3AqLs$pj)XXN0Mf#Asow8jnY0d%~E(1^WsBgPTT`zqu%ppJ-hU{CCwO6 zQgKE}3hNgCQe17=I?X$7NsR^d^zJbWs~J#OX+~iR^F)cW^yiHAfyJOx(dtXqkB^H+ zW7Kzy@>W}7%z*SqM`cEl3ODQ@<}58dT9J1jyU3MFf;~yn`>zfhjjJs^nMKaXC{p2u z{oHGjmyM6r^8RBN+5AaG8hSE|tjQ=+;fDREaFyn0MXot^k;zXg($JGxWPL`F3ODS} zbC&)E6d$W)$FYml#(&I)P1<}cE`DD&WfZA!!~PL`z9hiMHaY@@hRY$Jn3NxK0&EP9Nt-Onq*!KI~l>C~2MlkM?a) zm@AnISwI0qh6E!eJLZpqgEUAck@%vp*u){ytZL^g|5EnciR#Lv%9lF@e%X)cH3F~# z+DX6t-L>I0;|&SJKWa7X)7RI+K3)DtoE*J4X5a?>O$2NBraz1J{7d}ARwsD)J#k1C;a-2_!xeSm>DjH^T<4L5myq|>R**3&BMCOU56>yGqgK-BjHHPq z4RIQu@RRa0lDJRThyRKD{3N7S>9QguaTnb6lL|AEq9lE$_6C(RHX}MlbWZKJ6%E6X zMpQ}k(AtQi&&!COLiDiOaf+Uh5nV;JQ#*nfT^t#gMB+I;eZLr09FBl)eDfggL{VWz zzcgs>2?%CtzP+~lowMj_Yi?Ny7x^pHFvv$E?%HU=@t-S;k@w_NKRO(L!C9(@L(G$< zCpZh|nwFl;WM()T>GF9k*;(#(US)X&Px~{SYrFJ7i!>GXQJ3$pbH2SEX_zD=QsoVE zaxY?1!gn2@we+HCpW9lp)@giJpU)R7q)x zmRHAScW{~ubT;gy%b<<40|CpiY??P7s-y3x~Lyj<$)b{-k9zmFCTyJW|CfKymv(vWt z5n71H=PW}(svn15_XPb&L(-40r}~j+R@bW^d89}ExY_jMCTiy7p31XPY;Ww?w?lDQ$oDjsGm0aN0#f=2E=f^9luBGJOBzI)mBz^Sz6LSSi&G z$LL67v5ox_;Ck??8i8W(91hCZV8CB`oX!_95Ux1t8l5n1g#nc}yY$~QpSW~lj zbN;JXFPZ*qr9XX;RC;N!q_gfczrzRiHn~eFRV^s@Z7S(JN>VeK)+|*OKh}yzZ^3Vt z(u9?!33bmQ-Gr@9<6rxmuv{IMed8=O*!st^v&y_^NQLmd*)(e`AGvoT)sDw)LxjMZ z4ASA-$)G1e5Y|Tmt<0s`Ss86Ojp9;mSb9VomX?;Z+;T)C8klq=Mg}xuWQtOg=~P4% zW>Mk^jeDr9S(wbs$TIC%>DPx@`n@f7UStlwZ_c3UYI@c)9n$OFfcbQ+e9Wf{i+e6b z)?hku(O1D>%-|3>{E9F}AB4V6x((f=3D^2L?Tkmr6Yl1O#O^o~jR&J(@Yj*2Q@Pu$ zSbSB%5Kf2D#8;!p&K3iicvvci3ioN&S-psvMKapKaecD-(OV6%>YvJbQVwcM84SFR zQ&&sgCA1A@$hUI)hIhaGM2))5e@3_2vU?Cm_W^?2ehDnASg7$f+02?or>vRo#IQ_! z%1hSH-Py2q6kCQMC=T&V_ETWuAenqos>2cpU3% z==SA)l=G+cCv|WLUujTS@caBUqMQ9_f=PnLq6K!tl(N_dOO-Ou|IR4oZa*qjirs>3 zDfjznpkCcy$~sdDtcJgl-@fFCQs#fWlzWaSMW>4tQLFk((Fs7&6e!NT;qai^@2Dx7 zjwqr2<0Y&-qJ&i$B{cV!@MwPt8wp0d(ND;!{t}Rd7b+4Po!Uf5|^2IzF&TfOBZaJ@X{!>gk?A?F*>6Qgc zr{|e;JTBetr^Ab7)^CJK&#Ap$w3QA_8)edl)?T4B*uKnsr(MbYPl%po{mz zk|{JfHZYCV3MYJ~B`VV?f}5f*2Fdb*d_ej;0Di)Dunb}ZSe4FZpbJbo9sE;2efq%k zFPd~Z_+~$S#=vyl3N#%&)la`>V7mI%@aiRgI-6Z)L+DIs81~Ql>DLWRm-{lqweRyg zpk`otu}Oz@f8I~89hm-QlTHUe?5EEgn2u%*{B-b7{q*?*)4yWUb82s)?QX9(Fqz~} zFv&w}uU2y7$C58F$-`>Dq2$FMOP*+wo!WfLyv?rAH4hwJ_c6oZ#P zWM=uvhDN(iX_a8jt(`==-26eEO^|tU!{Kaslf^q@MuLPn4TpnswNy;X0Xj*E+Nim) z6|SFmM)us?3g_|4&m&3S`j_mii<~D$^GNdJayO0Hq{pJdat1~JkU?Qa(AuAln;y@a z8Foic(xwzGX`lN>VxdezdBD2iajCSqR`VOmj4o*1&5!O85v3^A zP9Jz)Pdyqm1;3(vXxmXrR3AzIqf{SRG@ed6#kgk{L?Oli(tp)N(Eag(6nYU}7v@Ud z`EeD+AzQn6^h>ZS=JxG^b=v<2h}ILoDAjuVg0n1!y!+!cUnhOV{{xzPE~faz0xkY2 zh9R|guo*0S7X#OxufW!*XIUTYVA6un^9XED_p`%ccGN!uZl7s0qcP@D2aT~Af8@-R zxTheCoy91gNRDy;SJo6Ull-fqoKVoDh?*`sW0Dsre6{{;Re zXQ4kPH@SHWG)j0IWRjzr~qGQBd;KC@NkObAYEoAng$FLZSG|Vtu*ZVCt1e1 zxhCVhbCh%QW$^hI7x(;uVQ$XNYsAJMU?a~^I%U|86_%B>M8%swhYY05xvWFB5tEqo z^$akc^uB}p;AQTU7~~f{&EgbG6tvE4GXCmO6}kHw_5{L*x9UQUqygtM%-Rsz?V0-$ zry6rdG(0{0owY}tAEGc@(rm3{9dUB;U(c`6Y$a^~ZqEjm7j)UcJq5isaGyCo0L%jx zU?H%&Am0XfFM|N9@-vVe^&dB3MB7Ueg?pn3R=m{(TD-=85am9wc88vCwjlqZanY6Ns;^J~Xj7=y3zi zG0xJT0ZwBk4Q0b4Z8RpA|EqZel^DHvYId8h6XiibQBuY#b2M>YtCVqg4~V#X%H1b3 zCiu*z$DlKF_H&(>o7$_m!WS;;KD&TmZ{N(b3K>=&W+qdjMpG_vQ;Tb3GY~V>PCzuJAi8{rd?1jQuQClHh?Oab zUQz56zNEz5tV*K$P&lJ89$=f(lY$2|B@-x z)Mx1^yDcJy-@*SgE;0$o>$Q}VdXG_B>l*FSeP@c=w|T_f4vq027~2rm)oI(P-?&rB zIy36jJ;%rJw;ssG{%)eIEQH4H$^@nqpu(crR;ud#hf~()SoOA;=G=Tex3@Lb_pzd9 z8MWeb7$Y%8jm8F6EJ&4G-pJ-!zLC&{ix|A@-n>Ln;f)?5#}xIzq06q17Cp)BkgkKs zLMJLP2*yQRRg(k`X!d1+V&2Q=t^Jf(Cfs-xzRdp*G1^D75emwF_IVkK@*n5q)7KI?8qI7jDeOnVdeVDI zOY;8%(qATtbdpB5Xm_HIp5i~*s!+yMb>YK%?wzu$$Zt55?JT`}xMpkULX^g*yu|;F zJn9l!T@a%0Ft$A1Ii(lW5og*V;-?-!FS8b#+vy()iZ}OwA~YR;WueIZI2&WxP)>_O zRuI@}oBS+C0tV4xA;JK9YD)$pnKc+h28A*b@a-pz>FO6P0F)II62X|RCr^*y))4$< zJTxP;N79#{LTl*5e;V{DKd@lRGHc%{9Vr3@4W@m
    bjDNF{3%?W{uwzjcx^`b#r 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 z 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

    ;4V?dFmpX*SmO3SZQ|l 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%0Dx*$<@l{kf`& zjr=)wID5#7UC}s_6&2?M^*v}p_QSqM(beBy4{rVv zpf>*l(DA3Zp5RKZ$?`2xz8Bv>q$cJ&SL+vk%H_daCErQP_et{g=T6s`+)3@+2e@>) zW^&C}Rf2ZUAz$%tYqvbOH#3x6*Tj~;MC@ffnw1yvts1AZiCQWW_}dg| ztyzLR5sJy3w}LuW1K2M?odEBw6#p>MdSPyshCRybtGL=Mtk-DUB{%WDo~vDDuZwue zA68GFnhJ|ZtA8)I50K*lt`2?3+oaPYBo`j%_Au!Wals3!;}@}xBzrhOpZH5kh3oik z^?jZE|IRg`s_&EZZB^BIOcH4G^@0?um?kijM&r6GQ%2cJ6@fjhR55%QH|Yt*!6mBx z!qN0(7E^L3#uhGE4H{m_rPa*IHOl*c|Na+3AZbS6E*fx){Sl2TN{2T>Jo}I`iwCzN zm+#%!3+jDtMF~9bk!x&R+UN>Ue`~IBprFM1W0R|sO{Ij#LQPe#O$OQyN0Jx2)j;Fo zM%9m@Wv^L#XxhnzXu64WBg%!A^$qpG*FNW377Zk!qI}Osj_ScFu)fktYfUw3x6S7c zD#dK=0}Nmu^>)-`gS7^eWqnyod-ts<4fSaxowNl|@&PDtN|LN7X+ZkO`K2ptygkR} zG;|cbn!+9wyl~VHHE7K&C9cre7(uIovw9MM77_-!Z%VAG+0En@*yn_U?@Gcu5@Zak$?E$(i8@alP0KlZ3Wfj%+^ zUIENNPZ%rH2Xzc#=|FwsK;4QGD1<~*>)w=asbF-U0mypa+U@~{{c2K{^$9fl*Md6$ z`+z}O35Xp?goE~^qkehs6$YLIYfIFA9Hfaz5(CXEGGxzdOiqS0=9fXD`T|e}tp5ka zIt{-A^=h(zz-eR$w0oDp(Dd4*QIvIPmvvJG4hu-;Lj^nw zyK<_MePeoHeL^W|1O+iiMEfFWVN&Aa*a%0g?qxKzL@lYErG|;dMp!5SUWv;{Y*{)X zaXBjib4Svx7HH47PFatt24evG(cmNZg27xh{fp0zsm{80-;D{}rz&1pPKOL8q6z;r zB&^ zDDgxiI-^u!AeUsaEMJjbE|VE`wUWt~Wm-Bl-PczrdZ2wpDTt*)B@yI^$cwRK#;c;} zK+jhh6dNkpRY#Ohjg#rFDG*QdRETfMBv7kZuWceA0>0XV(C#RIMF3}g3A|O3{EFhG zvr5!-Wpe*Hz!!#67X)&EhF_3-QEAbDSDIjv23c4?H9!lMVT;v@Q;oHO#7RWnSSx{= z#G}G@vxq;JRB)ZIfSU|K2)SCc2P&Y;rU21$0d8p!h%s3Ly1q)G6w0(x%qXlO(@z68 zCsK78YRk!A&IJwF6nMM2(zSs-0_C(+A*8kP*@o684#A$RVw8>w_%dl#3eu`G5KmVP zK%?~T&SXkYR8VEP-fK-pO&##rS4%yaewnnBR9jimd@?a1t!TCtg|je*!VvzUS+j%C_wk&_|6qZS`n8z#a_H3TbwbY}KZSEMv+ zYM@h{s2EY1X%?t2!&W3eR3{dcY`%e_ip?l%0+VLy64M*O{F*gIzXqCAYIbecg6TNN z0O-t!ojbLB>aQR#7`p@ICW4v8z*YZljSy^5Zo6m3j6Xu6zkk3q*&dB3z&&evfpulf zkPSGBi@hskmhtpHL0;?|SbM*{AlCh{9;z&k18Vpj$f#2Xmf1Td3{Er(=G98k`DNIG z|ETy`T3sdrOU;Pj;M(MB32;ahBSuA{g9SAS0s4mqBkizifJR$jVSpy~lRieCkB~mX zXq`G2H5yc0Je>Ls5+^-UrQPjy$Uu)~IuQ^EL5RH!G-XRie6)8(vKS>RKEZ5Hkd?v6 z-LIPZ#l5)xnNcTp;HV~y7Kz#_y3dA^uVq~&D;}WC6+0*&WT{L(Gmx>Xs!>SQb(4W4 zAFs-~G8KjGSC$J=e*CX#F&ooBbCpZMNJX<1<8kshCz_8F2N>v2>IZ1Zlr#`F$hK&# z1-|+J1mq^xkby|JHI-v>OmF7Jh$LE7Q>_xMLf`*CLz{9i4bu&V(U(QChSHQN?i#`i z;IBkSYn8nZd{`ABo!D9gemS|uuqsw~t6?%;8w190A%S{qHxhA6d8p<3go2v*<^)qG z7y*&B%?7BIUu9L-QRTB()IjL9kbxd7Ix28=XHvDN+^qG5W)++vOll$`cDM$n6PY;^ zu~j^La!-3AK}U?CB58t4FJRL^g^$Z1P`9c)raf{LgQlh%gtW&|S+L!vrIW<+Gx&V(pS zW}?rLnL0P)Sxqoh+GXZCi`VW}^C3cH_l1UsJtmUco^?spgaHI4Lfb1aih>aXGlV{j zVTI`TDPvJws1SX0^Y*Qb$IPWTAdCu&R)@g-tg66$jdh_W52(202L^#WSSv0kI=`Wd z7C=HsG&i0PWlrb&Ry>A7LV&`GSzKd5Pl&wJMVzvBb>+~qU@mhX69?s?mkF4Y7RsKl zc%ZCMD^BlZg|JvW9Jqf7T!f%MM5Tt8Fk;QqM9N-T{vOe?jJ|4y%6L%)mPey7em^qE zhofwaU=>JdI-w38+qESbmvB;}Cql#YLy z!$T-9n>!SM(o8y3SHfgMS*T?SDwBL=zkgt#VB0oU6MmHgky&LSh%^y=%$Sy&Xqikp zt+hg}txO((N@#1(#79RaB1*LcHNo=_2<@s!{q8bu8F;PS>M0XAW%5b+ao--4%p-chg zDQzSGzPU&sXrgMO&~&!VdJa5g^8%SVs_7>>x{6F{+}j}3Dh_SAy4?cFbQ*TCFO29g z(lP-zaCbiBs90;E&HUnlhwAhx#9n)=ficjWnJ9f(LxGs#ni(1XqArf%`I(a`ZWhX6 z!gS^Ai3(&+Stvy^oI8;&`)jFiU;rCsw^~xmG~Dh%g6$!5dC!SiGRsf2UgP9S6zp9) zdAU!ZM`pPdAla{he?tELL7N{?4FQW{s?GyN8BsV5W~@CgiX-C)=ADh6=T{mtrBf}i zLXLwY#RC(G(nBT-s*14@B1b_alx3F7&~G(}B&%jaYEc@3AL(TDg(y&&?FthSQ_KWL zLnbh?dAiu`Ok9=Oxf%t{84#Ha&4O<@lT|XTh8JqFSzQs+7PSDxgslZ%X1&I4-E%STk+zkkgmAG?_ z7_XReeVKejmRABm;*Xh`*bTFS6M8i%;#DS(U@%1~Bk5qPY^?jLHZGKLwbE=LOiai5 zFmZTAWB}@lZrMGMfjgT}=v*tkl!_$cBy+QbJ`Y0?9$#KJ)HVhP5<$!t6?#O>z? z*?5p-@KDGGq2DrWxCwYZ8# z$_uIl{4v!PVDiefdeIc6)Y!4*^oqg54<$*nn2{^jXr=O0K35D~RZtUz_`lI8TZ2~) zK>R(TQJG8_2rM5oWL0QNG-aWw82g(@hSf9|RuM%l8cEFpu@cZVm@O-ytoa~ya|0BnO#x;u709kIWL=$uOSaIA%JbYa-hO z;^@wZ1H)q~QVtEMMr{QvQCZwm-Jfj0)r8m> z$f0TKl`v)AFUsbdT`_S8Etl~>Q6jWv_HH%3Os0m8V2G5u;$>8UYRNH#i{C=2?k69VijK?O5CGU}UIoih?aWl2${iq**MXmaV9wQAAgh?Qjm zN*}ZJ+Zd%PLQHiqnB$SvG$}G^saVx~cC~PrIDB75e1`EUWqme1E@58|$5(|aqSH|x zh4n1(T}}8XGqbIC8e8ksgi^JxWS~ARM*D?AcO+S*H$BRour+6;wNy!9c89gItkS6DCN?3|SUt<>`{(TZeTC8kQDi;8T=0 zI#jL42!2m_dcCE3pp^<*gR|I{fhVpaip9jITxt4fgdOohxWyg5Mw zhegaG$Z4O-Jj7HRL#a)h8Dy%3plj7Ya6Bs%Q-i!`6$ll~X7))2%xIF7Ss*S^FSBUP zltS6cDNe$2d3pg=-WiOxCzLe6?vc%lOK;?5U#J-axb1ijrwFGW1q7 zLlsi8Ees?*o5QYeRaW{0Y^77n*_s_Dp-;uor-m|aCJ5BH&fj!vuNrNhEMZ#$@>(Zi zORE~Hu$5V9HJtSvXo-ONtI$%*7*$StZ-#&h2bU2bqh*o-|G!uz#vP(sWm2sNrwWY( zEVb9NSjR-9Wpl7mn^#=vDqiZEikBwL#@0qt;f73-l@(sicA%&dYTT(Zs|YE7r7EnF za5X$4Ys8gxSY@Z)fbGWdlZiZy9*R+~I#geAz_a=FYKjZKV8c|9n#MWT0#wecngplj zj5lkd3=_k$<+1pRI!&!Zng0_(JkgD-fF;`&j7$(QMP(fa5(unTfme0|RbWx}dilTE%2DZjQm7T3wJ)vZq>1 zmL<3Cw$A8r>f*tQn^6hiS46q7Nv5kaVIG-jqHkv^LeYroWyckKpa6_arviPI><^Ss zh3kQ?V02YtHIvD?7^FeNM5@+|YS{{f9w#HVMto;TjfvHA+M+YjEt#OGvuvyZsiAj8 z_e8xDAW~&c)GYK11D`sO7StNQJs7vGtH~;lqmTtPBCVHg-i8|RMzghJ(BbxuZLHho$v&U+?`^WIt=T+w({ z;(Y2&Z_h^gm1sq#N{LftbW<@^C+vsGxT3#Yby@8S<5PJp&o`|~%m>Vu*CRyMdv>o? zY*t=HRTHMIF`23eu{aqcih7yN)>w;^rinPw!s;r!=vgD=k+Cwl6$DT1y6O-*Zm%ZP zvMlQebXqEZG(ISQuI!+k3MJin7v^F#Ce3~Me)l0UXI>z}c> zCCv3J`0^?)owM_PE*%n+Pv+)Zn}5So@@L)ZDUk2t=Jac#ZeQIF(M_lDxD~p+m|NZH zdb&ur4Z8UxSIp8pRD%{?LJ9w=h>wX^VIIsHNHN*&d(&NVbtf- z&Ay$-I(Nv{y1Z|4KWG}OOMJWg(b_?ZyxJGsetg~FFI&s!diUQ=iT5SnlqS2##%~@H zzI@xdgep(-yQ#`8zA=5XuY1@Us7u#asUMU}4N!L?M-Tgya`ow{r8?*5 zxCg$HOMJ1DVu}0OLz@60jk!10kMO?h^1*Z@O{k*T8h&Pj3a;$*b?H^U*+?88XSiRjO?>0Yhzdz7^IQg{oa&p9puAFVJvz)-2hpi z9`AS8@U~L*slNVk-)*h93kw~-kaqf+U*p5MJklfeZA7 zo?X_fKb2uJBB1c$&uf#yya+cpwvBS1%@z8o(WQ6O0uRY0e&#Y>mw?F@56Jfl&A9ZP zXS!CvVwoT71%ST9bNZMsT?>wv7>vDj4Dg>mCdltSL@m_2h?n&|mPY#fhxFmpEob_@ zC|z3W(`$T@@v5$3x>{)G|0;XWQ@Q8e0WD$Bk&pIw@vx-VZP=oh5qr_+)UDk`(F6$H zlJ213JH1;S`^%tJK|a0ivB$i7oN*sl=&%|~zSI6crtU$?5J3v1FE5oTozFh)BDvK! zEfc*rwU5AfI_6m1xKd0t6*sznCC3lBS~&B`xUhado)Y^xu%$|Sp>Fo8FQ@6reu^US z*~W0rnd@ZG5MKi*FT6jXKAmU(8{X>+$3Zxk(6Q6g!ol9H@ki0sb^(5MrwzAD*ho*e z`>Nu)ZdVQ&G zI-x4BbMW1IZpq+t!e2j@_dTv+U97QwPo9!N-4-hCNZpRp?G)Y4)Xm`k%MAWEbE>=O zt~U(P^={#19fK=*myt@_riiTjHigV7C=C zBKsr`X%V=E>+4F$IAp;PB)gg>6Tfe|U-&#s>t~EW=x%IWD1gU{ZfrEt?Ut-FU7;@} zW$8}%F@Pk|A&bJp!s+nfJ`M!F&h;ljLVCkt!RHbdT7}~wlfz;agVR-!-$LH^D!+>7 zzoO#b(QN}aHNI}Tl5QC*twy-?6F^qF^&fdk-lyBgl=d&WeNne3bo-uePwDnM-EumY zt)N?{ZhPuBsM|trIYa9`8F0Rq3(#>(M-4znf@8OA=v3swr#2x`+_ERrQ;qaT3jO*& zl&-edCx^n@jTCb;cYqhrRw{M+cBR7v=|$o3NZ;@z*#5N%anN|eYQJ#IHxBs$GUn4a zgj~bky_sBzWa8#X1$PMZW5d2vjJ(ohvO}RtHXo!$MtotZAJo&?zEA&#ec{sZ^fF4E zYSJOqhf!YNVz2uThZ0Nt{-vOg_Cq7$eu;~f zJhuC}OYBh+x*^n`PbGp%K7WpHSnu-(Zb9;&CMtIwWA3uT)^ryTL7HB3ZDf&q@<6Px zva^dk#vqAnlLU8b3#0cK$s@cp*1=)4?V}q}eKXz1lAXSFiJy6wZ&I_$zaDw)9@$7` zouw$^*OW?uOR24UGy>DLZndX9RB)@Gseb~t>l(LWsl7C9iE3t5XdwY>xA`77G`0(S z~&iTk6h3tGn(o0cdHkiyG4xmrA}RO?K>%b%A}5 zxCgDnK56rAhU*!paVq&BWOJzdr%f0k>fNxfe>tkL2m7cv==XDLhkVbBi%xGT-TEfTfG27GP}yn-yE9XqSjF(iMzk5b$@8;{wK%a-3^vgNIUjkkmw#g!Mi?&Yz)1ER+&lXH)P7Two8WmbGaSv6EstnTy7)R<}x-Hf}KjLg9 ziHOUHvx`)J+m5Mlwxu9z4be;kADGaH2-P|oQ(#{?Ob$i2b`v9!{eEV^Fs6+23?sib)Ix7@32o<{>fVaLq6{Wk+bI7FY z+L;zcK#2S2O-Wu(!dmpIgzu@-3g6cwB;UpLMM+GF?uH-nl-Gb?IePs3T(JOcFuZ_*-7%c#;!V_izcgyTuEq+hui$_MtwbE#*1$u#y zkTJtPlya9-k86~ETLSB!B8B$QrYB)W#6YK?!2_q=Vw5+n1VF8WW_Ygcmw7!RQIW~j zm*a$>wO9GJOGus9d8;`k?lRxLXdMYFJJ*bVi(FTR>zsEto;YAGChRbMQ?q^YbW4a3M z-g^sUDvb%1>qdeRp1S=CW7hs^U;jfthetdqIaTV5>?`Mb8MsE|URe)DY}D+&=QbAJ2ibf^q+`ayQ#>WV*6q1VzPQL4?p&ed ztvn^~*6rA6W=wCDy9VZfxsK+t()DNZl$@*EB}%(ew;Of4MYp%<7R-kmBWbrr+X}@m zKNb7!Kmg!2Kzgp2_@e=3v&h7JB8;?No;OA-`2*=0e0FI`R>MhI&ZT~U$30j2xu?Jn ztKsGPw9sY9ZW!}>t@d?8VB};}O~UsTQ0kdJnV0TmRbhZ&ajFB5#?jt%zbOAa87V7- zc@sztK&Sm1Cvhc+T3CF%kQc7hsWv556XQ(UzJS)^mTGP zD#u;Cg|^!Ux1?uU7p(({`=E)hs@^=FQ+GbR=~?=tioPIOlDdy<8n>Rw2$!UzXCnCB z++i9n9;-Vtj<(a!RZp`Xj~F};niihv2wgq|J~=qu1Aj(nP24*scJ>MD?0wJHS&;3% z6*_z0rY#jPVsPTc(WPYNVEV2IlGx50C${rbYv=aZ4rrK?sN5eyJ2yq37`lF>cBUYu z%dGJ{UWokZJQB9mT`^onVN?1NI^H&zUZBxy@V_>#SB0q?@EfriHa-icH2CXLj3DQk zjSRjapFCULqJp=Ex}VxuMFm?(>#^E}{@-OacS5Np zKX8hlJ7QE&U--nd$cK8}pK}P$1@wG&r?epWL{!Lc8xtK$9XKa{A;KIt=N={YTbB#Np~1aZp3P!`0%z$oF=E+RZY9 z_BCT&3|rM=fVhT{B|+C=nZPdfffDzVPTqo?3A9l_0nevMEB@tCL-_=&;idAMuo|X! z_I`$JObPe~DSRMLiQ>O>1f&0+*F|xONHh{oQhpnrde4gW^80MOO%ca*w^PXjTwmw1 zy6c`+wMi4Vc5eCEx>+l~%v#BWGLo&7PsuzQn>ljYW-g|do47ut+N6T~mv~CPq1$(r z_A}jnqg$|TULQu(XP|{mVoR4jXG^P^bGdW4Ue6U;x{s&iA>IB(X)e8;+7?^F zZ?LwoTswh#%k?5IYqfY5Psx~W*DLLfy1iAmdv)8U+atPtPB(uv1axAhJ4C@s zWB>iN zy@D%%>MEX+H|lne(%z?=f$A&q>~uMHZjEs^+}FDmmUEZLWsW^WA(GNKZ1xo$yA+#A z@m9ae_b&pAm(KIccs*v!FB|s943lzCK2K*~7dtyW@#1B1wiFQN3M6$FPsuvnHY@G* zy4|i<>+wAqG!F_SMW@^OlD^Eh|C&Coj)AJe!@g-T@AFn0eUJ4U%U-p25CyN94&imb zrJ>dic9U_vl*_u*d^JzW8+5x%Y4_^(fNmer?GfE}==N{AeUqE}uAZLK?N{6aH{{+B zCCR4>q3k5VO@q7J{Z&)}oWQKc-KF)HV zzXB9s7ExaD^kRBlI)nhkju}L7o-1)VPGPL)9iI3cnhal1QTIA`#*^meCTn6$)J!`ygzG53yJA(6y(YGx3jPPhO;YaPOe~K%dPSf3or>;mEnGYWJ zjY}yaWwpk9!^^i}%imN^O5NL%tyZfm?gA|8eB#z`#a);0g;%7fp&{v)Q%$+_ho+ic zaf`QScbPsaQW1jouIWkND~DTFYcCzR4o78om1^_7`nSt>q}TI}O}aq(pEvHP?J9AW zj?{g@La=fdTT*u~8nVy*CnLnyy?Y}l?XkvcMz5+z2;clC8WEOz??#OmSe%v(xT@k2 z-^22g!y)3ZUf%j|A|@F}vDp?ao# z)3$Q;t3*`*nPCnE>}N2=+Hvofy*mZk=tLx1A?jTtvA99UeI_?H(l6k@ebZ>T;c$v8{dA)2MixyD)m7kukc+M zWK?k-0|QUT`}*N5)>hi;k5IKhaUZ^QQOQd%E4b)B1FIcKAMC3C={BiciwWxs1g1 z4vjOWKbQPMnra_aYcmIZ7qOmS`!4CjRis0e^bcIO$gPu36jDBI|Bnz%x3Ex!e?#8h zhO)OP`wHn>ZS-`reX9yFQ7c=!Q)OO2P4`E_i3uLo)ntoMsobt@yOsAcp4A6{9sq;~~*OVTVg{oe&1;2_L((KVIx0U(91TUDx(fBq>06BKsl_M7X)eLv) zZn}~tsyJdi6XW%#Ln1#z!;tB=E5*f#v4iQYAS@1xHFhAQ=_$>=xvJTW4H2S0!WIIt z?zLAE+@i8SSi9p_GU}HKRoE{7FG1DWo&O;E=3q5T#MD+KZ_+d?ZM;`peF zU>a3jW)flM?ZEWaBh}2LrdhAyduuZXj%rd|!U0xfJA3{zq5A`!`3;_#R9Jd8y!hY42=>_H7o?Yy51eX+!fomQgE z@=M{THt+fOMjOVsVFU=CZup#t4%5KIZ>>*sC3dMom_&@-Ym7q0FmT14o6I{2H#PBZ zxj?|~h2zhUWK>VYiJLv-dv5V=T;ly_R~Hn;fWclYl<}|o?Z!oY*3%W z!VM#Gg^-NMZ7fVo6QV?XUx4;1+EN4XiZR>q;3&gJo1)h;lKaTc9dJXx-gruNZEg&kmF}m&AP#t_b;1Jm-)iq!oRj`D z^%1po4O%f|25hkDJ*$G?CrwMZhpxhKs4=F41b)mJ8NcVMEhbz4i`UfMb=9-U^lv(o z>F>F!TBd8wihD1Fj}#pA4Lb*+*3|tN|4ksj!)UpFWSG@6JAGjWVLqlt3{wLt8M#69 zcBZ{Xl=}2Y8!6JaRkA^0|3_?=p_u-_&w13qF>^>_6#emqtG1ShnCTCUq^~$QPR46y z$i0}Z-gXrj>M=A>FIZ2jC7e z=7wzSP}6_&EI6CX1$wX@Qg_yf4Wn5$+DzGKjHYFCp~F0#%eL#I$}A0GoI6hotJwZM zAKb|wTZ_pt-X94G^hreotE2Q*NN|ImkM<}k@G=aA-t7GgeQBfVy@c4C@9s9($eAN* z-kIL0)&S<$Hf%2gGqV9YQ};fw85TPs{62>TJJUVPkl@=#XscQwXa1Zj9>MW>m~sIA zak7jg3$?1(c?{pLWI>I~gBaSIl# z7&jE?ob*~F#lX+Ws*%Bd>C4}59FI`BF=DF6cN|0WN0xB}iQowZ`^zz5S#RFQX7dS{ z;k41wOQGHyL}(E`m7CR1$pd&9yBtmZP>#8q3N!miN1JgHkb? z9Sjf<+QW=j=U6wOZrK)dpKlZvhdm4LUME4rAkphx#MU z6I@sni`%*|@>8Xjr3%kvZ`42cX5?gsk?~NYVdVkJipN&LhEK6(O60ep^9h3TW|QOWPNSi;*m7OR%rr3}+G;EtRDcQBKTNI%kdEhKZCcR1L$AMV|0c2Acp zbfF3Dc2##&h)1~t+n82Xk{TGou zI1XkV*}8=Z{}#vEL+?)`{_*WAaExIwOMvmEX50s9=avvkxL_>OnQOonbVZiK>Qn0e zfV4&Y|$eKQyN)oR=$lp{Ja$HyJW(;ajI~xy*!+2@^Ls<)qs-dl4ltr@*$WO3MbUN zf2zQ9WT(NC)w13n4?G`?@U#R5QGo4x(-{a}cX@OO3EE^l`eHht5MYe_g6mdaI8%H| zbrA|g$QUC%Zq)oN2x=o7K*hG|bUdqQxp%*dNCRvaj>#`jp^w2GLIlioQHID?R!!^> zbg6oPZ?87O&aj57&U)CHQ{!aQQ9^ z?&U}PaVq>)TiuDP-^g2?6&o3g!Ad1Cp81aja_6vr* zSrHZo8Nz-XWr}cy-;2*HsC%XNeKu!!i2DR!-4EY?*yGzed_w^wNqcm!h}IVgS)jRf zYq_aKTdP|^KXA^I)w!2ExcLqtvELAt23aAv?-jZaUmrdaL97tQFou|7=yaqW6(lwlLpN>Ev^p8*b<@`LnQvhfZ0qofhRA%XyKvmW@-A67w714XJY#iL7xM;a!H^mw5l~`TvuYv?GwW%RC9B5HHHGSf8)>~@X^o{AZ z5xF1krh06_v0WIm{b=klvpgHIIr<+pHo~9oAI17@G8kREX=hv>6`8#t+Ri`e4{;B| z|3;MVv5mV_@tYEAt9NhN#6NN0&DGpz%#LL%G!F&V7iy-WF|v3wz$!utp_l)RtsPncQ`Q}?tM2l99r>dQTN^%g38ga|`Rx(GL^ z&3%$jj+J|?4%n`mAGl(NDS#pn5G!?JT5CHIH8*dyfNLu-(2B55xIQW>WQT>&-6cCz zM?d?C=mPOORBF4sC%==$$K4vr`!p2y4L1aT;N@PesTx_CH=#h>7N&Pv-7j;jU}pyo z39loe+x>=w*7U-#ct&5Ar_=>I`sQvdsy_Ds3u&6&SGClh^4Afdl>$feef<(RP>xks zM6yetpfQMfEKIIqLg-5+m{u6|i`;d%yM6AHn=r!Yk+F0l4|ghkkk#Qt;KMOrQX!2pittqMc$rxs5kWhFyw*Yfl};;q_& z^_d)EhWbB-W*1oIy6;}i^rE{v&ysc!3;O`o8{{G}xc3m%cRi(Uo0a~ja7~M>$ zAa(B)rUeK0?VLh;fS98H$BjT(AW-|@{sh*WQ}U@tBGf?F_;z8}#kf zgMMfNL~gGB_>I_RyZiCRt%&NcTID}S5mM{7W69eMmaU8pO8+mg7y#PpzDF3R#XU&C zhTKng3=7Lo@V(XDmnU#r6u7@*vu=^)Z_8L-8#u7Dul3E`4}^2qo9mCGBL3F8CL@&Z zp~d>XLz-4A)U#EU%{qX^r>{0f|6pKrSlx6FyDj=8IaZfg6Ar^e>pOPGNM;JqN4+-|XuzZ%ie;-0{4 zr}Q6Ci;Vp%%=fjj#f7mqm_rwMx?r*CEo6V@HJ1I|0aWj_?BAX~`&Y;g&wnjs{|%6B zaj%0_#1d1~FNJ;8NDm4R%WottbeifzX3F`KGgk!W`d`l+Zc(mBcsacXVr%yG8+`J1 z>)$_Xc?#6>2kMvG%0=k)P|9gFZP0jSML&9w`pAOAfC{VD4umcZ@2L6!*I9E$~UvS3i3l# zyG7%uQ}xjOD4QJTmE{rNB1orA#qDnU)uS1eY8Dz6LIwlwE_b)}`}EuJsbN^LFu;BXs*v&@2ELQT6W%rR6YYH5W=MbCm6|Y*Y>4SlVMA!> ztCuACR+a()ksh>7sB#hWL=PPvRqdRu*}kxPkbO(%Raba@r9!sNk=JWolj;S|EERJ&%6gxnxTT!qB!JTJIZ~DirzsN;7k@zh$ zm-;rWab}oS_`a3Ypbg+XK9A#XfyhTb8~`QrAfNuK)HwsIsh2|xu26GFl8M6+6s{QM z^;S$dCPo+YNKk~wI`r56+U`k=lC-csRJ~F-HyxBC0H@{gaO#jVOgpuoPF-t_$Iojp4ao59?Ns3>cvx3 zZ3i|et|lC)_Bwa^s0Q!$-C|=%R*n*cHXGitI8t-GU5fz^haE7ZNyyvn#fv+2B(A-3 z8w!eMZZ79CM<$O;MD3Z$Z@b&Bfx5*UFPx4!-0#TI*2&^tE@P1NWS)}KbvsA5i*>u4 zTmD*ZVb$p)AC0W?6WcA!NSKh+l2QI<*t*kIC=j;*ugk5{?#u=G!$d2ap;7USKvDRy z&ugEe00O=5!okSfZX8=0RhPD{_6_qiOJLLL{D%jHzjTq$zrsqfy^4)pu%oD_j(ki! z&0MVMBIpXCwV4GbM$@(fdAVn5k|jCzk{%yroc568Ixu%xheA?C_35xM9_IcF>7#@h z@}_7!A>>Y8BlC9anhPVT(zJ4lm( z=@C6`uUB-vZ9mTrUVnq%=Y_sV3m1{&xK3+H^e2}$W$AU03$UYVWv1Ucat~2n9-!}j zc6kmnX)m17;89S#;+@9;nY+zhPPb|V?+D1jt4AK?D-$v7?ZjRk>?h#m{!PogkaFYKS(d_F%OXZj+&ySyzJ2M+0-I?oY>Pah9u>zT}z%wyYGJ}t~=1xTIi$P+q3ZX#>9hf@vMas~|vt=Fq}YWupl zv4j~Kk+Eii04vm_)=ePrA7M5^-t&!OJ#*;53@o z2?@4=M75a1sgLZ)mUBd0#38$pdLvpcVHC|065!M@f|cIw_a5^DJh9_=qwo2VufGmZ z9!qQPam=zF)bOz1Q&I@QO>1&q+TdWt3?W0fW-FYH-ELEMCW{qN{WUzUZJrFaekB=L zBPjp8&dHn)pwYY4wi1^BhK<$n@J{0se4i%wueniF)WD02Wi$fk zn?RR#a$yC#OEvNb6ta|!_%vxm!vqWSnTcw-%W-^^>BTmxt$4iaFLi6Y`iF@?;6c6Zto41?x~TNyqIF+C#t=3O*7W^hMvDHqMs(1O`6U~mkyTv^>ML{8 zn~1ov_E9^?&yc6_Iu^`eb`oQ0)Pg30P|c(bS{jp{CTHHf@yQB=9;RVP848)JJ+~nF ze$fl8&<(XSTYhdy^E^L;`KiTz1|%sB&9VXYg$&+ZzJu-&MDY#@NC<;qr#nYoCh|~ZsX}@uq$pzZ zr~2YYg=-;Mlx~4bcH%v-a-R45lK_2)EwYVd(Gr49MNfI#6izi~x+_M`fCRPPSn^*a zlb(sJ6UZ<_V6afnp7b&ATDRCjD&`>?F14wWx?}wkzSJ?`Rc4aap`chKp)NAvqAu&W z3&aNdmH%Q*2wAwx_Dx%%jqx{I%e{)|dUu(`h9+gLH`sO#^4DNy3sBhP`nSv0spNOT zCPht?(|>n+K;KWa5m03j`QnmW6MmHxiqJ%iyOfDd_mlz?v=%5D)IN)qe+-(F}Ne|O*{Zx^6f5b~d8B8sZ>cFK` zUmY|qfH4_T2br#^e@oUWj%ml(h$8$h9=ssEBLo zPTnRx;Xaq&MplA%{y2BG9p*JV9O%)2umzbSGMD~q#sg2`oD+ae3d7?%Mavzt?K-nm z@|@kot1So1WTk)xjm+1FeeCQ6dQU_kT77$)Z@nIX zK~&(w-32w)yPfRk(UM{HGSxs?3tHHXdY)E88eRx!H=g0^kMV^SBm}57zS9%xtzSsb zg7H{<1NiqvPUK46A9LH)(Dj>=VUdRW3sDJ1If|N24`&8Mu-5Eq@f^OQg48e_&@4^B zcv1g^}AUTP`b^H**P1KRQe`* zMI>4ra|Z2&#kDsPCPKFx1Ren-EE>wE%ge&H>1>(VEU+b6X0}C-Q@4Atv`^o%l{9$a zUgDFgBG2MnXiU0ai(Uz?OX|2qJ16QTtP!&vZnl9SfpL~I;QFX(>zJfhrSaYDn1bl| z77*MVL=ZIaxMkvpGJU#JjZ45c$~X!hC{wq%p9B~=p@2|;&{{08r6d)SU_>Nzm!T@;NL9aUv!OwWL?ktP#6NTrGM%_3mAFHbn7pHrRi4p zDp^W1wjsMZC}IsKbGZU8$8)5tuJ&$cQ$#m-` zz$zzS6s%*JEJEV$W;UYLeV5sYIY9DS#gy_3N*2Mb!&s6%ha|^VvCYHl1v~l>4qZXM z5|EITB|$`?`FXipCeu8&O`3iq%-k1c6WwE0pV2y#LsDM(FmrD@OJe%tHa;2VjOg>p z2wnCl0yP>f)f5*?Sg23)`}LTWr&(F8E-2owy+=)`3!)y^_{LSf<#4hsA;KgCG8xdg z$Tu$yy9OB&Y35C8E1wqYnwz=CH=hzV8HyB&!=fgpWR>@E-+YZ>v{O=<9)yv~@_`qx zV-nA}Tn61eChpJ+i1T$gbtoKn2%)X0dFr5klh>?1dCckpw>W~qh;PzVD+`wJnob|} z=`k-}45u6jaLOiIIGRSMF+iL&!9ory_;e1lSCA^Ja_@c$t5jJz3eFbXPd1LYCvu!G zRgw7jhFAbNuHUTq7AQ=IhDJuWBEZ4Khc*&26%g6&FDsi^!Kvh72}8gQT9u=&u=)fi z8=MZjQh^jw7WA|rxA7j~MR6l~xz#r=+2##+?#4}91Vm=80yR$sz@phVc6V4jHQkU`?lohCW{N_xBL8Ug6jvt zsXE`_`k2Udj}sJcAdD`_@i?+w&$ceTar-1%)<6n2vw*~6N(Xbx;HNjHU4h*jm?(BP zCp#?N|JFBdg#U@d&|dMqQEw5A{vIP0SQ+%r9OgfdQwwHnBnd7vLyl4d=YtE!7CGFKrVZwq?Fflg)!idD6I&hOy<+1(ak>D0RTh!S#p^N5q!91saft zg6q`yjva(f!OkW`Vep`KV$3l9lc-COC4vahc@(xj`Pi`{}&7ai!3Ct(Gv zr0C9Pk%~wbmY^V5up(4+UY{9 zb=QHxySP5j^%E{ba|k4su!#YVfg6SH#<`GJY9EuYh$2wW6m9P}fM^!f1xKn#E+PgsR+X)^c%EIln9-6`Cjz02oUTQ_df)Q3ek)D1}acZwXT{OJ&cV{^XQ zpFN7JXvW+<9TI3+q33&;s!@dt?G)R53YTOjK;;h|WX-v%GEvBOEA?28q-N1+#Nqe1 zx&g)aBnX<_QFOqffTm;89W1!pJ#@yUZ|+3bxB2Cm>zi#=l0sT_nup}SP9Q)`u&lG_ zjt~tp*+8;Ps+wA9XbD2hK5Z6FncaGh0%^=KYe@{QxymmH6ROJx{haH4-C9ysV!>dW z9DqA1-o4e1RMf~jY|XBsx;k+hZ${%29yL*sFn?6XqGXPB7$jLMpS=4hk<=y*%Nz40 zPI@ql7?q3_IxNyk?lcsutm}>+M$@203e#w>f=D)JrIr4sYNS>FcAAe%|faI4Bx3`XZwdn9w&Bfe~V>CNLufBn?Nj=nNzx0^g(l z2DcR%Cg_pyT{V~znLtKHQu+MG@!n2R!k9k*=CmoWw^($w4l^>6qO5u-!M%tWn#fUy zlh(9N2h$xp1)V`6%A!=d@u6gwjrCWke&+b1^_#f0QkE^6+$$VH5p`)LCWUDEn4Ctbt-S@m441!^yi4+0{4-K=q#5Zl-L(-l~}z+RzI zn;SjXWV9cXhITWU>1e_T#h7>O`x5&k?i7pq%!SfJNJsG(HC4wdp^8GDBuF*#-I5l@Sr9;^SS#o1hsLnv#eZtFp@0Z+3kDV9cNdSE zurRf`jf5q4kj`-lwf(>eFYjsnP$qj_WzC~k2_XlI1OgKDd(7@g| zY;6txJ`oJ%ympfTmU<~nQm5t@( zfm+Za|A98ZyO6LtI6?uD61@YqA;O7U=EcXwF^|t%SgDql1JUDcsz0)kRuX$ry;ImH zjMS;vxCJ)jIy%xI^rkewhvx6JB}8U3 zG-sM)d}!3x;a}=ff9J*tM!RB85mMA1yRo z_@Gfno&y&H9pZ*7dTXnT16J5%c|v-eReCoK%s^PYOawQfE$|{Q47!pEz;&9sRSC~` z#5UhBp-tNGZZ`>{(_)SXVvlc)kTIdN@&rss!ZdD!T7m+CK3a{;lF&e6fG`Q(-BiD^ z0Rlp(QXm^~$YwC1mlX&oq{ZQ7m2c1yCpg*qWbycPs~*R63#+(HXdt6NvY1L}Hm{o6 z#iGF^VCzH6Dd8jyWPB@ee!S7$wqlg(1QM-2@iOOD7(iD=>B4!gbPO8!C?O9Z%*vrp z>y`7h7($TxVI~wwpjO+d?K%ndf5|07to)zB8II#RvWTSb=AN|5my}A{i3)sdra41? zB#;~Ufr!L?)3{c>(3wpQ?%kXj@8HpIZM5G}pbPJY4FXx-8f!SiSgyyW6e`>!ov6h` zY=)gVo2QVViofzqe}m!2w3pb%J9IyzT|S4-ti_ zYM~;T{YRK*GHW=hdZv;!DNs%0cDpiwT3<$#!QFw zOC4rW*%=rKu`BhCdbe%bVp(qt)F~Adrr=bW_|g3as_d~{jx1;2Bkg3ei}X4a4IIHb z_5*y!rM{U^5VbwDY4my2CjBd_^QGH}rF{bh!hf+Da|72#ek%LBc zM8FL7d#n~WaSnP04a;ncbp|f#0z=FX<3VXkIgy@{Ay`%gr=I^ z?--f3l~KP&%6ae_7~WLsj)$nlBZ;)ZYL}4 zOx-LP^NQFvsSDO9ab~HYFVWZLS(ImQ%akff z`Sfu8CwlNju3xJsiWe2z_(i{DhHiUs%Ma>ym~KbuHmuuAxFxUBllA?c46Y@G3*=PU zPZK?W;)r_!(+$C7#Nse#KpPB*)Q#;#_H~YICDON+_v=g&ve#~zF}lUPWDc;1MMUPW#U~G|q0Q z3-+w-;sR^UIy`;m7~bR1AS-*ZK?y;~gy>`X7l-3O)f20^)czBt&@mM4*jB-jj8$n! z=DVb1Xmybte0kk-((lJX@z=SY5vnbi*f#^r z@2=Z{-0}-`Ga9(&$-r9*06@Pbzh_X}c+7h)k*o(qd#*5RXitln0{)kW!*BI7G-Cc! zr)B=v(agPEUsQAIN5hYJN_Oe?C#9t`xwYsvL$}>@+h4aux*g38`al9a5_`$-NmxJE z^g^nFUCP#brdEXpA~Ck)1S+gw?f@T8wE`@|y6o484jfC(R9b1&d^$C! z?lU>LIq2xH0*DQWwr^xvIGmJ|CDe0rBqwJd>^KDcp;;F&_qEt~i5shIjZO2raWXla z)!(1~lT{3Fm28?XuUak+kIQ{>czAlX08B@k{mdi9cT2=~dI+AX&f{Yll?gzp(}1LU zf+AQV99&fIZ29abQTOo2DO9Be!v7C@-vJ(FvHiX8zO$Q6A%ygV79i9RQow6P0-`j5 zgrcBaBGTmkDKUv6UWGttQY0W!l>{j^5D=szB~&Q}q;~}cA!29(qVoNIGw-{*2?@l% z*XMrE^L-21nK^Uj%$YN1&di*d_g!qrXe)3Ij2Trn!0du7_}0vgj`FQ(x;I9ne9BiJ zg!v9!2F2idxR>4&y{hA>d-epok_#wqZ{nhCq7iiZQ7DR^&E|mH(+796KCS1p(snGxZPxJy&^59Q-qwp`BQcr!7r7>r+5v#OvK+B{QW?_$g7XFBG~li zS0KKu74fCltEj_26(M#H>R!&=!ofLTr)Fz@sqThpa$ zMHsJeNw;+X5IZz2M#gLh@XK{rf-XQQh=o5?7s8=p;~fEv4fzgRA6!IDM_Q^NZlMFo zM;~y|1>xZz9pj|&Px-L4mfgu#t1_fFL*9Tzo!WMGGgL%wEAVcxG}3=n{`3S7P`Ll{ zDVL75P$xr}-AfeaF0}u9{P|Y0SnA+U3e&qIV%m%R8bH`Uer57&Jip%M*9ZJs#IKe3 z(sLP;av|5xl?c$p?0VW*Nfz^VN(ts`(k!fFyW%MLz5n#p(-buFyI~cB?bc}A{S4&PP32Nv zNtkL#yn_BEHfwm)G%#R|dIBxR7WOQ)*!2Wjy~i98=o7j2(U)Q0qxDv=knG9lN;cry z2yYPZwcZu<?<~XQ4e}X79K94>-V_@y7q4m_<}wyB zJmc?yCkCY-$Ns8p#ux6*kS=X~t8B&yiDtFGDAD-HfU~vAt-R$8>3Q5v?)uP9RnT|4 zV=0+@R*X!tjU~4EeuaUs@p|e({>tOO*mOMpXtbT(y4|8KW8ta?GjV4Mw=NjN#tzmL zm%=%TdiPRKnejmEi0w&0Vu#tDykd)0z7?F~)3{h2d^=>0WcClKCPoLUjrQ+gRxSb5 zB~>eKeDG~mkQZvjgF!rMtf0SrcPoFAtsEsq29|M~=Ff4!8)53v3+j-u3Xy=8CPUb% zbfspo<$R6XaFv0Ede}$EiyB<<)J3+?yRSB=rCdA}}Q6;*v65%U1gu z7e{>bXYmY!UKWCv9>d#@5=S|q>f z5%vJTWbegZFV&FMvdl4i*16h%;P}e27_Mg=cHdWDG8PqM&;uNexWj|zv5ZD>NrYzo zf?sbih8u)|NYj6QgGK|EYm%-mG;o=ueumnH zU%unA2!{>0(n~uPpq4pmirORXlpcVm=Iq);UQ&Ro-M$(pUD#L996~ggAev~k-a)DW zqVaaNy|#KBOVcYqMr>3v3chS-B|h>^3aYC9v`~0Uq1+7_(}2>=@L|rfIM6j2^u)t> z#!NZ{ZLG;>vG|}c6j<7d*Y7Ln*3~SQUif<(e@f7wAf_$h*IL4I`6UINaids4UoUJc zGEH0Y$GvRDS_&K;pw^?5Nsbh}u{=@IIBEzUPgB^nY&r_v1h3?N4DWuDI!O}Q?j(Hl zd{ZdEGxyz^_n48J_n$8g-_Mly)YjXv0k!=p<<-P@(=ta<4;Oo|2JaVSbohUObR~lrXhI4!=Ua8VS^wS$hely zVTv7D!%lMFwBP9T#;CsdUp2Z4(mvHKmInBf)!Gsf(~|kspRf#mjp3JMpul86{x}tP z)T;M7%S|FKQN~8wFg$qAfLrZQ@>3BmNO`hsgNIa}Ui1dSBq+7|X0-nObZ_z1^4xN&YsBu^YH)4|Vo zVer9N9Pe`%{n&QI^!^wnfXS;q_+~;Aw2R3^bc~>AkB0~1-C-+sSZ_#7F;;%{#qhIxg zh-t0()tNA*PPYwpl0VAj!86-W<+&9i{9$^`+~W}ClSznnKopOq@m7|~=GstQ7}6Tr z2SEt%NXvWqe0GoBk6#pr-ua6AO>`fDqmB6ck(@~zk1Y+{Yy1kqm$eeVB+C)M87v=@ z%ank*7-X;a;-RG4U+;3WLFkXAZ(`>ujr|^MBiZqMgA9J1r*j&l8e_aIYB8odxD9<5 z0M()A;li-Z{u#Os&f7(D)#}jqVwuh>Gf>d&$bkX+2wPcWFY7TFy&Qu_I`t$z!@+lT z>UgZe+*0#tTRtu2jVrf!=~e)aWkCUJ32rB`cQF>a6f_QN;UU%S-($vvLU4=2hoPy% z@+o|o_6d~7-#DM83EF|x2r!iO8i$+UcR4HM{NB*;SKtYc99#GZhd)};fc5J?p!N89 z8o9TS9O?6ikR`OZjLzSF^yZVk0r;UBgKM?5adM5*lcKy%l-f()$t$0l(hplCi+UmN zf%5fn=cgS(1JIhctT4YWf5C??Av-Wd7%Rd8_kCzh*@&@fPfqjhkX|&-nNeJd=vysX z79HKVHLsrC@~Ln0coG1J#Bh3yVG}53o`UfST8|cLFNm3*er0UgBFxTq;Ncw)Ji<+Z z>&M+Wk&7ffTP{xD!Hy3HO1MMoMaL5ELGp@zb?i#9@W3r^R)*$&$X~QzKl|8Yd0Y%o zBUlSP$cD%BXjeSj+seQnWXEsf@}fE}g$z~O&0%WC%i9|IgJ($(ZO6lT!<6$_uK>>> zB!k^#8J<%p2M1oD!9BBj=FWKc6mB2_kC#hr5iEe#0YyexKkx0!1RnF3Ig0ZnRZ3pw ze}F$e4i=lC>zr-jr3SvB5%(YQI+a+yDzS{-XPDe&J!9Cfl6P4(IN;?js}W)r`Gs9p z#vNny`)e^VF`e;e1PwD|q-CUQoD*%yl-oKfzeLLN3zQeTQ^v-Od$U%Z8@6hQKvffi zI;yftv##gvTUUy+uD4j1{6bx^7QE{jXLh&^_1_HYC2tRY0L?r2i>hVF zN;E@EYs;@^3G2!)X*Dy<8s)kHhDNQ7-c|kpEb@yxar1`^Lp6vtCZ-C%ib%LB zKxQ|h=>PxxcO<|!)7-%acT--A@bPfuV7+Z+2nl&1m04_}&@D}U zW8d_3U{!DACmQ*D*oB|QzJ9~Wcc$LdH^G|V1?F;n{lKWBIewK^@j<$IMme0F$WKXp z5WX1r1qMEzmXROIjc~sqiobsw@Iv*!P^kKWZmDM8OTvV#5dw?(Zsjbcv}(?Z0eh(J?Udl zO!CTYyt(m~CcB#KZnCGz*NwOOduYv2K}qeSd~30;5vtzT5akEsp=7=6R=irW9OXcI z83w%p1mbg-91=Pf5kq6CH%)=d@&!iuiL!KIc_*}U>*1%otuMMIr7%&Zfk7v0q-qzY zcKHDxnN}!wiWh{R>+5LgZJlLAB?BeNiSR@LJs73v)m7xATnW!J;M4_vC|ANGMl1aH zCA2s>SO*soM04*Jg%yNF&H6VO^fC;3COqLSRS(?*{Fv|z18$BR6K)x!@c*IEo%jg` z{H-GJJOjSf4PKJnea!|rjaBpwHJ0>C!v6^P=1*4JOF{oI@GavM{rllZ0@VQ|^T(rc zc}{+y0xi6J9k9&mL%9^kAImpKdGlwW|7>~M*U>0%{%-S=syf_OXQctALa4_=$Su5oR26! zG;re~SlS$ZSTFGk#;g8%RzhXHavTmY245@hj%q*}`F)LYiEpcNvyAZzyEK9J@NL?| z@wA8IIA4w|&K}~OSzf-)G0GEQY9E5Bjl~373lnGr=IqcWdoY=P?dwp2qur8xPEhsn zG>o6S?UwaOk?|^Z$ZTiAL{+|-Dqcvw2{1ZErb&w_$1J1V7^56#Rai);963LbzlceS zensd8Kj5#F^FxN5AM{{r(HR1(rk36&{e)?X{#s+;mY#kJrysqb81kW55}5QY?vMZ;u7T)cOq?H()^b_A#^j{DvL-LRLcLe9(;ap#3+OV|3 z50rReU6l(%yBU451-iGD*5Hj|pmITD>c`^QivBL6-eUA)-QCt(&5P_m^S69vy2?Ap zbBeW_n}Rg+e#xaR&T$kmN7a9<*z)__N+^V;2w1OWt}4enOZ*fsmkiB%s2B-A!_EGC zVV8<*3DU(-bKI1(paq)Ef#aUCw!vlKWEsF(vJ6Lz6E&YdTGYHS|Qxau07-f z+iScNwviGSW9j@{txgRQGkFB6` zmpN_;PU;$Tat^6>uXE8M9|^BJ`A``>4Ez@kD||fvB0r_oTdZI7I@3VsWzzi<{k8-0b1@Mm1lqH&F4p2x%yqUm;S03 zte=|p4(^vHy}P@mI41d_{U#m1AC%l)lF)nlMN+KK7C$OjlyW4!41*qg>he=6IbvA` zCq=0Sy4n6L<3WN>s+tnkdnwjdcbi>Vq9pm!9(RIs&U{cI!A0LWt`Y{iMpQ|3B2g{} zbj;@h9x>=(U##@Eg;Za;?j>G|@%+Hc#nlI+-fVuSHz zTP|N6msW8QKLDuLgYBn7^kA|M|n@y+$o3!rCS7^~r= zC;9GdkZEFsMg#t7P`x+Zm7r_hk9w*w-M*yP%G>%Z!xrAM8p!3z`_iRe@p)16`j6?4 zH}$)dp`9hQm+(ZCH*fFYp%(dRYQX(&DLve0z>CvE9%(cyW*x+}J>@Cs8+6>pU*UNw z!P=#`iK-;NIUhUl;9;I|PvvogKj_yW_Atva-_N)d;$!5OM2~!S0={{Pq?5}}!u4n( zlvaOPL+{AdG4>NZ%y=s~vy?=a{j(T!&12Tx1|ReTt-!c9_df>s{|ANyk_Ytf`C6a! zb+1L__6^y}Fa zRku&?)-T19(xyZ6p51!%Otn1mQn%D@-P3!f_DM_c(>=|S(xP9t-aVUiOY3QQrVlvo z*0*tw9$+lZ(#Is#r+<3ip8YLp>8U-t^|QR%t?w&6Ej?dLNgmjzNBT?PxL=?Cy$2@u z?eSvY5l?04odHt{NgL!|EFi+IB4`t?cc3$azDk6rB~kp z15$g{Yj1htkuI&fH0hF-+P%w*uk`8LBf52qHqD;>M*~Zmpn^e%OwVj6?u zrLXkAXO2qLnbN!-uIOrJ!4YRdi)Q1z5Bh8+!-jT9)q3*j4P&{5%hX$pZ?K( z`la-(_mX8`pZ@*R5rPh)J$m*+{6!d;^t2v`rJ-=27ZK?`pdX>#Qu-h|50NH#t))bi=gC%tmwF*-Z%x!A=f2*yfVAIqkH&*X04L7}TEAv;!UwYrPv{zF8 z-tlK~R^p7fy0-W+;u1yC5l{-zQUkhk9_;yA&;OPNxYcj8)om2JWtOrzQrVMV>e)A? zXKLEt*`}fu6-}3t-;}hTuk;uYo!S!%yT6m&dsux-5gv*pU&Ugu7Y%9YRk1j04a?ML z0I2lq*>6DVAZ3qxrl!8cr7l*53V?+p;_i0rF`C!(=sx`)FU`C|g~rfHe<`)ce@mFI z>RmDDMlsWyIdoMnCpb3THCs7txiOcaRals(l_0wRfPL!+@kz1$wFL&+ZBTN>{uiSm zx-a$}e`hbc>$zE3aj?HCS*%vD)A|nx_MT(dti)McX@{$G%$2f_o@m!0xmQYD?BCfn z?sfdR>ZBPiW(nP|Pg?gFtVOYnOdXUm0BeN5*dZi%&t-Da%8I7lje=ey2wTw9oi<@xe;>FqVe`QW!Z@W0_{Yp1uvGVtI`Q5eM4RP;$W7}Pt&gZI5 zc`Gm}VDXmT>u(#ltm@uFS9%v+Y{=o}#+Gv>>s*V<0x7))r1tAZH^g7+RX0hP6#tsD zMsj)22A86PdiO{l(2f2T_+4FW-IeZ^{u0{n6p%|9ur2A_357$-tu3V$Y>a9=`}uFMcZ%J6 zt@_OB3x$Q7;_R0HO>gx6`+LKz!WmLw3pb(Ez47;Rdymd2o%7US(Fib-+`OT(7gf_; z0}#Wdw0lRT1#V8jLYqlrXZ`2YfOFMhIEausrF-L1w??zs<>gU#S%4p>WEOj+@)N zG^>e{`Wn6_NG>K7e$`~<0RP{2wxU&Ve?g`scTYoK3cWVPEtLQV=#r~K2`UK}UDWj596`QV?VqSabA2BHd2L5gHkWt4yC9dk{x7xUnF|-%Q z6a6W}Qgn#3DY%XBUu}x2pWh`krG#0;br+@d-G=KP|JAmt`uY9m+WKeu6Zc^L;(#|* zCZ*ywMs_xmKqHGjRn{!2pM!hrxhFc`}D~^A)m+rS6DpFUG z^LI6a72LBOM&&a2bB30}*5>+%4fe0>T08NTeUDvB5_{}l+r=EMUA7Cu z850}yOFB?5=}U#yK`a$3g+xWTSpdFS93cFFIKtEs@s+{+#0my0Kmx#(;;10bQE`FEivsTmO%$VSXlNpM znr36>G}}5Rb8WjAoVHzKaE;CHA}bU*_9Ybf68qW78e0S)N`+9fO6f602ys^HhGpXmU6rmxZq_btmO8Ra2zSw0EnC7!{9OG?D< zB-$^~w10{PnyeJUm4!N?&{ZqoS5>8eU$d^#wSPK=F1`SB*4S(yp4T9e%i2&Y1!Eni zYw9gPVvBZ1gT_cu2Uo!@+D%#TruMy6dq!rH&M+N~dd4C&P~NENj#vms6B`i+J^{a&f-xH2quox-0J|<)l11Pp8F=VyiI-&Jxpg+_bu#eKj}otw ziHCYQj6|Y)os?7J7|j~*%5)J>_}vF%a1S1hANYJN+ro#|MB=kv`bYh`%Gb?hi)Tk` zT6@dC@K~NpDB?r05aSHU8h$m(^${y=Q|wx2vBJK>4*9OIUt{W)$3_Q&uN+f65zO*D z#$b|HwikjNuP+dQj%fm9=uElbu1fHxLnOoj+gVz%v$l&iN4lk4M#dXevc*N)B?2$m zF57%xu}rpl-MJHPWL>t+ft?dy+Yj5VuUN!k`|nI&a}rnpN8qHR(LJa)#|C}Mv8}Y}Y3XQ;SFRV- z2OnKMV1}#$J1`3DH|-MRCb?^`DsQi-wTD{aJ&4YK;<9aq-I|asJ56^W!k(}`lr4UC z%<{xb$|=bODze-&*ONJv7mB!OT(?cI3+O|(IBowCKOln09LH*h?m*&=mV8FfNOA}YCyo&_af~E! zfc_&yqv$YZ;usld8|fH0M$E)9lEeY}YR49bqQjVpV`R{X0^PtdVkVA}Bo5Fgcut32 zm@yN_$gnn0?NT@>NNf|wND>Dhm;ZThEw1 z=g}rCZDf#^?!+--CXSIb>a&R7?K3?%T4s72@GvHMlHy0C?4&W?shxv)6X&$|)C4Tv z(?8@&>O*~#0obJP)0GCBCdwkd(av!GIHPUhbiUjA9w%`YL9j{Ri+NM*WwDMBv8-(1 zRL)Rhsf%>F4@3gVSyL z83NAeKNx@?@CJVXe$@{f%fZ9qEEj-hMS%e*5Z4H}CTQ`R(OsoTED73 z$*dmJmaIO>tR4VaeUe!{0J8cdvw8qz^+{&+0NfDc@LN9klGVFSeZ^Pb$*dl;p{%}> zSv>%<`c7u`0Lbb)nbiXztM6o14}h$`lUY4xRDPg%<1pbtOFk5zQd$c@N$Ko|Vu^|= z_C$d;!wQ5MR;;+%W5spdSms@~4y6v!qM^@otc$JGh7H#3#NKY*Y1NYC@E{rSp>+en z8wgGmJFVX_B`K(-icwdFHiZg2MZ*s~bQIZIj9NJbuMl>%EKO|j*vZVDAaz%!Bq4U#_u-eN#6e607<%Yl#`M=h z<*M?Uq;26_>BKdYt1pY;N_J(Y#}p5U?+cGr9{S6*vc)P7aF%58VA&}&JuaqmY#TVT zHrO_*ktH_T_7kw*_OWxfAro>%iv7jM*!3xfSFmU&6xfS^3^Qgjyx*3CO$!)C;a`{! z#?KHY*&xhh1L}Q;`kQH+f{ICpF+CLx=SQ5@zh?H=;ur#&`z-O1kUWT4*jb?mU|+MK z@=k&`^$Z}0p@0Gp1R2v`20@h0(+@f~5G(ZcG>V(_Jc5A8n4V(PENjm()qbNfXf|4p zQ1g#ibCfwFi%dxQAijbHAQkIg1X3!9nNm4o%_gGk#v|4stnIZ&_y&Fw^?J0`d24L^Ykw6)Ae+m|8cY`d`dp#s0U%GyeP3qceo!c$^}N-Pm(U^7qng`#{|UDcss zbzR*V`yetN%y8RlhzHvO)HXx&pQE*_=9B~yYMebeL^5d6#Dkr{wdj=oNQ&hy)M|lh zOe%p6cTBBsgj3g1+40_p&8BT$TX00&xT6I81hmPoBJKoVyh^DdK5*r@5@CayM zc;wn6m{P7iGVW2;Pvah4`ZxefA7A&l1KsRpc_BPotb2S$l5>JlMUznU`lIj!Tz_;% zk~;_JRY|)O5HcSH=b4XQe^j6N(GU|;^_*+lr&?ru!_ul8^{sZC&V8q%+!>TlJ&G2d zdi305sNmdVmmWjv(qqFKf}ddxCp83cQp06TEo->5Atbf4;nc^Gn)-P5L%fuZ7??@b*1n}4-NYmvobGF~D;m+l!5(fof z2n-^){-||ggqYN5Y9swkzie@-(XB>c{8ppP1h{@=qu>Eb$ZQN?X5;aV0leJg*CzU# zj%@KOB1r$*WYiNfJ@d)zCuJo2$=oNAk^AIVD!sqi|wdKv0 zvdROkj<%AKBTt`vT1I|v{d;R*{N8#*8%b|=TS)VtQkpV-tL-hOZ?zqoDAPj|A-E(+ zBp(3`<$v}A&46wuLgPMo3`)NIG3ZG}&Kx zBhM6zBHt}+vg-fmRb!r4pt>qO4H(SnWh2Y~>`xzW<1=&0g+3aBO%hMBEBUs&fQ5yt{+N@|J zCT0!E7Ax8uB|wf8Ah*5H7O8@^2NSjDr6k0-W}i31Ncp@O8F+69Gzj`X^r=-(>5l5z z(7%GVjJUvJVg|?(E@O(wjD%cv>?Ro1BJ+b7m#`{9m06XrDFKV1O~6%vO;3OQw2FQG z^x>zGbr|JcR8>!jON~!8QCQinSGQKN{KRXCDt0Y#L=sAlNE(}@N?M)Wh>}a1a1<|T za;k~P>lQCd237 zhu0r>UW1d8JDb%_);IBf+2VC)h*91(If!e`ueVSPUvGh)?IcFF9M@6-*pDjqP3wHs zzCuGAWj}AhW_;e_w-%u9 zG;>>vT>t}fR||Wp#SsCO+STF`a)2dPxsp=2WXJr7jC!BcLsLGfcRB{jdOGH8j9mVSvoQq(6vWJkMfQx?!?A^w zSnRHMydD~HyxzAlSPMz)4nSKF3*Z7`OE+Lny^Zy(Syj|X$w5`tm;F%Jx_Z_${Cccp zLgdt2Sx=w%G>#O34B>99w_B!N`SXx&j^!Bh6OH`lt{nr(h>WNYqrm8gQRkz;_W7s_ zQK}smqV5oWCu(|Kz^B)p$sL$;fsKM&qmD#@>XE1)qtK8$QDf>NHKy*2x~c`!qE3nmB@Lt9owZIx+P{`*K{>+?SI6ODZ5 z?nmU*&8rJ;^XlG;2Di7OZ$}s5_UF38qET*G^wDT=do=n2Qx~FtMGAF@jdj1P>*RJL zh*92obx+oHllR8DN9sx*j{q4wepmNrnKpUcSa&PZ;BhPS6ODYyBWf5OJvUnV?H7Xu zMj(6x42}tO>WNrf`#^21K@Qa3R0kGfQ=Q-Hpf&A`fwGv;Bope^BkWG~0fCLRF<>^< z-os!|?IX3(=p(g{*T%S^g%QVVpJWZEYyZIDhuRlvgW>D7Z`77U5C}JF-v-DeXaU9d z>Y&Z<)wx~=>|U>Pn>^fBoMDIQvQE&96(9~rI;exjb0WLWygJxR&8xGh4(eJ|=SCg< z6)YWYfCgSiTv#2Q6`C!{i&$9&rB+s1SPgrIh1E_}L+V7ecOsE`CvtM66pWZ0d6YhA5{)YV#9wUNrIy%-`WS})QfFXHzI zH1hWdRNWC(e^U*qZ>o)mL~3&6AqGbx^SJ}fkK9@lsjW2+)c|tPlJTG`ExnA&`;iZJ*Y>Glk0@6B9`^%P8o|Uch{MyqY;~d{#dmeG-9PvEv z>5&SLN)pf{HRa#~>sg*>Jt2&2M`$TA(;m>Dx-k{%a))Zizq|AC&mAveDDXzER0LeF)BEjlI~o$_pyH z10*@1Wsu!*m6s!sQyAzhuCz?mysXknL{czSfVDDdfu_4T&X|2=troh~LdR(^IpefR zhHrh6mJfieLm>@DpA85=|ZID719+Px?5`Ix)e-f)Yxs&K9eAFe)CU zzCYU1`}IwC20LOS9kJMJPSTFjfhbO)W`rOoyeile-*F_p<1iamA=&@{dx>VoPifzq zaX2?!A5o#E`%+5O?BJd1T3Lw>dLu5ck&bruoz zD9pfmZ8OgqHfviUg&txnnuX+1?G%&l*m>4p>Gl29io>mEaJ;ipc%@t7B44#stp+o> zQtU%|h%-Hw=l##Pm1k7sSuf*6MO?Pd)nPK`@|>)T7;F2IR|CGZZMPw{ozC|TaG9gL zy8UC6yg^s-4J#bw?cpsSOJ6;DRMrE70hNYd`!IdkhxKFdU>oKFsqcCC_r1PPVE-s- zeXswldk=Qg)!|~Ea0i%ZH*q#3hKoh0Qi9AcvB7cD0a=`M+;9NnhT}J;eslcp2*CuX zXFRH|XdoV24?j^C9FQ%3cMPY^8typ?r>rI&gdla)L4iAN@|MC)lIkQ$p?z?({_a45 z!qyap3T&V8KGbLSEgmSe#bXzbZFYI=V`{%g0aFDYGe~fTV;OjJt58KjVJPpe4Ykkb z4TSmjRZK}jNuV$u$J1iG0~D|}bj)FD4hfl7(PW_$SlH_U5$yHY@1Z(mzX$LP3%<&} z&F*dk#BuwrLI5y>e!F9z=pok}vvF=@tT|YNwt@<`!n)0H<-1yeyxUaM+uA&y=gqUu zCkn(h-@286t*T71s}46RIbNf@QNt+jcgw)t^=_F%zM#@BTO9H&@TCZSbNv9%^_xQ9 z_>^*!{gImN|AFBo|G+;l0D!!J!vU(;;eY}j6c+>>4+8vn(6>QIeH*kc7GdV#9DuVaAeoO_&ccL+(TGK9*Q_|1Ew z54W~Mj$ZdK`xWp|fFUAxQfFNA%Mxd3*d1`Xld0{~ww6 zqyH6u$;TD{--$FfU|xVEI4@v90MHhoe}GmHkQs>F%)oa7X|~@9T*72-U~V9Aas&4T z>VwdheSzNuN@6Di^8+Q7{J^Xr6weBp5(NAyK_3NygO7q12BFx(pydQE4_Y5Ynp=Z* z2FWrzgANhvP|$Ie{vqfmiSSdi(M=FP&lz{&S6yliADIcUW%WU;U;B3#CvPhjNd#)^u$GNiSnfj^hLO%ox{g(O3 zCH69m8R*xnaY1tNGaa8989Z_Ms zjD-#u1h9G?#1Bw$1cpeb1@#oS=nHm*F`&k)BfZ)+pfQ`QHwfjcc2X(e~ z@H*pd!*c2!hd77sH=>7pkC!!~xqf@f8BzAP5j`C6cAybuUmMZ`gBF4j zWk-~?%aKL0xqckQxqheotZ;RlLN!2PEeKc%#3NZ!szlnxGy#(B70LFJJEUYW9EGu% z`&vTDPJ9JfpI&v1^uUuJO`?{wa-G*fOPmI`|- zsOfrdh2JX5CWxUSBSQkyi!o(VXGj|;?}uvIDC8F&wEM z!>@$PneIyX4W@5|k1h{_qsvb(kJR+?TbTN}{MHI6vbVx@ayhZ$l!{0#uegT6nu@0@ z0`qjmvlTJOFIR*Ru+%lX{y^x-P|P?dL%$D|Q_=V2C|OmWj3yWjGteQJ1HmUkZ0+PY zS%R{L!mkWJ6mCGtw*kEYmJR5Q@XYd#R7>S-Su(Ty=<-I!=<@T+8|Y+TL1ne5YG??3 zCM1r~H7>}-fne(Rf#8e5)@Hcz3sflg%J6;R2=<|Xf6)mk#O0AeF+*Wc%1vPoL48!W zoeTRltdL%2g?}FI4v?aO+=o_>dii#Rl``T2gD!!E#*8=}`%5gk{g>Ds4SN zg*WSwIRwmkWWgiIUhoK7+tF~vqYW1u&nt^Mdi?ZwmQr}r zZiEL@fa(U z(f?y8P+hktzc5Ag8wKQegR>%fD@7#w@>)PwFOOMLg>Rl=`6c%u;9avahw zbQ1`~MFw`YK;CBE!w0PP-~lhS?>r!I{m|trAs@h9LQl&QEAI6@56{R^T~B)nk74OU z={Uhod8jSdhMZhpSVRsBnFH7&-nD+nTXY{)DFu(24`PZ#s80xPlr_&l9XGpEkn-Ehtwx%$S+b$ekxBW14+_jB zg1Mu3)(XWo3w`2(AwYu=-S+9960JSZ*6G;kWso^OQU~UY`Dm>bPw?U44GO>TbzYI7 zf1;yBvb}J{iYdH{nL`rrxY*Y7a_M>q(Se&Q5!K^(>gxQU>@*#F%Gs1vS6MFy4=ZLU zxm0c}3oaxRDN($`+n`26U0NvK)n_nwhCZ8=-eUE5=8P>cJ)j~_JH}g-$FyH?15*5= z-7xMXs$CgsAcE|qV{lsPDd?^5iHqwjz_r6!(m=UpjYY9Y7=XM1LwRL+sP-XUG@qLO zMO;sI8=?u%A@8|d-jL1(hSJH+yu)nzm_$Mv_)U{}n22Q_83$o_EL9T_AB(sctFCaW zDMvJu1&5NTt01pONabwy9M|kGyod((?1wKB21Fg>;(GLRl=BPy(AzRcxpvdhBqds5 zsfQ-kYXssr>SB%XVA;x%W<*txtBx}@Ie`)gN)b4hl)WqJ(;7b9h*Gp%s&)7HmRRmz z&hh9DEIuwQW7sQr@C-^UW|%q#SL#3ENHri}KVL&(oUbvxHUQIWkK)N} zyKFHkYEcvbi=wU?fU8mG>H=`C?gpNE0%Jq;zGwjUMd#I1fV_G)>j7}HUKUTOfsqw+ zJ{ExUv46xWz#p+=;{X^Nmm8-5xp8mB1MpV-j(7#w5uZ;$e*B^O5>ULn2$hDbXtuD- zqSnsRzOl-?Dc@LU*z}3#2ScWx^8tv@AxxQZ!ggL|%*8{g%&_0F%Zxkr;q<=__gGX; z7Njg?WMP$)Rb}L0wcFKXWM<^9NEx{rIjp*j9IIZSA{3{Dtg3qs$F*R9(vlGhMMfwL z8KDqlgpFsUXsiBmT8ahNKeVr5?8MhfqcFInM!{9AGzx&Z_VHzaF}}={vJgK2Q_AKC z0+1glbqjz)L7CwIWO6T*`Fyz1bh_rt|RpBT3x`e)ty821AI>O(r5sdD)j>( zuiketK>RLd3bhS@DY2i#0`N&}t^vr6g+6vP^${3<#6tZ#n(7CDR6jH~elpb$fXVfz zabZ8LzSKwORe=9}kI1gT)0*0DKF_z?cHD;f>A30<9A3#D!F@B;BLK{`qXXKT9RR?g zph?`5PYS}~S;{pbx zE)k^AaoZPzU8dz&Z!gEXs-YeviHjT<*)lB!iKo;tj%8ZP5nMx#GCjF|c75PyLySz{ zSA4=U-p-4+bM4=HF#Oiz0v|pZ?pWc_CvF%lRyfu;kRI^^uEfwr&g2s&y;_)Yg?_Lk5ip-3JHeH%j>*>8tshY^0T+NElM&x~9biKJob z*CZdKhZua+!U6l5D$HL~WnUFZkc<(aIID$jT2vE+B!_PH&n@bbtXKxyhm`{@9fCvl z<970J+ykeV#8yeud;!Cz)w^M9MJy0-)J13hKt8(e)J z3i>ouW`7#GB@~mumQdPyP|6PbABI1iPjfkATV* z<83qK>UKX)5g}yNLpRMHLS(w%D0BlNhk`ir5LsAd0wz;LCRCltW!KEAQy@~Ll}Hg; z7kLb}3X!XkGayt%W>jCTCfC)~k5z}Xl~j?TCR?ILt>XPGB`lfEZM4~B2{R-I8%0H3S-8*lmjR(DJ^Qe&d$MC-4?RW>Jj zC9l)1jNU--zUa#gE=NySBA8xpQ9XSye3pyq<<&#R`Ph6q{5aDf$d4a^2?gR9Q6Do6 z(Ky9mdtq#WAOmsIbCo(I2wD?tg&&OS!7wXkehkC;G2g}TY))RomBO@YX7T&nAQ!HD z6m&~rraIt|hlvLq-*cw=Ud|DR2aD_AMxThtDzEWA*cEfGkcgbCWQ4PYj2y$+mqa}k zG$xp~dui|%*ejIX5}F?>QSyt-B-vqe!%*AYFs=lEc%{msjW+#zxddjlEaq$6<_)%>{@IR3d77YV@N-atmwG64|o1tf$F8J(uL30}$0ch$!oah+Fq?P60&O zKSbDO37LY0uZ$==f-KceM3fyFJ;dUvEQYcg{8lk#_Enr>aOIdOmvAg10LwNg>RkIS zUxvGIKSFx*r zLz#g}%fy_#ikX%8){4wZpF~K^h+nEP`~`aq!Y9GjGCi`!Z*>^{2J<5cjKcgtfD{n9 zI9GRMw8W$>B47@T5CQw57u939sNO0l^fj8~Td@S(;)+)`AokOE0zQ>XUSRBi3KPKD zlw4%jUkuZPjK#1>$WTilCB7nBj44(K3Lty9qy6kA*mFHn1$KfMC5uJwQ}8DB0d+-CjO-G zr99KSQ2tVRSeHxXF_Cl;L#wW=3fnWW+LUUZn7=2BH|T7gQjLqJn}gL%(nT(9O){M7 zQDR2*`PD&Ye)WUZeXtwGa*m}@b|I!4WL%9JTDNe9oD{lcH)a_z25t;EeTREsN_ier$}Ma=pkSO*SlxJ^ z4LmvCz!`B83uy_5Z9dNTSM>FItuv7$!7Q$b6O z`9{fQ3ul?jS6qF0Q?JjAqZIRD0XL3@^ zdg!i>E~#Jd)1fA5qqFcTpC1L;-V~!3>-IRg34>I8vEm+hVh(;X!y?o)booftf$ozQr!{?IS%+*m$Ue z8J|-2n4cNvX2*;#M0c5S_LvzbyJnp8j1gCQsX5J-;<~5`OQ_tkQv@pr`-j7@*tWSN8F946xf#vHt~3k8%bnwc_vgypQ0W`I8i%`& za%+nGYyQ}iVy~EmeJl5*A%*v(ax3b}mRnI*@@SQ%*hdv$2TEg$N zP6R2QLi*yohhs|75FKWQMGy_as}YFMZ_AG zw75m&P|b_W$2t#y{I~+1=ofJ6=%S{M!e?kf}MeI^TB zs2A5A<9H)^oaaxIk*dIb{ax>XmT*$oHh6Rh)nl;2fB`kn@8p>rU|I`?Q(f=1t9CwfHeVN z{7}$tY?+Zh6tW1t%`)`Gw1X9R7bX+w{D^nq3`1mL74D@Gp|^#7xGr)OR2zT~q)sDp zzQ#@LSrAdfACXZ}A7Jf=$knLD&}T#zQ=dCQ00&e$uiiy0@sObm1R_&nS75b_2sZ~Z zqAUd=aX&(B5ZMv`HJm4BxleJk4T!p>oI;Ww63lzbGXkHj@?9Y^-H+lxM0rLKQO!j} zH5ZX}k(1C&L}tilBBFcVK*1g%3v`4A9MJ_JPa>Rm;%5K%q^L{uXXQ9cAjl(~aD zRvI|-dcZdSJb#LJRF!w-;%8LUv?!*h!C^t`n^*5!xi1B^e)&5jm z^Of5b4^+`S;AMvP5xh`&DCn*72;M3`g$v{<<##Z(qx|mj(DdEq*Yj4{`ih$?B5!lW z!N!_w4W7{vYbxWpA-v|N@;;{aRX$o7<&IXK$OpP6$_4fL!D2zRwM_4= zc972OgVoMNB6TM6TqNm4e#ED|KB}>R3+M$k7S=&(VVxy)kXlmbcRsE7d-PDQX@}N> z|3p2pAjVb8BB?B+2Dj$RmQD)K=C!~p<*&0**UP_E0jam-whinkj{+iGoXg`aZiL*9 zx16_ei_k5aEJ@Nu@l+Z^YJyZ>ZZ)a4+*mR^6mnUGVUx<^qQWG01^fZ!=P@;}{Kss= z$K1I*Bac+DT9rM5m;6@TUJ=0UJmA7D8E!s7j)yD2Ia+09RVGhXJt+5}m$(N-TKdVJ z5m$|^C=XhJZCc;ywWrhp$@lPNBLePEkx6$7QXI;paIWsGXe4K0Yl_S{(QBAmLnm2B zY)`k$&oeCSI;>6>b*KS93?q*mh<`2QCKV? zb9>Y-J|Mh{UDgF%Hm)vG<2bWCBd1o<$>ZJyZ=i{rABSLm+!t}c`GOmkXPlix3rt*! z-jFr4!mYw0k}fpcs640W#Zvz@{-|ON&pJBetYZ$mhZujG1CB90F)$|(xjA@bLV8Sd z19$QLyG2Dly5czAYR#*7s3HnwR(h`zg7+$It|SY=pB;hps4C;>MjT%S!tU&pr@S(N zr>eP$lkMM6gR-ATMe=XAYPqMk)tX$}nLgb}OskrUSe`aUgs} zdHoffjjW(C!^Wfhl?nh~sqjk$ApOFlm_%4Oj78WL=>P?JdBD#?c@<|@2Fcl#57Osy zu=1(O`e68VPE|eg3`$7nbA@zGwG0h9kk{| zf2<%MbLKO)O>p{0ujR}quY4rq$_Gvt@B(^_2GEwyK-}TrtoWRC*rMDYv9P*98HymUfv{icFb4^F4FvBL zlGi|xmYddO<{Nk2%4Rm9eYwhkZZpmhlqRN?vflBd(N8WxsnA&$j%1V!)u%3-6|hd2^xgw_Twt3Te{UmJnz$2b6Bo{O5q#Lc-`&--e+E5 z{lcoJ;BxX8c%v>ZP2pN4XBoWp^8_FHK4Cp&wZCRbvEYqN_)w4^SvOn3=w{r9mUmLO z5tG+5L5nZt<$Jp{kpIHUMt%VTV9#om6zw_hZ6+PO=;(x5Os3_Ru<%4MI2xllx(#A& zR%wW?(oRs2C$vdc4L6C|pQxe{HY<&q*j~1@g=4h|vXa#Dmf7YX5$(Zz^{0q#B!fmB zAlnY(Da`TOR83xto~of5coeieUYyOt>q_->kuCPJ+79SO&~_e3D_$iFjGEMgE9tMZ zk~XrEHr-_^Lt9D$t8l|rg7a7bj2I0Q``7 zpEA#NS(r#7E9A2fteQRxnHH+`7SlpM2({1A=an0nEk5A$QoZ5rJ?{ja56vjA^)`sB zKoLj+ft*lW7RUhs=voqs|3JVGD6Rmqu)4ErQc#6)nIU9$CbCL1kCU~xau%iD$nrHQPM@dD|D9(XNN5cqk|#rbI$wO;d8@zv7jJ4 zqdY=4cb>_RD-?S|_J`ozC0=(tpoaTHe&nlLe++pi6n*tU=x6kVeHOZ%sqK)H*C>ml zL3M?DKJ=Y1eWyehnE;PS|XWr;TVeQf$1Q3VU@k^!+f@H9PDR2A_Z-G3av#PI1EW z!+?G(3~mCvpodbyc%Bd)8Lu;AZuo7+iDdHcJY!RJ$@=z${K_}r{u=UIhvu)Rspjj`5jX00}G;jwdai;-r z^bYW?VB#il)=2ziVH?7XIPt9z&`oN}2Eb|PNHZg7CSPMPGiXAH{x017 z`k=AFYV3>+#@;IlljR} zpewBV3Z`QD5W=mX(ZTYkDaHm*<#WZ0f_F369lSqSPk)1t9F7l>t|u`T?3yi@8gz%x zDUSsUPMfA`2ji#7|7lccO?yq8<(!{t5v+%4Rzr=uh@uEhb#NMAh-V(2{fEt4j|(>X zE3e?>H+XDt&9?ux_}8*q0vr)BftJ`{fBXZ$+3dfyI_8E=Pxcf66t_$TfJ4U>zJIl=Q~c*m4YElfdzz1qpH^gH zeZLR9M8GAIb?WRKN`cvh&1l|1*?ZUch-Y468Kt5uX%Nl)?(& zhUDJucXy}wnhJsYYk?O{UX<#!0|=e2rg?FYSa8-81k0xQVo^OEf+SfPp`OS$w0oK} z%O~YND`!m&6rYt_RnC!$rKfykZxzYmtv@8^dN>P6U(;tuy4LhSNtPk0T2lgzcB4PC zeCKm#Ki?NebI*tzzYqP?Ao$SlO8|&xR-fg&hi3pb5}`-D;cf!MS*{+dfXmg+vocWtN6utz8}{9^U(sNBr~{JP4;o48uPPK*gL+v z_?n4bWe=5=cJxr$clo}F5B(N1SnRh1ubqH8E%95<^m4xyD!qczaI*z2f~S11_(J?w z$V59Zal=<1%<;g+bpk=qg?pHExeS$bJ1V+NOS-DpAkoQwumO^Dwdw?wqh%rT<0NK2 zEN1qHl!@^r3cN=1^**D$Cwrq8CwtHH2KV#4e`4wW9pL6q%sI5l^M>i81DO)uS)}@_*8YOHr$l-My2f$jP-^l#G}i`vc~qP z@n=Hf0Qs4SQFfA*R$}*D#@N;!O`}wfV zr7|}d3}Bd>5jl)afb&Q-fsnDN zk6Oq0e4nM1&Qgd>=W9&1LRx4Sv%WzS3^XXUc-v>bk2>EIAC=iwhEb~~ww1Y5MtHq! zmHMlR{bkP3({=_>*GSbwj$<$1skPU!)f4`Kt$0_TJ_OUq5zlYD^uf+$h(b#O+E<c*(buPQ}9qsS?eT&T5``zza?^@6Mtaq)w z_U%4Y)q9Eo?*YWti6~cXVI23jy!!-bE`kDngjX24KN@_?U~j5(3k$@1&j%yx6r5Kg zD+K;4I$j&}(I89%`zVrW8s8c?)%CJ@Pf7lm1;~gBHmFv0Ro}sw{ zJYMr8p8|Zc<|+TNz^7_@YC!p(n%8jHW1ZVo{VzWL_OI&Ks1taxmO3&OM=s%!skrRR zuWjM$cgXDtRD8P$mcdSZX603W^C}&^xPTiG$mn(IY!BWWyJ)R=g&}D_<6ZY zSeA-i?lXMX9EQ!Bt7|l3?oBm!W6!#P?kj!7f^X?V+ zrlAsc^TZq1L?W+2u5vb=h0?ntkK@dnU~s`>=Gg@3>~sV@#Z5=>T0)%rfuzSb4UTp_ z?SJ-93D}p=roPCPT=;;_`;op#o)$&CEuFF6O;>e!iy>WAw^pglUN!LY#i~cR2=ho4 z9wo+$)1s^WPgJdrE|u5bxtHQAm}pNgMS*zlInjNwYCY=UuCGc*s}@gnZ>Mg;UCmEk zp<74)72U9dH=N>;?Y&0g(=P76qF1<^-Vt z(Dc8!>wNh-_e%=CbT6zPfQX29YmLC>Md~41gbGydJ@*5b#@69WJv8RmxpYpck@uZD z82+dx!*}Op2He7T=V6Y0%YYmC?!0IO-&gkO4xcIA3Gu=c$BWAE$s9S06pAG z2SNy%1QPm``#C?5lz`TK{JC$ys{;l_C;33Te;9B9!{P-4FU8YmEhysBfq|nek*2j3 zycgfIGM1(R^yLFkAGH1B0m!d`cC)pw)uK_a)h-(vZO4hkvZ0xwUbDQa;qW^cuHAQP zJ*gK!+&@AWrqCSb@}`3Bd)!hpKpcOkmLDxbu4O|xu%LT8)m|iHp(yi-TF(8Rzv)W0%`7QsaHJ|_C)O;IY**RzVm<;t@f0h zp-_>fOLS9w|7G0G4(F{RR7JSXhG_qWBL~jMnVxqlvGW+cEmoYJ0m9B>U}y|pCgCj@ zA|K)0a172N9tG^dQaxYyL_TKp_&9Pc-$<~8pH({EeZ%XpezB;&r-W|;M_%R1@vBvD za48ihSe{aDsrh1M)fMp6Ohh8i-HZ>9R{f4YZ&ZEg#i0-JNhj?71IzZ_EaLhoKlbF_L32=s zIf^|N>Na8{P%4W1UZ6N+$2>Q>ia)DRiuc^mqtPe0{{)M}b3}eg_>k`BT=4un@*)?y zJ%n;$&HWM;$I-5;m-r1qRv3F967CaJ-}^GMhTrY=@~J7e+ZDNoF1iPc`G5&4*eWUc zv5-H<0pU4y*dIOB!KsqTe>51Q#Hip5CN1$#a zcJgexJI%z-%u9_LP;mq(w-aAoGWNi##RJ^~XI9P66~x0+RS|GEia5?M!mp3gq}Itw z3lID5bSQQXomsVblCKK}z)(vkI`ih(5(abK%erwi*W8mF2{7Z`rw zUdGwXWy%Nyo)Q0i#>;dvGX0h{Fnf+yuKPU3G{%Fa@@A74yxkXI0q*?*U-0J9YpU@% zS1fh#19S;kz$;l0iW#*1{^tY=y2k}wA7BA^S(z>XIZx9${WiTH{g`ih`50<=mF>w< z_ZfMW?aBI8wjLJJU);XvXY8?`MgPW^(s;*$(Z>CPLo}Yxbo=;rmoG4oV(&s$8_O<4 zU(HeRT9&Uk5BaKUrT(ZK>!jp(y?NC`e2wozQSWeo0?alQhaYB`dRQIS6i~TO#^DD! zfq76J_SlM||ISw#E$V2|r?jgCR@&^WhKk(WI zuc*A`AAXBpoWtW`5qvW;w-DjAOnnvX0e1EWRB<5ML%hz0cl)UVAb5*8<+RYNO2l;< z(By_I@P_7Egkl(;3N?J`ajN?X%z;-R-J`fhhT~Fs{(2ctRvCw>j3*-_J{XCQbg7K! z+$!TRKcnmX0cK)Q`#Flk1M>LzrGCU6knm`of3(g&TIU>z+`*pie_bx_bvj)#mkWm; z2)`W21MsOAFKW0rIdp>8W_OoS;72;IG*y5bPe3to9?&{3O^nl#3w+Qo;Dt;NGfsV5 zaTK#19QA(g$2_@y?WyV`+Fnt(fcYc~coJ7+b2W4wUW(dkKP9=gU>!&bo~8}vW2w81 z_FhIcTD^C~-D?J9GiFMG?p}?i8}Xsrvyt`eW%Tzld!B2#+TPp;qAhzxj)C>60p4YWsvAOKn0gxhU#gd%uV?d)#M*nZ39FZge4Uc3Oxx zH_4^A+ud%8y78JJF#K_;XP;j$BlIMYUJP71cLai^|Q_kMP(dJPYKt z{!jUe>PEbxdSMO33u`{a`&A(Ru;#4+lI5)d*Wn2!2(KIX(m)ZuH1O?#$oDqC``v`^ zem{b@@k8a2LBAUW@$Uw`JP6{K2VI97-I;Uns=?S_HTc(qrGQ@#{@D=k*w2PMGem^X z40%BbUl?*3)!$ICXj56`6FK7{@x;0%DLc>v@3r3ddc4_@qf;7$X$i(Tw3_A%ZB zmpgCgS3sxX55oCO`~jfT@aN`g?0FDQ^B~0Dr`0&2o#tL$^U^@|E5cawTJu(P; zj|}SLULRn<-gRg__I^G1Rqnky`2V=~e}fkf!QSE__YT3{y+f96fW4(?FnY-HByls~W4r?iJPQ=%>}!4OUw$M;-n3;QKc4WEdTBO)OVxU<(GmuHvxD z;`z(M`OBjDdvo>mgZO*>pnC^ximT4c&ya~&u3HN{{~$;xS#?nLB>?t<3X6x_w*eG%wcVQsyfz@x;=VTEtpNi;LfrYj9X_v)o&e#Kpf0}@qY_|! zXmIuIn^NH+i||gQ+Idf`l^`9tU7kAI;K~2@m~1IVxH+N zrV>7m%L4G0eKHEC{MGJTRc|3oaqDCJ=WSv8<^ebB@bLV==Orq5832^gTV3aDwC?Ql zNod|laQ*_ec0uIQh%Zr1c8)_GkMri$7^KJ`*UjA(iM_FxM)X&CCU&9-uOPpXIDT3K zE)ieAPewIN+t~Xgl)6CdiKcaKd_nG-u_r?Ie3>dtp`ADh9p$9cP^r^SlP^r2hPk(A zHsSmRy2VEX*O`V2PCMQEGREm=NYl^39Vv~tBjtIF=a@S3j*v#TH}XydvGE3$6TtcZIl^w6i`df{Wx1Sp(yDb=2jyo?`JU&kFW0rlbm++oQBxvuSQ!Ef{IG66p2 z@#EBS(5A+nfYO|U0d(TU#O*^|v2yUnz0ae_^SMWI@axB}-^!IxKr8+8M%)0iDx&X&?Za!sp{e&# z9}XJ$A(fh;^4m-;RP| z?%VhkA!kcedpo+xO~y3Os{=L3$sb{_5Q;tx&LIHjEF?M$BhPqXJ>&V$eHp6_J`M|T zMB#wh)Syk26z#0%N7BwgpYi*wV(0KWw6KmJ9UE0I?1Uy*0L_H+=OPtit#iqB4nma< zIs_xmAtz(&q0Dg;!qbp z28}~E;wuqyh$v$*i&(pZj;XoHdqCPf`DB9Jv??NkRVdBd&i>oI5ZQgXcb?@A+8t## zrRdpe@X&R4r{M0$-K@@qRTsjvvmGoHfhW7|Az&0EAW7V$Q|Cie#1 z7)Up*0h=N9$lL@nU&gjwh7VrQA;I=c3$W5{Yh#<{U6-RSntUCK)Jp6BjiR5d()*|z z&m)PA8?K41FX@=9NGObm#}zx z>fT)S9#5UHWOsAbeZkW&H^wi_j!(frs?*EpcK*#jWAIw&#^T^_yd7n?Qvv5;RNx7m zdqL!`NOh+(ZYwnsyVqdG4jgWS7*9?+v-2wJ#`!JS?@X5Zv3%Fr5wab}@m`a06LLpf zXB^CW68{XBt2|Ba#uFH(H}$7n)S3=0$~J@S25VV`Hq7KY+XMLRaaz=b`#Zm?lCb|( z)!mGJcSk?)Lg5F|_c(EX5A$@<_%}Yx1JR?^&*_Q!bJY)WM*bjP9w}On)vSRiXcLuU zavkqG;aBlg=Bp}visyKIisu8K;setUqWE|{zvhE;1B~VaINqn>zV6QpUq_Kjk43AaY=@H34z@6VWJ8pUMm<^1 z*8ibkxcB1fOR8%+obB+oR`-(X#nrr$i%qZ2eBUP@ZNepWUQt)EGYsp`>UH|T>3grHC)oW_->-R)f2QT-;D}AS-#9#2V>=!6_AZ9I?iEoAX z`l2Q{#+GOyV}hR$&F^Ihe5LAR{@fYujpC;lbpk6M<%gHlgb!A>@`!Q_q!FkJNa#)#3g^#!7tkv1)162I@{be$*51-DRBfT;$W4&Gia{IIGs#U%)ajos9~< z1jxZmg6uOBN)XLdqM4k!EQ&57XxLhb|FHE-mP=aFy>rfi9;Sc+#UDj**KaPatIGWU@h@YLIM6-#JMPq_fbWR! zxD9jgMLu!ONIFM)*}PmzYn}}5WXJuGaUY?W?hZjSF;`;;O)h&062@k z3evtopAW+M=fc6xropoNqW_G#eQvtic`7I#G|Y|diaYir%Wx?jwQ_L3{GCmOuSalFvkr|NxxcrEduF5AC_WPR5bC=& zx<2ZD#Y!*0iVNP_eIJBb+yH=wus^DC|5}qC;J`?5@V=U0i-V$?e4#UR-{H2(MuovV4ep=a3JF07HCY#eI0gl^eRNHhghI z_mvITZs`7Q(`Pru9eBOaT#rwyxL0m;)kgS~R(2zPS>ye0yKC_|4eu){Zg$JwErH+` z=`Gz$w_LQP+qLB#Te^2`nWb>63%15LF0yF$UHCYo+Z|gSgA^ZKbT8g+;dc1$;`Q6P zH{#=q2(80^Hr!n~JUznw{r2m(cR#LMU+3Tn{YQ3ne}j+OI{4J=ySusT@aS z;?u9ayQAi#9v|gCjW76O4!P&jJ@F-g<$Jo_duB$vZ;oC&8eahD8slEN?~;ApHT$Nq za*9{}!=ZSizxyF|_<;a?9soLP@NEG9@Qq_`8{^(H=Jv7fU1Ogd>n<6$Vw{^D_vdlA zTW;^i_I7*l9(}w;f8jpvntjrSaILrh;r{FQcNdSpZaltU{>FIst?>&Fz_-gY6Wr{C z8;*6B z(A}4|ShI!u7#=>zi)mGvD6Z8#88yY}>dUI}s*G&4vq=z`!wz$gIMJOx(^Ou8MSu4h z%tD+ALFM}yC{|&S3*jJ*{?Fwr%rmYl_h6C&_W2D?ASVjdiir6#Pmtr_TS6D(oS zM(!39FtK?Vo|rHJQ!i}nlCQ8I&bP0F!gajRvmPr64o>B<+`uz^XEQ^4kURVcH;r>9 zCuYbubZd8aTT%|rJK=ZSYP7IwVU;t&&_PuWR(Wyi<(+sT{`E#2Uf$7x^2eALfi7t0 zJ>=Ke;IXZ?!V-;}_^#V<1}eA^DBObfxa&EdV6eEi3e%_FDt9I3M9#*+jP59R^u7@M ze?E#v*e{@ey=RxfC4OcHuh(@^ZoGV`Cahx@fIwMN!d<~UsnR0eO(aAF9><^tp z8J%OH6ECAP6FT)}bk2iL7XLg{*+yqE_Ik^-VkLB90GPQHLQg}|QzBPmXY>5lPSjcF z8U+aiUP5O0^cWo5!I!9?QPUec8+{4wL?hHR)2L}39U}338rfQQ_3xOgs zkBZ8&q^aUe@pXoJI*6(T(sbz5;+7jWC>q(dfQIAD@ynqHq7f)NgAF~28%IIv$BnaQ z&T5@Kb9cm#Y0W%|_0qX0CjmnqR}0n#oQF)r8N+eK zOl;&OVJ7{in5i#(X-#1!`KXvF@k^_C8$>l;0#!k5IK42k!ICft~d8^d6y8}KTLAg`@+u@f+S-|=2CKXQ0G!edaemdmO|2v0F6&$Ah-!Lel$0P;wC@-A@K3*Fxf~4odET zB>s{}g!9U$yhP6Tgy8%e$fr1uS$Om8j@CJ|jhVnNfmqr{tQhBCf=>1oL6sHhW3E?&l8pw! zJBDNoBw0gpEF@iT26N4Zr1posLzZI0+14-|nf|B1s(*1T&@@GgA?}1d#l z_0cHSn_8h0|5RZ}#yHLbNK$_fN^XXv@3WxfaY$lc29bXm5>8P))_LW;4N31{K3gPb z>ru?X6GMWMQII5!ToWMa+90TNDkMFI z*^oQ}Nz9PE#F7okUm-~tlITY0?=ylWZx2bYA(;qCeS1)cqjbWM%!4FtNG^vY(;3XQ z6p|i8axWyk^MX3RgCss*B*Gts5BYO)%yCX506JBSKQaUPmiRrRZODeqKw_A$D~_R? z^TatV*J?`$H#<3k$i3-2_Q(nOxUGr>_k1zk^Pq zOgUdbr@oBNPMGQRl+if>I^AV-E{0BR8RQ>?PG6aF-i1zA8J%yVr=-g0d_8lr630|OWgPnevmtW@rebl-pU=l|ZmD7v z$2c=djKZxi{y4Y*3d0R083(!2rDi*EL?Q&6yu>)x7b1>5WW=!!L|HQp!+4v$MByBT zZlQD_bdn2w9Zz8fB+jKl$&Vn(_!1SRehNvSA$bOpSXa=ee`Yzjl$Y~+1T{<=k}V<0 z8j^h=iCq=Ubvz^~Ezy4W+C{%VjJf&x#z$64;{cvby^xmE-vwcuc8qF-mHb6Vr<=^gO0mM~ikI$Xo| zVw6|TE|7GW85zm$Y#E&sq0>`Frwux(KM6Nz{vt>+hGZ#i8IpS;>0Kwegi#7HGU~$b zU{%Cxi~OlHqu$hvS}i8@uQ2LM&8R6jhRzg7!YJ*F$Y)$fu@V`T4#6niAFR%WXSJnr z7w>d=j{vds$39|3qQnc(>G~`mRh5gV?g931uS?`crBPiD3{*dDG31g+6M0oKS`ukQn|G8<-fyLmAES}4H|%gnkWZIDo_a(z9st)2GW5jO%2XGCdKyP=a39nDphi-@g35qWXUzr}+LChi4$w|^g6%+Fm=$LH#F zjTozICP9qz-ePf;Ifz&)1Y${zn7Wmup=nNgbD)<$&MItQ8nKt4liZ;=52e4Wa){5V zSR=tnZ6H;Qb$;}VHNg(bk4BaTtf);{*E(0@T%4KR8fPpAdnKC15$8+@oZItpp3&Yo zD+o010!)uCjbl9%Hpv1g+Z>4zXW0=(#{>yAM_5{OwG=^K-I{qABRR|1wLSXnq zjUi2S0x>gf0!eCYaSW-wGjw{&tjSEKFG}c$FO)6%Vso?*ln$hd@!5|Ft2NFe16I_g z#Dvu$aCUZ+erlf*$vNx;8fQNyw9cO1+SH755tSAKpRVzxab8B9GGo(kp;Nn~)Ti+H z^)7V!%9K-$>-2c0*YEFz%h?$^@e(nLE&C31vSn<|f=;H4&h^wOQ=e7P=`O)B*5_T8 zQ$}YnLO`NSyAFU(Uzu_mpwm^N&cb=+cXIw9OsBq~wH=8+(^bTcM&=O?BT4*Or~3t$ zw9F*^;^h$iqCP~wcsjpdq~^ADG{A5*6U&TPRd=w!?2d;pzT2_5m5 zst^5j3Wh^0eg{&;VwCT%c(eFxTEL3h6n{BGWFB68yyy+#uVe^+{W;HH?F}8xoeeW| z9E+j~@k2}dYjfx%OW@4bO@vOmjLzxMsV~z{FN02^OgWE0CswAMH=&a%Q%(&ox`1;7=8Lj9R6^IM{Gd;)uY! zn6<0p%@C7H^JhGCYDLFu(s7W)49Rpzl7?h1BpE|;0d-2maPgO_5Bg3Il{J7CIL*hnO=MQdhj-3tRuWxIA;U?Vz{<;eoI;WQQ z*JIGB6&wRp%IGAZ z(_KPG{H5wce?0;eK>I+dw7Qi*h0|JdbxxH-oWF}63B!R@F`WGv-lH+x zEnr1$3Wh0-p&eVO$+(dYf#GzGVe9P9=JwQ_Hazzk0P#Mckrgy@OPRV}!b7D)e6~c1 z-_Tl|A2(vB3lHb(ddPQyR%Yp{VTnD zj7D{mJ|-K2>Pn3&XAWjWqAnw3JOrxu22lm++DN_$!zG7wt-3ApTl{n%Rl%is2c|a_yR-+jZhW z6N7`KU*sRyQg04W_`X4^y$_v~=y>_Qf}|d|zNi&5iiVEF3g-`n^EP64Z1|0x0r_)m z2Nu-2#BN?4gMVaZHB8T}P~9SPY)4uVVNbCWkxzs`ex632W$Z_TM%o6F?B~Vj*n*+b z0kV;wS@o&(>~uGcAu6Aj1jF$fLri5o{+WuzhtJ-YW9AhaA8#4A0h2gyf-0p=0Y2$3 zisM7QR_Jty_-ZDCGLMJ&~+Qrc$=MFSkM?Y0(`fEow|JkKV`>S62 zi)RXE5`Rq!;jiux{^Iu`)U5l&V;fF7sy7@?8Vf*pEicm1a-JzkhXp2n?-kA2o6{giK_LDNv5;&Ch!0-w(`K5Wttfrgo8LlUnkkB`z}eZId@ z{@GTg@ma3%DLxK%mB2^t&FIryjhl`3_c*ud34vh^$gIZ7RQnvgI>hiKRN|Y(aI(g*_*u!C5*QLC;?oxb zpH7XBFq79pn??!JGs!U@AA4L>TIWG0c7TteUI$RQh}cUwiGxZYRho5EHDbF3tf)<4 z-Fq4_&XH;iJz-t1^qt6zqO6PURetRLp+@zf(VY1Ny1HlgDx!L5an@1kCg`L}tjP#7 zRXN1D7bk-Q%yw03j^y|51sdn#^UN{Bub1#)M+I*%IGYDPJJ1jhoKWI zp(A}Thx2m44F?BOrEr#6LE=a7C(4gTP7hd7n{qa>R`amd*6~;HCWhc4-y*AQ6<TDcF*B`!B->cNpDG=;>q=|3Q!xzvnZtUGPw_aG2!T%~1U^G*1fRCn*`wR$ zm^~Huhu0y_H!ETjJk41V$?v5Ve#2}X9x`ILtuD-f#DezhEs^)jPe{)I>fLF-GiRXrAl)w z76PAi2z-(u@Hs-`xV4;5^H~xuF9rYHh{xi2mj2kYjJ4e_>J?NEPFl zkIxj1Px1J(Bm_QvA@Dh0!k3rP_iwucF+~$d+@9bAzS_?u^wr47FZ7q`=t%lB6No1(HmOrx%&)IOz10(K#DB z-DPxcg-*JR&ePCImC^Ydbh^suY`F{0(b7IXnh6Rq_LLV9Nz9XyO81oPV(BTp1kp$` z+c{VFl;Y92TlbXWD@*ARjCxcvid8us_?T&DNO~_Q&8RqZvL%q09;eD7&cng?Zzv-9 z5qpWouz1AgJHg7Gm2`)|@Oh1)?v)MG=bSlPkUSsw)GjEFq2Qx*h|iOfRsU9uhdw^t z8lU3P_~j7z^oGFaEsYPGb05$!(>0V_Tpk~#LwxWkL|&>iK3R>=z&uO2tAV{C@TuLW z{Akr@;Pat{&r^`3L*S!yh|k{#SocU*>UxSl;%8*Mh@5ES<8y4a#;|xF=n+=sB4W2&^Pfuh-1Q+4bB74)ijSU|5QuH35z9sX_Bpdg z5ebRv2@egnol-MZtnD%nzZ!O6A{u$UfHie4+!LZ*V|2UlV&z#4$L=}SJR9cs093n* zp9{YVo!GU0eY|FW1c_rv{s~F%HKJo9)`|?~s$#_u^J7#khCfXDfS75A6_)God}ms* z7$qz1x)qVB%xWdh@Ev?Zt=uXEztXDWSjU`p^fB&WhfeR+`F&93 zVoM)JU2wZwAXN-ipNDbra)GDaWtO{{M!xtJ=Q@pi@qSt#0@agpsLq|$&~XOdWZ2R= zqtolBgy9q*mcFKVWD{m89b!0-q%l&(F!Y&Or}2pycDN(VjB9*0fRx-a6IquGfls@} zhxuD}H%q~r(t(e2Lvehle=&4YWuD^ihE8`Gofo0gQ%2`A=%mZ&Y>QUZ<25VZXyr9% zKS+`#a*3B!OX=m~(8B<6AXVDSlR|iTvi5TEUeFc7%NHA7zTfildBjH$D-v6-g-&9b zpel%|TtuuI`GyAY0#_?M^X$>FWu;+!Kkrd`n~Kee}tk ztfHJf$+`y=hK1(gv~@UjmiYCdz?lL`>Onu3Cz%FG-;aYjDM;!c59*{Tc{(V$9FiU* z*K$aD4aqN=>y==x=O9V+DhVf#j`KFlF(jX`97FOY%XvGPYr{P-<{FaiA<4cI)Y%J? z)O$h6p^#+Ce9h{+&`Ez7%+(4>FJ4}w#@v?1#`Zl?@AxMoVJpssPLGyI?^fO+dl%p~ z<@>3qQ^nZp&rY+Nb#Vo(wv-z|)@p`dV}=^&3d1v+;aNy+29v$%5bXUzv$v_)yc1GY zY!ML44ssQ$R&A8dkD=oX_H{hbU65q7gf9^47`3O9z9Goohv|!rg1H`pB))M_@*E{b zu0KMO)H>opRYQ7k1qQEgDE{~!bguVX5qS@Im@9NL2RL^VIkRg~5C#5<2a_1u)S2BR z97Tq_L=Sd{@ZjdCf|>)+gALZb`kw=_w2xS^_!9+z(wi#e)oA-INHY5ceX%PfeTHN_ zb4>{9Bp^xN81(X~kX&<9P|^a4gYUMhv5ENQXeC|Z66pNc$aOU&8AEa-B)x{Mhaia? zI?q5-|I1(v--V<*D-z+4!iW4h`~k;#F;^kfu3{0upZ~n4xzU&B@m%j-p}8>yI^Qz% zWc+fL3J;fH4fhB`hdbm?ZwUVI?b8ANsLzJ9=Z3M*ftd5SLaZ2n1~Sw>>FdzAvpFQG zXM>VDNYZZ!^3<6CN!Qy!$rMO>3<;UA&z(X3kO^@^LXM3wB(qSCGo;!d3ux;CNNNqq z^^kOLEIPsj)lxFyrlWx$v+7i7CcKO%57he48f`;1Buad#nb3wq_;5rZ2@^862oo}3 z0^MaMGNE=q>2bT72eBvb1wA6igfrXozLUvJcLT9(t&f<|M{-5}f;uaL{#p%5Y!ktm zny*3ly^oN$GIckX~9sV zVmQxbQ0=@#?SM>_8%0*NUK}n|5 zDu$|$SdT`Gn3zcrOKZeHY_G04J>j!%MI@Fx7}z4JsSv2n3!-Yij8&C38b5eoxYRX; z4WQG#MUcJUhNRb!jD#e%Wl(1{B=N0+l7k^hZXJ{y4M}F3pyX6YdbbTqS|CYnFB0h~ zs?PN3ddvd9*|YVRwNIx6JfJqkr;D^ti^r(AFtfxObtZ&QuL}AUbDg}7;&cKrXQYpq zNq1fUG<4#k<4G@rq-zJknW80-^zImxtYFD?LCHgqBzF!<9%n8*KAl_ldmfV1Zb8ZG zkfe7HNrSCrHv-A~>sZ zh;zrb-}JW^#M#-u{2bty8t1mg zR9jTJsLxsy%I?hS@Bn$ z39!FMoRcAN?#u&Dchm~%>LoF9iyPtrow%SBXYV_Y`-V5L#5)2NQ~+n@Up zR6o71os%Jn8?7AETK& z_;pu5l}5gPa~btgh8^w*@_e#G^&NZWAblq*{E0kdl|uoMkBt{*7GK*rMkBA@o0@;E z>N+BSxk9X1-?_3xnMH;|;i3QAsqBzCpsx%Wa znh6Pu(ZYlUnh8nNgQImW2@^D`5q!S6Kq33{=qepzxWo3if7Pf_#W3{aPgXb_C;b$bkwfq1l#drIC2?_9i6pSAvptEC&y!<#hf5Nl$N3Qne4x(cTS8z6DA8J&}l)RV(P_4bf9( zdG(Y(74x!xrZ8p;@!$rwm;JM?KJCFaRHN{Ecn@0cAr{G6<*@Gba(4(XU!lFsToZtg znYM={yVggnfF;3D=@7#S(88%fAXN-Qzo&EwTOun1R@A2Sl=zl{GiNeplAdyEt&B~@ zdrEHz3~$jGHqB{o$NQh#Tjw_%HaQ_yPb8{;E{-Afz7L()aPev3+1ItuNlQ68MyZmC z{CfCY^&qiaG30&rPSU9ECMNW+pvrs0)QHa*Z=QEknar#`Kw4USH2;}KRbB3Fn9<%i ztGVGYF?bhI{cCAdv(QPDLG=UZ^hh~5R6Pk%U5;k#E=IlIN~7ATQ5|X6;f|o1E`h3y zo(Y6uKPFh^P(bA4A&_6Kk)MGt=Qi-RDX=*=27C#`veh*z_LhnXo(?hG5Y<9Z3#5u+ z=*NUwSK7WVU`1_8Ojr^E=Or5F;xQo=0>jtyFvKhT4GcFL2i6TNkD<~bhLeEw0HbXc z!_e>Dt290_!wz?Zhs#UgBRq6)ld9sO9eY_8d6)@-;W~{WbL|Vn%oKwpHn=>7N{1Mx zP%R9=fmAUJg@?NB-2p3VQ+W8M#(8U7$Dadqm%y2sh+$6%48JxoY_Tvr29mA~%VVf? zh+!Wv9A?zJ(imnnhQ<5xdX1r37gkKTx+(;Q4yG%LtHnp6T0H-iy90Tth2ak%Ne?ZL zq0%9S51`WDP+#_W*j*#-x(A5l&By%yUW=)vI-9VXq%m9_0>kQiYRuG1LWeNcGl;&u!k zEp#1(6(q-E2MUJ8$J4V6d_J@ASp`Y91U|I&26W;_`55Z6HkFGt+zcn4xHK3@6+_G) zVf!>&rU$I3O_}NSX;gXL!Ayc`twwbi6bhd&Cqkflxq<2~`*G!EiTpYBftCK4uaO>okVN&)U)B`Em;BwctRT5k37YDntKtW>OoPP~lHE6_>LkdkF} zPSu${eRY#>`i<)owZ9T z)5kz8+3F)!Vl_kQ5W^I*n~D|d7yiui8jT??pXMdOFr_gp&iURD_&jCcGsePa8%TOW z;G=Yi&;BF7>9g$EV2K;qJalq#V}-^rZtKV$Wg#%Ejf<_~BibJ{hSPHI4-c#WPXdOq zE6Q_B=@7#c>^fKKIbWY+Yc)Q_NBo5$@QH`O=R=K8^X%sKnP-_%)p1S*KIstnC>`Rn z_8Z4%T?l-x34u>41U_GAeAujutv=WWN$Se-{82hyA2b6LO09H^>I;ESCImj25cmwj z0){%XJAHIxK6%i#>w!i-iuwL6F{u8`+=$Z9a{z>>@890{Fxn73(p z^`XCJ4R@SIuYCDaF@O1Uw%8D9*BUOW8cF8!aqUwJKE2}cLyym9P zIqkV?tiL8ckA=X;(;+_SXnCp9_$<`;6rZ=e83LcK5co6)@M)O~V1k!H(at{rpIEj$ zK1zr9yn%D-Z+7M1*;xAEk~~l3=EjROhQ-gR*M`6_8v?^Ka~R@{TNZ@Q2jtl5@)#-| zVt6WgKPF6pR56bEaV(=T>n-a&CYYdC`)6YU+*cSrBOEiY_$L-yenwz^8uj(}D z0E|0Nm&Z`)5W|P~CJuA7Z^b+opf-ta$dS31`& zptuE_VkEXJ9im+i=ys|1hj(_^mxlscBr zFJRkP=iU%?eqPsk-Wd&`fvzwML288u<6fN$Gr?}xBj|3MtIYo2ij5Bb4DCJb)8c0( zrx~&Tn{`fwsPkvK&PN}Atb*9Dv2w||;Hs)~X|Cql_0=wpbF9kj|E(BT z{gJ446X8$2HC>jO%+}jVjIwzsF=|o?KC|lNY9<7RHRukxYxK*Bn2{EFk^w4W7aFPk zJM%e<=HY1M0t8KS7F%fy5dV7P_G@Wg{A7U1D8 zfMK@2IEJj?(2RS)1$2z^6V0 zKI1h$Dq=Uzn=g|K&+b>iCq2G6KC>D-P9KH7njV(VI+crvMG>R&t_D_WJ|-(vVm-3V zK#M!lm*3Q=?q=)weR+NeRFff4JzAs6F=cvl8~!ylG|m&ln@#}h;>A(btn+ldcnFFQ zm+anerCB#{yYl13f)e=X`H%KRw^3i&;h54D0>kfV44Ly#AZDhWAxXED$581I!$x#l z7!RaMV>nr3Sp4j`s|1Fu8u7`7z~@4Z&&;N#S$I*Q(Qh5+dqiw@aePwjwn(-3M^w~o zHicXX$;HFYg~WNdL|V2h7yX#80Vl7mvvIY;$aOPv#c-5&zC`s%r0PRod;)p76*JQo zGB~5Ab#(AIhJRkkh2B5!N6{(T7v?;I`6Y@j)4ssKnRnHLdR!M?juT=)P5!_nmVWXR zK)}o4ymvQ7Be*nQAZ-MlLjW+$p`61DXgJQc(4j{#9fc0Jh_0CqfanU8!+W5jkzHVm z+Gd&podr0;nnojkF%SBClJHFqEit;->Vki2mIwtAjK>X756jGQ`o;u2|>$5j(ZU+0jnQab*;CB23CbP_6@*LKg=#8Wheh5CikIY=X4 zRA=%j8KXXV_^5Urw6K&8C^hnwQ%+&;b<& z{7br@t~EjSwHQ|~({c4%(6QCnm($Q!eOZ{4Gs7+R<&6Np>dT{12&03U*q2)&Qhgaj zDv;Qh)2NT?%bym|@K=dT^krsZJm^L(IBSkZmf$a$olDZ+*XjP=)H=HrC((fgSLt6F zug9^RTz=X5Px@B^nNy=7MG?3rgav^2Nzw$@QB@SF2HDqkQG=acpjoUek08OOXVXjdHqg2LIW zrd1Mg?t!!%&KGH%af_#8*NHgCQ3ZuFJ!dE4+#LevJv7d#j^?@3=j`6z+%_lh=9hIC z(NzD673^QM{4b8DDK(xVG$0K<5K#cXUT<nwvUWw1hg_Kqq}ha1`DLlBA(? zFeI50<1)+XfKGQAoeXrkO6b^(It2Lc$l`VSPa;VYxxBVVYIT0ukh92MJu-gRid!<8 zr?*pFEA$-%nc?%D)#OMtG7^6|CYg!s{YbO-6kKAs-BjQn*m9y~?~BTbd0HHaZiXQ> z!=DX&?Aah0-iLgpMxx!Ja}sp$h!X02YMvFf%h3wAxA@WKJlL{lGaRiJLY)XlBX+x4 z5_?J?a;u)gulCr9J*BrqPhk#@R+I2gjaI#o(7U-LQR@WVn=no2Y-yjKcgFfl@X*2I z2@$7wZ+Zhd8K`;u@l1RKN!pNnL5W`us)e*!T%nQ6wG$+LhR)%Tbj_0 zs1YbDm;MvZr;*LG9+{LYz~2%+cW+mo&jUdW#pinDw$Fmd=Ry-=eHRC14+2r8szG%rr=3!ZiGFPY#}!S1^Amb zH|RAp$!bO~#EKi{aoM9!2OK9py%b_}+WdsJUy4R4pB5is6DX_P2-^+#l`o2qut~tC zd~s8LO}u^jB3{B5g7bMAXJ-3u+{^6$kv^CSfipA0WMNRy z)Xq!D`g4sl`=FiJFH#|J{&NVNzt%XfvJF8(oKqoizEk6zYQ}8CdVA=cIO3{@bMcjd z3!&2^I&8;>Oy7I^=Vv1fQ9SF+72AiYmbtV>nUBC5bIB zYR==-vtdSR&-&bi1H1V6Y;$Mk9G`V4B|rHpj@HRVelHiT+rU?vbsNNFR#0FB@vmDg z*Q^629J@|r-QF$2x*tQQaAdmxKms(hYj^y$6B(5)!zi*P1zsz*OhqB~XhkO6irIx? z!Y#HTNXUeq5KNel;uRBYhD(&_*8Uo8*{Ybo{CgPsv@Oe&z9TV?LuejwE}&yYq?oM) z3Gs0bFFxCmUhuK*1=HKw@R5%8vr=;9F#M_Je0%VS-X`b!kXy}~Y>rWpoL{XuKNAuR+j)tc z=aUPH^Y7#xRlD?QeF>jZi_s4+xh&548Le&2&>M^nsMd(!_q^+a6WiL3@-Et)TRi%S z-yKhfzWC<-zFDli-&ck3`%~YSSjWg`*PER$hH_M_EAICg^vd~tk8eq=gVDSh2n60) z_6`Wk%I~jJWF`7N8N%;tLioK-`+ZjPtftgi4NWbl=f*w9`OZNYr9=2#>Co@IZiNa4 zQl`=8v!F*pu(Js)Cd82onF2}1g2RH`!0acV z8&koJ`VibuI{zJR#A4;S!S9iAc2w+%14e}<%t8!TG2xK_dbv$<{rIHG><865N>8G1I%FB)*kg1(p#+<)U{EMNtT0fmG>8QWq=FmfjLHKWF%6l4k{i8hxOVARaHjqOzB1w03;8y6|i@!FG>R#1d?#pz>2*tlZqRk7PLifBtmeb7S{sQ zS$}bEyphL^)Qmap_(GND#slDnb6)ZIGb7ciMl`6QT0SeX$kivgyf*wElEe@Eay-eq z)Hy#W`3EHN3xbmBgE6l&B-=p}yD+FT7LxeFpyWtMoJB!NGbD*01tn)g(!Dq+>4GGE zRZwyZB(bZ5lKUZXt_eyWha`DzQ1T~8;x{Ns?#VlaAvu3To#Tx55RgB1-{IMWndCZ1 zn7%V9CVl5ivk>e_-*GXEQ?tP=r1gfLjPGfgr9>7*aNWVs;ST%PjI*SF&D#@exmA`D zB*&sTs((FaFV7(Z``78Ze+?d4D6TR-$IJ9D#^-xbCl#NUW6w_PgXf?=pgnw%-l^Di zVMb+iL+aqKo!C#8qm!zBdJ3%CiTyMkqMs&pKV1WSVn#s{!`YGjm5N!d9f8{`eC&$@!OL4N2scL+0?aic@fzYNJ1kYu$)BEKq`XuNR?f5P60 z!-c&jD_Nwl_X*8j>ew?3GV{%!2s2MWg^$Rq5q448ZMP9-K3t&IikWlwmYHWS_-7|F zlW*5975T|buEr~7;u1-LL}vaASLGEmw?T>a%z;-Bno(25OndZTv1I1g=uL{5_Z6_D z&X>DGFmoKBRU^niST*Y-%-m5kbLRBUIgP<(6x{dj$?(nS(#+futc#71*$(aG+=1rk zYYM6ya_kRVIL^sN+a!u6A!VL^^H822+(zoN(6GZDx!Tn^T)0{wV*A$}KGR(F<{?&D z@3L8}!n)!qv~%JS#DZo`8$dC;)B$Tb)9|R3le2A-Fn6b9HyK0Dq5M z9R{B%t}Xzr2U~jN>TI;F99Qo}ZpGCt8ol5imL$AV?eGr;p*Wzt`>}< zakMG>cxkR41)bjCNEFo((#u8Ur{$>YSD<3d^ykKlH0waEyd)9Q!D%v_i29J3_Bk3^ zcjx26x+&lUhQj;=eGN(a*`Q?LMD#dAvMD6l=Yu-iK+^O3pkycNydV{{A@z5<8Z$zo*d>)!(szQy_7+vp+CY{k+gkh{1GHELYPU0n@O0N)y%Z#Ey7IQipVIl5Py%%e56;H$yqXenU~O@hcWo5QD#bk zS}SH&%@<~(Vg(XM8NTVE6f-%>q-F~19!4p&Y9=!3YLHDas-|Fl$f#5ZM)6r`#VAG^ zWC|o<)T5eFXEt@r#@z=2LirLWS%Og#*^~~sF*aaDZC08;Q%4AY0C-*!{ybZPKg>dI z?DC#);|lEA=W&E=(9Xh*ALdz7yWZ-Y<_4w^1roWD48e^ZT7(<7p%lAskQ>)y1y6C~ z_XRAe`D!KvH@Y=9>QN2~4kY2mI{|LAcg~qLEx-+`Pnd{t+2=-~m~bX;%0(`x{v{a) znd>{qmC_R7k1B`!c@n;01j(gJ^XJqN!k@aF5r0egvqtl0B#zi45&5(7ec{jlAzxhn>iuS(-nOn~w0+$)Bz={Nbo~32LE6J&>e8V*FXHIkpYf{} zjd}(81j;23TZRb_2Ni4=V^mKF9`a~ z>5yZLhi0lY#};wQPYrXpv+`EyyilZHgwL1#ML?|2ZJa2=^ujS zTm>CHBhqs%RUi7I4s#N-5B86Tc0ZM~fQ2K3hjFhR!9T*oftYW&IG~==vdbb5>;5V{ zydI~<#{`Q}+wgniuEN8M3&sTU@JP+WKcnro8hO}<$^cluJ`m(3#yWhgyKJnRb-HkM zOW4BnIxjKS-HIxxSck>f0*QR)H*FQ4@lvk>iLtIe1fO}uQ1Lm5a?HLXWA0&^&kei) z-`U(gt0C~nuyYd_)h8S)P#cMLN{1N6ts2`LV_nR`WIkUj3^xyZWeUeuj}VU8+!2nA z(;V}nnN=rp?AM& zjruhz{uGLJEb`~j(LVKT{1%dw#p8BU{c0r zl-UDVnlS3+5yB`;GxCx!YNBS;NNAWdG&w_z%Xw}DkN6fyWZm+A2xCL*0pHXk(nkM%t1ya{w<8!9##u8>ViFl zQEwOY4jEOGmN<4ji?$LOl@7tEXEdXVpBJ2)5=Nbh`q=F!qt3$+S&mWJ5R9q^hAP%A zM4McrT@vf=Ko!)Se@5G!Iqfq>9iLNE5}aQMTM8nme9+aDnU^!Yw5gb#9g zHB7%Qb8J1^@p2K>J>cRUjCNESd9Gsv5ZH=&q(B!?_mB0K@iNDzcc7zI7!I}#LBgI=*DgI} z1hj2-k}ZGLY+-43A~X9mGoP^)AmRAc7b4oM)X`=Ia^>}0e}&-_&CIqrGxL}UiDy67 zTYUTy9x5GjV^6fO@Mx7mX{dVtBY=O0K%eGM45gV#=20UxR~Z4!BwSstxmq|%kcXK~ zC5nC?&40_KS1KCxv%Q3ezd{Z>k%#yHPE{nZkk31X+9mT`pb|H|E zheskM35H8F)`%5&KO3vhi1fplFrhH($liDv_A>fys#%BA zio7Ia=K1+A353MURr_vnCN$Nng1hkpbMQhF#tEhj{waw>EmaQvwK)!u>$zn6 zE0#OxZ-tt-$a{c=nUOlX9RK>@IPKHoQEOERpR!uYr=4e=KQw^ij^3( z=3gRF>oAmRC;B~A#_x<;hw7*`$}R*FMy&(SlK%B5Y}uS9f8zL8E^6Hw6RsAIT8R)* zYlV(lEvO+32a<60M9tNvIr)ncka#)j-!INp;i1wY5BZ)zv+cseEJ|Z73e6Ay6CNfs z4~e9iWb~XEf`_X^@UUZRiM`h&7@Al1JE-%P2^6=4x!o$U8h5bG9FcX4@ z9h!&s>I#b@55GEFcvx-uf;!~k@%UGchwa15^DrHPhqb7x8a)%R4#R;YJUmdqVK=a?L}#?JS2ptU6bC*jki_GeYq2fDyvO)hyad zJe%ka!Na8H;Z&4?Oo1dkyvg99K|_Z;WR~=Y<$0)d$U}}hh0i9kD2uiDe;W_GG!N@g znwf-$r-tBRZwMYXZ7)200z8bF#<+(D{cb&a< zKq-ocr=KT0{6SG3o&|g5;$bx~1U=xdCkxsl4|_xKaAgP{uF^bg#GM!ot#hU|%$Pg7 zNl!k$n23J5wmc7&4(rUdOcQE59&+5y)An47#@I5wi74mpNTzLew`}>SMQybGAkJr(zWU+KK16w*eLvqxx(GNXWx@2p%Rh4_6`=8W2drjpU!n zANXCrd5Jb*fRg;U;f!kKXK6<6GZlp~K0rrF#wL-)kc?p;G9-Kd%+(TqrJ|)@)=#yp zw^-JDE$h!()>Hkmp0uo|EbD76>+e|B=l9Eci)B4+Szm8ichQG@U--zU`(?e&vcAx= zPCA)>-^8-MuwT}Bj&GDaw#%|EPpWBV?!C2Ty{li=J1y%=EbDx8mr=vL>n!U_`el8- zWj$kAA7)vvx2$LSW&K>s`U=Z>%(A|pWqn1ztfwvOeAkD8^O!oz`b5imcfYJJu&l4N ztk+xC`3^|GhJKG**)QvSi-^(Ev02OdILrDJ%X+q7))!gUS6kNOmi6yh)>rq-dY5Ir z$FeTh7IOW4hGo5{U)Ha&tgo@G^PXbEJA3oJ=BD4*^vn7Z%X+V6ozJ_N*7>H#N?2cJ zSzl{ePg>T~mi69#wVi8dM!UxLS=L)D>sMIT*Y?Z$a?AR9%X-SPew}5#uV2&{>LGpp>jtn-~J1{20Cw5&g5Ss&Oh>knDh zhgsIUEbEV2)@%D^eWhhRW?5fiSzm2gAJ#AHt1RohGulKxV_ARMvL5S~^{i#R-m<>J zvi_E3y{=!@pRlZtv#fVp*4J9r>-%MWwPihSSzl>c|14+Szk}idy`C_m@$_b#00dIY z?8aFX<<7`vbhgZ$eY)c$bCJ!TrNpHbu$iA^tw5h47ShQ-XDpnWo?N3AlN{ziMx_UCwj=i|rbd6@L}DmM!PYlf=u#b@q8yxDnwBs+p{I z{YU5T6QyK*{+`G&L3wA)Y8W&kz}^|_9Cnhhx2#XHtYm}Py5WqpEWeSW{J*ICwwS=PHO>!U2|>3&%sX<4tetS_{zf7`OY zuwT|=mi2*_^|WREpAsSUz35&2vc9!t-Lb6Cx2%6)SzppG>%%PT>t%G1*gGa=S%2EH zp6QqM%`EGEmh~3P`bx|CihfzIwXCnTtS2q&%Ps5O{j$D+Wxdz3KGm{*jb(jhzpM|m ztgo@GCoJn}%X+q7)?Lebk7a$5Wxd6+zPex59n1P^%X-|hp2%7E=XH}y%?K1cKFSct;kJP#Ne0A(p ziL1qR_L(Hyi102KGs(5lvvu3&cHsHTMtuLVy*+RnN8(UiH}`xREBcM*8PJJg+6;64 znMEfgwd>?+sg2=ettqwYA2;ZIGs*oMUE9l(3&roN+#2`$Vc7Mr!?N~f;dxat0;Xt`ITKJh+UK`zGkz8BHBLf8zuZ?zz+SFDaeqQcun)_ z9pswkb9qPAF0W~(LR`}vh-ZOw_n{G~ToV4=r1^sp$T}z3{M*E&smUY)tMe;HY3G;m@)V{28P9j3c$)wFu(J`;;#bn0Q$sm{l$XeDUjs#9iQ{6 zKE$v--%7N(!XkSQ|Xuv~Ws$bx4C@)_Oj%SysaoSpEc^^Wk(-JByMc=9S zB*o_djCBWv@Yk^im-pAB+F##;^}_y=I!7bNvWiBk)Of){>93UbSMk1+2;r}x{>WDF zy#J?k^Ph(CB&bumgfC>SrF6(2&H>DTS1EjCtX!eTN`R1;L0?*!7xY#pi52A;!vXJyyn1VH6xl5)-!1acs`ay!b3JA>n-q zB^VQ?<|NF8a+98^Qs-!dwKG$tIL}h)uNieR zo(?w+`FrG8cNvb68z*aS6o}#eJR$2NkNYloOCT)t;U9eqiGK}9&wJ%Occ1B)ypWIj zZjG_?k;RaVVL66mZ@!Pnm-rEBAI+Agvu5&@7rWyI>*m?hk=09gV|0lBP0g$d-kC2e z1Ja5D{nlz%A)Wk|7SLgZ<{c#UVU(zb#8zDJ|5WxhFqS1(c{i(w7&}qMRub6|n>O0O zCeBW}-~2GfvE9G3({^`HPj}DE#$lBsuO`-WCAP-dC z-*5$-eJo91o52ck%^_4)3L2X97P;O}e7--V`C+2LAJtN7`UxOIKBY5dkxw(tRKVv~fsnT- zI6nlUb@CKyppRA2QmCAY-kSXQ;)(OD?EiKrKyXehPBxl~7MLh?a zBjkoctc|?@pEx{z+L~AXE5R*x`2r(WAqEpj@gC{w$COzF!c> zUj;H$KJ!n2TtP}v)?Y`@KK5RVay5Y5SEaub$U6>0nb(2rD*I^xIZ`e7Pl%6dWX1cU4(`4CLv*7nc4vuY$=FVPAd{$ng(`G?#(g{h<&sL}PE`7d<}< zWT;x_p96WQTJU2))|ChNB#>`W68;Y$FDno5TR>hs8ayMDtx?S-%M6o-ZqI4)`_EmsFenE@a=v;pLyYKwIs?p%S$d<)3BqWNAR zm>5LG827J$TvEt?0ncoTIp6V&j0C}ML`}05^Dw=-_WL;_O zzW_N>HT?x3_Z6Q%B0jzrs9^Lr-iIlP@0EnS6-e}fP{K<?45NksEM0-C$3U;H;hR9T+~vaUG)Hqj_M`~x5lELY+D*RXx`w+>w` z*sI57Z#)H>Syk3~AWx{)nFVs_X~3sN(G~4QuY+b^<>~^V=~vP2-vva^i2gN@yQ(cd z3FJ`K>*s(_|10?X8jyW&nN-RHAeU6>Uj}kUST7rz}khM$laG@*sQkHXug|c?Xb1q!i=n z7LcK$Nq~G&A$ve(UkJQ(mQr?eBUDx{;q;%T5;|Z=jTH{FAxm`7C*+d zXh3FFiyr{ZG5ArPq+Txpp})eOk1NRMfjm&P_(LGG%7?$ci8fU|<#8ZiTnHt67m$13 zA-mgB`g?&u)j^xaKpuE&A<3Qx5~)?~hk;C~(mxI4;bX4ul3jKUDkk^7=fxH{Y8RauOK<+9&)WHss3n2ePy@1^J8Z(Gl_c6L2 zs&+pD%|lhwPZ6K_P^+&1xu;s^FMtdc^42zTDLz+#94nbqAk$tR%se?t{6_X0QE z&}@4eR3-WzAd#B$-vx50+Uuu)+*74L0CGGGYw>@8Y%2@@IxG?IJ|5D{0(n{GdK$=Q zm1mg|b z6zyO$buxMf&pyDc+)tu0;q#zHAM*6vv;K}e53|Iy_?skAjNMCjV^G8)+~u|9Ejrqm z4KNKDjpEjB(vIY6)yL0fNoP39&KlE?N9i7w7H6aJPEAmiJ0?%aVM#MH!U@Ez?| z3l-XdVI-Le!FE!D2g7l0hOM5-2OYFbHyxU^H|$1LJWBelK^x|f-brjS+AtZJ9sJ8< zWJ>Q6mBr~m%RhcWJouI`A2SPP06xGC+ zU~Z@F(QYNB-$V`Len08vb!n`c+7zpMm1#H5O}Ck40y?3nrBIB@(9V*!2?>h!RY@Ew z5|xEHlrF;rr2xgL&=t|M^%RXpki;~Kve+jVk8Dl0Vnj|}EXl2ETup)!wGM&=-K?1j zl589AkZ0(`?IdasZufiXJ{`(Mw$`AB*+2D#?k$tSm`rDoncahChWP+L%k^y2KA+f3 zz(u68eTo~`8sXVA&tiQ0*c$oF%!QD&Y~{irv~q{omJ!y}s3uRkNo!OH59g2!j96ou zn|8XBj^Zv=3OsE8umXy+j57 zIDvzuIDrS-g-99d$+fMOKj^Z81YOnv&SH5jVUm3u5X#d*-wfjebojRA?qNjZ(b8!4 zqGuF&d?Iv(kc$Xe&5AT}&!!jePo%twS6j6uoCN$WHw__kncXlDYT0 zr-gYP2kp>83eV9M=1KPkSra|5he-tvr&(7PW_39VTMJVwjO)o9lh9|M$Yv6uFj9kN z$VZaPGp>s7t7bu`ElucxOs+>)vsp`+kTvM~)vW9W%wBA0(mc6M{g741!TF6zHiZ|8 zDoJjb@)j_WqP{6z{z)z5(?{LOwF`(QNjR~MC2!aVL)A#?B&KyO>13IxOiSRDnI+!D3=skQ1tY7845^D^GC5Cr|}G`2?z< zBL`G*51w<-Pg`_ojTRBX45{Q1tb2u<9c7rxbyBbFdvXhNM}0M|YxvOl>2f$hPL;>&@3hpf zhI`TCr{Nwp`)TNlwm&WPtC78A1*a*(XVK-H!X82o9axT?h?E%!>_(vqeK@F960u5D zEBnIrIq&1=3e~)B@Cs6t!zA|}OkGbRJB7<6ZuLIX4YqnH42p9E#ei6oI6>)>*A7L6 zdIYXfx+FY8(mJI&AtyD6O^4D;zT8*424_D}!dVL?j7Q61w`M`|D8iyy9z}^Yj#$H^ z2n)M;6eU=SjX_(!ik8IGVjj_t*0AMs4V6l{r4*a6YMKjzY z3gL!6SVZlXy~4gc?%IvSlB;HPrk1u*EmW4|6(Ba>S3emkB*1tPFTFo-+v%8M;Pnw$>o41ofH8wQ<}ZrFXDVfXUz0 zP6ztU%{8243Jc}=u0jw!!1e|LDD|?hY^|HU=L~is!0cOUs|S)z>?0uL%#k*fc|Nkj z7R=H0Lpfl12u0NwNuhi*;0l-2i zvRQh1YcdyG&iTm{VTBN-JF!l~bky2Kd}e1dJ8BXN?n8$OqM&3~b@eAQUpH>RS~9L6 z+)I)T2VF6qPTb;P+6kOKdRnVj@%*mA9 zyeWx+>1Bw$Vlb{ZJ&_xW))A({W@g&-PLhM0$`Ma&2UhUHytz4FtN*$p*XAeJ$*}{? z>S;Kh#LJrQ#Xw0b2(MnkNGw1*sX)t%LQr%_tL+uI;W$g_OEac59>G1<%CUvm zOP=x&fE@GYTI13w=;oNNT7+}jY;$e401>Z0NU@8U@5b=dTnCE%NYdKoHDi4}{e%_K zFy^53l?6L=UYXliHFH~A7%nbE49~4C60o#(eQs;XT)#0XMG{!Cly9dy#-0xiV%A*q z-2`uLhyh@;UhiOXHlg5cP8qUfw5j(AW#V(EV%azqRb?7gE1n&~MG$EQt8DM%F+@+Z zx0gl;@tFyDV*+kVQ!J`n8zsovyD8^(_{;?QG9PlI6($UpIWTCmTc1%t8Dp>z&EhHvEbABLC7Rm8|ss$Z3dubd)Yn71{npj<6tQ(q@asaELb zysJ&%{-p$wFo4g=pk!52_OFf)&828;knHq?!D@}X(+bZb6ut>RcL|b-|cHLfGjOuE)L5GA@XPuU(Z-6lHPMy@d0 zTwZyvxpB?hT%Fr8OABUs6|b6d6&Z|21X}NWr8=TiAy-v4NpY#dkAWN4f(MF1;~-IC zY0mY_AjcUL6gx`sJ-D!Q3d(=|@X z&&kJ~(`!j=z(3mX+PO#6*4M(UT#G81t4+Z{yK+%D9=k_=Xl|ns@CeW!*DWG5a6|>_1h70N7cw3;%#~}Csw}DIc7_8N=x$a1Lg3gV zYS!ba1^-yNzGd?60ILuQbRmtP;eaAvG&8Y4KiRPW4vAqcmSns{%5gLWj}$%6Y2T6U zVPY~JhQlHZ%MGkq`=gnQLZ6RuV)HqK6?U_s5K%xpt0+Cb^w->SN(RS zZYM=`&1ESrOy&_5CsUVeGw13A?xk%r=ywlJ5}ML6_TmsKQPWI1viyTu`$iLe$neK* zQ59=(U#w*mke3+IK`UmHQlQEetkF^ysW7S9kr#*~C4b&wN6E|YZW80j^={mbdvwy3 z9rb~Y6}W&j?l;B_T67DgBwRY%h%95A)aHe_eWp`+QImtZ0e7C>Vicf+3Oo~J#o$f{ z^rGDZ{(&=4w5(3)R9w_T9Mg1LJ9O}Z%SiSS!9(lh#8)0@oEycUwZ|n%9ITO(Y$wGu zvX4M1hEI%RgyVQsQbtN9XWxRNh%?IRcH<%9@;THSx6zRb(L@*2afC68+QF@3UDwlz zTmp_H8%|_kf&)LmQ>zx(%I*~%4Wm1eBK|MWbZ|J!9V(&S0~&@Y@=cQ##X~KU-Vn!jan6hZYlyeg(XPQLNkhA9w-HqwP1kBy;xVI+ zJ>_XlMzkZOkg+GfsL?56b6|G)h;*2Lui?>f(<9swIj>*w}Tp*?$>`@8P zB&yuTk=Slqi1LFzY}QxJcGm6yN3Q(oK;|YXndGt$#R=hn1lvfg7e2EalDh;Ywd3Ta zb^uRNT$h&!@dB2}W*xJh>t^HXO~0p5NnD)Unv3W-EX93jutMu+*wP^%4--KO3PJZm z*OuRKTg5Nz^Yk6fcu2=1-4k_6^qZl3=2mvx(Bc>Y?9&+S<$fbqPQOtXU#8T{qU1Df znM4zo!g$prac3yUy3usVfpzkI>Rl;txdNvvI%u?=CgRWfS&BZ zI2@~_-zXkkx*OxPFbcEka)`88mBtKN*P4t#HWuFgZa_~n7hPd|JuH?bw2mVqO8YZN zYQdRNucdR`x8Zn0h+b8(SlAVMq*A*FPQTAznx39EZ@)N=84G+X^#JbvyuA_0wkM@f zWiinn1sQ6=nL5fw9e6Hc(MLGR-Nud>M2K4SN)K8Gn>82Q6Sa|lATNgp5(YS4LP92b za7=t{0um>^WN4fZvx7e3v9O8b5q1q{H)JqZw7bLHCW7u$Z-JKODNo|8wObzg*O&2@ zhk1J8Dx&rrRLBy#Z4PtfaTCiYOq~!NhMKu8Bg5RgLo_B0O`Vk33m7AIP3764tu^5H zQFtIa5R+_TM8%krbRrt9Sj?Hw>u3VQ6JJcgF{i^s zII$-K%;lB!s1|iICThtW%#dkIlLU@NEw8ODZJ70qtBcnWIt9ldC`H*<zksiQ-4N71tjk$_TlC#g8 z`P5*Jye5diStj5<8zl5+Anb5Xf>Efj1`o5z25k#3!Ae2Mp&>^cZsmBMRLG;f}28`@wJo-)as zXLu7DgS?FVxA18T?9%2~!ErAunu;+V!pm5(QbUi%5r3xCgAw@I7%f>gp3b|Fb+|8V z@har%ZTED<(}!Gw9SsXt5b&tXbK<@IKrFW*QJ_Ulo$+#7J&XcyPv8K1(1RxYQyU{| zt`Hh)E4wtt&`@qxmN&O>eT|*B!#TDot9?70SOt%~cqy5)y8+bTb#8c3n*(n#P*h7+ z%LrVMY03)$^fDctAHW&R{Y}9j>@Z2sUAky+?rxO!5^P;ynN07}MYr+ZDiw<=P#4NL->Tgidw z*v^x}^j03ZWO;+g7<2pL`GP^*ZhHngBUclUrnfU($JAvpTPvIXt$8f|$L+zBth6WT zy(Kb;8<<$qGBT*fWlaCqm#oqwqaNoE*64l#TUFY>v~-sT*<2eh!s30}YT^RFPpCO9 z?ISut4Az%|vX}Fl`lV@1xObbMDlHi;*r+bv43>cv)4p` z*^rLzVY{-mM}@j4zUHTRyiL!$SU{9Ws!&LQw?-(|)-iZrw2z2b!4L1AjNBpF0<8s^ zNrqq-&JbD6I3YPn4tp0&7)&Z?87M#RlmX_m&uAg3+=5`sM}4wAS?-!eY&PNUh|)8? z!wqLacQZUU#!%T~x=J6XxRm9PactW@j50Lu9eyA#au)^vTG*7HBoFX5FyzS7;6?-7 zoCI4iW?q7EB%a$vfL%pH{KxPcwjd!XZHaWin|iNQCv7wX-2TLu!7dP)ee8w;1+Hyp4X!zt zfkBVPT4(E(LoLopz+H{$Gkx?R$_cUdKdmw+`M&F~Nzu*TzXk8>Y4H zsd&AQ%!h?by>MKVHVxiRl|oG1%Xi?1v3F5qm3uEsJ}@X`f*2EC>XU+&^L06gHOMaG zPM&d=tdqKV(#O3TD+=82#?tC@<3)cczuna-y^_h9>Ae@XNgY~jjYlYNp_OVJczsvn zYELRs9_fvhCvXRmSZ3>|<;-1;6#6Ym+j8O1?4&p$Z?x6T(e1H%7$?ydCIs-}BQ%2C zsKa7}r_tF)Cb0DlEiXvB7d``RmpiY0--ec|0hOw@G#;O=E>2Ek{$lVUC2!19^;Npf zgPi!*;3iI_Ex>`0^-gX8Sv3~^1I~R&F?Det!c@6LC1yBCx+6f&x6q`gJIdRL#M6cn z?$S|N%jZhPFr`4g>&P{~L~Lxwtc-6=rOc-|6DRs~@*tcpca=H73Yd=vb@CNeQ|FAh zJnb{&WfdGwWEo3#<_*Fbs@Fofi!tY-)ER%4tCUb2^1^uNRtieBh=7(3F{)%ep|V~S z);>aHLcC1)+7v~BobuU!(%}WV{I^ok;N5uVFo)hexe_&Dy};(n=V&CUT#UM}K>C*$ z4W=)9l`)1lLMX(=pV|L zCAx5$d*)naKS}fi8znruz3LxoGXLoToBo z8E4hS&P2Dt@>bOsv0C-IW=Wc2{-ejc5}CVd#Ct+1RN`7tz~s(j?Yc5#*eSNIzn`wV zDohZ=USZ;e;BUBif%-PFb zh~A76Pj%A%u%mHC8@_}r%JN6Tm_+;0nq}UE(S#Soq4nAOt6jO(&Z2_%OjhFo%Ini& zaV}$ixLo`la6_Ps# zR5CW|<*w_B1)tiA#Q%sFv2zLXZI!9E)DP`Ib8i=c=Z4OFG$uR}%}G@&M^(ZVrBh9@ z#X~c{;sRdgqP?aFf=0DLv2u9MvE;1UyK?;)FO0J|zwc|PEsg25OYwb`(`Y?VdGow> zf)qAWg@>9;QxmvF!q&jA9DF8>4}LqyRk&mm#X3-XewMku%|rumA#_JL)0G>LUd;^V zTHG?w4Tdeec8xxn?gZVC$4Chom1HY>UC-5Dt`QVs=bq=?RF^`$@>+|Z7f?yda?%ew zhUNK>61iAtmt<0n;~SPINGe>!Nm?dVKw(;b<^#=;gz!TgKXc?I0jkT9Q&y=wb+<1I zp{sQfh{w6FA$ATWr|m&ygOwQ)GV_EH9>(IcL$9Aq-(T&H5G{exaD7G=W1@v7&f<_agSDk!Q- zDmRihc`l|fn()1zpc9aj@so84ZI*m-ec0L_Ntbq;xY@xn=rvxQ_Yp4gMY7r@oh=5l z_tFN33xRS71J1_>EM;cR2TnQqu5>1?(=D$35QVs58KwX$ErOj0a)xn1vgR;)bA5f<)kotxCHz0 zT+Dx*K77yPb+}Yr#c!=PXk>=x=#gij^9O8A6h*?}3<)B+<_|*EBr~0zz{Spk{+~fxi#$KOHYPeO}UV8%B%043A&r_YSo}in8$A;d1Z1DAz!w z)!ibVs^Z-RLLgL01>31I;dbNvbdy zAZlWH^!(K2l|CwypqjO2iM6k=ZU$f9($s&kc0cW;2#Px#RvFxI7hzcz6P6xtAudN~$L_y%%UgRUKR1zpAU`4*fazSp?sxuBM0=^Uh^Z)(U-uuj%%(S5Q z-uM5!&(nF5bN0ttYp=cb+TVMxGymK^tIV=2AO1&2Evp}I{zCHnh)0QKP5i{>iPl3C zem1SYr1@vl7A#$Mb)fyKD=)q3!pj4TFTCQ4E2DvnE)HB3yCSgcia_}EvjUf2x#Z#_ ztE(%6n)ISSPM%QbeC1s8KcV`%^A3Q2LUqS^Q{}ztyc&70Jg*Y(v);Z=!t0#t&OHCmwE< z?qykbP&$@XUxNq#EvpOJR_;>E8b>#N=54(>Q3(@aWmX$N6_R-s`c=rtVb#`v-?E0k zGtp`x!GVd^92QFZL~Gk&4A8&lCR&RoSk`m@S!Fevup;l4SE{U#FsdWhPqc% zLe-WP#QPw;JwLz=9NDe_(=!l(yjn-%eInkTUx@UUDY#b|g}exlg!lYHgllM6e95Jj z6=U8vA|C8nT}9xoy85cch!Pn?)>44i7lXU_vMT}j;XVL{?5$e7dkf%BMCkvMzis?w z9(k$4$_!pI-pV|1As+W!XIYuOzv{Cx^C#hvt}L}OW#6i_GUuOFVr5=A3bF4z2Jc^P z2ipFBLf9d{1V~?`+{&ESg2$m3l!4yM2zx9I?hKZ#KYn;5>vi-Vfl# z58!c74bqtR6GS|87D%1Y0P=sF1K{#o5Y~P(T-n!v@x9Xk*G*pLko@uF^qBL=-*V)r z{!w^OdK9jI9EL~occA>zPCS18ZQyQBfav5^z+Jxra6ftqu5nCq8cEH$9j<$xhU=p9 zK`(U$2vi&kUKUeKM^X?^e*o8QuYt;jGm-Oi$HR3jal1|!XJw}U7-*l*0<9zkQmcQ3 z$JZXg_gZcKfvRhvk?|O7Z`tO2E8x-7Ovl&jzcli=ETJUDf} ziP)Fhfp#IYFlPl4|HE~Ny=w@rKV1X@Hp}S6Tfo7yWdPalSO7nCGs14V7a-4&{8O9p zXkY=C z{zi>$`5t0_x);*@{f$8T>o*Yl!8o{vZY6&Q;&J&)D2m23Kt6dUfd9;*Xo`URLx+RF zw@-j~^BYL$kjwDs`yL*z{ur^}`yNP@P~leB0{0Z=GFU|$r6~n;T zG>C|;Q$X*8dOZG4qHDg7$9gjK6$0@}hm!Q@@n zgUV;9C2LPWexE!91pe#?@TbngV=If|^u>Uyd>;|99(V)PrtA^$e%?aFua5?)s(0WT ze=5koa1THZoQQPmn?O1KBDg>3JpiwJ9^|(UBI5L!z_{-Tz@0sSN8A5F?Cgty`#mbd z&FKF!mpzJzuU`y|>t6-sFFX#AVOE?cD?slwYR)`AT)qWJ+5a?vM9zY@{Vq^( zs8ZuL0i$FBfFC#pL=XE9L|k+h=^cu&rDY&+)_lPI`3Atf$M&jrJi>nddw_g;CBmL! z_5%X|`DPTj`;y+Yci^3R5xn=1$%Feq`SOKGw{A9yEdER2p0*LO%PvINZB&|7WbGSt z{cZzdts@cf&6AP0OBnVgwmDNzgm>Y~h`l}z?|}z{Xk9hDC*1|y^S1*d$@=!r=Rx`O zE8x0;ihlOvVE4HT5c@f{B`;HR{<;wPm_y2!ejkq)mH=Z56+KO1m$6FzU>ndf8L%6s z+OB#IiJ!{0Bz6{J2PkLf91uN@`ge2#QfuA;?=P9v(kRGxR)atV>-kA{;PGb`&np-$ zWbS6mR-{EceF=A&|A@=vo)?cR~Vi9?H^mUZNE%)K^Avqm(m|p^)&o1H1 z6v<0pL_!-LMC`fyBkT}nu;n{=9KiPF<>usK8MFO6y2m1KznT`GIJ>zx{AHk zXQ=HRr2xM5F2r6@3Zl#Y1aEME(z_6F&pd|5Aymxv0K&fVWjub*D*h#^@@vfbA6Rj2 zxf_oo*mvK11VFy?HDLUi=|0_#G<-{uqg8)`>pwq%h~Kf#vq<@Ug6tbXy3^Va``A-} zoAOH#c<>!~KfDx=#x=lrk=5Xe2O$V)Uwq#N?op3We$<>_u#c)a7v3M843K@##N*c# z(`C%ywLQr6^}hnq)b9|H9*>Ccu(UqA2B|$AM#MX0=%_c~x`F-C!^^-`=uUuqg&F+G z5%B&8#kq~eb15nBeH$K^e;2?NA0my#uOjw!*2ec7L~LbC{a=K;?`q&abtCEh2q1fX z1!4c^05J3)4fjtr^DuL!?b1=}H3;Xb3c586hFTzMn_>&4*Zp~Pv=7u83aIUpUVHqpASQuU$%+76EZve7``U1J z!D&VJqH`^svGPn8*3PvG_&4+jn)96PtPXY|K7HkzqoZKgWiVR_<^rPw2nzs{r@nerDNT)>Wn1Xg(m|fVNurvll;YLz=_`%G>^Pd^Z%2MubVA3Ou$B z`|Ahu$?E7yzV3`YIy#CRV09B($(4Ge=fYo!WU+DPKzwJ3zsD-KEWkDsHohX*U`4BS zMj@YI_EID=M_d$cp(Hv_F3JT2iTt07oq}tp6$dDvi%9=bzV2&Ev!&VZc!V39=wCRX ziXn3mxFV%{ zc+F9}gxikAkz7^@rX>{?oegJBgDQvwVkhMDxk>58(`f&oe`9i9ft+)@=c-Dm1{PaU z5i01Sl7P%2B+@J@YrpMZRDLxe;cE`UcaA*IA5`V%s&)D23=EW9lve@d^JFw!lxH$9 zuGvRX@GmSsNC>cQ0w)9pf_ZflIcLS}{J&n;I+TE$Eq~8C2nw=pDfO?u5zc~|7Y;T; zTs~F*THp2`4y6{k!F@g}w8&%u@>f{n0IC|ES)eRJ0n(yyaDm{o?n;gjb~so(77fL& zuu%Hn{zs*CO$`z%UjvsU(w04FR|qPe(8~c$rEOEliwyFT?0LIFMrud9sU2nzmVQKP zOGOBHLM4_ICyfY1qdk1+AEToHVcnRMtG;t$rP=b#-~Nulg6SJ{FCa}Z5g&L@MiT8s zdbe%cYz`=76w|#TSn~m@M&~E;dg(gg6L=G=mAzb5z`9;v zBG+8;LcJ5UBc=r(A>Su<7*fFcN;3M^aLC-wX@d?xm|2@JoL50>a6UC z7LR6n&`(N0tg`Kk@udCf83y)$6U6(S-le1;NHklC>q7Mi1#`Xama}GVM@V z{5mLsKoHb|$a4q94}V7?!N+}IV8sDNBW43*rREL$m@@bXN&%V$Pcow?Z;OgjFa21uV!^&C>O3fZaf+<)W=tr-aw6B@XJ=sDcc zRa41r|6<`@(P4kPxag$FqgNNhcXMxa|4tD3h}_q^gcf6FXgjw_{!CLb*Z-(5bV<^8 zYW9ij3>VUq6;p0tz0ssP9jRuIfQC1|j|yc%CnL0gf)O^`==G4R72TheE~HwI>C$>2 zHAW>%c9j$Ab!UVmI0>?%`?>{6Kf4fg1hs>1s1zXecWfJ#y@y0L3Xy|20jE;|B`fIf zhaWkf10Mi64Yr~Ok7bwuRArVpL6Ri|=G4!M`bmXO|0B)8qkGwG)MG-~me;k(Jbuj5 z0ZP5Dq;snDT;wQlNwP$BW4C}>CWS{{k6Oby{%53{{$ycyKZ|e?QdP+*reO;;A-}KATbS76*&~5H64)bwe^LVO3TlAuZG&S6 z()*o?#lP*+7IDbH_NT#_S10cH)pTKZ*BDl0mqSN>)MMuiqaETG}Y8k?z=F!oa1DP)Hh%DIYr(Xj%7?upDpP!0e z4r3SeL>x%Rri{VFv=Ertd0dNPZyKVc>(dwfO0pfugGNjsSphl$%y|^tT_lgbyB;Z{ z!%#h5!4fK`tNBZ@ZK|YdfTc@{^xBc#4p%H4u2?#{j95Bcv2=)7YSH_4fk;WzxJofP zq&PCyaZIAuS2v*)?X?)w&3r-9Ngs)0c+`S$ddJI>(*|S z3N;{mBHDIP?MT{HDj6o>%&SV;bzXl((yn3Zfpp(1-h7Rhd}Wt~F+}MCJu@MwPcKpm zuJftZ^kmlg*g?9HF9Fy6p%YvdVZJRLj%c;xi;C9A3<>wzV(XwYgWhW!HJrog5 zjBn{f9Or(b3f(A9JKou0Mcd+Ax)`%^VSEdRidO8ju#@P5!*@TjfJ6wfoG7#)6{)K>9S8`4 zT?uH^0S$aR3Ce{nhR!es;LXl_t3XUIQcM-`&I)VgG|9*O3YCelGhjPwdO-!eSm_Ub ziHtfCX!lM#HGe(C(D_CswqPRl>4~B;LjbewnLkU%sb;B*TQB%R{&tsVKj&Z3kI#Pc zqx9pUe?~u+vB8Mc#5-$5KWd8VM@=#Pz~RbW=toNFhi`Auk7MylPo~)Z8~QQu!fy2A zeJI~Y>j%|=jr+f(AIqN4>BoYh2o5}AHd29_gXR1P+At`-QJAJkRp-(6VusG=iZHjX zYN}_WTg56oSCiAPR)dqp^8p}wmGs?^eK=30Zup~CsUQ6UIYUdMRjPrtq(G%|>x(&k z;s$OTdJ|SgYt?vZIIa&Eu5I`|yC;52|26s$-5svlBuxh}`fMFVndY>S=h3678m zcy9!u?Qkd6R2jaF@E!4e+~3hbkQRdu^?&WtTwGhM=hUg{)jvin^+-=i-N|TAdb)Q+ z5L-4lI>J7LEn0=pS3W1SlfG7tG+Mb+TCNxBS`B~BJj}^6|HUd&h!1pNw*k4$k}+Oe z<;wERpa3gDK-g_byMY6ow$1l}dy2m$o&7oLS0-7Us;#+NO0JfYt1C6&(i~R};A-CP z@!N^tPW+=ZV0#XK5%4ESur9IqK%+ffxn;azyK5vYU^_n8C?lBkmvGNx^J8vKrXeTH zlbt^IXLM<5x^$g+7!#mZ(835+nazH~NOG>7xgOK{BEmId=wLQFm<=4D6+q~)QXURL zDl#YT4quHpxK7fAY>>*q0hdzr& z28y4Z?8T|VJZaC!Oe{`P$y_xilo@+t^7d!ENQM5K@LRy!QxZ~;NyXcG zM1l%m){08)Dgjq_Ab_nBV>UnQO7x{|TB29&QXhI`<;z_p!`{=`Wb9rLB4hH-D?16% zW%qM8r7xP4xE~vM9|Ie=O+{4=WGA{_X^Y(f<>(F!DCeMeVKd*obpXj;@Z=?Zy>oG| z5dR0Ai0h2_Kjb9KIv?+g@je-&)^+&*5bodLeJmQJZ{y!8DXkjwEAv&ASB)Fb&N3^zFzL&yI|lmby5hh5hXR+=-!!-;lnam3J*?YKKuWQ0BauT1e0F zLPM6GsfAe8>(f)%y+TZ^nJy4w#!k>mNEHIENBSt9;uEwSKe=86b#d{ys#Svq}$#N zXwmVf5Xjxj66&?0cdmEysj<=g^3&4&?zFW5aN zNLOt9kS{nNj_ehM82T8QyXu^y6(6bLCMfjJcLtH!DEM07f-?C)JsT*brqgF)fN*?N zx|&?6ILv34be8xdz4eCLCNv9q$o>$1GI&T-B6SQIz zB$n&$@Rmg<$i`{*u@(L+1pmQzS4kkCdPU^*!GHQ zXM;#0XmyT*JcHTe5Z$7p+kc7*i)AnW1}w9&MOlvj{gz{hR5p8XrRHc{)(1S)UQeaY ziPtNS?l-z1M~+e(Hr)m}dPb?Z<%sew-!Pfev8^^b&JKhO^#t4SqRiQQ5GefthWm(K z05`f)zGR3n9!p%DwCa6)4ZPtQw1hpuRt3!00LBw5_eGaP&$>5K=BWn6;$>@tavEL77mVhR@W2Rpky96!3#P-=LtFNA(V$vjxIec>u7rZ zL^(iFiX1ue2O@NW25G7FaK$>5lQI4cXH+=P$Pvujg1rc^Q&l&h1(jZ3l-YS2s?60- zo#hF*p9mHk0gGh$vO24f4qcfB@TJ{=X9C>w1h{aaa@3@J{?!*CD>|1tj4NIvRHfA9 z>qe{as=gnu^hwaFzO;oCOpw61nFG+u5cPOT2I(UWmCkWf0*6*u)mpOB_wDVmO@RwtW|rJ1eh zy|{ZFHBe@{Wp_tNn#;n)3!rZV z9(WFs=e%_tqb-0TZKX6=yns7jbNU`foxqJ|WXmXh3q(2xfSNrB+vq8e;=oQokr<@c zf{2{RfhEkL&)Ow(yXNZeSaJXt>>eO8zN}8!=5HrotA#zKU5v||28k7N3%N3u`dbbF z=e= zx4bYbQ1a&)?@cIuIb-L4e03EykLAT&LdPVL1zcGIeMm#ejjqhTR6?jNkNPs%*-Bf`RH9msX5IyiC->CNe_2Av;1b|7 zqiuZ4nWr{64BSQ*a5ALLpZWu0;9CMwk-@ySaY1lN(T34pya1?=-?qTWk>r(XJsozQ zC=lSU(C9#bVbF(e@uk{Ix-vdIbYVh$7)14{SL$=t`=UNQc%{RGR3FszHrxMrPnc;J zukxTqGU!5=NVALFWlA7jSFngck)$8l=`AyGwh>rXR2EX&;lx7Q0;2@Zyje1bafS^Q zbk!B;s+SlgORwDm{%|0~N5+;9VC1RvQ6FJ1Szuy>Z6@HxumIda#a~{=pyGC9R+eE` z2V2Ps1{L2$4aK0M4c@VX3bQR*gTZ$Nk_WwjQx!~wD@JF&@a`;(P4mb0?sz`HfkwmV zP<(Ghz3_bEL=poI_-Q1E*~0Ttp$ICVwX*<@*v|=_P0v(L4aY zyQ4}rG0!wU*~knVpKN9xXMD1uS#NyY)TI6_R`h?Q=)XbwK9{~^8Vhetb{%0^OTf$V ze-vJp;+5VGSu0-R9aF8SNqTBt(o^%2o@$c5SdnW}R1kiE?v@c=-bP9pK z<^gKVWu;NFa=C&(O~J1s{6c}>l|~j_PvBItpL)YXk1c49D$w$=GOCu(CoLbRVIj19 zK7Z;d#Gt+iK!xMug%(VL(W^K4aI5Dogd>or1}oT;$YloXtQ3av63#j5z-olSD6v&J;M(T8*fH=o zlz2%w;9@7kpY0^pGYvUokP>GZT6CPkj^yIt%8#nhXfiv|SM(BTkaOgTbLNR1;^ULP z5%KX!-)rLIvnerv)Nx?RwvydNOmeQ)_dnFgEa2zWB_5V+4CP!v=}Is%du z@c5RENTX!cDHJ4J{JE(1Skf%}Y)vjcnP7+`Pesp;ZxJ$4^o1fkCu9T4OEr{CJm&S! z0Ve#a_)4(xO^&ejNIKZUu20W+1no-ZIZ25U$)gwVXvPBPPy%*EWMJ-LFN}l)iBFa2 zkR*lFtoRl(Va4VRMQZ5aW@!yKOWo|H$hF#IZ;I4(PR5og;!^$KKy}5w?(9#IcR*!^ zCY$1Ik^ujWPa;?qxC-e+`4AMD1vl9$6{mb0Tp|kaj7y?BZdU2&setHL`YD{-PA2LA z5#Pe69Fm|TGY_d7ai*`!=zK7k~ihG7Ru*k#>B`Ry?if<(^Dj2oS~r zWIbL=Lz|?4sIMakOD4912KALHqI@}hWt`U6^@z^X*U6aV^eJW1noy-yc)qc>mmq6& zjwOH3Tp!DqOCS6h-I10MI`SIA8ATnTn?FZf$wUME@hyB>(OenqfY%fcsiF+z<(~XW zj4%|r1wN1JleV%7AW`0pAdCBVL9(wlVZ0xE?QTzCpZ@ zgZ9I>o>I|!wUu(P=ZzmgoXeyXSjpDuZs*-ESH*W$c0x37f>I?in?0Z?R8jymX(vVK zq#elBpGSeJV>M}KUSra(Rb|5@{fPu%y0;AA$z6b$X)1?8GMvp`s^Vl{!V|}VZ}xL4 z?({Ku93p3r(&>T@{c^#WV@%lILk}={$8Tk1IC%#~dYAtYQV@AjLK;D%$2%IzS3nT& z01bblBXslU=9>XY8@qn0pNau~r-45rzGWCxr9b(=1VYj1=Fbt=^CL+?apajyOhxQa zBA{X7Tf{}W7HBb)x=J^Hj<}ME5F&JsXM`RfVE4josp(^*otls3FU+_QOf{jq9)b0A z1j0^=M9^Q70h`y`as2CH$R`=8jdx-)uqeKTQC4)G9vVcVyYB1;kglpG-p-E6<~lo^ zy!((tkyo&JXaqVxs<1eIRa|2EMC-8=i8?8YLnhWDBGVo))W7=Y7}=OQ(QGKDa;ykZ zsVL4GsUOpyx3Ta#_+F{pe^i^?XaN<7bj|6<+AFQTp~SF=n^jJV)StKoDSF$P>)|(A z;O~jLu^hs(^n9MuqnkfdVjPt`f)iiMQ;ey_%z2WN;;?1#*VxAK-*jj`wF5QY<|@!& z0jBRjWlqW{l*+-;C@{dQj7$AJzt5$$nGu5XMZw`HRb@jM4H(iSAYf0TnTijTCKDCl zCwr)u;u>wcTxwX@N(8%+QfM%}X#^3i^^VzlNE1Ia;B*KgZrSo}fDbx_m>Udy#07PBh9+lyLxAk5}j^7p23fC|c-SUY8d7 zNxafO{daJTR*770o_ZKdW`0FF`+ZqGL!%CpsYKbJP)3NdmMFUVW1*~ZbDcqZ$VK~v zLTmglNog5g=?jUb>rAxxc&r{+tYLif=ZGtrxEF5dk-TyPfd;1GB;=*^h|U5%dg}Lp zD^&rmXPIwDEyYNmj7rXPO&ganJUO3BrhvVMIh2fl>u#Vz^*R`kO36!9uMDd96unfv zPnZgE_je5&XDc?CKFaD9vT+94Kt_cK)*VpS-ppmw-?I(WbXNTdSdBHOI-vv2E?qgH zkeXblbl?o?zSln}R^|d=D8a6jzbx7o zy0P>lZw-n(G>N}+SwY29Qsgk%&O!S(L~61NW>@bL~9rRcefRFrnW z`cG&E_XMu{v3p_TZP=`O3qi{f^p?KE@!?|Ez*C}!8o$eB&H-d0H}m_nXPHxPMw}xA zps9&o)~(z!DB>kZb{MkXGi%8xPN{A~p+(>uL&vTyYk_FRs?k!P4kP>N=(mwWM@AO7 zIWjZX5+&y@GJ;Ay29%^7Hoeqj-E?zqwiGOrB8PT#^XK9*AZa(pJL{|!{`Ba7N~5R` zz%USZ%OZ8j#AN`>jmYV9BurhL8bB8p{Sj}u$SPahvdnB+&0(&H|M*@2!utx%WB(O&UdnB+&0(&H|M*@2!@c)biuyG&;_e07W zLIoz<`dA*$Inp$3i+{@iRyBAWGU)77W||&_f$6kw4R!{1VWlaTefRufKn{=69@T_L z{@3kM1#ZTYJI-(7c1WH*s%KA;C2JaSZAt$M8353%P3e=dF!Mu1;jCu9J*v;b;&%Fg z+tl(vytq9oZr6j17-cfj{O65Q(L^bXQqi=QT^geSs}>7|5j~Qw61swPmC+?8t6KH- z+g8_P6%TMAV|IEXGRBp(;q*jgO07_Vt}$8V!PFO_VYmkZ38RQTcB}rZWQbEFv?ihK zW3>Wq?6v6sg!FjJq+Tu5z=4CI?uBJJpX@-e}cqoYn6Fk&-Ac zl`1WTPqOpBV%rM0o5DF$SG^th5~vEHNvq!5n2&W} zRx!}s55GjyR){RM6S+?XqcGEV+>oC!IRx?(u7i1#8Ea8XZk@MF8cvdFim@z^9tzd+ zn2#V2h3a?`Uc2S^k9G%Y4O>H@;Jp{RFs=@P&J0{hGq??K8uu)ZdydB)^0-@Eci8D= zUX9ThT+`?v*Y)Y|sRGS6R`x6w9=REmv)6UrO%x?EhP~?*m!i-wIMf!nv85VMFI6b^cWNy!K@8Frqxh(|(JON~T++VzAR{8+&m^cUikWzs{6! ze!ZP7SNmA|X=&l3{GjcyI+brfjpmucj!2zOr*Az#om3Z|>4%|2+VGdLuXZq`AaG*Q zDT-~pk8j7Ut`|a>KEi{fu;e?&j@emMSdSgEnjy4O`0;EsH^_ME-58QWvP}`I^Dt}& zAas5QjR0eBVgMHr%3s}xCQ*gsO8~HkpM4ySf14Cus{8|%1A4<&Ar^|l*@9@Br`+)l zF-2u04l#`YlF#+@;?U$msd``rt*732oJoz$w6}FiM z(5fA302c9;0krGMNP)Gg-Q7<>Y9Cp?pMCkCD&JoS!(!OYl<(pHjq+{$D)O|e^1T{q z{gdT;lqui0{D=Fxxyf`8K3S|cnHa~9h(MsaoFDa+^ZEaJIkR=yeK{YEq8wY!JMe*4 zDd$6^rn}|*jjt6iXEOpVR-b7Atc%6%;L0W5ZuL}NT}72S?ewJ8(m%F)GXL8+(uDp( z$u-6<6kVAFQkt&K4Z$PYE>cidz7Q0kakG1c71mu`J7uTBYlGx39YC{5BLZ-bZMNJI zRe&vDL%R7hySDv8nH01C0&&RRI~umYCUzd4i#ci!v^?@66<;h(*ccl?7y-bc!t{u- z1WE(7xkrpDh;>e7U%_0!M)gLdY~J+*8$bX9F}`^AW7T|*$KP`y4v+(uu}7@;qd!z` zjP4k8wEt`O0e}Y5=*6Dn@-Lxp?dk5h6FwS7)5PjQ+28X$5YPdKOTZs;0e?T75Yuu2 zmD3r3FZvpky(FNt0)5f3OcdSn7?W$tWLg*_^RSFIX>K+wLrt2S4Rf3sgW+=}mv}#W zIV&c2sVP?!Sh&e!Betp%T#GAPZ&+Ry zijLgsG>SVq6D8Lt0D_^3sy*rM_o&)D#u0$xF_b-7^53+y8-#c(g?N?uI-~ z*3u8oqX%CjOO|AAEKXJBP%PY)tdL9oQVgLeFF>#KBWrDv^YY9hA>c~BEoraFG!-Xm zSY1l7i-EgOXuze0H)q}oi2XgN+Aej7Q=fJo@mxX8Y3FDMmc@P{C@vcq)%3E~X~}l? z(US-p-Ia2;-HSdxQP$YHPIw3HnBKmdgJQdUyvqA9r@IHzm!r(6GIFAqy(ek3uw z;PxAuo@5;M zFc6&V9l+B-quGVs6*R+W%#@`cdie7c0E1xhGV__@JebV%6AOg-rt}ZgiA%Vv83Tw! ze*P+xzg^^qFd)R2$`4&jke_D+%dHL!##I+epU%xckZQ+??e}3fu`jc_cp`@3Vc?Kq zzRB=qn!1D=hUe9T+mnhDQqq48*r39f;+8Jz@zi{78Jz5;F7{K}({pw;Sv<+Pq0DQz z-BhG;H2iJ{7Ww6y{5~e&%BrfXElDN-mivm+QY?=E288$;6)TQ(QNYVINv$vpPWJZU znF$rAXLw5khP?4j-U6DCgd15VNeR5YgH??p`Bc2U2^bLKONo;%it}fJn=zZ|DbE~~ z&n{zTmnik)rMN4R8Pr_YVJFprHTB+i+R8iK00+`~fLaG2=bx^ZQG)Y|r7@X{V z0Lf)OQ=FdRtpSkCC*S1lKut)(UEW9uy!~}t(R?c28bJZd#243{qSt9plAg=8=LUM( zw8x?6EbUoM&&k@8qNhoFZlq_1_S{4dHJIu2(L)WU=Vp2^{u3VE3dfja?|MpNW^wL~ zBtn3sB>1Kz_R)kS+?50=K@xu`-;E?}PyivmN>*`on=Y%fJTo9zE^iEm4V%n2iW4)8 zwE&Ea@lD3A(^MqfFgA}yaL*`CNR>}3&_RVS)kM+7ChBltu{WaMHG*58J^&yHD z!`a=ab{lZW8{g#Zbpb~X8BX5#&a;CnA?k|YW@87pKK+9)GqIZuHo6vLx|xG_pvr zWbbMecxD97BHE!8j+Zb^u7E~wviBjNQQ7F*%&9&nekgyOwC8F{=EmX_OBe zKiS(a(@FF;60L*t)J|fw+HpZaC40O{cFOLPtzk6OoNubRG4a&~f4pN379Zp?2=c{{ z?*7}s55*d-GXhXy>Xy%T5HaD!)w~W=`j?W;D8WU^PLbX45I#BUdbDbW#(jw{20Tnkrdie9C z$Dm|I_Ix*ye$H5|=m{pEyMO!1Xt6;<_z!vM(ZipI9)my+SMXJqh6EtHJA>Q-ps(}^y`c}(25`&9t z@&7*lPeJ?x_&);So%nCKQ~ig(ZdteC|31(f#s3K0C#_X+H{pE`#)tc?Q~nF|+u-tj zKf>PkgrD*aY;k=PvwHmBfqw)02e>~CTJ%r*wq=<$TJJlzUz~3g6*~Z^*mlwv#Ih4c zQP5d_d%OZW7kI+efHjIJ8+smA9&~yhXqMv3Ntbg&l=4W}yF@<-_lE z@2Y&vF4I^k^{b+}Vz))}xsNOw|KnAsViODZ;y$8O?#!UBm{Li8RH-cg7uhnU^6}Zq zb{CY!HrNktF0^M(`)B_X^#!{^)a9MG{V&#+!+la;ZetoBRWkp#>x<@X=dB-$w~weV z?#>G>opTQ;0M#;vALV?NEe#fpebCtWgP-I#-SHuF9=&Rn&-bCM>-~=m!(ad6h}w{? zsjlqi@J~J!?>`FAS8-upzKt!t&kUvlj2Rpl;T?byxuex}Ia|?87pG6FPNa*IuT=+niLrFMGlYF{gsA%=vi=B8 z-fj8x7-(8BCa#wI!0Wl zz_p*aKEtr(*dc=rk7xruV5ed5*QM}IGjZkc)Edt?cyyv=&MvIo?PfoDEr+|g^8(L+ zP0zMkzYK=U|NN-lPfpY^U?|bbQ3rlMk(=+h*jG#6kg|6-6q%}g0rd*1SBP6j%9w_7 zQ6$Q>jS%>CZ)pSl^nnKgb+H^#kB*2b89##;5{gW@0>DAZf{#VSW@k zXNhvUxNOjrSPI&-6~K2=E(T_?#pD4|fdD}6;0BnTinQ9P`K`*{0WO_~pK8sG)8<#C zS1zaExlO%1m)$NN|BKsT%dy8D?Uo@(;1{uzRCZ&|3T#BnYt>a3vzAOIV$^bw${ z?7z7Dy#{F~#YCYSG$KJPDpl4PFe_20<1MLF7g<7$Zv|aZCb(Nv(s0>Y-1_tt8Vr2= zj-uhi2K-TveTzV$ehOenF zLj7C$)Y}1?o#|4Pqg}3VY&qOHTN+ShO44Oqyl7V?1KC40cD$bzg5Si>D+LH<*)pst zXvxTBb5%DmOqM#P;fK0jaw|(0qA-^`*Q-Gc<2=}(z~NUT#<d|3PSA&>m3di_PCqmWZ1oUKsiG$LV~IGW=EG0pTj(^+EDIwiaB28)`aI@Go9 zU1=SYkp{y>Kc-AjfW%ul(B-n;TxDR5F#?ib-bIpC>*Bu|U-ks7HzgBM=z_9aux|Pj z&+l|n4B&hQ=$!P=j?C$ts}n24?ih>B01tLDu>t|v3CN~$Iud~6VooFk+XPGjmY~*c zs)B=S?RT0ilgG44afLX zSpXt+7*%Na496)ers&Lc_fr&Y*gWv3)Cp86R!3H@l<`zo#$37*Q(irwCVFR7(dm*M z*aRaSc`7TcLt@bqSTGQg<_o|0me=@-;i@?uX_N6F#x2-e-o=}T>9A(tR}ngu?rAg89gU2g{oDMVlNmJDIztx`Gd77xReoD;8pQL z{Az^khd5q{r@Kbr=z`MWV?JbN-MgI)Ny%0ocitGV$a5mKO_4b(VGRIU zejCE5@U_b6NB~t;h?T|mH!PqJ)-0@{hV<5&PC2gXbZok`4rkYDxb*dCr?o}C7|v17 zfg2W*Begt4jr1}HOaV`k2B`WRT33tUREAb*YKv|TbR}`H-HIWp>ze^zy_qKH(6A$W zobp*%MW_YG!Ii7`ZjemhK9l*Mp#!`7yAa4NIw(@4eib|!EYz5iQqkPBi%mc@BCKqu zMveEg&9_#}*ZyT)^q&HW5ALi;@&mb&Yv{7D*{@=mpva}bigfd5h>7_d`80=706FGnMowyx%>@a|z_t%Tf z^tUmJQKq7ph? zsoriuGXSSHa*6~atoSH~v?^s49_A)I0G3K)m@L-sw=y?yBN-2M z?sr6|0A@)M81#I{uvXm*2I@blxTCv$3L6u;Fi_D`E{>tpBnb97*S-55n*GlFR3(4= zYxYc~N>U&5GS}Tt76}|Z(ug4MvP6?4S%kQo^M^oFz8)ksBUck#0Pg6(di8(eslz;} zngL91c<(ZjgYqZ7WQ(6#)Pq4nB5k>Sl@>z&WxGDC};FG^>Zt0FI}}b+yRML~iWi^Bzd1o{^gG_sijp4(5#S34Kpi_Vn(m4k6QhIdRQbO} z(bU1(DOpIB->ZDwP0LP&zcDZN)LiV)So>1=VtYj=mfRyX&U|#Uuv)zM?3!kHVS|#y zo1HbJdWz$_ey&q{^W5pr`8PZ>_#XD*B)qKZdR%OQZLnld>RzUPk0bo2daNbyV$)%* z(<7Fdltpqk?&AEo*MMmkEK;3V~fU zKdrlS*4j^FaV}E8BEGAj$3S{cwh^kzu7+<9!^$4<7;ZR1=GT5!2`_jcdW82NZG@t`ev*m)ljv{Fr`eoy^2RK|?4!ijR0W#x@oYJp%EVne1tKNDVQC zq#-D{teH;fTmvNb!AQw=*6c>s0dhoCW!KB9-I`Tl7gj! zTy-X@Qs)B2>L)$ZfjY7nhp$i|&?QSxo`%`w)E#HO%(HlbC7@w3f2DG}zEGnf(qd*k zj@^)c@L>^|G1XXFj$Kw`wDu@a?|6a?d-O=J zbVLk)Djg28V*7V@HjYtw=83cSJf>tiZ-7_jSRt@yw5EGfy+fl0LcHPO(JD#SD5zTR z!XlE|(oqQh8&{8KPgRAI;BP1~Rl5oZ`4c#%U^rEYKR>c=6IVen!jo~BeDgyFe|nIn zBC&J=mC7#EBwa@GP;moCIComtlr6oyRIJx%+%x)Zx!phSL2m_`wXl%E9j<3h|~BGzFvbAa$7|7 z8QaW0am!P_iowovx^R>fTk|lGTS4~X13`>7hUtXSXcgkOXN$AI^7gs&QDNNMjfv*~ zj?q%9Ag@t0QVdKd7w}wy00cmnVMygo$Ot}pB@;CW>~BNEqljA|rNHH*7u6UrEJn#)3b_x$EzS4J|?$&?#Oi}-2qTaq{WQ}cS+vP?GYMe9rOe5LU#hnr zD=T`V!?f87~)X4(5s(K$F(n%2n zfli8EY%C{Oq14w9P)S*-oD_rbWdj;_rBGb*K6rHNUP!)zbW#Kn^7N8?72a9Q$t#eY zPCx}Z5`~Z0kRfURoD_jL7@aMlofxE6G1d)-4wD@ENMb1;K7)WTMaQ%(XMfao7;* z9el0M`~Y6qvt;?f1$k~mB5;N5-2NuED}yQ?3&rc1KdgH?DakdaVwh3XAlmTB(-BhW z>AR)@RKDMUPi6rE9}-nxFyWVFvQt!G2^&Gy4Vr-F8*~Vai3q8JmQ>dNK-;6&adF&1 zOklJzw*sp^f1xG_EF-jTii9v`_OhkP$$VbyHRx7&Eto=AtZS?!&-z)5Jc78?PrCWT zI&X+?_jA3lxK2^vlmnvb8RbYb&T$Gv!i92Vg*r@IB`Oym&dcS(tU|kWmn{!IpUYM0 z1gK@Y@X)2~M1ml@)QRwnNE;34;=qX$3EI5QCoJc^3;0Ypi84P2wMT&&${0qx}u!!rY#TW`^_i>?m1q#?a z4vDAt#8K|N8YN|f%hID%cyNdd2c5N$Nj-)_# z@qtaiq8YECB=$`8aefxTyY`v98YmU68WS+uDoWs2R_FLNEQlXK;;byAy>Zc%!4@6 zr3}CwcQFpBl$}EF>R=bZcu3tJhQE6&H8H2OIeqoCjNNZg<*2TqO=Hw`fDumlFZx_{ zrCQ*Q$uM3ooLFtGoNcGd$Ms8j?m%Sb({uaRqgXMyc^HB6o%hknC%#Z^ z#dns(%C^lMz}Lcs(6WJhaLOR5Y;r&?-URV=o7lEs9M==P9bRON{Wk}At0h2UdJu%m z0eo32tHGAIy0FSfw(jw;H9e25yA)f`=GeOb`5arzdW6m|0kjE(Yh;m9-79yCA6)bz zF4^qkWd=Im-TwTD(XWzZxXL!LrG>DAJI5hktARz+8S1@S615lKrrubg#mCobx-*v5 z1*oTS8kL_3sxe8R)vW69VhfcqK;)wX{H4h%8fiF3loPc@S2ToU2(vo49TCkbn8mVF z3wWMwb#MS7>HXiwNi=nvwlucP#flFg;|j@+4_44d3c>C86Fxh6TW~$xyb;8N!%Uf; z5$%z0^&risy~!!#EFAIP%a2(q#s2UjDE8r0WTbU3(5cwR%@xI_&gK+bUs@=t-#Fik zh77$rYGCzSmwL`x9S*}+IIKG;&4drp<)1rSwj|NoOBnm5rP#t=0$niWi3)+yG=N#} z(JWP&2(*NG5vCi3O{d&PtlOIS5$j)pc?6aXu${||EkLan!KtuSQV@Ybf*NluLXwiO z8eSkAAvk9SxMM3Hx^7jO1qD!3kf6|7{?&X)(9@7L9zI(H zivt==GrWAN2qe#jX(Bp)BNJCxifLboiExFbc=wfL9)wIxtc#{)9MmI{0#SBeVlVb# zK%6H-wA9EPo)An>1jEmGnCv3FwfyU7G7*N+qzDF3I=ewbPh|;+G^&*>U`#i|CEn50 zwrzl3#8Q~FAb&&jl;`u20QV`JnCNx25j?xM$nI{CaYpNHhlrXdvaUgY1>62<3c7duuzd6`8 zioK$zX_*qA6GF{qI@jYnGK+k@q;$;^=Hnc8qQbONv>F5%wXM>Of+WkWkp#M>tO{e4 zo(Th^x~>@bR?st)JaJUOU!iBr)09>b61!`I@o}?r55Dc<%?|1cWC@ueJ8(mmbvcq_ zvQrqd`|P;zW3n?7^$BVgC}{0IzP|a4zWI`Bu-#VTPuv4}6jP}RkrumBoi(2-seewT zN?@!LrCLO#Obrv&LCK>QQa`9NCJKejg2XB4(afv6Wpm5!*mNggC@nP&^M;7#pL@Dy z6ESEZbDGc6FzvI4Qxv*z>WNj%A|Tgp7e~m&>--&w{0%{mkq3@`E0VZu;q5G_x1A^G zQfR~7xhho>9`aO0O0Ez{rIFnT!nwO^ZB6j4xOErml)HbTCfexz>Z}+}NuiNe>;C2{ zN|I9^24e>l%yXwKhW%{>s8#$qY}^2WqGeN2qt1l*H=G(R8_XWhv(o@IE8|n)3CQ_W zfcrPdl?B1iR%iFpi8GbL3LyPG2N+`SSFa9qzpQ^tII>_}Mdgsg+?QmPO1!m;{!bLkk5yND$xbcLW>q9M|jXS&` z-hyEg=(m6uHa_um8N}b>PbIOiVkos5$0Fn4RJKK_o|)j8rhEybj2exNWc>^Wmp~!p z32s_FA&5oDA_;*TFe*e+1IbdV)>x7zy|QAFW70!4MtZqv*Om%{n>X69 zC2h~H*ed`3jjeITQZ~{WUo7%}S6Wi6Xco{bLhe*V34u}~1foWWQqx8Wfv6GEm}$l0 zDgevh!5R@)q#CX{LQ(P`3D0$b*g=eaS;sbB!6a z4Aoau(I3#&99*DVEl+fXF8y54B#Z(**x-Lrh-0Oq=r&?RxpFv@LNYmXlLwQFLP%y8 z1d1>a!oMfcyuuR_4z56$HxnVBrZG{`=m~Z~Hd!3jbW>pt zC#i5xs0u(#UY79nLdB9xj-7TsIphlD7@kLt0VJ1~K@Wso;Xi8d8npZ_V+2<--C_y! z3cVTyfJ;iBJC~P~zJ+!!N8(&7y#of9XvP$@!a-bZGt|!wRiuZ#aUpzY4-n}edIQ4} z7)sya4a8K{P^r=CF$da(uAGI1E+{V+S>QxDJ6RNxfLKJAoXPw-2dv;IBCitVCjc6g z&%}xkG*2CH)icSRMsPtTBq;h>=3s8C+q-(PYCus&f4OArD(WAqyg?nedsHbx z9{+vcazIg77=dHhEpc24I6TIqS-5yKkjk07ue&#@?6f->zi9(K*2=LGVDIb3umg45#9nG*zv9OFK)s&-id`y{hA|pYh|jhgM0;^n(DC(Bl4D@*b76ACeHD;x0}Du9LBm3h zE|#jyi(q{WiA!A)xnyd*892EJ0JnI25W3;@U>C;A2N#5`# zZ?#ViM;%4QWA}L1`ZvH)#&`x#WiZZ+Q!3C8oJZyux+*@fgdwa2+}?>*Gq9Xj)wKAk zxIVz5C01)`YzjadczSS!fU0{Vh$S8r$2*TMt}m<;fut|U8gk6asmr1B_3?pPu-OpL z9D_AhEQLsQ5s*eJHreq7%@w^|9H`*D%ek^{!m`s={y`WFhPb>fbvq=dzK&;(OFJil z5;mXKZ7N5(LKHrzi7e~1EQiXDiw{;pK)EEcCyc;I4I-_*%+!P#r*PxoLr1zWW|0@VT3%Qnb>#NQ(mk zQ?uh8Uyu$Y#EpI?*ov)GNP=dZeJc+|ar;UrrAo9{0lH)s>jQ8AzyTsj+e{Q`7*M=9 z0~5LVa&Eu!Y#Ly7T> z;f|T|<1isNZTK5X$gxRr?Z6Wa`Dpi+1`wq2Xqph9JDGTgS-~kMz8QnVMsTT<{5)op zvwwio4-C)-48$pou`M4>&~acll^0cEry_NBYJQ!^{6Jlv`GL{H*~bXJxwN_+4C^4= ztdomXI5F}XLix*L_@KZ;9qK-;`dqoX;A-O3dB}IS1SFd;0Z$unh&E^k&s*`_3;sj| zbn}O+K@@>pzRWy@0FY!k#TzYu&%-%C#u=d?Mk{|ftC!MmT>>LfR6$bHQJzD*NQV^oi*FHElot$5?W1+dNs@qnLrMv04O4P% z;UIJHH)Y8+JW9qYFK5TlSf_Y06NlO+kDpX4XE`<+QxEmQd~GPG&(G|QP)TWjBTWMOp~*uB#R^9z+y|MGvePcH;N7){f$1C zsSaVu*(rqZY$!tt&Sie~lc*`vN9+_@Q6$adS2&l+#vpf)i-GCOS*79v5CFGwPAi#6 zE8ZoG!V*4-u0E}z>a4Sdd^*XEcus$YB*8qF4rSj#e0FN}4KG1|5GmBAKW{tSFD;eJ z%s2#Rit6K&LR(-vAd@1&^sj$60mMa#JgPQXnP&VH@{jN4;4Cdbvr~+bJs`|SlUt%A zG`hXGt4lbQ_Q*-nxaf=B(LV&Kvs-~~ z*z0KL4Ml$i^aB+WkVZFv>V*LG@=CkUjKWv% ztf3mgh0WXHW{m6BC_dz5SbF_`LDRBVnr#1*EPT8aHzR#yTqWrL4HArRX=Iqcr&ZKX z$xCXc)+(<~?M4VVzBd9oVgH5`qjPbraq$Z<$wF0_m#XcvlWPLdXQ^6Hkpw;5s=gM5 z!Itp@z_Dfg_jz1K6Yn)s5Fjr9k@C83oWJKGz-jq7ULI8){3uSLp)+4d&;RWNcbk+J z9i(zB9N?_8gr#nFDzU-3%ea!=#8JFsX)W4h%@a$J=d(75 zZ4(^v%@vBOMjY$<6Mq5Na%t+0(Wz-WMd&|xc$Iws`wzPLGcuFwHyGm7n}ARw2R_=z zn<4;4NfOUl!`>T5ia{*BGiQ zd)V8%VN@Q-ZWbjdH4wb{Nk<|4x&Z}c}3J|4a_4A692F!jc z4^*ze?5jX=b;j!FG)jZwf(R({m*pv5xaAaYE;XD>Zjx|+sso`zk)Qxq;6N)NBSF*~ z1UE%+{^2Y*mJ96UvPh82 zSP6OF8N;Jmu902)k(6qxe+c}Kn`#4St5iF6stjSO>OCnj%Z0dALokF8>OCn@4`I;H zH~1Vl27J~bp!{$_I7b8I0BZ!H)eWaV^KaPn&Md(Lsw#p8g_MGn?JQl+h_$hTcMf;w z6SX>J^=>WyepuCU`u&fKCTYdjpuD|bhe%Cqc_{dgb(^4&m>)Gs#7d|J0g{PE=6k;) zfGWxnfIMnSTRF#%@-h<}Ar-`HY_UU@3t`-1Qd48CGG(mJree$04dOYWV3}sr#4VHd zCXL8-8sXhdY_44FfKF2fIP;=OerHiN6)FiQDOW-4s%|m;BNfX`0)|3US+BB-Rh-l$ zPn>+=IfiLuqg=lqmLS0e-6@vPKo#vuR{{JU5h8obj&~#o=k9sCBB70$E?KVTzYxy z3*ej$i@$pdLz!*4vY`^JWmZi_JEqb{>j8714Tjx{Ew&|MkF_4pj=zmmR=nope6dDM=mJgI+O{0v~vdoYp zFU4k);$a_&kW3KR2qi^N(l&A%3WbnmEAwnF5>@{jN~jpCJaN0>rH*Y;$)Li9=$^=CTm>40e}&$zN4vd?8PY+ zmp`*wyoR9|1XD}qrEcq!`BrjGD-zJ55p^acj4@cK85dRN<7yqxQ#88qp(rC8@DBk- z>YR`d&H#F*1Aj9eo$Nwfmf?7sG&!C=;#CaO7AsacE7hZd?m?!lhQFt6cPD0cxne0% zk;@vUtrbpc2gHYB!d)gx7On=|aH3qfqFK*dJpm1#Abomc(%{yQb`Mnt#NxK%=G1_B*Uxg*j{PtO`ZB~vd8vYti{k0}pN)$z}33B{cOhPzPr=Y>g$C) z-F&8cy46})O0r=-n1Hpi0c0xG#Vn?Ly~t)SoqDMIKa?a%VyVcMo1#oV{nZyHSh(Fj z0=H`VJS&oV(Jwb{GW}O#z<=Y$oHP}p=@6$2F~hj-@p6+&)qUiaviuul9ZN0oenR(-eUjY))veLPZf*VZ6Hw2KW;m~;)cTrP_?#~NjF)Y_ zUYO6qW>kON9eaU22z#RDvM1(2*!fv;cV|IPx~no-FjbV$6v*=MEgOLj<3Q7;=)HZo zf5Q{*npmE|l55s_GfWRN{GI1e#IiL#rY_3}CNIynDjl`vt2qgmF*(h^-06Mf%lP~o zU}G_VaV|frYL#1wlHY{T0-SyWsc27bF}_K33eIilA_u^sQ~ewSXdl zK7PF2l%Za#-uZm4%>;-fj>)}nr4z{wl--G9T#PH0#Flq&X~*!v!YPiGH5z;<)Mkay zU7W7sI0oqS#sNG#v!5u_#cK7k0j@whDH7_=Z2bS&d;9pfuIk=<^p?nuoRNbKA~?wa z0z_;QkrbAV9J$MgtzklbB$)P7B4904b#;ZPOqJ z+(?P36bP*opbc-Wd1-s*PJk2wakwOUzQ484Idf(-QXHW7^ZcRt*gE@V?X}lld+oK~ z*M70?+dq0lC?Yy3w|T%vAFR8@v#ZN3+L?;fVw(>YzjMzhg}p>*MwuKL3&ux`vUov< z!YcvYLdDALKp6!=$pNi%Y$r^tQJhxs{_V2gQvnuzs^lQ=~c>hTM#B5@)@;-1?=p^%Li@ubl-2 zttxakuVgE$(DGGHWj9X8um508bWhzp*+Oz>4c3tSirYLavfHj$eB$+_+B~V;@&^Z~ zZ3FoxAQc4LHF(3~%CMvbDod-a3^A}fM1%%>6_GYYc&_DCHzM|nr7{<*ydPU3v$!3(>|v6Xo@sTk)^V2WhodgFV1QCNm&eSB-b>Kv@^Qzo?+wo*J+F~l0jg@Y&vf*Gd(vL?(I9H zthypX{aU{a`Q(mVb_8aH{%bIjEq}oU7i^(9+|i%-l7O|Tzb?q(eB}^|@1vB*8HHxH z{UDyy#Zz~j9l$=md~QwwdZyfl#6KdSder+(!kD5SCNbseP?@bV^ld4Iq< z3m8_rnf-O(LPeU)xdjA)a|zPz*IGZMVfc3-IG3HE9GRo~8w)I8+;%$H3wD}<$?R>! zxN_I03lkQqa^D${ei3Be@x{Q`j&DDmt7N2H-ZNDcU$2^?QB}q#K4`@-;bS6TNkWc% zds$TyYwEICrc(QBYeO9DHGja2OWX6dy}fo?gZ*#6d0+PV%(g%Ft*apH&Pl z-KX}4M`8buxcoI`^4AFhLCLc|9!k8fM}-paMnG0I<<=I@-UtkOU_W)Rz+g<0Umj}iyoYAM?JX-uRf?@0mEgI9$4&C5+#p#Vjji7Mj~XN^ zSBzL{O5l`GSdy<(a;ON4a$_8YofaI*p(1>ZIKMPphh= zANc{H_CI`Zf~H{^G2bYz^GeWYh;B@#Vyy_b5wsr9VI1j>N@JWCf6QKiE{MR9b&1hR(Ed7=MD>Xi>&)}exbbX z15<)^9|i&@QzI9{Y#&i>{D-odb#z416mB-n>`}W{e;Tfi1=W&MPsbb2{PpPzV?>cN z4i->ubH&`=o65lM{ZH}=Qv2q<;}g>^EKQ~y>l$9+9|?<3+)RYqvO139ueq?#)Je}T znyR_aEqZ$Sf0>)hP7VDQm(#v^q$XQ!5Li5q+PCLG+)zd2=$Dpa+yB2&Y>_eNu9s!T z*43k>*rS{){s&-&gAqa<%#;xPV`H6;5=x?cUY1Y&m0s=#xklyzKD;g%EIpfb()wNJ zU;$U_^g^X)3$jzg%V~xjmr8Y%zKhFszl??JGz6;Xvute?O{Bav9D6{zoFB_`xT3GD z#D>nNIdqaoeru4M*W74qKiyVp%}N;YWJ0FSs?x12p8k8gSyl4L!~0R4w8jk7o{;{- zs?t>)jl`A)fh7(sabSr9OB`6@z!C?RIIzTlB@QfcV2J}u99ZJO5(kzzu*88S4%FrV z7gFtcwWNEzs+ki|z8N?y*!5vxt}lLciqoj=INS3l-7786tLK%LiGO>1j`K`W<9{`> zDBI^N+n>7(3w;SJ119Y`)c24jXQj3!?4s!bKHd+%^EhW^f#87LGYwETQs3(UZ*YKj z3-Aj91Rxz7Jzby9UBHbxxcePk!!v>Vupy)foiabzmCiNG{$Svd(T9ky)%j+U2@r8E zO;K1?2t8m(=F%MVBEq?Oo*DN{a(xIhlkAMRyFxec>0FxQ(k?CTq@T7sgqcaEL-#*& z5g8VjEm-;%8c7eCW@~>LNUQ)sz@^QESRq=Ybi3&Mr5(An(c3zc4D-Yt=84g{pPtQxy#Q((9Zvs6Ue@X-AzUA zUvT8lrHS93?BRGKXBumiW#i^eqh?`P1q(7v=PzwbZ%8N1CTd^i#N!nd=P~3>K$!Xoymf3DyOfiSk(Ni*M=+yu({0y1;r{?#WR}(;=%*abbcAUYt|(MpC@_*N+joB zzYe+LRvyMf-Gb>jB=;uZ(h=TivPF zi?~u*yoXEoV?IeB!^a%)chx5;ugzl(RWBno^+?Pd3 zb@ymI2%kx=6OYPXzvWh^g0bDBG9bN`MifA+xy7&B90@VjAW8kwL;W<2`%dB;2z;3n zb$GW2>1A!9mPozjY04vLDK$mvpDNm5z}{0Ash_IQh1I{m#`P0?yf6NXYi)Yl<|NT{ z0o!@-H6Ru%D;1nAy)ttCn71qZBg0Kada}9sQ9*ecHd7}-(H5#6>>jxapn7Qbb55gu zi<7@WM1aFYe&PBIz>vH}#mLvv#X+*5+ylH>_9qds&|{X{_ojP-+^cv|)*E@*M28vv z4X&`Dok7Y7L5nm6sRA{r0NVT2@yF+i-y+29w>S!~yW3ULKw=atWR(Kzmp4@Qe))7T z-vQ>6U6|8F5`(JfD(j0s6p*r~Bm?T)tF=XUR9o~ft}SQ@PRlKzElQ^s|C;^^o8;km z=$Ff4-q1H5w*%gpV}s@H(7mry?iAmsu}{AnYn=(bVXw%$bb5xbLv=Ce-TBXt&(Z9< zVOw`>_i41u?$YypK42EO0~s%vg_TiW@5?`Q1ce^^*-ZvkU;2DV*H0dWuJ3$3psW9? zEANhU<>svMejYTAKR63UN9OraGWWHgPy~uv?Txm!dGbohcwzM$o^I`Of{)k!HK}@l z9x|ZksXnZIcA06Bt6Yk4m*Q`g;-~kMqMNGKdHmoVLCMq!Fr*9EbMeL~$Nm}jvW3u= zTERMj15+NjF4ZCDy+gKIqK<_%X4w2KVp1cOm{iU_9bg zfFo}wX(%R8rHFjf`g6huI;Rvu5t~u4RwM4h#)^`;JJdL z?t08}TRr1aoK%Vdr2uOiP&TaIQ?jNzT#$b?3_!8T#UL6z=liKa*>ozOP-hG}kM zpUNQV5%*07m0;AD!BHZVkQ9gV4ki3D2x{p=LS0z>=+mrT&sQzofuh*2>?~Vfa8<|U z0z?JZe^$ZIeV_5)WLISh)kgXeWcQQkZ@aI;v!IIP9nQ~vm7wus63tMSZGI;cP?hg- z>9&j;`%h7vi1;QIk#8D4I}~4C-k~n;g=qb7>Vlx}{JQUi?P=g_*!>O1hF3UYeW%#) zceHg0t1b(6?pkhkYl@eiVc2x*RzH(Sc}ybZfZ0j_hvggNMQ`Uqc69qa*E5kUeMNzS zlF?){NR=+^!wx$)dj7tEZ3xIc7R^8&%Rmk?5F#>=FJ5@QCftKk5029KEh>obB z5ca0m=-IW96SF&D2^L+A04x1IqhkZ5j1;|lA_*nB+=b0g zN2%|Ra7WSNP9(_6J-uPygjlnSCnJ1TPFMgaRtcpFWsp+Y3JKx%nU^-M^u@npKn7=x z6Q@#jTm*B_YG_tCE5|;ygwowl0#m%;aruq}x}>Ea&IfR6NQd(~ekjFIE^|{GT_wc} z4bj3lCaR#7CANC6wVLO*Rf#RvWg|HO8}t01ESlg+C0kki*1I4j_EV zkuP32-4{Fg#2|y&w@;j=!o(vcVBe>(%HIJ^Sa5}m9`qJNrN%t8f zEm6fSUV-34wVH$FB8Na{`BFZyEdV`Bli?uh*J%Pfn1u^LbzLAb%FZ=`mjMJp>Mnf6 z9iQ-Ek{x@j)PP zivr_^96(7tSYWu3Pbdn0KjQ={o*g5Olq%BP6nRNisa9|*wKHDHlkg7AKKm>mwIlSc zN&6LFZDV508i4gP#>gWskwQ+&_OQ!DWh48teAES(mYaYp z*V@a;RY@Gv6Fxe_EsuWSmNPTO;?zE0f({rzu}DayvI+$VzheWWoFu{;v>XN@2N2>9 zbuC}K@LXSAS)6NQzX}q{VF~3B_Zyzo_MRGh(7b~6HZZR`^O1w|b?2O1tw zluKmt)(%afyvd_qEwrJ$3FryrZ6(XU3(A}3G!RlDZ$+#Un8vY!?z1v!SW>(lO&`*) zF^3wCu||&KHM{~+e3%E)h>mMG+Dgv*w{Tl^SM6guzof72VbGL0>jUN*&QEKmX@AJ){&rAX6 zi0;4@AzITp5v?vrid3Q?q808)`4X9l=Yl9tB1m$A0B>;I)t@Gl`dN|Wu_DWatzb6h&`eR<`UGEQ&*f>R2vA_I@q@eu&E!x3{=&q2#emtndHh?N*9gS+Z)04Qn^9wQfkCmil3y^P~A%%&u4JlNj4X zl2(?oy3n*5To+dWq4j)LBU@-)v+4Y_@)8(JVqMmu177?x84G!A_!8p!q9_!lumC=N zXdbRUW~yDq_XCL8lU00#t4r$Mh}cU&I?wxSwm-yRwXxkE+c7%qX)kLTBqg6_s))b1 z+UUq4H1cFu+Z>pNJ|X0>vC|EC=>ipRRV7J2TPd+tEwLB~o@Qp`G8Y)#_6wKoszo#N zV4s_3HZsSA1GaZ3H^9!!dj!6lY@=I`5XOkB zlQV^kvl=zdvO#aB4Wk;#zY#i0wJ18TGIvPpxbJ%#r-z%M9tyr{lQ_m%t&!P@)(d`H z`9E`h{)L`pb!7^^Qj3D$UjEOo%-`yUc?{#s4mYs~IB|C^I(~D>`t4xQEHOOOtf6_` z=t^o`>jeF~wH(nO8f0?jnrVmo{#aiI$!&dc82QS-|&J8aUBv;?W2=iz1ARC0{k=XFd z_zcz!pM_M5I4xgv^NE!-IUKC7jIfD@j{fN_fua_D9$hU~m9<|OPb<@a4)HH|B5}3e4Vmg#h{qQ+DBG{cSYyp#w zGkyA5u^5M6#rI1}`uh?%rWJ&Cul=)D0b8sTyVw>1W%}x=A5sKOg|@hrATrrPW=yh9 zy5lw9fL5>m)?me8AZ(N6^X5^`_CfOw(Y!lJMmy?8H;8m(Vr2J)%DHaTD36Ukb5c-i zi6C-tw@NsoBB=h*Q9E`ew45uB#)g>aO_+1WwufQ2p6I4zmco0@UqRg=owuDlkHS!d zwC0NG*zh?uaXiWj6s#Ensg|LDXKLu5k;Bs=Qurpsw?Rz-caRlRMOG)gFWh2WRN+{S zz+Afm|47+VHEB^>BTImiZq*6GDi&QLO|f$R9JH)5Kh>mIPBOL}Qbvv~a)xaAIUZ;o zB*Puv3t$Vya7WvQYo}v<9##}(%31=^EhfJ6+)5_aPU)Cf%qT}!IpozPKHAbAo=T>w zM;cMx)MV@TK39XSXN!<1TdRt_I9n^_Gwe;1Anbx@QN4$cBh;r&Rd2I@RekmB|Ic2i z%3W~wzd(Mfz(H#es=&c;0rYnpz(#fhGkaQTf?5s2) zegpJw1sfH{xk8kk&O1nLFxqLh)xgs2;>l^FJPGNloW)TVy>)(dT&yp?ia(*MePakk z<5#0~0_}Jn2&0X3Sh9sU)uD(>k3CH-2*x}1#c$uzo@S4^^o`&Efyuvfa%EVZlh8|~}DicEym`c@Qexr99`;op`{H!&%VnegpeX;NYFElncL5p<*wS1Qhr}fb6T8S#V(%KGt3T1=3tZmj_ z&n_Pd)|ueGP^G{QBO+aBy5LiEAtHpZP7Mou9yl5*G?!MIS%zQzS+hZo6nWSEC5h+h z^|C%ch5S!O^KUz){J$9Hf97wHzv_qb|MKIJ@}FA%>v)UEG5@-oYn4CLxKx|=(|SP5 z8gArPTuO9-@xPOS7y|UfC5l?(VFN^^zpcfqGK@UFx!y^S<82`Y~ z>ELDKQ(lIbuehE9PK<9Esng35b0>UczdT>N>RI|7Kj4hD3aFQEzepI!qf-=SxZp${ z=Jvz#N!?XhkCt5D#v*up!rvTRkMmA)rGc;4N!^pDIXo)q)v<^9%UEvxE>pebFpxh? zqS6`E&3fOX+#SS;4>xkM#30bA6~VxsR6@on0rVny{3@D8+%)J(?MdHq$B%1%hwSD5@+U(sdy+lEKN&SV~4+Z8YDfdHlH z5Gr(;D;2jQ6g_qh^d!6wixT9AsZd0CO3xsG`A^MA%?h@l`6XUTxWjw+W3*8bmyb2r z@LogGy5gJFyI*32FI@RSQAa{b2i53CA{h*NA0`9J&{_Nm(yD?i&N#mdM26M*h zbn^Qgbp4RxZL@w44)_@KP64kPIdGw1iGkv)Zp z_5)-PmYT!zc)dUUb60T0pfkqt$7iYVDg@o6!N)FULo>KuS6nZSf5irW3-d_L%^fD- z492bC($9DxkMTf`vb=}~3W*m!VBscF6YY}~K;nUbd>(8R!x!Sgxiuqo?&3BuM0lVq zyg&YEB@dd4uTwF9h-z6(6kIWnfdM(t$6ligs!U~4AV+33{#*=^lTglh0j~L%zLKe{ zNe2g~!@-HWoH^uL3}IX8^A5^s-)!>TwG6 zMKvS+r;OZbBk%KnS}opJA>KBM?bQ4TW!PD2a*K8OlWyIl@D+v{Uq&~$Ye}tSbJg7g zLv^tqzoRbp--C6r2EOt?n{GM?Kh>|&ES64j%I8Pdy0843-s#c=X`|_buzuhV@jsv= z2oL6iF`{tPr%GweE%cs+vB%1a#X3jh+97IR2~m+y=-#i`RI@I zA^5cRM7nT|F6S{@JMxOQzExDT01Cl}Hy-jp;&fWB5Q^ zceasZ6L%bS53MD@7KY1^wv&`b`e{q=UAPK{uoe6JL^7 z(C0xEk3%KA3xV#=Lx3w+et#QMl`nLuOm9#(lx?O+nWOp}+wIRK-^$QANRVtSbjJW| z1pquZK4PGmlgo9L*LX$i;+Z|7HP`b24SYj3O*X-imz5ypO?Tk#JK;C;%oInfvLgh6 z%0BMRXgTM-8GYFw`xS1Z`0O5Fcr#kH$?H-MM?rz!`{`MDGg|Hhc=b)^Qk`zp9ap!L zTIB}a_2y~w%ds=Ix`M8~hB|8>N0*%Q=(_V@1zr1rDbwX}6cp(F_#;M_+@ecg=<4!w z4e`)JH%EeAI9+O%3o#1~7`Z`R53==a@?fQ(z~kxD!43f+Vyjubd8c z3K1cQiC2JdJww;b5sJz64SDJMO%fBPpUJpL4EdmB6k{O zLoR!W1Uq{h+w#-CnDF2yLHU9r2;{{l9FIKe3&xqeQVBh|>|sJnFA34ygtrRK%|cL6 zgrSjFugfW6-u~tcRdE}H`BY|%N+uibJeN_vbB`#8($A8xDvMi%tDp$WLS9kY%6Au( z>dRZE{4KrA&mqJ%NoWAM&FvZlV9Nv)w6 ztk~pJYv_toYy1+a7f!9=K(^HpdNG%617jH5Oe{ABdRKX0XQfz*v^P=KqNTQcZ<}{V zjTqh;Tf-(7 zMLVak2V)97eoGw=VC}T4rSg$q9c!h%Y_K35bbMVSgxqZU+7a@Z8)#{zYeVq`Qgj{yc9W<4kPj#~NLFZaFg(n>^9AL>mz>_{GOR?Hwg9P`lq>RUiQr#Rm|$K%XS*=s~aqoCbX@fh;)8y7Y}YX zzK_?pCkjb~b*Gg-gv%RPW|~{J_sj<_-Qcq%+Xb?`CCz0w;Vu>-#wW9a$GZ@zTy~4) zovq1Z#i@Uq&tobToB@y3>W}^W37OM7lkEeeeqxT?VvfE%;>h3CW9RQQf+)27#vF6Z zV@~PLyg}xyyfao(hIUoDWcVV+Y~m%dYM=6$OB3g-061l~W4{t4ErI^>P`JHNS^Nd=fEk?3ceNcb1D5^} zV6jmwm0Q0mupz*_2$l-UiY z!b75$=Qxj(3D0phgDUbIXVree-0J)@RG+HezVw;Gq>8}M5gR%~pZX!4f8pY=P9hDhb1}=Q!*$mBn&nb$f23Sq<8zslb9SodRn?L2%a$XbUpl8c`mRXY<;77tzJTD)@Fb60)hSm6#cpjJ zzI>7qsP3^-+Mf2d87?p44+1$R-~t(chJp1#U=*?;2oz-Tr$h;V!_Zm!G+AA>o)*t$ zB6t?hQTk@bgXPPl+0xGF{qpP%!kuwe zN)?-L+I4@hQfk+RXRrt;Z6O4du4iz;@T2X0kS*P}^dAGdlZ=e*Us zy7w`#&@!@C)fiO+!|I(%&T5&%QBa`QnFBCm015Ca4EU1>HNzg`uQo1R-e!k`F|S}; z-g3^%J3C&Hw+Bo)Z-=9xK<_sCG4hsMdFxBwF@3hBdThtUW&DtW@>%=1jOCn{aZ6>! zCxIzv>~Itm=xuZv%dL#{CF5p&3R~Oqg}pG}`vq$<`)5+BP^(c*yi&2uSgc`e(@aV| zf(17!xG^)FG!7?cO7UseEtk1kCf&d4LN_=5@W2?JPQP>+)U8Kt*)q zQ<`#cjL|s8Ft?xV?vO$xq3Ut&pfy6VC0`gcS{T3iO&~MPwakM?YyPNFS6KBYWYQ(p zYM9xnmQE(!%4D;RPFeG3Xlb~;hj!U4Dbi9Hzy}5O3ExO#hV$7rh*3=xZD<8>@%f{N`J3ay zx9UcGw^}ht5YK$XJ^6H+$}#y?oo1C*3rZW&5}C2?x}jb9R1ZSeoy#5|>v__hx8Mz| zB66QRg-D;D>V_ji2oGCO=$FsNJFpy~4H-Weu9WW7VySB&WT5n{#Dp*b^Ge@lty|@w z3}{Fdf#M`ooXtm8^Or{4Nmf*?D}rfI@6z2=|2$HyAztpNZ0*ht`mTM3A%5ZXwOH9v z2^1&6XeQ&5QAOBl~gozK~XmM?a(C9nWrKLuZFvd;Jx#8i}BO?z+r!r5!vgXk)b z!f*+D0vbxs3Sg>Hlwkshx@gUji6OB1DW+kg8-UDFq32H#yQ1^sYExHArE6N?eQM(} zW(BP)K5~n`rs{u6xIlk&SfCaJzEs~#&GFLfYqDr;g9Nn3cu585PxTRtL91RhLPk`s zHHhf((vi~Pc^O4UQD2J4KF2!u_}+YXw#`3~ACAy;pwzYU23EGr)?sa0H}l^iDC@>-ns$Ax@H&clLW2 zGqX}FDP#fh`VqW^Pj=xgFCaeQ{fizZ&fGsrFa?X4Cy#17=fwacFdzt)EA@_=)W)I$h9`UPHW?QTjIAs<62JhjJCJmxb`lyC)UhbdvoG#d0bj!ssofSE- zxQm0v(lms}O6?WEJr%$@5U#~4aYvP-<@Hvn3BIcmq$YgL^oeE&X%!)f2GP_e=PKh_ zCjgL0O-E>6LlZJ%OMIK-w{Y=ytz8LLvUav;4{?DtMny=yb*67jbJT@<=QVG`BUz0b zus2pXP4HwUQ6peXmZut(aqIL+k=HCHvTG}b^jW#vYC({ZSwbR32lANS)YVO*H~KzT_Z7Iwd=RSDmtQQORov&Smh{fiBQ^KNof=Uoc+O# z^ASkw&#f9SevcU)Ex3H0*V*IKqC;C{`?a>%3HPKSI-U7}7L~3u(tuJH07rcw9c*je z+0&lh#4#iUE=gL{s0kwVuaXJd)t5FNda2*E8cS;piGS2<_{^&jh}icVHA8MJS%c~f z8&soMaiigQ)!{?RrW%2(yN;vCp(n zpCThsT)Ky6kpNcEXn?9u(zKVZqY&YfWe+pQ@$UO0|Bh8zz{=-;!<$~}9$Kx^)48&- zL+f6(l1#0FI89gGJa!>2Gyn>`L7f%r1ug9i#cl1~!aEd(UU6gPqf~FD`H0%~CQmv4 zm)6KXerMxmH+#6e>2n8kao>?xNy^{OC&d={e=~l(BFHSlkDtcRZyeW@Wi!P1Q znlyWfu;?=j(B*a?mi{hrV2J}u99ZJO5(kzzu*88S4lHqCi33XGfxW{WL=NmaTW8EiII6DY zuaVGz-=DF7#}efZ3NYZ^cNOb{tZL1A54Ex$M+teVLhoD*KdmaYGsagM5Hhoh)PZ9M z3C!5ufEJ(oLEES0pDyo5mm4d&?G_<{7*4Yjf)NulYuM#|M!B-A=#Hj=Loa0{gGJLy zeuSsplQ3i;WC-OKLsaHLV+a-@#gM@WLu5T|N3f$hqLoKd^oaw`W}=)s{2f%e2iZP_ zs+xO)eLVC@)EFja`GmWk_B_N$dCT+5mW4R`vfqzxdHxdiJCXYHX6UdL#mJ2bf4lN9 zX~bK%U3r7^Ex29T=g#$ajJ+bYYb$%aD-ahH(-dANSWBRsI&J!+jpO+r49)wsa+{#BDozVeR_w<SkqHf#{irQ-AjQVlB2u~*;-+o#zbsp4GByjAor)o!< zDJzj88Ag0Q7y5$`ZKD24UK0sopHu#3O(JTnwKq)^o-8QEdjeXb*lE4YW1gfpU8{^ za-Ya{y9bWwlu1Nar=gJhL>K&daG&T_;xV_R#-iU$s#70M=bhl=eF}So7$721Xn^Pp z>F+{n5wl4y=@5*}PU*Ubt~7B1aQVmVy2mT|cpG1@gIO5!IP!ENA9-}=RKtd>ve7kn zeL2KWL}^tej0@!?KXEyObI?^*i=1Se?K`kwd2}`RFZKzb*x5BkE{k9oVr}T>g!9ctQ*YQGr8=yLPw~r+aVwzbinox(Olk|j zW2jeNTP8AeVTWpqzDH<%e4T(ofH8WfI6M(x54=2AnYj~06o zotadE1a_w*L1%Am?~MjzjV;m zhF(@E^d3gPoz07~+)&y}Qm;#@B|k%+x8l_y=g<5OA%#!Q;w>L?j`RW?bm6?oWgLRx zs8#&3dvLh3>o1rJrsxsqd++t(IdbDJ%qBU(-t>ld*hLbA-|!^k7dEY$SQfkXOy{*U ziIRLxzk*ulw>TZNamkwgjTqguO;#jpcgd!MWIC?X-OgV>8Sq}0#5r@U`YO87T{Zuh zTm9Z|(gkIzPHmNoI1l~}z%MdkiNe!V?EEtv+fd0)J+0T&~{G#_=Qrp9Hwzz0Ij z0XDP(lxlv0at~z7#V^!wawILJFwxE<0j3+e6xtbt?iak&oI(={?cwa&b`6$j|ml=8*fbub%6FY`Z zx6+kf=LZ9;V9m**cmh>AVN?LCNb(SErcfu$S>&Y?y*OX>1?e!&vR5YEx=u z`>Znbn(`~t1dSh4HC8s8@^~qniHGOa66stc#x1oLH}qOK)(o+(9v3{fmUQD(E`LW4 zt#O#GQxQ7Mrb`n?OB)wOcMhy}$KA>)!|N0OOzS8gdRu^g1RZIxRS6XU(->RHu_G*i zf36)ME!uUAy$Dx_4&Dv80&vfs0(hUp?y05%I*FTZkew76o8q+YTXT)CDSf{5(nXQ# zB)1_=Q;fd!p^JmGEw3mYUqB(8a(T8bn)NG#tSibxp;pYjIlR^5eM}Z@Y86ipJ^!Uu z(!wlLB}Gf8Ia6Y$aol*UN~)>v%9?D+wZwrX4lHqCi39(C=0NhY$pO}l!$E^To<#Sz z&LoM@a0z!9pVa7~)0<-Yuby<)`wAE3!+tmsGxJWov9A4}-%SEk)lWpntJ*#KBFPsV ztire&TQ>=tp{V<(r|wc#o!%!!MXgcw0{v|ty=&4+heJc&a3w$Jb{To?A(-)DWZ$Q} z?X&r1R<^#7F@7aS_{Rc5b!^S@oB}OuIR%6;=VcV5B@bD)&<@n?m((W3C^G(44E>Tp z3By5hV4efK6tG`d`@C0fw!yJmLEd#5M#xSp>Ap%QY)+QT6+u1z;0XlA%_7Uecp2F+2~aJB74&P)_nLBHO=;%j&)>qD`aQy+$|iYkwlcg7D|fFX zxO8@9M6f0PJeNe19Of-b>CbgEfr7)eCXt$ix%pwd@DEf)^)&Kpgh`6iswX*;<|sVL z`JuZ%TRl4*+F%X9pB-xNc?)*Y8ob*?AWnDZyyZ10vK zD!Ru)Y__MWP(^Qjsa5p++1~v3Wyc>pZVT6%+7FOC(kM?TBHwiO2g0hJA_N|Le8Q@} zj%HvxJ%VONdx)?0Lip&nK+Qcww446Fn)H-h0g5(wdR;o}HLm5h8`5Ydo!GbdYQ;ABWrKkH&_#jb`G*fSKiZB6* znZjLO?l51Z0g2V+SouKeFNTOhUqQ%O{Bu@2iM0%Z=5d^5Kko%<3vMxFO896VFNSpV zpaehEgTWZA#&}@s8)c8KmEy}DU8g#*&gx|_oe-g|{5YewqL(`!Feckxi}*d0vWfIe zYMt}hlGIFUy?p*g(r5x(QmRy2&E_&Eww&;4o58{ZMfvRI1R4xaSO8#LNMTLG!dO~W zs&rvu^Im;(DGYH{#&l0N6U=@~2LQ354SCEs&1$gL+p4>Mm+0}ZQT7#X;wuR4E6A;1 z-dtKrZZ5G=)9k{MfaOw~{B`)0tv5?pQ@~r1Qn9hOnn4gposJ!JBBy2nWZPD#Ja{vh z%*2-~^ntyD$gIx-%A{xnX7(X+^0us}^`+98v2<+LiaeKcd)<}r)TYu0GGm)KZkA7N z%4KgQjcC_bKlmUgMoHRO&*%Pjc2eHF`#9Tk3YoVdw*MmJW$lS{L8BX97666~u|t;l zpuBaaPFZ>r!Y*oMvClT9gGd#>C-C*|O#Qtq#uC*6>w__0@ z5WEBXE9zk1Nn`$6V}4&|tWTS6wmtPB&RWf+dV(_Q70*-;TRa<5J!7xHI2fBTYX68B ztan={Sme^*%Ez5aTy+44eBw}+-BCecIL}pg#tLV5F>gM4M zTj(sYkY`dZw|?`W16slEXw4rKY{T*VU9hMgPMLD9!KowCmre@>oXX5%i?)i$c{!3% zf|=h*?5UYrNd!vVs;hqYxfmZ8*|byJXrgjPmuJShV)5(lrq$1+MpO`T4lDVIRF&8i zFhXwqcnE~Qm8y#EH$}~)95nlpzM4w0mm9Oz7}Vb8fNul@bv(2T1eQ;I=~!lLC>Edi z7v+>{&P>%KYv9#SCg4K6+NO<-z1lU#Dh+!a;DBto^@{>FP$>mPU?fgrRQhz4u3n__ zeg!AzRUS5jt11tK@jJZJ=Y^LB=T&RI7XuQsW7oD+-mv0wmvpS1+6cB3#H*_I!vbPZ#?oiX&-qs-@D%F4szh7>WTj#bW+uXf}s%= zB$b#Is>{qK?I0g|fZ&4)=KbM(YGiKq#v?i#jGd0uD2V-9%J+_{9yglI2OQg~;csfh z2U(k1&$CY|l7r2qI;tYq)sV4KN!Ti}@*iW2bwVvx`p(sZ!V4)?qSX<$F@vG>|s{en^E>Q`Q1 zhkH607DYA0Iu&iDE1KoX3+HvEe-D}i0?Sc&Y;(Fj`6yv&Hu2x-*E=jM*ZciQklTPi z4h`?#VH@y=Akq80s!OBc!UJME8}QGkF4%xSf%mE_-*k5{4i3IG)(7l3Rh#+-hQquR zp{e6V6gM(;?6RJt>EB0!;qatJdo$TXeDup4^>BrA$hVQ2qb3Ax$ST4X3$_x-3rdmT zUj>uoxBy*)iO>+<%u)S~ z4WU`(C~aZL2P>J1B_SgwuHt6=c#>FLouOfQc)NvQBStWGj+ zMKa=l=p=(E@1rV{Nya2zNk;s9LO7a%w|q3CYJGNY^;agTUhGJ7o7t zvrz?k?=?R77VO473E_qST`&p?)IO;KL@mq5zo(((#%W$iF*-^TYWFOCh9}9nM zNpBAc*6GL~2WES$u5NG8a2bmBfH8iHQE|x>eJd@%a9OVXstlHrn>Ci&$Y7epzJ&9>@>xWqE2`RMUR#vemnOk_8zcFqVXzz-TNY- zaEWocPhV~`MRdi8qL^`sg!ciPOu{{99ZJO5(kzzu*891n*;O4V;gUIa^tb50Kdq1 zj4uC4-M`R&uS+xj;H~tZZnZpt%OAGUYfo8tcl(f?3$Q_hE?TW;#4t;g58-|9OvbqG zA`D}^!^Cicl3m36>6#f74Al>B$T!`@aW;S^l&CkCP{DHSc67O;zm-w%DM-t!UJeF7t{18~+wL$JP z)_EU4hryY0Jpoei}b^D{+w_ROS9mAf0_=KS=gFyj9P# zQDzbzC1czb@n;9Ip))l|6boiz?jCvZuazqosFRw;-^RFF;+WQP(R6J1oJCTWt_792 z2Rus!{@4>wht6J%m{iM%<)AkCcR<=e8eiIb+1W;$vpDOnpQpW@%9x>a8hlKo++-#~ zE-Aa+4RJ`De~q|2U#d81aVs*erk6Z&1!yBPrYS|_n^IS6W^U)T4=aRxPw>@EeVm&0 z#D@Ks)!(e?AkA~TYpqCvqBT=c3gqJfeYm#D$9n;WeYxG_Cw(qSK_`HQxIN>bLAyxs zCIA#dRn+$SVLfuvAr_vv6?(TfkU3~JZClvudlHN zzi7!dAyM+C;TMVcziqPQn@}ME@d?}{U(F}K`V2)_@-ZbZy-I0Mb7|9JMxp8WTgz#0 z!%f=17To;QszJ*Uelk7wR9ZgC0rR<{ z)}2*VCkV^qa!ss(>OWgMN<3u zkTVqbvpK?FG8Ph!WAu-isoehf?N}DsyRXrDjDHEl$xEWa#hE@*JVXkdo#}$pstQN_ zadg1SfG-iy#9P!_6Hp%N;rXasecl`4B5+qg$rYjY-**|>|J^7`f6xA~z}d5Z-_r=9 zH^3X|4HmZFFrYjJy>r-_G?JZnm%Pec!zO9nq?o~F_*Ftrm_4@CN*HyZ(i23f+|rQZ z6FS(jhX~zxA7KgYL1{<&k3o@~iCUU=L%MQ*Rk@z!(>JDlK$y_y==(R@7OX+v&{HGy zwUPg+()U@PzT?shPoBQ-N~@LWd)Ykts1Nb)@L9hmeLc2gH0yOPKws7P*4xCBG>Z&Z z?+tsws6C1C2M-&WqnKVu;EMEzx8g+(T<;50<@YZ0OPy5JTS${1(j|GH0>;t(*!A6Y99WZuv^2F+1=#i(~B<)_z^H{}UguUn#rtmo{_NT^pN$o(Xb- zut685#y%wH0u+zbh;x_Y_flSEJfe)xwM=B5=iF9F%tZShqCq>T%Qr)87vFb+KpV8X z4=PR=hMJ1s=R;Lp!$;o%eNB%Im>wGt7L?dPyijlu+e3)$2C*H8At1Joy-n11!Gr#lVo$xKqM4pnp#CH;#$B&1Zt5>BHPk_9S(VFg z3;#B%|9=wy@1u}v;WsUeBDYDc4lgI&Q_RU9z|mc&8`If#(IE4!u7VOUCm}&ez_)fh z?TWR%Y4`{Ro?<>zpL*{1sm^$E4sY7GdZo%v4$0V%p4aG{o3eK%eYO1^B&Xcr~HU^fub|R5Kmm*TP4!YbW#tv_^WBFRhIVcE^P&cWRgdiC_9I zabSr9OB^^g4n*}2dS`C+8GriZ)=PhI<8O7nw3|+)t-NT;-6_J<`hHSGewV@P{9oN00G#I?J)v+UtJ?;Z3Q3~dtpXMSI+?-9o;*N=k!$3_Ht zMaM0wz3>dnBWaz^;)`m3MK>BQs$DM|Fck2V7S)CrO>3kFeC47V4AIbqsn`4^HE)?w zR=K3cUH4ymNv)C}CM|Z}SQ!;Lf?|L>8%ZVQ;i%LCVE4vF<3tPy3$mF`R85wiQzzqecX8$Ip>{s`PU}K zi)&BNvBJ_^b^sX8yND>xt2rD61$w8g05D?!3GgZm_zpfZ?u@q%Ea}pJif=%-o;}}A zaG^Wq9&eolUI*j!09J4Fec!VY@j(~bviuAz!E^$Vx4&F?0r-xS@fXDQQ0ErL87Ss9 z1!Wum{6WFKHMeSWDa&EueBm%&@0X`(09@FQTZ>y+IU;LYpMceVwD$&PZ27{JAZ-qB zXjPx?dLR{WP$)Hbe-I(!wc%#fRHUF*IV$9tB8>Bj&3k*A5~Y6+a(JfZgoWOOkal3v z#ASt;S~YXdNBHvx5Ba&giOR^OTJkBLm6C0go3;Zusu6EZvm4y!3p5|0vH0r=yKMIFuO}p#Xmo)~YX_QyLUt!k%~_2_g%x*dZBQ)I z*$=fvt=sJ3t8pkZyjky%|eZ*a3f8fMD--7~y7+cK>qL zTTy3vZ+$phL`kj>=87G!Vy^h2(|voFl`}YzZ*w2ox#ksX*bLD;DN!}g3wqOX{e~sc zd=mNcDNLr35y_A#dU}Y#*zmImlK5!Ww1YYQ^oe>7!@2vYN$;!2nziF-R(W6QLrUp` zaR*=4+gO(qws5gc^HbI#Oa`^^{5H5OqUYVNjjjhi33{JdMeltlBIKU?8+au_zjxLz$ls8{gd1hFJVIZ4$YjYsz*{LxW%$T^u@O!3 zH6GVqEMXvkOW!39{10-#40XB1AhX! zk`adPxhby^<$d4t9+BlMdasSMI%=PWIL1=%>$RiyU*O~Y%rq{=(oCwqY+!vLVqhI( z>$Z~K=Y9Cm$84I?LHC;gnOjv(*b1&z|Hzxpj)midv$&p+#dZ2m9eY*Jv^oCy#-v$< znuQgW{cTylSMLANZHhX!^gz9Ph4X0-ZbUcz|G*XL<*rC0DpJA~Nuz-uoOJXiptmEW zH!x}CMr>f}h!=FQ!Wqt@e+7D72))iqw+yH9dTnBOM zTpTvCE^i!1?5PPJb$4d@FniZo`WS&t?|YURnsOcch^2Muc9;>c;-!*|YIa5DqYLwE z$2@+$&++SHJthJV@bMn{l{#Ijzt8)-M^2Sre-9o?x+6lZvjk>Md?5~w7zf`K;h^>u zd@h9?geNQB{>;$$7R-Y+hIc(#ItG=K4FWFa_G?^MGa5r`#bJ0@?5xR1UuXV$^7nDa z&wu|N<7b=rdHDZ^{M`17Q|0H!z;kNyX9FJIHK-+jR3fs+Bnt~{T$sH_Ew7(jm#>N6 zGVNX_oiBnPkqGABzPJd!YCh-6`sm5XpKr?d<&Iw?e7wP5hWxtt=cmfAn-`KlZwuq} zLulW{W$>+w$e=je35IHMg1hU-r(?-jZ2Hl-SUX6Ye}z3Y>$~$?Xp)yBbn^x7&m?fyof8P$ z&v=GbkJNsIkn$t7ff@`Rsr6Oi1q-tC*VKn`tsoRu|MR8B&t~!S1WM57=O=!8s{Fib zA$g>*EB=0EsLZ_QFp+*j>3m0o=TQymU+1G6Nz>2m8xB967_SpBA_Po8GCVKYG5Om^ozBspN!lrHRBt|WGO83Qpcq4$(qxI0fh zJV18ZaA_)b>FBT@g3KoyO&P5-@#im%N7Ly}Dp7~E`Z+kLudQy|p{?~c0bNhI*Ehrq zF9hz%Fr%rc)r)xrCijWDNyx{+$W_hN*?6Z}LeVuPrtVcdiX;()(a&GeUkjFb9St_f z1Sn0RIf4WKIm8mdElveY%}>;S9ildDPV8D4@GPHHoeh@ORHU+&GEpaJ#fHH49-OU3 zm<03}@6Zwmbqp$k_GoTV;n`r2pIgo5uQ zCD+Xfy6GaItjL_SoWbbFltbVe`^&;=G z5j2sbr4}O?AooIaEQjXy>8V6kE6$qXxdAI$`e#m;&3 z_~Q-HqgqYRr)7H4M3%KS%6wYVVSv%17!v}*Tbo`Jcd~QEwI&1`@f!HPa(ehiSrlNz z!=(Pe8;DY4C6=F`>0{YnjYR>qMM*J?Zvs)G9;lk~^53T7C%EHf1Q0IXl-uOWq-(T( z1VDZzJ}nAwr8rO~$W@U7fO2=oj4iH;d|a*q=Ht;$cLjSDV0fGZ#)!RCIIn`d|Nl0} zu3hQ8MuiqoOD(RAyL)PuRKXz$P5q>D*}J5!8V@U}0-CyrH*5;B^vl=KE{)Dfl_yYIrkQrJ)3b8Bw%_{mK5c5UBv%U z04l%c=t4peb_U0RR0&LtsLTUCyPz1+)B08E*$bx#fs6}+wjvHJmI4vku6FKtyWLQH z_Eho_kmchXVrB6zx=q5G9y`Mtvs23~FZ#O0AL5@GRQRpRr(Fr|t)0NA5tL=*9ApH( z)}|XPlR&vO62$Czk0NH)iqFAiIBpAb`h(iZLMY2g;Dk^l>mNnpis!q8zQSB_*GZxF zRVGY?rYmS|ZqBB57j3k7=!^}`_m@ZY+=};Bq1kR|5KVs>3|G1Br^`)UEeZ;gZ52Th z>Es#?uuoBdT1O6S{ngG&L?;=U2L}*X>BG#4I{$2noxpa1y0f^4$XI+rw-|Q1H!iOV zhTt0=)Ywz2Bk1Y-OEOw2%<|9(`e`llYJxPF-_uI7ie{)jz8vEZ9=2e)?#rYBlSClQ z7vQngRe>bAfSTip|~r8YYO2J zi9xTCn@)g7$zkl(XNS);zL^)b#Xr%$rMOm0W>!Xb2q?E#Ob9~uLx5w;+G)*12Xo_! z)=42nX~;WkUtPc2^L;lX9SE!1g!W0Se=H;qIxW&~=iA}Js$dYdj&W@(xw{>_RvW>! z0=Wu3*BURhyMaqZ93clZAHFCaXuX@J0zZ-mi!{{`6?+!EZxAsev?obepd` z@DbKgGbKwe9TvTYB*6m4JkXVvi7f(vN#pz0;4~eTB_gV*W7hu!)P0*f=(hS$MO}4D z=qk5cN2G!lB|E?okj=7B)6R#RV*v-S4e6+Bfp=F-TltM;uUdepFoDnPM3g8za85x1 zQ7%Ne{`_ZBZi=YRJD?5N%Plo^xGstoPixc4VEM_WU#+5Bs);SNW5M8M-TcKEmh@~t ztx7-H0a3Nwh(WZo@rEb6{MmQD>7Um62Sii-Y2PHU6Wvrx=ICLP#D;B+uD*fmWJlGG z_I!b`b2&?ho2_~KV(85G>09dZAzudMx&ZRVBcRawNkxiss8V9W?65u@&vNHVF-7Yh zyNjncrn=@GC*AvP7N6X4QZ7)Yl05}pJ;Z7&*87s)-8A)dCY4Npg40_v{W}G6S|{)G z`D(3$bFeN9y=69ibxM*Du<*aI7w6o;J^alaRg%Ytmt~Gl;iw= zOEdK*7=1~=JaP-tIOA{AkJg)I*h1sDEuvV-gwy+{kFuIp)ZR?F#^PBmWbDiy=5GU9 zsazNIr93EUr+ZWBd3EutZ&uVrpI;Xw>h1Gh@;$4Iz62;#Q>}~e?9JlKPK?0X#_HBq zG2v&M;oly$hYtp^bC^_Q<8{IK%yfNifYLs{aNYS?aMRQ(7`%ojsP|rf;&17$0Mm_Q4VZ{^F<4mgkA$*)fKCXCM zTveNJ-lltLgRs9d4A`gp$5=6z3c3Sx1e7%!BWI@svW+;gwas7s{J@*b@jtZdw}w13 z*-o#^QA;29%$|Kujm09w%AtNi+ADE()WW%4IKN23?X__#N;uuO zb;a=?RnWPvj59N-ve)fy732TXz*c4>@#7=SrfAzS&InW7xWb&+pDYK+Sz7OxU1_9p z+jkmZLnP5oOB94C)nv0O!bTT`2k^$R891xDq{T!wmZlo*;^x+DPRUPinkq#eltg6ANlX= zxE4PB{43JUc4r1vrgkPyW}kFt+u`GCUmS^Kyw z<(!x0=e|~v+a_h4(l4c_Fho}$m!+KZvfNmiPwc%XqG1xhEY^~T$Xaq%X0Sqic(7bm9um>3JUZdQRkY;%B?K* zB}+zZG-8@!GhHN83*F&q$9QkN@C!BWZ44d?D>n5=tGjV~_5=c8;ZA%Aw;+1DiE(R= zN`pyx^|aF<&G)+Vl!ttITP#8Mbfcw6Xx`@DZ!j61m!=vj%&tA(o6vl4Ev2#dAD%>d zaxeZu*Q|oB&S@9Jz&VY3&!XVW52sHu7MhBsn@m1@&E!Y>nrZwlOPV{_tm=@-W_F#j z@~9zw`hfPG=Br2^od&|Dtl3*>bWTk-x%OvNtTn~qGZK=d8}G0=-qrW3o8*xNX+|uc zwu%7Xo60AfwZ)lcU@GM(cM`YMquhEDTMANc9j5AFL`(L#(2e)>RcfL3zTiRP0!1XqJGv9b@F4Cva*G+!n3vOdsie&)(H&(Hp<9NDQz`NPN$8 z5U3Tm_O~+2tjA#7_XxZxC_<=261PirKH?P0{c}3Gt`!F-*NKZnga&K)q zScS?beZ_abUxDhM%p0Qmw2ulj6WJ3Qn>f5Cc}_OK?+2R1Il(9gs{8@JSR8pR#_DLf zV5)4n_Q*xN@D7?ZZAQHb>0Flbv)qP%pOK(V-LtEKR2ywnANJluaF;xY5s@KI90h@E zTi|I`F)Oocgy;{evnV5e0y+{4(xDi#&bqJ5NPcA~I@bhp%6bUlR&xaf(uP;$S+P>t zjb3zU0Kt69GBiXEw&^Nc-EuL6H@)_?CSL~W*A~gCrQ!&Eus=_H80P!VlQ?~q>q3&P ze$21RK+Tc|*Uh-;QEd2iGb#0uR<~H#&ZQbNV~uBxy_7r~%R`c;79(fn#Q4B7Or)Z5 zu^{ed;!2Z#wk_o4J3GtH1jViHGMcXcskJXH2*Q9`5dX_Tbk~_y?=YUV8mJnXlEAZq z3%}g|s-3RPD#LjlPi8FE7%$vSv5mDg)coa*vq%r4C5<=IhZgFYTGTUL-ZG2&VX=gf zT_vg>>x?e%QD@ZeMtlDsdv60DXI15oPm&p$rU^5}RtgpvV1z&mL>e%)1tyr0DJB{< zT~e)Vq_qZHv0@@oJ8g!U(F{)>to&N7Z)LOYfu%aL%m}FH zZ>yfJX-jYrP@zKHasqY(t(&6RRGP;h60$fsHhfU z`vfSiDOE6}Uz^?67QBk?*bPs%;RwB8y5#N)9^<|XR`bIuR*dQQQ+dn9C;k5aoRUaN z2}DATmn&hb@A)|$o@ zJ`IWP&^@cP79SaMwAg0j;=xg$F3vWCbGOE!a#G84hfw`p2D?M64djPh>J9fwpwtly zcjig223*z<5;A#Smse7F1X6G;>nP^MlIvDe3MRGr!H<@-zgG(x$Vwx6fwQ+bt*r~7 zM=hMM%?>i2nYo2cuZJPj^=!I4Y*?D_Uxm9H0?5|}^iAOpeNnZ7xJ=N;!_CBo{$%Ac zs&XcWwfxo&3zO{TF7`1HQ4D}YC=6Bh#i1XOz5?!ZjtrS`VGo5F`oUG@7!_pU2rGP% z5<&Pwdn#u~b6ZJL9!Bd*8I353F?Z*b@~QXK5aB74jQZK|^DDb?x@J%f`4n7yWo*;7JL zu_f6ff@F^{)APJ`MlFX4sWcH|y5S+kQ)JQ`5_%Ix%?wu^W<>XFk}1Cq**eAH^mg zYcH7|pX|3#1~ES+%>yRkNXbAEh8ZOW!rF2@CWMwXSVRb6`319h?v~Th31kX$Wo#p% zXx=<95{vSXfpkODtEr`WfF5ah`FAAOY6!SSV@GTn?yP_;#vDJG;7Vqp#ZT^sSNh2P z>$fYAQ<$Vg3Zx|C0%X(b2xca0!5V8zJF{gNv$+K2QDlCK@O%xC%4PNzif^)j6ImUT zQ4WRR@+Sx@+Y#wz8#behbYMJDYeUy?nN4P78Io1cTFi&3iFc}rGuWR4oha9!lX z(y6l~&YBLA@{F@&Xtb$rorZu3)`0>-5lAXtTFfRCraV;yHhiE}c|ZG7_hK-aHl}`B zN$P7umjl;C8!iYcT#&}(7hveYq>nffKBz`|f$;F9kTAJaX8A?S+4HUrLclS+mI?Sj zFoo#o&b6V(&}cDb%sLn%J^?dab2KdSa0IL-2;8C|Bq=5R0#+rZf=$*4B3WakW?fP> z;_{`+KsFsBSd*$3lBu@)Q&rI_*rZAjNtKb4BM|7aQ5?^St@}^1#@GwLGGDe{eg}`j z+xNi>s?rz=D!sv|G%A>v?W`Rjt7^-U86Lcd`q&dMCu#iQi74tAw51)->N^`jae$)pB-QL z!K>@>v2^q@IgSDgzTKe6_u?|p4Q;Q0-{Zw!q4D#AD7>pV@9=#)NouI8YU$(<3W)tX z6kDnKOK`t7#i&3ZZmU`vC{9!~1j6>4P()|S4$AV(?B!Q& z*k&H|;BLKO^ms7%P7FRXd-;1(YAZM@wK&wU!6ra*-A+8_=ca3Nhl zObEXjBi|(XV>O!0(Px2*VbJ+K`6*xIwW0H6e0pu@lPlSRU~1y`A24Rle4$|G7Erk= zI!NH2ajei_e^+ia1s&=EC;Tg7r9?+S)(FJecKDV1`||dByoT>PXyy2Fbi#BSZ(l(s z^f+{W?kmzGM)Y%yeyVWI7J6S()Q{t}QdK`GZ1eCljj#z468*Cq{%M(-7|Hb^%x!w_ zHNgW6mPr5HNsbXRVe;oOb+rZTQc0L~>Vx{8FW-~r$abJe=zB{k`ZXFzMH1-_lmV2H zxJnrrAWDvsQ_865LhTVk6!n}hsJK=WnDNx9j9_7r0fWHr;v&Yd?7T7RI}#fBCw6md zmBWZ?H4aHCuppn3A(P_lLJ$eP_IZHG^`Li}nfK!}=I zg_*9S!iMi5lAl(E8Oz+OCzw&W4_zhlT%)C7n(8&7H%WNJCLA^Nh9%e}+G_zOO?~j?`)k&ELL)7*_-+W85CVmA3 zDmE+Nz}6+|<)m$ADG)B@Wge7Df>Z8ISYFT_snEBsdYeaHT%qOMYvFb8HQjimVIOo6 z;!vY8OcEhpQ$XGZ1E7I6HgpXA9w(m>`@S=3Az9Tu#@4;XTt<~ZD)}^CXHtSN-Wh@4t)D#5|_X;uWuMNdC zo?c=I4ShqYiuzt-;JqsnAaAOln8IqV=GxG=UZGgyB#}o!9+!EhHKCg&I$|^0Y4i9& zwsuja&!~Xau89(W<*J@)CdviZlSuOiRbmnGCZ|?5Nq&HAzY>{}F%aRJjpwt>Fl)Yu;Vi8Qk2b(B;Rhdx-1S#Sod6iO7 z;7Bw)q>&fyyGW4LIU%w@o59sQ9#_1EyA{N6TA}DwUT1FIjek)1Su3l+DA{ao5JfzB z)-)9`n0gbk6FO;3XP5LK7pb=a|LqUGy=hS5O+U6o1Su?^P<`Gl=}l0c*=b( z7v@XL{SF0T%H4%=vvN7IqBUJLIiamLRVsnGsUDW~Is2zC>nAFeH5EuH01BQTl?tAi z#oH<+8%&)iDg}=OPtC!49@|$%S8HkUkxKZO&fxAFkxfKAAbhpaR4iGBRK<_QHNF^W zPFEGnG02TT*Oph@%FxQsqO@7i3`|}+jgrkx#YH5h;$V%G@+)NCsZ17$v>Ud>s2%Xn zlbp=+sBiIW5T%~pSR4BM5_cXOwmasrrO2F?j_0GS4PEJh!cO>dD0C)kL!BO|g$@)` zQ#~HeyYN7~)PZo@)i@^iyF&-hcX`6bcsI2}sv{9IhY5bl1Bj8Z283_4MS;G=j09iq#RS1ZB7_;j5^CecSHCzS^xZ5YQgS6yS$U+79g=y}EwQFO zcR=W#LyIODVTG>$cetJ|JCMXdh6g1CCy?W5#TP-WC_wYM7@y4>@xKNyGZ&%}=&(>K zEl186?|6y|0D)#>Pcc!DtXPsNaVboDI7XzxD(pEWUZE0Rv(^9yFOoEP^MNhQ5@Z9?1KQd(~u7O)s zt8Yg{h>{P^xdy?Na{VJ-jHY7}9apk~MB!r1q?by>rJ|%&Ld8hSrE&~HeW617$^tDU zN&h+)hms$JB)OVdNIa5Jgk%Sk&m$xHY!n}yQREk>nz4?z!dN>*IartB+PWq?Ol}Ns zZQ0J^ek9#|c*2|Ni<3ARDvW|^1wuyXHk&Y%m#^G>5*I2T0F@af9=1OLwXc{xrHsg8 z@D^68*r;0uk%nLXoh%v-iw+}tICj7jz3}HJN$Ks#l8bQTLxnUH2qIHpdRbh)Nfqlu zbQ&>2%nFuxTFh7~a6U&N^VR@wsVHo=!)ImiHw>>fBNijKT9d7^Ai>55`jOMTXU`ciyl-4{`kBtp(jzFx81$hIr#)kXK>F zYwEF;=n=X3FTAh54xJbzh)9McrPz{yjY7)YYO5t2jOjpZ*e`y1atoJ=GY29@0)G}} z!7P)1qy$|3jzcR#Zw<4OLgnc-6uQcM@l^ECE6f*`U?ZVdnlGNs8amT_QMW?#%vTIw zu#Kd~;FqV-N(d;R4&faqq=L5dj#L4|6HwcDmaP*Gs?Iyo15A^^021M#jAPsp;@~dD ze#7hj28URKU?kLyH;HW4*BAf|pv{bnBaY{UH!ILr7|@pDD^&`hw8)`!qKRJVqqI^$ z@e8Ug^4?NnCjF76^ZaP$zSSli)E*D?osH@pFPw|zaH32clA|?zvBM(n8!-zUMB}}7}ipteC;r(5)uIrC{ z2MOVpxg)q=?or$yhaR0b5JicRw5C*#^$cAm|xNbTby`pC08< z;+x5Qu9gAgi2;>xu8E(aWAu~A<1AxK1>ihZE8mNu(ej~sh^6mr_)-wE@VyMhNk<Y4PoIvi(uMqoa3M^5TO?N~$+TdV7rccmj+;k!tdZ3$~jNAih!cogLm!QzO{ zEzWuaJ{+!js4qj~3SQUk!8SqYSh}6q>T#ehVy_)i{?_j_7r0Zr3zV1WoK?#8<^~(Af{$X~MhN zB}wbH9*ELH#^F`ED|!9ssXQTYYzngP=&ngKl5cta22EKvD1q0HuEeFh0;x)t0$kB{ zOJwUQDhUyclIqP7g+KW=npjFFjb3H1g|1q;B(O81aA9)~TF&hvyOw&W(<2#Dc6#J3 zgV14h`gIf)VmDyg?Zg0zMG>$WQh4ygfXd|f9tBZ8QA2u6QH1voei}M$wn@YFNf+vH z-B%DU_g_LPIK?xa!gn-~f`k&?=@AM8^*pfkYMh}A2%H)T&Bb+@040Pa;?e@O@&s4$ z1pHwLH?Ad!Q`m&_md7TTK#`}7z&o}h;z?C1sTMtTZk1pKm4 zbfNXSI8pLF$;?A>DAXO`9;e6R_(T?gI^>aI)K#gZf*24)X(QT@2}(q1Y@3y4Lz|?N zSw~~x(yh8Z2}Oa?IuaL3hoC||h2AT9XPqg1V%7DX@B5B$pRSC-?1g>*R!66_+wmyu zy;=6@f|ggm700sE?iZY}QIu7)b9jnJ_~HO<@mLJY*Z^5xSAWX`XtKChlig0&!bWe$ zMCG_X2ifuAjVOCS)DK=2IO3ZF=s}M zITbK!XT&(60><2m7+(E~gmaBlYNH3C3RLPUQZX3VI#HIlc{5_@S)U;f-N5u8sgu*{u-Wm9hLWJrF2^1WuKjX)U3 zX>?i(OrJD1HRt%~;i=1Ld{d>K1Pb4a8@;5a!wL)@KTe%10E_R%^IiZ}Uchn0HMx@n zl__G!(F)-5^wt^)R4j$ZbH_AGlRFUq0_Zz=c}gR`xV$_KtQV0Nf?GNM=5tK2EH4ba zOaz6zOyPs?ldLK)CNIwc{>7I|01|r zY{)NYo&4RiFeBG#g9Vz08$F_a;RqpN z!AxL=v>FRiu;K>_XMcdkj4dN9IGyhrz^8rtB4nb1)4AL~Q(=BHj?w1I0)3>l{B-|D{j+pBKbxHP~d7+K#PPvpQh;AC2 zT68u@;j;zP5iNn#iliO7{9CY|5Y&kGtMz*{vFwr7kynBaGI<#S_s|qNzVMb4>I1lN zvcKlBWus|OAhTOZ{xhzo*=o_EnfXslo1)3;4DaRaA(x|K z)|8rxyb1IBg}(mZAD5ZP8C$OD*1O8*Te%Q7$OaW1KsUQp-aXn~{od;0358em@t!_5 zpbxhNn=!`KcOZf>zV8M!uy^5swcTACN9Q0S%Jw&kvGaFvu9{w#Mli1y+zvo&q8ytF z!UusLNHU6t>T{wpT^iMJ=&Pb(`=1c0=pmgu@WHc!(XYtNclcHg*1=t4X5x&@)Cs8u z{SJs8nF#KIONik2$fUg7zr{Wwd|$A7sI9&k>Bj(}(&zFYzCk(`NnOcQWrjORw-ih< zWA@G)GBy=HKH9p61;@$hX3RjCsp-w{fz*m$rQCQ?SA;!ba`IH^dbkF9h{gET_i{pL zy6NP{{(H*rJvaUd<#!4WjQdl|k5=~#<@Ys2|Gz1}w|GhmmUnJ+>s2ZQWzpL@!eW!< z1gFr7C^X!$2Ov6a@IehlulD}34Zn*j6lljiV;Y)N!hwTzK}D}h#ntIViHbT9Qj0% zR0Rs(d>5@=T4(7VqVu)zwT(Kk@C>4tjY7Urzuo4h-#Wr%mmN`<1CknPyaqHXVZJcY zn)cea-gkfWk6!N+Q{7$kOCMu%h&3;^ae;oCzYl!FwV@x@@5+XLCqU4Q>_MQmpGZsF(zFybadLWWsGV5gAbhmh$6na;vz3>k4ARAdMuWa#SE#@TPI0gfQK zGd=;FE?G=l$x0o^Y!Y0i%*Y>LNd~vE-X?WubZnvqSaH1^8z%su5W=Y_LH4WwihgEB zPlFaWFHu+Gf~p$egzX%37A&=3sTV8`LN&V8GGq7ADWuWz>~|jkm)nm1&U$pkSoqeR z0P=&cRp4unPNA1eZav)}+oNK8WX*DYk>eL8MUqIWSH<=!+?2u9v71!vCc)iYtOYI` zsm*w9#&bQM>+$THywhb$qYfz40nOBz{$#hP*exKOjST|1NLr2vhGSWT5hg2dn!9uT zFhdRu--OgKNzDTo-4gi$0(|IH@HNOUu&hWaHu{cE6c-my<$yDqn$H*&o;*5L3>K?V z&C>^1q1-m2LRH%h09DmqKjv1ox9E3OOFj+|RJGS3P*=6@KkKV%RMNmU*4JA+L_X#t zLi-3r@-C5&`HAc%5pPvX`m37sNrm_0&e3VB+DZsvrK%(CP915NI?_VFuVyulOKJk?a3W z9GEoi*?`nN>;DDDV*URfv;IHG06k9%&~YpU;}26_cOxRxqUzT#_PO=zW&6Foke{HjlYEUb)O~9h5(QeD^ zES6UV*|Hf}IOCl(*#sa8x(vhOES7L37nVxhvYDlt^dhq2T_=_aI$R4!EX569%ecAD z&rJj{E;ovX&A`G(uNQ9kPHy-F_k*rjArEKaUI~Pgf&i6=Vu7z^Ed2Z1d;*CA#$`d# zuo+l5QL(^xvcM-;7}OyIa5H5n^Kg@IfC$B4zuJFs^9uzrH@%v3NncRaBG zR0G91c)^qG-;Dqe{wY9kY!$-B6O8e@m=MSsq%Oz`Fok!$0J{^U@~Nkg50WOvA!8F* z+NB@KP7=ts!LdR)MDR1SB^?ZG#hwE32$2-p(!mP?A+Y5~Dqi9N613FWo)Gv`1Va_j z2!c~gkQZ5O5guyVZw_*Z<6|nbm-!B)q9sJ1eY^xv$D8a~Hu1z?Npe5=DC{~d(qsrc zdDrA^7G&Y@S>lkw+@kidq-ebYXOto8l4KEu)I#_aj4O8=G~)W$W=&uD$t+LcbgT9F1A^)HbwM&16XV4LJe!S% z3I}1Cz2r=_-QVBiw%yO_cV!z50t9BwuMnu)?)^XawB1S^Qm)ocO5AFLBMv-UL~h#u zrte1Qn?7CD{nz>BnwhHZdwnJqtWK?J<#9VQu7jh;-$rW#JpG5~Vps1802QmfjT`dy z)#C{s6(mwG5$kP1)K;t-W>Sl)!?{*Kd5es9P}L%(K;HtU7tY-amNTgZfpGRqR2RiI z?zmLl!ICjhXXciqsWv<^Gf|&O)d#l0hvZ{QGI5H_Zg>wKh4=ShCWeIjTMa2`LeZz~ zV#lV4!LLSoI;99nd-&=$)EQC8ovaUq&z+&1SfoaD)R*vLdHlEFU{-V3xN%7-XlihK zt8d5p61>E)ZDD5%$in;P5Faov8gXV9p%coHg+bVH#T(jDQFsF@;pv=n))geYKR?9$!v~4(S@14Xie9FrSjEqbR?{&K9!G|RWNdZ75;-h+^!Ovndtd-I zYyH)RCcJ8J;VAC_)$uzAks{UjbHz>Ry+)1udS*xyCa&mvWm$G!VZ4g!)MLH_NCM+}P+^8kvlvJ1d^Zk|SZ&wY-3WeWmgb zqi$zLT+cK2TRhLcMVj`)>%K0n#;5Qoyn3z7-%5>iJj-$%AESI_w9NA_m4DgJgA!co zV#Wy&S2apem7`f1s`53P8C7|lm7yx9vzbwq>scA9@;;jxRr#Qmp(;1DnNgK9S{bVH zN1GW{d8L)1D#x^$QI&gI8LIM7n;BL4sgi=m%&5v?tqfK9tW`iYoiddZZfn=F zk@skr@?0w;r<~U+kn^Czz=aE28LIMPn;BL4vX!AKcea^Pl~Y?8s`6`_2~~Tym0>Ce zx0x_2=TmvQmE)!NvMOR0LHym~kT>6pO)4Bw;_}vpaK0DoEvfGL978Pm&F6^4hRYHM zBW2R77R>AP_Hz*Mr#yxwZJ6oGi<24}vSDyB^{A^Q6lVT>63Ee2!Qu zUB0>L!lBUT4A+ZTP~TRX+f6FGtVA~>+@C5#tQ>#yIbx|)`R1mobIZi69Dh}AT|X-s zOIbT90-s-;gexaEdppuKHchE_Tptj{3+tv5nls>v>lb|F27oKRSQouu+`J%J@|({w zapoFMR88Ugck)yGtiC+u4j%QChov$Ek1LOJw;D(eEpP{t4z%>s^v`mJm3K>GY61o6 z!9r{0D0A}8U%H9;MyjeQfW><*5}=dTA#~E;`gJYLa+ymie6S0%6qY?m!tm32>W%oc zZ{LN_3VvE<{%!U-D}h-F%t~NZ0<#kM|3d=CpCSHY{Lkhbs|^&Me%%Z4Kbv-ai3X}? zed#QGde)a7XRH<4w@a@tVG(9L(SktCpJ0-Yk-6P?sHu0%*p0}DR#rh0aNEIuS$Ie! z%T^tJl=LosBs#H4uLYBaK8v z&mKkknyEJI5EQ1={E*_U@E@-Qy5br$++0P`Tw_gzD=rw(F%Q;lTmiw_I_C)6u#8}> zUIf595LKA$`2BHAEXu5ewc6kp_ELRhvk9jb+pUg8u%pCG^8mdJK=3=vF%6xtm6yeq zA*YrXS+$YcjvO zS7u-_`pF0Zyhz2+QS-LUTcJ3&7MA-VyfWADgs+h4uV3xR ze0)%LJp;Nixnlj+$oojsx&vLG(W>MQ=T+^rTM3p%VwusHnUuAt9{Ys z@+P2cZ^Nv9h0Hd$QGu~56SMKml&%_w5>7EWTeElRNa#Q24{y$=xzvF2kkNQYZN3&W zh}Kk6jUCP`aO{w1DO`yP3{PIGV}Rp^k=KB(eftoSnjJU%w|9wL$nYKglRoy8Xeyl? zn(*f7gaRDNS)t{(Ip?KK006#h5kyq?H;iXvY}N1qXAS*9K>- zV(y65l5plBI0WyA9RfnTM!;eVH_7Y8mSLf8R68q>RPRMp5GM)V)j{V~CfIJJN97Yk zQ@FepUfPOVG@|5a<0ux~hE>9{;Hfd3UDS$z*+z{6Hqaj)Ec`s~CY2cxH_iUAN&DeJ zuAXD9Q{@)@gI-M!+nmB4hjS1fzEl4UtUii5V{!>RmTGE z@9Ijn6S`etjWH}NaX%PvcDrnY)atR6=>;- zZ#9g&tHXPugxL59!X~}Ws19yA%o%9iRmylPy{Abz0QsG z*l=zI)flBOVl@fnsll)+qb6yn7*F$%ylYLlZ~K#?ruy^#p&#M1@H1&pwJ4BIfiQN% zNxx;DgJX0I9D&%NSIv0%_NN){^x8ilQa4bq<`fC9I%{Dhf0r5r+`PG|J39<9Ce8|79U|TeAo=_!C^XPH^ag$bK(Dl zXf`s1m!S{9QZy95v3R-z@>Va%6iT1*@F;AAcZ?=Hl>SdBGQ%(-hS<8p**LP=inE zbOc9GrP#s2Kvy2x4o}_aejT1(0xIEsqb7H3weJREc;E1RvPEB|=~6(05oIDp9ssC! zCz%{LElxDm;BKC5%Jusbn`C-rXa%m z<2WlwvAZJ8u7yXYypaWAFMPu%Wted@9)(*j12W}@sEYE_c_%^m#$u-zE<%RvjJ2Z# zBhrI!e>;qlcvHo!H(#!F7!5g2Mr(A6V(keY9S8#mj`@w+`MOCzBw_G|(zHjM{PaHMslMM| z;f1430#U>$3TY1XWSDab4^I%zX)7mwulffO!arUj zMnYU03Gw0sfUCNEcJ; z!%~^rboFow#8jVWn#4lmmh#JRg?Zu4V2PPbveeK*Z@5@mXjb9>^)0l_|8Wzbvr(7_ z-bjBA(A3uOc+)uE~V^G!hK@}UU8 z`fzS3XkI^Bs6mp%$E?wIL|}D+J7znrLxqW@qNFjcq-bf8BtSd!Lc)BSBo?XwwXKC# zdG=}Oj>xAUn(gMhUqPaE%07oWksqRoReXtnAkgvzURoJ1<^gf=u5tqvCr<9e*>-TE zg^1H6MTlGqQiV513a?+~Z(KHVC=&=QgP)5gg-H&kif0LB1ruRmFzgS z_jeLQL$$a@CFErPhn%F!4@ul*!i$Ty#}jwvvQeCILImqwrQ$kHLq3 zOFTZgjk-_TDPl_&FYhk6i>khcsi@o!|7A-rz`k z;<-v-*{DCqPBUXJ7@$O>M?=@5)hW4u zCW-9a|cn^@;@a{HbWpwAwwc7U-~ z=<)&We~=3>U_3X1dd0tobG!LAt~LvfCt?gt+Om@bCx$N@l>=dZ{UxmZH4)QwJ0zUi zFo3ug#AOD8Rek5WAJTnr|1r9cYlo#;eHf3z6==iZSC9lspzn(D1fQ}OkylbAf|`I8 z4`SI|%J2OWKoGb+ckRb1c~EU1E{jpfR_5n$zaqu`e(gIgQr&eYUC|NvjUZW~P_7*7FF-0}vtv4~CbDp#O@BLRk;a$V0_Q_Q{|Um|P7ImsZ`M zL~E{()`CBl78PJ}FF7}55ozql$frWVGmp$h#YmZ`LS(VeCA4w|LR9>j2`zDYxrYgB zFFfZK(c{0^dzkoiyoJph2qJwQ#YpvdpfM&7@xUPCne)0F>1}qh{1#4YjVroXt z+!pu=6`=I~(`Q15`XT^u>p@lj`}MbJa#>)i$^Ge1*n}x}m(VUCw~n}x-$G=m;wSBF z6>U0ol#Z-A?vx1_d$^9_ts@-Q;`r-A9@yyAwJVKe)S82v$b6xhmEQGvNb@X`m6O>k^?BJo1(9_jpzr8L+Fo37EQ5C( zPnt;Jpb4%L&0H2_wD^U|FJPdnlnB>390KQMX_ji0s{mp9vx0!qS2|On^9$QNfn++# zfk#Z850Mwh|0+Vd)w=(68E$1wCT(+Qzv$UnXJXA>Q2&I2vuUFsOV8@|hrGIw~UA7SzMr-E!U;Cm7h%)uR#9RD{vmp}aG>PIX%bFA@ zTD6?3fQ@lz!IW_pGW7E#mL&}fHP_8`{FIeQ{D zNu>kA8-D0^FBFl13(CMT4lLD2y`};jY{(#lwZ1}94`-`nR9eacP|OImLR1pepdb$8 zMi)@ysd3yxjXP1G(AFwkNx~H%aez>#og9SrLqPHnZ(n&W^N;=IVzl?__?I|L??b?9 zx5bi&)D;bzfrTh5Ohy2rpv$l%j(<^y1ag6y9(wuqP`Am5;TCK1!ma?=ZLLAE{>3>c z-`3D=H1h%$o}8Qx%FHz@`Qv!!9}YRkn>t)&au5OFKp7JK(M-}=VU40&9NBLH) zL~LoE&-2bU6D81eMaoVFf5{ zR`Ded<#WB@B(s;lfo(WWe3NE!@Xxdc1^AG3G;|)9Q@LOC; zHn%P=kvL?;SW{4ZCzXd~=!d>85tQRDP|VfIn)YvYqw$)q1GIMbLWeQ!*ktV_9lSMK zJ84JJXS&_)XcqSd4Z&!Si;fWF7T? zpq7}t<;2=6?M!-{%^NzZW=@>&kO{W@tyVU`0U|q?c3YZ0oOaiMtaL5J&%YFGk}uw< z3n&@d0U{<5Z9DVo7puLYyD;>`oPd|VckTy&|FVeuDQ-}a*LA=%tS!_HhZDFIs3tHy zMykpXry(5&o$X#iXOhr|NJz`V>Szw%m8>oAvv9Li9rJVjBLx)pC!U2Thuy=%Mt#ij zCArRXiWOlHE)Ug=@wKcOJ0B@~nz5$<<2GZ8hRwjj8gzze#`qouT|Uw54XQGfhdGG? zoIv~Gli*SbrXwOLU`s{|%}5rawMm4lJ-k#J zHx`EG#NmaX2*Uni`R@WmH*j!$ATHp%uh>2_QCvJ*k?7a1z!b2Ga;fc|{A@{Gib6&v z2blQ@=fVic>^;Du2xnOvygK*Q2O+_eUg}j|)96r)&|p{loW{Pg5PyMI!xiGpdAxX< zJpS|L6kGu3<5rc3ZKQbh%p{ipuVxe%raFg+qIM$dzPw?naNuC2&<$?*UDDYoC)8R zwMkYhe!g{qobAy9;^XlJfYUusRex)xJhEZ424w~fBh>Vv;GcYTG zSqc2bOTbw#i^AZ9`Japy*1W=ZS~wTXnygie=#)CcdFCbShmEgC-w`ZdKa~4=%lsSY zjezcr%YU@7TSthl*6N~#w;qO}I}U4{K;k&lD2_97xk7bn4V_jRv6j?(E@{w_Ste?D z4nC)uw$;O~Xpb$`z6DD&^bqYUTj>7vjj{x=_`R5?@0$;UruZ>3gbQjT-~~32@Q2R@ z&L=KtP^*b2$B@|>lDLl8_QJ-rMK9d0br6r5dvL5JOYAnUG`meYk_!JE@EC}{+ zL9l1fdeHPN2=XvNEC^n()+`7P5?tSR1<-M|E!kNRT!b(LicDed-A!n9&nF$RGXqKN z4IUARs)>aj%#*ah+Y6Ba6Apu}W2W#du9@bafd_*EZ^CIkfnMR?8?XYLScF6B0)6K> zOEWzA8$v6-N6KXZWLJ11Ora$fO@8o9<~B#{@%UP%p}&}dm1hxQwJ?0^+W_FCzDH$; zJEB(iXb&}By|<(K>6d_uYwBo!E)q4tDVf}k96IzmGvZQnPDlQk>mrPKyd-7>F(a^i zl&8PS=M#Y8p9weeVmKIc!ZC*=aw&zc@q`l|$AtqB4$nUafssI*xt8x^_$FJK5$bAn z|GS(#6CjC6w%sTSfBs>FGtga_dForpfw#o_x)z5cA~?;@S}DY|I@5+WJpu z`p>?e5!Gy!vAK>wDZbHI9z_XHf z1Yyv`FTPte@dzG;H$r8%k9>+NdA~T_5UIx0tP!B1RF$;l96!-G>$gd}uR5}a7W=P1 zUj~Vi!qmqEmK>)!Emf)^9ZO_iU1}JD zvdFnia=L0!_^zvKSB!0Ssr^P#yFyXxCAEl4?W>?RbH2m&J3tw$HC6qK9mQeYb~L6Q z@ld=?c zTpbPHwWI1W(6b)$VO&2f2-G%A*X0vSk*lSgUR5g%5vHtu@BPE)1LkaZr`4)xC1l z65N&8`7T23sp`KnvzHVD{mXsHy}(}hoe%qaRCM2J*->}HOcbhDN5N*sWUk20CZ}M) z_{Fcgchqf6VkdezVSFn(0N23rF^6V^1ZxtDeN^akfM5e!Wg?XYRk?({$}Vt5+1+xF zvE0v?7BHV9fF-}shUto?(L2%S7S8ukjeUi4&|#nI!}IHNRGRx3y|enKT_0$dv9 z5@`w*EzLP5D$6Gp?HuFkP-YDos-|_n4+MLb&ZlY*Tz(!K5 z(P=lUU<~Rulun=M(h}4xd*P2aNS79V2fDOts?nvD2~oF~=5`08is`~@Vea~r?pr?g z{Dmy6%~&4=B3Yq6-VL_gLiVLGbL*yajD|9N7uL#T-9Rdo9prJGd`0GPpeJ5rW3JeJ z)avm;+DrU%lJggwY9U3RhO1c$;o)boPVhpZSpe6l0{Ge6r2tMxITZdifCBKAlVhY* zY@j{KlVGCl=&P+YBqWYP1)= z3!Vl6q?flF@k>Xn9AA!3NhpQs>;@moHn6&xiz+1%j=AkaKqx%?hvzV!Q14g&jQ2^< z`Y2OEQ3Bp(InxZV0{wLUaJ_$bv zm=dO3als=>tnhGlJHecWrMmwe^gHW+8!&@#pKMY}#9w!G-Jm`9*xcJV$%E&gO zeU5GPkfN$`*pxzj^5T_@I*j`#ecIwgv4`h(!K8+p8-}(=)CfKWOXYV->)(>=QjpQ{ z7(Cuyb%Fq;0CZdd^#kbHr1gj7x_$sX1E2?A86uF?kIHxgYreQFh)*17X>C|CMQu0_ z+A#SH+$v`-OaVWl-?DE_D(=)B<{bh(X0O zBt*b#goRHmd5DLGboAuY1aPBqnwqrdIGj;+%%d3O$YJF;Obs(i$f~uM1@!EL%UJ=z zoTJ2x>iX-$`xCVrN7v^Q&BZ$Pelgxj|N6mtq$Gp2J=~f0>~G;Opwfb)_yj@%{Ttmx zk&-ckwssjAt}Ac~rK4wwaP8|?tW<6It_SOAH(CFJVU@U~V>$w4E2pX1P7f>|f`PGh zjsAx4mnWLHLWW|D;!~ZTUOYdYY9?d~m4f@(_|Ab^b6!5ZC#_p@-g;h+HZNYI@wNi5 z%iv*Sogt6ZSYqZgFK4G~!rg%P9;R*y1w~k&oKE2?vsp%T?}f@ZLUaV=*h%|Up&pmo zkX-lR<&+m|M$&%payAwF6u>iB(oXcOT6b@g0Bn5b1o^h_ZDMj)3gx zs5#hSjkU_;MhE<=UTX|uIT@(2N~)qpzOVLjR^ZciN>j{s_TKB3z4b`Nq%kX7l2 zIJewxy|o9%%ivue*NgHR0%4|#?Tdmry ze+Cj$!H92_^=RQLw1bY2M5o~ks3d_#6GyC261mZ^6d+T;#UBX4DCA`zVlY+ni;BMp zQ&rxIKX$)6Y3u;)fFibz1i+`7HUD%)AVhojVBb^@)K(QyQ_YIZ>QV?SNsNNZdL-v# z6yaMcg~QK*{MY$_5x5t?WfX=P7^o@>ueb=JIz4M=K?HxWaNt*HVT;ZJil_H-^i-yV z;XBN-coLjWqn}AkES)wdZMO z>Lw~lGW2a|uRkxa$)zf&)eg)zeD>?EZYbjAGZ{%pfXa_fMMh1M*Yp^vyPj@;1wwxN zv{c?*zXWSD_hVt(cE{OPd}TiO7$u$>sO~>4lj;lfpS)2*YCf?Cj>hbZ25>Nd zx~oC=wyi5aVcDCI7J4L`%t@ytY-UnjIMJXQai#sel$x~~J=4L$-~ZfIGAUCYB&r&e zB@g9Bw;@~KX4?2Go+rBtPH`KR0F5k0n_Tmq23O@2Z3+QKR-Bv28-|y!<{5;89Duq_GvD)RHpx&2<~GxUV){JTcd-4{P>nfd zj(oV9NriLo1N3;Jo?Jd(9r=jB1PSW#yY#QQxPye$C03#yIwr>zdzWS0L4av#td9D5 zGCZm;-Z2dldm|2lT+qqC!fb{yn3|moQzn`T-&nKF8nssAaAP$BcpIB59}bKxPVxu( zUg4=)eJ2|jX*3-e&V*3j`Qeai6z&PJEzr4Y*3gs5Yji6>I0z zSz_pQwf^ej{9-lkica)#6Ib8lJwKsw%Rzw}1#mf+v*(T&QNVdluH=)QJ~mN2G>#(u zQGf83s>QOVJOGZ#G?&8o&Oc4mvKf$1cKI+dT_+UH@f5;OzO`K=Wd`EXYHiW9itsm1 z^gyIsa?j@&?2zY2K8f8F69mS+nA&>lh~$%yi8AHjSDB2>Tnk_PA}4cMyvLs}RHm<@ zGHD6tTYD--%K=Ds!|ULB4qx-MzbWDVt2;phuE{V(wPe;~8BckH?nVQ8!A|iAodN@e zm!WS^9-)I23p_&YV+gTt-;U3}zV@x(sN_rqkJ`3a?KN0fX^Ta|*F1ukgW<-pUxzO! zIjBG*Yxrd5Sd-wy=`X$PCAIX9hK;Pk!WV^}j@1U!w!V?$Z)C9w)1wqZhz)bUYYiVI}EnMXMdvnLl{L*iw$= zX^%y$Jl!4gz7RS)9A-2a_u>T-di{&*g80K3&!&o>YIg#I%$ok5dk4t2va^w>d zxu9}n5Q>p+T~s+TAd%jMJP$*)66vkLp2&zq#wwG2f-AMHjg=#18MoEjOL)k(3E37O zW^HNR2Rv%N55|$=h{(d*7`4Z0o!00KA5v{bnxi`StSw?wP^{&fDfbo><8JmUzcS z{l{@QdNcbnD}h-F%t~NZ0<#jBmB6e7W+m{KApy){)n0>JiEcxvV~AA);s>_^Y>7M{$3_)I2arSrtNdtid24kX#MXDQx18wZ|Z zgcW*v2{#TL;5nt7cEf45wK9r@lVvu>AvG3iu@i7u4%WwPZB>DOR)8J>bn&G;8doTV zw!_jk;S6PbcwhW9;;Q#mr{gYDWKj-24Q%0=h%F~YbD8|WMwdxb&^SsQC2cpn@Bherg6rPFGhtQf*Vm2xw#IlUj9P~sN&n~x zOf6RuZDwMQo8K?^@_Q$6xHYJWc(OG}pO$R&(HeXb1GnXX2-|WZ7WN7?m6Y2{<RT3=3T{~t7VI6dU6RfASa;!L-vy^e zs<;$E@u6;6AkvC-6r9n)=&edLZ=&q%hG9GkF;h&4s#r`Of~u@I--)V=(&Tiwsb=6a zGZozOz7js<=xWS!wzqdD_5BOdu;Q2rb-;tE%-g<)CbS~eLeMFqM?dc?qSpdv`{cia z@yeJ}&uzQ$h4aIeOx?2l3KFeI^4Z66iG#z=3O_p!vK)$UdfpV#n>0C>K&YAroyd$C z!k8*|tKK_Ebn@-u`>xb5Gs1ck4CitzO}8081MM89K%Hj&jLcL>T8^h*<5rc4gtw|} zA_aTlIy5J`d5gcpQ&l{)oIKzEIbRVRd|d0E%18V(x!tJ|yX;Z*SF-B64fG?LU+QFL zWEa*y&}!eS0|kG7{8W|!0dSD@9_AZY9ansz8!-g zq&TwZ$lSxemFHae;oovcKsGkYl#Db11%FZZw^M4>FK zK}L(S%yJbYIXmXbS)(s!LqxV0zRb;8@7vv+p+rUj5EUZt(1`5&EFY1)BJv@Z$k`qu zj(9fw9mKOkXGhncul?(D#}$Cd0vfJPG(rGW8PkAy0D77(-I(0J>Qvmr!Qyv>wlBUo zH=1H+y}`rqCw&ZWR}AlT8NPA7n`YUG*6_Zrh|}J4wNh7zfuqQ#+yW&cNve9@h>q{*5Q#m+0|_v^%;B8*ZHgcd#A+ z^1h)&{l-LnWQBaEIx~A2E_V&B0UjEUVYZBR!(KcJU;k&cDR8o(uLUj=*Y2QpH`5en zuGWzVu#{KjaU0Hcq>X{r*hID7P)c87xGcy+A6dn#vow**06CG(8!2#$P!9iubKY~B8{N97 zG%TN^1yw8yfA(<|qv1PnvLONU3(^Qt!%8pRQ_Dm1xhF`uLJVm$&cPvd1}N%06|{uy zmjSdiIG>v!{Yp_xfRQd1Q(%Zmp{8;Q{@{G>NucNy{83DSk&=Q$F$IPog~@kuD99V= zU5zLp3MD5GeF`8#$}}Q&(5Dek0mjt`MZ;!b;Z6S{8o_sJ1fS4|mXcJb7>pDA_)w|x zwJg;;$9<^=pgV4=iiXX=!Vge2poe^Cs(d2VIGlQ@zeAvHRI*kI7aEC*Bnr8Xu=Iqp zI^yHOG(d462QEtqXD>#KJF8+h)PEeFB=-fYRG$y8G*kwXPO@6R7T%@sR5b87A)?`l zj~VzNpa^fT#?g-eJ{`cGO>Ibr6OYxvxx>M!F2VUJh?L{h0H;sm=TcgnGr|6+HsV6;hR+Ob&16&edhZa&aX;S z4$N6lpu4}FWY%c5`qhbZm||H2a?pAk<|9duK>>n^#BHt&;tc?DPhWr z$fQF}fs=DEwQK}qJZdcOhr80@+0Y&J(frZFpb0NF4@%fUp~^aFsI6dl$T0IoB2Lyo zsMAOxb)hLKDc93CCIam3tPXV6EIAB9Rkl_3;JhD=z_MlhKqsqn2;C>%r1)4`%t zwtECG0>M!yWfEhR3EK}UP*f9}Sh}Y>87X;#^6Ds?(qJ~^T&fB0lSe)gwGs=kRf+Dq zwZ{)~M^&meu(b(aauR-2PQu5LELxm)=pR0U5y|R^5yG3lDMG-p3^+003zzr9T}-&i ziy`*OZ%cJX;|;s0QE%317VSLT>GjtpW5@($D>7t~so2V2e;0VR-m{5l^p9|I4%W1LG+QuFW@+)(%X^#ha0c6?ES?{ zfTI$##vFkXH$sV{skwNI=7X`~90uV9b)d5H{y)Lr`ohz%bp9RJ%R9%B1GEonT25bb zj)|^81Tl+Y`^!9512bp%b9Nsr~#aIeki#0LqgbG&uVRQzx%+wXKWYBm8Im97V4yKG+Qd~~px_h8_ zl0Obj%~BM}Qal?yG54V%8d^|=`Tr>9=FUdrht~nTE|M0sjXVahO2l;E?ZNZpATt@n z5mYc;9AKo;RD7i$8U%#7W?{UXxn`itHbXp{K%k}gt}+6W^OZs%>5nwh6kd2#x0jcA z1zE%a!M%*{a zLbl5EttgRb#1e!ZAH@MG?J>Dq%umgiWM(QRvS^F3q{}4zoJczP9D2+OS*LK4V5!Z+ z60+Rp&9X2gOnRYE=!YlBrpYo5RCynQJ}Z$wz~aF^sUQ3oH(o%;hpK45deyWNwhsUU zbbsba8?(>cTJoO7r%BZcvAR95Ei8%Mjl_`VrF&_+>N4oXAYk%UkO7*X&I&V{)75{j zy+x4+fBgpos`8(usz@}@&)egB1O4YQ=a3g_iCf>h!~5#%uru)*ErlLPp~sN|VuMwv zRH7FKThycxUu;NYThG8-Or+gNc_D$hM%pAMH-s|P8eJR+bQsZX#8Rm#=bK=xII(qT zlDuK_lHwXXG~tz14jXP5b|20c9g-~p*wQn-%vb(SWd6`UdSu>7nLkV$EmP(^64nYHYn}W}HYNYXm)5FnoAm>pE3(w%#4{K|f3!o3M(LZ;oOfY^Mk3!c2u-yp|}#Y#6PxVk!c zb@8*%x?$z(g%j#Xk$9M>VdOc~uYy7KNigJA*oc)ZL0xB(a zo(`}27@Md=W$c6O`e5ncbpWpeV-pe7)jrwnix@E`WTE@(9#+PDtb9PR@}SE~KH;)L z3d-^0CClB+oUGqfWw-5&(b}m2UnPEhn0)hUd%mQiq|w>2Qm7$uYgFPf=wW)YMl0j18`GK*cL|%bmu*o zjj6|M%=$rR1_^bk3C;Qt3ZzH53~hV_APZXse+n)E~0ah|5a58u1?*=W}yfC1(`Uv z*n&Q;N%3-LFZ{_iM%D{o&B7OWI)cF01A`njKR-uUphttko^gOv7(apdpp3m}?WzKo z9p8qk%5J%ZZ^et;n84uiJ!;LVHG50?mxsL)CyKEi6vps+kEcZi! zXfKIYu+;v%?Tr5|+?O2PPuF{y%9K^%78Jk7o`|B&fj#m5=g=M~*LzOn%6ucV2~oo_ z&U@0*hI=mEdYXuVo+g>J+hYTTsyo@OsNnGac+fZkW6ZHbP|Yd#I|MU){~N0}z~INk ztaMt*Bz!<^)tMFUnJ#Iv!F0p>S5=4alJgN&K+;-OYZf80u>$i3FjfQ~>oeg;P^nsz z=zO07Vx_jule=ozjqu|B3X?#!Y{Kr{Hg>jS6DP8hKo6t*9BDxEN;4Bi#=`f(?fi#x zFi^?Hp2Ttr)p8*dI|DNvW9)fqQ9h40_xm1-NRUn>gzG4Ll;jmp@_$(I5$#@URQ>CjZ{Eo zR|e5b<0eA(dcjO#1E7M%lOzmBIx}ok!YC1-V{|CSK#QlpAc`Rz4d0KsbdeOTg8vmm zN7#(A|A*r%94&D+`jL2Hd?`-kd0c8QP4qocl#I63qq2EC$`A-RS~k#;@ryfYn?6Pp z6H0ss9sxP7{d*U>rpJ%?RSYOg6?hlz%&{CiQ`}D||u(?S&^XJptWBy+$^nhzB*u(FugbO@@RF zvxdMEekK4^RjZRVT8sdqI{{H%*z*)0V*CU7`jO2vr-O!gdbz z82~LPdayVM)#xV2ZL#j7oNjD+_PY;&%WX%0M_VQHW&`h1_Pj-un-2%ed*dUOLq~(ZUIF>~iVY2e3xjWYnGvvVVO-QjZE3yq@Z^91{ z;6tZ^uR(sPp)rzEZ1f$SC@wCZin`bmP0eQ_Dm-~~su(O*V}&n$fECJZbt_c0-2hNk z?cGb=TJk~tu4>800fMS_0|Ip|S#hbas!>S;+c-P$B@dDNd_;CBB42cgJadVU$Zitx zR<)$Rs?lmq7T%B9&uOcgjA4}Ww>x#DUFt{+<%5|72oY6+b%xc2jk{DA>Ts0R0yP96 zQZuCL;EiKrU&Uw}xeVY-P&-g9n0H__qZpb4;g9fkbR^a6R*OzmDxFd-nk!ce4|taX z?-J!{lWO6Kb?X??Tr1Urv08iGN`orZCe^|dyIxUVFV&(~ss$V1Ua;FsYIv^2bJOH! zktLl6O?b0H-CV+yj_p&ieL{Gk_!fWu-AW@&u{Jmv8jcMjEut$Gm)gKeB(&Ft~>&<@)Tjpt)3`i{?uZLRl5g$7ZCra+VFu_vWOhlL8+2uR5u zDkK(2dE%NCS%A?RwJtwF^zi;2a9-<2psGc=5~DX=YObgds5mvbBKg&S1HKY~Z$uD?UZQOO(O!?{E)F|(^} zhQ6-X*2{WBEPU%7plPa5z^E#er3(#4uv(rq!Mc|t;Xxc4+BXd-ZH$3dtG*UEXOC&< zK8~>17ZbU7-ZZG5R8Y+R9(+46i#JY#=uLB;Nwc46a)ylU>kCX%Ce#!bIAEIG`z}wG z8%JNBa>JA)JjMS11b0u>`d*IuHZ+pNrJPO;bicq8H^9HZAcF0 zHrFHK7;tkAAyA7XQvl_M>@~cA2Y`awkfO#1`#AV{>#+7%8|i5}#kdZC_HpS7y`Dvh=aJ=ySbGeY#d|SOraC(u}#;^w~>kjAvhF3n~e|DczjU_ z$T#XP!rB>z2ya;D;Q=>t7VD+cmA@{f0lHgYo1AnwCiT*~fSJxv0ol z@y#a3qc14OEW2{bOuQ_#ldzt0UrEW}2SX`{3K8vErmU&#E{%ee0d{IYQfx>0cBX2H zVnjGLHJ3`y(H0bbN9=J32p&94erzHLsIE#H-z6H~1*k5h9aEL68=q(xg9z!?iLPZu z!VgwKOf?^yn!^OuasaEuZloylL~ofMSXKxK{CNP&B0+RoU?@JJpelUeYd0QFg`U6% z=aU%7SrV50X47hHmM`$X76%3Tnt)(hWo#|$jpHy#jPBKZZH7 z?3-{3KFGwz6TNsKQQ3Zg-J55@-*pNhihaG^!5S<;5cxzL!HkNU+9f*n(wR=N( zXBR&CX<>%3WQI>LgU(j%VOckLjPh_d&ai_-q&!smd@W1AxT91Oy8))tS2S#f6i!v? z^PTDQiS#j-uXf3(g0S)|mHd#ZT9sl{?KC{=GMpkYnUb%tNkZpP?}1KW&H2~p(y&bi z_f=6LmUPt58{0T4uJy`QUQvp`K|Ungm7)OC3U=Y-pZ*CS9X`;TKDWp`=8BI0rEiMWS8!VXW-FQOwpk6k_@|3CKL1wO8; zy7!l?ku5uNMjQf ziD_+`0JqoNlG|`g8@F(Y90-xpfSfd;P6BP{(`o5tbSG`Yt8qxE|KH!*=QR)6a#ASm zU;5Z{&e?mt_S)~g*IwIcaDME`76^-WSVNu1iI+%HN41|%O(#CNIw=RmIYWZSvxZ zd0$fn5qz&FZ~2gln|F`5wW;BL?bP4RVH=l?vZLAB)XQOsD+{gtx%`ovVSwv&NtE@* zbm_4cFSs8t2$BmI1=$9Xmu=DhkT)eX`B-mP4T@Yrfqu9xWfUwaiN9AN7QPa#X>F}^Uw=67JWH{)U+o^oMTsfV-rEj5nZvv^*KO^ zXI4ym@>9nw!KU!6mv;$1Xd~8MM}Sb5W@nlag|0VEI4h7SRI2XDyA>C1R_xK{%U(`7 z48l|Iy8%_gwy0>ZBt$whd}1BJ*AQP__H~G_K`)!((eH62$TX5onL0>xn_g&7&_6F_ z`e;`O`mo~>KU<7ZY?60=cEO=<^iG!hh)@jKo6(vjIXVSR{j6NEX0QW#>2K-EjWPUldv z!^QsJk{Syq1jZqhFMf#6!c7nHS$POW)rAbh>fWwuH`i{=J%-kdT%kvcS%19cSy2-< z;lH~k>_y^GSodB6{U+?vRMdnqq#CkGU-@Jc(RKAalg-%j5k;!T+EF>8%~Hz{SvXn> zqAdiJA+lt&6hzjGDnwPG{kRL zA+B8-;(hniz1R^9gCams9Q)?8HHeK9j<0+Mx62z^)w_+Wr6K3Fi{bR z%lCY1JzTqJ8WJoH>p#27Wo#45N+*q#k41A72%u!6QNU*k5{QZC6I!o3|sHfd-cDK4U>Mf?8;oeuF34Z zbenL8CuVGLoSghBlvzDKBo4ZT(QOC1!Bs$jK3XX=L|Amfm{GxoISqT^Uhc0^yJ!|~ zg8esEB0Ds8G6y^dE{-(vyZ*b=$ZtB0e3(FABmdAAX~c=;lHqTfn0dLs`tB$2uq{5y z5_Fe_0Tmf41q^$?smb@|*74-zI;v0ry zhk(6P5hIRkgS@TOUFrWgami;S_4i5K#;}UlaDH41N@XxwdkV=p7zNcTw^WXfmeHCT zVG$=J66#7CA)<8qV#L~N5*v$46ep&L((OUETY|K*Wx1YUw5trK52$sZDcC4oelBZZ zSp&-&Sk}O@29`CjtbzZc8eqC>_RX2|x!>Sf8!&qB8DGl%1_Avt`{`f0@+sR-NA{e| z$r-7iufGgi|BHy!u)n^xDVn@|*nfAE7vKImPoO_}c~NsTdGQDHZWH8-F(UVu5%KM> z?}~^#d_frz4N}XDLTlPzeWU&nM8YYM*N=t0h{}arW15jS;!JjK~duu>A6K5s~+n z6FDj(=d{1xylj6>8Q_cqrD56r+S-VJ5BuwA6UyvU+O`n0<=&Cvi(_l|gv!I`Y62rOE$}o1*k2qAEA+zq=}D*R2%Ry^TP>%H4YQVq}GnC7SaO)R;V436zrf2XNxyE zCQ4jaE*nT#DKyvUOsGuW$aLznue9x12VrYyPI~OCkAl2qX2_&HSu6l}XyG=-2oT&2 zLG9D~mPmif-YdJzvP4o$%o1tWd^QaM31PAy((?83c0!7;#nLOE#dHuvWsVy z-3Ekb$`n=uWMN?zRxHj>6dSygUSDVNpT27ZOJ6EI+uSBzjN8O8@}!H5xCMq$sF$LF zVU#w{LpcM(C<$F{80Boi&h29P!QGXm{3JZ0QhvfXIxov-e%(sB08&V)C!6+zf#PZk z6xvB?cN<81xLT*zs#^E@DtS%;7Rlqt6ckweH7AeWC6AuSGvvz?7$`)hQbhrr+sE+i zuT`q#Q4k{$92qkXC_eIDQ;7g1f}V)5cjl;GTyt|;uf7?JOSnR+5`I+`*E%vb;_Aql z8C~(cj;jE~RZp6mF~?{~U)zJsuv+7+EBXPoPp=@D3LCB(G1^X<&$dC9$71c1U*wa8 zTUS9dn+UD7S|V$$X^G^7=-Qc0IBTs#QDBBZXRUQZ6qxht&{2XyYpt*R+iH?3>zzVl z-5K}p`h!1H>I>_h0Ko4Ly3VYr!-4XihI=_^=jx+qQ6J4(i+u#Eqkfogtu^edwPaf( zjg(ny1xYBSPalT9D$u&w?H5yl2TR&qac(;5% z%G6E%yUSFoYK3)QBGAv&?ca|wb>a24p_XkuOPA>7$BjYFTt9~J zZ0(HCf)I3v7#JU!0m@Ev_#19>r`JZ-;K_NjrIIoD!iSvV1K#ID%Z$aF=cmk~Rt{x2 zi2PK9${PjGe)A@o>D6o!wb|a+pS<-*6A3aqa>qi|$J^RTGea}7;hqMW(8+pG;S2+$ zMjHlDGyEM!yCTeQaDoC~W|gQaupu&SY@Qfxu9Iow_obo2x>Zk7jtXnLcobWH)tNS0 zt?6rynKoL;)X^B@}B(2`hp(lmP{{l`3`!wM!66G6*MpgfWL8#rhVOd(r4IrQIwnck^|#eaXUd z7(+fDLyX{fkR#Yg^Fk+^&FF>PaQ3Ac&_r5+Wm$pEteK%sjX_lJyIj? zCKdfrWo)cJ!fieM5hd$vEjg)Ft?*mmqCTZevz{;PH7y(x#Ww@&%Ij5 z;y+!jE~n5XNKA}>@tu4YZp!glW@5Y~`{EaWD;l5ujQ{S&XTE*$8wm8rXMghTXnf|; zJTBW8GwkDB{sYVQ#i4ERvVHNQ*1ob}3-$CPU|(G8e4^}Chh(g#hDO$jCwS7q+W00G zJWFt7uNnX=)B*RKy=p&AQfRN*Uwq&HHM2(fBh5H_)r(@S&t+w;&;O)q(d@NHtxxt} z%37aHWUty&%T!N>i@Rg?sxLS7D@oG`6`HK}1pRerm8i~1R;!;8g}s$lt4gYGwVJUb z+#1^kG@R9H#t^Ye>^g_l>fS}IR&V@f)G9yEe|N3&A341oBhYV^FZ<_6FG^!3Oo>Lx z$VeYnZujY|593y=@eDMx-I&$tUyGxk^^w);EVO;A)xEye>c)pHd(CKQJ^SLBwTHWEvRnvU+ zD4bPLK1K2CWf=h)8J&5HFJ|Muo!XDp+Dd0VtsDVexk`)jtg zvC9apn<&}Z#%FjGJKwIgjqOvm2e)&!%U@`I2nR^_ zq|=?1Pe|9=PfDRP6nO$H9DX0<5grB#)JU?9j1g`AbL=hVr)Te?;K(AZDqlTJa*KrX zH&)uXD0UgMykWR)oBY%xpqAddC}ug|$X^e99|eaeS$AVo!HjIEk); zCMBQMtb1diF$$3B$<}taA2G-ZXFb`CURI7Wygu`2Cj$N&k@@T~)hT~A!i}=sq=%O2 zo3sMgG86=JV$6t;7Y!l+;Am1Z|ko7VI%0$!i+ZCPKNWpZ&&P8oUP7QS3Yio zOsH)tv5}C_sW{H`n@(&~|5@mRaDNrTrFC*#(tCX@vueHE7k$`sz35p)-&Ib@+d7;- zY_xo7hrO){{{UMkY}t9bY&#U9yk^tFm&Ez)4`o4()^VRjmf<)hQ(;_^U97LGy_zNY zQdxx*3-{9_J1xaDQzJb`RJhKWq;@raF3bE<91NfCIP#DRWV|?`0=YC3f;ZKn!nR$7 zJII8yldJ zr?T+fXRdhyf?Ehm-gf#Df-8iqLm&K^kO5ZScBb9_bbd-J$P#jw2wa*Sj-{}Ps6faF zS)tA?gG2U=gb6u3ce=q2B4&rtyfr=o-a5?866a)QvY{NCm{H4CH`>JVCVrZ-o#UgO zaz(Zu&Dfq8@1>V0P+rLhY=Mk9C8M@>=IxVmNMP9x7<-CSr^T?ZbAzd>-^=#PH(0iJ z{Psshf+lI zuPg;d0hxs_`!x4l?&#zl0rL&EBmxCT;LM&^2LuMZ?0|DFX0*)JSH!YfhEkuO9Gr@s zH94fLk{GNif-*pbIo3sj`QO(?^1Z(9P`%yYEdrDYfuNMxob4WcuitHXW;E51?LNMq zG&?7pM~?EE?^z>DE)~T9CKJG@TMA%i9Nw%-vckNr{T#v$LV@%{2M8^VEJjh?Wk9h4 zCY0>#Tt&Z{Yh0F4Liuc`gCF!6#cJB1Y8nnmQeK~PewN*4&B`|EPxd*n8jCFkUefx8 zQ~?6T#FEhx2otj1+V1t#x2TTqw)SqfFk{VAhijg8Um69g4Q*AWjM`Ac%3G*sziy9H z&C_nzJaxpHC)<|M$kDZ-KC(hR+dFZ{RiYkg10p|A-&z&3bvMDy)xp~cZmSL+BDg6C z4hzE%E(2m^B+P)2?NiKvRLu-fXs`>F=6#V2XeTP@ALujv3{WUzVSe*dLax%#5rxJx zAWB4821LPS84v|q1}yCRju{qeOyIF^6q$-pJr$S-!A1-dU3H`D{CAJxGb4#|0I#lL zstb&WgsyDwqJX;FEn*|}uu^zEO;ooY-%T2m0@7A%QZPC|{i+`EM|8IKY#wMz=xqL3 z!5lm7ZfBcIHv-&TbCR*W45u@m{q!ULMO^I_8!h6O!2;um%Dd7&&-29i( z!tB@mcegNW2GNCee?g$XFnjo+XkpgwP+U?e$ekU^5@lt@HzsRApPEN5Qe={aPo7)h zTXQNly1w)*>cqo`N@>oDP3u`f>%Aov#2_t3v1K7cGk~SV=4?;WEU#f<&hU<#(HXNk zTvBfDYsrOHXs(dC3#qm;^=$qSQxD7x9uNXE5XJX4+rs&?KyHv>-Wm z3-5^O#J59plWK*N`x=;47@_&X#Sv}65-&8GjUO#X)KWCd;WYM!5c(c9#)0cmKTc%i zdDM^7=h+%eUEhH)=e@QQ6i3?DIo4~Bl0<)u25WtJS2l-s{8B&|+~SP*ZOO;ES#;4h zsPx{9U!ZZnSBuSw-H=nUhh3qnnl<|n&j7#{Z@ej!BGYCb+uRg;HL4Y}U=e>YB5!Vm zN}cB5K9#@*lSBx=!9V2?TfwR&vOvAxw8IaF$JKdNYABJPmVN5N4rjp$OoqYIwf+hmPs6yXK7R|=KwMu371R%u=vu56r zk?5FrOuXLAI|lhIGw+BtDwf}tHL$FKWeqHAU|9pp8d%oAvIdqlu&jY)4J>P5Spz>p z8VLL^WzNUH)2se|Rb6q%tDdrdr=P^mhASGGJlk^8@s$6fBUxsnoKlF#SJnNvk!vRB z-zk+hpTzB;$`f(BT@KWQab3g>IZ_qf3;Gc=Zff6ytMN|nrlga@4dP| zyyfbk6tw87r^(;J>?#kicIOf&NB_cSp1lf(~vL5xcMUtuZ23ml4rg8G`;?MC1+S zM2?EcIsGLqEc;6$$EU6x!mAwQ+uW?$j!^2rc>X9jy1qYzqmS zpRE5BfpvBDVFX*qLdTIR<-51bkc|8s^hQ(}0oC3H*!gjN zlv-kdUqaSHG$N@Q@>bk$GXBU>C9|+Eow7bLW;B1y((lepq`i8X?gwdUb+&&?cj?Ci zG!YqnuKSWp`%GrToNLRuZkp5%_<-F24kWLW?Yj%fbr(~QSsx`2cq4WJx4ne|Oh*Ff zRRWv}1PJ=FkxdV<(|IdL!poRa2nOnDNa4vPf``B^UBC^5dXee^nQnZ{dF)5d-K1=H z@xsT?oRO6f2W?P$y?V>N0-6PhzwiL!(oljgP+6b}NjE+FXv_U7~t0 ze%Db#tBR_PlA}`|?i3tcc1LBA3dVQx3uFJdMr2Vzeta7RDM(yA+MLJ?P%(%!J8w(* zMoT&7;7)}blebK-r!KO`DQaH6m5(!b+g2nOCtRMmHd**POM>9X6pOYt?rB`On@}jH zdFa`$r*UXE4(%F)HsYn;7#ZT36B|I?IosF(xVBVL9^HY8I zEv;;-qHzO6d;+-w1VoBEOy&|>X3z_YIa&Psg_S%*p&f4@M`!gHYg=wchh4#h)t#nB{2i(j;r%MS0ze!mG&F| zZU!GCQ0%G8Y)Y2%?=}9tKK~x^*T^$-e*81W|H5kin@qLIJI2(G@0@)`q)tUtY4UBw zl{C-F4eamJpyY63lrqiUO^2kLhYP)H$Y+w6o4E5rRRTJLSv%!!E-y|LFM@_6Zsq1y zc9^vhpX)KYu4r;GM^r4v=^$LO$ZeTv5;Ka$pME1oh2pNVpU(}3g#8+j&kfL<)H;z> ztN$~9h0gS57yTDqOXm3dVHoRLhABs!$9m&?g7a9X$r{dM4J(KEV|&=PuKixejL!Tp zZ!9H^c?AJ9jH}Nlk+f?5sjR)Cqge|-7a1e zvlni$nXzjJ{`)^#>2+z>`5BiLuB~Kl!eGVn#xG4Oa|P!Yfk^+xyFyBThwKNtZ1 zLTGu#wDRvo>M(UF?uzH{6Rfa@9ozkCS zNTjf9%S~8==V4bnu^{( zGibBxD!n5)7n-Rnz7n2(sKw2lYH*(%K@${{_r7hx`Lnsx7v{6ueAZs3GoNLY=n5y+ zF?Pi?Hk`ilTyurLo#0!(vDAXu-JvQH8^)DGxhfrT9o`rR9{Hz_@`gI<~ zTWBumG+e3aW47ZHk@cPDj#U*7Ue$vU4F-2D*sZ96@ZD+Mz$?ecWR}%Kx2G#Y#TnOH zVy&Q5k9UF^sjPRtRD_~lf5i))JQFlC^|!s$;$1E3t>}(j3og6S(F}>I&Z`+_1p%sQ6#<=!RSjAa0UaW(lt9O0mrQ^|vQ-3h zPIk!zI4xU6KnKvyLIBraQkrXP^?FTqAUq>U9pj+L-05et;zvF46=tTV7*slCbD7m0 z){MlK*)%TLj)^EW#1#`S+p0sItqYeh&YiFHvNQ(AI!kGIHD&~;&E!>&qEHh9zpu&zOAD*h!_ zZ*gEz^J4AH!iB7Zh9y*u!bH&-6Dq}iu|6pcxk{gF)QQi~<_*${EYAH+)T>X-s99Ju zil@IlMq}N&KemSGwLFS1dOi)&;&ns=GOHu6ZVGw2c7}tT&I$B(dtgjDF^5X;M$IN4 zz7N9Von+j_Ugs4so|Oeml%?Se!inVXfv*(GqfdI-LT@= zvY{{GPxr$zsiU)Eu(f7!Ed8(X+l5X?w@RlRKS71jd#S^P6Lne#9d9OF@1#( z#?Z502ATjYd=vKNyze5o7Vi^;^B3c-5IP=y^Hai#c{SHpQF_v-d&gq}unh3=fK!n|^69B`|EHWUR zc-SbYPb>5^{af-D6PVsqvpbt!9VJS&)*n4vT4R2$=1w=c=Bar;o3qmU-$D3yAZpc1 z$M&t_W}iMq+zoI(p5u0|#Pqc!Z{3=+68raBG~ezfFidP2b#IYU7j7XOkH^YFP*HZ^ zYj}*1;tCb15UWX8A@D4)HvmMDJ0#dYZ`Jg_(07Vr`PiSRSZ3Rcd!GRT+!?4qKB{al zymL5S8h?Zgjh01O*1)m`mNl@ffn^OWYhYOe|4teR>^n1VSlz@>DX{OvfXZXDJbAlp zThhFyz0=P0@rw}=Y%WkSz;Y#^_F$zQBuuV*qLDDQBy8$&t?i(g(0Y3rXmBtd%v&BH;OiXU4H zW8$mA=t&F%&h)}(@GFaff95L=9MDPAhS$ny*vEQR468m^%2+{K_MZ)_ele_~k5w+( z1C)(GVJiYA379Dv_KVq|5C8lN( z=!{{l3PigQtoNM_>)$YlWKUG)WZREZr%$fbeCVK6zTBpJi+|m~_xN3>DAl#i%kI_Q zXIptCciSfWa0`z?QP7%*YKNx&UgM4ZVI^-NBru7p$K)WQ%Ie}K;pPz)bxz0HHsc1U5Ml`Dk~r;j31Z=vxfv?2p0sGf)j z;&o-xAhdCNMJ4UQKsKYjw~RKI6CE}iaA<$>{zYlu40qA~zw98D$-OtCjj^C9szE+r zLM9SY!Or!IxE*sT`RK_-xd}qt_Qtr?OG_a)?%J%yjjhf~ZZnSCWs7qYgt)D#s?BX>H8*u*l!@!qO@5qg>}L77M5kxo0a8<9PO_yo)STb_IqQr zO>beIG?wK_BFvLhj`rUyF1H{=`#CY%SQ*Aj*Xr6@YO2;!(Q*5;`xe!bAjIucbn-z7 zXe{G)L2Yhps<}PtxV>X>Zh{cE*T%S62?+JJs!VSyL%p4Lv~OCRwjf0N@2Sl}N>-Mo zWNqz~aKBq+S*}xyP-y(^dl%K4AjEAX#%)y@w`6T@m@`#!YjWIvd~t4q5Vw^){eI<% zPt&jLt#kc~+I#gYliz~-?Gcjf%MSv>5xu`o_0v5 z!w%`F(sU$}h5HybsblL9S6U2+y^#L?M66{ar4>T)M{ zhht*xDibT`#QKFutb-GgSTo|MBQagj>xN#pOXhTp-p9)5^*VaegP+Xq7(FEG#DJPZ zOI`bwp3Iok{3-=2Y}CT)n4FX_4c84zXrwbRSYgNbnpwGX=O9B1@?_AI4nt;&Tb{Hk zg1uIdGrW!W3fuI_-BQ=~0^J>446Vc0nV9`x1ex!-7QBGW#J=%fm*Qu}QhZfeinqBG zza~oYRqu~9=x8Brztg3a8|6^{6^}ujh*;@)Q;f;hGA2WgNiJgYkK+*&&Ny|FQ+1;{ zRMiR1K`YFI3L|7tT%tswh|c`Lc=y8dWgc4l@D6QaIAYXMC>y43nb}Qt>8J+_sKsNS z#w?Vm6k%m&1t}(}#ONzv><$mM&%6Q%)xGw|9>0x*)G?0!^7phYZbt|?!GzYg+0|1i zVrvkyETIL2@6Mj_Z9B>^DJ5ziNn}T)V>=<+Ast&G0@tzWE&Z;le*b)CR}xl>%a6-k zYjj~b-!tA`w*$HU3QT!R$W#pNtp|zPBeUv|Wk~GSsW-wbX4NsRSg&#TwZ2t{JA^WC z*GEVN^HX2ZgFkFl`UPzE9qvXc7cxFmyr`}&L)?C>afbz3Sof+Anl4!PGNQw=h>pchEkZlb>R#bqj2tir` zkcJA7h7hDVW<+C`sw1gQ`P?Zjy;fP%T>4M+P|@vOngMc7!cBth26l9(z~Y;~1K@<+ zT|qgtCng}7AT14e-nFF53`dq8fw<(oy9LY^%=j>M{-$z5%Z9yL;KNi$_nQ|6#pu>= zKM|hDz_|S!R5?i4B&((hQkVk$T8s{J&vVmh@wT?qpz~tr$g2K?jD7ktI^uIb$G2L2 zJKC)oI~^PYxHYlmYK)i+hZ~ES7iZI)pU$QyM$>isxq^bPa$4y!T3Fw3X-X7kXF|NK z;(P_CYPR<=f^u9-H-)o9wD%B2i!($_b`5sLhWH%Q5Y~`!26by6^GF$twX38`LLKAH zwoi<v?}$zNawgUqvOxI-#81I5D~r##h34K5N64`K-0pPI*9Z1614Q zY&uz(@~L{0Q>sf1*>nRpREJqZg?FdoIJ$5%@tnr8hi>KQP-V<#J0?auTz~kY$!MVS zYX9B8@={z1>n7rP?f2vXl z1p(xHrv^(uX#jm4_djk_0s~!{C8q-->q3|YP-H-?C<`p;O@vU7*SFp!aQ(tfX0Ii? zI4c$2)(-m0wuN;B2Njm&^)wC!m6IIa`N$I-81a?gMEc2!n#H5tXHH2B^R@TdZpps^ z***d0#O?a!4!9z}feIJ{j-BCFqK!d-juDsBI5T(SV~;B=KUtUtwe%9fRshXC-gIV8 z+{$5%>cJ_Y6}xc4a+!u;TvEqr7ykF9IKUDWfpI5bT}$0)3WIdveEi#TF0hiKBXzvhDMeCO{o3GWYx3DRSe)-#0YeX|;m8 zCOV3n;j?qL;f8!xX7~JDGkf9|w8VJuvM~f9D}LtxKEbgw>^z%_IbI8s(p*se^5c7- zp}y5L41CR88hw>jX%l<(9)EK?e=lsrX=h!J4 zXwDVII?g>8dIqF(E@JLy@_{v&^s29{D_!ZUHN))XH4b?0REvZ5wS4)vbP`eMF21pD zjI^81br#0I|4LTE95uY{jNsUh(E(N`N`Cw^2!^VGzJv2|J_;YR8d$eDMYlLMnK!`Y?zZcZINAmF?a^E2SIm(b6VGLZkekNW=;)14Gb5 za$fIvd-22MtCdiS0%eTbZ7$QSfT^DH|LgR%u4X6=I58h4%NO24lY+gybaFc9e0bl> zRzI10ny}(k6nf^G?%;&ZMiJL zKIvAL#u7AuwlY?89vbK)nvZH%hG_z`UeEd_X3A+M>FK&X%+VB@ks}tfgW^e#&(Afp zT1ey5+|$(U*=mqB1NZXx(vNJO{%d|mFY@W?1L%$P<&KeH6u{R;k>S~X<8cwS1-R70 zXSI|T!Lt6-e&9uZz*odT0o>hWVn5^uB(2wop^0<_lC6TY6VVY0BYFyeSVs&aplZ%& zgwYvdC`tifXhEf&XSw)~(KQ(3@x5&tv+Q%aoX@zyyTqQDnSn~(9#hHS#NM8|R zfbzFxkJi(=njvfJL0$BcS`X4BE88aK z8Z}&WU)|b(vv)bm3e(K!_{_rB!CoY7g+B@?o2Ua4ugS#g4#n$c1S0XYq?+>6(ngTe zNoC?+{&5}ZLCYjqVu$HLbx%J%M)6s`hSt}Oh6z;!TvLm!0tL12KmW7Vd8N1H#vjR` z0ySAf$Ggx)Y)wn!EnJZm3DpFS*GGBPAEj`Ip0=RA!xq$cPy%)|Bnxk$K>)H9+)Y4e z(QOBt#@8QVw%{eWHD@wCy-4_>MZ#~W2v2??!KGo?PO|O4SHeT{s9^XW^S^KA8!_(U zp+8<#nDr;9VW2$5lIceXATdLVu*3{mVupY@1Po2qP_po1nO1zY755zup>d2fGBj=b z+b7Ntq@+UXJCIOnhnP$zMz8?8f$)ik?G!XV>e~2X*7TMSG$HR{9A?Q)2Z@js!5~JQ zhOdu)eM~EwkDN>!q%SQjXY?Uu*k*t}q%nPT=tD`?2QwU}4}GM13kTB)sPz^m(;6=4 z3Wv?A6x)YhEUF}jG$Qe~oN2w2*Utcj_)?u_Lrhg|yJ9Um)O6S8^3Se@Lj{T^LJz(~ zfG;tHoYY@QZeyHW1sntv4FNs)5&^!H7RX8IB1bm7s`V1`Kx~6X0Aasm&K%mR?HNL!_A$&>7m93#5W6;!|8tHHUAi& zD&_Gldx*~!d!B*t%6;aQ?xl2*AEK$h3sPc+frh*im~Y}mIK}CQm<^6$BZ{j#e3KkZ z?*>Y~Gi3VNb&TQCSO1#1-1uD?!fUPD|L1S1e>f>vtUnkd7u*n5opr1~P$6TFWAev* zqgeK5qZKqVYKC~vN(mmn69V3OH)F2mt^kTmtPMqT9zo%7ur}0+I20QhwV@i~P>IE$ z5`t10Jc^w2)~M-At!wl(%a^vH7?8TQ_DfdFQUsUnX%TC+p5``LxTX;#x7BnoeF8`s zV?iWM^&5D>m^Ck_2xj<|*4S%mmdmOq)A1mnciRAOH*gxA?4CPy0f9RLMTVyU>TUZi zxAOsf1|jE`CaCkVrc$&7bm^S?SrI+Z39CWq#-?F-TA0wb%6BLRI)Nar!JjSqtz;L#pG-%2~Q-f4OD_N zs3oi9!a%&Imb&HueJLfgI(07d&X&6HP{YMR>M*-LXX=2cD4EX)1YJtjR}1P?dNx55 zoSx_^uMKSh&!yEuM_r2e|xHNAZ()Or{^=NhKMf71%);8)&%SyQlcAlR>Xc z@JR9&*E(zyo0QtvlR~DUBX%2}8^9k5T3648(FeAK-wYw>?rF{d9#A_Y0&02H%e#hF zBcv1~BtCB@0>E^hFLH_@SEIGb3;SeoV55QuZe~<)$5$8?0Jv9HyI;QFh6rQeE)NlY zIKzn_IG50VW%tbRi#52IrCV^$zx}JODRr0!@q?S_+gX7zKhQt#FH3b?V{2tvuwoWk!HS z@J8zD#=6nfJ9%ZG$w#5fs0F?SK zKe7Ma4(bao(CBa8(zO3#7yNr6@<8de4*hUBitT2-d61?1x{x_9@#BYrUc^GMWu9El~sRE-ktCmm(X35Bu-V#=tj1$`k0@ z82tHLBO3!Imd8Y7^zvMx@ryAc_m>gb2?%q z_7=acwa*hI##Wc*q}YKxc#5!0aDj@EQPK$PH!}J#GX1Is#s40Vu_b3mMj%E;OFuo% z>Ty6eZkNcKZon4O&H9aoftz`{X&&4zFm+bVPLIa7IX^UoH5XVJH7Jry06;31-sXeCb|X z4l^CX=*>tS6sZdU)5?%OAfSiOg|9JvX@q6$oEReyo+_;`J%{GID>ZtNVqAFc!PBKg zX~m{lRy;HTkA^d~=I>^yxK}+M{-^pii|;>vEm*Nx{0-J0Hhy7UV5!)mfO+%P2PCEp zy9ub<<}xbB@RGR(|XiQYHJuU1hSL z0w$8((I_ae_{V>0vg=(k>51&QP0*h@`r*GRTymh=d)U+ig^t6OpeW2?C(AxnC)5ST75Zg%`o?AVb)`fWK$q5k6Izf zc~>?CgV3pICw)+oYXSRi!=`QkbUrH~ObX{p9SH+mbG&vVv1aAt6+~LoEM0wstL&@u zlYQz_{8&+wO=dnTyD~Irl|~@~PTq0QfH%zDfVmK(JTBP4tFEZ@^bKQvwb2h&7=?Ba z4anYd%M53V@Vj4p?rA1mKGz~a3qM6W+e7lOx{<)S!jX0*z2J;jpRe2rlakokm%x|v z-B@IDXix{nVPVO<_021EH65R7KzPeUF)J0L?M=q@j)#}&QuB`m+SH(!@t*1}n45C) zUSj16TZfBppH*@0Bm1^yI8f29q?VJntsnDl<+4kZw4Y1r99E37l5vDeGywjl1< zbb?hqr!%#uJNsA#i>p6a0Fk$GLu|P7N}N&Wk2D#TS?3#GA37#mm{$p!N3!tGR8@d70^-@DXTX-* zD`Z%s5pJihvd}~4<&p<=a$ljG!J}!lJFXI2cy^w_RG*fg6FX`d=N?`~ANeyzpM8 znMxNOq;4^z_r$BMc9vB{6y_h%cZDDp&QX4OE~PXqJa*P|V?W$lwRCQa`73C#sjm7w zQr~6cv>P|vN#Ac}588MA!)h;)=8}+n!p)S0j^Bo4;Q>=4fXUC+O>e`hn&fKk?wPw5SEfOV_+umwx zbL|>pY?)597~%0Vv*kT2N-K;1cpI%gD+R2IE0EbibDOcAOm`ufTh#LPcmfSs zLTR@z#M;7dLk^}}fTY!QKe`ssftBcO0 zGg-J_g1RQ^V7f^vqNrO7i#~cyLd`{*!0HD}%V#-%QL9%QQtd)vIjq;I7BD-xyn4Tk zd`>_d?{Iac%gD>_e>KCOdkM25qduw|!4*LFr3YU^;Y$zEl4zamCNL+POw2+`qID!c z%M#jjtCpL(CuY~=Zb;rbIjM}aVpJBYtg`}V<)DESL`5z5!d^zYxRt%HtMdnYlxS#J z=Vv=$kY~Fs7S(-bcH(qmpYGapuX`?aOcSc$2Q4q8M^Z3Ik=Z7Su8el?oZT=nyGs#Z z3{K2$;B{N+fb{d^0Tub~C-+9ac}%ZP3ZiG4Lrtmug8FfeE}WN{HS=$Qh% z$w`%E1Y*Le<@6}42Nb{$>!6yODGy|oP-mHMg93nur7YE=4htS&nGy>JgYKlFiMCa= zr%jhTexM7PE*kVsZGpO~EDj6LqQ69qT`Q8;pP;;;%0)}RPQ}$MUSCKwotdqmkEH{J z@L;nmgt*O_PFz&_eKhKJg1hvF>N?}q3^_UzqpwpG)ZD$eH&m78+;-ioyYm6aA8r-- zUZkRoCz`I9POK;$TUd!cYo)`;Ckq`U+hrg;Cgu_-!#il|-h9wf^ z9+&(j#1erDsX*r@~4PLv%6{95AYlzTHhJ}X+!Hp zH9z{ZjBZyEl zQa|q#kCMB+=^kGpKxV?M!!*^^Usu)2<0^G7qCN92PnB3>!nYJAW!QIRN$rW(fh{vF z!ei;_!uMbqzwp1&>f)+;g9uhPr`{P{`pQ3tDe&DBoYb$X z#`t`o8q2;*LnYN-4H#Xr=@KjuGtG(9|7tsBrJs)G6s!8(yPH#-gbQ&3%gvGbUpD!b*kr)JjjzFK_Gh+l7E<}gQb{o6UOm)vaj)l+RK;jh* zbFpPC7ffD+80zn$#5q~6j>+!#pZK1Hef!NF%yc|d@e(c&v}glkJI!xPuVF8nKb9P6EiY6aaHjhZ;V>1 zBmTRqivHTxAp-q|<@Q%cm062g;xg`N@n-GR12J-MEF<>{SF_&{HGIEXgWSYS8@4|6 zBQFi;V^4GoAq>dnF~!cc6xJP7t5aC}MIOcPf68BPvov$TqteD9>|fQfV;T1}Ue#>F zUN+l;Yh0BR8v23xqX=?0G>D5GlkaTrD8-k8N*eWctt_ zxO&xqgB0nkTsNN;6x3!)XI@@HXcN_Ub8NC8)1Yt)*dr8^pNs?wgf1`xki@cCEWSD> zu`ggiKKX^bGEfu9Qx|Bw*h^QOk(4%;&e)VS6UgQ?LWi93k0)w)L_gi5H8mEJ7(DQK zuvc7VF~!6bCju>Q9+F|&-D`_)aV)wY>yv+7c?o}Yp}*z7yOKTtF}lzX5a^fm2VWKC z*22%yg$DAGxIeHgbGqYxtQ({}M)U!MH`eJw+Eu)WVUNt^YXH&fjSU$Mm+i$%{(x!f)Zfpe9xwl$iwO)r$IA*1yF|~v=?P7Yl-C~+DZltsWX2Nm`qJNv zq%np|mc~j1qFnb0D$0Uv9|9>RW+ZM)%(>FFY8wh`KgXkZIi>4R0Gi{TcPZ!oQ^%c3 z?nWhteU+HAYZv?gdt#Fo967sgLvQ~5+QjKg`)7T_cC=GxSawV?WVq;mt1z=-q) z&m+N%7drS{9xwcGI=^85rp*3r)pMV+{Tn;gEdk9Is@?hen>@Gu+*|vi#^Y-L-8CM* z{oKzH=r3bqgNOmINzHm^QqjnX9;ohwC*?G7BSV#CeQsQ(T+H1s6n`BOjR-mR^TL zuUNd@^@vZfC&9Ms9xpD7&s&6Nzj-6#+d@eJTs?Z)m~!>#X&M;Rb5wc63fC5A#G?Dy z?S{+ZM}}6S*&x0t9xqbG-%$K^XT#=DY)92AIEr%-#o|wwfeO1EG$LM1$3VjpQYRU) zTXUkyKv1t$CFB=BR#rlqfQd?oqft;`@k76BB}DHkA$n3mZjfAlfddU1T;T)M%;J<%F7#~Gg`N~*XRlznF3KAOX9e^qa4Mh+*J$)zshX5i zjXj)d^jf8wdp}a9ns#8KTyZqae69Gz$1PU`Al2xJYSiadvF=cuH)RjUTCY{C-&D@J z3z&$tqft;`am=ySyIAW9>tnE9Vy;-_^4p3aS6o;{t^|QKaz!bv&Xs_2lq<*Lxw3Pr zh_GumTRqfW-Wfjm$HdOP^GdU;(0n#AF`B58KfxY8bNm;O-mhn!&a=0CmJMUGzr|hR zLqusa%6zh|53TXD>thCQuDY}H-i*^h#((X!!k}p?YYshK2KqO=7W#UMKmFU-1F}bL zR(tuLwc$x4mPF4p5#=pCX9nlpEK~ z3agPza?ts{@zH&1#`kFj`G(g=BiOtAcQ=B4m!)Xktpxfb*srulBiNnU5nRLV^|HDk zXf3y@F%QKg)rnNR^E+oEjiQ|s$iO8M@k~;Xw{_p<*7{`OufVMlmv61F3gtj!nCc+U zm)8;*tYQCqjo$oN9J_taqGvZ$8YcIZ^ zp6t-V$07XNZxe7;sas{6(+G2W#J1jvKxNbnrrC&5DnJKl& z{wFmi6%kAAEEJ*Ac=?=MQw8;?)H2heqpq%O3!}7F_B~eAeF8pnoXK7j6sVxwOmx@R zkN!+$D5VKbQT>CQmA-ge=bf|-xnldj)NWa+n9dH#iNdI<9@EQgXE6DZ1V^P6KcXv2 z>GQGH%1=!~AXHV}O!*nF)#Fv(4i9h=F546c?m7hL2I7dL+KglT#&&m-p~W!ETR#FC!kineB_^R)7(+bEI_vqHf(FGzpC+!xs7TpIw%c&^O}u+q1_Yh16Yewz z=w0rk%QL^Yo?O|Q40{I!pZ0~C&sLVa98yC0M z7&^~Ae1Qyif$xGu(B#|958u|Sr1EgOCSP+lUE6GquU%v?R~sVI=4vfbWPVDap8e*h zgs!2uxdSg8C{2{fkh21dM$&l5D_$=Hs&FAvTkRQ&P_%fGe z4J>P5Sp(8Qu$PrNpYu&GzJ|@s&cf3<-?Ur1uw(QG6|1rb(;9gd8-7a5vLQsYbgJ!C zjd+R=U!{dv=Q&7$LUZe_zPA_*Si{xa;-@R1ZP28nF<_1fb7C&yQJexg7~~>`1JNj# zJ@&33f&ph)M7O^K#_$lZj6cxDh`<~^q{D$ttbaXhycxThYc{P{;+oCIyS?djG~k6? zxO^1ve3y>C5krU+*tcm9;TGWccp3K`j=GvKmYU z>eezUk*NuPE%2~qg4;MyxW7gl1+yHeQ7jvV&_xPuK=_U)A*I_f7`n=4Q}z~RgHc&M zz`CO**>C_`_pC!#S2tw1p^Vs)yfvXU{+eUhML-v+GEu%Xy803drWPou5@FF-L*s9yRTTTP zg4@x_PE5c$q%(8ar{60)pE@f}J73 zp^%_#$cG>_#8XEb!(>{DAh^x+e@gpn6aOh)BmI{g0EGV2QnE1YsM~`nGyS%3Q)K?w}eueVuwKUsnZRW3T0_JNTM?J6{+~I>@?FzUU3y zR}TmMMxGITjeU-CZ@b}sNUL!Ppj(Yg0NpAs$th>YWz?DtnzcapWzZJ}UxMB<w{6Wxukqrwb%e2n3vC~95)j%w5|Pb1vYQ;)T_XE2BYUIB zeou|QBao`w$6fM9E43pg*OiXIRgS=f2)xY*{I&>aY0t;%j0kkr#|ZQ}0`G7HJ|Y6o zF#?B0U~fdADlN8ox#;DiX=U<8hc zz`rWi65dt6k0Fv&(6u6#fS+^dH#_u)h5mDf{vn~?8lvw_)Q2ietk~ZkW-Y~8S$l^g za9RY~LIPTDhNUYMt2gHoF~oN`#J_cj&r+58yD_C)oJ$#B@#!ep=`}IzcRFnG!!q&Z z!v45ne^}UZ12ysg*Za<8Ul(h`lmS%SuKaYJ*|Dk!%s89sA2TJpyHU7uEU7EU61E*F z1pjC$OVWm-%e|WRJd-{>;SAs!H~l=0)#=-sN^zKG2lG+OpvD6sOsg>OaG|Sz!N-Jj zSK|o+Z#;g8vd%a^k@h%XUR;9&i8FU=ncscGr^Uv12|J$K0%i-q6W!^$19lfn$Nbnn z5~#n@b937hv{1b|c`hIA+@?a)l^++tzkAUr(|1QO=HX^ib|l=Lv6f}c6L}WrQGo;y#^qdwVRqC6%xrL8RDgFh-YRoi{(m< z^r&=qkRH_Egx>8*W*yGENq8*D5aFZZU@Ln#Il8 z_WkUNwdb<~rIlQ}$dk>m0ggRbGn~&d^5?%9m}Lj6tjoTQFup-*Dwod=^%mq~a4SfC zL&cX;baE5fAvBU5BDO8iOk;YzJP+y$$df>}6%$XeKGH$X`Amnw81|VCS25jR&UClW z6r{f0#pCokFx@StyJ6bmGvz>*vd3M~mED9ZBFmm0Z(Le6Ia-R(e0N;8fd0Qythi`d!QUCYHExE;EN5OZHN`m{5MH%Q3!8Osz$fm(3M_e-Bd3Bd}E~w)&nwLh=hYX+b93>a(Uj zthDlc6%InI4e`bj)OZ%c`jeBpC_eOx{cA>^r$_6^Gxca6N$Sx((lk%2rOA`QB(ImN zd!sQwHb%-pcGz}-S(-}a?pI4I!ttW5%ulO^$-P9syj0kpIt^PUZ&#@+oTF3BL@nqp zKn>H?^rk&_@m+>7{r#`g7;$dv|;@>9_NT3Lr0&Y1odT>99lT^ zdEyYTQVcTi9AdmQ;uwkX&DVyq1<9sMlA3+a8fxngJ?5H5bd_MPc|<6xJVvSfnH88rS6HSFO2&RIag& zMr6wjXDV$ddZPI4SNH?bT;pK^x6IU`BX_IbL$N3Vx6GtMtlPt=iSnEHJ`qGP_(t#g z^EEJ8{uwC5kDZ0VjtIDHX#1rx32l>AM!oyWArJDYf@pNUWZvuDyV9SxCfrw>8nUK6 zUH+F9g{W{1z9!7TC|7?W7HI1YepVzRywlw^@SYpt#d(j|YKuR(Xx>8~Zo_yTm|GJh zog)3bml(+*f=e%q!L-C+zSa@K?49IyfAuo4Ce-dhB+FlXu5K#eOE33-nXI`2F>d*h&$mf0chM(CHoSR0@E^Ev1UtJ-4!GvmiD{3)X)iMOIkycjKscm16q zvczkOXi2;agHI=3Q25SEJS3?SZ=)|Bmm&V(wHMRR617(VMcTv1afNt40PUS!JoRCf znJdqe5^rU)@IRtxmAwk_-gSG3tjrCYp7}9lZrIA4HFGP(i*Zod3yZV6Ipi;FkZwg- zMRB3Wm$d0zlD?TSnx9Nb8deJ@X={+mvq~B(Xv*gbNyCy|ThfmNEau0g$XKdXOE!JF zOuSHYPQ11N_pIW@aOb7;w6s)w%|GjSmZ@9c78RGl%d4gq5;-5} z$)H&QhaR&fz?qm4x*hw@qc$4QKYfn1bx-mr_Uw#?Cn`5>Y7?(@a2uX$a65Pu*T>-0 zY9$2cIXKV3eO_?i`Q?D#_>4-4?a={x(1D(EpckzN^zIOJVn#{n7s-NyO94Q0{3gMD zJcJvcQ6e8DM+ADE1AV6h{jfmaE6_!{gL^BMmKYMJq2%j)>=bJin%kS6rBeK4b};Y= zmM|E{@>)0Y(^Sq>-5y(-WEk^x0#^}UdX+=mKGsC4@qDpq6AwIJ99OKCTyIkmW?FI6 zBVoP@8EI?I*8fXx!7V3hSp&-&Sk{1Ppla!Q{1LN!HrKfQG?uaT$T79`UgPRxbPLXv z(hwmt*6;6}rK`}rclm>fwpeI=u5i#UAPpk0c+qAQ2VpVS>Y<76?k!9@2)w53l?jq; zt&0!6`4X`-Kmw@fx5M<3vkMLGt`4Oe_{>cV}Ff8Ihh5FOn@%pj>6@HbY61vz)B zk)YxGAIDLEbHzMdH?oeH9XCF11EA z0j1xj0T!c*zaw|dFH=;`5?84pWTZzGJZ&s-F}O~l{&6eS2(jdZ>CgRlcMA0(6vPPe zeggedsBgs2gAR7dcOZN-&Qp|Ml_(h*Txh<;6_t!!a^HY$>RqaaLFJLKcB-YY_N{LS z3#5&fCQiAlc%`_xQ_aezg|E4kM^2Q3OZ)7?JIdD(BG$=TYm8^|x=%WI--$oPp`#^v z-3>(fA|mf(T1QA{>Ohb__3_x_<+i2-$p#McoxHl@8;Iaq4U*b9`r0rtF{M^flGUp3 zlQ*6lrQcuB!81s7*x@n?;vnCyAnNVGQ|ukr+hCEKiD)m>S}FUiReJebpWw2YMH{Uz zYj(C+qxEpl*&40ig^hG?RqAOpT5t2|pv4TYH5#pjpJlJZIgWhe77V2?7-HF*1P&>o zc!7G>+xZ^9Yd4?OTf{Z@qtA0cJG7r@!S6k#78yPEVQ2H~gHs4 zgam*Tg2et;5}9y5La@k9n8$m0m``!x^t6|F{|32DP6Qr9*ec}yoze{0K29@@5}{u6 zwf8^l-VCQXU5>J_orWmB>s!4aV6IO)G+9aMiY9j3CHLH^ghW?WXi84K6z58n%{v#>lA8XS z`}tgQlpvcOf$>GPUAhMXx<9jq`Nh49-S1%L-h(2Zn@^0Z#ZWtM0sVdeH84dfcI_DE zsg#EloCYbsShItp0-l1xpqgHH=8%;J3ejT^NodOFpzrfrB{Z`kajnvj(nn6$Nu3vV zLkzng?1f*VWJ?^0<=b|j&^tvoRk!~gqHZ#UELFX7@#>X2bGHs=#>6Q@=%*SgvLDt; zPY5mcrR#`s`YRS`kAkoM;$QN0sMgl`@`!y|13&T_sO_JYU1KWGkWG3L!DTP;PA{QO zudqr(xJ0_azqyFrCY?H2L#+(E1Zxm;+-^pVYVyar)&ud=i)mu=j&;wzfPrP~pma|< zJdGY=GiudHuNA49MM(qi(EWs8qt_q`mK^?FF13WQhP<{g$vf5-)|ec@-Lat%A(k&h zTP+~~vQ|!0qE;kqlZ11p*F>kiHBMY_re&|M1ru79rOdMISv6o#fEwf!&-Fo9(J#BQ z^|C7q5Nupr$=KPng^c4cA!BFK7BY^(z_1K?u)r&>T zdoYHvB1cz%Yla^?^Ew;jh9w~u$1RX(BP`}tM#`~T1B$UYhoxbpb+qvsHEcENc{U?+ z8nzM)lSDws*bizTR9^JCLTQa1@rsYjxF{9ewgA@#Z*2zE98|Ws$Jd^jyB|{tb==J> zDr(eV?08SaS+&-Yk$;E4xj~scwGjglS5az;9Du+LiD0iGikS7LalgP8HY?+Er`M`V z1)xSP&d`)?I*KHvm8p{SEQkSZMu=LasioWiB&0&^Xlqn)A%`PNQdiwI^p7IL>gMWs zOFWVctE%8bVFh3Ka*cYnSb5&4sJlf$dc4Sg3JZ^;f9+qqZ3dUU%@`}>#&ORzn$eUEd19nf>WO@w9E0cG$ z_Q!IX3J_#dUB0I|7my}feW%Xl6{(zbVc;2587=`kCvlD>M#N(^b9-+ymyUDrvON$g ztZ#?YN?K)=bD^Rd&qrut$6)}pgyc_=vL*>Khz z4%9=^mMUfi`E%rQz@WDL+k4nXRpZ3@+Qk~DD!I_qxzL!z)rrg;0VEQO(QA=*eMgz?H+ETcKq@fh$P@xp=XlW=#85B|s!F`CQ zoiz=H#gQEDwCTGsLv<@_lP_gu?T>n8PrH2h^gnEL`d^Q6jrB(gX2)e(fueNQoLsh_ zIl*9fv`51~)~)=dPhPGK8rm?>Eh}{-Z-La@X>(`B^oht}1lxATj#rnOXR7N_IUtpgby;^zb;wm?-#W<&m zOy*c{b`Bd{RoV!F_Wf6@+7NRvJqAsN+U=WL$M=hy)&Mdk^IH;+-$?wZ;x`iCQ^FN= z9N)GXv`4Gjk>Q!)nJeumhZ;zWig6K@-fAwA!njC^{+e9+p{^}lE&kdjU?q=kX3T6DjiQDr(VdXRLPE+CVRVV^Ysw_k66G9q|Tg=zpS^U$)&^!o8@W)QT}c>HudV_pO;h4+j=LODMWZ;laplwA*>{69hGJ2a9EL z3T>g&givJ{@2;s$XbPCPZA{8#YczSs1DZ&)&veb*Z`Nk4D{fvhjj=5Wuj19}80UGn zP!?dQr794?-ZCRPJ>*g%o4jLoOY)YJtU~0jdBBnS9wql4CYuon2-GSTPq}r9`tx$j z*9`jGy>gUJ`1J@#kN2MMSSS1`9>vbrISbm|*m6wGs;BO8K!50fz9FEb4>U{)KvNTSBIA4BB;Q++>E^G2lBwyD61uZjWb~ z6j*xpyICL@NDs-v0^I@H9)L3WsQ_g*8i5iS^tmAlH!p}@x;a_W^Hx2Sy5k~m^lsrw#_%_Mvcf_K>#irhAB z45z}~HX&DYtARr|&u*Swe%DX)rkQt_9lrmh)==ppc5@7s3&)&GhW_Hh6ODD+#64?U z@{}vpe;{Je{+0E|ue$iD_s5Yxk?}`ntp?K?9&hI@w$6M~5nki~aOjL4ajTtQNdkZ*beVHIx@aQ<~cgP5LK)V&}%K6aseA(Asg^8(LZfP1_Zl zmOv_Bu+ zhe1f19f=L!Lba9R*VAo@4jko%#F>5@mvyix79pkeSo|#!i+0cBw zO@8WHL0g$&8(J)Bi-zvPMpX}RFk4%O1Qtv$3&EjR0NzRdo$ks>!n)~Vx?_ot-rxo= z-B^skOd!DnGKaA1%|Pvb{OfnA$3FRF{{Aaw5;yG!h{y=|CI`Oh#v9Gy%Ak3NTEyPm$1+I}eiE2ayVcwlNZq ziAIOSVcvdnwzQ`73{^mK{5-|D@ZOWBN^!eDY4To4d(aBX3Qg_7?~j{&~hFy_b7q1j&~wkoY-)KPn@6Wdw-`W&F(G#J8NJTdG|TW7fNueZLz)y`=(m zFJ(fH{IHDr@9(Lg&vVugxq~Exd0v~I$V^{i!;IeI{me0wE{$Mx1LRbGuuYcwS1(UH zF}s#SXRE*uA7U@vQ90{Z7JqaRr+hu*yqU_F6Yi6OIx9QaL?Ubs-oP$nEO`cP>g zZZA&h*Oo3E%1+AH7`Bw`1Wa~ve0I9nS=olngSZ}M#7~}b?IYkB+wj{b1V@byrcrl; z%5?V%^AbK`O5yA#$JlZ^)pm_llfEIo);Gld`VDa)+7ONJ^#DEJ2civ8jL_+85#sn> zFC|5@EGW8wDUlq$WIh?+2ZBaP@;z19a(s4@jl~iL4fM3xaF9Is zEsYHafrKtO&~*#W>9RrA>5|zXV6v0rvy=Fl@mkS#ok3r(`QA>_u=)N>_;-jL_$`fp z0;WK6DA3(Fr^~--(kz*O0wy~-K0EPG*)G<6#WOWua~EyCuk-db4W+hAbuD@B>Qh|! znf{?0E1!mmrpHi&)osWL`ss$HnrUhbAM;cLT!goCJ$Y*?KIB98Ks}5iWFYEd zxgIdO5uHD`OT02>K-ZHf{HC|Sdqijt!J5eP$4NUy1Xwgz_A2jp8u)FF%9j%8)%g4u z%W7ObLiw zMIo60$R22YM+DD%EAYI-;kmAi=kf?1_3K7>Vddxwf68^LeH7HNQ4#i}M`7igePpML zq$pz!MxdPOrJM>#+_u-s*vP?yMh&ZFFTkr!n&oTZSjOI=xi_#b=ZMCd>5j?5UYjf}{usOg2xsG~Kstymew{!2>dFGRoFJGXPQ6)qL{xri>LFOuIJH*} z1+oX#Dj@dm6?OpSSp5y#ce|X&AA%Q3V@1qO?bWGQ%4KNw8iuuM?dXGG4h{g9m|3~wB zaa9G@d`@ekki#oO!DN}^yUl6`HeDxQ&GB8)D(QA)y{-I1EV z+0=tJ_>{gp_lp$Rt#W?^c`Dx9uKDi0?NS$->^}Y+o9s^V88K!w<>S_u%co!ic|h;5 z(8J4^+RRlE*kOChBRf3pKq@N_?W`cr+r6fT_ zBRtLNEvwuUCRc7*wa-tfB;1q=$7oyH{bM2S5G^RcRBy!p=NN4)>%_JgM0zJG9$*zgkwZvE@U&P6}DJK$p}} z!TkX*Y;jBHA}L5i=RGz2nEQd-hf?n#=YNjw^8dP0)RFfQ8h$tOiLP;zDrz;F%TaH} zEeCcxLhm=r-Py4ByYB4eN?BOFg+Sk(b$y}Soz+t+QXH!ig{@4p1k0p0mYQ&RMwhk2 zx1i2JLq;Z9LEB|bP1Cmingf*GJ}|JklAzt2CH^+D^Js0yq2DFxc7$nbkcQ`7It8Hu zZ_p8o#``TRwUjiNddGEyMQlqeE8Oln-nzAZM}3)S|5nl5xpC_w!~_WM-tqE!6&g|l z-Nr6=X4v7BCY?LV(jolq2aViX-3)GZd*e*};zXqdmD1lxzXX^1OJ7s8&7lRtE z0C4k)Q%EvtdTj2!$JS9a%Wm21s+*0Q0t3TB*@OV#8GzjW#7!HJ7-0?O*vZ>uT-psf z%R7yQJj`GO(*rv|nk{-2Gtw+2u4~djto_Y0#~t{R|2unRRuu<#NDNHe$)D@+rL^TW70O+p zD^5IN*JM=6o!<|=u+#>rSsI86vbE)pusG$^ZT6)YJ~isr?FB~kr3!Sv_eIb6(R>Az zZ@ZOB*|i)FsU0tNg0@CCk+)Wr7E;kP$F4--uUsQx*|b`VGI3X_Ld!=Ehi!YzHaNPZ zbm117?Y4!cbBXDwqHqyPRb{I(Mw2i3>nQop(Hg|@Fx)tvkQG{|BVAPQswV=Yt*S4e zmVKAQbtw?nRkPr{^G#MX|3spr(rvO2pOy>cq|@Xiq}u2GJZht+G^LNRXJ{m1EpT%>J-+-%IsQv`7~ zs@is|XQ~|FvUw=)cZRzL`xNx$1bV~$eV?f?+@1Q?9?CAahq4Rrkh8B7g&ocq!1#7! zS{2cDQleR0@m^Oh-c=A?%OcSAR2Q#Q)~c>(nCK9oQL~E0^qLhb9x2wyU$`Q=V!g%{ z>wGKjmv5w&V1LiVR1M)mO2wW1r+Dln;5UZ>mw{zR$&p{H1t^4y9_ zNjvISm#P2ur_0pOjc9tyDj`yWuxkl~>7PKdG;WUr3E4y5()ApV<`5-&K0aixX@_c+`r(5QcfenY$`rY>7q2eF>d6NdDW3j|knqW3g z4BIoB9rD=|nwQ9@=QBrj@?h8={yfLRc-V7?Vn-~+tK_p3KQEu9D8F&(r^XYKv%<<0 zPVrDex)-Bre(pPrZw)2c*b}#Ywhc?O9r?33Wo&VpRdtu`b@({T%;MIDachIPFr8C+ zI<(WJIGV!n%qi{M))AbJlc&sD-8S6_ebc9w`@?iZjm$jJ(%H`jZPYdTj~VIvak{mO z(;64&(s)FNrk0x&*>kUn^3ix^TyZ?3fID6q^6ZTv&#nx4W_&a*J3hkY$XlV;LOH7a zqLaqQG){5k+>no-rLU>rV^7Er8|*7CPLDVAJYr*QFw!gm^^#ekTby}Rlzzls41MGZ4-jv$rY=N z7W`CpG9VIrc4XH&p*=Axzq{0Y=;%ZXAt5@|&*q4nkq|700cuY{x0~t_a#n>HRDbLa48Q zs215ADLL0|ARazBD}ztv@bc6O`L4uUCd|(Wam4oXvFn^#({%ap$!}|K_xLjmFmG^} z2~HrDsC2|0?i`4YyqxM@@cfcc4dhL&ysrdObF9ka*9{W9Y`1UzV22KatuY^ zL&dk<*F=nwsm6qb(oUz+-Y}}$mD`skrm{fG+nAWrQOCK>hKdB~CLyvMdL7Lk>7a!b zf1L`8FaS!1HQ}o9Y|`>h7ntfbqPF~o6oFPb2Cpov;%4Pz{Q!#g;xDP%=dN37rp^B* zncgG*&VA2{w}g`J2K=Wl={jXv+U*2kiwR9wgOf91rJWF828*9N8rGZX)_}VQl;){f ztb=yESBDUQPXiH#Om76Gm%}X+CNW-s@+LoOBU;e(*I5pgt8elilLSyQYagIwba1Q~ z1EsZ^RBfxNF?-GgoZ&!S4%E}H6;Fe9xm_yHrNKsasXS!uw`tdacBy=YM;b?X7u1ZY zL;KD`bLj!&oF2mDzk4||UGpI1;TTQ3bCyjA40m&V1H1;w;>uMd+Bi`B!C6FR`UX&E zeFMa{ZaCCxdG0@G&c@c_{FiA{{>J+oWa1rB2QZ5|8()#PCn0&evvk(czCnfYhG(uX zT-9cAcOz$SkEP3(H_~kH&tDaz%_aK_E8p?UwEF;sf(fqLBJHB-7W% zvyQpGcxF7lEOFDvF-C%Q;uzT5(z=e!ER=2caoPXsbHKw1D_!m94p{NBCGTf8AC3$2 zw)>bj;VnsSLc7Z)da$v-(Dav&F1L%&TK%%PPP$j6qa&_N*F?HcK6N_ItX8IrlkVF3 z>39&6E9tcn!OcvceYDSAYIJEN#^#=h8M3M8mE{;-MdkU^T;FCM$dooq+_{lefoA`O zd@M`nEF$0^tf=H)9RA(^-NpG=mk;|%q>JPh;a?3O#P_#8bvopwl7Guc_x$?l%Df2q zx78;0>+x^6mVd)M2Ak{KTIS!@y8J^f+hAvllTEHCZ$v!jHro-|K7`WVdrjNn+3|d zr^l(k=a$rt`g)3ARJ-S)+B8p|cB(ZMes2%J;ghFz_0*X_$ANnKTCc*Uur!8k2UvUJ zPny0xw>-wgAr|gS;4I8P@)fg*{{^S`CV0LNpcw<&3D9K@DE3tY`Z*jflK?0fC)(;u z`37;_fX@x$dZmk8lZ}2tbV$>c?z-UUt&=jl?TVTXzbBx}O>o*u64wR495SNXO;gEE zB~BxNE_EY;n9pm;uA3k`#2@HQfH1z95*97N#b^w5>ri7;)Agz0zThtujga8J;E;-F zsXKrepZlV5Tq_Hdk{<^R(O;oe-Q!HhV7MI(?kvM&9yBN_yXq*#EFf7i{ zR8av2t33v7?zw|_(7D=(sHeJXsF0~7G9^)s2fet}CkLM+eRz<-qLg6nQmuz(>fYu5 zbaYs~_FiG1rDUI_4qqasDFe5Q*xP4+_ltpjHXPVz^dbAy+%bmeE*RNrLI`ynYn;?X z4Ably+b_j_d*X-aZfC!xKv!wMb^nCOi2c^4%+gyXEDxJK*oc)l(-sVBcmn;hyPCoU zdpdLC8z(gh1a72Vq-v@FQ_$Od7aQS05!RUnAyz{9z&R=3*MjATbamzXT5vjC4w}T_%ZTjF?@uD34Nf8LiKzmok>~y)QJ#=2T|hEp z2NM}y)g}oN-(08jH*^hB^h_?f6`?V!Lsf=?pFckjTMy7i{m!(&)~3$3@&9ZkavRtj z^R?I&?QJ@uW;@kyHyuP8JQ>-k;r5D_PpY!r-k`~r8r4#h5E0j1!jXi_mX^>io2f|H zxU_^=tW`P2mzK~jo~g*OX=w?0K&C3kJnuHrCF75i89hslW>VLvZ5y8 z5@m!HjVe-?C?jXrBwR#BsQ-$gugtSv8@tJL3*$o5Ep4MWnQlQGEnoA1+LX{M&q(4< zE{m`M93O7@i)XHZhiB$aaVG{jB$3P5Q)|Q5F02hhtrjRMmT_QLKJN5RBeuF48(AX4rU2pjiz1}$ED_=I0O5IyBBV_%5#d<@!q!C* z($GQMG>x83}Hlrl(&QS zFQR$aTs}Wvs?t0IpwSj%p8WKhr@vP7?3d=*#U}ivYo1Gi24g)ttVZ)Z@83@IJaWeP z8H*x(8k*|b~hgF#q@WqTVpij|&Y(>A(HHjiz{48wD7x9R3z#VOuXWV+d>s&`HE)0sLu zljaNu&T!xi2mV7jP;Y+J=I?DPxUijBW9ILZ)${j(9CRB@$u}Nj zQ-&txd-EHy%(4d!P{7?NYzS4n51}}z?nv$rIY*o*Zeg4k#E^F`jDp4e}1-l8a=hC&NxfH=>$L$(>w`%rjc8%oY?ZE{2Hg*BHYkyk_4QI=Hf?4n8fa%nt zZpP;TjkdP6Lh}3njCIgL%l*N84rhj2&SM^(QDi(w#d=p&s@GJdYVfIm3!k6}QZofr zmAa`a^|D1$Gyh$c`Y23}Qrx&mY9_&b>ce`Frc-6+a{t2W51j@Qd+pqqR)yphRY(>q zhrO;|56P(qDvPriE14*-Uz{&iAqi>`@UT7*r8uuSmiP5&a&uKU#Sq4Ylbda!2^hp7 z6m6hs!(Ao&txJ=etGo%=6-;h+&HbV_p(viU(d3y8i(z~JX+8D&7p=dsMN}uQsg|UC z$zJMxP$RejO~$0P+V{-Alg*u}d?sWed_zIorJ=1{ao=*pDLis_>=q1pa?)QCKdC_ZQit+;Wt4BLgHi>5Mu^f5<-O{2<${0E`(45P$;)>U=&4*$2c-&r z^k_xF?~b56Re{o<(=3%y9vZG+@X-*Z6@1halEsIne&+Y`S!Nc_Md$xD7zz<{9f=M%)IVZodI2r9>&q(JuHXtiJ23Xgrj5 zd2b|ZCE+}xRGd(-3rIbqPKipK?UZP+xjdMKZ9Pu+~+{^|{jWgMdL z8EXTMGVW2|8)OVnWyaRI`Ha_BWULN074)jwE%@cH)Y+XFDS3#hs^sgV1lW3xN)B~B zGpEk3)aL0>n}>0sHt!F$c@PJ8r6Y7xgemJrzqM;j8;#O>a3f%^b;3_suiv?Mk$MeL zRF$rxUID6Pul3(gS+DP2EaMQxV)Y78WyaR$FRfl5`|{%T8ltKyc}2b2qWgmNIr*SXZLgOJlJ24o&cRfcFaEjRK%7gLGsAIy&Zi!go2C-xkbef}sy|!!Bvp^4nEP z*FJuMO_Zy5lCEfH|6%FtO2Gav*J)NINEH5%m@rYwU5b}9%*Uw04%=tTQ=jrfen)KQ z8wK5=ECj7BP~+Bnb`a7Lp5jkQX{R>i;}d%ER4FQ=(~3^}=+YdeWU;n>Qu781> z06ed@hP?nJ?u@5&4MXWrMIEd2PMV5;$3n&Ynd+>6Pvn7qR8^&7qt8>zDPDw4_%z?E zTxdKr0OGOYP4Lq_Jc&g}4R*u#G2Hb>1KYXkHjy!Ro5=WkRfmkxFl<$?vJCmc;J^sh zgKXfCnHyfFVNgJqZ|(>n2{e1ur|=K`^qedbVfKW`nY#f(MH>RtHEyrHK6U2xQNdUL zs?BpgRUTJd>iuq9p|_wgu9F1%amC8b<)I36bZ4d;p(`aCi&yH752{JFa{l<`_Z0_e zLBw{$L_353{{l0&ezMHW5$|`*+~}COg+R~D>1)c&l$kyZ_qyGpn_lo)k2iB~owL+x zhtg+38)+r2-Dmax@O@MPFH&wAz8PlwZS-(bw(>yY$TY&(j<-F3DxH4-!M^jZ<=p@M zHRhv_!s$iNTvWcgIpT6zRn8^cjht`#xr;Q}&+B^B=!Qe0gsj%@$71ut>*8$>JZX=> zLQC>vhns+S{E5RY0@RzBh5nYFU|o1wE`Hu27c)&vZ@ecMuP)mbZ*HP&Nj0}1F+<_1 z#I(62h@BndkN(i~lgq~6S*Gpg2yGWYn>!r6?Y@=@bTMcN)3ip@eDhBiO4C4^Qg%Ti z5`_kIgmh?Z8XH$N=fjJ8t3dsEkGd$i z%%rgLqrYi$HR`oDEs%LW-fXs2VdbxS;7$P_NMAqw@rxnZ&B=4^5~fgnb~WT%&MWkv z&7|*rbOhAYCXMzTtiNX!D{t;QXw6_S9t$d$$q087s}}w>QKLPYZ29aArz;R92cg26 zFu(HFLzjc(4OyxazK_6Zz&&jY}Z~qO+0v%NG9FMBU-XQ+ZHrHEO z{;u*%^^`sB)~@WiVOr!eU4gT0y6Ldpbz%p6HS=o6i|ytrWE7Z|^ElFrAggsu``eI#j0=4#$c zmv}tod+7oHYkO|rDf0lu1T8GKTQ3N`r@tU=U*ICFpwE7bv%I_AeT(NBL(zE$+y3V9{-bjrN?EJ zjMNNeO@-Uia+&Gjqqn!J4EE^li}#l;(U*C@vqaws2#V=N1bR#KW!(S3jp;iYA7FFW z-S$?Mdx_)P2$FYKAlc@SY%L@C-s>xn90Z`^(cAvYM{jkHe}C~|CM(_hqcDNX$BxnA zDJ5^aGp>LZE0DdND<6RahDIMYU#0=vK=G3S8jaj+z~de|Gc=kR>vbLWCf&$pZ|82Z zw{vX>#q*Cm70Oz>Y;1si6shIY#vDJDL>*v*u_KT>B5b%@aYyGg1Ln)%5s$f~ zW1gtzRK}K{%H>g!2@;otE2MgF`xIfq;2y+vNXGS|ZUkme2qT}psJmCFG&oO#S05md z<8$F_LSK;VP&pz;!*_Li+`GCxE}VxK7kF2<{`u$0M;-;c1_ND()n`Ud?&>UU@Lwc2n>X+2t{x4<6MbNIl3rE7fOh* zE*X?QNHF$loa3RA8-L^>g_gS_(PFkm%j0g}^h9+l7gq-XZE8NuGThv51X3gwrPz5l zW08z;p_;&0b=R=3w4RmZ*D_G3pzr<~Y?e^}_x_LX((_r2fg))Y|a)_*3@>(;-1U0E%PlXkg7S7`EU zP^g2)I`OwbZ_7(yv=7L&59uM>8wJ-9HlXtu+QTPVonkv#on(>NBp%&kV zuaZH@##szXdi+(kcAK5vb#a|w@V1xgMVLL@P9M__$Qs->OuRMYZ^5^QkT%>^xHc?l zX1=Z7SR5N{Rr{V*%`V^iFb#<>aZL+ATpo4KoF0ytyF){CD?$AvHaYMyn?ZT}37O60 zf1m9Msh&vL6F+ZJM4A;OF}JEwoOFNVJy+(BZ#X19ZgYc)KVG$rNX=#Nu$O|Z*Q}Fh zkGmBn_)ExIT#0u_>7#Uz6J$-lyaz{Ci-xePmBgMwT5B&H0lU8R{94%g zW6tDX%azXDhbJ&nu2&Z9msqRbeAhPlezJR6%--EuOI*sv`zeJ1of5S2yHwyav**%$ zSHJ~$3Ec+NU`+v+`CT3JI8k8~Jjft@jlGWPBiZA#>W~l5Mw%^o5hOs#N zPmaZlu{KdS0#I$i!~}bd-f0}<=b2UJn z+w_33mpdT*hB{-VYSb<9*6{S?tkj;X1kL+*P}y^zgM$=j@oJv@>DWAYIwfT-19Dt3 zDA}OxHrR@WN4*W5F*q02tl?DLwNe7_V4eyivwvsbXG|u10q!yFC@pkH@HOQo_&y`d7CTNo6DKkYtc%5HFs;>^_!46&3>MI*ZTc=<&!k#D{&E1~ zplmMmHaD1-1G77lx#!_>AgiSjyEeqPj;1eZ(@uETTkASa*`D>p}sLoydH#CXH{KX^OS#?bww$ zF4Vg--mW*;;sS^tmIhY21xXMFS+7O(T|a#jM$CrEY0bB6m^qcedsQ+P3$_JL-lGWK zO`ZJC-#<%c>4S;e?w_2oz$X%oGvz#30Ij03EdQZA>x_cxp!m+Iip2~l757rbH`Ii; zAL6R8Sf`4~gdYN6v$W|T6iz8L<)(n~2~WGqdi`_^uByZ-l{j_%gMag{^Yi5b-ScCv z&#Nhr;E`?g^itqEXDD>VQj-;Wq5VTc5|fd1KE(+<*(>gjGfC-)8exjE2qKkFF^dC4 zN1*O;sgz3liqvX|7(86dsaZA^KG@>d6>Km<{`5|VJ@`Z4eSj1vXT_q#ZI~ZqO83O7 zqU_Z!?F{9vct_O+h|vxHBxm(9yrrC**II5Au>(YagxiJs5n2!+{I6B6nh8`kAh>VC z$=MD0W7Wxfb*DM~vhLX{{lSy-k0n}HuDoS=?6Jh)u|&trV~O)<1&<}J;cxN!cQ(bo zpSZ>nj5xZbknq`6acX3)_as$(a_(>GC_!CoTPF4%(x{_;$5em5HuDI~gDpXQwb~as z57EfGY%*2rIdRGwt5IkwpIvPEr^E&c<4!x|-9bL5Akvh+De=2j`uL<+vFq+8Sn;-y z6>DsiNxrROugf3#Mn2li-flBR(U#Zf)ZwfIL_*reUkyQIFD=~P-e#K%OrOK&R%Ls& z(~$K*QpVcS{<$QYRcI`~I6m!&jVJcbJIQD!3muq<0>2TENxnI>$D>`*9&UlG*k*f57%R zOyCq#pJO;h!VdUlody+Y7iXdyHF-V($EEPNG4t{Vi@9r?V%i>1W82o(_mhuITXJl) z!xFT}de3o1^?@NHA_4_&EFyx&Uo zBu??2zo%^sJ~6GQ4Un*Xbx01CS~Ak(+n2t>*U<>n^KfB8nqB5p^X{`aVQ>%14kFq` z1a4Apl{5;KlSVCR05l*V++pu-_wI=1u$@T@HbZKofTtG{`7(_9)|22p7dVI`=NqC`Q@8;iWO=ulpWGZ)8J zg{V1PO>=lL>(kD6o|8B=hU4waV~NY$_YG^psiJ&ue0Y93T&2nNwhRmU!cW$NZm5LD zkao}yf1)1rvPx(!MQ$0MyM(fa;*e_26yvI(UEy)PhL9AcZY0UJ=_D-d=e+2zJZ38} zy?*8~JfCM7+1pC}JGB^h5C&26Zm~ok`UNGnGDLuHAua^ghkgMtbs8Uz0N+Yn2&@nN z5N@TTW)9+rxJI{zPaO|i2ue(yAa4Y!H#W-4+ODk{D?4q>o7gE|PhR!lKI;=b$N8_d*8J+s&0;0Oi6#O>$ zpd*gsbWYil(hjJ2qQC=pqOj}4tW33dW4zs27D>}R{8{<02h_h>?`fT8GvINZ?1QNc zKGhIv6HQkoay@f19XU%A3*?72O@7#mk0mxcsD-nU<*h5w=gyXu+ zRd0H8dh(H3?t)HpAIgvxeufSYQGdZkY<3QCD=M92;ydajd2S{Oa@F({m=D zYIaAmDgiqCcIG#Z8LT&V?EaW+8nmP|Co`Q$Ut!*w7knN+K;v*XzzAze!{tL7?LWJXQMB=<;=FmN~fpjmy64TFvi<~TOUTf>G& zf4hPWL%@{T;BXWaSbX-UjScdP4RR?*M^KInf^x7kyRUn0!+C84o5+O#kWZtX0r0D0CLH-t18zq1?RKoxLoC} z$@TDWRj_RWm~yTTM?rzb;wLRv`IW0&a_yxu&XeJ)q!x)*P3syfwLgZGS~s4+2xp)!`^8u=wLoSXt#)u5!thnVAZ~ zyj8)-x*V6QyfwMLxiZ(=fhp(ea1<0+{IJVae&s5cTnCQ!jaaM5XCIP`<+8`sM)KLD z)Nw95%@-sRmCGJ9e~gG+R{OX_olA48`|2TzEi74?@%ikdmgtcA)0Rj}-Dn2$KWu)r z>0I^}{vOTF@>jpi_;AB6)aoH93{BZD1EUHw-mO>qtYs^{Milr6wa`IS~Dv4>s%AB@v0TnM;NUi0sLi004*Ey5R{+KkG zBl>GL+@npxygL7DX2acqQ|zbRGde7&K8v^Vk<0!7XavA;{X0}~W5sOd}k>78BE!X0c z|A>j4Rc(_4<+sxAm$|^2WMe@QJT1y|V=|$#_maHy49DJr0mUa9EwziAJR*qsSFuV9 z700~4G_Vxh4=jRParvzN!UXW)Bl;VZ;UVu| zS{c5v2yVsYv-(RjHNXDS>dmjexvYj5GC}0(7j#*ihpLt6PLsj(mVz@*Dn-;P%_MDp zTJ7xo%=l<*$MVeh2!GWQ`$n7~y68*uSy^P5+a0on7`68Do*5zidh{%R6-I=0^u>3+ zKE~9HQB#oJsOD#%^ zBFA41XB||*90Xc|t-;=h9@~%@jPKEq@2|h4^#B|41@M^0jQ--2rC$#z{W`g2jyOqO zN&is{L`sHQjU-ry!o7c*(2AJXmMU{ZA~HY9;;YFR_3j{Z*+)TYy^}op(LVY6vCezg zL}Qhwl_3%gX^AKe^-Z_`uBc~4Cq-KoQHtrw7c>IG*F~t1DYSzJhj3`)$9nTli{$rP z7g{JBB%5M)PasUulAiLklol>&TWv{|s!mBABwY`6Y$cUPzlxHYq*RymtK5zmmQ?6# zODbdwmb6v!;!FCvUr=$iXp0EQ8pc5@OmgQ^*l1kX9MXhtWuuN1Y_vO4V9V~ zqo(ORu>hMbcE5}|>ZRpFKze_CPx0mF36nL0NE^JH!E?HhO^dMnsdWDTm(6gPN{Bsn z3*nEJ3AX6(9UgE|TYTl&vLtG{E8VH*Rnu&7vJG~KoxMTjDmTBetJv|&O|+FDnQQqK;`cT-c{@=yT~sKVeYGtj6m`U3sp<$tApWgHJLAk_#~y@5^h?M*<1jqT z7H5S;{*)W%#7Asm*~G!c$(Z&E5eQ@}}jn z<($wQSU_kr$K$1ZaiK{qRQsk8@*7jd$9}1f(4-ei=8Kdr-c2$uDv9hQj1L5_j!A8A zb7N*`(R<5P%tL&ed5HTF>4Dm8oRL~-@6=BpJix}2$Cp9OzI=8o+`?8hHV&BonE15C zf>4px1l=XMm}UlMzy*QH!p>zMa0$#Q6du)AXF;IWowis|22E+G2db4p%!);2ka#D9UwLg*2GP@t${_Jh25%yn z*A_d*0vTSqrs&)_5bgF(Q%77iP&}9X8QHkz?b~&Jzcpjme00vsweG@xYxQ|+^~JyZ zMH0?EhA>8EQX&Ronwrw@^csRvEz%GMh_;3xkA5{qMO9xZe6>wNsh>uZ*xDWRm2>}0 z-cfsC(9?5zrB$j$N;^cfl~x}87A-C9py{&*$~IzF*j37&&`v;MW`#?k9nMaWbs!tN zswsOr@wt}%!lR+BjN-%r~l|fd=`Fhg3q_V?X6#~Sc+R@zun{`6QaT$1BIcL*V#?k z@l9LRE$DU9JOFN@%|9ZVzcQ(16~7TX*o6NE0=19;zOK_u5@HfJn8sr7|MBAYPO{d# z*AA|qEP`}BTM6uM>&gqqBTIePOl$AVfB$58@60P+6YQO7U3urN;SkYAAl;PuR&voW z7eY_Yen0Wz>Eg2@DK7pkr6_MQ3%4w>KsiWCOaZrVfpx{C+qT9cwJk@wT^UHTRtOo` zp(+;!ods1Hv_EsVtyeRY{ss|zY2vjZk^M8A5KXGNZdR?@nR(f<8_oqExmw_smp_wzKx^;^$kC0~`w_SB@QZ7A%npnYk4?m4+38Uy$Z!QtjFm2M zOs295zoCjypr_ms+;MUi($qETz@wN_sg-M|K{s^+gn#& zcX6!g?T@`{edV@^s{L_Rwq{*eU-v=y9yUvib7V12^)o31z41wjeDa26oP7E#IIPDn zcp-a>CY9_~4J4t%wlE9WPo23WX9+xK*WD=9xHb%?w5lo|hFjh$6K}S8H#JDKO^5(; zGL_r#!;Z-AqoGu6(T$YNYN*4J;i@`mv2ou(C>eDeH!%L57jGB!{CQi`V?U7upovIP z-V@D-k3Sj2gQFbZ5g72OQfAf+v9gRe1Q8rZ4}AW#u#BuGOAh`^QieMTkqWuU+STy1}~$Ml-%;`Qsx3hI+l zSXkE+AbVS&Pb4hpBUl)OtfgtRL$Yh6^zhK$PBHcngp9Y3zgYz_NgF1yF9>4g14qh% zbj=_q3usT_M=2Pwgb&Vy3BaNz`5SO{AZP`)U#RjDvAUA4Z9?O_1If4QhOwxYIUC?=0>hQfD4ikazD@ zK>|C?H9x|k$O;uCd37YoE31-dN&P6z4ac>D^0N+y2%;76tiu=aNrq{{t~_L7qT+VN zm8H+!m=l7kiaaPAU)8Gkaxic{3<=I?_*IOGe4I!IX$B){M7htoDnkkDOC_v!o8c$k z#Xi2n?`M=SdG9{b1nn+R(B=JS;if%%j!Wcf`&rW6JMauXBQmU_rSnZ6{j%SG#%7G8 zeLVy+vQf&!ZCPcetxQ|^uYKdTgNThAdH!d#g{m)Ivp?g`_d=)JKb6#ei~a(;TJl$s zi0Q!Ze}KqL-#`)+1H?9GjwlaX%ipZIyu#`~@3*!5Q#i$m_h~=o5!p8ra%d} ze&8e5FURSfJO!GzqfChLi*Ae%7>iotZ#~)<58||%&Z52*Z(Uz}{8jlrPJ|f7#=aPq zhnx6lWAu`^tso{eZbZA>2mN}rYk~mQty<#~2xt7p(jS)gmEOHb)>kc(^)FOq&2q+4 zviwpBBB>45TbbbzK?^jnB!e1%esC0j;o9N1 z2V>8lN}gUd^KUCp?|Anj^7PrU8hNTKEZ4l_-#}RWLL(=UCJ`Ewj=ngS)<$HgAaQGC z&&tnASkxR(H_N9XEW0l+3(G&e(+kUAsY!cb`Q`Ui2@6W7QeIr=nRz6Iu{2QVjp?E; z-TXfiV~YXr7cASMBd-2M0Qs~RcnCXcP$rd3U3OJ}{mZt8To-r@D@tnsnPTz^%$9N8 zY7h+s|5{o;QS#yHasnMbZBOkw=P0^3Mcsq|n%2|EQw_TDKTEmB4#^u|3kk>=uv@M>6wMG_yrCj0Mixbbv|(0>Bon6 zYM;Acw2PlXARUY6MoO1en6ag39r9F8GPXL*-D`&>il3t{0OU9WBkkgis208kK-Sfe zm|E8C@g}C$Q;p^9gIqFWDQ0$-gAjtcCAM8nv82uJAANCO` zimal~ADfvy>j25`RyJJ5NJ&%0UlA1iRiN#RZW0>KLxa+oXf+^Psb`m3ry58%Th2i0 zVjh1;apU5@iR0We$cuvr-75dC3+ycwo#gK#=V>x2op-2VVtzgv1TMt@AUzgxkb^Dy zhKKAGk}TcJmwu&Z)PW(j;zi>8u`Aric*1=WcTDLtQg*ddgIm?0-$J-;u4JlRj>iVo zLdw?^PPtN3Txmv}0*zO}hmF9>qA+#iGLs}#&9cNzJNcrBdr75@f+7^m>N`{f+h@Y} z&H8rE{4}*DaCi2>1p=a8&e}j?>SP((p9b8038{s&GBwGL6IjxOk!9g#f~8u?L?QDt ziQ8OuT;J@k-*d15<~Gtga$F8T{e^J8ILPr>XNbHGM!^OLsMSbC4{cPzu1O|;4P`ku z0JjKMAzknnhi#JS69RYm=chHFB~l?KJ4(zA?>a1>!2JrDwic9=8Al=#E*SJI#L{e zr$qEp%1lfCJOKIuAy~)xrt3^vZ&$b#IKmT3?*{YZl7E2|;$JcT9V=e>4yGcHohYih zNa(n8&|%>NERg~$=h6p-9~)~Kr6>x}4QD+yGFS>NU*qD;`QkrA6R`r4+=rP^=VDic z%Pv49FU&t>4*3UNminsYm_i*t{^nXZX1$+|)x8nT$57-WuQC(qcAVmY>jAhPGGZz4 zx?b>3F6k8`oOo^x<@FjvwBzT=UP=`ZO-c{r+9eHRvNBwsf3x-ZB4Ma_HVbq6N|%V| zN>yVRtovu;=YEx_Afv?8CVk1yNKEOj>ae$aX1N#WjhXrL2+;sL^G6^0k(ImSG*?5J!83k_@shi4_~3CSBEWp6+Q=z8<9&KZ?ic1NzkRrZ@mx?Y#O;HH!T z_*2BYB@ed{p+y9@{-8at!Y~9x{_N)=?ZH>B0R%m|RCn$xV6hqn-;T|~FTBF9e5&yO zfGCGwKH&$w2;d^C#WG4!(Qnt|!QI8bgGmts4#7^`d8~NMho;C-av550r^qL?-hNY1 z3FK5cm!}GO1mySn1Q@M0BwkMZviNtp2(o8CZX?t_&RZKQXsOyYa z>W^14j|^yjd|2a%4mVRS;qNkUFyiP*Q=^OoH7@G~JL59>@JLnm0^iPeQs1~Kxt1Q0 zY~Hzpv|X{$bTHjd6bmS}Vi<3@K`7O^Ih1K71*ND-Z8)TG_?c3Qp5hZIL&>m0UC7|u zO@@iL8UBt;5oVz{avNMxGGp=B=qt%T6&r1(DK_2xK22OQtJz=D;z!f1;ddoZ6z?=o(JF$0#%}(!ZAB&B?paKbV?ycoT4x?DpqXbz2A~W%BMzA~{ zk50-@J|c;ACsBJScw{P2_7+otQ@3gA=H4`&fm$E@905-5s9eNjgkTCV7EF2XbRIVx zLA^~0j$a!89_Iz|RJ$^;yMASj1OaZ)8r+8Bff%>CekFj)r`iZ{ovVX!vJ`gP6X0fN z1MTAg$P>41XvXY6sC*6tft8n3`9;{^o+>IFoo`qYQ}135V?fBR!f6Oa0<=IHdNR{3 zDCl7T5;y%Kpd=jP1IxaLFO^ztR6h!>7_&{}k;*m~ItTS_ha3G^2>uboPJQPAs~Fv| zV+~mL;mdHvImSA^6W>}Pvr1lH9d==(tC@7c#Yn~m)EYb?Lat_j*p1=#_>_3NltjgG zV(CaEoUYVe3K5Li(}kPc9|D~?Iskkz{arS8Oqsa}{0QDzqVbO6eOO*M?&nK32VZyN z@MV3X8w%Q95UoJ1{DTkMdPaCB5cB?Q6VZ~!%8yn=IZ2}(jx{81I_xkC@$+?Zh=uE^ z-{XTD$`uw%GBjOlEveHn*6Hv=M4gmDD36RGPikp9`g6ERaSXos3}I#Ca1X5p zsY$~1Gi&{+(tuy^V3$*7jPi#J@n2-v@Xw3axab%M4xbl#4^e9S{+=`?)dAiZv1Bjw6h+x5_Fh96@K8&;ibI6SQndC;xCuVToi#fnO&1m|)j_O?@6VFXlU0r#eDw8^#aAWL40Fm|b2?JpgsZwO_EI(6A;=`BNY07yi(IY>rog3hefp z#ztDjVNJ!x--Q+(j_rC!M2Z`2j@Su0ZIk|Dm`;hmi{^a9k+*2hr76oTG4=NpNW~~# z^m%JXaglSk%~Hfh-&3YV^SP<=XPnQTNHt-2Srfh$boH9>Erg3xLJvEKa3t;$<>C$3 z*zjDkU3$a65zbw24ROwOGcgiSF1s-?^;|+AM(sKnvUK5hZCpM(rZ?5zf)_Y*Tz~&O z*ADj)Aui#>cGwkiRwCA9S$)6!!LVpwy|{^W_b&n#>eWP61*OYsR$_iO^wft9J>?-w zp+lAGYutuo0}4;~6t5oC+D{-7Hdky>sh*irtLUYtrL~nTph1S|Bo8vXV)%w@*CU?> z4T-{?P#Q2%bewo|1szmdQ+Ah`;BKfH!lrtH{b!IzchCxL&@|PqBZ#Go!!U-@@$DXg zqAbFB09LAK$x` z(y6NQr`)RlS6|Pn|Cg_}2LPym9+K(up0B+LMoiwD;xibUEoAQ>6gEHWjzw7ZZo+$< zNE(%fzC(Cr|EJTN%uaBnq1CBMjJHc&?S62pf<*Se0ch2bD16F! z;m0$imo25uDfzN~@v4fl)&N;KZW54B?MM-IX0*uTjTU)55DTw*%n1sfWqX z6?v)j9wKe=Ykw@*473AO?FvUB`pT7l<=E7vT1m(yCa zzsw+%kLzx~2q*L=*cX6sG*dLycAqNo;lCo6Fl7~fQR`B@p*jBs z_Ln&_HZ%^f;qJlUb0e2!n-pw-j(s=usUK7EMSv^o&93bA51W=5A_f%?CYoaVO0S6` zsbJhfNF0#MvG^7t(ZrEhD%E3iP57mC$8ZTs;T?8fjk>+prkjR*st&?c5}<9mNqMN$ zRw|~O4jAuzO@1AnNSwleAIAF$=N-a((0RAwy+vNv%=o(1eaRN#>+|kw4~|VQ4Z+uy zU89vVPaNf-)!HW8)m2d=UhZ@y0l8^py{ zsN$dFqCWH^3wa?@)#sN6Znh6GZJNO1L%*yZr>3|oplZ0VU|KsxQjxZPc@`!sQWjS;b;+vF;|0@J zkQIS~TXT0cT3eZbHORyeHKeu@OmyqpCc5RJJ+8vBIp})uJ|2Z6FgMZNCLceW=$^o{ zgiLf&c(F|EVy3BfIb^9E5Og^-u`zV+SR@aEFvMItAXq(1IOV3cVXKEe+9s|a76gef z^~Mr=U+<9bbI5BI#-_LYn<)&*M5r(xaMu55NV?5mi#F9x*e$tr92l;cwq4J{H-#@Y zdV%kH6mGMq>WQ4T@+LI7*-qJkG#y@AiBJPr+cttpDX>R@BpP#t?^0NY4;yx23}gD+ zcShBow(A!)cX(7dl2D^rw2!>TX3@I%tQ`W?AOEnUJ&oYgOjAiW;KmSjN9wf;!Jnlc z*5&+s*=@Y+j5Y1SaMpx7Q9FL?8FSQ*{=B0FC26sv58pY_1j z*lum7Z+&8XMY_=Rllik^rPU>E255c!A=^{_MR2C`@tLY6)zq5-|0dv7;XxhrLR(vO zt7+zuF1@ZEn_oS72U|)hMM`&a+J=AuEq124Kw>!vwNMzR47O40^84mjUk&{H>bLM$ zYlmI+GYt6E1*Vkv!bJe>sb{ki{|5PHUxM$I@=d%F-;3p&ek;BUEsRHuN0*ge%6;skscefod@sg%B>zZO87}@bI3)A*3!kQJfdB-(cuRlmo zdY#)AIcl3grxn7o_^sypV`mF(0(C&{`pn|5{zIITMy>7)^z9^1?9vrT^1;zjJJvs% z;ETeHvbe7Zc0Xtrpo5eT$T5Q)^N?deDnc7nACkLmx&;8(oq!%M0YYfoCdeqy`#G?Me-n#9W%PTa4YXUk;otVtXpTlEtqd!Q=u zt7;NQ$gWPzONA9VFRMu$A-g*9AoV7uKmJhgK!9pm#hf&T4u$b@l3vF@$jwM*|CD%osZ(tk7kpS zYj>ijY(ISpa7DAvDwQa7&^kRnsS@qS@jEf9Y1ypZ_bC;kNNS_8I-~`rTs>oq8L>E^ zn*M-0Hrd=~JDjfO9t#kNY&L16bP12`zHoO40o`(=Fhn>dl))9zE8p%=v2_Hfer|5| z$FMx%RaLZVvO2!964nUyNif}y3)QVF=ev#60KazJ8mS8~rY3{xTCB+-z&v2|vyvG};JtkWlTGNpHE?0L5`Np*nkIqR9kOolK}KS?=cc3H-s98Fmx%rOxnAzlmBd z={QL$N|3un-rr(nv>=%x;bYpAr$(RFX*G9= zg>rw}CG=vomlW6Uzv^9&uMJj7j#qF|c*1V4&By(#CG`H>Na>#}X`xxL|0$gho-3hQ z^8^6hNgM<{`YQCM+4Dsz9!Yn1=f&-H55to?0PQ;bmYGiJ8pj^}iO-x`mfqq}cjV$X z&b`C#V_D!%{J?fO2kpA;opCEb6^iIbe~dJ@w|()bCLUR&HU}h=gnXBEa`mn z{OZB~hJhTh73;?yEj|XYR zPHtJ5w)=tYGOLb!>J+uBoAtV5c0juOoLxKDpBW8B2 z!OPS@F1>b+eZ318(XL8tFrnO}di%CoeYxT{ackY&jD;=0Bc0hEY&HagZ6NqeC4#|R zIyE;@9|0S?c}xJ)P!+%**YLRpJJ&q7v3?TQl7`81*j4Os19@IrndfjWot|r{k08i% z#NCUxqiOC@CJ;oxNSS~%1Uz8Dt}?8l#hXkchEzH$$Bn?m?lemB$8xEW3Avt&Brann zQM%a-R`3{9Xq(Hy79Fg(Vvr8ey3kUYGS+wbRByL9ktB zQf&B3Y*+?$V_}DpK~oFS)gH;Z@?2DApQVO zF5Nx%kfE&+bSE=@I)}dGAmFjlR|Ev0>vyI*ee}$!<#v-DhHg;n>CDVd8#uV3NpbH< z&E#xfJg-~HLPy)>#ztQq=GAn!BFN1EW==Kw+^BzF!;>=t@fixL_)N?2M@m?$>4L)D zu4pop8>3l#-N4;gHN>4iTTSDSENVeE9a1!yV>3jg4IQ|!IVmdCd6 zl-4c$|DXJCBkZ}@1+f(?Ry6Q`8UGvkzhXt){;pWjv|`0_dCzM00V~cv=em8*C9Tr^ z8TjR{ArHCw|042eYjFM`EO7gM_+ela_8spYBD})>v*(s{zQ(MtX3F){^VcsFGj2J* z-u$(HzlpkO<@9{55$NMHk0e!pUHNpf_m(?f63T?=1H=dxWgBaUXrphLf-S+i8kr`xae)3d8UVV&i&&DPNUcS|m- z%chQId-kWcR& zE_=7*B^wVaWqa*&P1$A-l!0!+>kFX1E0;~V06A8obo4u(%l4PQ(I%YL$_}^?$Ak7< zwjF{)o^<509ef9`>GIm^6s%N{O6NGg%8|FwTy_*xz94bDnIjW0cG=Ez(wQT}_+mTG zu{J#S$}7uR6h?@lr%iHDF)RPkY^!Hk>D;{enYA<*s$97`*4g*&%UnE<`B<@Yg*_0* zDN6w5L%vVWUSUXg==s1usz$KO)ANUEl|k9MJ3_y9ls^~SUW%Z%R%+Hy^=)XFTsegRf!7BbbGlk)u8Gv8|b*yB%hTC#P}4@U6IzeM~3g+cty9MRupD4A*l^b zQgkQ5T#>tN`lW|OVW&MLe{yzPL0w5lW@c5caEB?w$I(gvF=lJqM^)6Ukq>R^+ZT9Fh>> z%4H9MzI6F%p>T=vmei9Jst=wfcO2V4CdL&uwiVkO>FNu8ELvx!HxM4k<4$PxlVMqU zxbEbC5RkWahFXC*-=ucXB<_YvLaa&1uV3DP@&%!Dm%3OvJ0~?sLF-*-sdil&K_mMk zKqJ3?`K)}jO#YT$@Ki`0oO|1Soux?>ZUsvulVg!gVk%&8v$4Wf=meR~7wOB$u5fVSmBQK3)QJXbK7}7S0AXV*p7|D~vZ12l1-SU}a4_ z4C7hL$rgzUsZ>kKTN}2X`(wV1J^ucro_;CFx+#9B*ANtxP?zjnTnFhR#Ff^a7TQij zdtO#aq0hVLWp$Hk-ZX(XJ|aZrvX6@Tf~*dnXVfxle!n!3DHbjnDbsI8i0GI3kS|y| z)~${ezxWzszGKUI#+I4_wH8E$3VXgt(}!611C{ck8fX_GKmiC)2|QRnmGZ{dDI#@M zMpmAav%0W{G%L4UB-(|FrX{N)h#UGocTkv}VPh|sqH#l;kI!x3txqVB^>SR8`FZYU z##Y5fpB2`Sr`253Qrx+0w^D8KISWFVTFeaWhrYn%^%8 z>&^Ey_cq=`Cx$QHo48G0yLq9{Zc*spVvYTEg;gKw2VK8wFRw@5`WbSOX>Y!uytEYB zqd_9i?Xh|h3Pw`nMqp$WD=#9HNNK*ALNm|ntTyL2#^-0Qzt5lzv29b>FJswir{V(*_26$bROaQ}w{WR8rIHa7bF%n@0?iSac7$RXKy%VeRpLAX#$O61os zZ$5e!QdbZyDHEZ#AfD2fh_kPrbfGZChw8U0UrdWoYM8#XOq1poE6UC$l}Op`?Uy0nA9E#%B2`jj%mBTd zm|?s3vJWd0{Hb)oW*g*(bv6-U?Sr0~dYA zdbX~?%qQi3p`Aj_v3UsuDx(UP3a{K@F~U zm(%HfZ>Kn$q&VmF7?q3h_tUw^;`|e|tX?o^GC^*hXYJ^;Kgruyk-4o*u_>4R0Yq## zgib~^%OB+Mk_IN!ES7<8zM!bPT7f$GZFR3gr;gTNQ|$8nd^z7^F5eA@)Jx^}TOE7S zKMd3c+tk@#X!_u(CZe5OIVA7@@e_LKxs?oJyIvAd^F}DoOgDOgz9@4fuJ}^3&DXBmz!lo8zo4d26h#$4;SgE3B;!z{=K^LsL*-@!8Y~ z)|UK9P|L;Iq7i6b0<*=`Sd@k?LFBXMI2z=wq2a&Q(9i=|nFfcZpupnqz+7mMUo^;t zhLMG7NC^T1R*s`V-WnQ8k5}^{4Op25ho+#w;zf=I`9*_VXc)^JQ6-hzSY~WZvlP$( z@rsbTm0!QS`EuDoI2W3IetM^DF%JrJK5NeZX7AnO<2NG%13DkiAD>iLYpv2+k-}`fBo@bxE$O+~5`|D@D?0x2P=FFKhXU@!=xjEY9 zY@q$32HM8}tJ3b!loVKgg}T^$L2l8mFEhJoNXj1+F-+vvL9C)^GC@ZB1~QRPeRsdJ zt>Nl(qKB*3l>t|JFc=ye46-BElr^#_?~mCB4Ik+w{k7>B5v(APq~p9nK1RE+#M_XK z2)PCkB2`*b8I9Ag^pYspt)yX+yGgRk51n`mIqH}@fT3fax@Im54(fwADUd8RAS|nR zLjC2TAZ6R^nRJG$Mk`vibJ_VCvbuNg-Gk$VMjIOI5<<*0dC(p3M8Ny!x7gywZ_CqQ zw*)CH=NNX*UHhp(|AN!d81z)Hm;}y3Iu<3Ld+2Q|HeZ-OC=M)|xP(z4qb>)|X2QtR zv0adhW#Id)Oz)+o|MRbA;Ctr182G*;w&oA2kuTo-M2~DUGW{SS`irDQGV`0%@dti} zOge$fGZIM7oB$h@Byns~Ny*Z`E4K|y0(iFw=GMwG|B2}WtD=e#K!yV>x&ZEPkk|ZS5s0yWGmdrs)EbipKA+;rpdwz(a5=L#KuZWu|;*y1TP?KFg#(8xgH^w${5jZpLkzs16Fq8C;T$nE1 zCLr;HCn>=d9-tObh?bDR^st#OhT*TfUvLPH?si^XFzD?DC4qY-4E9o+dHs&^u7bRe z0~xj-0A;IUQP3qR4YVv;ZsM^(P7*w}YKQtj-uZ8_i+cWZ{Gbi-w_J6M0Kn$b$rXu zspG8b_~Q%VxIV&ht;eAd;c(xs!k!4?HK0>23K4|+Izq7wQ7rvw6;W;t{PhieHPXX6 z2S{=oj4?4W^7rv#bSCK7@I%Snk`N_?X-KFcd-d4$=09cK9*@MuB&2y+a>5u~^NIfC@u zFo44)iPsR~3EB@^NP{)gYD)F48k>JP))hwFI9roDAB49`AGV;UkzN^vEl6K7`T-mA zw)8jeROq=>-3>k0t8Uhwq5Me&Wa>|Ah_%y1qlpiV)3W>x?LN#Y&s5bDcjd3AQx(XXry4WbI@I?oZXnDjTN{dOC&x(p3oZ)ol zY0_L8uakLaw`FQ$V8MM_qd1hxTzA$HSo+!Gwuf^t^1|Iwnb+J`2= zq_OpANoXYg=LvTR*#o2qxJ3j!#WBp%NW@1i>o8i$1SY?d`v$rB8rPT7pu<+zfFM;e zo`eQ*mw8v=Gs?90v6DMU<*yWB{_=~zbSAzyj^Fd&GJ9cwEYJ%+r# zECJ^xLec)Lu} zCOw`Q=J|=_&U=ZC0%VQ7&A=zXhv&0+szZ7=-_#_QS+6Rbd8|$TgWbnOGSrt}xYE7y z`gWq7*#`$Ws^%b{+ix*Puboe(em^RK!}*)c;l5E0=OCKa=Yq$Yv-HmYe=|wHh8J7> z_|R7{g7zCs(k0nXHyrdH)Lm$(>jRsu==|-`m{45%q|g8;b6p6swnEuLiL5ir9Y*A- zIQ!&n5me5G+1Tj!>t|y}0ISZ%9Ga2>%R3&j*_hmEQ0t31YLgcgn~H1VuX+h={Z@h} z>j}1&O>tYxbAI&biL2Ziz<-%8xKSF0 zdDu}%khIF;CAa>tW#eM;Obu*<6Zh&Q^_Yle0aqW#7C9T(l6|nAEoH!}Y;kBx3M~IQ zwSc8dZm~sQCaGHOZ_NH-MFs`?xa{R@$o?zetIz&8VAbp$nvw#`KZcoPFSoMSm+Wt8 znmv2Tl)Zgi_Hs64|B{C6+X1U)@6ePKSbnR^UT$TtucqkA-qmE?`i9#iETz1M3PLG| z`;SYOrWhWaFIfrj?iDKb3-56#HB6ItS2c$qGeE!&1(XUsK7JZ6JHVVgPDX}6Y<_O* zBC?50`pJ7gzOl&Hhi`<{OqX_;a9If1_n47+Bp1PD@MZ8>RpZ8B>E$1VrjC`cUOzB# zDpB|UETsVYxJr|=q0;{HfqI!?A{MJOho+>!@)uB| z$c)@+Q0q&j9fmAc^B@8<$s_#kZy9cBVb7bm$U1iZ_^^y0X`l(`qKdkBwtNu9QUJef z*Kk7zSB;!m39Ks<16BD_c~rj6)P^?Nezz!v0z_Ll)(HnLlt@X$(R-;ZbADl@GW1y!v`uq7wQ_j=Kk$W1o9uR+5i=%UFqh>+iJKU5 zm-s=n(9E@Mhm4lWH(BnKgTMI?@e?AvJX|Z)u0zvuey#Km9)AWxTKT4zPRpjU`Xs5( ziIErVHj!Sky>efbz_9xWca2t6WiQnTo%V5ZCuf7)o%iqca@Pk~RarPRB?XpW`~#Ca zxg~e{B6n)a-d1+3!WG+K?EuPh+T#31zSS&@PX;BW z!DYu!t12%=yBeddf*BX;&aafvPQ4P7qSHu3Z83ve)g(7+Zm&y4Q!O0xp}o;i%rCG+ zOC~)4Gh(q-mTvW{RkY|yH58EcMg%l8c4<;KdM$rtjiIvf(YyXdh)`xO2EgyxbYwE4;fOw{R<*oi!S4YomqF zhNqX;4FL-;xSWe?)~z`px>%V0&NrEByD|sE>j1FYyZ_q^UE@qtc_Y?P ze^9G#=LXvk`^cmD{2G<*whVSFw76tZW2c%Ug6!<$ zl$)Fl%I(sBt57LsL><`3>rT^98xZC4EtDdm)JyVH|ccPL(JyWZS2XJ$i!8 z+?17iq7PHsigrh`a~iMyLdHG&JC8=2=hd!LI`kEK#wrk_-Z4 zN3qb48)4^Hf7HHr$u=vuY;^j%O&(}E+@-d|K}k%5%lv9<#U+Q5r7wZNcZGX#25s9{ z8RBH=Z>ll-!Wbb{$u~kCNNj!~xBdbPWmg6;G!f;=E)IUf8u|xBJ9NMO{;;<42L;o@ ziIPhKSICkICX-OnC<#MFy9<>Il@F9?m~W@Y$R9KwOkC_(bmDOSxGhL+f;gv^!iZu) zVS)V?ji0{wR>$2idpqXL71e%Y$dZ-}8JPjQFH zoGYw^BD?^88CQOmy=bbV8cBQ4S&BL+;#;om^k}ru81+cb^f_IwK{@{kydFB2P#hxU zH1{Fi!!sowTsFux3!8%7<5V@SF~%PSXMJTL%|O6G{iSiAca{|$jk9yE8%KqQP-c~wYX8D&@kPa7bAV+h)#xwo)qW!dg|dFe(W>0%zgd-g+YXz2_m|WS z`3>H7yuqIJqwym?`}yCp++^*5j_wpolknMg^U87W@%k;aTM4Z^t1;Phm`o0y%PR;l zuwS>eHncOOU9a3*YP)?edAs8QGK3Zj>dz~ex%e}PPuIj3W~CTrK&!vXQx}4xjab(D zbvPqg=x>>LKI)Ea!aC*%8eskinv&V6>3fd{B@yGafn1(?*HS}i@hjWfaJh@L5RN=qbx++9*5 zVk3;wT==k0P4srjvL$0Y=?A9$B+Z1rqKT`-(mF|^7$SMVF?_v2$>g1}2hu5ZgjNzW za<+%wh8|zoCMFLPIIlC%F5U%%T;D%S#Kx)LiOb9wLB-Pbl-NW~4)I)g9M9#dMX;>~ zfriAz(w-2393cWHOF~fP(P-koUv9I7#Mi&A?~2*_%tBbLA>EHjyl?wKq1Z*Kr4r?4 z&5>+W!}=R+?%5Q#^J& zMnKA3U&b@ad|7i?7t0XF$Pv6FIX|1WV{&ODR==wZTNUe#!piVMaU8V5$3ZK@5>GRY z3aK7i+gFoDK1?yOG}1eczpgF@jUM4Ubc{25;*j6yJMq-&wtBYC5iw20&J~nGe_jN( z?>~m;P6DUGIYTh5ATE&e8jY?v`&qiYHtV5>e4ch!tT;TMZ^6K?$N_%fs!ZAxj))Kk1=VTf!pl7vU{aua6SS z|H#oB^51un}5W8@vy5$f$0sMnt)MNybJ2?^Y9Nj2+4UM`PxZrU;-krS@^j^r~S zs0yBZK|#N+x2Qd1@$P?N&eAxQ*bg|l*~d*Kk=zh>FXt?czB`#nvw zKdMM>Zkt0?TQaz1+%PU$URII+O}v&S4XzvLgI^^6Yz9 z7Ah%3js3*oVzwikxif`Vud#URQ{6a+EeX^(y<9N%{txOSeo(#i`q}Sp=fmNnB;4i`C5rwXve7 z@?sY|_M`gPvlZLx)Alc_OZ!B{Li|Q@S%TY>6qFROYKQEP+m?ob)ADl6i-Jn(1>$_H zNf1_7C(rK!$}02!`W* zxEV31)`Hy{mV?;_4PUuKW7Iwi@wGTcE$VPf$ga%TiNlu|$TqIzGN3?VZ1(pYRC4Ew z#m`=1@l)|Mv+M~}noJCC0o=c=!7U$Kg7|e9!t^DfE9S;3p=By488NxBXkgzDY-qug z-N`XmmYk|JPb@mN5Q|=ZXSmo}-SC;8<)W-Y3sMgj`?zK=XG639)#3VP-ws%{**i2P z1(u(E#I%mwX;AA+Mn|A6+)1&NDQr6uut|pwiAw=eIg5)rl3tTTPUR@|koeyJBY(mk}7oJ$yjt4HY7t88vmXjZ{H~GDtdS$to<*Z!Db;P$svZ z0qJZPadsvo+z)&l+~xLnwLQMIg{P6eslmP^4ad0LHeGN3uQtC=Qr-;8 zMkL1^5(8WSi373h%6+11{{19s!fmyJ7`G=pw}l%%>dLmPnyK*N*LKgtTf!=dfFx2Y zBvReA;B9Pqb1}7O4cH0ETd+}vhl#Uf0+QI8skD-W;Pq9RYlWUYo+4)$V*_Tij2Fg= zd(fNs`=5JhX$0}qC*Bi+RNm=rg0<_xs_@^6hUbPEEKI{$AqX@?Ek;#i$92DFEym<( zGiOo9AgE=cJCy7U7xTdnNqKS2WNd|GQrz@VUXyZpb1^sUJ>_%N*Lw9l^qCVU3bPYu z?8m%&qS9VD&8cc#dsZrC2*Vir&D#?g`s}uY@=I=4+BuT%GPRX5G{)n4EACtrE=!~pkxjSK{KYvmDL0+uP?EE6B2Gwygyw@jQy zT$(p87~GZr_>kxTrnn}3@$5-1;jQLhy@}WE-;J#Sxv{9^ei70+(8J)-b>jp{oiGpz zp%>{oxgAc*+BnCQ=((@0=AQEWKlMx#y(n4G2pXRTr|1PuwdbH;KD#VG&7uT;$~4aX ziRq~;a82qi?6lM>$jjw-piLGizzQqCA1qja8`abo-C(i$tD)fFuBh6#yhcyX%}hY1GuaL`zudvnl%Yryr6dh zoxF$vhfBOYOuV}CiiHx>%|1WMZAF+M^BB2hteW_xf>t+2O$5<&r@urCEWiyXIJ~)0 z6@jokD=i0pPc9<>n2hXelo8rgvrD9FTd~u`13gPZM>nLVA{kGajHf7J4iQNuOYb8} z=>ZQp3Vz|?gbX`8n zWn=C7_Uj6}M~ZN4W=(b zJ(n>l@Zrl6)wG#z+_(NyQpi-44}9^_6Q;rIE_(DmN%g+QNb>BuMvXgjrK{0>c5mhL z@y0G{?1sQxkhti~@S?`U0-wun;=^!AB=A|L4^^0Wgv*=}hwKUlg@!oV+@$3#{@cto zJJ~R8eetbyL$cMW1!4*W-(bo1u#(R0=6<_+s=P&|>6Hb-W>_l8Y}j*nHE$KcEfbw0 z=0{)l#IQ$`z#Ep|cF*x*ws$U@#%IGMbsgEXn*^@PrdhP6pPb9CRJ?15*_8h-nae7) zW^^U2jBJvnJdS|$oY9i2dhWnRq0nN=F*|@Oi#i>Vt1GK*dGdB;Gu}07Af2V}nwlS? z1?$<7E&-(!H7dxitlt4Q)UIH#NV~lr;aRg^a--wfL+$11t@NjM<|Eq|mZh-_*X6hUM_z)j_sbhDTp1a^b%YE9zGszWi;PGzZ}{;CS)f(f)}<*<7G zH4v^;6#fb&y>gaIHxi#^Lo@en4E5qURDRam!~Jo_qzkjXr09GZFtBEbly>4T+wWyF z97NGHU1cq*4{=As?ZEd8ErP-4&iC1|#e;mx|3PcpC7Sw^&&~F`bKwOCcDn=nnZUjx zFl43!c2>@yrrG@kkKsDkZS>4w&r)1c*})?BgR+Go>=lNS%Qz8&tVPZ(OsKqLL4;bgK=SN6i zyCBksz7r?#G*95RLm`0^xP)#mm>hxUEQo7w4X#^X>(D~!NmmM63L zU+P@VB8Xmd35HhMno4%%{JR*jT$Np!L5T)Kz4`gBtL`|B8zqa`l|gpds_e>bXQTX5 zR6#J5E;8#|SnBdo{VJAmM@zOg?cpc(piw! zo|yYIu$8Ap&^wC)cO5zSTuq6uCH`$ehW{Z$SUfYja*yCT5;tS@iOl#&iU! zFlu?~+#&!+RJv(Wqv z0yK6z2ZH1z98xS;J})aXXj~|g`0_-Y%nDwx56exAghYb96+@p(kBC{x89IS&(B!-G z)n5^34sGEuKm=u+xL-t{A4}jH#B)gy0fdR%^CO z&d)pgXxR$Gr%$X9&Q9WrcjB;XpHBu4=>n$-Te$xJU7DuV_jBP5aq zYn{H<64zN}tV8f*2w9gb-AW9;5gGgj^rOk}x~d-BL%bF*H3v`LJlHeP%G{o}4M-3k zFS*_=sk0bC_`2lH>nPENe`N*Zy?Xg@S_tyD4a@4eNlymO5-+ zj9jepIzA2sxtuL>a9OJ@O&%^Epi*|tKbHng$cU9l&zJ54F@+jQ?mUAi7_R^}3Ge2E zZ!aHu=XdgfCBu9iONI@BUPz{ZFaZ?9QybN|hQ)X>0Qr_8Pjz1WH5=^OS(y;NRe;v# zc~H%eQcK$%sIFL|VH~Q%$Be9!hp7EvUzD7g=M&afM2KvniiaDc3s5|2#Hu>20$l+d zL9`Cnnq!5qNvJ2jAwd;R#O;a5SWfnoPlIUe;*x<#5O^u|4%M*=t`#dY43%H}Ml7@< zDXN*h#Jid~pPIo+HD1@4u(6;_M%ge)VY_P@6uNCzD!gYUJm>?FtF=Bu-luH9+&A?c zG1#n7!;DkgwwHf-bvSy)iiUYHoFRj#@VxQh{*-hXf-ctMhaE1);Hw+$lGl8vw#SWDKNfytZ=Hm2|X zb&ZW_7I5}OsFAUvXo=miACF;ZCZ#nCL~% z(sAPMJ?6v@+O(15ux02zd3R2nkOpd3)>3-}m@2gnM@fO@4gbfem0Q&63$?6ggik>H zR@5F9I)7WKqgEje)L!?=8r~iQrb?~DVQZk}&;FfJD*#ceFVyyh)K)9CtQZb=>*F$( zvmxWo+Ke9trkb(C;g*6|yNm^(jP)gB7F_G4>9}H?$A6OGq6EpzDj#oEOByFzW{KMDih8aQI)9*cR=BF~$9ieg#hs5o zRsQ%Q9dK(075`99&TV;HXfaD?0?JZ54VlxK4+B=To#VL;>$RRKDu#HYW=-;oOLWdn zGQWmy-d(q{mUoTfkYc5kr0w{Zc#E)R`9A6Fg%Y|JC_k`tHy&>&ntBjl89tx!`CbYbQgk-^x9&OS+Q|BL9Wzf}l^y?eEIUhUyza3+!ozrU=Fzgh&A)J57FU3#m>*lik;*-kUFShpQr}`Hs zOP`{(RIRe^d8Pwx0Oqc`17X=MesZekS072}?dl`km)^hTo?~n%la#)s)V5=2!|V%_ zUs$sEp6?EFPJd0%(Z2l7^2*m~y{eP~Ih|H7pg~8M%_fT3R9Jp$vX2=3Y0v2~+-}=t zoSuF{o6z&d1?U;rv8X9QpV$~DNJvA1THQXrtX57$jTj_r5e8&axu)rcmB1(rhL$+- zN==;=WK+dLhA1{E#3NlGN1BM@THY`&rG%GcmrO0K332y0%W%EKUnOl9N*A+Rt>TM? z9B8akquO}$haY!s?4UM2xglP7p$j_R>yCB~O^PTg#pk7h*5=i^Kwix_t;|-{WM+(u zGTZ7hTQYxx3>euZtFj>%N66Q+Ku!*o@axFx4~A03!9s5SMeJD#MPpGU6Tx6-Zq;BS zHx-*TxwsoS_ueiuERC&tFxn6%x`;zgie? zPS0O`usJ==n5}kp*K6Vg328`BYe88SPcGK`lt4nf17bs=H2E$Tc3O~rS6TGbQ`|mb zx9aJ2Qa3kS0D;*eumlZ}WDp@X`S*EA))&rUhEzU>bVCkxk;=gf?=KipbX16TD~gl6E=Fd;`US|XmsQ7KN<#m#X!H4Dn7a!_;pp{rcoE7|nnrhr z(R+jJx*%LFSoAU5N45|0$|pYJ7YufRPzwfc`7p!H(oK@UngxT}^?xie?Y4VMwwqll zXQo|8JTzg%XrPet2THsehn<7{6yrLVz)l*v9rUdBbAt_GkFJHRyFmTk)j>DOii zj=U|p1YFlBRR&UAs*Iq3$&jj-Z!fSb?U)C!K(6rdD~L}MKgPGm>^`9pj`=Rr<(_2e zMu({n4E?H2%k34KM4JU@5>rl^Ui;$PWRdC9!9`!H>plv9LeD?$bVZD%YuoNKPlI~J zSyJKt|ovgI<2Y)4?jynNZp%RS0u(a+Si!nU_&?vl#fBTRZ>QkW|el64x@hU|C~f zDWWBV{G|zY<{9k_!B6d_+modS35Ej%Y9{8M&dsqG)ZJ%{#au?DS%6}bv7KgpXYRkD zNj%MOm?XzY!mDy{de|mQ*W0`G(M;xgTk(=%N|sX$9|)ezipnWA;c|BVaK`0LT8DvA zO6Cu;JC1O6xBT=EYJ3f+bFhh4h*8Phgkw)&aGWl&?<31M(q59fj{pRo{;%M+vn;&nR|)-4;Rs8gCZ%ZBIT`hT0_8*4be z@v%9+>9^tdCUN}#-rzaT78lqvSbpXeAsgX>-($zd9(XeDSvXi;>|tE6v2fhn1M^>{ zzcNe%<@-lMOo{*Io=aCDKg4CA6CT?@`7<8Q1sk>rht1s7FGfUuQ=LEmsA}HdG0LS) zH(JV6=LhamPPT2<-QfhavNtBaf6%PS<|Ay9FbwP~X%h z9w#X$WgR?6hMGvNSE}JXb;YF(a~!f%XvuqpobdNN|Q3+wDw`h73gVe=Fy>^MKMK5;2XfmvGgPzecZ4`7VATX%Z0}mUe5Oa~(Xodq3Y&ST zuAaC}x~KA&!1kKf>;=0NEG@Y=x$}+a6#`uL=uXAdE`Ncjy8ML)-U@f(yuVSAUzJ!) z1)z4`^LeD)Dye|Wc(DUqmGi49%KKc3BOey)VWt3xPP~;ATB(-b;do7mLxbhYhANI5 zJ&v8=AlD~FxhBID8XU!QeTz?VWtgh~Kp1X)hYn?8Ss*klQaUf0Zefo2&>5ZoXCzHhago~&0JB*zn#y!G#Z3D)&9^>sy7%7{l=pXU9^nYjJ zP^2CIO(;6Ur!Q2~8$|+#BA3oWL_mzS&Kt7!xt5%+4~}Y6+SyOjKCKn%@K?~`uQ+p? z7G3v(;!OTm&O)$P6kUK{hHJ5f_Zx}TANMXrsrKQoNu>a)N*{122|j(4n=rFFt07Ut z5>4~{J^6=*#rxmeZ!LfZCZFCpq1Yg6*7h}q=}eYZOGX$Tr?o&j7LHzUkJ~bApQ(%L zs+1q=G=S2m`;w&}L9vk8g4HHy(DEV#tfWL5lAG~EVSeBbGq3>y8Rx45`F<4c`Wip3!via-gFHO+x2wyai@?b(XJ|4)^N}c= zl!RB&u=lizX2tvu>2c?8wr-cP(H`Fw0OZ--qjTo4czn^d5|o~Nxt*Hr(WR-n7>)ag zsw`Y2Zl5@G@3B_XaC$D2PH4r+VZF|kre;Hl=2L^zq?>LG;?OW@u*m>iLq?n8WsnY| zWwB_H`1sQ~-C;yzz~N91Ls1R(4Q%n6zw4Iz9qH8i;79psMNLQ(8t&57%)FVrqV5W2wV%e5;&SQ1%`ln^)PFXl1 z$ilLVXA85NzhNOuECdlmwn0QJA-D;_%`vM8vRfG}+42^PUgkUuGk`Tu?J0~El@1qW zXb?fbR?L3{W>qdS4~IWM??;s`<369pk<@2keU&#>u5y@^pnJ>jR6R>-4v(y?$kP1m>9+)A~Ceq5{saK@Y`3|ndVtiIlrPyvVCxBiwo}7@jnYrQS@|!W_JfN zn$3@G0bUb(Ex`9_7iZsr*HXW+1^AFyS0XFl_Oc z`_vb*3~8UdEkDcIu)O)%9ntb8cTpDh0>kpAa$()U;V3Dv{NQ_Rc~kB*c=cs@Gqo@Q z`vl?daCQVJq=A5ywFIb-tP4!mgFQx}v;aF^|1X;PdaSDfuj^ zsu?>Rc7aCuNAI?h3qTp`tA$-wl*5c|KMBh_7`vsdW&as~FSnHv*Ij78P8KQZ{M?zR zDN}8n8P(~H{A|KOq?UgEy@p4#vnb*SJ(Az4UA85n@;ko)2A2d(mJ}4( zj`@w6Z$xK+)e2TY(oWgpVm0IUVjO{Ds?I)67UgV^#eIbukvIxWRU{mak^;;3?KF{) zTOy$^BB8w)p-A|Qk12+Q0exJ?ayDdqQEkR$V5%7_1;VAk@~d3Naw}tf$+&Of+R}z2 zD##h5n^cbzz9Ds4?53J^ON*Gy4uW}MtjW@cm9sFj6t3FV0U=(BlRRKbZ6**MCJ-Gv zG`tBP@^eWg6Ayz=GVvHls#4{W#7Hm{R*d;UCj^I~=J74n|L#k4Sa-qo%c-}=^0A`2 zg#s(OwYko3@@7u+lKoUAOH;B~8V#dI6E~4YWfw#&1M|Cr=+ys7)*l+lGQ(wztmn5U z79i_*L{>G8BWp2fM3x}pWXbQyx(2dNCLCXc@d!nh);^lJ=-rS|dnDwS%3Eiu97HD& z%22_v3`I?Xrrg|ST2| zs|VfSz%GjU3z-I8RnXppM1JL zuxPiSySvbBAA;0YeaFL1R)A6iYT32DT2Q*hMY$si&uEN~l1h-Ym!|UcMj($w0_}jj zw57?^5)n@KyIie3qCnH?p_KMCqv3}e2G3}=^-STiX}Z~z>5;ZG7uI0O(x)l8vgOpO z-^93H+3T+Tkwhz|Epk(UN_u$9Y3QqBHdEDF!^R)MeyNxUTT2!Gf@Y960I3qE#g?$y zS*FGa1$#yayMZ}ITxyKSG(GeA6jCWOr?skNjr=u5a4oxzta`}j0x7a|X-X5a6dWVV zX(0uQFJZ?O=F1g9!ouZ3jTC+5laH684*@BPRy3zb!D5j6x-4T98VQbZ_jm)w-1`h+ zb^wV`%c&oGvYKtpL0isan4Ez2ksaj$#zZh}A{ZPl|K)#aQNo>Fwj0r!Gi0R-K}%^w z@Ukj`F1u7NmbLj^Aznu9N8&E2%(WiQF{XfooBul^fpgVyAgho??1;;4i6;9JX%{Z$ z_KPk%IhYH*^#}|`L`3IonKpV9wWzD%!X=wq47I!=>JZRi40YI_x7Kp^YY)eZ76Q2{ zaMETJaMhv|TUa?&In313Aa5h6?WhtJepiDZlEm<{Nk#Z;B2>hITJ-WZKpK!?UwCjZ z_1ajahu0=){$YxzIx?&lET^19?O`(u(;fo12^3wBS{2oQ%e{ ze@v5b+gYP69f14tSi4X!hXmIQXi>(d1AV6QxS`)Se(i>S(t%A=h<}4BMfl92L!`mc z2S^)6H&1RUtzfZ?8;9GDI!92}6BH_|FuSh8u&C&5o{<{=XyOb{kRW3jTFNRFHPZ=0 z?`L~;13hgct31>2ESN;a7hD}x^i%BCCp=mv4`-Jr$!|pYUHZSmBr=p-idN*%)rJ1f z2luL$Y$2n{6ZP1K*ikqCUX3YicXV@cntJQW8BoWwQI+9w@Jw)3YElLHt%l~`rtb4( z1hL?4LtrNu&Qt0`<{O$}RdmKgmft8F!n*!KF)@S%`HhfD;bc@KOM9!mPnb`tbH^{# znyNi*7{l|YqCnonMqpH53SmTUU#$vvUmvXsm;ZKExUi7wyk)xvBK|_CROixF zg{X4dNfBMaRTu437u2DJ;N!`2wBui_FbCkK$ z1(>;3WkM`#12 zk*!Rb>Ivj}_vR@7)n*-iJD_> zg7tQjaWo}T2+x=BOJ6tjVq>M#&O)2~+~Aq4Ib3*1!gJPm)NmLGsqLwUvD&Yxj>>f> zumA5y_3t}TA^*rD3$^sC0e3C^ZNR9dE2Nquk8|KR9TN)-r9xR~gws%UzIi)Q)06aW z6TaKXZF}umBIUTm)aYqb{xxmkTESL99km%t-kcrP=E>~F%GCh%ZChEByPC{vZ7&0B z%<%-=yMDUvUAL6aQyTc29gT6+tEN{ae!W!;xAa$K$4+y(g*xc$PzP-Zb_)DJ zk;x78%E2~92PI9}+1hs~eC3I!9^lv|hqv)Yj>R1dW5~jC*~H-kE&$dpP0y#Jq(BXF zT?L2YD$l4q)s@!mj$J>dt+7$=K+Lxxo0aFCOc1!Y**YG(CYpW8T2rlj6M0TUF6Ah; zBNws>T|3ajv}5Q9S7wZEu}!c$04@Lgt=eYwW<>_2Nr?m-Vc+l;Y_X-AcHphq2)poo zSa$w7+M5_UdPB#G(Bbb>V&OUr>1R=Y7nHQlu5z19u03zf{s*vsKf zKxp&J|HAZs`=!{;Qad~0?gp)2x8K<_jR#gpqOGt|h?-y1eL3}j$iLt4TeIWGBaWfL z1Y2DP$AVp(A7}`GSe3femeZW288LlvEPeB5(Q}48Tg_5-n$-0hm4wk1{R6msHmYVx zv(NFK2bTMLI;M#*jyz64SHk+@bTlwDyvJ%(`fgAg6{_4=J^zQ4gYW^{sASt1v>o8_ zm+WsFOSarqOAR9)Gv?8!@dNmx>JKif9o10`ic+N?PqyAD6zSklK` zhYOdsvHt$|C45m>LP>mBLbukfZD`@fltHU+2SY4e7$zj~C__t{9<^^_>lF6=FbwGj zZp2cO23({kL}uMkb}$_iGG-yK|iAg$mU%Z^2OD|SVIxP6ZNRV%Si-kNEBP2V zqKgL-f3n@W>b6Cdmm6@7-Hd-sn9>X^kml)8nhRV8>;r_fnDHdUk4+|4AhE)B%GDG( zLujJkOkWfvQ%5Y;pb%LqahWj#q?OkyQEQaQ5JP(B_0u*wsS;k3{<n^Nz+uG(iEH=!?Eze&IG4>4D09536?6Pv zeWGP?4%7$y&uc3{cBEki^6xgqmp-#&gQaW^3p0s^#>(Y4Yq>K!mIlQb*67~+!95^f zym@pk%NNz&Zlf(TqU^=5f#o0gzFvABuA<`#ii+Qw=%b|B{7Sa1CNg-d++4ZjB)I+P zta^jI%PU;Q{OVw7sGF0PZ9E`HmXx8l{L@D`0>Ti-HV)iyVEKQLZ@9+3g#Q+QJ)# zT2zYIWfgW9f8h4+93!ej#}^y!L`#Z?b((^5`PgCEaAS1;}{GoURZZdgxBouh)fVBOcr^fqM*rKvcj@@To>RnO85FPaC| zn0I&n8#5I@sY=ewYVJ|3_B9zsqeI?iR#x+Esqqbu-FuRd_25VjC;AGKG`0N%WGo$YEdpCl}Z?8&d(X%E|FE9h@On52u zUT&G-x&yIR3$iAIhs(cs!=oqmOGcJw2a4GN-z0*Jj&ji?tbx$#GvhXzU<0s)1evRe z2RkWn=wTG$U9+F-iCb z&~@5MCGXQn9oevc`Qy{^teCx2L{2fTswR6`ZL%L>;E9sm?vuF#|2j$93m=3dd>mn* zq7sWQ(3kiN2(!X^M&>71FWzQXTO4Ip=p0<{&X3xANJFsoJ(vHwYC+-SU zh~qMc!ts4qaffC^3Y!}Ue$td(-C$|157W4)r^llHB8>6`fHgA?%2h%cVi-+awgA{U zwP4FbFe4WkML8a zR(u>)3!zh8`E*Igm9yaJ+`GeBwz{gI){cztRt)xF8 zPkWiIN|%kejfbCngEdY^3bMj|B0?PYF6u2&)tNr7Z?k)yd?E9bS10YJ+FO(hdcrM> z(lS;PpmyK^13ROjcW5@qe)O1H-}(X+zjY!)o-1Ade%mWl-+|C)3<0NoCk}4sy9D=m z`lRCS449+7P9F6j%buo#s`iK2wsTuNcpDMVl{*6>^cgvq_H522;wm?@VH*5YOB=v zV}s?8EA4!5%WpUi*Ni0&^Z|aaLmo9xTbm(CQKt5nx$dOiA%$gox+WvgfZ30SD0Ek4u~tGGo8ve z%8~G$mZg?FUl;~Qm$N9>X6Y1OO&80#vLeJ0owBHwmg#HfWSq|YK~an%`A4X3s^7mx zv>)j=mAVCVM*aA_R#E>pbB5yXF=&nSv^;7`6Hkt-Jw_3iC+>YyTn)YO$%h4d<@Gt|O*)WT(`g>|R}d&&=2ohD@7Zfa1c4u=!&~1<8;a+I(KzTxQ)6d zcz3=_LLTBi^xegpYX4?!vI#ZUzu#eXf^z7GV7(7MPRHq!NAx{-Zu6Peufo}(%&<58>C2f4 zmu}jFx6$O({Cw^9ho+_3!qtR~4s)hLZ;ne2HM{Nh7vJ*E41oJdKwu7AC$Mty6N49OO?`mvcg-UgPy)9#KX{*_G>lu3NcaMBn0HP+u8nh29QwU7;=QN-zg?xT4+oL_L0gn!4+a2P2BOec=E%Jb%KL|{8m{=-ADuu zXx{}km{D!DXBCIr5Z!GtHplMhv062H6VJ8jAhY45dl)KOCZ1lGBL8(&9I)Jp6aoXXqG)2*t^!Q_X;_ra zudGR(+S!u=fQ+5w#B*F3wDqvdqE)*r7VCqautzb%@p>h+piEqE+R<-p^ok0}- ztBn>xUro%_#aQ9b3=2PTDXt?B&@yo`r0m7vV>r_RUas-)tP5IU}-?=4dTm>_9O<#*!% z)zp(sQ%_RNNw7?q65y9Tcvr-zNA5EO&iK1Aw0LJiI8bevI2-DnI&_@5=h!81HyQcJ zYHQ{6z?i+2ytl$)d|bgW4ebjY)b;yCPJK>s;1mZ=ao`jOPI2HA2TpO|6bDXm;1mZ= zao`jOPI2HA2TpO|6bDXm;1mZ=ao`jOPI2HA2TpO|6bDXm;1mZ=ao`jOPI2HA2TpO| z6bDXm;1mZ=ao`jOPI2HA2TpO|6bDXm;1mZ=ao`jOPI2HA2TpO|6bJtQ%>fPvr|gzD z-9pNdLypIB`IOz@!>K5q>E#rjZr{HO50@I;kvsIj;#_H9`?yX9rh~QZhaPBEaH(yF zKh=`|aw>MDWq`vk-SMZ`^AGiLcxSj}>*@L|-gf4G&i9{~KgLOz93h#O&1dfCcKj3b zUnNBELMo$Nc^yHyJsh;Ym~*p(ybONscUn1D#?c&$&*`jY=n2-g6?4uH=x{ODVR6oF zWz5WFmgsbsh0kTWafZnFff&}cDbT-q)8WZJ>_ec=^7*u z6xXb{^`E$9#1Z@K^Bz56*Y5SjSYv`0@!#I8w+ogo&uxEb7R^)U~R^(J7a1A5Ni673UkGD`{0O}_Iz0OU3} z2%d0z>*b`4;dA?lJNZX$!cYfO#%juuALYCM+%`(>+j# zKyQ#aj(a8bwbBXM$}_hm=4TCf#?G)&KP!v5-g)j_Z-#*Lw#S8z7bLktqh)hqKJNiJ zS-;a^Sle4{pMQ1p^p1dx3G>z^I@4&C7H|tqJBRZ!TNCrotEDDW%yrLqoebLm*aj9g z!8SnI9)ufVHk56km|HggB?}WznlMKN%Pq1Nm|F}2@i&GbSInj6-_aaF$edx}7#4G0 z?*VD3A#+x$HM(NYWmZy~E%O(j933}7aTo?#U0}Yg=GNUWVPcCWM ze1@yew#worLxk#mywyRJUC2A4?xOT*I~ATQxqBTB{GeJLl55UbBh88OSaeINl3OsQ0c$*wT9>oW*A z1`OJ&XxD2*{ zcmr0qyGi95Z8@j^?XJ+PEXtIBNr%y$`u5KgmI-i*zob+BKCT<5yB);GDZs~R6j&3d z03X+jbIu;O5-)X;mb9&IY121iMei!}Uwe^@hvs97E|x~9A1-MCP%hfVy~i%GqM|Dn zSN?B3f^ZBy&aKQ2l{JoHY0TjX3UY7*h`orFKd5HVvh|$p=HTs`mTS+JJFI>2=~Zp zDnU2s0n5S~U5=`1T$OFv`u@Nwzvyo%^Fr0J%KY0>A&rvYVKFa%aKFki(dml0DEXdu z;N`wiaXwhjxWozVjSNdjECHs^7z=ryKa>h~A0v<^-!BEhE7Z(w^$HR{-9dkB6pSZoO|k$>l>mM#w5q9c(bweE+O8KZG#MVO@(f} z&bIMxFA%zw!PaX__+EgexjO7&{w$(2hFdlYUY ze~40H%I7mYDi*#>NMPZs%)OPHC65xuzn031{6WPp+We$jnNvh5KLA_c2r;_rRA2qU zNVz6f#qv|?Fu$9bSOz79xQ@f9XkF9oiB59i-8YRT_FOL)*W1h_;n6+PWhYs!YY`FMrTn6KKx?g533@0_gJq_1QeBCYwpiW}IRwjlTK| z%vH2YNAm~!g(+Eh8BB-K8XGZ_NBp7R3HM*2ugo6;zjCJA#|TCO0o`rhOD<7et# z)M@-@g1YkT`ZPPDG;&#*qJanYTP(B_>>0V)?&JO561xJYAPOo^a#4#mb5T+%aX-^Y zNvk7Hl3C2Q#kIj8L8c8}iIPXR(mh)9M=hv_>?RsKQVjJ`X%`i}Gg}`YB~|{rL>lkR z)&qGYPDco+5yUGXLy^3wZF};%d2(J5&Y?;*MO8!6lBOUv1a$*K=?enoP9nRa7{9$$ zgx?-u!oPIO?}*EG=e=Ikwu_%@({vTC2S?>u!sf6>*gE@NYJYpJ0SZhB#JUbgMB>?i zB`-3sT{Y|@x(a)Q*=qYV!{kDQLNOtVz~m-uuUA;=x_A6OBt*-a0Sbv?g;cB+Gn~IG zWJ+Sqlew_zBJ&!3i9Q09aIescJ`d_b7OX&nCmsF5btkXrMijn+-HX6_(X~#Tqkc|w z-6*=6$YhO_2&fTHBqbDB5XtLyOLHuoUt`p7MC!iBL#lwpW%unWe0qUI5%FSzfEtMl z+ni#pDi#D$bK~jplVDLr?qv1}3cJ;wSN|3#ch1qTJI%*%sXwsUf{mpD8^mZ_)$1>Q zW;iwIhA0evq_2YAQecDv~vL^Hw#K_#hyL51(Kw(^~viA5pyaS&X6flY*P@bC!O$LsL><`F&>rn>T$@$4LAMhnPI5{!>aifV~j@n zjwm%lV0|2YayHO+_u_i`jsjMt&!H(Pu>7bp$`|AoefmP*4oI1^$ALAla^uH_0p^3J zX{;fJyKAhA3-pf$p+U6uiw^^@s}q@-Fn-?cyzYTMvBN*mCqd8{Z5j0B59+sXioXAt z98jb;-xXN25a))zOUygf6$KOv4+2$rP7Fo40fj=CY#KU&2bQSl9;)+C%l8n@wg3F; z&xu)3QfR5|upgq9t|Q8i)Tag2wtbZ)nHmpv3p5nl-$#Cmg%z=o8xkQa^9L0!yA`kZ zrEvx&<*G>q&kxA&LvMsb8fd#g|6D;C5Y%E*0#AjiG1#qCJm8lG0EEUqP9EiKkjG0~>gDk`U{!f^Xi5q! zzk!tz4@Q{f=_S#DsscqvLK(~3c+^l^F1*^u|!8uIQ1teUq&Q&M30lL#|;%dNciMWyV5EpszH`sfd* zq*H%5r}gCz@S_IK9fDCGN99X1&@XHvUI^4%jPaDuxEv!mCgm8;l?tB$P;SC>ZEJ?0 z>wQo^?g{Vi!}#M+%K9+vQL5V!QB6C`Z~yW*vbBy>5jlM^a>3)sIcbmkF*LKE`|Ov{ zEYG&LI*Z*Ncb)P2mcb1&d|dx^nR8xRTJjD|jn2%|sopbRkXz!RFB$EnxQ?;ByxLArQGJFfCkVP2eH;yPHqdb2FY0L+2CPbh zLsL>2Y~NL-SzMXr z_BIY3n!g!_slp@C_EI0N0{Q0PS_tnUIH8@y zY&H%JHh@CRHw7lyxW)pLcU&Vuwu8@bU{iWrIV9BDNk&T>{YF7h*vnT9MzXBZ$=wU2 zE$pQ+#%bt9gK*=<-N*18m)GdAx)`yvrPj93X#Ig)=TwuM|a$CQNl8J5Q zKRR*z#IDeac4-s)VyppTSeU9a876+-=NBL=cln~_Cr4W*QZd78fH8EJj|{Bb2*goG zs*33NAv-H_Au@3hywbTS;A-cJO)K0J7OsrG&|x*uw#s#7JhKZC&k`6hIzKt!pNdh# z$P5$<8*!+!)Yq9E9bF{_6mtVn;d1eWG{a3kp}sW<6;RCOXtlC^Q^irETSq(C{g4V} zn_WzPqZ|AqxOK#4BHxIaryUMvg)ek3cp{L7RUyO7?5vp>zTmPxQlx!6Z=FyA1Lds~ zBWsu2fLrjjiyL?=xnr@w7`!yXNBhpIB z3c6wa$r|pMcI@Z{NU}Z(jIS^rJ)z`!^hAW{X82jUg=YQD1MX&c5lZ9GN9){Fpv%UG zLBbkkmKm-M57w?L<|1h}3aU~QqdUU|>t3={%wlex=leva9^r4AxnC*R{72z{YJ-{n zsdvr)si}A6mb=QWCgnoW`Xn$#O#*kE>Sc8mr&6}O_d>nT@q-h2|v#eS{Sdb5!p6sPpI%a zV^XNbA|R@?FiD+P*zy(!clJlc)S@+D5@8LwhJi|0shQQSX1l(0FJ#Ivyp@!4SM&~= z2~`MEv^Xx9_TMWK@A|c~?jDEIlNB*pngOGyr#CDnPw5ntvX*{V+zS>0R(ZqmJ+L-TybHC*hR_6 zYS&4rl#$SvmL{3ZqK9*uC4c*;jCI-X!F+`jdKcr5e?kcFV&JX5i_vU_FW8@zo#7YwcAT#`$uXwfPCzKL>@awa;p|i zoVR9wp1df*-~G#Jd^&%?r~C)t+hw~>@{{e80WC;Qu^=-#$5@*L+kGo1B!E9(Qohz8AQ) z5u8Sa5#9mAdxNI~K6@2fL_O@$E#Kc*hsMJ$;kN767%M-6n_Hpy;W!>jNm{j-K5D$si+^!s#( ziMKA5dL99-Az!8qlt8ehEdm)1L6#Uunh1udtp5%4EOQjaLWqS%AXAAROD8Ci(`trf zwtNAgtW$}$Fg~sL(m=~1nVLh0`F<2=SX30YOc{;pX0S4V{4f)KokIRm&NySjOPAM`chYs~oAw%wk* zpSg6Gb8xxBOAFA+DZM_h<>@I17 z*|bFGcT(bny)4rl>u1AZB`cH=W~R|WO;t-nM;N~R=g-<0fMrL@udZl#Gc>7j*M0N2 zOE>KRzB=v-_x9TO%g&xu)wk&j%_MTAt7WogqyK^DlRBm^G@#D~iFZHW>x;rH@j0(D z7=AvC*B-I&i9GEz8Mo+5<5GOCIJC+3&tx~*7RO?C2^G1dYF4HFstr3eFy5dBia&_d zz%cD`(yIXy4NaE6{2!(UCezM*mhE*}`;C#)WN#a-$L%ED~E_}ROdJY4e{6S5b z+0u6g9=}X!mb?tX^sD{Oe#d%%W;z5=6cK=naj8o+=hZ&E?QGia+!B7eUM?7tv5a{N*6sAr93rXPwC#@ zj#4ETrSJP*Na_3leWDW)q#_ZC2=a0qc0^po+^D{%S*=>16hyU(tyB#bW@RFq>iIYLr9DhKA7Y7Z^&91*c;ZeRAT<+)8~vkxO$xt3KtT580qadqnx#* z@+PuCt~4Mtxnfnm$i~&|5>4L!kjydP#QLNA&Wco~k5gCX6!qs_T&Sq4X{DfVdR!9m zn6leMB5r~5-$HhkToSSUfk+~rNA3C1i5VZL0D9$U8@uhmrWUMynHKopRs>C3yG+#( z%m1#nvmleC&g-Yo*L`PbwNqAS=j>;DrGTQp_TxsYQdfu=7m+yJMPdkQ#vm%nt_sZ|$E!}h! zZ)4|6CtS6E&>B*Vob7bYunq*dZlqn?0O$p75SKN-(T$Wud@w`vYt=D63bs8^|*_Qixt+v#5NST0g+}5Sr&HZwIx6&A-x5&AodD41V0U_9Y27;( z=QjLn@(UeZmmHcn$FC`R;?JN|WZio*_Dl`LhF`*eMGy2hs%d) zY5Qd&TApnys)uNkEz-upKYPepV}JQ_3ELcWji@o+t!zrK+Z1bwwX7>cj0U}98uX6U zPmS)EqtM;0~*mR9kKE4Cd$0)hC zw6)XR2c=hH)7;ElmMqCM+hHf6Y7XV>CBhwrva>b=cXvmMOf!;}t#|m;o>;VCW{@|_ z&;PN`*cX(Xpxkis^3Dzg*#vpucB-o-4dxA{eL#fAd4iJQgS9KDw-FlQFg~UR13fu& zgwgAW&QSk*2@Tec;M2qt1;Z~j9}IP<-aWtoi*J#04RUsbD$SHz)kDrX1BLdzw`-`t zx5I|HtFrA=TcNcbSn6ag#u%H`b(}c7oWMOoL6C+DS1^-pCrc?k-F6U5(V-P1p%Cm6 z!QQEvuXu34_QzP^TRG08-WR4of7_1vH^;jrV{&rmN3;mw9*|B{e0T9VH6=e$d+z-b z&)SJvllE=PPYCI_gmnDCZ7?v_zGYrVNPpTJ&dhA<+FW6iItl)$&om%9^QU6DZB>$6 zx0k^+Ry($5dL;C7Y|jjke#?VBNo^*LQ0^?cQS_8ot>`sMPp@F&hrtH!reU}Z#ng)g zbZ=0_?|0t>r7CVV#$1(cx3hiWju>soQwiM3y&;&TeKOg}noxg+yD$x4Ji@e+OJN&L zBc`opFJqjEoK@V5KYvi6y;B$D56auJ`AI%SelpXtnT5Xz&wXtwkXwB(J7RFTL45w8 znovt}X0a(aUqzgJ{4$~7l0u})I3R^%iX$=l77LRgsA#h4<6TH#;j0RJf!PMEzN{|_ zc6AlD9@lgOE`@~WQj|I{9Bj7)AN7KL$Z9UW5o!luWMLnhx0|z}1NrJVBGoo7$s^TZ z$wZW~n8Q(0VEI>S9(e;ui*%u97dHfWxpRBejF46*p|Ndhj=o^s*Sp;|wZXf)_4Itr zf;W3HHte=?1d6WiQQIS;f?2m+Kpuu5w|AFsx*@(n&7?EAa|^8<@+6S9;pK^JX_Zhr z87;q`b7!oaOGaAUsh-XUG;4_+pGYK6v_>Iln(&}RK?ba-jqSxlHxfVNBSBzhlq~%{ z4q6ShBC&6!vq6nnf9v&LUDVLHSAL@<<)O1J{!m5J^rH4gxKQbB$iy(ofHi8=hLFwS z42g8)_W9qd(UEHB$(`L*PGUkS7G@#M7hk20D}`i9w+MLgu4RfO)R=OnL8va!8sT97 z78Uo49WO1G_EDg~b|WS~cPHj)y!U=LxU-cl%U=VCA%))({{OJ|KJal})xEE5jS?l1 z7&$l~(f~slU>XY$wE>wpbWAlcP9>_#wHukbsam_#)Onx=+fk`yOOXT?qX|x$(DV=B zwgdu6o0QVT0RmD;YdZ~nc0(a>DRsEC9d**aKma??Ucc{et#i(t`DZ)5^xgYDSN z2cOBN7g0gB58jD!h{7-!Cw4qwVHJZxBy{ zIcz(uP8%%yczU#_tT@{df(w`Ytp=X$1>$?w!v=BVCl`n@{f{okHx#?VW;k_U;?UtL)t&U@G>` zarh~e&aaxi6M%@H>EmnI4`LQ%1TE+Yg3npYv*((#}nO>dk^ib zt%QP^qHC5juvm$ylAqTvQGhG|7XnpC+MHihztY`abTgyM;y2Yz4u%`@Sq9jR#!tRz z^HH=KVJkgC+lyANC~vwgYXxs^`!C;0w8TAS~h#nmtYEBVO< z8@X-0)fMEMoT`7AR%fmHEj^5IGBJq=28npJ9xHwCi&T1`S}vK!=vMiJalGq11GsPZ zQW>SU-%Nk0cK6^vczgbo*KgY=gYQFpvo{s8j-Q&H`7B?Eny;9s3l?n#{SQbuq)J|8 zabY*-3SvuCD`w`sgy45`_+9jphr_d&`gF|4Puy=Pv9-?#p-5*i5F*s)VxA5Rc4zd# z0YVkxCpx|K6?QbrPfU7tk5QImv^W&P^61-hTw|!7O1^czbp1`OE#Dy^APq)i&JRsz ztDSA2;=4%-=BX`MH;rEp8ag_@w{GD;YbazhrMBY*&XZ0G6zC~p)e%djJ5z#=D)o@>_ zFv!UVTT(Rpt>zGKV4Z!#s$(p&Jchzy3uGw5-MGE<4Jt)Tf^oBXd}vdv?v*5JD+ys&+T*Jp|ZO|;yVA) zzOTX7(@KvQE3I?@EDh*Uw`2;h`BLjb*nm$Eobsc)I&}vL-9%COVG_h$os%9HTALw~ zny?e1DGG+{XVdn@UzR6s!zZ;<{On-SC2X1F8_rfzK@Du1NLhoAc^Zc7Tfar{B# zi#?FD8LZTvfCF2pRp8MRh2lqmP}9D$>t(*D_FE(I*&Qb>OqQm(6D0fdRy~lS47dxkzxz%o2_7ihFZ!22}2a0X)&~z^0o(+YLBZb6) zH?$^ZLE5WR<3sGI9WGr4JK6`_&qY6MD&$ys>23GJ4!dl#m0h-#T5Beskj04o-iSrp zGA#xp2G&GrYbxwTIs0Pl^;OcN-0NcL>%@L9dzz=e>g==6+S%`e{dW>6_SePO54n8o z&rhA!G5VqY!aUL#F=_m(Dz}PrI~B%GOn>wNEf`v^D7p=g#YBgaP*%zoIO}M8Ikb_Q2~sl^%Ee>S zHe1Ch5bWuND;DY~_A1VphO3Gr{=yt}bbFm;u?DYZ7n6>-A^%_t7uGRR<`6)gB&!}+#MwjWzfiFA2DhJpo zfPedB0I)oH<2u$&AY_z=FqWJ*rq-~@*YO?lT|Hbl^4q8FoTV7EYRVl4^cSog^@|Ows zHl`Ycb{?Y@{#Nt<+bDWn^7H%&4^PZ;HaxhHZEBt^^By)3?I;TaM}oCPwq94(RH@~~ z_XqVMKG*(j13o1U9cnLjURs|VlVI=lSHVYrP+jkmI2$k(5_^~$LJ=B}zWDDX#4uUK zZ;UE_qwx4o^O#w$2@BcSz#A8LS4KS@k zsPP6d9LZ%kkjrqDT+Y%U0*yR9f4n5kwyQZY$^r~enJWI$9EA7e7S%^Ex6!4B|+m4!&XHs1 zyc!|swR7XLl-bmyYJ>8M(+j1JsZu*%b|w$Y+l#f*jm@O(RzKJmHT%Ax+4q65M~x)R z#doHdI1(1hXG%R{GjHIm>^>5D2w5FIN!{O0!NK7ZF(aNEy#ICb(FE^*-DO9ys=Ukk z^8Q2kpNn8hU%Imq{^(TY>c4@wu9G{{-BqpL&ev3~KG0als*WK7oo?`~XfNSx@T6$( z;jA5bSN#%ZE3i5+3$KiYyV=DY#$OhTPfb`nbzb^YE-qIoy}T7_7^r;?A1Q`?+{d3@ zwGgD5S43I8jz@WO=j#^Dsj91ZOqkJmHoJod$DaMySUV}=w{7#cI9Z?3E2@glf}5C= zzn(!wQbeU}ES7(l^h)^CbeXqJWX5EXwyt%@EMz)36^ zux1lzeYU6(<^K*Z|U66L_`BV2ebBJ(u;YQAOn3&|;7Z8&4XkL664FOKC+aajbl5XPi=>CiHi-qhx`9~X4c zl&YxADl0ZA6%s`_EtEtLyHwoXWQfSfu9z%)BUzfpk*14id!WCkW!Fl9LVr5se8^ej zjIBoZ(xWxyt^ml4jbfY-dw11%7%J&aRiJthcYL7TpgqR9$OIgPT#Psu8MB(H!%)gj zHVt@0hwNsrjj`+uu{CMfPDoc%c8fni5$o3-4T!GdEQsrgaT_r3pbuzzs~Pyur~kgh z`X34X%Nx>Ptv^)x@UrU}+?}BPGv5E}IUD_*yKt8Vzwl2wsjVhkj^?4X^cwodT$e80H$NeXW`rNg8Pmm^4X_=b8W zJIX=3DjoR{$=H~SD*fOvy4`cVo?`4N519&KO{L|;43}SDUZ-CpV;DTcj_2JUt|f!3 zYBg69kdbvV(p3sjB|kLIjBFPK!kdM4o<^MIt+~Cz8}xb50?Du!O(uYX^jL#9HNcq&c<9fh;d2EWSU@e%8bMrLtAqiDu<_ zT}_UqT3RMrlJA`YJQN6Z5XvKnN-dlSqhQp;=2KY`Tj{Y%M=KK)0bjJfha(OZRY-$H z5;=K%^6}G@*Se7W^ph_Pib^l;z>-zTzTR6}idmAtGn2r7$iIH=QT*$jGIxhj$ar`C zi0qx=JXimk27&1q;NC?&63$1=pC%mn(}W{`nsE1vf(A)A@}~*YTw5jrJU#0BgRq&G zAe;fl8grM~pL|%Zc{f#~fk$HZCstc>?-tb3@ubhE9JOPtG9H~qJ>qCsK7vZ{*H8)J z6#8&W;nwvAB~LKOU@l;FhS~Kg9u187met8|e1Mv%D7~HWh{ggHBOOzTCjM)dGPWzb zjX%|sN>-V0{3*_cTXtU~sIb4$AeC?4qFqI2Sw+`SjIN=8Pq~GF3vi@PFeIkRuZ?40 zutFBgQ8XJ(a78BG@w)7|i z;0A1)KK_XKjeEl9&M&!Q{N88pdYzHqGZqu^``?)gX~=I~)zY?x%&Gpo%u?}^MAHa!sI;MpQ@wW|)nD&W4@C|&sjlDo%A``gKb{nU7c9<=F?{}fH{34=;PR~PQ{xs=Fw1jH&4f2703!DwaafbF;=Ojx`EgF0rcR77~ z!sK+Rr>aOLhy#48zD=F$fg#aTZb=QHkUuk7|we9c-L3mYX_#^MkH9k4wi)TlI+ti**EPo zjT+^rH1q)}ta#&|71%I)D8BQpb_=GYP`mOrjGaH7OZqzjEI_q^o)0tz7W^ zszLevDVPtsILW>DeuTJ>dWpK=5_*;K?AbJK%?)Ti>PhYAALU>#&(L< zt5R1iT&MJ4&P9;6qSO=@Exfm7?<)c9Stvc%8|_f(;~coNs1xlP4+VwxdL!*EbF>}C z?4J3Hf?%d)cc*4FWi5A*+v<_IuE?YiwsAKFrrYS8)p=x_Wh>7rN) z5HObRxNe2T1PZ=*2OvQ7+G1F*B?ZH5ye--Sd|$D?{kqoylV)0>ciih$jh%Y!b7R&Q zS_L&NS&n!SaRNGw111&b4YOGZ-9pD`{-OtiC~cp4O9zU*>fzHz3rC$f*@z2k1_-hC z2z6Zn*xX%G} zI5R?&qht9jm~0`cyZrk|J=I9+u?koUE=gcX0{`1ez=nF&>#IY)bgWg>=-xsm31kyS z*qf2nr8t;3eUECEeETjuwo#qJFJ4mIZ64db{FFX4hsSmpvj`%8286}S(AbU?TF9Cj z->!ix#)XZY`CyNk?uTYQk*!cFB}}IL4ZV4L_8DOAMq824tqbh2IxArRLZUpWE^t)k zjFbl7XRhQU&^vxFGiR?W>SCq%t*w>nY9Jr);Kg}fobPkaTb=VBasH9Q892`doCiB& zp(t;hGsZ^_=F9V9pYA{NUVAq2aQT5|VhoY}L?ovn31uO{?V!s(q^m#!=@Pv{a+nWX z0gVB3v*$o&Bg`NBU_;DP4W_u_sx|q|NW13J^GYbRedBLYpVbd(f1G?O zZ9G#7?>n{ZW&Ojybor(4pDSM!djpu%{lKDNW6|wUhx-$Gd0B{W9Y1o?*0pMz9Gj-* z`DRbj`VMkvkLNn=-l|WsZK$k2P3Mz$3y|Hqr`f-Jbhdv^EnuCgv@UyIvuxMF0L|$J zXbkoUW$m=>!8@(b-$}lm+^VM=ku13L`M~Yewyt^yba9M1pUz{1|V>&$tPh2al zpXEDO1)+tGFO5dB|d-5S^f33GvKOfq}{L-x3{%pdo#$z~!vTRT2DXk%JQtTH;&F+4mpVCX; z>&-etlG|P1mP~!v_TEggxQXR9Y3~RZ)1|DADz6q$St$$>uR)>iRnfBkdYWfTZ9+=c zcv&56|1!D?fY()}2$+=B^E30i4pyav_;~=TuHdHl0j|ammU{dQQeeyI4~vYV21MpC zoeBL7*E7<$MWshD5L}n9L!yXhi|DXyAvbYph4^CJM6h+zih%2+73EQF#HAG`G{qm6 zRs>v!e|ab^qbV+sC?&Cs9_GWpZCA#{YQWMPaUN!jQ5M10aUKCTrYyuC=R8E#6n~ua z2)GV^YmD=-!lSsl3Xk+80s&#eY{LtPYxDzlBUY$ok-Av!kg2%3glJ<-MX+^3i+~$5 z72=NzEkxE7e_Uu0aD+d!AX%A;k;UKop;q@~1pn!eF@oQkYUEW_))%ThgD1_7Y0Kgo zLNU*vMV(Kf?V&G5oG zQX5Xa`c+5X1qbVs!-;m|WB8o1P@3}ew>wK)jHR0^1av_(8W|yrghCl~5tXtvDgbax zSZW+FRG2$r@Zd$cSV9Y_Ut!)}z=^Ptyd{<#NaC|$0cV%Qmj8exw$w-h-Jm;gVxp2m z1u_{J1Y?l6ln{)om})}3izA84hx&^^WW{|TBawu~#34Wuio$zrm)c?{Pm3+Sn|-Q? zQSIUQ2|VLtw2vMB-OA^e)UpCG%dvip@3S_TmkOtv&fU{#UG3=JsIumHm_um11x=^B zlv>EL6?Zy)C@9K)`JNBH?U!%)loY*$@47vVjAuY@!&0N5HGw&@=W#H% zwSDs6+OAXy$Fs!+PBv6x zOQURvD8%2aIL{YvR_9clQ(2RZ;zBj1=V@0R$nr1#6q_CvKhL`f?(u!^BY1q@`3)cT zmLznBz5ipk4SS#DGaB|b^Z(|R$BwLI2*vzAw`y$}`!jPC>0 zb2_I3^y&{;0+xqt-Z6(-1A>U=Tyljv&&MNtRkk*yJ)YXg(7GibJ|jZ!)tY0h>e3wH z7VpwFs!Izc%K#cNGe0Rpbx_s(S|>1;G;jp9ujzi>ZVxv{1&NJ{aa>jOIjVrZ5$FpW zL*x&-MIAOHIUJ_Ck&HfTfVUX%mTF)tqcTHLlLh=3$q1o47|~}9F!%wE@H=pTUn+tw z25M?%&LZ4V%ge?wSL-&+G|Cm7N~jn!volb%x%2J6YxfeH;fU9`8Gum6fM+8kf@H8Z zP`J6Xr+Ma>)sa)spHOMjY2A|?O07l&4ko;fz?}KJ!n|f@rApv-a~vrPlt)Fx!2)w^ zLj=#cBJ5;qTLVZdJ&}qqeld4(os)!)G{{-Q`G7dbz}95#KVq(9wa6Ql>bAKWj(+kS z3w9G-lRGfc))E5~?X6OlhJA!)ahNd7up8nA#^{UP(LnthAI5B7vD3}A?5fQ6n||HQ z_B@}F*^U-On%QqnOS}EAZd`_Ik*o zEB4yCpLQ^s2TuZ8&g9)@-fO|lQ=l}D_i>7P1WbOOA0LP0Z5*OX9icQ#em+@jVP7b1 z6H2Dj+eL$!d?Pk6`OaF%2%{y{qI01+RD+@pz^X{=t88*LNa)?+39Z5$%g`5O&~xk6 zDOrdfh=?9AqBZ^(dWarK7T?IOPFa)`Pu+zsU<(@1F``-U0b|DGOMw}Usw4_;bej_o zo*8C?4Ew-?{H+YEyt_CD ziejs>V~U7r3ssGHS2d}EDkMXZQLY*=h?Ek9V1XldXIMrJH1sfAVo0-RMhciA6<96O zmgZF~pCK$eUd3`fYODC7YDqfQNF4DhuE*+C+#G9!MpfCUidApbRb1(sJE{qbSFyAq z9gbLGlW~8CQ2rNWu z4d3S}%mAwq|`dUz%mz*g;WA0?Dh{$hXoa>GZQ zwhxajl#)s>-*1_dGoOK^LoE{=_#+1?x*}CntgC7)kE zyT&#Z>$046#OaWkaP=1Z^UL^+F3pV!oI174E~?W+W=pv@ zN>rMz+&;UkZ1OT;2rP5*81bVob~>ZdNEr=Fzf!E~fafp;vQcdJo0t_Yc7B+j(mS`X zZPmo0GsT-7;C2W2YXQ7j0C8;V?`MN=i{JT^5=|qe_g(``d@q0f{#s3-v2Q|}5q7+?8lu6$3kNy>$Tu?kh(b29EG7gunKc<_fU9PKvQ*cfWrc~TL2W0p{TU#_y&i0&|%7gDFiT4!KM)J(k0MQ6qE-$-9-&4y(UNy+MPee zOBNjAKMUdO&J7{AN*|_i3E}$t^_Q*gw6*A}s7rp%PS~f=oNV=I?ro+(Z;KrxoP6S7 zi=?ByiYY>|wT^p~P-yGEJzDFyjhN(pzL&uYR^{E#ZbYU|j<#@5aK{?GA#P{BllS!} z*8I+@2alf$0hUz(EZ5@ugn-%osNeJ6wY+>@>GsXYodb|8Au7_ctUqMBT@3c}i>}h| zZ8RO%)gh_nyCjbkQ=F&uiP7AE2@s+4fKHt{f4q~E6$c2T-!0{2m;wQcjFIeT0p2#t zx)>Py&5+1O_L~~_gT4R!@tuc+W)-ohWB=)+oDoRgH!v`qyzdq(FnRaG3r{DnSlD}U z1V~A@sOTRzTu1V^A)S6Q1m_*@URXGl3}Cdb(61C_fRg^<#oyHAZ6Me4CAR$}No@M< zGO@j5I1-y8B{p$jcPduIH!QK5__q946Q8;r*^Hf6@ z#3S!v?%=DGl`k9?E-8ej55Bp{rVkGCS*3938x7jEu1e`dgezT|P)zCOl~8E=qd$z4 z?hay9W5@XYPg1(xt0U=6P>LxX;ypsRWml*>`Y88?(R&rGDl#3>$sK*Dl32k~kZO{0 z@ueTkK*|mLK+)T3O7fd0sWhSH8k`|n`yB40_pOCtNy+KaK${-}I@D%KzM{=aA)6vY zML}j>KmQZjEVPZaSxe;&wAnKR+ANqzoAq(d+I$do3XDLc%?MKUflp8+p7Y1Mf)wHp z0$``86p(Z(A|GbuMzN99FQkkh=TzzZYNRdWf8hE)H;uk8O1Y^ZDWa79dv7simkL)Y zJHDWF9F4c<3%U-S*cW(03ATG?Eu1NIr0v2cx=74(!$aQB(5GAiUy{I&N&-wi_q+Bo zxy>f-EEDN%&%Qo57sHq0lCNz0(*D+#-Oma^$dfATtL?MI8;+Ev@s~7ZYx@u>$yf4G zl`ZYrCc|uL%f{az8}Ow(M*ONc6L-bDZ8mXL`A9SAyS=O2p=mVkyYP^@#6^t-4<}5B z+*g)J<3T0FX=ZIAoh<5t*8J9lIUmv$y+co(C!{KO^6rULC9%6ppTEziCAODsrA9!2 zY9-752HAi|F@F|d&z1|bbyQ_@6t)z^?VK?Rtnd|y$;BaRyZH?q)$;!T+m}o3Y7<>o z^6H}mjwCY+PbFVIU)z-#Yxe$7&7tv4SLY|6uc9-HJFoQvyu?@>^#dr0AQD`WM)Wn?vPt(giz`pJPpHMyX7S58n5PB3WjfOu4VkvLM}n`B+FK18_ckAX;OL0j|M4ZN-UgOKAY=RFxCh~Out4`$c<2YplZ zB1?DwEPzu60BiOOAzhT(L8+}lsqGR?Va9&ER0Zowy|B8}uBuWUM^TZbwO*>iDpkLf z+Fh6#A$0td_FxtBigdZKl@}pYq6$TWdzwKF9Pa-&@@A=*E`Grl!=YVT0gj;t3H_7G zI^3Y9gkx&Hl`5dVlEqJ&K8S`v);=)=l*XpS%?L#$4-OGYTi?veuJ%Oa^60SA^2m>g z0e%ZPRy++3JF$6LA=iHLF|j$AC2L2B4;p_f zSedyFlkWXUw<3^8zzB773tJ!V+M?UNOwP#soa8Jxld~&MMaaU5kk3#_&qT10eTXWc&gR{ZyP-}h5%(O|Og$hu&Yx+@1+;2@kH{!gl zn9+p-$YmtZu@QyCG!5tCX~Y{m>{}sx7X`z2QFx_yRPT%ig@O&zB3PAGfz`?F6*IR5 zu%2ggu9wK%m~wkc5VMCm5SOXgZ6br+`NF2L{Ornw#c$a;{!K&-rb;h;BV#J)<|f>k zgP=!)htz~;XYSw&9pMVD;wUjTJTWt2>1HNoG}via4Ks&GX<8G{Qwc_6QE)Kem2t$1 zj8{f=`Xi)6;6Z-KqYh#7Om!TZwz()Yp?K#BSF%W=H97La5@c~HKjc}&zeFnx-VTjj zMF}E^I!MsX!Hj~18Oh3b!4`$VZJ`UZlBV9JP?Yp|#=`X0a4$ZpswocAi(GQY^*ozb zunwg394ZNT>n>M+u~g{ivv_-kl78_QzRG#XC{kW;Mpnb+40S6w`~+Hmh`=89U__|I19yg&3Bpeq>K|Sb0S-4V;kf z1-F&P(qw~!+M2T&S7oDG$##&W+Ip{r`3NxN@G_`7&qa*S@DekZb{JC)pTw)q5TJ-< zP{D!W3(lhi#KV|RoQueYywxU)y-+MP3>QmCg|1R)fZ5BGDlH4ymsjJrJl6_9v<6VN z*wYv);PL+>F~MjghsL~ya?re`F)C9q<{f|nDD4DE?i6}>@dg_^yFpU{Zp_RdtlR)) zktp;%$_Ae?|LgHJK@(6GY6aB z+L6ZHe)^+=>3BH5b!D1ItN)qL4TY7*xQ;P-_f9=NHk5~J7K1_Zqj%1i6=!fGjrMddkDp5=Dc@l z>z|31S5E+d`ER>vAed&|sjshm+P?h06$GE9S8~B;P4M#D%~OTD9n2gS+#JYee&A2baf| zRX-}9R2}%_;!jaE5tjSitvQOrR88US_ZyZ(dmSihQw7@j@Gp3QbdJ#H2 zTn*-yCue@0pK}o80|?S+4^Jm7V;(+R+;}n4{G0H0Bpz6&%&xYl4>_$j)dC~UTHww{ z9Ju2qQCpSa_%|DX{|i$?lBR)Ic(M`Autq5jB>YlIIFv(F#HT&xZKyg+sEISsQAe!6w!^U6Kjx7?E6I*4kMT>4`QQ<;OV^c&vf6Rjqvy! zm>Z5hE;qQYOJ*IyM~a&l1T_uRmPp(xcY3&dV7;?zbQj&>F0Eh9I7=kKS5;FrlE(YM z)|R->DwW$Yg^AlQ)k;X1p59L;=&8i5@VN4Qkz@szaJb>Nd++7YR9Mv@n@-3-3uBgr z%?q4e(;c3P5zm*r6!AmCT!>BIQPw(S%R^+;^)p1KGpf~;wT8%Kj-DB1IwV?yOgI82 zs<{if(OQ+~iBypte)*zb02S(L=~FAYf77=dZ1`hVCwISE^FYDm23rnp_({GeACg(G za&a5&C$;q%8;P?%!;FpYr+tm;M&12WcM5HWrjReRyG{LC?ffvA*X=)- z>1XNzneUc;Y*GV*IW96Ds0N;c2%sPD7M%6 zw#luCN1MV0<~G52!3x$D++AJpL12P{EoY&qn9@~Vu)-=>zZBeeIH$JBPT@jMo>DFm ziF<7>G5%s=ZH{N_AZuisGE6^8wYWR4D=~q_Cf-**T#vy-*dTi^*-zDEf7m%k=3eOw zPcJXrs-AG_o9ENnfgpHO*1potPTJSu`c*?IF7rb<)}icS44+Q#OI|%M zDNKf~nE8vg?&Bv4gZ7dMucF-i zlN~7V*h^8OFJ0Sv>NI8M`Y|bO7yPtVz;pe(FV@!&-yoyC!e-jbox}*pKZE&y*>+1d zsuwS#8xA$k#ee+iI>`h}l?dnRj*8)Ct9e^D&xCvvnnK=M3PqFC)2ENF9cb%L7XP9u z5ypK=Cs@A|7qO|^t)#0CAkk*casw5-%4+vl$C5Q`n&ZzFt<-f54iFkt=#rk-Sof*U zG5N}c-4`6r$so0qg;}s$lq<-f&?P^7bzKGobDHNsb6GOBM1d-Tj-Obi^)OpZon6Kp z{V{CbwmUROpW9yArAApO&XYaQ1pPnv@L9b5F+Lkk&{yoUJbBwGVdi-Z%JZ1#tUKv% zCV$L4-=@?;+lPN6G|wqTRF=qR?V-5U+)c*=2

    T8^Z;*h>Z&W1tD@8sY=n>eMceJF)MRF zOoY{T#S+SD0BS#O2^FlfgwOhk$OLE4xZ-{#ji_$L-5LfBrNg?JfEl0DE)KHpZ?nvU z{R&_~2z8GBtoiBgC$Gq{0%s)Ww-!YKorv_0ZZ}ZF#0_>;?tW!`b#+!% zLRC#{z}lmZ`EV+mB#Vz zULu+_NY{A`ahL}jxvs^De`8ydOoKJy$U1b3mM(#M%U)qSxb&?Q6(6*C`z5#9{B=nH z+BUq-*vWO5u?$_7fE8=|NsI2XiK3^H*MyqgUFVe1gj>hofWJj?&V?{@21Bk( z{`BRh1EK5Dad_q~awCbB@^vAOma2heh@(k48hkb=XG6ns%xSsM%cMy0k?Y2ockR|K z7&)qGh4y!eq{3i3drs@RVcUSPwtYMq_RAJAD_zKSKb73af_}a@IFFoAUr-Osj`}u1M!9i6XM#`socr|JgPuuYwVL^| zgT&fkQavdo4PR{I%}IVr&x0h*aij!OzNkQm)gcWQ7+xPFZmQI}mak-Skq@^vEa-=U zbzvYI2KqGvlG2!1`XEc*Pxv;%I;YWRD&{MNrK^5C?gIE0S$`}9G4>~LLm4-P+F&OX z?PV2B8Xf>&1EA$hl%}Q@xc=GZGMhlPI#g?8sKryPepPMlbwNl9;~N@q=gXaO#=cFJ zLVSOEV+0;*-8yQqj zg|rpAqBH>l?b3+ys(~FOQd7qIU0+DF%qA|30EJsD#TCbBwmY1lJc10Xo*DPl?8;^3 zH-srhK`joCq((Ir96{FL2vkK)Sk92*y9&J_&u8ZKc$+q^17v`sV90v zQP9GCH7st6Wt=N0`7(sZ|MGVFI&PRS7FYyWSlJE(-&xFpv%d znYy(``ja6$o*;KKJRFckGB(~}3z-QiK||CHhd z*Qp_LJY|xpvc}2eQ~i;QVX?3<^{1hRcok}d6TYkgd)@Ik<5tUNf3NKoQ;pBxfOexK zv0@-CH-z&T_ME(xlQ&X_2zS1^S2}0wG*2bpI$wJJ-z{(X4gu0^<-^>;W@S`*lcms- z1ePSQB!MLfEJedW6}5#TFH0iBcPT2zA(1u&COxHg=9y60u#C^K-W*&AXY zxKH>!hoOPdMD@VWim?sloMA1JT0^+`K)SIgb^6FEv4p?xXaf&288cmwg3WVvp6xoz>~ z?(+@R4(l7u@7RKtMyy)UO8G?33;2vJXla_7iJrf{CRos7$^LLIPb9H32lcbomdy14 zv3B|~>+|kqHtX|8{FGk&Y-W9!0>4K|(drQ=^6XTePHN_c>lTf^`YgsQ(J{^32y5p| zjBO&*;7DoZb2OmIjif+96Uen6u3sBgX*#F(a#jZX2#?g!mO5=AcT+nP@ZvkZY(5_% zx`14onj){wfoft(%gk@Gkwp&1gF|AddsHQ=p|);vx-Qp4Fy;&(bYKPLst3`Q7e~S& z%f=vf+c~SUelSZ@8JhTFalr-r`11U!1y;iJh19xju4u5mv>_Rr0F$moC=N;rYBV7y zHa3oPQU{?K(2z{$qz=Tc_ckOUClScvhcxTO<_2FmauJ(+y-`-n7t(TT4(Bv;P_;7W zHJliK1Cn4QIoJ+OwjRgSvqtNyT;pP5j!e+tnu-O=ttsCb$kGYy%8{x@xkU?Se#+~* z8*K$SUs~OT>Txhp%g1+0M~lBQ7R{tKZC}=cD(&l~a1v`@kMT+SddJTP?aQXXX=1~~ zqkqTvJ9VOUW?oP1eoe5&OMdNtwDHsVTl|#1K*g$k2`<*Y*jGbCwRPFt_PX}<8y8iz zuTeCGwzY{&gQKNSU2N@ZRPAe2?aPTM*zvnyBBaug$AD_S>8GozpqUAX49X&(Z~Dnu zah61h_Di8!Vbs64o`}Utqt;i0MlE4CY}7G@3lXh0>rjQLP*i=GF44_wc#&QgmqHF| zh|FZ_r)vqSh()Ab9722FNrvMgBXOg0gfc>-^50qdRIYGNjKXZMjA*!lLi;;2fl&z| zn1g8mVMZkcVK$~A2u39YVP2*dBqZLa(u)!dwUr5NNE?+I8VQN0zb%7|UXp4J)HG;$ zvRi?;BIscI%)HB%jFM($!rhStdgkpn#KNpu1xvJsy%Hm(1@g+)UAL~$q_Z0_(Kqu# z=u=<>o0$*ar?5(FY+L)-wm`sh+Nc5qM-q6U_g7V zIf$KVOMI)0=zuR<$Bpp=dGAn8$-L z>!8{%`{U%U?_Zy_G4x-@LjTq2a|15=?N$+6laF(; zEA+p)A!JbkZ=f`;X^HWaDUI(KO;Iri0gqSA7aQaiA#2%iI_3&jt)V;|C@m}+B6(iu z96g1rX3F}?f_67m=|(Mh1BgM-ySPi<7gx$4RJIv(K??}5*~Zdbl@}`ZB%`oVGM#Q-XnSEWA(gU5smO}+NzWM$ zf5G)BMAnWRMPktWhiQoM$j}+(BA3D`8qhHqev-TG*wdIV{Xv^ug;f|FQ~PV!WeTD?n+N!_VY!*koo?Ne8jwrv+kY8RbDIT}>?S@X9kBL3P zd@xk>&~snwbgJWrq*0&?*>;JSxv>3w;Ted2#=N)LPw@ahr3)?=o)t`UFk_~O40|VL zbK45JZA@ETF(Ybrhf@*wy0bGUh*4Fpp0cXM#WB3hWso2}pE`BnUexb$V;IQJ=e5}k ztu{@v?=P`i8!dAQO7(5rFO0+fOCo{|0e}v7bLSFM4?IaREjx9Pq;2Isn*+xUvoZRq zeBsZ~+26k#jVNs%AD3QZFN{}%ieCz^}bjOrOS^eW*VCH(UbPqHchA(2}2$w%DGYF#Q0W=db=h4on<9TjcB zR{D&^Xn%P=h&f7(`}}Z>#K#K0RlO)68)BJ%j+NoNWfvyE0)*XhXPkv~o#{2Q{l_&z zF?Aa8XWy^Yh(5q78sTV)iY)#8znexVERE1F1!>e&OQKG8;Y}B83>#>Kw4rsul!5En ze2%d6Y3|0)Thn_$a?BT=44Yn+I{eDJLv^r8upLJ)Ka(~{E@#(<;vGi+85CmXHiI~e zPCV~f=){Z;_6Ay=oc=NL6)b9PZu_3gqhNAonK9`)b1!D0HFxb5rZ&kN^)yAKJT=m2 zBww3krNxca%h$zD4V2!>ZRkx}>>x(P4SC}hOH=k%UAp89NU#UDnjo7XA>9OBI(FZ3 zI>;9IZ&@se)y8(@+^O0J!e&U$nX1=;Y2`Y+@XiaylkeCc_X@SD*|BNGUDSSVCpk(zfAwjg{f_ku$5qVt1_?G^DYS z8Z-lpsX;@KMrzOuP-@_Ux7Qw|1&AbLYLN+RhKS_c??^5B^k-$AZfJ1cL_eAzKhOAE@KJ4<+vWZ$&kLyv~imb>=3ifo_rc1G!pKzNhR-1EL%8np6-et(OvOG zbX>Ub`1yLk3Kuvi?%sdJG2~=P`8TQyT)yYk>*-bzbn%j}NXTJ^tG?qI0N;506ef7% z)Z@!ees#4j%HLRCU5#bgo=ZQiCKBcTHpSVCP#cZ@jf{r9x#%2=UGM2*5b*XytuhlV zNJE0!d|@DYr3`j5Av2?|-uz@H~88#up6o&(F3yrRK4W5oe9QPm&^>N9$ zn;HHt{#tZ?;H^|{>0?jIb8c`-s7d?Gg8K~pyWMdJAu09Uqe0*O<1fVEwp z^vk=x9&~u|dkxK7Gy9eeWznGjdm|0z%;J5aAc7-KuIS7w5mync^?%QfzQ-z^-`$jK zonO>0Wu{7h^iNg+D5(1}TiR~CxN!wkx~__|7O#R=kk3>*@?aYFA~DgQ70|mI3Ea9H z1rSgJi#qo*RmD+tH@7#gkIMX7^?A46usi5RK3x=`5{58oE3JlBTGzHx)k2-G9RC$U zUG|b5>bo*DPj*xSg=&(RN899%2iF2~GDUkAeg~tl+BBc4l zuH@XWn8DO35jJ{$U^EdtrZGpzq@D^64S@^wPgxnM<`a$$+xO%X^9aB<3QAXEQ;f&> z3^gbeS>^O5N~r;qrq%r3)O|m;o-4!<<}GO-sL$DLYo+%-agt@w&stv8j$i&J_AHS9*}rutJ^U?d5I3w&vmzi z2Xr_rx``|;hhAL`S|Hc1?Q_pkyTsD*r7_SS?vBPl8=nCwU7assr-Y_~ji+utj3-%< zXUdcE7*8J9GM(;2dyM2gcsm`t`)^d9Ydy>|C1V|b5^RA9Ado+{XA>$Z3v2ESLs zHBE}E^=?E1w#o7625D*aKjBundInlb$|)e_U+tK)%ja6Jg&A% zo{juDX_eGx=i4c4;05Eqte@`j%T@F;dv0zH2nzFq&l@RD5#-blNJQj7muEN~J$Xoj zK5ZwZmEnMA(2r&KtY7T7^HpR`E#G5hwTyQfd%=^17ajHhSya|7K~{pICC25{spOu$ z!n4v4q$p1Al)cBMfccUhhdUW~Q2ygirQg37`ISDd(&^523W~f-yVt3>k;BTN?0@nf zY3++YC2ATFwLCeeI~7fe5ofy9*$7iWBE?uJ=wdslki_=#>RcZo-f}6RT$HCE%pCMD z{RB0EdUYbYJBSge<-ByYT+}3c(ZQ7b8ZH@_sO+TPle>s29gsduTr)uw>xLh;Tvmy|Q{V>D*2*a1| z?RdC!06jtC#=y&zA4ynmNM5xs-wAQnR_srXIKr6rYqQ$E)yf`|1AxQ7{rEb*f_3Zo}$De{cNHVGR1J zs?>WFUGPI^UaDg1N`dWR=3Ciy zPWDGnfMDTN!f_x*UqX+isXOAZ_7pP8&rjT93OldB0*w64D&J7>{Ho7N*14w#*l{Z1fLU8|UuuDd^Wp?K42HYVO zsDQrKTKZlr*$KV?GE1hg{;{t_KgsD0D*N1p%=4pO?OaSb%mblZ=Goo~U%G8AtYVhS zJ1&eQOa<#<*o{-;jH`b-s9+>ASs1jLpqcq`X#AF_;a^!NXr%%%h*?W5*k2GifW5a` z!4k!zJBi7)xsBuJO^xSUcK!_V6z@T%A#v;JTwc0y)?NrKudGh>SbsgRFgRe-Rk?xk z^CNu+{hnkY$F43lfMNon4=lc&Dh)09z}^cBxgo1hwag*4Ox2|h7u|TN0NJxh)pFF9 zyfjj)#9ZTMtWA~AsD`#hHM9-oIp-Q;T`SbYwYkI|mf}?rb{8Zfo1J+=)$_VI?!>v` zw!8)V%VC_U@h!EQuth?4O?Xmjz`q(zFo;>ZQr$0BpUrKV8Xu`eG*UtIUB^?4$RK8C zlv=RAMiFj9pm`O=@*;CvY8B2g&ghJ(77{K2KyX0ZwKyi$#F^g1p@ndwB#oN0<(de{IWj!gjzkTwF7QmT` zUZ+V)W}^=B>H7k*+JL~9&lgLSeE8g>KJ*WG1>r)kJ*o;k>lzTI1;B46>%TqvwiT*i zrI#7Up7WCC>@lU7!3nn=^Y%>WMlz<9fnVWc*Iia z9XH_qvcl$Bn0(C=D+5d1`1x=)(6aMt(XJvRpnMES^Wwu0F7+)xw-zKwkWfiSG`3}o z5>w?%$(U6+d$iP+ji)U>E)zSQmev80!Wu(AxiVN|52Y7>Q(f>`rF)l(jif6_5Cj$J zDgx;W%B1@#0%Fx>ruCtJNY{eN>2LAXSi0#mNEZX73aOIrmhqREba%Z#%){iCJz_Eo zlUr=^d5cQ6P&3(Yv6=fVi1?5|8_8Y?aIYUBj_8oFVBtl^ibA(k$^Hv2`xGGLS!bHQ z&eTzNxOhm4neoc$-S+}MMuc$AD$KfDue-&qEJTti6(reUi)n7ru}<>nA{);%2X3Y> z8%Z}k-aXt^3x#74*k9WAZQG^8mY`>pTT8~;@z5VH-D=|;OAoTn%?LeGRn`A@=eXR2j5VqX!LSha_-xNXak3+EF4a~O^@oXTe0^i z1r=z4t?N8Q()s*vjOyb8{s%}wsJhnF`C2~0Cdu6j6tQmaDoVfB*Y;We0cAL<5CNo4 zr;h~X?0bPP*hE_??jfOc=NGlw^*s=Ks_tu=OIy+bC6#}y8vYwcPoC!HkG91JMGFcl z&ZVam$4mE-1ck+AJJ~v&9;GN`nhF#tg-jIHviHRhDEm!fuM%y7;DbZK1VNColHXd0 zm!_7#ZO=<3d|?h#qFS=TdFzaZDla!MBZ@ton55{I#cMbN9~3W9>P@0qlIdU{`g9vV zo&Um5>3a_&g^=Fljekncuts;G@SI0!hsB-r^FuVAaFX<~OU4g4M^XsxtZFo+Up7p`eg7C5#Z=?6UH+!h(a>2SXwq zcy0SWT|qn{HtOsU%}xpW2iF$dn~(TUxy}gvn6h_8y0h`Gq&t^Y>&_n@#yg=5!G>fh z>}0{$kH*^Ve&R=C?chqnM5TMpl=s^17C9g5(3jrvYeH+%8{N#^1$@2`&M$0C^On)H zndI0E1HA|4hq1Vllz`^A*rP=unU(jZXNop9;!a$_PF37)H{r%czb$Hr2Hp<|lv)932ItB2=%^ z9?z))T8}b^bj8BByd+`Q>tA*G%RkiwgD7cr1eZk!TI&%s$u0tliT#XYwQ&C!#p_@B zC1(bQZ-GWY2gKAZ7H6YdRDtHdN3GS8Iwng;*y^)T;+mGA#VDTkUyH)4M@KUvNRwE{ z`xc%?NPB<6GC*}-XjYhcd-T-8sWW4?t(O(o#)x9ZV>69kIOY7bD$>sP z1nCqYFuo4(Qw8g7(W9$XlT3VbfX4rcf2;OcV2YVDniG!aP63O zibmJlH3s*SaJsMv@vJlE_=}P#-1)ly7G*X7Rc71sonzBUp5FP^uJGv{Fsu>4ZAX-g zhLm_WQ!Q3eRFA(UEbwwj` zmmSWnB!+@>D_NzVCurt|s~3Wulc-qL&Pj(HY%koZF|18zL|Oe(xZHK#h+;S?$}YfF z8Ar$#4fB+hoh`wO@`aqvdb07tq_8%(GC8-EVO&5fcBjkUZ)IDgU2CN6n+D076Bd!Y z@k@|f&yq6AcBw7Eb6qie9yJIKbw2*(#vUAjy(_Yz_v|3B(uQd z))XcQ#dvMX%$~0)=bJpI=(*g8hOV~v*t2t8otInUHG?GTx|9{UOk-v;q>CAyCH%S9 z`&mMEr6J5)C0?6wvs%#?1%<*NG@`XH#pDh>@s!vdsycNPoQBo=%CQ=5mLnC*k*X>H zTHF4X_fjg6)ykk*`9V{eTslUSHMoebxCrA91;$8^bEp0(*DJ>PvqFFTX@y)iNLZ0u zSFfHbOe&jS3@f)wZ#`@tT*t$gyY;knP90600va2;YU`R@a&9}- zO0i7vMpCGwONs=53&2w2bV)Jesl#pWc+}J^h;%hm0cr-Q8B0rB2l);g$zs2@j>IgW zHK9%Iyl&28mvL|UW8F{l zPNn$UB--Tk(4Dr)=?+M&+2mB|zoPw3)_v^agtvcaXs`UCBpYaPvP9MGBTG@(zvdZ4c6QB^vrvy5$omPftA{ zS+(qZ3sp9AkPz_hBmF{qzq(z!$r|84W5w=_q@l{E9rI}EHIR0I(&ROSrTsXYA$+rM zA-rJv^s7uMGNml_&*8|zU|!mA@5iMLzcO5-3N}FdpVEhS>LPTxGY$3OU0&bs{-Ei@ zAMsQAD78w=GIsVRqAI(qH>k2Al~k#+R;hTSDzo}Rr+5T3YQVaH zH!J^pSl0p#$w?n72_O7)ZvAU@5usJKkrqQxj0tKju&)isIqwqRdTlxqD%$W)aozun3kVoY|BGx#R$ z#NkBRRI0s@&{6S(5Npp;pDmIlc>3)o(qm2zr_?|bysOux%F0S67D+9_@k%QuZ=zS2 zHbK~@N$7hk8R*etpj`%U@!{p0AR%%=X1! zfG?^v)nsuiR=?E^)K#5k1dUi1v@Kow*tSpwyE^}fi!U44m9WK%a%+fL8(J8(8JLt$ z9i_oFwS`nGW@kudXU_r@_co-sUK6vj7t8itc!=(&W$|AA(C|j6x8c$|%Qi!j4vFH| zoE&~_#)RJ<=_wR&2U0&vdH&6eUjF5S8qMO$MNdDjcA(di%8+081K^u4|1ALpxW z%{_r{rL?x24FTxrQUya7lv2lId#~A_o}kN8XA?Nex-^`xly`0P>E?WFZu=QSgC7CX zVe?KmYtbZt!@r7p=bD_}A<}CHouxq<(dy$#wdD}7LR^n929K@U9hgDkf4v}%C>&r4 z2iOabKr7|@bb`9{kn{+xJp*SxQ|R|O1)$S?$u6G7fAnep{|)=s2KOUqcr=92Mnea5 zBy>Qvlag@-A}gKufs?1dBk^Wfa3yn^d?0LgraZ0{-AN-^ve!}~wz=0FRaN^gc;nV2}*qS&2gKE(}xjcYO;rXzlZ}Ixt zg|xsVH?_B9-ySOTP^i!uYBfcj)lNQ`-5OUT7z?ZOzh}KVdsUqyQdJu@XH=cNUY-7^ zkc~P*E_pILj{Aci~Pq~L}7R@m3!i7)Y`f90N7@(cF9AV@Y~l53#tGrx6Wn$-j=;V-9`O{nbhPscI} zZ=;M(=dxxU-19Sl0u}VFZdM)Sp)*c9^iuK;;XQ_tR0!J?ZEO312?{U;t zKa`*4ND?t@!q0Pj#V9OJr?)UQr#``ElVPCz;=(6MY~!Q+T>6zEqJL-V zo2{)6>UxXmv=WKd4_{y62h=5-Q?LXDN%$5&fa!;?6aJ+izP`>+@?QVlKb=mzO0-O; zMR;MN1F7P4>d=HD_D_D2i0WijvZu~Y3Or1uex5Xa@x**_dNO?($rL%HqdP$vAy{#G zdQ{OQ566=OT@H{;EpX0_Q{d3jU$~)U_>Ywi-b@9A_^LAOm^}eZn|TPgc)7)n_ccH< z$R3sh$d0$+>|ePHeEMLP!~;}{zT1<0?$0-jeC@^49JBrj(&KZwp zG#0P0&eCgg>QG+oBRTUe)U$$Ec0nHcK#*|&Wwcr-Vm87eN>3M0o{k_8i`7pR#3R4O z8Us2_wN#;N2z+Bf>lY54uR?RBrOX)~o!&D&se;(eD=E~{Iz+`XSIZ&omVX-+bP6RV zzMpvgBbW_>A+!0m1E!p=NQIleWx8{u^q!lz&wM)lgd=#8AH;SV1m6vU>knyZTq=`= zy?k*l-3}3@hksU&_PBKOZMOij{!okSqhRh4%tvD|$IXg zfS}t}MDoT-W5hTva$PT6NDah!>9IFA;TS-%tNmG@ioqoBoikqd?~faev}TFs~2+6QRbrq9M!7Qn`^0M zL?gXH4&rs!OJUmdW!Gi(RXnWf`=>#kR0?ThO7Tvc2K5$)gKjlrfV$m-}{y-^Gq zElj9AQIJ5#FV*`e3WZ{#e^y;3%AbcoiE;VPlueWKI7l>A#1U_EWvflImOO>{FGjcH9r7afpMBXkID_v#3fy`q=oj<446V`R~b=YkG)W^M@qjGgOO&+ zL2=Dod@ef`YU%z;oYR>b{Y#?a_V5Y5=wY$#Y~fYc`}v!+Z?5eSKfAT&RY|#>D7sN1 zUV}=kAg%4@c$5Q^=0G|w1|@38e>tH>9`Ax;ok{sMe5h-pC5m*lOPaInaq{!tjqxe3 zjYL^=zGS=?pX<$89v*6`3b)aH(6Wn9d5N-T)tJq@t6&Zs!C1{Fr~lkZ2})B^6MOiT zd|(e%eUoFCg>`=!MN;>l-fMOL6hEaauvun01OXn-TR-wn6M;A4M;=eE-GLhvjThzu;Lvj@19f^8Do;iSIb5!6xzt-=cbp*0R6x0 zoezB7ReAr@=3WRT@!o1Xs-i}S8Z2rY-4>+kEhO$bQ;k|A#fovQSZtL{+FF&A8Yqu92sc=1LFZc8ALiyP{$RT?%pVhkf`9sZf1Y#B_xrs!H*N9f zock?(y_)+y=RD^*&w0*sp7WgN{6pk__S@`Co@i6qGVCZrpEDl|oqo&ngMuxNj7*XQ zQb7!!8{&s=8PTMoVJn;E93dXx_=IH$u~M#wY4MB4C%Udv89W8!;P;If2Ds2*@1&^p zs1Il)WT!*cXnE`J5}V-mj^_p;=Ay-qF29{upAPJ4Ktohs$XivxPMdjNfMQ?PNB3xM z^XOv$=J=>|Cjh4(BZd-8XeX>!Na$4)NX8(uZh$4NTmPa+^(C3t9|h@z(3*!kHfIgfI$Sd zM5A%$rV(po@#2sgJ4=jjeisw+@;kDOX3l4Bn=nw0FHGg94rgC_lT81U+<+u^ zpl_<}7dnku99wnty@6zjw4H@kK>tF%d|JvS^heB1XJ0yNt@vT72fQb(UC55I>H%2B zDHUJ&-20OjK>eAg|~4#@xW*OC8czbD^Pybo&=4;@2>MU_St zR8AoiB7dFLi>^tQ;mJe9He^Pw_qK+MluK@P=Bf`RA|uC`L%45bXapWf>cvtkqt1Ml zNj*#utFO@@df~GF-!5W6Z8r z9Lf{(C|`N_3JfI{9~gG%8(Jds2d4s3KeHl!@Oj#=#7g4xyGHV|UY8=p7NsJ^eCI6w za>yD4;gWI=nge@q#4T8}%!SQChojq1oaMKG47pxH4TLu2tUT9iIkgtZ&4uEXNND>K zhr%kKeVG}GdQxTU$@H{$sarwge&wT^?HIIfrp{B_&5nOTeI9b21M?i1=fFG%{=eiv zSbohtk@rI0#$>aSdaoUL7(V(gR>n&9lh-cj<%b?9;8aqXxjhFMH4{sDJC#sO-~H9d zl-q7GT*<_5v7p(#MmdEVhgz|o@J4rOFjmYRg&T=U5!y|Nl#Y;6EO=P6jT|nUYv9Z7 zDspolzNTy1ZXlP;^IiHau_2{0zST~bxQFWkvf;^P6oZ-g5pNL+-|(ba$(hj|Rgo$r zl^MN+NbHWTgNNJ-k}JV(%QI4YM5?P+aokA7V9j+htCFDeYgv)Zr(}v{fB5lX7;sul8K$8Zr}~u*{Cr zIFb@A5s_@X%$aRttTaj|L0d^tSm0k*aZHP1anKq^^a)f>DXZLF@ZR&RmNk^KU!^!U z`g)PCUrc##q9|8&@z1t2c|6R-#A8aDP>$k(%Jl=b!-|zTqdSP3ppKC_zkUq@SZcl+ zEEgG;?1W*7_Cj4)Hvi?PshfE;ujeE4B6qd)w&z)tOT!bYw7{3lm)H<6HYSmtSsH;U zry6S8!kJT|NGm|G)35MzbcrO(VahywIHgSou1=9Kux&n)gj3$-J&D!1wyX}hyu@#b z(0FOz${quUcX-kyU7IU6st%>4H@@9ml@)#}J82SJl`>WjFGPKOjiy!U*10iO4?+NQ zLaBv$V|DJK#`X`+Qm4ZY(2{JPvYm7K8qim+-h_w7(xiiJLR=Q{RrP1hcGMDML~{zl z?Z@=~`4Q&4^B`$zod(_USHqQm^4Go*bpT~7e*Xf@ia3@xPffiYdM5O<;wB5uv9 z$){2WQg{|u%*j=*q&lmNXK`$2Wec(LE;+tTw5jHKJA*XhzEwX?E^V+zbsQZoFHxv- z`ZTvOum4xH)6|#Op$8t6l4bbs-*X=_m>B*Wnj}f-zx{GF{8t2u*eIn~c-Rj*3N;Re zd9w>?o()sz3jumBF^GDghZlmH|2sD zhl@20{l(=OR}uNCdl%-HTOS$7m)ynY@+|F7kgg#Q&~Tsh8a=zgTpftYLlOW_GZX$$ zMa%8wAc-jgVe_ez6Lt8g&dQFF;VCQ{fj0En32pO=Bn#j8Lg$TAbsT%=$n2>Nl9{CF z==tiA8F53_je2p+jr%vp+$a{>8NQB`DZ3T=uvRthhq^M78TT<8%F<*d%qP%Q?f}EA zPOXkO(yVkjb-uAh3y*#2Zxl>1Or%_b?FfppYD~3+M1i75c8YaY3N(A;kxgbJcC~G! z5dN~*c^QbeX+hH>8Q1TjrQHf=pOxvO5`|@5VK|%}v`THF){s#sdy`VFM70AIDqYoX z;J5PdC1wgPUGsxPi|%xw9_0J)tmUm#v#iU0X;EZ5wh*%vRq3E+q4pRPat)7`Gb2w) zkQ14`KZ6J=oc_sAY*ClX>qAbQX+|=sE#J1(a6Xj>kYl5@CdU^MWaTJaozUfL)0bEf zrCL8HRLXUI@Gymzm3{GLc7v6_-D9q7B5^ylQ;tk^ft8(p@Tgy)a-L~9FG`P7R;YA7 zz2SM1ZLcYYrampvVX!pCF?9Q<2+D$06Tfn(d>@k8gU&dFoM`Ps@-A<9pZ0_)OLuWx z2A1M_6LD>zQCvO|C(ohca@58u%q47{HYjmjdxT9+QbASi=Yb$m;C<011Kr3KtB_{s zi4eE5bKy)T)YNbFoO!JxRGoZUwOKWp<*%Mw*k5US{=$Z{%7Gadj}NK#aelET3c6!4 z1;;%Zj2ArK$n6X!iFjZ|9R}mBjY#IuUJWF_qGR9OR^0!bl)1+L9It<9{O{ef5>=8I z|9h3d`2U4y{O>eS9;z{&qwTw`2+KpC!n*C{!@2W&?U-$^BuW?}cYbfCGz^T4ToNbR z`beZxq=rz@``^2;;oaxtOX+=YrZ5y?JKsO{-`ak*YLXQy$Xxmek@n#Hk);nkoMt+; zU~A(y5a$}K=^bE1eY<-JWM7Vqj6wDE8~q+pk><7N@L?Vh{dKQKU8UKrA<}JPTC`og z%cp{+3s2ZersRo5>RZE83t8pHs?o9v6y7JYOD!+x$EtbG+q_jHc-IwGb%)&cqIzG0 zi;+?>EfB%T#X<}=zD=?Fg@%ElRn(Rk%`1OF31YP?V6WA}6~J4Jg~t?Yk|= z?m-LgyM~~&p0c9#G>l5?wGxzS5)_I~R7Oh8#|7n=OTdXz!FBd92#P+*TSt$G)K|4; z`v;M%f~1h1#TGwJMg}bGcpJD>dEr}<^%K8?>}a{#g1&z1KWuJLyrm2Lo13h$*auHunW7I8KHeVlF{@$dNx|W!A{))&rmMVrvBT&{*Gw3_ z2&WZD3#y>X;}<&yDo^aPOJJ}~)B+9Wq>tK+0m-#k%wrCb?ZekTNFeOcEiSg!b5vC0L|MC z|LqJBDf`*W3BwO`FniGzM*TY&6TfXDvGl>UHYUFKLdL|!wE9k9`ZeFdo85YXods`g z+H$r+i?+O4Kh0a#>nFQq`}Bvvp?MMJx0wz+X{6bIu5$AtU2%H#T*+U?{M|XTwQklo zbC_c1%-XtXUqIA%&b+j4+65H0bLQD+l`%ZzUj3n~U%}OHil54h->fkod!%2w(3GDe z_e0NAcNngB)=G^(7eBN6Qf;!{-F-LZal6u|^K4z^^AH`ps7r9Pjv-4TT$d9~WfMlr znzkk}upRAW?zy$8rT}&%fU%_{0oE)p-r8ooczsg=^k)H-QT7<1KMkPlOF9PVPXcJ_ zn4munpy^|RJ{~}MNb?v3JQhGtJSOPj0NQj+&_@I4Nyh|zB!DhDCg_g>=*h&f z!tgOT@K6A4IVR{211N939Rurs1W;zEbAZ}pI2Ggz35;)~;vRui^}*2T!yH?q57jw8 zd$j)3T)+RY>v+EZIF(SZum8{OKTk|1ujl3H*)n-Fd1TWXkLDTiSwT?KToWsd)?w-V%$1f`|7A~9eb~PzJ2Sp?-Of@ zKcCeS|Lvw;^90Xx;J=&$bFC*7&|UcwbN4;V_)4rNIB#uwbTc8*!5i|1jw_U;$Xc0SXHx|*rmh6tW}qB7n~j{!kh3{G_{u2f z=9`(YG%R1!wwa4zdQ91rGeksbxtlE)5gS^Yy1@ZX+^t z8?50_;YasKt{;7j&0PVOMmy7d*w+OhQrO}J?wi+~OoLy2IhcxfRsQu=Y|iRwYddHE zjz!2zJ7i!c=!*|Wk@hLJkBxnf3?id0YOWp<>Xn%U>Y_t^rbpcoq3(!L-&zn_`USpY z5R45eID=~ePTXN>o-5Sd2q?7-FXg;=hjZ}!HE+=4;nH%`_nLAK?C-)-dA9RCV#x1jm`wT1w(@kL2?iJij-DEKN* z^GIH2xols>tXy$@=F*>KHu6b-cI??eBP8_a0VNdEUB92kdu}%?Y5$tErlq*EoJbC> zZBOLYz6pt#w&T1d+zdZ^GakMfZYdyNab)2}6EGKS99g7b z*yVBQrDCezRHyuu+;^t&x8yk+xFASFVORu+Z z;>EYMAfj&em;D^7LUh?^S0E=|SKj)95C=)=cluH{JkK~_+5H+515($_MKN$_k8I0R zzmwQAvo?ME*Hx{)^i{oXdyB78%T;f*>UzrcJdqP%w;~|9xv}^rY;M)Z*T!kw&tP5}D_s}=Sb5ie z$v-5TMp(6@)%ND7lX#Z8y*Y6NohV3lHho~VTX)o+G9!Pp(ZXLuOy4bET5Ij?w@kJC z&9{{yEJSMb_6?{mkh4yBQTnP^SIfp5_6f(@F}J$u-(}cRuT=uJXwwGmbGKjlQx)9d z>PDJ;C!q+M&3*)ng`c2pmQT5MA8DH)PTQyS8}?dW4>CNd7HQb=@{p%kIF$&xL~Dp) z^QD+ZORs6$LY<<`i~}h||NA+Xl4gD<0K4q&f(^AsyyEP4Vk(j?iNZJw*Gg#L8NBQb z!7ZA3O-NcHb6*a6CKxe z(oJ;qWwIG3Y!t|IGv33-Qf@pkl7|8UWmMyRftvfS{b^oWw_%i?*%?rPmj5ea7C8me$)fiphu6&LGKSOR z<4&gZm)0Yka#3;GIjW}1T5+cGYpVbJiJ|+*1klnGjqr=y)3jd0W2j`)?|r@M4ethO zGA|w(+Ttv+^y>_Uky1I>uSK=2a_j89kYu0ZW(D$0pXGP{NJeAMWLsWrI&&927UmLL6%5fCk6 z(-oX1viz!&8VQ=JOq9^}2@!rtrB(@-03C+aqEVW9w_hy>&IF?%H66x18_N zgMsn!^#Tw5gT2g2OUV$sM!(QD1y?fcGtS)o3P**xNti!a2QvxP zn7MnW9%kUcd<~eVpJN?Dj*fplfO@>_WzzLHfe=yoI<7d!d>v(iv9H7Y3!va3rTFS) zXrd@)rr&&x+JV+LOF7!%LAv)}ErAg^ZfnPy$lCePtep?dV*h3vE>ep}iq-yHVBQFZ$RI zwR&Z&qhZInYDlXWJ&7qRgQgL*5t@0&5o#5Vd|45+OOQM3GZ8!^gDP<4t4-7;%5k^z zh;X}sxOo9^OMlnk{H)GDNG%yPS4Z+n64B2jrDO29Vxf6GM3h4SLzSx@4;>AeSZOuqRZm1B0ZpQ6O{iB>%h-sO#+UkFzj zAmA(5TNb=IshnDVfIBo&Pw1Z<-P#RbdP{?eCOP+$kAsOcm>V0_+}V~}EN5csZcuu3 zd%H_+>x)AVm_yT+ewH!nB$j@55oGD-m6xOR z-O|sP#kfl#{577ktu^x#aB_Zly$5xU_HbHeUHUa#5-nrs($A?9Hl|fhag)!MzdS#R z6G+E-3dW<=2FB~UE+3Vhm@l6xGu9jkzHo0k$1WciFYEbBfp$3rE;rBI+VtI@SHanq zKiDf;qq)h51^qA_d9EIxV(#^||FZyAIWGJ#^L)Ft_=lN`cyr3%T`{M-s+xAUFj0?w z>}oaV{wTmecQ(D< z{60RawhRYIj?~cfZ_;MR*&f`fT1~69NBT{_Dej(G*6xJP@ve#d%$~r)np+RmTpYZ+ zhYHH$Ug9i9<#Ye;IBsd0WoEu~(%6`ei*b|WZZf!=BuDtN>Bq@jORIqX*_>Qc7w+9k#W;Rn2AovMcWeR$ZpwgsgZg5*JlaXJ2N6^d*}!WT>3f(?IuQR zTmHyAL3+pW4f`KNN?OehGQi%ZewcGEz}_MB13IB_at!MUxo8xhx48o=O?Og z%9Zou+fXMrAZcokF=fD&^TjjFl_O0ZyK?3nGv*V1c^pXiqY@8R=`l7AP|;koH`ETE zU*#rh%{T7ndZl7B?-8O08=Ko$J))na#^^(gtwoMp-H7^ZOz|LLw16hh6*)PZ$@@l9 zB!5_iv|R}BItf8-!eXxQt$UQ^xR^HA{*j$puQem$9x9zQB5WZyo!Sx^5e3Dtbqk** zS-M7gHQ(=~LzRg@=oN2^rm8*v4<6ctdM69d!LaOVxtg!MIY&A9P2WO2v+_n{Pvh;c zEFRF2ZXuAJ(`r}5agda4LzTBZx89vF!Z@kSWYe$sX6Mgzi zs5%5tLV^HB$Nj)@A>r#87ae~!d>*`a4hAncP6nUwoS4B2L+v=PckJ2?K+jPad~&Ft z;Of+mG7|L*3~mf0a1QX;By0!uoD9CQ)iYR7bqKH<(4!W1ciip088v<{GAH5+!j2mM z_tTvkCm7T?y?0&R1FijG9ix{Plj7&SpH-8;E}<_iz4&x`Q>o>X{8WAmzQ;@KlqTTJ zjqdlzoz|*&7`1V8dl2tFX_suvc@XJsa2ws%VBF+Yl)0nx=1R`vO3vd-exVs0Jl&!( z$)I}!g*{};McHzeEk}nEA$Z4fgTE!#=49vP)EEWgMb3c8@eiW%*`pN_GaC$j&&=nE zOyBrQ8{2L91d!gy9>*Y-%RdJ)NAK){Go?c$Mr2Z?gXyyRbs3@ILOKZT8VmtxT%E+t zNe{Vgr^dS>RfHW^&fhCDb~e?Yu*!<`hx38-s8v9T=FaKqi_kDYYJ-XKhHJ2BkLD}k z0|t?mVv7;MwzB%iEb5(3yO|TLz^Xa?8(4uSPRnMU89WAS24xjFNr5Z%s%oRhnxjH# z;Q3SNw>?j5(Ajg3rq@E=dlznzm-k7}j?J#8`EO@-y$<3L z@TEk0v+Mmg#%7ne`ZUlu`E!^V%=$xbI<6sX9_YW219R9*Ll1PwQnwBKlHY^@!PJIv zHvQF2kpZE5UN9WA5n8ta?Fas$PvuJ^Z8=7?WE{fV5A5)v1#E~$d%oBS*Y;4@lQ z4`_@e;zd%3t49?e)l>ywvO2=1Z`K}MOhdI=bxmDdJ+v^R8f}aqpnWcA_fhGnjl+B5 z4(pM!+G+4K&!r0;F&0vLO8`+g=(?}DvHb?_YN(_U9Hp8tGPW;1)y8&-@qcG+WSX_< z0#mKo%mtc>xJ?=_DA%o)hiAgmYI!;;H)~hIaGj-l(>im_AME-cx_|GU8)&6O_ivEx zR7~&Ht)0#Zc?cHMn!RdGH4 z&2C{DzW4H*XJP9gIl^}DO<-G+z*c~O+1L!#SLpb8GBf+o0IOp7lrhxlJ~7_$qJcn@ z9}m*t)1S4LBleoM|JQ2FUnr?rd+X3W%7O~eeoz_`Ps zSzXR%lP_m&`k6WWJ%MfFu9NLA%U7i<71yT!_K%&fsnsP?yc`ox{yc2RNXns3Z6J&G z=}$GOSL@Xk54ZlBoEZ;2uuBy-P2b8_qN#T)p_u;1w?<99lNcIDaJ9<0Ocb?j9psTV zeniwHQBkWMc{b!;q?69bKr8OW+{|q<@02fJ!Uj_gl~_4n%yf0U>T_gT{&ZJI6|Oq| z)-tQ(E`qb`XyaKOr+Pt|t&+?5N>tLY7Sj)J@Rh_2)|OvMy~x|8d^GoU`YquQsJwT{ z+#{5r6HMU9PnUd-uATqNc^r*3D%G{~ZLX#%)pXUbFHBziwtB++HdnrwmPzvikqOF?5owk;gIteyy{d#U-{_3p-mS4a}tczCFl zu9UL*1_z*m7jtd8`HPMt0QELo43MtP^A7%+2;Me83jY2ZfL{lE<|f@AEclZ(o%4AZ7AjC&w@7WT6N--u#Zy6% z$h6GL9r5KR=+tgMWqOA)-FLVuQ=UxI5BU>DzGmhzR)!UyBEuKRK&?^$9vAmExx4RZ zLNQ>lvu-_Hw_lt7_9rRfwF#2cUi(q+GrNu|F1Q{fAPX}kz3_Tmbou`1$vR(T2}S5~ zsyn@NK{jwy3L9s{+Vs2B*FM9$%Sv%s?xZ76G!JOx;{ZkhG#8JjUOO`~z2@hXv0+g% zTgIH#@Yhd=037eh#@47EGVs!)f(=(_2D|qubXGTNrw{pWH-ojuvr9|wCeqJf%e&$k z?DXqQxwsA2nOk$u;2zMe&sMk84%a*}&(@mEKeMF30Y(JkVT!b86!oEh$Jq+H89fLG z3!<())UPU(W20mx_efk<3B)e2&wM7Rh~Y`C?<}}tX&hk(OEOn!f4L&9E$yb?J*{N5 zSKvZ>F@%{~<08QA6li*%-)?RS=W5SY!-q~>y}qoAKMP7NwQRu^)idsn!gP^Ywe8{= zNCwAitWzkkQ5^4=(PZsHpicqo#sqp5u^i!S~Uv`plZoXWn)Kbf-dmLYO z5&RYAi|XR}B1*+7RlxY-hSK4`q<0-yEQ14UM=;nN|NJByN_P{SJ(T_zdMW0Mp69@? zCI{-zH-;b39_)Us;Eg+)^o3^AjuWZn>WLHaW-G4;suk0}-(H5$6iG{psMF>v`5hSk z-iciHpm|$+Pbqx?QwhB}(_!z6v*>8oV%i3J=B;#c+vnovVdkTjw`3eIK<pA^{ zIjIaLRJlF!YbC7bUL_RMe|AA+J$Dj=0@}z==0;~IzO+ClT@Bg^Lzv9|T{F<7mM68O zd5-mDW*@*0czES=Ptf%7Rhc+Jt3O(8ST$KDH}}~yKxpbwIqT~S8nhuKPr$L+ubFsk za5|qU-Af|e=51$3le4acJDl{@WDhi5(CE;_OB34xGyhaqrt}eqsLReTFm$$xP|kBR z7>Q=Ru5C|IX;2Z$SC*FS)SR+FVq(N?C&Hl^Vdbo+GKBfgIrUd4Hl3Xr?|m*#j2isD5h}d&E&127Z2v z!j9Q``ziX^ttZ)MUC6OAIEUR@nV3d`wGh(}cc`WoP=-3Br!IZ^4nJx4;-Q4xthf_yXM+zQM=}4%x-D98j{M1*0e2chAnDJ3)M)I ztsYWTm!wD)aHTbB?tYx*NeXZo%ZC`3r$`^lj_mElE)yAT1&F3jT8*-|+Ul@st%Fik zY#}m|BeIXV>`7)fieJ~&v`Z3)_@2a}@bsW_7w7nP!c*HAANnjQfni$E>vDb1HYgbD zSsu7DL8PtU8UH28v-qLNfG*ja)yk!w#Y{-*V0NU(m|aJx;j|*BU!qR>40DAcF_1B` zcQ+LJnPoP(CjpECPtXRVgk%DdJBu#Uen-5L%^gQjWXC4^+py_9R}zZ4NT(OHAo6 zNI4FXca(c7;u6gPrxJQL9W=Z)gA8&LU z<=ReQz{CX5xttFF?dH4hQq4+BPbbpPcMn`0&vy;gfKa_Fpn6XN)o2x}%N(lhF{;sO zROxqs#KsZ$!8jt?abLQfwlu=i+-LCjO zaq%Zq7jFfub;Y!N>kmYV^*5uX54xo0qHbl&YyD_V3U|WzuD3>Ukjzj;#+EB%JeA+% zK|Yf{SCM{IyX!{?3-lsWK3JuiJzn~n%M}5;?vEaKxvVowRFm3YytI7Ns}Reer>r=i zfQPuJVaqwL4%W2`eYSze1CWR zHI&dB4FP^lH`MVPPHV6{>9ScJV}>ZQs>V)n1#Sig`3^ptK?d%XnDyJ~r{KLZj$}sm z&Q-MpPi%oGCvh<*BVEt=4WSD=H5aoA zoyX-v8z0JCA@7wfQ{411d@EZTba~087CF(@DR$#wdGAjjvDYpLKGCVzujT}Jo~n5c z{0egbUCGr1_)X&L6|#8S>6N7Lu)w}l8=9kfS9tr8{XDEO_?wAG2f}H8u9rx$lK}UO zDPhCJ-4dt>k8kECbQcKRCPkp4oHg-yWPYA)-&Hlyj!#p~I$@u)dT7&AZn&J%(97q> z;Yy>1+e}I0kJ21r{TM6knyv~rvw_M^ESu_8B?Z-NP*TPrW{KeL!qU^}X3AO^CpqA% zs9Na8+0coo7#da0T_QwDwZJ?*+?p~ zPAan2XeJfeNGh_fQIKIL6+X<~1=`!b?|wqST^^bsb8eJtJi+@bW#qD zlqo$R5%d~}N|7nx3FFNOHe%wz9b%;h8=D7VPbJc~yMzc`m?8r!gGT_BOaz`Z{%4znTsVM%!S$((6 zj0t&cexf4LVVwrRH`2hjk4bO)h=932l1ym1{oCMmdHOAsN^E+Uq0%)imQTC)XI)%_ zd~|p*TEYD_P$+u2hvmYNkpdyh*$31Lb+aHw)ye%v5Py9gSgnX^KorKco8W+z2Ra>A zY5-7_fy}7x*F*TM^E4;PdN)O+=T6WAYHcR$!NSt|t?d z9_LFQE+v>rvtRib8RaWH^-=fjOqy*D@hL=llji!t*rYM^O%DB;5&GwQ^hz-Fmw1#y z|CK8A-hnq6qwh|j-!#(J3Xb$}d5MDlg>lnNKODMth-<*axd(zqZT8KHy@N zGY!zg1lf)A6MmKez~^B;+xbKf3y52cVatmwsfnK^2bJP8%O}MO>dC0;Vc(}2cj9a%T}-m+(BujflcQ(Gr}etKMWK0YjwPX9b5$&dV6DgA1p*t68_b z65CT7x>RWXY?tjaq~p_MLpt_6Y^v>XekxCU0O=4->X{k`RfH|Ov&qo4?1T}YKWAzi zC_dv*JmOHiTpIKr=plweJ=m%h&_uV|cNo%`AcaNH=N-1Z)5qh&rv6q%kjtwnWL<*3 z;82V@6yFqzR|o|x6g`k4jbV0BStv|@OxIR%(hiJvq_|ZPVw-wMd8yb3D#t->7Em5-6c8%y^O{YOJ7F}UyqIms4QwG} zvMDMrykG8M5_>_DNEBNti!Bk~suKMq43TqWVf?pz{zE#zdLhTC`rNupj%<@_w4BNw z0%Rm5nG;{cEZLwvm&=C2xhi5w&93|v!L3z^K!(c0$6$)?}(-s5X(s#m|Ar%&?=Eh(|4 zJiM-&Ui)Kvr$(%i-uJ#D8w0$MAPc$6FRLSxsLz|7bbSlyx@L)_tH-H%&f(-9Iu~)| z)gOQI_oDRchb8JJqBb+JAz==>x3Qi;`Lg*+T@5LyZF{Pj8~SM+KD;dPNb;8-GHv-2 zeku?A>l~V8Ryo>_ZThg(e6{q15NmT7dKx1Db7 zQXCl(8ycOWIC#iLOAZ_;a;8NVfNztTg)^fVI4ZE=3Pz0o;Flrn&wpr*@^Ac9E@6d8)cc9tzS_!28WPmz?+0W0!Dx7e=^pt;d5M5Ivc;6 z9~4=iJ{B`hb*R_7y6q8vFCL%hvdn)SkCdr@ja?M)xsoU`$r87KJ9xI(Eni~5I9lF8 zD>*D`&hZIrERYE=THSrjeD?V2biwi0$~>e()_IA%TZvzoBFrcc!Jd8#>= zHEaA6s=!0)rJ&VRA2Xj`HQ9SoFx|~cTl?_^VcyZSwauybOUk>TMZN8S8E)=0`^ zX3RXb3WnoX{UK@J+y)(FW6q5rNr{nP=qjgtM`l4^`W@S(!(|>23#J~i!_;h#4Zqs+ zrYeA`CsTSVnA93QfeA>4-Itu7+inwrv*|yFPLwU$viVBRh;a^~k1A?b;Z#576Xl1& zO&jc#?l!(coUolTbul}J6MaJW9=3Q1T1ScrmpB35 zmQK7$kyV8`-~i}(LKojHLsuq@keGO9uDTlHMV5zOH_|3)G&(le2TAS&obH2;<314W zQ2NchVB$-csUkCmp#BG7C~>*^TK?F8?dov$bJQWv2vUMsAN+26Q=+b*l*?C`|A;}0(Y%3KSt^^(aNDN20)H?aPn#BfKRKlt(@;=a`cnY>l;$Ou z#M7pr2QpV}#!G~SWD4yH6q(dPKh1K4z|3#@l!n5QBZErWK#Br0Pl6!jfisFDq#r`c zOGrOwI}p3@Chdun&vL4Y(5oDwUnJ5KdNn((!##tZ(B`erWk|CUH#ETfjb+A z?_JQS_oYOQo%hv;IUe-^DRL}AirkPpHWSu|CvArmvBKov2*ooiV|e8rRJ!t$zFFys zYAZ~tetd31LPBUjuy3!%Wo3C>Ta>P{60}%Zo|f%OPn4xF(E0(paud>zFN=_hB;@O? z9}FJ`U}0p}S-N7UYkM3^EV-;?5k&Hz|C=TE#>wDXLx?t)r#VpMBbFVZlB?XdZ5RYsV01n4tOZb2MxJEE-3NO8s}%bV6p z0b2hyK6Wx^LdM0h)YjL^DiZVkPl068MM7S0c)XeV8kP<3=-*V>bXE!Cx zSHL9&NJg#GNOH$8jngQFMQ}_DfHO6k{YE}DOi5=TTZ~LdP|W2-r5r2|jb|EbWmeuG zD+IGLhe*mo=)q`OlE-Lb+93IoFK5jBFV4=5{VxjFVv%$n9gDYdqrK7!+lg+gM=+t! z+ky%GHd)CZ-B@KM}F+WARuE{{RkKXC5;;m@Y$9JDhmjj$HbD|NawvO40sC1 zCZO32mx+Hw+8MqpR(FtlRGOx~q%&J7Y#EypLfD$K})yY#= zddYsW9~m-NO+*smhjXty&t5W=941D{KGSQBzG=cOUj?jZH@|;yallIr#{_zclaGKi zHRKbhwbBU*BO(0|n&4;pgMpShMeIlxu@mT-S63I|bUtJ!N0e&>SdSJZP`Z97UHAy; z$J0`aTl9@D8Jd2pYdITU9GC4NCG|W6M8Xx7`O<{7%vjU(S7@_iHtZ$G*|5^6^%|Cu zK<<{EurPDgP+(-R(P&h2#`s3nHx<1Ol4oq9jEFc_+tA7(p)jlGVkl0d&MAhT>2A(ZWA6Yz3nHBbvc3|Q@u(9SP+6Z`aB z=B71mZ5NL(Sv7qLlRh?E#BWq5_iWUukG5^_2G=;-HJXZS8q?SC%C?5fab%=eYGC;( zJl-85S}_(lQG9Uro(_h*F1H(`gR!EE_pldn(u~iRb2r$q;f9%-SF~dawc6D>i%1?t zu$I+Utv(o>*s8Tl3B~k^r$;+8q>8a&_VZ&qEPiTPm!5mC3B@o!m5HfM=O zTf*+TWll)Z1`%>Y>UW)f>38zyy9Hx9(G5noEHOk0pd2u@z7G*D-v{?E;*0^vEFxqt z*JzuI@!PVhNNuYj}y{QzMbq zSVxwYFO03>YHTvGcB?M7V$0isd0Vd4Dej*9)b|$Vmuu@_=|8`YA#Z~zLk-o}*y|${#D+2>zuM80xNFySQe%&=OKxuxZfBHQr6M{Jw zFwEvow8R?P5N+ujI)2f+7eaY4`V8u$oVvSrT_aHrfy7CTyqs%ksils|t&EWP+ET}r z=}hT+#DhV^_GxIPt*zo?iHd)$s^X`)ivK}e@xSexRdK_04plT{KTaTfR+ZqK?vOn# z7Mu^xfy{9+hbPZ$cMWQ4RJ#sdveU`E=veS}8-TsqH!>gvdiC^4aCiDP20nFu35X<{ zTL^tmn*K6R^txed?>iZ`p8X9CTN7;sK{95&;7%K}b`lI@)?E5Ct1PzFRZW)ApRHDE z`r)OK{%jxyMU&^p^ykYRA3iQdm0JEcKb6;6@CI?JH ze<}-T&iul$^=Cztp2i=q%?5Y|rvB{G`V=hm$j<}ND-y}q2H^<$Q{(4xSoc@e=GKg?`78h82 zIAs{u2#EfX5BgIysoF?L2f${HUguU?BvpQU3_TG6Rq+zG&dSQKy1DW9-(hoOdaN6` zwQln2i~XsH=ZH&mSNY4%_TNs|yuqk&E0m})A* zw7#lAzJd{Dp4KIa25GNqkl%GwoE|sGf!D`Wpjy{BE&AaEhR;@ESnn|WX^i2j1cswG zshfz=u3^9kt%~rhQ{&NgwT;(@SkrjBT;p+Ml`hMG(c=aT^&dZAtOH3uNO~hAy(SgC z)T);OW39u`3y1rY1IF7DRefJoRp05Vx-G8ipS><-7EKo6V!&8q1ID)#$V}fslxzP> z9kRz_WN(-QnHw?3q&lj<7hx5%GN~7NeQCom6CPfZHWF(MhbGN&f`##JY*CmRfNE zv*63Ij1cKo3kZfA1Zto{bOaY&6;J~h#U~*BH373AeY}I5?#9vPRyWFy_D*OYWcdUd znJp%Bhd7sW=IgW9IDV0BV@n_@hwqCK#cb8(ICdrLCM6>})MB-TK*fA1lumy$L0GU#miMeeabdJ_U z0h|uXrkdmmeEsX#|M9$|L0N^elsdDRT9J#8^P)?&nC%ogbYzD&aZlB(h95g3Kav4sxIFj)#uWJ?*K%CT~JW!YSNNYeJZTf ziZ5)%EFi}V1A5R%qkY`RT1O+b=5((mne*=0g)UAtSu?v#Ni+_zp;6WAQbX=(ZTp^n z4xX7gTjoMNoqB~W6YJTaO?_Jb{zCFD0!g*pH2<>O+%)PB|KGZ4>aULsKhS{-vCoeD z{JMH;Y3bAd)_QUeKa~xi({cwsMgus@0sM{wc%J~y69COEPiC(+B1kepvdzJKQZUaF z3_|M$(nUZs9**T*}k z2FcrU?5bj_z#gWVYk_YMLyAXkeKi>$>NdUHEiLwm2S#OFJuM-&WlH~aluM5} z$b8^>a!^^@*LnQ~N;~V$ z%*Q1n%T|pytQzm*1(kf$s`1|DH^1?#jxas6z z;$fv{pWiv4iw%(0%9U_3I`3NSO0@&jg`{^a$h`l(be)^keH`eU6QGR(eGW+rd5dxp zNPDfDHR+33N@W8szx0US@upBflq=10EpHTKPJGvzn@?1!#=qZ@Ti;jK zV4fKYS|F;254C!l`=es|Yl`Won3+sKvM;A4&W4$Dq6h_}I_}G{e3=Y3RR=AzTTFNj zHbLdg&uB4$yM;AGo%1OI!+Qs!@yX<|-^mUfiDf5!nyw;oGSlm7x-+qn(^TQs6A;a= znb+&D>0-&vnGHT#n=az$ju8Evs^}FV`blxLzIgW3)nVqf)M4YNRfm15Mz5-|F>EbfSMCv&3mw(CrcXpe(HB+US(Od-3RSYoGlDl|?zod`Xk(r5 zCCe*n&OOd#J%RGd1pkf`WwN@nQ4XFHC^}AbNeab1!Wu@r4&n?sJ$$aNQD^?PQx&qU zEz9^y%-?nq^kSt|;|_uxDWrFH$c4cVCGIB9-I3WbxJLGkP11G|n~~FE0CrJ=#Pb?f97f>_q*sPhbBrwxO7CV|9pe8d-Ki^7G=bGl7^DC7*E_pGX_$} z;7cRAb`fRfUlb!siD~9)zO_?)*e)-dPk5Z4CKBAqxxtawpsQ~AWHdJz+AH2xDXBU8 zvuE`2_T$0#1)(|KKFqc!h)J}H@5S_^T&>)TcOCV6*gNQ9O3u1GQJc&bO4=lAZITUb z!sU_fQguTBA8BtSSD0Ee5vF8sap_=cHB7AmlS%t^)W-mXDdC+;bk+~3%HBye;2YSv zthPsu8;Bx;nVy?6dOC%;UUtXJDhwi~27`-Q+%RoV_tx)|_2*MV50o7`x7{&wN7hhU=Jvvr4v3P53qu&svx2nRcJ#VTp}J zr!}cAdSi8gMEhb;h$f)9px52C{Pwy+rk#zcnY9Nq?RUjl`$ZY3q--cZ#zY_+DtRDO z(qL)WFU$5D+FK^Rs+a%j*bnoR{O59@UjIG+g8a|}wv)BAneotu);~c+5<}~Lxr~bG zTW4fre=R>gx=|7PM&(M*yVc&)=x zQe@@fkITX~0CcVW=EuAFs#mytvLxA$D_ozm3eQ&;E-zzTxWiFWWaZtiaDA(A{Ze>u z{lfD~EsolcD_ozm3jg{aR@J;0n7D9v1sS&iDRQO;wUo=Ff zgjhPnPXL;LQk*Ld; zOAb}g9o+-3&a|(lL^J8mAj(I7t|r>})y>VeS^Zhuy`(t0i{i(-n;ZkUL(d{ISEV== zAuK?R_5nf`|GRkfLF%lqe(}YBcWObyw#7uGU;Ip6)MWAReodIS)4HpBm3qaEI&8`6 z0qoc0JybSo#qJc-gG5_g{vA5*oxk0vj_a!Q`tlDm&o7B&u77EH14+2#?@Y`%&KNx; zqBMIOE$ge@{hTp+fRMPZj=!7lqsqYd00`v8GLV&F&^~HEYh6KSjLKSgDDy`9748ng zC>bl`;>^!{*p=x}MlCKdfve@gpijtd)lXE43zbBDXkM!d5SFyo!TrMIZ%Ezfs*(F&HMSD3VcceeeT#mJIck?Oren`%wuN^!=bp0vw1+mz{A<;Y zk`9EVgzi!NWQeaumsi?PZgt(FT8mlIy&)+^XYqH2_<*kQY`A^ZPMVLi&fVDEi$`-N zSXuwOHiTEx@58*SdquL33Ug`!e@ZT^KLwqgGl$7>F}0wvyJ?T~sp;+FwbEzfsYUy` zn~0;E>96J!-8#hF-B9dqI=j0eQ~ILgwDeG4dIQ&fLbTINOPujN+Usi2y~2n4)iJDR z5AYTG@-F+nH2s$I+@QXb@KO8ry^u4zZ|^2sRUeTfXtYc$GNwe-d9QxXa3KWGMH*Ee z@^vn@tFU=(LXJBOR2{=1a0A3>0XRVH=MMW($FSg=t3fQ=?FOO}jl783D@H|~2ywsf z2;sW5_+e(i(oNO44As?)5$!0Ck9L6?xwjuTg4o6WtCu7Mcu5Rk;>#dfBd@ao`qJ^<&ae+F^Fd^`a#b; zC94$`&Rk$WYRouS)rg^JjTqDKLxodcbsAexEv-JlBHv>#=j30}jL^y{*GA5hVre5C zE`QcvS3d9&EV9xkwiA5woBX=Rf38(OkA0p4|1}&4%XwN)&oyj0ofVH<<=@VcKgSL| z%TU?Vit;pz1;5ygR@_<@gO9U%Em1Wve{cLq00+T=WaEw8n+;oa4E7KIiaF@GRL!+t@*=uMNFf=-d)LZ%E zfJR$gRyZ^QF*IGobxj@4l6lP}#XakzBdC}POG#xmcPpL#6IeKereF>Rdb&sYvI%bmlF*iPEM6N6(Ey$L`k zO%I6$M59j>vpj$IVan)y^dE1A$}8@Eym;3+Q<}7GX2?@D4%t^ z%evhY_3Y|mFL$YzgV;F$XM`(a!9?2#2n91@U!FSM44Qx$i(vF+s3!QZwTnD>6##*L zd?|zq3PG|%<;d7__o10nx#*GhXdPUv6c?Yr`|wO^W+AuE*1GuXbhTX|c3tg7Ux>Tf zIsV&qwLbuauJ%GAeOG%U7cwMnO_Pu|T%oS^_5_k`RY1w8~1>lwhQ zXV?+%%#DeT(KY!}z?aiI=oYFwIabgND;hE%+UB~&inv?!x>o76Zn2_%w@84mao}rA zc)F}xBvRu(Mw#oZTPW2_Z`^6@Hd?ok0^SH`HVPZRI)k}+`hQU+ z0*R~xF6%%IQNGwME_I6`-ahk2pBF4r3vs70qSPCr3b~~UWp^TOy+NJGdP5iTuKQI&BQ zAhZd0!SGWs2;i=aA`aAt5>i-uZnH!h5HvLTuF<5s9{T6##VBOC$A8I=)>&n%v>xHSu z6taZmnVkRkXWv~~c#O2)vxX0+ww|=FyBR@jm^qOTi6rS+6il)3;9>BqR(0DC&eMZe&S5?{P^fDz*s^Vv;5aOG$ln=ZW^;C6n(dXTED16c7_~< zAnrSGD_J)fzES&e^yqUIJwGng(z6?|m>!3wq{zzi96kCLJ^F>7PESvMec=HyC03N{Xyp|3PDkzD0t5AtBGFMke1n#c?&&_}GK-7*><= zfJ;$RLbh*M!%#}C0%1FS%7h^DUiwNF3-^KA{Fn>KjCweD*i9%`H=jHuJ;GLjQm61b zOxaD{4QY$a#gWU1TxOB^I1+`?ts3ZQ_2HF6ZbJC*U&Q0%T}eOG}^fsc3v1 zpgO_SP2eh~hNccL9Ph?HjPMh8@Gv%JadqxwDOD032lo|zqR~ybqi*qx;lm3vqk1U9 zV;F!!FklfByPFvg8Ij#^x4PkUu#J{8qd##N#NguUl|J6~B^(wiT@cE4oG^_=cv;o+y~S}bPkag=CM6!-J)Cm)+^c-LrD+4MgB=Ov^` z9(mPJN9??Cd6ViHpky1zsFS$yT34yy2Mrdmln9-cfE>KA23AB*`uJgFLGGo$wtS8e6w*RQ56&*x#8Zg^t$ zRyX$6GrGo02dqcAtv?=l(fW0m;bDu(x^+eu(^OxbVrq=|jfDE4rvC= z0>QpwcaERlVt0xk_|V;|8s_+5S0+5*gXghpxX`W`xKQc<6YT;{(WqN>%~Y+t_$022 zoPKf;&rmfdzEmqmwMIGlpqh$T-NkX&`V(!M>BX^50Nf6jI9819;^hZTf#X=ooni~b zc43-m|HAgJVre@C=z9QAwK7K%hM+&@%NU`+7ssVv7+X}wm@T)xC+0+|G+lrCN0#3jph}HPFoQj;j_i-CM#Z#vi-BAc@6-0GF@u~NZ4{7#5s|gM? zrfeCdTw~-~7OC z<6Ozaex;k1{l+KaVPpEw+_xJxKB>ik($bXx_-WbMi{fE}$tqq6R^t!KnU%XZ^G^Fa zP}Z^qT^Ao|2PIZ-U(GY?Js@&SPxxJ|nbK#7inf6sQUJkuD6<1pou`)#Uq1^!bcc&G z1Ld?${)EnhCv*A$?9rw4rZ!(gxMchz=6rW3?9C`V8Td zbBEWjXwu-{L7HLx%8(aV(h3-xWrUs5hzTXNbgBpkVsyS|h%=-)FxoXyU-hjoxAebN zNy68iBz%uZF9|PdiY37jXD30a(t{KMr3|XxX&Y7cFey~l-S%1|yLJP#i2JY{23)%3lputup72sjtogj`1L!tRT41?A5Ko4>7I!0^t&vPvj9n!U0|2k zI*KjLMMdbG{Laeaq&OgmpkMMN7bS6adFs+0(Pe`DC^MY;0wY$Lz;p@?e>htZT8s-w zo$9P@ZpqsCh^5VZ3Q=xF&K7RHJn+{``qoV$;)#nd=O>cXNWSvxo3ETp@Mb>m;6nqh zA3sFBB4{5yK4h_mIflHiE~H{3J(o}kXxEPH;9ShgBnnM(Qp_T4=BBw&E}IKwAxT{g zN~O)*6gpBQz4TN!W-#ii3(dW!HXg5{lX4oaI?xGp!rlBFJp6(Nei(eDOVpk@C1MEa z$9FWh^KQbD@+H@IWUpZr*1&rWR`z?TZB1IF zg_B=WF{C`=f?AZA4FMh+S#Dul3X#1rn3|IqUBKA}VtVAI>5ERcEhDZwO;Uu)v+;RA z@F2+nrb#r_foXt6*6##NpKl1AmyYV9E_K6tO`7rr+*W>JcKIC+clyrL zl0mspGz5s=1JQmd| zs2U1>5tOTkTZLy+-s(l=qSl0{Ao#7&>W*%=+WEp(I#C%(L;bgAN`H#K3!wHUfDEzY z%}X+_RTtWDQx1vZ&czue9^%U->MN1+vU^;#!-Gt?JRw>k49#AazY>}DmQS>TYBKEw z&?Pt|U~>>Z3Ox(q>kTX^8zCgQ4oOnKC29BPTLT@$77WhE9~i)!vN%(HVPlcHRX zOFs)dA(xAx!mdz~9B>k0l*_>+bGamXmHW7K!hb~jNL>oszud=@VBs7v#$1Pnjij8X zHeWwNiH(s*QgJ|iklIU$6QWm+v}qqxaykK{0)O1cK>6v;=ps7w)SpVdY_HMqyF)(r z5%Lv`xn3O5EEsYQF+8YA3!)uGJ50*5%aD_$rj(GSCR%OKAYq%GW1tKJXO~S5hhuh< zv9isxl3Rx0URVG_&#r+H>zfzdYz*D>t&|?k6jNWBxot@n3o5aWY&$Hr<5^}sjsZJx zGur-nk_<;>>0DG+&(AQ4Rz#v^o^YELqEP z*BrgkGehGB_;c8l&jaW)5I6G)dXOMD&`r>nO8YM$e3GK22?$Gs+Lk z>ql%_XOrz+E@#+#gdc`weutRXt1Wfv@f!JGff|zC+i*o&P)J+3Ugf8>4$hPdK4MPm zF@7rLP3{Vo_NhY)mqRwBYrBGO{aLqMu6Du!S>~!6KoB}pLtysL)HMf+DZEIPIw)LVB@c=3R4S zOqO|aD08dITt+r+w>Zu+1x}gz@nvdSW3Oe%HL{cVFq?ySHaqMHoWd&yhor>x@VJ4_ zYC7BKW+KGw7Cr?frae|2v`U+Am43qgYNe9tINM{wx`}s%t>fK6TJGTC5SG-m%IxbE z{cC9C)X?(Vp%5>&Q-PNhw1?t1M!s-zdei!+{$?-{-PQ__vC#_f{s2BaDe#8DCea~0 zxN$lgwrisiOg)uS6qxC-=n?<$WUHbHn6sl3{wad;^+QOx2W^YM?~Be20Fn1-AH_EaX$xrV_- zjNL1d3)ZRiMM36zS!s*!@Nqw7yKyVJAo9^3-D9aZ*EQt;6%^B(=P9(&{{m3$v?MV9nmJ=sshl-2y0YhpiU znGQx*XeG%x)LVzk68KiCTBbh3l@sY$Owbk+pf$8pg{IqxAD!b4cEErs4M>zG)2vSN zgCra6f(w3jrfwnHr3bfW0|h0ZWxk3?vpOAuOGDnOv>J3(X%Phuc~x3XdBGi8Q&ez= z)|3*UYYGU^HMr$G6$0lxjY@Etl_+?Z7$I~}NsGKDUoxpC*SijJT_I9clOsgeKyPB& zm}GR+-TR?R>n2gFm{a!v$5G6wTW>l)g*f^A5|;Hk;==yxFo;eaK2e&?y#uGAMH4D} z3ho`pk;@*2Q?7P$+1qeu96J{yk-!ma{SZ=-RaMN~bd5#Y!*Oj460!lxf(q(K&PDkE zLwIOP!Bvwv)wXz`vgg@az8l)xL8kdT1j4q_`QLdC%yVF#1M?i1=fFG%<~cCWfq4%6 zkKh1XFzq_uoV$`$OPl^cl>8}7n0qr{DKpn@Es`NMT<3758dk4ENc;pCIqz>=R z9c>yB@K>EL{_WTN+~ew+ufPvoPWk7B9~%CfU5lcQ=`jHJ%_ zya|8`pf{rTi^BK=0N=kjoQ*h!AFdN=KgXp~<@Eldlg4i_LB8j@v2c6Fi^%rhsPtd@>jD* zXV0HcMyqlM0MamjKG}4{f5Q1>t?TK0@&OatTkLnw>j)&yCwH2oFMarO|zc=o32mH6|ayMDQOTSK}?{fKnin|=B`c>Ha!V=DT z@Sg3GG(YYH-J~npe*Ez@VrCs*+w)3}1L!VDx4(#U6J@|Sz9#ZHd*INN6j`~y7uaC~ zXr*Yy0Y9dndW3KhBF_sHO9H5Thtr5V_jPMupB;nGM$#yivL1;O~*C;J^oL|B)e_xnt(3Iv}^>DO{cwB_42zacSY)Dpf`_IJcSwT|{R%-YBB$oLk-RK<&p# zxjtt}`Q5LmmGT3C#ZvCj*d>0IBdbly1<(qW`sGYzUtnBaf}(S)_XxT;YCn!1ea@oi zyjk=d0xYJ-p(!b{a;c+7-=asq(9`ef2}hf>YU(@<$)e!iM~aGej#D|=2K+Cam`r8+bvMOL=CQuVD; z^@|25xPtl>iVnY8uW={4ScP`otXL9E&1qT#tWMF2?!NA2pp7ozYbyFXJ;7y2{JB~5 z)1UI@2dUAy*=&4nc1$EWB04v9r`);OopEH2NOx}bx;T<+fvgYhA}TsJyKZYd9_;6^ zy0)#k@!;Q8`_j_)0pQ1j&c92H2Qe=Cqn(>&2`$1;oIf|a@np2-csFbG#;dAxvk4`T z8NEPytE!jl($(&4)w$W!>0r~j*)xD19!#;_kuB;ClQtUJ)^r;KiX#i8b;os)tzM|n zC5zNLace@vZVhJ~Qyx5*vZHa$4F$#X2hP665DlJICp9WVM^d|&%v?_)`WN3XP+Lf* zWcRRiFVVT^k*k266K$Hcy%X*D=_Pks<%-vi0grxn#{+9=9lpf~b+gak_6@1COkcPx z*{CO&I4r#w0N<$V?~WUF`aD}v>|Sz|A+gAfpR3(g$?j8U)tFQ}^Q}Fo#qLv&?Ek1K z{zo4x-ag)a>hR#H4b0W~D7O=&@~8Ttr#Ldyig7b_*mjSg**Uem{9y4e-3?K^wg5IZ zktE<*_8ii(XBZCI7jf;R>ZUDD{w&Va;g)y-H?wcFiFB>sPG9X9AIg3rxNKRsdEcmA zcu-(*nTxujN<0BXz@PbZ$ff7`o|ol?tT zek$26cT84UimRKQMPet_E#~}G;*fcBe8^nHXYv6@uWvw}6?xSiB znRmLwt;(h|sH@Lql&GtG-QJsosv(C)i=b){EnHF?(Q^I7mW7XR4Y?*hd~@yh0iyZJ z6Kj<-n~{hd>X;vhVUXsdgO7fFwDYlDAFUi`-cD|vh_!;Pbr5plsr(H(i8I{eqss{K zq3d3k(Yh%*I{(jSXR#6L4r4>APEPL!PfuxeTMyr5eLG~F&X(#D#AH=$&d2VqiVbJB zZ>Wk5XSR0{%b{$MC4|>i0fi&n5-^T%Zx)0qM~3}AL&0Sb3s<4~VZ?TLw_CNeRV(?{Dd2#Tr{O+?4XG%2koBM$W1vbd7C#lTY@-(uh*!Yu}tOXGqYzw+bP zwu8VPG|+7#3P{nP;s{M5vrU_(Pvbig9Jc5d0}DpC7<42ND*BPm&pkm^gzHjV6PjrUo7l7xjnzshk7DH! zAyKph5|gP+zf7C%!v5`J_eX7QwNKny1Y2byj|8O}sjXPMYqVOw7+X<`JgUt9^Evn4 zneR*{5I}dkyEBmQ_dd=&=iGD8J@@&&*DjdM#wAukNStD@WFow=d&BT1PccX>4W+&h zbzaAvI?td`=&cNt;jJtqK8(c`z&hBEcj`O?XDETyCtQP{XYl`ClMlaxvT;}rS1n$U z>dv35-Ksl37TsiIbTk5W&+n#fsh*#O#w~T8L6z*l#PitCGq9D){$reHuv^z3Y!XEC zBRd3-=sW|-j5*Js%9tYV8bnV(ef)pO^9)$NE_I$kP(HCJr5c#-s+?yKv;w)uJguI?sUWZw)xlp#Ei1>q(-8c;?PCP#-XUAmz8Z?=Jp{nr80Bx;Nb}ZuCOPWJdH6<*nzKn9h$PBGH`GM)8Z43f0$CGlybGvL4mgwlp=84O8j%f$nbto*7p_J)%rdJF>@(f`O`$jVy2kOf%- z4Ma9%5+MRel8^&1ShusmyGT5?>r3p*I2t{g2AT+|{p>Ov;s^$5UuDrg)xOGkuKXY( zoVxGotH9}4DOti;%kyL_jG(NP_!!U~xf@!*-`2dc}@9C7WB z*hu1Q{zMAMmjqHpfD1mBtBG%gA9zX~AS@68=@WFdK$qYA8K7I?$K6#h*0)M+635-xa7wz z_);1}Pv^lBk#azhoO-Lzq{ZXpY|)G0?5+znX9~2UOtZK=;?p?PTYUtb3^a&&7?egV ziY!?^mxwPMfSCC-;3?)bVujFfd{7fg-PL3W^22Hw`lK)%)c#Ch-gD%a@3lgH46XcT zs_tFfWtRCpwG`)oOxoP38b5|N(MEAmlwXbIPC{E$Bif5Dhp60ZcXEBT)=7*Mkgxt^MZ@jaXDtsEMU${eCTwULQQTdx-eHHkB*$&3}$R~G{iA)^4nz$dPGj@Gtt#+Alz`q zSE8Zwtq{MOL&?ggazLPGXryo=t&k7P=X?sPTitKO>F`3%bQNOFMk-aIH?|%&2eb>5 zjd3hYa%SRX4U$VV4J^zWy(W%hG*DfG*G;WlZgqS)8e^zhn8l<#?eN`5&Ol|-WKvF9 zr4db4+B`M!l>6`B2oo=pN-@tq?N;687bv+{$=e9j-R1IMr@G5n{Q~1S1uhgY_bt^T zfhlJg2U(Cvw+{_~U1vfTD{fRT**KZev47}N@* z`iM`@YJ3x+jL)gg6C$zdz90%l{X7u^E8c(cX(fCmOPdCJK? z*!~qjOWW@_vO>Ci1KZ_*GwI$eNpV!gU`ee|fFFW~0@z=G8r0sG7l}9Fh=_99|5!=U z=cKD0!pr{Gb5R!B)MFBqLo3s|qXk&KM)+MhVvP(xHm=@H435)SLi3Ck0$Mc!GduDK zZLo0FkXUeW!aPeMsvO(HRW)xGbaOM&S#|TGs|2CS3tNFQhz5T(^NbWZt=I|921*fU zXS)&M(wD5_kY`-7N}0&+q*GvxvD~DOiY1p^UL^Mx*NV9C$3UR9Qb?yWfTX#5^txc0<88D<8(-bF(t~6dCMj3J*f|t2YOd>)jC-d|&m=Re9 z7rUOuSW-#JA(<@sSxrG6HcMsfU8*888lngO8&}^41eqe>VI@p}Eg~Ev&vYnOn@g!- zY^_SCj!nTK)id#zj(p~7fywM!mE%Zj!B2-(Q^vmY7!)y2G?}b|xcfl|HKAv?89G9M zeqSm@R6;FzMk76d=%1)!xe>$QL*ng-l5S;MVuo50rxN2}Z-ij~2I{R2?5|LPI4>kr+meEy@HNEA?Jc#~O3@vvhIA6_ za#sU4cEnV>mR)6qs&NkpFa6*h){324RdQs1rU?t?R0HNu?%6ErYvfDFufl`c-5Wf*S!j*iMRp@7t((-7K^Io8M;0%@vAjEA6_ zw|+SeqNgvNdKHqH<-38qZGICtAywS%Xv7Qc^`F)RJd3VgrJPs8JcB za)%*$9Z|**!8q&047DPBs>B0WT}_nHX?ddt#MCt+xM*PT4G1nB7~Fv1LKB=+h7Ya) z96FLLfF#+YEP&mR#lQk!C^mYE4F87bAO)}wQ3DHrp_o=kCLSQ6)kNtmfK(>Z3Lq7n zRsgABDS%xUy}=W9r1iJ3A3L?X4b_uff+!M5YPr6dW7{cf26ma8CAh!iOl*bB72 z0`gHu>^derl9j@$Dn!q@s#{&WgZUNYO?H-K%&)XeL;Wh0*=gtGNeWM0)r4tqEOnzNtP(`t zj<+a@L+1kQnQfBD>^964tyVKda!8djr#oPON20%c2yx_5tcORGcUVNO_N9exwFC2) zHL2;OH?><$Cq0ek7UP_k5vZq=Uc5gwowRE!`nN;Ug7BfCBvYa*djG4Br82n6cw_e; zUf^|Ms?D+?sZChaX4GLMKO{voc@d1hT|t-uY#Eyns`ARmA|N4`DQ%FgSQx+IsIQqd zzHoBmY?vZ1pi=NI7wks-2Hw~&wSx&T;$eJs!DCacUf%O^Wo*=);pl1?1Fg8)cSsL+ zjV%3xD5Y=Es+EU(RzZB!;OZDIc)U_sDICUgKJZ~NX^?sqjjTbLv_G;F)LqNHme>of zNv!Nt6{!?Pg&-NbXJfQ0X&Y!8fI)4bHAy&_WX})GB53szai$g{(+)r4-dV)U-r2iA z4h$b58nfA|2xw%p)ul&_13PAs7&~V1#Ew~UOFnCon`Y$#Z|<8#q~3i+K7)i^EwFm) ztQxX19HqYoEM@GQ)yz2)$|4!`hvV+X^n_d$m1Eu_l0cT=u*+rO|?E-80Bt_ z%+asv#4>i3QmVlqP6U7-(gOv=rC;63@qQQ(3Mw7DsNxs)w)yBpP=v0)JkUP49d+m44Qd{v-2v}LHx>*p#uI+!~ z2J1p#%-Rl5mD0)9+L^+Wbw{GiN?Aq6#Ec?`a zlqdG7^^TH#YGv?d*{7D;v6ge?B#@IpP69azkdwgw zGzpmV^@2xoe%~n%Vy9Eb@S{Gz?^;Y-?cJ%abLXO+A2SxR+>H-$<<<&6LoE1k2w!>H zA$+N$_tg1){wNOXtHPOmRRK5Oax+9BzLqF+H5U>?|J43Zinrw~cnf((n>+B^K1CCU z7h0nNzkSVm{P?bZfB)(0g%hAMVE8D*orK7CB48#zM|z%MH5kXG+|vR+Qxd!@C1`KP zq!FV0VKB|lNBq&k^`#UO!fcaMwrFRG5=V#si88t&0i(f0M6EyrgsYNOQ%dg+qe z9P;JoHz9a{YwyNsfoV7G_#FsfPt*?Qei&wiVCGQBi>Xu}^>9v#r$RQS6??K;Wqif4 zg7a>vuQ;v&9miK3_sOiBr|{EQOp&iR!VKt^&*uT@>W)0a7k-$#Yh;`{A!cVPq-{N~ z%?=`N88(@5lLQuDPN|ShW?{VSiUPICjL8+S3o~d0u2H~WP{998;Nu;@IAsf%vE8Ig zj)Y?R32hAGZnmpb+OMg!-Awybeu|Jv%l%?Snsb8<+lzb|K?V54dp)K*Wnr+p!?PYv z{%|&mRWphU>dF0V(T-xq8t6PrK^KHZ8Ib%8ko+Ww&wvzUfD|M_im(GLdHzrt<*mQe zRbRX?WWX0Mo8H^w{Nkk?F!WY^3A{`#_=xuJ)FIYZ>;-z{kCMDO`axT$q%`UanM_eBWu+k@6Ir=rOYf7E4j> zzjr+`Ry&|gYZNU?hchRq1mm!8*Y7I8Mk%?c(n|~ z6DsAcGNC{V&l4!KIwGuB1))Fz&Il0EQU&$pGLb&Pw@|-t=_}y2{q(>++Mfz1VeZ^l zaLeVxpIu*uwdU4d6**tO7s}aK0PaCt7m+g_*G0;kw?$?JNFn0(;c~V0rd+8DWWr1$ zhu&BO$Og$Jl@TUREg^X~%Bl_aYu$$wvT4d7ZEq=83*Y0%rxw1$+N~D8e?Tg+l8Fe^ z3*Yuv9Sh%IM9xu21ud1rN>!x3AmrSDLlX{=<^3Za@ln}6EdenCM5`n9{ht(nP5ION zEn+cS6uAYc${;C8!W1A04yckSg@`~z1o2okqm|S~@A?I-SuR0y%98Jb-E)k)+Zm$XN|4+QOx@QJUTY&?Zg zM2_KVDz=C6J05I`iqv=Y6*_AJa3s3ExpzOqq8;)jO8JSi!wS}w z^3ja_=Y4w;7jV@LpJQR)9R6zjX)4gB7WBPfczclO}qLF~&cwBOmYClTwQ>fTOUon5~vetq_cuusyS`3@gXfgGy^!=On8-RzLRfuKhRzsY_*Dv_|mt{|ZKo zR_*52J~T{XqtfV=v93R+9~IUaK; z$yL0^)r!1}%(;PC%N*SWbXJBxoB-31hZ~7BE77(G!5Bo%E?!MC2|RHK66Gm^OdZ>( zG6GXC##(2D`)JAW_^h(?#^gZXRP{j*vrXCUbWxUBD@9Ak%2K;`W8HX%N;ot-TJ=>V zPu0fiwlcd4MJyT$Re+LW^Wg>DZHr?qSpI)QH$*8t3j=G+b5Z2Gu4V67dXd(?uv%h$ z_(!tD${vcn4@!^TEcPkE$3@ng_X17q-g%2`ea?}S!22WtGu}lPe`&zK0rl4m z2suo~fHT{D1ke5uL(d0M{bl5N$omKeJFkZwDn)X9iX<;lW4jZ!JRL!fK{tnSCJ!6n zRFe-7w%!)E;tt282wF(l{T;0;sxVO46q+3hdkRxfau;PbT=`BY96y{LSAi1>JI=F1 z;rzN3Md8cO3>KiP-KD#;xce17M|rBx-#P-V%oL9K@By}4x?%JcruoW=2U8yCA$5q< zwgQ&34fti;!AJ9nQ#o*BV}}QcWVQkPva9c1=Y~)M0i>LEW-H{{5vWBl3SaJ@jl|`a zRc8=Nq>m(y$7OqT@P|}=cy;w1kJw(g)&mEJG01UspbQ7gxbf|O#hG#RrPYO&$gy#l zOs_!_BM9Ec*eQM|e5-^oZjFgkjwG&U98qfp22sk<7{5xW$J2w6LWO`(Mv7%|NT%K> z73SC66$J=jASy<^+})dsmgzY)Hk%eG^FE4$F_UL*99bN8E<@E<`O88o0KUBM#!AQRY_&$_9JaVG?&mA-$!D zpc%y-$t*QYm3qWn@0uYqFTB^s`(3o7^WH!g7l_!*g~x5Tm%I*t+veTyW}ni1pIZJL zn*R<7RH4J=Pc34EP5+DcH8sc?NY_yhFit;P=FC^(WxJsgoyoTSc&L-#+{g?i)z>k% zjMsXNej6ss+GIU}hBu5I_+PDJ^JDhcb2Vfp$aMBUnATGOGHAWO<)S1eq;B3`VC`cC`BSQ^z;W0AO3g+R_?~#!;+OOWYBwhQ}d!)?ybw}8>oh8wz0g2W)649L{ zQR#q0aYrJ$vm_clAW@$q5#77Wu)L=WQkP=K1^FyCkNs^4GL*FiW~3WY?J=2cHclT|<_1zCqIsO;ZM=8e8KiNV>DoE*+e9+>x5@EU8Bip1RMG zTDwE8&3|ecCK`VcWm8jj81*An7EM7M=|jb|9IShU8{|pl|fa6p~TtNLqh}HWWRZ^35;ZzE@4TAS7tABS@Gr1lIN!qdw6iNNRzk*8YM)B3C&o zBpRL_rYbCkAnCOAAa%w!kz(53{qWIB3p(5b9&d1G?64ZN5xLmpZ;zjVi5PDfPi zeePi{@oj!-(cZ@=b}d^3Bxx|{42GAToEZwl_5D~Y6IhiV_z2r#V3VPMy#WiLh@%Vd z8<-kz&Z0E*H)g|W&QDW)sXxo9`ZW$D z*QFu38+4%h)hQ&WrXvwfoT{%bS7fkgEqm`_`zL9aE2gPFi*%CG+Ulg%R*TkFP(EA- z6D6eqNr)1fSo34LjyMr*`3DJc-P`xFN&H5pGGl> z8?ZMdDI%Aus-;m(h61)BNs)@#z|?q~Dgt^+QR}s$j#r90UMXr-Rz=M=-(Gj^`V}9- z>e_u+xs=0jGj2UxFf2Lg&%w@pfW-`a{<+X+*#)-dR0MQK!g%qA<+)xs?eF?rE?y1w zLxfq8AW|U%jo3k=Tywdph^UxRxXZK~Bgu$gyKCVt)$TCdKJ5;|U8vm^aJ#e{Cp$&< zksIJFgL}7jW7kp4h8v5-eGJ0p6nQB|m%f1E^RAzH5fO{XQBc;taq$hc*xdK_kAQ`_ zQTG(a+*@$RNMZx0+$sC6E&CV5;W#tC<-qcY{}iH*5H)tlAon<9Q~RA)KIWaCG6Z9^ zTN#4yqX&jMT#7(#2qk0`|haxKhPQyxGlX$yAnEejL8#1X4dWT}Fd~}7(a))BQ)Pjh-)Sf{) z2kaUA`tP)1NZu6M05EJDWR*u{QfOifw14$Sz_v%|_CvyaLw>B(gEN%e!#G#)MdYRU zp>qH~iDxqTX#`k`AB85yKzpp>hi>x2H~4AL{NNZvxe-Na9?D*B5<=uo!YMUj}Ha_N(yakw!_gn!!j)pFIf=Zey$&Wp}|z z0_AvfTVr3r25!#Du=8)eA;xyp*YaJP|8!Gz7kP~dZ*LxqGdbOI1<_$I<@+MaLN4Ds z$9d=wrk_HiVKOmE+u>=2#SBLyg~A$+1J^9B!5d1dgM&1UkxquiR!dYYMxQ+$D)}%l zaD&lFMR;Z0Xc z(vss06QHt2jRfs;NV~@_#|2;+EY#IW}BW#@?Bg&S>1QDU}-RB@>tb6n6^h0tIJQr*{ZmKuS4I! z7s3sEYHc2dpQ-3wkIbQyM~UGcLv{6@TDMPys;l=p0{5lCs;l?Z_JAtfX8;VO#bH${ zsk(Ykji12{uHI8a6eM7;mflvCfWoV^+^rDE5(tnT+SJv1?9y89BfNSKnWXK`lz;N- zz1>t6kw0obn5eS4VGdMxR_ck}sg#7mLA%Gipt9QZNmCLLrxIQ&UeFfwgt3|#RsHD< z2*(9{h5Hi;XIc7Sf9N-++XX*(VleD4efCmz(on^HC_pD@xlXFW(YIDf8H}X#*=@)G ztjY+~3t}kO7}Oi>gvKDuUM6jP7dsyC9g46ELtxR$6`j6OSx3>&LHnSF`uR-Mu`vgl05?5Dh16=sQw z#pts?3e1)3(SBh&bt6Q(kl1_dC7uC92HNel=_GJlG|(Pv*J8*8zrRt*5zLSUrPf6suz z1ewy7G%~w0$#4)sGJT4S#K&Uv*{{;(&UBLDSfu|RC)++qfPRj(h{h%La5aNjH}JC8 z5RK}YM%!eN=E!!rPS4R8)B9C=2D5@NeSx&bjLj~BBqCkzYfHX z>jJ-Wr|c09Bi4RqI|c_hRf>?(YPZ69g~EAH3g_1|akj4~a|KPMS^~m&(+F%~C`V$9p6Fsn1!Yo>sn*mM zQrQ}joMc6GDW)xbYO@V?PH?9Ux*!a*T;s3-2VvOaP--1F?(wtLmnZ3)X3Y9YFzfzS zun{0bR1NR1<7iz2-qmsMx;W0rAA!ICLdFZX(QH>(b3PNVo-*G)G31dwz6 zC`PxO>Q^Wb>PudB-2C2$@JJ(*6lJ*mb?z|x`xB0bk=#oIBDKXAZK9T+T)LQ@1#n zTAjw!0>#vd6jLP*rUoF|=|J>u8luGt(Hkj5+v`%f<5Ekl?9P-4Zg9+XqK5W3=f4~1 zO!QcBo%{WJMGMQ#eK{I<^GgS?n2@g9Tn0?bdRCp}C&dBibUlPxYrp<(0v{YToq^2N zx|Xu&$8)w>=_GQ|3U;VvUw?yeREn$WT0Q~REX5%9%9(e7H+}tnNW!7*|PtoF6c(8)~6OoQ{O9J3yoDq zo3*?iI51^+Fb{2ERlvterGwtkUQOi_Q5PzZVpJ;qTlJhCkV5#W4_fS)nSv z(#K5!aRy+LzXxwvDA$(v!1BT6=w9ha75Ih<&`^b2_Pl|;OnbmJK>f6AvxI4d4}L&U zu6rO?Km-v2u=gm{g9~K~MRh31JqY9{t(i{RgQQaWQB*-JnN+mU0$0#p$TCTgE`;EF zQy6~@v&_JZPQr{v+-Sgz!h2Mj9usB+Q^z30t=zVmSxBjHQuZKE zoqDg)^{24lE?_vJA~rHaC;r{zk>C(N|Sh;8VGQscdvTpg3|?CI2>j5}P1qo?Yf16?M)0RV@imsUZjZX0l(tXO|21?vkDz|jClA^xTXf@}mHGl44O zj8&<0?b(FU>wwzh)OQvln*h(bzm*XjEY=4?&*%$DExS#b4nI7!Ho>?qs^#E)q38cO zqp35=SnU{Cbm{gb4rr~xLI9n5mI8{*fAg5>a_N4wSVp@6eo zv64*))IH1EYDY(cmg$p!!*|U4@*&;+O1TPXJJ4Udl0Bqam&<{Ry^z>&YB{7{aZxn>kh$>!7EO!z}9hG4B=v< z(n$7YvK6y~EnkwED&&frEjjJF<-jtCswEJYo)eCcNw%f1=r#VdmRWjMstIZc$7&kv zpT7wk!>KPI>{JNbXo+{-fiVDyFF~Nb2He}x3+7NAC|6fA#D=qOyc<`_Hc+!sN3OfV z5jZNPRpU07fVbN?2*;`T}#-+}0w;`bb4P!6DL%(?t4|66u(fNEd}uA{C}& z;%rsmZe}R`s(a3;t&+|5yy?D?naofL#xv7a>ZW@hG;hFCH{DZz^iB5yzk+vO+m}Df zlEkJBB>>7*$}h@k4=fo02IoIO5b0$s7$laG;DH%ZBn%EGuX^U0H|Y7QW+KvxLa^!z zF;z#GU590T6}{Zm|2>pa57Op0w-`>$UGDQtz);F&WuTY2lp-42Mb<7btgRtyGx-rn zO`$1#HDj5SZ~xCps}+FYxz&ZKV5pX?@+iJL$@jm?u>}Tfxqvy71$DAD09MK9vgc$Z zBbcc^g{VHMjUgWwjxn{%ve3-9If#m^O`@dBK8YyxG;j)bxjV1_=h-lqwKQsIG*=2U ziYl*nIOKvADU=1RSdfE&NIXf2F8hA8J}Q2Bu-pKmVAZ|ZDwn+kY;^zz`|r%gMrq5Z z1~R>{Bd=D=tq*tjhZt@qI{?g>!|{cOWo_?PjycR|Nf?e8iJ9b z*kdRp>%oYokanqA&}R>(8u5a(_OuAQAYeHU0zg|%d;^%=W&ph+x-^S|u(=3>mU?49 zCv9Dc$gkcM;WLLHVIBkbiO8aqYHC`}R`$~XNcC%A%7H*Z>CMC3Mp_|KQvs(zvfAP{ z2L)M!$@H>02JP;{(S_w$88|H6HHt1@_8;FSU5qLEKV_)ALn`=wUAF`oSxb`0ga~46 z5ell&46}%~qa`Rq?V1KN@NQrP9!jT?_c(dD4?M7WMeF0;h>x_3#$uT_iae`jKAgr*)Iz>oz27x~U0oPrmMP97!z#eI9TWrs>=&9iQ{T3k`sC0%(|?fu zfDH0eJqZ~Jma!%p{i8_`Sj$_s39b`L<0CcSl(1ZeY3oe9XQH~KM0;BkMov(fTxky!42GPr4KwSv_>Jn zp+bD(ZvXN%sI1)ciVuD|fkV1FYor|X2|N;P5K-`jEH`Kqp}O{?6mjjWg0*5qp^A$x zb%QKAOR5}Y3%;TP@|ycXa!+9XsJ~&LWlQQaO(MC%swiIeHRwU6V3rGv^dfm-x^DcK zUYRovFl_oD-d1_{*e_!#n@!Lfs3oYV_x?q@-6jwM>;tS?5W4D}l;Qr8cB?LLpKw(& z8-dzz@3=h8a1)6-yOIk8zjPpaF%8j+3eg`^h@uWeyl-Cig|hl;$)sAnwMdJ+?PlJv z!H5#-_={6Q3s*?TLhrb$B{=4G0RHqoWi@Zt8(CRN)xmVE)1%q17_C7QJrhEsy|F)% z5w+t=`WOS4X<$YM0z^m^!c|-g0J72v9(YC@i$DWJ;$*KE8KJ}e)$6iHBDR(Vr87Xc zaF<@%K%!-`|3DI3FR>+ML!UiYqa>#WC5i7EfgW-)w*zn+l!}HEZjg-hku))q-9)!4aGxq=`s{xj0?vGDGzk!=tB{35O_FY0vhaKe zCmb&c0*$qb27UHrLIe9lNFIBG5QUE#9D3Mh`noXMgBb%2o3x79^$8Ag3xgwnc({Vq!J~Tw^xu z1Qq65g_%CP!GYPCv;mP1iy_4h69VpiCB;Ir9|k#LXzk!7rIWieO4yjVRv;rG#*@cJ z_>o%%Be(R~f3y`T1(E{oL}cZ9-unA6Z}|l{L+rokED#)p*8`?f96=cc&6@|}q~_BS zk~daxMljHYz_wop;z&r{@qX=5IDm-(-yHkc)B7$UL=q=vF;0&O0*zFOd!a(EmW32j zwX=Rw6Z7_!7_^Q zgW5wB3N;i$hCi$Q@`}-CpQKS3>hgZ?pnPgg6zSpA){H>T?qelmpD!k$`{#5~c8x0M ze5srxRjbY*;gISRf*W#M7-I}VswD(AFWDwxH{P`XNLjDXils%gJwVxq+D%1S!$62Ds2Jf(Gm?e`3pi%jsmvYjQ+5*MND9UUh}USuYc*oZ z4;si<60yK&_*M!URZnD_H!_9NG@`8~VTe{xfof1uWiY7HXMYZSM5Rzn`(JbiYvSQ7TC?LJhc_fT~_X>jbw0kP+R& z3yUN>zojjhwamt^>S?DK$Ofbb6#YLq9F;O}>`JO)5=nXwxEHlH3nd2-C=qBd1RPEs z76E|4M%s?-VeG_Fz+n*(XxFzfg@vyvph#G`p~a^;S*sLS z-aw;=lv=C5SCg*Q1lC$j)6J@l#)xm2qD$1OjXy0YC}t=vsDVLvq!LD2p=NAw)Y}oU zMn|Z(BOpm@&kAaQ_VgUosHnq$YD7YYM&;cW1n zNy<$UsHZS|V0q9_D8D1XM`C?KED2Q3uy}eHFiSiorJIU2$(QVENy$s=n^jlJyM}k} z;&)}h9kY%V^jr5d`_Qq6Z>OwIW9Xt$d2yAH+8{T2w+Gk$&N zrOo&eiJ4bZcEgu4L=;J{X<42t6YZ?JC*>4D68WR$JO4$qSAHB=Z!pu2GZz0&hI^Rd14`Nh&&#D zI8=Lvj0(Fq4$alyhK#ECaH!rMGAexPa%isJ8Zs*H;ZVJKSX3}TA$F?JSj1}l_S`4Y zq-EKAY}P1q@0Xr%1qj zJ{-(?wgkT5%XXjN7boDrh?l>Td6r4GJZIa=ufBDg$I~ue>D#g&SGoM1m$lIG9`A2? zkNZjB@|)EZ^>tMtz7N4t7I)al-Ou{6%#uPVz#?tSl0gKZ7P|EIrA&5q>umQ)c1NmBQty6FzK^6>{E!*N;8JgW zLrqc)@~s`q2~w%og(Y6>1{)Ug=fPd$-?9fQ za%TQ6aprH!fzRw2BYiHPcts0q!JZ=a_n*w2L?}W>iRae7VTV-KA zsjl$KnMD^*X-o$pyKM1oP zZ4ho6$B7Ez7>?)SA!6lQ;gj1*^L*H2@GKU;TbCjPhi!q0`a=|2c6=2{eEGnKGfU3r zxnbq}*eqz@K6LEcw+H1c0eqjn4|OGMd5Rv#I{G-dceW29*5v+e1vqMSw^HNwM8ex4 z2N*D=wa#k8SMOvFEa$wOx4cdIj!k>&l{VOdTB%j(#Vw8ZzYDfejV$g2@K1U6~U zN@)Z9*Fs6kQNmD?SG$u+;zx)z`B4T~e+XM|LPMIGTQ74pT?f-?KS}wt$1ey^rf%F8 zLLq+pW8j89sT_6~2mgsmpr%N$J&7SP&p)TbeMCY5)IS_qzwt7v9dZD*3tLaxU(w}3 zZde}U?_l|TCqRCuTGzv*EiRjC{VDyZhNCJ8*_v`q<+RE=Ie()pG%oQds-UZS;*&L2 zU)XxA+S)bMJLS!A&*#gX^ZKXWXx>P=T5t2%SVA_Kz-gTqT zLH2)wE@_qZ#8m6|)VrC;&(!w67OXfU+`gqC99y0jZvSgu^A4I)AQG(HAA`04mK8^X zT^VyP`S@1%M_rX$-NR7?o6B&r#pf$;IO6spQ%E=`*SpRaPQ*KQG{1w(<8TaKnid7G zuDe#G!}CenUSEqNv!O8Swj>p%6Ct5-f0;Vd4q1C@to>EiOJVCd`+Lna-1}(wv02~= z`!3c%Yj+hSS60c(OA<9!cQt%|e0v*xFmNBxY}oZ4w$hfI>vrQFj%Alkc0nN)k3$94 zDX`}&(23*0k&=l}v2}{Q1vn8S_Mk+9;P7zlW6z+HY@jiQITAPkFyO~WyFkKB&zM-u3RKs9KP$Pe>QD?}8MEF1$Y4z=6$OKKdVVa7V- z6G?i?d2(JYX^nuHQbJ45_i*G}l2vQQteujOSQ=4P($fmbaXYlkp1_F~>>hx*;{ONc zB5|?@PVaz+ToOUGw`v=$dn=lt$n#-uRWAUd01#YLt*yKnDp+Z4Pn5Kus5W8cp_`?O zlLnRA!3wqvcbr=cd9GNXOa!RwE6;G}_Ons?pPdbhn1B-!UC5U!i>x@<6*6jKtZE z42!K`@3Ph#<{^uj2XJPnik!D9AL)ZKsuOHyXxuhYS9|?!$ZN)kA=~*rEb}lF8~xcJ zy5iH&->}dnwO8D-Cn29V(Eer?yyhe0DqNtdC#pt#^wPJFCX2oX@&n8g-eu>v_vK-f za;^k~X9ltHjvb+b9v)&2XQMT>aPM>czWZz(YR;56&=ZKjQy8ZzFsPhq(G&%JRL$#K=uQ8+svdQ~&-`D&QV((19jHQp(|on38>9>d1E zX5w!bpFF3s?IqXln%K8pyRqSVYXL)>cUN0T3w7cU&o@Y!4dlo{e`4{rM+;odzHnEU zZ_eJXM4~xwQ@CrJZ&&?-J&A!S*)s*L*UQFjOO$;5J=S%|DN(W%&P2&q@O=0IzT_SdauVMp^iwB17NCRCNE?ZxJb1sbc0etai?~#ryRU_(ou?tk8_!TfJ zPyx>^^jn_C`HFfb0$hq6?kf<~?I}SBdFu9f;X)IJuv4{54p+zSW*{sc$&}shJa*Gk z;a2hej}URS+iwD~Gq(5{6NrRCG`sf6s65PUmNEW7DGnY&(QYUN2ljQ4|3K*(@oRDY z>$@VZLTG-u)g$tHd?V!LVH1o%j1N2yFkg^YnU+^2{g&rjd__IS1H9YwCUii_s2?sR zqdnSXvP~KN1z|84<>Bb4Ja|8G5pq5n7H=SjBsR(oFw>({ZMLib-yxUWXr^?uga4};z^DgYV)fbi%dYgH&br_)%e8R0f zo)ld~SOpS6w=wE@3nlFo!E5kC1VM@biTzBRaVvKi$D#Tcp9Ks&`P!f8!h}t%64s4zM`S^F&k!LWe|E8dLbtB0Jz*@l7RK{0claH_brpx#$ zXqwy~62US%LHj1=d4kgCrs0@r@#pn>_;PvILHq3Ip!NNy+GWr&G>iRSdmbt*T^`fe zAA#DXK6OB44P%<~PYVSZhb80UyG{lz+XAH(pbs9-%xj&TK8UJU@j8X3TRh-l!J=k@efiEX$>R@_Pu*H$}1m!JYPU z6pa1zoAG$^OM4RCo@a>;Kcz$S2{Ud7Jwf{$C?F+#TF(HX>|Y^eCj=5W!X|Kl{!@?Z z(I07_Y{Ou?mQ$+=!9FOJGZ&1`YvP&s_4&=8U>P*9B1#e1mji-@gjk$w>e~^?A(`6|(Vy2jf$k5c@j-NedVcv}pmq0Nze==~B!VG+&y*NnRQ! z`TeJ4#NPr8WJBG)01r>UE{A+S2t6{2HK07u%bI-axzO_F;iAX=A4L;82LY@Dek#3R zDiE2kMM=QqLr0{_BucL0#Kj@|L<8tyyac-qL={9-Za>SBWL}ZiJWR|; zX9lvby?01t5CSrH`>zX9GmY@y;`F!gci-j>&+LLtx}^+4u-sjn#>G<=TSn0-FY%p= z^xImuY@U}W`GHP8-7uh7Lo?)8oPEMX zI61?`C*WujpM~tZ_AJkjVFEnv}VJSv}oO!Ja z$9@v%d~}#C+Z&*a6*q)`5#h5;_{SxDH^V>e3?GYd zOpG%8Qg#=^YPC~Y58RI}={J#dcNg;3nkYFnAzlAVh1^OcXKBbGD=entW~!-j3IbE* zK1`LDPPM-5uTfLxpU2`Hy04@ZRCWoZ`P#wjSHt+rF>Vd*>+tvM?a1 zJS9At^Q_*xJP7Hos;>Ql>n4Z*u4xNgH=t{T$k|OFdp%E&#G}< z&G+0|R~6s$rnoNRyK%g$obRR!Rrr!>S2e!9uBu+j8e41IXR*jxw9WoR$z^|4RkcJ_ zn_Bgax4lUNS(|pvfl7W*_27fT8@&1&&R#YSV^%#+{xoSL8yJF4Mv(nd>PrLlq(bJi zX(3`AYF?ZD5Q0pFP6Gg=g9A+FXV|#s)jZ^!=!aw^WnT_qL7EF;z0V$lDNmFaFsT`G z`y3VdSwy}QKqROj5;J3Vv5JxDy@oKBR7hw5CzxNPT8lc{Po7Ci-c_5dP5t@Gd`XT_ zW1gKZhK*UCe&hSRe5}5Iu7gn3A__ly-obYW49zi(Tl3B*XC43FRol)E?KO5 z6>DHM){BXfb^VY(*zWiunkHP}xExFMw}q{mH|$!!(>IolP1_wSi zMY#QKTsV%|g?R`O&VP!)t)4mX=Jn%)ThG;ufL%PB_7am|V_(yN9RS4VjZevREv7bM zcWB))hOT*mjxy9U%!KIaTifn5yN-t4z2QYRZ{&p4r5GMJ(9rMIP48BB3y{0+NK*Z{%3r!HmHL9Ew zkA)Tj??w`Z-%o~vrHPW$HEwoCybp!0ow%v_1gmD@#HVf>UQn}f;{HV+0!NA)5_$t8 zZ&a^u@7e~=tk86_y@Sr3iISPS(C)wz`qoFH(MEV8&gQQFoxm+M=Yu!bZ-u*jxL63F~k|qRJb3J5lmOn{DP+ zN(F3x7rtb+0l9y#__2Qk@@{RF)UT+pXH^~=6D7~6fTvVIeWGL&0xGSoVjS8wvwrGj zsvEEW{D5BM2W5T#@$kyDizEML8m3f@Y&ht5qgQ~x_RXaZIFl0tj{@ar<~^X)@q1Q1HVyRHDEzy*nV4z&rTLNdFfk13fHJlRMn4nK>bE;L+9; z_hOdazT`SJBjV>k-0y0_SM?arB~VE@eK%mH$fVc#Z#fcr6+Z{Pt@Y{jGrX73z;)tcx;be@{uB!z;Ycp5w};} z#{2zH3anJ%BF^9--D~*K`V=ev_|H&#?}FLOu2wRhO`Bv>17gni=@Icw zN+)EWUAcWc%*!D(Y6$pFRrpGjj{FLpI^Y{zzxStW7PLtUr!cjuC@O{r>Rn2k zg0~)wd)uHOdiZA^vUK6|Ix=z1nDyQZA$TcU7P>%=J+Ef`j=Pno; z0ulykv~!LB>WZ{PIg<8OQ#5bG;27KlqX8= zXC!B`y84icj*RrA?jH~+^BrhP!2rpfZK^FGRW1kIJ(SAj;4YEp`it**;ev0D1?mZ& zUwya0)pQa%a{mrTcyBNIdNy4BA^Sy+z?tu`10LRHZ+QJUgFxbip{S>k7{o1TzDw^R z3nL4gqTlEuVLCuBysG)FlQAv#LJ7Kl%|(<4#CmZbEToxg9<;u&0zzkgcR!bF_r9Qv zssmcb{}S=`e~uc^T;L{E&jW}{)^p0w{=uh>4VT=a(QNNQqsd~5=GialSSXZe6=QKC z5ZB;wCgx!TLVoPn)%et*$IdT731!%VG*gK>sE7T!_RS1VA|ZV@g(^H@5yb>cj|avH zqX>f5p(+m>2VwC|_%N&sgJ;~Il&aN|2Y|T){g68w0)W8BG-crl?m*K847P$rTmuX* zI?ed3q5w85psp}@F%J0w26z9j(d#^n0J7+WGf3p~1`eCg6pRK+stucS%!#`%j`uf` z+j7M=wnaSTn#{pf6Qk-RQzEvaKq}i>oRE%^ni_CPinECfI|AY<;gu5Q@z6~Hz`nCV zcys2%xMzcbF&rjp4MYCI_JrC!u-U?UwSD$9C>wWyfEy_eF-90h6_@`|%@s`xlaVyhd^jY}3 zNr++3eXMxpy)ZPDNY{yl$*O8$VwgRJ0a>+1%aiQdPeCm*p&V8c+CF@%=PVG&v$sMb zo%Rc#GIC@ooN8Z)P$k#nQARg_`XMB%^n&;?gVg@|T<RXFSqNqb;`#zqz3l>EHf-5+s;(g_EvYBrDO$5Wf$*qjj>a zp8xnBq$t`nclt5!$#vE+W1s5DMgwz1?%%0U4GQWv*J3aIJNEJOl5a5qpCzcoRHQoZ zV3>O{1l;D;rodG0uz4`V2(W^IF%U#63Qg)R4FQUrN?U&zL!g<~>#b$>z0f5vgk?Lf zD3=3cet!|nd93*UdmwuB@Y}QXT34VcH#nd{5x^p8F>zFoD{yo&S6R#Lc4&)oZJL^` zCM$-F{7{UZAPFb)onS5IwC=8ADi`|+X11{ZI5lNSRYRb^|01sHaj$Ny`0wbY*gwil zQl^rWA%!HtUZTUAPGQjSho;%Ho*f|Yr)+Yf8HbR;l-QpJvHsKgW#AWNJjxbxMBwEv z@^U(&L2bauGd=&nPh2y?P#nl{gy{jx;;Elih8Z1*2g-H}s3Z%Y^}E}1F@pF@2J6x{ z_rJHj&T~Tb9;{QJl`=fu!oif7W94q84NPvo3xg7lb;xI3sx#e-IbL?AS4vo--Z?as6>cIG@?e#UxIm8Z=%OTQSc-0UI-SBTeBcq#n zYR~KO-iNRWmgS)o5$l)Z5Vqw?SJ|KH^r0G}E;_n;RT6+6b7`t~C#_Cd`+6$G3AfRho^CeF zN%byk|8?F9#HpUA>i7&&m9rKB^AAgKeF&fAm7MY00ppbc`PUr)*aHp))TSN3WU;Mc z=HmH%&9{iBeMzaid5#KS;`e+0`BZ$%K-sh{@t;ZGXyZGJKIBEkxq{!!YrfFlhRsZ@ zqy8{Hu2htCkJNrpN1;+9X4Zu9JvZgADIb*hknEkMFMKTH>Y8Ktzb?yLHE+SwK8$^Ea4KyCD;`|<*y6JL{ z*?mRAJ2{T;2%C6qy!JN?%Xc*eQ~pN!%TxZ^VFj)xf6CuLzc1x)gumHqd1}4|tKE|q z^;E%OWS*}J!3QBik7W;5nSQfBiM8YarU+zDR$#by<A_w7Na!PdHOlCAux=cjNOU~B<%2lJL*B&0U5a1X6Z26-vkl0abTh3f-Hz~ZQG zPjM&uzDUyT84eeCL#6Zl?dz;2GTtMr%vZ8qypRvDiB>>Z@B9vfB5)be4QsPyaDnNs0Ki^IH=uy!@}+R zhIu2GA*kCk2k6-CuspNiYVRqGdahR#3fueq;Oq8o&lCip$plPLVEj?frEq|+0AKBW z?}4vV;RFGcgR7u-G9S&CD~ef+f~&nJ2wA`ZY`^ELz3+Ko zdjd{iD+9JxN{3Tx4>8*N@NP^Qcz&$nOA%kl_{M>xK9BUH#w1*BSJboS{}Xhhx@=#2 z-*C*QK#j!KSA>h9n|YkEvx=`FfwOyLV&5|rp7zOekTCC7Oapi(FtWXGBZyy^BJL+~ z`Cz0xEWF@zC2-VCeupy!_#KWUe~+n22K3Lk9p#RoG|dg~_quwfo&LY#7t`tJcBAzu zZJ+$pmC)>_LFUd&Q{ag)v$n%zj=4&nL3v&*&wxBnmS>?n4?IE0*X8-2^7KpiJ-=c2 zDtUfIo=fEUC3)T;&#UAal;_3r49N3jc^1m^fM9!Fp8qM&UU@zy&j;oC19{#p&#%gJ zsXQ0Rvq7Gpm1mVaPY}%I;(pD+|6j$uTb^&p^KbHeN1prSc^STxPmKBgHa>qK&->*0 zBYFNroF;f-G7mg74p18 zp7Z2+Bc4jb*XE^4lOc!mb1dzI$@FLT5C5;!qg+07639s)CxM& zkdr`80yzofB#@IpP69azV5g>dt^IAAsgMG^({JAVw zG&G)Wt7bg+Gne5T7C&x{>H8ti6b&_4b@e#^r`G;lDZhGZ-&~$0AErE$OaOlvIPoX= z16C+7+2eA>n~&?p1##H5jq^-Ge!N{)$bYCD8_ckdr`80yzo%ua*F3339)j1acC{NgyYIoCIn;HD0& z(0(KpeQMQyc>ke(JRyv~HJZO!vuBE*^<=sf&U7i7MYCr$FPJrBLDTd_3%&>l#Lr$Z zbGB>d?0HSo=P#Tkg@^D=eYYVD>igRBm3(-f6a8zne--?c`Q6%I1wZTG3hjRoZu*yK z|6I7KgN@n`XYO|h3Gh5N{^B`#DM1|OxrmkB@uSVA{xyE|*z9TRA<|z^a^7WcOgM0G z%7uSMTPnX#>Gz=RW!c#-*RN4=%=_2lVKY&g*Iwds_2SG$6K>x7&QtMy7iNz?()1Nq zx?FRofXf3o{?FI`9>fveul>8>4&u+J{c!%D`e6&1{2Fxr zE8&}>!}zMlUlINu9IxbS^k=R16Xt{bp*ZCi*Yu`L|IEeYp;Et>z|Hck|Cr)03^)0$ z)qXfX(4XP2LDO^U^8!5*LPyJ$+5fs@_9CjkOIL$roi%kJQ_oE%DnO9=t++(xm*YC} zP_F$iqrTH$ru{wei@s|=`)jn9r6#@h7i#}~#En0<_IJ>Yzjt;1=E6;UyZ?*i3sSk? z`zQh4Sj%6nE??!#J^!alV6gsf!)3}o9BIB_4&>K(i1ZCp?kR3Lt@9)39bN=rn2Xkm zQy%)vWq9*%;)rLzH|aOqw@?1f_GdX*Z!f>Ia;`+{%d-(W;D%k;;Mj${h{8Y znvVdHJI1e2Cwz0@!vW{TM9K zFMy2q40Cb(B>rLWyFI)u{;pIRlr1^!c$cJ2xxzW_8*ea`w%Iz z0iFg;&(w$UM@e57lWVt5zi392Oiee3VzIUR4@Eu$ncyw?%RnD2JK6EmCEm0%+=io zzhC=1&xQvA@oE2D_zCaQ{wnw>uYH=|-qTT52>6@!#}W6}(=ex}{p>jrzEAt%%>Diw zB_L%9`axZujSClx&KQN6KV$LDMt`7#CV0R)j>*D4C@^s@`GnG^M)+BW=4pR9D&V{D zH)#J_xEVi9`|IKMinDfZ-g)&4yiw%RPr_9LwzUh-%+L?DxDl$ zx&#j1Id=9ZOZJ-aXywhv-}rf0!LDrm4dXcWb}luk$GR1G*3NCw((eh->~b_W@+e z!Ho(?d9V4Dl6NQE4ftE7{md`xXs7nW`49Co`Ca>u$lt-lCm^hDr@*q+FZQ3zuK|t* z6v+6RW7L10e#qso;gjXB{mJq_N`6efKB#xH{D+udr>w~n+keV?%~eX?rap9PzmZ3W z_8WP$YX1k7um38%$h!R2>inqr9?V8?__d&EfSv3CH0@*WrcbjMuME^!Kkq(D`m8(r zl}|gm`lC`G{c|vVG;+_hOH05o^Xscq{MN$F@+j2)qvvF3DUJO7nx4@MliHNW+N0#h zlt=t1(;Gg_docM90|5U9{DKIH-}yNS58_Qfe?k1km)%RJD~NYcT**gbdD00-V)^lS z@-OrE`<&UAKuA@ugB@co($=UszkRHER zr>1zIKmC`U|5Tg_KM_Iv%l!HLF4x!JJ(I&i3?CnP3^(y_00+N`TU>W zc}u|q=iIox^>41eR*1Fm*>$hZExrGlyI-YS!8~xzEd`(637F#n^Eb@km92aA?pN=B zW^O6ngxP(@qa}Si9xZu#%*1D0e*C#API`Rv=#LzDYxGC3hWfgK*?7AD0=oV@+2wb+ zKKh3pFS}f?d~8^;%k}tXh7%9k+Y2_LMDX+fdGga^#N`@R{L05JnRwxc=~J|(y!O#Q zkk*#5q;<(e(t7zhx(Va+pIPyBP9C`)dBfG`a^1MyyVd1d`XAQ<`bu!kpU=;HJ#fxF z<0N0m`@XU(OPMcc-e2fecs}k^cqq4yv(oWU&M&C3MBm4KDLHqXweD5YCC^h{qkKO4 z2k3RKaF|2*hEw`X7-Z?<%9c&;Zgc2b1 zk^o5{1VZoKV2X{6aqr!hElaj~uWwh9&$%b}o&VH>C1 zI~@=EUq)Xo2}YS3XAXR%cFUp$bu#lm9L&Atb-Q(O({Wb3=<FRV_-{)#hEPQUY5Zsrk9mO4W;l|BWE zE&UjL`9kD<*V|2Huis4&B%yOA=-XHe;=nY%T*5xXVwoLwI?qi{;!q&AuH(7QLvbDWDt z^uS!uO?8}jUMxb55$@)e9_;3m@le19Di=M$^sy-jFsP1mveMXhwX>dT>eIs4z zmgVJrqh1iRK73-c$U%PV@4Yy3f3BJ$521T+tR7hCk zdqcXsVeXsInsw3=!EVK5c3J8z4LPEbIDqjX)g~O&^(iVMR+t9tlXf=9Nwh~Qd|qJr;=+8(Gcwo4N} z?|T;dhImdG9E@pYJ$TYN(Lt~d>?|*+tqlVeBZ@+&Vs<#(vKXD)>t2?v4EtKx1U%{2 z>UE^bC-*yLM6kRypzf)o(eL%pA#sni85JqAvx2^;I*;WCL9@{((~oo0L0i>Iyl&uw zp#JE6hS8?fx66o8gUaLIVJo|z*;j-u)ll*tLS3%@j32D7?;AIgGfqViNO6sS4o zxc%70l>s=uLxE+adtbg_a{xZSsP~Al-MtakIQJ>xz0QjL} zaIrdOV1VOxIueIybYfx{#&N$~&2zjN< zz|54LCtb=b#GqK*OqKmW#CYg+xYqhAdL)L9-I(s?wFoof%{8yb=uX3HQNV|*#KEXG z!wSmYyx8G0q`#u$z$a#izFj##bk@(uBg*w3fro(Eww>fG>1l>QePjkb_aioFTkcYp zAN(cebz*vO12%=QGAwVPz-trsB>4exC8==C4+$W3C1wg`8q<&POlHX#JDeXFN0@-t zljd_5vvbh#r9{7_;|BMGxIbdtdgb>Rwew#`g;wGH>-%}HPm#Yp*xgEL@xC1WqOGZH z){wcvU7gjMRG%vq%j&myf9-Sk_PsKP-_L@%MzDTl`;QTGc{HV;)y*rp!0Ag=X9#A! z&C+U>F{N7qYl9A(&Q(b4)vr&59H}^)prXdcXS83UyzUhA{g{($-1+1?zhgaP`hxU% zv?kv<0jdCQg`3w+|1C8SL!L)YEB_WtF5HaQ_)mFs)Mu^mC;t!HO+A|-^Q+@DUU_HGC?~1d2}MUpoJaeK2l^vhvf(yy zwR&trPeWJS+xSk~kVrrCX6dzu@!bzXD-?X_L~w#WB&;p&Nk>*SU*>Q2$&IYr;MdOD z+Mp-+#J|B@kGSu+nf!XN9G%zU!Bw8&&p1Se3Tr)kO#7H{UiU{4&L> zU=Fw|=nI8gFaM^jq-m6oRO@n|MjYeSEB9jGH*C8%nO5stRX<%jhH#6*dO!3zO*z8n zr-J95b!*O$+v-pk$l?mTebqt{gVTA#E6bLhJ6aXsv!(8yKq&qd); z>ndWgv2oiv%abdf?;%LpJmtdVG@_(A6(cR$J!)>pjz%4AnczkE+qz@gZfqCTt=E%~ zul<&VB_;QX*rB6DeT;e@@+dP8S6RWuqtWt424+-BncrU;@3qS6r-5I8cu=xXatzlH z^i7kws+1C2dBkz3nS8gb(aj6nj&HL z>tkJ9O+En~?Q5PFa?r6UAzb&rs6*IsBQ-8 zmx3;>&d;sa!?YKMbltj+9{I4^HuN_+7hl?mi{39`7ZOW&zlM1y_vJrk0zpRqe&#)~ zixfjrKExO$_2FNt&W8zGCz|%w9FcUi${n#hu9gNqx%dgEFoe_9c@oCGMc`{UP4&GZFTX> zaMKs2E%c#`JvH8_xTl)T-4;&rcE)O43^&H7vyR#^TDz=eYTyXlwxm$Qt<1wuu{1@| z1wwpTv*a6#p?+r1(l)PBH?QUbk~+*^{koZdpmB;auer(gG`Khr^iPz(U@0Fh93V!8 z_?;_LGI#m(rGJy~ta{qOmf}I+?)NmUr0NO2zCDj0?7swl;zRWM+z)Nr+IRGTU#!CF z0j4j4oghq9J=L$KnS!v-!yJQS=}#V+c==oSQB;}|0(7so^n(0_!{_qjhHez z;x6&~8WZ4Kd_*@l&drO+pehc%!89=Sr(0@+^OJWc9`re9*c5cyKdMSyKKW&Kc?G#2 zeGc?d{*Z1)$W(sc!8iJc=_?v5o!ct+1NKA_(IOe)nRn3bb4!*~&ct+JWIp4EZ)SlJ5 z^}5eo`1+x4t*M||Kk%Fv#uf|QWlkAT^g>kMN=!l9fNjoMjT`R_N!S@PKw&UUa-Mdo zY((&SV$Y=Qt!0IIJ`0#$s8WyZzbc+zr9n9@-I>>+ht|fbpM@s~ABwK7S zmw7{pUv!j-Q|h)eZE=-~t@>U1P02^^Q%Mubj;J@X=-loe6ly%r>p^zHbM_BWs`i_j zk6YCd>s4-EgX2D}qGIYB_kKBoXj^ zI-Wh5H;q~9)qXF_+*~+axZ6VaE9~4`Pzt$uoeCJ&=Mj!es1?nOK1M#*eM>K4?DyQ2y56RjX>Yndp^=)#DXqA9#!m>0!$8`?5Quuoo&o{)NDCl%2vOK63eucN_dZ zfzSeC#L|ud>@1l!DU?v>TEF544~R|=8Y6jA@i@iH@oD4Rt}GPk#W>WaYy6} zzf{bKvW=3ZRcQKpY5lMk*}>LL{i@Mg%)b1yre@(O)TV)7R$ufyMK46dHXk6yk4F94 z8W$cYjv(b@hd9R7-D+8$xGBR<6+n;eS8coTEwB4_FX+E2;{p>!o8rKmuQ?|~%(sYg z=NoosY!bWeb-CYIudi{ND75&s(pA_AuQ_i=Qod5^D+3)tZ}f6*$EP{hoReNnF{hgs zfXBL4CRfFqni6!O+VHm2;Kw#oO0|_SNbc&R5q|#)*E=u%SMWmCOOOWZYP7#)m;tXf zBA3e{>!_YJ(;PSs0oeVASXVCO-{0%^xAjvQyyEpAT^aP-3rS4~O9=b^WXT1Bmr9v(wjHJI(rqKZa0XOFM;q@;eTyCMuCfTmAC*kkC4Z^?2 zd$HblM6gSEZ$ht+@c%zuu6*xnl0w(>P6h(NdLFiKQm8c_0KV=7fQ1cTcfPMdvRu)8 zO!=5{zHDan%;@uF2zEttMbnFa?3zO&l<#ZS!z+^~0}<+^Pyn#zujegnK)AX2z%}{O z`4Z<^Rk3uy?TzWlgQ@g1>&5S~FrVk0C>H=6tUK| z4oh!#T|&D1a%0UNOh|7=_#u>QyQfwHKv#c+dM~`H`Xhg8rPphOo10IsL`w&vlk+74 zNF2`FtrNlr0J6%qN8co^ho7czlISnCN2}l`2q~Al95>?c!pUPOr z9L20)vRE>vmGK2*6muGL51r1iGOjbPGt1!=E4`dKl`+lL$mhd*DA%nv0< zA4hx({nG5$9?7m&f5WP>5vT)sFO(;`EB#A|k6a5pG2k-5%%5XeYq-OTYL7Qw$1kf# zgE`&J`c>XE`ja+ez-H7T)-cuQrbo=rC}T7$9Ej~UIX?!mYvEA=o3dWrNL>xmB|}{X|2dLJuy-G%+*Ulq`Kj*937E}t-w=P( zR@G{Gkz=f0DId?Rz?hs`-cqnc7EBrL>NAU-nm`_At9}}atxQxp>>~4NB2Rh5h^J)g zS4;2HP6OM~N7$K7`Mzxe8@QN8gzsVi2m?~+x22CXKeQ)mzJ}WB_sVCJVu8lAxRxp<(!7YJKHpvA$ zFtx@vzAyOGsV(h37+%LnJ3_S$-0U38ZS@UgU++3>h9n`pIgBjKDbU}hr|u)3HiULm z)*9F+Oy%51I8&9U`nolRdrR3tJghLI$@*W1wNMEYPx1P2{L?VHEsZP3IFLi)r zb9<4izLpT~_(w`Fd%sCcwYMs_bo&88ID99r=oj!;){ne z{-j6BH8NqLdODz$UZmG+K4bWk6ZE4f=`5)}$hMNTO+C?sArA$&=}dYQ<}+O&g)F`0 zT76mR6%PzC9c?>8DK^fGD4`C420G@yIj;VT?4q#E$Gf(VBF^_HshV~nX?B}a`@xVS zL1ZmM`9zgFb-HO@Z%k}+Us_4)Udv51+jLNuVVp<4M#y0-Q);`;Qz_7Wil%8#TP7Ew z8VC-G+|#|wk7d6dIu1MCl8U-%1&QBzH4VLLww{K1IHp5pS*@Vh&;yS zBe8C}L9TpAJi>MzP~u$H?E{Vh!z?_-XQVXB3-w^bYRog;2s4|?Fz}RvIXLW>GH*o@ zF~N*645wejHaggNuIj!amF`c>g*9mYhSoX6NKt2sA z<5Hhp=E?dQ+?~`F+D~mPRH5@{M-j=PyFj~c{?z)J`mV;L&ZGHjApJhgS6=<>e%gKp z9q|e0S9B`=KISrQmgbZr!7#yu@XB$H@7|0(shGvvPZ({+D5uarr}b6I)H8`Oic;Dc z`&!3m;Owriz*&|6`#LP1VX>bio$)@4x7f3~=h`~ZZ|!?@Ur>Gm5ngm)38zDeLI)Dg zu)b1Bzz6nD8yZ-^-eCEJ`Vr7TnPR)p^)*h>$u>ab?;NrClXf$MPC5x&>kR6-ro=o* zJ;%6-d)76FeBg)zFA~#13Tl-?5A}n_5?>p%Ry{2Xt?BueoX}CADU+_nT6lvTA}$q} zqv)b9q27YW={2MYhHTw)`!9AMCj*!5>Sv!gz5zySzq3ujTr?$8K9Mf)9xi!6-=u$~ zn?djEeE=1LS%o^RZ?$b8huOB-j>+onBx0$Zi~RzbAS) zVkhi3q>DBC&6%v#h7GchEw@o^s3veH{gIABBLF1F6W|RVMQbE%!%c8P*b~ITK)QCe ztPT8xd(1rF`-J8kW`Y(=SGnpj&T)|4r{^;2Fm8xq9!YGPNV1WGF{KJG`_D#-nvEIH z^QLy&pWqKj`=H{SJ(g;=T;0bK0YucQlfiR^c_BK>tnn%6y`O+N&EUbY&naIOUx+T*O>*oU>n zLIbdST)gD=!vLQ!%g(}FrzA3tc1LIrQ%m(-)H`@znT2&8Q)^j;e@99%O#v61J^+^_ zhtR>QU8o-&4PD3Ha#kTl1dcd<26?P{ z%Q|4B?J;c?aEO$nP1EhS6?dj#*J-C%XJJ#xX}FJcUurq1z5(}%NfrVo27K83+`b+i z0nYJDARjjU;B|84Fby+? zs4`il&`IVpO&um3z1Gf@k9Le9j>CdbsdgG#qnJ(;Q7fFS7M1f1`YPrt?4<79u9@^a zUI+bXJBH0VGbX3qHRj|M)W*l@aAyI6>6CAz z>3G*me1=Thv4wclvfgmoH4m+Gu9RL=Y_QdmsrYPWIZ-LCk=Ek+C_gjIHwt=Y*?+?3 zo6nok<|_I^=Qw+RYanJYIf;4Jfyc$-zaUJtWD|Gs9 z=$DqQUJPi3rWzbfx{ST83Lw?9wz24($zX1`Q-hIzqhBVC?|x#t4ZI^J`M*#bn&w*O z;%50#ZGrFshT`m7i zeae!_7-o+*3DpAfR>(`mLW#gtEz5}?lZH`VS-^n#)DNImvz`bLr|TyHFJ1G`)HtI9 z1&wiFlwTT3DRi6@vl{(KITE5uZ;=jB8_hr4!^}3hKwoUkHvO#cg7U4iOh1!wmRw>N zt{i(>^2+E!^@=}6pq#YTQ?<0h}FE;=_Ft#%kpOBLY^#9q5?4;?X-S5`0oZNw$`JVU$b ztmT>YSH%ySYt}j1U|N;aB=6+qnds_r?qbxZrrq>`*x8n=&JI$fa{_0OtU<9reWa@- z0O2)=Ka+P#9c8Q4eFU^|PdgxHlVF{*0R2hV6v8&fPwlzVFL3hqwbnU&g6tY8p0~DH zN!i!*guv~7V6-b%DL-Wy!tS7a;MEEEY(C4}cAfJ@_hZan)HrO0-)PEv)+WPor+`?A zz15S7Emt3~T_)z?I-E|&6v7$BGce13t|tbn@4)%o?QTThvG!O0#5&|^_pf!3_cO|J znh`S}-JwhBvSF|4)?lvKZ{X5QF+JmZE--&;$RUswJrq(;xqXxBjXMva_B_s5|)--X?;@Hf0Wd( ztR}zTw}+DY7tY$(f3`Kh|H*B{0R`Df11du14p<+%Z@{HJzYG}iAb-GD7rO^YV~J_k z7Wk$aQAufsog>o5PMwoBgRvzo_R!w6r*BWDefI06G;P|0wCx-7(iAgm()y`nX>%j( zX~}p(I=zsQ{=S``K6_kfdI2>d9q>;}cVrJsf754Tx;S-a`r^HRNgoosA${?|9qF6n zzfNy99!TFKIhMZJ{9XFZqzmZ*hks2U$GelB^zw1~*h9JL%r6SkQK!q&{VVIztCHH& zuixoT516V?zvSykKfePl(%=Z9x2MUXh75+NkAWi^^4LejIOs2$v?f?ourNZDv?Nxv ze{+&(!s%4e>-=<)05@3l$++R7O_#=q?o%d;CS*?)5r7$@N&DuCG{K8SA@7!pf;X=b z{hG4Lb>Cd++95Jm?-K2Lzgsl!?OsvJn{PzM{6nJKrAI`e&BsMF%_-4R!uKLU(0P$_ z;7_9Bc|VJ8?!7D$+`B58)P6%$#erGnRTL?qm3d$SBvQ9bctx0-@vrkH?Z ziw9rjh<8l%65liN#Pw%<#1&$J_&|%V*u33ej0p%3?|T*~{&8Bc*h?QGuG}9c)&xh0 z!yiS8PmGBcgH18wRmJR;dFy1cjXzZ!H~tgx>K)U>`PV-cQ)@mG4|Yr!PxYTE z9+fsrY@0M&ykzkl@ve%`)=b>jV5>%~{O8^qf#Z4iUW8^wK|Y!vfEo5bHe+9ZCNuvxtR$Iar$v@PPZ>$Zqd z)my~6q^;uld$x)*>$Zw-hi(%eSh`It|8<-A$IflyT0xdLYjl=)`?@SK>U5U4_+ge< zP?jZr-H|0O&}E6^?8v#H*&cToag9--3apiY2{Qfc{Bj~4A@x#}J;!n4%%y_UG%2+e&ym+_%8!_v&9+vx` ze-{IZL)-=!5Pk9v{ITzCT`vh>`eqM3avm7`K|Fj)`r67C+2zZ zco-iI;}1M|4*Z4+!7q96aUT4H2PeR|5KiCMOAo(=%7G!PK11>3{KbCVU=uP}+f)Yh8PcxsyA;zm6_-g%7;c z!{>C5PH*+wo9_2wfBJmljr1ImkLd2_exjY`K-YY4OyzD-hxEJ%YpNGDHCshvDhXm| zHecK!4G;(1j1hxN62${9r;7XR=qFB}Cla%-4HLsW#S0cJ5dXAdtGMX$eQ_Nv-!+E9 zyHqpWwid#E1`OFS&;>r

    r-f{|4)EP^2(dKFfo{=>Mx7 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 z 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 XGZmPrz)S^ZDlk)lnF{ + *

  1. audio_frame is the audio data in opus_int16 (or float for opus_encode_float())
  2. + *
  3. frame_size is the duration of the frame in samples (per channel)
  4. + *
  5. packet is the byte array to which the compressed data is written
  6. + *
  7. max_packet is the maximum number of bytes that can be written in the packet (4000 bytes is recommended). + * Do not use max_packet to control VBR target bitrate, instead use the #OPUS_SET_BITRATE CTL.
  8. + * + * + * opus_encode() and opus_encode_float() return the number of bytes actually written to the packet. + * The return value can be negative, which indicates that an error has occurred. If the return value + * is 2 bytes or less, then the packet does not need to be transmitted (DTX). + * + * Once the encoder state if no longer needed, it can be destroyed with + * + * @code + * opus_encoder_destroy(enc); + * @endcode + * + * If the encoder was created with opus_encoder_init() rather than opus_encoder_create(), + * then no action is required aside from potentially freeing the memory that was manually + * allocated for it (calling free(enc) for the example above) + * + */ + +/** Opus encoder state. + * This contains the complete state of an Opus encoder. + * It is position independent and can be freely copied. + * @see opus_encoder_create,opus_encoder_init + */ +typedef struct OpusEncoder OpusEncoder; + +/** Gets the size of an OpusEncoder structure. + * @param[in] channels int: Number of channels. + * This must be 1 or 2. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_encoder_get_size(int channels); + +/** + */ + +/** Allocates and initializes an encoder state. + * There are three coding modes: + * + * @ref OPUS_APPLICATION_VOIP gives best quality at a given bitrate for voice + * signals. It enhances the input signal by high-pass filtering and + * emphasizing formants and harmonics. Optionally it includes in-band + * forward error correction to protect against packet loss. Use this + * mode for typical VoIP applications. Because of the enhancement, + * even at high bitrates the output may sound different from the input. + * + * @ref OPUS_APPLICATION_AUDIO gives best quality at a given bitrate for most + * non-voice signals like music. Use this mode for music and mixed + * (music/voice) content, broadcast, and applications requiring less + * than 15 ms of coding delay. + * + * @ref OPUS_APPLICATION_RESTRICTED_LOWDELAY configures low-delay mode that + * disables the speech-optimized mode in exchange for slightly reduced delay. + * This mode can only be set on an newly initialized or freshly reset encoder + * because it changes the codec delay. + * + * This is useful when the caller knows that the speech-optimized modes will not be needed (use with caution). + * @param [in] Fs opus_int32: Sampling rate of input signal (Hz) + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) in input signal + * @param [in] application int: Coding mode (one of @ref OPUS_APPLICATION_VOIP, @ref OPUS_APPLICATION_AUDIO, or @ref OPUS_APPLICATION_RESTRICTED_LOWDELAY) + * @param [out] error int*: @ref opus_errorcodes + * @note Regardless of the sampling rate and number channels selected, the Opus encoder + * can switch to a lower audio bandwidth or number of channels if the bitrate + * selected is too low. This also means that it is safe to always use 48 kHz stereo input + * and let the encoder optimize the encoding. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusEncoder *opus_encoder_create( + opus_int32 Fs, + int channels, + int application, + int *error +); + +/** Initializes a previously allocated encoder state + * The memory pointed to by st must be at least the size returned by opus_encoder_get_size(). + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_encoder_create(),opus_encoder_get_size() + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] Fs opus_int32: Sampling rate of input signal (Hz) + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) in input signal + * @param [in] application int: Coding mode (one of OPUS_APPLICATION_VOIP, OPUS_APPLICATION_AUDIO, or OPUS_APPLICATION_RESTRICTED_LOWDELAY) + * @retval #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_encoder_init( + OpusEncoder *st, + opus_int32 Fs, + int channels, + int application +) OPUS_ARG_NONNULL(1); + +/** Encodes an Opus frame. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] pcm opus_int16*: Input signal (interleaved if 2 channels). length is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size int: Number of samples per channel in the + * input signal. + * This must be an Opus frame size for + * the encoder's sampling rate. + * For example, at 48 kHz the permitted + * values are 120, 240, 480, 960, 1920, + * and 2880. + * Passing in a duration of less than + * 10 ms (480 samples at 48 kHz) will + * prevent the encoder from using the LPC + * or hybrid modes. + * @param [out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_encode( + OpusEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes an Opus frame. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] pcm opus_int32*: Input signal (interleaved if 2 channels) representing (or slightly exceeding) 24-bit values. length is frame_size*channels*sizeof(opus_int32) + * @param [in] frame_size int: Number of samples per channel in the + * input signal. + * This must be an Opus frame size for + * the encoder's sampling rate. + * For example, at 48 kHz the permitted + * values are 120, 240, 480, 960, 1920, + * and 2880. + * Passing in a duration of less than + * 10 ms (480 samples at 48 kHz) will + * prevent the encoder from using the LPC + * or hybrid modes. + * @param [out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_encode24( + OpusEncoder *st, + const opus_int32 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes an Opus frame from floating point input. + * @param [in] st OpusEncoder*: Encoder state + * @param [in] pcm float*: Input in float format (interleaved if 2 channels), with a normal range of +/-1.0. + * Samples with a range beyond +/-1.0 are supported but will + * be clipped by decoders using the integer API and should + * only be used if it is known that the far end supports + * extended dynamic range. + * length is frame_size*channels*sizeof(float) + * @param [in] frame_size int: Number of samples per channel in the + * input signal. + * This must be an Opus frame size for + * the encoder's sampling rate. + * For example, at 48 kHz the permitted + * values are 120, 240, 480, 960, 1920, + * and 2880. + * Passing in a duration of less than + * 10 ms (480 samples at 48 kHz) will + * prevent the encoder from using the LPC + * or hybrid modes. + * @param [out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_encode_float( + OpusEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Frees an OpusEncoder allocated by opus_encoder_create(). + * @param[in] st OpusEncoder*: State to be freed. + */ +OPUS_EXPORT void opus_encoder_destroy(OpusEncoder *st); + +/** Perform a CTL function on an Opus encoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @param st OpusEncoder*: Encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls or + * @ref opus_encoderctls. + * @see opus_genericctls + * @see opus_encoderctls + */ +OPUS_EXPORT int opus_encoder_ctl(OpusEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); +/**@}*/ + +/** @defgroup opus_decoder Opus Decoder + * @{ + * + * @brief This page describes the process and functions used to decode Opus. + * + * The decoding process also starts with creating a decoder + * state. This can be done with: + * @code + * int error; + * OpusDecoder *dec; + * dec = opus_decoder_create(Fs, channels, &error); + * @endcode + * where + * @li Fs is the sampling rate and must be 8000, 12000, 16000, 24000, or 48000 + * @li channels is the number of channels (1 or 2) + * @li error will hold the error code in case of failure (or #OPUS_OK on success) + * @li the return value is a newly created decoder state to be used for decoding + * + * While opus_decoder_create() allocates memory for the state, it's also possible + * to initialize pre-allocated memory: + * @code + * int size; + * int error; + * OpusDecoder *dec; + * size = opus_decoder_get_size(channels); + * dec = malloc(size); + * error = opus_decoder_init(dec, Fs, channels); + * @endcode + * where opus_decoder_get_size() returns the required size for the decoder state. Note that + * future versions of this code may change the size, so no assumptions should be made about it. + * + * The decoder state is always continuous in memory and only a shallow copy is sufficient + * to copy it (e.g. memcpy()) + * + * To decode a frame, opus_decode() or opus_decode_float() must be called with a packet of compressed audio data: + * @code + * frame_size = opus_decode(dec, packet, len, decoded, max_size, 0); + * @endcode + * where + * + * @li packet is the byte array containing the compressed data + * @li len is the exact number of bytes contained in the packet + * @li decoded is the decoded audio data in opus_int16 (or float for opus_decode_float()) + * @li max_size is the max duration of the frame in samples (per channel) that can fit into the decoded_frame array + * + * opus_decode() and opus_decode_float() return the number of samples (per channel) decoded from the packet. + * If that value is negative, then an error has occurred. This can occur if the packet is corrupted or if the audio + * buffer is too small to hold the decoded audio. + * + * Opus is a stateful codec with overlapping blocks and as a result Opus + * packets are not coded independently of each other. Packets must be + * passed into the decoder serially and in the correct order for a correct + * decode. Lost packets can be replaced with loss concealment by calling + * the decoder with a null pointer and zero length for the missing packet. + * + * A single codec state may only be accessed from a single thread at + * a time and any required locking must be performed by the caller. Separate + * streams must be decoded with separate decoder states and can be decoded + * in parallel unless the library was compiled with NONTHREADSAFE_PSEUDOSTACK + * defined. + * + */ + +/** Opus decoder state. + * This contains the complete state of an Opus decoder. + * It is position independent and can be freely copied. + * @see opus_decoder_create,opus_decoder_init + */ +typedef struct OpusDecoder OpusDecoder; + +/** Opus DRED decoder. + * This contains the complete state of an Opus DRED decoder. + * It is position independent and can be freely copied. + * @see opus_dred_decoder_create,opus_dred_decoder_init + */ +typedef struct OpusDREDDecoder OpusDREDDecoder; + + +/** Opus DRED state. + * This contains the complete state of an Opus DRED packet. + * It is position independent and can be freely copied. + * @see opus_dred_create,opus_dred_init + */ +typedef struct OpusDRED OpusDRED; + +/** Gets the size of an OpusDecoder structure. + * @param [in] channels int: Number of channels. + * This must be 1 or 2. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decoder_get_size(int channels); + +/** Allocates and initializes a decoder state. + * @param [in] Fs opus_int32: Sample rate to decode at (Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) to decode + * @param [out] error int*: #OPUS_OK Success or @ref opus_errorcodes + * + * Internally Opus stores data at 48000 Hz, so that should be the default + * value for Fs. However, the decoder can efficiently decode to buffers + * at 8, 12, 16, and 24 kHz so if for some reason the caller cannot use + * data at the full sample rate, or knows the compressed data doesn't + * use the full frequency range, it can request decoding at a reduced + * rate. Likewise, the decoder is capable of filling in either mono or + * interleaved stereo pcm buffers, at the caller's request. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusDecoder *opus_decoder_create( + opus_int32 Fs, + int channels, + int *error +); + +/** Initializes a previously allocated decoder state. + * The state must be at least the size returned by opus_decoder_get_size(). + * This is intended for applications which use their own allocator instead of malloc. @see opus_decoder_create,opus_decoder_get_size + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @param [in] st OpusDecoder*: Decoder state. + * @param [in] Fs opus_int32: Sampling rate to decode to (Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param [in] channels int: Number of channels (1 or 2) to decode + * @retval #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_decoder_init( + OpusDecoder *st, + opus_int32 Fs, + int channels +) OPUS_ARG_NONNULL(1); + +/** Decode an Opus packet. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len opus_int32: Number of bytes in payload* + * @param [out] pcm opus_int16*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel of available space in \a pcm. + * If this is less than the maximum packet duration (120ms; 5760 for 48kHz), this function will + * not be capable of decoding some packets. In the case of PLC (data==NULL) or FEC (decode_fec=1), + * then frame_size needs to be exactly the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the next incoming packet. For the PLC and + * FEC cases, frame_size must be a multiple of 2.5 ms. + * @param [in] decode_fec int: Flag (0 or 1) to request that any in-band forward error correction data be + * decoded. If no such data is available, the frame is decoded as if it were lost. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decode( + OpusDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an Opus packet. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len opus_int32: Number of bytes in payload* + * @param [out] pcm opus_int32*: Output signal (interleaved if 2 channels) representing (or slightly exceeding) 24-bit values. length + * is frame_size*channels*sizeof(opus_int32) + * @param [in] frame_size Number of samples per channel of available space in \a pcm. + * If this is less than the maximum packet duration (120ms; 5760 for 48kHz), this function will + * not be capable of decoding some packets. In the case of PLC (data==NULL) or FEC (decode_fec=1), + * then frame_size needs to be exactly the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the next incoming packet. For the PLC and + * FEC cases, frame_size must be a multiple of 2.5 ms. + * @param [in] decode_fec int: Flag (0 or 1) to request that any in-band forward error correction data be + * decoded. If no such data is available, the frame is decoded as if it were lost. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decode24( + OpusDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int32 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an Opus packet with floating point output. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len opus_int32: Number of bytes in payload + * @param [out] pcm float*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(float) + * @param [in] frame_size Number of samples per channel of available space in \a pcm. + * If this is less than the maximum packet duration (120ms; 5760 for 48kHz), this function will + * not be capable of decoding some packets. In the case of PLC (data==NULL) or FEC (decode_fec=1), + * then frame_size needs to be exactly the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the next incoming packet. For the PLC and + * FEC cases, frame_size must be a multiple of 2.5 ms. + * @param [in] decode_fec int: Flag (0 or 1) to request that any in-band forward error correction data be + * decoded. If no such data is available the frame is decoded as if it were lost. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decode_float( + OpusDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus decoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @param st OpusDecoder*: Decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls or + * @ref opus_decoderctls. + * @see opus_genericctls + * @see opus_decoderctls + */ +OPUS_EXPORT int opus_decoder_ctl(OpusDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/** Frees an OpusDecoder allocated by opus_decoder_create(). + * @param[in] st OpusDecoder*: State to be freed. + */ +OPUS_EXPORT void opus_decoder_destroy(OpusDecoder *st); + +/** Gets the size of an OpusDREDDecoder structure. + * @returns The size in bytes. + */ +OPUS_EXPORT int opus_dred_decoder_get_size(void); + +/** Allocates and initializes an OpusDREDDecoder state. + * @param [out] error int*: #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT OpusDREDDecoder *opus_dred_decoder_create(int *error); + +/** Initializes an OpusDREDDecoder state. + * @param[in] dec OpusDREDDecoder*: State to be initialized. + */ +OPUS_EXPORT int opus_dred_decoder_init(OpusDREDDecoder *dec); + +/** Frees an OpusDREDDecoder allocated by opus_dred_decoder_create(). + * @param[in] dec OpusDREDDecoder*: State to be freed. + */ +OPUS_EXPORT void opus_dred_decoder_destroy(OpusDREDDecoder *dec); + +/** Perform a CTL function on an Opus DRED decoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @param dred_dec OpusDREDDecoder*: DRED Decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls or + * @ref opus_decoderctls. + * @see opus_genericctls + * @see opus_decoderctls + */ +OPUS_EXPORT int opus_dred_decoder_ctl(OpusDREDDecoder *dred_dec, int request, ...); + +/** Gets the size of an OpusDRED structure. + * @returns The size in bytes. + */ +OPUS_EXPORT int opus_dred_get_size(void); + +/** Allocates and initializes a DRED state. + * @param [out] error int*: #OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_EXPORT OpusDRED *opus_dred_alloc(int *error); + +/** Frees an OpusDRED allocated by opus_dred_create(). + * @param[in] dec OpusDRED*: State to be freed. + */ +OPUS_EXPORT void opus_dred_free(OpusDRED *dec); + +/** Decode an Opus DRED packet. + * @param [in] dred_dec OpusDRED*: DRED Decoder state + * @param [in] dred OpusDRED*: DRED state + * @param [in] data char*: Input payload + * @param [in] len opus_int32: Number of bytes in payload + * @param [in] max_dred_samples opus_int32: Maximum number of DRED samples that may be needed (if available in the packet). + * @param [in] sampling_rate opus_int32: Sampling rate used for max_dred_samples argument. Needs not match the actual sampling rate of the decoder. + * @param [out] dred_end opus_int32*: Number of non-encoded (silence) samples between the DRED timestamp and the last DRED sample. + * @param [in] defer_processing int: Flag (0 or 1). If set to one, the CPU-intensive part of the DRED decoding is deferred until opus_dred_process() is called. + * @returns Offset (positive) of the first decoded DRED samples, zero if no DRED is present, or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_dred_parse(OpusDREDDecoder *dred_dec, OpusDRED *dred, const unsigned char *data, opus_int32 len, opus_int32 max_dred_samples, opus_int32 sampling_rate, int *dred_end, int defer_processing) OPUS_ARG_NONNULL(1); + +/** Finish decoding an Opus DRED packet. The function only needs to be called if opus_dred_parse() was called with defer_processing=1. + * The source and destination will often be the same DRED state. + * @param [in] dred_dec OpusDRED*: DRED Decoder state + * @param [in] src OpusDRED*: Source DRED state to start the processing from. + * @param [out] dst OpusDRED*: Destination DRED state to store the updated state after processing. + * @returns @ref opus_errorcodes + */ +OPUS_EXPORT int opus_dred_process(OpusDREDDecoder *dred_dec, const OpusDRED *src, OpusDRED *dst); + +/** Decode audio from an Opus DRED packet with 16-bit output. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] dred OpusDRED*: DRED state + * @param [in] dred_offset opus_int32: position of the redundancy to decode (in samples before the beginning of the real audio data in the packet). + * @param [out] pcm opus_int16*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel to decode in \a pcm. + * frame_size must be a multiple of 2.5 ms. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_decoder_dred_decode(OpusDecoder *st, const OpusDRED *dred, opus_int32 dred_offset, opus_int16 *pcm, opus_int32 frame_size); + +/** Decode audio from an Opus DRED packet with 24-bit output. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] dred OpusDRED*: DRED state + * @param [in] dred_offset opus_int32: position of the redundancy to decode (in samples before the beginning of the real audio data in the packet). + * @param [out] pcm opus_int32*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel to decode in \a pcm. + * frame_size must be a multiple of 2.5 ms. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_decoder_dred_decode24(OpusDecoder *st, const OpusDRED *dred, opus_int32 dred_offset, opus_int32 *pcm, opus_int32 frame_size); + +/** Decode audio from an Opus DRED packet with floating point output. + * @param [in] st OpusDecoder*: Decoder state + * @param [in] dred OpusDRED*: DRED state + * @param [in] dred_offset opus_int32: position of the redundancy to decode (in samples before the beginning of the real audio data in the packet). + * @param [out] pcm float*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(float) + * @param [in] frame_size Number of samples per channel to decode in \a pcm. + * frame_size must be a multiple of 2.5 ms. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_EXPORT int opus_decoder_dred_decode_float(OpusDecoder *st, const OpusDRED *dred, opus_int32 dred_offset, float *pcm, opus_int32 frame_size); + + +/** Parse an opus packet into one or more frames. + * Opus_decode will perform this operation internally so most applications do + * not need to use this function. + * This function does not copy the frames, the returned pointers are pointers into + * the input packet. + * @param [in] data char*: Opus packet to be parsed + * @param [in] len opus_int32: size of data + * @param [out] out_toc char*: TOC pointer + * @param [out] frames char*[48] encapsulated frames + * @param [out] size opus_int16[48] sizes of the encapsulated frames + * @param [out] payload_offset int*: returns the position of the payload within the packet (in bytes) + * @returns number of frames + */ +OPUS_EXPORT int opus_packet_parse( + const unsigned char *data, + opus_int32 len, + unsigned char *out_toc, + const unsigned char *frames[48], + opus_int16 size[48], + int *payload_offset +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5); + +/** Gets the bandwidth of an Opus packet. + * @param [in] data char*: Opus packet + * @retval OPUS_BANDWIDTH_NARROWBAND Narrowband (4kHz bandpass) + * @retval OPUS_BANDWIDTH_MEDIUMBAND Mediumband (6kHz bandpass) + * @retval OPUS_BANDWIDTH_WIDEBAND Wideband (8kHz bandpass) + * @retval OPUS_BANDWIDTH_SUPERWIDEBAND Superwideband (12kHz bandpass) + * @retval OPUS_BANDWIDTH_FULLBAND Fullband (20kHz bandpass) + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_bandwidth(const unsigned char *data) OPUS_ARG_NONNULL(1); + +/** Gets the number of samples per frame from an Opus packet. + * @param [in] data char*: Opus packet. + * This must contain at least one byte of + * data. + * @param [in] Fs opus_int32: Sampling rate in Hz. + * This must be a multiple of 400, or + * inaccurate results will be returned. + * @returns Number of samples per frame. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_samples_per_frame(const unsigned char *data, opus_int32 Fs) OPUS_ARG_NONNULL(1); + +/** Gets the number of channels from an Opus packet. + * @param [in] data char*: Opus packet + * @returns Number of channels + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_channels(const unsigned char *data) OPUS_ARG_NONNULL(1); + +/** Gets the number of frames in an Opus packet. + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @returns Number of frames + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_frames(const unsigned char packet[], opus_int32 len) OPUS_ARG_NONNULL(1); + +/** Gets the number of samples of an Opus packet. + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @param [in] Fs opus_int32: Sampling rate in Hz. + * This must be a multiple of 400, or + * inaccurate results will be returned. + * @returns Number of samples + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_get_nb_samples(const unsigned char packet[], opus_int32 len, opus_int32 Fs) OPUS_ARG_NONNULL(1); + +/** Checks whether an Opus packet has LBRR. + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @returns 1 is LBRR is present, 0 otherwise + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_packet_has_lbrr(const unsigned char packet[], opus_int32 len); + +/** Gets the number of samples of an Opus packet. + * @param [in] dec OpusDecoder*: Decoder state + * @param [in] packet char*: Opus packet + * @param [in] len opus_int32: Length of packet + * @returns Number of samples + * @retval OPUS_BAD_ARG Insufficient data was passed to the function + * @retval OPUS_INVALID_PACKET The compressed data passed is corrupted or of an unsupported type + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_decoder_get_nb_samples(const OpusDecoder *dec, const unsigned char packet[], opus_int32 len) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + +/** Applies soft-clipping to bring a float signal within the [-1,1] range. If + * the signal is already in that range, nothing is done. If there are values + * outside of [-1,1], then the signal is clipped as smoothly as possible to + * both fit in the range and avoid creating excessive distortion in the + * process. + * @param [in,out] pcm float*: Input PCM and modified PCM + * @param [in] frame_size int Number of samples per channel to process + * @param [in] channels int: Number of channels + * @param [in,out] softclip_mem float*: State memory for the soft clipping process (one float per channel, initialized to zero) + */ +OPUS_EXPORT void opus_pcm_soft_clip(float *pcm, int frame_size, int channels, float *softclip_mem); + + +/**@}*/ + +/** @defgroup opus_repacketizer Repacketizer + * @{ + * + * The repacketizer can be used to merge multiple Opus packets into a single + * packet or alternatively to split Opus packets that have previously been + * merged. Splitting valid Opus packets is always guaranteed to succeed, + * whereas merging valid packets only succeeds if all frames have the same + * mode, bandwidth, and frame size, and when the total duration of the merged + * packet is no more than 120 ms. The 120 ms limit comes from the + * specification and limits decoder memory requirements at a point where + * framing overhead becomes negligible. + * + * The repacketizer currently only operates on elementary Opus + * streams. It will not manipualte multistream packets successfully, except in + * the degenerate case where they consist of data from a single stream. + * + * The repacketizing process starts with creating a repacketizer state, either + * by calling opus_repacketizer_create() or by allocating the memory yourself, + * e.g., + * @code + * OpusRepacketizer *rp; + * rp = (OpusRepacketizer*)malloc(opus_repacketizer_get_size()); + * if (rp != NULL) + * opus_repacketizer_init(rp); + * @endcode + * + * Then the application should submit packets with opus_repacketizer_cat(), + * extract new packets with opus_repacketizer_out() or + * opus_repacketizer_out_range(), and then reset the state for the next set of + * input packets via opus_repacketizer_init(). + * + * For example, to split a sequence of packets into individual frames: + * @code + * unsigned char *data; + * int len; + * while (get_next_packet(&data, &len)) + * { + * unsigned char out[1276]; + * opus_int32 out_len; + * int nb_frames; + * int err; + * int i; + * err = opus_repacketizer_cat(rp, data, len); + * if (err != OPUS_OK) + * { + * release_packet(data); + * return err; + * } + * nb_frames = opus_repacketizer_get_nb_frames(rp); + * for (i = 0; i < nb_frames; i++) + * { + * out_len = opus_repacketizer_out_range(rp, i, i+1, out, sizeof(out)); + * if (out_len < 0) + * { + * release_packet(data); + * return (int)out_len; + * } + * output_next_packet(out, out_len); + * } + * opus_repacketizer_init(rp); + * release_packet(data); + * } + * @endcode + * + * Alternatively, to combine a sequence of frames into packets that each + * contain up to TARGET_DURATION_MS milliseconds of data: + * @code + * // The maximum number of packets with duration TARGET_DURATION_MS occurs + * // when the frame size is 2.5 ms, for a total of (TARGET_DURATION_MS*2/5) + * // packets. + * unsigned char *data[(TARGET_DURATION_MS*2/5)+1]; + * opus_int32 len[(TARGET_DURATION_MS*2/5)+1]; + * int nb_packets; + * unsigned char out[1277*(TARGET_DURATION_MS*2/2)]; + * opus_int32 out_len; + * int prev_toc; + * nb_packets = 0; + * while (get_next_packet(data+nb_packets, len+nb_packets)) + * { + * int nb_frames; + * int err; + * nb_frames = opus_packet_get_nb_frames(data[nb_packets], len[nb_packets]); + * if (nb_frames < 1) + * { + * release_packets(data, nb_packets+1); + * return nb_frames; + * } + * nb_frames += opus_repacketizer_get_nb_frames(rp); + * // If adding the next packet would exceed our target, or it has an + * // incompatible TOC sequence, output the packets we already have before + * // submitting it. + * // N.B., The nb_packets > 0 check ensures we've submitted at least one + * // packet since the last call to opus_repacketizer_init(). Otherwise a + * // single packet longer than TARGET_DURATION_MS would cause us to try to + * // output an (invalid) empty packet. It also ensures that prev_toc has + * // been set to a valid value. Additionally, len[nb_packets] > 0 is + * // guaranteed by the call to opus_packet_get_nb_frames() above, so the + * // reference to data[nb_packets][0] should be valid. + * if (nb_packets > 0 && ( + * ((prev_toc & 0xFC) != (data[nb_packets][0] & 0xFC)) || + * opus_packet_get_samples_per_frame(data[nb_packets], 48000)*nb_frames > + * TARGET_DURATION_MS*48)) + * { + * out_len = opus_repacketizer_out(rp, out, sizeof(out)); + * if (out_len < 0) + * { + * release_packets(data, nb_packets+1); + * return (int)out_len; + * } + * output_next_packet(out, out_len); + * opus_repacketizer_init(rp); + * release_packets(data, nb_packets); + * data[0] = data[nb_packets]; + * len[0] = len[nb_packets]; + * nb_packets = 0; + * } + * err = opus_repacketizer_cat(rp, data[nb_packets], len[nb_packets]); + * if (err != OPUS_OK) + * { + * release_packets(data, nb_packets+1); + * return err; + * } + * prev_toc = data[nb_packets][0]; + * nb_packets++; + * } + * // Output the final, partial packet. + * if (nb_packets > 0) + * { + * out_len = opus_repacketizer_out(rp, out, sizeof(out)); + * release_packets(data, nb_packets); + * if (out_len < 0) + * return (int)out_len; + * output_next_packet(out, out_len); + * } + * @endcode + * + * An alternate way of merging packets is to simply call opus_repacketizer_cat() + * unconditionally until it fails. At that point, the merged packet can be + * obtained with opus_repacketizer_out() and the input packet for which + * opus_repacketizer_cat() needs to be re-added to a newly reinitialized + * repacketizer state. + */ + +typedef struct OpusRepacketizer OpusRepacketizer; + +/** Gets the size of an OpusRepacketizer structure. + * @returns The size in bytes. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_repacketizer_get_size(void); + +/** (Re)initializes a previously allocated repacketizer state. + * The state must be at least the size returned by opus_repacketizer_get_size(). + * This can be used for applications which use their own allocator instead of + * malloc(). + * It must also be called to reset the queue of packets waiting to be + * repacketized, which is necessary if the maximum packet duration of 120 ms + * is reached or if you wish to submit packets with a different Opus + * configuration (coding mode, audio bandwidth, frame size, or channel count). + * Failure to do so will prevent a new packet from being added with + * opus_repacketizer_cat(). + * @see opus_repacketizer_create + * @see opus_repacketizer_get_size + * @see opus_repacketizer_cat + * @param rp OpusRepacketizer*: The repacketizer state to + * (re)initialize. + * @returns A pointer to the same repacketizer state that was passed in. + */ +OPUS_EXPORT OpusRepacketizer *opus_repacketizer_init(OpusRepacketizer *rp) OPUS_ARG_NONNULL(1); + +/** Allocates memory and initializes the new repacketizer with + * opus_repacketizer_init(). + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusRepacketizer *opus_repacketizer_create(void); + +/** Frees an OpusRepacketizer allocated by + * opus_repacketizer_create(). + * @param[in] rp OpusRepacketizer*: State to be freed. + */ +OPUS_EXPORT void opus_repacketizer_destroy(OpusRepacketizer *rp); + +/** Add a packet to the current repacketizer state. + * This packet must match the configuration of any packets already submitted + * for repacketization since the last call to opus_repacketizer_init(). + * This means that it must have the same coding mode, audio bandwidth, frame + * size, and channel count. + * This can be checked in advance by examining the top 6 bits of the first + * byte of the packet, and ensuring they match the top 6 bits of the first + * byte of any previously submitted packet. + * The total duration of audio in the repacketizer state also must not exceed + * 120 ms, the maximum duration of a single packet, after adding this packet. + * + * The contents of the current repacketizer state can be extracted into new + * packets using opus_repacketizer_out() or opus_repacketizer_out_range(). + * + * In order to add a packet with a different configuration or to add more + * audio beyond 120 ms, you must clear the repacketizer state by calling + * opus_repacketizer_init(). + * If a packet is too large to add to the current repacketizer state, no part + * of it is added, even if it contains multiple frames, some of which might + * fit. + * If you wish to be able to add parts of such packets, you should first use + * another repacketizer to split the packet into pieces and add them + * individually. + * @see opus_repacketizer_out_range + * @see opus_repacketizer_out + * @see opus_repacketizer_init + * @param rp OpusRepacketizer*: The repacketizer state to which to + * add the packet. + * @param[in] data const unsigned char*: The packet data. + * The application must ensure + * this pointer remains valid + * until the next call to + * opus_repacketizer_init() or + * opus_repacketizer_destroy(). + * @param len opus_int32: The number of bytes in the packet data. + * @returns An error code indicating whether or not the operation succeeded. + * @retval #OPUS_OK The packet's contents have been added to the repacketizer + * state. + * @retval #OPUS_INVALID_PACKET The packet did not have a valid TOC sequence, + * the packet's TOC sequence was not compatible + * with previously submitted packets (because + * the coding mode, audio bandwidth, frame size, + * or channel count did not match), or adding + * this packet would increase the total amount of + * audio stored in the repacketizer state to more + * than 120 ms. + */ +OPUS_EXPORT int opus_repacketizer_cat(OpusRepacketizer *rp, const unsigned char *data, opus_int32 len) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + + +/** Construct a new packet from data previously submitted to the repacketizer + * state via opus_repacketizer_cat(). + * @param rp OpusRepacketizer*: The repacketizer state from which to + * construct the new packet. + * @param begin int: The index of the first frame in the current + * repacketizer state to include in the output. + * @param end int: One past the index of the last frame in the + * current repacketizer state to include in the + * output. + * @param[out] data const unsigned char*: The buffer in which to + * store the output packet. + * @param maxlen opus_int32: The maximum number of bytes to store in + * the output buffer. In order to guarantee + * success, this should be at least + * 1276 for a single frame, + * or for multiple frames, + * 1277*(end-begin). + * However, 1*(end-begin) plus + * the size of all packet data submitted to + * the repacketizer since the last call to + * opus_repacketizer_init() or + * opus_repacketizer_create() is also + * sufficient, and possibly much smaller. + * @returns The total size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG [begin,end) was an invalid range of + * frames (begin < 0, begin >= end, or end > + * opus_repacketizer_get_nb_frames()). + * @retval #OPUS_BUFFER_TOO_SMALL \a maxlen was insufficient to contain the + * complete output packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_repacketizer_out_range(OpusRepacketizer *rp, int begin, int end, unsigned char *data, opus_int32 maxlen) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Return the total number of frames contained in packet data submitted to + * the repacketizer state so far via opus_repacketizer_cat() since the last + * call to opus_repacketizer_init() or opus_repacketizer_create(). + * This defines the valid range of packets that can be extracted with + * opus_repacketizer_out_range() or opus_repacketizer_out(). + * @param rp OpusRepacketizer*: The repacketizer state containing the + * frames. + * @returns The total number of frames contained in the packet data submitted + * to the repacketizer state. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_repacketizer_get_nb_frames(OpusRepacketizer *rp) OPUS_ARG_NONNULL(1); + +/** Construct a new packet from data previously submitted to the repacketizer + * state via opus_repacketizer_cat(). + * This is a convenience routine that returns all the data submitted so far + * in a single packet. + * It is equivalent to calling + * @code + * opus_repacketizer_out_range(rp, 0, opus_repacketizer_get_nb_frames(rp), + * data, maxlen) + * @endcode + * @param rp OpusRepacketizer*: The repacketizer state from which to + * construct the new packet. + * @param[out] data const unsigned char*: The buffer in which to + * store the output packet. + * @param maxlen opus_int32: The maximum number of bytes to store in + * the output buffer. In order to guarantee + * success, this should be at least + * 1277*opus_repacketizer_get_nb_frames(rp). + * However, + * 1*opus_repacketizer_get_nb_frames(rp) + * plus the size of all packet data + * submitted to the repacketizer since the + * last call to opus_repacketizer_init() or + * opus_repacketizer_create() is also + * sufficient, and possibly much smaller. + * @returns The total size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BUFFER_TOO_SMALL \a maxlen was insufficient to contain the + * complete output packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_repacketizer_out(OpusRepacketizer *rp, unsigned char *data, opus_int32 maxlen) OPUS_ARG_NONNULL(1); + +/** Pads a given Opus packet to a larger size (possibly changing the TOC sequence). + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to pad. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param new_len opus_int32: The desired size of the packet after padding. + * This must be at least as large as len. + * @returns an error code + * @retval #OPUS_OK \a on success. + * @retval #OPUS_BAD_ARG \a len was less than 1 or new_len was less than len. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT int opus_packet_pad(unsigned char *data, opus_int32 len, opus_int32 new_len); + +/** Remove all padding from a given Opus packet and rewrite the TOC sequence to + * minimize space usage. + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to strip. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @returns The new size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG \a len was less than 1. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_packet_unpad(unsigned char *data, opus_int32 len); + +/** Pads a given Opus multi-stream packet to a larger size (possibly changing the TOC sequence). + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to pad. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param new_len opus_int32: The desired size of the packet after padding. + * This must be at least 1. + * @param nb_streams opus_int32: The number of streams (not channels) in the packet. + * This must be at least as large as len. + * @returns an error code + * @retval #OPUS_OK \a on success. + * @retval #OPUS_BAD_ARG \a len was less than 1. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT int opus_multistream_packet_pad(unsigned char *data, opus_int32 len, opus_int32 new_len, int nb_streams); + +/** Remove all padding from a given Opus multi-stream packet and rewrite the TOC sequence to + * minimize space usage. + * @param[in,out] data const unsigned char*: The buffer containing the + * packet to strip. + * @param len opus_int32: The size of the packet. + * This must be at least 1. + * @param nb_streams opus_int32: The number of streams (not channels) in the packet. + * This must be at least 1. + * @returns The new size of the output packet on success, or an error code + * on failure. + * @retval #OPUS_BAD_ARG \a len was less than 1 or new_len was less than len. + * @retval #OPUS_INVALID_PACKET \a data did not contain a valid Opus packet. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_packet_unpad(unsigned char *data, opus_int32 len, int nb_streams); + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_H */ diff --git a/sdk/include/opus/opus_custom.h b/sdk/include/opus/opus_custom.h new file mode 100644 index 00000000000..9464377cdc8 --- /dev/null +++ b/sdk/include/opus/opus_custom.h @@ -0,0 +1,381 @@ +/* Copyright (c) 2007-2008 CSIRO + Copyright (c) 2007-2009 Xiph.Org Foundation + Copyright (c) 2008-2012 Gregory Maxwell + Written by Jean-Marc Valin and Gregory Maxwell */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + @file opus_custom.h + @brief Opus-Custom reference implementation API + */ + +#ifndef OPUS_CUSTOM_H +#define OPUS_CUSTOM_H + +#include "opus_defines.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef CUSTOM_MODES +# define OPUS_CUSTOM_EXPORT OPUS_EXPORT +# define OPUS_CUSTOM_EXPORT_STATIC OPUS_EXPORT +#else +# define OPUS_CUSTOM_EXPORT +# ifdef OPUS_BUILD +# define OPUS_CUSTOM_EXPORT_STATIC static OPUS_INLINE +# else +# define OPUS_CUSTOM_EXPORT_STATIC +# endif +#endif + +/** @defgroup opus_custom Opus Custom + * @{ + * Opus Custom is an optional part of the Opus specification and + * reference implementation which uses a distinct API from the regular + * API and supports frame sizes that are not normally supported.\ Use + * of Opus Custom is discouraged for all but very special applications + * for which a frame size different from 2.5, 5, 10, or 20 ms is needed + * (for either complexity or latency reasons) and where interoperability + * is less important. + * + * In addition to the interoperability limitations the use of Opus custom + * disables a substantial chunk of the codec and generally lowers the + * quality available at a given bitrate. Normally when an application needs + * a different frame size from the codec it should buffer to match the + * sizes but this adds a small amount of delay which may be important + * in some very low latency applications. Some transports (especially + * constant rate RF transports) may also work best with frames of + * particular durations. + * + * Libopus only supports custom modes if they are enabled at compile time. + * + * The Opus Custom API is similar to the regular API but the + * @ref opus_encoder_create and @ref opus_decoder_create calls take + * an additional mode parameter which is a structure produced by + * a call to @ref opus_custom_mode_create. Both the encoder and decoder + * must create a mode using the same sample rate (fs) and frame size + * (frame size) so these parameters must either be signaled out of band + * or fixed in a particular implementation. + * + * Similar to regular Opus the custom modes support on the fly frame size + * switching, but the sizes available depend on the particular frame size in + * use. For some initial frame sizes on a single on the fly size is available. + */ + +/** Contains the state of an encoder. One encoder state is needed + for each stream. It is initialized once at the beginning of the + stream. Do *not* re-initialize the state for every frame. + @brief Encoder state + */ +typedef struct OpusCustomEncoder OpusCustomEncoder; + +/** State of the decoder. One decoder state is needed for each stream. + It is initialized once at the beginning of the stream. Do *not* + re-initialize the state for every frame. + @brief Decoder state + */ +typedef struct OpusCustomDecoder OpusCustomDecoder; + +/** The mode contains all the information necessary to create an + encoder. Both the encoder and decoder need to be initialized + with exactly the same mode, otherwise the output will be + corrupted. The mode MUST NOT BE DESTROYED until the encoders and + decoders that use it are destroyed as well. + @brief Mode configuration + */ +typedef struct OpusCustomMode OpusCustomMode; + +/** Creates a new mode struct. This will be passed to an encoder or + * decoder. The mode MUST NOT BE DESTROYED until the encoders and + * decoders that use it are destroyed as well. + * @param [in] Fs int: Sampling rate (8000 to 96000 Hz) + * @param [in] frame_size int: Number of samples (per channel) to encode in each + * packet (64 - 1024, prime factorization must contain zero or more 2s, 3s, or 5s and no other primes) + * @param [out] error int*: Returned error code (if NULL, no error will be returned) + * @return A newly created mode + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomMode *opus_custom_mode_create(opus_int32 Fs, int frame_size, int *error); + +/** Destroys a mode struct. Only call this after all encoders and + * decoders using this mode are destroyed as well. + * @param [in] mode OpusCustomMode*: Mode to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_mode_destroy(OpusCustomMode *mode); + + +#if !defined(OPUS_BUILD) || defined(CELT_ENCODER_C) + +/* Encoder */ +/** Gets the size of an OpusCustomEncoder structure. + * @param [in] mode OpusCustomMode *: Mode configuration + * @param [in] channels int: Number of channels + * @returns size + */ +OPUS_CUSTOM_EXPORT_STATIC OPUS_WARN_UNUSED_RESULT int opus_custom_encoder_get_size( + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1); + +# ifdef CUSTOM_MODES +/** Initializes a previously allocated encoder state + * The memory pointed to by st must be the size returned by opus_custom_encoder_get_size. + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_custom_encoder_create(),opus_custom_encoder_get_size() + * To reset a previously initialized state use the OPUS_RESET_STATE CTL. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] mode OpusCustomMode *: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * decoder) + * @param [in] channels int: Number of channels + * @return OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT int opus_custom_encoder_init( + OpusCustomEncoder *st, + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); +# endif +#endif + + +/** Creates a new encoder state. Each stream needs its own encoder + * state (can't be shared across simultaneous streams). + * @param [in] mode OpusCustomMode*: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * decoder) + * @param [in] channels int: Number of channels + * @param [out] error int*: Returns an error code + * @return Newly created encoder state. +*/ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomEncoder *opus_custom_encoder_create( + const OpusCustomMode *mode, + int channels, + int *error +) OPUS_ARG_NONNULL(1); + + +/** Destroys an encoder state. + * @param[in] st OpusCustomEncoder*: State to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_encoder_destroy(OpusCustomEncoder *st); + +/** Encodes a frame of audio. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] pcm float*: PCM audio in float format, with a normal range of +/-1.0. + * Samples with a range beyond +/-1.0 are supported but will + * be clipped by decoders using the integer API and should + * only be used if it is known that the far end supports + * extended dynamic range. There must be exactly + * frame_size samples per channel. + * @param [in] frame_size int: Number of samples per frame of input signal + * @param [out] compressed char *: The compressed data is written here. This may not alias pcm and must be at least maxCompressedBytes long. + * @param [in] maxCompressedBytes int: Maximum number of bytes to use for compressing the frame + * (can change from one frame to another) + * @return Number of bytes written to "compressed". + * If negative, an error has occurred (see error codes). It is IMPORTANT that + * the length returned be somehow transmitted to the decoder. Otherwise, no + * decoding is possible. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_encode_float( + OpusCustomEncoder *st, + const float *pcm, + int frame_size, + unsigned char *compressed, + int maxCompressedBytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a frame of audio. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] pcm opus_int16*: PCM audio in signed 16-bit format (native endian). + * There must be exactly frame_size samples per channel. + * @param [in] frame_size int: Number of samples per frame of input signal + * @param [out] compressed char *: The compressed data is written here. This may not alias pcm and must be at least maxCompressedBytes long. + * @param [in] maxCompressedBytes int: Maximum number of bytes to use for compressing the frame + * (can change from one frame to another) + * @return Number of bytes written to "compressed". + * If negative, an error has occurred (see error codes). It is IMPORTANT that + * the length returned be somehow transmitted to the decoder. Otherwise, no + * decoding is possible. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_encode( + OpusCustomEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *compressed, + int maxCompressedBytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a frame of audio. + * @param [in] st OpusCustomEncoder*: Encoder state + * @param [in] pcm opus_int32*: PCM audio in signed 32-bit format (native endian) representing (or slightly exceeding) 24-bit values. + * There must be exactly frame_size samples per channel. + * @param [in] frame_size int: Number of samples per frame of input signal + * @param [out] compressed char *: The compressed data is written here. This may not alias pcm and must be at least maxCompressedBytes long. + * @param [in] maxCompressedBytes int: Maximum number of bytes to use for compressing the frame + * (can change from one frame to another) + * @return Number of bytes written to "compressed". + * If negative, an error has occurred (see error codes). It is IMPORTANT that + * the length returned be somehow transmitted to the decoder. Otherwise, no + * decoding is possible. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_encode24( + OpusCustomEncoder *st, + const opus_int32 *pcm, + int frame_size, + unsigned char *compressed, + int maxCompressedBytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus custom encoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @see opus_encoderctls + */ +OPUS_CUSTOM_EXPORT int opus_custom_encoder_ctl(OpusCustomEncoder * OPUS_RESTRICT st, int request, ...) OPUS_ARG_NONNULL(1); + + +#if !defined(OPUS_BUILD) || defined(CELT_DECODER_C) +/* Decoder */ + +/** Gets the size of an OpusCustomDecoder structure. + * @param [in] mode OpusCustomMode *: Mode configuration + * @param [in] channels int: Number of channels + * @returns size + */ +OPUS_CUSTOM_EXPORT_STATIC OPUS_WARN_UNUSED_RESULT int opus_custom_decoder_get_size( + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1); + +/** Initializes a previously allocated decoder state + * The memory pointed to by st must be the size returned by opus_custom_decoder_get_size. + * This is intended for applications which use their own allocator instead of malloc. + * @see opus_custom_decoder_create(),opus_custom_decoder_get_size() + * To reset a previously initialized state use the OPUS_RESET_STATE CTL. + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] mode OpusCustomMode *: Contains all the information about the characteristics of + * the stream (must be the same characteristics as used for the + * encoder) + * @param [in] channels int: Number of channels + * @return OPUS_OK Success or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT_STATIC int opus_custom_decoder_init( + OpusCustomDecoder *st, + const OpusCustomMode *mode, + int channels +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2); + +#endif + + +/** Creates a new decoder state. Each stream needs its own decoder state (can't + * be shared across simultaneous streams). + * @param [in] mode OpusCustomMode: Contains all the information about the characteristics of the + * stream (must be the same characteristics as used for the encoder) + * @param [in] channels int: Number of channels + * @param [out] error int*: Returns an error code + * @return Newly created decoder state. + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT OpusCustomDecoder *opus_custom_decoder_create( + const OpusCustomMode *mode, + int channels, + int *error +) OPUS_ARG_NONNULL(1); + +/** Destroys a decoder state. + * @param[in] st OpusCustomDecoder*: State to be freed. + */ +OPUS_CUSTOM_EXPORT void opus_custom_decoder_destroy(OpusCustomDecoder *st); + +/** Decode an opus custom frame with floating point output + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len int: Number of bytes in payload + * @param [out] pcm float*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(float) + * @param [in] frame_size Number of samples per channel of available space in *pcm. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_decode_float( + OpusCustomDecoder *st, + const unsigned char *data, + int len, + float *pcm, + int frame_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an opus custom frame + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len int: Number of bytes in payload + * @param [out] pcm opus_int16*: Output signal (interleaved if 2 channels). length + * is frame_size*channels*sizeof(opus_int16) + * @param [in] frame_size Number of samples per channel of available space in *pcm. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_decode( + OpusCustomDecoder *st, + const unsigned char *data, + int len, + opus_int16 *pcm, + int frame_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode an opus custom frame + * @param [in] st OpusCustomDecoder*: Decoder state + * @param [in] data char*: Input payload. Use a NULL pointer to indicate packet loss + * @param [in] len int: Number of bytes in payload + * @param [out] pcm opus_int32*: Output signal (interleaved if 2 channels) representing (or slightly exceeding) 24-bit values. length + * is frame_size*channels*sizeof(opus_int32) + * @param [in] frame_size Number of samples per channel of available space in *pcm. + * @returns Number of decoded samples or @ref opus_errorcodes + */ +OPUS_CUSTOM_EXPORT OPUS_WARN_UNUSED_RESULT int opus_custom_decode24( + OpusCustomDecoder *st, + const unsigned char *data, + int len, + opus_int32 *pcm, + int frame_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on an Opus custom decoder. + * + * Generally the request and subsequent arguments are generated + * by a convenience macro. + * @see opus_genericctls + */ +OPUS_CUSTOM_EXPORT int opus_custom_decoder_ctl(OpusCustomDecoder * OPUS_RESTRICT st, int request, ...) OPUS_ARG_NONNULL(1); + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_CUSTOM_H */ diff --git a/sdk/include/opus/opus_defines.h b/sdk/include/opus/opus_defines.h new file mode 100644 index 00000000000..cd8f4dde867 --- /dev/null +++ b/sdk/include/opus/opus_defines.h @@ -0,0 +1,830 @@ +/* Copyright (c) 2010-2011 Xiph.Org Foundation, Skype Limited + Written by Jean-Marc Valin and Koen Vos */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_defines.h + * @brief Opus reference implementation constants + */ + +#ifndef OPUS_DEFINES_H +#define OPUS_DEFINES_H + +#include "opus_types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @defgroup opus_errorcodes Error codes + * @{ + */ +/** No error @hideinitializer*/ +#define OPUS_OK 0 +/** One or more invalid/out of range arguments @hideinitializer*/ +#define OPUS_BAD_ARG -1 +/** Not enough bytes allocated in the buffer @hideinitializer*/ +#define OPUS_BUFFER_TOO_SMALL -2 +/** An internal error was detected @hideinitializer*/ +#define OPUS_INTERNAL_ERROR -3 +/** The compressed data passed is corrupted @hideinitializer*/ +#define OPUS_INVALID_PACKET -4 +/** Invalid/unsupported request number @hideinitializer*/ +#define OPUS_UNIMPLEMENTED -5 +/** An encoder or decoder structure is invalid or already freed @hideinitializer*/ +#define OPUS_INVALID_STATE -6 +/** Memory allocation has failed @hideinitializer*/ +#define OPUS_ALLOC_FAIL -7 +/**@}*/ + +/** @cond OPUS_INTERNAL_DOC */ +/**Export control for opus functions */ + +#ifndef OPUS_EXPORT +# if defined(_WIN32) +# if defined(OPUS_BUILD) && defined(DLL_EXPORT) +# define OPUS_EXPORT __declspec(dllexport) +# else +# define OPUS_EXPORT +# endif +# elif defined(__GNUC__) && defined(OPUS_BUILD) +# define OPUS_EXPORT __attribute__ ((visibility ("default"))) +# else +# define OPUS_EXPORT +# endif +#endif + +# if !defined(OPUS_GNUC_PREREQ) +# if defined(__GNUC__)&&defined(__GNUC_MINOR__) +# define OPUS_GNUC_PREREQ(_maj,_min) \ + ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min)) +# else +# define OPUS_GNUC_PREREQ(_maj,_min) 0 +# endif +# endif + +#if (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L) ) +# if OPUS_GNUC_PREREQ(3,0) +# define OPUS_RESTRICT __restrict__ +# elif (defined(_MSC_VER) && _MSC_VER >= 1400) +# define OPUS_RESTRICT __restrict +# else +# define OPUS_RESTRICT +# endif +#else +# define OPUS_RESTRICT restrict +#endif + +#if (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L) ) +# if OPUS_GNUC_PREREQ(2,7) +# define OPUS_INLINE __inline__ +# elif (defined(_MSC_VER)) +# define OPUS_INLINE __inline +# else +# define OPUS_INLINE +# endif +#else +# define OPUS_INLINE inline +#endif + +/**Warning attributes for opus functions + * NONNULL is not used in OPUS_BUILD to avoid the compiler optimizing out + * some paranoid null checks. */ +#if defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4) +# define OPUS_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__)) +#else +# define OPUS_WARN_UNUSED_RESULT +#endif +#if !defined(OPUS_BUILD) && defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4) +# define OPUS_ARG_NONNULL(_x) __attribute__ ((__nonnull__(_x))) +#else +# define OPUS_ARG_NONNULL(_x) +#endif + +/** These are the actual Encoder CTL ID numbers. + * They should not be used directly by applications. + * In general, SETs should be even and GETs should be odd.*/ +#define OPUS_SET_APPLICATION_REQUEST 4000 +#define OPUS_GET_APPLICATION_REQUEST 4001 +#define OPUS_SET_BITRATE_REQUEST 4002 +#define OPUS_GET_BITRATE_REQUEST 4003 +#define OPUS_SET_MAX_BANDWIDTH_REQUEST 4004 +#define OPUS_GET_MAX_BANDWIDTH_REQUEST 4005 +#define OPUS_SET_VBR_REQUEST 4006 +#define OPUS_GET_VBR_REQUEST 4007 +#define OPUS_SET_BANDWIDTH_REQUEST 4008 +#define OPUS_GET_BANDWIDTH_REQUEST 4009 +#define OPUS_SET_COMPLEXITY_REQUEST 4010 +#define OPUS_GET_COMPLEXITY_REQUEST 4011 +#define OPUS_SET_INBAND_FEC_REQUEST 4012 +#define OPUS_GET_INBAND_FEC_REQUEST 4013 +#define OPUS_SET_PACKET_LOSS_PERC_REQUEST 4014 +#define OPUS_GET_PACKET_LOSS_PERC_REQUEST 4015 +#define OPUS_SET_DTX_REQUEST 4016 +#define OPUS_GET_DTX_REQUEST 4017 +#define OPUS_SET_VBR_CONSTRAINT_REQUEST 4020 +#define OPUS_GET_VBR_CONSTRAINT_REQUEST 4021 +#define OPUS_SET_FORCE_CHANNELS_REQUEST 4022 +#define OPUS_GET_FORCE_CHANNELS_REQUEST 4023 +#define OPUS_SET_SIGNAL_REQUEST 4024 +#define OPUS_GET_SIGNAL_REQUEST 4025 +#define OPUS_GET_LOOKAHEAD_REQUEST 4027 +/* #define OPUS_RESET_STATE 4028 */ +#define OPUS_GET_SAMPLE_RATE_REQUEST 4029 +#define OPUS_GET_FINAL_RANGE_REQUEST 4031 +#define OPUS_GET_PITCH_REQUEST 4033 +#define OPUS_SET_GAIN_REQUEST 4034 +#define OPUS_GET_GAIN_REQUEST 4045 /* Should have been 4035 */ +#define OPUS_SET_LSB_DEPTH_REQUEST 4036 +#define OPUS_GET_LSB_DEPTH_REQUEST 4037 +#define OPUS_GET_LAST_PACKET_DURATION_REQUEST 4039 +#define OPUS_SET_EXPERT_FRAME_DURATION_REQUEST 4040 +#define OPUS_GET_EXPERT_FRAME_DURATION_REQUEST 4041 +#define OPUS_SET_PREDICTION_DISABLED_REQUEST 4042 +#define OPUS_GET_PREDICTION_DISABLED_REQUEST 4043 +/* Don't use 4045, it's already taken by OPUS_GET_GAIN_REQUEST */ +#define OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST 4046 +#define OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST 4047 +#define OPUS_GET_IN_DTX_REQUEST 4049 +#define OPUS_SET_DRED_DURATION_REQUEST 4050 +#define OPUS_GET_DRED_DURATION_REQUEST 4051 +#define OPUS_SET_DNN_BLOB_REQUEST 4052 +/*#define OPUS_GET_DNN_BLOB_REQUEST 4053 */ + +/** Defines for the presence of extended APIs. */ +#define OPUS_HAVE_OPUS_PROJECTION_H + +/* Macros to trigger compilation errors when the wrong types are provided to a CTL */ +#define __opus_check_int(x) (((void)((x) == (opus_int32)0)), (opus_int32)(x)) + +#ifdef DISABLE_PTR_CHECK +/* Disable checks to prevent ubsan from complaining about NULL checks + in test_opus_api. */ +#define __opus_check_int_ptr(ptr) (ptr) +#define __opus_check_uint_ptr(ptr) (ptr) +#define __opus_check_uint8_ptr(ptr) (ptr) +#define __opus_check_val16_ptr(ptr) (ptr) +#define __opus_check_void_ptr(ptr) (ptr) +#else +#define __opus_check_int_ptr(ptr) ((ptr) + ((ptr) - (opus_int32*)(ptr))) +#define __opus_check_uint_ptr(ptr) ((ptr) + ((ptr) - (opus_uint32*)(ptr))) +#define __opus_check_uint8_ptr(ptr) ((ptr) + ((ptr) - (opus_uint8*)(ptr))) +#define __opus_check_val16_ptr(ptr) ((ptr) + ((ptr) - (opus_val16*)(ptr))) +#define __opus_check_void_ptr(x) ((void)((void *)0 == (x)), (x)) +#endif +/** @endcond */ + +/** @defgroup opus_ctlvalues Pre-defined values for CTL interface + * @see opus_genericctls, opus_encoderctls + * @{ + */ +/* Values for the various encoder CTLs */ +#define OPUS_AUTO -1000 /**opus_int32
    : Allowed values: 0-10, inclusive. + * + * @hideinitializer */ +#define OPUS_SET_COMPLEXITY(x) OPUS_SET_COMPLEXITY_REQUEST, __opus_check_int(x) +/** Gets the encoder's complexity configuration. + * @see OPUS_SET_COMPLEXITY + * @param[out] x opus_int32 *: Returns a value in the range 0-10, + * inclusive. + * @hideinitializer */ +#define OPUS_GET_COMPLEXITY(x) OPUS_GET_COMPLEXITY_REQUEST, __opus_check_int_ptr(x) + +/** Configures the bitrate in the encoder. + * Rates from 500 to 512000 bits per second are meaningful, as well as the + * special values #OPUS_AUTO and #OPUS_BITRATE_MAX. + * The value #OPUS_BITRATE_MAX can be used to cause the codec to use as much + * rate as it can, which is useful for controlling the rate by adjusting the + * output buffer size. + * @see OPUS_GET_BITRATE + * @param[in] x opus_int32: Bitrate in bits per second. The default + * is determined based on the number of + * channels and the input sampling rate. + * @hideinitializer */ +#define OPUS_SET_BITRATE(x) OPUS_SET_BITRATE_REQUEST, __opus_check_int(x) +/** Gets the encoder's bitrate configuration. + * @see OPUS_SET_BITRATE + * @param[out] x opus_int32 *: Returns the bitrate in bits per second. + * The default is determined based on the + * number of channels and the input + * sampling rate. + * @hideinitializer */ +#define OPUS_GET_BITRATE(x) OPUS_GET_BITRATE_REQUEST, __opus_check_int_ptr(x) + +/** Enables or disables variable bitrate (VBR) in the encoder. + * The configured bitrate may not be met exactly because frames must + * be an integer number of bytes in length. + * @see OPUS_GET_VBR + * @see OPUS_SET_VBR_CONSTRAINT + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Hard CBR. For LPC/hybrid modes at very low bit-rate, this can + * cause noticeable quality degradation.
    + *
    1
    VBR (default). The exact type of VBR is controlled by + * #OPUS_SET_VBR_CONSTRAINT.
    + *
    + * @hideinitializer */ +#define OPUS_SET_VBR(x) OPUS_SET_VBR_REQUEST, __opus_check_int(x) +/** Determine if variable bitrate (VBR) is enabled in the encoder. + * @see OPUS_SET_VBR + * @see OPUS_GET_VBR_CONSTRAINT + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    Hard CBR.
    + *
    1
    VBR (default). The exact type of VBR may be retrieved via + * #OPUS_GET_VBR_CONSTRAINT.
    + *
    + * @hideinitializer */ +#define OPUS_GET_VBR(x) OPUS_GET_VBR_REQUEST, __opus_check_int_ptr(x) + +/** Enables or disables constrained VBR in the encoder. + * This setting is ignored when the encoder is in CBR mode. + * @warning Only the MDCT mode of Opus currently heeds the constraint. + * Speech mode ignores it completely, hybrid mode may fail to obey it + * if the LPC layer uses more bitrate than the constraint would have + * permitted. + * @see OPUS_GET_VBR_CONSTRAINT + * @see OPUS_SET_VBR + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Unconstrained VBR.
    + *
    1
    Constrained VBR (default). This creates a maximum of one + * frame of buffering delay assuming a transport with a + * serialization speed of the nominal bitrate.
    + *
    + * @hideinitializer */ +#define OPUS_SET_VBR_CONSTRAINT(x) OPUS_SET_VBR_CONSTRAINT_REQUEST, __opus_check_int(x) +/** Determine if constrained VBR is enabled in the encoder. + * @see OPUS_SET_VBR_CONSTRAINT + * @see OPUS_GET_VBR + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    Unconstrained VBR.
    + *
    1
    Constrained VBR (default).
    + *
    + * @hideinitializer */ +#define OPUS_GET_VBR_CONSTRAINT(x) OPUS_GET_VBR_CONSTRAINT_REQUEST, __opus_check_int_ptr(x) + +/** Configures mono/stereo forcing in the encoder. + * This can force the encoder to produce packets encoded as either mono or + * stereo, regardless of the format of the input audio. This is useful when + * the caller knows that the input signal is currently a mono source embedded + * in a stereo stream. + * @see OPUS_GET_FORCE_CHANNELS + * @param[in] x opus_int32: Allowed values: + *
    + *
    #OPUS_AUTO
    Not forced (default)
    + *
    1
    Forced mono
    + *
    2
    Forced stereo
    + *
    + * @hideinitializer */ +#define OPUS_SET_FORCE_CHANNELS(x) OPUS_SET_FORCE_CHANNELS_REQUEST, __opus_check_int(x) +/** Gets the encoder's forced channel configuration. + * @see OPUS_SET_FORCE_CHANNELS + * @param[out] x opus_int32 *: + *
    + *
    #OPUS_AUTO
    Not forced (default)
    + *
    1
    Forced mono
    + *
    2
    Forced stereo
    + *
    + * @hideinitializer */ +#define OPUS_GET_FORCE_CHANNELS(x) OPUS_GET_FORCE_CHANNELS_REQUEST, __opus_check_int_ptr(x) + +/** Configures the maximum bandpass that the encoder will select automatically. + * Applications should normally use this instead of #OPUS_SET_BANDWIDTH + * (leaving that set to the default, #OPUS_AUTO). This allows the + * application to set an upper bound based on the type of input it is + * providing, but still gives the encoder the freedom to reduce the bandpass + * when the bitrate becomes too low, for better overall quality. + * @see OPUS_GET_MAX_BANDWIDTH + * @param[in] x opus_int32: Allowed values: + *
    + *
    OPUS_BANDWIDTH_NARROWBAND
    4 kHz passband
    + *
    OPUS_BANDWIDTH_MEDIUMBAND
    6 kHz passband
    + *
    OPUS_BANDWIDTH_WIDEBAND
    8 kHz passband
    + *
    OPUS_BANDWIDTH_SUPERWIDEBAND
    12 kHz passband
    + *
    OPUS_BANDWIDTH_FULLBAND
    20 kHz passband (default)
    + *
    + * @hideinitializer */ +#define OPUS_SET_MAX_BANDWIDTH(x) OPUS_SET_MAX_BANDWIDTH_REQUEST, __opus_check_int(x) + +/** Gets the encoder's configured maximum allowed bandpass. + * @see OPUS_SET_MAX_BANDWIDTH + * @param[out] x opus_int32 *: Allowed values: + *
    + *
    #OPUS_BANDWIDTH_NARROWBAND
    4 kHz passband
    + *
    #OPUS_BANDWIDTH_MEDIUMBAND
    6 kHz passband
    + *
    #OPUS_BANDWIDTH_WIDEBAND
    8 kHz passband
    + *
    #OPUS_BANDWIDTH_SUPERWIDEBAND
    12 kHz passband
    + *
    #OPUS_BANDWIDTH_FULLBAND
    20 kHz passband (default)
    + *
    + * @hideinitializer */ +#define OPUS_GET_MAX_BANDWIDTH(x) OPUS_GET_MAX_BANDWIDTH_REQUEST, __opus_check_int_ptr(x) + +/** Sets the encoder's bandpass to a specific value. + * This prevents the encoder from automatically selecting the bandpass based + * on the available bitrate. If an application knows the bandpass of the input + * audio it is providing, it should normally use #OPUS_SET_MAX_BANDWIDTH + * instead, which still gives the encoder the freedom to reduce the bandpass + * when the bitrate becomes too low, for better overall quality. + * @see OPUS_GET_BANDWIDTH + * @param[in] x opus_int32: Allowed values: + *
    + *
    #OPUS_AUTO
    (default)
    + *
    #OPUS_BANDWIDTH_NARROWBAND
    4 kHz passband
    + *
    #OPUS_BANDWIDTH_MEDIUMBAND
    6 kHz passband
    + *
    #OPUS_BANDWIDTH_WIDEBAND
    8 kHz passband
    + *
    #OPUS_BANDWIDTH_SUPERWIDEBAND
    12 kHz passband
    + *
    #OPUS_BANDWIDTH_FULLBAND
    20 kHz passband
    + *
    + * @hideinitializer */ +#define OPUS_SET_BANDWIDTH(x) OPUS_SET_BANDWIDTH_REQUEST, __opus_check_int(x) + +/** Configures the type of signal being encoded. + * This is a hint which helps the encoder's mode selection. + * @see OPUS_GET_SIGNAL + * @param[in] x opus_int32: Allowed values: + *
    + *
    #OPUS_AUTO
    (default)
    + *
    #OPUS_SIGNAL_VOICE
    Bias thresholds towards choosing LPC or Hybrid modes.
    + *
    #OPUS_SIGNAL_MUSIC
    Bias thresholds towards choosing MDCT modes.
    + *
    + * @hideinitializer */ +#define OPUS_SET_SIGNAL(x) OPUS_SET_SIGNAL_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured signal type. + * @see OPUS_SET_SIGNAL + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    #OPUS_AUTO
    (default)
    + *
    #OPUS_SIGNAL_VOICE
    Bias thresholds towards choosing LPC or Hybrid modes.
    + *
    #OPUS_SIGNAL_MUSIC
    Bias thresholds towards choosing MDCT modes.
    + *
    + * @hideinitializer */ +#define OPUS_GET_SIGNAL(x) OPUS_GET_SIGNAL_REQUEST, __opus_check_int_ptr(x) + + +/** Configures the encoder's intended application. + * The initial value is a mandatory argument to the encoder_create function. + * @see OPUS_GET_APPLICATION + * @param[in] x opus_int32: Returns one of the following values: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @hideinitializer */ +#define OPUS_SET_APPLICATION(x) OPUS_SET_APPLICATION_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured application. + * @see OPUS_SET_APPLICATION + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @hideinitializer */ +#define OPUS_GET_APPLICATION(x) OPUS_GET_APPLICATION_REQUEST, __opus_check_int_ptr(x) + +/** Gets the total samples of delay added by the entire codec. + * This can be queried by the encoder and then the provided number of samples can be + * skipped on from the start of the decoder's output to provide time aligned input + * and output. From the perspective of a decoding application the real data begins this many + * samples late. + * + * The decoder contribution to this delay is identical for all decoders, but the + * encoder portion of the delay may vary from implementation to implementation, + * version to version, or even depend on the encoder's initial configuration. + * Applications needing delay compensation should call this CTL rather than + * hard-coding a value. + * @param[out] x opus_int32 *: Number of lookahead samples + * @hideinitializer */ +#define OPUS_GET_LOOKAHEAD(x) OPUS_GET_LOOKAHEAD_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of inband forward error correction (FEC). + * @note This is only applicable to the LPC layer + * @see OPUS_GET_INBAND_FEC + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Disable inband FEC (default).
    + *
    1
    Inband FEC enabled. If the packet loss rate is sufficiently high, Opus will automatically switch to SILK even at high rates to enable use of that FEC.
    + *
    2
    Inband FEC enabled, but does not necessarily switch to SILK if we have music.
    + *
    + * @hideinitializer */ +#define OPUS_SET_INBAND_FEC(x) OPUS_SET_INBAND_FEC_REQUEST, __opus_check_int(x) +/** Gets encoder's configured use of inband forward error correction. + * @see OPUS_SET_INBAND_FEC + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    Inband FEC disabled (default).
    + *
    1
    Inband FEC enabled. If the packet loss rate is sufficiently high, Opus will automatically switch to SILK even at high rates to enable use of that FEC.
    + *
    2
    Inband FEC enabled, but does not necessarily switch to SILK if we have music.
    + *
    + * @hideinitializer */ +#define OPUS_GET_INBAND_FEC(x) OPUS_GET_INBAND_FEC_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's expected packet loss percentage. + * Higher values trigger progressively more loss resistant behavior in the encoder + * at the expense of quality at a given bitrate in the absence of packet loss, but + * greater quality under loss. + * @see OPUS_GET_PACKET_LOSS_PERC + * @param[in] x opus_int32: Loss percentage in the range 0-100, inclusive (default: 0). + * @hideinitializer */ +#define OPUS_SET_PACKET_LOSS_PERC(x) OPUS_SET_PACKET_LOSS_PERC_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured packet loss percentage. + * @see OPUS_SET_PACKET_LOSS_PERC + * @param[out] x opus_int32 *: Returns the configured loss percentage + * in the range 0-100, inclusive (default: 0). + * @hideinitializer */ +#define OPUS_GET_PACKET_LOSS_PERC(x) OPUS_GET_PACKET_LOSS_PERC_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of discontinuous transmission (DTX). + * @note This is only applicable to the LPC layer + * @see OPUS_GET_DTX + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Disable DTX (default).
    + *
    1
    Enabled DTX.
    + *
    + * @hideinitializer */ +#define OPUS_SET_DTX(x) OPUS_SET_DTX_REQUEST, __opus_check_int(x) +/** Gets encoder's configured use of discontinuous transmission. + * @see OPUS_SET_DTX + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    DTX disabled (default).
    + *
    1
    DTX enabled.
    + *
    + * @hideinitializer */ +#define OPUS_GET_DTX(x) OPUS_GET_DTX_REQUEST, __opus_check_int_ptr(x) +/** Configures the depth of signal being encoded. + * + * This is a hint which helps the encoder identify silence and near-silence. + * It represents the number of significant bits of linear intensity below + * which the signal contains ignorable quantization or other noise. + * + * For example, OPUS_SET_LSB_DEPTH(14) would be an appropriate setting + * for G.711 u-law input. OPUS_SET_LSB_DEPTH(16) would be appropriate + * for 16-bit linear pcm input with opus_encode_float(). + * + * When using opus_encode() instead of opus_encode_float(), or when libopus + * is compiled for fixed-point, the encoder uses the minimum of the value + * set here and the value 16. + * + * @see OPUS_GET_LSB_DEPTH + * @param[in] x opus_int32: Input precision in bits, between 8 and 24 + * (default: 24). + * @hideinitializer */ +#define OPUS_SET_LSB_DEPTH(x) OPUS_SET_LSB_DEPTH_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured signal depth. + * @see OPUS_SET_LSB_DEPTH + * @param[out] x opus_int32 *: Input precision in bits, between 8 and + * 24 (default: 24). + * @hideinitializer */ +#define OPUS_GET_LSB_DEPTH(x) OPUS_GET_LSB_DEPTH_REQUEST, __opus_check_int_ptr(x) + +/** Configures the encoder's use of variable duration frames. + * When variable duration is enabled, the encoder is free to use a shorter frame + * size than the one requested in the opus_encode*() call. + * It is then the user's responsibility + * to verify how much audio was encoded by checking the ToC byte of the encoded + * packet. The part of the audio that was not encoded needs to be resent to the + * encoder for the next call. Do not use this option unless you really + * know what you are doing. + * @see OPUS_GET_EXPERT_FRAME_DURATION + * @param[in] x opus_int32: Allowed values: + *
    + *
    OPUS_FRAMESIZE_ARG
    Select frame size from the argument (default).
    + *
    OPUS_FRAMESIZE_2_5_MS
    Use 2.5 ms frames.
    + *
    OPUS_FRAMESIZE_5_MS
    Use 5 ms frames.
    + *
    OPUS_FRAMESIZE_10_MS
    Use 10 ms frames.
    + *
    OPUS_FRAMESIZE_20_MS
    Use 20 ms frames.
    + *
    OPUS_FRAMESIZE_40_MS
    Use 40 ms frames.
    + *
    OPUS_FRAMESIZE_60_MS
    Use 60 ms frames.
    + *
    OPUS_FRAMESIZE_80_MS
    Use 80 ms frames.
    + *
    OPUS_FRAMESIZE_100_MS
    Use 100 ms frames.
    + *
    OPUS_FRAMESIZE_120_MS
    Use 120 ms frames.
    + *
    + * @hideinitializer */ +#define OPUS_SET_EXPERT_FRAME_DURATION(x) OPUS_SET_EXPERT_FRAME_DURATION_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured use of variable duration frames. + * @see OPUS_SET_EXPERT_FRAME_DURATION + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    OPUS_FRAMESIZE_ARG
    Select frame size from the argument (default).
    + *
    OPUS_FRAMESIZE_2_5_MS
    Use 2.5 ms frames.
    + *
    OPUS_FRAMESIZE_5_MS
    Use 5 ms frames.
    + *
    OPUS_FRAMESIZE_10_MS
    Use 10 ms frames.
    + *
    OPUS_FRAMESIZE_20_MS
    Use 20 ms frames.
    + *
    OPUS_FRAMESIZE_40_MS
    Use 40 ms frames.
    + *
    OPUS_FRAMESIZE_60_MS
    Use 60 ms frames.
    + *
    OPUS_FRAMESIZE_80_MS
    Use 80 ms frames.
    + *
    OPUS_FRAMESIZE_100_MS
    Use 100 ms frames.
    + *
    OPUS_FRAMESIZE_120_MS
    Use 120 ms frames.
    + *
    + * @hideinitializer */ +#define OPUS_GET_EXPERT_FRAME_DURATION(x) OPUS_GET_EXPERT_FRAME_DURATION_REQUEST, __opus_check_int_ptr(x) + +/** If set to 1, disables almost all use of prediction, making frames almost + * completely independent. This reduces quality. + * @see OPUS_GET_PREDICTION_DISABLED + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Enable prediction (default).
    + *
    1
    Disable prediction.
    + *
    + * @hideinitializer */ +#define OPUS_SET_PREDICTION_DISABLED(x) OPUS_SET_PREDICTION_DISABLED_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured prediction status. + * @see OPUS_SET_PREDICTION_DISABLED + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    Prediction enabled (default).
    + *
    1
    Prediction disabled.
    + *
    + * @hideinitializer */ +#define OPUS_GET_PREDICTION_DISABLED(x) OPUS_GET_PREDICTION_DISABLED_REQUEST, __opus_check_int_ptr(x) + +/** If non-zero, enables Deep Redundancy (DRED) and use the specified maximum number of 10-ms redundant frames + * @hideinitializer */ +#define OPUS_SET_DRED_DURATION(x) OPUS_SET_DRED_DURATION_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured Deep Redundancy (DRED) maximum number of frames. + * @hideinitializer */ +#define OPUS_GET_DRED_DURATION(x) OPUS_GET_DRED_DURATION_REQUEST, __opus_check_int_ptr(x) + +/** Provide external DNN weights from binary object (only when explicitly built without the weights) + * @hideinitializer */ +#define OPUS_SET_DNN_BLOB(data, len) OPUS_SET_DNN_BLOB_REQUEST, __opus_check_void_ptr(data), __opus_check_int(len) + + +/**@}*/ + +/** @defgroup opus_genericctls Generic CTLs + * + * These macros are used with the \c opus_decoder_ctl and + * \c opus_encoder_ctl calls to generate a particular + * request. + * + * When called on an \c OpusDecoder they apply to that + * particular decoder instance. When called on an + * \c OpusEncoder they apply to the corresponding setting + * on that encoder instance, if present. + * + * Some usage examples: + * + * @code + * int ret; + * opus_int32 pitch; + * ret = opus_decoder_ctl(dec_ctx, OPUS_GET_PITCH(&pitch)); + * if (ret == OPUS_OK) return ret; + * + * opus_encoder_ctl(enc_ctx, OPUS_RESET_STATE); + * opus_decoder_ctl(dec_ctx, OPUS_RESET_STATE); + * + * opus_int32 enc_bw, dec_bw; + * opus_encoder_ctl(enc_ctx, OPUS_GET_BANDWIDTH(&enc_bw)); + * opus_decoder_ctl(dec_ctx, OPUS_GET_BANDWIDTH(&dec_bw)); + * if (enc_bw != dec_bw) { + * printf("packet bandwidth mismatch!\n"); + * } + * @endcode + * + * @see opus_encoder, opus_decoder_ctl, opus_encoder_ctl, opus_decoderctls, opus_encoderctls + * @{ + */ + +/** Resets the codec state to be equivalent to a freshly initialized state. + * This should be called when switching streams in order to prevent + * the back to back decoding from giving different results from + * one at a time decoding. + * @hideinitializer */ +#define OPUS_RESET_STATE 4028 + +/** Gets the final state of the codec's entropy coder. + * This is used for testing purposes, + * The encoder and decoder state should be identical after coding a payload + * (assuming no data corruption or software bugs) + * + * @param[out] x opus_uint32 *: Entropy coder state + * + * @hideinitializer */ +#define OPUS_GET_FINAL_RANGE(x) OPUS_GET_FINAL_RANGE_REQUEST, __opus_check_uint_ptr(x) + +/** Gets the encoder's configured bandpass or the decoder's last bandpass. + * @see OPUS_SET_BANDWIDTH + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    #OPUS_AUTO
    (default)
    + *
    #OPUS_BANDWIDTH_NARROWBAND
    4 kHz passband
    + *
    #OPUS_BANDWIDTH_MEDIUMBAND
    6 kHz passband
    + *
    #OPUS_BANDWIDTH_WIDEBAND
    8 kHz passband
    + *
    #OPUS_BANDWIDTH_SUPERWIDEBAND
    12 kHz passband
    + *
    #OPUS_BANDWIDTH_FULLBAND
    20 kHz passband
    + *
    + * @hideinitializer */ +#define OPUS_GET_BANDWIDTH(x) OPUS_GET_BANDWIDTH_REQUEST, __opus_check_int_ptr(x) + +/** Gets the sampling rate the encoder or decoder was initialized with. + * This simply returns the Fs value passed to opus_encoder_init() + * or opus_decoder_init(). + * @param[out] x opus_int32 *: Sampling rate of encoder or decoder. + * @hideinitializer + */ +#define OPUS_GET_SAMPLE_RATE(x) OPUS_GET_SAMPLE_RATE_REQUEST, __opus_check_int_ptr(x) + +/** If set to 1, disables the use of phase inversion for intensity stereo, + * improving the quality of mono downmixes, but slightly reducing normal + * stereo quality. Disabling phase inversion in the decoder does not comply + * with RFC 6716, although it does not cause any interoperability issue and + * is expected to become part of the Opus standard once RFC 6716 is updated + * by draft-ietf-codec-opus-update. + * @see OPUS_GET_PHASE_INVERSION_DISABLED + * @param[in] x opus_int32: Allowed values: + *
    + *
    0
    Enable phase inversion (default).
    + *
    1
    Disable phase inversion.
    + *
    + * @hideinitializer */ +#define OPUS_SET_PHASE_INVERSION_DISABLED(x) OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int(x) +/** Gets the encoder's configured phase inversion status. + * @see OPUS_SET_PHASE_INVERSION_DISABLED + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    Stereo phase inversion enabled (default).
    + *
    1
    Stereo phase inversion disabled.
    + *
    + * @hideinitializer */ +#define OPUS_GET_PHASE_INVERSION_DISABLED(x) OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST, __opus_check_int_ptr(x) +/** Gets the DTX state of the encoder. + * Returns whether the last encoded frame was either a comfort noise update + * during DTX or not encoded because of DTX. + * @param[out] x opus_int32 *: Returns one of the following values: + *
    + *
    0
    The encoder is not in DTX.
    + *
    1
    The encoder is in DTX.
    + *
    + * @hideinitializer */ +#define OPUS_GET_IN_DTX(x) OPUS_GET_IN_DTX_REQUEST, __opus_check_int_ptr(x) + +/**@}*/ + +/** @defgroup opus_decoderctls Decoder related CTLs + * @see opus_genericctls, opus_encoderctls, opus_decoder + * @{ + */ + +/** Configures decoder gain adjustment. + * Scales the decoded output by a factor specified in Q8 dB units. + * This has a maximum range of -32768 to 32767 inclusive, and returns + * OPUS_BAD_ARG otherwise. The default is zero indicating no adjustment. + * This setting survives decoder reset. + * + * gain = pow(10, x/(20.0*256)) + * + * @param[in] x opus_int32: Amount to scale PCM signal by in Q8 dB units. + * @hideinitializer */ +#define OPUS_SET_GAIN(x) OPUS_SET_GAIN_REQUEST, __opus_check_int(x) +/** Gets the decoder's configured gain adjustment. @see OPUS_SET_GAIN + * + * @param[out] x opus_int32 *: Amount to scale PCM signal by in Q8 dB units. + * @hideinitializer */ +#define OPUS_GET_GAIN(x) OPUS_GET_GAIN_REQUEST, __opus_check_int_ptr(x) + +/** Gets the duration (in samples) of the last packet successfully decoded or concealed. + * @param[out] x opus_int32 *: Number of samples (at current sampling rate). + * @hideinitializer */ +#define OPUS_GET_LAST_PACKET_DURATION(x) OPUS_GET_LAST_PACKET_DURATION_REQUEST, __opus_check_int_ptr(x) + +/** Gets the pitch of the last decoded frame, if available. + * This can be used for any post-processing algorithm requiring the use of pitch, + * e.g. time stretching/shortening. If the last frame was not voiced, or if the + * pitch was not coded in the frame, then zero is returned. + * + * This CTL is only implemented for decoder instances. + * + * @param[out] x opus_int32 *: pitch period at 48 kHz (or 0 if not available) + * + * @hideinitializer */ +#define OPUS_GET_PITCH(x) OPUS_GET_PITCH_REQUEST, __opus_check_int_ptr(x) + +/**@}*/ + +/** @defgroup opus_libinfo Opus library information functions + * @{ + */ + +/** Converts an opus error code into a human readable string. + * + * @param[in] error int: Error number + * @returns Error string + */ +OPUS_EXPORT const char *opus_strerror(int error); + +/** Gets the libopus version string. + * + * Applications may look for the substring "-fixed" in the version string to + * determine whether they have a fixed-point or floating-point build at + * runtime. + * + * @returns Version string + */ +OPUS_EXPORT const char *opus_get_version_string(void); +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_DEFINES_H */ diff --git a/sdk/include/opus/opus_multistream.h b/sdk/include/opus/opus_multistream.h new file mode 100644 index 00000000000..752703b663d --- /dev/null +++ b/sdk/include/opus/opus_multistream.h @@ -0,0 +1,736 @@ +/* Copyright (c) 2011 Xiph.Org Foundation + Written by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_multistream.h + * @brief Opus reference implementation multistream API + */ + +#ifndef OPUS_MULTISTREAM_H +#define OPUS_MULTISTREAM_H + +#include "opus.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @cond OPUS_INTERNAL_DOC */ + +/** Macros to trigger compilation errors when the wrong types are provided to a + * CTL. */ +/**@{*/ +#define __opus_check_encstate_ptr(ptr) ((ptr) + ((ptr) - (OpusEncoder**)(ptr))) +#define __opus_check_decstate_ptr(ptr) ((ptr) + ((ptr) - (OpusDecoder**)(ptr))) +/**@}*/ + +/** These are the actual encoder and decoder CTL ID numbers. + * They should not be used directly by applications. + * In general, SETs should be even and GETs should be odd.*/ +/**@{*/ +#define OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST 5120 +#define OPUS_MULTISTREAM_GET_DECODER_STATE_REQUEST 5122 +/**@}*/ + +/** @endcond */ + +/** @defgroup opus_multistream_ctls Multistream specific encoder and decoder CTLs + * + * These are convenience macros that are specific to the + * opus_multistream_encoder_ctl() and opus_multistream_decoder_ctl() + * interface. + * The CTLs from @ref opus_genericctls, @ref opus_encoderctls, and + * @ref opus_decoderctls may be applied to a multistream encoder or decoder as + * well. + * In addition, you may retrieve the encoder or decoder state for an specific + * stream via #OPUS_MULTISTREAM_GET_ENCODER_STATE or + * #OPUS_MULTISTREAM_GET_DECODER_STATE and apply CTLs to it individually. + */ +/**@{*/ + +/** Gets the encoder state for an individual stream of a multistream encoder. + * @param[in] x opus_int32: The index of the stream whose encoder you + * wish to retrieve. + * This must be non-negative and less than + * the streams parameter used + * to initialize the encoder. + * @param[out] y OpusEncoder**: Returns a pointer to the given + * encoder state. + * @retval OPUS_BAD_ARG The index of the requested stream was out of range. + * @hideinitializer + */ +#define OPUS_MULTISTREAM_GET_ENCODER_STATE(x,y) OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST, __opus_check_int(x), __opus_check_encstate_ptr(y) + +/** Gets the decoder state for an individual stream of a multistream decoder. + * @param[in] x opus_int32: The index of the stream whose decoder you + * wish to retrieve. + * This must be non-negative and less than + * the streams parameter used + * to initialize the decoder. + * @param[out] y OpusDecoder**: Returns a pointer to the given + * decoder state. + * @retval OPUS_BAD_ARG The index of the requested stream was out of range. + * @hideinitializer + */ +#define OPUS_MULTISTREAM_GET_DECODER_STATE(x,y) OPUS_MULTISTREAM_GET_DECODER_STATE_REQUEST, __opus_check_int(x), __opus_check_decstate_ptr(y) + +/**@}*/ + +/** @defgroup opus_multistream Opus Multistream API + * @{ + * + * The multistream API allows individual Opus streams to be combined into a + * single packet, enabling support for up to 255 channels. Unlike an + * elementary Opus stream, the encoder and decoder must negotiate the channel + * configuration before the decoder can successfully interpret the data in the + * packets produced by the encoder. Some basic information, such as packet + * duration, can be computed without any special negotiation. + * + * The format for multistream Opus packets is defined in + *
    RFC 7845 + * and is based on the self-delimited Opus framing described in Appendix B of + * RFC 6716. + * Normal Opus packets are just a degenerate case of multistream Opus packets, + * and can be encoded or decoded with the multistream API by setting + * streams to 1 when initializing the encoder or + * decoder. + * + * Multistream Opus streams can contain up to 255 elementary Opus streams. + * These may be either "uncoupled" or "coupled", indicating that the decoder + * is configured to decode them to either 1 or 2 channels, respectively. + * The streams are ordered so that all coupled streams appear at the + * beginning. + * + * A mapping table defines which decoded channel i + * should be used for each input/output (I/O) channel j. This table is + * typically provided as an unsigned char array. + * Let i = mapping[j] be the index for I/O channel j. + * If i < 2*coupled_streams, then I/O channel j is + * encoded as the left channel of stream (i/2) if i + * is even, or as the right channel of stream (i/2) if + * i is odd. Otherwise, I/O channel j is encoded as + * mono in stream (i - coupled_streams), unless it has the special + * value 255, in which case it is omitted from the encoding entirely (the + * decoder will reproduce it as silence). Each value i must either + * be the special value 255 or be less than streams + coupled_streams. + * + * The output channels specified by the encoder + * should use the + * Vorbis + * channel ordering. A decoder may wish to apply an additional permutation + * to the mapping the encoder used to achieve a different output channel + * order (e.g. for outputting in WAV order). + * + * Each multistream packet contains an Opus packet for each stream, and all of + * the Opus packets in a single multistream packet must have the same + * duration. Therefore the duration of a multistream packet can be extracted + * from the TOC sequence of the first stream, which is located at the + * beginning of the packet, just like an elementary Opus stream: + * + * @code + * int nb_samples; + * int nb_frames; + * nb_frames = opus_packet_get_nb_frames(data, len); + * if (nb_frames < 1) + * return nb_frames; + * nb_samples = opus_packet_get_samples_per_frame(data, 48000) * nb_frames; + * @endcode + * + * The general encoding and decoding process proceeds exactly the same as in + * the normal @ref opus_encoder and @ref opus_decoder APIs. + * See their documentation for an overview of how to use the corresponding + * multistream functions. + */ + +/** Opus multistream encoder state. + * This contains the complete state of a multistream Opus encoder. + * It is position independent and can be freely copied. + * @see opus_multistream_encoder_create + * @see opus_multistream_encoder_init + */ +typedef struct OpusMSEncoder OpusMSEncoder; + +/** Opus multistream decoder state. + * This contains the complete state of a multistream Opus decoder. + * It is position independent and can be freely copied. + * @see opus_multistream_decoder_create + * @see opus_multistream_decoder_init + */ +typedef struct OpusMSDecoder OpusMSDecoder; + +/**\name Multistream encoder functions */ +/**@{*/ + +/** Gets the size of an OpusMSEncoder structure. + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_encoder_get_size( + int streams, + int coupled_streams +); + +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_surround_encoder_get_size( + int channels, + int mapping_family +); + + +/** Allocates and initializes a multistream encoder state. + * Call opus_multistream_encoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param[in] mapping const unsigned char[channels]: Mapping from + * encoded channels to input channels, as described in + * @ref opus_multistream. As an extra constraint, the + * multistream encoder does not allow encoding coupled + * streams for which one channel is unused since this + * is never a good idea. + * @param application int: The target encoder application. + * This must be one of the following: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSEncoder *opus_multistream_encoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int application, + int *error +) OPUS_ARG_NONNULL(5); + +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSEncoder *opus_multistream_surround_encoder_create( + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + unsigned char *mapping, + int application, + int *error +) OPUS_ARG_NONNULL(4) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6); + +/** Initialize a previously allocated multistream encoder state. + * The memory pointed to by \a st must be at least the size returned by + * opus_multistream_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_multistream_encoder_create + * @see opus_multistream_encoder_get_size + * @param st OpusMSEncoder*: Multistream encoder state to initialize. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param[in] mapping const unsigned char[channels]: Mapping from + * encoded channels to input channels, as described in + * @ref opus_multistream. As an extra constraint, the + * multistream encoder does not allow encoding coupled + * streams for which one channel is unused since this + * is never a good idea. + * @param application int: The target encoder application. + * This must be one of the following: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_multistream_encoder_init( + OpusMSEncoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + +OPUS_EXPORT int opus_multistream_surround_encoder_init( + OpusMSEncoder *st, + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + unsigned char *mapping, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6) OPUS_ARG_NONNULL(7); + +/** Encodes a multistream Opus frame. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param[in] pcm const opus_int16*: The input signal as interleaved + * samples. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_encode( + OpusMSEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a multistream Opus frame. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param[in] pcm const opus_int32*: The input signal as interleaved + * samples representing (or slightly exceeding) 24-bit values. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_encode24( + OpusMSEncoder *st, + const opus_int32 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a multistream Opus frame from floating point input. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param[in] pcm const float*: The input signal as interleaved + * samples with a normal range of + * +/-1.0. + * Samples with a range beyond +/-1.0 + * are supported but will be clipped by + * decoders using the integer API and + * should only be used if it is known + * that the far end supports extended + * dynamic range. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_encode_float( + OpusMSEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Frees an OpusMSEncoder allocated by + * opus_multistream_encoder_create(). + * @param st OpusMSEncoder*: Multistream encoder state to be freed. + */ +OPUS_EXPORT void opus_multistream_encoder_destroy(OpusMSEncoder *st); + +/** Perform a CTL function on a multistream Opus encoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusMSEncoder*: Multistream encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_encoderctls, or @ref opus_multistream_ctls. + * @see opus_genericctls + * @see opus_encoderctls + * @see opus_multistream_ctls + */ +OPUS_EXPORT int opus_multistream_encoder_ctl(OpusMSEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/**@}*/ + +/**\name Multistream decoder functions */ +/**@{*/ + +/** Gets the size of an OpusMSDecoder structure. + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_multistream_decoder_get_size( + int streams, + int coupled_streams +); + +/** Allocates and initializes a multistream decoder state. + * Call opus_multistream_decoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] mapping const unsigned char[channels]: Mapping from + * coded channels to output channels, as described in + * @ref opus_multistream. + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusMSDecoder *opus_multistream_decoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping, + int *error +) OPUS_ARG_NONNULL(5); + +/** Initialize a previously allocated decoder state object. + * The memory pointed to by \a st must be at least the size returned by + * opus_multistream_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_multistream_decoder_create + * @see opus_multistream_deocder_get_size + * @param st OpusMSEncoder*: Multistream encoder state to initialize. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] mapping const unsigned char[channels]: Mapping from + * coded channels to output channels, as described in + * @ref opus_multistream. + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_multistream_decoder_init( + OpusMSDecoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + const unsigned char *mapping +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + +/** Decode a multistream Opus packet. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_decode( + OpusMSDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode a multistream Opus packet. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int32*: Output signal, with interleaved + * samples representing (or slightly exceeding) 24-bit values. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_decode24( + OpusMSDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int32 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode a multistream Opus packet with floating point output. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_multistream_decode_float( + OpusMSDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Perform a CTL function on a multistream Opus decoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusMSDecoder*: Multistream decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_decoderctls, or @ref opus_multistream_ctls. + * @see opus_genericctls + * @see opus_decoderctls + * @see opus_multistream_ctls + */ +OPUS_EXPORT int opus_multistream_decoder_ctl(OpusMSDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + +/** Frees an OpusMSDecoder allocated by + * opus_multistream_decoder_create(). + * @param st OpusMSDecoder: Multistream decoder state to be freed. + */ +OPUS_EXPORT void opus_multistream_decoder_destroy(OpusMSDecoder *st); + +/**@}*/ + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_MULTISTREAM_H */ diff --git a/sdk/include/opus/opus_projection.h b/sdk/include/opus/opus_projection.h new file mode 100644 index 00000000000..76c75e564cc --- /dev/null +++ b/sdk/include/opus/opus_projection.h @@ -0,0 +1,643 @@ +/* Copyright (c) 2017 Google Inc. + Written by Andrew Allen */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/** + * @file opus_projection.h + * @brief Opus projection reference API + */ + +#ifndef OPUS_PROJECTION_H +#define OPUS_PROJECTION_H + +#include "opus_multistream.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** @cond OPUS_INTERNAL_DOC */ + +/** These are the actual encoder and decoder CTL ID numbers. + * They should not be used directly by applications.c + * In general, SETs should be even and GETs should be odd.*/ +/**@{*/ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN_REQUEST 6001 +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE_REQUEST 6003 +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_REQUEST 6005 +/**@}*/ + + +/** @endcond */ + +/** @defgroup opus_projection_ctls Projection specific encoder and decoder CTLs + * + * These are convenience macros that are specific to the + * opus_projection_encoder_ctl() and opus_projection_decoder_ctl() + * interface. + * The CTLs from @ref opus_genericctls, @ref opus_encoderctls, + * @ref opus_decoderctls, and @ref opus_multistream_ctls may be applied to a + * projection encoder or decoder as well. + */ +/**@{*/ + +/** Gets the gain (in dB. S7.8-format) of the demixing matrix from the encoder. + * @param[out] x opus_int32 *: Returns the gain (in dB. S7.8-format) + * of the demixing matrix. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN(x) OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN_REQUEST, __opus_check_int_ptr(x) + + +/** Gets the size in bytes of the demixing matrix from the encoder. + * @param[out] x opus_int32 *: Returns the size in bytes of the + * demixing matrix. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE(x) OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE_REQUEST, __opus_check_int_ptr(x) + + +/** Copies the demixing matrix to the supplied pointer location. + * @param[out] x unsigned char *: Returns the demixing matrix to the + * supplied pointer location. + * @param y opus_int32: The size in bytes of the reserved memory at the + * pointer location. + * @hideinitializer + */ +#define OPUS_PROJECTION_GET_DEMIXING_MATRIX(x,y) OPUS_PROJECTION_GET_DEMIXING_MATRIX_REQUEST, x, __opus_check_int(y) + + +/**@}*/ + +/** Opus projection encoder state. + * This contains the complete state of a projection Opus encoder. + * It is position independent and can be freely copied. + * @see opus_projection_ambisonics_encoder_create + */ +typedef struct OpusProjectionEncoder OpusProjectionEncoder; + + +/** Opus projection decoder state. + * This contains the complete state of a projection Opus decoder. + * It is position independent and can be freely copied. + * @see opus_projection_decoder_create + * @see opus_projection_decoder_init + */ +typedef struct OpusProjectionDecoder OpusProjectionDecoder; + + +/**\name Projection encoder functions */ +/**@{*/ + +/** Gets the size of an OpusProjectionEncoder structure. + * @param channels int: The total number of input channels to encode. + * This must be no more than 255. + * @param mapping_family int: The mapping family to use for selecting + * the appropriate projection. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_projection_ambisonics_encoder_get_size( + int channels, + int mapping_family +); + + +/** Allocates and initializes a projection encoder state. + * Call opus_projection_encoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param mapping_family int: The mapping family to use for selecting + * the appropriate projection. + * @param[out] streams int *: The total number of streams that will + * be encoded from the input. + * @param[out] coupled_streams int *: Number of coupled (2 channel) + * streams that will be encoded from the input. + * @param application int: The target encoder application. + * This must be one of the following: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusProjectionEncoder *opus_projection_ambisonics_encoder_create( + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + int application, + int *error +) OPUS_ARG_NONNULL(4) OPUS_ARG_NONNULL(5); + + +/** Initialize a previously allocated projection encoder state. + * The memory pointed to by \a st must be at least the size returned by + * opus_projection_ambisonics_encoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_projection_ambisonics_encoder_create + * @see opus_projection_ambisonics_encoder_get_size + * @param st OpusProjectionEncoder*: Projection encoder state to initialize. + * @param Fs opus_int32: Sampling rate of the input signal (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels in the input signal. + * This must be at most 255. + * It may be greater than the number of + * coded channels (streams + + * coupled_streams). + * @param streams int: The total number of streams to encode from the + * input. + * This must be no more than the number of channels. + * @param coupled_streams int: Number of coupled (2 channel) streams + * to encode. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * encoded channels (streams + + * coupled_streams) must be no + * more than the number of input channels. + * @param application int: The target encoder application. + * This must be one of the following: + *
    + *
    #OPUS_APPLICATION_VOIP
    + *
    Process signal for improved speech intelligibility.
    + *
    #OPUS_APPLICATION_AUDIO
    + *
    Favor faithfulness to the original input.
    + *
    #OPUS_APPLICATION_RESTRICTED_LOWDELAY
    + *
    Configure the minimum possible coding delay by disabling certain modes + * of operation.
    + *
    + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_projection_ambisonics_encoder_init( + OpusProjectionEncoder *st, + opus_int32 Fs, + int channels, + int mapping_family, + int *streams, + int *coupled_streams, + int application +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(5) OPUS_ARG_NONNULL(6); + + +/** Encodes a projection Opus frame. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param[in] pcm const opus_int16*: The input signal as interleaved + * samples. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_encode( + OpusProjectionEncoder *st, + const opus_int16 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + +/** Encodes a projection Opus frame. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param[in] pcm const opus_int32*: The input signal as interleaved + * samples representing (or slightly exceeding) 24-bit values. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_encode24( + OpusProjectionEncoder *st, + const opus_int32 *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + + +/** Encodes a projection Opus frame from floating point input. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param[in] pcm const float*: The input signal as interleaved + * samples with a normal range of + * +/-1.0. + * Samples with a range beyond +/-1.0 + * are supported but will be clipped by + * decoders using the integer API and + * should only be used if it is known + * that the far end supports extended + * dynamic range. + * This must contain + * frame_size*channels + * samples. + * @param frame_size int: Number of samples per channel in the input + * signal. + * This must be an Opus frame size for the + * encoder's sampling rate. + * For example, at 48 kHz the permitted values + * are 120, 240, 480, 960, 1920, and 2880. + * Passing in a duration of less than 10 ms + * (480 samples at 48 kHz) will prevent the + * encoder from using the LPC or hybrid modes. + * @param[out] data unsigned char*: Output payload. + * This must contain storage for at + * least \a max_data_bytes. + * @param [in] max_data_bytes opus_int32: Size of the allocated + * memory for the output + * payload. This may be + * used to impose an upper limit on + * the instant bitrate, but should + * not be used as the only bitrate + * control. Use #OPUS_SET_BITRATE to + * control the bitrate. + * @returns The length of the encoded packet (in bytes) on success or a + * negative error code (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_encode_float( + OpusProjectionEncoder *st, + const float *pcm, + int frame_size, + unsigned char *data, + opus_int32 max_data_bytes +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(2) OPUS_ARG_NONNULL(4); + + +/** Frees an OpusProjectionEncoder allocated by + * opus_projection_ambisonics_encoder_create(). + * @param st OpusProjectionEncoder*: Projection encoder state to be freed. + */ +OPUS_EXPORT void opus_projection_encoder_destroy(OpusProjectionEncoder *st); + + +/** Perform a CTL function on a projection Opus encoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusProjectionEncoder*: Projection encoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_encoderctls, @ref opus_multistream_ctls, or + * @ref opus_projection_ctls + * @see opus_genericctls + * @see opus_encoderctls + * @see opus_multistream_ctls + * @see opus_projection_ctls + */ +OPUS_EXPORT int opus_projection_encoder_ctl(OpusProjectionEncoder *st, int request, ...) OPUS_ARG_NONNULL(1); + + +/**@}*/ + +/**\name Projection decoder functions */ +/**@{*/ + +/** Gets the size of an OpusProjectionDecoder structure. + * @param channels int: The total number of output channels. + * This must be no more than 255. + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @returns The size in bytes on success, or a negative error code + * (see @ref opus_errorcodes) on error. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT opus_int32 opus_projection_decoder_get_size( + int channels, + int streams, + int coupled_streams +); + + +/** Allocates and initializes a projection decoder state. + * Call opus_projection_decoder_destroy() to release + * this object when finished. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] demixing_matrix const unsigned char[demixing_matrix_size]: Demixing matrix + * that mapping from coded channels to output channels, + * as described in @ref opus_projection and + * @ref opus_projection_ctls. + * @param demixing_matrix_size opus_int32: The size in bytes of the + * demixing matrix, as + * described in @ref + * opus_projection_ctls. + * @param[out] error int *: Returns #OPUS_OK on success, or an error + * code (see @ref opus_errorcodes) on + * failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT OpusProjectionDecoder *opus_projection_decoder_create( + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + unsigned char *demixing_matrix, + opus_int32 demixing_matrix_size, + int *error +) OPUS_ARG_NONNULL(5); + + +/** Initialize a previously allocated projection decoder state object. + * The memory pointed to by \a st must be at least the size returned by + * opus_projection_decoder_get_size(). + * This is intended for applications which use their own allocator instead of + * malloc. + * To reset a previously initialized state, use the #OPUS_RESET_STATE CTL. + * @see opus_projection_decoder_create + * @see opus_projection_deocder_get_size + * @param st OpusProjectionDecoder*: Projection encoder state to initialize. + * @param Fs opus_int32: Sampling rate to decode at (in Hz). + * This must be one of 8000, 12000, 16000, + * 24000, or 48000. + * @param channels int: Number of channels to output. + * This must be at most 255. + * It may be different from the number of coded + * channels (streams + + * coupled_streams). + * @param streams int: The total number of streams coded in the + * input. + * This must be no more than 255. + * @param coupled_streams int: Number of streams to decode as coupled + * (2 channel) streams. + * This must be no larger than the total + * number of streams. + * Additionally, The total number of + * coded channels (streams + + * coupled_streams) must be no + * more than 255. + * @param[in] demixing_matrix const unsigned char[demixing_matrix_size]: Demixing matrix + * that mapping from coded channels to output channels, + * as described in @ref opus_projection and + * @ref opus_projection_ctls. + * @param demixing_matrix_size opus_int32: The size in bytes of the + * demixing matrix, as + * described in @ref + * opus_projection_ctls. + * @returns #OPUS_OK on success, or an error code (see @ref opus_errorcodes) + * on failure. + */ +OPUS_EXPORT int opus_projection_decoder_init( + OpusProjectionDecoder *st, + opus_int32 Fs, + int channels, + int streams, + int coupled_streams, + unsigned char *demixing_matrix, + opus_int32 demixing_matrix_size +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(6); + + +/** Decode a projection Opus packet. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_decode( + OpusProjectionDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int16 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode a projection Opus packet. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int32*: Output signal, with interleaved + * samples representing (or slightly exceeding) 24-bit values. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_decode24( + OpusProjectionDecoder *st, + const unsigned char *data, + opus_int32 len, + opus_int32 *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + +/** Decode a projection Opus packet with floating point output. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param[in] data const unsigned char*: Input payload. + * Use a NULL + * pointer to indicate packet + * loss. + * @param len opus_int32: Number of bytes in payload. + * @param[out] pcm opus_int16*: Output signal, with interleaved + * samples. + * This must contain room for + * frame_size*channels + * samples. + * @param frame_size int: The number of samples per channel of + * available space in \a pcm. + * If this is less than the maximum packet duration + * (120 ms; 5760 for 48kHz), this function will not be capable + * of decoding some packets. In the case of PLC (data==NULL) + * or FEC (decode_fec=1), then frame_size needs to be exactly + * the duration of audio that is missing, otherwise the + * decoder will not be in the optimal state to decode the + * next incoming packet. For the PLC and FEC cases, frame_size + * must be a multiple of 2.5 ms. + * @param decode_fec int: Flag (0 or 1) to request that any in-band + * forward error correction data be decoded. + * If no such data is available, the frame is + * decoded as if it were lost. + * @returns Number of samples decoded on success or a negative error code + * (see @ref opus_errorcodes) on failure. + */ +OPUS_EXPORT OPUS_WARN_UNUSED_RESULT int opus_projection_decode_float( + OpusProjectionDecoder *st, + const unsigned char *data, + opus_int32 len, + float *pcm, + int frame_size, + int decode_fec +) OPUS_ARG_NONNULL(1) OPUS_ARG_NONNULL(4); + + +/** Perform a CTL function on a projection Opus decoder. + * + * Generally the request and subsequent arguments are generated by a + * convenience macro. + * @param st OpusProjectionDecoder*: Projection decoder state. + * @param request This and all remaining parameters should be replaced by one + * of the convenience macros in @ref opus_genericctls, + * @ref opus_decoderctls, @ref opus_multistream_ctls, or + * @ref opus_projection_ctls. + * @see opus_genericctls + * @see opus_decoderctls + * @see opus_multistream_ctls + * @see opus_projection_ctls + */ +OPUS_EXPORT int opus_projection_decoder_ctl(OpusProjectionDecoder *st, int request, ...) OPUS_ARG_NONNULL(1); + + +/** Frees an OpusProjectionDecoder allocated by + * opus_projection_decoder_create(). + * @param st OpusProjectionDecoder: Projection decoder state to be freed. + */ +OPUS_EXPORT void opus_projection_decoder_destroy(OpusProjectionDecoder *st); + + +/**@}*/ + +/**@}*/ + +#ifdef __cplusplus +} +#endif + +#endif /* OPUS_PROJECTION_H */ diff --git a/sdk/include/opus/opus_types.h b/sdk/include/opus/opus_types.h new file mode 100644 index 00000000000..7cf675580ff --- /dev/null +++ b/sdk/include/opus/opus_types.h @@ -0,0 +1,166 @@ +/* (C) COPYRIGHT 1994-2002 Xiph.Org Foundation */ +/* Modified by Jean-Marc Valin */ +/* + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +/* opus_types.h based on ogg_types.h from libogg */ + +/** + @file opus_types.h + @brief Opus reference implementation types +*/ +#ifndef OPUS_TYPES_H +#define OPUS_TYPES_H + +#define opus_int int /* used for counters etc; at least 16 bits */ +#define opus_int64 long long +#define opus_int8 signed char + +#define opus_uint unsigned int /* used for counters etc; at least 16 bits */ +#define opus_uint64 unsigned long long +#define opus_uint8 unsigned char + +/* Use the real stdint.h if it's there (taken from Paul Hsieh's pstdint.h) */ +#if (defined(__STDC__) && __STDC__ && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || (defined(__GNUC__) && (defined(_STDINT_H) || defined(_STDINT_H_)) || defined (HAVE_STDINT_H)) +#include +# undef opus_int64 +# undef opus_int8 +# undef opus_uint64 +# undef opus_uint8 + typedef int8_t opus_int8; + typedef uint8_t opus_uint8; + typedef int16_t opus_int16; + typedef uint16_t opus_uint16; + typedef int32_t opus_int32; + typedef uint32_t opus_uint32; + typedef int64_t opus_int64; + typedef uint64_t opus_uint64; +#elif defined(_WIN32) + +# if defined(__CYGWIN__) +# include <_G_config.h> + typedef _G_int32_t opus_int32; + typedef _G_uint32_t opus_uint32; + typedef _G_int16 opus_int16; + typedef _G_uint16 opus_uint16; +# elif defined(__MINGW32__) + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; +# elif defined(__MWERKS__) + typedef int opus_int32; + typedef unsigned int opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; +# else + /* MSVC/Borland */ + typedef __int32 opus_int32; + typedef unsigned __int32 opus_uint32; + typedef __int16 opus_int16; + typedef unsigned __int16 opus_uint16; +# endif + +#elif defined(__MACOS__) + +# include + typedef SInt16 opus_int16; + typedef UInt16 opus_uint16; + typedef SInt32 opus_int32; + typedef UInt32 opus_uint32; + +#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */ + +# include + typedef int16_t opus_int16; + typedef u_int16_t opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined(__BEOS__) + + /* Be */ +# include + typedef int16 opus_int16; + typedef u_int16 opus_uint16; + typedef int32_t opus_int32; + typedef u_int32_t opus_uint32; + +#elif defined (__EMX__) + + /* OS/2 GCC */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined (DJGPP) + + /* DJGPP */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(R5900) + + /* PS2 EE */ + typedef int opus_int32; + typedef unsigned opus_uint32; + typedef short opus_int16; + typedef unsigned short opus_uint16; + +#elif defined(__SYMBIAN32__) + + /* Symbian GCC */ + typedef signed short opus_int16; + typedef unsigned short opus_uint16; + typedef signed int opus_int32; + typedef unsigned int opus_uint32; + +#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef long opus_int32; + typedef unsigned long opus_uint32; + +#elif defined(CONFIG_TI_C6X) + + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#else + + /* Give up, take a reasonable guess */ + typedef short opus_int16; + typedef unsigned short opus_uint16; + typedef int opus_int32; + typedef unsigned int opus_uint32; + +#endif + +#endif /* OPUS_TYPES_H */ diff --git a/sdk/libraries/x64/opus.lib b/sdk/libraries/x64/opus.lib new file mode 100644 index 0000000000000000000000000000000000000000..304d7516a36b89733cb0994c8f3c515fb1406c97 GIT binary patch literal 304964 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 UK%|Zu1F|GbjwUOB++3QPzgNaUs{jB1 literal 0 HcmV?d00001 diff --git a/sdk/libraries/x86/opus.lib b/sdk/libraries/x86/opus.lib new file mode 100644 index 0000000000000000000000000000000000000000..299b35dc751a5700d929553a051cd5ff6128d4fd GIT binary patch literal 22876 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 F{{uR~Y*hdN literal 0 HcmV?d00001 From 1583ab0a3075ae812046525203e8e7e81dc76894 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Mon, 7 Jul 2025 23:54:38 -0700 Subject: [PATCH 30/36] [xrSound] Add opus and libspeexdsp as dependencies --- src/xrSound/xrSound.vcxproj | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/xrSound/xrSound.vcxproj b/src/xrSound/xrSound.vcxproj index 00699bda04e..8da5f5a340d 100644 --- a/src/xrSound/xrSound.vcxproj +++ b/src/xrSound/xrSound.vcxproj @@ -21,11 +21,11 @@ - $(xrSdkDir)include\AL;%(AdditionalIncludeDirectories) + $(xrSdkDir)include\AL;$(xrSdkDir)include\speex;$(xrSdkDir)include\opus;%(AdditionalIncludeDirectories) _USRDLL;XRSOUND_EXPORTS;%(PreprocessorDefinitions) - libogg_static.lib;libvorbis_static.lib;libvorbisfile.lib;OpenAL32.lib;%(AdditionalDependencies) + libogg_static.lib;libvorbis_static.lib;libvorbisfile.lib;OpenAL32.lib;opus.lib;speexdsp.lib;%(AdditionalDependencies) @@ -97,6 +97,12 @@ Document + + Document + + + Document + From 067624655ac4bb9331de59bbc544602f03a7ca28 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Tue, 8 Jul 2025 14:35:29 -0700 Subject: [PATCH 31/36] [xrSound] Add new voicechat files to project --- src/xrSound/RingBuffer.h | 90 ++++++++++++++ src/xrSound/SoundRecorderA.cpp | 162 ++++++++++++++++++++++++ src/xrSound/SoundRecorderA.h | 42 +++++++ src/xrSound/SoundVoiceChat.cpp | 85 +++++++++++++ src/xrSound/SoundVoiceChat.h | 36 ++++++ src/xrSound/SpeexPreprocess.cpp | 86 +++++++++++++ src/xrSound/SpeexPreprocess.h | 23 ++++ src/xrSound/StreamPlayerA.cpp | 193 +++++++++++++++++++++++++++++ src/xrSound/StreamPlayerA.h | 47 +++++++ src/xrSound/VoicePacketsPacker.cpp | 82 ++++++++++++ src/xrSound/VoicePacketsPacker.h | 26 ++++ src/xrSound/xrSound.vcxproj | 11 ++ 12 files changed, 883 insertions(+) create mode 100644 src/xrSound/RingBuffer.h create mode 100644 src/xrSound/SoundRecorderA.cpp create mode 100644 src/xrSound/SoundRecorderA.h create mode 100644 src/xrSound/SoundVoiceChat.cpp create mode 100644 src/xrSound/SoundVoiceChat.h create mode 100644 src/xrSound/SpeexPreprocess.cpp create mode 100644 src/xrSound/SpeexPreprocess.h create mode 100644 src/xrSound/StreamPlayerA.cpp create mode 100644 src/xrSound/StreamPlayerA.h create mode 100644 src/xrSound/VoicePacketsPacker.cpp create mode 100644 src/xrSound/VoicePacketsPacker.h diff --git a/src/xrSound/RingBuffer.h b/src/xrSound/RingBuffer.h new file mode 100644 index 00000000000..56c28357226 --- /dev/null +++ b/src/xrSound/RingBuffer.h @@ -0,0 +1,90 @@ +#pragma once + +// Original code: +// https://github.com/altmp/alt-voice/blob/master/src/CRingBuffer.h + +template +class CRingBuffer +{ + T _buffer[BufferSize] = { 0 }; + size_t _writeCursor = 0; + size_t _readCursor = 0; +public: + CRingBuffer() + { + } + + ~CRingBuffer() + { + } + + void Write(const T* buffer, size_t count) + { + + if ((_writeCursor + count) > (_readCursor + BufferSize)) + { + //Buffer autoclear on overflow + _writeCursor = 0; + _readCursor = 0; + + if (count > BufferSize) + count = BufferSize; + } + + size_t _writeCursorDivided = _writeCursor % BufferSize; + if ((_writeCursorDivided + count) > BufferSize) + { + size_t writeTail = BufferSize - _writeCursorDivided; + if (writeTail != 0) + memcpy(&_buffer[_writeCursorDivided], &buffer[0], writeTail * sizeof(T)); + + size_t writeHead = count - writeTail; + if (writeHead != 0) + memcpy(&_buffer[0], &buffer[writeTail], writeHead * sizeof(T)); + } + else + memcpy(&_buffer[_writeCursorDivided], buffer, count * sizeof(T)); + _writeCursor += count; + } + + size_t Read(T* buffer, size_t count) + { + size_t _readCursorDivided = _readCursor % BufferSize; + if ((_readCursor + count) > _writeCursor) + count = _writeCursor - _readCursor; + + if ((_readCursorDivided + count) > BufferSize) + { + size_t readTail = BufferSize - _readCursorDivided; + if (readTail != 0) + memcpy(&buffer[0], &_buffer[_readCursorDivided], readTail * sizeof(T)); + + size_t readHead = count - readTail; + if (readHead != 0) + memcpy(&buffer[readTail], &_buffer[0], readHead * sizeof(T)); + } + else + memcpy(buffer, &_buffer[_readCursorDivided], count * sizeof(T)); + + _readCursor += count; + return count; + } + + size_t BytesToRead() + { + size_t toRead = _writeCursor - _readCursor; + return toRead; + } + + bool IsHalfFull() + { + bool halfFull = (_writeCursor - _readCursor) > (BufferSize / 2); + return halfFull; + } + + float GetFillLevel() + { + float fillLevel = (_writeCursor - _readCursor) / (float)BufferSize; + return fillLevel; + } +}; \ No newline at end of file diff --git a/src/xrSound/SoundRecorderA.cpp b/src/xrSound/SoundRecorderA.cpp new file mode 100644 index 00000000000..cfb9785af00 --- /dev/null +++ b/src/xrSound/SoundRecorderA.cpp @@ -0,0 +1,162 @@ +#include "stdafx.h" +#include "Sound.h" +#include "SoundRecorderA.h" +#include "SpeexPreprocess.h" +#include "VoicePacketsPacker.h" +#include "ISoundRecorder.h" + +namespace +{ + union ShortByteUnion { + signed short asShort; + unsigned char asBytes[2]; + }; +} + +CSoundRecorderA::CSoundRecorderA(ALuint sampleRate, ALenum format, ALuint samplesPerBuffer) + : m_sampleRate(sampleRate), m_format(format), m_samplesPerBuffer(samplesPerBuffer) +{ + m_bytesPerSample = 1; + + switch (format) + { + case AL_FORMAT_MONO16: + m_bytesPerSample = 2; + break; + case AL_FORMAT_STEREO8: + m_bytesPerSample = 2; + break; + case AL_FORMAT_STEREO16: + m_bytesPerSample = 4; + break; + default: + break; + } + + m_buffer = new ALbyte[samplesPerBuffer * m_bytesPerSample]; + m_speexPreprocess = xr_new(sampleRate, samplesPerBuffer); + m_speexPreprocess->EnableAGC(psSoundRecorderMode); + m_speexPreprocess->EnableDenoise(psSoundRecorderDenoise); +} + + +CSoundRecorderA::~CSoundRecorderA() +{ + Destroy(); + + delete[] m_buffer; + m_buffer = nullptr; + + xr_delete(m_speexPreprocess); + m_speexPreprocess = nullptr; +} + +bool CSoundRecorderA::Init(CVoicePacketsPacker* packetsPacker) +{ + m_packetsPacker = packetsPacker; + + alGetError(); + + m_pCaptureDevice = alcCaptureOpenDevice(0, m_sampleRate, m_format, m_samplesPerBuffer * 2); + + ALenum error = alGetError(); + if (error == AL_NO_ERROR) + { + alcCaptureStart(m_pCaptureDevice); + return true; + } + return false; +} + +void CSoundRecorderA::Destroy() +{ + if (m_pCaptureDevice == nullptr) + return; + + alcCaptureStop(m_pCaptureDevice); + alcCaptureCloseDevice(m_pCaptureDevice); + m_pCaptureDevice = nullptr; +} + +void CSoundRecorderA::Start() +{ + m_started = true; +} + +void CSoundRecorderA::Stop() +{ + m_started = false; +} + +void CSoundRecorderA::Update() +{ + if (m_pCaptureDevice == nullptr) + return; + + ALint samples = 0; + alcGetIntegerv(m_pCaptureDevice, ALC_CAPTURE_SAMPLES, (ALCsizei)sizeof(ALint), &samples); + + if (samples < m_samplesPerBuffer) + return; + + alcCaptureSamples(m_pCaptureDevice, m_buffer, m_samplesPerBuffer); + + if (m_started && m_packetsPacker) + { + ALuint availableBytes = m_samplesPerBuffer * m_bytesPerSample; + + if (psSoundRecorderMode) + { + if (!m_speexPreprocess->IsAGCEnabled()) + m_speexPreprocess->EnableAGC(true); + } + else + { + if (m_speexPreprocess->IsAGCEnabled()) + m_speexPreprocess->EnableAGC(false); + } + + if (psSoundRecorderDenoise) + { + if (!m_speexPreprocess->IsDenoiseEnabled()) + m_speexPreprocess->EnableDenoise(true); + } + else + { + if (m_speexPreprocess->IsDenoiseEnabled()) + m_speexPreprocess->EnableDenoise(false); + } + + if (psSoundRecorderMode == 0) + { + ChangeGain(m_buffer, availableBytes); + } + + if (psSoundRecorderMode || psSoundRecorderDenoise) + { + m_speexPreprocess->RunPreprocess((short*)m_buffer); + } + + m_packetsPacker->AddPacket(m_buffer, availableBytes); + } +} + +void CSoundRecorderA::ChangeGain(ALbyte* buffer, ALint length) +{ + const float modifier = psSoundVRecorder; + + for (int i = 0; i < length; i += 2) + { + ShortByteUnion ab; + ab.asBytes[0] = buffer[i]; + ab.asBytes[1] = buffer[i + 1]; + + if ((float)ab.asShort >= 32676.f / modifier) + ab.asShort = 32676; + else + ab.asShort = (short)((float)ab.asShort * modifier); + + buffer[i] = ab.asBytes[0]; + buffer[i + 1] = ab.asBytes[1]; + } +} \ No newline at end of file diff --git a/src/xrSound/SoundRecorderA.h b/src/xrSound/SoundRecorderA.h new file mode 100644 index 00000000000..ed00cd28019 --- /dev/null +++ b/src/xrSound/SoundRecorderA.h @@ -0,0 +1,42 @@ +#pragma once +#include "al.h" +#include "alc.h" +#include "ISoundRecorder.h" + +class CSpeexPreprocess; +class CVoicePacketsPacker; + +class CSoundRecorderA : public ISoundRecorder +{ +public: + CSoundRecorderA(ALuint sampleRate, ALenum format, ALuint samplesPerBuffer); + ~CSoundRecorderA(); + + bool Init(CVoicePacketsPacker* packetsPacker); + void Destroy(); + + virtual bool IsStarted() { return m_started; } + + virtual void Start(); + virtual void Stop(); + + void Update(); + +private: + void ChangeGain(ALbyte* buffer, ALint length); + +private: + ALuint m_sampleRate; + ALenum m_format; + ALint m_samplesPerBuffer; + + ALuint m_bytesPerSample; + + ALbyte* m_buffer; + bool m_started = false; + + CSpeexPreprocess* m_speexPreprocess = nullptr; + CVoicePacketsPacker* m_packetsPacker = nullptr; + + ALCdevice* m_pCaptureDevice = nullptr; +}; \ No newline at end of file diff --git a/src/xrSound/SoundVoiceChat.cpp b/src/xrSound/SoundVoiceChat.cpp new file mode 100644 index 00000000000..06a3a849bfd --- /dev/null +++ b/src/xrSound/SoundVoiceChat.cpp @@ -0,0 +1,85 @@ +#include "stdafx.h" +#include "SoundVoiceChat.h" + +SoundVoiceChat::SoundVoiceChat(ALCcontext* pContext) + : m_pContext(pContext) +{ +} + +SoundVoiceChat::~SoundVoiceChat() +{ + Destroy(); +} + +void SoundVoiceChat::Destroy() +{ + if (m_pVoicePacker) + { + xr_delete(m_pVoicePacker); + m_pVoicePacker = nullptr; + } + + if (m_pRecorder) + { + xr_delete(m_pRecorder); + m_pRecorder = nullptr; + } +} + +ISoundRecorder* SoundVoiceChat::CreateRecorder(IVoicePacketSender* sender) +{ + Destroy(); + m_pVoicePacker = xr_new(); + m_pVoicePacker->AddSender(sender); + + m_pRecorder = xr_new(VOICE_SAMPLE_RATE, VOICE_FORMAT, VOICE_SAMPLES_PER_BUFFER); + + if (!m_pRecorder->Init(m_pVoicePacker)) + { + Destroy(); + return nullptr; + } + + return (ISoundRecorder*)m_pRecorder; +} + +IStreamPlayer* SoundVoiceChat::CreateStreamPlayer() +{ + IStreamPlayer* player = (IStreamPlayer*)xr_new(VOICE_SAMPLE_RATE, VOICE_FORMAT, m_pContext); + m_players.push_back(player); + return player; +} + +void SoundVoiceChat::DestroySoundPlayer(IStreamPlayer* player) +{ + xr_vector::iterator I = m_players.begin(), J; + xr_vector::iterator E = m_players.end(); + + for (; I != E;) + { + if ((*I) == player) + { + xr_delete(*I); + + J = I; + ++I; + m_players.erase(J); + } + else { + ++I; + } + } +} + +void SoundVoiceChat::Update(const Fvector& P, const Fvector& D, const Fvector& N) +{ + if (m_pRecorder) + m_pRecorder->Update(); + + if (m_pVoicePacker) + m_pVoicePacker->Update(); + + for (auto& player : m_players) + player->Update(); + +} \ No newline at end of file diff --git a/src/xrSound/SoundVoiceChat.h b/src/xrSound/SoundVoiceChat.h new file mode 100644 index 00000000000..d26f7df4f32 --- /dev/null +++ b/src/xrSound/SoundVoiceChat.h @@ -0,0 +1,36 @@ +#pragma once +#include "al.h" +#include "alc.h" +#include "ISoundVoiceChat.h" +#include "SoundRecorderA.h" +#include "StreamPlayerA.h" +#include "VoicePacketsPacker.h" + +#define VOICE_SAMPLE_RATE 24000 +#define VOICE_SAMPLES_PER_BUFFER 960 +#define VOICE_FORMAT AL_FORMAT_MONO16 + +class SoundVoiceChat : ISoundVoiceChat +{ +public: + SoundVoiceChat(ALCcontext* pContext); + ~SoundVoiceChat(); + + ISoundRecorder* CreateRecorder(IVoicePacketSender* sender); + + IStreamPlayer* CreateStreamPlayer(); + void DestroySoundPlayer(IStreamPlayer* player); + + void Update(const Fvector& P, const Fvector& D, const Fvector& N); + +private: + void Destroy(); + +private: + ALCcontext* m_pContext; + + CSoundRecorderA* m_pRecorder = nullptr; + CVoicePacketsPacker* m_pVoicePacker = nullptr; + + xr_vector m_players; +}; \ No newline at end of file diff --git a/src/xrSound/SpeexPreprocess.cpp b/src/xrSound/SpeexPreprocess.cpp new file mode 100644 index 00000000000..1c8853566e9 --- /dev/null +++ b/src/xrSound/SpeexPreprocess.cpp @@ -0,0 +1,86 @@ +#include "stdafx.h" +#include "SpeexPreprocess.h" + +CSpeexPreprocess::CSpeexPreprocess(int sampleRate, int samplesPerBuffer) +{ + m_pState = speex_preprocess_state_init(samplesPerBuffer, sampleRate); + + // DEFAULT VALUES + int useDenoise = 0; + int useAcg = 0; + float agcLevel = 30000; + + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_DENOISE, &useDenoise); + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_AGC, &useAcg); + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_AGC_LEVEL, &agcLevel); +} + +CSpeexPreprocess::~CSpeexPreprocess() +{ + speex_preprocess_state_destroy(m_pState); + m_pState = nullptr; +} + +bool CSpeexPreprocess::EnableDenoise(bool enable) +{ + int value = enable ? 1 : 0; + if (m_pState) + { + return speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_DENOISE, &value) == 0; + } + return false; +} + +bool CSpeexPreprocess::EnableAGC(bool enable) +{ + int value = enable ? 1 : 0; + if (m_pState) + { + return speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_AGC, &value) == 0; + } + return false; +} + +bool CSpeexPreprocess::IsAGCEnabled() +{ + int result = 0; + if (m_pState) + { + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_GET_AGC, &result); + } + return result != 0; +} + +bool CSpeexPreprocess::IsDenoiseEnabled() +{ + int result = 0; + if (m_pState) + { + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_GET_DENOISE, &result); + } + return result != 0; +} + +bool CSpeexPreprocess::SetDenoiseLevel(int level) +{ + if (m_pState) + { + return speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_SET_NOISE_SUPPRESS, &level) == 0; + } + return false; +} + +int CSpeexPreprocess::GetDenoiseLevel() +{ + int n = 0; + if (m_pState) + { + speex_preprocess_ctl(m_pState, SPEEX_PREPROCESS_GET_NOISE_SUPPRESS, &n); + } + return n; +} + +void CSpeexPreprocess::RunPreprocess(short* buffer) +{ + speex_preprocess_run(m_pState, buffer); +} \ No newline at end of file diff --git a/src/xrSound/SpeexPreprocess.h b/src/xrSound/SpeexPreprocess.h new file mode 100644 index 00000000000..ca47cd3d4d6 --- /dev/null +++ b/src/xrSound/SpeexPreprocess.h @@ -0,0 +1,23 @@ +#pragma once +#include "speex/speex_preprocess.h" + +class CSpeexPreprocess +{ +public: + CSpeexPreprocess(int sampleRate, int samplesPerBuffer); + ~CSpeexPreprocess(); + + bool EnableAGC(bool enable); + bool IsAGCEnabled(); + + bool IsDenoiseEnabled(); + bool EnableDenoise(bool enable); + + int GetDenoiseLevel(); + bool SetDenoiseLevel(int level); + + void RunPreprocess(short* buffer); + +private: + SpeexPreprocessState* m_pState = nullptr; +}; \ No newline at end of file diff --git a/src/xrSound/StreamPlayerA.cpp b/src/xrSound/StreamPlayerA.cpp new file mode 100644 index 00000000000..ca9560b48b0 --- /dev/null +++ b/src/xrSound/StreamPlayerA.cpp @@ -0,0 +1,193 @@ +#include "stdafx.h" +#include "StreamPlayerA.h" +#include "SoundVoiceChat.h" +#include "SoundRender_Core.h" + +CStreamPlayerA::CStreamPlayerA(ALuint sampleRate, ALenum format, ALCcontext* context) + : m_sampleRate(sampleRate), m_format(format), m_pContext(context), m_source(0) +{ + alcMakeContextCurrent(m_pContext); + + alGenBuffers(NUM_BUFFERS, m_buffers); + for (uint16_t i = 0; i < NUM_BUFFERS; ++i) + m_freeBuffers.push_back(m_buffers[i]); + + alGenSources(1, &m_source); + + alSourcef(m_source, AL_SOURCE_TYPE, AL_STREAMING); + alSourcei(m_source, AL_LOOPING, AL_FALSE); + alSourcef(m_source, AL_MIN_GAIN, 0.f); + alSourcef(m_source, AL_MAX_GAIN, 1.0f); + alSourcef(m_source, AL_ROLLOFF_FACTOR, 0.f); + alSourcef(m_source, AL_GAIN, 1.f); + alSourcei(m_source, AL_BUFFER, NULL); + + + int error; + m_pOpusDecoder = opus_decoder_create(VOICE_SAMPLE_RATE, 1, &error); + + if (error != OPUS_OK) + { + opus_decoder_destroy(m_pOpusDecoder); + R_ASSERT2(0, "Opus error"); + } +} + +CStreamPlayerA::~CStreamPlayerA() +{ + if (alIsSource(m_source)) + { + alSourceStop(m_source); + alSourcei(m_source, AL_BUFFER, NULL); + alDeleteBuffers(NUM_BUFFERS, m_buffers); + alDeleteSources(1, &m_source); + } + m_source = 0; + + + if (m_pOpusDecoder != nullptr) + { + opus_decoder_destroy(m_pOpusDecoder); + m_pOpusDecoder = nullptr; + } +} + +void CStreamPlayerA::SetDistance(float value) +{ + m_isRelative = (value == 0); + alSourcei(m_source, AL_SOURCE_RELATIVE, m_isRelative); + m_distance = value; + clamp(m_distance, 0.f, 1000.f); +} + +void CStreamPlayerA::SetPosition(const Fvector& pos) +{ + alSource3f(m_source, AL_POSITION, pos.x, pos.y, -pos.z); + m_position = pos; +} + +void CStreamPlayerA::PushToPlay(const void* data, int count) +{ + R_ASSERT2(m_source != 0 && alIsSource(m_source), "Not initialized sound source"); + + opus_int16 decoded_buf[1024]; + + int decoded_len = opus_decode(m_pOpusDecoder, (BYTE*)data, count, decoded_buf, VOICE_SAMPLES_PER_BUFFER, 0); + if (decoded_len <= 0) + { + return; + } + + m_ringBuffer.Write(decoded_buf, decoded_len); +} + +void CStreamPlayerA::UpdateVolume() +{ + if (!alIsSource(m_source)) + return; + + if (!IsPlaying()) + return; + + float volume = 1.f; + + if (!m_isRelative) + { + float distance = SoundRender->listener_position().distance_to(m_position); + + const float max_distance = m_distance; + const float min_distance = (m_distance / 3); + + if (distance <= min_distance) + { + volume = 1.f; + } + else if (distance > max_distance) + { + volume = 0.f; + } + else + { + volume = (max_distance - distance) / (max_distance - min_distance); + } + + volume = volume * psSoundVPlayers; + clamp(volume, 0.01f, 1.f); + } + + alSourcef(m_source, AL_GAIN, volume); +} + +void CStreamPlayerA::Update() +{ + if (m_source == 0 || !alIsSource(m_source)) + return; + + ALint processed, state; + alGetSourcei(m_source, AL_SOURCE_STATE, &state); + alGetSourcei(m_source, AL_BUFFERS_PROCESSED, &processed); + + if (alGetError() != AL_NO_ERROR) + { + return; + } + + const bool isPlaying = state == AL_PLAYING; + + if (!m_ringBuffer.BytesToRead() && !isPlaying) + { + while (processed > 0) + { + ALuint bufid; + alSourceUnqueueBuffers(m_source, 1, &bufid); + m_freeBuffers.push_back(bufid); + processed--; + } + return; + } + + if (m_ringBuffer.IsHalfFull()) + alSourcef(m_source, AL_PITCH, 1.05f); + else + alSourcef(m_source, AL_PITCH, 1.f); + + while (processed > 0) + { + ALuint bufferId; + alSourceUnqueueBuffers(m_source, 1, &bufferId); + m_freeBuffers.push_back(bufferId); + processed--; + } + + while (m_ringBuffer.BytesToRead() && m_freeBuffers.size()) + { + opus_int16 tempBuffer[4096]; + const ALuint bufferId = m_freeBuffers.front(); + m_freeBuffers.pop_front(); + + ALsizei readed = 0; + int bufferIndex = 0; + readed = (ALsizei)m_ringBuffer.Read(tempBuffer, 4096); + if (readed > 0) + { + alBufferData(bufferId, m_format, tempBuffer, readed * sizeof(opus_int16), m_sampleRate); + alSourceQueueBuffers(m_source, 1, &bufferId); + } + else + break; + } + + UpdateVolume(); + + if (!isPlaying) + { + alSourcePlay(m_source); + } +} + +bool CStreamPlayerA::IsPlaying() +{ + ALint state; + alGetSourcei(m_source, AL_SOURCE_STATE, &state); + return state == AL_PLAYING; +} \ No newline at end of file diff --git a/src/xrSound/StreamPlayerA.h b/src/xrSound/StreamPlayerA.h new file mode 100644 index 00000000000..33590fff9a2 --- /dev/null +++ b/src/xrSound/StreamPlayerA.h @@ -0,0 +1,47 @@ +#pragma once +#include "al.h" +#include "alc.h" +#include "opus/opus.h" +#include "RingBuffer.h" +#include "IStreamPlayer.h" +#include "xrCommon/xr_deque.h" + +class CStreamPlayerA : public IStreamPlayer +{ +public: + CStreamPlayerA(ALuint sampleRate, ALenum format, ALCcontext* context); + ~CStreamPlayerA(); + + virtual void PushToPlay(const void* data, int count); + virtual bool IsPlaying(); + + virtual void Update(); + + virtual void SetDistance(float value); + virtual void SetPosition(const Fvector& pos); +private: + void UpdateVolume(); + +private: + + static constexpr ALsizei RING_BUFFER_SIZE = 262144; + CRingBuffer m_ringBuffer; + + static constexpr ALsizei NUM_BUFFERS = 16; + ALuint m_buffers[NUM_BUFFERS]; + + xr_deque m_freeBuffers; + + ALuint m_sampleRate; + ALenum m_format; + + ALCcontext* m_pContext; + ALuint m_source; + + OpusDecoder* m_pOpusDecoder; + + Fvector m_position {0, 0, 0}; + + float m_distance = 0; + bool m_isRelative = false; +}; diff --git a/src/xrSound/VoicePacketsPacker.cpp b/src/xrSound/VoicePacketsPacker.cpp new file mode 100644 index 00000000000..1a10d99ea17 --- /dev/null +++ b/src/xrSound/VoicePacketsPacker.cpp @@ -0,0 +1,82 @@ +#include "stdafx.h" +#include "opus/opus.h" +#include "VoicePacketsPacker.h" +#include "SoundVoiceChat.h" +#include "VoicePacket.h" + +#define OPUS_BITRATE 16000 + +CVoicePacketsPacker::CVoicePacketsPacker() +{ + int error; + m_pEncoder = opus_encoder_create(VOICE_SAMPLE_RATE, 1, OPUS_APPLICATION_VOIP, &error); + if (error != OPUS_OK) + { + opus_encoder_destroy(m_pEncoder); + R_ASSERT2(0, "Opus error"); + } + + opus_encoder_ctl(m_pEncoder, OPUS_SET_BITRATE(OPUS_BITRATE)); + opus_encoder_ctl(m_pEncoder, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE)); + + for (int i = 0; i < MAX_VOICE_PACKETS; ++i) + { + m_voicePackets[i] = xr_new(); + } +} + +CVoicePacketsPacker::~CVoicePacketsPacker() +{ + if (m_pEncoder != nullptr) + { + opus_encoder_destroy(m_pEncoder); + m_pEncoder = nullptr; + } + + for (int i = 0; i < MAX_VOICE_PACKETS; ++i) + xr_delete(m_voicePackets[i]); +} + +void CVoicePacketsPacker::AddSender(IVoicePacketSender* ref) +{ + m_senders.push_back(ref); +} + +void CVoicePacketsPacker::RemoveSender(IVoicePacketSender* ref) +{ + m_senders.erase(std::remove(m_senders.begin(), m_senders.end(), ref)); +} + +void CVoicePacketsPacker::AddPacket(const void* data, const int length) +{ + if (m_packetsCount >= MAX_VOICE_PACKETS) + return; + + VoicePacket* packet = m_voicePackets[m_packetsCount]; + packet->length = opus_encode(m_pEncoder, + (opus_int16*)data, + length / sizeof(opus_int16), + packet->data, + VoicePacket::MAX_DATA_SIZE + ); + + packet->time = GetTickCount(); + ++m_packetsCount; +} + +void CVoicePacketsPacker::Update() +{ + if (m_packetsCount > 0) + { + VoicePacket* lastPacket = m_voicePackets[m_packetsCount - 1]; + if (m_packetsCount > MAX_VOICE_PACKETS - 1 || (lastPacket->time + 50) < GetTickCount()) + { + for (auto it = m_senders.begin(); it != m_senders.end(); ++it) + { + (*it)->Send(m_voicePackets, m_packetsCount); + m_packetsCount = 0; + } + m_packetsCount = 0; + } + } +} \ No newline at end of file diff --git a/src/xrSound/VoicePacketsPacker.h b/src/xrSound/VoicePacketsPacker.h new file mode 100644 index 00000000000..76d33faf179 --- /dev/null +++ b/src/xrSound/VoicePacketsPacker.h @@ -0,0 +1,26 @@ +#pragma once +#include "VoicePacket.h" +#include "IVoicePacketSender.h" + +struct OpusEncoder; + +class CVoicePacketsPacker +{ +public: + CVoicePacketsPacker(); + ~CVoicePacketsPacker(); + + virtual void AddSender(IVoicePacketSender* ref); + virtual void RemoveSender(IVoicePacketSender* ref); + + void AddPacket(const void* data, const int length); + void Update(); + +private: + static constexpr size_t MAX_VOICE_PACKETS = 4; + xr_vector m_senders; + + OpusEncoder* m_pEncoder = nullptr; + VoicePacket* m_voicePackets[MAX_VOICE_PACKETS]; + u8 m_packetsCount = 0; +}; \ No newline at end of file diff --git a/src/xrSound/xrSound.vcxproj b/src/xrSound/xrSound.vcxproj index 8da5f5a340d..b5e81e11700 100644 --- a/src/xrSound/xrSound.vcxproj +++ b/src/xrSound/xrSound.vcxproj @@ -47,6 +47,12 @@ + + + + + + @@ -72,6 +78,11 @@ Create + + + + + From d75ba2feb7e24d6c4a978b17e6b4639043ce6c8d Mon Sep 17 00:00:00 2001 From: yohjimane Date: Tue, 8 Jul 2025 14:38:02 -0700 Subject: [PATCH 32/36] [xrSound] Integrate SoundVoiceChat system for voice chat - Add ISoundVoiceChat forward declaration to Sound.h - Add GetSoundVoiceChat() method to ISoundManager interface - Add SoundVoiceChat member to CSoundRender_CoreA class - Initialize SoundVoiceChat in _initialize() and cleanup in _clear() - Override update() method in CSoundRender_CoreA to call SoundVoiceChat::Update() - Fix SoundVoiceChat.h to use proper / includes - Add missing ISoundRecorder.h and IStreamPlayer.h to xrSound.vcxproj - Minor cleanup in SoundVoiceChat.cpp and VoiceChat.cpp This enables xrGame to access voice chat functionality through the sound system via GetSoundVoiceChat() method, providing the foundation for voice communication in multiplayer gameplay. Ported from OMP commit: 4bf5824db4d7a36a878b960f0d802f73b778e0c5 --- src/xrGame/VoiceChat.cpp | 7 ++----- src/xrSound/Sound.h | 8 ++++++++ src/xrSound/SoundRender_Core.cpp | 4 ++++ src/xrSound/SoundRender_CoreA.cpp | 13 +++++++++++++ src/xrSound/SoundRender_CoreA.h | 7 +++++++ src/xrSound/SoundVoiceChat.cpp | 1 - src/xrSound/SoundVoiceChat.h | 4 ++-- src/xrSound/xrSound.vcxproj | 2 ++ 8 files changed, 38 insertions(+), 8 deletions(-) diff --git a/src/xrGame/VoiceChat.cpp b/src/xrGame/VoiceChat.cpp index 8c4b8c106a2..4bee585eaf8 100644 --- a/src/xrGame/VoiceChat.cpp +++ b/src/xrGame/VoiceChat.cpp @@ -8,8 +8,7 @@ CVoiceChat::CVoiceChat() { // TODO: Initialize with sound system when available - // m_pSoundVoiceChat = ::Sound->GetSoundVoiceChat(); - m_pSoundVoiceChat = nullptr; + m_pSoundVoiceChat = GEnv.Sound->GetSoundVoiceChat(); CreateRecorder(); } @@ -38,9 +37,7 @@ bool CVoiceChat::CreateRecorder() m_pSender = xr_new(); m_pSender->SetDistance(10); // default - // TODO: Create recorder when sound system is available - // m_pRecorder = m_pSoundVoiceChat->CreateRecorder((IVoicePacketSender*)m_pSender); - m_pRecorder = nullptr; + m_pRecorder = m_pSoundVoiceChat->CreateRecorder((IVoicePacketSender*)m_pSender); return m_pRecorder != nullptr; } diff --git a/src/xrSound/Sound.h b/src/xrSound/Sound.h index f4280801d32..dd2dd8dd6fc 100644 --- a/src/xrSound/Sound.h +++ b/src/xrSound/Sound.h @@ -40,6 +40,8 @@ using Fvector2 = _vector2; struct Fbox3; using Fbox = Fbox3; +class XRSOUND_API ISoundVoiceChat; + XRSOUND_API extern u32 psSoundModel; XRSOUND_API extern float psSoundVEffects; XRSOUND_API extern float psSoundVFactor; @@ -51,6 +53,10 @@ XRSOUND_API extern Flags32 psSoundFlags; XRSOUND_API extern int psSoundTargets; XRSOUND_API extern int psSoundCacheSizeMB; XRSOUND_API extern u32 snd_device_id; +XRSOUND_API extern float psSoundVPlayers; +XRSOUND_API extern float psSoundVRecorder; +XRSOUND_API extern int psSoundRecorderMode; +XRSOUND_API extern int psSoundRecorderDenoise; XRSOUND_API extern ISoundScene* DefaultSoundScene; @@ -233,6 +239,8 @@ class XRSOUND_API XR_NOVTABLE ISoundManager virtual const Fvector& listener_position() = 0; + virtual ISoundVoiceChat* GetSoundVoiceChat() = 0; + virtual void refresh_sources() = 0; }; diff --git a/src/xrSound/SoundRender_Core.cpp b/src/xrSound/SoundRender_Core.cpp index 6c96c0084bb..71959a784cc 100644 --- a/src/xrSound/SoundRender_Core.cpp +++ b/src/xrSound/SoundRender_Core.cpp @@ -29,6 +29,10 @@ XRSOUND_API float psSoundVFactor = 1.0f; XRSOUND_API float psSoundVMusic = 1.f; XRSOUND_API int psSoundCacheSizeMB = 32; +XRSOUND_API float psSoundVPlayers = 1.f; +XRSOUND_API float psSoundVRecorder = 1.f; +XRSOUND_API int psSoundRecorderMode = 1; +XRSOUND_API int psSoundRecorderDenoise = 1; CSoundRender_Core* SoundRender = nullptr; CSoundRender_Core::CSoundRender_Core(CSoundManager& p) diff --git a/src/xrSound/SoundRender_CoreA.cpp b/src/xrSound/SoundRender_CoreA.cpp index 3ada373ac8a..83ef7b5c3e3 100644 --- a/src/xrSound/SoundRender_CoreA.cpp +++ b/src/xrSound/SoundRender_CoreA.cpp @@ -5,6 +5,7 @@ #include "SoundRender_TargetA.h" #include "OpenALDeviceList.h" #include "SoundRender_EffectsA_EAX.h" +#include "SoundVoiceChat.h" CSoundRender_CoreA::CSoundRender_CoreA(CSoundManager& p) : CSoundRender_Core(p) @@ -117,6 +118,8 @@ void CSoundRender_CoreA::_initialize() break; } } + + pSoundVoiceChat = xr_new(pContext); } void CSoundRender_CoreA::set_master_volume(float f) @@ -129,6 +132,8 @@ void CSoundRender_CoreA::_clear() { inherited::_clear(); xr_delete(m_effects); + + xr_delete(pSoundVoiceChat); // remove targets for (auto& T : s_targets) { @@ -156,3 +161,11 @@ void CSoundRender_CoreA::update_listener(const Fvector& P, const Fvector& D, con A_CHK(alListener3f(AL_VELOCITY, 0.f, 0.f, 0.f)); A_CHK(alListenerfv(AL_ORIENTATION, &listener.orientation[0].x)); } + +void CSoundRender_CoreA::update(const Fvector& P, const Fvector& D, const Fvector& N, const Fvector& R) +{ + inherited::update(P, D, N, R); + + if (pSoundVoiceChat) + pSoundVoiceChat->Update(P, D, N); +} diff --git a/src/xrSound/SoundRender_CoreA.h b/src/xrSound/SoundRender_CoreA.h index 7dc9c9e1e50..adc0cf7a6c0 100644 --- a/src/xrSound/SoundRender_CoreA.h +++ b/src/xrSound/SoundRender_CoreA.h @@ -2,6 +2,8 @@ #include "SoundRender_Core.h" +class SoundVoiceChat; + #include #include @@ -58,6 +60,8 @@ class CSoundRender_CoreA : public CSoundRender_Core ALCcontext* pContext; ALDeviceList* pDeviceList; + SoundVoiceChat* pSoundVoiceChat = nullptr; + protected: void update_listener(const Fvector& P, const Fvector& D, const Fvector& N, const Fvector& R, float dt) override; @@ -71,4 +75,7 @@ class CSoundRender_CoreA : public CSoundRender_Core void set_master_volume(float f) override; + void update(const Fvector& P, const Fvector& D, const Fvector& N, const Fvector& R) override; + + ISoundVoiceChat* GetSoundVoiceChat() override { return (ISoundVoiceChat*)pSoundVoiceChat; } }; diff --git a/src/xrSound/SoundVoiceChat.cpp b/src/xrSound/SoundVoiceChat.cpp index 06a3a849bfd..d049a401af5 100644 --- a/src/xrSound/SoundVoiceChat.cpp +++ b/src/xrSound/SoundVoiceChat.cpp @@ -81,5 +81,4 @@ void SoundVoiceChat::Update(const Fvector& P, const Fvector& D, const Fvector& N for (auto& player : m_players) player->Update(); - } \ No newline at end of file diff --git a/src/xrSound/SoundVoiceChat.h b/src/xrSound/SoundVoiceChat.h index d26f7df4f32..c09e523f4ce 100644 --- a/src/xrSound/SoundVoiceChat.h +++ b/src/xrSound/SoundVoiceChat.h @@ -1,6 +1,6 @@ #pragma once -#include "al.h" -#include "alc.h" +#include +#include #include "ISoundVoiceChat.h" #include "SoundRecorderA.h" #include "StreamPlayerA.h" diff --git a/src/xrSound/xrSound.vcxproj b/src/xrSound/xrSound.vcxproj index b5e81e11700..e6fa4bfe793 100644 --- a/src/xrSound/xrSound.vcxproj +++ b/src/xrSound/xrSound.vcxproj @@ -44,7 +44,9 @@ + + From d7b72bfc958b4e4e905d5a1096d0b2dee4a15a8f Mon Sep 17 00:00:00 2001 From: yohjimane Date: Tue, 8 Jul 2025 16:03:06 -0700 Subject: [PATCH 33/36] [Gamedata] Add vanilla ui_mm_opt_sound.script --- res/gamedata/scripts/ui_mm_opt_sound.script | 35 +++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 res/gamedata/scripts/ui_mm_opt_sound.script diff --git a/res/gamedata/scripts/ui_mm_opt_sound.script b/res/gamedata/scripts/ui_mm_opt_sound.script new file mode 100644 index 00000000000..754a66b675c --- /dev/null +++ b/res/gamedata/scripts/ui_mm_opt_sound.script @@ -0,0 +1,35 @@ +class "opt_sound" (CUIWindow) + +function opt_sound:__init() super() +end + +function opt_sound:__finalize() + +end + +function opt_sound:InitControls(x, y, xml, handler) + + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + self:SetAutoDelete(true) + +-- self.bk = xml:InitFrame("frame", self) + + xml:InitStatic("tab_sound:cap_mastervolume", self) + xml:InitStatic("tab_sound:cap_musicvolume", self) + + xml:InitStatic("tab_sound:cap_check_eax", self) + xml:InitStatic("tab_sound:cap_check_dynamic_music", self) + + xml:InitCheck("tab_sound:check_eax", self) + xml:InitCheck("tab_sound:check_dynamic_music", self) + + + xml:InitTrackBar ("tab_sound:track_musicvolume", self) + xml:InitTrackBar ("tab_sound:track_mastervolume",self) + + + xml:InitStatic ("tab_sound:cap_snd_device", self) + xml:InitComboBox ("tab_sound:list_snd_device", self) + +end From 956089bda0aacdd90929de4207c0d5e63247b285 Mon Sep 17 00:00:00 2001 From: yohjimane Date: Tue, 8 Jul 2025 17:24:51 -0700 Subject: [PATCH 34/36] [Gamedata/xrEngine/xrSound] Add option for input device --- res/gamedata/configs/text/eng/openxray.xml | 3 + res/gamedata/configs/text/ger/openxray.xml | 5 +- res/gamedata/configs/text/pol/openxray.xml | 39 ++++--- res/gamedata/configs/text/rus/openxray.xml | 101 ++++++++--------- res/gamedata/configs/text/ukr/openxray.xml | 103 +++++++++--------- .../ui/styles_/ui_style_cs/ui_mm_opt_16.xml | 91 +++++++++------- res/gamedata/configs/ui/ui_mm_opt.xml | 38 ++++--- res/gamedata/configs/ui/ui_mm_opt_16.xml | 38 ++++--- res/gamedata/scripts/ui_mm_opt_sound.script | 3 + src/xrEngine/xr_ioc_cmd.cpp | 41 +++++++ src/xrSound/OpenALDeviceList.cpp | 57 +++++++++- src/xrSound/OpenALDeviceList.h | 13 +++ src/xrSound/Sound.cpp | 1 + src/xrSound/Sound.h | 7 +- src/xrSound/SoundRecorderA.cpp | 63 ++++++++++- src/xrSound/SoundRender_CoreA.h | 4 + 16 files changed, 414 insertions(+), 193 deletions(-) diff --git a/res/gamedata/configs/text/eng/openxray.xml b/res/gamedata/configs/text/eng/openxray.xml index 61b16ec7296..7d1e2d7aff4 100644 --- a/res/gamedata/configs/text/eng/openxray.xml +++ b/res/gamedata/configs/text/eng/openxray.xml @@ -135,6 +135,9 @@ warm + + Input Device + English diff --git a/res/gamedata/configs/text/ger/openxray.xml b/res/gamedata/configs/text/ger/openxray.xml index 2c112d4c471..6e9ae0f5b6c 100644 --- a/res/gamedata/configs/text/ger/openxray.xml +++ b/res/gamedata/configs/text/ger/openxray.xml @@ -79,7 +79,7 @@ Spiel-FPS-Limit - Menü-FPS-Limit + MenпїЅ-FPS-Limit Sprache @@ -126,6 +126,9 @@ warm + + Eingabegerät + Englisch (English) diff --git a/res/gamedata/configs/text/pol/openxray.xml b/res/gamedata/configs/text/pol/openxray.xml index e254e3e8070..38a19f8205d 100644 --- a/res/gamedata/configs/text/pol/openxray.xml +++ b/res/gamedata/configs/text/pol/openxray.xml @@ -1,7 +1,7 @@ - roz³aduj wszystkie bronie + roz�aduj wszystkie bronie Zdejmij @@ -10,7 +10,7 @@ Podaruj - Wczytywanie oœwietlenia + Wczytywanie o�wietlenia Klient: Czenie z @@ -25,10 +25,10 @@ Tworzenie nowej gry - Dzia³anie w tle (Alt+Tab) + Dzia�anie w tle (Alt+Tab) - Odleg³oœæ rys. trawy + Odleg�o�� rys. trawy Styl interfejsu @@ -37,19 +37,19 @@ Zew Prypeci - Uproszczone podn. przedmiotów + Uproszczone podn. przedmiot�w - Podn. wsz. przedmiotów na raz + Podn. wsz. przedmiot�w na raz - Postêp wczytywania + Post�p wczytywania - Rozsz. pe³ne oœw. dynam. (OpenGL) + Rozsz. pe�ne o�w. dynam. (OpenGL) - Tryb wyœwietlania + Tryb wy�wietlania Okienkowy @@ -58,28 +58,28 @@ Okienkowy (bez ramek) - Pe³noekranowy + Pe�noekranowy - Pe³noekranowy (szybki Alt+Tab) + Pe�noekranowy (szybki Alt+Tab) - Jakoœæ cieni map + Jako�� cieni map - Mokre pow. na blisk. odleg³oœci + Mokre pow. na blisk. odleg�o�ci - Mokre pow. na dal. odleg³oœci + Mokre pow. na dal. odleg�o�ci - Jakoœæ mokrych powierzchni + Jako�� mokrych powierzchni Pole widzenia - Jêzyk + J�zyk Konfiguracja gamepada @@ -132,6 +132,9 @@ warm + + UrzÄ…dzenie wejÅ›cia + Angielski (English) @@ -142,7 +145,7 @@ Niemiecki (German) - W³oski (Italian) + W�oski (Italian) Polski (Polish) @@ -151,7 +154,7 @@ Rosyjski (Russian) - Hiszpañski (Spanish) + Hiszpa�ski (Spanish) Ukrainski (Ukrainian) diff --git a/res/gamedata/configs/text/rus/openxray.xml b/res/gamedata/configs/text/rus/openxray.xml index f509b4eb0a4..fb7a8882c28 100644 --- a/res/gamedata/configs/text/rus/openxray.xml +++ b/res/gamedata/configs/text/rus/openxray.xml @@ -1,124 +1,124 @@ - Ðàçðÿæàòü îð. ïðè ïîäíÿòèè + ��������� ��. ��� �������� - ðàçðÿäèòü âñ¸ îðóæèå + ��������� �� ������ - óáðàòü â ðþêçàê + ������ � ������ - Ïîäàðèòü + �������� - Çàãðóçêà îñâåùåíèÿ + �������� ��������� - Êëèåíò: Ñîåäèíåíèå ñ + ������: ���������� � - Êëèåíò: Ñîçäàíèå + ������: �������� - Êëèåíò: Ñèíõðîíèçàöèÿ + ������: ������������� - Ñîçäàíèå íîâîé èãðû + �������� ����� ���� - Íå ñòàâèòü íà ïàóçó ïðè Alt+Tab + �� ������� �� ����� ��� Alt+Tab - Äàëüíîñòü ïðîð. òðàâû + ��������� ����. ����� - Ñòèëü èíòåðôåéñà + ����� ���������� - Çîâ Ïðèïÿòè + ��� ������� - Óïð. ïîäáîð ïðåäìåòîâ + ���. ������ ��������� - Ìíîæ. ïîäáîð ïðåäìåòîâ + ����. ������ ��������� - Ñòàäèè çàãðóçêè + ������ �������� - Óë. ïîëíîå îñâåùåíèå (OpenGL) + ��. ������ ��������� (OpenGL) - Ðåæèì îêíà + ����� ���� - Îêîííûé + ������� - Îêîííûé áåç ðàìîê + ������� ��� ����� - Ïîëíîýêðàííûé + ������������� - Ïîëíîýêðàííûé (áûñòðûé Alt+Tab) + ������������� (������� Alt+Tab) FXAA - Êà÷åñòâî òåíåâûõ êàðò + �������� ������� ���� - Îïòèìèçàöèÿ íàìîêàíèÿ + ����������� ��������� - Íàìîêàíèå âáëèçè + ��������� ������ - Íàìîêàíèå âäàëè + ��������� ����� - Êà÷åñòâî íàìîêàíèÿ + �������� ��������� - Ïîëå çðåíèÿ + ���� ������ - ßçûê + ���� - Íàñòðîéêà ãåéìïàäà + ��������� �������� - Îãðàíè÷åíèå FPS â èãðå + ����������� FPS � ���� - Îãðàíè÷åíèå FPS â ìåíþ + ����������� FPS � ���� - Ðåæèì ãðàôèêè + ����� ������� - îðèãèíàëüíàÿ + ������������ - óëó÷øåííàÿ (ñòàíäàðò) + ���������� (��������) - óëó÷øåííàÿ (âûñîêî) + ���������� (������) - Ãðàäàöèÿ öâåòîâ + �������� ������ - ñòàíäàðòíàÿ + ����������� - õîëîäíàÿ + �������� Filmic 1 @@ -133,36 +133,39 @@ Hollywood - îðèãèíàëüíàÿ + ������������ Vibrant - ò¸ïëàÿ + ����� + + + ���������� ����� - Àíãëèéñêèé (English) + ���������� (English) - Ôðàíöóçñêèé (French) + ����������� (French) - Íåìåöêèé (German) + �������� (German) - Èòàëüÿíñêèé (Italian) + ����������� (Italian) - Ïîëüñêèé (Polish) + �������� (Polish) - Ðóññêèé (Russian) + ������� (Russian) - Èñïàíñêèé (Spanish) + ��������� (Spanish) - Óêðàèíñêèé (Ukrainian) + ���������� (Ukrainian) diff --git a/res/gamedata/configs/text/ukr/openxray.xml b/res/gamedata/configs/text/ukr/openxray.xml index 87d87767fe1..59999bc94ab 100644 --- a/res/gamedata/configs/text/ukr/openxray.xml +++ b/res/gamedata/configs/text/ukr/openxray.xml @@ -1,124 +1,124 @@ - Ðîçðÿä. çáðîþ ïðè ï³äíÿòò³ + ������. ����� ��� ������ - ðîçðÿäèòè âñþ çáðîþ + ��������� ��� ����� - ñõîâàòè â ðþêçàê + ������� � ������ - Ïîäàðóâàòè + ���������� - Çàâàíòàæåííÿ îñâ³òëåííÿ + ������������ ��������� - Ê볺íò: Ç'ºäíàííÿ ñ + �볺��: �'������� � - Ê볺íò: Ñòâîðåííÿ + �볺��: ��������� - Ê볺íò: Ñèíõðîí³çàö³ÿ + �볺��: ������������� - Ñòâîðåííÿ íîâî¿ ãðè + ��������� ���� ��� - Íå ñòàâèòè ãðó íà ïàçó ïðè Alt+Tab + �� ������� ��� �� ���� ��� Alt+Tab - ³äñòàíü ïðîìàëüîâóâàííÿ òðàâè + ³������ ��������������� ����� - Ñòèëü ³íòåðôåéñó + ����� ���������� - Ïîêëèê Ïðèï'ÿò³ + ������ ����'�� - Ñïðîù. ï³äá³ð ïðåäìåò³â + �����. ���� �������� - Ìíîæ. ï³äá³ð ïðåäìåò³â + ����. ���� �������� - Ñòà䳿 çàâàíòàæåííÿ + ���䳿 ������������ - Ïîêð. ïîâíå îñâ³òëåííÿ (OpenGL) + ����. ����� ��������� (OpenGL) - Ðåæèì â³êíà + ����� ���� - ³êîííèé + ³������ - ³êîííèé áåç ðàìîê + ³������ ��� ����� - Ïîâíîåêðàííèé + ������������� - Ïîâíîåêðàííèé (øâèäêèé Alt+Tab) + ������������� (������� Alt+Tab) FXAA - ßê³ñòü êàðò ò³íåé + ����� ���� ���� - Îïòèì³çàö³ÿ íàìîêàííÿ + ���������� ��������� - Íàìîêàííÿ ïîáëèçó + ��������� ������� - Íàìîêàííÿ âäàëèí³ + ��������� ������� - ßê³ñòü íàìîêàííÿ + ����� ��������� - Ïîëå çîðó + ���� ���� - Ìîâà + ���� - Íàëàøòóâàííÿ ãåéìïàäó + ������������ �������� - Îáìåæåííÿ FPS ó ãð³ + ��������� FPS � �� - Îáìåæåííÿ FPS â ìåíþ + ��������� FPS � ���� - Ðåæèì ãðàô³êè + ����� ������� - îðèã³íàëüíà + ���������� - ïîêðàùåíà (ñòàíäàðò) + ��������� (��������) - ïîêðàùåíà (âèñîêî) + ��������� (������) - Ãðàäàö³ÿ êîëüîð³â + �������� ������� - ñòàíäàðòíà + ���������� - õîëîäíà + ������� Filmic 1 @@ -133,39 +133,42 @@ Hollywood - îðèã³íàëüíà + ���������� Vibrant - òåïëà + ����� + + + ������� �������� - Àíãë³éñüêà (English) + ��������� (English) - Ôðàíöóçüêà (French) + ���������� (French) - ͳìåöüêà (German) + ͳ������ (German) - ²òàë³éñüêà (Italian) + ��������� (Italian) - Ïîëüñüêà (Polish) + �������� (Polish) - Ðîñ³éñüêà (Russian) + �������� (Russian) - ²ñïàíñüêà (Spanish) + ��������� (Spanish) - Óêðà¿íñüêà (Ukrainian) + ��������� (Ukrainian) - ßïîíñüêà (Japanese) + �������� (Japanese) diff --git a/res/gamedata/configs/ui/styles_/ui_style_cs/ui_mm_opt_16.xml b/res/gamedata/configs/ui/styles_/ui_style_cs/ui_mm_opt_16.xml index 00288aa15c0..0028bf444db 100644 --- a/res/gamedata/configs/ui/styles_/ui_style_cs/ui_mm_opt_16.xml +++ b/res/gamedata/configs/ui/styles_/ui_style_cs/ui_mm_opt_16.xml @@ -8,11 +8,11 @@ ui_inGame2_back_01 - + ui_inGame2_back_01w10_l - + ui_inGame2_back_01w10_r @@ -30,7 +30,7 @@ ui_mm_options - + ui_mm_apply ui_button_main02 @@ -38,7 +38,7 @@ - + ui_mm_cancel ui_button_main02 @@ -46,16 +46,16 @@ - + - + - +