From 26ad87bbb3e318c9e4c70aff0560b9dff6acebe1 Mon Sep 17 00:00:00 2001 From: leejet Date: Sat, 18 Jul 2026 21:33:26 +0800 Subject: [PATCH 1/2] add hunyuan video 1.5 support --- src/conditioning/conditioner.hpp | 103 +++- src/model.h | 13 + src/model/common/rope.hpp | 27 + src/model/diffusion/flux.hpp | 8 +- src/model/diffusion/hunyuan.hpp | 679 +++++++++++++++++++++++++ src/model/diffusion/ltxv.hpp | 32 +- src/model/diffusion/mmdit.hpp | 94 +++- src/model/diffusion/model.hpp | 10 +- src/model/te/t5.hpp | 4 +- src/model/vae/hunyuan_vae.hpp | 834 +++++++++++++++++++++++++++++++ src/model/vae/tae.hpp | 11 +- src/model/vae/vae.hpp | 4 +- src/model_loader.cpp | 3 + src/name_conversion.cpp | 71 +++ src/stable-diffusion.cpp | 105 +++- 15 files changed, 1945 insertions(+), 53 deletions(-) create mode 100644 src/model/diffusion/hunyuan.hpp create mode 100644 src/model/vae/hunyuan_vae.hpp diff --git a/src/conditioning/conditioner.hpp b/src/conditioning/conditioner.hpp index 4dc4e0cd4..a0bc49b37 100644 --- a/src/conditioning/conditioner.hpp +++ b/src/conditioning/conditioner.hpp @@ -1782,6 +1782,7 @@ struct LLMEmbedder : public Conditioner { SDVersion version; std::shared_ptr tokenizer; std::shared_ptr llm; + std::shared_ptr byt5; LLMEmbedder(ggml_backend_t backend, const String2TensorStorage& tensor_storage_map = {}, @@ -1819,54 +1820,97 @@ struct LLMEmbedder : public Conditioner { "text_encoders.llm", enable_vision, weight_manager); + if (sd_version_is_hunyuan_video(version)) { + const std::string byt5_prefix = "text_encoders.t5xxl.transformer"; + for (const auto& [name, _] : tensor_storage_map) { + if (starts_with(name, byt5_prefix + ".")) { + byt5 = std::make_shared(backend, + tensor_storage_map, + byt5_prefix, + false, + weight_manager); + break; + } + } + } } void get_param_tensors(std::map& tensors) override { llm->get_param_tensors(tensors, "text_encoders.llm"); + if (byt5) { + byt5->get_param_tensors(tensors, "text_encoders.t5xxl.transformer"); + } } void set_max_graph_vram_bytes(size_t max_vram_bytes) override { llm->set_max_graph_vram_bytes(max_vram_bytes); + if (byt5) { + byt5->set_max_graph_vram_bytes(max_vram_bytes); + } } void set_stream_layers_enabled(bool enabled) override { llm->set_stream_layers_enabled(enabled); + if (byt5) { + byt5->set_stream_layers_enabled(enabled); + } } void set_runtime_backends(const std::vector& backends) override { llm->set_runtime_backends(backends); + if (byt5) { + byt5->set_runtime_backends(backends); + } } void set_graph_cut_layer_split_enabled(bool enabled) override { if (llm) { llm->set_graph_cut_layer_split_enabled(enabled); } + if (byt5) { + byt5->set_graph_cut_layer_split_enabled(enabled); + } } void set_graph_cut_layer_split_backend_vram_limits(const std::vector& limits) override { if (llm) { llm->set_graph_cut_layer_split_backend_vram_limits(limits); } + if (byt5) { + byt5->set_graph_cut_layer_split_backend_vram_limits(limits); + } } void get_layer_split_param_tensors(std::map& tensors) override { llm->get_param_tensors(tensors, "text_encoders.llm"); + if (byt5) { + byt5->get_param_tensors(tensors, "text_encoders.t5xxl.transformer"); + } } void set_flash_attention_enabled(bool enabled) override { llm->set_flash_attention_enabled(enabled); + if (byt5) { + byt5->set_flash_attention_enabled(enabled); + } } void set_weight_adapter(const std::shared_ptr& adapter) override { if (llm) { llm->set_weight_adapter(adapter); } + if (byt5) { + byt5->set_weight_adapter(adapter); + } } void runner_done() override { if (llm) { llm->runner_done(); } + if (byt5) { + byt5->runner_done(); + } } std::tuple, std::vector, std::vector> tokenize(std::string text, @@ -2060,7 +2104,24 @@ struct LLMEmbedder : public Conditioner { int64_t t0 = ggml_time_ms(); RefImageResizeMode resize_mode = conditioner_params.ref_image_params.vlm_resize_mode; - if (sd_version_is_lingbot_video(version)) { + if (sd_version_is_hunyuan_video(version)) { + prompt_template_encode_start_idx = 98; + out_layers = {26}; + + prompt = + "<|im_start|>system\nYou are a helpful assistant. Describe the video by detailing the following aspects:\n" + "1. The main content and theme of the video.\n" + "2. The color, shape, size, texture, quantity, text, and spatial relationships of the objects.\n" + "3. Actions, events, behaviors temporal relationships, physical movement changes of the objects.\n" + "4. background environment, light, style and atmosphere.\n" + "5. camera angles, movements, and transitions used in the video.<|im_end|>\n" + "<|im_start|>user\n"; + + prompt_attn_range.first = static_cast(prompt.size()); + prompt += conditioner_params.text; + prompt_attn_range.second = static_cast(prompt.size()); + prompt += "<|im_end|>\n<|im_start|>assistant\n"; + } else if (sd_version_is_lingbot_video(version)) { const int pad_token = 151643; const std::string prompt_prefix = "<|im_start|>system\nGiven a user input that may include a text prompt alone, " @@ -2590,6 +2651,46 @@ struct LLMEmbedder : public Conditioner { spell_quotes, max_length); std::vector> extra_hidden_states_vec; + if (sd_version_is_hunyuan_video(version) && byt5) { + std::vector quoted_texts; + auto collect_quoted = [&](const std::string& open, const std::string& close) { + size_t begin = 0; + while ((begin = conditioner_params.text.find(open, begin)) != std::string::npos) { + size_t content_begin = begin + open.size(); + size_t end = conditioner_params.text.find(close, content_begin); + if (end == std::string::npos) { + break; + } + quoted_texts.push_back(conditioner_params.text.substr(content_begin, end - content_begin)); + begin = end + close.size(); + } + }; + collect_quoted("\"", "\""); + collect_quoted("\xE2\x80\x98", "\xE2\x80\x99"); + collect_quoted("\xE2\x80\x9C", "\xE2\x80\x9D"); + + if (!quoted_texts.empty()) { + std::string byt5_text; + for (const auto& text : quoted_texts) { + byt5_text += "Text \"" + text + "\". "; + } + std::vector tokens; + tokens.reserve(byt5_text.size() + 1); + for (unsigned char byte : byt5_text) { + tokens.push_back(static_cast(byte) + 3); + } + tokens.push_back(1); + sd::Tensor input_ids({static_cast(tokens.size())}, tokens); + auto byt5_hidden_states = byt5->compute(n_threads, + input_ids, + sd::Tensor(), + false, + true, + true); + GGML_ASSERT(!byt5_hidden_states.empty()); + extra_hidden_states_vec.push_back(std::move(byt5_hidden_states)); + } + } for (int i = 0; i < extra_prompts.size(); i++) { auto extra_hidden_states = encode_prompt(n_threads, extra_prompts[i], diff --git a/src/model.h b/src/model.h index cb2b2039e..67523656a 100644 --- a/src/model.h +++ b/src/model.h @@ -38,6 +38,7 @@ enum SDVersion { VERSION_LINGBOT_VIDEO, VERSION_QWEN_IMAGE, VERSION_QWEN_IMAGE_LAYERED, + VERSION_HUNYUAN_VIDEO, VERSION_ANIMA, VERSION_FLUX2, VERSION_FLUX2_KLEIN, @@ -142,6 +143,13 @@ static inline bool sd_version_is_qwen_image(SDVersion version) { return false; } +static inline bool sd_version_is_hunyuan_video(SDVersion version) { + if (version == VERSION_HUNYUAN_VIDEO) { + return true; + } + return false; +} + static inline bool sd_version_is_anima(SDVersion version) { if (version == VERSION_ANIMA) { return true; @@ -240,6 +248,10 @@ static inline bool sd_version_uses_wan_vae(SDVersion version) { return false; } +static inline bool sd_version_uses_hunyuan_video_vae(SDVersion version) { + return sd_version_is_hunyuan_video(version); +} + static inline bool sd_version_is_inpaint(SDVersion version) { if (version == VERSION_SD1_INPAINT || version == VERSION_SD2_INPAINT || @@ -259,6 +271,7 @@ static inline bool sd_version_is_dit(SDVersion version) { sd_version_is_wan(version) || sd_version_is_lingbot_video(version) || sd_version_is_qwen_image(version) || + sd_version_is_hunyuan_video(version) || version == VERSION_HIDREAM_O1 || sd_version_is_anima(version) || sd_version_is_z_image(version) || diff --git a/src/model/common/rope.hpp b/src/model/common/rope.hpp index d4142c181..100f96ee0 100644 --- a/src/model/common/rope.hpp +++ b/src/model/common/rope.hpp @@ -535,6 +535,33 @@ namespace Rope { return vid_ids_repeated; } + __STATIC_INLINE__ std::vector> gen_hunyuan_video_ids(int t, + int h, + int w, + int patch_t, + int patch_h, + int patch_w, + int bs, + int context_len) { + std::vector> txt_ids(bs * context_len, std::vector(3, 0.0f)); + auto img_ids = gen_vid_ids(t, h, w, patch_t, patch_h, patch_w, bs); + return concat_ids(txt_ids, img_ids, bs); + } + + __STATIC_INLINE__ std::vector gen_hunyuan_video_pe(int t, + int h, + int w, + int patch_t, + int patch_h, + int patch_w, + int bs, + int context_len, + float theta, + const std::vector& axes_dim) { + auto ids = gen_hunyuan_video_ids(t, h, w, patch_t, patch_h, patch_w, bs, context_len); + return embed_nd(ids, bs, theta, axes_dim); + } + __STATIC_INLINE__ std::vector> gen_qwen_image_ids(int t, int h, int w, diff --git a/src/model/diffusion/flux.hpp b/src/model/diffusion/flux.hpp index edd7a89b8..375576c14 100644 --- a/src/model/diffusion/flux.hpp +++ b/src/model/diffusion/flux.hpp @@ -706,11 +706,13 @@ namespace Flux { LastLayer(int64_t hidden_size, int64_t patch_size, int64_t out_channels, - bool prune_mod = false, - bool bias = true) + bool prune_mod = false, + bool bias = true, + int64_t patch_volume = 0) : prune_mod(prune_mod) { blocks["norm_final"] = std::shared_ptr(new LayerNorm(hidden_size, 1e-06f, false)); - blocks["linear"] = std::shared_ptr(new Linear(hidden_size, patch_size * patch_size * out_channels, bias)); + int64_t out_dim = (patch_volume > 0 ? patch_volume : patch_size * patch_size) * out_channels; + blocks["linear"] = std::shared_ptr(new Linear(hidden_size, out_dim, bias)); if (!prune_mod) { blocks["adaLN_modulation.1"] = std::shared_ptr(new Linear(hidden_size, 2 * hidden_size, bias)); } diff --git a/src/model/diffusion/hunyuan.hpp b/src/model/diffusion/hunyuan.hpp new file mode 100644 index 000000000..067d92aaf --- /dev/null +++ b/src/model/diffusion/hunyuan.hpp @@ -0,0 +1,679 @@ +#ifndef __SD_MODEL_DIFFUSION_HUNYUAN_HPP__ +#define __SD_MODEL_DIFFUSION_HUNYUAN_HPP__ + +#include + +#include "model/common/block.hpp" +#include "model/diffusion/flux.hpp" +#include "model/diffusion/mmdit.hpp" +#include "model/diffusion/wan.hpp" +#include "model_manager.h" + +namespace Hunyuan { + constexpr int HUNYUAN_VIDEO_GRAPH_SIZE = 65536; + + // Ref: https://github.com/huggingface/diffusers/pull/12696 + struct IndividualTokenRefinerBlock : public GGMLBlock { + protected: + int64_t num_heads; + + public: + IndividualTokenRefinerBlock(int64_t num_heads, + int64_t head_dim, + int64_t mlp_ratio = 4, + bool attn_bias = true) + : num_heads(num_heads) { + int64_t hidden_size = num_heads * head_dim; + blocks["self_attn.qkv"] = std::make_shared(hidden_size, hidden_size * 3, attn_bias); + blocks["self_attn.proj"] = std::make_shared(hidden_size, hidden_size, attn_bias); + + blocks["norm1"] = std::make_shared(hidden_size, 1e-6f, true); + blocks["norm2"] = std::make_shared(hidden_size, 1e-6f, true); + + blocks["mlp.0"] = std::make_shared(hidden_size, hidden_size * mlp_ratio); + blocks["mlp.2"] = std::make_shared(hidden_size * mlp_ratio, hidden_size); + + // adaLN_modulation.0 is nn.SiLU() + blocks["adaLN_modulation.1"] = std::make_shared(hidden_size, hidden_size * 2); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* txt, ggml_tensor* t_emb, ggml_tensor* mask) { + auto norm1 = std::dynamic_pointer_cast(blocks["norm1"]); + auto norm2 = std::dynamic_pointer_cast(blocks["norm2"]); + auto self_attn_qkv = std::dynamic_pointer_cast(blocks["self_attn.qkv"]); + auto self_attn_proj = std::dynamic_pointer_cast(blocks["self_attn.proj"]); + auto mlp_fc1 = std::dynamic_pointer_cast(blocks["mlp.0"]); + auto mlp_fc2 = std::dynamic_pointer_cast(blocks["mlp.2"]); + auto adaLN_modulation_1 = std::dynamic_pointer_cast(blocks["adaLN_modulation.1"]); + + // self attn + auto qkv = self_attn_qkv->forward(ctx, norm1->forward(ctx, txt)); + auto qkv_vec = split_qkv(ctx->ggml_ctx, qkv); + auto q = qkv_vec[0]; + auto k = qkv_vec[1]; + auto v = qkv_vec[2]; + + auto attn_out = ggml_ext_attention_ext(ctx->ggml_ctx, ctx->backend, q, k, v, num_heads, mask, false, ctx->flash_attn_enabled); + attn_out = self_attn_proj->forward(ctx, attn_out); + + // adaLN_modulation + auto emb = adaLN_modulation_1->forward(ctx, ggml_silu(ctx->ggml_ctx, t_emb)); + auto mods = ggml_ext_chunk(ctx->ggml_ctx, emb, 2, 0); + + txt = ggml_add(ctx->ggml_ctx, txt, ggml_mul(ctx->ggml_ctx, attn_out, mods[0])); + + // mlp + auto mlp_out = mlp_fc1->forward(ctx, norm2->forward(ctx, txt)); + mlp_out = ggml_silu_inplace(ctx->ggml_ctx, mlp_out); + mlp_out = mlp_fc2->forward(ctx, mlp_out); + txt = ggml_add(ctx->ggml_ctx, txt, ggml_mul(ctx->ggml_ctx, mlp_out, mods[1])); + + return txt; + } + }; + + struct IndividualTokenRefiner : public GGMLBlock { + protected: + int num_layers; + + public: + IndividualTokenRefiner(int64_t num_heads, + int64_t head_dim, + int num_layers, + int64_t mlp_ratio = 4, + bool attn_bias = true) + : num_layers(num_layers) { + for (int i = 0; i < num_layers; i++) { + blocks["blocks." + std::to_string(i)] = std::make_shared(num_heads, head_dim, mlp_ratio, attn_bias); + } + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* txt, ggml_tensor* t_emb, ggml_tensor* mask) { + for (int i = 0; i < num_layers; i++) { + auto block = std::dynamic_pointer_cast(blocks["blocks." + std::to_string(i)]); + + txt = block->forward(ctx, txt, t_emb, mask); + } + + return txt; + } + }; + + struct TokenRefiner : public GGMLBlock { + public: + TokenRefiner(int64_t in_channels, + int64_t num_heads, + int64_t head_dim, + int num_layers, + int64_t mlp_ratio = 4, + bool attn_bias = true) { + int64_t hidden_size = num_heads * head_dim; + blocks["input_embedder"] = std::make_shared(in_channels, hidden_size); + blocks["t_embedder"] = std::make_shared(256, hidden_size); + blocks["c_embedder"] = std::make_shared(in_channels, hidden_size); + blocks["individual_token_refiner"] = std::make_shared(num_heads, head_dim, num_layers, mlp_ratio, attn_bias); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* txt, ggml_tensor* timestep, ggml_tensor* mask) { + auto input_embedder = std::dynamic_pointer_cast(blocks["input_embedder"]); + auto t_embedder = std::dynamic_pointer_cast(blocks["t_embedder"]); + auto c_embedder = std::dynamic_pointer_cast(blocks["c_embedder"]); + auto individual_token_refiner = std::dynamic_pointer_cast(blocks["individual_token_refiner"]); + + auto t_emb = t_embedder->forward(ctx, ggml_ext_timestep_embedding(ctx->ggml_ctx, timestep, 256, 10000, 1.f)); + + auto h = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, txt, 1, 0, 2, 3)); + auto pooled_projections = ggml_scale(ctx->ggml_ctx, ggml_sum_rows(ctx->ggml_ctx, h), 1.f / txt->ne[1]); + pooled_projections = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, pooled_projections, 1, 0, 2, 3)); + auto c_emb = c_embedder->forward(ctx, pooled_projections); + + t_emb = ggml_add(ctx->ggml_ctx, t_emb, c_emb); + txt = input_embedder->forward(ctx, txt); + txt = individual_token_refiner->forward(ctx, txt, t_emb, mask); + return txt; + } + }; + + struct ByT5Mapper : public UnaryBlock { + ByT5Mapper(int64_t in_dim, int64_t hidden_size) { + blocks["layernorm"] = std::make_shared(in_dim); + blocks["fc1"] = std::make_shared(in_dim, 2048); + blocks["fc2"] = std::make_shared(2048, 2048); + blocks["fc3"] = std::make_shared(2048, hidden_size); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) override { + auto layernorm = std::dynamic_pointer_cast(blocks["layernorm"]); + auto fc1 = std::dynamic_pointer_cast(blocks["fc1"]); + auto fc2 = std::dynamic_pointer_cast(blocks["fc2"]); + auto fc3 = std::dynamic_pointer_cast(blocks["fc3"]); + + x = fc1->forward(ctx, layernorm->forward(ctx, x)); + x = ggml_ext_gelu(ctx->ggml_ctx, x); + x = fc2->forward(ctx, x); + x = ggml_ext_gelu(ctx->ggml_ctx, x); + return fc3->forward(ctx, x); + } + }; + + struct HunyuanVideoConfig { + std::tuple patch_size = {1, 2, 2}; + int64_t in_channels = 65; + int64_t out_channels = 32; + int64_t hidden_size = 2048; + int64_t vec_in_dim = 0; + int64_t context_in_dim = 3584; + int64_t vision_in_dim = 0; + float mlp_ratio = 4.0f; + int num_heads = 16; + int depth = 54; + int depth_single_blocks = 0; + bool qkv_bias = true; + bool guidance_embed = false; + bool use_byt5 = false; + bool use_cond_type_embedding = false; + bool use_meanflow = false; + bool use_meanflow_sum = false; + float theta = 256; + std::vector axes_dim = {16, 56, 56}; + int axes_dim_sum = 128; + + int64_t patch_volume() const { + return static_cast(std::get<0>(patch_size)) * std::get<1>(patch_size) * std::get<2>(patch_size); + } + + static HunyuanVideoConfig detect_from_weights(const String2TensorStorage& tensor_storage_map, + const std::string& prefix) { + HunyuanVideoConfig config; + config.depth = 0; + config.depth_single_blocks = 0; + bool inferred = false; + + int64_t img_embed_dim = 0; + for (const auto& [name, storage] : tensor_storage_map) { + if (starts_with(name, prefix) && ends_with(name, "img_in.proj.bias")) { + img_embed_dim = storage.ne[0]; + break; + } + } + + for (const auto& [name, storage] : tensor_storage_map) { + if (!starts_with(name, prefix)) { + continue; + } + + auto update_depth = [&](const char* block_prefix, int* depth) { + size_t pos = name.find(block_prefix); + if (pos == std::string::npos) { + return; + } + pos += strlen(block_prefix); + size_t end = name.find('.', pos); + if (end != std::string::npos) { + *depth = std::max(*depth, atoi(name.substr(pos, end - pos).c_str()) + 1); + } + }; + update_depth("double_blocks.", &config.depth); + update_depth("single_blocks.", &config.depth_single_blocks); + + if (ends_with(name, "img_in.proj.weight") && storage.n_dims == 5) { + config.patch_size = {static_cast(storage.ne[2]), + static_cast(storage.ne[1]), + static_cast(storage.ne[0])}; + config.in_channels = storage.ne[3]; + config.hidden_size = storage.ne[4]; + inferred = true; + } else if (ends_with(name, "img_in.proj.weight") && storage.n_dims == 4) { + config.patch_size = {static_cast(storage.ne[2]), + static_cast(storage.ne[1]), + static_cast(storage.ne[0])}; + if (img_embed_dim > 0 && storage.ne[3] % img_embed_dim == 0) { + config.hidden_size = img_embed_dim; + config.in_channels = storage.ne[3] / img_embed_dim; + } + inferred = true; + } else if (ends_with(name, "txt_in.input_embedder.weight")) { + config.context_in_dim = storage.ne[0]; + inferred = true; + } else if (ends_with(name, "vector_in.in_layer.weight")) { + config.vec_in_dim = storage.ne[0]; + } else if (ends_with(name, "vision_in.proj.0.weight")) { + config.vision_in_dim = storage.ne[0]; + } else if (ends_with(name, "double_blocks.0.img_attn.norm.key_norm.scale") || + ends_with(name, "double_blocks.0.img_attn.norm.key_norm.weight")) { + config.num_heads = static_cast(config.hidden_size / storage.ne[0]); + } else if (ends_with(name, "double_blocks.0.img_mlp.0.weight")) { + config.mlp_ratio = static_cast(storage.ne[1]) / static_cast(storage.ne[0]); + } + + config.guidance_embed = config.guidance_embed || name.find("guidance_in.") != std::string::npos; + config.use_byt5 = config.use_byt5 || name.find("byt5_in.") != std::string::npos; + config.use_meanflow = config.use_meanflow || name.find("time_r_in.") != std::string::npos; + } + + config.use_cond_type_embedding = tensor_storage_map.find(prefix + ".cond_type_embedding.weight") != tensor_storage_map.end(); + config.use_meanflow_sum = config.vision_in_dim > 0; + + auto final_iter = tensor_storage_map.find(prefix + ".final_layer.linear.weight"); + if (final_iter != tensor_storage_map.end()) { + config.out_channels = final_iter->second.ne[1] / config.patch_volume(); + } + config.qkv_bias = tensor_storage_map.find(prefix + ".double_blocks.0.img_attn.qkv.bias") != tensor_storage_map.end(); + + GGML_ASSERT(config.hidden_size % config.num_heads == 0); + GGML_ASSERT(config.hidden_size / config.num_heads == config.axes_dim_sum); + + if (inferred) { + LOG_DEBUG("hunyuan video: depth = %d, single depth = %d, in_channels = %" PRId64 ", out_channels = %" PRId64 ", hidden_size = %" PRId64 ", context_in_dim = %" PRId64 ", patch_size = %dx%dx%d", + config.depth, + config.depth_single_blocks, + config.in_channels, + config.out_channels, + config.hidden_size, + config.context_in_dim, + std::get<0>(config.patch_size), + std::get<1>(config.patch_size), + std::get<2>(config.patch_size)); + } + return config; + } + }; + + class HunyuanVideoModel : public GGMLBlock { + protected: + HunyuanVideoConfig config; + + void init_params(struct ggml_context* ctx, + const String2TensorStorage& tensor_storage_map = {}, + const std::string prefix = "") override { + if (config.use_cond_type_embedding) { + ggml_type type = get_type(prefix + "cond_type_embedding.weight", tensor_storage_map, GGML_TYPE_F16); + GGMLBlock::params["cond_type_embedding.weight"] = ggml_new_tensor_2d(ctx, type, config.hidden_size, 3); + } + } + + public: + HunyuanVideoModel() {} + explicit HunyuanVideoModel(HunyuanVideoConfig config) + : config(std::move(config)) { + int64_t head_dim = this->config.hidden_size / this->config.num_heads; + blocks["txt_in"] = std::make_shared(this->config.context_in_dim, this->config.num_heads, head_dim, 2); + blocks["img_in"] = std::make_shared(static_cast(224) /*Not used*/, + this->config.patch_size, + this->config.in_channels, + this->config.hidden_size); + blocks["time_in"] = std::make_shared(256, this->config.hidden_size); + if (this->config.vec_in_dim > 0) { + blocks["vector_in"] = std::make_shared(this->config.vec_in_dim, this->config.hidden_size); + } + if (this->config.vision_in_dim > 0) { + blocks["vision_in"] = std::make_shared(this->config.vision_in_dim, this->config.hidden_size); + } + if (this->config.guidance_embed) { + blocks["guidance_in"] = std::make_shared(256, this->config.hidden_size); + } + if (this->config.use_byt5) { + blocks["byt5_in"] = std::make_shared(1472, this->config.hidden_size); + } + if (this->config.use_meanflow) { + blocks["time_r_in"] = std::make_shared(256, this->config.hidden_size); + } + + for (int i = 0; i < this->config.depth; i++) { + blocks["double_blocks." + std::to_string(i)] = std::make_shared(this->config.hidden_size, + this->config.num_heads, + this->config.mlp_ratio, + i, + this->config.qkv_bias); + } + + for (int i = 0; i < this->config.depth_single_blocks; i++) { + blocks["single_blocks." + std::to_string(i)] = std::make_shared(this->config.hidden_size, + this->config.num_heads, + this->config.mlp_ratio, + i, + 0.f); + } + + blocks["final_layer"] = std::make_shared(this->config.hidden_size, + std::get<2>(this->config.patch_size), + this->config.out_channels, + false, + true, + this->config.patch_volume()); + } + + ggml_tensor* pad_to_patch_size(struct ggml_context* ctx, + ggml_tensor* x) { + int64_t W = x->ne[0]; + int64_t H = x->ne[1]; + int64_t T = x->ne[2]; + + int pt = std::get<0>(config.patch_size); + int ph = std::get<1>(config.patch_size); + int pw = std::get<2>(config.patch_size); + int pad_t = (pt - static_cast(T % pt)) % pt; + int pad_h = (ph - static_cast(H % ph)) % ph; + int pad_w = (pw - static_cast(W % pw)) % pw; + x = ggml_pad(ctx, x, pad_w, pad_h, pad_t, 0); // [N*C, T + pad_t, H + pad_h, W + pad_w] + + return x; + } + + ggml_tensor* unpatchify(struct ggml_context* ctx, + ggml_tensor* x, + int64_t t_len, + int64_t h_len, + int64_t w_len) { + // x: [N, t_len*h_len*w_len, C*pt*ph*pw] + // return: [N*C, t_len*pt, h_len*ph, w_len*pw] + int64_t N = x->ne[3]; + int64_t pt = std::get<0>(config.patch_size); + int64_t ph = std::get<1>(config.patch_size); + int64_t pw = std::get<2>(config.patch_size); + int64_t C = x->ne[0] / pt / ph / pw; + + GGML_ASSERT(C * pt * ph * pw == x->ne[0]); + + x = ggml_reshape_4d(ctx, x, C, pw * ph * pt, w_len * h_len * t_len, N); // [N, t_len*h_len*w_len, pt*ph*pw, C] + x = ggml_ext_cont(ctx, ggml_ext_torch_permute(ctx, x, 1, 2, 0, 3)); // [N, C, t_len*h_len*w_len, pt*ph*pw] + x = ggml_reshape_4d(ctx, x, pw, ph * pt, w_len, h_len * t_len * C * N); // [N*C*t_len*h_len, w_len, pt*ph, pw] + x = ggml_ext_cont(ctx, ggml_ext_torch_permute(ctx, x, 0, 2, 1, 3)); // [N*C*t_len*h_len, pt*ph, w_len, pw] + x = ggml_reshape_4d(ctx, x, pw * w_len, ph, pt, h_len * t_len * C * N); // [N*C*t_len*h_len, pt, ph, w_len*pw] + x = ggml_ext_cont(ctx, ggml_ext_torch_permute(ctx, x, 0, 2, 1, 3)); // [N*C*t_len*h_len, ph, pt, w_len*pw] + x = ggml_reshape_4d(ctx, x, pw * w_len, pt, ph * h_len, t_len * C * N); // [N*C*t_len, h_len*ph, pt, w_len*pw] + x = ggml_ext_cont(ctx, ggml_ext_torch_permute(ctx, x, 0, 2, 1, 3)); // [N*C*t_len, pt, h_len*ph, w_len*pw] + x = ggml_reshape_4d(ctx, x, pw * w_len, ph * h_len, pt * t_len, C * N); // [N*C, t_len*pt, h_len*ph, w_len*pw] + return x; + } + + ggml_tensor* add_condition_type(GGMLRunnerContext* ctx, ggml_tensor* x, int type) { + if (!config.use_cond_type_embedding) { + return x; + } + auto weight = GGMLBlock::params["cond_type_embedding.weight"]; + auto row = ggml_view_1d(ctx->ggml_ctx, + weight, + weight->ne[0], + static_cast(type) * weight->nb[1]); + auto target = ggml_new_tensor_3d(ctx->ggml_ctx, row->type, config.hidden_size, x->ne[1], x->ne[2]); + auto embed = ggml_repeat(ctx->ggml_ctx, row, target); + embed = ggml_cast(ctx->ggml_ctx, embed, x->type); + return ggml_add(ctx->ggml_ctx, x, embed); + } + + ggml_tensor* forward_orig(GGMLRunnerContext* ctx, + ggml_tensor* img, + ggml_tensor* txt, + ggml_tensor* timestep, + ggml_tensor* pe, + ggml_tensor* guidance = nullptr, + ggml_tensor* y = nullptr, + ggml_tensor* txt_byt5 = nullptr, + ggml_tensor* clip_fea = nullptr, + ggml_tensor* timestep_r = nullptr, + int64_t N = 1) { + // img: [N*C, T, H, W], C => in_dim + // txt: [N, L, text_dim] + // timestep: [N,] or [T] + // return: [N, t_len*h_len*w_len, out_dim*pt*ph*pw] + + GGML_ASSERT(N == 1); + + auto img_in = std::dynamic_pointer_cast(blocks["img_in"]); + auto txt_in = std::dynamic_pointer_cast(blocks["txt_in"]); + auto time_in = std::dynamic_pointer_cast(blocks["time_in"]); + auto final_layer = std::dynamic_pointer_cast(blocks["final_layer"]); + + img = img_in->forward(ctx, img); // [N*C, t_len*h_len*w_len, hidden_size] + txt = txt_in->forward(ctx, txt, timestep, nullptr); // [N, n_txt_token, hidden_size] + auto vec = time_in->forward(ctx, ggml_ext_timestep_embedding(ctx->ggml_ctx, timestep, 256, 10000, 1.f)); + if (config.use_meanflow && timestep_r != nullptr) { + auto time_r_in = std::dynamic_pointer_cast(blocks["time_r_in"]); + auto vec_r = time_r_in->forward(ctx, ggml_ext_timestep_embedding(ctx->ggml_ctx, timestep_r, 256, 10000, 1000.f)); + vec = ggml_add(ctx->ggml_ctx, vec, vec_r); + if (!config.use_meanflow_sum) { + vec = ggml_scale(ctx->ggml_ctx, vec, 0.5f); + } + } + if (config.vec_in_dim > 0 && y != nullptr) { + auto vector_in = std::dynamic_pointer_cast(blocks["vector_in"]); + vec = ggml_add(ctx->ggml_ctx, vec, vector_in->forward(ctx, y)); + } + if (config.guidance_embed && guidance != nullptr) { + auto guidance_in = std::dynamic_pointer_cast(blocks["guidance_in"]); + auto guidance_emb = ggml_ext_timestep_embedding(ctx->ggml_ctx, guidance, 256, 10000, 1.f); + vec = ggml_add(ctx->ggml_ctx, vec, guidance_in->forward(ctx, guidance_emb)); + } + + txt = add_condition_type(ctx, txt, 0); + if (config.use_byt5 && txt_byt5 != nullptr) { + auto byt5_in = std::dynamic_pointer_cast(blocks["byt5_in"]); + txt_byt5 = add_condition_type(ctx, byt5_in->forward(ctx, txt_byt5), 1); + txt = config.use_cond_type_embedding ? ggml_concat(ctx->ggml_ctx, txt_byt5, txt, 1) + : ggml_concat(ctx->ggml_ctx, txt, txt_byt5, 1); + } + if (config.vision_in_dim > 0 && clip_fea != nullptr) { + auto vision_in = std::dynamic_pointer_cast(blocks["vision_in"]); + clip_fea = add_condition_type(ctx, vision_in->forward(ctx, clip_fea), 2); + txt = ggml_concat(ctx->ggml_ctx, clip_fea, txt, 1); + } + + for (int i = 0; i < config.depth; i++) { + auto block = std::dynamic_pointer_cast(blocks["double_blocks." + std::to_string(i)]); + + auto img_txt = block->forward(ctx, img, txt, vec, pe, nullptr); + img = img_txt.first; // [N, n_img_token, hidden_size] + txt = img_txt.second; // [N, n_txt_token, hidden_size] + } + + if (config.depth_single_blocks > 0) { + auto txt_img = ggml_concat(ctx->ggml_ctx, txt, img, 1); // [N, n_txt_token + n_img_token, hidden_size] + for (int i = 0; i < config.depth_single_blocks; i++) { + auto block = std::dynamic_pointer_cast(blocks["single_blocks." + std::to_string(i)]); + txt_img = block->forward(ctx, txt_img, vec, pe, nullptr); + } + + txt_img = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, txt_img, 0, 2, 1, 3)); + img = ggml_view_3d(ctx->ggml_ctx, + txt_img, + txt_img->ne[0], + txt_img->ne[1], + img->ne[1], + txt_img->nb[1], + txt_img->nb[2], + txt_img->nb[2] * txt->ne[1]); + img = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, img, 0, 2, 1, 3)); + } + + img = final_layer->forward(ctx, img, vec); // (N, t_len*h_len*w_len, out_channels * patch_size ** 3) + + return img; + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x, + ggml_tensor* timestep, + ggml_tensor* context, + ggml_tensor* pe, + ggml_tensor* guidance = nullptr, + ggml_tensor* y = nullptr, + ggml_tensor* txt_byt5 = nullptr, + ggml_tensor* clip_fea = nullptr, + ggml_tensor* timestep_r = nullptr, + int64_t N = 1) { + // Forward pass of DiT. + // x: [N*C, T, H, W] + // timestep: [N,] + // context: [N, L, D] + // pe: [L, d_head/2, 2, 2] + // return: [N*C, T, H, W] + + GGML_ASSERT(N == 1); + + int64_t W = x->ne[0]; + int64_t H = x->ne[1]; + int64_t T = x->ne[2]; + x = pad_to_patch_size(ctx->ggml_ctx, x); + + int64_t pt = std::get<0>(config.patch_size); + int64_t ph = std::get<1>(config.patch_size); + int64_t pw = std::get<2>(config.patch_size); + int64_t t_len = (T + pt - 1) / pt; + int64_t h_len = (H + ph - 1) / ph; + int64_t w_len = (W + pw - 1) / pw; + + auto out = forward_orig(ctx, x, context, timestep, pe, guidance, y, txt_byt5, clip_fea, timestep_r, N); + + out = unpatchify(ctx->ggml_ctx, out, t_len, h_len, w_len); // [N*C, (T+pad_t) + (T2+pad_t2), H + pad_h, W + pad_w] + + // slice + out = ggml_ext_slice(ctx->ggml_ctx, out, 2, 0, T); // [N*C, T, H + pad_h, W + pad_w] + out = ggml_ext_slice(ctx->ggml_ctx, out, 1, 0, H); // [N*C, T, H, W + pad_w] + out = ggml_ext_slice(ctx->ggml_ctx, out, 0, 0, W); // [N*C, T, H, W] + + return out; + } + }; + + struct HunyuanVideoRunner : public DiffusionModelRunner { + public: + HunyuanVideoConfig config; + HunyuanVideoModel hunyuan_video; + std::vector pe_vec; + SDVersion version; + + HunyuanVideoRunner(ggml_backend_t backend, + const String2TensorStorage& tensor_storage_map = {}, + const std::string prefix = "", + SDVersion version = VERSION_HUNYUAN_VIDEO, + std::shared_ptr weight_manager = nullptr) + : DiffusionModelRunner(backend, prefix, weight_manager), + config(HunyuanVideoConfig::detect_from_weights(tensor_storage_map, prefix)), + version(version) { + LOG_INFO("HunyuanVideo blocks: %d double, %d single", config.depth, config.depth_single_blocks); + + hunyuan_video = HunyuanVideoModel(config); + hunyuan_video.init(params_ctx, tensor_storage_map, prefix); + } + + std::string get_desc() override { + return "hunyuan_video"; + } + + void get_param_tensors(std::map& tensors, const std::string& prefix) override { + hunyuan_video.get_param_tensors(tensors, prefix); + } + + ggml_cgraph* build_graph(const sd::Tensor& x_tensor, + const sd::Tensor& timesteps_tensor, + const sd::Tensor& context_tensor, + const sd::Tensor& c_concat_tensor = {}, + const sd::Tensor& y_tensor = {}, + const sd::Tensor& guidance_tensor = {}, + const sd::Tensor& byt5_tensor = {}, + const sd::Tensor& vision_tensor = {}, + const sd::Tensor& timestep_r_tensor = {}) { + ggml_cgraph* gf = new_graph_custom(HUNYUAN_VIDEO_GRAPH_SIZE); + + ggml_tensor* x = make_input(x_tensor); + ggml_tensor* timesteps = make_input(timesteps_tensor); + ggml_tensor* context = make_input(context_tensor); + ggml_tensor* c_concat = make_optional_input(c_concat_tensor); + ggml_tensor* y = make_optional_input(y_tensor); + ggml_tensor* guidance = make_optional_input(guidance_tensor); + ggml_tensor* byt5 = make_optional_input(byt5_tensor); + ggml_tensor* vision = make_optional_input(vision_tensor); + ggml_tensor* timestep_r = make_optional_input(timestep_r_tensor); + + GGML_ASSERT(x->ne[3] == config.out_channels); + if (c_concat != nullptr) { + x = ggml_concat(compute_ctx, x, c_concat, 3); + } + GGML_ASSERT(x->ne[3] <= config.in_channels); + if (x->ne[3] < config.in_channels) { + x = ggml_pad(compute_ctx, x, 0, 0, 0, static_cast(config.in_channels - x->ne[3])); + } + + int text_len = static_cast(context->ne[1]); + if (byt5 != nullptr) { + text_len += static_cast(byt5->ne[1]); + } + if (vision != nullptr) { + text_len += static_cast(vision->ne[1]); + } + pe_vec = Rope::gen_hunyuan_video_pe(static_cast(x->ne[2]), + static_cast(x->ne[1]), + static_cast(x->ne[0]), + std::get<0>(config.patch_size), + std::get<1>(config.patch_size), + std::get<2>(config.patch_size), + 1, + text_len, + config.theta, + config.axes_dim); + int64_t pos_len = static_cast(pe_vec.size() / config.axes_dim_sum / 2); + // LOG_DEBUG("pos_len %d", pos_len); + auto pe = ggml_new_tensor_4d(compute_ctx, GGML_TYPE_F32, 2, 2, config.axes_dim_sum / 2, pos_len); + // pe->data = pe_vec.data(); + // print_ggml_tensor(pe, true, "pe"); + // pe->data = nullptr; + set_backend_tensor_data(pe, pe_vec.data()); + + auto runner_ctx = get_context(); + + ggml_tensor* out = hunyuan_video.forward(&runner_ctx, + x, + timesteps, + context, + pe, + guidance, + y, + byt5, + vision, + timestep_r); + + ggml_build_forward_expand(gf, out); + + return gf; + } + + sd::Tensor compute(int n_threads, + const sd::Tensor& x, + const sd::Tensor& timesteps, + const sd::Tensor& context, + const sd::Tensor& c_concat = {}, + const sd::Tensor& y = {}, + const sd::Tensor& guidance = {}, + const sd::Tensor& byt5 = {}, + const sd::Tensor& vision = {}, + const sd::Tensor& timestep_r = {}) { + auto get_graph = [&]() -> ggml_cgraph* { + return build_graph(x, timesteps, context, c_concat, y, guidance, byt5, vision, timestep_r); + }; + + return restore_trailing_singleton_dims(GGMLRunner::compute(get_graph, n_threads, false, false, false), x.dim()); + } + + sd::Tensor compute(int n_threads, + const DiffusionParams& diffusion_params) override { + GGML_ASSERT(diffusion_params.x != nullptr); + GGML_ASSERT(diffusion_params.timesteps != nullptr); + GGML_ASSERT(diffusion_params.context != nullptr); + const auto* extra = diffusion_extra_as(diffusion_params); + return compute(n_threads, + *diffusion_params.x, + *diffusion_params.timesteps, + *diffusion_params.context, + tensor_or_empty(diffusion_params.c_concat), + tensor_or_empty(diffusion_params.y), + tensor_or_empty(extra->guidance), + tensor_or_empty(extra->byt5), + tensor_or_empty(extra->vision), + tensor_or_empty(extra->timestep_r)); + } + }; + +} // namespace Hunyuan + +#endif // __SD_MODEL_DIFFUSION_HUNYUAN_HPP__ diff --git a/src/model/diffusion/ltxv.hpp b/src/model/diffusion/ltxv.hpp index b89ff32c6..39c633747 100644 --- a/src/model/diffusion/ltxv.hpp +++ b/src/model/diffusion/ltxv.hpp @@ -800,7 +800,7 @@ namespace LTXV { auto gate_mlp = mods[5]; auto x_norm = rms_norm(ctx->ggml_ctx, x); - x_norm = modulate(ctx->ggml_ctx, x_norm, shift_msa, scale_msa); + x_norm = LTXV::modulate(ctx->ggml_ctx, x_norm, shift_msa, scale_msa); auto msa = attn1->forward(ctx, x_norm, nullptr, self_attention_mask, pe); x = ggml_add(ctx->ggml_ctx, x, apply_gate(ctx->ggml_ctx, msa, gate_msa)); @@ -810,12 +810,12 @@ namespace LTXV { auto gate_q = mods[8]; auto q = rms_norm(ctx->ggml_ctx, x); - q = modulate(ctx->ggml_ctx, q, shift_q, scale_q); + q = LTXV::modulate(ctx->ggml_ctx, q, shift_q, scale_q); auto context_mod = context; if (prompt_timestep != nullptr) { auto prompt_mods = get_prompt_scale_shift_values(ctx, prompt_timestep); - context_mod = modulate(ctx->ggml_ctx, context_mod, prompt_mods[0], prompt_mods[1]); + context_mod = LTXV::modulate(ctx->ggml_ctx, context_mod, prompt_mods[0], prompt_mods[1]); } auto mca = attn2->forward(ctx, q, context_mod, attention_mask, nullptr, nullptr); @@ -826,7 +826,7 @@ namespace LTXV { } auto y = rms_norm(ctx->ggml_ctx, x); - y = modulate(ctx->ggml_ctx, y, shift_mlp, scale_mlp); + y = LTXV::modulate(ctx->ggml_ctx, y, shift_mlp, scale_mlp); auto mlp_out = ff->forward(ctx, y); x = ggml_add(ctx->ggml_ctx, x, apply_gate(ctx->ggml_ctx, mlp_out, gate_mlp)); return x; @@ -1177,11 +1177,11 @@ namespace LTXV { if (cross_attention_adaln) { auto q_mods = get_ada_values(ctx, table, timestep, dim, 9, 6, 3); auto q = rms_norm(ctx->ggml_ctx, x); - q = modulate(ctx->ggml_ctx, q, q_mods[0], q_mods[1]); + q = LTXV::modulate(ctx->ggml_ctx, q, q_mods[0], q_mods[1]); auto context_mod = context; if (prompt_timestep != nullptr && prompt_table != nullptr) { auto p_mods = get_ada_values(ctx, prompt_table, prompt_timestep, dim, 2); - context_mod = modulate(ctx->ggml_ctx, context_mod, p_mods[0], p_mods[1]); + context_mod = LTXV::modulate(ctx->ggml_ctx, context_mod, p_mods[0], p_mods[1]); } auto out = attn->forward(ctx, q, context_mod, attention_mask, nullptr, nullptr); return apply_gate(ctx->ggml_ctx, out, q_mods[2]); @@ -1228,7 +1228,7 @@ namespace LTXV { auto v_mods = get_ada_values(ctx, v_table, v_timestep, v_dim, cross_attention_adaln ? 9 : 6); auto v_norm = rms_norm(ctx->ggml_ctx, vx); - v_norm = modulate(ctx->ggml_ctx, v_norm, v_mods[0], v_mods[1]); + v_norm = LTXV::modulate(ctx->ggml_ctx, v_norm, v_mods[0], v_mods[1]); auto v_sa = attn1->forward(ctx, v_norm, nullptr, self_attention_mask, v_pe); vx = ggml_add(ctx->ggml_ctx, vx, apply_gate(ctx->ggml_ctx, v_sa, v_mods[2])); auto v_txt = apply_text_cross_attention(ctx, @@ -1246,7 +1246,7 @@ namespace LTXV { if (run_ax) { auto a_mods = get_ada_values(ctx, a_table, a_timestep, a_dim, cross_attention_adaln ? 9 : 6); auto a_norm = rms_norm(ctx->ggml_ctx, ax); - a_norm = modulate(ctx->ggml_ctx, a_norm, a_mods[0], a_mods[1]); + a_norm = LTXV::modulate(ctx->ggml_ctx, a_norm, a_mods[0], a_mods[1]); auto a_sa = audio_attn1->forward(ctx, a_norm, nullptr, nullptr, a_pe); ax = ggml_add(ctx->ggml_ctx, ax, apply_gate(ctx->ggml_ctx, a_sa, a_mods[2])); auto a_txt = apply_text_cross_attention(ctx, @@ -1269,8 +1269,8 @@ namespace LTXV { auto a2v_video_table = ggml_ext_slice(ctx->ggml_ctx, params["scale_shift_table_a2v_ca_video"], 1, 0, 4); auto a2v_audio = get_ada_values(ctx, a2v_audio_table, a_cross_scale_shift_timestep, a_dim, 4); auto a2v_video = get_ada_values(ctx, a2v_video_table, v_cross_scale_shift_timestep, v_dim, 4); - auto vx_scaled = modulate(ctx->ggml_ctx, vx_norm3, a2v_video[1], a2v_video[0]); - auto ax_scaled = modulate(ctx->ggml_ctx, ax_norm3, a2v_audio[1], a2v_audio[0]); + auto vx_scaled = LTXV::modulate(ctx->ggml_ctx, vx_norm3, a2v_video[1], a2v_video[0]); + auto ax_scaled = LTXV::modulate(ctx->ggml_ctx, ax_norm3, a2v_audio[1], a2v_audio[0]); auto a2v_out = audio_to_video_attn->forward(ctx, vx_scaled, ax_scaled, nullptr, v_cross_pe, a_cross_pe); auto a2v_gate_table = ggml_ext_slice(ctx->ggml_ctx, params["scale_shift_table_a2v_ca_video"], 1, 4, 5); auto a2v_gate = get_ada_values(ctx, a2v_gate_table, v_cross_gate_timestep, v_dim, 1)[0]; @@ -1282,8 +1282,8 @@ namespace LTXV { auto v2a_video_table = ggml_ext_slice(ctx->ggml_ctx, params["scale_shift_table_a2v_ca_video"], 1, 0, 4); auto v2a_audio = get_ada_values(ctx, v2a_audio_table, a_cross_scale_shift_timestep, a_dim, 4); auto v2a_video = get_ada_values(ctx, v2a_video_table, v_cross_scale_shift_timestep, v_dim, 4); - auto ax_scaled = modulate(ctx->ggml_ctx, ax_norm3, v2a_audio[3], v2a_audio[2]); - auto vx_scaled = modulate(ctx->ggml_ctx, vx_norm3, v2a_video[3], v2a_video[2]); + auto ax_scaled = LTXV::modulate(ctx->ggml_ctx, ax_norm3, v2a_audio[3], v2a_audio[2]); + auto vx_scaled = LTXV::modulate(ctx->ggml_ctx, vx_norm3, v2a_video[3], v2a_video[2]); auto v2a_out = video_to_audio_attn->forward(ctx, ax_scaled, vx_scaled, nullptr, a_cross_pe, v_cross_pe); auto v2a_gate_table = ggml_ext_slice(ctx->ggml_ctx, params["scale_shift_table_a2v_ca_audio"], 1, 4, 5); auto v2a_gate = get_ada_values(ctx, v2a_gate_table, a_cross_gate_timestep, a_dim, 1)[0]; @@ -1291,14 +1291,14 @@ namespace LTXV { } auto a_ff_mods = get_ada_values(ctx, a_table, a_timestep, a_dim, cross_attention_adaln ? 9 : 6, 3, 3); auto ax_scaled = rms_norm(ctx->ggml_ctx, ax); - ax_scaled = modulate(ctx->ggml_ctx, ax_scaled, a_ff_mods[0], a_ff_mods[1]); + ax_scaled = LTXV::modulate(ctx->ggml_ctx, ax_scaled, a_ff_mods[0], a_ff_mods[1]); auto a_ff_out = audio_ff->forward(ctx, ax_scaled); ax = ggml_add(ctx->ggml_ctx, ax, apply_gate(ctx->ggml_ctx, a_ff_out, a_ff_mods[2])); } auto v_ff_mods = get_ada_values(ctx, v_table, v_timestep, v_dim, cross_attention_adaln ? 9 : 6, 3, 3); auto vx_scaled = rms_norm(ctx->ggml_ctx, vx); - vx_scaled = modulate(ctx->ggml_ctx, vx_scaled, v_ff_mods[0], v_ff_mods[1]); + vx_scaled = LTXV::modulate(ctx->ggml_ctx, vx_scaled, v_ff_mods[0], v_ff_mods[1]); auto v_ff_out = ff->forward(ctx, vx_scaled); vx = ggml_add(ctx->ggml_ctx, vx, apply_gate(ctx->ggml_ctx, v_ff_out, v_ff_mods[2])); @@ -1657,14 +1657,14 @@ namespace LTXV { auto v_shift_scale = get_output_scale_shift(ctx, params["scale_shift_table"], v_embedded_time, config.hidden_size); vx = norm_out->forward(ctx, vx); - vx = modulate(ctx->ggml_ctx, vx, v_shift_scale[0], v_shift_scale[1]); + vx = LTXV::modulate(ctx->ggml_ctx, vx, v_shift_scale[0], v_shift_scale[1]); vx = proj_out->forward(ctx, vx); vx = unpatchify_video(ctx, vx, width, height, frames); if (ax != nullptr && audio_time > 0) { auto a_shift_scale = get_output_scale_shift(ctx, params["audio_scale_shift_table"], a_embedded_time, config.audio_hidden_size); ax = audio_norm_out->forward(ctx, ax); - ax = modulate(ctx->ggml_ctx, ax, a_shift_scale[0], a_shift_scale[1]); + ax = LTXV::modulate(ctx->ggml_ctx, ax, a_shift_scale[0], a_shift_scale[1]); ax = audio_proj_out->forward(ctx, ax); ax = unpatchify_audio(ctx, ax, audio_time); } diff --git a/src/model/diffusion/mmdit.hpp b/src/model/diffusion/mmdit.hpp index d8e76dfb9..6731b5fb5 100644 --- a/src/model/diffusion/mmdit.hpp +++ b/src/model/diffusion/mmdit.hpp @@ -136,11 +136,15 @@ struct MMDiTConfig { }; struct PatchEmbed : public GGMLBlock { - // 2D Image to Patch Embedding + // 2D/3D Image to Patch Embedding protected: + bool is_3d; bool flatten; bool dynamic_img_pad; - int patch_size; + int patch_t; + int patch_h; + int patch_w; + int64_t embed_dim; public: PatchEmbed(int64_t img_size = 224, @@ -149,42 +153,90 @@ struct PatchEmbed : public GGMLBlock { int64_t embed_dim = 1536, bool bias = true, bool flatten = true, - bool dynamic_img_pad = true) - : patch_size(patch_size), + bool dynamic_img_pad = true, + bool is_3d = false) + : patch_t(is_3d ? patch_size : 1), + patch_h(patch_size), + patch_w(patch_size), + embed_dim(embed_dim), flatten(flatten), - dynamic_img_pad(dynamic_img_pad) { + dynamic_img_pad(dynamic_img_pad), + is_3d(is_3d) { // img_size is always None // patch_size is always 2 // in_chans is always 16 // norm_layer is always False // strict_img_size is always true, but not used - blocks["proj"] = std::shared_ptr(new Conv2d(in_chans, - embed_dim, - {patch_size, patch_size}, - {patch_size, patch_size}, - {0, 0}, - {1, 1}, - bias)); + if (is_3d) { + blocks["proj"] = std::make_shared(in_chans, + embed_dim, + std::tuple{patch_size, patch_size, patch_size}, + std::tuple{patch_size, patch_size, patch_size}, + std::tuple{0, 0, 0}, + std::tuple{1, 1, 1}, + bias); + } else { + blocks["proj"] = std::make_shared(in_chans, + embed_dim, + std::pair{patch_size, patch_size}, + std::pair{patch_size, patch_size}, + std::pair{0, 0}, + std::pair{1, 1}, + bias); + } + } + + PatchEmbed(int64_t img_size, + std::tuple patch_size, + int64_t in_chans, + int64_t embed_dim, + bool bias = true, + bool flatten = true, + bool dynamic_img_pad = true) + : patch_t(std::get<0>(patch_size)), + patch_h(std::get<1>(patch_size)), + patch_w(std::get<2>(patch_size)), + embed_dim(embed_dim), + flatten(flatten), + dynamic_img_pad(dynamic_img_pad), + is_3d(true) { + SD_UNUSED(img_size); + blocks["proj"] = std::make_shared(in_chans, + embed_dim, + patch_size, + patch_size, + std::tuple{0, 0, 0}, + std::tuple{1, 1, 1}, + bias); } ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) { - // x: [N, C, H, W] - // return: [N, H*W, embed_dim] - auto proj = std::dynamic_pointer_cast(blocks["proj"]); + // x: [N, C, H, W] or [N*C, T, H, W] + // return: [N, h_len*w_len, embed_dim] or [N, t_len*h_len*w_len, embed_dim] + auto proj = std::dynamic_pointer_cast(blocks["proj"]); if (dynamic_img_pad) { int64_t W = x->ne[0]; int64_t H = x->ne[1]; - int pad_h = (patch_size - H % patch_size) % patch_size; - int pad_w = (patch_size - W % patch_size) % patch_size; - x = ggml_pad(ctx->ggml_ctx, x, pad_w, pad_h, 0, 0); // TODO: reflect pad mode + int pad_t = 0; + int pad_h = (patch_h - static_cast(H % patch_h)) % patch_h; + int pad_w = (patch_w - static_cast(W % patch_w)) % patch_w; + if (is_3d) { + int64_t T = x->ne[2]; + pad_t = (patch_t - static_cast(T % patch_t)) % patch_t; + } + x = ggml_pad(ctx->ggml_ctx, x, pad_w, pad_h, pad_t, 0); // TODO: reflect pad mode } - x = proj->forward(ctx, x); + x = proj->forward(ctx, x); // [N, C, h_len, w_len] or [N*C, t_len, h_len, w_len] if (flatten) { - x = ggml_reshape_3d(ctx->ggml_ctx, x, x->ne[0] * x->ne[1], x->ne[2], x->ne[3]); - x = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, x, 1, 0, 2, 3)); + if (is_3d) { + x = ggml_reshape_3d(ctx->ggml_ctx, x, x->ne[0] * x->ne[1] * x->ne[2], embed_dim, x->ne[3] / embed_dim); // [N, C, t_len*h_len*w_len] + } else { + x = ggml_reshape_3d(ctx->ggml_ctx, x, x->ne[0] * x->ne[1], x->ne[2], x->ne[3]); // [N, C, h_len*w_len] + } + x = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, x, 1, 0, 2, 3)); // [N, h_len*w_len, C] } return x; } diff --git a/src/model/diffusion/model.hpp b/src/model/diffusion/model.hpp index 6e04f9f1f..d8ee3d26f 100644 --- a/src/model/diffusion/model.hpp +++ b/src/model/diffusion/model.hpp @@ -87,6 +87,13 @@ struct MiniT2IDiffusionExtra { const sd::Tensor* mask = nullptr; }; +struct HunyuanVideoDiffusionExtra { + const sd::Tensor* guidance = nullptr; + const sd::Tensor* byt5 = nullptr; + const sd::Tensor* vision = nullptr; + const sd::Tensor* timestep_r = nullptr; +}; + using DiffusionExtraParams = std::variant; + MiniT2IDiffusionExtra, + HunyuanVideoDiffusionExtra>; struct DiffusionParams { const sd::Tensor* x = nullptr; diff --git a/src/model/te/t5.hpp b/src/model/te/t5.hpp index 6d2326f94..90c781e1d 100644 --- a/src/model/te/t5.hpp +++ b/src/model/te/t5.hpp @@ -18,6 +18,7 @@ struct T5Config { int64_t num_layers = 24; int64_t model_dim = 4096; + int64_t inner_dim = 4096; int64_t ff_dim = 10240; int64_t num_heads = 64; int64_t vocab_size = 32128; @@ -53,6 +54,7 @@ struct T5Config { if (q->n_dims == 2) { config.model_dim = q->ne[0]; int64_t inner_dim = q->ne[1]; + config.inner_dim = inner_dim; // Flan-T5/T5 uses d_kv=64 for common sizes. if (inner_dim % 64 == 0) { config.num_heads = inner_dim / 64; @@ -357,7 +359,7 @@ struct T5 : public GGMLBlock { : config(config) { blocks["encoder"] = std::shared_ptr(new T5Stack(config.num_layers, config.model_dim, - config.model_dim, + config.inner_dim, config.ff_dim, config.num_heads, config.relative_attention)); diff --git a/src/model/vae/hunyuan_vae.hpp b/src/model/vae/hunyuan_vae.hpp new file mode 100644 index 000000000..b16126181 --- /dev/null +++ b/src/model/vae/hunyuan_vae.hpp @@ -0,0 +1,834 @@ +#ifndef __SD_MODEL_VAE_HUNYUAN_VAE_HPP__ +#define __SD_MODEL_VAE_HUNYUAN_VAE_HPP__ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "model/vae/wan_vae.hpp" +#include "model_manager.h" + +namespace Hunyuan { + constexpr int HUNYUAN_VIDEO_VAE_GRAPH_SIZE = 65536; + constexpr int HUNYUAN_VIDEO_VAE_GRAPH_SIZE_PER_LATENT_FRAME = 8192; + constexpr int HUNYUAN_VIDEO_VAE_TEMPORAL_CHUNK_SIZE = 1; + + struct TemporalConvCarry { + const std::vector* input = nullptr; + std::vector* output = nullptr; + size_t input_index = 0; + + bool is_continuation() const { + return input != nullptr; + } + + ggml_tensor* take() { + GGML_ASSERT(input != nullptr && input_index < input->size()); + return (*input)[input_index++]; + } + + void push(ggml_tensor* tensor) { + if (output != nullptr) { + output->push_back(tensor); + } + } + + void finish() const { + GGML_ASSERT(input == nullptr || input_index == input->size()); + } + }; + + static ggml_tensor* repeat_interleave_channels(GGMLRunnerContext* ctx, + ggml_tensor* x, + int64_t repeats, + int64_t width, + int64_t height, + int64_t frames) { + GGML_ASSERT(repeats > 0); + GGML_ASSERT(width * height * frames == x->ne[0] * x->ne[1] * x->ne[2]); + int64_t channels = x->ne[3]; + if (repeats == 1) { + return ggml_reshape_4d(ctx->ggml_ctx, x, width, height, frames, channels); + } + x = ggml_reshape_3d(ctx->ggml_ctx, x, width * height * frames, 1, channels); + auto target = ggml_new_tensor_3d(ctx->ggml_ctx, x->type, width * height * frames, repeats, channels); + x = ggml_repeat(ctx->ggml_ctx, x, target); + return ggml_reshape_4d(ctx->ggml_ctx, x, width, height, frames, channels * repeats); + } + + class CausalConv3d : public GGMLBlock { + protected: + std::tuple kernel_size; + + public: + CausalConv3d(int64_t in_channels, + int64_t out_channels, + std::tuple kernel_size, + std::tuple stride = {1, 1, 1}, + std::tuple padding = {0, 0, 0}, + std::tuple dilation = {1, 1, 1}, + bool bias = true) + : kernel_size(kernel_size) { + blocks["conv"] = std::make_shared(in_channels, out_channels, kernel_size, stride, padding, dilation, bias); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x, + TemporalConvCarry* carry = nullptr) { + // x: [N*IC, ID, IH, IW] + // result: x: [N*OC, OD, OH, OW] + // assert N == 1 + + auto conv = std::dynamic_pointer_cast(blocks["conv"]); + + int pad_w = std::get<2>(kernel_size) / 2; + int pad_h = std::get<1>(kernel_size) / 2; + int pad_t = std::get<0>(kernel_size) - 1; + std::vector temporal_frames; + temporal_frames.reserve(x->ne[2] + pad_t); + if (pad_t > 0) { + if (carry != nullptr && carry->is_continuation()) { + auto previous = carry->take(); + GGML_ASSERT(previous->ne[2] <= pad_t); + for (int64_t frame = 0; frame < previous->ne[2]; frame++) { + temporal_frames.push_back(ggml_ext_slice(ctx->ggml_ctx, previous, 2, frame, frame + 1)); + } + for (int64_t frame = previous->ne[2]; frame < pad_t; frame++) { + temporal_frames.push_back(ggml_ext_slice(ctx->ggml_ctx, x, 2, 0, 1)); + } + } else { + auto first = ggml_ext_slice(ctx->ggml_ctx, x, 2, 0, 1); + for (int frame = 0; frame < pad_t; frame++) { + temporal_frames.push_back(first); + } + } + } + for (int64_t frame = 0; frame < x->ne[2]; frame++) { + temporal_frames.push_back(ggml_ext_slice(ctx->ggml_ctx, x, 2, frame, frame + 1)); + } + + if (pad_t > 0 && carry != nullptr && carry->output != nullptr) { + ggml_tensor* next = nullptr; + for (int frame = pad_t; frame > 0; frame--) { + auto item = temporal_frames[temporal_frames.size() - frame]; + next = next == nullptr ? item : ggml_concat(ctx->ggml_ctx, next, item, 2); + } + carry->push(ggml_cont(ctx->ggml_ctx, next)); + } + + ggml_tensor* padded = nullptr; + for (auto frame : temporal_frames) { + padded = padded == nullptr ? frame : ggml_concat(ctx->ggml_ctx, padded, frame, 2); + } + auto replicate_pad = [&](ggml_tensor* input, int dim, int left, int right) { + if (left > 0) { + auto first = ggml_ext_slice(ctx->ggml_ctx, input, dim, 0, 1); + for (int i = 0; i < left; i++) { + input = ggml_concat(ctx->ggml_ctx, first, input, dim); + } + } + if (right > 0) { + auto last = ggml_ext_slice(ctx->ggml_ctx, input, dim, input->ne[dim] - 1, input->ne[dim]); + for (int i = 0; i < right; i++) { + input = ggml_concat(ctx->ggml_ctx, input, last, dim); + } + } + return input; + }; + padded = replicate_pad(padded, 0, pad_w, pad_w); + padded = replicate_pad(padded, 1, pad_h, pad_h); + return conv->forward(ctx, padded); + } + }; + + class AttnBlock : public UnaryBlock { + protected: + int64_t in_channels; + + public: + AttnBlock(int64_t in_channels) + : in_channels(in_channels) { + blocks["norm"] = std::make_shared(in_channels); + blocks["q"] = std::make_shared(in_channels, in_channels, std::tuple{1, 1, 1}); + blocks["k"] = std::make_shared(in_channels, in_channels, std::tuple{1, 1, 1}); + blocks["v"] = std::make_shared(in_channels, in_channels, std::tuple{1, 1, 1}); + blocks["proj_out"] = std::make_shared(in_channels, in_channels, std::tuple{1, 1, 1}); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x) override { + // x: [b*c, t, h, w] + auto norm = std::dynamic_pointer_cast(blocks["norm"]); + auto q_proj = std::dynamic_pointer_cast(blocks["q"]); + auto k_proj = std::dynamic_pointer_cast(blocks["k"]); + auto v_proj = std::dynamic_pointer_cast(blocks["v"]); + auto proj_out = std::dynamic_pointer_cast(blocks["proj_out"]); + + const int64_t b = x->ne[3] / in_channels; + + auto identity = x; + + x = norm->forward(ctx, x); + + const int64_t c = x->ne[3] / b; + const int64_t t = x->ne[2]; + const int64_t h = x->ne[1]; + const int64_t w = x->ne[0]; + + auto q = q_proj->forward(ctx, x); // [b*c, t, h, w] + auto k = k_proj->forward(ctx, x); // [b*c, t, h, w] + auto v = v_proj->forward(ctx, x); // [b*c, t, h, w] + + q = ggml_reshape_3d(ctx->ggml_ctx, q, w * h * t, c, b); // [b, c, t*h*w] + q = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, q, 1, 0, 2, 3)); // [b, t*h*w, c] + + k = ggml_reshape_3d(ctx->ggml_ctx, k, w * h * t, c, b); // [b, c, t*h*w] + k = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, k, 1, 0, 2, 3)); // [b, t*h*w, c] + + v = ggml_reshape_3d(ctx->ggml_ctx, v, w * h * t, c, b); // [b, c, t*h*w] + v = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, v, 1, 0, 2, 3)); // [b, t*h*w, c] + + x = ggml_ext_attention_ext(ctx->ggml_ctx, ctx->backend, q, k, v, 1, nullptr, false, ctx->flash_attn_enabled); // [b, t*h*w, c] + + x = ggml_ext_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, x, 1, 0, 2, 3)); // [b, c, t*h*w] + x = ggml_reshape_4d(ctx->ggml_ctx, x, w, h, t, c * b); // [b*c, t, h, w] + + x = proj_out->forward(ctx, x); + + x = ggml_add(ctx->ggml_ctx, x, identity); + return x; + } + }; + + class ResnetBlock : public UnaryBlock { + protected: + int64_t in_channels; + int64_t out_channels; + + public: + ResnetBlock(int64_t in_channels, + int64_t out_channels) + : in_channels(in_channels), + out_channels(out_channels) { + blocks["norm1"] = std::make_shared(in_channels); + blocks["conv1"] = std::make_shared(in_channels, out_channels, std::tuple{3, 3, 3}); + + blocks["norm2"] = std::make_shared(out_channels); + blocks["conv2"] = std::make_shared(out_channels, out_channels, std::tuple{3, 3, 3}); + + if (out_channels != in_channels) { + blocks["nin_shortcut"] = std::make_shared(in_channels, out_channels, std::tuple{1, 1, 1}); + } + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) override { + return forward(ctx, x, nullptr); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x, + TemporalConvCarry* carry) { + // x: [B*IC, IT, OH, OW] + // return: [B*OC, OT, OH, OW] + auto norm1 = std::dynamic_pointer_cast(blocks["norm1"]); + auto conv1 = std::dynamic_pointer_cast(blocks["conv1"]); + auto norm2 = std::dynamic_pointer_cast(blocks["norm2"]); + auto conv2 = std::dynamic_pointer_cast(blocks["conv2"]); + + auto h = x; + h = norm1->forward(ctx, h); + h = ggml_silu_inplace(ctx->ggml_ctx, h); // swish + h = conv1->forward(ctx, h, carry); + + h = norm2->forward(ctx, h); + h = ggml_silu_inplace(ctx->ggml_ctx, h); // swish + // dropout, skip for inference + h = conv2->forward(ctx, h, carry); + + // skip connection + if (out_channels != in_channels) { + auto nin_shortcut = std::dynamic_pointer_cast(blocks["nin_shortcut"]); + + x = nin_shortcut->forward(ctx, x); // [B*OC, OT, OH, OW] + } + + h = ggml_add(ctx->ggml_ctx, h, x); + return h; // [B*OC, OT, OH, OW] + } + }; + + class Upsample : public GGMLBlock { + protected: + int64_t in_channels; + int64_t out_channels; + int64_t factor_t; + int64_t factor_s; + int64_t factor; + int64_t repeats; + + public: + Upsample(int64_t in_channels, int64_t out_channels, bool add_temporal_upsample) + : in_channels(in_channels), out_channels(out_channels) { + if (add_temporal_upsample) { + factor_t = 2; + } else { + factor_t = 1; + } + factor_s = 2; + factor = factor_t * factor_s * factor_s; + GGML_ASSERT(out_channels * factor % in_channels == 0); + repeats = out_channels * factor / in_channels; + blocks["conv"] = std::make_shared(in_channels, out_channels * factor, std::tuple{3, 3, 3}); + } + + static ggml_tensor* _pixel_shuffle_3d(GGMLRunnerContext* ctx, + ggml_tensor* x, + int64_t factor_t, + int64_t factor_s, + int64_t B = 1) { + // x: [B*factor*C, T, H, W] + // return: [B*C, T*factor_t, H*factor_s, W*factor_s] + GGML_ASSERT(B == 1); + int64_t factor = factor_t * factor_s * factor_s; + int64_t C = x->ne[3] / factor; + int64_t T = x->ne[2]; + int64_t H = x->ne[1]; + int64_t W = x->ne[0]; + + x = ggml_reshape_4d(ctx->ggml_ctx, x, W, H * T, C, factor); // [factor, C, T*H, W] + x = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 1, 3, 2)); // [C, factor, T*H, W] + x = ggml_reshape_4d(ctx->ggml_ctx, x, W, H * T, factor_s, factor_s * factor_t * C); // [C*factor_t*factor_s, factor_s, T*H, W] + x = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 2, 0, 1, 3)); // [C*factor_t*factor_s, T*H, W, factor_s] + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s * W, H * T, factor_s, factor_t * C); // [C*factor_t, factor_s, T*H, W*factor_s] + x = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 2, 1, 3)); // [C*factor_t, T*H, factor_s, W*factor_s] + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s * W * factor_s * H, T, factor_t, C); // [C, factor_t, T, H*factor_s*W*factor_s] + x = ggml_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 2, 1, 3)); // [C, T, factor_t, H*factor_s*W*factor_s] + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s * W, factor_s * H, factor_t * T, C); // [C, T*factor_t, H*factor_s, W*factor_s] + + return x; + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x, + TemporalConvCarry* carry = nullptr) { + // x: [B*IC, T, H, W] + // return: [B*OC, 1 + (T - 1)*factor_t, H*factor_s, W*factor_s] + const int64_t B = x->ne[3] / in_channels; + GGML_ASSERT(B == 1); + + auto conv = std::dynamic_pointer_cast(blocks["conv"]); + + const bool continuation = carry != nullptr && carry->is_continuation(); + auto h = conv->forward(ctx, x, carry); // [B*factor*OC, T, H, W] + + ggml_tensor* shortcut = nullptr; + if (factor_t == 2 && !continuation) { + auto h_first = ggml_ext_slice(ctx->ggml_ctx, h, 2, 0, 1); // [B*factor*OC, 1, H, W] + h_first = _pixel_shuffle_3d(ctx, h_first, 1, factor_s, B); // [B*2*OC, 1, H*factor_s, W*factor_s] + h_first = ggml_ext_slice(ctx->ggml_ctx, h_first, 3, 0, out_channels); // [B*OC, 1, H*factor_s, W*factor_s] + + auto x_first = ggml_ext_slice(ctx->ggml_ctx, x, 2, 0, 1); + x_first = repeat_interleave_channels(ctx, x_first, repeats / 2, x->ne[0], x->ne[1], 1); + x_first = _pixel_shuffle_3d(ctx, x_first, 1, factor_s, B); + + if (x->ne[2] == 1) { + return ggml_add(ctx->ggml_ctx, h_first, x_first); + } + + auto h_next = ggml_ext_slice(ctx->ggml_ctx, h, 2, 1, h->ne[2]); // [B*factor*OC, T - 1, H, W] + h_next = _pixel_shuffle_3d(ctx, h_next, factor_t, factor_s, B); // [B*OC, (T - 1)*factor_t, H*factor_s, W*factor_s] + + h = ggml_concat(ctx->ggml_ctx, h_first, h_next, 2); // [B*OC, 1 + (T - 1)*factor_t, H*factor_s, W*factor_s] + + auto x_next = ggml_ext_slice(ctx->ggml_ctx, x, 2, 1, x->ne[2]); + x_next = repeat_interleave_channels(ctx, x_next, repeats, x->ne[0], x->ne[1], x->ne[2] - 1); + x_next = _pixel_shuffle_3d(ctx, x_next, factor_t, factor_s, B); + + shortcut = ggml_concat(ctx->ggml_ctx, x_first, x_next, 2); // [B*OC, 1 + (T - 1)*factor_t, H*factor_s, W*factor_s] + } else { + h = _pixel_shuffle_3d(ctx, h, factor_t, factor_s, B); + shortcut = repeat_interleave_channels(ctx, x, repeats, x->ne[0], x->ne[1], x->ne[2]); + shortcut = _pixel_shuffle_3d(ctx, shortcut, factor_t, factor_s, B); // [B*OC, T*factor_t, H*factor_s, W*factor_s] + } + + return ggml_add(ctx->ggml_ctx, h, shortcut); + } + }; + + static ggml_tensor* pixel_unshuffle_3d(GGMLRunnerContext* ctx, + ggml_tensor* x, + int64_t factor_t, + int64_t factor_s) { + GGML_ASSERT(x->ne[0] % factor_s == 0); + GGML_ASSERT(x->ne[1] % factor_s == 0); + GGML_ASSERT(x->ne[2] % factor_t == 0); + int64_t W = x->ne[0] / factor_s; + int64_t H = x->ne[1] / factor_s; + int64_t T = x->ne[2] / factor_t; + int64_t C = x->ne[3]; + int64_t factor = factor_t * factor_s * factor_s; + + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s * W * factor_s * H, factor_t, T, C); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 2, 1, 3)); + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s * W, factor_s, H * T, factor_t * C); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 2, 1, 3)); + x = ggml_reshape_4d(ctx->ggml_ctx, x, factor_s, W, H * T, factor_s * factor_t * C); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 1, 2, 0, 3)); + x = ggml_reshape_4d(ctx->ggml_ctx, x, W, H * T, factor, C); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 0, 1, 3, 2)); + return ggml_reshape_4d(ctx->ggml_ctx, x, W, H, T, C * factor); + } + + static ggml_tensor* mean_channel_groups(GGMLRunnerContext* ctx, + ggml_tensor* x, + int64_t group_size) { + GGML_ASSERT(group_size > 0); + GGML_ASSERT(x->ne[3] % group_size == 0); + if (group_size == 1) { + return x; + } + int64_t W = x->ne[0]; + int64_t H = x->ne[1]; + int64_t T = x->ne[2]; + int64_t spatial = W * H * T; + int64_t groups = x->ne[3] / group_size; + x = ggml_reshape_3d(ctx->ggml_ctx, x, spatial, group_size, groups); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 1, 0, 2, 3)); + x = ggml_sum_rows(ctx->ggml_ctx, x); + x = ggml_ext_cont(ctx->ggml_ctx, ggml_ext_torch_permute(ctx->ggml_ctx, x, 1, 0, 2, 3)); + x = ggml_reshape_4d(ctx->ggml_ctx, x, W, H, T, groups); + return ggml_scale(ctx->ggml_ctx, x, 1.f / static_cast(group_size)); + } + + class Downsample : public GGMLBlock { + protected: + int64_t in_channels; + int64_t out_channels; + int64_t factor_t; + int64_t factor_s = 2; + int64_t factor; + int64_t group_size; + + public: + Downsample(int64_t in_channels, int64_t out_channels, bool add_temporal_downsample) + : in_channels(in_channels), + out_channels(out_channels), + factor_t(add_temporal_downsample ? 2 : 1), + factor(factor_t * factor_s * factor_s), + group_size(factor * in_channels / out_channels) { + GGML_ASSERT(out_channels % factor == 0); + GGML_ASSERT(factor * in_channels % out_channels == 0); + blocks["conv"] = std::make_shared(in_channels, + out_channels / factor, + std::tuple{3, 3, 3}); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) { + auto conv = std::dynamic_pointer_cast(blocks["conv"]); + auto h = conv->forward(ctx, x); + + ggml_tensor* h_first = nullptr; + ggml_tensor* x_first = nullptr; + if (factor_t == 2) { + h_first = ggml_ext_slice(ctx->ggml_ctx, h, 2, 0, 1); + h_first = pixel_unshuffle_3d(ctx, h_first, 1, factor_s); + h_first = ggml_concat(ctx->ggml_ctx, h_first, h_first, 3); + + x_first = ggml_ext_slice(ctx->ggml_ctx, x, 2, 0, 1); + x_first = pixel_unshuffle_3d(ctx, x_first, 1, factor_s); + x_first = mean_channel_groups(ctx, x_first, group_size / 2); + + if (x->ne[2] == 1) { + return ggml_add(ctx->ggml_ctx, h_first, x_first); + } + h = ggml_ext_slice(ctx->ggml_ctx, h, 2, 1, h->ne[2]); + x = ggml_ext_slice(ctx->ggml_ctx, x, 2, 1, x->ne[2]); + } + + GGML_ASSERT(h->ne[2] % factor_t == 0); + h = pixel_unshuffle_3d(ctx, h, factor_t, factor_s); + x = pixel_unshuffle_3d(ctx, x, factor_t, factor_s); + x = mean_channel_groups(ctx, x, group_size); + + if (factor_t == 2) { + h = ggml_concat(ctx->ggml_ctx, h_first, h, 2); + x = ggml_concat(ctx->ggml_ctx, x_first, x, 2); + } + return ggml_add(ctx->ggml_ctx, h, x); + } + }; + + class MidBlock : public UnaryBlock { + protected: + int64_t in_channels; + int num_layers; + bool add_attention; + + public: + MidBlock(int64_t in_channels, + int num_layers = 1, + bool add_attention = true) + : in_channels(in_channels), + num_layers(num_layers), + add_attention(add_attention) { + blocks["block_1"] = std::make_shared(in_channels, in_channels); + for (int i = 0; i < num_layers; i++) { + if (add_attention) { + blocks["attn_" + std::to_string(i + 1)] = std::make_shared(in_channels); + } + blocks["block_" + std::to_string(i + 2)] = std::make_shared(in_channels, in_channels); + } + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) override { + // x: [B*C, T, H, W] + // return: [B*C, T, H, W] + auto block_1 = std::dynamic_pointer_cast(blocks["block_1"]); + + x = block_1->forward(ctx, x); + for (int i = 0; i < num_layers; i++) { + if (add_attention) { + auto block = std::dynamic_pointer_cast(blocks["attn_" + std::to_string(i + 1)]); + x = block->forward(ctx, x); + } + auto block = std::dynamic_pointer_cast(blocks["block_" + std::to_string(i + 2)]); + x = block->forward(ctx, x); + } + return x; + } + }; + + class UpBlock : public UnaryBlock { + protected: + int num_layers; + int64_t upsample_out_channels; + + public: + UpBlock(int64_t in_channels, + int64_t out_channels, + int num_layers = 1, + int64_t upsample_out_channels = 0, + bool add_temporal_upsample = true) + : num_layers(num_layers), + upsample_out_channels(upsample_out_channels) { + for (int i = 0; i < num_layers; i++) { + int64_t IC = i == 0 ? in_channels : out_channels; + blocks["block." + std::to_string(i)] = std::make_shared(IC, out_channels); + } + if (upsample_out_channels > 0) { + blocks["upsample"] = std::make_shared(out_channels, upsample_out_channels, add_temporal_upsample); + } + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) override { + return forward(ctx, x, nullptr); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, + ggml_tensor* x, + TemporalConvCarry* carry) { + // x: [B*IC, T, H, W] + // return: [B*OC, T, H, W] or [B*OC, T, H*2, W*2] or [B*OC, T*2, H*2, W*2] + for (int i = 0; i < num_layers; i++) { + auto block = std::dynamic_pointer_cast(blocks["block." + std::to_string(i)]); + x = block->forward(ctx, x, carry); + } + if (upsample_out_channels > 0) { + auto upsample = std::dynamic_pointer_cast(blocks["upsample"]); + x = upsample->forward(ctx, x, carry); + } + return x; + } + }; + + class DownBlock : public UnaryBlock { + protected: + int num_layers; + int64_t downsample_out_channels; + + public: + DownBlock(int64_t in_channels, + int64_t out_channels, + int num_layers, + int64_t downsample_out_channels = 0, + bool add_temporal_downsample = false) + : num_layers(num_layers), + downsample_out_channels(downsample_out_channels) { + for (int i = 0; i < num_layers; i++) { + int64_t IC = i == 0 ? in_channels : out_channels; + blocks["block." + std::to_string(i)] = std::make_shared(IC, out_channels); + } + if (downsample_out_channels > 0) { + blocks["downsample"] = std::make_shared(out_channels, + downsample_out_channels, + add_temporal_downsample); + } + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) override { + for (int i = 0; i < num_layers; i++) { + auto block = std::dynamic_pointer_cast(blocks["block." + std::to_string(i)]); + x = block->forward(ctx, x); + } + if (downsample_out_channels > 0) { + auto downsample = std::dynamic_pointer_cast(blocks["downsample"]); + x = downsample->forward(ctx, x); + } + return x; + } + }; + + class Encoder : public GGMLBlock { + protected: + int64_t z_channels; + std::vector block_out_channels; + + public: + Encoder(int64_t in_channels = 3, + int64_t z_channels = 32, + std::vector block_out_channels = {128, 256, 512, 1024, 1024}, + int layers_per_block = 2, + int spatial_compression_ratio = 16, + int temporal_compression_ratio = 4, + bool downsample_match_channel = true) + : z_channels(z_channels), + block_out_channels(std::move(block_out_channels)) { + blocks["conv_in"] = std::make_shared(in_channels, + this->block_out_channels[0], + std::tuple{3, 3, 3}); + + int spatial_depth = static_cast(std::log2(static_cast(spatial_compression_ratio))); + int temporal_start = static_cast(std::log2(static_cast(spatial_compression_ratio / temporal_compression_ratio))); + int64_t channels = this->block_out_channels[0]; + for (int i = 0; i < static_cast(this->block_out_channels.size()); i++) { + int64_t out_channels = this->block_out_channels[i]; + if (i < spatial_depth) { + int64_t next_channels = downsample_match_channel ? this->block_out_channels[i + 1] : out_channels; + blocks["down." + std::to_string(i)] = std::make_shared(channels, + out_channels, + layers_per_block, + next_channels, + i >= temporal_start); + channels = next_channels; + } else { + blocks["down." + std::to_string(i)] = std::make_shared(channels, + out_channels, + layers_per_block); + channels = out_channels; + } + } + + blocks["mid"] = std::make_shared(channels); + blocks["norm_out"] = std::make_shared(channels); + blocks["conv_out"] = std::make_shared(channels, + z_channels * 2, + std::tuple{3, 3, 3}); + } + + ggml_tensor* forward(GGMLRunnerContext* ctx, ggml_tensor* x) { + auto conv_in = std::dynamic_pointer_cast(blocks["conv_in"]); + auto mid = std::dynamic_pointer_cast(blocks["mid"]); + auto norm_out = std::dynamic_pointer_cast(blocks["norm_out"]); + auto conv_out = std::dynamic_pointer_cast(blocks["conv_out"]); + + x = conv_in->forward(ctx, x); + for (int i = 0; i < static_cast(block_out_channels.size()); i++) { + auto down = std::dynamic_pointer_cast(blocks["down." + std::to_string(i)]); + x = down->forward(ctx, x); + } + x = mid->forward(ctx, x); + + auto shortcut = mean_channel_groups(ctx, x, x->ne[3] / (z_channels * 2)); + x = norm_out->forward(ctx, x); + x = ggml_silu_inplace(ctx->ggml_ctx, x); + x = conv_out->forward(ctx, x); + x = ggml_add(ctx->ggml_ctx, x, shortcut); + return ggml_ext_slice(ctx->ggml_ctx, x, 3, 0, z_channels); + } + }; + + class Decoder : public GGMLBlock { + protected: + int64_t repeats; + std::vector block_out_channels; + + public: + Decoder(int64_t in_channels = 32, + int64_t out_channels = 3, + std::vector block_out_channels = {1024, 1024, 512, 256, 128}, + int layers_per_block = 2, + int spatial_compression_ratio = 16, + int temporal_compression_ratio = 4, + bool upsample_match_channel = true) + : block_out_channels(std::move(block_out_channels)) { + repeats = this->block_out_channels[0] / in_channels; + blocks["conv_in"] = std::make_shared(in_channels, this->block_out_channels[0], std::tuple{3, 3, 3}); + blocks["mid"] = std::make_shared(this->block_out_channels[0]); + + int64_t IC = this->block_out_channels[0]; + for (int i = 0; i < this->block_out_channels.size(); i++) { + int64_t OC = this->block_out_channels[i]; + bool add_spatial_upsample = i < std::log2(static_cast(spatial_compression_ratio)); + bool add_temporal_upsample = i < std::log2(static_cast(temporal_compression_ratio)); + + if (add_spatial_upsample || add_temporal_upsample) { + int64_t upsample_out_channels = upsample_match_channel ? this->block_out_channels[i + 1] : OC; + blocks["up." + std::to_string(i)] = std::make_shared(IC, OC, layers_per_block + 1, upsample_out_channels, add_temporal_upsample); + IC = upsample_out_channels; + } else { + blocks["up." + std::to_string(i)] = std::make_shared(IC, OC, layers_per_block + 1, 0, false); + } + } + + blocks["norm_out"] = std::make_shared(this->block_out_channels.back()); + blocks["conv_out"] = std::make_shared(this->block_out_channels.back(), out_channels, std::tuple{3, 3, 3}); + } + + struct ggml_tensor* forward(GGMLRunnerContext* ctx, struct ggml_tensor* z) { + auto conv_in = std::dynamic_pointer_cast(blocks["conv_in"]); + auto mid_block = std::dynamic_pointer_cast(blocks["mid"]); + auto norm_out = std::dynamic_pointer_cast(blocks["norm_out"]); + auto conv_out = std::dynamic_pointer_cast(blocks["conv_out"]); + + auto h = conv_in->forward(ctx, z); + + auto shortcut = repeat_interleave_channels(ctx, z, repeats, z->ne[0], z->ne[1], z->ne[2]); + h = ggml_add(ctx->ggml_ctx, h, shortcut); + + h = mid_block->forward(ctx, h); + + ggml_tensor* output = nullptr; + std::vector carry_input; + const int64_t frames = h->ne[2]; + for (int64_t start = 0; start < frames; start += HUNYUAN_VIDEO_VAE_TEMPORAL_CHUNK_SIZE) { + const int64_t end = std::min(start + HUNYUAN_VIDEO_VAE_TEMPORAL_CHUNK_SIZE, frames); + auto chunk = ggml_ext_slice(ctx->ggml_ctx, h, 2, start, end); + + std::vector carry_output; + TemporalConvCarry carry{ + start == 0 ? nullptr : &carry_input, + end == frames ? nullptr : &carry_output, + }; + + for (int i = 0; i < block_out_channels.size(); i++) { + auto up_block = std::dynamic_pointer_cast(blocks["up." + std::to_string(i)]); + chunk = up_block->forward(ctx, chunk, &carry); + } + + chunk = norm_out->forward(ctx, chunk); + chunk = ggml_silu_inplace(ctx->ggml_ctx, chunk); // nonlinearity/swish + chunk = conv_out->forward(ctx, chunk, &carry); + carry.finish(); + + output = output == nullptr ? chunk : ggml_concat(ctx->ggml_ctx, output, chunk, 2); + carry_input = std::move(carry_output); + } + return output; + } + }; + + class HunyuanVideoVAERunner : public VAE { + protected: + bool decode_only; + Encoder encoder; + Decoder decoder; + + public: + HunyuanVideoVAERunner(ggml_backend_t backend, + const String2TensorStorage& tensor_storage_map, + const std::string& prefix, + bool decode_only, + SDVersion version, + std::shared_ptr weight_manager = nullptr) + : VAE(version, backend, prefix, weight_manager), + decode_only(decode_only || + tensor_storage_map.find(prefix + ".encoder.conv_in.conv.weight") == tensor_storage_map.end()) { + if (!this->decode_only) { + encoder.init(params_ctx, tensor_storage_map, prefix + ".encoder"); + } + decoder.init(params_ctx, tensor_storage_map, prefix + ".decoder"); + } + + std::string get_desc() override { + return "hunyuan_video_vae"; + } + + void get_param_tensors(std::map& tensors) override { + if (!decode_only) { + encoder.get_param_tensors(tensors, weight_prefix + ".encoder"); + } + decoder.get_param_tensors(tensors, weight_prefix + ".decoder"); + } + + int get_encoder_output_channels(int input_channels) override { + SD_UNUSED(input_channels); + return 32; + } + + sd::Tensor vae_output_to_latents(const sd::Tensor& vae_output, + std::shared_ptr rng) override { + SD_UNUSED(rng); + return vae_output; + } + + sd::Tensor diffusion_to_vae_latents(const sd::Tensor& latents) override { + return latents / 1.03682f; + } + + sd::Tensor vae_to_diffusion_latents(const sd::Tensor& latents) override { + return latents * 1.03682f; + } + + ggml_cgraph* build_graph(const sd::Tensor& input_tensor, bool decode_graph) { + size_t graph_size = HUNYUAN_VIDEO_VAE_GRAPH_SIZE; + if (decode_graph) { + graph_size = std::max(graph_size, + HUNYUAN_VIDEO_VAE_GRAPH_SIZE_PER_LATENT_FRAME * + static_cast(input_tensor.shape()[2])); + } + ggml_cgraph* gf = new_graph_custom(graph_size); + ggml_tensor* input = make_input(input_tensor); + auto runner_ctx = get_context(); + ggml_tensor* output = decode_graph ? decoder.forward(&runner_ctx, input) + : encoder.forward(&runner_ctx, input); + ggml_build_forward_expand(gf, output); + return gf; + } + + sd::Tensor _compute(const int n_threads, + const sd::Tensor& input, + bool decode_graph) override { + if (!decode_graph && decode_only) { + LOG_ERROR("Hunyuan Video VAE encoder weights are not available"); + return {}; + } + + sd::Tensor expanded; + if (input.dim() == 4) { + expanded = input.unsqueeze(2); + } + const auto& graph_input = expanded.empty() ? input : expanded; + auto get_graph = [&]() -> ggml_cgraph* { + return build_graph(graph_input, decode_graph); + }; + auto output = restore_trailing_singleton_dims(GGMLRunner::compute(get_graph, + n_threads, + true, + true, + true), + graph_input.dim()); + if (!output.empty() && input.dim() == 4) { + output.squeeze_(2); + } + return output; + } + }; + +} // namespace Hunyuan + +#endif // __SD_MODEL_VAE_HUNYUAN_VAE_HPP__ diff --git a/src/model/vae/tae.hpp b/src/model/vae/tae.hpp index 558c0544c..710729fd7 100644 --- a/src/model/vae/tae.hpp +++ b/src/model/vae/tae.hpp @@ -528,6 +528,9 @@ class TAEHV : public GGMLBlock { if (version == VERSION_WAN2_2_TI2V) { z_channels = 48; patch = 2; + } else if (sd_version_is_hunyuan_video(version)) { + z_channels = 32; + patch = 2; } else if (sd_version_is_ltxav(version)) { z_channels = 128; patch = 4; @@ -542,12 +545,12 @@ class TAEHV : public GGMLBlock { ggml_tensor* decode(GGMLRunnerContext* ctx, ggml_tensor* z) { auto decoder = std::dynamic_pointer_cast(blocks["decoder"]); - if (sd_version_is_wan(version) || sd_version_is_ltxav(version)) { + if (sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) { // (W, H, C, T) -> (W, H, T, C) z = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, z, 0, 1, 3, 2)); } auto result = decoder->forward(ctx, z); - if (sd_version_is_wan(version) || sd_version_is_ltxav(version)) { + if (sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) { // (W, H, T, C) -> (W, H, C, T) result = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, result, 0, 1, 3, 2)); } @@ -556,7 +559,7 @@ class TAEHV : public GGMLBlock { ggml_tensor* encode(GGMLRunnerContext* ctx, ggml_tensor* x) { auto encoder = std::dynamic_pointer_cast(blocks["encoder"]); - if (sd_version_is_wan(version) || sd_version_is_ltxav(version)) { + if (sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) { // (W, H, T, C) -> (W, H, C, T) x = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, x, 0, 1, 3, 2)); } @@ -569,7 +572,7 @@ class TAEHV : public GGMLBlock { } } x = encoder->forward(ctx, x); - if (sd_version_is_wan(version) || sd_version_is_ltxav(version)) { + if (sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) { // (W, H, C, T) -> (W, H, T, C) x = ggml_cont(ctx->ggml_ctx, ggml_permute(ctx->ggml_ctx, x, 0, 1, 3, 2)); } diff --git a/src/model/vae/vae.hpp b/src/model/vae/vae.hpp index b97aecee0..a462c8728 100644 --- a/src/model/vae/vae.hpp +++ b/src/model/vae/vae.hpp @@ -74,7 +74,7 @@ struct VAE : public GGMLRunner { int scale_factor = 8; if (version == VERSION_LTXAV) { scale_factor = 32; - } else if (version == VERSION_WAN2_2_TI2V) { + } else if (version == VERSION_WAN2_2_TI2V || sd_version_is_hunyuan_video(version)) { scale_factor = 16; } else if (sd_version_uses_flux2_vae(version)) { scale_factor = 16; @@ -136,7 +136,7 @@ struct VAE : public GGMLRunner { // Image VAE encode is more sensitive to tile boundary context than decode. // Keep the smaller legacy factor for video VAEs, but default image encode // tiles to 64 latent pixels so a 512px SD image is encoded as one tile. - const float encode_tile_factor = (sd_version_is_wan(version) || sd_version_is_ltxav(version)) ? 1.30539f : 2.0f; + const float encode_tile_factor = (sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) ? 1.30539f : 2.0f; get_tile_sizes(tile_size_x, tile_size_y, tile_overlap, tiling_params, W, H, encode_tile_factor); LOG_DEBUG("VAE Tile size: %dx%d", tile_size_x, tile_size_y); output = tiled_compute(input, diff --git a/src/model_loader.cpp b/src/model_loader.cpp index 853ed1440..2f9e68cac 100644 --- a/src/model_loader.cpp +++ b/src/model_loader.cpp @@ -503,6 +503,9 @@ SDVersion ModelLoader::get_sd_version() { } return VERSION_QWEN_IMAGE; } + if (tensor_storage.name.find("model.diffusion_model.txt_in.individual_token_refiner.blocks.0.adaLN_modulation.1.weight") != std::string::npos) { + return VERSION_HUNYUAN_VIDEO; + } if (tensor_storage.name.find("llm_adapter.blocks.0.cross_attn.q_proj.weight") != std::string::npos) { return VERSION_ANIMA; } diff --git a/src/name_conversion.cpp b/src/name_conversion.cpp index 3aa7880e2..904e12e86 100644 --- a/src/name_conversion.cpp +++ b/src/name_conversion.cpp @@ -664,6 +664,72 @@ std::string convert_diffusers_dit_to_original_flux(std::string name) { return name; } +std::string convert_hunyuan_video_to_original_flux(std::string name) { + int num_layers = 54; + int num_single_layers = 0; + static std::unordered_map hy_name_map; + + if (hy_name_map.empty()) { + // --- double transformer blocks --- + for (int i = 0; i < num_layers; ++i) { + std::string block_prefix = "double_blocks." + std::to_string(i) + "."; + std::string dst_prefix = "double_blocks." + std::to_string(i) + "."; + + hy_name_map[block_prefix + "img_mod.linear"] = dst_prefix + "img_mod.lin"; + hy_name_map[block_prefix + "txt_mod.linear"] = dst_prefix + "txt_mod.lin"; + + // attn + hy_name_map[block_prefix + "img_attn_qkv"] = dst_prefix + "img_attn.qkv"; + hy_name_map[block_prefix + "txt_attn_qkv"] = dst_prefix + "txt_attn.qkv"; + + // norm + hy_name_map[block_prefix + "img_attn_q_norm.weight"] = dst_prefix + "img_attn.norm.query_norm.scale"; + hy_name_map[block_prefix + "img_attn_k_norm.weight"] = dst_prefix + "img_attn.norm.key_norm.scale"; + hy_name_map[block_prefix + "txt_attn_q_norm.weight"] = dst_prefix + "txt_attn.norm.query_norm.scale"; + hy_name_map[block_prefix + "txt_attn_k_norm.weight"] = dst_prefix + "txt_attn.norm.key_norm.scale"; + + // ff + hy_name_map[block_prefix + "img_mlp.fc1"] = dst_prefix + "img_mlp.0"; + hy_name_map[block_prefix + "img_mlp.fc2"] = dst_prefix + "img_mlp.2"; + + hy_name_map[block_prefix + "txt_mlp.fc1"] = dst_prefix + "txt_mlp.0"; + hy_name_map[block_prefix + "txt_mlp.fc2"] = dst_prefix + "txt_mlp.2"; + + // output projections + hy_name_map[block_prefix + "img_attn_proj"] = dst_prefix + "img_attn.proj"; + hy_name_map[block_prefix + "txt_attn_proj"] = dst_prefix + "txt_attn.proj"; + } + } + + hy_name_map["time_in.mlp.0"] = "time_in.in_layer"; + hy_name_map["time_in.mlp.2"] = "time_in.out_layer"; + hy_name_map["time_r_in.mlp.0"] = "time_r_in.in_layer"; + hy_name_map["time_r_in.mlp.2"] = "time_r_in.out_layer"; + hy_name_map["vector_in.mlp.0"] = "vector_in.in_layer"; + hy_name_map["vector_in.mlp.2"] = "vector_in.out_layer"; + hy_name_map["guidance_in.mlp.0"] = "guidance_in.in_layer"; + hy_name_map["guidance_in.mlp.2"] = "guidance_in.out_layer"; + + hy_name_map["txt_in.c_embedder.linear_1"] = "txt_in.c_embedder.in_layer"; + hy_name_map["txt_in.c_embedder.linear_2"] = "txt_in.c_embedder.out_layer"; + + hy_name_map["txt_in.t_embedder.mlp.0"] = "txt_in.t_embedder.in_layer"; + hy_name_map["txt_in.t_embedder.mlp.2"] = "txt_in.t_embedder.out_layer"; + + replace_with_prefix_map(name, hy_name_map); + + static const std::vector> generic_name_map = { + {"_attn_qkv.", "_attn.qkv."}, + {"_attn_proj.", "_attn.proj."}, + {"mlp.fc1.", "mlp.0."}, + {"mlp.fc2.", "mlp.2."}, + {".modulation.linear.", ".modulation.lin."}, + }; + replace_with_name_map(name, generic_name_map); + + return name; +} + std::string convert_diffusers_dit_to_original_lumina2(std::string name) { int num_layers = 30; int num_refiner_layers = 2; @@ -807,6 +873,8 @@ std::string convert_diffusion_model_name(std::string name, std::string prefix, S name = convert_diffusers_dit_to_original_sd3(name); } else if (sd_version_is_flux(version) || sd_version_is_flux2(version) || sd_version_is_longcat(version) || sd_version_is_sefi_image(version)) { name = convert_diffusers_dit_to_original_flux(name); + } else if (sd_version_is_hunyuan_video(version)) { + name = convert_hunyuan_video_to_original_flux(name); } else if (sd_version_is_z_image(version)) { name = convert_diffusers_dit_to_original_lumina2(name); } else if (sd_version_is_anima(version)) { @@ -980,6 +1048,9 @@ std::string convert_diffusers_to_original_wan_vae(std::string name) { } std::string convert_first_stage_model_name(std::string name, std::string prefix, SDVersion version) { + if (sd_version_is_hunyuan_video(version)) { + return name; + } if (sd_version_uses_wan_vae(version)) { return convert_diffusers_to_original_wan_vae(name); } diff --git a/src/stable-diffusion.cpp b/src/stable-diffusion.cpp index 7429ab72d..0bddba2bb 100644 --- a/src/stable-diffusion.cpp +++ b/src/stable-diffusion.cpp @@ -30,6 +30,7 @@ #include "model/diffusion/ernie_image.hpp" #include "model/diffusion/flux.hpp" #include "model/diffusion/hidream_o1.hpp" +#include "model/diffusion/hunyuan.hpp" #include "model/diffusion/ideogram4.hpp" #include "model/diffusion/krea2.hpp" #include "model/diffusion/lens.hpp" @@ -46,6 +47,7 @@ #include "model/upscaler/esrgan.hpp" #include "model/upscaler/ltx_latent_upscaler.hpp" #include "model/vae/auto_encoder_kl.hpp" +#include "model/vae/hunyuan_vae.hpp" #include "model/vae/ltx_audio_vae.hpp" #include "model/vae/ltx_vae.hpp" #include "model/vae/tae.hpp" @@ -96,6 +98,7 @@ const char* model_version_to_str[] = { "LingBot Video", "Qwen Image", "Qwen Image Layered", + "Hunyuan Video", "Anima", "Flux.2", "Flux.2 klein", @@ -1064,6 +1067,18 @@ class StableDiffusionGGML { tensor_storage_map, "model.diffusion_model", model_manager); + } else if (sd_version_is_hunyuan_video(version)) { + cond_stage_model = std::make_shared(backend_for(SDBackendModule::TE), + tensor_storage_map, + version, + "", + false, + model_manager); + diffusion_model = std::make_shared(backend_for(SDBackendModule::DIFFUSION), + tensor_storage_map, + "model.diffusion_model", + version, + model_manager); } else if (sd_version_is_wan(version)) { cond_stage_model = std::make_shared(backend_for(SDBackendModule::TE), tensor_storage_map, @@ -1269,7 +1284,7 @@ class StableDiffusionGGML { } auto create_tae = [&](bool decode_only) -> std::shared_ptr { - if (sd_version_uses_wan_vae(version) || sd_version_is_ltxav(version)) { + if (sd_version_uses_wan_vae(version) || sd_version_is_hunyuan_video(version) || sd_version_is_ltxav(version)) { return std::make_shared(backend_for(SDBackendModule::VAE), tensor_storage_map, "decoder", @@ -1306,6 +1321,13 @@ class StableDiffusionGGML { false, version, model_manager); + } else if (sd_version_uses_hunyuan_video_vae(vae_version)) { + return std::make_shared(backend_for(SDBackendModule::VAE), + tensor_storage_map, + "first_stage_model", + false, + vae_version, + model_manager); } else if (sd_version_uses_wan_vae(vae_version)) { return std::make_shared(backend_for(SDBackendModule::VAE), tensor_storage_map, @@ -1617,6 +1639,7 @@ class StableDiffusionGGML { } } else if (sd_version_is_sd3(version) || sd_version_is_wan(version) || + sd_version_is_hunyuan_video(version) || sd_version_is_lingbot_video(version) || sd_version_is_qwen_image(version) || version == VERSION_HIDREAM_O1 || @@ -1629,6 +1652,8 @@ class StableDiffusionGGML { pred_type = FLOW_PRED; if (sd_version_is_wan(version)) { default_flow_shift = 5.f; + } else if (sd_version_is_hunyuan_video(version)) { + default_flow_shift = 7.f; } else if (sd_version_is_ernie_image(version)) { default_flow_shift = 4.f; } else if (sd_version_is_pid(version)) { @@ -2446,6 +2471,10 @@ class StableDiffusionGGML { sd::Tensor timesteps_tensor({static_cast(timesteps_vec.size())}, timesteps_vec); sd::Tensor guidance_tensor({1}, std::vector{guidance.distilled_guidance}); + sd::Tensor hunyuan_timestep_r_tensor; + if (sd_version_is_hunyuan_video(version) && step + 1 < sigmas.size()) { + hunyuan_timestep_r_tensor = sd::Tensor::from_vector({sigmas[step + 1]}); + } sd::Tensor noised_input = x * c_in; if (!denoise_mask.empty() && (version == VERSION_WAN2_2_TI2V || sd_version_is_ltxav(version) || sd_version_is_lingbot_video(version))) { noised_input = noised_input * denoise_mask + init_latent * (1.0f - denoise_mask); @@ -2520,6 +2549,12 @@ class StableDiffusionGGML { } else if (sd_version_is_wan(version)) { diffusion_params.extra = WanDiffusionExtra{vace_context.empty() ? nullptr : &vace_context, vace_strength}; + } else if (sd_version_is_hunyuan_video(version)) { + diffusion_params.extra = HunyuanVideoDiffusionExtra{ + &guidance_tensor, + condition.extra_c_crossattns.empty() ? nullptr : &condition.extra_c_crossattns[0], + condition.c_vector.empty() ? nullptr : &condition.c_vector, + hunyuan_timestep_r_tensor.empty() ? nullptr : &hunyuan_timestep_r_tensor}; } else if (version == VERSION_HIDREAM_O1) { diffusion_params.extra = HiDreamO1DiffusionExtra{ condition.c_input_ids.empty() ? nullptr : &condition.c_input_ids, @@ -2713,6 +2748,8 @@ class StableDiffusionGGML { latent_channel = 128; } else if (version == VERSION_WAN2_2_TI2V) { latent_channel = 48; + } else if (sd_version_is_hunyuan_video(version)) { + latent_channel = 32; } else if (version == VERSION_HIDREAM_O1) { latent_channel = 3; } else if (version == VERSION_CHROMA_RADIANCE) { @@ -2760,7 +2797,7 @@ class StableDiffusionGGML { int latent_frames = frames; if (sd_version_is_ltxav(version)) { latent_frames = ((frames - 1) / 8) + 1; - } else if (sd_version_is_wan(version) || sd_version_is_lingbot_video(version)) { + } else if (sd_version_is_wan(version) || sd_version_is_lingbot_video(version) || sd_version_is_hunyuan_video(version)) { latent_frames = ((frames - 1) / 4) + 1; } return latent_frames; @@ -2773,7 +2810,7 @@ class StableDiffusionGGML { if (sd_version_is_ltxav(version)) { return (latent_frames - 1) * 8 + 1; } - if (sd_version_is_wan(version) || sd_version_is_lingbot_video(version)) { + if (sd_version_is_wan(version) || sd_version_is_lingbot_video(version) || sd_version_is_hunyuan_video(version)) { return (latent_frames - 1) * 4 + 1; } return latent_frames; @@ -3570,7 +3607,7 @@ struct sd_ctx_t { }; static bool sd_version_supports_video_generation(SDVersion version) { - return version == VERSION_SVD || sd_version_is_wan(version) || sd_version_is_lingbot_video(version) || sd_version_is_ltxav(version); + return version == VERSION_SVD || sd_version_is_wan(version) || sd_version_is_hunyuan_video(version) || sd_version_is_lingbot_video(version) || sd_version_is_ltxav(version); } static bool sd_version_supports_image_generation(SDVersion version) { @@ -5627,6 +5664,66 @@ static std::optional prepare_video_generation_latents(sd } } + if (sd_version_is_hunyuan_video(sd_ctx->sd->version) && + (!start_image.empty() || !end_image.empty())) { + LOG_INFO("Hunyuan Video IMG2VID"); + + int64_t t1 = ggml_time_ms(); + auto concat_latent = sd_ctx->sd->generate_init_latent(request->width, + request->height, + request->frames, + true); + auto encode_condition_frame = [&](const sd::Tensor& image, + int64_t latent_frame, + const char* name) -> bool { + auto encoded = sd_ctx->sd->encode_first_stage(image); + if (encoded.empty()) { + LOG_ERROR("failed to encode Hunyuan Video %s conditioning frame", name); + return false; + } + if (encoded.dim() == 4) { + encoded.unsqueeze_(2); + } + if (encoded.dim() != 5 || + encoded.shape()[0] != concat_latent.shape()[0] || + encoded.shape()[1] != concat_latent.shape()[1] || + encoded.shape()[3] != concat_latent.shape()[3]) { + LOG_ERROR("invalid Hunyuan Video %s conditioning latent shape", name); + return false; + } + sd::ops::slice_assign(&concat_latent, + 2, + latent_frame, + latent_frame + 1, + sd::ops::slice(encoded, 2, 0, 1)); + return true; + }; + + if (!start_image.empty() && !encode_condition_frame(start_image, 0, "start")) { + return std::nullopt; + } + if (!end_image.empty() && + !encode_condition_frame(end_image, concat_latent.shape()[2] - 1, "end")) { + return std::nullopt; + } + + sd::Tensor concat_mask = sd::zeros({concat_latent.shape()[0], + concat_latent.shape()[1], + concat_latent.shape()[2], + 1, + 1}); + if (!start_image.empty()) { + sd::ops::fill_slice(&concat_mask, 2, 0, 1, 1.0f); + } + if (!end_image.empty()) { + sd::ops::fill_slice(&concat_mask, 2, concat_mask.shape()[2] - 1, concat_mask.shape()[2], 1.0f); + } + latents.concat_latent = sd::ops::concat(concat_latent, concat_mask, 3); + + int64_t t2 = ggml_time_ms(); + LOG_INFO("encode_first_stage completed, taking %" PRId64 " ms", t2 - t1); + } + if (sd_ctx->sd->diffusion_model->get_desc() == "Wan2.1-I2V-14B" || sd_ctx->sd->diffusion_model->get_desc() == "Wan2.2-I2V-14B" || sd_ctx->sd->diffusion_model->get_desc() == "Wan2.1-I2V-1.3B" || From 3685fcde6724ee7b7a1968f2361b2d81b1c9c5ad Mon Sep 17 00:00:00 2001 From: leejet Date: Sat, 18 Jul 2026 22:09:03 +0800 Subject: [PATCH 2/2] add hunyuan video 1.5 docs --- README.md | 1 + assets/huanyuan_video/hy1.5_t2v.mp4 | Bin 0 -> 183498 bytes assets/hunyuan_video/hy1.5_t2v.mp4 | Bin 0 -> 183498 bytes docs/hunyuan_video.md | 24 ++++++++++++++++++++++++ 4 files changed, 25 insertions(+) create mode 100644 assets/huanyuan_video/hy1.5_t2v.mp4 create mode 100644 assets/hunyuan_video/hy1.5_t2v.mp4 create mode 100644 docs/hunyuan_video.md diff --git a/README.md b/README.md index ab67af4e3..340ba5b2d 100644 --- a/README.md +++ b/README.md @@ -65,6 +65,7 @@ API and command-line option may change frequently.*** - Video Models - [Wan2.1/Wan2.2](./docs/wan.md) - [LTX-2.3](./docs/ltx2.md) + - [HunyuanVideo 1.5](./docs/hunyuan_video.md) - [LingBot-Video](./docs/lingbot_video.md) - [PhotoMaker](./docs/photo_maker.md) support. - Control Net support with SD 1.5 diff --git a/assets/huanyuan_video/hy1.5_t2v.mp4 b/assets/huanyuan_video/hy1.5_t2v.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..76a960fbfd24d7ca1b4a5af7b77f81b07f4a8277 GIT binary patch literal 183498 zcmX_mV_;@Iv~F#?o#L%++ve0$+qP}nwrv|zPi@B<~pamG(Iv4{O*;s#|1l(VF=sW zxmy{VI02X#7?^397?}Q(Hgj^a-$37xml5D#Y{JV7Fful^7vF)}g( ztc`iijNJf^&IUh-9bo6^{-gTS>N*(lGSV^pDE%}5YjZbaBi;WjGX7}jI_TS&8uK!; z0SwI?Y_0Wme^eO(P7cOaR_2aBh{KJ;$k6Er7}{I&GW@upZ{%TXW6aCMNW;hoFwu8( z(zSE6G`IUt;(ra;+v(bxm^d0c@zOE@oXi}4G#q)Em;hF`wwC&4KO^1$M`Q*#TA3UE zIP?Dq3;-L4|Cz+l+*;r1KS#`MoQxf;^nZkY=mu8K4*Kr8hPKvr`c6M%!=D^EIp~|) z{FwL=bkP4##>7G2+Su_YTL!vz?myVvh?nUH>l^9Y{TGITu7SC}K$sB3L*^IyIk4UKJ#4V|5MSs4Cv z(?S2goH`ggn*FFd80!B2aR1{w81foAm;kH|eiHj%SU&?^CT2PYfc<~L@G{V`{Xo0_ z4F6BB@5al<`9pAYGPdJo0hrtUROx3${1oxWmcISZ0{E|-Kz=|#DmTVqLBPJs@szE* z#Po{~W7wECcdLU4O51vrWgzcOU9e-~1!H9h5HOCd@daP!x@}l+ird0s&zb3u08HX) zmcE?R);>(Fn6gh)&SPtZunjOqD6rr7n4SzDi%FbubNF?Uy#YbZvWZk&D;G z;3WbrNGjDn;;ve`-Lt=xw2Dfk?_4ri)c+XObj_jMT!on0-}qj`yoGamVNVQ_CF>| zGTh}4mOF6Db7yVi@~Wp^{EIl%gwFF-29am>DLpW=3n=gNi`rGqEBBc2GBC_Q>N)&? zz)B|PKbM~55T!S-+B$KQX^)b`lFj=VbsY7MnuYmz)+YR=GeE&<|)4M5Q|@~Ys5gY z0GBmp<2+v0vN)rG{f4G=A)!Jd;FxG!rlQj!gObwa39D+l!f;Aa?AtiIR7YpaJUL(v z!CzAA?tO!CNnPXPnsC5d@kd^b<))P(RH@$Y%h3iAVG z9SvFYB0QYDy~wbn15J9lQS}H+R5;wa|D0hA)Y!!uWl%)dJg;xU*@=Je=2*@`cITgs zZ=~ECBOH&z){1S8Yis=|Os-0X%}E84s7|$DXq{`dQIex=EO{%~T18ta`@VgwSgCjg z6~M}V#}xXfTe-)xe@llOuTB=m0b+D|*vZKNMYkZ< zp)E?4N2*YF=63f_sRIUpg%jyuTYa=z!%h8?Z2DMlGrF^S}) z4MH;?Y*=Dw-}(1{Yvs=L$nJ&c7M&QtrO+?mSZz}yB7zTvH}R0Mv~2quwM>I5)*OOX z4-#Uk>5-5JC07y^33K`(|D`*1LI?~C;4-7{yB=XxgTWYBqZ4ev_`m48@-xzNLSc3V&^Xs`dRr_7A;nuavJ@&pn?>rw!C0Vc;UmqNO!OoyS zgG?VEakh8=cI;k*EW$;fUYj%P9>Z3t9zDOD$} zdqjr>o5qdQSCj+d#^DH2K_xz;e7NUR>gC%K6tSsa#4jNU7Gq*cxndMU3IoJs3e@=u z>&lKMTD{h!xgIXLXIw~mr}qXR1Ds$0Nmy;*kfefCmpJk+@FleDfEJP9YB#>slpdhG zDlBRRmpy=N2Ile|1ySt;^>6rJa=Y9@Bth2Hhyu%u!`M&voWrdO3}WE3Xa?RCk6Dyw zZMCz$Hr3N-+688H=IR9-i{k9!4{gSqN-4MLnDQ6=V#t^55^G`Z zHTlchXJX9yjy4nLeGS&&lPJ}PR204mge=a#IeL5S#5Zt;QHJtq3}$ol(ceHat?vCH zSFglynEI)QJ$N(*FHMswNctkQXS@h((N+V*$zOd^B&1t|uTFKZ9eq{bTQz!7Fyf<_ zg687hWzyTBe?;pv<>sIcm_GG?Co<(6H|!%~#@!Nsqge$6h8COrg_ILB2;bN6Ut0@N zA}t$LSpt9CrLjhYtoYSQB|KE*`zuQE+(8zHc6Hby=UE{BpzVxE!-Afa`#HZ) zB4uyyx?BtUG20FeY;%|O*9pja>rxF!=n%+#gVNZ2>T~kkKgqS+l~zw003Qw^L`Qq^ z)!#*=q3{X%9@^0(#9Fyam8_#drHRb3n*H!+B)Ylze7OQabP}GjKtP{ar%%|s#*IQu za3PUP=Yd%#M*EQGjq{wiLj*NJ1=M;zn$E!ZnfW=od%k*ipHdy1`_ny1=r3Xn|FXFi zrxwaJZ}Jq=!Mfg$!{lyTAiQJKLt16;s+alIf8J6k$iPu^(RD2{ZRMHfFg_B(>5y@0 zb;b5NzEn=0a%s_iZNG0CiMNW71a+pAESXcfUH=3Fm{)5`^iD8tPCtxa(7uH&yRgMp z%SB`(Fqu+N&?DJ=63T#7v%(eFOj%d~boJ*L}fVrC{#R zoRrjGmgYn^MN6jwbF#j7fm^=}-s~IGyZTSh*5}(au!kp@{RqY~?W~Tg7$WQQuX;W5 zH84l7){DirVg_?=1V|JyBv&a~mC4t)(AN-sz^Vfl>4^$nbHLz{3DhS*C85lhUpF1fY?Pdd$&(x8wS6Lw~_tMW3_Ff>!!*v z;O`ECiLOzjnUWsCcNu8kV78kN4EGEZ2bs^t>dqFXpUWV1WxRtWRW!#7)I`mSAsxgT z+xf7tdm5Dptn4Ocm&2`{aGcy__#(3RJwDCKE!44sRrz}`Aua`08RzA;P1To2b;6U| zixZ-P1aUiBsIIy}|2zga=;D?&rCw`DfdD8_vye*rjkTRK2!Yo3=?GRm9rw;*d*BJ= z5D<>v)xC^H(iSZUp@Kup3O8F4mmr7d&dyb*Xz9p|Ri|!rjaPE%GYD7UOntOcM>}wF z)b<7Ug_o$C@HlzDF~qTY4LiC`mrV$3A!y(ObYORbKo>EM))07$Xw$iAEVPbwAZ2xp z6j2=Qjoqp9S#CK5fl@06K=@_85cI@5+Kjl`B_hm7x*Mqm%NjBrJLE*kXcr6eh{0gV z=d@yGeW4bh;rotoUq)fbx5SuVGH<`HG7M_r?BN}aMdeSiLc@l3lE+^dRto`|*pU6= z)eP45TNXY{Wng~_#vVfI9Rqg?geh6V;d$lu0cs}KYXe>KyVfPfmA{Q00=i7}l#gcA z?rbz29Vvq350YBME>TI)m9E8_cD2E7=0i% zmfZ?V=Q5bkw!kkO-92q0q?uS5V*OyMob9!lw0ei-2mPP&bH=adw0vlOi=F*RV{eB%J8W{K0~a@7z!6esQtk-;5U z%6y?DJ?pNCje17r_6~=d0KPIiO_qnvD<+&OobsC_-h>8YcB2FvnRDr^Yr~I+ad1bGt42|>u&-%otq||Jvv$2qkKv?t;o}@2 z9!bBqG$W-5ZLpj}d)d4|k`f}2{Sm&8d1yLe*O|Rrr^xJzweV7JVqG8mSrP@JM`Asn zQPD@5LVmUIhMvuo@F=U~jW@@?T#{~L%A?{l7t3Q+f@Ayu_gM`UeY4x38w({r(biw<)JGrf$x@5%zjmZzFn@ok-Ikbpp2Woit#wFVlRq6) z6!Rrnv*SzJ>PytUBAYbtrmhx>BnlKSXE&#>Ne%*fjKb8sOu}Lzl(e!0D)yL4B+P;x zon;h6|2>){P+nJeshDd2d=`uDk1)wvdwI-k$$gBkFWt-oK*}arh%i%xYGZZ}f|$yH_D@}9;IZT?wa}YuAqXL#?sSI{wFncMIZ!qV)`kCE->jQ(rVv znKeDin>n*wq#4scSWS$pNRKpdb~IcZht-gdWMe4EDN)pO$h`W$P#1CuN?^Rmzqtc&*D!HXVKo#56)mKM z_$w8CKkyVZbRn3MpkYeEEC1kQXglF{s@f9;&j)g;CRO0_qdsbNUtn36oIg9wFD zU^7Xq(1TQ#X(m`Vy7d5K!jag5zsTC?sBVO3f_F_DZG)b_W@`b_DdhF^uEV%;BxdD5 zKC`wyWuRGoV)&_inK!8-+Em9uQOnawy2YC<`aUPP5&KL_NE}b*4?*dYf9|OVE_qFd z8=Ytpb*mB847VnZ2#t|tcnDS}`dHCG2USMpV0mJ#^~hOAgg?~96{TZ}(gJ5)h_(w{ zEZ#&n^ydB$ij4*q0nTtt|8_pFI*O$;c$uu#B<^Dy`CIhk}H~VNON8>CCduD~B zfg^sxledFhBC>|)jxKO~do)C)RxyGlnH+#TBLR+E6XcxoPEB0E$7(dy{nZrN(VG{{ zy2n(J1;g|Eq>+i_sv(UF7`WA)E##(@)xL(5x#7{5Kwi5Pa`FtzHW97wbPkxw$7HDJ z_q57ji?04Pd}J6Sq$|_)L}c(7NDT{>7fja{lg43*aLr+?M?SyE)ULl@A0pf3m>DM* zuEZWd#%WIC`)}5r}eb`PD5vRC*Ko{KohxBdW=1JME1R>I2&Sw%6u1Bv3 zqDN7%y1M~<6w#byl}M?6)uw1n<0X3nItUsiI4?=4<3&NFcj2*zpp3khM){1TC;Jz3 zB;M(D6Ub6GdCWoNLhv=J8~e{h#TJVv*M6szx4SLJxm@8nk%z&%(3nXE+6`#2BK^e9 z`zqzBmUMB3LU5OfC^%o3ImB^*klJ;8|BOu^pVfehfT_vB8h0`MEwWjp1x(`RHA?Wv z!34rzygWrke_io?E&JycG5J<@bQ}R!4{N$bNUuDohPqDif(-L(z_%pP5$glv;4Vwu z<9X``G{lv5^tGWb89N~?v^XBc!RW@Xc_93Ae0n#m+8ykZD}MQ`^z~ z*aL{2(AibptcrWO8E8r9;sn{E{=G6@`cO!E37@M{uI&q0E_}cZR(+sdjKjbtJaTxY zljqD0XW5+^@3eI9(*n%`5buoNbi}$_;I<6c4qTeY;(ecGvSMU`9lcX$ ze^t)Vw$V)(2W>E!Ja(Au>OUpR7ocF0rl8v={)*zvny&BfR|PbOiNkW@^LWj%{}L|@ z%XV+vqHU1KuabKH&2`;1#6;)w(&B5|<$p zUQ=y5M9o?m4~8_U+ZYeF;4YOj?iOe8VDL~**Z;A0%MfL}IGujUNM5}3_YGrkQsqc%Tz?h|f=f-duqat2S$CVN=pk6a{^wq;5eY?v#0O8(pT*3g-8 zRQoM7m`!ZXknX!WsAugT4^a<>S3PdUWD26Gu_nKRDE36mX9!MU(81;H#AKYw1YO`n zy91gzo_&N{d37B3OW15Gd+@ZA*7UGjs*wHeer`z#r`^}iRum*HbsohsH4iWaeuPrm zObC*XG&N1;3u1L&eZW-RWhU_}0%~sJzmC1J|tH&m<@iU<)l#=)R&0a{X)U$Zc%deMJo! zf>5ZEH$6J0rY5H6$(9uCwz-73$S((eE`_H`b$`Ml><6Jva`616(QF;F&j?CW_$)(q z*z{BzP9^RHF$I1$axB~2lJhH@wYkyyW<)dVm>HnE8_f+n`0-usLT~e-N0oDPzq-_# zD?flJK$Cnr*w>u!Wf}$fb`#zrkzwSabVoZFnE6OOBARLeH#I0pGd`cdU-skZ=D)6? zPCT#NC=j5~f}68Pe6@{On%??|E3-Y{sU}og{Azy-uYa`Df=2Zr&=U)>S76IXv)RhS zE@XC}E&klM!$=qrP!_&s;V3z8{Uw#zt)lplf|{t;V@SaF;t zC-iIyt!E1bF+%8j@TXOYu5VkC6|wVDxc}GBXc|a0*Ey6{kzk(l_fv;>13SUs*8#0o z0<1;a7v1wsWa%zuxOU+0-VtxdM6Z(dkNuTa7!6n#eNXMyaES@*YKQ?*x+af6`0q>J z#eQ@3+E-$eMw4FPmzIRfh;%`FIVjzvh3<6hA@@P5VVb~Y09#I0NqRN+_9*KX8Vl%3 zv}=>X<@BR8=*>xh2G9MUyrNiSZ^CI_@=I601m+C;%{yq)!#d%hcnX6j&g`TQ2Cu_8 zdCSNsSd@%I`Qii+)Tv`~*KZtWCD_*kucwJ|LiqwWBf8dSE)kw(6Uo>L7gbQmS2MQ_ z=+>{59qizPoSjSi4h-5;u5}HoMo}FXZ6lJaY@PLCC0(Yne4gv%p&gr{%?C`y~ zjm7dRt@iAxZP?EVqe*LMu%_8iswe;EZOX)TP-|Jf*N7B<#-I~7;m-Op>Y#%s{jd+S z>g2989 zDGC4Qun+cQ?HM{#6q1do$S-UomHtM3sP~cn>;xF zzec?m#1z>cjjMyQ5GWaoOQbfX+0&ZuS6`5_dR=CbG-oTNJZN-(U@K0zUTYp6DE zvij4`(J+d?pSGR~J2^yu51OC^L&HX(Hm)j+G{e&X725d*zfRNpUw@}a6LOKZOmgmH zk>@s@duRL00qnNZ`x7+c?q2E?)4)V9l!8I5@3VE!F|eu!!}ejL8`y}YIv3*3LeX-W zTivfRRMn%CUp+@ey7xz2K5P?D@S*Ocd@Y%WjHCmfoPJ+Txr6iXTOTP5@aI4akU)@M zYo4v0RG-O#n59XzfI0dy$z^=Yf!vm8h4 z>U6{C`E`q-Jt+T?Y|bT71%Zo%jiTPfJ6P`QtOmrg7$H1S)XM8Hl<88wzR;6TKIn~k zv?jyYi@GsZ`QSUwfg zUyc?R&c_f*e7v_|0Y3P|`wU^t&*ZOQPF4fgN%g(~REM!()95)lJz_^=r2-$**CQG% z5#TA8{&P9Affrihl@Z8ze&7x?QgrZUPiic_hX_M3qPLTVJhM~|qhL^T*`a<#+9rN5SE-mJ7c4$p!}*;j`PznxQJ zH$QwVtTT^3^TvCe;3dPDKg6*2Lm(5Y~p9z+X?64g4$|4!P1S9vq7$xCFV#8|;YjhIo%Y>h*8( z#OoDICX)8Xb(YrC%{qJZcV%o%jJf>(z5{Ri%iS;KC_05Y)6x)COo5(M2{&|nj_stK zNDiwCld6Kjc%NAQ{2O4nU_Jo4cKYpsXVF)vX{P9%5^NMMrrJw6Q~cSHzYFOJOBgWY z3Wi0@Hfm3p-*I@kmncTXlylJz; zm?s@`sV}w!Fx2;a45TVi(4Nj!Z0xk7dtar$W#jXu>01gUNBx|`4o&P1kUE-hY*nMB z_6L1R;Xf-B_U)CDH;ct{=36}<{)&7s<7Ldya%h5G?QAuu~xZ7k< zCIrH=>Pz0=^jhdJ?Y=E(j~=CVlCwr)vmRNiMIb0+f9$MHJB#>O!NR?pogS<@Ag|+f zdmQFt&|>)LlrEAaXHZ$a%!nM<)4RHYC#f|94{i5FK z2m*U9S42bUuTYJcU}oDVzq`sg*SJWD*|1?A0Fpr_aG47?CN0wfs$OFIhaR_q{Z4#A zml024Ndzkyp)eik+G_Rn#4covuS$TrSQbWdzyAbw1O(TxxG>lUW6pydPu3iFI89ML zJxEkU1!FQx;D5ZdJm2enlwZ!~uv>=GfB=etPu2+@5Ro;O*l4Dy8+*!kg->!h3*jRM z)(AAW>UlCLzR$8Iq1c@dD#%A1)aeTkXVN7B;ka)iupb)sj7M!C*JPkK$`{Lomg@hGEb#SRqc27lBA9 z&pOW5Y=%Ywj6iC*;OL<)1F42Q65F{@r}yO#<>c=o0n$U%XoVsx!l~l)!Tnp8#^CF# zbo;C5MAU6dYDIMbG;R#hZ%=Bf_NAJ@&?5g>Z^3j4VxP(9!|9Soyh}Ws61ZqPJwn7^ zv8?k*fe583IEAsd+g|C>4+9J);wqU|mUg=$k)c4xK*K8?{=F&RUF2L>j;F`SN~G~C zJSO)MuEtD$=OFq(l$o8T*0UI9T!@$>7>XVo{{sT%WOAkQmjek5b#AqaM42@|mat>e2ZlKM($)N^2)32n(CDq3Ei1)J>2 zRz2#Bvm?_7KXdi_Ry6?^j|z>L-f((B(21@ktVM*-?qpcnMv)HCKWn{kjNI*0rX_w5 z+g_=X#wV25$TFXeIgDEyZlKgceVJY*7oGkHCY3r>r+p=dLk>@bV!tv+h~{dx-|{M{ zw*s3sRqmoF-e~aIoAqssF3_rd{h$^)kp9z4ka%69mDM zMG@V7EAY-&%c*4o24El2W6Fp>iJBogVS(PALNPVwpm%N}?b19-;s~)|#L9z0w<36D z&+pu)<PknCz z6)b&3Ganln0%Gq*>mO~7AK7?`-(swX@g=Zce26fS?%xY`XczezAeDHt{=1q|J{#8~ zfbHWb5wNb_pZl`!WU43n@ZHgq^Nwcv4_gO~04fN_Y>m5yVDusRlf&R^~AVnUIP zvnK;nyAy*Tt^wIFB~nf-JceamC#|Zn;0mJHG-qe$9U(OKYOT2%zGFB}1Hn+3cu_qw zwfil+8AoL(PsFQUR5Grtb0Syi)AC zJYX^8UgX-MhnGTcuZGR--QWMXlsU>?SA!k}V9>a&MY%|41#DD%idv-7pq^Q{SacVa zIqg@(pN4Z>SS&S5+XT5p(C~&p^P`KeKj<1a#sW5SoAzx|zV*Ja8yJL&!pWQnd#rtW z)JCGH-9*dL&_Y7eHH2>%&KDgV9SyMrnMhkc5aQ94^FrjSY8}w$typi=p$D<`v}o0` z*>*0Nc5GM3af)i|g|Z;3)xKNe6+zKy=kL$o-ET}`I^oiO*I?RpN?4?O%a7nKdba%` z0}VoDc<*TO;&q)|_!pK6gV9IKB8(hO-TD2>VrTWVMQ6kYS5;t9#r(l&z#+gkM&WFx z_e(fM#2?Q6=uJb}Qj(CSFlU1>I~JZQhO{=Er5KoxWb1L92X*!$;@hNewwvm zNg;o|CE0q#;Ghj?GLy+6Qt$aG^ATasD#)VCa1p%IAXDonQu-j8PD5hnIc6qLW*v)k z_$2zn!$kksWTosYT9K%_0luPf8=N2auzi5NH<=h-fT)!FCx_KOk)}&;W2c0qdbjV~ zy-bWno;*G*lMozWo$vD86XJxIbuyOb$Pjm*C3?aK)GA_LJPt;BG+cJ2)DL?)4D(8! zMT$pPpy&@9nZ!Mh;|mi%!n(H4?SoQJM80AF6`1)qYgKjW-3&(ENDf0Z*H9%A@kyqOSsWZ~bK3EM!y4(qf8p7mjU4-VcX!U%B+aiH&W`xf%A+p!L zy2!5JfhrAZXQ4r6YJtB_Kt=t+0 z5{}i!t`ukBbH*KRzyMaaIB!(A6p)~%wDBqk=t4t({$Gx$=6$gxxWW*^blQ#M#IxUE zbdlRx9o?-f}B;wD5=FPZ=(%UF5g(;G@* zzcA)m;UiQ$^@#wCmADPjPpxj3GxvF$ZC&ks$I>?VbX13OpQA#CFPkUZI*{AQ5XGYc zJ1yAz2HZN!zmDu!*|NW~HU1W}hwwcviUIm6eDe;?XhN>?BczQ7vT{oV zMf~Pidfor^`x?&l$H-~e614vup7EK-r}ZX_?@!<8A3??cLW;Mkmry-7lA*4c*`qkL zYuUEnotn>Q1lJc?=YI50Z}7`A#RyT8w^R4uG81)PUdCW}Q-0A$a^HG`L784YrsMlr zuiKE%k!(1a2Sm1q`qkp#YZaIufQC1OcLo~zix^Mpq%hCEVf$V5wk>}cyXs$VwXM$-dZ*dQ zsH09O1q$As$GJ(FsSsaCY_#As;u@b?L&aeVtL_@85UVVGG);wWB?W4kN~asfq~J~n z0AE21!pRy!s<+x0HW)st}F85V@{HMek3Z1_#tlzR^dv8Fn z!Ad@kN_&CP_T)roiO;YP`W^}L@y0n=bh1%=DvS$>Ey+i%2 zVUY^7=l5_Wu%c+7EJvjLNw#15W@~n%*VdF>CFs4B7pe@<=g2#F;%y73Z{(pDW|N8a zc|End2*msuWKIT4Zr0G4eY2IuKvYU|b!d|duT==o!{QKQn4`R$?0mW?#-UU}pKmEo zT`zFtBS$TePjgouy{s?{C21dos*y^);@pPvXsOXZH!VaX583n~4!Sc*q2s8w-p-S5n?X!LbXmOhCp=@te& zhZvCyJhWy)7p_b0+|gnu-4weF35sZ5BHX9=64r{%yLEw77FXdIgR`5Dwt`f%yp7kK zzr0YO-1V+g?+}+IgXR;xo{J<+>noOedw#LTDz?Z}(|VG|9xHqoG%h@V!KNai=r-$R zV9;I8hiwXX&Lpj@J}ZMs15-R}b%-^+SkBRTBYvJ&pFV)uQW@EvW+xyNg^mJK`1(H~ zMU_`dMn1A!7T}zt1OxYZ)!{|bPO4~&S7YJ=@sW}8SUF~Wq!TW+?N0G5w^;)M$K1rK zRDI_n8W3v}6!&%Id1~8|_@MNoK9(W6H)T+n*QB1m*vVHgg*Q5C)!V7{iYh6^T7@l( zAqV-nEJ*qu>UmhA6IT@-*m%+i%I}#QN7BRm6n2E+^OzpSS4<6Re0B?eQ}MYoQ0-qe zqi%TgQsTwI=8$dkP8)crSXu?fyR2m5D>oK{W;>EK6XnV(5mdSbEI-V4tDp!2_!J9^ zFyAW=e>*Sn9Ag`#A>#%P|2E;hf?5M*AKn{K)wFge@x(2f$qF%adPVV`R-&pscCei| z^ocyftWkT0O3Scf=rH?Aq!kA%50zQN#B(71#tm6uW8ua@**{}SL`c1-DbDm2uJs!t zHj4~E0-h?FTmc#mgVNEs#j8o(fv}=Z{jAI1#{SboS8mW3Z~GUkgol1UKNz|Ku{LM-JWXS&%!%6OfDd-~t6UE|y` zS2+kx9YN`2CysBUd4Y6|m5V_gfx~dEzsMX=RuoUM3kM>ZY$=?dz!=f0I0O?o`duBO zBX#Q4px-Kzz`m5gU|e34k_h#eI35y}UF_@#^OT|7LF^=hZp!C}5`SU^b#yQv4wFqv zKb39mDmLFmU$**FeKFBX+c+;K0bATrM=Dvwr>HL3sxZqkjDBjmIG1l7<$ZUA zQ81uf7M`BL zpH8*d-skR(Xdn2Snwvljz=dGpmj`+AP>a53D)_Y)fgTUn=P}cv&IAsZ+_zS+^qE?% z^E8l$qltMm_2>nxz|y*_VZvoYn&ep#%WNg0GyHE&9xhCl{l`B^$N1-A{V?`iHoae}qanRTKk}as!odRxi zys#@3huu_nRFZJ8l&;wa%cY6QTtR3kNb^jd?Sy*L^VEZtZth=5+}9Z3h>*=iAUJ<+Jlgw`&V^S33cg;GZvzd^i@D8M_4&Im)G6e32t7TJx&98Mg z6Nz!uO^b#-4ys=qs9_fgLnCy;u|-jAH)HlvQIlotkOQeEq`QYoV!t%_zz>-!@uOg@){H^6)Xi@0d>us`RgCT-wvOPQsA z&omB$zUgF3%F8J!HvZNly6%F}T|^Ylqp=o#JEy?bPH}STfKpV?-g3^_7?s76D-NiW zxvxkRQ!4q-XVHpWBGU-Wo+>9Bu*f2kQF$sX7Dzy;NopOyq>;Isg7+Jj%|XYZra2Ir z>BLMiFeK5JZ#r3K_J_5`LGzQVUOA%PHf?IFnB3yl9kAzYCTt9Md~9p?CO9D}&)5y$1YEZg~8pQ&$(teV<; zG7((tKa{6d_s}7XbA>yZo&STz=#E`1(}iNE`+4%t)>2pHfioq z`)5~5UKF|qeBhIOb{^0&Pgfsh|K?KN40bTro!X46?>N86;PV+6(IF|%#txIAm?8&=b3}tr~enFn;?%KY&t83&~_fI&)$7%Da{+hXGPZ8k$ft<;I zti?dU8m11rb)vo=9;&Uew_c;s%J~cp{fikB6YIb#Qz=*U+aaL6u60^j&Rt~VG$=3h z1N(`q#}zmjk1-p&cj@lNO?qLe=SMZy6f|cZd}wo>h};(`D;y}+i)vF_0HfgE_^#2mCH->WpYuoPd(5?jzX$=iSI5tQljoeiaU#DZ*lS_D;3S`R~FRwr3HTYcuh-)EJ9cUwwSU1oGVo;_AlYP(8AK9tEnE z1KcD_%i_XMnwIG{T`dWQ*+5PH(cA>MUZcB7+Tbwu?(kO}`fG z=u%Mz*M6aY<0R;#{^fA^qbS<;_=)mcFS5!8e|x1><$eY{zdj%Pv5ku*>j-LPA*^t) z8&j5USoUI*{dUyy+2nz$NTvxZpyOBSfDnmJv^SGlX=<*AH9PKGw~$O;M}0GPmavFH z*Rf2hoe9C81XavM`2Ce*p9C#T*O&+kL(`JsnKtKt+s@E9IZ8>bD=)4_Lt*^&<^^M` zETjhe&!rEM^4IE7qPWuZua^WIo)5lAvd)5&s5~W!TjU*KaU_gABuo2rXEbU7waf`> z$E8RQs^SS2+v`GY0nL*p4xJ`7()l@GQLEGLalKHmSgF7Gsz>h`FoA(H~$VS${eYeXqc?R2Rc4o5a;{{;N@r#KPmN5K7`KXOb z=u7CMenH2ZAkd!;fwk`8y?D09j5Wq$%4`MN5~G7+*%L}99?0dUf~`W~Y2(+So}2x} zH_cAi+FF^M!1F!weOAHr!2R~AO!Q#lt;%LCU}WulLYaft&8{aq5zQ2qt}PZi#>a0;$5 za@^N_T+JpRA4K^wtt(=mDiFIVOGaU>N{{;DD1Xb$nJ+Op^V-un+YlB4!lR48D6w}n zCgpkP#_|#2{&~mE2&p7)NM?;kVgPe4noRA~CBmR56@9NupcaF_G;K@Pg7k_o0f8+} z>8(#37G=ZrP}QlpBfl0XC^9^g_;*oMr`apyk<>KwJ+c_wmQ{Vw)}-JaWn`_b&3e>f zh#l_nE#sG*=`X#ms-GR+Qr5b;1+aKWv5{eIYZBxg!7E%!LJ9fJD{qx8$`*2cDOVqZ_6FRz>ok^hf2u^~D!s$?b8_gf zl#9s4W<}8!qL64ST|(i_$9Kdg<4Voj7#~K4hFmvIWCnZ#Nx$nBlQgXS=2uG@_(D_u zN`8oJ8_UElW4)ejC9^rQ{+K6|+T$#>l!T6Kx!_BPa;ht|Kig4X*LWE(apmf4QP3;m z!~%yjd$|20^B?LSwr~P#Gn0g|K*^=N)&~6wwd#E4eyQrKKR2FG4F{pK@+AECRPGxB z9K`~glJUiF=bLD+3sF2PuTYGgsY(`1q9MCXUA4SbFiw%rqeOcQr%<2Gz6GKpx|^R@ z;?ly`ztSpjj(Drna}LY`hw~*dyM>ocN@ml%?RDQ zKtnrm(kp`=9LLfI^zdow(LqaF@&L5|W_p@hfIF_^Oop1$dTo-1w4+3L%zBVY3$+y6 zaZo3Ft>+FK<%ycJhS?~kNJw7}`7>2yh~P1jceO1f+ay0quLD|ZE8j4;;(1c9njzCO zdD^xzOF5-4Y-l4mqR#0*9XS&VD7L~JiC#4Bf*0aG6E~(=P zq#_X7S#t**fqgv&bG-|SKRw7~=V4JJ{{j|2qW|)HNB{N+JWT++N{MjtQq%r>al3Yk zId^G!^^V1J>(Vrv=MCT>|3+S!hls16E>LMxkbv#P@VjGJR@Gz^;T30D`en`bZ9!T& zXz%z6QyobWC4m`J#~?GOS|L?0wva(%dJr%aQQFHi*mj+NTNuP3mA0N20VK*OpC=Cn zmrUu;UL+0%cJUefEy^SlI>CMBJo24b^abaM4p&<0*E#4IQSRqH29bO6;CM91HNuk@e5a6dXKN2 zFEkj&3{CzX;?S=E09!M&g#%S-M@QDc%f3Vz)3HYL9>bpi_bf!MsCd0~a4*DcI~}&R zfkO_pe8-(U&6`2`}!=80#ut@Ct)~I#m6`Q3S&EwUxm(K@6sRMg+D@bcCxyt8B zN%bz@7-bJnzmZMR2bPjE#|=Q~`&VmJaljZWIdht@T+JCY()i&?k*FW)!MaE?z5=NS zxt8lQuzT=P3&I1z)!)uRVUS^T29cG2H4{x6re$QDvq2edf~#wuhR&n6Sivh4UVZ%! zmYrsiOB(bOOH;@@QKoj6C9M>|M2Se$+%-m4f;y$qni#V)9QirE#E**52M}uwR;blD zYpU>+wQJyvYTprcnAve|%Vn-<7*P3*6Kz2=l>XP8XScEMMF@DPg00k~btqn~C;nor z3%ZH8`AQMZ70JXvd@kK7FX+U>^t zo5{%1gjQ;nyCZaFTmjUiKUw(_ujy5x-I2XjlP0%drqPe}hJt~IB`5Ax&2ywOj!5n2 z{k%_I;qE|x1GmU&9kh(yV?6MieCJhGHp*E+ymln}h@{0FGCT5XH;xm<5;EkIpucGq zpMM>kKIVdapY6{$F(xR12YGijX*jftoiydK9QoC&rmHT9ax8k&1C?J%9Y#Om>JM6GV*(_}XV z$8h!}Hsu?WuQKpH{|6&L+`qP_KfLJlSi{pOT}d!!vj&ljWijy5%Vrp~3~RY-VJIxN zpm9_}Hrz@yX9pwE797sc#|^ZmO+Jn^?;)-n2(m+|*wEs3I8LE#YJ0-(@w?)QglAjo z#zXEb=18G|$xC>Z^}eLZdU2wpJL(5>9aUgf@LvVJ%@7Krc&ylkIg8bB0Cj7tU&|E4 zY+_GfaZ;7N!SJ3=`5}2wn6mI`spVNE&NzGQP8jB+)1P?4c=@h`tlwa@ky?3wuS!C0 z#-psh-zOb0<=>!;cHiLze9ULemBLPrv7kzcPguI^Sr2T3jN!JaWc3^HvM5fv2~>2$ zCJm1$s1BI)qqJ$i9s1pa%06p#rTXzZ`N&9nbmVdiUmJ?OGMDaRYsWbs@^iUuF}f5`dEln+#lu+Bm@Q|*)fv}S6Qp<{dL%q~R?$=ashO~l8h zpyJ}2U{noy02Gla4+NvLb{Q0zHFko3MuhGip}da4!{}W7lhUZvMf&;*ybNCRQtkwz zyB(db-=ow5BRdT7b>57GX5rqXJ$k}->C8j5ni8Ihi6r{F4I1Nm(uAWt(Y6qeCfj{B z6pFh3jd{$2T10UYwX38j=-Tr6lO5B!YI~>xLQ-JV+TIB&$F)Wkov%~>Y^2R^9PWQ< z+oHgB^Ow1w8TL5)DeWToi94g01rD$#Oy{d5g8u5%+GkdFlk%6~N7I?=%L(>O(HH&X zWNKbOPfn|L^r!+s-#r)uGnaL#p};5VzJ{6(0&^g+^M=pe7hk>Fs~#3V<=sv4wn9(} z9V(XrFir}*w1aq&_@nCu+|%Y3Z-LdWG}^?DbbZ4KTt=OC%?2S>@RfBjpVNTpMS7*J zp(epkqUGv>l(v!x7mkrfD>AV+(Kg=wcM;-*=|OsfqpO$mnl+Sw_I)h%5IS7}&_Jvz2t_8#|srJH`y3`z~H*2c_JVtFaOyQjHz zVsx7B{k4z^G-X`T##1T=tP#j*1~2XTp`@D6DGybsE}DcVky8KQ7D1g~d z0tqRDsbs)|+o7d#8mHvRB*3$mc?zOhzTHFMZUi& zcbA{cpPGxEoIxZ+V$F{4S|uCbA}l1B5awW`@L>Te=GS2)6JwJCnGr7XYK3CiGCzDZ z)!jdRUGbF!fRE7pkU%u{pen)$cOGhcU$T%B-!=&r*_5!vY5dkxLm>!VLzVG)wvws5 zlCFXM=#bkz^e6+k+9U-r{?G2S(GZLepFW9I7tT4Vp zm~^}@IgQocfSN0Vul3PgUwV2&_ZPK#=qPS~?$NB2qJblmoF`12t!pc&x^KNsu_x?a z5Hb)@%8qAJ3>O=gxjhoxfBN8k=uY$_U$-Nx)R6++hS}G0)W#PZQ=}6AJmvkPFF}#2 zmVUV*v)jc19!NQysdF9&4xf* z;0H3H$WTriwqC=QDkzZI`NJA*0=4+mjx2Jh3~U##LSv73RF5o?0mhWZyrCf6X*64& z#J5Rkrmn$9{aYJiS{AJ4$hvp?4d-ZhOL9@cLZPHnQUg~p>>CZQm? zso_M3GlQ69{vyTzR7u~79t~)!;3z&BE@|AePAmX1_@i-A^yF)l-%c}~YO+YamTB(T zy;AG1c5f~})(lwnS#Nc& zvy1Tcb3u|>KcQ<{gl0Zy9QMDah9)TOATio+5sTQSUeOcLOyV(I8O>#(c1w&3RJI24 zeHPA@!W4Pg$_ojrqrGU0Ye<5cKTfu{6G90GsQWbFI3(VHtfGJPGi9nfceiI{@&3pgPrYu{csZ`WXwoY>|_MhbMT8r9HMF(rk0MWRzrvfI|d*HTDB-`baY zcpHjPpt}D@9@zFNxysb3hxb;C!6Ed>C2etmDsSY>fFsTXccK!)&{M_P&s1O>wN;Ac zh+q=_h~IJTPtv1>r0gW8X+dSruGaS%cw}bVbE{()nLx!Z$lEvQ(!Y>XNTvZOaGar< z^vVPa`l)hcpnw3;@o`wLUfMu$3cDPkRp26{WY^%%vIy4lTT8Kwy$5m{6kD%hwr-9o zYI=Pq*O@5M8AB8`2oL#nRMH^DW(K2=tAs%llTa72j~K%I`&>eQ&tgU6VYA5?^uI+# z!YQNlQ&`(>JzwLO;v+2B<&ZSu_n9Z_)s91bkn>JbfuwVPGA`QN(JaDDyc`F;>YGsFx@-e0O}Ko7Iq1hvDp!4bz*m@6b^SiP|iH+ zMZ9AnPF_&LCboK|Q36b`JBn`s4W#TSId7lCc-osd+K^a`DJaIjSZ&hr7wYP|>@rT8d17NsQ~R)d(z z$LmsfJ5H;MwCwOKu5#C)C-ff_@fxYtU>g4r7`B zZUU79oKBz=ymHlm`3(qf5=Au#lC`j3x>Vcw#;=S0Uhk~>aj~jy$Z7mHm-)zccjZo< zDJ~_({A0eu4g16LRn$$sY-V|Rit^~&;+L8z&|xhmBSCQD$<7pNgvx^?JO=5@o`lTt zpk6+dBsl_|+W&zu=nEstJWAY~ARW{JFaVfo&YEoCv5xorM^d$iDm@r8`g(^&P|NL+bEoJ zpj(dJKPOvqGvC>RUlygWY;54PJKIo;#YHl(Vi|n-;BJU$ngF1yP(7itgxnyy!X{7# zpa&Jh$Ok?uAGrMzR>~>Q&`mA9!S@$YZD>>n7WS^#N7c0!z`-hG}T0(8)D*261 z#93ZoW~xH(X}X=2hfipl8Il>`urlkg5&wd6vZ5l&unl>l&LY zaxWjA7mG0@2@z|Z%rXI=lCf7vpU4hGx@)3YV9z*R(^9L?xdbF^KTP8{Ds-#6!liEPC`JKzEKnxm&j1>$>kraSn88j%Xn3yMOocQQ$-Sk0 z*+=|##1^>Ir%&7FM;xHRB#Y7&SkGmi^pwg!`nn|Xx+llEd|F>8IZ_!$2v=fpU}zr! zw+uG~9mSKbkV@@zU`}MwQ$C~=rA~m9!9-f+K9RqunWL>Q?}THD{FIjYR@Q}GJTr~g zPXk4P4GF2sYKO%(J5k+B-<3eu0|bWU!ltMYH`OB6{)~eYMYIPu1at=17#Dg4gz#VA zg+xdWw8kXyilXiG094JI^U)SDw*5lYUN%L)gs3daxm}SZs1UQ{Wo=*Y@Zv=K6w+dZXL*6j$I^7kR?DY<3PtSFnpXFO zHNoghLzt(pqR7YboH)w`+E-ZBTq`O%3)owyD}#{+)j$`DiDN>Espq!KbVGQVH2r4d zsxuK=DVy|-hVb6#6TCzalQ;)4(9r!{w6<%FTeXFSJBBy-#-Zxf z6}(U9J0kpDh632NIlI_ zOR)B_g5Ud0c1_g8C3}Wo^PxO`)wZad($HRZ>#k>}XCc5JT*xaiFST}^Wz^cMIgA!= zqU2UI90_Rq`uB|l-5C)iUV*cjX|aDcv=5hSrfw!OcxjRL=x=3}yS zAwyU*&fjKSQ_zM_^;i*HNCj;;`Lznz7~5i}dYriS2!4dz&|UXh(i|1Ymx{T5XWXTD zq_#NtP^nReLRQV3E&f+u*AS!4M%bQA>}sdZv;Ws$RqL6G-RH4#1ELW)czyz&bvR2n zqQ*QiR5@kMWa-%7nnQyRj;%FY`at=$s;?r*=J?OwkS*q1Bn8{lA@WI32})v(Bb5~HTv81tSnOrpfb;pvD02_Sn0+=AuVh!#u(bi)dUDtt z8uc--9^!I4rIL?6;S{9#>qp$*kN89 z5vkFvkKGo7eQYzBwFTQJ5AkU=hL!e@VdDEsL&M5a$qX&@IbRh06tO$~*-tf$^Zfc7 zx9ryLSpv=!p)mV@>sh8_B;01Ut@#_lDk1xNe^HC+$auxIT{jS&v5t4s@~6iK)*QlX zigxsZpx86Tm95#+Y|X1jM#(h5#IZh?ZcJ=L_RhAa6qxZZuai1JLBR)$Z{R~e49;b( z<|Arows!Dq+Biz&tgM>3MJYpkXFM8%Qba6(a|{ME(&F~bP^tjy3#)WEn|sC`AX(D# zUgntoDzJLDCU38Kf2c9n%DdIA1sF8(IPAAulj1rREHWgaRQXKV6U6RB$*Ra&3uA8_ zV(5ZAfYlto7cnvKVkDEnfyiLG{tqmB;DGXU{}4w1+Ef^7k)0!1L@v}93IU&I#_myE zZqMuEoCr37y1^d1+R3+Zq?&q-P}NAs*(A3BDB!u4#&JhFjloHOHrn6&8NVC-q8BYc zyPZt@lNE&UaNGLoBL1oPcmDHB+It|`174Zuq$8j$FRa_OTj#+@&x7?`+**~WCud)@ zR=p9SVV!n1RdfC{=Z08sxyj@bb60h~y(Rh=dulxy;r*5x;KIT9ZQcPGp?$BCZ1V~` z4;L_O0g!{%_VD5?n3UMyMDh#{=(eX~;uB6UQ0VD|;B~5b_j#JCQ{nyd+z^ts0}h%9 zB5>8k!*}f2<@E}=8h)m||rBGU+-}|G_MdjLI?rg3w}b z4U@%HV#EW!Bjb>BIRAo1kuoEgvqi&C(Ki2>{mBzDHWV5yo+b@pf01$Tvwmfl8AN~i zlE&mugLZUBbaQgM7ZhQ)lLxsg=C~va6Lzuh|I@${Ir4!QvV^eBOerp31M>0&6OP5hq@Q*)^Y+hYA22^e5uK~tw1*tIMNHm+K zLKy?o*}C*M(Vj7tNcE^M;|LS11cK;YZW-+L4E>(a)!etov1HRkZ*KnsKf;XzCiQ~g zp8GE)*Rd#1YA2);4=-N9qaDE}1lhYyx}QIR?lp{`#NLm}ge1y9lc`ayzL%K1!mM56 zrZqf6Nx9-%yw36c67gW)d%(aM4hMSAboKZc#(YwmJLQoEv~oVLos6B-`Kg zLX*tWg@DsREh{YgzUO@atLWFX?2fS@n9WYqmDa1 zCBo*(ef|VHmn9p$F|?E{B9peG#2u(Z2OR*+^kuZo6c6OuqIw4I?k-!7P)*%k+H<*C z-E5&6BmzN;Bp>y44Edw z2uHqcjhya>cPTFg4{t7u?;>!Lu@;7A`Gm<$A8rU|Umzb}gGEkbA{XnyK1lP=jsPWz z=oW=TL>0$Eai**BqsJ!Pt^ZpArTC6E^Yhj_Q(!$u{hMkE9p$GCK5p@)5u zv?7Ehvr-7A`%+1yC*dX~m}!Pqr$m^e=%s$L5B*9pRa{16D=5U7~ER`j22Gx zYN~;A?xld~rElsDS@oXMH39B;9F6jyns&q!V7C5ilM&*W4=>uyKAJ1rrUxud;4WvR z07SGQ2IdH_Q`&(WQ@WjalmZOSL*RD9DT#NBCBpc8UZEa{ILM6OHsI7)C*TJ8=}_gALDz*k9=yW$OQ|8F?@wR0k6| z-k*I%V+AQ)l2N8ZN481Wn*abWlR=s!Y+w3BrSwE}WW+Kf-Z0u~MVO%q7wj?B)Dlrf zyMNA()*)!_6TSUKV*EN?JYY1WYsyxh4l73zs}g`@F%a@2M@9#IArug=tR3!WP*8KE zI%$J!!npkRAJy4#T4bOmx5QF+n7P696htk7Y8nw@6K6|vJO>yA+{Sjmoh^XDsu^m& zfbCh~&L81V9q7GiFFV@`F-$t$pZCJ=K7U_mm0+90?f8sY{w|eGtU{sVemrOOo{KvJ zADD)r4RbzXB(&4r&h>0p7%-&-)BazQ;rF^^i)<_=?SZk+g!;sj z3>5A$LOS5;u*6%xjqbE98|YEp?#o;~JiRUim2K%AR5@?QObl%Q@ zCiI`=;42R#9r41$7qsoEdqpWAzmQ%&fnBe=2~w-_fqq&f8@<`iH+@1~vEJz}^&+if zPwn1QdRFt%P!ox9X5KOkw+5>TQ66@)^(i5zRvcjwA#nuL@t3B}7e zDb>F&r~Mmvk}9LxzhoJi!Y2#aIdNAbHS^VZk)qJ^v|$u#N#9#3rT==mHVv)81+OKa-~A=I%tlN>46 zCqxAbn|3D6^n1?sYcNkG*mL z_)V^;ADT?+{A)cE88NUZ94}F5Z~mplS%rzwcY(?i*n~0|;9C~D)i5LltgG<=QT>my zH5Xg?NQfM*DToTd0cn`YjYI>W{o2L(&*TX_@`|C~SF}xc_167`= zrKC(-_Kmi85)X$jjQnfqq=_8Yh4ZLMHOw|5(&tOVCeX}OHd|CKo9Z=rX|WXE4O5Um z%bWqx_F}D#z-J3PO%D+HXx&!*%893oo~7|Mw9?QL;)%Dc%jgve7hlEt2NPuG>jiQ+9RVMLU z7bb3&C>&{J=upBeo37?RXy6uLgHNVE(>YHi?(|0=-X%m^>VUbsT4S zYLss{g&z|i%Zw_p&8+fxv^@ER}ocYNgg|_$6jsZT#cx8SFzY>=UJasSN zNQ6b=5*4ofRi*fLgo0^DS2gCnw}FGju}A_IGC`2{GU6I~uf~qA&M^LG3`kd?LZ`mz5SRcR@xX*dn9!?YC^~wGZGPmF4XS8x>#N z8wX{+$b-fPT92hF7W^ZS#SbzxH{B(*+E_cEvTBK_Uvf`14Cz=Lq3pG^9~j{!>zTeus1f=Uj# zw^~sTG#)kZB%+so7T&ARy8an>G{+c{8NbdmL+!QrjO?N|acZNXfmG>|IVq&SFkq8_ks4x+GDzCoRAE?{t&0)ZW3 z&c5zxoh^B1Uj=W26A9V6rme+wj3mnlPhmg4ma{Jxm~2X$fsl$wVo7$BB$@Pyy311L zG`IR)wt6JDH=x1Jgvc=|ial^G7K1IWzQT3v#S!iW5tE1>{C?51ov1^~sz5%#Sr>Ao zagt*vONs4XBz3+F3_4ojVU^X<8DoLwgFiGmtQ)WuN12xesO0o->9+X)L(=^-frGDA zuu-Ed-`=Y6I8w}zD>RPQSO$`nU+T|#WPx0=xgCf8>s>#>#5xEf&~ic{By~!SLrCNm zo05q7iD!MZMwW2=oQw`Ot0-~CLs~4XPX^fA*!0rgHO@ysM((|fcZxB|bb=qjPtPhh zLn^m_XQosQRehwUs!p`uC8+QJ{qyJh_;M?GPc#Cr@blq}L`-Z`qND!DA+FtT=pLf= z3Ws2MU)h8|_Xj+p{a7uwQcy9QrEEz85NRXiyulzXPNc@(CY_utxv$V7HO`iY)pW~3 zj!RegA|jz&SmPNrI2(^1&StkZFA{V?XN&u`n4{3MqE6jLqVz8|Cl07s_>8jzyu{Q_ zl4tQcUz5PUivyHnn_M8O`NZ54W?e>R!8Um9_^bvl7{INk-`a43qwpx8HxR-$>U*h3 z(^w34;26G=6yEDb{1P_}DsxIDsjg>>#$Pv21_q)Gn{uHn6(S%%OT_FKHxlLpz$ubC zs7fAqc`YIcN#uQDco|N^=CA5XcW~BtYCy{F7nfqiUl;9{8BtE6q4JjHlfLG`tV*ur z=c{mU%_Xj+;Um1l5BE=GR)4Z$Rt=TcIC}~p5y=|MjkAv;0_hGVZW{GBgcJ>ykoK8;tP)k%g1}yT~VN#xPZ9;^O)^u@LAgA|k}% znq|o zFl2&REJRu17$Ak-f6;?Wazr$kC4+!A&tZ)>NQRPpPl)Xp`F(F*d(`7Qi?`oqo?ltBV zSOk1<%rjB|ytfXVS)}8NQm);;&GgG*Yh|%dj;=zNN;`#2Cj8o&5}xGBHw86D=SLoL z@`oLtF({Ij6V_@U0Y!0k1@s|0%81?>peLuZmmf9KD%^F;EQ5u$Cg8>zQ8H9&pxxrv z4}IbC^AbQSh2;6xY-`1}dijYXs)UQ?3{YInwr#IK|Lv#(5`UcP#qX~2yXVa7S`u+; z)Jy=zv;$6XrSC} zSHn9f^Y#UpqgQV&lhMlWc-2?qG$tj?M4t8~u!ldi?l$R_^nI;|z9-Pvs|7c>igJKj z#i>4I>Vo~uWxYA#*T)E(*J5@?8P$wj)nLaJlDMPla7DLvVd6n5%Q%~zEk))|V9UHv z;W6C2Oxca~*(x3;ifsswz76rIq$q)ZAlUMivA)-tdcJ~ggO%{Towkql)KsC8>hKcW zO%q!{_NjdV$5@zZ@G9)>R`IEqb5VEX| zFUWFI-0yyle*#rj*3t06bPB~Ar-Is61d9v|RUG1)DFY;?m>c)~IiEc;$KDhB@5Dw$ z>L2Vd2Dg0!!@ZYc{Ens8a6ucRs9F#^<$_>^m zrmSiJkgAMI`dYFR!MPy| zqu-O+ex$c-Y-OB$u&+4F9WDJOdmQ%sz@^Vuolj{lkJ4*q942Rxxv8Z*#YGx=W4|{R z%pNdNBt?HB1_vc@m9CtOBG~9hdM#lRRpNgg+4{l2(U!i`@cRhkhP!}z&(_0?dmm6M zmeE=LQBX>hb!kc`|4Bk|tE=QL+#H0(osCaidJ?;4w@zF`LR7icAj+*Qiu#df=KqHD z!ler2q4hgz>KW+iPH(9X8(4zh} zB$nA~Yl>>$UAahF2d>CRF+xE`M6zGhFtOh3&DL+WXA2Xsq4aS-A@fKQDzkf(3o}uK zg?SLWUQOV^(Y#+g#UpJA9o2a-$Cq+m8hin)B+Gt;Z}@iD><*_tbiQX%5rA5_Lv=RT zg^_t?i2J&vLYtmNr}f1k2?lOrr6fme8UtzYLz>WIeeA8qmlxs(4l8(b5uH7ud#Q2` z&$t~5=Zpm;dG1EbGNPT{5-jRbP{>mBZj4Pc3{#Vfd=@K;2(DsB+r2uQuDWL{Fq`Dj zu_J#K-hbSFF~`cq=z$oDH}Fksa*BP|h??va$Q4`-td$y1ynH14Q0Ch`%I~wAUt7tzksd(>EoTF*2^G{~w^g;8~P zT&30mY`m?+;+aA5<%47U?K!;J&0zR-hv;P|AF>!8#2EJHZ zl$=Icnz3)eCryJxm+T!stKbxHPGS#pc-gav#J=|5xbVX(k@tKlF=nl#W0+A*Vk0x< zA*afuduDOeidz~~#arueb{xE7%G!{m6%L)oi(pkvGf#%mAR3ttE z0unXv2w#4|Y)^?4zskfAq8wwlEqBTP61xnwXQ68%>ZONx}hN*Y0y(@5#<%_^wo&E5_)eoc7X5Q5MI}g z6`AD?exVK}a4cjSv-M%H9Sn2vq6tCtmrxTSL;q_BZU9b%-W?s;0yyiCCdKs>?jf91 zuTFRa09hOQPCeu}?5|ck-C2!bHt>cFLD$iPVxBPu3VGvPEg@n;Q6{SSt%voZUN!s)w-O{bJ!*oHpg%0cdF(+2H!i^kObGR#O+6BWDK^a9hZj>LkP zDa#en4dd!P_ASB3NqCi&kH=5)e<3xRJ+Y{yDYFP-!D~DGG`F6xyc0y@qGhTg?MDWGB-BUiC`2!VbT_W#e`yYuHbywjv-ong7Iqnt6( zq`)0o0|0W?nWsf z+!aMY#Oi_kubcH4O+@~B&w*1pviVkK+I#vcsRQPs&5haykr>YKhQb_keyoJxlp4Y_ zz<&5kLPevN4&d&J7bQso9Fs~4g#Sm~a`+bJ8_)Lpk;q!POAOBdE$GXJpAvy zGJAW|vdNKHB+*NlnqVV(`#!d0EThwC@y+7v1Z1hsOMHbMoon1&stQQ?P#`zT;HDR? zAGG|}t+H_6-q>W>s7SNm zt0z3Kb0^xnX^E*B4@;pjZi6y^&OV;qP9QHXlVE)5^+|4o^2sct&dq%x$0fflddi^F zz}C{QK166rc4JHG)_Y=PR{sabC-`J^Kw4Y{upwCr%~q9cH$fjQY7kqkEqfuXXh8G7 z>{hgRamG;NLG2!cDDlD9BEp79G8dEqPmq!&Kk%p>+Z(qd9y|w8K-6fKGO@xkL zcFeZ5n|`!V#PwF>U~*qcH`)Urs8T{8&X3m~`l^9M>=)T>dt;~&xm|yBwY~FkRQeVk zd73)7tw|~dgg1?4;GG`qWtO+-%DgFLzJ#Xd4+N@D#=)gPVM1J*k;b5lt!E`GtyBOK zn;M1}a<21%y2YR?s=q$^g+TOXFMldTfow;u;t5c=dMv=}K#k(@hENT-zT`vuuyu>ohIhoLE5i4XmfXo4C;In(hXKi%?c7LvA*@{U($I)Nubq?f zdzyk%A>}QP819g}sHVF_;bxKMdTo|<7;2-U(?c1pIW(J`kmX3H*jk%#Sw}&!BJQL4 z<66$2v{A4n3B{o7dp}7|-6DSGo29phFh-&w9G&PmOxr+o#MP_*TOPPEJ@b?tA>)P1 z%U&p9D(gLHS2e9ZSZZtvlvXD8RCCgf9lIfdcs@|e^BBbF-7EQiBD?B6IG^9 z84RnUaq>xGeC>Ke;(R`&sY>O?L5&DV=bSCBg?oEU$;5CbJd$&=hgp& z!OUOARlOI}_UsAOfHBW~#l&2C^Eg6CUkOFVlZaegMyTF?3IDA#OC{y_Gt^kZ!j{5M zUM7R23EI6{iGUBrVC7unDa}WSUR-H8mCaW008Jv|>nasgGF8O)bAzwOoS=DQ-tIrGJ?MM#aL6;+|L8JH_7Y5{dz3tR?C?>*g5}RVr_5`N4vB)!p?j}p$=~w zeKPCb{Ej!ratKZWX&$@fot25_xF|R){pXGiO(B)lR5v`!ypRACwyW=|%LQ4-s>Rzd zt~_Y7*DcrUK5-T@{{m~Nb2U$jxu-4zl!=l1ylWbxuQad#AHR>DuCeOjI{76M#~o69YZGSU(zMZ1M8!BllExt$@O2aSqVl)01*wqmlE!~-B`xddPlfIZ7yLFkRj|= z*cgD#!n?gkr7nMxB+)KCw@9vOY*>Ung%JY`yi)jfa+9kY;-Zhdf#xB4IvaA;P|r&M z1P!vf#w+^J5~Rt&{bvHE@gw$XKm!kMaqHysON>+BZNj#x-`&UC*MOLH))Li-j~|r^(ponAiE~B!Mn-0 zl#VL4i&!BR-#}P5DsXk7!?hVbeUM$&8I&pb+rtgEmzSE(eNxpl#e98iRq*!cnc$}D^tCUlsjZB8vS7z-%xEc%XwC1MzVMdGD}8Zdxb_JAfZ@;Focjh86k#KmOok5jB0lD}kmv~YYc8Jaj^LMWdF;^`9F zGn~#Vw)*8#Q^lLMiSrv>F4l(m**oI~igP_mo`>0Y&JDJ&EVo=C+^p8TcW0Pv`=SXf zd#VzE1TWf52-zjHv4?BFCGF?d&;Gd@5@Is!K~uQ!&U;s2+;QCyB>;X-7B~=b05HbS zLs|3BANJ&!cf0%!R)L13Sq2F$f{^ubJv+B7@P<;;-*yS0PEvgW_&;H+F6g{b!{428 zR$Ul&QIiHbVO<;v!)Pz)Vx2?3A|3*7oYedQ6k>NWhLh6m*}MbcOQC+647pH=VIGao zs`UEd=a=AB>0GyZOmeV{{&kCrw^G?5!vQoKZe4Kdt1a1@9z;W}Zed`$-Bt67(U)&Q zCeTD2Qz%md*SAn6HtY1HWaq@n+K_UTw9!r28e_-XIcP(S>`l&8HCBW@9Io!}3J~VX z-DMaxL7kZ}Q>1(Tmyu@=+i6+eX0fqz?jIX?`(-yd1JzfJ)2qX$WJ%PD57nB?;dR$> zTX47_mQ?@+`ji_jpP}-jjKl&1hNgU=h-^aL<-s&e4i2d(UK+^Pmw3tJ^^Ue0y_uxjb%#3p>vlmG9IAp2QhrypQVeI~ zUBi#X8|6fYhqvnSx+a}L{w><%-R{fM5C~kUNGRW#{K(mzvbE0VsMRmH>8+HCUa{n6 zn4thIdR(l8orr2D(8X&DfHtcOb0qtyQ?$}E3cgOzf>Q&4$xR+ba#z1pk2UXJ zVUa+4Es-ZEyT-Z(HfVR~c($qaea$FcM*O}LSV??jD3KQI>tT?ai~7}zG4Zn*x^a~8 z7d(nWsO`FdJ?|2`5!+^AXgEUM;l4%g?xhfKgCxk8y?_Q5r>Q0KXT0r!3h3+C8R@3- zI%!}@q(jvPM_z|w46L4`rypSdKz^$3$Wy(n<|W$Mj^i4;NaTT$b&fBDLc1t?IMB@B zngd4{>D!xs4Z2)X7s;b5^r*tG-s1c81J_%9qy_WN*iyVyjr|Ao;*ZMgZC&r~u%slQ zPPjq#CHplqdt&y^@{oK>@6U{mMfb ziB4u>TM3?MEOC7I#14)A9T4*|FSwL(db`>Y1iPOLYM?2{negQ~ugx`xNUZd}3rmId zH*$q0Bi2qg?CH2bCo(UPl3H~Ya7t7=A>Vjn)w~lXO(a5QWKO|1Gh5Ck9NhqZ?KJ$D zX?3?9{AK(IzM1bmC9%x?D+<3BRvTrZYcsBr^n{)Lw86FtsP?48&Y26RW3~lv6?UV- zfl3mujLUH0rVTU-*zb_5RlL9A%;^m{dn}KbbL&w8Ut{x$j$srin%KgS9Ml&UwIX3`(WGs@qtzZKS8x#xxV;ePHvewwm0zk`$ahP(qJM5zWeVxuwx>& z{Gl^v-DOWGYc{gT0fKA&J-weJuTan{OuF*oUnt4h_?#X)fJ(odask$9$6~Zq z$XJ-l%#;MxV{6!3%l$DT@!>TGT5-eAv{VVs%Lh>UZzgvl+XzrpN8zMa;5_waMG_ zE8r)PZKQt;AjyC;xCH(l;UOd!CXO*oFE2JcvZka6`+(N`m@tYB$D8w*eX&oU9&QpR z88m5Wv}PKoKgxMZ@rbWF>8|IilIhzyPrbER3Jb<__MkfFs7qaJ3e4>zV#5&QDm2en zb4)9jL~t(WHP{^T7gqdw0uuuE`trc5a;L7!6gekQP04+knmDNT&gr6>Lf(bttQW-vn1@_H0N@CA$y11(({j^y@>C1@$ z=u$|__9lYu^xD}~R}cSNkZ)00+(D(@>i?g1f%ZEZTtBWo?Hkd%b)+_M)q$`n3EM2o zCCz4RAs>BO1YHmw;MMIaeXf{w(2gS$gFez*8n?AT6uKAnrEaa#iOK(jf&>`Ev~?n0 z#yX{*(gji^V2s>=AcGQ3zK=P>wW>WYC@#ag$)Z;ULmyVg#uZY%J$_?ZbWE39pIan1 zZ1vE|!tXD)(j)ZZNXWj1`GLQrurgdFotG5c?pjm-xIS%v1M=X-c5yKE0m#gCQa8OV zog}$wCl%p_XQ)q7;$H+zgIt-xDWmIF(M?vu$?u+#s|B<m{-&Y?gi7~wp`ep%1)>yJ}Uq&d=E8~7FEM3Nt z7W>Cpa-e|U^+3NjQ~xyklj)kpF1~X>4{S|e*%euZl5Mwi+qf^cnJ0S&uxoV2lD_Sc z)P$`3brq+Oy1eaU-Q={NHo<6&a~|O<2>L%R z;w?8dri5otj_Z<+|3;Dvfj&DWmTotby~`kZ&E|01n7N0JKkT^FkA?0Tf>9hi>l4I- z{_XA<$Fb{gMy#sOj#scOS&&+GilavZDKU+Wlp_ybxOoTBKCg4SDT2T!kNQI(hVU_`qo1?v{jkk0@Nm zslQaIH~>39#J^sz*ByZ?5XL+|c7YW3Yc!@uQT_no#agl$F(JG|}}p zCx5XnBiw-;79=sCr}Ry5wqZzvq1O79Tci@@URE3J;)!~V!sxZl+_Q@2UDmex`Kyv6NwhKDPCP><}HMV*cjkpAzZT;0A|Ssev*PD}GM zmBB^F%*M|0%dH`)LGDq?bZAYd?uwZNDOv~;VEC5re3|R7O!^NH&NOBr`}rj*N-Or; z@di}$1&rHXoa9SatkshJ21;j`?-z1h>7^*aI%V{j6LWFSw8xv)kK0o`=-1O{ai3Rl z>roIrONr9)(d9O$-$bJHnoxRJg{UQ?w80>%|RQmPL60TZGTcrG`xPf=ucv zTpLRqS_6%ZQj!J7T%$V;s7~9k@X+5ftRX^N?pC_Rh}PMh znOTfKjqy|FR2^WWG9~tc2g)sd%gy7Hqc+pvU%c*YzU6Y%Q-L6<8CceRp&-&Wd_t=-j+@piDc`UC+1)9ne1Z3RdHE<9wky7m{ zy1wdv>lY#Z-~MJk_?!^bN_U#>!FsFVlsdjVq(&}15W8Lp$?~0jwF)T2^$PGZ&0;<`UuMeU(Cg+42v&^B@c2HxaK@k!mxz3ZI>J=-zsBgWbEeT4|*tzVwl@u z$qt#-bumnk7>3)3F<*x*l~j(3-G+@Auw5uTn^=V~qXOPolNzVJ49~^gniOE}R!N1l zTYz=N2xqW_Jr?b*pkyNr9csTLaHoMK*9Iu2t(YvuY1^d1Js?eqeWb&G{MkTBz$FxN zO+3>ER~`U^s)UNqI6VUNgpCX83=|jM`qAp*&Cowjxh-H1)SX3XwboZ*aoT0?imnq_ zL$w8=UiEkHMQ*$0)P*r%0f9j#gORXNG#s%dc#%9QPV0I(mXvg2_)X?uTo=Lbkua@T zA~DHu-$(rx{OV>NAD_fLHCV{Q1iE6$@XB-&X_UC>GMcAAKRPvQuhnEYO66W^Wc#P4&wME!0zL$)q>ruK)lL{Xw2Wc>gv5!DP)h z9XGh0tX-uhZ(9cz(&9^Vfa8`{dsp_%zo~!&-x-%lcTBw*R?yb+jg+7?x=o&rg76v3 z*CWpOO3V&sm>O%n@ys{dO9KRmhtF?{PoyWB#qtkfa~)!nXFJo{8l`#$`MROwQY^k& zp8_T?x7VKU)&mshK1tG8$Zj<6Snzl0ga<}>Ig|YIJE*W=dNftQ}15~&k0yK<2%n*Z}c&oB!b`h}3hvGarNhY(; zQztv1Iyj;fut(QziCeK%{{@RDpsZX+7EdKJ6zFt- z^0To-+-!s!*>U@jLd_lUFvC#%CkTiCQFI}i6%MUf(YwOLwmOw*= zSN3+=BmbF?eO)S+-#9L>OcTC40 zD>AGn*#EHneevHI@BnQZJYvYaxRz0OB(Zvm(YlGq_3AOPztnF}S6G}~i?wIJ=U5Y_ z+BwwN{oS2+4fj(OrvpWIw!!+0n^OBWu=8x2SuRn7u{+*a>lPT%X-E-xL%vG)g0&9f zl8dm*=UgZ@y)!-x`iF|#-$D^`do;l9`3;MOS8y;3=66~Zm!VPDfCD6jo#U7{K%C`o zk<>qq^;#qvnTh9PF+kvDD|yo02UJ6764JTb{&A4hmd>jQv7)Ye-Pqe${k9*U3Rxh! zHTxS^{tfmemlkZXb&HJSqPCR0EQXHzsRCo>W4VGiR^%m-x>Q<*4DF<-pxogcKuD62 z;K%v(W8{1PuDjunzdFd~y#QEBnwzNhO#%@l*|~*Inp-9h(v?I`|Y_N^dU2|=X= zW)&uUh#}P~5DVDv^(k3$70Vff$YL0gkj4jaXhynQ-%rUwn~GIo>jgSioJDg|UebAy z#U{gr%Rong0|NkrZLrq53(nP0t1pQ@xI#(vj@Z$ZL%V|Zj#o`(c+z(2gU@Ha23z{P2 z?8|FT9V9t9fu`2&PY$j_aek<8&cu~huhpoHK6D8cVMvm~ce@i47oP={6HLwSJzCxv!lS1~M~)X#N(=XUDYZ z@Y`J)nP9*2J{dO8_*o0{abvlb2&c`XhHPGN!FII|_FsPKpPV_( z*QTG<^iCNm_FIx&oS4mo2uyujoHMkT?g89FNNsJyn1}5aD#rhk+%_C$76e~ip@PKi zjWE&#bICwrECmM!`XRbT5F(4648|iaq!oG``8gwcF?@UydF?Q+T4R&%Ub&MLY7#_9 z`~dcq`QDuM3fM#v?!1Irz#tH}bg_f&7cx%3AuKLMe9t# z61`r_dF>R+J5$z>j#~Ozp<#PPZrLv$&2)(Gb+oFApRWE|h4mNtUb-uvjAjpEI5vh7 z`#b|NctIhfzxT819EZNR9qn`l69LxQIg*jvU701ispyqA6ZYH8gR~=LSkFrW=E%06 zK`Xk;NGTG?N1*mP708=-#P-XPfI@nL7Ot|jGt?72ynQmem$ zSkg8bXq+R6N7kZ@?YGa>M=yy7%q@S!F-C%M6x98q{K!ljh4Yn#{9F;x(&26KNC`~q zYsv}{?NW^<4eAp#_V%)~UU;)juoDP)I;2H;(ZdbNusb<0nXy<4K5W$3*tfo_kif~HrBsf>F9e9?);fGnHziVRWx4vAO z*KS$lA!!~CY43ACeJ^#_X!iYQ7ATdzcHF=PVCqPR1*-UyA{np1U^3Z`XF>e@!B{z{ z90SrrZs6R&5OyhZuZZN0?d)DdU;Qe>{5<-Rk|;)9NEu1rhY3p6NcSZprqE+M!E4j!oxcoRA-;>STi% z(PeO3iDkYff0eH|i=eugn4xoEgJ>05FqULo4)?va@|23q{@DU`{^e9$%w^D8i2exh z9c)#8GehHXwx|s+?($zIV!P2u$lKAB{RGvZfA>NAbS5po>I->%SdkWVIKg4m5dF7BsO#6fN_+cv0$<=FKJjYV3Z^FI~h1p+*N$UcQVGxM+NuZWuu z0wv}1oS@JQ)GA6Y(yD4l^^q2oV*w&sD!gZbyFdNcLh0tgb8O>Ocsd=ylu!yC>*Sb< z*>@$8KP1;LSzgN3h3B>Of}Qb+t}A>_l#tfRG1VOA6o}BTKFNDH2)soB-$4v~JRC5Q z$9lKP2olmhgd>?4nGm>+A?7#@z2#b@rB>*8x}fBCH%r}L#exv+^tM)R5Qw~m3AFyb z55RuMC`9Rbr`QUzO;WvVQ_h}ukH0h~Z=y+U6)f5RsZ@UMudkIt81D#bgsw`~FoS|D z%l``6whpS2Oh=BoIq=!i!9?~xaH;Gu4IB$B^utE`gg_OKjRswof???EsTx?6+q7S0 zFv2hQt$T0RPG|)`X}Ip$Fu({XeKNtCU~~te_#mjEeFIDZi12n?y?Yg#!2#vt;W!(B zSN};@|BR|Eix+bI2%N2Qk|8^*FgrykkWp%4e7Lb9089tY#xN?R?tsY)Rm{A-394Z` zsGWu`j!p-APXEeH1*id%mKs@{o*Ihg^w{)dPFSEo?+*D&r=6M$9rVsZyRPy;bSDG6 z48Popmf4C)+TrS-eEvqR^#+^Y0J;#yvk$(NDL3iNmT)qZ$^KMGSaE5qP^1PL!sW8K zy{ShApnO_7;Q766FeKo|xlS*E>vV%&Od9C(X_@myQEk$g#P^`=$F<9P?>(^_BZ|4qTW+z>;il~$dCAMZ zkO^dv$LMgS^C!rT&Q_6PjlLGb#Ha#V$efPBql~--#te)*HquN>R`(@tH*_5b%n&F; z+?QP_t)+DGaeL*E^tnbGKN_p(AZ(jKs!7wiwL1W%VBH)6V7LyX%9Ax2UY`;m?&?Du{A`#GQm+X`VlGya~M>Ontf@ut_8URgDhPlv)`t zb@_tiY$|6Y$Twx-BhorDQFa)fCCM_fQ-wnJ2TfyP+`=4fbJlWee6G;Hw;=gbp+RgT zWbpYBmdZa6jLV00*c4i=!~Hqj5SD%eScVxY;g+wO*1xc`EwV)qzwt>Vy)cB-g)n&m z!)^>;itpNVh?I?1;uS}ha;ny!KmlV*{?c0VVdqH^3smnft}{6ePx%^>&^|DuMxsrN zPsu%FN@?7IRqI|iL=!ace$il;u|+p0%@42=)Oukt1`5>qp4)Z}XGfHKwZnZLmn}Us z?CwP%w0kvTLEB@`tAQUYg2t@C&(@ucBgANO0BS`1h`{ z&T3ELg#m)ic+pzuj^N?C&azPmfg|LAAjaF#j|RZS+vuh-ad@xaT7?Hp1@CM^B?uG4 zzd^%C@|}uIkmbF_?AK1l#kcl{Ce#HW^}@?;bm%q6XninLqd`UKCB3E_M-PI)^5c|^ z)DzE~o60`Rb{4e0c)?qEeUOeMjscRkwU{ETmKwh#+LLt6J;Wobm9~}d1fovncwCjn zo9>7GnQDogz^p9@CKfXP^(Z(E60=ZyUt@Ks2z(|8Tn=RYJ|SLwYhZ`tE^o|{E`~#= zFvjl`g|`h4{7)tK=;XcE+y_X5jgE0OOf;2OLX3TUVRnN*%$;o_94lE; z6Ollp(*?v&T+dkmVV53rvN1AcvO_$ za&spKN>vyC$#x->TAp|U#S9&<3u;_LRG1n_9gDD`8zGHNEaXLN=`n zv!b_pwxHJSnJP14X0R$GtkK(Z$VA%NVXbV`r;5Ls)-UsF{Qa*?uiRi|CKJjOC&S8# z-me$&3`AwnRDm%JUodvWGMRC_Z<9!%^Mb9JLa0fWS~wd;dvA1Tni9oGT2I0?2zBI) zEL{ouiq5N{p!}pwSmwEN9~89a>+=D>Ggm;KY&b=d;uk7*E^!Pz3@khj9sdvTuHVfmuM2T^=12S}XZ<0A(Czj)9&EANsBRa6-smxlBY} z(7dPwX?wA+c9{>bfvc$c9P747t()R|?mAoC9w=i=5_Z688VnBI9S2Xd_5lI=w<(CX zKwM$CpTQZH(w-F_6dY_ryKD(N<2SqY%R|t%@tbFN z8RO9BC-=4&oU5FI*|)-pUwA4W@=;t918<}y4NfnIw(RVBmDP4AO4A+wv5{}qoN|q_ zO!v8cvJ`e5{u`^O|6{m*mZ+1M<3-97g}Uv+8x(`#xx?n*NQQUqMn->QqTbyxtVT&KZzC%A6Ex z_I#klZaCJ!kjMzMIx32{Eq0pC^Cy?)%hIt*w6A7#RaeNd$FVNmyXzR{Wv9mC5wEt} zT4mAJ@yLYv>1Bc$2fw>}Q{yYp^*EUC;-goN8rb{bl?CL} zZkR}(b}qFcYkXb)?M{g3!6qYh>%lWzHibKNE#=f6gHH3}kk04o^|VDDLQ+AI5h($w zHnJ{jEzPB&>lXRaYQw{Wc}V%X1Zmf>WCP*-NE6Cc%U%`%FBI%CIZFf4h`nZ(L_seFa9 z5k659K*x?B64>5a_vN&&KCRVv!rpR6><3ZZ!MJbt^scJ4ZLz2ab&U#J1X|T_ zkzJ;(Z&jYyGE2IDQ&c55GUjf#8O2z>wfElyoz;jlFT(<{oU9lI?ThsDy#r0X_cv=- zHiWd=lkOIwFmDP{fHG3t*+yDL3LvbBXTH1Qmz}wFh9>32JyrTY0t&z(BY$Um73;l< zbg~&Ci)e07FP^y&2gYCTv*xtOyl3(zFi0dWFC1IlS}@C47H!7&d>4iOWh_|MjHOG@ zAUx(q=~YPY&~Oa_^How66&Wd#(xs**VO%nDYnkA>xVj1S!_1-Z*0c!c4g<3OUKp}KHBOX{w#<|U$plSGL^`u|w6+Sj9eM4)o&)OYaE(zHl5X~wR8a1SenkZW%mw=qcd!PL`_Qz*=cSWFp6 zdrw1aY(VrH4BVM31I+X163#VYe(H4+?!y>=*hZ8PvpjKIynEq!u{C=)U$_y^L%}|M z!vj5im9t3-qxB%U-YSFM44K4UouY5|JZL%D!=q9^eYj8dzZ}si8(~3e2$%&d+=^_1 zug!0JnSWF#nKlII1qgQu;uh{Dlp7jK{%Eowri?r;O!&8OE>h7_fBnSY7QHdkuGbd= z)h&^zi91HS)1~j@bS%wH7^!PkB`d&p$*RT)r}&5C=ca9F!3sNr%wL<*F`Q6?8OBCM zpoBVv?$xJ(Y8 zt=L&%`*a{PrhB`GOn6D)?{o+yCZfW*A}%;_hah4MR-R`?;ZH?FKN%1$;wA0Ed^{>G z6_bJaP1*tZu@T@s`or_UO=O`?OLR3NUHR;m!M6-~>EC;JB2 z`esxfYsL?+lnd#~1R_&SwlEXl{+|m?l6%h6^xH~x+VV(M=&w01;-3=p5LJ95Whg-w zWg8#A?l~I~qZGMHr(r!B&VEy9#FEsK&b^K*qQb3z=|oR|=yqy;n%WBS29vbQ)tjQ? zftv{Pa@rhx*>lXIoT-#>mbG6{*e743^Wzg8g4~r8EZ>>3GAJRA}!P3$# zj{!jso|D$_b)V3(Eo2!gY4evo*3$%_qLZ!8I`@)d(UPX_5HI%wJ8-K;1w#ctPqEWeX!%JZ&EF9Uf%d z4kK+ulChnEw~mpKaY=ZDH$&8fV7!MG%viebwkg>hmWUSvOwa@7?`_jk9n z$eEubzN09n>@8c?000Qz0iI)OSI~aJ`}nnrr5O=ii_bkBV`GMi$Tdh$(`Ck9sr{f^R7J%T|QW4!NU~&G=e43Ak zkblvKE}*M1CrE_I`1{RBVY+v^{S>sN7*nF{PaXi3c}bYkdb5Up!QX*SAr&~n&}8tZ zHpKSxOEt@WdDI~PBJ*xDJ&1i2H}4r+n^zj&X5JD;l_b}1&kCB+P&O3Q`wHIBPcyL$ zr*Gh1ry;I6S(S)F^`F_mU^@C-n$!B6XBYdUC<~@c5vuj;lh)R8+9#cD{51dt+l~4P z#ZbBN0isMkansx3qqr9BAtMy<0#US6a%n+!P?#%}8M6St>unkh^25p)N!yoeBz5$f z8)UEX)`nMscBd2PnqlxdK28PSFda?;0vvZMzIjB?Hv9LRVofn##eg7wHO5y3ZRFL* zF+B)bbL`B4*K=($G9opf+$$2ISvOW%HZbe$HG1Y`kEd-(=mg`h2xwW6P~2MM>BAls zyH5vGB*-pjJgMk0x#nkdPE_R&`5g?$P!u^bF8nY5J%ziWr#1x_bGeCh-7OmuIVd5q z1V_2e%2K^S2nN~>{Q?W0S082?K5(lhdCu~d!V#^2PkAIW zrkS<1cpAhd0h4pCLk%ZJ_PqQycHbi`!zh*R);p)njb=5n=OhnnHEm{E_wo={(ttq+ zB%`}jfpZBIZbR!zV&E8ph97IKUUxSek3!$MA2_XXxQ};Brk!+jk9%#Q{NdI47NgI( z@CPA5f$r!)rh#4C$3erk$c~W7y40a;XA-NwpW5>M`ZpsJN0~h%)yaA}jS6lh4|#uG zeQ*{kyJXl`ElArGzJ7Oxl_gST==GnQcCzWHn25>&2+SF{(Jj zQ~30})eOXQ7lTDeVOjN47%|Lh^D z)8nB<01_#MS=sBzR*HhBy^&7ES9qvT{HPqULAq>UPRIoC^icQ_sS`oY=%S}pw(7t6 ziA};9ZfMwb%qs1U!fei59Myj(u({rx`Bre%eYgzPj<|+s@obxk4`661F&|T&7Ys^w zAE}|Oxc=>EKsmVL1U-_no)?pNpV&2tUNFU*Ckq7e&>I&gRQ3IyDx?Tqrv78 z$nsIXGC~bOlVZ;Fe@ADDuz;J`jWC#K@zP+O&b;2;pys5OFy!`o@ZYVi1Prt$ukNFF zTZeqf=cAK<#A4|vVV%q6=q4+Lcqh{uaJ$bu$xV*I-W=F%0k#Z}Q|i?adL&ueVTFF|RHnUNhRvI9eZ zV<}_hJ^?ZrM79weE4Km`Ms+d`Nx=p|6f4R7h*3=ePAf>0r{EkY;m(24AQmNczaXrR z;b$zabN>DxEZ!x zR@3Z9r$4~G?Q?<_;QEIVL|&TCNXlb6z%bx16pEjL(;@vW!Xe(UkI=qyEjvSpW`np! zjDOvY}Q&8b}N9 z{T<`d5{?t94wugzBlUFIqaGI7VDT7_-tCaBRVf`6>Fb04Y=*{67FuA>NCU zH}mq6^(0!J&ae2(QrAlD&%2HxT(m5uvE+TSU_Fu zG4&brQksB?(VgpzpO>x)(9X(U8Jt|tWB?OGG2Wsf*TMmQlUK5igE!t?60chj;<9R+ z1TdpUGRHKZ z!PDi%!2i(e8ovw5C77AdC!@io^3f?U0^^hBeF)Cntk(n5!$c(P-T+E^wS(UI3rgv zhhlCBGulJ+8Cm9Rj(GH6Gd&XMT3(kfTZqZUkdw)->9Q{5eR6f&-@I?zCM zHy!e;Zh}aHT^`fQuy5VnuW) z-1_ZuD5ytw?rIqIx1rbTeyD(ox<8=em;uzAD-OXA7^$HY_RKm9u3wS1H$D?wiF9Fdto32-o0 zvOD_>H;rLOJ3>lhpQ8kY|KH2kRoyJTp>27%OAJ728%}kx%6v0x{OY3(B~VJS%D+z< z_1){$w!8fDfWLT1YY&o zpWoCDP%jB~R=iHml5nWU9Rvj0IUGv*Co0nS1feIV`?+jZ5we2*P#HUtc9j-3-)*rd zaWCd_iUsvj@4nsCL!t31wif4}Bsy@OzbkUbzm$(eG8cFc%u@;>TKz@c2f-}0;JOv) z(!w*;;5;3@LnW%!gyOUECJ>5W7@i_ve&gPZIZLIz zu2&EtXGqpmc-mJYVUEj&22^h6zKtXCX?XR;Ab?0x5T8vsF_*`^z`8F~c{WHzne1yv zv}eorMP*zSj=vMFr)kt4tK;+mQjaA5L?)7~bi9RzUVR^`I_GGH8XQ)SklbZY-#);j zyS&BV7ZIdY?>Y6yP5Xhup0am`(HrZb0CA8eBF+lhRF8qFgDxuDvhr5N9n8^lA+hME zZ_vVmv7K`eNOd4}cGO$+c;3_Nza*wU78$HjXRbEM9A{eJsO<&HJsLytV!`6TMR}?> zgr=0Y=(0!vR?GrEZ(x6jon3a#ZuI0hQg)2GLU`c~LYL@oYOio7C-o?VV$tPL*!f>q zy$t*X>r^`I;Pl-d=LlBh0<6w3ht}#^yII={$6y^-ekLqtnROr2zD)1lV^CiZyvtTA zu(>{3{eO~1Exr*D4N#2C+P2Xw>^D~tY&f7x(`q*3Q68Rj zZZE{QtCVTO*D6@BbR;Du9`IEAe+7e}K^+(_5=(C%%ec|-S-cI7&8)~bKyH%zFmV8o zy_xVrlUdREZ`Zjpd35v|q`BF}@6BLTq=W19tl>cvOnHU2gN8TwHav`~krGh8b&o+) zml?bY&98}pjJhvt2Za9pD;yFI{a8q-Elkcoal}O2hiCuF!255cm?yd=f=Zki%^IMF0C_2*z|odtwnQ;^7fiB7)&^bp%X= z_?#GK4#Tq#|4Djkq82fwmPzRl_)A*w_jj~0Zd8idSiqwAeKTGP=oxNTjx{8|wz^IK zAp?_zD#?9s{H{WKL!O@{KM$aG4PqhIu@{DextF;j`tSg$IYf0ctie)UQ7LdY0b>q^eZ|wfo+nGZ7+r?zzzh{z^pL#wfU5fXI?t)16R2;nI&os)5-TP*x-^^^JNI^GtBKZ8V zV?yNf63O%(BD|d#-bP4=K@dP2sodAyk5Q3t0}0HYh;eCGc4|MthhVjx3iM0(fd8(L zEC&xGSszG=ddg$i{R7JPPZ`5}oiEr$hK48F_Mb{yeK3GE{u(XT_ZJ?VEUDkn-+X-$ zQKT_0QzTzzxa}l8BOR%i-q`Y^B-CM7xQn?@+2$vh%La@*`a%#HTW8tFTecMGTky>2R#rU++V_t4|+EC zKS*cCftnI@6@BYUE90a1;OmHnbVHSZhY!YR_wahzofDM$zShX{jwi|GfmAA!F7ZjU zhKY|-=AK#%e9zvf`x3qaDV)l#(&RooX*W$zoM4QQSOMFOwc=>F386(PCN<}eLR#b#!P@-vM3o(tx(Js4?ipvsl~#AP-AQ zyQkGaYf+}(@~DwROfQqeiO$JZqYpgVt$TC4_~WDDkd2aLK zQ3$N>YZU{Me$0xQE6twrTCDBS#(vBR{Y*00IwKVo;U{Do?e>!6)VM6Bvh@w3lV4U4 zg)`RS1$O|GmQIo+7^iw|2IkuSj+5C05#fQ>xGakid$Z~>KJ5R%Ii9`AJ&yyZ&w#5G zjmSRX!6vW(gdp{!T74n1sen#KV8A^Pdh!(xAzVb#8Yc^q{m(8nJ$~?(WO+Ou+#wh2 z$gJFJ7LH9m;QW~P;7I%t>WD3bvZ#eyzAVDXvFzw%mhJy0D76$X9vCEG0^A2uj>LC^ zVUaJ>ICz(nIxj@(mVuF1iS(+WEEaP?NogEflrz9>xlu`r1#$6E5gckh5wCMd(j=eI zp111iZsY{D*Adw~EYtOdJqE?wO<~6b0T*ih8x*4&&jyH;qHU2s-gW=#dEjw}@@Si# z13~jUIcZ95qe6eSF>8%r?w~^oT0=P@!Ze*{WewBj-P?X}evYY<`TB;VXx0SU36e&r z6?)~t43(W(2a;b42Qkl>|LNc-BNM>pYybbk+(2%ZT;GAC-cmdywaFd9-5qpWc(T8>Mr6w%-hGDZE>0MJvR&uVAOw^!2C@?-FJ zNX6+T_McsVx(pp1@?2bF%EYUMS9y1&`({52Q?5Vt@eSv0`JlAhStbwY6$Z%xPt7gy zd(r)FnY&Ncv$Hx->A1g45lfesOcqe>z^#Q-uApc{=!!80b8WtdbJJ4C>En#QW8?Rz z2PA-Z81)?dYNSiq0i3y+glDPMjoFVd46;yV?jB0rF~XwRDg5o z#;lfk9g@C(Rmk&b@M)EYIFx;n6SGQ6*n7vCwma+F?!kYgH{(2u>MLE5RBRSpMlacA zC_U!EY2iJzN<9HceB(}@0^|iVa$L9kHFSUVd&Dy1p6d7c0e&zj5{p(nJ7aV6xJ-xa ziX2|?&5}#3nbMI$Z;u35<1j9lW;;{{u!*wMVGlWM%akMPt*($eXk^uXlO3Eu^tL@~ z`%+Cjt|*!Dw2VA71~`dIx+<<|PY`diL!eYecmjd;s${O!)OQ-8+0F$r1${{{lI<9AUimI4C_ajNzJZL*gof z(z6Rcz?+Kx$g~jk1Mi!p&8oYz&>%0NEf=T^*xqC6Y*EK&F5%oMxO*n?(VB;7;P8Qmdv@Q!}% zHt%RxDV!8Q$iHHg|7@{fXh5U2I?XJ!N`^Mbywpuwi@n+ygcdd!Y@aO$ zl0KJzs3+3=RSj8{GwNaprKDi#i&lY&7t06dP-`;4Z5 z?d~DF%d$noI}yfg3^&LC_%3fdR#iZnTQ;3|ZutaB<{X2QeN}TE$U%||hL|X^UTR*J zV9zLU8Q!u2w{qY|S&@h9YU-eTeoeF%q8!}ZLoIBs?2f4mhcl((=b`UPSNmW?omM(l zyrh7QyjJR~(5J21X(&gQhcy=-!-9ln<)}iyc&<52E))EV7_+GanJ4Z8u>xYgWncZ8 zl9=h#2Z>SCm18GYQ_cd#vWzCJtnWp$sM)Hi5liETeDX53eL6qmZ+c9w^4fw`yJh2+ zLSza`5~V2vxNn40KUrlQml#Bpwc;VsmFR7LL0O5bK+;9RoR!-ETad8{(^V5L`*c!V zv!eG!SLxa^E-y#QFBU8bdsPPSD$s? zc%~Oie##cZ@=x`bs#N4PpB7Kiisq4`7Ez(7+g0XC*8$u5Crfi%d}7cWLDyZwARjd> zNFY;HIlecUDe<{PTQznMF3*n~2YRYU*9y~!GLnLsMXEt9H~%PjLkoL6EZsswk^RjW zD%FGI*-t5C{<@y~QD2;c;z+v{v2{E3?jw)?`tP)M*@0>{(Vr4Q6@h;iP}c7O?VOLC zEaEBd#j|s7JPwA3ljy0N-GjOJBFZKG+!G5@<@kN20IGbGW_&LwK}LMnG+S^q6dp?? z>yH}9QiwLfP`2o$X#v`$Fhvr+)fCOpt8WEPsx@yb(M20))G;Q1IJdL1jA7i0pLT^Wel@fb0Pd}dD zQx^l6MU3E2zN8-N6m+bN?`8w$O?JYPs>g4Ck35tSm}leR=Q4vv;8(#Mv0X3`0GwyB zg5wX%M=<|o(L3WCHvBj-C@`jC3*(AvbW$zUmHrJ*FhQ+w90=bWa)rUQ&=^L)Vx!>cIK24^L zI0`aXuP>;Km?$y@qqwiX)Ehe$@^|J(kvem`CCC;{FiJtxa(iZO-)l32P60D*#VGu)l0mhOkl1M@3A$I}ia&c(w6Y@pK!FPQJ8(FBKW-NH57wJvmUS@e+wz zBJh<4!^G;x{xU6ZT6dQv)xT}<5FPD7&l%UoM?Q&rpWHL9xAvAQUa1HpB9jiI z9KWFEC*!`Q5FzAYNP>Q^bhAqbvt8&`)k}py<$jy4+zr0rTqhOAj)wrGFUZDtwfxUc zo-f-^^qm}?_NH{XMMWh!I|gse0@IF4Htx#-#>0d6zNiU#>d_QQYf%Ion-;JNNSjCa)3$uyvE-#?Y#g>`?DTIfq(QCxb?cDBY&y)lTV|8`Ps*16R0$FgDW zb5>=5Tcy9oJ8t^wL}O7!YiyY`tlg2X-~gjv*~xHnsVRz6)RnmR ziD$5%FDX{xh5849wHSdz)tvN%Wnc@LBy;GsX{oA47~`qfoZ>CRr2}lUFwnH#f>?Zz ztwD6MimMv7cOH(-HP18D*rW(mH&d3bdN|U9Qru69H7D2sR?MeT)FXgUJ*%p5!`eF7 zV>Y2aN3@KD3#9Iu^W?cEQahW0=Qm@X(cBdC7L$Vo(RWjr=wHnpF2k){qf~U)PnkmE zu-AMvD@R7uPkz~W?xa#h%CevX-}QlRu)E2;Cl!?wWACBVqlThko%dNx^@Ba7)0uFp z=3yM$eNkZ;18_o`k8dUW^PzkzH~tXybdVT|Gc}J11dE|ZLn6RA3`uA+Ow=da*{9I- zzI}SyCUf?}g(@46-L?L;dX$K3Wa=C}K84K$i7#)7de^cNIYkF#=00N4>Bddr-vLn>2jg1ioVOl$zJMhENGUK@!_sGgNVH5fVvIdMJ+jC1sHb{;K%M%ErdUsUR%R zMgm(Cr|8tvf|8SgX#7JtM%nqmH?^KodjFSJL;=A2h9aQuQ#lQmr6=ZeN090!Pgs4e z`Lu_}SSovj@aaEGk^0R5a`1}_aN~`BmdmzXX8Y;X;UaSn%c5ca=ca~_12-~D_k{!{ zNw++248m_qvLA#xc41iW8o;G7&+xUz&j?AQpAhi8>JLO)e$|syzJ=-k36jrtA0eUU zgoa#)baZ@n>729@=p@krN3&cX4qCoC;|YT>w0(Z|sblB!cHlGp-wN|xX|8sfo72kgKxg(dj%kRrqepqPwyHB(r11y~NFKQlF) zG96wpOR#Y26y((*?LnbWla5o+#G4>#en;;(h26E4yZB=)Zxk2q&Lu=Cw3xHbU8F2s z-*yFSJ5nHcfO<%pq za)>*Sc(q=``W&>yt<^#W)^5 za^U976WHH}1Uz^)cb0JFmMXTJPkxAyHw7U&m^MWaVf=5dl|Cl(tO=^5I^I72(N0T7 zq?F*mhM)p9eX+8S8p0Re$;nsv)j2zWxv;>Bjfi zNGbm>Tc82QrOzP+{t2D?A8<;0nK- z{A0`h)fMaj(wehq|33-Ss?{%=-A2i8B*(60T}t5wCCeijBoK%nIsDO7GpNq!a_!PG zOAul42g?T*{r51k2H_l6&FUY4%5gtbD9o%S9Flw}Q5J$h8&8g)G34m)3iXE{*y#3If~{q7~)LS_QtVzU?%# z48H>`l2j=LvsIbn2()u?{VZ1p^QpUDde6mbGma=J`3h{ z;D!fRHcEpa-6ufz!#0Lx7y)Z{*zTq}UI=n03dV_0>;1jiifN`oqz+fRyANfVt_>%v z0>>!rJ^nOyYZn2hAqwjXx~{7fA2W+dEs`%3)*T6->$S|KL?pHQr-x;q%BKtde_~hr zLoCVe3)Ac+L)U{#6h9=zaIPxkE<$nW!>84{bj6Ym#cLM2F5vehJL0e@a|Rh9RkI^FVMum(nSwl{_g(5*e{!F zlGLCrmnb9VV|)Yi^ki4B_P*;@kMdux@kK~W?;#sR$8u|^b15x;5NhJE9r{xUr4|xC zwQEq#-mibRezF{XA;4y^TsM2eT^iCYmDX1Y_WC!rgvAcdJowz?g(qV!&Md<2s(*+L z-tg<`zlidWulcjpc>gGhH{(Vo-cgRO$`Cn^7NUaVaQ}@WS7m5Suf^lD#((BM1xX4) zG3@iu0~L9MC}=Gp>i&)rNZaGLd>8yrN&O~x*DtA*C!!=qVkpy(6oFAM=?4uN3_(P7 zjd)PazI+M4T)#x zQB-Hn^=Pgp32t)~6QRe_B02BL6PZX2R~Nc4nvfan7C-Lm9Omooq?6TZf3g?+B_=H&dj^=NLDqEcGEi!ErreO#mF~?QlaN#T(4(C| zR-Cn-%|6PZo-X^6V0dlahBBgJ+J9qCyJlJ>5uu~6hYR?1{Y1$Dpipof$q~`?jK*$W z!ap4^{7Ap2>cuqds^e_65^65Nrb#W0F=vGXD`q%1_=%qCH1vWc#NO%;+^40DKrC&+ zOkBMcZ0)42+L|ngSFDCE95|HuNE%q(Cdd?0e?%=w1NjF6xDmxUzSIEARBo75J%YGE zZsf(TjoZW&?&WgmAq*%MkGduLElJmJVW_hm^rk2sCU(Ej zzq}Qdj3)l?=;}U!tOy~3SDo*$K9__*--BaoAiXeLW6H^_Vg~+98pOVzkPzIb;!V_A9|JC&v?>HFUpNzM4K4W@lp zwbeATsHN^e)kK+rz(7v|a`1e{ovQ)3ETE%}tuv9ng*(SNPxRFB6)b#MX(dYA0pFKN zKs$l35(q?yhKtUJqI1LYQS|xev^cIi!R=2%$%2fT@j;b8wj_tGoH!u1zB<9=)sM2y zN3wsu;U6uU|7;{sBYKl6&;`+5zdDytM_@;XcD1@p0#Nf(vOm^U;{&Dj_Wwc6f2dZn z;J<1U#+>f=hR`+*5**Dfuf4g=7J=RFzB^IL4<3sdTy%86rVKKHumQ5A`8Fx$c@u*{ zIchH??JAoo=iQI$4_D4S)51&i$o74B-_V+IbG!9KXR+7F8P|j=Ptx-PoRgyy&6wM|%PFey*;=N-siJRfZmw<56j(nk>l5cHfkGcI{7{%dKVL?}! zC)~Zche45J2RdT!(gD_t=k}<9i?vqmmo*2z3aXaE1cxk=|03SQ*(= zu~8`K;#Anq-h4N>L*+v@dcxFp%?=zumrmgH z`>U;lk8lZc%yd+Z9!EpXrI&F5smb2lUp}s!Fb+A4-uhB_bS9o`wJ`gp-(l2Xe#wy) zE5*+w{nG^P(}ipQ)czhe6^PLqLK_21SoEp>J2RpIr%TNA)W_RQ%lwZq{I@ndNO1Zc zYH#Wd#1r%ld_sueXt(wtE8Mf(&syFgp7@4^(G%teYH^@>RSx=C+8FGVWES$u2$Vk% zU~-pVX3-7-??(5WJC^guedsyH5|`?p;8L*5k0;M*9Rfi=`j8SYF6QAOJ_oc4J{?e& zlx_&qX;`H0DV+yWByl-b#NVH`73c2pj&A?h;4c9Ba8WpWp`TJ4@f)SkrDAnTX3XwO z`QX-)!2Ev*6|yf{5=BX(U56U@x3L<* z2x&9R`rcTR*`F5J?C|T;4R3u`4;>i)9TP5P>X2BK27@I5ZxHd9hEmC~a&z^-ojP1D zXL7(c7`G`Ps|X-00-Lo>A0)kw0tSvY6BW*Ulk%IW$gK~{x`-Y1Lv&XBaQw89Xe?v+ zeUhKT(xG$xf)<}}e)lkYO)2gN{?^y%L8fl{G7stM-yQHU)dvLy)65_GcLFy zsjAv8fS|s8S>mellVKToe|kh)L(EiB)Is}@vY>J3Csz$M!bt}XLUeERP|sbTb{fff zR4|Ev?-4m#gdlTWUk;MOW^);UA&wg-lu{#@=K)$+c1t%-mF5t;{LKqgDiLr2P>xuf zU84D^f(80zcf+?<<-%|xH#{oL1z5^-8*LL{ts<)?9IdapWv5nfu+H!MYv!9R2P1|C zvuzs`M1J(?L9e4yf(HGut1G>~3wol2iL5B=X9Z>eWv37*XBAJ*HEvte`pcV3vy1u^ zQ+rAKbDOQ{|Fs;_)=MpW=R;*ru*fV39LMZyG?Tn_19ctXMkkybMY(V<0GTG;nHF%cDG{ z8igS?=MBOK8`dC4hZx0j?MP3yI6>zK^UcTYsfII3Od;`(?+!G5F(4ONQcjv*p{F7w zEpYHOnv4w^mVT9%!L4*9VH_rEj2r%+?JL`FnFfr~Y25Q;CK#HIZ`t)_TF`Q(?=6hR zk+5Iy&2n1_w@HET&C#pBwGX-l%K5tz7v-DJx`aLk7amS0B)$N)m?*3r=Fg#oj%MlBJnV&y>iIy#X z=|h6hq7UcyjUl@Nf{OWg{CdtcZ0qERm|v})))?Nk^d;r0WJ0Ugn=X&twnuzt6TDci zZMc(sSXzpVS%$!So7CFFK=wGbSL^FN+O&A#{yN6q3PO?pbPZS`;KseQbuc8{gW7-P zJ$M7S-J1jUtmk^%!WS=NcQZk5qS8X6XBqf_b=O^Tl6TOzmC^IJpf4?^JQwzUgbvlH zGS(ckjC~aAAUO$*JXKyI13?07Eu(L8kw=&luNs@iN^^3t6nD^W>(XLZo>dpFEQ-K9 z{84vIq;&o3YlyR62$W5U*&_ri@A=fmRrrCO!%}RakfI?PiXa=s@w?~sp66?b@Koif z+*6WnU!ha{52te7)Dw^d%@m)gpe2{BB}tgCQQN4aFiye=$PdJeLh+}!7ao-~Bu|Um zr72=>2wA7g6G(#IvEdQ1OuC#^vDR{Ph!8Qfp;^y`m>_HjD#4|>f3SE*bragY)m6&t zU4Sk%d=Fd0)~;K^+6)+Bso=OHJG}hnwv($Jt2y0Q9X6;s`&1WcgEqNdOB_fB+}h&+ zqFKv^$V}1iM38h3L-52`w)^ggW8^KiPHO4^i@cNNNQ49k;A}L&WzV9(xkI*HCfpZ1>MT-b zPPPpS#hvKX9R(E74uxD%RCqH6%2rCLpDB>y^a2Sq5@NG@jU^!)0w$p)hcJjzwgmZ* zIu;N;Qi>t(oG!Ej4xl?HOS5_GiSHvF7J=H~6NGEGGA&Ef4ui9q`A=DA311O>Db)*a zvrxnt?Lfo*D=q}wEFqK>s+OOisVx_SiI(HhC})_-(#&Hb$=gtpJ3J^FmEuWz2Rqs& z_E(`&w`3b|qWnNP^xP#vr6f3dcx!}x=SCBpG?hmg@{2C#$wgvwqLaA3NHcZY++`wz z?|AYX%A&f#9H|vwG)p86weOkaG0Qpo?~%ar_+CJ&6ZxN!adeQ>Je^{+S==kJI}lU{ zm-_OS*ny*!j3x#$MptP$8{3ulFThRbxDLl(E>R`*tLEFB$(2rj{#p}Y zP-)8bh9#tbk9DK2&Z50a;tBaMYnJG%JfqlDADQ50_(|Ofk>yH+B^&EquY04GM@a*<6jh zAr(E|x@O9IB}I$0>v2@@B+LlEkvd8mcS&)+x#YkAC7sW03Llds*>JexVZLMo$TL<- zq4r?|3ux6naO7LfkdQ$umQ81&!WGlRWa|l{IV+)Eh~sbTin-&aY%qOGe#Qp<1s|{1 z#k|kQvO>qP8PcsF3-y0O8kJ+)d1bwKZtUv<-W=)K%XYaeIiEJXbSNw)^Bk~sXnoUb zm#~A<(-i37I++}I{K#FR8!eJOVR5ksTZTCu;4BD8V73n(hjW?=Y;58ofIwm^n`G{>b!NvFX|RW^vyMxu5y zjZnoC+qX+6>llbh2Rs<^#eG!ujrR})R`D5tvit@6xtZDHFH&8wdk9b5e*Z59jY3Qh zv>+|U*9j={3<(oys3%5DmT>R;r*EH1w0%dPYh)QG5kzoo7AOknBFd}`%$1tgH~@oAFTBK2DP7{0T9B4xGo6`G4+MC+J`jDm#C3yIGwklU z0LyR8E`oNuM#NQE3x70F^ca8STv)#6oR{B{SP9SwMf&x*8XNS}FF|*d*m`++;qbv# z?A4G!IjIhJtLupGoIBlQ?clLN7U|IeZ*x+i z(@$}nrJ*Vb(Cvp%cTN5*V$Xz{tw|E|;p(CT_?dbdCa&*{K66?gbGW)kaV`}6zs-5U zIhSy{#I?94hhnBpVfj2LVkrF+kSHb*zmycM6HDp(U*hsFR}vsqTUY0Kh_8lp&DrL3 zv|fr$o9P`o;9q;|gv0qga;7p+Q?oGy*Q=t%&M zaFTz|t)=n1Z%)GseP!S1F}+)SCumec{x6kqa?GOc%;VH25ugxfS{fAe)L;O(Qz&I> zCtg+mX_an||NVQ2%|(B2sQ91j?phmH!ZZNs-A07k0W;3`SMbi8MI}H4CaCD!sYPgv zj}72rdTm}9jo;p6r=01i_0D-v{H>np7(5G9OiNK0l3%jMuApFXi?*=QG**9=54DhV z8W%!ZpVqQ%9e zmC7arq-0GA*k%i5kuniqsT?6fO|vsNs6Dtpx2Ksogh&rWZnic_;y@|b3t`6G!$mVl z<$qd@^!Dy&sdu2wc?o3W9RrpySlF{ zT`~xI_$H`uWzw@2x>OB1w6icai6OjZ(#?Aq^*}O%<=MF*4LvpS26#rAR}Csuk^s3x z;7G=$PSt3dMxzQD0rQe;ig;}WaBIlIwMV#R35oY@+T2yOKG4#n>}uM>Qp5(UGzZ<7 z01lpg!(iVeNx&s5nrd9G$%C=p#%E+R-YzF+A!X0d6BIN}PZdvjV6p?6Pbq^7FtJJrUM_p7x>=qi700CtRr&7>Z*dC}9qR_<;dbq>RDZ;k+^MTZ0@c z%n87VL}+OdCb)*h%p0El%rP5MHdk0pza$^#sKxxuv`viSes}h+uoW{Q^l{t>BTE%7 z53mUG2iHWwNvdnuaD=^N-ffNJ6!Nb58@fX8i)q&f4no^%#Hny$G~eV$(v51@+du5= zpF)-d6-G_P;6;s_!(=vYJY`Lm8Afl=gk1(TX5G}MT1#NHi|EH>Y&1tc!;soiFU+#^BzZ^NEY@g_3fNI6#gjbxKY#TAwIDq=(ANOk84Vt9R6U3~D>}TLdpl=$ zxx@QW{-O`b8a=bG{f|fAo|mQ!ubpnfXHY%9&=uliTSY?XN?v=v6641p=R>SCnNB)@9S6hR{(?i?0nhG2K{q$=UoY;cYE^0fMw*Mi1 z`qFGlH;`((x4qOUX~!^=mK{kW97?Adj_z@igNJFjqJf>eQEgu~WZxBptZV(#PE1;! zBC*+u!li7K$H!gjW2z1nctYu>5e7EW@a8?vWP5Y!D+4-@i!@hF%O0#nIjk7mtb000zVL7s+15iS39D$e_q2+a~ynk@{76C8HJwpp}# zD0TolJ%&qUbldsd<4q`wJ&; z7=lGxtMt3)uZ$&dC2E_~H9uxIb`=F)$@46n+3cyX4kwU1`D&4t^NB)%gUp+@{>X~n zE8breBsn3hIY4Ry;U)#HXQuapY+s%whxB+fayR~gu?Sb^Nh4dWbn5pdADgIT1CJIh zYW~ShE?RM)r|bK&o9S457SO=3216J`F@8F#sbt@D|J~D!;Nt87)L(ODB|hdH4m%hm zzvpZd83OUU=#aE+SoO*=LKNE7LR4HQIahzkbXeMe9rZ~R6J7|OU_sc>Qg z9J3C0(K4hK^1HXNDwGJ1uR)ro0vy?~5^fTI+#j`Zx(Kyt<_X;oIXG-iC|nVbiRHEu zA6$|)3I`h)HO*swfpQfrsg^dbV%-qK?uFPsxgt^KM*)o>R8KSbML`?v%kK*dX;$qP zX%^GOQLnWbyLxCJz$7hqLd;V1B{3EZ@I(PC=s&1mIe3$2Ei9hsK_Dwu3%`n+_$Fol z-Il{xMy2>lm4;84Cd0Iwf#Im~>~zNKdAd&mtkU#PPn5aLhJH|I`*G6*?V)NdNicyqSHv03ZRXvJk9wn8M9dRMzj8uK&S@ht*H z+;tr|^EpN+7g*AKXpXx4OvCg;9ALa!!rdDxC1|c3k`nHXeEt&>i7)G3lZOeZ3}x%9 zsT%qxL}kz1%%iLl`ULweT!H+cDFVcE4#lf!~X*5IYUo&IW0_r95;0ITAgp=)g&94u7 zC8r(bE6j{hgwEnX639xCOoniu1l*60sDh1lOP+A?MRF>yQu#_RT*dxx6a+? z`A1L$u~CC3k1+xjKsgWD?TK;Yt}`zi2F4pL z&t{Hjc`rpfrRQApdZizeCm|%OCg|zLs4o;#hgMVye_;(}wgMefOrbr|ICehf9D(%~ zMmcycY86DX8)Z$OJBO>R=7iI{wYP40u|vNmiaRSpLS@wLp2Mo%wzlY#U%!uN~Hvh42qXoc^FiU^b~>np9z%ZeuLYuGbNpmpm85kU~p zS-e!!0?*a%$dy3Ih}wr)5lhXPWgSp&j-Tu1=au)|Cuvy8IQTRxMbJQFKk??8_7TE# zfy3n;sjRTIamr=~yjJO1X;56coLS!fw}j0LO|Hv<`$9Z$fa3wU+~N=^(_I z3AY9;kijLB%ag}&bmg=G%DF`9~6mk&988fGTrm=OJ9?z z;jU1qbI^Kv2v$Zfu0ZcdCnUr8af3iQYyEwaimQnY<{;K>vMg8-KyjX+5ij`(DB=Pev9R!V?T`zt zD0PT_A|>BvD$OA~fQvs!qMDLj8e{a0GJ47zNxV^>&CKrTN};MfAYeo0;c6T>J~KMn zX#4#oA~iUN3orEQ+Hh-`@!aGX?vfZ*^-Id>@BNJkKC&9&rHyVIU^x(jk&!BH@MT)EP2L0T^O3}}5Mkk3i5~1Gsj~8=B_gPDz0bA%qiz9xii^x&5BZJ?ilMBVgF$Re{Y{Ty(PnOdZ zixHi90Jy5}#Il0IWAT}fjp~yK^lDXISiI^BH|3z-mZmu3Az77r0%{Xv88M!(#if-A zEBGxaQ~N{YBV)&VI+SDqiUKxU7q#$k5!dO7(hDY&4%K_(=*v(DK#Jk#1Z}ng?O^-w zbJN5O6}BNNcz5Ji0|vdeco`p8*A@qL%-u?3TtB1)KzCe=NDRT1n_fU(l^{3%uE-;S zOe@=b=3C~bq5%#9V6Gp}9`qq)UE$N_9%}6hux^a8Ybdv;f-b$r>d2CFo+tPgH&2Un zux8~oAyL873nFJVlH=PltXE-xiglHenLjL_c5+u59_Od`!p%UF#(KiXm2mKCgid!> zY02$Z+=O6FG)et!>P>M(FAKIn_CwsZ$!!@<`J)D)&djcQQLm{2dhC#P#|Q+iLi~u5 zxkr#h1*1OLia*Nci(_jeILsDlUvs*kkYCcD#9kFQl>3Op(sW+yapIow5dKbiJM68@ zw1$_&{R77lRegQL&Fx#{>F+Y1PDAZtC}Wd3Ao0;uI8<>Syg zvooSZu7jiiE_6|M7@AkZAy*w?$72JkvpYY-StT-|N!r1x9a9rZmeAyGPR$?gIB!cb z)4L_dcF}R_8WY+Zma$Ag14N*jqIVH!X&@~~odBy*sSz%1x)T=v;IRHyMq--bHO9gQ zX#<{y)*V}2KR>M*G~@!p=X2AOK%ywYQzGT6*3D_|87_T^*y8(n}b6=qry$x$55~XN?7=+Cr~A9qm@TG)`Z+Y|qHF zHFUt$2LZTf^DK^2T`G98Z&mB=2wAwTMY0jXj=h_oA*GrBVQrd}JBsJ7Q3T%O2H6Q4 z7U163|G8+Y3|1ETOueBS;^UELfh}3rWNUx5W)KtBox--BPQG@;>k$ziZH&p)^_-Fr zWv5O$&?BDhIk^Rsi~r|Eb_^3;Psra(yz))|jU;t_LNfQP=yV%KBc;JWX1~=-Ctn^F zeJ*5i6bz$yK(fQIfrFaUr@s0YI!08}ci3>bV~KVzg*VVyu4gO}KVIMSCM3!GsQXwv z;z*!K!)qmB?E=58jX=s{i-NNkNK#j`BheMWJ?2b3jlM0-PS@YTWc*aj*2u*4IG+>WS9HJU?(FG+9S;4P~Zs1d1r7UW_mOB2a>$wMc!F3nQ7Xc8(Mk-ds{Dm@1CejO7%4TN9o2WztE z0(KqA(!frsfALaUu4klc{ zuCuV|#HLM_dv1(FwIm?B}OeP!4t&oM<%q3VctZ7;xlZ4}BS&?XX@y2wCf#08s>Z)n4b z1J@!b@lPuzeYUlF8^zw5*H!wZrxoF=&&7w$GLE!c zKR;%Z)k?Qku#N)+!?dPue+1!aU=**0nel`8&fjuCfdxT0xYfenMq-0z+7CXCBY&Yg z31wnxvepVhoO77y{160b$mjf4i2A=x|?yYXbFIM?}UEsiAV5Yi{hKC|UUV${us26*FndH_1^ zb?RiMpq#lBu+lCdtpEePW zPNio0!?DWEi;E{6at8J4`fC?bf)kN`kSF6C0pgdPma}-8GKh1K%ahoWM%zZ zrG*Slr4a5e4yT1f#IR>GAK{T*s_AYm>qP;w+ zTs>l(K^y8Z`~@(x7}0{lziH^ECRJhAO%qc~Ej!AYhTxHN!`W_x0ZB$d!>x0G! z(ojrYgoeyTp)Jiz*&nKKRc8fJ%pw)7>jdt-s)Is=I7;8}(2b=8+J)C+}!km>`}RmrLaE?5wa- zkm7Jr3NY5qMvP| zV}8b~nMqu-gHMbic~x+}f4)c)BHe%i^lzmDkuX+YAo0cpvH1V8TyJmiyK+8)(proQ z=MopT-jL)do=Etyd!s{67t+-suSuPsYZp5aI(49%dHYnyI$1BotJ!FhFJf^(V~}|b zbLKL4uNr#Jx&z3`>Gljzd$M-MFl^;5oA8?fY36pwTOKp89o zLCDpIWs^Y_FhN;R6@Gr0$UUI9E#g0q(Ce%Gcf#^UaL-HyESE*5RYQnCQIyeZmn%Ap zm5n6*^n;jQ8&4f;WU8x{zx8hSSf|@64AhL=%VJzsT$6N= z0}Lg{yM|<&PJ;8efRd04jXh%lb|5{uXbP{S<{RZi1ObJkAt|fqm6z%=FC7Ip9!EgtQ65E4H zQ_xq}+kp6&OoGFSQtvo$ISzz&<9i{SVM-wf@u5cMQ*{m3CTw_o^B*-+DiHqNLr}qB zk|f;-gRss($?fQauPl-1&-Pg__~>?>mG*f}DXC&3+vT2i0uErpRQlh$4u(YBD&|}u zDS_#aM4qD9b?f(2E=LH!m*%~b3wS2(c<=o&qWYv50lF((t^!NCbnD-E zzbowOky_W!hMBp`48x+a3VY6xCSl2mEpSQ{;d%Rw`1m<&Z(tE(6qorC9AqDh$M<3^ z9J|-1`o~=(#gx+_?1|c%lMy)6H^BBdRahC#KaZ#B1gDLl;|&!`;u({NLh9F5*I16O z6Y0rcV?!gpe^>kdf3P@#C|sy~=Y_s032WBm)ArS2M-6q0kZj`{X6BqxikY}tb&iHG=< zwc>Yc!+dzvXKTnnb^|)@5|u6?Cfmv+?r`DaKCwPFMC{E&SNDq&qXY9OL;4f1*i-2w zqzL-J2e9&U}tcDhcLxpTOXghsDWU@}umKP^?nQVWpdKC7QCB2v>7iM?J4ZhVVc%`-(*fG>kfaQC z8MrtN6~`<8#$lXaGt!Dvg<|!IhTJ?TC+yUdIO_6l$94E>zXfZrOKhpkEUKu(%2Hq()KzW$4fzJ+eY zC}_@lp&U=?Q0bXB`B?8%at2I`*-kXwiH3CYe+kj%TO!XQ1%W!pqAWMzjWwNZkugqu zN2n}7<21CP#w$e}h+9Ez5X;qfKvCS<%@u|83ZeamaEJ^1P7;zM-M4zXRWqvWzI;OP z;exTh^aUWmzpM@7fbhq`yn+B?J(;i6&#Qi31u9_M+zNSx^*4#xI~>||Y;(m#bz>je z;vo}~?=0+x3*M2l<2=$0QR9)*7s|G?Yn5~Pfu)3RVa%wiS^r-CONAez_}Uyt!dVKu zL6#FCRH2&#tUx7oHhGixbT9zU)4(c|&{EIWfA&k=OJ%9f#phy;6c;8gx^D~ziPUj8 z*fd1z^^&1@@RBuIr^s^9*68Ev`{*H<7;7M5bej5;uVEG-YFxtqe)3X{paJgmtMGLOyN{weW4R+;dM1{>V6-p&0%1=q z?V|YZ-#N_^*BpU`=eQcV_~U~;`kvPbj-JnxQ(olLBOp|jsRx=_hzPj{qRTzBBe()P zeI|8{X2$V0VSGTm`VdiC#*ZB?_1Lsm-5bEF_+1qp%${7qPLJm=+nxGlVRasv4JkGc zQ4Z`FTuu0|SEaz0BtiiVCE?r(a-apK{ksSQR;GkvJ%J5T@JbEk|s_Z|k<1QJDV_T(6fX zAO=;H^fBBpzKb(}P(B*VtDuj~Us4pCB~X$lX;_eR6A3d3w%+Q8AL$YDbzrD9ycJ80n z2HR+xVo*2$N7)-mHN7dL0uD7bgNNu0{Qqt~ts~{P&G*-o&b1^NlhKpO!|{L61xV34s;O1?B- zKXq$PGgEUUokh|G=~dy*RpD16Rzm}Y1B#v_>#wOsz6rI--vaTp|8gZtj7_bRYaC?F zq5)AKz2uz>WBJXLFtV+`SGe>)u$}O!)+%I+txKpEc0=nILy5yVoh4TGqwjp!pbaVY z9`#;;*?eYkH-Vf01u@dZ3jX{KM4R2mj4P6niUb8o9#yaWH;_qnc`QmhVj!xfPF^06 zceqmtLT|1ivoHJ}lZNKm9~pFsTG3CRj%}66>>PBB1|OBET$O+YxZ68(NPw~3?UBdU zAnF8PW6d(K5TI>^_metp>&KEYhO7Yam%`8KEQ5#WRQPw3+mLb%!)DG~1(n*P+3jXr zu7p(XXS&k5DJ6_XPuc_D7}^e^4 zGY=OiC@7w`2Tvn`p<94Z|8UWzW%nOhyufmCI`eHxY9?C2Z`v zYyl0y3MI`o-T@*2p&`0ZvtA+cr2-XbsgurT!(-2DyI%*GSwN+Pq38(^)aO*|MQ5?% zrKE9)vZAK7ge=(@HQA7fi5cC!$Z+RhTsExXn)a5jeJfWJOsusl#iHUN;`NecCu&^$ z{FGLjO4qM=fAKGWckQY|CYCtP#Vcw*%oB&y4n^+=PjlqOSa?6!-Cx(pi^S^IzZn=f zT6>)9l=`R0t-B?t=9x#$3_3t3Mo<+x+|7N0C9?dc!XKB4fs(2UJi%kz069s{f2$nC z0)b`YpJ+es^j`mi;hx-OJKqWK3M7{J8^D$w=f0nEH-Vb9^<( zL6X$`#l4n`>S4G}v&_Bq5l36d03u$==nNEL0z6N#PR3MOdwc zJL{+z|9EfSgnhVho$(5X!-TcSQRG9@o)pi2!4QO=d^uY4nhn;)S1rF_2UplRCh?_c|9ReWEHHnPDFxM^FO4sgq;PRLeBoc|C z#AuBBngBXL#lOn`B?9k=?*FcT#s$((CKS*5f>Rk3Pwl!o9?ulqRLoiW+oscBys{Rq zWPLRSYj$`4t{m&H&&GIbf)iy1Q~@J=_WT+9L$cTkjS?Vb`WHipc9PKXKmEIw-lXIT=L^~@eRHh6?*%_XghWF>CS4T>OTjuVczAP zpJYnz&f_t(sCC9=0oaciK+Js|@!6}iuNTRHe8S8~a+6K-cLeqLyroiqFz0Zfpym@H zZw{41vakZ){95AcHN!yA(yZ>4#?J^4x2v) zXMr>>GJMq?14bTh>aladL*Ycm1<35lt_^N*JppapGh`vCCuyjSRx4FTT9AaqdH)SA zRH;({l8bw}d4u5!#@8yzO>~+5HYVy!&vXO9)rHW5;5}&2u3KmFBmpsI|1r&++*@=J zr`u)fa{sHYN;r+GYe(@VW4&!OXIpbmtNU?-(1+j2az)1f(y<9qi!cd`l9qB3|L2f9 z@&khVSPc;@hR-WNI6_1MaIdnKhW(=kt%ZY`XScAJ5T4g^$b()EkUScDs{=EoJRyw# zyk+$xsxnREHQg;T3mU4!Uyb3OHLXRoq5dNmP`kn1GdWXYXuXwyx2Oxa#LPUi)voBqI!1*4G&?IEz$E}r>Lw6=x#FCxGAa2|4wr5sHPI3c9Ix51&VG; zJa5vD9-)uJQ3pWmn*>%x*T3$M=*m`RUb@VM5+m6$h9NwlIyB{!jvbg$(>4B7ekp+8 zzAfLB7e6yS9|y3$BVf1kEA2?_5~aqV7|~nmIsf~y*D<mzduxv!Gz{EE*C z+8=XG9YlCTMNa9d6o~PLB`ui<+Eoz5J946PXfF(29_82)WZ;><*&dj9>1;jhF-KeO-=pJH}TA-IV%h4~T}njhio zRzzU4*{*t2i`-h*h@IF3`S8`N_D8L=PT&_j11r_QKSz%sODr&F7eM!u`M07<8+5+p zQ^J0ZljXc$<-HEjq}g>ITUZvi{MC7LrR5x=GqqAN^v>~@&E{9|$6KT~pnu{{#9Eh@ z>Of{zFRe$ZjK6Qb7Ji-w$R=Au0}-Zub1;B}y;j_1fm`L))-KpIExI6>AfG8^g;9J0 zqm&Ed8?p6@Ny#g&eGm)IrAgZ#W0@sL#e=Hwhv7VdiE(-%uH-AU6b7D_^#oD4lmuv9 z2%0}!^4IsXg4(0ZO`d8jDsU(Bnk-9UWz!VPZW3hRl$jdZM@g-v+Jvq@EU6ta z4%1c5VhBSl#s--{6JCvD_q5rVDX7I$`?RE96iU-RKj-CPG}#iXf`d_p>ri;Vl30 z>kKf;DQ1zJHk(((k@KZsxVr2s7o93Hx)U48*Z8hF15j|&Of2CHfwM{uSqj-aaMD+g zERguhaYo=Nj%bR~0MxFmjq2?|1 zgUBKl(I5g5 zAfo&0udBhYLT&8b%aH7Qwp`)5(b_iXZ#o|AoU{E8T%vFK4VnsxtClq+5&bXiC5D_?#F+x<;S7u0(cy^OOT#o zmI0eT%airl7e4i+0=TEU@G0rl@PHsZab|TChhdlK$RWupgKVHb#79Q@A#fEN;Wo)c zi9jbQ*k^9H+5^nyW9{eG8GFx5$zX@n$4>a9SHHB0jr~}SD+(>N47^ZtUDwNlx+u7?_j;VRPv#&%a$O_^U^~~KEWs`&Pge#b3 zo$PXpv0f@NKVAxP+^so3n<>pBC6@R6TdZi?FFxBrnws?}wNj;#w|5nU{7rG;B;E1= zLZA<1`?!M|j!4D(j}(s$eeUEtc$wfSyh?28^B=awy85;|Tu=?A{OJlGjXjawPjsVV zQ(24X>R`VklmON7I`_~MTUde?`rNkF_j@xtUZ5W@Z1ZWG-;Ol8K~sb}4W%T{!UhMSy^IzPZSo^z5b%Mmh`p7kp2n$P@F=$pT=Idy z!o+4_|4O1NuPr6kZOh(w0DjH|j66r>wRgD7_YRm^vVyuW9v%ADK7}lBX^Fk29wC0~ zc-u+mzm7f;iNLi45f#gsZ;z(uc0umeA3FUslhqod8a-k!_ia-FMh$~QIBPO@a-6&c zIB(xZb?=%!3$(AQae^)iB|elifyS|MmIJG zjt8n5GK%e0#FP~&`aeMdY0NMTVS4#tvx8MU)37VVh80UUp2p6WNyHbFEW6GLIRf;r zbF+CEf_tQ5B3bNiaEL~EPd41gFfMcZ7X#GK^pi*#&`8qg}w1x7GVl13(+Xs|CMjAeX@Pe}I-eV)VVj?URX6nfp zDGNIP3zfgXp~@#1yCnZWTw$UI(5-Z9F^%*}%D!pS!ZK-je2?T6i@LEDTbn_?4G6vQ zak9HffT7;j-uOq6lRfM>R0Kj-001@qL7J>ds6lL*ObLJH;_NcxF&ED)yZ{Az3Qo0ba2qYzE+B!Mk#TQAQRA2NR;GKXHS4647Y2$G-k1P(dAQa{hKf z0~AQuLF`FtAK7~Lr{T?&#=TI4@0w8wzc)=v&koXpKVNdkhX~H8Qld}rg<6=vB?wWd zI9r++WOe&e1i|^b)F5JA9A*{*bcSI%Xj*gG0Q~}FNWKr_+QS)aI9#3xAvkfb0bfMP z22QqAMT(Yg`GZW@L%5aYPhmcM0jn2u~SoG`R;Uz$@C#RhU`DJy( z$WEWNY=vjC&Q-2%efVa|Mdqqqe9Pk#$zhneO+ScYI~Ae{7kUr+c?coao45Y|s z!xhBfc1ESvY0(wN6^?_Ez00@HHLLo2wTU3NruIBxQL!#+?*+ph8vL1bEbfe!fqB_S z^2&KB^zIFUwy@j;AYk@2ZjKJ|eBEd|IP8RMPB%c~#58wzCYdx`ds7nQ_v3VevsaEQ zJj^DxhvdZw*_EMa$VII3GA`j=1fG}FLr%dSr?7Y3Z}|uVA(g}zAG4Aq+s?5sl!-p( z9*rx;T9F;WLh4JLIYH_X_y6>@%xVR;2tkO+P-`}t8l^0>M*a>6n<2)2nT$2QYS^zi z#$3@eCxCxT$J;cT%aN3vA7?ag8{J;X8FzQyC>a#Vig>IBiH z09(-;@S6S{f}Asyl^^)ah_$O>&kz^>>kcJzjc&wn35C=GVUJlaU%2MR5TI)6(EhFH zF_gt4E~gH2Yq;ePzi!l8V#?&7;=*b&v0Q%HWY78RB@ z7gSR0LZos;m&HI^mEu%!EPM5DS_jA{u6G!w!OWx(@D5ZOyjOy+#2IX%F+Y0aG=_4f*23 zKVsR={asTQ$prAmCfi4ZF@1iqk{{pX48vghb|`d+_~r`hiKGUN3apT}13@b=c8@xxAM8f_{Ei{RKJxg7>Ty^yUk{!rC_gbX~iL}73m!a&-H1&MC zkPhI7)~9&`Y!6ufugG`+?Dfi0aME-i+xWw6k^?C$3wVwC zX7LR66Ac&c;jN3%T4%fI&|Tg!X=0#=fZI^w;;p!wK}9H!Rew( zqqe8|j$;izc~KI_N$9cBdd9MKo#4)IRM+VQJp_i#piAYO`?qPrOT+5~ zs;Pf%eNVb6I=tq00m-Am9;Rv*TXMMiJ1X4=Os2eePw7M{ z(egQ9UH1Gqd{f?v$l1w~IbD`TvNP3cy<0nUo>8K^Gt`=Fv`Ew9V^NiY8+cnSN55n# z42glzQ(p4AF{eFz3XS}Y44afEEgl2by^Q$=_M%|MY@ZWF@*os3#k6So;BT?qs*FIe zupJ*DjKZ1fp> z6OEw3sSsT$(d&&i6=n`c2u2iCkKnC2as*x}qL+9QQ3ptZj{&=g-ti9v87IA%1nBBQ z(Qt>cwB2J~!^hSQD6HrJad3(Ml4a8JA> zM(bAOg8qi#jL4sW2vX$Au!RgAH~azE_>>9 zz`wEL^6biRRBvY1k`=r{gfX5PxPCca1$1NKRmB+euit$KI_IAl@^!_Z14|WS+Wv{L z*13!@<6$kQuR^&1LQf<@CZHIIA*H3RS zzzSw;U8-0^+r09yN2Mfud6I{@6D|t^w5}g+wH44$|4bRZ)zZ+eSE7WtQe$hZNE_9N zcGYSK(jX-L+beQ7Yi4@GONhlz*9u)yRk@PnSqd3@(nP|=I zG>`sFx7tw^c?8!HMu#glRUPh0`Y)>uF7x=4KVzrpb`QFpvKB&xqhN!#v_(GN%3f<_ zJ;KC6V0vhqUCSI-PrdMSkpxQcO2S>P3e=1|4TpK|m96(#!=fM^Ub0}`dJ0nE9Pu_z ztU2{P;Qq~sXN4mNOL@txLvg6vMc}XaNpvP%a8>3?mC33eB-#g5vG%l8XP`)LTGqCS zfMgcD|I|0YQYNJ2jcsNgb!(@P&uvs7fbVVT5l6UPp|)(U=_9TeU&Vi|J-;RCk6^+U znBl$kTB$y6zp@9lX^oD00!^fJJsT_pen}n3MU#3Zh9Wqi=}m&gOCHECK<;i}B!!a7 zh#g{u9uvDK5B(Fx`1*&OzwEPtNc@4AD<7V(%&tk_yd#l!FHo)Z zGTC?B7DwFtuNn_oIqpU8a*=P6VZ#L_kFFi>bcxXD9#gx@Ohs?^eGo|%E`yW&$xUEh zsNg^L;)@5r4jE}lMaG~3iw*;^HkWLrOL*JE_|nP?+vBH{iXxbglWd3GTjw^F?6*ew z6gqz;iNn@4>~!qEeL4a~#)P?~lcyR)Mb9&$ht}XLDU@6|o(ZOlNj?ROgqhn8#>{?t zH?5@Dd3gt4PH8|H!~F3-!!kkJ)7!nOvL-{_)u=Eh39jB|BX2OYyLJHovCM1`IsZpN z`NhNg(kph{%y|Y+O9=!oNhCp`&F0{x!QlqVyGYZ`HU5>NxHs zGqLfHG=0pK2iP@vjmk5Rd5^``f*zEZ2xQKYj1mznPoE--Ev<1hZn|`HGO@_Oy)qv7 z`y?zjr4U2eMv0TsHo5cW%QxBB6L}9G);vg+^K}@96c-Vyx{EMPPqbftS}2|LG&C{s`#}2`YN?b`_*)hvI~bx zpqhSCd^Rh@nuZ9}+{XpxSePul#$mZ-&N3EpIt^yr1N8w?ymFEDX=B<9FBnLJ`?mrD zTPyBAJwF}}j?XGg(@k7Ag6RxbfQpaDb7tZt zgf0}8y6dDsrbIzeT~aDju9d?(eG@w{J&Fdt{aEXKpICD}?L>0f^yv*w=*MTZ8dN{# zN>tdlvyvc6o|u~w4+G@r`zxTWkYvKG(d+;*C*3$?@C5%rDM>(Gd-*;yQ1dSBxsP;~ z2)%g1p-!kk%cK>bc6`6e{2`;%5I}sQ8faSnd_9T-s`)PI^9T~{UKZaldA9KKKx^K5 zxuK3psHqs;IH;=4Ciw?}{h`B?o7Pwvw?d-mAayKamIE$KC&UrwEe{1;5lgjP^Wb7w z6(clUT1wn8GSGFPCmMHA)V6%R&Iw8S*FLzE=nC@nj9-M~6fo{v;12$>{jw;Vd|L~I zeUmz_yF}%M9NS;026BO-FXwIkk)*fPqrAvJ=r?60z*_?qz!m2;`ClS5WLzhSvkQ}x zU)4rSyPcdA&KqiAc*W>K{lDn9ur+8}fn^Ell#H>Q1OQ>j_;(DS{W5%t`)kD))| z%WS4PlfgX$R)>8)SPX07$#LlRN5f##XpKwgr@ffcj4ioF)LukLvnyH9{3e_JAbJ5< z=PAO@LKO=&9kN_Y;D`M%cHSh2#NAPGc1V-vk@h?oF6HTG-0n>wDFLmMyPzfU%cd`i z)PTBoi0Is4HQ*P_f?p6{!k`DfnlZc%p zG?xjXx;$$T-ITRd|9MkwZffjVKSQk`TbW3c?czf3VgB!s^O=;a&nB@!+`5>YfwR97&#VYs_t{yXzpG)aq| zBuNz)f!!;cJl%bacO)(>@aHDwarf)@kQALD=++*RlgPr1@Bb+|wxn$4lX>S}*qg2q zwma9Cw2}W+${EMgCVQDOb6^X$iD%j7&fOo?l!Xb?z@PVfGQV8cxedg|QJj)YVmbTr zKF?t^`$h*}aHqz5kFN|h)GmeB-nYNR<@O&3fqMDOs#s6?@bQsy@d|-a z{yA!+d!#nP_G%LJHWan?VkH+sZqb>DO8}D@MotP@-^an=YfersQiU%r*05eozr?ed z>&b;T7)R&vi}*3nt@(!keX`KVB#sR#Vb4@m+lQG0$_>ZqUR`VpVAM{*0E4unLJA3)#@y=vWiljiafM ze>bsxWEH^>9Jd>mUq`o1AknO~8Ss?2SlGvdk5iJE;Zko3UiL zZ5;<7Ruw`iq6KV;)T>p#7E-N;xoUBBVZb5FQnT5p^BPWbiAIt7K>yYycvX1AtTm08 z?W1vswbb{Qk7JcSlDgiOlm3@De-9-ZYxX(hk-tm)Z|c9YVuK$4&*YL>c#nX8!RL*R z0i%=NrW9Ewh|QgqJ^<947Bh-I*cUSKgu47vT$FUflb>h2R?hh%h3Y<|@`gG9X|NXn zyt>szLGPpviMPTrx@aPu(Z^Io)6B=9A4_XQDP%IFPWR?8)IOG`7-&A*8iwaEHZGfT z@BygEkl8#Nigy6IO!$?41&m2vLMcMIlOlniuqhw`*oiszbU@pP%tsQZhIla)I-t`3W@6y-YCQ3Xyf% ztJyhaXq)%w*V`=8P2>?E!oJMY7~YSQc3wGklayf;_Tj#*3FkJ$Lf=yt`|4%a0=lm9 zrG9JE@>jXfu6eRUo-nDRd%|=|;VJxos+vlLzkGoZv) z*025RunfK?srtCMqisr;5a%>PVT*fXhgMUpM%l1EYZ`t+2~x(M0+dBptOk|+*Voj* zB-oE#2K?0pKoT9Gh3DpBM^IyR%~@i@ect5C57Jd{5W2FoShN zf`Wet1@DiPje*e%D~r_e1xm|P3_6`@BYd7C%>K6A1T_(0YS9E^Wzkpr^ID8w0lZUA z8X7<6RENIknuD(C)d19vg_n|BN`+XH^XbZP#C)Tgp)zei;eJTxQrcy5`>MXs%I&P% z7}0*3*ubM5?{ClQWuy~U-D}D(=#QwmLk3*#7b#0N_2v)w2z^@N!n<(JNMEOF(2~30 zjign7K<}L#yA@jlc1a>}yYRh{UnGCThR_g%*HH04d*~;@fD`BgY?ULI1pCIklpAi3 zk4SCwp=P=>VK-*~K>_rs!EJN7P^$apof2r@4NsJ0KxPZZhwfSu22LS64Hd1=sP-8xCI z+L0vX^BRNx2 zn9x{JLM~GZAxv)>DTk#FUp@7~ID(&Br6qL%Mynq?fBF$!f!UmdI4LbiJox=T>UdVn zWG=KHuD3^CLRm`OyJ$ZVs+;INv$_G1J*ya8JqReBJyGKkc%y4=wM7VXn%{y!j~cOs zpR&mS(M+K{SKMvg{(YZnV~!&lKO`-y5QRJ09>UY^=wKr#;%tB$Wl#Od9IbN84bEtr zl!s6?WZ7MxqK9{uVik}q)ts0&_k zLTa_#CLvUPqxT$1ho^Z%J?@Fy=QeGxobsXQHbfGf`jOml1?9m8gbJd!0b)IT-OO+5 z@I#5UZw4p-6ce+=CTlk@$k6J9UPY3}C*xBNao^$pT+4P;Hxq70X=J2FS*`P7c57{D z&Et&{Szw$n2N%?!PDoTzC0G6p@VoU^k$shbDTUpW2p_&gT5P;VQ;WuFH@3-x-wX>9 zKi9L$JTJl7W8pk%_^sR*czO!6Nzo`j(BK}S({r#Vo?+;P4#Py`6$pS)KC@81HkgPu z6E!HCNyWveNxKWfm;-<0nS90ED}yG5&~F9cJu$Na`qe{v@#mHu-?AC+NP#A2G(vB; zu0Mo{96Suq+WNPSJY&<^>S7(@gp)hVWLEt~rxV5%IcNL>#Pe*34RwLA=_yEG5x95{ z#AZ8f9vhjhz)J@HI!ELtjvdCiN*}=X&~qsYfb{HF9!Ea5*(XVGZbh)3eJ%e4f^eLq z-OukaP->RtR}h^=sQ#q3K5Ixj!;pQ4v1i+Zm^s!ndI1-}y;FJL>6%a-DWYGFtb@ex zKCxO!6hK7R432aBDrrvkQ)V9-sq4lu!UWd6r!O?w5{=Y(fG!W#SusH!m!yW{kP<;N zf2Z4dOFPJTjg6CQoFmF~!&8z^U4e+Ii(7jr!pU**y5c2lIKJ8Cvsd}9BYG>&t0BHA zj0#87FQLFf_3Oh1zg?}4NG?bw&+rM~@5H(Ba*u~uxjEfsNAi=#Y<0Do+Ky-1JjOzq zO?Jdl3l;jCX?<~5HbrK@T~G5hr&{JcCJMg+Va*8ACQQC}cU0SSNolGN9>cTYEoN*y z3DvrTRBY_wFDr7O35Z-(^Y1Sj)xrZI+Mw%)EH-TSix4eg8J{ zH1AUDf=UrK0(8AUzH+?)PIR7ZlId@wrYtI)b`^z+c#Kgtvpf)os=TgcGvIK>H*i%L z@p=0+J#=U3lSsdLB04;o;LXu+i(Dq5>I%2ZkUhCEbYIR@=TYjoYrY$rQ9Yfp4h-fJ zN|3*5Xl63lx?BT?ve&E}AO_(ZbF*#W7_{P7&}=E{4t1tZHc?mtM!cG}Aj-pKl?4+e z1~W}nmCw6)d`VS&8fs}bZ#lZ~r4%(9IOCVyS)Ai(xt?mn596G$(+tsFpPv0d4p0#EQ)XS{0W_qoyIJN~&R zF36QO7-20HC7;g=k6CxMH(Q~`pSSS(Akc5W!&y=d-XY!GXp)HLHoafp@Rmy4$|d|%w|DQFg!uy z-{G+-a-V44)b=!c&^zWuagl-!e2##W4UX?V2IqQX(#$Gb$M>{=LTzv_U#M!r1FDA4 zJ(gtOC?A5l^n`L z=IFfV^uQUv`Y>h1jwKXS=v{`Zf@o$;%(C^&n;{{z5>tbqJEzX~@zh`ki*zl2y7BPh z^z$CyI{Ohnvm-thCo2}du_f%7*p~$w1MePMZD#%ISam(ypMh@1`uS@*|Wo20L%WBfpk%7ePOvhT{^irj`ICm^KR1M+nDslf>L6~Ji9ac{kjGqdJ^8JJ+qB+s=D4;BY_T2;Fx6S?S7_*+YsOuTEagqg&XL|WlG5XE- zbq!|)((h9XEr2(PA@$mu@jX0`-_!_HFZ+)U0$_{cCuUEsJIN*FX!&`q4$~E)nx)nsxGGQu(U^VQ{YVsL>$J}sM1f3A(?< zwgoc06mOnyR<*?nmJk8_02AyW4QLuTkim#*?d2yv(FxBxKwo=8*<`$DW_|PO{Hag$ zfkT4+e)5|7UQNHFU!1#i8)8E767lN*sI!Xbc)%3xvB;|Ky8enaRscHTBqgtnkjMS8r?94^VVMQ`c$9i6d z7sIv~N^QUi-vXm~t!%nEA>DgZt+Mcay+PlNKmhAzCsbrCK(;)>$`q0UGtFYpI_4g( zZ|88592v1pIs6=Vh9nN&}|BH@;wn>ljJ4MSXhtd}G z%iW&u?ECnv!u}%QUOEd5@I@Q}Kh5$B;hfzEBXG9%~k*`tSw#U!JZcK`okO z2X&NiU<^X(tx3_|m(h!2f@F^|a$p!uLZ7|I6#C#Yh#w`x$&$35sB-FHO765{wtE?m zKLf?0Rr0lA=JA{PHG7^*3HD4EY#|tPF!CwVn~@2@dFkj;foWrOqwWt*O7VK#?Z1yY zAn&YLRV-VX$(Sw{En--dmfG?Tfg^Y1CSkbxSo6;^(>1Ojm35>ucPxGFF2Dl$+@0nG z>?^aAB`+pPAmAQ?vRt7AV5)@IN(N`c&QdV@6iuR@rfoK&5QdW@eHxZEVD@C}Z5o6v zMSXaH|7Fv@5@{DX9)R3OS7v~)$>psKLL=_M?hf#l7O9&ssxjeYW>{^_p5P({Z;(2T z^%g)}KaW2%+BDRo$mt%KV^DsdWO9lq#N2;6^Ac+nFThg9oTu-z0iAa<-^yKzS;r!n z1ujwAlpV5fTRZoMAuLuqf$FF3FnR8AGx!yYs0_>~X0E)}@z$jPPxE5*hsaecdLHXq zo}jsY@S(BqRs6-ipD%@KKK5rT)~j!sEgyGRez*dm&rf`!`8`jTr7Ah@4zfY}pW*`r z!{v^`!x~^aj>~Zd$yRFbQt<;l`!qDF2|dYw;f%F!Kpm(ekJ#nk&OP$Aj{b6Q_3Jd% zh}#qL-ohHez%vc&Wb4}CX&fQ8^x63u6XK8VC`Ra0tfN4S#2VfkD+Q%K&@#&u@|5N$ z*C6U*D0d!%@P_gD91|Q2!#Kctn`ZCMrbXjSG}2(&tRcdcq#yTP%lb8_VpKh|vwE*z z<&yKOlMO+@gxg&_=|7Z6=u+92)9e54M&(LEUYL6%w3zTlTGbJ$6VYgh=4^<|c-5#m za(n%9=5*xqK;CpHSDe1$QYsG!h#L^!VAKoSWq!w*yXmfk>s8jSfLXwmOsDI}Gr1Bb z3sM^$_ck8VmD)I<8g4ac1Jka;p0;7`cxIn+y?EiCwc3N7qyN_%A~;x(rQ}GkkWuY*?-iMB3vd)(4V&Lkp-@<8 z?T#q%b;V0mgXR*^nR&QiYHSi5z-E9YRp zo9ae2{v30HEE-X(=FZdW3e#rar?O)>h+5vVXX{a7Rk-7yEXv6!U-+@bdRH?FX@F2Ve>cm#(5yQ%P1{+g35~Z7=n1JA=E*G{x#m5xMaYG(r{;v4 zl~zxTpnBbJ9qR1IOF9(M?CRT{)0xK0sU=&5%N9XOjgP6FY0=^1S)Cp{=?udGRbPb+ zuixm%1Qnu9_qkQfam~s%2{32{TTC5ksI{akd4-x@kir!?+N*udJfx+YP(fywL3kBO zl7oIHGjva6k1KRN6;l^vf1=ZGBzL*)$kCu$C&n7-Y+aA|f!1?4^g6m&MJ|IgrqGJn zzh@51IHhSvkt+IH-8$g5)YoH|gV+0(2;1kv(jY$apNC6cef$Zh>{RKh%D*2wWoEcy zCtYcl>9z9NR_7lUqBT=1m{|?}aGiLc#D^Y7GoZnsy-W1NhG*TEGtGC0iY(x*aP#6w ztBL5hzN@`&d~H#X6W4B!n&5Q&Q}SQugO$%_3Azv;yOUTYiC3gNy=DUuFDI1M+TTAM z)sY^ZaIf0o$Sk$?Kux6MAMW&>#~&;Vh|HEfMJur#`GL`zF)LWQ+tO6PuK>9?j(lPX z$%Ofn1EWRnL&r=F=Z?%f?}61mEfe^ZtB4y?KX-({K}BrA0~LTx?r3dPU`hs8$vu&w z_0ow)6a0L3eT9H@ToE+;rj}{u0>a+zyCTjcyC|9q?%fK1_Eo zeY&RlD6!cG`Aq)d_x#D7i@i<}q8;y2=~epY)?@v0 zJ{Bh~7idRlpCI_<{FRGz=l$dd!!CLDQE*8~QF$t`N}eU4_wUlwIN=XoB@hStb=T)0+<9D2}JtfFp-Cpf(KF`Vq%;s%#?^kCJf1u&ENT*s|;~gZtt1A9e50h~_(MMCfO< zXN7h53FH5+xc;icMA$x*`~^aJ|`sK%6>~#>j0-H6`WNvCJ_eI6Faoh4I3vO28D48R3lx zF4w`2xh*QY)}*!_%PqVj$)L6jCzlNC{Mz7PMN#B3POC3(=!5B-BQcPjM zs;hhGb801qclHV|Qf%na-8wv}4S5*{kK+RaDQ2M32gJ8A5e+a?a%VIQ3qCpxUSGSOnI#i+;8@UdDl%9m&`cT9= zx3@P@D?cDeh)yxEHQ=-a=xvPt#bMMhZXuy$Ym#{5RPifb4S>nK#QqRld1!KXG-dFN z8~z(KVZE>gS51mpSp^=15N9b=aT3Ihd80D0J?s-5dfant>_PzF$ic zUn^Ep3kV8d?Wtma0U5d0>11u6b{|Zi$0P&(*&yU{qYG6wr#xz)7zgSW&98VXq>ew5+2hRoOF$ILS-IvXQq%)d{pMgj+rA zKp9h!e?!Cp3dmxR*z+r@%|RbPHru_4bWkHWA;!P+-g<`KU3>fbrqsv0GPJt6HqGI| z(x_V0#$Ues-ng;NTk$j8fFG|>s>N|w)5?_t1peE=8iYFidv1kHlcN6hR<2C5J{Nb5 z;)iggzGRy>I}~OX&1g%>Pr1(*u87szzCUXG4)vh6nER58LLsn1GM=}80np0OmG_#D z-D6Wi63$N3{jj8dUUUfqIGSyU27A-G*-I3&)*}s6f-`BE!o8gKUmC6)zs!LjVyOpr@j%SV zhDO$rO7mF%_Xw!6HSi%xadK!dT;>rLh(UlyY>z!d8<%62yDCZVWzJ#D9SO&(LIoP$ z*}k2um2SyNlwyUQR&d%xB7@$P~_H*ZzKPTM+YmYrHVTlG&do8?@6BEmq9>(6BOk@_G|y9h_pO(;peShJ zi8H=fegzpXKe1xHeA0uGto0~~I$^_zKrp3|!RjJ%UcnIF56xKzVSm}ayK{{~F=6wu zvIxMEl>JN@7M(O&0|0eef9?)V@}|)&p^MabNV0eJL96Zt=^5wf^Ly$SEJGjfY(8-- z_tyG`+U&R``sjVOeTU1!Bmm9{f^CW>j+Br&6!%lh!m$M(Bh|0fm#^es*yFk7_FU@P zV^8j7CHncl)_+zw00i0<#?tG`yFJ>#`38#rQY?dExwbf5wYGu|ma|dtKkaYrn4Z_A z-IZ_gaLh~SQ%>H96sMaNL;YnKVX_(<3hm0>CR|-*MS0M_F@-`+qSvT1HT5i*w8PJ= zHN#H=IvvqiE_96$0WtXY_r=UyE;gHMBF zbn%H-8E67Jy#+##SucG}b&Aa#^H%#3bMb62kHVLh#>vJtPQ)Pu)#QI!FL;^59|~Hu ziAe%a+k5(8Geq+o$M^3%CDEG}UoaQfeovpnrk^^?zbNMhI7AjTdgMr^Nw}rS3Ig(Y zdRO;u_ya{)B0i2O96N}axCM{phH)-B$Wyj$7e{Bj8AYe~uv@zxSRurBUq*a|PWKV} z;r9uQAGR8@*HGo8wZGB9NUd?Ud+ui|&&_?<%F214Ec6T_72reJdzX!SQPiH`F&JObDV-CIsuYA!M49CJ@r+K^q~NZvs?A>W1TwJ&vj+&3tl z3!65^Nb}?e&emAjD#gm+8G|*<LeZQ2Yy3d`1&zSDFavl01*j6p2|fPE&r4?hUQe6F+=M6F>63dV~tgF{hlsl z%Qt9{Z)`wBIh}EnQ;iEVP}-yr;*ny|r-#B$qJMGc9Pp6b&{e~RsrVw(Z5LVJXGlVn zAnTU`p|j?IyqM>G_ZB&|`Mg%ne~~BR(E}&mGkYx2kx_eu_A~bO0(lR59n@cKl?B4v zY>3L2bQDztu%}f=$#^?Zf3HpK>I{c21@eF!V6_z{+KLSg+pD|%n#0LfbW(`Bqs5lc z;VU~M#|MKP@My7Djmh?Xuy?pF-Urk3bkX9axO7{uZSqM{YOr+(EneydTQ6tV9JPZ439oY)E()^p5EVmH7L_Sgvy4nby#Yn^9k0FDB;pn36Ma?w)7kGJv-rTNy!z>4Wg39cM+|I6jq$GW z|4SE9$M@F0JL6Qq4Df=YrIHTqzPRGPxQzA-`UcezVSfF7Gfo>4xIMB8AW$i3BYeV$YBDLpG%yGDw+RRjQ#abc&uHH9e|Ng- zmvXs2v$VU(0Fkhq0r$7v{z$>XX9*xH+*bpOsE@}Bk*tAUSIfxBl8+Oc7+j6hyDP(` zD^?F%9{{+F$CcV&=&H4W#=b92ghtp#86lj2g(+DqFGiS+>sIs|Tm%R`(TAu@q}S5T zm^hQD>MK#pNIADls&~1~8|0>0TGgqUu>hCBrv+Ws&H4)j^D_hx^Oy zN-F-WEc~0Mi)+(}SW@{?Q1FN#aNQDy`C`z2E1N0yWw3%_@Z4^cB6;RH{k;o`QXtKl zp0DG-U}A!_V6(u*{W1s>f+rFClo!eG1O|uLMHaBG7QtjOm)d_TeoJ7z@)nTY1V>$Tp(9we} zjo1x8vhOKKS4&%H@xgWb~NkfmjSieV9Oiym{0Pig*(l_QLS^6KS-m z+0?UN*paVv9<(?Cq&<_$_Ng$}++bGFxF`2b?4%w2qiKUuV647+V~iLZg5pgRc3_GH zB2+K;*hhQ8H4||j9qDTqn(*iH$S^pegN1a!c76~v&MEx^TJQAMDf3Ei9mrgzJ!2ft z^JzK(ix`*%e&V6^mtOk1P^F?|sdmgwZ;InULt*V<=|Yw@NNvmQN~=5nj59LTc!oms zM{LqQpnH@Z#Yjbaw=pAusMu9UH6^>2!K-phUku`k{vP&v_^BPz=v6f0N~_66gM=um zq*f*!;{Mc;VtijqP3z9w)7%Y_r-^p=d5Vd+AmAtVHH1W}oSldEEvp0bj*NVRyGy{A zXNHPm8P}2Q-#v{z2sTGer&o1rQH3}e7BbLL(0D1?u7BI?8&=c=)wFk=3WJ=86C z*Vh`jaCa|jt+OVmbSC+22#&b9d?p^|1*?j~z0MGHI(v-V8+jD%jDaFkEEJ&&w-hDYC@%Wn4yA^7Byyd*EcJFZ=<2NWSuyJibQOHG*K^^O<(W_8`|uEc zyc@mgB3-p^$SF}j_81TBO=%JU9RuN2&ny4C{?DrOGBrF_=GvqHQk6juz&(7X<0dqLceh97g>QWdu=@QZqB1-r(*!P*_jTKk!nLTd~7L$^s;niBDd z$a{l;aU2@Q>N{wL>vTt7Ryp=8pgP~4RPi@hbz)sq(+%7y#5;sDfL zdf?IE1c<|a!#&C>N*qPuQ_ALILF#>@pW5cM389Ghu`VgUI}T&elac-!13odE?uc5{ zdOhb%#`b#$>7rWoC4*w6zl=4f>~|syv`s@v5oUb>s=1mWF+Nb1&?|{T`+Kot5;s!3 zY)c@eu(1ACoKTRXt2U$z;+f#&=8#yLqGSGY0oF35^CLy>2^}{%h+T6^s!;isONL^` zItlyA_E|085Etjsr$qy73ass^qE^reiCuL^G>D6Q^h83hWwshYJqqvAf!fuchG+Co zPzM|MQ4}}&r$|!Se?d*{za(XVVO-`0ptXb0zpZWeto;xODNP6 zR$hF7H`^M;RHcd?=}?=Iwz!}-k|+tGtFj8ajKaqBn)#w!WUWq6EL4NvZ=jo)L62ix zE3oUn^^Mn}V{U=w{=PZkITU&7da3X`8^PDe)ssbKJ4$j%*P?TgdVib4=z9@s zr^`I@|#r}+wY8=fy72R0k^D)rP4vW*N-XqH;H=9zBWN4-}_GVGb%)Y4} zBJ&I$x7I7Y!iIUnLO|zFN~I(oJkbnNvNSGy#kOrnomGLB{`8~*wG4?1YOGVxw2uoz z@bCk9v-s)0*+SRm|GawT|IhZxX)XJSTy??*{%Eu&j%CFm=N;oGh{Uo<&di|m->`GF z`_xfby)HKGdZXhe&SQU*ICt2u!KGoTO__%tgDOVG!(xoLE%&<3GYkNi%d9cWe)&?z|>Z>VXUg zIYX+pcR7O*Fz(UtI%j`#u0bJ5K%(T$2d>!*CXBW&y zdW($uqDl`=57rBG93{g z7S@7Huc8+^Laf8I$tVVtR?2pq(qgrzM*3!?-QEEg^b$a^Zi zIs1_2?!alNjAsLWrwqx>H`UsSkO+vs2n`1uCz81ZzeEoG9m zr52#KleVvNm{7i3`<~bgb5?}^$XB~5JIXV_Wm?g!@(S3IDQ)`MxaH#rCfCY*KO3If zh|6P*Nj<5i1!9q`_OAmFv|`Blo}d<&hr+1#8BQ5uyLf>ZzqvwKcJ$r&Rhbs%ZR44A zYj^4!b{Y;w#5iz`h{?DU?b7yWtmb$_tkcQeUPRP0TUg&;bk>(zyrl`p(PGYexL%pq zW_nbj9$ge7RYZ8lNky(}3t?Lyant`j{jp-Skfu#ybHq@b4pu`nz!D}Fy@Ue0Ex}+j z;ogQDL}m3Q9TZE(b6wh+ zW+K2gz4^>w91$nPJYPKkY~2?pMe$-#^*^~CI+P>WGZ?xJ$r;LER!hl+U|=;MS82s& z@V3)lwN zRB4q!rDRWenVE{eA^$WdvevoZeF`Y2zJ)RZ+%htTR5)sxUbAxP7gJL zj_t>^0{&|Z((JNd+h}6Iu22)USUrL?PorG?{@SgD5V5s43{JPI?g_Wz?8g-MOq5o8~75S)<)ue98;e0o=cI=4Uoo%OAZ zxBiKhK*t&i|8`RwJtL`DD7m}>8Kf+z1oQ!vQX}QT^-vlThU z*vI5tXaeU7plveuYY3a7*97UmKYw#g7GR?_AEHFfGaxeCxf-GS?>B<^jcuFhQM*Rm z;$npSlQ`z`8i3QHb?w@lrQF%>gKlQ``C8r4pvZ??t{-J27?QoT3}qy<-mBjq_K2#O zXPD8eNR*r=vnkk*gX`+^+*! zy%eYeMMV#8wUnC%R!NAptd?->@P{~u1A#ewIc1(R`fiSr9NRS#^b(?=r5ZwaG3jyV zmFL^=K@t3gL%tj=cfrcVIhKV@cY|#8hwik|ZSoF!7XQoD zkj^v&4-(=a@h=(!1UX1m(6E9RSFBC{jHR=>!moygTdIMsBJNq!br>~$CzL0eZ4KKW z3ZUigsKlTa{U!SY=h09pfoFVamxP=1neu*J@i&nWT$$jyxr}NARwm(U!RFvETe;I^YtidQi71&wZ&c zV;eUlany6#@C#AzV8KbI3kzXfkv*FP?bIUssRLagyZf|Ewz1{fo5Yq>-#A})y; zLm1r)bJ_;L#85eicBLJQ000aG0iNk}S6)t^*Wfwj6x#Bc%MpvV(v;Ht4%fD$N@alm zSkR72XIF7`bnT0gL%6jZ!V;g6{p5>k&pxE`?0Z4}1i6NRq1*E=gUu>3Ks25*ZK(gC zXW>(+@U9d%r(|oViehUCE)`FJ%tmZj*^uZ0IWBTSb~zF$9X;%Ol_#Dxxn$8ZLu?tfTG67Z7uH|}<99{hdsiLVDups}} z+xpboXojsHZM4c_uN^X|T}>;<yk$s zSSpX0S{USGiqaq=G!ZN~l; zbH`GU+eKc}nY(s~CKfzeGmY>ES7#UmMhgS47xdxDZS2a}grF*jSYK3*y9kqe<6-FQ zeD$~K-a>j*axJCe-_~fq#=YSj*0eLD7b0mj|l}zL}GIc zqt`lp^(c_7CB+l%Ald56GIK}$@$OS-Koj-DXrUc>P~<396|ul-$jjKm@Mu}`ht=Gt;iit^ek5)k{(uRJk!v{V;1Bm$(Kfc0gW*HPW7-u@ z-~ykV^uiTqzmt%5hnq>X&8SedvKN^!Qu7mZ@!BKTRnah&*P2$q=9zO-*FyLz{Vwhs(9ZdB zlcqjboP_!TD8B`oIS>YQ{za zfWz2jRFDXYh%6lhYCM;wFHMS}FNpyi_yYv1mglHo`cBe9B3k_x(U=q%Y){=plgpZc z^6Ecq@8P{LiuB{$xM_5EOH+K0zdbBosRpNr)TwJhB9yVbb4?Aq?at#gs9cH~fC$43 ztUJ(-601Iho~ywMQ?MmSo^Iq_|oGNXW~&wv}4aM@lA6(04cl zk{dIcxu^za`)PcCxRkaM{s~Z7&Nxu0A)8J6rgbsy7-^ZsP>5&Rmb?cyiEnSqx=>RN z#KhMeUV1^UtD7Uf@&i`pb!Pi)vl%WKUQe(e(+u@bnm@0ZzVz+Diby{?tx#v@50j8| zbz=<=%7)yL?m?kGv!0w=>xFM~f}7t2az;KCI!MJiBx;kJ$&0?Ch^#n8`e)Yj5o_Gz zj!NJ7rxZ(o3ku>-#F`IfeLp(*4t})-=wZ0Ysg~gr03EV%WvX1r^m{@_E34#}`YM>S zF500-gw48SQ|U_B+%de$@0Ld;e;+t;Q$P%vU(J+iKh|FpdI<7dd!ojH=rOV|PC8v6 zi3kGqvT+h77rR6+VO`{XLtR%@7*11X_uO|+;^v}&cjWdFLrwTJ4cK6c8|yoNEJ)(? zJXoKS)(Ar9k=K+X^;2@6TdDRdh`9OOtcdpvrLUX&_$Hvz25iGR*$Wz#^%(awnnqNf zl6)NLiA2ayZC_2p)~QL<8pob_v?Wdo_lV9Nowm5)-zCNSIhXnqJJsy5i`LH zTV-xJJtrJ(n&143VSq?Z6n{#f~fwm_*k+z=z`gOLgs_f+U`G@jp20f z0?kN3hLh*>+Mt~5o&W`ELk@LsCr$s8PVb2yByh%zzw4f@3(^*(JBE zvVCj&GdU)rY+m;ku*GjJ0L{CMT;&l$@lZbI1Sh_Rowi%z(y$1Z*2^pWCFBKrFguy? z{8M--jTrs>;*IuSttr^ebMp7gv4O#qgmaFnYl}1?)N8z}LDBuXSIta8k-wsydv)p_ zKu<@I;goWE60*p27XhXs-m7wVugZ(+O0cei9OoQ*$G+(!2x`LUT9nTNgZW9c{D)b+ z#Y6s+7ji{R`@U*t&G-&(^@iX6iHRKjTd^tiRnAhpWb1_=)8Z|jfRiqN6O==3f@R}r z?mUZhO07BokK0w;=BW%z)!{%w1jCv-(yqs@(bKX|Ro;y&Q6?>O|G)SaZ2AzKZV>_U z(P3K5YrlYYEQ9U9Nd5mQNtfHqnfuzFh^eB`w3Za6xWHdw;o6CwWidpc=ahzECqa0W zCaUII?!`a3m0$2KkIeTRPLOm<`13gm|Ebg5r4QL(@<>er&aUS|u4Gn+)GZo6f3!!F z^HGN2rX8@TAL8iuefUet@>fTQ8zu+!M9mDw*l`TVi_LAc@prG~N_h0l0r0sTIC?4i z!3MGI5gpow{VC}5MJ~c=p%`(=-Y&Q(o@sw4>2i6Hx0X-si;_$~eT4Biwh_&Vili;r zwK00TF_`;KgKQACxWp{(_VFGjP`Qo$!F=Rn*LN_6o(F|pGb#kl-sVm$EN8?@=4xV= zMM+@TYL}I{a2`AA9#ym0p)GTR-t?e5#TJ=qKN7!3)aX!=fFk0XJm0xH3hnZ|YnMBB z!*tpvyQ%swPbn3%@#Jq7`eJ9E|1&zpcMoj9w-*d|wKG58G+H_mn5 zB6*J&OBb9L&t)C28Gj|N1bDK|N$6LJ_XI^^>GTyPvmG_r*)bG5!&%#lc-BDltuIy| z{X(q_NX6|YKT0orSExHB-hv4%GJ`~dpH^;-weZkA5(uSnb>e7EbQt6$E~cv9&FkEc z@`>?SYMU+2t&#*Cl*(n`Bt|KOM9Kcg;+`RlN z5PM~hlJDQ!Dp_Cw*Qz5gVrggkaYo;5_k2I*@gKnky)StSs?y zpGR+Mu<_u*r_oJLCr$TPH3L_jL1TF!igXC#EEz^6g5}VL_$nmPoP}DbX z;p%yT^S-_WwsrLDGq6m6nSz+~R+^HSOJBq^{LXoy<^rJgV=6oY;NMCjqZeDVsyjgU zml%0>i=>bMNJfd-KF`W{ORZh9>#iEReZHwfmE2B4z2AN4D05sF-eqR1st-tS#RK)4 zAYJjj097)Q^S_g!J@C=*NGQ#Po&>oI3iR0hKnipI4W3>@HY5PcTT+_NR&{!Ed>=_G z^Yf3MO)9s}l@p`pUDhQZ!Gh7GuGBIBLs6wqCg*4AwjxSdsiuJ7Ho!yOT=pu?(?C(-Z+8mGpRuVDwTa50X1P_fXHoKG# zhRz+_nV3Xb1zpcqt=__-5qqFI|GVl8LivcKG!7V%gQZ0RT%dp1jTSa9CDeK7%L)oK zT{c0<*dws+6JP1-KI(pQDmEOp+$JA?)Ov;N000MQ0iNq>SGIv6jfNln%l(OEz;gbhD@yQTAV6dbVifml z_z~5?LU4-rCoVpjZaEw^rz#)ebz+e@*6b~nEGs!Z$(kqWK=|Du%k7TxBs7!s^)pz} zYTQXMDsb+>sb6{$z0)7{&$OP-sWVb&MnZDQ9w%gV0W){ydjm^LErt>A<_QGqj8W(W zA`7)i5@M%!5=#55A3Ti8{A0hIe1QwF*WKo`^j@sP@1h_!b_$@P!T#jNlA+eX2I zZ|*t@d9IGQC~x{XVmqjK6vb`LnZ0-v<;hUX&3t0IlGfSiXdnB}@~d0oMGM6-OrkF09}-2_aW;mxM)Y z=pynx=xujeH{k zdVJPG5y^#*y2?CQY9U&hPdd+9LHKOar{S5W)3D8%>c(WViU9u}(7*tuVv(Q4+5V1> zTP+yS#2c$nfejFpioZLYSG8wV4g4XC_w4I(I5k(YeK4(8|7&Y=9kL@u`vgKZinYxj zt82RQ2u^y8Im~!Y%zR2qouU&B_UVbt}IlP#u-rAJE*7! zYh(rphu|>V8(S?k%$ozC(_I*+PK|6duxgy_!oVF-0Xo{dGRi|uzBr&5=y>Ye#X|vB zDf+BOec#Gd{D5`|E;4d>gV|`l(0To|aK{$VKLploea~M~k|0W;jKhhYmeHYn)uo&2 zACq`ramdIODr`^U9EZCj14WcN>^fW>C$NJphhjQQ4fD9`C^$g}U$@Cw*dK)YEjVTO zUuR45i^v(!LGuXP(ax)BwI6!_g~|sAn zP$BpW80J%vDUC!TMFm&XJek|W&aSG^_0B!AfCI;fpqK-4H9Hcs-rgwc3#F2n$M9E<;3``xV?kSdj!n zl9C&A46QDX3(ylnbPsg^ozY;j>c${~#@GG^X$_wzG9m8VaIqkVE2Pdt4juV$k*l~m zucNd?#N-S+F)1wA@ivs%QVtj1!_wWs>#@WQfEkU&%sJ5ztd z7}03!#Vn`g5!8&(mxNqw)WEAv_Q(% zP10enoIt$Wjz&BS>5D{uP%mBK(iCQ6WIOWjt5DI8Pb82*RTwjm?OrZ)HmSRLxFq-9 zlmmCF^{pb#Sb>nOsa!-vj*h|#V4t&}HB~tZJmLJ9i=3{wCL#7#c*5(^U0Zw&nRwwZ zqRYzkLqKuqE*CRDQ1thi`=E)hzPID(B`J*EU`ef3CF*toDh%?UIEKYP2!bgmiQiu;zaofvuTH+di1Flv1o<9Km2 zcT_-x#07`duNcLK34MJtqO>{{|8h3$XN)}?>atDl*(Nz{mlNwN>(gZlLy&@HLhE6i zL!_D8`5tLVi>sA(OH~)HdVUK#3C#Jqv0H+2J4r#!T@9yS+ON$7Z_kaRVki?%i&@;d zJ;$c{wunQs^Af~72Z|+&>e*rJhAY9Ucx9|sM!qOBAlV2&SG+<-^UzTJfRsz4moXaXvAO0a8ri9VmyUN(*C1U#wbsyTO!M7Tk=&Y(c6ds30E# zD`A-S66uxfJRqP7*_X|;IKouuJJT{O8TS+pmg)-)d&IRkLfXiv0=Wg3hIP_Y`LI72 z?*m$IJ;~COmHOw&wXO@9%T&e*@BBm3_n2BbL>#OXaA3HN7n2yAOG}ebsYpFLRd!Q6 zxzsk`001t>L7MPMs6lL*Obh=zb2CTguI!xT>VvHG-yfcX540(bXwR$(IOms$8HJb6sh~6e-U( znTzs>E3|p|Aioe2NS<+}IR?TOeQ_D=XLW^d?088Pu*`-a#Zi#raNvW5uT}+EVZKSQ ze9xo`rCyu6kcDm$QQC_;t>667>ojKYN zc9Zob8D|JD`tcAjfEa$a2rT4xwK)OzYU+PSEJD6Co^_p%fvnCw=yimFZM>8bUm+QZ;`8iLLbZbl?e1 zOpfjGVz3`>Gb9TSSWBe4Pvflc^%lJceQ~olhuXSqbVS4*lCPN|?XO?BPhE&z1va(QF?DT*$^09HsiJJc4TJ9aQ8TdgB>U@7)8o(0_3m7SCfX7?B~# zEO*V&CB0LT5CKo~RfFc#{GFZ&P1x;VLM%fh0mXk~3<*-Lp>ziZAq}it==_OBjsmJFNwZ@+z!lL`~~I8HeR2j~5#kW0r;oSkzO8)*IKCd~-IuyAeOOZa2v;AMxK} ztW1$vFx_8$W`w)xQu6?DL&$L(ctHg8_Qdhh;|L&OBt>Y$G8Cz)FaBKA{G6XCt~&xz zJvH*E=n|$v4Ml<=PR!z)W{6<5<~bQ*SEfGTL-j2=T%L6E$qca_HMBz-r(RiLe)svO`j~rgnZ00tYlc$^Au8gQRi19o$u;wD+`3Ez=!2I> z&{X;dY5#HB;Cm_$+DT=ZfHn>pLYya?Cf}N@`4@4sd>~~m0Y21qrG;-}CcYrP9PwrZ z8x6X~wpsKm$J2CRu5ahnHN~WsB5s*l7tywnZ!`E8G!`dM54rd=?IpCtDvOuK8Stuu zyhZuWF$56EjcLi?Qw|*E?~1xYS=9)nSZYhhuK)2>tj-ct9-{cv!x`v;!CR=g z?tgiYTbC*PoZt3Jc3W_VPL=cQf06cu{iSDOH%a$R`1NJ!IyY(uAx3i1TuPs=5g3X` z9bfri5ch^T*zubB=M{z^Ev+-H$g6KQB+U70EAVY0h&3@o1?Aq}fsEB=m~p<^ELtVd z|4GU*l@Yt}XV+$Cb1cD2RoC24l2HR`=)&&^#2A$hhdoNHanPgU0xGb-Vl!l@M-EOu zDTlybduCPuLIbu4tHb_A;=haUi!5e(?Q5$?%Ju8+#8LBE@+k3(eLB*$(6U$@HvI4K zHVf#o0%)?lGpK*gn>Y}gtk?DL5FrXRucp61(gHQJ-C){+{Z}K{ggKAGZa-w;3_v{gaIL39D9wgiat!IJxfmEfEMWas8^Kd#fwaHs4Mhv$M$vXw>?Z%+? z%-W~;UQ{vuHs!r?b>=p;@q&)LT3NA?`z-f9EbyAeaSEdq8W7bvRt+tQPm_Bw9^Q8- z4D)gLmf=x`ZZNB%(ANJScDMT9y%%gW-iNhear9>r_h#7q=%ZP{z^9t6N4fIq(k4Xq zdl89j!F7smt5>)y;MU~QYSvH;*ZZPIG@Cy^GYW?C)LJSl7DA;5&pV-e`mAW(Y7TG& zD5WKZmnBq#FzqckiL)6A35zzo&qEP>)PwP;)4f1OJ)Q^Il55s=d7p(p{RZVJ>|9gD zqI$i2@zerX_gF^5qk$wwx=@y@j!ANvBJz={Fgj-(kMM!pn6~h_Y1B>r&mpht_&J^*mqRa!3i{f=-GY}FYZ*ZcE+;_q` zPGF`7!bIc*LNG<0v2L50`-F$iuDqmfZ428KuCSW9+y>O?N$<{wJlTY73+a3VQ`qW&ZAQ&!BB zDWMLn^k!5D(O2VD1O2~|Fe7hh`WTtpa!^zF;HkmB*{tJKxk?|w$`17+W8$m{x@rjXtyF+WfR~?S z(90x<+Q0jHr%`YWvnKirkYg539V5Wk@jvIRppeeLFOlFQHh=wzt9U*Cyh1ETSL%HF z=cDU;Mi}-=H_pVp$M-8KDd;N?lx@Zt6esrTWPj&eU z{UD+-l?Vtp?qGpHo&MgB3GWkzTM!=k@?j4>lzkumLy9O&4v}JW+dl;ZUi|}jnlJnQ z1!vqZq(|>1*EkPBaHhDN@cO?g-h*R5Q}Mc@^{`a>0EVl-C`}{MAxfO@7(|l&YIzdz zGrm$sQq-#LTY-F2R8y@v(&eu)COOZ3JswCUwMVKfs*_oOArOqhzhpyJ{H*rPW#23! z0Ez&mMA1p9j8%7EQ_6`7ZrF2yVwJn=H7t;-5t!GQomR`xysK4;M0Wi=Z3Gi<1Sva675FH`I2>4$rA@^dS&t*;t?e9rx$+!6hv`2- zVk#>Ha!vf(c#L8}_Dxoey3~AiSDGqWTAPif2$8O)DOvhZaSqA;I%5=BweJl%d(dW{T>Ft2z5j~pHyqn#V9Kc$@I?@xy zuKVRa>Cle0Cq{P%Kbw>twwR{v&imzHG%iJlO_s9QhL1aBWik+`M2ms zrh6}7ZiE}6Ws3Wd2cVMTFAl#VR6QWsrA4NNQQQf zJVysP3x}qv_8xasr{F2%QB9&=(b>j?vxsKfSs_FhfB=$0$(|=Rky=%*$5^pIxv;r( zSV-@7h<*EwV48;gfh*%+VFFpT?70Rb8$`@W$HT-u)(k1vm|Ns+GOea4sIu0$TQAx9 zakn+Ruo=F6fmS1;d^u^?dd8P3b1C_CJVgsdQGQ1jUsOZqmr?_shpl`708Shb6aw(m9_ zZMB_8SG!S2cE~sxDbGNtZs@3~g##4&PS$lH9xA%h)q4v1Wd%Yx=nQ&cvc63EO0!;f zG!})Ms%OHaF0#0139L-{er_ip6&{5l9bItT8ej5ajj`TujSrm>wJr zfIY1#(q6(lOYQ|I$EvKE{Jjy6j&wqnft*6O$ewmkgA&4T4W1EmbhEndV zjL-YYlKcc}cB-)%{Y;CZ4u>^<(E?0zly#t) z?|oSN>!ZKar+$&cIG}_Bhmb?K+;0_H_M{c5>wvY5D30Ya|9r~ZOeQIm&h~yQ8t{#aE57zAAK(I>P9L!C;yITJ&W#V z0sY5XrPJd=Xm(-_90YG(YZ#6pWm?AyIUSFyzfY?xFDW-f+yN@f=Ei}4RUysFlkx+~*$S18$Y2*ezvKuSqZ({WyA>b(*;ELa<)D)kYIN zHs%YN2Ly0$7ClO6EA=EE@4F_SZ(!)q-xbK|f#>LzI1F|NbF&u+hitlmiWRB27zTZ= zq*3BI0^y%`G2YdYhM!x4pBBvdVJjcoA>%1eK=GPGhBJtUAalD04S&`{Nc5aT2h)fLndk52rOPfW!??p z2A6PKP?|{slRT_sOrja=ix~{85Dro5BC*+sSt~@A`bjBCT0Elsw&Gr@k4I-s8hiLQ z^$mPM6jdU&?;jbJ`Tj=yOxSE^c_GT7BJh5O-$bn_C}B>Tq1ulj2*mRxl~&x*H;fmL z5W~wifTRmW7K^1r*i^+^vMFDOEEpFmJYW!_emFJ`vsk;^l2kcWgA5TzvIstw`6%7+ z{LWQ^tzCisTVIE$pWweG&->*kx(}ggS_~^u?u0$NT(1@vC-<+*0 z&JEm0is5G8Jz11obywfI8wZa)dAf76zid0{RBZ*{6PyWW6&;1w5}Q|&;!8A(GX{sq z)T)pp89Uh4BOuQk!fzoEfOP51BzmMR*Gu3qp~daHRE;idQ#0dY8hIFn+8$@oUX7Jx zGZk}AwUPO8;;@n)*IL^D$XJnWb)ed+XQ^Fy?i_$D!c$@qV7l#HIwUoFzjZiq`fohQ zmY3nS?>muL1&y`Z^#icomKG7YU5k}Ju%8U(iHfk>r(~0tjoQ}80&ZttfP47k(1LXvbuif*&Sg3z@ABz;hTv0gw!mqyTjT<_;kb$$acw zbT94FU6?U4$_fgTvTU4JZDE#e;iCvQ;C`}GyLl#*v_DOLrv+1^`_nnfh5i!}I<)%~ zmM!JMMY*xQ5BFXyvo^uM+JFD&i;7_5l7ARTR}T2@R3aSu)>Y~6tp+7{_CYSw?1ze%LWxc@+8hO8R6X>buda@y-W6YPpKT+X$;h326rGEF zqaa}Ss@fw7YDKQ)OSvCbD|^5IY3EYRxL&>BPa(-t1a9}uf3}x2NRz9ii`4-*{k$%H zPrWv0-%|6Wq=AbD=jI3;pS8n=DsV_JxPcELEAC-`{rW3v>&P{*WSHRv0-kW<-^Xd- zChpX}_Cb?Y;8hqCV20_* zM`=zBF_S>vMB0pBT2~eK4{HMxO51RqPvk_Nc5;3WM4B$g+w3xksX$Ju&=*~<^t(NP z%^s{32(#)mAJz|OZLbVM4E7KVQhF0CW3j;E=Sewga}1OLxMdTCOo(9SNI$I<9SF*Ij_v+95FuV zRg4E(OMr31Wqll6;lH`|cQ`ezlyrpI6+pUg!nnrEH(Syov@m9W+SBl#G<-IkkdT9y zPCNVkKL|s^MfcpW;ARsf2BZZH83T5Sk-^xQih0J9d$|X~y8^8!n)ZI=QT*hJD=SY6 z9E=-~V&l0GbW1@wImmZB!!9)5Lh0dB895yO#l4J@{l}~#>y@sx0EnCHb>wV=A5H+{ zK|=*?@4H&Kw1Y7!FWw8M0%C!Ubm%E#NRasM>cuwW{e8*-|HssTMdZo$eqo^aW;Y$i zm^lydf+UOLw|tQ%+ydsd!!CG7*Gfu}nR1)}z`z>#<03NLlu%R@b{fn_Z6sK*n!H`C z*M|es5`u>S9tQwfeAJCtFd^)orcVgAp>?ArtDZ@0kbL0QI8;I2%7J$31nd*W9(+;2 z+4_)V_qpZCQUTjmSdN1C;}4{&oBn#?*B!IJAOE);iU8p`sl9AziJI(i3LR8De&kwir|HPF*LT#)d36yc)c+B z`8(XwQ|5~`!eoA8)~5cBj>>dc5ol;?%2KdD1{Hr4MY3MJp*tE>ca*2Z7Ry$=Fch*v zi5-2}#8X-M-InTaG|oAWtn+|eOn=!aF=-2?g+*`zBxk9A5Kj?+Rqq3xK>Y>~-&Ztz zuw^UiniY}hRG8UPYPT+jZ~k}ETix3+MfgoSSra#L{2wkS`tI)={*Q%pzXq=p_bsEw z!1H;wxGQ&fa=g>gw)$Wl_S2Y z+&>}k7x6@Lt1MXT(Cw&`aqKsB9YL^EU9`4@q>df9W$#QdESd!4o_9oZSsf5tcJaN! zN5txudcCpIK7#MS@phTMOBs7r(qAhT5y1=@-;8@d3Jhjbnln&5tP+K>|2J09*yw)H z_%1Tzb% z431Wuj1qv7Xn{^6Y~O;@HYu8eL7A0VLIxTW?tXbvN1emDHLQR~`4AiW3!cVsy+-$y zm;1B(gfQS5ZY8YBhz#LuLj~!+skE^J1pBCG$@~01v(v<_p9FIzOP=}%KA(<6h=Js} zHStlN)W3g0PyXr~x&+~~6D$*j8Evte#YPW20tz~p|8Kj5si(5qdFlKEoubXF;pv=g zC*?`gp2SbB?Eg2FRj@P%?a&v30rV$~ztZIB#Xojv!DM&qqDE}a>~wa3u%U5Z7(h zY;?$@9vqrX#}HD;=_Y)0Qpfj~P_s3r4oL3BUZz{?$1%0L^W57Pl*n5;aE9!EDQmuM z)cA^&??7I<&3oN3m&}<4iQq5d%4%exG~iXxDX+uP)>Q_DH=*uBS~nIk{-n@zL5l?c z^gm=j^pSa_(!c|&OEJjCd6|Fu>QZyvW#{&PtGJuw07gK$zsc}TU?hU? zOO=V}AUwm9K(Nqw;F4rgi{<=7KJlD7Y59Dwa3T{O16@|-H$IV@R|@sjPv}Dmo~0%pYQ4a!l=Ow z<_phH2eX1I_F)6W@pU_%e?wY!Gb82C=MYVZdye+vsepZTzYk5^EcLC9& z;vtRY&?p+;+WSau4P%~-%-9 z;6r%5JW@oa^HzQvuxIOOdcp^KH%?f_;@k`1u7+x5?Tc+-lFmz2o`sYja?;;@4#2cZ zsK=3kIMeg7sZuB7Ef|^eL6{W51!NyLic~My9(IK>cM#1X>{M~Hu~=Qgdb(&ge+{lT zgm&0 zbMv=@#ZYCL{f8UejKg_4NNR{o2FIE|*-O2XNiKV3|43dzR5X8F|2x7H`u&JU9qej7Xta&{>e{F}dU**sIhI|K!N1peF6S+5-I@><;@AxUj0|ks zPvy-+7U=aQn)R2=b_Tfg7F{tOKuZv*Uj>^N$-&45--y&urs4{s81zo2jh7IPi;(#h?kU* z*R~Yc{sl^V3!Cx)Dh7=WqWv<7V!I^~4inn^kW(t+7lfwrB49BH@MQ;mw!fU1IL{P` z)0t;|HGCjGnvUxLXC?p@S2m-?#7OJmE3DZNnswP?$_un+Fs97dsiTsj3T6mBnT4b< zcz$FgsYEC@y!qUWY(g=`z($_!@~K2ZFNT#Dses6mJkiy#kP18%2j;5 z(d|N=wL1#IFLNRe*$K5BC-^SC6F`2-FJW^Hr^n|f)4&>AFa+QMGiw@`|B9x37wKSn zIIjO(=z}xg{)AvTK1-D4LlFneJjqlRVTfYMM!3GAAs{0*V2P)_UQ_at(N#uJMK$n5 z3iohmuS#p`%gDjr%s`;DO=6Z^n`*14zh4Tmi)=^z+#Dl>xN-ad4J>fYcfFKqNH`Vv z_9Dsy@dAq^nkF=ul>IhN?imE$nnMbiStS=6mvD2v&h39=dIg4ywP$Ix8?)5?o5q8k z=7k>lp%snJ&U?%v0#h!uFpH`LeA(%;NHtTp4zO5#ep1A8Sp5>LuHIx9%RpDbO-oOi zIAu@7e zqQA5MN{cslfG>5?&7=w0FoCHOTBY4HchO4g?gr1hm%p?=!~non2%*_sGn5>J**)a} z!yJEWGHwQ7(RT<6AiWS^Atzc5SIelZ)2~i>S%Ms*xqiqi>Ir#a^#MkvbK5owG``~3 z7KOx!AG#vqkOs4~a0S|RJve1@oSA~a+J8q@&|6A>k8M!q;CaHuwc(j_=XC*#F z``sjfkQ;LjNnB>}{OTeu4&GZ?c4+pFTyT5ou-mgTo=Kco6;^Qlc%~beRsWbLFA)rC z-u@E+1t9P*rD3@_7>V(2M>Yp&BQ`TxMk-4=bpfhaV)8T43FXF@wlSO0FEQpJbE34C z@kiNO+bY2B0(*!`*cP z{U|y8F$yS0DJumdUVOF1{5t(O3SO}#9B9m_?l-Jk(rx*wcz(ZzYdmhlei)HEST8u{ zIp5ei@{?>=W$uI8L^}UZSVZpGBM~${RkLyj=h2ZZd@388!{4 z_#?}gG11EvU6e+PS;tn@nWHdEXx!nb5701HnnkIR^d(|&Y96wIH7)^pY4QNIp*F;@ z|2-@r=;#CYBBVUvj;e2t*wJ2m+%&_FPr;8Xfdd_6P@wIr+Qo? z^>Uf?CE5PYHE&Qgl=0|2F)Y)rKDHQmk}FYPh-*97xD?- z=Gu7LdIuK@m$lnBa1z!lMPXS?`|=V8QaazX)8~VZRTp@b^}60%BXrV}`I*cM1rl=6 zgnVodc#+s(Z>#8nqcMD;4ttOl{afe70iu_jzQTRw7qi$nB+&ehjXy{qnz^a00Cpf^ zCnY2}fU8U4UVq@;<0UqJn8^d49`#9pV zWx(riHxHYkWOSHw-ZF$z>m5*v%I@6Y1Z;L4S0zj1p1>eYO4MMl+gNSsKIRt6Sy_Zs zx-ab?DLx@F2f@!h6HU7YMXGw@g&UGLK{7s!j8-;^JkiG-Ry9ZG4cvlX!sATc=Z%0H zndEr=yeOsZwk65*9lH9t_FlpT*tiIfRqdckD$lx=Q)83F;mlJvTg|{*ES!$1*Cl!# z)B-oPW_uZo9+ouRSXG3v^27B2F)OCK#&er@^UKTdD#sUHNG*todUGEKDgDx27>lv>gC%yun_r6QlY5Y z#jRrR6L0MDX=bU<(G0yjK7*~oP!H|=gFPmb@JzeX@ZuRAWCtQ~!0Y1asq^C+E3p}e zfn1;h+Q5{EhS%E0`h;u$s_7vNWPZ$S%496pOH zq0=bjcDM}gFKC(xx(RtJBqiS*_cmbDUN8^vSF9<>DL<@Bb`5jyZGgI~f;FicnC!4% znh*&;^P{oEthgqI$lcQtU$X>0$7w_pr_H_(Og!1EX=}U&awdmw)RIB)ll88yCVtYi zQI+CholFGKR}oYGf$_OUU4Lm?i}8+h&8!d!hcT*ktzkO6m5o(avX~8b?99!H_(r|~ zJVBG$yWn(@&#X{dD+(B<3p_it^u5st3k4(iF|QtL3sO)z^Tm%;@AzWw828(To6|F& zlVnyrcGF9ZCjiA^Kn*iJlt>mv9pOVs^88i9_4e9D0;+(UAto#|usU5|j%Gac{3~Xg zsQyu_keB`zH)$($G$5Z65YN-QFYHzg%`iTVPTNOQNMCO9-!7cYGsDed<_ror>$bfc zz*-JkH7&Jo$fOupV_cY2nw6DV-mzw~dA4DVxr;%|ci6(vF-=s5P8v)w#$kxbkr7YU zU=%ZMYfwzHs_fE@-j41`6Iof_CEwt$BHMzIQBKd{G5UI$ zE5PmE(tG1#`-PQb2+o*U3|>Lf_~Jj<)Eq^Vi73o`NkSqUY?9;BOlj}`-ALsAc0lZH zlo33TK>^Lr>UQF164k?DP1JYf84glNj}f8HelAG*KCh0o(-+JS>`&1EuwB#Ez-OI_ zQXQ6g^Fwj3Wr5*omYoSzxeLN1gwOqb+IXb!9)cC*)LYDBv?K^~Mg=Gmu&9>Q4$X%q zD~d}LY(k-;9ko-UkY!1V_qwg@^`Rjj65N>;&DqBIz(kRq4`b|Q`oPZcPFR(P&PeDj zjH{6G~Vg>-jU z;R+jDBg_BjE|{7VsaS;}F6+8{Awms!T(+^U9zHWGR+xH@%I$1XhDE@9M{xlm&fP63 zz@HllzQ%h)Ml{}gW4mtTQSHrZW=A3*3fgMGsE$TK?#hZM9`ahRW`8WT`-TlMWt*3| z8mk5qcYIMpO40Z%Tn|9jL|>)_sPy6(h{kFFlA@mjps-UGw3qiyil$1{GJjprdE4K@ z6l6B8T*(r%$2(P>t84_|>=(d39CY)uU(=*@__#D$U+Rhf47FU4en=w6X&iRLR)^@c zOLxyRfKC53K64e>*(eR6QH?&mzK{7|0jH@B(0QWv4&q2R?26Tvx)`o@SC_OuhuZ^% z=3m^E-Y_@uACFxE&XY~)rcWP&*L7obXd`FSinU>;^=af3h5BJvi7uaP4`K>+$xz){ zhZ^I0xalnfCn>7MSzYyrcTHXoSTy%urwqu6Ti^4p?U)TD}p+p^d zzVX5(R%1MUhN1@zj%I7fDEZ?AszG~=8JqQL{=B_S=4;`kaCim81lpPsl_PqeI2|B0 zn^vU|rY$M##z^PSHD>gz;TD14Os~UpVxJftt8%hI&h^KD=-0IB5=y-}HDG(b1?hhF zq7433A&`OAxlE5yov%F?EV9s*|X@vjdlVf8T(wWS$WNs5)QKFLivu3x?b!VjD*Q4B>WOa!J58 z>V#04m{Qo4X#_x5Z%PM6NQpdDONUIBM&8PJ9|A8qL}ePzt3gdWwigCW;CdUrKLy6d zkAsF_(s;#a1(hlJNA}`HaV3rcIQjNTsW!oJu3?o*4?UU&fzAce+UpTBI03Y(|5wOe zLJgvtoAbz6CBp$p=1oLMDFh0oqDHH>Gi~JtuN1YPz&mf2&2K4J4#-Qxa!dcbkv4zB z=E%&gekEaRq`-L*?4Nm@O6U9A@Vs%a zYQFKJrxk#SKD%*jMYZe-f2-Daqf9Gc7ycz=d2x=|m10?Gb&ai2uo16Bt?TPYa~oz0 z_eW!p%TGgMSe9?FndSHuE}#Kfe9P9C+r@6h!sd^i$kia=$a7b|y5>??42 z2TJmzE8^zE2>F}>)mD>lFd7Nmbr2UfiJuxjp+M6`blQ3y3qE4HZP#$Uq|@Nc1AY9^ zl*)}Mx9`Vfu77FG;>%T3FCn#*Au&I}30<}4P*UQPkHaokdoxaHi>=B`H4Mg}s7|o{ zQE?{1nV;1S)ia7GVM$`!J6=*#_Muz;3c6ZYrXhl`PhomRA@aEnaMoIz$|Ja?4LtPi zA9@PTqHIM-#zh50J@ZzfZcdBT{Z{;19f3~-_eT>Fk-Evi+eTlo-b&q|P93o{H<}6r`U~IO4EX+sUZuNz1 zlB)AQ0)@YEO8(m9rrL@d4+uivRD6u-qg<^!jTkMUcLt$C+YvYX*d7|Ro*B(&$8D4U zz5n13E7Im8neas%zsop^n}Gfq@-K^o>IaL%000fWL7xsq6)*p^(4Cq@c#559PG3l6 z`H1cQu4W=Nc(Gg8Agz0%dTmMc?qLq?g2h0Buf|!_G^i@d$ReQ9A6sj;6ZIE#94ig6 zA$ORn#H>$eOy>h@VQ+McXI*T3NW8ZPYpW`r>8Uw1S#uvSn59) z51uwdJk7UvH)2}nx?8h?rJA|X2yn}$(3~1u7gW`fDh6CQlYw4`yM(AC@?rvnO>vjh zfl$yMpW2_LLvRzeUSmk2MO^H$BLDk~qxm7rS%2TA@7J1q@0fJ5QvGp*|A$ZXheByZZ5$Tzf5zZy)%*3q+uhJ__8uADLTpJZE~e^xj#S8z;8K_K!=f3`GIKu%-= z67y?gu9}PG3dUoT5J@rq&~&BqNZDBu!GmVZseVXoqC z50IG81od=d&=#bUZCo^3xLb0tgwn;55#63UuR<287Dax9)A_2)&ACQVby9!dcTwsp zkc>vV17m$3(iT>j^sjx5*Z#t%^dmGn9N|4za`tfn``il`iHBisq3NFjGy;r9>Jm2J zheNAePfctnPNrBpz&lFA*6afL?>2AlR!-_(H|R=*-f7c?O$>MZ_IiF_st!6^F+b6Q z*PxHm&4BFL0;@3&j4nVWu2Lb1{+5zb<-V-|lSyKD0>R9*k72|yV{McEDV_hWeM#j! zD#Z#$gR?Wf;9)0gkUi3_NVMie_6s`q_26YK#tZD&8!OwsZ^KxseBLO`m)pX$Og!f9in z=sP%=QlEiTA6H_ z!(zgHZvn3Px;3n^iBZ9;!_WrDDAs0kDGWbZl$95^ppDKQC3!>LzL#!)QWZOMY~bE1 z^7ynES-ajV*%eEo*WcfpHz);Kr)KdE^l40H*T2_{TYG}w1GIT#Lg9?G_x`)XKYoY! zu=B&#=q8VQHl~eG-XF5H7BM{+-y4D*l<0z((@7=tCU@gU9VpE)86ATnZmI&^%QV|; zW8q?+>`d5tgPEtA_x(C@iqWr#;Mtp8K9PLm*TudGNpF*Bj%J>tKt5|CqkX`8h4&n1h=I0D_$o?S$MQc z0l4FjTCI)D>Lsit`rM08{0;jNz0%w7Zc%b@QZ+5=s(l>DjLvCnuKQC%S;!v=4U1;N z@DJ}jB7kR-0Pq2-&;~;uJX;fUJ#)R;sn(J zuftmN<4X&d0w^pHEQ*Fd6GDmX{e8+%;Zb1StD-0aWQCKGX~9tSA*f1^weQ)$WmL4{ zJozyH^ESp*{VGo#@c*|YAo;EP%83e|r3Pqdor09?Yp8+P>cAlwuxgaohaaq`hYYlS zk-=hAplyR~J5r`?W(ABH^+9!jVzT@2FrEx@gFlPM*kkts7u%$KnSy6{RWS+xtE@=Et_=Z}Yq}zH?E6%))YVm0;rEQG6(HupF$}s!|8sR?Hsqz3|Uf2lG z$FhwfmqxGawQcKV6@p1f&K=0=`G2OnNKb+GW%PGYb(L4B7<-+w1UCOLQ1^5kUNO+*zN>C?t4nUH0OGNhzyKip4sDxxfFz|6zGEphkwKu44BeRlp+>9($E`@tGuTh-j6J`-Qh+#r z+PQxDGZQ6zmJXeKzC0t<6jdqae`Difi^%2`K!6P`s|Q7AKPf{R_Iz`z(&jtS=(Yw0 zsorCPg0+Z-nI3{<3r~^4;$zyCvZd99v-~DG=$P^Gb&K!y?)rKjmbobkO)p@^j7XV#~riO+`>cpYO*x zSCT1S=Xq(N<7R2j6ho#9XS!$Nk{~-s)ufTQXZ<}GPTUqBrSIS1DzcgVD%NsU$G)cDS-DST< zWq^lON%XLWobSq_|!sA4ecVJAN{Jg0}a$3#R*W z#ZCiC7z|ZnNSe=>CK{Un@j|y^s+_UO{moI>Quv5iTzDkkk4_TiMS6R9kIn$tFrTKh zwhQK)3mq9)0`0&ca{_r!i35Q;kgmn93ccpEE4g%<4rM34i#$PU%J3R zszp;qkrLSQPr^2yF98tbt0tBh**KwqC?~!@HQV4bgT<&0%uFHcqM&?|T_2&(SW1^P z*qM}uQPtCyvDWZO>GjxV8HE7#*|yU%#!ZIT&1T>K4$-J|9LAQTGp1&!9r*Ib2DlH& z@q?a`tfE76a*}MQ%*!p1S_uQgrXvF$4dk?JXyIy#J*eCrZ`cN{SuOB}meFxuaNu-% z=|jm2ECWPBykHSB^7x=7;WL`0Z*oN+^qaO$Z;rh(Xf5RvtW*O>tpE`OAsbf%x_*p~ zTJU~2)z)eTU(}G3Yc!*Lp9wkzTZEG|aLTyG*7#?sQ8IaD2%OdNE=))@t)Bq$v`t=i z#dc{WufZZ@mGc;9jPvq@lVl`F6{hAnI+P=2i(u~21h}s<7bozH{XqvgZ?W33&h@P_ z%M9Xq@76d!bu6kD(tBH_u{5NwbQf|$jGcNfa z95|EQAkU&>fK0Y@o-qy(weasdt(|4Aoc;Ag8l97rqyST?PdST9DM`G; z^mx!F4l?k4svm$hQKN)y@w~Zp_yL*{!sg|QrKnxh^vh=U*ngm^70Yf4(kKrgvYJ>JWJ@0=+bg>yk!aSF?oE0X3yD)9@QF#06)gin~1 z_<)ELmHpTAn5rDeZ|7icBok+xY1*0W?*V!ihapOY&N%o!5$BcLxGy!FcM%;xZaQO~ ztt#)Lu|NDuPn*U7ADiDeN|tog)}691bV(+$ZpyYs4_d7@Kt2H)+%yZgUEg(mQ0|H% zMrRe^-*^1|bNSX)4K|XGkEBJ$DtrGgKAxk4;~rcg9Cs|rC$U($Fz|qb89$T0lZU^G zY39<;EzRFdKzN4!+u+j4t7dl?D`|xChljmbV?$ za}ZDqBmr_ALzf===d~RBx8&}CsXv{+L((DC#qLDcy}od5s`-vOU3bXRpcO&X>L&;hfs`|;u{2}j3wAOBCsjFMFT|E_A% z!=6SN(08j0<#*kgt6JAi0;EUL7-vsq`#y-=neKT3smjL`R0)~P*0~1`hy7h$Y0?&c z#R}R*g9UXTj8tq+6Rcpbz?ta<3u1wBzZB4FRex`28HP|`p^&VY9cTFi$KVo_MLf=Pz_$VCuA0J@x60cCyLK3=n zUNU(D$7D=lg>MxVKSH53H}h+#EL(^=yese6?JoJ+iPA1AP9r25csyqytT?w`-)Bm7 z8vkJoPUu?Du3|D8-f1gWZtQGz(ko4Our2x+F3iBgwGYk%A29M2!ET+@NR_1&g9a72M~P$Sgx0d2g){$wq~M z`=%$E92US?A(~O+#V6DTns0Z$*$wQ{gWT#OXSFmxJCxdJvaU_r{I8~F%K#RGeJQPS zxx!GPQbzaaqTwh`3tZjDkes#&CZ+y7QwN=y3V6MZg2p&V)o0!fb?cPpmaM>HZt&SX zQk4U$t-(NL0fv3*U7HylRvSp{ZS=eGUM<^(M^96F2rN}2EozPZSTpxxN2ra3QU!<0VW-9z!3{esHLzBHpyxm zcuJWcf>M@9ifQWZ`+;@o zdTBh%Famq>+oY+iSPXoQ-uY(gavo~i)motWqjXj!UEmi;X3Pvv_<*wj3|w=4;EG@% z_2~OMKqa!9vdTVl7s2LMZ6_Jo$g-*b-V1%@3g;?2CrD3awhTu8Pjw%Jg2L`Us?a0X z(eG`9)mdT{lafFbzc$VFH^P&xUx1TDBQCLLSO=lS{z>|}4;c@Y`9f!n`^F-3H~hz_ z#A{s8$-Kd~_aKz)y0u3-k~E33&Z#SRDe@pY5Wj4c;V|^kIYj28?EIjt5}<@W{|a4i zOwJj-W1j2LdLnHO8`2C#pa1%d@ys4fwjGC*ZIP%B_BMT%uwsM zSUCSW2nF#%cxDgUZ`5`l9?ayYbQ-U^Gw@o}9NjjukYKnsxy*R$C{`R(m@Ks5o zGK{K1u=ojQST6HTMUG8#Mpr6wzM?k zs!});NVdWK?5U8Th_I+MOSK{ zt6l9BSmT(PZ{Wwr&`*nX|?a?F-4iWRhHfE)8|nS<3A@4R(cYSPQUK$gY{F`+T* zg*FtTNtKj}C)M6YBakFL7k% zmY8d@p9n&2hU|N9Ja`3vT#dugliEjfFD7@Vw#WvhB{*VoJqk9RJeoy_!qH4cIzzd_%O!qe2#tHLF7jZUbz1a3H3P9hNPhQoQY zwxg8vzsUQ}l0yLXo>;p$A)pOei&c|fuQX2`zq^KQEsEuVJl>U^#ZcZ80mSPTf-W;>;qg&f%C$xg)+ z000JO0iQ2wS4$AR9+OsELEoh^mtxKxSi5yo;JTHk{gz@dfO$ZCV0BGl$wb*bF9K5@ zH9>0b{t#(qmDE6I0|MP`Pwixa;p)5K&{bE6W;FTFjvBD^|rl*6c zEnb*@tc97>zmfh7tiqYx>+!TW1iwS*>r_04KS(>L+w=NDJgbFNFuD3Q#~#j77nR%+ zcEVuO1z$5C;Pp!MKKe&|y9$ykVDhce->tyX@5-rKm{?k^#jK90pr1eLsA-TLpx_f(tmq?z=S zS4x_#4a5#Y)OAVXrLPD`r8Z|CBUi^S{*!f69U z;~nwPd$4M{guNGsobR8~5AN)>!DHeeyUxYR*MB*$X{QP6lSa@FtD?Wa_1@S@iXPlZ z#mk*oYdHX()Og-YB=xyFC9jf~Fjj|@;%csTM^f!#{Vyjn*R4sgiH+1E;)oPtnvGs< zIDLQ6xb}uRJ?kUZ6$#5Pso)W&jz2-6zyFo+76+H!c2)xa(S*Hkpd}!0f z23dacqnQj%w$1v(gY^9XvJ^FK)hol9+cZ0I`(x??sT?Ue}vM4e1(O=I?A?4o4+sAWU4%)?93Owrg_o_sQM!G)_vbWf=ssu1XDLQ2hrNR;o+}G)%K-0s zi$pKqRJq8%N;_v*ggaV*sqM8U7aFDb$e0EBv6>pYA%{L#N;b87p*fFIrmN0Ru2uAt zQkLxT8*^2W^q0^rbtw0^(00*hdxIYg2j$^AR>Kfa;Z; zzJH~?3(!jtyWHjdxlVX%Hvn+EFZEkK08(BL*^0@?Y&!Kwh|#OyNz`kwA+_rcm?Ztd z(ppKu(EszYiI4#>7KhGxZQP4V#NmT9d{FU`(wr8qGtc&h!epCeX9LZ}TGY@d{Cxcg zdLg)qi2&c*mA>EjzS>|7r*hkFHDY07c3wTv3fs~axcMp%B<37d!K70P!Qyk+ZwK`) zQ-P!Z@ls*jrz|Wghj)|V(4WP-L^+Z^WXYjRg&t=h%n zYaIFN)Yd*`lxvs8hR3ngy=w>7FT%wn=F4{rvv#HJ;LtK5?K;#iT%POltR#1?D;D*< z0%XiJ>8ut`*I5-zPq{-MUfXJT-m|eejN2`!XX--?N@Y;eBAjxuluGQGjn6O?qhV$# zKQmo+iCP5~i?k(q3j;-t#TNMdokGty-8eHZIbF?AT&%G%OUtWbvpYKU%69vq)9~4! zC00lR^O)cJ(^cZp?;OPsJy0kBqQ{-9&7c065EDddp4jdC1H0#V%*PzRDFK1cILhy7 zWtt;2LT@BaWCjj>Xbcr zC0Ui?GeZ8MP{ZN28ZEQ}>1vevwrLVVT}U=4o2h^R050u8n>0zNL2Q{!3jaVM+-Gj! zoIR*@smlVtQ8j8+kXref9zrG@M&mE4tPJ>lg+vnjy#LeJJHl`V6(q|~2nd8T9MkKU zrw76LWvNg&1UiJy&_Rwgit_S{&gour<$~^dyl4ZjxLZtM-rpXkarle>sAwe@ELvlD zhv2S${iRHZU|zQV4S>F1U#Z<6Wy z!9JoqGNTj5SGz{mR~bCwEbep5ujA#(?kWxOeoS!tUv7K>W1J8q8dawljXUZZ_NK8g zZ2v(et#m(zA-WDz@Xu1%DJ-ry_?K}$UjZ^GJ1ZcbIJJ8Eu&u19!g-~cIoy?WJ|yAM zV;(XnaC%dSyK^eoUlg{tylIurv_2zuLbmWJkw(Ei`p{jwUzWJXnt4jkMKE{|(7ESF zA$f@~zNZx4kGL)qyCh(;ww(fc>{^X2F?vfC(8cfrGoU&cxv*Blz9mh=0Dl9VBX0D? zy)_MRkA|w` zhY#~gl)S|S|_c^;^vKm&B_=)&x1=&J($(TTX}^qX}{Rc`zX z9nm(GueKN4AQ`2Nx=l}S9lA?=w@jn-`U>ij8R!TCglavf2h0szbW%jro(k^T(MEyJ z>RZDijRtPHe-MaFfMLW*N2@1KJwMOiQ1!4(G(JdsTmg$oV}%&B>EX zGPrugy>=y6f+1+%dR2vD58gMC(E_N-q{C^@^MI0$!7Cf+ZAOAaC@rW+b$eE>w$28y zJHgSm!H?%uTaGH6x{lJZkRH}K2JL>bl^jANcO^7K=WDHJV;m)_ik`C;>=@B)ovdHw zHO{80&owuvn=g8i6lueZJ! zYmf*zfB`6E*QvpRYqQGmAMGU?P?^%}6CuT*CsKysUyl`ef=k3Ce1LIf9I=ZEGl3jz zUfm+U8{Ce0)q0F`umPk>+>x8n!=tIF)4HGVx?kRfP?NPe*(QHNbvkb4`u=Xb`@8XD zax00KOb+Tqldy9~S5^~78}_lgnLdGvtP0)n(!x~MOPe%scvj@2Yzn6u`39M+#=Dz> zx<<_oxajX+@k}&JPZsQt$Lu0puJ$9?N=JVs1|yS{c*I7*!?Mn?Cs**2j?TCGSlPB6 z3Ha(`wa?epg0rFAwN+Tu0jtQ3zVQE)h*__xA=s8#A1x{Y)z;xdir@cY0Hr#=KI~AbAA< ziR4vlNxTx}4;0`#&t!F%oQ!R7hRQb&D%$TUCR>v)Va2f z0QrKeb>mif>gpXJBG^{KMu6p0o;5HnDv>(CS4nkL!X zqr{_VB)r%yqIn>1p(I=h#<2PHmm|=V85NKXI#_Tn?C1tbHrjGNNl7s)dWtLpy9mrG zp%eT$v&zbg9&D^y_~f2hkAtcX`c#gB>)OR%eAVi;@zJ=d3|%_e>}}YFgU??V!D@Gr z1b>Bl)s9Tlr(A)IQUihaU68y&@qhzyX!O_q!a18Xz{-ZXvBxE)t_A~s@|)=J@Rw^N zI2e8Gz3QJt-&?L3*7YDWco=ezVgbgB*+T2=Bbid9P%?nl|F#4uyWnyXa7cacd7|}c zTzsh*hzIlZMAu@wr-F@VyCX>1jo zG+Y?MNbF(A%7a4-$^Yq6y!kamk`z=d;C@fymK`vKX{$39PnS`D^fzMctb5`;P|Sj* zvWLS3Kj7-6z_CXW$Zd;7b6pJFw*CuezgKSRxx5RWyvyj719Q(@c5pV93(gb<sUPxv9CrLe1Am2-)(uSPAG^!bG{z7M&S;@>VQRKg1sTuQB^p=kU|bB*uT&qz7^ydea?@8FfIYa zMJlw!9_@iurb#8F2^(ayLahI=3o*`8k-=O{(wM9nBDLz3^Z7Rj`W8GGAlW$TmO`Bf zrS+T-cUZ21+%sp~?zE&WhLC(1vu*X$TjM)K+|3F-GEgQF6e5whoz}zR59jbs?#Kjr zuA6i@4V2rDmPjR~`?mq3?aX7v29puzdkJM#K1(T7dm0^|xUN6oT*4iwUm|$4Fd|4> zY2*=S;)%zfK$yT@={xCM8;kt~!1UU-XO@Wa8W_`gwkQc-N13xq+kO@!N!12Gm`i zM`ea;0KTh%M;n3+$)tNvq>6+sY>`+50M$QUDyb*LH|#+*TYV&;nRF^Q^KVWQ6`=KLWtJCy#Y@W%mg^ z!U9xC_o+M5-7`}1aM!N7&}yBpQ=k+0jenfnYG4n5q6QzeSZB6t0i1twwgS}&txdID z{%u&I8uSyE+9ELGzIRH6+()0)iqRG2uy$6p+M^fHvSt@ZPHpylgoZ%mE4u2j9`Ry% zmqR4xGp=QWdsHc>nqcFw_p{WooW7Zr_QI#BxG7yrWFGTJZIbW}8j4w9I!AUgMC3Y) z!l`XX;M9CM6hi`lRv1$>tl?*pz^}>queqA;eH2aj&`W8>rI@)BM!kO6Gj0_@>Z=Jb z<^y=85Fp~vyF4O07K^WRcZIsuFX{skzMQQdl=7<>;&-_8N*fx^(z}4%)|H~t^l98< zfmR`lM;sbss=+-wU4gNiIVWs?(aq1*jk&++CS}8-RCY0OxK<1w4H?n#r*_4iOeM# z{X~DD0!qM{B>DB!d8z@r+LM{+&Z8)ygC4J4aDgN&c;926}0F6pX8C8)zrDpo_TGS>=V|M=O+qTY@CDyR^?!>5laWY36x zBwiU95(4c!d001}e%N7pfq12pbP~dl&e*Dfm047v(gzJaLZTp6Cd${1|5h|qom;^_ z5aP=h(i24L0rDV_khlE+JwU?0=ElJac4g}!jlo21VQYm5CAax7Qc!=I65vy2H=`9Y zNACsMNxQr3*s!NsosiN-bCM@yS|?5e>I&b`?*q3eP%qupAeyk_L`c9q-G2`|jd@zZ zPqzvf-XEoeN}S<@NHLla)8w=Zpa|pO?@MCUxWAtqO)V18L>Oggn67XR6cl~LRax9R z_DnamE{y!crPPAcI2Ty%{}Nv@BEeUWnsLYX@gXp6GhdXf`t4ueve8Tn@myD%y4(BU zod;MRVMx=+yA_a%wSPErLErH20Bg=n^Z5)b0fBPq0j8a-LBlBTiF>y3okH9~ z4g{urWcVqGA##&1U-sO*ZbfadP^xZC7|JjG;I4q2KN5%MFK@AQs%LCcD~p4L$9fp_ z7{w~__^Q%Tv+d6_>=7z$1;`0zjoxawG7nr)Gd^Lv?9EL|@HlfH3V?`l)J;yGsok%q zaI5?@)E#&bY`?p&WWh9<6&zzRLSzcatwJo2`V^p-zUgXcL9kO2@@q*nhZJ>+h+>;z zei_F%yZ^!IFbH3pTyDLoEv|{_LBZjbh=IG-Cjn+J4{rlZ-Jt5{40A0IQi+0d2Booir>;CiWQJPY55&i_Nl_T?S<#^#@0#5@$o{n%^$w_~Th`Seh z2uqduQGQ4D3_K*6HJ>{UL6OGQ7e2mFJz<2ULA&%iKkaJEKx5jUCpe8E@DY61~>aLtJ3VSl$uKwd89FFePUTaoEMhu z=3(Q;!L2Lljo;>c@QW50Jc3vNALu!E z>ia;K;|fWsSrQ%6I6z1gp7wlcjOC_TWwC%Ac$Hm$lTpY)3>PD-*$&G-6)`IL2VU;P zj_>M92Q<)N0W(N}AdjQ=k7 zV=OsLFM0agcVs1hUB$4<)MayKqLqKn&CHn_F*DjB^boTI+7~INP$)%)O=!#fmB%1Q zws5h(+oZXgH_66i>|o&6gLLB3iCHS2?HI`;A9cq_gQyoDC580%+lT%`LePSF>XVt_ z)FKcHF>7NQuY>BO5ZvpNZGZ0oB>nUkeGfn7FvlSD@ze?ctH!o>pK0AUI!D$_@BHU^ zy{7v_A&BXUl9kn!@V%(Gr4x2g>_l&$_n456<%*n@96U5$CF3#Xg0$SbP^GR(RChY& znZ+E0(xhnp(Hbx!gBI-fOO3!DstOh0ZT+`*BxhRJuC?lMdlYX6g;1oa8m?l6E5kG=GeGmE zA`Fuk+gL3UGY3UpzO1qIGHMP?QuqVe%6U=?YHLql>#aD$OVC|Z%AmA9VH*R2X=DTw0A{T~KuMTOPkaY!>F)Rhfv^`rN zV9Ixc`a4>PgaYt0X_z5kS2=-|GmMdx4z`TNx_VK|sreVHDy&Og3k~_CF_+vOunsKh zK1f^J6-kU8i4m>ZkN)p&g}b|M-O#YEAQ#2_@>;ygn3GLaZNk)z-O82`iPJ+wJ5BQN8ns^j8eQN;nt+uCO;DNYhaW6K( zeWz-0XmtEG^8j1z5C=V~F4oeKX1u*>gE;Y+F!Zl})Z7bcYS^}EsMbglzFzPe0)ZJZ z&DQ9iu-|mCV4RR;2*V5#p8N3hC%eKS@4W`BUWTjiiHHbJ-N5)jNrhOLX2aGi?xaH zL%mdz#$LDMMx18k4UJD=7kBxK4vbqF%V)GnnPuC##mIb~%<45abzizPns+r9Q?WRd zkcdxu4bSD#uTiq!OcSD)3rw7~ovNp5S$YaW4R2<{F!@XK(d?7pynK%IPvT^{&B3nJ zl>RCj!?;r^H=nWTAmV5=E|q8U-z$*v1QCp$x0Zc@KC>+ZHhnJR(5|0`1?^C=hVNr8iR= z)o%&lBTo<8qofQ&FilU*eKi}`98kAzXlHHgvUfbz1MZHE7oh;}p*CJ# zNLAWK`s|S~frK7fekz4bHiEElt!0^2WGTrRA14meIPNQ*+m7#)LbB}?R-zQ?ERksd zbs6UUpj1(T!*W>R`tQ{^R!pqWwJ}t^VufZc7C+9dhbWCaP>8t12d4zH#+zg# zN@Nwd$;f+=Tt346w|g6|CAZ>kY*onvEdw+#GqF>wDq`Bh_`^}UrcAZPTYs(G=Te3R2_c1RJ$kk zRl^cW#wW%bcswno|KU_;Ub1lmPh2(`2lAFg*p;F;lYw*ohYloP$iPrAGkYkT4SQT0)T|4+l zsygjps_CS@HK(BPXN0g1+5&6h*i8w^-;{;8#6>-Zk*%&LAVRK~BV=h=5Mw)VOXDqB zBRVtpk8GhIH(}=+7aBjgonYRHlRYMiTm<3 zzZB6TOJRlopZBi;1OoM~70WAY^J_D4Lje6|{QtuR`|j*g1##NYtAIx8#PBybOT)%e zTN+YJd+IGhJJvc(#QxCMiKm_5Ie|A^Skn-e%;w8;1>>)H2lj%!C5jRZ`mW?yi*Zd8 z^TIt2Hl>SJtScJzbl?@QCxXLp{2x{LxszJ~#pFL^PCZJIQo|79mkt$as1<_<2fcn7 zoTE|nbyaqgYx^IaEf|sS9^qBNBZ~_r9uCJ__z);j^GMnl2e}$4RlO`+6eINh&!1P3 z>N!Kz2((+L2{ZHO%Pk*YZy5xo3H8&O*XZh1#&>1kacGGv<3^kwGS5JH)#9v(;RKLO zbqncfN4%adkFcdcw+b-1x?txHtpMm+vs52JfEaNj7a(JaKaPZIPOtS9oi6g4eel1(5ppTP%AaSW?QI`=aO}CfGzf_NH=QGF;^ENaV}AktlIKcd?JY6 zyW#k=>+G+i1qih=`XJwJ-M4?&qcy=!`1aUw`1x9M9dW0u=*pCV)W-FD+bv{m=(^QO zy)o&}1}+A!727*ry^4>E&^b_-a5kalv-{0t)jj6GPN1#{iOUstn(XLc{xu9< zw#E{E@7_YmH$C8oDY6&PdTpPMfKXs6!vn5&)zw~mo{0a3l)mY7?O6m|mcxJJdC(Tn zMKehp>Tt<67aw zQZJ#iqy>;~ie)xkZQ%h{;=&ziCJL(4R(1Xs{x`Z@z;rYa9$g9y!>Q+FB@L<~+>p$_ z=HaDSB(#`afvwD55=@F6T1?9GNv(`d$V>r`bzmN?K8X-L8v& z^c$WHW5;xRru3l~P}l%cvVGD;v>({lmy(bcfM{_;#if)+A0LhXS8Ey~^=!;E^`c@h*UG7S`rbz;bD35QeQ_*Z-)@j_2& z-OO|IAE01|xb49gDiE>#I4@JM$?22qXHs6aWHmtv=nbeXU0=<(Sw7GgjX1RqwL~J(U&uD{q@yWfOIb1h$xPW7*%xMX8c!=NK~e9!FZ#hiinb zSaT-1%&$h~J+#;2th86Jo|!GyT4Lsjck|EFKYQaDwo7_W$cX|h8|V$|w{ExHEQ;;Q z7y!&GZzH4w12`-B`P@Y8T*11cRM3qo45+lE1u?|>H` z0!CzhLqwIwnBvsDN#_s^8%4{I!M(daD|R~|YY5M?$gl1(TX)%)n%5^BR}`w{Kj|j_ zpjJ5#AnS`g^Ojw!aQ3qlB%|lJrgruXa{pce*DyBWu~xNq$~mm;25*RfTdNw5pzNHH zEw#|0>A4_0@HuC+0TS$MG&fPNY+?HTLLw@qHG>qdfx>_`vTy)p!XUuo_9C0i(n=`B zwrJp!bQ&&6GpZj=)roF3P<@gdu(%YjwHKxoBCcN7Ed|PlbIp1& z2#Ibt_$1?rKzu@sgFno{OL<0#XD?jDU3*i{lcOs+b(64DLkX~qny3@l?1R@u8d)Ud zWIr&QAvZb38`*l`>T~70uVUTwenvV6AGL+XXG7n~p$8ONeg0*XAy7C>pTP(RwP&h9 zM;Mt7In&_CTWq6tFmgW>pavZlmLrSEN^9JJH+p@c(d8^-hREm+=27ha~CwL4Vo}qvV5jB{ZAP%F1K?sljN>0~5J~1F8 zp)&>c!;nQ$e?cBh=eSiKvm&a$AkE8G1kUC7=9cZh3Hx=E&X{DmPm_w%Ef8lAxB`y) z^w;~IDH~5d+8O}nO1M3Zk!`p)-%HsR4S|oiG9~)DHbuba9OpDuciY+(TAdmnq04zC zP7;2{D0SPYXEB8tT}Lk@xB$Jy3mm47EMhII^-ab4 zNxvNaDtW?7zf@@X7GwfurCnOhp0M5Q$dr^_eljP_WdqX^51s&%3;-Wgeth{@j0r>E zok28)KCl{B{7hd#9XG4hZwEhqDUhqX7lMbZd_#%uF&k2B^Uj^^6&xrm{s&oxkN|1+ z4>Ls~O6SouB2y=&F_LI;Co-PGDErzO)5Tt{;b@8F8!*46E0K=qu?s7V_~Ej>5x5!| zkpGdr5u23sKj(OP-_pgt7ZrH#JZUADHi7pGcVKB4C(#Gn1;J`xr zj}{o!i_+xNYo@IJRje?!3WlCHJx+PL*g=J#k`5q-K8{-j4eU#5z-(tiTgt_)3naGo` zWRhvw3A?@yE-;G06*Vwg{{;VyaKDPBs8z!B2NtRHQ<1|cZ4o`QQT?|S-W2X*mNfF` zAJ()0ANVUBlcq+;8-@!CR;xHPDGk@jw8R2noxILGs@cL8bn}ruW06D;WJI?%g@Sse z6`CE5yv+e+v$ew=tsiY!n{vTW0nYiPro1R=+^L^LP8HAJHhKOl1owHN)fosllyKb3 z5q#~bt5t#kuR|P_B4{$`A!i&%NbHTFiA})|(2@62-i#JO=U`o z!Hf{S(`Hp|B@Y!PU?fs~LP@@*%8buqDmW;46qtavraXo9BszP(`hC%>mE*L8rY~`#BG6maXA-9L z5sI>;v$sB_F?{dXOfiI#FD!P{`U7&hAIKWCi@qbvYY!s)m!%d#E?eJ59mBg{fSnh& z2OWZw%Jkewg}Q#v-HMAn?LPEMEK9s#;ZKw$||iEsvkY*&mf0iFDRTfVDBNdh8O!&U1vf}4c`x*hFq10XN!>0-&g4en;g<7m*;os_H~< z&HQX9+ILBuH}Ta+?L)R~Gie_h+e0b&Qki?_e06`(9%VLY#>y)UR}b;NLGdc0Ql|#` z-qH{zCCPDk>#&0tyWoAXvse_apswVe;#DtenRFyl)YZW)9a2$QzI#lLBiipy`KuD# zT}aG;(*}Vh@3s}8*v^exCnN;q{xP+{z1|LTS`SXs9B|xGQFES-(BQf)cGLAs9Py>a z(Bv9-7&3TuBPyJxd$7iNPIM@%t4*D_ETO=+2RpH?!V@C^+(El_+8eO(3{e(#(?1*F zi1X6dPoiyxQ-UZL7`xRycGCfsx2abQz3D(2N%M@32S%(Y9{X zQF*Qlr4ObEXwaz}w5EQl|MCoHYk60OM%4z@?H&Mw_N>vFFsPB z{B=>#1G1h-pE~%OMYTfu2NZ?XL63blj7Nqf?wSN4Pfx-**gK`nf<9FET0a5wDlmZD zHpd%yZ~!?9cDog!YgHS0xoXqvO)T|HU3CTs_MI0DqjzSQ*E|qhDUFaxrAEO5*(0>5 z%4?efx$rGh=RM0Y0j9nTDi6N;1{J+zvPE?rx!FFfa2UaOSqWduU(M#&ReP?{>t5e( zBOOyMKf$?>szs+ahO;TJe9;wd#JW~$Y?5*#(-LX=D~;^2*s*nsQsM9riV=1)=Gjo( z5*eCkl=zW%&TK6$%;#hLE*!2m6E0NP#U1X5UR%dMOK9xtO1WYiceL&mald>4LMHIJ zOElsriL*G6pM!v$@u$bOlSFKKRo`58Z(LZ1JN4;P41(D0N(MOZhu+6Dg|x(+(d5_JbicwaqJh zW!zGIs~N%eJrFNVuUb9f?d!f5FUNa6GX!UGSt8WCK?RKf9mMb@xH_W8C!jo|l#PE) zed%o|@IRo9$E`}6>W>G34Evk^7$)%BrZkT!JM}+OD%Jd}5}$9mmgQ_H$)6qV$1yeR z1#cbhh!O9N9s-+2Jm{N*4r5AN#-=v`eDIV`p}PHa;PYi$Lje}9<@y+b23Xq1p0rcU zGpnTqFFG7PRRc_3rCoc68DtxwODIGb&dDwmU0rM+we#!9_G9iMzU%`qH zM@Q+#^ysHJ(44J&*HzIN+$8avA%4(Vr}sDVn-py5(uGYD`JKP*y!-HA;7sFkkgAzR z&<37RYShcXi0K{NJa_#|dZDYQe!hc~nz*&bN-DHG;{^XFZGkvN2Ab+W*5#-{NHi2Z zq1#+cVwD4)ucI!;z0lqKIQW%pPvJxd`!Yb{s|z>xJbc9HIhj4q0J-tD@JMbd zvaWNSsC~xC$Hl+CM5Nw%&_Xk@Mbxzv?9I zVimhtW$UqdaK;_Y>~-qanvJ!YUBqrZJ;Rh1r6Rs5dQ9vLQAh5$wM3VMjA#_nUu25y zM*_UpYDYmLxq?ve$o&4KHwhOTxL|{T-Q(zm_$cNCyRk`%Dpr{zcT^hgV5-p8x)Dk< z6~My1$}wk&1Oj-Pu9xW&G?<-+(U8%dOz9mqHmLKh{+uZ;f%lHpn2NEC+F8vWG;GT}=H%jV zpRA!w`tD(=vh6d54L-s&ob_ZS_1c;=L;FHZx7P(3zKcpd&!`@~lq1$C0ZUR5C^4w2<+HOaAw$(x;+IpxWsdgK3^H#13KOO}%uC5rk_k1gh)!5# zT+9j}ugv(-)@b<~2{)>e4hAM7{rr*RO5YJ;evjJuIJ_A;J6KY3zV<2K!jn9m;Y+n~ zGcHO;GrB-5ZPf&72Ufb3lZakgLqYczf2f8Xle!2f<3l>*LYw({ad@ zvT}9RLD3N1D|T*yMh{8A-`lGN8=h;7a5ouSa+~9y48dK-W5V)3I{fTz&i`e z@oFH+CV{j+cij0=x0sxcvB=o4K6Xggz2>B?eER&z&GsfCBwtv0ir6}mvw1_suX>NG z3{id;^l*RpJm3&h{}ue!2M97X8<3ccX$s23OD;OdS&;^6lrW~QjtO`3?uJwF;2(UA zH`*@O%uM>Z`s0yjo}_0^1joLAA%4Y>u}20OX;g9BS(wDm3`fdj{eWYHt9j-LBo*mt zg|2T$SN%SZa#Nt6$AL`t#duX8Ly9C$cUVsQnhT~6VgF^{r2Z}__|nPf+Ox3cux$}U zlAX!J#wr_PEU8$HBj@{1*?!G;=-mgGHwJ1!iSpM-(puzNIQoKS%DSI9?&T6~ouZza zQgF$|tk}62xD__8`9d&;Gg{U+R#|vwP0v#9f1=%g)K=%6W{LiF$@hMp$RhE9+Q}+nUSluIT+$I0wdnx7EMka zG)qdE6?h|vem2&^r^-s!;Y27Q490cH8N_;nUsLYV;xGomQ6ffGDtR(5weIh01JvV*B#3n@gc z^B~by&t&S17--GQF=jT%A2Fx4O(fmfs3y71RoaHj+qys7oK z*3&-VE7FHayd_w~{^zA2!03=g3uTE8KCE8u-e$1e-!ntq5$k;fo{?d;ib-{KTc4{c z0>F{1uEvGBV3NSo1Tc#pdVhKR6AO}O%gC=NXfBB~(IYNHGFT?02u!Ebat$1ec+n<| znMw5a!+^PO9A}!8uU*S>ZOgrIS2r(XVN+e*mJ6**amw`yN;phi&-^njTivgO;c>b>0Q^epRNI&|eU4Wgup%{397}dwkp~s))7V$l9NbVTpmv zd7)*&Ahr316=qD6R%!7$)oKkG%uh)N*m=i{{)P~>g~#?kFmy4 zQht?b(d2AC(V0Yr23?NWSCJm|JL*SELP#&@jHNG@#Mz5x5P-K74ce4#5BLS+v^UuUA z)^kRX5%X)#C&5_$N9c=R16D6kmZb?&va>eGoJncsBjS;+VUA`gjaXsWCQ)#n!Duw= z=;NSw!qE;<_%7$XHA-u-#>x6bb-OnyG!%*{lNywtBvS}yB@t#-z`1Z5=nRM)7lR)hHo+2CY#e7a8ibvQ z_q|at89XbY21>Osn{?*9p{2SWDdqIG+#E0-N!GCiee(OrHItvpxh%1?rwto8p~#X1 zbg@n|4R%jHA zb2LQFpDT~~RI7D#vwKA7%vCxMPoti$cd_Xl0rigcGX1qBrrJo(8|W! zOH5Vn1k1{CwyLr)nr@|L(*x`&a47mKk_!u6ZA^uR#~y1A35Ooi9-M$Y#k_@g~1| z59HwE*`^)9+VQPTddt;8(L52xkvA*##z4J=#8j7`bXf^+{}Vm|kB9#zUW0^`3~v*R zYSU!|h+~CBhu>q31?>SPP}=vzx{lm$zpbIJoO*e>bl{ozW)0qo7eSG|rQq zBu-a&4ZO;4RA7ig)Z@#XS@A&frg=8qvlUpM6C+$hT>>0-a&@rS1mU?K7{nI_3UI7` z4#1V4@_sbHoK%0#sys(>k>7q`S4-m0FEHJgIVkZC{6hGkSfH=E9qewFY0{i{JiYBV z+$Js)q^J%TsW8~ht>@+>NYrQaJJmzVa;+@ z?4ah;Ng4t`tdO&0qlB+|1FyrG{Lc5r!)Q^m4XVxUM%l$_bpvpE058#YPk_5&HA7l6 zznLXx!U>NMG*K(m`*EP;mldTB```nJ!o+lZ>a({TsmBY<8hrwJ&XL*5Lee9KcnR`? zi%OqbK%YSeX@b|!Flj;{wTmB2mo^{Nz(|&dAMRH@6rQLE4+Y-= zufAPXRL4|D?f3Y^x=i=X{~gTiDZt=Y1bYxeuIvE4&SFmzjqllLOVJ{iFC?oj@w1J1 z+0capbF-BpC$|7yxSjbG&bDyQ$ptI*j*xTML1{HfS?@8h$qlvKia(i%M!OXGx@fFq zY*Td;lx8W@Kn+~-^l54noeJP9%Bj-(H}fi>Likr~KIedJgJ%=YdC@a9u6)|ZPP|mb z#sbd7A!3pSjzJV|L=#@!dhso`4U7;WO+t`Hmx9j%f)gl^OYgw^?ONAN&u7)O1xr9x+<-^(#df zEG^O74=SG;e!cpnyZm_i+s#&($~+I;n-1%3Fs>nNEYGbP4Ebr=@33`P zamRib$EVdf>FuOA2&JckBlf&nktVGdtkO}*xmlCcgGrQQ^E1ZP9(!<)#e#!A7^8FW zI!%8M8q895xykhNm;9(Wv_C%G=^=*CpogN<9~-QC6HNsAfr+F3J~ETAxm*LMPmZhR zF5tpM%Ol-FLY%sS#`>+k2a@8(Wq7$O081D631P>zA8K;=ab z62^uFs^t#>ZOBKL4t18rEqH7%yL4C!GC(JUxDK5Gq|^dy2Ujc4pdr@1oZ1`WA;+|E zaayZ#L~US?iTJC&Daa)kpf2UDya>2{mz8JF|EQPTciGFw&AN>jPe{JW%WnAI?RP<{A2uQArG zyra48w|8ZTM;0+79Jw05E;aqU(f)7NpH-ob?zk-ZlYW`38J0QGVMY0yV#=+@KD*y^ zVx6v;9>?Z9^p93v3*>YST}0=Hgf>IH=wKOJNkCNjEa8mCmV{Fe&c}i{pCP$s{u`mq^027u99OQ&-sX<~>L%L;227@UOu$$CXrSVE_1#ZfJ<+x7)gfj{2U+IgxFKPKV}`=x^cU`yvfR zC0px~Y#`Ara^?YrIZ9bSUplQ1ZNqdWamh>^46_}_^hLqtW6#6^CTH&$s^;kaD2pW| zl42xJDa#*S#VnQM`-sCDk3`;KDJ|~DgrFoX6(6xKgh4NHc7Z9(Gqg^IXNCm_zxkkF zYueS%{}|CO#nMGVkdqSFJ~S^(F(v(;3g?od{lQj!=oIXLmzbpl$hAuB21BJG zNng?p+^oz(*cv;|FdA;#RTUI^QNKjQq?f`6QwUI7jHy4P`uDm{#WT;U&rE zB*16rrc=I2z@shVdO55mHWiBL#`p~MA#3aZOKy_@lSW2@!QwwV3?dnppuwp$7-$BB zp-2Z$Z>Z}!b!h=g6=#r6kgK*-@^H(e(rv04*WT6I6OK3rzlWBOlk>I^yvaRoEsP@1jQIb2?f{SIbg$=; zoU(5tP%;zj-`D6Hp0!EH1^clQIicwX-S7|pggxDp;5~C$o}{~X97-Jiqx^l`cOyme z=5sRe6_(YP-*Ihv0%6aN9EA{%&HG&b6}OY?DM>U_IgC|6KkLkTiF%zY4DaDj800}H zWZ(t1TtczYc{x{a!lTJCo_y`R0rOZ#k#e_K3nVbiNaiuRm^Dpxge-nQUzq>^2n_+B zadcO4M=w&*{w>%%^$}DA0{(tRYmhr<2a#?VFNmSGG~fg)0mUauBSEkhjhjJOFjuX5 zo^e~C5MrY~wBfZEOCj^7bFv*u9Q1$+w-`_r+v11ovG~1nSZgrP*f*xv9E6nsuK>hg ztdmFUkyxaIeqLEc|Cg9Z6k6{c{5Y160i$akxglgfu|P_r_NLt{_;$Ghv>s zGQnA|2l1pu&(%A6CuT%1^D%+tj~`7xu7#p$J>*24rH40X@~m0(zZ>IYNwq(-@3_uB zO=h{4IKttOwzMReX8KWE!zs!6+n5>Lpjsta&-74;8MZo-_}pOW_&2muBl9{QC;Id zj91;xfPHE7aJA*%G10ixJbwV~|lP9YPu>j!x_}hT=07Xu6S(v2dEtOXKFD0x0e4 zNNLafLQ+~mMjxICS18%nQHC<*TI7d*#GZtHXQ4J^&ku5kQU6mE_L-M2)TwUqp7>YW zLfK*~K#N1*LpQ=C{x@kGq7<{Pn$UpTln7!)(UKLJj;eGyi~xs2J}(d+(zZb$ z?dn*>042`ZMk+ZPcbY1Z7!+5JZ);+y*RRkxpiMLer}2TiU#9CldbqqGM|ujSY6p-) zVf=ZEYDH-ZmD|GWMzy+QF*^KG_Bf4C(XAWD4Gf2103z*e+ygRx<@q*|5AUn}zZyD{ zxv5g;j**?AikP!fRe8-jxO702;X`(T<$j^EaXIxT<^OrWz+hm&>W_~rm0XCTDB09? zwC<|4@?Y3DpH2Kiuli5{@fS{Y{2)Ah2R8PvUbHgjWw-J%&=(oLc?)btQVXK|bxo=q zZa4h6ZQXb@8|2pX8j>>d0K}QV&X!OT^uY^A3>&*V;~KfgJ9abeg{&>;_cA}9_zyL{ z4fC1EaGE5#>-`panRBNV|Bg@7$G-}B67uy*xtxGe6Om1s zxAq|lTS9sTdh?{98cc|`X7-{YnD-I09_bec5H}kVJyHY=3hnzIe?Wvvrw!JTXo8*O zupdu&+iDG+T){P_QTI<#>$92eQ-GRhD?$cYX0ggc3AIhC-JSu zDAHM6_lB|U^qceS)+~vp8fokmH23zShz0^a$pZf+?&J_LOA0Vp3IFao_i*n9bw~vr z$@WOut^?g1dYkfvLs%&LpJK;a0`Hbto?(Vk)zu)C`T5hiaa1vWcO_(F2yj-;61dX> zV09&s+2)A-g8~AyX?>8WJoQ?x8bRkyWQzNm+_pjgD^5AHAo)R&w6}C{zerfTP;)+n z0;dVX!1Lnt_fvW(yC^BPgy4L6UC?Z!2Jly$46S{ZY%HG|trCCrvtNa>ke&V9rPU|A z-L5NUmN$AjbPHxkJ}SKHpX9)N!TS*qzv{k7{MY2GZgX4IE7nR=6}zJ`zAGya{`CRG zvi3a!V3y|L`A?8uASv<_J(30^^Nb;3j4QwPqKNVS;q#%e(_E? zmXUe^7BwL&-^AIEzS>IjWUZ@~zx#~cSrDFH!UmPD+O==vP?NAcuk#ay!jkHYR-JYH z%pJ%UO13#|v$NRB4YD*`OGWLvstR6G-atI-Xo;DcPM@OoLj}iQv9A+!e{PNkyDTGK zXlm8ChwHhvk)L9MwTixj3)j-Qtu4_)1`@MctCS}YSlaT~MHbY}WDI^3vy>SgFk+ofSK*C+(Q*x?qW;`{quJAIadNI5JdPj$00zhbpL1$gQbYi69Dg8cLF$yL zAL0dAmUACqWu=`u4{jl~Wtez82-KK4%sZ6?kq5z2@_hC7b7mzGMz$a9+ngA!DJ=KK zl9HdeDDmjbKi&W+xE8Him;I;Sw>mg0ze^Q6DDpxwX{bco)8c4sO6N_DN`7TJ5rDlCFu+YmnI;I&FB=V)_;_EdgED;blHHO5sAEKcY*W#)MDDC)*zaqw{>?Rx1SvqS*Ox%9%Vq2lMO1pnVIa>{ zKFUS3S|e(_rI{Olb5?sWvRB@o179ty+9(xnIoQ;o9~f0~)zxB`Gu-fZ|%Y)o`l!ZA`4ox)p1z~Su zhROn%;NdS;W?cEDR#$6ieYT`pN3yK%FejLq`l}d8!5peY!D+CPWFQ0Wsa^vkXj;)d zE-0}_!u3Rhd}8~PwROQFh!rKX(REpOoYCWNY0DCKn8J?-?M*08DA;cEa2R3pBG(!Y zo8^AW^;|rh&6)1NrjZMISs~a4d{T!uH z^PlU+o$B~9up}w!WC=kwWx@f!^EcjxH1Uj1oSC*oa()b<@u54i$O4bm-;0nY^{=Ic zXzkFvjE>1%Y*6tQ3HfQh8?+FZ_HNi6GT=dhDRUox2ZHneAV%EYCcdAG<;X+Qis2JX zm~kK*H{r8t#0O0Q`;SC__NioXE(-aMuVR=&U9P4i-q)NaW z62Lh^g%?c6p@X?}TQJ)2Vj!IdG^oTxE3mLjdOqCUW0bC?<#7eB)x?z<#4Co(Y>{U& zx|8qS@5R&Nl1nUL(zL#iRKs5GPRFDNbkzks6@yUR30*WdFK|_OOHapUs?vS81)J6U z8E#TS8ykg--#QC_kPXtVG<7xHk+e?N4m(Z=oqr`7ykSAL$|hT#sn5X$R^iynJX>Dd0-P@}CNCge)rm>KY)nslTZ8q;`+As1HK2=k7pII(N?U97fZl#|Efuxk3#6EI))c49Z&L$7nSpN>S-kOUP5+jS+t+K3O=@8zCZEpP5|7$)UgUC9OSYdO1`iZzuJMoI3 z!((!o7}6}xfyyY+^mOJZSWeT!9cFwWWVjxhhV8yyKJ@qXSodHXV#bApTtcb&MotRE zb`z2iq;t=yJS~km-2j2&Sal9Jnc9whpa@uJcCMJX0P<`%jre$&(SnyzK7`1U{F=TO z+}IMM(5`A9KGY5L_t+@^J>s>X^B}R2X3(@FAPw#YDtQ%`f-48fMSZ!u zGl0MV058Kqn|Mj6L2Q{!5C7E9qK5WJIy36(ezc-pyP=e{kjD=B(SUzYNSBj#`k>GI z;2jL)xOmA}fJN5P3If~*C^+{~iHG5Qnn%KdWnTGXnqRsWC*TNC|48|um)w_beOeS!v;LX~=cr-gY zq}0upk%J5!`VwgV*S}-Hf*Sv4bA2!3Hs+Xd^Z_w|JRFhOJwHf^2Fu-7!+Y-1(<`N; z2I!MnV%p{PBpS(22tx$mO3iC@?9GUf$GC1es2_s^cbe^TqsG8U>crlYpLY0cy34uR zZ@FtgnkIZ+A@4-Bas8#*3te>dFW9giY8=f=5EUKD6BCw$4RG&S$3TX)LQ8}x^zZHE z(G&%;jD?xeF}j}n&fQ^5M3PEEoCTe<_6S!uJd%$}MgTiN#J__2Oqd=3l8WR=MBX)m z60}fBeVj?Gc#!LA?;mv{gD>7h$;|tyQS1bs#dA=&2FWySSYxwQ9oP{943v_!^f-rn3Lb*#3K4KC za0cNFUX@`l#q=cYGplNAw>L)3=8f`+W2(9}*yC2GUWwH{ocJVP*#MP)z4V1nImX8eJdfi&6lg?AgzSFXEZ@&DKtRKBaCisQoXA3^ZZcQ?EVFvai=^#9*7fq$3t?0Fp@a;9r%o1+Lc2Dh)j%$$S5 zC*n4pj!Do!EnpKVp3Q-~oqvMH&@gj3#tOUkJqK4jRW^SIjO+@<+b!Z|Jdzk!kh8gF z`V7wIN;TdU7SN?WcV02rTYUo7p|lj%YJwMoCPLk$r#9!*z z5%W?`pwkLtisa~Xv3^h@5>x43XKcyG3tBneP;W#j_o;!k%;Tdoc=vpiT7hk~tgFmpwnZ z=dZ?;lh#;ii`7l|V|~}|Oe~n!#f#4#=~l)wlR`d0nbYFdJp#iErn;TWmC_wcU(u~F z*kbrwYP+(QEUMCFcEq2Ieux3yjBv*5YB7C|2W*_Zm@-?aSX4C~u=(nF#O`{ix}qIB za4@!6nP}3vWrdDWt6?Po9>cClJEV3YFH`#|=lwlan9dPNo6dVFmIilD{o@pU^_Pzm zU*ko_}v_T+yEn7O&Xh_(R#N(Tu~gD==47KbMcdmnC8+-wN3q z;Eet5EHAp2WhhAKKnZc30Ydrutr5$q>`F0^rpUX2Yc@hMTJSEmLT zSS@bTQwkKPmvDN7$$Un#V#QV(LuE`fq4eSAD@()Vw)t`Kc8@p;aVtrjL(a<^N*8$! zBS(zYDPB!}y370>gz7W}Z)uFZ2eF6gYd^(GHT`$r5_1PDh=!uB94tvemHI+-ehNZ> z;}&E$XxZabzFuTcP)n*0YV*Qz8&j0#w+qiwYvK)*SNSG9_Vze>DvflO0Uw)TN_xh} z(N8ImT_Xq|UrK#^w*KiMOJ|*?Ye#4R@$G7LR;d!$qO&3@Am>ZAtCrL-=8*fQ@zLSN zp`8w8vpu&3TBLB}@3B5dTsKdTLgzK6lN$^4RXsra0;(Oo z3Rf(wvnUpH8SXu<9`#S-tnyZ-fYub2vt(39ikgD*QxmK{UoOOk29_Ja39D%CXao)v zF8_Nq@$zqNt>uCZ^HSuPApd8vAzV`&s&>x)zT>&7>Kq`_D+3-doS_O5BC4R8G(Cww zM;IX3!6b5j32EPS9PMZ*g7NY!Tc>wJOI@%Wl`?59#Fzf)q{jL1Ke%e%kI=?+{djpo z$^7pbt7m9F;3?!8S-Q#sd>xrbB(0=W(L;!CwbvtqyxWm8l6Z^Y|6ZcDUgCQR&9M`9 zD4_T#ByY;j;r;xS+C+*ucBNfN{tkv?W3$EhcMPsiX{X#XO#CHl+$5kEftCvnJvk zd!g(Z{TXh~k;*9)1j7*aEVr!&aVeBn`PE=xm-)in{|-%j)R zi0rB95Z_4t6^p1v5>M+Py7q0(*vVnEGp}`ss^$HbM3y^&Kjnh_zPRLW=&P(KLNFbb zJ?+q+RFQ&#D#%H}4Ota%^7US#EWJY`;a?IU#%ZUl^a}#Zn;T~~sz4*K(PSV*{|IAs zZIu@`667PG^%leND9r=8#~*gff2QGCIa>OrJV=Bqh0~QRMP0rBVwfuv?o;Pud?cHVztfd?Konf*kjEU(=MKY`vK^sU zaHPevK;eyFD={z`0WvLUGW{t$Fb~}~JV}FR_qX$=#91~9u>9x$DI`WJ+md<{f&bhV zFMhIfw$XU@{u@8E{AlObe)Fzoxl`ZPvQ%RlqV}-c5A*mcTw8Ay@LUb_D+fy=9-rB5|f#a<3({J z`03)Z__k7!4s#wlL_@{_FR{g-&}U(#Xg1K zmRKWIU~dT;9fS*aPbsoD`xtaR8IkHdm0iFWilrg^qLm5_!M|xK%?Z|&$OYqfeU3!2ea&*!`0MPdpsSz!F34Bzz@HmJEw?nBXzj)Rm# zKlbNJgOCJUmyybrX1lM5dUkOcb#Clp`?bT&$F}CZHO%-b@R7edx<6*Ia{Hj zCh7U{R-?9{ur43YPhM{g1j`VY+Oku1^Zo>tAlI~Kr~Ef;`rslFg5@1()~J|q!D~*! z@tV2RxkH-TrZ*aOI98cG2Tm#;gvm+>3ig%4Od#b3Pw^H-HraO7?4l2w% zZ3_uI$Z;{3qzo|2QD)|#Gc;2=C9@FE4Ki6%Tw`wI$%OH!=WUEPEC-1wnSOqj)dWw= zOPL;&-l19&P;5tDgps9G4B&s_&B*0oBeg8Ww1Bb!$`ZoX1Kfp;!E-#x3(#n0_pU=D zdfC#!3PpS7$jV!0RmlKtjWmA4As^=ME(0ZhU8d!cJ* zn^^ObjOh~*b?)5rrpU|6`u131&4MH4CSp^hf5+dOHIB-ZJ$1u4Hi>6RpnBzN8wB?C zp?{E-aNT8c9&Qd52)K3JYF_<$>t>Iqz2wV2g;1Dyg&LBPk9E&tlG zK}q|DDB`aI<_uR4^ki5dCf&(B{wt%q8{M|4AzJQgO(S=*x5GzXlsYxIlciWEv?V7Y zlo7;!Ok-o`gw3`>c>hQqh%dcsvL>dG!i0-D#D1{4ku6LTS$9oa=7n|AL(&Nv_hE#W zfXtlmwgcm5>%&L`QnvuaBS-T+A#zmg#4RzT8}2?`94~yEj5E~s58b`tpTo$JR-Wre zrieGvu-y97I?hOBMY@0%%Z$IU?Ervw;9by1p_LZuh}9$ChxF{gXo=L-`fxEi9?x{_ zk>MNy84MD7>#;_EEdD6lD9i^qD7AVK{qo;DSo%)c1COg+mn^FxG-e%izeC+l^I_Bq zI;go?eoo*DABQ3|-g3@`Px8*-E%_{yJ(> z=#eg!u^?wz6-ozFL~anfG8ZGKGp8O#brFjuxAq)V22KzoY?_(C1-~Tjg?I+|F!;uy zQ=8a7Ai-n?yXL$@nrGDwPo5A+Sm<>TpnMqabsWOJV~>DyQQSqC%HDmEi{V6Bu-A9v>}%+gl}qnK?1pmW;0y!sy1{B`>K#V4V*uAZA&=Z zeXrJT)gA4QoGOg7L`x3B85PPjlEO=5J*}IcP=8%W?4*a%RCb8_;cpO_TXkDVvA)*C zGk@J`Jx;5HW4HpcK&%JlBF+3#yMU+;#hHEOpshMhlzv~lHa7ARFgGAat6lHFI3N}T z;dv;U=@SIL!K&Dy<+RE0%B$+rX z{ih`lMGeaf@d9P`gW#+kltS%x-fsR*KpDI@h$40MdokbP@8!MN4qo-yE4Ue44f5v^ zENB%GB22POB(frt!c%KwqbR}+DNuE>UKY%;dqXeUoa3lF$B~wqI@*2a2 z6{DD7c~2+$$DHXa>4!!zH$iRwo(9d`hC8RK6wsHNy<53xTIiASbgu8A%mIMz?G`s; zdUg;e*;;`KRMCZ#6lh3C^U~j2XnyozN7WU`@VNLfDsq-FMr1F%!B4;Lx99L6c{J_{ zKi>&e{+9jIL~k>lqhL+_QTSs&H=c%;xGY0pV<9aiy4X&vZI$yN$Pqe%t4!?X$G_C~ zz~|qKk+~$>!hx;N0geBuhW)_!YMRIOH^IgcQ2_kNCYN3)0L|n~E%JsWp?1oB|e@uF1)eM zG#4JZpd=Su7tqPUO+WUBUO(?w$tr0qlE648x4@x}LMwer;(1G;`X z15)@y1lO1l0_V|Tp!zeCy3q+We-C@R*+0X@-5tY{&9XmW7s?cwt0@_dTpya+4JkcbAR9aex4$Jm%W@> zZAT1iQW@m2T-}>=F05CcI`J|dsQphr`Yg-mr32Q90SFOb02(}Yh-ERu#>#-MOgO;~ zshoxW#XfBA*w&GBBr&X>L18_no5AsZ z@)=Q-3FGNsL!U*Pskr6*6*r(UhodvmzwhW5H^#Q(n_5Bbd}A2KAx+!314E^%WDiW;V-DDIOjf z{90;tSQKWh^!Q>LSj~HZ0_a&gCaD3K=_|&LYO0;yFzPx{=zy+u%A-_r-$;{^Wp(!P}ThUB*PxQagQI z-MizeUqscSHXws>R-nZN(^fvX-7ai=&SvqOJ#etN8LJq06bl$L=eGf-_~Wh zATq%zLsSRy3=;oLUD6US@~dmD*B5E(A&<;SGBrl_)cN$Y9cI|GhlgAA6iC1->jxS=F* z9k>NJTsXfpGd#G{+Ng_QV*doN)j1=DQv{`T`O@vX+P`K#vp!JCM{>m258l43Z10od zs+h>&nAn16?}MysBABf~H_~8n85iT-%H*o6;{;ia+N^$?qIqN|cW1KdACpXVcgMT- z`_0i<+SW&}g1>1`Px+#j0TBDwlxvP~IBogsqZ<8!IQR+t z?{Pw5`B-Hf<4wfG0Q&**)%zGiZ)$j=I2m{8`NP-_`|njZ_YLebWD5j?jmQIr5Kysq zF$5el6-c>~HNJp@wzFuc+nU~xre9Ih_Y3{8xPGdaoK42DQm&N&7;CX<2^)Yr!L>H( z-`#6>5(qo?Nl_w1pkNhvdb;_*;W`=Sz?UlH{t}TCt6zkpnW*dT3pm-fs*KH;N!mdE zBPVZLm(jMNx3U%e28^=dj!ugCOOD2np4z!;N#11;N9m^3IPGPXd+H1U$Kjd#;5=XUjraV zcC_jt?4OB-)YnOl@-XO%_ltzPuG%sQ%YkRw$aci&2leqMAMmntm*vUsHL}VbI|d8e z;L*=GPBS1$(5GWyzz2LNdk<4Uy6>N8!zw!#0b%u63EclyyX>#4E-|atb3v6uYA26x z;^Q@CCEUS;5(HyUdXMOJ@5&P{L zL(@GnksWFmsfW^cI6#e}l)AO>MT3exrI#@FZ0nN$v!0Tau@=|tck_w?R>~?8(*`3* z6atMEuh^XKwEvIhMB^oP5-)|3s##c%pn8@5u8T>NoM-P)n_4U*D!&vXm^F!ZZDD4{_VL!`^?w-_L)%{l~HL^J&w# z5L(eRV>X(4LsYl1>$S!pYf=eNW{G4W>xC`8KsO95Is!O?zsK)jjx;@cML<&JL(mwg9&XBpshd_p zL8+S#3_dKZqjN z=+v1DQtORLnGK!}nYD1YEi5k==0%GaDp!_;O`J&*WjekHp1Wa+Et|PWzSLQzyq`Wy z#YPP%Nnral+AJ;MoOmJ6wK=WrpbZ?Dn|G+mIi_=S-=6zN3@6|!_iFxdf1Fl_t}}^F zSJm;M4h*@RsK_0CIDG}H8IPx1r5aR5-fE=Ml9T)(#zk5K;CO`X^^9@gItVGeH6^lIB^ zlhYjYX3B!u!N&sF#Zwi!%Z^rSKhDw2!3+_Ld|eGX8EAv*(mh<|6?mvKh8RaGWZyS6 z5q=zTA@sIbH}9kJ4z$Z53@bZX`0@{RkkER?5@DUNPc0Q$5lvEh{&hj%&g%f=*K!4Q z`FkhctMW6u+App7up6{zD%}xgP+IF5fV)|qPeJpb>K?WcG*67*$7i7SGePiDw-{o= z?`1g#16%SL22Rq>E$j^w-$j#UOp}5^Huxb*_LuKwj((Li0C_N@VE!?xO#zbP1q}5y<4%>^mDG8U3N-SIiy^hO+&7=e=zN z4w4tx)4xN6=EkFCGz&X}%#Txp-NeI^W_{BzspkXuL8D%8aKwqKV0*%#g41BcM|4XjYvyRx6?*D_!(#BS&_^V5%TTasyB~0 zJ%tqxW2?wX1T?oPC=jJXzS(ql&eTH|f41{5q*_W1cCHNnY^V!r?+^rYq7RHjUJW!Q z_U6#4qGj*cLFH%~t7ft7gp8z0wR)QPrzq3-Y~p^q8Tg&R4=^-z1(vU(;=GtRhzAt} z#++}LMSWT2pA@>)?0`Fb*aVM>poV#2hx>61AG=hk+nq_*$N$Fvpu8Noaf*&s{v8T9 zvJ6qlNe$D|gGzr~mvr_n;gQ`k0E~#ljXy#X>Oiaqxrdxn-_qrMfVJG&QSKB#0gF)L z_#r3>*aTiGgK#5}-L)zn;72lv3VwQLRqw&HMc+DuxEgdxJ ztu`A8M6{__Qs}hkT^1RYX zoz4)|CUV$81jOcL;;<4|Lwk#kx4p>iYj4`V!`X@W?9s490AEEUNV#Hez<6qr;%{j| zO!oYdu!dU15c-5OAx76IZ6+8@`r+t(cy1zgocY5z!pEycTA+So=)>j|eKgrCYKqeh zxKe8Dpc!DaWII3fYS9WTQC8Mn0;rgcjfkH@Mx?Mi--zkuSU`uaPll|J$oijeFK(_` zC|@~8D;T>PpDDj~l+{RyrAa~O z)Reoc;>0_`PK+si4H2yk)J_SE@iasC&LhICt4D5bNeyjoj1ro<_7u%IDaR5Nd+BJ{ zLRewM+LW&%pe4du2-OxdrW1FGJic464sg*DFX?O^KRR~NpUSJTbQM^{!PmW1inwF{ z`5(CW)sy5rS8sg75c3CSaHAMErLMDhFNIPQ9aVsi`l4bP>TuW&3;|e;ZQNlV&M8P8 z`NJM6D1B&Nj?8~Eo_9mN8Na5*(=7vh-$D!GytcjS_9hw8MsOY$x==7aBEwKI7D_}J z4)TMEMKSv_JU?U{P*b5)Hj@bPCXuiKX*hGq25Iq#iFSU&f;`9Ns=p*2QH!BN3*m;e zh(LEaA4`v7fJR7U_C#HdJTD%urwl&oOfj?kGl1vf$st*sMCsBLByaA)RShiYo&O;r zym&04llrINc%IfB@yQjxx|nQP`uD87kaDRL%JxuIoJKr$uQ@1uc1vHNJ5FG;te6)@ zm==a!n{9?4XRVUF&l|x3a$8lD-y$3-H3G<%@RJO{79E3~A=UG@T>OUgrraT`EOUYS z%?j9MzD?HILbIzkI>X87{vS~EmhN++4w`#WSzU9AeA8CibNN!4en1WeDLndh_zH-d z(Cgrt)#$IbD;P5y^?hp`XB5I;+{K|SRBwl1gi3>Za+Vq*V)ehS&cJY|w!GL#xHwUr(w*q?(5Z9>{lEVIMXXmrue2a9~0Q7?9NO7E(F|8 z^+7gae!aesOmsyQP9O%icSEf_5Ac;qo=e;Z{%FayQ0S`cEZT&rGpqou8~nntu8|5g zM#Xx0qlY`kg&{q~3b^Q0)z#Au`zsTCp>#?bBcQ{+PF2W1tbg>ysnK`q=3`B&YMgn5 z-&ceYaX~Od1O*t0>7ax*#(2_Rvn+{&-E}8k*s0f>rk?}W|9c8aQ>=}EmNbJnyc~e% z($&P~DU(0z0vsMLD_u?n7u0OMNz@?2+$^J!2?b7=Rv8QlPcGano|Nf@xTr(jKRu!c zdvJ$E!jCg^ti&?%ar~qsWB8Xf!b;+C%Sp(~{p(zk2U{0U0P53#)U@Wk6L!}y`Y)$k z-Laga8+nOm6ChEQzYvga#=~>S0_ZyFKFt`c?{VM2bb?6yPz{-Dgabkx8g<{^$-5hUHYm zAc4D4e3=?3(boTw#f=V&WubUpX$37d`@W1RWBOMu@~j|-)w-09DBFwGxpLOg?%;wz znG`%Ztf$@pWY72f-YiT#&3Kc06D7i^)m~I9BhYPpzNDSBUJj5$`p&K{q&uv* z*4*cD{X+eCw|&%Rs*57&{*I>c8J5ZHW)2%@3uyh)IMWae8zKpOu+uEiUtTJ92nX5h z7K}?BM24Qo% z7uiPmOqs$_prPGge;qwC3BVR2|AlMQV--`N7BretdR<8xE?&JDS!c`LfA3?KwcVV) zvL>I@Bs|>%-$$hwYOhrpZv*^lK2%hqmy>vj2Juo0u^M5Iz~jevJGs*4wC;GrJL9`> zR=}vWe{ozKhVH6Kz7-KC#Z2xUjnR8LvYP*3##as&WjR=~E!PU$w^e!|tdxdKT02s? zVQDF+>(0Alj+)iM>a1Eq4sm$O#~KvuYPllvPC@D|^2#ltsiO8ly~dr5?}08H`GHAO zB9=Ast`cjhz(-l9FR{hfa-9nABZZ2%!59PgLJZMgn(ydr80$CUkqluF-%RNf@O&QF zf?_??-3e57)ECKAgoot{`}#nW8Flk-7^@Xa;)%d=dFic`9t=h z+jl1ficna3wK}nbzzvin<#Uf{JC1mm4*oNQi&k{Cr-`?3{N?D8w(*%zOOfNcD!%tr z_5B0zVdGIgR#n5*ffOembcPt#{>yzvI{ag+tiR*pFR8N*hkhdxJTZJ@?jat<_8KC1 z!9kyoZ-?S=b2NmYmfsYEfqyS~^*DYCCP=n`a{;@EP%i7E{h`-%yjfv2U{X|`g4I@h zoi$DM$FI`2jgzxSQKu~>IpEj^^Ki4ZH9z&4G9QoBB|6cJ0!q_*%kIygjzIS0f^)3l2&$nrl`^bFia$aZGq@&6pKly}6V+#24 z>s_r43;l?wZLJZ3zPY32>|*BFJ*$Zo<@`DlIlD!Ykua0ZeA6VNVPl~{6ZjjXha}F; z(`lff^y?8Gu6m{1_%*<}`2ofp$pyRik;wW2&>#T$a=Tuz`$?}1MdB(Mp;}9a`HUC; zKze;qnc0w_Hdt^ntcRzPvZ1?$>%on~|>nw8QvZa@gV1h6`Nc|_mYU34-0sj~L zE7o7*JkD%v00`es+Cmo?f;dO;K6glM?}tgHFJwHUJU&JwVFd8!y|N#7e>MP9q;Sw( z+HVXEeO=YF`BWg%E;p<(VG(-7W~Nq|)hV%fw%O==&d8yE3)ccM$P?#C*(~x}Z+G^7 zccO4+ZKlOQmvvU9Wl>M3k6_9*l1ZOvoE?rsuh74p+@7GJr`5>Qa{>B_OZg{d#Z=TC ze{>x_`k%Q;Lt4x) z7!t4p`KG$%5r_xB3w#M5PbNV|9IIG9h6Qv&tbvB5CJ{qWHb;SJv5m&awO~mzXG+vl zl6LZ1$7jl7bln#sSi9plqK~H0%wpbOYxdrBDrXtdkPiK==`>?@`c;=GB~vWpYZa#_ z_^Z|t2BAJF-`<+idG=p}^Qhav)(b*zxp%TJC-ixlV$G_v#qE6%1~mzJ@8@+-psVw~ zDOAEJU>Fx_FHXG=%lYlWyVpqR2$_F^^=F*5sW+WwgpS1Yvbrr6x~5LBQ5B<08+k9nNMF z9?ch}I7v!_$j#y00`TUVLId=o8cOK5 znrK)y7aIDs5YEh)H!M0yGhvE^OPbvkheDYCUaD{7aUO?-odr7Bs@0nFJh zH=bfp&o~muEg%8z9h6y~(?BE*<~#gr$SW>G&U)wXi#~~H6Cb2D}tc5eNJwh zGo+YKSA1*4voQSUFvn#}&;Td`sTjd^())k52}uF+$Cv@#?=hVzix%c2;%Hha;IQZ< zS^7uvO8_{@+}o%Q=C564&MAuSVhdo#wsoxxr{Zxdae# zAN4^l;HJgMIchvUf;C7JKtyzq*0Jf3{a>LOaZSchVyB*`{9p;5# z?>{OtEKKHMo{3_lL;D^x^t@?MPusbCce6U5H>vr6-A(-ThMT+RrP_7Jsc=uYyC0r|8C>5kjm> zM<5-(L*Dm>Ru9e@(e*B=nzR@ct3v$#>@e!ME|_omT*y5~MaY-Evcc5?yy@{8Z#-z& zC(Ip3hMp^&E9WL<@E^rGGS&~(Mt+^7eOPLTlZL|9j5^+-cIrHOgiV80^v1iu-&5SA zyDN#nI_-s(&F5<7{QFE|fq^hX$Y~*QTv3ShcFn4gsUSVw45!@lA#|GZ?gRn#lJR}C z>NeZ|@qD*e9)6-wv(xL0m~JpAxuvCj8-o196V$s2yR}v|<_6THVmQj4r3P`wqc5`KPr6br5@!_r(;KCpCnlCJOSgRcB@&S>LzkqC&GD3S zWZR--mt8t5uTVW{@lAsRVN=ZYsOeG9gIiyd*FL@(&^~geMnPbI)TEic0CmuPT0J4y zvnJjq;KzE}X-(4Le?gU_ETgpr!I-3Q(3DC2PnIHpEmE``g;T;M)c3#TH`JEM&tQ$n z3q;FG8x!^b+EiZ?F@T{N1mbUw+Du4vG_uN$Apm7dWxwLmk$?W_m2Eyzd02<)g7G!Y zc8M=j7NK@Y+tT5}3}ok1l4yVja9zg|DaCZ_ObcAY2ge~)Q?KtobwKa>lm7rIlI^s6 zD*Wo>q|~t^^?!S9=OL=}8J4;IrkRkT{dxnblkCvjF08pP#1Eiww;=QcS6S$*;gxoI zCfdzg=_tPR_4$i0*3TVE6iU@$eCh}PEMq=k%jlV|$27j}zalENl_BUgtJA%s3W;ltOFP7_eCV5|N{UC95| zY+*YK13Or%0WP?or(zlBRi7aWw1d)?VS`E~ls+D5RPw+oni}ru3|M9lZj{ zln7dR@y%_05!y|GhAe&ohi59iR zsNaCkmu8M6#`aq^7RniG>Fl@nMxcO)hB{>C45{5>O%m-{>DW^us{P`jv+0>LOyocm zr1`|MKu&h+^u!48XmXM&CeJ*|m>9K&HJoB*Q|^C%;KO3{ zN{Cen=^S^K$%@bMc`1_SedA!DcXaCU-L0~ zY-{B*BusLc^3uH9^c;xb4F;u4mKEUrok9$9>a|St(~BI(u)!5MFjh{Cqz?MJCS4ow zwTY^@*BJV<%ZGk3%K>LKxX5*{$oPe(D&&w{>lqyRCsUFfiD>BH)paG~wm3Kc}1t#K8jva<1acdV#5Jh;F)@uYj$_#|h zT9I+H*vQ!l!6_5!k!ky40)zSM;rFoLIl!~$G;KkcAh1xwCG1bQXQTwk#EKNdp=$6R zl8m7hGZM+E9dT)qfODd`k3ZKxM04R=&>*EQ(s70=Vq}%};i~KrqfFE}iRzaqtYIy; zA>JlanHRtj8%L&!Q`=0oaAE9BaxcIhdn6G@V@JhoeJNkeX||y5PC`0`0UnI?jCfTG zyf3NBG9PF5`gR$~2hPln2M+WEaj3)|vp&yJ-vUBHe!eR|#h6GkiI%P&xMQXAv&R09 zYCXmZ6MeqajB8Zr1pV7eYD3!+*nSCWKhp>QNo05+p~;7Je-eq!9#N})1*29hZO(>! z8d{zt5c)DIiS6voE`*&u=u3AAj;1aZ7x~2$4q!Kc54Pc>T!fz_nY%o+%697QC-`f# z6XQI(x!l=81y@wF(d5m(ob-r-yojuGOAs-ydNuMw2eSyP2|8dY|)KZV$Ev-Ns+B9RlZs zR49ISe2#epE;IYY{PjzLJ^4Tdj_(X`4lFbdg4h@%8YAp`M|*KAf4Eh)hZFXb`uv^W z(BjqFLr{^?bQ^~3lK(eP=y}nKIpwftmobb_sy{u6K-+<_;7h&2)M^M2B05w~DlB>N zOqUIeHo@WFWDv*A@b8cq41?W+$R=RELt2I2#yR3u?`pDxnGCS5z|}u%v{}gYUdI_K z2+fM;@=qeHBi)I{*6u4MDXJJ z%;HpRE_yA#bkAz$P=3 zfyazUr;iD1mEX+&u!%#?qElmbz9z;u#4E$DoA+QNn5Se>&sYSoG5v>g=Do9^5=$B3>9nQw;M2W=pZodx1^^Jd|c^sEa)r zy=rXuE1Q~R!OfPxc+8+7xHs>|irY4ja^chmQoc$Vk@~oqj}}iIy64AAZM6JeNm!EpmkU$0{~C|@eU%*9!^lMWO?`p*$bQ2eMR#UMMLej?=YpVM3U;jpMfuEjHcEL)pr@IA70$-M8j>iRtmKbF_{ zVRu!fnDy`km=l;MS>p?8+%?@l*pZxVc=C6I7M*KNY3>=|O#Yhq&xQAp_S3N)9|&D| zTlLv@rQw9-gQs-4m2bVgLJ5MOgJ>^v?GI?ciHny;ymCeiND*O6I$N@>j?XJ_obn*; z53tk&Lk?=5vXz|enWfp4;`h#}(R8Lb!xZ4Jwp=P_8n8j#bC{OAKpusrH2u}<;a{;$ zf>dry{)%M?ub;CH{Io!t-{&GkwwLg~hbkyYV?0ImKL-C!5^xM%8rLBS^c$~i;l^T` z`pI8C{D6iCC=Zhur-z&1j-#f=nXURO*}d0G5;26+v{uWk=IMMUFT2IX$=2xiM_i4*D;HRYR9AO1via`)Vc6P9o4i7|k+ zWh;vM!gb1uP<4I`Bwict6bpZ2`M)++YOXnWR|m^1x+*Pu8?cx7v=Cjm2^I?Hkf{xeO*^Q5Iz(U_ z9xcluKf$>P{^B#^?aC&XA$D$q^J_-aL8}J@K74~wKuoWp zyv7E?xS+um_Mj4_HO>@z#8X07IF20H)&VfR#aNCP*ij$J)o#GBc_Pgg6qCd%lR}x8pdsv)yONRqs{hTGGbNq3mkWdSbgVJ zswO3~ht`-lBFb8pAc%F?c`%z74C3UspSbyCp2d!1 zJVMXc@%2FzTk}Qn-JRP7^EJNF1k*&XU-qjx;k7gshIy_YncFs;+mjHy zyJ}UEp-qWe>%rnH#E0bd#%?=@+G7@vJ~kqLk#bH&X~2}mkmH`r;*31Z0tTy%rACR7@A^sCTJwIQtoX!aO}kK_G* zVB#NqY!oxEl={U(2Or_hks8EgZN_)pH?Bg!$AT}?LKn%(z?0XBz_Q=bxr#n7nfV@x zd>fvGa^&mkzGZu`?aJ0Pv{@bL(`+g9^x654DiV;09n5~|vCl^6tZ$su9f&de5nvjB z^7HVl_xEgv{$4~svgZYQ1L1|Gr4!i3JG=H8d@Xn?UEM}{`%zn`3~+?<4K!K+66kt? zPlULnjUWLTNKZt`0CO8GOQkw?qibiuq}F*F8of~P?t3ARbL++ut-r`OS-}iOtc>Y{ z+DYE~YJUZw|H{<;_d~82sXONe94#exzmCUff#fM_djs2pC;h9oW;{Wj3CFPy(=T|L zQ+7}EiMwwC@{R&gowYyPu4_vgxo9Jz7qPBHNElPb6eoUGtt>IzMjI?E1}7IBH~gak z&Pu!W{1UD*C@vtqF>g6g)s7#oE=Ikx^zoNvEWkVSMe8!)&te$}H{IIO;US?}km$rK zpb1|BswctcGOagvxaYU(RAE2>Cqte;Ti83m_8Bm9?1{(LOBeBw<{cyI432%ceYk;>_)NqA%izR0QhW?pfO#y&6$~ozo9|3 zp!3m=0ZTX%oV_B<)(k645s7eC?M@0doq2EZeUS_*tkvkOkStL%z|6RJiF7iGkzWMq zw`1-#v~a;-LNPuXkt7(?ir~DlpQl+@6`C7R(PpBiG#F>u*Qj?SwM;joB%=0fqA*zQ z()wHi+!)Ro@zaEWu{IpwcrYQ~StR96p3XIh3^ir41gZg?vx*(NSQz_tEm(UVgj4=} zaPU^xUI2howW=m3kMA4DSLwPrJ`L`VlF#M{1bWs-q?t8%_Zd(5(QQ1_2cBw>mdIgi zC2INH?-?;h2b>2U(W}#G8mCdBa&V}d0LB=o3_I4z@kH_YZnLUn0)()N>rH5BU#D2h z3+K=O2zrMk?1srYKXUF3%^iU}*}i~j*A_)})zisF^lqZ!@sab4$EXkpv3>-3>MT14 ztD=s!j7#I!`Xo!yu~Pq}GUIWYWKaiqI=W+s`lmmWD?7-CS9T9ui-aGf{H>7&nP;>zb<#v(;qhxYsIeJN1 zpc?X2t@nRP@ILfywGwjdI3(q=ul@yWO8Zn-=i|zL81;azOVpYWGGHN;H2?qzdjX%d zbXSm#(Zla7gWdUTqNV|?DICPZ()y&f83OaeoYpzJiNd{eDp998vLtxocX zk_PddDBx}C2G>gdirM}#h|;iM37sG=Hr$Rje2eEF(w6ZbS^l!i^eYs30kXpd;QkOmt{&XO{dcAn|56rSAbTEE;3di(l%y$fx& z0=T(VBu$5YD<}~A8fPFq<|s|6)*!C|z6SSX(y+yFy<@Shc)drBWd3ZdzMXLvVSR8* zy?TP%Pr2Ig-H&O2dEdee#0SGpPt^qb`BwiSRYfb&axD9I)`NCQfrueYIiOfd6T~6sxR$Qmg3U<2w$;VI0S>+i z*-mZc;WEB16CelDSt1YG-=C!$-LUUyBUUZF9XR<3tP;IqmLWvhQ)8;qgwxCm1XVuL zvM_AHU;SEJ^M4DM8{YK=cc_rE2*)zi8e|Gb8rXROKZwE0ZkP^FqP6xv zp~0wKszEC(m}ED=&f5voc6J@XCH?HUC5uQL)X3(q2`VWj}FRx@Wpz z@2yP<>SeK6#(A1&ngE_#&+%!%tZhB=^u6B!4*y9%5G?YNyEn37iRePb@y( zeka~}VbFmYCZdSAkd`^Ye7y-)$tvVmKn1I{760ICaIpZBAE_6bfphuvhe?KO54-HE z9{Ki&Og_KBKi#4+@Tj&(FlT5A`K4y51BtxDP5D_NEcEOG^35p}y5bE)FQDp!$Z*H#g9lFUdn4|rKJFE9W z;*B`~GOMXRbI@W;!P}YJ*V#;Ix$d}u)bYhK!H>fT+ak?Io%o+(nK!mk8AH7)I05T! z{Oan;b7j$y8aY<-_w?08EPx-gEyj6Xv@S!$hpUiNr! zsO0NNXlNMEZ7@Pv2Bl}ZRGL)I8E(^EnA`?b=xjUHi~AHW>vP3+q`fR+TQ~{lHBCiM(&A04)t2^dP^C2oCi4QytDPrOkQt zGM344+s_3qhWH6(Qw1I6NNcMi1h$Ez=TSQ@PUMF6;;IQ#UM1!KsCqQPkJDai2g=>Q zo13a)xDEtzx_}FxA7bo=TF0u)Rk-xS8hGX@oZUwlK&w&An({5NIbi-LE{0tjiCEs> zMh>*LPz+<@=}}K6+15-1K1(%4fF*P#MrDS3 z@JNgsaWyRc;DUe}1i5TcpD>KfOk(Gbi9fuaLj5ja5!5py-GCdiEXVm{7;j6rx-ZPw zG?6o(b`yz4P`C&}6xViZM~tojj>!95ByCEzR5KaLj|>%?U3Wt4Qx=oY&Zo2 z4F%v>f^RIqj}-*X%>@{5aau|Z8!=EsD;i-~$P~0e{X-CfHmaBzbjZhfuJ%NVFb+uE6&^Nx zS_h0;$U<3Xt%o9ZEAdKNx4feINFTLDi5XHi=|Ce`Q0q^Z@tBC{jn#0i+mmd|Jt7}M3N7)i>kX#hF z`A)Zu=zi;mSk2MgooZpzc}+R#R=hcizaEi$EG0f>ymAvhzXA4ef}#+D`mszy!3^G`tw#{kXgvH*6dh+u#H|T zVox_k@{n3rRk~oU$e9KZ$tm;P%Y4O3^_#3gw1)bUgk$puXq&O!cj zX}ng!^do{RyIm5+I5bxS(Yk0%sTa@Qm;5V#GXz6Gw^*AHTp4;-^JQyC6`P)ijoLAS zY(_Y2uUA=Z^6rG^Q@`s>&mes_2~75ze^<({Xb>M@a|X~a3tQ6Bsz7fb@}V}*4K8}3 zE)0?m1|vs%x2}fjBm{POb?c*G*+7 zc);uYZ#$tfnG1c4m;NFEa-Ez19z*dseGOI2V(>HuwEolbap9}Zq1lgiOj zk34iPfiI^mB30am`qKw8{0_kHV??d-e_Jzl)yR+_;9dxb?T}k>%WpC)E-DLDfYQh7 z$ahi|eENB;f#Kd+XQbU03`G0LRD#LqM`<<;70u^Hkgd3RNAH)fN1dZsQsdgrNy=W9 z_ix`{2i}$eyrX4Y_A9?wdk&L> zsPn==>Hsr~5mTD|e_4nqOShLBBriG-8uR#HYMloH7-lW!e?g3MjBXxH&ab)U5Yh;S%>;9w!j_Z5X@ zQz4;r$&7pbZSU+L8SnZBUR1BP9N}fpIatlPCx)o>uzbRKsMi&GGS3(DV@DQtz> z1P{q)g?G4Ip3?I>sl~XL_uU(u#4VNSNRvZ4+Mw&JmZR&M#-7Zw_r%?rD{n7j3vu(T z&(8tgy~d(K_Gm&I7~s!b$PA(st&FaD5PJML>s<(Lrd*8J;rmtNr(;0hzqirJSBNsL z?_7NiNn(#E9%uqpy?IYdryxKJ%>1Wyj=1bye;4id=q;iYFBU3H%0ZuJdM~8c15_ab z2AMnP!32d^<~!lL2Xb~)=%owz?GJST0bTX%y|Ln~XLKSL9Uy<;cMWPW~!oq@%L>(^AM7A=uxE!kop!^vPlPrpt^v zGv3;*5()jBY4Jj;!o_oyJS#()E3}3`&lZ3Y#sO*1CW-m^MaH5KGAD+_E^CBFgCp6( zU;|y#NdKqw7wP|gfQhj&VM(TuI+rCfr~+^Th*7&>p2I?@NR1N}B_txUw102E`Z*9f zjJTK#NH+#pXlbktN4}{nX+ZJmSIv~1fE-X)$U}&>)9bNqDHQ&$Td#{m-L^=T^K8^G zj?HsQEf^Eu?ZRACm`?j^Q}Coqf{Me8h!S|&^hhOnX_;~*5NYHE6jHDHOPQP(a$zDaIQcvF*LLZj8o2`!@cAv{MpRqxUq{(u=J48% zZWH0=@qhf8!_&L;P+0v732c!WHD&;=$f;Bj`5l0|vW@KSk-?Tgeaie>2IkSIUK=&P zA6vthOn7z7No$?OBfl&G#83Me(L8VE0ohk1ei_;1xl{qt+S@EGO~8Z*e|SdmgGYdi zTNOb8xZe^XYWychfdi1PCRUb8#*wPE&Nd>K1nsD*xbygKP66b=wza+qdst(+<8Yv> zKXBXov1B+_&>~$|{!b1dQG*oM6M;r4$Zv5^IMm{Bl0fzhfC`&rAJIn6jOYM;ym){X zyF|u82jw+Sq2F|W>MChEkrj&*Aed>7i3sla`HN|ELX_(%K&X#=vSOWO*7Un12nl`G z{X?`FN}op}I=;X|P`vG?frkaVM>L|GI$Pw(X#OewT6*0zU8e&t@Xnj2hF_&jP)|mC z{GcG*s#E4+cF-lFd@fFJH5~+p0t6u!_*ve6X-2I@7Ql90p;VFLjwAdABV3%N%{Be6sEn;f&`Gfra+edzp5#=od zfOitV5+A%K1Km(Zm!2$a+!zhc?yUp3uN8dXqp`{G6C+28v&we2n`cFW-yG|~kKU*5 zM7J=!QpOyJC%Wf&fVfg+F{tH+lbxk`UBvp4MMpPlZJu@&cy?vEQBW*{<)r)GxVbzO zeTty~G2hB&7*mI;A1%Tb$XKSTf9gbVq(p9BW)f?Idzlw5&euLLE12|EA0Mcjv?n~h zxs2`ZDdHF%UCJ|+ihsPXU2kY7&t*tt5A}gv9*3YXaxok88LAU}bKxU#qKfXcyh$NM zR1E@#m64ns%@n(lxr*t9x!`0cVq0&b6Gh4E5R$TEXS}x2wjCssfNmeFk-{~p8n@O; z5n1(JR-VW#7bZ2J$ncT#!#3urN{9Yg^dJoPJeAXA0n*J-WtjG1>2n!&rZeNmM|2!? zKXK_Mpi2_|T zW%;ZG2TCnDK@KS_QLa_qi0jOEVxfx%+WGTcQ8%qYFpzabRkr}b zHCXN|CI%Czmd97w@}FF6->ZT9m1y(ai02Ti%JT zF3I(#$m)@1bzabk*oNa{g!*9cV;Tmafz*th)NO~<{G*NC%se6Q`E=F8R##m{8e#=d zxutZFdF3>0?b+4XdZ_M1OxrCngc3CsIxGpYqOVV6_gH%v&*EH*s621{0xTM~eQ>;6 zk6hV_F`>j2J*4=m#FQ&`oc9ShF(A%ZDmF;9Ot}Uev7?Zae~tv7&Cf;04`B&^|I)jv zF)DJKvJz(}TlLrkICY zkZi?a4R$r-m5(lAz3hTx0h58c12mCxEoNmxA)OmR!?H*Kx&y3bQ=jD*Dl&dk9i`WH{_)IEdoyesZC#not-KZY zLMo;5@4>yU6YG=0{ipojmzvrBjuUlD|J$iubAF|QRuPlwPl~Y5S=4CK7%0cG`#Zw&M3gV zVZ%;~;{mZ0L)4o`_f(c$;iEb*fD?4(SgB)or8m4xD(#cfKUi#B6f@yz?h(tE&*C}D zyqaV8j5Qz=t7jSX)a#4%Hs+Er@O>MLa5kPgjMWJtmdp7<0ksGAsccoOAq)Z-EfZsc z&p5bCc2Ljw9xly777yt{+@lPg$*>`ORe@? zQ0th^)fl^WTxJ~1N4YGuSjLhaZ}~TIRjVseF^7IsSDl*2|MV5T>%3iU8<~4>pil!> zQ~vabTH->OZ)mJ}!>G{r)kpOL6%2Ca;mr5X6p8d@93c?y7hF@IHV2B*42h{IkmlUN ztF@EheR?KaHIwy-Xd}=x=8fD#OxP<~d*ps82qoNee5TOf;c-!C798BK0){Oi`muM@-_5E zq$7*efNAp%)7;?=xxBPtX+oOv*rK4}idA#d#h>&U_u-iEdfc^i$KUEMSxr%~4@~VS z!Qbg|#)&JSgg5m*<5{H7Z4>+TjwuGlbIcML@k|*P1;a4kOkp77xVvD6&%JAZ$l1Z7 zKMr(U?Yw-W@n2!!*ZS@K{6ND1|6{Bxi zMo{2NsFd#$To8j??y%?EocCNbwY%5 z7ese^H`9zyF;oCM7tJr1dy1fS%4Bv~sXG>`4FU-J8Ga0Iu`JEaoBiE&7;X5CcWcCu z(YJWit?@H6uNiu0FajSYH+UtHBQ!`EN0NfBaA7f|Vj>oICaDEJMpir`i?WLn_KGtA5q!SVrfR@ptN;SAheJ>WMoYC^z- zE2P8~x=fI#RelxvSF%msX4Y|Lv9ga%$47X~R6iZ>;){WtbK59^08TF(v(U z&WhG$H)$e~kSr|KF~iW9Q36+@;KXkk_eAu%vvG`x_Ur{}9JXryk7`XUppt1m zy*<}g{PYKttNxQ?g=%Od&l^q%(jfq`>?!{(o2Kdt&y5?Dp1u!pBWWEqx&x^z)5Ju{ zWGH5kVJ}lE_jQe8%;Xi!3kHflx6A2l0-EiSRi|E#b|?FLYA4_g^=G0G+2PtIWyCPp zc?0wbq2H#m^PACbGjF!oOgYp!^qi}dgKqEaS30=7TQ+cHC6Y!hfi{;pX-NKC8Iv+s zArkel_^BgLwTi84ke@CspFn~RH)Sr=YT0-wfjQM!X3v)z1mFL0@ZHOtNum@faiwoSZ_Bb7+PFj zWZy^)$-cy#NY0F$nUOW;H6ZusPJp4{)D#lQJ=P>$>Zp@~dsPh#D0X=avJD&XC3+}W zOz7p94*VhxrrQR28Oj1yS@3vDt&ba2{7xo}4ECXfU=x3PfWG6ze*?(g6v!ekT4pjLuiqHiWj2G#95q44~<^e(JT$jn&gy-mhmf*7@A?caO~A(A&A z4WT0bkhbmdp@-%>;e$cXm_*$|RO#l{Y6at^=`6wwBIgN;h|vD_`Y$$q29`xy5gh9A zBBSsZH7y&#$DvKdRq^vlL9(b#Il-gtkWHdjt#HMZbS)Y7;uDB)4|Mltst@ENW6x(N z&OEw!K;Y>Kv;#K&ardco^6R0jz)PBA zAdcNDcN>yb_eL)g1rUlrt_gr<02oF!d%8JT(#WcF==14^$DtiwPeR4ZP3zG! z_hsj68{NCRy1pLB-l+&aUAv2kqXZx&+B;-Ri{55vmxpk)k6jIxl2yuZ8OeLBRXEu7 zBO-)nm0zwXA(1(P;RCUO${ng)kHKb{o?>WwQe3>~yCYm8l-8EUk1!g<=6VRU=W-%6 z$5$`3h|mM9&l$0Y}XWgZ^)4DD{BLbCQg)uWp#uohB~2X_18?JmBbQEJ@%Qz zPYjDhJtOY&D@;^cM5Id`fC|k3XkWdAN<*D|X*1+llHxEK7DZ^ZW3wGaiGPX%_#wcQ z%rNHC`FvWTm1(x8HufZqKoiiqu2zqIW*3H~8=*w7*sbbVQk|z&2di}5O*uvJrL#{` zyLK^KlyLaoXnv&3N?$cS|5ua~p?z#(YYDMG-X-o#H*GF>DSGi4l4;rH<%SHW5mv#F zDkoo4LTM`RifHPnn00?;{Z+PYkt7;IlbZ>WQMBHlfDWa;hT>F}#PklPr|?@0mBIFK94PSRJGH!gTp$c2{WMbgiv* zQb|jpqAA&dv9gpFU4xuwgLci#y4pxL<-4fW`Xj_mE}5g!k4 zs76X`K;QK8`~G$2|4<^)gCO2)9#C)lu5{}JeT<_v8u{=D?u8?RIX*2o47YIqw*Ae( zMWqYNgXNtBXJwTlTfufGJ5%%tZKb;*F13I%*S=Q2^(m&f5b*H_!l>whOH~CD3pbqi zCCyL2Ed^x)>YyaD0}P$**!ST;b|rSfd&LXK;+LSm!TK=Da!#!cFuw)VMEd#>$RVZtrQ z_`#^EEH8oE`v>UlrQ^f?K=F+Z;9v;oeeRibI#)2M8J`aY7X%MJK)&3(D2qoce`9n# zz_4+zwH#^z>R*ij4zO9xrW<>BS-fsI!FY7UaGyo5l?Z+MBp2rwe?AK?_IDPHV|E^vztA!OwADy0)}}?2#NvPQGmn z*$fI(6>uJdcfasYRh*hWKBmEuloWHcX~gZBKo!veMn&T{=zn6+i}*7VoaDd%{Ez6| zfSFtWmoDsih?HSv!zRmtQ#!`d)CCb4;zexQGXIx!;W=W6UB8Ge7gs;ScP7t{WLD_! zk=(gQ+^gL*=8l0bOST70B`#@qKVJ3$jTAW^c)l7^27Bp@6P#JSqpuS;-<~VJuRoGB zYC)OLi-k<#W_sK;PWktPPNhiBCu0LTD=@y#ej|^Qh5ucUXpN>w9bugaCa(qpeWN;O zUl;ZaaZ6tNdPqEt^nwGTC@UfS>7<+Au|>PPS}K&k!>-QGWgP`mDuc@zSV>GM2=l%8 z8Th$=00pW7xx+03r0t}$iQ%H=c05qH5GKUJuhQLn2RNB8yWZiYZWRxBM8jt7*}hJ? zkX!T)1NKs5;#0PTk0%Z6BWf4+dW+0Ip$Nd``|l{CGv>GRUzZM8Vp132z?!-V0PZmjMo-8aSdzT9y)_T z(-d5noU!AfhLLMW%nITtwb|aKqkX;AzhpLzleOgE9L)ceDTSBaTY}f7OZ|6VhAldk zc%P48@e;WFI~B!gYghnGI+v!Y>T25wx+1?A;xS7m%ET%sZ5c84o1ubtHu^|gf}eXu zzkJd)M16#*#|hO~S?O0ad}CI2wvVYux<8LFtBd4PiNOg}G8buIV3Ku>jkVV?bO#@h zNEbNi^rcv=Gfkrv)&jx5N+7n&vFc2<0vi&ypp9V}A@vpmhV5+e(r!wO zJ*~7U8jCKPnK~nUag*+x3EHo=7&!{>9ML>x6%v-El{28nXI(l2wEEbS*dQmS79M4i zFflx}6gBXsV`XPxGH`o#lHGPV5p8=Q9LhQRvnq!&C-wTSKf4YS#4H zhmlYx)Ua=P`Sj{1*-tFUVm3sJtk)!{lr3)2>k!t)^rJzwonwY0anX%wdDuPG9lmpy ziwV_Si08+#;!Omnhr-juypM0Y6!AyuGpZCL@}S*f;vVU5il@4ifAz`T^x>7#z;|~e z)i3k-~HM|5hHPo~i4@+M%d?z_N&vM8;SSbhNa|%r8MqiJ-uG7qX`-YRcKFdw`glQ>4*VIU!gu9LsVl7F2OyJVy+K_~_NpQKudBq|W%LylHlWcRPQ9WKy5V-ORUBd!lL61H@bB6s>xdPTqUsq`DE1%^-`)Fs7QtNLjV6)Asya#pf_K_ zkr-VDr<`WW=%Ew^5<4)~59!@mjv2c-v|(8dV-J$rpIC8d;=WQu;(>%={=fm=bt`wDlD>t^XO5Qxzl4jA+{6|6C zVSud)yw>H3?*`ad+l}*yZ&_kGDTxf{ua&GgJN*}VHmsC<|H=6#kjwaz zLdCFi!3na$WhFA&-ID9+G`{F>)Ko~(w(#1B%7ycUap1O6L26DpO3V0pfKBY0nXY%D ziL_d*&@Jop-t1u!X!^7BZ+7@M2lI$yUqexRNVEj>qK)Z9>cjrja6vhe*!i&LYI48D z{7*oPYyYtb1JBgc-ZwT5E#ZD%!fod3QwBgMJx)Uv7F#C~8?x<;2aIGb-e6)l0UthJ?+Ii0^=ZPzX38d%ZjVfqL&v$$8x?tg5vI z3%O{iXz~I+2@-PS#j|(JPnzi5ZKL=0Xo1ZmHf2e;oPOnHJ)BkJ_j3 z8gaTi!qH%6!>JoiH@8S?!0?pWD*7su!2MtY9!|XHrR}RD!N>OQAQ*;5JOq60U*6O& z)V)N#MNPNKFZa+boJ-7mSF#>Z{5JjWP5UZyW*>$*h(_>kMMP=#Fh!Bo7t2y~$v!E% zEHBxN;O0lU(TO5rUw*bEtcPuno^bt`92uSQpWG7CKx~XBlt;n}j4mhnysd!Pl1K-d zH4q>52Y)}&3kVgG7dBDKAsK>k7-N!FP7J^17TxWghRbJDai38Rr16ZDhZ6$)QsW*i zs6v3I%p|;LBpwYt|ECBrSl6LZ^~mB+nMLASgz|f$XjH~!6re(@?35mZGm=p zoT$ci{N_hCTHj26U8GfOx+#Dt1m@*KjD4^%1a-8n>0c95u5vd3=G@=UmcrFGYfDJ+ zli`4Db;iN|MS)mo&Ylyh2tw1SOXF3Yuv#|CwUm{{!((awXig$mu;&e6kMLLHw53NN zO|vNiCRbb*ky-gTk-t^iRtX>`C6H0Mz@kANPoyXYnLy;kA7c zA*uGO%I=a!Mg*iiV-WndIlt={x=G;8b#)=`>G`WV{jao~Sg~dWPQad$52bMP5|mQI zfM~bhf3w2MI1sTJX56EF$acL^bvo~r>aF<0D8#=1zo}VcN_4tyJwGHJaY0DMNujC# zd-n|r<6v797Y~PxWsU;bfniL#RjO_=?-U)Gt)Movi13UC#5}NhcvvTmA7N zphwN1E}CO&NUp#zY;!%E2mwbc)L?LRb`m2EDR+?0z^W2oPMgFOBW&%6xZ&^7mLB+r209j;iWh4*_vHG1TvEMZ*m?m)hD zkw6^b1YA}0ZlC(bm>1*J|KWMin#W#SZoo=!oTadcw>jEIJDL#*FK>PDdjnVxlP?fbt3wKV;bs)cwTIb7<9pvAg<*%%-y zzmGy8kQtV&L3Z8L!5F1H2ZlRXg+?FXotd&^ad(hwZ?e6FH<|yd-sCXrEp(au{v8f{ z*7@Iw-<^t!LbL|S-D%;MR-3Z)9JGo(LE`Lh$c8p1mmYVYG1O)l$~tgLuUnwV zb*`wL{ik+U>+-x^ylW6S`G8^vE#Q27k;VkVeyiC1WF%Por;k60%$9vHEpz7kwo|z^ zsrQV_Z~+sAk5u7P3Z=8^wgIDaNXiM9Cpr41W@2m$oVb5dlnZ;9eFhZ7Qeu-bt+P~9 zqfV=GJ}EWVZ>%t9J{gUU5z8fk;?K+6*W&f1@Vbk;X; zoXv7|&3%H_uQzxk5H)BEjfyX1Sf7W2;SuDjYVx(F$_RCE*RR)lenS#Yu>wo%k#_R;znX(O0*$?V(1IX%7vR-UG~PMs^$W`N<#z6Lc^z^f#s zPQIvS=)^Npe(#4zaqh$l5d?{HYek#1(7$QQgn-TuyJ;b!_YSOo`<6|B| zOp-;P@cUeX`Gd~+i*(B&g9KoNc&=%4{Vs%1+H662M^sg ztQrsoP6^X=)jx0;>~k^DKheXQKpIA>|B~$=vSwT2x(WD zC@7To<|*Taqy#naN@;A*2*zId5~7h&wykOYQNr2+{Z$@i(G^-}nm#!(dh+zu|KT~Y zb(^c)C)sGf&TYF|kB(@drbuq8{$Wtm0|6{KSdX5dGE+n;3S00_(jmclw{#n}qtqYV zEg27Q%l}XXJ68bkIl~KbgJL2kJ2N!Xgx5&Qr&3Fwfr)YG=TE9wQ-Nv@t1FTM^7s`X zoI>UxcFuSDye8(B4`xMQ;m9EF>k0&^5%t6AYpMAu*Nn>2T!%ym$e)+zHghz(8&>YG zjEjpYZqDd#OrNq|H&|3j^~s?FUX6ap8VD1R$%1L1Qr6nF)1BtN-=e|cT~zU`ZoLuV)fhNV&}NDJ+xt{57m|8_^FhYL9;*Vn?D82Jeb zeFUg`0?rtxEX)i!0|VbkF1S=^T>NkHei%LXJfBuaXaV%_TJg(H2eZki@127NSQg#B znV$Sf@=pH0vr`PBz+Y7dnc8}LzcXCX*&X6$7`rZR$C`c~qDYQH#49|0`9%oA;1GQx zeRaS5k7?ND@y?qT7G+RAsnoNFa3Lt0^9xij^mEONpt}X%A$8#$CSfm6J|ExS5tVFd zlIktL_M~3z58*WgB(G9cBYjDJhibqmF><`;aKI+)3rz8Y8=uxVx01^n#urxZAO zi!Nk7px5V&Kq1)EwOvu?E2~^@yFLfMz-G6g+I{WF?HC$+p^6w2f!^Dtv7Os$4u`n- z91BsmNN1;fgE4dV=J~A(!UY$^Ly{sJr8=v3ZyCh#=0qH3ss9#2AmbO13N7;%QprM^ zya2d%I?GP8^gM=RL7he7gqgogsA1EqxwviwnCv%5@cFTc2-{dw=)$GuD!SFT7Cdb9$*^=q%&s>G0N-Tqvu~L4NRrd=u6XeX&Ukgs zYjP}DGSCSvOAhaN&>#w_ajufb-kC>FR!(7t`P-W^aEd!cZH^K^I?Rl4I0j(IZQ0iG z@tt)#hYJ_}Ne{1IN?2-ycrFqm5fkmA~6!((?pUF9>j`1I3!;&pAXhvran-& zzd@gP9gEe>DJOE#cS2#@;@&6i7fElS_T6%Z*y*s{R&4}hx^-d@Oz;J+`?Wqi9Z@!K zg+8R%2P;x*$5NJS_akAh(Uj7M3u-T4tp~ca!Zrq8tN&MHC=}QPe+IFN29xu9(#GAM z(?kdwUcG|wKAxs|>DvLVe$JQw!qpkSzdvLgxZt{&Q%;mKCeMhIkhV2}%hUWFJUL4#6S2OG}-&K22OKdc9|! z^m$eDCj%r)Nly{?hp$LDDb}i>ZQ1L&6cbY>h5`y3>^yUM{376+Ek(PZS#{6!BDou^ zb>}m!)bDtqh8|jwxm4-@vGT4{{e2zV?T}TI97X@1h%Q?ZM zK(~`?TObclFuW>jcF%YId(AhCx%_*^rjb{#)fJlzaq%GxaABd37S#{8-wboAgKLN3 zIud%Q!4ZK;+v`O~0%i=uqJrolO8t&dON1D{!vTbS815pf4#4Pk$zVl-1Nu~rcA1F) zd13ZllLX-P_v^11)GTU-cQMHHabki!Va67k9&ML%_657{wNrZOZaI4sLhS;F`Vdae zWw{DuUb!&J)jbB~RkLH`?LZ3|iTI{$@rGU{OGx@?+h zS$Z)=51`(p45}Xqnit6V^UoRYKU})Blu>OY+gUvqVNU@M*b?X!GU2o?TbY}xsR~Yl zxqQi%CcAKwGEUjx+ptR}W#RXI zhzw@`%`syZM#D|AO|yrK>=y-1OiwpkpZ32%j&^mylve7-7KS zv%q#)I*S_HL)IZ%^;v$^7pl@!>tkgUO@saC@g7-2N|c$oO%zT~j5~v!?A8?(;?_PB zY?;6;)SWH(K}S2-z+^_r;h!v6NfS>15lV6l(x3W|*tnXbrkuB27J;p}m_d`Qbzsb5 z5$Lql-f+lxVp;rgJZz)Vzdl<^QBJea9u66^asi^9LR1h-H1LO<2Llx%@+N&cgm3L) z#PLmb3Vq~!=oDuz&_Lz4Wc^MwM65Xf(E0UV7$WFo!`=pwmk0a9XtjFl6RssO+Xq75 z1W*}S>94;q0Q6sj1Ngf`r?$QG6giw|GX}a#j;dMd(EB6x7tFmcX{rPcYI7I*QFAxA zrnP=5R?%!AE=e6f*Ban-v5nfDsxZjF754>&0$7(-Ee>Ml62nhNqQ2}C&tXuR&m_Mn zwz#(Nc3qcI<5r*r^2h@tmx(vncxP^o#wzA9UKeXqirgmxG%%G-v3o*gHd{O(ir~M7 zC{I)WSyj?IuLYJp`KI=c02HFY%!FMKc!#g$s^yr$YAXAh9RqT96D@jdtnFQ~R{m@^ zFgayigt)>-)6l)IoB6TdNQA?DZ zktO4KoXa>jSyy^JCmQfFCBc8uqQr~VP_~3PwyE-mre<>ZJk$@^TMIptYl}yct(8FFg)vuEmzcHBMx9v(IfK^jaH==k2w#I<_DtR&W`C^tJ`f~oCsOT7 zh2Z0l`n9YH>;ssH8BP_f;*8EwuGWU;>PU{Ayu`%X(p~0?5()JcRky=aiWtA`gXX`| zRcf=^@W|OaaMJU@QZ7J~vYtsMazNl5OrrvGq;sP@95yP!0AH8aFLu0n>BOQjPgY*m z%`@|EspSTxsp63XY&v^Os`8J#WIkK<%Ox3p&T`3{SIVF8RHDUm!UX>EKC1&fnWIv> z$Ll(X*|E}eY+{2fxlv*VT#oC&EO?UFN7;1g$>48&WyPm>H@?l%d1X**l|N=2&GFKS zvP5p<3F6l65}mV7l^QQ)5edoOIP2fj;}@{HHAwbI)5WRwaC{lRzT}~U(OIfYF|Q$8tXe zOh2U}hXe1xMTj%mO4T&BkS#_Ufi~0B18c`Y#Co#I1!RoNw;PHON9$BvE|!AO1Ggl1 zpCia<@Lx?-#qqqFP5$f3pv8rV7uV(*_|^!+(lAr4PWViRZ}(Tjg*E@i%`~lHXZ$YC=GkP`3a*h7 zIC3`|li^T0{>tLrw8b9h{x*zL+Z)-`bvQN7Cf0PyUuvCGqJ6#u@D8h#ZEc4Ydzc*K zXv#}5w*cuAx7={x=5-&FSrxo`hOeNsdM$!YAKFxD3RQjBQl6FHLuJpgT+pbt^6XU_jw6SJgYVB*E_y514J<=qSn(uJ*scRq>3pX*w|94 z37sVK9s^B2#PKru!B0PRQuYuJ+skxv@JVvsCk8=si^+iF5KHsdv=8Qaj@bN9wga5) z2SU^hf)ED@2uD^mH-3p|t0v7t>(f}V{%rMnYV{xQ)K`T-Hr$PC+D|wkv9i- zPQ(tScDYiScY#YHxFxpX`HjZ>AiA*UWt6Zf5X}OMgZ0&!lrKZ$I}D0;C_&$d7%pWN z?8A0D@LfVLpk&fza;@(NrAY@d5nPs`cPsk)CpJ(87IzbVDDmTV0tZ__%Gkj{ib=gF zRvATP66Od`=ZSSFKEs$OGwh<@^03wBPJ%5&rv6dGa>=GDziGt!uF;rLl&l=Geg=#h+M&_&-eVKpFacxjW?!jpsO51`~CzbVjzGyY7$gsj% zQWzli@ulJfTUQ7FXhKGV<2!Z_weD!MNv zQ_DjyD(cCJ0atxB`R7*7b??MH+Cl1fGWC+eIq%d~Fuc`&FFauy=@B=3j%}DW1+`nZ zw9m|(I!^YnCV-b(Zt_kJ)~80`Bb#6DFEZ^i+ZRw8_nwY8sD*ZRholj#`4(##*|Vo3 zbmjY9YKT&H<<)>|*r9el2YexQZZ_%Z&(PRavDgnS%S-pk3Rk$^g#Wmooy305L%XYQ zeegOG{j%*u%!j(L#R6L|)1|lvT+~(12Q>+qPCWM{76NzqTeTD(<8G%kC+yZeE2k>Q zmlc62q1393(0@ZB>1RyikGiumz0av`irEjG&6bk(3+gEMP!MV1Lkq6{QeW^sK+GUr z=~G8T-bTbF)@{0SZJ7g%jwOz_=thdQoRIB{cXV1&%W>d4cFo@>m{!`^STDjXYHW>^ zHiWno6St3|KJafr#%YLa6B<@ZVHAo>%Z)HFm&cZ))Fhm=NUxM$2fsQ$ZB*sR3Ye=s zcv*8u8W#jJP0i|W5t}!}e{e=a60|CX^hGoh%bm7~#sno23RG22t}+u0ykI??YAcpG62qs$VxcZuVUCW!KFVqr zjB#xugHZ{yVlXJtl)nJo4MrE`Q%X1*Q^<*?t%8hI%#S z=fh6zYD!D1$)zahLvT~jf+~L!sxF6Lm8w&v-6Ie;yM20{*W>+z_AEb1I%)gyRN`dm z04<|A0D#rh*@l49XND|xI?BRP2pdT(tF1deL_oiyu<01%}{^ z6Y~bY457!mFFzfq;>++ThsuDF5f<+OamHjgffin8_4_BYsyJj-uMoR#p_(QkFnxst za){@Umt+2mw)myy_3bZ1Me+tFu>CK5)u@$x4X*s=$S_A`y!96CV^6w&ZFoOyhv`Cy zd!C-l3I(mvwB~G05Hj&Qbf?NaxNM>%C~p)4m2XANG|5dC7EH4z^h5y7BO%LYmSFl+-6VLrDXf99cqFpW6b+E^C;cuG`eTon9S1Z=~t zSN6oXR8~uz_(dmodJUWnuE_{T`XoYO?MxA?@CYR}-}46i!z4Y8F!{U;y*1;=+f=w> zdA!n?Hb6^4TfL1MB?l8>cE^!NzDuQAqOFB+jvicHm?bUrh}ZrhyZoNZlLYkVx;LUF zl=_Ur;cmS}R71ZvfJ=f_z)s?sQ4i%_IsQ<9E1m1^8-wjG8G-fbfCJwFBI}VIyu%>{ z;D5ul7FtgqF;I1jPC&zZZgjhy|3Mv`Mf+QbLEl$^QsNW6I6bfpT3R-{m7cx$Wh+E5 zc@9=$4UcygA}#W^9a4tdJ-Y-bb|@@ZIHJgjnm9&}7_(I`uYAb1o+B?ab=d}K{V&z; zMy|mC00?>kpZRoG$Qdd@r^OHd&Tmi6(Qf;S5l2K<=eZnIL`$Np&ntD|svP);RM=ln zJUI%?u01wOuxNmXTJf)meNj{I0RqD~j`$>~Z&}dPLVmw8`VsF4t-i-)Sq^0`fPJ%x zq!qrCL+|t4E7))k?Tzp-1Gjl}G$7wf-tx3olrpj1A||YQb};_0%Kf>0iLl*7nl-9K zCm&nJAZskaq!%u$*uGI7$>yBJ)5OCY3ipZTAT(wiM3H{cQ4uVxpG7Ffh3jFa&HQ(c zm#>-^VduDgF{xABzANTA_<`;wYN9h2&jtahJ}N92b?R4!lw0z)E@e zqEB=Wk-qX@qL|}Y_}>5jzJl(zC2!bovh(u5t+G`FBu0;&bk4Hzw<+uaQmwCFEJ@t? z8Py^z&%knIVU8aRTQdiQgX?_!aZ($$y%<_8YY&ny*%0cU73p$17K37sSa3Ut3bY=}HATSGBo)b-x*7|Ze#VYW54@T31vi6=u$O>9!R zvRLH^@-BUPZ67UhyyKo{ZI20F>tdEnWh}b3$}Pc*$M^Xob0v=5lMdLroT~Y=vQtU_ z8eh$b4<#212ZAkMU=#WZQCfn zO*FH1oI=isy*I7lH4Oudm#vfk^~UpokK$0(hlg&4iG%@2bqK#so9|@oDX!s22$Fr4 z6&XpumYgbRX~Nl?w}CCZ`^vnxL&2?&lT6eDJie~^?^lWX)7Z7cvT^Oom0@t7RO-Ea z1NqTYdBOScbJ%#lirCLa~l4oEA59~c<98o00llXDhFA~A_71bGNZ#wdNCqy+N5REHFRMecn~Tb*I- z!YnhL{;$QHIuM8Pq|T69_^Z0mZtDJeO1*yXH}n` zNe%P-%JN!Lr>q9TWo!nZKB4Q7hsmf!3a|I+q%!}b&fsn7JLNreCrbZ<1LB@^HTASH zm!@D(+jx&chqQz{P}13nWtlU1cU@CNl_Pe0C{(40iwEGrN=LoB`ovfVp~3db&o;-+ zZ-FU_f}3SGK;ePw9;88|(MjlCI`;;rCeA?j72uELE>1QVyX0nbh7y)e?YH?h;O`&V zt8H1TZSw}b4ZQw1h)cni3=tSefBtWK#h|@Hr{m}N9+pp!pH-oj&ymsWbZ!&%OfP>I zO>SlwlQbl{HQT>(9sWZzXVs3xAda90nj8y3$r6E@xbnT|UbV-w%WW+2E^h}c?vJYe z`%QjFs9T*_A9p^zL(YVS(JTWtw3ITi_~n8|)bAaRmLzmzV0^qinJs*&$A85$f9(I& zMB&-P-uUT0ur4&&Q)?9TPCI>5%XTW<9+Z2WdvYFM7(+OeP>{uE5%z)uI@o#T7~y{* z@E5BsE=Iy`FXzK0vG9wJ>D}Kc6nWAJ0!ci|%#79N*JLI%2gw?IwEFG>?08?;7unZY z8lvJ$?-I&cnYJhbIi%f{F?&DGx3~@c?F{SH?-IxJkQ{607=Gh4GvMB3LW`;@tytu# zR*vXzaBEQ|W!!MqWEaT){Hv}z?-e)`pPDF%b}kYY!NlF}^y64&(OHGB+=&_i^)UEc z`}Aby90Bd(=CllTB?gH+byRk&5BA7g32kYTu=qO4{CC=KL*%7A=xOSt=TE=a+gSci zPvDe)!**PSKXsqU1%zXG2m*alh=&LH@LW79{)j=9^$T0cTA+7NQ#?+~dG~2kL$Pij zcYAQaA4aw)?1_ALQshe9*DH(R-pvW;U6Q4Z40+PDDB!|ghOZdgO?zNp;RmBKCl|d} zmfSnqfUilbsF|PXVoiVlIvZi3-?*QzVHvpvAUbE8%S}ldm{rrUF{K zRuRz}FmSU4O|Wb~dk_15gxN|p4CqC9H1JMvPyg{+?e z72m#@eS%4LE+T~2`i0ZI*mDd5eK$&9tkUMv~McG1?#hv)8e&?p|KZqj` z+VA$3$1bEJx^jFC^xC~eNIN(5oB*Wi=;}QpZeJ&mYV2wmE$y6}PXW&Lfn@X32NnRv8+_K)o@#s92 zsiLTTntC4R`3C zC$qhIxlSJ_0uQ$(BrzB=5c|#mYw>wN7I<0&P@oYx8B`-q*aCqZju|Zi2~6~ ztaxT+u2glCLgc65@h0O=CAyGe?qUadfH8+6i;k^4M#FUA8JK0_{&@I5k`u43Ff zkx@noE~e}98^#F*RlCW2SnVd5;ti@kTulj?Pd_jBDf3}kGkX!*gQP@EB3*CMnWZzM zdq8eNcA3gng_SM1OFYY{VJiDJJ-fs}8mv91Mq^+3{8t#l`AUYsdThJM=xBNd310b` zj5xY{JEHaB@^1?WWTGD0x7Kd*P#0}nMxZ_jo0Sq%ilTo{;mu=^4r&i%8ybN60QxC* zlv6javai$B>ihxkP{?JU!*FMjJ=tvj?QlC8=Nh{46T>HZR$7|~xdyD?kl4fnr+49i zv#a=m>t}?Xum-#{?7d>7oiUi`eR9NHw+`b@_7ra-zn~K3hxePC!af0}|9=@cRJC{a z66li7@Bk^PY*L<20?k7>t5Vfb+tR=0;YeJ=2GVGmbV00ZXbh*yW&>DGIz6&NhtN|WGe0$mCkj8p!9WJQ^707gQR+;j`ow(F#C}=Ssegk z9;my@*7>M$^T8DLBA~Zs*_u$%3|^4pYsIP7pemV%6svmSCS&40BHH-+S z3@%$8Y~2hEG$GD2ibArtepWlVW6i(yPMI&w-|{SVv%lLZ`b`Cm4morFRVp_!pZBcF z$$wsW%e4&SbpDxgVCu~lIJVmx6vh+?v`$vc>eC)Xg+m@h(n$Xyhe*LC!hJ`rHAAqj zA`5WwBvPYBgrgk_g}5}5-vRNSKw}wjGzRUWJ_bA>=1mNTue1NzJ1VYDDyNSAM-;~< z?1EvR7u~&ggB=QD%D2oh$H`gN1S_3fl5&0zvmo=FFINhQO8c-&shJk`o2h|LHZd5D zZc!My5?b26T>!n=ValovKp~YC96^*_0mbTRWc68f?MOHdED&#rJSR(MZD$ZudR_l& zVYNxdR1xMlVf0@qZ;7kwkL09V0}|8*jdfTpu8C)9Kx6Afa|C%LuXP|jeHlpj_PRp| z0aDi$+p)))3FqA2=yhE>^3Dal+XyQFDT8cv$~dW^+gP2Avaq+*w)~cTuGx0Js_Xom zujZgqEyLz?TahecC*qOTIIn9Km#S{}cXN5L0(0ww+MVHZPrJ4kqKT@WfNUq0E;D+8 zx|47Rpn>(4rPS;)>IBQvkQrzc>B371iH9xs1MgrQaORE(G8>-s{6h?kI{^JB4qYJP zDc9oLc&qrgHd9v%k~>z7(UGfgzn{Bn?CV zWB%+6@mcbH8=zQD*WutQy8PL2Q{!3jdqAHP3?p z`Uu==vQdM@A8S$9ORmQO&F84C}G1H(%$`&%voQ?Pit8} z2qa#<;F)1%x5VL(<9yF^+3;^T!vuA}`iOEjiYoBbeXCzfs`uMkssp0oYuKnql72C3 z(d#0Irxxc$`8u6ZUX>lwa?J#J%6YU(7-cByUpa=cl_QD0jrG5`49#Kv4Y#$_wI}g2 ziUA?03VENgKs0Ch)$)2R)5*4#TeOwZDg`eHpr%C?#9je8%)aCR`RLsQpD_XU_^G)4 zYX(UCHN>k<%BKXbV=VZnxYLospV#5yfMnX{l#<>!)-N zIGEA@kKNipT)m@*OWM{NAyKNO+hYU8thehE1vp@0B;py2*d)+4%Bx>V?@!U}*W6Qn zw<-;<7$rkJOg>S|Ey;uuNS`;+d8OK5^8fA~#sN+mqS3G=@Os@&{nwMlz0bUzaws%$ zm@FPtz6}ofCm4P7wQMXNDJ$uzjXnK~#J-e-13-O1&1CvmJDeXQ7%l*00=0qc0cvL% z&nrjIm4G~_KF|O0z^S0PVt& z4OF9xPpOvDs_PQziQHuTf8j9VA}TQ`)|M1E+AIuH?@I}gS+6{c_$gK{r~5+77jQy{ zpaX8>7{sF(NGrhPJOl_{Y(uGg3>po_WN4BL1m3;`ZJke>rLK15X7(mgDI z-EWlspo&iq#(Y@!NklUZk*cy~7p01k$*V^se z<0w2y=^NMv0{Nu8-YB7mCWke$D;JROaxoG4g&vw1#tj0qEv+_Cp47H-@8_vXaNvk7 znyMMf_6(H<1K!gNh^&0Kfvn83B&u3AzOwbutm$n&%x?;)Pgj`3`Jj!NMtJ@O_K|B*^BK}w1_#<#GgW5@JY{nV`Bv3L!bE+YJ=Yh2pGhd&h=U$- zQ6a0K9ncw^oODAjg#CkiD#UP#b2m1eq>-D^cBZJsj5Ju7-Z=NLNrj+qTCjsD4BM(a#kl>-anvmu*|1aY3fJ2V<7oYALJx(EGQ0Mf>L&08hNDN` zV^6$Xie83NWA(ROKr6J&mfIPBsq8&3t$kqNyhe=Hlv8@JIlj*FJOw8kNrF9-fgy{i zNwZoZr1;L@8 zy36<{d&yta5+!BtGWufvV1&n_vnt(89LwKWCG}bz_8c zG_~l^bcf~Q`$Jy z{ANM2G`hiWRWAJqIz?@IS*@d%^n4)zn`anbIa49|_V5_g8418gx$o!xRYhQ}9{qrm z(WDq@)X>~fuhteFO@jQI_Zmqh_Wa&l@cy?I{dOh6 z80;Dnd^dUxY;baHExZjd&SKynA0BOmmxtVO-N;$X;Fim{LPDjg!S(?HeEoOgt!q4Dl#EIr(1GMWGAHLu z$B53r-btu4{2i~wwhIVM)_;J-z%w;9(RZHt;t5^%NumM zS`8KXd`x2i}a<58)QGdT<-P*vMy#t?}EGYOZc0*<2@fNGaea{ z*?SCnUvn{U&yy@EkrfVFp7e5;e&j2;Imsl)=x}FNr^b)df|l)R5m1o;g8aF<00095 zm>$z7@MK=6s(I2A_OnbB7nW_X5v*Do6I-#8S$9{l;2$}LVGiNJR>cklZ6OsUduNfv zj_Y#m`Pzf*bCeneY#JKS(IF4QO2lzv3hKi$v<1zCUnFaI#Tf%nT3;RPHao4b{<{i2 zLaEg1O6_z;nVEnlj4c05^uYkD<084wwA6v`cS)UW*Ut!eJ3{7U2SnLPT|ghGQ_kKI z__K9T(U)=KE?UcEq|9kzxC5SQ;JV^ET}{_`Da{n?oxCtlfHqu0RL<%rX+*s`@{(kd zP}pDZFYGitN+EhUmu97#K+14%$PMQb?GHY*1ycLzlhQ@-JAQc56Xjf1BFXd z$UZ~7m_3&QKml3=d7 zyT_^uJQXGUq5J1=c(|gWNof{mU)pOTO1aTL{gUa<%qkTR&j6nRz#vI;jrtRK% z$r#EFboolDz1?a7@orc!!wcudD1Ycs1E4>5$-HTB4xtj<*PtmBHZ%G#XVOA2^ggfM znC|T~i(xHTsD%~4-vChT3C!A4y`@vD$azP)xr=bcms%^pK&$iM%0S(PC84a)9{&%G z#ybAVv}=dxCvG(0vJ4r`V{N$R*gT6##t5g2bw1I8kM%UU;k)bN)9=>9a(C`Qs$`ggKh`U%$S zgrtN2%*vD@fdi-d4=zsgIk1inw4}5kTLcnheO^t=r#(BSx?$;G_WU$>ae2XyFe4z5 zjg@c#O>nCj&J>L%SF=}Ma5dQs*93V@w4fi++u&weNrr|tP=J!uepJgYQ5=}yz*M_v zKJVk^lq>+RhsOQWWzqgX_QDwa_%3p2VX~L7oNC1s^hI=Q6KeH^LGEk$E~WL4+ovr& z1DYGVD;6Z-w)|vD_rf#7NOEhbs(=|S!dqsWx|pIagJjJ0NuX;A=Ypk5s8pt8*N_?< zh6E=eEx4nX-oOoJ^PW8hU{zPtg{YXtaAWj)aoCV^hN0X$XySiPq&1`V5d)P8hxj`V z0^`W{%4{Bxs07Z7iOZFr2RpU)U0L3_;CUX>Kg-lmZM_>Y$b}(FRjwi#iWX-g6IILz zyH|iB6^H#uWTxn$VNhx+*z@DL&ER<=v8KZ?8E>C zMoKm+5t9{M6BdW0O~hzM=@A;;$!lcQB&7)kI=EY$eajBtL@U5<1#>}MRSNJmCF3UJXmb>GuB%+e-C78up=L9{N0j`2$i=Od*c*#=Z;$#{;1>NKE z6U@E{#RG|}6s#Q3-xymgl3DM%o~D{9i$oqTc)`73Bdcrm!i zgtoo1^-hXNaI89H!hT{J%VgAo(GH+tg@v1YzKj}{v;oC;VGGB;T3K}EUKhlCNjDr_ z<&ACJZPC|pm?%>0-*6&)ja;%0nS&}#@eVG61!IYS!-zxVX2G2aOweothjyh7HM2DFl{tZt|&x-UshMjyfG!o z@iIi7GN^cx>!P6lAwK{e9&3D!hRVQ~6uoQy4o`~n%lxwl-98_$r5nD)BOVIsZV zUl{pc3>Dmv>_l8DaoXCZr=8egVCiMK`>!qg(7Dq?@a>$jhM1vWpQI{k2o8f9GTFj4 zbD}EDFo`pxk_EL5Zr8rIe3A!IWbCNgJDpED_h7E71%%CvJQP5GTycw=mXEl_EFB1? zbAI21FNCaZYG`1CEjMt8Pc-JGJ^vVDovJn@fK<>^8%kla+P^w&k}=^wG(5gv;jXQ# zkqZ3!ePi{sk$~d#FxRCz&QVi~pTK8}CagJ5ScAGc4Yi^TFlkmSwwZ;y@@j*TF!U6i z@agSf)n8`8R;c_T>u=pnV8c4j5SGW80PrjXQ~K5&oYEFbULz_|wes!EHonq^m_=A- zi9^hT5!$~oXmH*-DMpX8nyjaZTxk92}=N$x}4lA~-THcIi=0Ap8e zn<#r_sJT=(XGM)azxsB*{Dt){)!hYG+uucC3_g@uh2Iu!0tly1^>q}gJexn@!o)6;J z>R6mDD+YW`sD;}(%>T6u(_P*gsH_&x7x6MmwmI+wZ%UtW-5eC`klQ5x>Hr{psAZx| zw}d6oezA}@FixG#H@|5z_$RP@X&K4`&i@L6rNRpnC2J7Fy(ksRs1_7uvL-h26!v9F zH`X)Yy~?wlD;_#$+&#i#YpK@u%EZGABbNZOF^ zx=;p{)qqO7ai?F$kS&RkmM0c!`L*V~9!)C?AQF5;)mLBeJt7PkzL46ofCut(I9Yxynjh-+-T_!u$Fi3I$e z4dS7R5OknflotGA3D6THrvJot5&!p|#3*)_%c8YX`84S8w#mt~vy zTLQ}_45Q0OSRYAY<_Z)^$BJTTFF+A)Wr#NhaWMEhlE%nfu%ga3pfNT0{qg}37ranW zny28+?Yx-b{WKjTlrc_fgQcBWH6Jc}oK-m2!(IwLZs-vPMAOO^% z5&~47lcHANyG^03sQUAShG~-@?L;X__u@X};IK0iJ$R1a*eBRXf_pLS6e5^?^5$QL zZs)%<)SY@{uj<5U+zGcBYw>^)j*>5gg9Gpov;Q3tYq$*YxK~J(!EI*$Cpy`K&i2Rm zoRy29e2xI%B6O?No{A%aH2bl_YT-mr^k{ZEW}JZCIVj|WpT+QTqY~CvoV|w`E*e4j zWAZ{0>UUbqsC#~Kwm&BD(s~s?aZ=u6E z;cDNdn@JMXXo;?7hM^gM?{c17SgL1Z{4yQj4PJCvR#qL@iXpk=L3MJQNGn8nuGJ}I zg^vP_n*epGy|hq%%Y8iAh}giotE8F63)BU>(=yqGg_xN+c$gVRkQ0zfKm_*1PmXTY zlDWCCH~6Me4PcCK&Ok8yd^q3$msHo$?^$MZklqDx%Z3V5qvXR@_N#9?R4Tr5n%+$t zfu99(g~1fP==QSFAmfzuw-h>Rn32OEuvwhLi00M26 z*7p34N_tCQFY_a&9xbLuvgpSfq(2CvCW?^)dvEK!rZp0j{rOBCEKAoh!ci{C&Cc z(M_s8URxJ~(~sM*Qv;bX+71N6@8`m;@365tE$7yBj`v5YAxhnIeevk07!n9i5S1e* znD`%%c`TW0HIl0Hn}Bm;snN-kYPj@ZDwOQmlEsgnBSp5WCnyXQODr~1MXv69MjM{N z6L>Qb2ZVfRpttf%G{UVe6&%N#7FlwjUr^!y$1i@h_z0$2x*~OMq{$*_h`aQ_CSLNlo(L^%Uaz4y(;aY8H z?wbE*n{hdET}`DR_M+m-?2Fz9RZaI*T8{B|Vk2Y?GoaV&B?#)}+sI+ktC0egACvWY zr{4OEgO~oOOnOR1Zzy8q3meRM=y0s@eLT~6{>lm$bFbDiXav|QrH3&``7X(Blj{E( zSdi{A;qDs45sLZo-y@U{dY`z8L z_sWg<Wf9*{2IUe>DOYT9S*#khahWeUhT84V|mZN^ISo7j?- zNV-H;WS-tS!_g63ZLc|D(4k`=B^?syu!e~$kMvEHEmCa7m z*h7Q8^yknewUlV7o$0$|*ZFlxXf;dXd4C(efwBuzHm<@sOU#+uP%?<=m~1;&-f6^6enZ*L2WY%^O@t5LkdN*}20ZJ&)HRV?iUWQ%WBk6)CR zmbW+T#WQ8ahEkEwSR;LYkY=WYWpB%~t4ViOawp<};@R9(9-;(zrdJa6)s|+wNqgTa zr~9H?B@b8$Ny$bETo!CpM=M(A_URtQWp2n*g((GAQSVhcC4EtEcj1$ZlvQgybaGs8 zSGLaercTx&7zZei2Ls!X6QQX87VPD`21{^;R@>Rmw3k?h z+=~09-xdwTCX_fQD~n0`<6I(1X>GwMS63_}M+{`l;mMk=Az2t>GrKrI2O1A{GC;+` z=4;STLrMmxIFL*1-sr%r-NWv@&=-?9J_vUO%E)AVBBU#RS1$zwqED%NLfw-t6h{8% z__tmY2a$29)ftOJ?(Tu28cYR{${l+j9%xI?(5ENCMJ6qf>#mH;5L9xTe*rR<&UhAK z?ATg%Q%2+vTQs23NQ%qf?9wHX-4%5Y`5dB?SH~y1Z{{DSOX1>>Qj@0Fs-|zGFhC>U zz@4Ybu2gESotkTgyH>=KA{AbB3s@)`mNH8oWBzmb*YX>)*<+@7>rEpv=?$8)Z*z)* zIiAS&J+9?Ndw6VYF}6QJX?);8{PCKLHzB{ zOFAHbc))S-_fj1}Xw(ex>z>%mL%Co4hAR%d{#Pko2eJ8SD7DikQl9@C|C1 zQhIu4^kJrEKpIWyTQA(=YTX5otoR%IdE4aSnoEE>+S_n&?nYYBgTmX0W134*Oav+y?9GN}P3dMtZ~f%+AQt~=R~Sr^&yAKkqtF^1txv!{; zUjirEC#bqBo5AU2WKd=6=#U_QfEDZz1jO$@XFy5eF6x;Fhl-m+cg=hu50X2;4E1?p zH?>?R$kh8p!5~H{4zqW!B(XF97_wzA)@|@CbYJHVXTVI{W%nm@a8GscRLdcDzC{lF zu--I>NxfB~d@krJ8`FVfKvE;w5f*WKjmu}F5Y+D5b+}hq)|jm~Lw;-E2h8An_i$f= z#y>zWFK=;bKPIDU8v5ZC+SMs9=P)kA;v!Q|Q(N*|w)HA~V`o4rnWbjq>WDyR~u4#&Gsi*U` zh5weT`K(WA#KNhBwkUAdc6aaDcKNLvb*z$vx&E;UF99`5prn1Kvq!Xny)%6ZEUT^sn27?WFBRt^{2( z6WK**9xcUGARk&_fFD4>%aiikie^ni=m9i{VPBmUJsb*0%; zFf^yk7FY!L(`1~t7~{9J{LH*Q%cTKdMj?UJ_#03p{I;@X^u^d?02z|1|8@qWvI6@* zHNk&0DK_Ajl^4U*>ESVBiR;kjToe%9Ddcy0wx7B9pq|8lIH}AincrfPw2W!^$%-h$ zE2?HLhXgg~GAVU*$q}dzf$G^v)EKp`+WXF-MwA`g1~|zA1Gh@ILhJ5e&X*5lEG|c%$yQeA=(2u+qHqH`=!{5^6 zMPSMS70w6F_CCYC*G7*!1zyygQej{A?dE9^%;*n9us7=Oz-d>zDjg%SYet2l#%Td+ zZ?!tEei}Knz%OW`I9jfM0#RwUKZmaV+$;zs0ZnG3@KnP$TYY)esN)0Hl!K5`W|E`? z1Mo_`!gtz=_N2;Q0sPaQT^*nJr`=i^SgqS_g8eVf^h`m&+T7#`?l|T95!vNyK82)} zPw@UBkE5GItB>f-^4Cy+gt5*LZbFp|wU9V={WVa|j#$3k1kaR|UgC`C!PVlN_uVtF?Q6S?yl3Y^EV&9B?G{Rbz&!`O#5Q1|kEo|~J0 zG3x^GllIn(IlH)P&S_}Tw=TD6jVy&C>VPE>D2$rvhmM*?y77MDOU3ykMKm9`TlxV} zIMO0BQF$uyzxE3k#s^?51kg*MS4$gLSz}(cZVH04KzWXr{sKl@YPpsTDR*xcJj~hqkKuvf;^1lyh7?R-DGu31}`eTf$zJY%1th%bBgu~wM zPv6=Rw>BJ8H?4KS?UigRxp>+uTNDDFv{Wkn)(lDzS$V_6O(ysqUieX)>|ztvG>S+G%qB zYYuT;4@Yj#v^PM%u4c{&?7|;q`LF{vqLnylc^=zAKm+NGsSlb$OoaBXxGYm`^$euZ9OQQ1D-bv0UtzDUSB_KiX=AIjC~@RLnI*WhwT(LN(r`@jEjAbiUnm6(2 zr?X#8>v{F^5eC2<)&ib_(Mfo-YV1Iw^jQ_Cv*7LfPmVM}nssy@<9zV=I2JLLvOy`v z0Kh~mnoK+uDD=sfyuQQ5*S)#gSkY+x1{wQq_SgFoC`0#_G&ETE~kml~qw@Zt1 zR}O)$?}0%e<=;j!;*Z8VcxIfp@7L$>t0iSw*tG@P_s8i{Y+P&l_!W z;?%rDvI@Ww61dRud`lhYJepwq<2)z^#~xX@K!W;fYKn;($$j-AyLYNg_!M*cPAF3Q zok+;Du}S>fX}2{cjbPpJD5Nn%a@cB(fC;QWOJ1t~IfoD7QA4`BreSE2!_~s~yxaZS zgGyAHKkxC1|Fu#!79c$EG?{I29O!0KoEU6PqV`+uZ$5_GX|ATfkQVCc-$d4?E1s>R zY9Dg>F_Y6ThZFR_qAT46aZV6`mP=`oGMih zOqeT23K##4e=R(v7IIx1>iTT@%Vhp+3&w>Gv7-Z*QGH&M6F!!a-l%^~=xAcdtM|0d z9aG<-%`I21a^P7X;T>^8%ulRQFp_e#FI3;-s~P~1Ddn}jFWL?QjmFyZ-PyGjvK_*p z+m?SF`zA=Ke@vRPEZpKhgzpqSJ1IQ-V5f-6iCSTYb5J4EJN@!QOw|_Of6Q~V^}wSe zSx+P9y?)6xeGTQL!%_>0V&s^?iN^~@DfN)B&xgaBa|6YzOL~_KP&2Hq4Y#stAzJ6A zdQMNa$2^!NL1Z$z#)6$A=quYBajsmCiDZ`mFR3?o1au^$nw2+>$^Nj5pQvWXvIQm~ z#9aVj000J{0iHc{SLU!|M$D`SAcqI_@YTO7CkSg^b33{hwZ z@Bigd*3Jo(w4(L;#;t7vg@trB@u~(9l8k@qRPQh-SNMPL{}QeoXY&}by}@_QMl5N- zkf`ZQ%81iC##oq*SA*2sf~WF7S64^WWU1@2Z}^E;!jWJ67^dZ%MT28Gb)MCL8oPUu zK^L1#NK#3|c1q9YOEo{;54k}^7qSk&Qz`3*HI)9nU!*t5_UI~e?#Mur;W=C@G2n;v zgPOJ`?dm=4(*X6aRG4{n;f8&2f%2pHJu+OnmL# z@=8yI-mn^$@o9Rh-gavcp7v9_eh-)=kYlA$$~Np$IC{lNnOLkXQrWb0$eFa_FZuPm z4XvNqoSwr1t*@~j6p+TlU^%3kYV7uPp#|!l-sqk%XeiKThV$xqvRE!AKz=tsFL+2L zG^TCXRQmv%)cwA5W<-v+ByrxJ6-aYPLfxkJV%KkZc-{soq8+(xO#-eqnlEEIT;m}uFazsNJqTSUQ1cqdh9cbZS zkGX=`BSiSNPGJ8x9XH!)cFoSYTZFyAndyU2iJ^+b=6tQ=ud9px%2GFfG<4u zPm}iOy+9|G#PG3`M~m^E)6MLzxeuz;eLqdpv=QJSUSv4u9CSsgJ2RUh+TA>dDMSv< z2d7Nhw?H}tuo4jJD0T79Zn#a+69Aq4Hl#g$kJ4>pQUJ}LbtkhHKb>j~Et#ZJbfmF| z`VQ_y(dtOi0oM&$lKsWd+st}eNc9XQ5WUq1kAkA#Sv`8|9ZgfO7wo~fews&7_J!X~ z-mrl>i|_mU%d6gk2D@y`TH4r>CT85Y0c%yxhYC3NCDxTXs6)aPagXHW&3oqDU5 zvShoYs#(wpLre>a3xQHRmS897Z0Di->vg&a#>(nF(viro4+l>`Y{(I`i$-j`m zp44??lZ!SRlBc!Z}3tvQiDg7^N5jbDBIAp&6aDnFyP#&FAaF?T zlnua)x4Y3sLFvr1J|g!z*rJl>j`>I(Wk4l~^m?St&0-FZ3tR9lMbL3ku2xKuRaC|q z?mVt)mGpjH&$x8CZ+PeWYELlv$ujAV9x8h%q3juZ44?C#VNJk(s4*0}&gN*f_tV7!?Hu{LLS3O|72omBVQkV%7!XKO^<;Z;X; zRlH(!GccrEV)y#D*;C9_d`X6Q0f_*@3P6^20hy9KO6(DqWUHj4*|lma_Df#flyUgD z$V(0xuqd9|F?2m`(+}B(C3*3p_HC;?9P{S}ULe&z{rA5rrR>mv000I20iHiKU=b+p}LUOZQq%rMwAPCp^{SNibG7aIX?DST=*e=M*c1dVPSw{$>KUn=hBe$^a|Wa#X+d`_XT7^6zxsp1 z))_+qyaCNZa{T_VzVJV3K27wG{<+rEUx+SKePVAE{07;|GpMj|C$DQZ!2_$ zvYNg1oRrg2T!zlBONj2Qe#EeKlXo_9Jv+IjUD-bM2V|AYhgIDj`#)6a`(RwsLE-p3N z+(v2@irM!JmF=^C!T0%`_dM74dEfVWp7)pYIp@4XlG)oaHG6vZUKG63wx99XdgL!T zQbn?0cfCnKs`Klsefo|f0ZfS=gjeoYu^(xgXC zWs|)R7M|3gGyMuZ=DqWVi%We+cXZ$H$V_N-z5Cie!BqW;dz(v|e%}3!11WQw6Q>FV zKioR1I)hj7ts2s^6rUbzv_MVGZ)Hn0M%m-(=|1nHx2(Ij-&V2x=0N1g+<1)Zp2})t zQ|kjsCq!B9^+JPDjbEOzF>!C)CX0|(X$@1qHJWB72wUlP!FREDInIj4%1rvo?^9aG zFQ|*Yd)uG1-4ZI43ynqQ$6tO+I?;IE`kZ%uBJ#w@>y~}pU6ME6n8-Rh?|;J)&e6n% zf@8eVV9a~1N>;vLTrzmv)9sMc#KGUcs+N`xMS5)Z_SlM`Nz$E6P9?z(ort92e~=+vm8>O}j9CjgxsUE_zd-2E#CwSB3)ig8=4RmvZ⪚2v3}( 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⪚2v3}( z1$OW+bCS#&H#F86oKM^6li2L$t4v1<7vt=`HG z@3(84`TEmbZVnMoJ~zDcXQAp5R}n`zScVOH(%t_H6S@;~E^jZ%9?`qM^`#x%8kuRu zKfu#jnW3gRncr+CICHURJaNR)g$en39^M)G(2-cLk8*Bme>n|~pqP^!RE=i+@3}t?^*@vb zA@)x&Ta{MXh7wC-I?#uLNv=|lpRo@gI865(sZE#6%$^N0;o$cOFWk(Ipmf#6&AOF^ zDsqhmDA(Q1E*;BQhK2;0om9kSZ@E(6Iqo6wF4DWHZ{iU@gHj1yesre=_&6!AZd&xN zwzKOVj-$V?MsEW5oKZaTba$v$ubL{K+KTW<3Nj{ATC__X=eXeO477UetDB8}avdg6=~!{R+V-G#K80y*I7(HtdFa_Wxpzsp>U_l*{gW&5k{DT4F zFL=Ud%YUQf!8@sMSqw52D1BH|*_aAT3>UqDaleEw#`(8#6+s{Q4p~Rz01ArmWE8kXg-`-M(l90gKHQm1 zr_cgm8wH)P5PBdW&{1JBr%R`8Oj*$BQWycS4Ggdz$!5?D7HIiiChIT_&`nGh^J79_ zn`&~DKOSHhmim+l6yaq%0}^g9$Z72b_BK|QcyQrx2DFgFN3Co&EhuGoZK)LCEx^iA zjsodR2O+&6fXjLbZi;nsbOd7g9Dh{U6U~zDEU|8%gr|tjQ7TCdZkSQ5PFXE3p z%))w^FM$8A^|~Nd{<0N+iWMA3S=`P6UG$<3MnJy*JOpjbf*?&07gcu \ No newline at end of file