From 3b3bfa6d3c9a03bd81a723bfd05421e78d5b17b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 9 Jul 2026 13:12:33 +0200 Subject: [PATCH 01/25] Added code for vectorizer merging and vocabulary updates --- turftopic/base.py | 85 ++++++++++++++++++++++++++++++++ turftopic/models/senstopic.py | 25 ++-------- turftopic/vectorizers/merging.py | 76 ++++++++++++++++++++++++++++ 3 files changed, 164 insertions(+), 22 deletions(-) create mode 100644 turftopic/vectorizers/merging.py diff --git a/turftopic/base.py b/turftopic/base.py index d74f6987..7f60230c 100644 --- a/turftopic/base.py +++ b/turftopic/base.py @@ -1,6 +1,7 @@ import json import tempfile from abc import ABC, abstractmethod +from functools import partial from pathlib import Path from typing import Iterable, List, Optional, Union @@ -15,6 +16,7 @@ from turftopic.data import TopicData from turftopic.encoders import ExternalEncoder from turftopic.serialization import create_readme, get_package_versions +from turftopic.vectorizers.merging import merge_vectorizers Encoder = Union[ExternalEncoder, SentenceTransformer] @@ -59,6 +61,9 @@ def encode_documents(self, raw_documents: Iterable[str]) -> np.ndarray: encode_kwargs = self.encode_kwargs return self.encoder_.encode(list(raw_documents), **encode_kwargs) + def encode_vocabulary_items(self, vocab: Iterable[str]) -> np.ndarray: + return self.encode_documents(list(vocab)) + @abstractmethod def fit_transform( self, raw_documents, y=None, embeddings: Optional[np.ndarray] = None @@ -108,6 +113,86 @@ def get_vocab(self) -> np.ndarray: """ return self.vectorizer.get_feature_names_out() + def _update_vocab_embeddings(self, diff_terms, diff_vocab_embeddings=None): + if (diff_vocab_embeddings is None) or ( + diff_vocab_embeddings.shape[1] != self.vocab_embeddings.shape[1] + ): + diff_vocab_embeddings = self.encode_vocabulary_items(diff_terms) + self.vocab_embeddings = np.concatenate( + [self.vocab_embeddings, diff_vocab_embeddings], axis=0 + ) + + def _pad_components(self, n_diff_terms: int): + NO_PADDING = (0, 0) + if getattr(self, "components_", None) is not None: + self.components_ = np.pad( + self.components_, + # (n_timebins, n_components, n_terms) + [NO_PADDING, (0, n_diff_terms)], + ) + if getattr(self, "temporal_components_", None) is not None: + self.temporal_components_ = np.pad( + self.temporal_components_, + # (n_timebins, n_components, n_terms) + [NO_PADDING, NO_PADDING, (0, n_diff_terms)], + ) + if getattr(self, "axial_temporal_components_", None) is not None: + self.axial_temporal_components_ = np.pad( + self.axial_temporal_components_, + # (n_timebins, n_components, n_terms) + [NO_PADDING, NO_PADDING, (0, n_diff_terms)], + ) + + def update_vocabulary(self, other_vectorizer_or_model): + """Updates the model's vocabulary with another model's or vectorizer's vocab. + + Parameters + ---------- + other_vectorizer_or_model: ContextualModel or Vectorizer + Other topic model or vectorizer to update the model's vocabulary with. + """ + if getattr(self.vectorizer, "vocabulary_", None) is None: + raise ValueError( + "Can't update vocabulary because the model's vectorizer has not been fitted yet." + "Perhaps you should pass the vectorizer to the model upon initialization." + ) + if getattr(other_vectorizer_or_model, "vectorizer", None) is not None: + other_vectorizer = other_vectorizer_or_model.vectorizer + else: + other_vectorizer = other_vectorizer_or_model + # Joining vectorizers + joint_vectorizer = merge_vectorizers(self.vectorizer, other_vectorizer) + # Finding term difference + old_vectorizer = self.vectorizer + old_terms = old_vectorizer.get_feature_names_out() + joint_terms = joint_vectorizer.get_feature_names_out() + n_old = len(old_terms) + diff_terms = joint_terms[n_old:] + if len(diff_terms) == 0: + self.vectorizer = joint_vectorizer + return 0 + # Encoding new vocabulary items. + diff_to_other = [other_vectorizer.vocabulary_[t] for t in diff_terms] + # Updating vocab_embeddings if the model has them. + if getattr(self, "vocab_embeddings", None) is not None: + if ( + getattr(other_vectorizer_or_model, "vocab_embeddings", None) + is not None + ): + diff_vocab_embeddings = ( + other_vectorizer_or_model.vocab_embeddings[ + diff_to_other, : + ] + ) + else: + diff_vocab_embeddings = None + self._update_vocab_embeddings(diff_terms, diff_vocab_embeddings) + # Padding all components with NaNs where they haven't been fitted yet. + self._pad_components(n_diff_terms=len(diff_terms)) + # Setting joint vectorizer + self.vectorizer = joint_vectorizer + return len(diff_terms) + def get_feature_names_out(self) -> np.ndarray: """Get topic ids. diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 69a259a3..5ecbaefa 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -214,24 +214,6 @@ def fit_transform( console.log("Model fitting done.") return doc_topic - def update_vocabulary(self, raw_documents): - new_vectorizer = copy.copy(self.vectorizer) - new_vectorizer.fit(raw_documents) - old_vocab = self.get_vocab() - new_vocab = list( - set(new_vectorizer.get_feature_names_out()) - set(old_vocab) - ) - if len(new_vocab) == 0: - return [] - new_vocab_embeddings = self.encode_documents(new_vocab) - self.vocab_embeddings = np.concatenate( - [self.vocab_embeddings, new_vocab_embeddings], axis=0 - ) - self.vectorizer.get_feature_names_out = lambda: np.array( - list(old_vocab) + new_vocab - ) - return new_vocab - def partial_fit( self, raw_documents, @@ -286,9 +268,8 @@ def partial_fit( doc_topic = self.decomposition.transform(embeddings) console.log(f"Updated model with {n_new_components} topics.") status.update("Updating vocabulary") - new_vocab = self.update_vocabulary(raw_documents) - n_new_vocab = len(new_vocab) - console.log(f"Updated vocabulary with {n_new_vocab} items.") + new_vectorizer = copy.copy(self.vectorizer).fit(raw_documents) + self.update_vocabulary(new_vectorizer) status.update("Estimating term importances") vocab_topic = self.decomposition.transform(self.vocab_embeddings) self.axial_components_ = vocab_topic.T @@ -328,7 +309,7 @@ def partial_fit( ): t_component = np.pad( t_component, - [(0, n_new_components), (0, n_new_vocab)], + [(0, n_new_components), (0, 0)], mode="constant", constant_values=0, ) diff --git a/turftopic/vectorizers/merging.py b/turftopic/vectorizers/merging.py new file mode 100644 index 00000000..a4787daa --- /dev/null +++ b/turftopic/vectorizers/merging.py @@ -0,0 +1,76 @@ +import warnings + +import numpy as np +from sklearn.base import BaseEstimator, TransformerMixin +from sklearn.feature_extraction.text import CountVectorizer + + +def _merge_countvectorizers(left_vectorizer, right_vectorizer): + params = left_vectorizer.get_params() + left_terms = left_vectorizer.get_feature_names_out() + right_terms = right_vectorizer.get_feature_names_out() + # Extracting terms present in right but not in left + diff_terms = set(right_terms) - set(left_terms) + joint_terms = list(left_terms) + list(diff_terms) + # Mapping from vocabulary items to indices + joint_vocab = dict(zip(joint_terms, range(len(joint_terms)))) + params["vocabulary"] = joint_vocab + return type(left_vectorizer)(**params) + + +class VocabStore(BaseEstimator, TransformerMixin): + """Dummy, that can't actually vectorize, but stores the terms.""" + + def __init__(self, terms): + self.terms = terms + + def get_feature_names_out(self): + return np.array(self.terms) + + @property + def vocabulary_(self): + return dict(zip(self.terms, range(len(self.terms)))) + + def fit_transform(self, raw_documents, y=None): + raise NotImplementedError("Vocab store can't actually vectorize text.") + + def transform(self, raw_documents): + raise NotImplementedError("Vocab store can't actually vectorize text.") + + @classmethod + def from_merge(cls, left_vectorizer, right_vectorizer): + left_terms = left_vectorizer.get_feature_names_out() + right_terms = right_vectorizer.get_feature_names_out() + # Extracting terms present in right but not in left + diff_terms = set(right_terms) - set(left_terms) + joint_terms = list(left_terms) + list(diff_terms) + return cls(joint_terms) + + +def merge_vectorizers( + left_vectorizer, right_vectorizer +) -> CountVectorizer | VocabStore: + """Merges two vectorizers into one new vectorizer. + + Parameters + ---------- + left_vectorizer + Left vectorizer object to merge the other into. + right_vectorizer + Right vectorizer object to merge into the left vectorizer. + + Returns + ------- + CountVectorizer or VocabStore + If both vectorizers are CountVectorizer, a new CountVectorizer is returned, + otherwise a dummy VocabStore object is returned. + """ + if isinstance(left_vectorizer, CountVectorizer) and isinstance( + right_vectorizer, CountVectorizer + ): + return _merge_countvectorizers(left_vectorizer, right_vectorizer) + else: + warnings.warn( + "At least one vectorizer is not a CountVectorizer, returning a VocabStore object." + ) + return VocabStore.from_merge(left_vectorizer, right_vectorizer) From 405884ec739cab292375053956aa4a8260ec0b3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 9 Jul 2026 13:13:06 +0200 Subject: [PATCH 02/25] Removed latent term import from vectorizers init --- turftopic/vectorizers/__init__.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/turftopic/vectorizers/__init__.py b/turftopic/vectorizers/__init__.py index e940264a..e69de29b 100644 --- a/turftopic/vectorizers/__init__.py +++ b/turftopic/vectorizers/__init__.py @@ -1,3 +0,0 @@ -from turftopic.vectorizers.latent_terms.latent_terms import ( - LatentTermsVectorizer, -) From e05099ee5bc81a958b234008c90a387f23df0542 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Thu, 9 Jul 2026 16:32:41 +0200 Subject: [PATCH 03/25] Sped up SNMF drastically by relying on LAX-native loops --- turftopic/models/_snmf.py | 226 ++++++++++++++++++++++------------ turftopic/models/senstopic.py | 12 +- turftopic/optimization.py | 16 ++- 3 files changed, 168 insertions(+), 86 deletions(-) diff --git a/turftopic/models/_snmf.py b/turftopic/models/_snmf.py index 701ff61d..2a85bc2e 100644 --- a/turftopic/models/_snmf.py +++ b/turftopic/models/_snmf.py @@ -16,6 +16,7 @@ try: import jax.numpy as jnp from jax import jit + from jax.lax import while_loop except ModuleNotFoundError: warnings.warn("JAX not found, continuing with NumPy implementation.") jnp = np @@ -24,6 +25,13 @@ def jit(f): return f + # Naive Python implementation of JAX's while_loop + def while_loop(cond_fun, body_fun, init_val): + val = init_val + while cond_fun(val): + val = body_fun(val) + return val + def init_G( X, n_components: int, constant=0.2, random_state=None @@ -87,6 +95,90 @@ def step(G, F, X, sparsity=0, n_freeze=None): return G, F, error +def inference_loop( + X, + G, + F, + sparsity=0, + n_freeze=None, + tol=1e-5, + max_iter=200, + track_convergence=True, + freeze_F=False, +): + init_error = rec_err(X.T, F, G) + init_state = { + "G": G, + "F": F, + "error": init_error, + "error_diff": np.inf, + "n_iter": 0, + } + + def _cond_fn(state): + keep_running = state["n_iter"] < max_iter + if track_convergence: + converged = jnp.logical_and( + state["error"] < init_error, + (state["error_diff"] / init_error) < tol, + ) + keep_running = jnp.logical_and( + keep_running, (jnp.logical_not(converged)) + ) + return keep_running + + def _body_fn(state): + if not freeze_F: + G, F, new_error = step( + state["G"], + state["F"], + X, + sparsity=sparsity, + n_freeze=n_freeze, + ) + else: + G = update_G( + X.T, + state["G"], + state["F"], + sparsity=sparsity, + n_freeze=n_freeze, + ) + F = state["F"] + new_error = rec_err(X.T, F, G) + return { + "G": G, + "F": F, + "error": new_error, + "error_diff": state["error"] - new_error, + "n_iter": state["n_iter"] + 1, + } + + return while_loop(_cond_fn, _body_fn, init_state) + + +def infer_bic(G_init, F, X, sparsity, tol, max_iter): + last_state = inference_loop( + X=X, + G=G_init, + F=F, + sparsity=sparsity, + n_freeze=None, + tol=tol, + max_iter=max_iter, + track_convergence=True, + freeze_F=True, + ) + rss = rec_err(X.T, F, last_state["G"]) + n_components = G_init.shape[1] + n_docs, n_dims = X.shape + # BIC1 from https://pmc.ncbi.nlm.nih.gov/articles/PMC9181460/ + bic1 = jnp.log(rss) + n_components * ( + (n_docs + n_dims) / (n_docs * n_dims) + ) * jnp.log((n_docs * n_dims) / (n_docs + n_dims)) + return bic1 + + class SNMF(TransformerMixin, BaseEstimator): def __init__( self, @@ -110,84 +202,67 @@ def fit_transform(self, X: np.ndarray, y=None): G = init_G(X.T, self.n_components, random_state=self.random_state) F = update_F(X.T, G, F=None) self.error_at_init = rec_err(X.T, F, G) - prev_error = self.error_at_init - _step = jit(partial(step, sparsity=self.sparsity, X=X, n_freeze=0)) - for i in trange( - self.max_iter, - desc="Iterative updates.", - disable=not self.progress_bar, - ): - G, F, error = _step(G, F) - difference = prev_error - error - if (error < self.error_at_init) and ( - (prev_error - error) / self.error_at_init - ) < self.tol: - if self.verbose: - print(f"Converged after {i} iterations") - self.n_iter_ = i - break - prev_error = error - if self.verbose: - print( - f"Iteration: {i}, Error: {error}, init_error: {self.error_at_init}, difference from previous: {difference}" - ) - else: - warnings.warn( - "SNMF did not converge, try specifying a higher max_iter." - ) - self.components_ = np.array(F.T) - self.reconstruction_err_ = error + last_state = inference_loop( + X=X, + G=G, + F=F, + sparsity=self.sparsity, + n_freeze=None, + tol=self.tol, + max_iter=self.max_iter, + track_convergence=True, + freeze_F=False, + ) + self.components_ = np.array(last_state["F"].T) + self.reconstruction_err_ = float(last_state["error"]) self.n_datapoints_ = X.shape[0] - self.n_iter_ = i - return np.array(G) + self.n_iter_ = int(last_state["n_iter"]) + return np.array(last_state["G"]) def fit(self, X, y=None): self.fit_transform(X, y) return self - def bic(self, X): - rss = np.square(self.rec_err(X)) + def bic(self, X, F=None, G=None): + if F is None: + F = self.components_.T + n_components = F.shape[1] + if G is None: + G = self.transform(X, F) + rss = rec_err(X.T, F, G) + n_components = G.shape[1] n_docs, n_dims = X.shape # BIC1 from https://pmc.ncbi.nlm.nih.gov/articles/PMC9181460/ - bic1 = np.log(rss) + self.n_components * ( + bic1 = jnp.log(rss) + n_components * ( (n_docs + n_dims) / (n_docs * n_dims) - ) * np.log((n_docs * n_dims) / (n_docs + n_dims)) - return bic1 + ) * jnp.log((n_docs * n_dims) / (n_docs + n_dims)) + return float(bic1) - def fit_new_components(self, X: np.ndarray, n_new_components: int): + def _fit_new(self, X, n_new: int): G_old = self.transform(X) old_n_components = self.n_components - G = add_G(G_old, n_add=n_new_components) + G = add_G(G_old, n_add=n_new) F = update_F(X.T, G, self.components_.T, n_freeze=old_n_components) - prev_error = rec_err(X.T, F, G) - _step = jit( - partial( - step, sparsity=self.sparsity, X=X, n_freeze=self.n_components - ) + last_state = inference_loop( + X=X, + G=G, + F=F, + sparsity=self.sparsity, + n_freeze=old_n_components, + tol=self.tol, + max_iter=self.max_iter, + track_convergence=True, + freeze_F=False, ) - for i in trange( - self.max_iter, - desc="Iterative updates.", - disable=not self.progress_bar, - ): - G, F, error = _step(G, F) - difference = prev_error - error - # if (error < self.error_at_init) and ( - # (prev_error - error) / self.error_at_init - # ) < self.tol: - # if self.verbose: - # print(f"Converged after {i} iterations") - # self.n_iter_ = i - # break - # prev_error = error - # if self.verbose: - # print( - # f"Iteration: {i}, Error: {error}, init_error: {self.error_at_init}, difference from previous: {difference}" - # ) - self.components_ = np.array(F.T) - self.n_iter_ = i + return last_state + + def fit_new_components(self, X: np.ndarray, n_new_components: int): + old_n_components = self.n_components + last_state = self._fit_new(X, n_new_components) + self.components_ = np.array(last_state["F"].T) + self.n_iter_ = int(last_state["n_iter"]) self.n_components = old_n_components + n_new_components - self.reconstruction_err_ = error + self.reconstruction_err_ = float(last_state["error"]) return self def rec_err(self, X): @@ -207,19 +282,18 @@ def transform(self, X: np.ndarray, F=None): ) if F is None: F = self.components_.T - update = jit(lambda G: update_G(X.T, G, F, sparsity=self.sparsity)) - error_at_init = rec_err(X.T, F, G) - prev_error = error_at_init - for i in range(self.max_iter): - G = update(G) - err = rec_err(X.T, F, G) - if (err < error_at_init) and ( - (prev_error - err) / error_at_init - ) < self.tol: - if self.verbose: - print(f"Converged after {i} iterations") - break - return np.array(G) + last_state = inference_loop( + X=X, + G=G, + F=F, + sparsity=self.sparsity, + n_freeze=None, + tol=self.tol, + max_iter=self.max_iter, + track_convergence=True, + freeze_F=True, + ) + return np.array(last_state["G"]) def inverse_transform(self, X): """Transform data back to its original space. diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 5ecbaefa..7676501f 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -15,7 +15,7 @@ from turftopic.base import ContextualModel, Encoder from turftopic.dynamic import DynamicTopicModel from turftopic.encoders.multimodal import MultimodalEncoder -from turftopic.models._snmf import SNMF, rec_err +from turftopic.models._snmf import SNMF from turftopic.multimodal import ( ImageRepr, MultimodalEmbeddings, @@ -42,8 +42,9 @@ def bic_snmf( random_state=42, verbose=False, progress_bar=False, - ).fit(X) - return decomp.bic(X) + ) + G = decomp.fit_transform(X) + return decomp.bic(X, G=G) def bic_add_components(n_new: int, X_new, decomp): @@ -52,8 +53,8 @@ def bic_add_components(n_new: int, X_new, decomp): m_copy = copy.copy(decomp) m_copy.progress_bar = False m_copy.verbose = False - m_copy.fit_new_components(X_new, n_new_components=n_new) - return m_copy.bic(X_new) + last_state = m_copy._fit_new(X_new, n_new) + return m_copy.bic(X_new, F=last_state["F"], G=last_state["G"]) class SensTopic(ContextualModel, DynamicTopicModel, MultimodalModel): @@ -260,6 +261,7 @@ def partial_fit( ), min_n=0, verbose=True, + tolerance=5, ) self.decomposition.fit_new_components( embeddings, n_new_components=n_new_components diff --git a/turftopic/optimization.py b/turftopic/optimization.py index cba5ace8..0c735a5a 100644 --- a/turftopic/optimization.py +++ b/turftopic/optimization.py @@ -43,7 +43,13 @@ def decomposition_gaussian_bic( def optimize_n_components( - f_ic: Callable[int, float], min_n: int = 2, max_n: int = 250, verbose=False + f_ic: Callable[int, float], + min_n=2, + max_n=250, + tolerance=10, + initial_increment=5, + increment_multiplier=2, + verbose=False, ) -> int: """Optimizes the nuber of components using the Brent minimum finding algorithm given an information criterion. @@ -79,15 +85,15 @@ def _f_ic(n_components) -> float: n_comp = 2 while not _f_ic(n_comp) < _f_ic(min_n): n_comp += 1 - if n_comp >= 10: + if n_comp >= tolerance: if verbose: print( - f" - Couldn't find lower value than n={min_n} up to n=10, stopping." + f" - Couldn't find lower value than n={min_n} up to n={tolerance}, stopping." ) return min_n middle = n_comp current = _f_ic(middle) - inc = 5 + inc = initial_increment while not current > _f_ic(middle): n_comp += inc if n_comp >= max_n: @@ -98,7 +104,7 @@ def _f_ic(n_components) -> float: if current < _f_ic(middle): low = n_comp - inc middle = n_comp - inc *= 2 + inc *= increment_multiplier bracket = low, middle, n_comp if verbose: print(f" - Running optimization with bracket: {bracket}") From d0148b4f3660e83afe3edc0c3a736ae94136f78e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 11:45:22 +0200 Subject: [PATCH 04/25] Moved jitting to more sensible place, added model merging to SNMF --- turftopic/models/_snmf.py | 89 +++++++++++++++++++++++++++++++++------ 1 file changed, 75 insertions(+), 14 deletions(-) diff --git a/turftopic/models/_snmf.py b/turftopic/models/_snmf.py index 2a85bc2e..0cfde9ac 100644 --- a/turftopic/models/_snmf.py +++ b/turftopic/models/_snmf.py @@ -1,14 +1,13 @@ """This file implements semi-NMF, where doc_topic proportions are not allowed to be negative, but components are unbounded.""" import warnings -from functools import partial -from typing import Optional +from typing import Callable, Optional import numpy as np -from sklearn.base import BaseEstimator, TransformerMixin, copy +from sklearn.base import BaseEstimator, TransformerMixin from sklearn.cluster import KMeans -from tqdm import trange +from turftopic.merging import get_merge_fn from turftopic.utils import safe_binarize EPSILON = np.finfo(np.float32).eps @@ -157,6 +156,48 @@ def _body_fn(state): return while_loop(_cond_fn, _body_fn, init_state) +@jit +def infer_doc_topic( + X, + G, + F, + sparsity=0, + tol=1e-5, + max_iter=200, +): + return inference_loop( + X, + G, + F, + sparsity=sparsity, + tol=tol, + max_iter=max_iter, + track_convergence=True, + freeze_F=True, + ) + + +@jit +def infer_model( + X, + G, + F, + sparsity=0, + tol=1e-5, + max_iter=200, +): + return inference_loop( + X, + G, + F, + sparsity=sparsity, + tol=tol, + max_iter=max_iter, + track_convergence=True, + freeze_F=False, + ) + + def infer_bic(G_init, F, X, sparsity, tol, max_iter): last_state = inference_loop( X=X, @@ -169,7 +210,7 @@ def infer_bic(G_init, F, X, sparsity, tol, max_iter): track_convergence=True, freeze_F=True, ) - rss = rec_err(X.T, F, last_state["G"]) + rss = jnp.square(rec_err(X.T, F, last_state["G"])) n_components = G_init.shape[1] n_docs, n_dims = X.shape # BIC1 from https://pmc.ncbi.nlm.nih.gov/articles/PMC9181460/ @@ -202,16 +243,13 @@ def fit_transform(self, X: np.ndarray, y=None): G = init_G(X.T, self.n_components, random_state=self.random_state) F = update_F(X.T, G, F=None) self.error_at_init = rec_err(X.T, F, G) - last_state = inference_loop( + last_state = infer_model( X=X, G=G, F=F, sparsity=self.sparsity, - n_freeze=None, tol=self.tol, max_iter=self.max_iter, - track_convergence=True, - freeze_F=False, ) self.components_ = np.array(last_state["F"].T) self.reconstruction_err_ = float(last_state["error"]) @@ -229,7 +267,7 @@ def bic(self, X, F=None, G=None): n_components = F.shape[1] if G is None: G = self.transform(X, F) - rss = rec_err(X.T, F, G) + rss = jnp.square(rec_err(X.T, F, G)) n_components = G.shape[1] n_docs, n_dims = X.shape # BIC1 from https://pmc.ncbi.nlm.nih.gov/articles/PMC9181460/ @@ -263,6 +301,7 @@ def fit_new_components(self, X: np.ndarray, n_new_components: int): self.n_iter_ = int(last_state["n_iter"]) self.n_components = old_n_components + n_new_components self.reconstruction_err_ = float(last_state["error"]) + self.n_datapoints_ += X.shape[0] return self def rec_err(self, X): @@ -282,16 +321,13 @@ def transform(self, X: np.ndarray, F=None): ) if F is None: F = self.components_.T - last_state = inference_loop( + last_state = infer_doc_topic( X=X, G=G, F=F, sparsity=self.sparsity, - n_freeze=None, tol=self.tol, max_iter=self.max_iter, - track_convergence=True, - freeze_F=True, ) return np.array(last_state["G"]) @@ -309,3 +345,28 @@ def inverse_transform(self, X): Returns a data matrix of the original shape. """ return X @ self.components_ + + def merge_with( + self, + other: "SNMF", + match_threshold=0.7, + merge_method: str | Callable = "symmetric_mean", + weighted=True, + ) -> "SNMF": + args = self.get_params() + merge_fn = get_merge_fn(merge_method) + weights = ( + [self.n_datapoints_, other.n_datapoints_] if weighted else None + ) + new_components = merge_fn( + [self.components_, other.components_], + weights=weights, + match_threshold=match_threshold, + ) + args["n_components"] = new_components.shape[0] + new_model = type(self)(**args) + new_model.components_ = new_components + new_model.reconstruction_err_ = self.reconstruction_err_ + new_model.n_datapoints_ = self.n_datapoints_ + other.n_datapoints_ + new_model.n_iter_ = self.n_iter_ + return new_model From e409c7da51697962b2fcd4f40592b481a3a7652a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 11:45:51 +0200 Subject: [PATCH 05/25] Added an array of merging methods --- turftopic/merging.py | 137 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 turftopic/merging.py diff --git a/turftopic/merging.py b/turftopic/merging.py new file mode 100644 index 00000000..22146aa0 --- /dev/null +++ b/turftopic/merging.py @@ -0,0 +1,137 @@ +import warnings +from functools import partial +from typing import Callable + +import numpy as np +import scipy.sparse as spr +from sklearn.metrics.pairwise import cosine_similarity + + +def safe_agg(a, agg, weights, axis=0): + try: + return agg(a, weights=weights, axis=axis) + except Exception: + return agg(a, axis=axis) + + +def symmetric_merge( + component_matrices: list[np.ndarray], + weights=None, + match_threshold: float = 0.7, + agg=np.average, + sim_fn=cosine_similarity, + allow_within_model_match=False, +) -> np.ndarray: + stacked_components = np.concatenate(component_matrices, axis=0) + similarity = sim_fn(stacked_components, stacked_components) + if not allow_within_model_match: + i_processed = 0 + for comp in component_matrices: + n_comp = comp.shape[0] + similarity[ + i_processed : i_processed + n_comp, + i_processed : i_processed + n_comp, + ] = np.eye(n_comp).T + i_processed += n_comp + matches = spr.csr_array(similarity > match_threshold) + n_graph_components, labels = spr.csgraph.connected_components( + matches, directed=False + ) + n_dims = stacked_components.shape[1] + new_components = np.zeros((n_graph_components, n_dims)) + for i_graph_component in np.arange(n_graph_components): + new_components[i_graph_component, :] = safe_agg( + stacked_components[labels == i_graph_component], + agg=agg, + weights=weights, + axis=0, + ) + return new_components + + +def keep_first(a, axis=0): + return np.take(a, 0, axis=axis) + + +def assymmetric_merge( + component_matrices: list[np.ndarray], + weights=None, + match_threshold: float = 0.7, + agg=keep_first, + sim_fn=cosine_similarity, +): + components = np.copy(component_matrices[0]) + for incoming_components in component_matrices[1:]: + similarity = sim_fn(components, incoming_components) + match = similarity > match_threshold + for i_comp, old_matches_new in enumerate(match): + if np.any(old_matches_new): + components[i_comp] = safe_agg( + np.concatenate( + [ + components[[i_comp], :], + incoming_components[old_matches_new], + ], + axis=0, + ), + agg=agg, + weights=weights, + axis=0, + ) + to_add, *_ = np.nonzero(match.sum(axis=0) <= 0) + components = np.concatenate( + [components, incoming_components[to_add]], axis=0 + ) + return components + + +NAMED_METHODS = { + "keep_first": partial( + assymmetric_merge, sim_fn=cosine_similarity, agg=keep_first + ), + "asymmetric_mean": partial( + assymmetric_merge, sim_fn=cosine_similarity, agg=np.nanmean + ), + "symmetric_mean": partial( + symmetric_merge, sim_fn=cosine_similarity, agg=np.nanmean + ), +} + + +def get_merge_fn(merge_method: str | Callable) -> Callable: + if isinstance(merge_method, str): + if merge_method in NAMED_METHODS: + return NAMED_METHODS[merge_method] + else: + available_methods = ", ".join(NAMED_METHODS.keys()) + raise ValueError( + f"Named merge method {merge_method} not found." + f" Available methods are {available_methods}" + ) + else: + return merge_method + + +class ExponentialDecayMerge: + def __init__(self, merge_method: Callable, decay_constant=10): + self.i_merge = 0 + self.decay_constant = 1 + self.merge_method = merge_method + self.merge_fn = get_merge_fn(self.merge_method) + + def __call__(self, component_matrices, weights=None, match_threshold=0.7): + if weights is None: + weights = np.ones(len(component_matrices)) + # Leftmost is assumed to be the current model + lr = np.exp( + -self.decay_constant + * (np.arange(len(component_matrices) - 1) + self.i_merge) + ) + lr = np.insert(lr, 0, 1) + decayed_weights = weights * lr + self.i_merge += len(component_matrices) - 1 + return self.merge_fn( + component_matrices, + weights=decayed_weights, + match_threshold=match_threshold, + ) From 1461d2b877b549f7de5b3f5e59d4233b97e93219 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 11:46:41 +0200 Subject: [PATCH 06/25] Added model merging partial_fit to SensTopic --- turftopic/models/senstopic.py | 50 ++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 7676501f..4f7234c0 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -1,6 +1,6 @@ from datetime import datetime, timedelta from functools import partial -from typing import Literal, Optional, Union +from typing import Callable, Literal, Optional, Union import numpy as np from rich.console import Console @@ -36,6 +36,9 @@ def bic_snmf( n_components: int, sparsity: float, X, random_state: int = 42 ) -> float: + if n_components == 0: + rss = np.square(np.linalg.norm(X)) + return np.log(rss) decomp = SNMF( n_components=n_components, sparsity=sparsity, @@ -215,6 +218,51 @@ def fit_transform( console.log("Model fitting done.") return doc_topic + def partial_fit_merge( + self, + raw_documents, + y=None, + embeddings=None, + n_new_components: int = "auto", + match_threshold=0.7, + merge_method: str | Callable = "symmetric_mean", + weighted=True, + ): + if getattr(self, "components_", None) is None: + return self.fit(raw_documents, embeddings=embeddings) + if embeddings is None: + embeddings = self.encode_documents(raw_documents) + if n_new_components == "auto": + n_new_components = optimize_n_components( + partial( + bic_snmf, + X=embeddings, + sparsity=self.sparsity, + ), + min_n=1, + verbose=True, + tolerance=10, + ) + new_decomp = SNMF( + n_new_components, + max_iter=self.max_iter, + sparsity=self.sparsity, + random_state=self.random_state, + ).fit(embeddings) + self.decomposition = self.decomposition.merge_with( + new_decomp, + merge_method=merge_method, + match_threshold=match_threshold, + weighted=weighted, + ) + self.n_components_ = self.decomposition.n_components + new_vectorizer = copy.copy(self.vectorizer).fit(raw_documents) + self.update_vocabulary(new_vectorizer) + vocab_topic = self.decomposition.transform(self.vocab_embeddings) + self.axial_components_ = vocab_topic.T + self.estimate_components(self.feature_importance) + return self + def partial_fit( self, raw_documents, From 7eedde7856bacb81e827e881117cc504e5df4095 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 11:47:40 +0200 Subject: [PATCH 07/25] Made model merging the default partial_fit --- turftopic/models/senstopic.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 4f7234c0..3080d6b4 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -218,7 +218,7 @@ def fit_transform( console.log("Model fitting done.") return doc_topic - def partial_fit_merge( + def partial_fit( self, raw_documents, y=None, @@ -263,7 +263,7 @@ def partial_fit_merge( self.estimate_components(self.feature_importance) return self - def partial_fit( + def _partial_fit_add_components( self, raw_documents, y=None, From 77f172174ef9cbf469242abba37b258bf6f93a2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 11:49:58 +0200 Subject: [PATCH 08/25] Replaced copy calls with clone --- turftopic/models/senstopic.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 3080d6b4..96ca90c1 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -5,7 +5,7 @@ import numpy as np from rich.console import Console from rich.progress import track -from sklearn.base import copy +from sklearn.base import clone from sklearn.exceptions import NotFittedError from sklearn.feature_extraction.text import CountVectorizer from sklearn.manifold import TSNE @@ -53,7 +53,7 @@ def bic_snmf( def bic_add_components(n_new: int, X_new, decomp): if n_new == 0: return decomp.bic(X_new) - m_copy = copy.copy(decomp) + m_copy = clone(decomp) m_copy.progress_bar = False m_copy.verbose = False last_state = m_copy._fit_new(X_new, n_new) @@ -256,7 +256,7 @@ def partial_fit( weighted=weighted, ) self.n_components_ = self.decomposition.n_components - new_vectorizer = copy.copy(self.vectorizer).fit(raw_documents) + new_vectorizer = clone(self.vectorizer).fit(raw_documents) self.update_vocabulary(new_vectorizer) vocab_topic = self.decomposition.transform(self.vocab_embeddings) self.axial_components_ = vocab_topic.T @@ -318,7 +318,7 @@ def _partial_fit_add_components( doc_topic = self.decomposition.transform(embeddings) console.log(f"Updated model with {n_new_components} topics.") status.update("Updating vocabulary") - new_vectorizer = copy.copy(self.vectorizer).fit(raw_documents) + new_vectorizer = clone(self.vectorizer).fit(raw_documents) self.update_vocabulary(new_vectorizer) status.update("Estimating term importances") vocab_topic = self.decomposition.transform(self.vocab_embeddings) From 110695ec0ad00498472f4495e2bd2330515a99da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Sun, 19 Jul 2026 12:01:19 +0200 Subject: [PATCH 09/25] Added warnings and docstrings to merging partial_fit --- turftopic/models/senstopic.py | 36 +++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 96ca90c1..a71bf3d9 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -1,3 +1,4 @@ +import warnings from datetime import datetime, timedelta from functools import partial from typing import Callable, Literal, Optional, Union @@ -228,6 +229,41 @@ def partial_fit( merge_method: str | Callable = "symmetric_mean", weighted=True, ): + """Updates topic model by merging it with another one trained on the new data. + + Parameters + ---------- + raw_documents: iterable of str + Documents to fit the model on. + y: None + Ignored, exists for sklearn compatibility. + embeddings: ndarray of shape (n_documents, n_dimensions), optional + Precomputed document encodings. + n_new_components: int, default "auto" + Determines how many topics will get extracted from the new data. + If "auto", the number of topics gets determined by the BIC. + match_threshold: float, default 0.7 + Cosine similarity threshold, above which topics are to be considered the same. + merge_method: {'symmetric_mean', 'asymmetric_mean', 'keep_first'} or Callable, default 'symmetric_mean' + Method for merging the two topic models. + - `'symmetric_mean'` Treats the two models as equal, and takes the mean of matching topics. + Matches are found by building a graph of topic connections based on the similarity threshold. + Each new topic will be one graph component. + - `'asymmetric_mean'` Merges new topics into the old topics and takes their mean. + - `'keep_first'` Keeps all components untouched in the current model, + and only adds new components from the new model that do not match. + weighted: bool, default True + Indicates whether the merge aggregation should be weighted by the number of documents the + two models have seen. + Returns + ------- + ndarray of shape (n_documents, n_topics) + Document-topic matrix. + """ + if getattr(self, "axial_temporal_components_", None) is not None: + warnings.warn( + "Merging based partial fit does NOT work with dynamic modelling just yet. Do not use dynamic features with partial_fit for now." + ) if getattr(self, "components_", None) is None: return self.fit(raw_documents, embeddings=embeddings) if embeddings is None: From 1c3d02d176aef836741291a23f619a38f9db6463 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos=C3=98?= Date: Mon, 20 Jul 2026 15:35:45 +0200 Subject: [PATCH 10/25] Refactored merging to return merge history --- turftopic/merging.py | 93 ++++++++++++++++++++++++++--------- turftopic/models/_snmf.py | 8 +-- turftopic/models/senstopic.py | 2 +- 3 files changed, 76 insertions(+), 27 deletions(-) diff --git a/turftopic/merging.py b/turftopic/merging.py index 22146aa0..088a494a 100644 --- a/turftopic/merging.py +++ b/turftopic/merging.py @@ -1,4 +1,7 @@ +import datetime +import itertools import warnings +from collections import defaultdict from functools import partial from typing import Callable @@ -14,6 +17,40 @@ def safe_agg(a, agg, weights, axis=0): return agg(a, axis=axis) +MergeHistory = list[list[int]] + + +def merge_from_history( + component_matrices: list[np.ndarray], + merge_history: MergeHistory, + weights=None, + agg=np.average, +) -> np.ndarray: + stacked_components = np.concatenate(component_matrices, axis=0) + flat_merge_hist = list(itertools.chain.from_iterable(merge_history)) + unique_components = np.unique(flat_merge_hist) + assert unique_components[0] == 0 + new_to_old = defaultdict(list) + current = 0 + for merge_h, comp in zip(merge_history, component_matrices): + n_model_components = comp.shape[0] + for i_old, to_new in enumerate(merge_h): + new_to_old[to_new].append(i_old + current) + current += n_model_components + n_dims = stacked_components.shape[1] + new_components = np.zeros( + (len(unique_components), n_dims), dtype=stacked_components.dtype + ) + for i_new, old_ind in new_to_old.items(): + new_components[i_new] = safe_agg( + stacked_components[old_ind], + agg=agg, + weights=weights, + axis=0, + ) + return new_components + + def symmetric_merge( component_matrices: list[np.ndarray], weights=None, @@ -21,7 +58,7 @@ def symmetric_merge( agg=np.average, sim_fn=cosine_similarity, allow_within_model_match=False, -) -> np.ndarray: +) -> tuple[np.ndarray, MergeHistory]: stacked_components = np.concatenate(component_matrices, axis=0) similarity = sim_fn(stacked_components, stacked_components) if not allow_within_model_match: @@ -37,40 +74,48 @@ def symmetric_merge( n_graph_components, labels = spr.csgraph.connected_components( matches, directed=False ) - n_dims = stacked_components.shape[1] - new_components = np.zeros((n_graph_components, n_dims)) - for i_graph_component in np.arange(n_graph_components): - new_components[i_graph_component, :] = safe_agg( - stacked_components[labels == i_graph_component], - agg=agg, - weights=weights, - axis=0, + merge_history = [] + current_ind = 0 + for i_model, comp in enumerate(component_matrices): + n_model_components = comp.shape[0] + merge_history.append( + labels[current_ind : current_ind + n_model_components] ) - return new_components + current_ind += n_model_components + new_components = merge_from_history( + component_matrices, merge_history, weights=weights, agg=agg + ) + return new_components, merge_history def keep_first(a, axis=0): return np.take(a, 0, axis=axis) -def assymmetric_merge( +def asymmetric_merge( component_matrices: list[np.ndarray], weights=None, match_threshold: float = 0.7, agg=keep_first, sim_fn=cosine_similarity, -): +) -> tuple[np.ndarray, MergeHistory]: + merge_history = [] components = np.copy(component_matrices[0]) + # First components will just be kept + merge_history.append(list(range(components.shape[0]))) for incoming_components in component_matrices[1:]: + n_current = components.shape[0] + _merge_inst = [] similarity = sim_fn(components, incoming_components) - match = similarity > match_threshold - for i_comp, old_matches_new in enumerate(match): - if np.any(old_matches_new): - components[i_comp] = safe_agg( + maxsim_ind = np.argmax(similarity.T, axis=1) + to_add = [] + for i_new_comp, ind_most_similar_old in enumerate(maxsim_ind): + if similarity[ind_most_similar_old, i_new_comp] > match_threshold: + components[ind_most_similar_old] = safe_agg( np.concatenate( [ - components[[i_comp], :], - incoming_components[old_matches_new], + components[[ind_most_similar_old], :], + incoming_components[[i_new_comp], :], ], axis=0, ), @@ -78,19 +123,23 @@ def assymmetric_merge( weights=weights, axis=0, ) - to_add, *_ = np.nonzero(match.sum(axis=0) <= 0) + _merge_inst.append(ind_most_similar_old) + else: + to_add.append(i_new_comp) + _merge_inst.append(n_current + len(to_add)) components = np.concatenate( [components, incoming_components[to_add]], axis=0 ) - return components + merge_history.append(_merge_inst) + return components, merge_history NAMED_METHODS = { "keep_first": partial( - assymmetric_merge, sim_fn=cosine_similarity, agg=keep_first + asymmetric_merge, sim_fn=cosine_similarity, agg=keep_first ), "asymmetric_mean": partial( - assymmetric_merge, sim_fn=cosine_similarity, agg=np.nanmean + asymmetric_merge, sim_fn=cosine_similarity, agg=np.nanmean ), "symmetric_mean": partial( symmetric_merge, sim_fn=cosine_similarity, agg=np.nanmean diff --git a/turftopic/models/_snmf.py b/turftopic/models/_snmf.py index 0cfde9ac..a8d22989 100644 --- a/turftopic/models/_snmf.py +++ b/turftopic/models/_snmf.py @@ -7,7 +7,7 @@ from sklearn.base import BaseEstimator, TransformerMixin from sklearn.cluster import KMeans -from turftopic.merging import get_merge_fn +from turftopic.merging import MergeHistory, get_merge_fn from turftopic.utils import safe_binarize EPSILON = np.finfo(np.float32).eps @@ -352,13 +352,13 @@ def merge_with( match_threshold=0.7, merge_method: str | Callable = "symmetric_mean", weighted=True, - ) -> "SNMF": + ) -> tuple["SNMF", MergeHistory]: args = self.get_params() merge_fn = get_merge_fn(merge_method) weights = ( [self.n_datapoints_, other.n_datapoints_] if weighted else None ) - new_components = merge_fn( + new_components, merge_history = merge_fn( [self.components_, other.components_], weights=weights, match_threshold=match_threshold, @@ -369,4 +369,4 @@ def merge_with( new_model.reconstruction_err_ = self.reconstruction_err_ new_model.n_datapoints_ = self.n_datapoints_ + other.n_datapoints_ new_model.n_iter_ = self.n_iter_ - return new_model + return new_model, merge_history diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index a71bf3d9..e9f2aaad 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -285,7 +285,7 @@ def partial_fit( sparsity=self.sparsity, random_state=self.random_state, ).fit(embeddings) - self.decomposition = self.decomposition.merge_with( + self.decomposition, merge_history = self.decomposition.merge_with( new_decomp, merge_method=merge_method, match_threshold=match_threshold, From 85daa03567d501f4daf94ee281411ca634d27885 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 13:05:04 +0200 Subject: [PATCH 11/25] Added WikiAnalyzer --- turftopic/analyzers/wiki.py | 196 ++++++++++++++++++++++++++++++++++++ 1 file changed, 196 insertions(+) create mode 100644 turftopic/analyzers/wiki.py diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py new file mode 100644 index 00000000..d6fffc59 --- /dev/null +++ b/turftopic/analyzers/wiki.py @@ -0,0 +1,196 @@ +import numpy as np +import re +from turftopic.base import ContextualModel +from turftopic.analyzers.base import Analyzer, AnalysisResults +from sklearn.metrics.pairwise import cosine_similarity +from turftopic.serialization import get_package_versions +from rich.console import Console +from rich.progress import track + +URL = "https://en.wikipedia.org/w/api.php" +VERSIONS = get_package_versions() +VERSION = VERSIONS["turftopic"] + +CLEANR = re.compile("<.*?>") + +HEADERS = { + "User-Agent": f"TurftopicBot/0.1 (martonkardos@cas.au.dk) turftopic/{VERSION}" +} + + +def remove_html(text: str): + cleantext = re.sub(CLEANR, "", text) + return cleantext + + +def remove_parens(s): + return re.sub(r"\([^)]*\)", "", s) + + +class WikiAnalyzer(Analyzer): + use_summaries = False + + def __init__( + self, + topic_model: ContextualModel, + n_keywords: int = 5, + similarity_threshold: float = 0.7, + limit: int = 10, + prune_summaries=True, + ): + import requests + + self.session = requests.Session() + self.topic_model = topic_model + self.n_keywords = n_keywords + self.similarity_threshold = similarity_threshold + self.limit = limit + self.prune_summaries = prune_summaries + + def summarize_document(self, document: str) -> str: + raise NotImplementedError + + def generate_text(self, prompt: str) -> str: + raise NotImplementedError + + def _search_page(self, keywords: list[str]): + query = " ".join(keywords[: self.n_keywords]) + params = { + "action": "query", + "format": "json", + "list": "search", + "srsearch": query, + "srlimit": self.limit, + } + results = self.session.get(url=URL, params=params, headers=HEADERS) + try: + data = results.json() + return data["query"]["search"] + except Exception: + return [] + + def _get_summary(self, pageid): + params = { + "action": "query", + "format": "json", + "prop": "extracts", + "explaintext": 1, + "exsectionformat": "wiki", + "exintro": 1, + "pageids": pageid, + } + results = self.session.get(url=URL, params=params, headers=HEADERS) + try: + data = results.json() + pages = data["query"]["pages"] + summary = pages[str(pageid)]["extract"] + if self.prune_summaries: + summary = summary.split(".")[0] + "." + return summary + except Exception: + return None + + def _get_topic_embedding( + self, keywords: list[str], documents: list[str] = None + ): + repr_str = list(keywords) + if documents is not None: + repr_str.extend(documents) + embeddings = self.topic_model.encode_documents(repr_str) + return np.mean(embeddings, axis=0) + + def _get_best_match( + self, keywords: list[str], documents: list[str] = None + ): + search_results = self._search_page(keywords) + search_results = [ + entry + for entry in search_results + if len(remove_parens(entry["title"]).split()) < 5 + ] + if not search_results: + return None + titles = [entry["title"] for entry in search_results] + snippets = [remove_html(entry["snippet"]) for entry in search_results] + repr_str = titles + topic_embedding = self._get_topic_embedding(keywords, documents) + page_embeddings = self.topic_model.encode_documents(repr_str) + sim = cosine_similarity([topic_embedding], page_embeddings)[0] + i_best_page = np.argmax(sim) + if sim[i_best_page] < self.similarity_threshold: + return None + return dict( + name=remove_parens(titles[i_best_page]), + snippet=snippets[i_best_page], + pageid=search_results[i_best_page]["pageid"], + ) + + def describe_topic( + self, + keywords: list[str], + documents=None, + ): + """Gives abstract summarization of topic content.""" + best_match = self._get_best_match(keywords) + if best_match is None: + return None + return self._get_summary(best_match["pageid"]) + + def name_topic( + self, + keywords: list[str], + documents=None, + ) -> str: + """Names one topic based on top descriptive aspects.""" + best_match = self._get_best_match(keywords) + if best_match is None: + return None + return best_match["name"] + + def analyze_topics( + self, + keywords: list[list[str]], + documents: list[list[str]] = None, + use_summaries=None, + ) -> AnalysisResults: + """ + Parameters + ---------- + keywords: list[list[str]] + Keywords for each topic. + documents: list[list[str]] + Top documents for each topic. + use_summaries: None + Ignored. + + Returns + ------- + dict + Dictionary containing `topic_names`, `topic_descriptions` and `document_summaries` if relevant. + """ + output = {"topic_names": [], "topic_descriptions": []} + if documents is None: + for keys in track(keywords, description="Analyzing topics..."): + best_match = self._get_best_match(keys) + if best_match is None: + output["topic_names"].append(None) + output["topic_descriptions"].append(None) + continue + output["topic_names"].append(best_match["name"]) + summary = self._get_summary(best_match["pageid"]) + output["topic_descriptions"].append(summary) + else: + for keys, docs in track( + zip(keywords, documents), + description="Analyzing topics...", + total=len(keywords), + ): + best_match = self._get_best_match(keys, docs) + if best_match is None: + output["topic_names"].append(None) + output["topic_descriptions"].append(None) + continue + output["topic_names"].append(best_match["name"]) + summary = self._get_summary(best_match["pageid"]) + output["topic_descriptions"].append(summary) + return AnalysisResults(**output) From 3fe165e56b326474c9c8ce97d12f377c4d73b184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 13:10:41 +0200 Subject: [PATCH 12/25] Added docs to wikianalyzer --- turftopic/analyzers/wiki.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py index d6fffc59..3b96904d 100644 --- a/turftopic/analyzers/wiki.py +++ b/turftopic/analyzers/wiki.py @@ -4,7 +4,6 @@ from turftopic.analyzers.base import Analyzer, AnalysisResults from sklearn.metrics.pairwise import cosine_similarity from turftopic.serialization import get_package_versions -from rich.console import Console from rich.progress import track URL = "https://en.wikipedia.org/w/api.php" @@ -28,6 +27,26 @@ def remove_parens(s): class WikiAnalyzer(Analyzer): + """Analyze topic model with a page titles and summaries from Wikipedia's API. + The analyzer searches wikipedia with the highest rankning N keywords from a topic + and then ranks pages based on their semantic proximity to example keywords and documents + from the topic using the topic model's encoder. + + Parameters + ---------- + topic_model: ContextualModel + Topic model to use for embedding keywords and documents. + n_keywords: int, default 5 + Number of search words to use when searching Wikipedia. + similarity_threshold: float = 0.7 + Cosine similarity threshold between page titles and topic representations + to consider the page a match. + limit: int, default 10 + Maximum number of pages to return in each search. + prune_summaries, default True, + Indicates whether only the first sentence should be used from the page summaries. + """ + use_summaries = False def __init__( @@ -158,7 +177,7 @@ def analyze_topics( ---------- keywords: list[list[str]] Keywords for each topic. - documents: list[list[str]] + documents: list[list[str]], default None Top documents for each topic. use_summaries: None Ignored. From 9801c5cd25a08ef686917ee869f6ff84f8b6d371 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 13:12:09 +0200 Subject: [PATCH 13/25] Added wikianalyzer to init --- turftopic/analyzers/__init__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/turftopic/analyzers/__init__.py b/turftopic/analyzers/__init__.py index 6dd3d2ce..4565327e 100644 --- a/turftopic/analyzers/__init__.py +++ b/turftopic/analyzers/__init__.py @@ -1,6 +1,7 @@ from turftopic.analyzers.hf_llm import LLMAnalyzer from turftopic.analyzers.t5 import T5Analyzer from turftopic.error import NotInstalled +from turftopic.analyzers.wiki import WikiAnalyzer try: from turftopic.analyzers.openai import OpenAIAnalyzer @@ -8,4 +9,4 @@ OpenAITopicNamer = NotInstalled("OpenAIAnalyzer", "openai") -__all__ = ["T5Analyzer", "LLMAnalyzer", "OpenAIAnalyzer"] +__all__ = ["T5Analyzer", "LLMAnalyzer", "OpenAIAnalyzer", "WikiAnalyzer"] From d9b117ad03ca66f52f9aa588f72b6dcc69e009dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 13:13:05 +0200 Subject: [PATCH 14/25] Fixed SNMF initialization when the number of documents is smaller than the number of topics --- turftopic/models/_snmf.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/turftopic/models/_snmf.py b/turftopic/models/_snmf.py index a8d22989..5e134b06 100644 --- a/turftopic/models/_snmf.py +++ b/turftopic/models/_snmf.py @@ -36,6 +36,8 @@ def init_G( X, n_components: int, constant=0.2, random_state=None ) -> np.ndarray: """Returns W""" + if n_components > X.shape[1]: + return np.random.default_rng(random_state).normal(0, 1, size=(X.shape[1], n_components)) kmeans = KMeans(n_components, random_state=random_state).fit(X.T) # n_components, n_columns G = safe_binarize(kmeans.labels_, classes=np.arange(n_components)) From 1938e444da91567291ab2704a5002aa6ea0212af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 13:16:30 +0200 Subject: [PATCH 15/25] Fixed circular import --- turftopic/analyzers/wiki.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py index 3b96904d..26be5701 100644 --- a/turftopic/analyzers/wiki.py +++ b/turftopic/analyzers/wiki.py @@ -1,6 +1,5 @@ import numpy as np import re -from turftopic.base import ContextualModel from turftopic.analyzers.base import Analyzer, AnalysisResults from sklearn.metrics.pairwise import cosine_similarity from turftopic.serialization import get_package_versions @@ -51,7 +50,7 @@ class WikiAnalyzer(Analyzer): def __init__( self, - topic_model: ContextualModel, + topic_model, n_keywords: int = 5, similarity_threshold: float = 0.7, limit: int = 10, From c9f5697ca5571b56e8fd741636f4fa1dc88be680 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 15:31:55 +0200 Subject: [PATCH 16/25] Fixed bug with zipping --- turftopic/analyzers/base.py | 9 ++++----- turftopic/analyzers/wiki.py | 7 ++++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/turftopic/analyzers/base.py b/turftopic/analyzers/base.py index 5825b7ef..bc28d0c2 100644 --- a/turftopic/analyzers/base.py +++ b/turftopic/analyzers/base.py @@ -1,3 +1,4 @@ +from itertools import zip_longest from abc import ABC, abstractmethod from dataclasses import dataclass from typing import Optional @@ -147,7 +148,7 @@ def name_topics( """ names = [] if documents is not None: - key_doc = list(zip(keywords, documents)) + key_doc = list(zip_longest(keywords, documents)) for keys, docs in track(key_doc, description="Naming topics..."): names.append(self.name_topic(keys, documents=docs)) else: @@ -160,9 +161,7 @@ def template_documents(self, documents: list[str]) -> str: return """ In addition the topic is characterized by the following documents: {documents} - """.format( - documents=doc_list - ) + """.format(documents=doc_list) def analyze_topics( self, @@ -207,7 +206,7 @@ def analyze_topics( # Updating parameter so summaries are used down-stream documents = output["document_summaries"] # Organizing into a list so we can iterate and know the length at the same time. - key_doc_pairs = list(zip(keywords, documents)) + key_doc_pairs = list(zip_longest(keywords, documents)) for keys, docs in track( key_doc_pairs, description="Generating topic names" ): diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py index 26be5701..93c5f21e 100644 --- a/turftopic/analyzers/wiki.py +++ b/turftopic/analyzers/wiki.py @@ -1,5 +1,6 @@ import numpy as np import re +from itertools import zip_longest from turftopic.analyzers.base import Analyzer, AnalysisResults from sklearn.metrics.pairwise import cosine_similarity from turftopic.serialization import get_package_versions @@ -52,7 +53,7 @@ def __init__( self, topic_model, n_keywords: int = 5, - similarity_threshold: float = 0.7, + similarity_threshold: float = 0.5, limit: int = 10, prune_summaries=True, ): @@ -160,7 +161,7 @@ def name_topic( documents=None, ) -> str: """Names one topic based on top descriptive aspects.""" - best_match = self._get_best_match(keywords) + best_match = self._get_best_match(keywords, documents) if best_match is None: return None return best_match["name"] @@ -199,7 +200,7 @@ def analyze_topics( output["topic_descriptions"].append(summary) else: for keys, docs in track( - zip(keywords, documents), + zip_longest(keywords, documents), description="Analyzing topics...", total=len(keywords), ): From 99ef7873f00d9227b6a7eefedc6d4075ae8396f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 15:32:19 +0200 Subject: [PATCH 17/25] Added merging as partial_fit in SensTopic --- turftopic/merging.py | 13 +- turftopic/models/senstopic.py | 222 +++++++++++++++------------------- 2 files changed, 107 insertions(+), 128 deletions(-) diff --git a/turftopic/merging.py b/turftopic/merging.py index 088a494a..ec1a8c85 100644 --- a/turftopic/merging.py +++ b/turftopic/merging.py @@ -20,13 +20,20 @@ def safe_agg(a, agg, weights, axis=0): MergeHistory = list[list[int]] +def stack_components(component_matrices) -> tuple[np.ndarray, np.ndarray]: + stacked_components = np.concatenate(component_matrices, axis=0) + n_comps = [comp.shape[0] for comp in component_matrices] + labels = np.repeat(np.arange(len(component_matrices)), n_comps) + return stacked_components, labels + + def merge_from_history( component_matrices: list[np.ndarray], merge_history: MergeHistory, weights=None, agg=np.average, ) -> np.ndarray: - stacked_components = np.concatenate(component_matrices, axis=0) + stacked_components, old_labels = stack_components(component_matrices) flat_merge_hist = list(itertools.chain.from_iterable(merge_history)) unique_components = np.unique(flat_merge_hist) assert unique_components[0] == 0 @@ -59,7 +66,7 @@ def symmetric_merge( sim_fn=cosine_similarity, allow_within_model_match=False, ) -> tuple[np.ndarray, MergeHistory]: - stacked_components = np.concatenate(component_matrices, axis=0) + stacked_components, old_labels = stack_components(component_matrices) similarity = sim_fn(stacked_components, stacked_components) if not allow_within_model_match: i_processed = 0 @@ -125,8 +132,8 @@ def asymmetric_merge( ) _merge_inst.append(ind_most_similar_old) else: - to_add.append(i_new_comp) _merge_inst.append(n_current + len(to_add)) + to_add.append(i_new_comp) components = np.concatenate( [components, incoming_components[to_add]], axis=0 ) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index e9f2aaad..85a2b23d 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -224,12 +224,17 @@ def partial_fit( raw_documents, y=None, embeddings=None, + timestamps=None, n_new_components: int = "auto", match_threshold=0.7, merge_method: str | Callable = "symmetric_mean", weighted=True, ): """Updates topic model by merging it with another one trained on the new data. + Can also be used in a dynamic setting, in these cases, + it is assumed that all new documents belong to one new timeslice. + + IMPORTANT: When using dynamic online fitting, use an asymmetric merging method (asymmetric_mean or keep_first) Parameters ---------- @@ -260,12 +265,34 @@ def partial_fit( ndarray of shape (n_documents, n_topics) Document-topic matrix. """ - if getattr(self, "axial_temporal_components_", None) is not None: - warnings.warn( - "Merging based partial fit does NOT work with dynamic modelling just yet. Do not use dynamic features with partial_fit for now." - ) + if timestamps is not None: + if isinstance(merge_method, str) and merge_method.startswith( + "symmetric_mean" + ): + raise ValueError( + "partial_fit with symmetric merging only works in a non-dynamic setting. Use an asymmetric merging function when online fitting a model." + ) + if (getattr(self, "components_", None) is None) or ( + getattr(self, "time_bin_edges", None) is None + ): + return self.fit_transform_dynamic( + raw_documents, + embeddings=embeddings, + timestamps=timestamps, + bins=1, + ) if getattr(self, "components_", None) is None: - return self.fit(raw_documents, embeddings=embeddings) + if timestamps is None: + return self.fit(raw_documents, embeddings=embeddings) + if timestamps is not None: + last_edge = self.time_bin_edges[-1] + is_before = [(ts <= last_edge) for ts in timestamps] + n_before = np.sum(is_before) + if n_before: + raise ValueError( + "When using partial fitting on a dynamic model, all new documents have to be in a new time slice. " + f"Currently there are {n_before} documents from before {last_edge}. Remove these before fitting." + ) if embeddings is None: embeddings = self.encode_documents(raw_documents) if n_new_components == "auto": @@ -284,136 +311,83 @@ def partial_fit( max_iter=self.max_iter, sparsity=self.sparsity, random_state=self.random_state, - ).fit(embeddings) + ) + new_doc_topic = new_decomp.fit_transform(embeddings) self.decomposition, merge_history = self.decomposition.merge_with( new_decomp, merge_method=merge_method, match_threshold=match_threshold, weighted=weighted, ) - self.n_components_ = self.decomposition.n_components - new_vectorizer = clone(self.vectorizer).fit(raw_documents) - self.update_vocabulary(new_vectorizer) - vocab_topic = self.decomposition.transform(self.vocab_embeddings) - self.axial_components_ = vocab_topic.T - self.estimate_components(self.feature_importance) - return self - - def _partial_fit_add_components( - self, - raw_documents, - y=None, - embeddings=None, - timestamps=None, - n_new_components="auto", - ): - if timestamps is not None: - if (getattr(self, "components_", None) is None) or ( - getattr(self, "time_bin_edges", None) is None - ): - return self.fit_transform_dynamic( - raw_documents, - embeddings=embeddings, - timestamps=timestamps, - bins=1, - ) - if getattr(self, "components_", None) is None: - if timestamps is None: - return self.fit(raw_documents, embeddings=embeddings) + if isinstance(merge_method, str) and (merge_method == "keep_first"): + n_diff = self.decomposition.n_components - self.n_components_ + # Updating topic names: + old_topic_names = getattr(self, "topic_names_", None) + if old_topic_names is not None: + delattr(self, "topic_names_") + self.topic_names_ = [ + *old_topic_names, + *self.topic_names[-n_diff:], + ] + for new_dt in new_doc_topic[:, -n_diff:].T: + top = np.argsort(-new_dt)[:10] + for i_top in top: + self.top_documents.append(raw_documents[i_top]) + else: + self.top_documents = self.get_top_documents( + raw_documents=raw_documents, + document_topic_matrix=new_doc_topic, + ) + try: + delattr(self, "topic_names_") + except AttributeError: + pass if timestamps is not None: - last_edge = self.time_bin_edges[-1] - is_before = [(ts <= last_edge) for ts in timestamps] - n_before = np.sum(is_before) - if n_before: + n_diff = self.decomposition.n_components - self.n_components_ + if n_diff < 0: raise ValueError( - "When using partial fitting on a dynamic model, all new documents have to be in a new time slice. " - f"Currently there are {n_before} documents from before {last_edge}. Remove these before fitting." - ) - console = Console() - with console.status("Updating model with new data") as status: - if embeddings is None: - status.update("Encoding documents") - embeddings = self.encode_documents(raw_documents) - console.log("Documents encoded.") - if n_new_components == "auto": - status.update("Finding the number of components to add.") - n_new_components = optimize_n_components( - partial( - bic_add_components, - X_new=embeddings, - decomp=self.decomposition, - ), - min_n=0, - verbose=True, - tolerance=5, + "partial_fit with symmetric merging only works in a non-dynamic setting. Use an asymmetric merging function when online fitting a model." ) - self.decomposition.fit_new_components( - embeddings, n_new_components=n_new_components + if n_diff == 0: + return + self.time_bin_edges.append( + max(timestamps) + timedelta(microseconds=1) ) - self.n_components_ = self.decomposition.n_components - doc_topic = self.decomposition.transform(embeddings) - console.log(f"Updated model with {n_new_components} topics.") - status.update("Updating vocabulary") - new_vectorizer = clone(self.vectorizer).fit(raw_documents) - self.update_vocabulary(new_vectorizer) - status.update("Estimating term importances") - vocab_topic = self.decomposition.transform(self.vocab_embeddings) - self.axial_components_ = vocab_topic.T - if self.feature_importance == "axial": - self.components_ = self.axial_components_ - elif self.feature_importance == "angular": - self.components_ = self.angular_components_ - elif self.feature_importance == "combined": - self.components_ = ( - np.square(self.axial_components_) - * self.angular_components_ - ) - if n_new_components > 0: - # Updating topic names: - old_topic_names = getattr(self, "topic_names_", None) - if old_topic_names is not None: - delattr(self, "topic_names_") - self.topic_names_ = [ - *old_topic_names, - *self.topic_names[-n_new_components:], - ] - console.log("Updated term importances") - for new_dt in doc_topic[:, -n_new_components:].T: - top = np.argsort(-new_dt) - self.top_documents.append( - [raw_documents[i_top] for i_top in top] + t_components = [] + t_importance = [] + for t_component, t_imp in zip( + self.axial_temporal_components_, self.temporal_importance_ + ): + t_component = np.pad( + t_component, + [(0, n_diff), (0, 0)], + mode="constant", + constant_values=0, ) - if timestamps is not None: - status.update("Updating temporal components.") - self.time_bin_edges.append( - max(timestamps) + timedelta(microseconds=1) + t_imp = np.pad( + t_imp, + (0, n_diff), + mode="constant", + constant_values=0, ) - t_components = [] - t_importance = [] - for t_component, t_imp in zip( - self.axial_temporal_components_, self.temporal_importance_ - ): - t_component = np.pad( - t_component, - [(0, n_new_components), (0, 0)], - mode="constant", - constant_values=0, - ) - t_imp = np.pad( - t_imp, - (0, n_new_components), - mode="constant", - constant_values=0, - ) - t_components.append(t_component) - t_importance.append(t_imp) - new_imp, new_comp = self._fit_timebin(embeddings, doc_topic) - t_components.append(new_comp) - t_importance.append(new_imp) - self.axial_temporal_components_ = np.stack(t_components) - self.temporal_importance_ = np.stack(t_importance) - self.estimate_components(self.feature_importance) - console.log("Model update done.") + t_components.append(t_component) + t_importance.append(t_imp) + t_dt = np.zeros( + (new_doc_topic.shape[0], self.decomposition.n_components) + ) + for i_new, joint_index in enumerate(merge_history[1]): + t_dt[:, joint_index] = new_doc_topic[:, i_new] + new_imp, new_comp = self._fit_timebin(embeddings, t_dt) + t_components.append(new_comp) + t_importance.append(new_imp) + self.axial_temporal_components_ = np.stack(t_components) + self.temporal_importance_ = np.stack(t_importance) + self.n_components_ = self.decomposition.n_components + new_vectorizer = clone(self.vectorizer).fit(raw_documents) + self.update_vocabulary(new_vectorizer) + vocab_topic = self.decomposition.transform(self.vocab_embeddings) + self.axial_components_ = vocab_topic.T + self.estimate_components(self.feature_importance) return self def transform(self, raw_documents, embeddings=None): @@ -664,7 +638,6 @@ def plot_components( doc_topic = self.document_topic_matrix coords = TSNE(2, metric="cosine").fit_transform(doc_topic) labels = np.argmax(doc_topic, axis=1) - print(np.unique_counts(labels)) topics_present = np.sort(np.unique(labels)) names = [self.topic_names[i] for i in topics_present] if getattr(self, "topic_descriptions", None) is not None: @@ -705,7 +678,6 @@ def plot_components_datamapplot( doc_topic = self.document_topic_matrix coords = TSNE(2, metric="cosine").fit_transform(doc_topic) labels = np.argmax(doc_topic, axis=1) - print(np.unique_counts(labels)) topics_present = np.sort(np.unique(labels)) names = [self.topic_names[i] for i in topics_present] if getattr(self, "topic_descriptions", None) is not None: From 52e66b309e79d84cad7e034ff50ed00eb499b3bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Mon, 24 Aug 2026 16:44:47 +0200 Subject: [PATCH 18/25] Added language selection to WikiAnalyzer --- turftopic/analyzers/wiki.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py index 93c5f21e..16d96865 100644 --- a/turftopic/analyzers/wiki.py +++ b/turftopic/analyzers/wiki.py @@ -6,7 +6,7 @@ from turftopic.serialization import get_package_versions from rich.progress import track -URL = "https://en.wikipedia.org/w/api.php" +URL = "https://{language_code}.wikipedia.org/w/api.php" VERSIONS = get_package_versions() VERSION = VERSIONS["turftopic"] @@ -36,6 +36,8 @@ class WikiAnalyzer(Analyzer): ---------- topic_model: ContextualModel Topic model to use for embedding keywords and documents. + language_code: str, default "en" + Wikipedia language code for the language of the documents. n_keywords: int, default 5 Number of search words to use when searching Wikipedia. similarity_threshold: float = 0.7 @@ -52,6 +54,7 @@ class WikiAnalyzer(Analyzer): def __init__( self, topic_model, + language_code: str = "en", n_keywords: int = 5, similarity_threshold: float = 0.5, limit: int = 10, @@ -65,6 +68,7 @@ def __init__( self.similarity_threshold = similarity_threshold self.limit = limit self.prune_summaries = prune_summaries + self.language_code = language_code def summarize_document(self, document: str) -> str: raise NotImplementedError @@ -81,7 +85,11 @@ def _search_page(self, keywords: list[str]): "srsearch": query, "srlimit": self.limit, } - results = self.session.get(url=URL, params=params, headers=HEADERS) + results = self.session.get( + url=URL.format(language_code=self.language_code), + params=params, + headers=HEADERS, + ) try: data = results.json() return data["query"]["search"] @@ -98,7 +106,11 @@ def _get_summary(self, pageid): "exintro": 1, "pageids": pageid, } - results = self.session.get(url=URL, params=params, headers=HEADERS) + results = self.session.get( + url=URL.format(language_code=self.language_code), + params=params, + headers=HEADERS, + ) try: data = results.json() pages = data["query"]["pages"] From c3ef1300cc42035f5c19dbc1b8ac6fc22f77a449 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Tue, 25 Aug 2026 13:23:09 +0200 Subject: [PATCH 19/25] Added partial_fit_transform to SensTopic --- turftopic/models/senstopic.py | 67 ++++++++++++++++++++++++++++++++--- 1 file changed, 62 insertions(+), 5 deletions(-) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 85a2b23d..58d14b38 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -219,7 +219,7 @@ def fit_transform( console.log("Model fitting done.") return doc_topic - def partial_fit( + def partial_fit_transform( self, raw_documents, y=None, @@ -227,7 +227,7 @@ def partial_fit( timestamps=None, n_new_components: int = "auto", match_threshold=0.7, - merge_method: str | Callable = "symmetric_mean", + merge_method: str | Callable = "asymmetric_mean", weighted=True, ): """Updates topic model by merging it with another one trained on the new data. @@ -283,7 +283,7 @@ def partial_fit( ) if getattr(self, "components_", None) is None: if timestamps is None: - return self.fit(raw_documents, embeddings=embeddings) + return self.fit_transform(raw_documents, embeddings=embeddings) if timestamps is not None: last_edge = self.time_bin_edges[-1] is_before = [(ts <= last_edge) for ts in timestamps] @@ -348,8 +348,6 @@ def partial_fit( raise ValueError( "partial_fit with symmetric merging only works in a non-dynamic setting. Use an asymmetric merging function when online fitting a model." ) - if n_diff == 0: - return self.time_bin_edges.append( max(timestamps) + timedelta(microseconds=1) ) @@ -388,6 +386,65 @@ def partial_fit( vocab_topic = self.decomposition.transform(self.vocab_embeddings) self.axial_components_ = vocab_topic.T self.estimate_components(self.feature_importance) + return new_doc_topic + + def partial_fit( + self, + raw_documents, + y=None, + embeddings=None, + timestamps=None, + n_new_components: int = "auto", + match_threshold=0.7, + merge_method: str | Callable = "asymmetric_mean", + weighted=True, + ): + """Updates topic model by merging it with another one trained on the new data. + Can also be used in a dynamic setting, in these cases, + it is assumed that all new documents belong to one new timeslice. + + IMPORTANT: When using dynamic online fitting, use an asymmetric merging method (asymmetric_mean or keep_first) + + Parameters + ---------- + raw_documents: iterable of str + Documents to fit the model on. + y: None + Ignored, exists for sklearn compatibility. + embeddings: ndarray of shape (n_documents, n_dimensions), optional + Precomputed document encodings. + n_new_components: int, default "auto" + Determines how many topics will get extracted from the new data. + If "auto", the number of topics gets determined by the BIC. + match_threshold: float, default 0.7 + Cosine similarity threshold, above which topics are to be considered the same. + merge_method: {'symmetric_mean', 'asymmetric_mean', 'keep_first'} or Callable, default 'symmetric_mean' + Method for merging the two topic models. + - `'symmetric_mean'` Treats the two models as equal, and takes the mean of matching topics. + Matches are found by building a graph of topic connections based on the similarity threshold. + Each new topic will be one graph component. + - `'asymmetric_mean'` Merges new topics into the old topics and takes their mean. + - `'keep_first'` Keeps all components untouched in the current model, + and only adds new components from the new model that do not match. + weighted: bool, default True + Indicates whether the merge aggregation should be weighted by the number of documents the + two models have seen. + + Returns + ------- + Self + Updated topic model. + """ + self.partial_fit_transform( + raw_documents, + y=y, + embeddings=embeddings, + timestamps=timestamps, + n_new_components=n_new_components, + match_threshold=match_threshold, + merge_method=merge_method, + weighted=weighted, + ) return self def transform(self, raw_documents, embeddings=None): From 7844176021327c70e178788540cd9fdfd548af87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Tue, 25 Aug 2026 13:37:21 +0200 Subject: [PATCH 20/25] Added optional length penalty to WikiAnalyzer --- turftopic/analyzers/wiki.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/turftopic/analyzers/wiki.py b/turftopic/analyzers/wiki.py index 16d96865..73605a36 100644 --- a/turftopic/analyzers/wiki.py +++ b/turftopic/analyzers/wiki.py @@ -59,6 +59,7 @@ def __init__( similarity_threshold: float = 0.5, limit: int = 10, prune_summaries=True, + penalize_length=True, ): import requests @@ -69,6 +70,7 @@ def __init__( self.limit = limit self.prune_summaries = prune_summaries self.language_code = language_code + self.penalize_length = penalize_length def summarize_document(self, document: str) -> str: raise NotImplementedError @@ -147,6 +149,11 @@ def _get_best_match( topic_embedding = self._get_topic_embedding(keywords, documents) page_embeddings = self.topic_model.encode_documents(repr_str) sim = cosine_similarity([topic_embedding], page_embeddings)[0] + threshold = self.similarity_threshold + if self.penalize_length: + lengths = np.array([len(title.split()) for title in titles]) + sim = sim / lengths + threshold = threshold / np.max(lengths) i_best_page = np.argmax(sim) if sim[i_best_page] < self.similarity_threshold: return None From 3651c80d613f7df18bcc092ab85fb0bcf7a534e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Thu, 27 Aug 2026 09:59:13 +0200 Subject: [PATCH 21/25] Fixed minor bug --- turftopic/models/senstopic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/turftopic/models/senstopic.py b/turftopic/models/senstopic.py index 58d14b38..497ef6a1 100644 --- a/turftopic/models/senstopic.py +++ b/turftopic/models/senstopic.py @@ -386,7 +386,7 @@ def partial_fit_transform( vocab_topic = self.decomposition.transform(self.vocab_embeddings) self.axial_components_ = vocab_topic.T self.estimate_components(self.feature_importance) - return new_doc_topic + return self.decomposition.transform(embeddings) def partial_fit( self, From 8f7df17860fe3c86ec3e3f562c73ca4b9c9b33ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Thu, 27 Aug 2026 10:21:15 +0200 Subject: [PATCH 22/25] Updated dependencies --- pyproject.toml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 14c5626f..0e08fefa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -24,10 +24,10 @@ dependencies = [ "torch>=2.1.0,<3.0.0", "scipy>=1.10.0,<2.0.0", "rich>=13.6.0,<14.0.0", - "huggingface-hub>=0.23.2,<1.0.0", + "huggingface-hub>=0.23.2", "joblib>=1.2.0,<2.0.0", "igraph~=0.11.6", - "pillow~=10.4.0", + "pillow>=10.4.0", ] [project.optional-dependencies] @@ -39,6 +39,7 @@ spacy = ["spacy>=3.6.0,<4.0.0"] snowball = ["snowballstemmer>=2.0.0,<3.0.0"] topic-wizard = ["topic-wizard>1.0.0,<2.0.0"] umap-learn = ["umap-learn>=0.5.5,<1.0.0"] +conjugate = ["conjugate-models>=0.14.0"] docs = [ "griffe==0.40.0", "mkdocs==1.6.1", @@ -50,7 +51,7 @@ docs = [ ] dev = [ "pyro-ppl>=1.8.0,<2.0.0", - "openai>=1.40.0,<2.0.0", + "openai>=1.40.0", "datamapplot>=0.4.2, <1.0.0", "jieba>=0.40.0,<1.0.0", "snowballstemmer>=2.0.0,<3.0.0", From a645182bd493f352b65b7fb7136e413770e0042a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Thu, 27 Aug 2026 10:21:47 +0200 Subject: [PATCH 23/25] version bump --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 0e08fefa..3e236ef9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ profile = "black" [project] name = "turftopic" -version = "0.27.1" +version = "0.28.0" description = "Topic modeling with contextual representations from sentence transformers." authors = [ { name = "Márton Kardos ", email = "martonkardos@cas.au.dk" } From 8cb7ace907be8e8db8f5a17135e20b2822c69442 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Thu, 27 Aug 2026 10:22:02 +0200 Subject: [PATCH 24/25] Added distribution learner --- turftopic/distribution_learning.py | 111 +++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 turftopic/distribution_learning.py diff --git a/turftopic/distribution_learning.py b/turftopic/distribution_learning.py new file mode 100644 index 00000000..5c1a58e9 --- /dev/null +++ b/turftopic/distribution_learning.py @@ -0,0 +1,111 @@ +import itertools +import numpy as np +from conjugate.distributions import NormalInverseGamma +from conjugate.models import normal + + +class GaussianDistributionLearner: + """Learns posterior distribution of the mean and variance of a bunch of + (Non-multivariate) Gaussian distributions using Bayesian updating. + + This is very useful for when you cannot keep a dataset in memory and + want to learn the importance of topics in the dataset from batches with uncertainty. + """ + + def __init__(self, mu=0, alpha=1, beta=1, nu=1): + self.mu = mu + self.alpha = alpha + self.beta = beta + self.nu = nu + self.posteriors = [] + + def init_prior(self): + return NormalInverseGamma( + mu=self.mu, alpha=self.alpha, beta=self.beta, nu=self.nu + ) + + def update(self, batch_doc_topic): + """Updates posterior distributions based on the incoming batch.""" + for i_topic, dt in enumerate(batch_doc_topic.T): + if i_topic >= len(self.posteriors): + self.posteriors.append(self.init_prior()) + prior = self.posteriors[i_topic] + posterior = normal( + x_total=np.sum(dt), + x2_total=np.sum(np.square(dt)), + n=dt.shape[0], + prior=prior, + ) + self.posteriors[i_topic] = posterior + + def sample_means(self, n_datapoints=100, random_state=None): + """Samples means from each of the learned posteriors. + + Parameters + ---------- + n_datapoints: int, default 100 + Number of datapoints to sample from the posterior. + random_state: int or None, default None + Random seed to use for sampling. + + Returns + ------- + ndarray of shape (n_topics, n_datapoints) + Posterior samples for each topic. + """ + out = [] + for posterior in self.posteriors: + out.append(posterior.sample_mean(size=n_datapoints)) + return np.stack(out) + + def plot_topic_distribution( + self, topic_names: list[str] | None = None, sort_topics=True + ): + try: + import plotly.graph_objects as go + import plotly.express as px + except (ImportError, ModuleNotFoundError) as e: + raise ModuleNotFoundError( + "Please install plotly if you intend to use plots in Turftopic." + ) from e + fig = go.Figure() + if topic_names is None: + topic_names = [f"Topic {i}" for i in range(len(self.posteriors))] + if len(topic_names) != len(self.posteriors): + raise ValueError( + "The number of posteriors learned by the distribution learner is not the same as the number of topic names given." + ) + mus = self.sample_means() + y = mus.mean(axis=1) + se = np.std(mus, axis=1) + topic_colors = list( + itertools.islice( + itertools.cycle(px.colors.qualitative.Dark24), + len(self.posteriors), + ) + ) + if sort_topics: + order = np.argsort(y) + else: + order = np.arange(len(self.posteriors)) + for i_topic in order: + fig.add_bar( + y0=topic_names[i_topic], + x=[y[i_topic]], + error_x=dict( + type="data", + array=[se[i_topic]], + visible=True, + ), + showlegend=False, + name=topic_names[i_topic], + marker=dict( + line=dict(color=topic_colors[i_topic], width=2), + color="white", + ), + ) + fig.update_layout( + template="plotly_white", + font=dict(family="Roboto Mono", color="black", size=10), + ) + return fig From 2bcf4868d586ac7e194805e1e06b48f0a566530f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Kardos?= Date: Thu, 27 Aug 2026 16:56:19 +0200 Subject: [PATCH 25/25] Added docs for new functionality --- docs/SensTopic.md | 25 + docs/analyzers.md | 21 +- docs/distribution_learning.md | 53 + docs/images/asymmetric_merge.png | Bin 0 -> 38561 bytes docs/images/distribution_learner.html | 3888 +++++++++++++++++++++++++ docs/images/merging.svg | 2380 +++++++++++++++ docs/images/symmetric_merge.png | Bin 0 -> 49757 bytes docs/online.md | 3 +- docs/persistence.md | 8 +- docs/topic_merging.md | 101 + docs/tutorials/fineweb_1m.md | 149 + docs/tutorials/images/fineweb.png | Bin 0 -> 523598 bytes docs/tutorials/images/s3.png | Bin docs/tutorials/overview.md | 28 +- docs/wiki.md | 48 + mkdocs.yml | 22 +- turftopic/merging.py | 57 + 17 files changed, 6747 insertions(+), 36 deletions(-) create mode 100644 docs/distribution_learning.md create mode 100644 docs/images/asymmetric_merge.png create mode 100644 docs/images/distribution_learner.html create mode 100644 docs/images/merging.svg create mode 100644 docs/images/symmetric_merge.png create mode 100644 docs/topic_merging.md create mode 100644 docs/tutorials/fineweb_1m.md create mode 100644 docs/tutorials/images/fineweb.png mode change 100755 => 100644 docs/tutorials/images/s3.png create mode 100644 docs/wiki.md diff --git a/docs/SensTopic.md b/docs/SensTopic.md index e900207b..c2ef75c3 100644 --- a/docs/SensTopic.md +++ b/docs/SensTopic.md @@ -162,6 +162,31 @@ model.print_topics() | 4 | tennis, competing, federer, wimbledon, iaaf, olympic, tournament, athlete, rugby, olympics | | 5 | gdp, stock, economy, earnings, investments, investment, invest, exports, finance, economies | +## Batch fitting + +SensTopic models can be fit in mini-batches. This is done by fitting separate models on all batches, and continuously merging models of the new batches into the current model. +!!! info + To find more information on model merging and its variants, please look at [Model Merging](topic_merging.md). + +```python +from itertools import batched + +BATCH_SIZE = 2000 +corpus: Iterable[str] = [...] +batches = batched(corpus, BATCH_SIZE) + +model = SensTopic( + sparsity=5.0, + random_state=42, +) +for batch in batches: + batch = list(batch) + batch_doc_topic = model.partial_fit_transform( + batch, merge_method="asymmetric_mean" + ) +model.print_topics() +``` + ## Citation Please cite Turftopic when using the SensTopic model: diff --git a/docs/analyzers.md b/docs/analyzers.md index 8aaae938..550bced2 100644 --- a/docs/analyzers.md +++ b/docs/analyzers.md @@ -1,6 +1,6 @@ -# Topic Analysis with LLMs +# Topic Analysis -Topic analyzers are large language models, that are capable of interpreting topics' contents and can give human-readable descriptions of topics. +Topic analyzers are language-model based solutions, that are capable of interpreting topics' contents and can give human-readable descriptions of topics. This can be incredibly useful when it would require excessive manual labour to label and understand topics.
@@ -10,12 +10,11 @@ This can be incredibly useful when it would require excessive manual labour to l Analyzers can do the following tasks: - - **Summarize documents** to make it easier for your topic model to consume. + - **Summarize documents** (*optional*) to make it easier for your topic model to consume. - **Name topics** topics in a sensible and human-readable way based on top documents and keywords - **Describe topics** in a couple of sentences -While previously, smaller language models were not able to meaningfully accomplish this task, -advances in in the field now allow you to generate highly accurate topic descriptions on your own laptop using the power of small LLMs. +This can either be achieved using generative, text2text or extractive language models. !!! warning @@ -45,6 +44,18 @@ There are multiple types of analyzers in Turftopic that you can utilize for thes analyzer = LLMAnalyzer(use_summaries=True) ``` + === "WikiAnalyzer (experimental)" + + You can use the Wikipedia API to search for candidate topic names and descriptions and retrieve the best one using an encoder-style language model. By default, this uses the `encoder` of a topic model: + **NOTE:** The WikiAnalyzer can only name and describe topics and cannot summarize documents. + + ```python + from turftopic.analyzers import WikiAnalyzer + + model = SensTopic() + analyzer = WikiAnalyzer(model) + ``` + === "OpenAI API" You will have to install OpenAI, as it is not installed by default: diff --git a/docs/distribution_learning.md b/docs/distribution_learning.md new file mode 100644 index 00000000..31ad3c9d --- /dev/null +++ b/docs/distribution_learning.md @@ -0,0 +1,53 @@ +# Topic Distribution Learning + +While in most scenarios you can store an entire document-topic matrix in memory, this is not always the case, especially with extremely large datasets. +Distribution learners in Turftopic are exactly developed for this reason. + +With a distribution learner, you can pass document-topic matrices per batch, and update its parameters, while slowly learning the true distribution of topics in the dataset with uncertainty. + +To use distribution learners you should install `conjugate-models`: + +```bash +pip install turftopic[conjugate] +``` + +## Example + +```python +import numpy as np +import pandas as pd + +from sklearn.datasets import fetch_20newsgroups +from turftopic import SensTopic +from turftopic.distribution_learning import GaussianDistributionLearner + +ds = fetch_20newsgroups(remove=("headers", "footers", "quotes"), subset="all") +corpus = ds.data + +batch_size = 2000 +model = SensTopic(random_state=42) +# Initializing the distribution learner +distribution_learner = GaussianDistributionLearner() +# batch fitting over the dataset +for batch_start in range(0, len(corpus), batch_size): + batch_end = batch_start + batch_size + # Calculating doc_topic_matrix for current batch + batch_doc_topic_matrix = model.partial_fit_transform( + corpus[batch_start:batch_end], + merge_method="asymmetric_mean", + ) + # Updating the posteriors + distribution_learner.update(batch_doc_topic_matrix) + +# `pip install plotly` if you want to plot +distribution_learner.plot_topic_distribution(model.topic_names) +``` + +
+ +
Topic distribution learned by the GaussianDistributionLearner.
+
+ +## API Reference + +::: turftopic.distribution_learning.GaussianDistributionLearner diff --git a/docs/images/asymmetric_merge.png b/docs/images/asymmetric_merge.png new file mode 100644 index 0000000000000000000000000000000000000000..bae373bc5254fcba74e7297cea998ae3d81a4f62 GIT binary patch literal 38561 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 z zmf|kEMOCVE5uGrg3<23lL?p;?>yz(ul*7X?RmMY-GQ^3j%LD~{6-b1nihZe-n5X0udr1Y0u(R>^c zH8?nMPw&c4M>L_Cu^1~hI6wH9-GHC9VB~pW@!g?=oC_BfCBMCs1pb=?W8@uZPSTEM zWjj(&@nGj>d2%iPRrlt2{K?nQv|a}Jm%t^5VnWT4;$CdM>_&O< z@nVuXpG2u%|K1|3)|lY9Z!tp;`1Wcw4c$NlDu$>=%>hwysMCbFm4yN>lZ`nQ$j(5T zi-Q$?hJnVSZ^NQdcO({NyEHOn9ae=)1N^bDwwmv-xzuV! zI^@wb$|>hOI`ejLd9pTAfsS2lPIBgh`;HT$l#$uH-ag*_k0Pa1zjQndZ8=QI^~}0y z;%auyX7t7KKVdoqisf*mv<6`~5Zb+Dgats^j*X^_?|YPDy)ZRR4PO1yCtdU6=1O)z zYvlI?X@0|r^a9_3R!Q~m9W6!8B+LE8Y%1p0v1>J4XwE7e2v9E$u&)+rxq;sGsAXqo zuLj#jtjY3`dL2d-x+xAkHZwC51N*uuyuG_S65Qbd&ZQnEm4qhd@NhElbf^FBA6tnH z-Ct3hhXTjEQGP>vknw}h9~`T|7^0Jj*?Db&bjW``f9O=s*SDK0vCP&5XubG&D}WtS z8Lyu4@3R(W{{+at{jd0W?YB>-h^EKu^Z?IKpn_I`g>dZ^7)$KGc=2BPHI|iUQs6b?A1U1AEjA;E&u=k literal 0 HcmV?d00001 diff --git a/docs/images/distribution_learner.html b/docs/images/distribution_learner.html new file mode 100644 index 00000000..9c0252cc --- /dev/null +++ b/docs/images/distribution_learner.html @@ -0,0 +1,3888 @@ + + + +
+
+ + \ No newline at end of file diff --git a/docs/images/merging.svg b/docs/images/merging.svg new file mode 100644 index 00000000..e5332e5b --- /dev/null +++ b/docs/images/merging.svg @@ -0,0 +1,2380 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Model 1 + + + + + + + + + + + + + + + + + Model 2 + + + + + N + M + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Similarity Matrix + + N+M + + N+M + + + + + + + + + + + + + + + + + + + + + Match Graph + + + + + + + + + + + + + + Joint Model + + + + + + + + + + + + + + Model 1 + + + + + + + + + + + + + + + + + Model 2 + + + + + N + M + + + + + + + + + + + + + + + + + + + Similarity Matrix + + M + + + N + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Aggregate or Add + Joint Model + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/symmetric_merge.png b/docs/images/symmetric_merge.png new file mode 100644 index 0000000000000000000000000000000000000000..e81e49dac8d45da69748d105387a9eba24b9b3b2 GIT binary patch literal 49757 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 literal 0 HcmV?d00001 diff --git a/docs/online.md b/docs/online.md index f9d0b66f..d020e875 100644 --- a/docs/online.md +++ b/docs/online.md @@ -1,6 +1,7 @@ # Online Topic Modeling -Some models in Turftopic can be fitted in an online manner (currently this only includes [KeyNMF](KeyNMF.md)). +Some models in Turftopic can be fitted in an online manner. +Currently this can be done with [KeyNMF](KeyNMF.md) and [SensTopic](SensTopic.md). These models can be fitted in minibatches instead of the entire corpus at the same time. #### Use Cases: diff --git a/docs/persistence.md b/docs/persistence.md index 12dc0315..2bcdf0f4 100644 --- a/docs/persistence.md +++ b/docs/persistence.md @@ -1,9 +1,15 @@ # Saving and loading +!!! danger + Turftopic currently uses `joblib` for model serialization. + `joblib` is problematic, as it uses Pickle, which allows for arbitrary code execution. + You should only ever load a Turftopic model from a **Trusted Source**!! + We are working on a better solution using `safetensors`, but it will probably take a while before all models can be serialized without `joblib`. + ## Model persistence All models in Turftopic can be serialized and saved to disk, or published to the HuggingFace Hub. -!!! warning +!!! tip We now recommend that you do NOT pre-load `SentenceTransformer` encoder models, but rather pass them by name to the topic models. This allows the model not to store the encoder model on disk, and load it when loading the model. This can lead to extreme reductions in disk space usage. diff --git a/docs/topic_merging.md b/docs/topic_merging.md new file mode 100644 index 00000000..fe3f7205 --- /dev/null +++ b/docs/topic_merging.md @@ -0,0 +1,101 @@ +# Model/Topic Merging + +In Turftopic, some models allow you to merge information from multiple topic models into one. +Currently, this can be done with SensTopic's `partial_fit` method, which updates a topic model by merging it with an identically initialized model +on a new batch of data. +More models will be implemented in the future. +This guide teaches you about the different methods for merging topics and explanations on why they are useful, and how you should use them. + +Topic merging consists of the following steps: + +1. Determine topic matches based on some **topic representations** (typically a model's `components_` attribute) and a **similarity threshold** +2. Aggregating the topic representations based on some **aggregation regime** + +See the default named options from Turftopic in the table bellow. +We deem these to be reasonable defaults that cover most of the functionality, users might be interested in. + +| Merge method | Match type | Aggregation | Recommended Use Cases | +| ------------ | ---------- | ----------- | --------------------- | +| `symmetric_mean` | Symmetric | `np.average` | Online model fitting on static datasets. | +| `asymmetric_mean` | Asymmetric | `np.average` | Dynamic modelling, static analyses, where intermediate states are used for analysis. | +| `keep_first` | Asymmetric | `keep_first` | Dynamic modelling, where intermediate states should be immutable. | + +## Determining matches + +When merging topic models, it's important to know the difference between symmetric and asymmetric merges. + +### Symmetric merge + + +A symmetric merge treats both models as equal, and finds matching topics in all models at the same time to then merge them into a single topic in the new model. + +
+ +
+ +This is done in the following steps: + + 1. We calculate a **topic similarity matrix** between topics from all models. By default this is based on topic representations' cosine similarity. + 2. We compute a **match matrix** based on the similarity matrix and a **similarity threshold**. The default value is `0.7`. + 3. The match matrix is used as a **match graph** between all topics in the models. + 4. To find, which topics should be aggregated to derive the new topics, we find graph components in the match graph. + Each component of the match graph is then assumed to be the same topic, and each component will be aggregated into a new topic. + +!!! note + When using symmetric merge, the number of topics from one step to another could go **down** not just up. + This is because sometimes the new model introduces bridges in the match graph between old topics, that then get merged into one larger topic. + This is important to take into account when you make assumptions about the way your topics behave. + +A symmetric merge is a good fit, if you wish to find all topics in a corpus, and you do not base any of your analyses on intermediate states of the model. +Using symmetric merges on a static dataset is a good idea, using it on temporal data (dynamic modelling) is a bad idea. + +### Asymmetric merge + + +During an asymmetric merge, earlier models take precedence over new ones. +What this means is that newer models' content get merged into older models, while the older models' structure is left unscathed. + +
+ +
+ +The old model's topics might get updated based on the new model, but they will not be removed or merged into other topics. +This also means that the number of topics never decreases, only increases over time. + +1. For each pair of old and new model: + 1. Calculate the similarity and match matrices *between* the old and new model. + 2. Aggregate the matches from the new model into the old models topics. + +You should use an asymmetric merge either if you want to keep your analyses in-tact based on intermediate states, +or if you want to make the assumption that the number of topics is non-decreasing over time. +Asymmetric merges are perfect for instance for dynamic topic modelling. + +## Aggregation Regimes + +You can technically use any aggregation method to aggregate topics between matches, but there are two defaults used in Turftopic, +that probably cover most use cases. + +### `np.average` + +`np.average` takes the weighted arithmetic mean of topic representations. +By default, no weights are provided, but most models, where there is a deliberate implementation included, averages are weighted by the number of documents the models have seen. + +This aggregation method is very useful when you want all of your data to influence your topics, +and you don't care whether the keywords throughout your analysis change for the topics. + +### `keep_first` + +`keep_first` aggregation ignores all topics except the first one in a match. +This means that topics that are already in the model will be immutable. +New topics will be added, but the ones in the model will not change. + +This is great when you need to make the assumption that old topics never change. +For instance, when you have already based some of your analyses on old topics in your model, new information should not change those analyses. + +## API Reference + +::: turftopic.merging.symmetric_merge + +::: turftopic.merging.asymmetric_merge + +::: turftopic.merging.keep_first diff --git a/docs/tutorials/fineweb_1m.md b/docs/tutorials/fineweb_1m.md new file mode 100644 index 00000000..9d01b63c --- /dev/null +++ b/docs/tutorials/fineweb_1m.md @@ -0,0 +1,149 @@ +# Training Data Surveying and Filtering + +Topic models can be used for learning the composition of large training sets, that will be used to train large language models. +This is both useful because one gains rough understanding of the topic distributions in a dataset, and one can filter the dataset using the fitted topic model. + +In this example I outline how you can use SensTopic with model merging and a DistributionLearner to learn topics from the first 1 million documents of FineWeb-Edu, which is a popular high-quality dataset for language model training. + +## Setup + +You will have to install turftopic with `conjugate-models` and other dependencies for data loading, plotting etc. + +```bash +pip install turftopic[conjugate] +pip install jax # this is not strictly necessary, but provides better performance +pip install plotly pandas datasets +``` + +## Main script + +The main script trains a SensTopic model on the fineweb-edu dataset with a batch size of 5000 documents. +We use a static word embedding model as the encoder, thereby making the script much faster than if we were to use a transformer model. + +The script also includes topic importance learning, speed tracking (documents per second), +progress tracking and a plot that displays the topics with their keywords and relative importance. + +```python +import time +from itertools import islice + +from datasets import load_dataset +from tqdm import tqdm +import numpy as np +import pandas as pd +import plotly.express as px + +from turftopic import SensTopic +from turftopic.distribution_learning import GaussianDistributionLearner +from sklearn.manifold import TSNE + +BATCH_SIZE = 5000 +ds = load_dataset("HuggingFaceFW/fineweb-edu", split="train", streaming=True) + +batches = ds.batch(batch_size=BATCH_SIZE) +# I'll cap the number of batches, so that we only process roughly 1M documents +# You should obviously remove this if you want to process the entire dataset +N_BATCHES = int(1_000_000 // BATCH_SIZE) +batches = islice(batches, N_BATCHES) + +start_time = time.time() +# Initializing the model +model = SensTopic( + "auto", + sparsity=5.0, + # We will use a word embedding model for faster processing + encoder="sentence-transformers/average_word_embeddings_glove.6B.300d", + random_state=42, +) + +# This class will learn how important each topic is using Bayesian updating. +importance_learner = GaussianDistributionLearner() + +# We will display the DPS (documents-per-second) for each batch, so we can track speed +progress = tqdm(total=N_BATCHES, desc="Processing batches (DPS=?)") +for i_batch, batch in enumerate(batches): + batch_text = list(batch["text"]) + batch_start_t = time.time() + # We will use an asymmetric merge (topics from the first model are kept intact) + batch_doc_topic = model.partial_fit_transform( + batch_text, merge_method="asymmetric_mean" + ) + # Update our topic importance scores with batch doc-topic matrix + importance_learner.update(batch_doc_topic) + # Calculate batch documents per second + batch_end_t = time.time() + elapsed_s = batch_end_t - batch_start_t + dps = len(batch_text) / elapsed_s + progress.set_description(f"Processing batches (DPS={dps:.2f})") + progress.update(1) +progress.close() +end_time = time.time() +model.print_topics() + +# Save our model to disk +model.to_disk("fineweb_edu_1m") + +# Roughly 30 min on my laptop +print((end_time - start_time) / 60) + +# This is just to produce a nice plot +tsne = TSNE(2, metric="cosine") +topic_pos = tsne.fit_transform(model.decomposition.components_) +tsne = TSNE(1, metric="cosine") +color_pos = tsne.fit_transform(model.decomposition.components_) +topic_size = np.array([post.mu for post in importance_learner.posteriors]) +topic_size = 25 * (topic_size / np.max(topic_size)) +topic_df = pd.DataFrame( + dict( + x=topic_pos[:, 0], + y=topic_pos[:, 1], + name=model.topic_names, + keywords=model.get_top_words(), + size=topic_size, + color_pos=color_pos[:, 0], + ) +) +fig = px.scatter( + topic_df, + x="x", + y="y", + size="size", + size_max=80, + color="color_pos", + color_continuous_scale=px.colors.cyclical.Phase, + template="plotly_white", + width=800, + height=800, +) +fig = fig.update_coloraxes(showscale=False) +for index, row in topic_df.iterrows(): + keys = row["keywords"] + text = "
".join(keys[:4]) + font_size = max(int(row["size"]), 1) + fig.add_annotation( + x=row["x"], + y=row["y"], + text=text, + font=dict(size=font_size), + showarrow=False, + yshift=0, + ) +fig.show() +``` + +
+ +
Topic overview in the first 1M documents of FineWeb-Edu
+
+ +## Filtering + +You can use the above-developed script for filtering out documents either by thresholding or excluding documents that have a certain dominant topic. + +```python +new_documents: list[str] = [...] +doc_topic = model.transform(new_documents) + +# Filtering out documents where topic 2 is over 0.01 in importance +filtered_docs = [doc for topic_value, doc in zip(doc_topic[:, 2], new_documents) if topic_value < 0.01] +``` diff --git a/docs/tutorials/images/fineweb.png b/docs/tutorials/images/fineweb.png new file mode 100644 index 0000000000000000000000000000000000000000..551b8f1170b47c60c775ad55fb46697fae18ac16 GIT binary patch literal 523598 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℞_A_Y6v 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

t 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

5uR+Q;D5FC@?^#WQQ=E|od)4Td!~vK%@}+w zm82~Y;`q2#gCeRsj*oBQN|_B?W=Dj) z1b;2chMRCCn`@o|P`&t9F2=ud@#Od6iBa?AhX&KpjSs1DIm`a-@^S7zNcfJ`W2TLA z4GVjCeo{nI$7*9mpWv{*Mg0c5?=uh_MTv6yqWkWjjnf!80o9U2HNEEt)$eY z+!Ki46C&K)^aXClrhni)QtBe^(aSIS%D_^p5-s$pBA^foE~23zBfB-!NC8Z>frubu z$#MMjl64`BOh9g?K?H;d%~}IHbG@Xj1RX5op1^HX3xLu{NH|QtlSdI0N_Hm(4yNm4 zq4#kX0*S(N9Fo@Xpi&MaTBxtVpFTpHvw|AHBd=h!G9KZzj9*#LmPy!ERB3iY9SQ?w z@in?y#aA(~M(IP^I0^D0fO7BV!OOPGP1CMrS3t#B?4Qk@ZVXD=r6Z-W_y<0>*uC4x9i3D@2f-KP=RAuoexoa2*^4yvPoG5ZANaYuv zCb|7>QtwQ?fIrvptyxLzp$8GvxfgQVutMh8``3q~`rKiQQeL8QmBg}jD!!n|$8VLe zXCafCq6(_BXB`E?%-qAZl0KkoM)v1r3c7ram-7D_<09 zC!-Ai>(V{RqRx=%N)~ivisT%ToO7BV3_QnU(J!zD1qpCm8(n*pr>uYEJGpj_rT>QK zJU3Hk?cg0-#kNoIKYL%jXzvnjeSd}}$f#1yV7A6VoHOjqyvi=4i>xc7OEoO@+{yi( zCHRFa(+(7^1H7Hv$pNF6EPiT~rL6JZ!>#HCflm=-Bw==)BBg<{=sD3`uj56pSJCUE z#2<^2JDex;NuJF991IF>qEAL&L=P^vxHDFZuYVxCEp_{I^m6%qXRH=-^J5qh)%xk4lTqcH>1CWZu_ zbuqjfqG-!QxTW%aX`D)tf4_^;;W5JFuL1qWD8bJ(0g&H$7AJj?t5)#QsKT4YJcc*G zKrxA-)=@3wFpPdqm^Lfa9On#)nvjZWf;mC`%rJ|T_Q+QWH8uZsUu zi;=4W*vTA;Z@-Pv);sow7a0P8_@*Z({ye{!%$*i=o;l0i3pVi&2VS1kwg-Az%Hr$I8r|=du&&}% z)Fcg@(y)YJnSBg68j`F*@xpT45+yX^6<+8Ecbv{g%Pp1%phEd~O9E`f@_%>}yp-HYuh_tP-~HUGdT7u513xV7V@K&$ zKCef>Im4UD=h*44;8Xs^oHuiL+!l6azek#{@GIWS$|O2R`DyB9+T>gLbma3?)6K!$ zo4lF+3I52_tQmYS&9>_m%K1cPuYg`L{Vz-3N-w^ZUaFpokvm?XaH>e*REbhY3ANsX z=#enGre^>v1tmPq9=wY*Jk1(v^@YGrYrv#*Do62D4m&+F08 zR*AQn2(p0HHM(H#8L ziRh6Lg9@TYF6V{~skpWWCv9PM;_-?C2ifW{uKZ}!}ylqIX*3lLR zQI`bptcf6Kg9YG9Hl-s2SUkb|!jq@BLz6Lg@4)gC$oub;` z$UUB3UheDWv1@2Lq=*OqeM^uc9?Y%*65oCst1mtA9gUFl6}YCV^M!q<5jBOtr`8et z)U5~}jr1$;O@4=?V09<#pnB$!6@i7TB~I+VehTrXdK`|v zXVSb@CQ>1C`$IZitro}jTJ(2MzX&TU0=j?5&~jx%>I(|ouwG^1^0_4${8P&zKIt2| z$ks0uPM*Zi-lM%`u&wk|QxjW_8gMY}vZ!e}4zeVniXvivJN^4Fq=HhL;&^7bw1Zbx zt_%0-wNkK5{_gNz{`jUlXZuvVTJC|KbPN4*J!|Sb&<{?@Wju+_ z3g!`x+H1H~DsZ~gh9#|_LiSKE?Bcv*-~d_k3`w_~cda}B9B)}=X;u)csg?X3aZ(7x z3EKxaX4QZTA*BxN1PC=$%YIa&zV25vAsm8wM6bfnqr%QYfjD)r9>2zxQr54(5jTO*jjVx&E@25 zil=jwPUSFrX140OZ(|tW`f{eH)G3R$?FDjO!VJnLSY48ks3)jyLi#*BgcMr2%GtJVL6`@Uf~_UC)~;(h&%b3 z6XIcMH66~2{EZvrF(JS?=VktgAaw*-DBi^rLJ$R5C_TgdmtE63@frSh@b`y?AITt_ z#cgc9XuYBB)=H~}m)$Ntz@@3QygV*#Ly4=zo~)*!ZWXuYEt1c*V75)Jpo~*;aEcC6 zKt`_6!E&)ialj65SFmsj7J@7ydSwKkjHpRS5fv#?zL%}O0_h)|BKXW=yf?>DoBSl6 zJBe{JJL4@-h$w zibs1W>>An4tE$y}v7!2sWkwMcIn0AKH?a8PS44Od&kZGri`AEZ*4#0CZ>*@ggFhYo zeR2F&{>$L+pKrX2&kygUnWq3~;(nL`#B^IO!0d#_u+Az zqCx19%>?e)fT(LzUW981t0#?XyC_v5q>vw6ursqGz$z6HBF{XCQeA# z+uhT_4^JJL?bDbUL@&OjF~pYcvR$aqP1pAdI2)^R7WgjBAawpb(#{Tqq1UVA$Gl)I2C&8_z6Rtt ziQIF1!%9#Tm$D_W5WgU^UJI}{-^FW*|A!yj0)A0M5>%@7+i1%ChlhOW*0Ra+7h(pd=ie#-miee25xg%*j(AX`LV|EMu{>lY?dt1@?1LTFY`JPF%T=azK;kj({f5MupRhkbENkHD3H{ zyn{=sG0&GMwB#@cES!>yV>mb^2e;&wg?bqzO+?g01XV!PMC5>o5?2u95w6E_F}jMF zUB&Xx^D`^B0!TiYz?K+lLwV}DeP@x5x5sxLQcy;z)DiXTqvvI3$LI3s-EWXOW3lid z58=f!(fgxh_GZZL&5XL8m9!|FEZ|w}A^bp`zVBXMoxXzm#}GIXE)_M)tl~E>5;cbi zi(B~WWy>nXM_D)cyHD7{pGZT?FFJ-ad)1>o%Y4M1s7CZknCCJipFNJ%nMd+V6RBr( z33BK{S3|D$fbC)pjL)s^S`K#FfV6?2N{G6Iph*b2gs6(xJ$cgKIZpW3Zoqp}1)fbY z?4Ba_KymQdFTZbuq32$cu9_Rv&0CnAd91EHW=9@7QGU*x%=CvfN)e67Z!AL$C>W;) z$WL{i*V#f6@qcRZu<+XV&DX|P(d8-(IkT>C@L$6|hbZhngHtdFKXn_vO{{-5Ec=_}(mPRVrP+2?Mr!voV!2DA<&$!rBvy$Cihxw$ZW$cwNqb=P%?0&7?s&nq= zBZZwxgo3y7+2E}sE`R*8<&vV%c<;aBcXp?63_yr;YxuW^|6i7G<=3JB7F_^hGj|5J z;lE@r7OLn&6k|LP`2uS=!OMy7m&1g`h1}%5fdj??8Unw?qiTV@sRQ7GSKY!>L6dJK z_Yx2MDvxUAy~e!{b93oi>>AvA(X{{%mlpUIkpv0c9uo3r*y8MA*HHgZsO8?s7m24| z;63wQUP`{pOG1R@z9)Fh+dxoM=7j4NKncx_^SB(PN<#`OnCFWlhOdu?lee)`CU(li zN?MrbXGd(k7;T}K;2jkRx`>f>IPspbOP%GC~<|A!TWC`uw?@P#<^~CI}hO6Ghe`RE*5Q? zY66=#5!k$m%*oBI+Er zN+*7 z4KvaLNQwwJgyX5m6 zF6?Ay_GO~-S9rqjy~>eh7BwPHb;ReCB5ER9qnE<547pti?3|6D2ndRZ>$tdvgKN6D zmV;}!xQ30DvT%)=A9#+2=LSE4EfoL^95XrdvjSFb?16+5*H9|8sZk z73eJ&CMdp&x`Z4b+1VyndqEPhy2oEM?Q&eh#=S_4?fb9$C>=}Uf2a}Hbjbd^4JTW6 zin!L$vu{s09CbSLB&$oyIbKDdjM<(d``W~X*SU)C?q<{lk-_3xJ8*JSFkp5DzdZ5M zmyj@p4W7~3L;v5tM)1=c(N{DQefj~i^;M)^d3Q=2wijddra=;sqdq#XhE@sy03ZNK zL_t)YB!8Ay_|IPDLeWkD$KY$3JPrO3pPldoh|B3hny)(^{)11YvMNSs+ZMD%MzeQB(QMa5*JyvQK7m~#ygmLz_6UDZsMkt4a$erb)4}yvh4UP=bXICrRGKLaH$sh@ zWxwF1T3t`IB-3mDly0YpjWFvEtRM;KF$u>kk3oewEbw`52;jLPKzc_XnVo%@eb-MX z+`A@(|K{@WyYu}LZEub(TF6lqC8i>1b66Q41t&jw7e}(i;!szHB~N+@)GNfc#Yns{ zfZ028F_-MV4EiDuT7yn#YXzydCZ5mw7me7H)yQFm(&2$Cg;&6}C$8r!m7|9g%W)k+ z5->ZauDDO;Vh| z+R`|#<&gN!B#Uc}#MROcOyDaLBmrazVd$?YmcL_R@UJK!Adua81Sea>cl!zgTQ}jk zaS7?yKOn#Vc=sp*4Q-O0i05kS>}%i2Ow<*T7<56=(Wdkd9!mn+pfnLN1<4`X)D zo(ogZe(_zeBjH=K3g4PlnEeCfj~pd`_$WqC?~I>^9Q5N^u>#-98_??Nu3W)&vHH^3 z0~y?siBmFh4HL((pk(6O4uUEpXbOU+AZiMNsv!DwJ;nEs+w z(@8$3c-7x6A9zo5{6qQxBr}J(2^LS zDHtN4{^F*6nGOD_R8#H?NOfIBb9t>d}pX*ho#`|S{d+ZgboQS%a_40Fklzo*3aVrajHa^O}%KMg| zHK7$m1h~-Mw&*Or!7HUSg4oDyL4~Y+h9mi%oNxo&twrXU(YaJ@Q)i=@qA^>vWo zT@?iHsv!Hp0O_557#(vvT*<#Ff_GiHE_vIVMLOTV`g0}+k#sBpR1iSW)M0^0kR=3Zd~Kxw6c4vyCvtcdAfe&a)ouHIo0)^%)7n?=5BTeJfT5|2qb_X=>@$@AY_kp|bIP4MtvC6QB3k-xPq zdJwr;()nU{5;x=^xCTEcW_T@coYI2)p;mS+oiC;NPln7_ z{T?uKJXbPlb3qjq9`pLRPXevRixRmL|D78FD7Cba-*X(-nBAP1(sdlxJ{2gjD4{!U zBXq}YlsY;nwYE__caBnP8%}9@CX4k24d@FR(Ha}ko12E0yG0YTtDn-D^O&vYvHDWw z36pEEL6$|>5OO?(6bqu(SD-Geo>8~+>bn(^Jr4QQTsCWrpX`83cEG0nn2qi)3$cNi zfT9T~x`3jAstc&P0MU{6VU-|M$rZvYfOV}CmD9+ZZKpZh-!t2%F|DMH5@%D%X+MtT z*qllwSQ?4pozDY1WjLucA8lh1dU|z4s1} z>pJiJKj*gTGnhdyBnkhHgRHSf62z1b&{Xs z7R#GhP9nv!W674)D2bwap+t(kgD6BNfI*pl+u1(`>pv835m@y_F z&gqDo8Ncu*Z8-37ig|bYC|YI^yS&dN^J1maE&c3`%4VTl|+%{kP0!+b-Lyq-(&kZZF_ z)i8j5>2kg5=Z}R#znkU9uHarRzych8>SXz~G;uHRzj0LqQGSy9(Hh3y4@l;k4UUwA$xwdx9jt;DNKXzXnt1pf{F!I80YAA>v zi=h?9&|@)-vJyOV=NvDdC368u#Y|-}Te?qq-l#3bQ(KNv zTZU0rhR`Q(D5`q|%Wl+p^Vc(H<(|9W7j4K4;ed zb(V87E56P$YA%aa^Pz>e@W}p+qu%#GyqWp2In+cdnEO5-jlUed0Or_v@l_qS_@`0q z|15ub+)A~cy9@vF#DDeo@TKBobnJ*UKeCpvuIqPG8$@-I@Q_5Ku z_z=qi9~!~ydnxyQh%fn0Z0plJ=*l#>Ocn5zoKRg9eR^9CoR7d25dv34FgvrPw+)io zHZbLdwE%)wMf1X|ghP*{i0?Z!D@iBPiD7(@idQ+5m z&L!7==65{w>L7Ztfw#_2?4B~>k9M80O-lA)i5vOKxP;eJv1ALIWPmCWi0H|V%Ln!tc2}B#pYA92`%CbyEX3+c zW3`OY-*Q5fp+( z8TXdg6C2pWV}l7^kzPI@9N>{$4c{y)pew$e@5bXKrOw>wQodYNj5+u=e>(s%nIeV3 z+=8WiA?oKy-#h$$ZyZz6DG$`~>C&1JWzPE7RihOJFxz?={MDOd`kXF=v|NO)<}>Jq z#aE%JC_yiZ&wEB@otrUn(>dI94w*IczP}@RozwnKJhz?HYx@Y@dIkQgF2g&o8ee@4 z*@Mj_-`dSzH@6{%JI48%hOh-`Lxmg!(OEAP3?z-xA*T4aN+=j8{Hd0|v$R=~sOI5) zQ7=W(plqNI%XTr3E6ai^-5_9^>~}p}jm;KEu*|CxP&NLhz=u#({HqqTMsMQbhHA1E zrMNp?+}<`48;+b-0CZ~6X2sWY;;E{{Q+28pfOH((bQ;&RkY;Z9w~5eo6vIFmI>PXv zdOQfvnb`?4XJK|6C3m2W+`)FN&N$LM&t%&qVK#MRHVq51Lf~6gi*I=y-X%4Y@_I#c zR2E#VbKs4O|6Zp8+mzTQoXy-kR<3aQbu&wNg?uriA#>{E^vR@oXb9WAxV0y;woUWU zAa#+cj6^RzW{Yplay~Ax5&SF{i(6~1qGh0iEnRy@z3;27+b9nd6I)`C>Tu|OeU!_6 zB{-Igsw=1lIG5gpHjrO7I4y)%z+a-ClIc2r;d|;a%DounUJC9kC3`qUdfNc0ZG$+8 zi@y{za76_Fviv~wz%Nn^96ZqmHLRh9b<~JHXWl!&F=r!1nD z90%Q(`FGiiMU=J5I&PvV=1?h&j*aN$=%MYQX@e(nsm8KUC$EW zsJnq5v52oI)m#k6sPOu{uW<6&Rx)pmATv~6*muAv_oDd5UdTZ!_M(P#?CuQC(D-id zxm|G*ziJ}%!CHJPi^eRz3eWiN!)k#+=zZ1ruPy<=JTgG~kTv1PT^6mU<=304hQ0L>d?_n)*9%$Rc)4>>b z;1IV1e7a^0mphI8ZD%VDp*m2D`E>0{*6LZFZhMF4GnIMY^7EjT2JtS*7i}ASWO9U8 z$Y;KSjxaRTkQXHqKnhUXE2SM%HpPT;7r{8#ZBiJd~7qxmv`g8dLe;z3-QdG zi>JDf%^NrH-M0>ND4TyhL)Ac45SoH6G(5Trjzz!2IVW;-D~Eq5gNS(XdQ~{h9^X(6 zmWc#gY?nH6v?>N4R0ZDpO7=0p4-d3+V8aXfZEI@DzO|3Uu6|_J1F^yh`y3{MS@Csr z2vtQ5g+{XY;5ag8V>Wk@-P=ND+u;+L;?o5w$?Rw(v!f9u;5{zH8g=Cp`ZD#aHF8Op z=3O(}|8+bB3Ir=}pYBTr&*Wf#FB>lLB3nn(Dbm)|T$_WrEd9AGQO~>E24*737vI{? z-E|A6x+$|vL#BtaGs}$RW0&7a^H3+f>Ct8G4Ca!&)VhV+YOiL_Z9dX%Hi;vn6TED5 zSbX&e9CP}56rF+F#9P@ci~Wnvn?LZ5i#@0T6(yiu zvV!Z$$Vm`i0a`X>(7aHz)F66ujJ~J(aE4C3*O*-H~8S*BScY<9~WwMyAV5ng?l1@J8lBC`(34Xq>E=R!rdw3vYw8-G@f@T%z5 zL6kugyE}u-jr|%-KGTZ-`f{`~AD+u1Jd(3WK*)5_<1k#IRR+W=k8Ht?gqz z9)O|vsrPyTm6#F0?BCD#2Eojw=<`~fZ3ve#2Z-y%)T;m?78?%F=dyrGxxbKV6%45p zl0zi$Qm@0d-W|LJbY-)|&Raq|k8e#C0Lhp3V6{zRAt%d4s0vz1Brn7Y@{_VdX`G=9 zZeskI(-*?&Pcih=R+2C7CUErv(t#Gf-xT8a{_sz@CIT(bJ;+yg`O(WfSceZF7|zbs z1TiPe$EY&~$lP}m>TDOhwht3SMgbi+n|xUr1i z|C7(K){N7<;bFeEuZi5jGc8x93$wNZlZV|EC-vH1Qk(ZrbyG%+o63@UV;`wE_Mul6 z5xC}Z{HyCH?D$J=FtBna?FZj|0<6a;Sbe7lZ*b-Xls~`3i)^`4(v_ZC8?^3JYF2!m zV199MH|xshP&`|FYnIcP6<=o=Gk)F6XO@3}@4WR8xlyK{9*Q5K)L+Q*(#xoRpP#+= zCvfeNi>S8g;t7Bj5SWRn6klyR(+~5E73DJDa!Q;%9CiSFlzXqF&V7fMa{Xw+rpMM; z8?2+pPB36T&l6dj3MEO08)UAg(PQ-x^?!h?L<8@bN684#)kUn)8h9dYQL96@rL!zp z$=>uX`rK;jLyHJaVl1V41-{}l^DH#~%nRT~ic#sssPq!LKEE8>Y|D^qN@4Yw*hh0% zM{`)cS7i?am>i^xo5aPbG8|r?_Z&?=(~3-waPsRsUy~NmG0G>l?P|n8jTqQH zS)9Hs(i)pcpWM(&#?JRJg5a;FjRyia5Fia{uE9kJ)s${BgIYUNIbuTMtaGF zDk$532zi;otL?qSeOFR&@0IYz5Nbm;;pI_+LkSii+Rj6r4hIy41$LGP>>NSW&z-}^ zlsPLezyf&u=tTn6l6Y3FqM$CuO3_H*@m8LYVeY)`YJ6d6YU?5=swsTo6^8n|*woNV z+?n3X9<`$IR5#(0!)!T9>a{&&wjZAAri=@#y_bPsyhL)-b^_NdCa`Ytgm_)8c#naZ zHR(C>?h#;x0xRz@2o=t}xP8mf_DjCVR(CpubCK-^PA6kq^k&i&`TQ5&c$N|2NSCLY z5Amr*S4?$NW|?NpaPifmciYSS=&>zq-qS#1k431gnib2I@!osy;I8?zH<8JvHd4vw zR(y!>Z~57%_kFc(8^!)86~)EOeXpP9Uypp|FFjxqh#Gif3hAz??X*B6>RHE?${~K4 z?kA*0(PR&;Ry&H*Nz`{Y>y%cWNt|lYpsSa0r9a5d#OruHcd$%!$2%;*w&0{r7A0GF#BHQXxt)7Nj#r%x zj4U6+;e2{niKwR1ZQ&gpQeqL6=h=3m@GlGDsqx|T=SV&?vaDCgpZ8}&4Qd!wlb1E2 z6?@T&y*Tk4c5imnnXu`XI|*E0fmRv7yCh0>_b7c<0pU@RnG1{5f%WACZYV=5%f}y1 ze}>H4t(Z-tf6WUbEjk^QYL6GgO|vbTAbCthm8V`)0i%GJH9(6qhnPsvU>a0My>J#A zJ=@LFho5UT71QeA%}fr?r;`bRZ_OM463=WKwgs42gil8;7|sS|xL{B`iP_eZFN`&% zCgg%D0@Ngr@OzK7Q;N>ok^<%rZszYE^YNu3z+Zs(ibaHUg+;e5=j$&#!C!AYM7ya` zv*vdGVf`Gkn;%E(Sw!*s7g6jJScf;Dw_Qic-8RPGzkuiJs|ZwS1TrC3KlK(5aurKk z8yMQrPpl(IUFX~UL8pf@-N)Kk3G>@K`CfaFPfo+`S`GWr3THE4CknHZVL6cJCmAkG(X_KzQm%adN`0`c*g_YCrCNKgvG*5iN z#_2|1c6zK%h-b62;_C$SOv@oYFmE9dV>YXJmJ`fi@ztX7=^ydwzuQXh@H3&9PNJ)Y zm%Cbc`Nf?a{@Xw0%d2N^B$LgOqIrB~`3Lyd9lsv+zAqlx!o7=bqv#3)bHJtJ#gTPF z>A}35;f<-l#rNnu1)<{=`K7kHavAFaD~XaNi%ru>da`!f<)(>a&uHiZbOD-Tpg2Bi z0=ILg$4AD^U|TP-Q{>NM9nLG{OeFpa^_=zsp4iL`vCOtbWJA-r?F1XqMeZcCi8-N43vVs{o|RC+1-bQPUHY(Bo?*OF-l z2(ebEShAgW$S-XUP)tEC(VdWxb9joAYcaJ{8ZLixXI?F%N3YgEL^_4w|F#giUT}rQkCQ@vbZ)yQlxW zS-fXM7}`0-SFOU2Z)Fkwb)~2UdG*tYr^)W=CbxGIvv!ma*F^$+ul*%9t0ArnmlEvT z&(onrRMW-xTKDpWVbRp^%;6J}Jv`X<3jc{pS!f|&@T#1xhKZ&ZbBn)&2bwp5QO3;? zKacetV$V6WGVjt-6u*wy*iCxN1ZUi73TlBDC6NDIWzNFx8NxM9gdz~CI_yO}wHWyM ziaaUa?1pJ7Ju`R#L5Loc;vAHD?{a1#qw#8!&uD{MquNQ`+>gvYO#X1^n}5zWFg= z)K09Y=ere|H5qzl3#r#eUw>gH;S8loY}i6}M-!pjR^q+9dd$ZX0#@H?u=9D7BYQ7h z0X9$|SapYoaM8@1)!*HBl-+&ZQ{9Y7C1qJy&h$73Qi%%hxa}+s{Q)2Lu_h!i`#0irs4)KPS&OS%?k@r>4E&9dpc!cYHB@; z#Ung2)I=00_us`bqnsnz=Xstiol;}&dG_}zDhfWTeKov2@Gm@|g+W=yZNAgD)Cj8< zJJS284K1Z~65=Xfsfr#v_h;*Umy53xMf#{i(^J!9)_Y312+8YKLelhPn#=AD5Ly+& z>M_Z+oqDg4j->zjehTj_#9JSr?2Fa({#bwsx~Sw@(a6KjFMw*U6CpOZ+c}`F;(g+E z9&sM!U$I#rZly-3Tq|DTVdrO9L@7C~M2bNSoy~mL_3%}tj#?1~8D_;rupIC&4WXBL zusc(vU+fs&&ZlWyYCz3rg)0|#aHkd+s09X^?cxqvID;l`>ipAEnYWMPUtf+9*e`I@Lwula5r#S|YR{5KNI4Bs21ZSq%|H4Ze)r)HithLW9{K7jicUVK zGadZ&&%epHx9P0^>i^`Q-&;IoEu9E@2lF@QqR7SZ0vr!79@)afdpC@Fza_=O_FS#-on8|V-9C_8QO_+EZ367NnV`Kq3T8tmDhT4 zk`BGU>N&&z6+kP{h~5@M3v1+BvmAY(6}xY;D$(XR=x$^K>-cX<^qf`DCyK%kml3!k z%+N0zNo{N!_5Ny51(EkG_RKwFW@yTgwu_sxktrJ|Wg)X?o=^U(ONo4H0oIWei6@VY z>i9wdgoUR*f>9qqpK~HdS(*;!;Xcg9I9A)}J!NMyo`uB(uCK#tkJIy=$0z2Xia?F| zj%T|%Luu@zgGlqF?^G2i9u?_Gq&YQJqE8Q=$0Kv71p%~@2trelQsVR{a8o$~S1%xP z&sEsH0}MU+=6ISrttk2952KaNW=4z!tG$=OC*Hz5eCdesV?qc*x2+;{^Z2X?+Vn+=0;{^IqGQ`&}$!GZoh($)m5XLNxH$cZWNc&UvP zTzJD-M#aY#Ea&}oXRLplS0!RF>|nk001BWNkl>YZycrDn@Mx#jE0;B+v@4isDfb9u*~GpqF@2OMGZ0KC}`qTDhOxfgTtx`Xyb7 z)zXi7IF8xaH)x(;;+ZX2Z9PQpxdt^fwv4^1g&L6(m0d5G#5<|VzhL(e~;_EEOnUQzsT)c(t?SQX> z<<)01A=4?YucnfHG&Z)-o`kAdU;m57n(`(1bss<8_6Rv=VlSa;jiILLIc4qD*72dpy0iXILBXecP{s6E!f!+ryl2d0 zoJpv9M&3526}`Jmx;9U*RpQ{9wVrU5fjMKSw&=*a+O#T1`o z)uRzCpxA)Mcn57sSUW4eUQ{kGn#Uhq`Eh=-|4) z-tb+7P{l<}T+0o(v~9{#bEl8ssxX($CFh;F%u!pPHEh zh;KnY>ovQ3^jWV$6By-QjIuEbul7-%O7!3hEab)!ik*`|ZdV^heLf%%ngB-L7I!F1 zW^4N-wQT00*X6SpGdr5ceJnNVLkZ{4ExRv)-F-g$28XR8!A{Gi-_=;B7?_U9i#Vi& zLrg}vg*3kqE(SJn8Q{0EID$$OgFGlyR!Kizk)Q<~ut6HcgvmaUCFub7in4ir|WTv!T5dxn_r7}>?SFZdt z|GDRBwsh_p@%|eQzlrU-TwYYiy!!$)|0+fASv+9l9ckt)ixQlxA?3{YYyb>Z$Eyuj zZk8aYc)g^zNX3XLxKiS}`Ra`4!&50RZI^V`#&+J_nO~zJ=+jUXLCeN0ss8C7)K501 z?V>6IA@bM2h0eQ)rgKY<=;a!rxf;HeAqF>}TkJXdY#-rOAtI~8gl{WCpW~(X=N;Jn zGb=;Jd(3iRl;W!rR52>N2z^*2mlEqd*M5JdksVf&xCjyvIeJW&s1X5Il1lC4Uj`LQ z^&nVrQd%*!ZVydrF||$)O==bI3B(9Y(!A8r_C7rCuR*$!M8-yN;j9r=5d?f1%F;5- zhqg~n!zLAneZ6n;sJe{bRu1sPY&CyTT1?==JLZuVhf@Ot0>zY_^u2^@W4Kb1-rh8> z>sKoZAc6)G@|mA!vl%!ElQeH&@Np3!WJvm@$qq~BYJx=N01x4!W3W`3vc>u=YLx^ zZq~#ZN?{MCanqxlNYtW1L~RA8<&wx)la@TLC<09psH#9w1d7P_H4}mBN?cdsxDwmR z|DH&6Rl(=UduwNQG}8ajrU^a%rA*(3t)x2piGBPg04&=jlN(vQrKtjsu404)OK;IA zsueWvwCQV`eu9)YAgEcUF@JS_7;joGS&zjaHHq>zXXzfXpgm^SO6;Sb&Ig)oqyejI4KsN9p6nX&4UAMY-wbDWeqvgAvZzS z>MSE;s(q|aW=4vyWGr$3>bb>NFoqLaEOO=v@pYET$CZ+F&c^buBGgo$ilsfrQF&ybEpc-4b~U}e7jvmNuu@#qSQB1m=EbiFyvPt>VE znVJmn))%rY{#20g6+xO_dywz-EaR)?)n^r@hPEa!dn}^Y72sPGq~dFJ#2@V@xne0w(Dlt_d?f}Ba zJf9cKN|9E4l&U%rHHcy5Ko4SAX%fUnE)0&6W0nhAxgSjxBf5_{uEcR9YQVs|yqxTg z&Pi(BgS+!7dofj~!~0|sD|;nza&5gDWk zi(`??i70ZceV@YtECP7XX^(KqJCqW$trxvKMrKC~1@~SAGar%?EISXd>^qp}T47C(Q!|g4*R8HOo#6-!0oEYr4$H z`q{(i!v$F1=o(!i%$ba)jKgy7m~MCaAsj}tnCA@iWA#U7?x{4bd84b1^_4Z~nldZC zzKfZe;;W(K0TPbIIVUt7b2ui~@ffqh>%~S&$mARxSK>8PZmqeBns5aV?R|=_WbcTM z@oMXKvbM=JRm+%jyARDTXy0^VU}j|<`dU*I&IwSs*x=~4si}B;0-OHa>%46x$huhy zyf;wqY+;)V!X3ctzm3J&mpEkH!yQJ3&4U|pe3y~Vwqh|vw_C}r;idUQIlFkY|8;D= z7O#_{Hu6E1vWv%u;;f8ZPvr#I#QMuM^iY0);y5GAz%5*yzn1LbiuFR|Go6nOMic=; zh*i-%XK?&@Ruo0x8D3`H`r@qcdNzbQHR5aH zh(q^QlhRcNp;{e!&cA*3NS5wLj}pBuioe!N@h2+@tPIotRL>+7S8?LWQ|fgUacm*-iV?MLe3*v^ z(aQb9wl5>Q;nLz&R=uRF@n*@zw-dD1S8?-bp_UzwzbNl#CPZvowz+7QshM;?J3qQG}NsVT)Mi=hO3Bo01< zXaFS=1OZNe61z8n-7|!n$|6k*Y1+713u)OXUL9fR2tz}7bkwjPtvHNU6h;Yp(F((8 zg<*UP^M0Fle*&wck8E=nR`;p4Q@&&3t35Fty{;+fszB3D4T{`EhFoJOW@8stdmmQs zATmAv7*VJSYEc-iEQ+VD3{PztT3HlL6=HG216nx?)v{(qgS0kOXM-*S0mWyS(7@CTqD-_L9DVn1)c+{n%!J+ez zLwe{U2C4!o=Bt#~=f&V-ShkC4yEvCXB7{C11HREYv044o7D>JjRFu&#^-m^H+DtG& zI0ETWzy@qPpUB`3;8u*SAgVqr2+#a8YI?HmXb1h-EK#o)RS^@uYGRg|!Hg7NJ-$GG z+?F}F_?pY48FB!_Pk7o^SGe>sEf;rKfUS?s<(t=jf!`c@iKh>btXk`q&b{PplbdQ* zQ@-AdC#KNycp4{{zhQMZBq*E{Aa=Pv_2R4SWS?nKAGnKJ(NB*I5mx6i$Bxryx6^DU zSnn%kbEcWNGDN#r$gM^t-A;-&+rqXRXm%FoFG>L@)m$06318+{yp%giiD)2WTtn$N zg;&+1;44*7y~l*tksBWrUaq4EfvPHm{K_a3X3n8nP1kI&meJUe1@$tJSgnh zVKR7lW_$HbG*S*HU0rPLRrc^k;x}xvvIKr!$0v*L;ff*^5!68r@Ji=zcqEYp)k|%` z&3v}75-YWtf9pL!o0Y=aznrh!bSw2GTln6qJ7~6s$P_Q}aKK@a*pp&CrW+)K#RMN&lpi->ocSVSH z`3Ap|Jsgz|1>#EnK&hi(gl}05qKAL!N^ni(johOrc(`o~ zJ5GKv0ZH3sdF9poiIL{v_PuN|i&-tbtS(*8*Zn$&``+T;hjM&9QpcKfoEyvL6G(02 z1?Kae|Nb5da(nsew_aqY^waGmDb?oi6$M(I1l`9*m*+q$4(5f|td$pD&CytRXslN& zxWTI(f0fl3@pP=i0~z;u~iJR5tm&8Qqs$Qk;FuB0JvNF z*)P(}lZD)k0Mh*9@xLt|YdgT!|MpGnf*9p>EBR8QkYwNf{4DcT< zt-O|V5uPX?y7@*vbzL38aM|_Zulehrb|HO!=K5SReO?Ct`8RY93?a?2XY?t44_ZkW zPhA;CT`5LwDOxmy77gLMyas0=Nw%?*TvI1XB#2&Fgp~QojIp9B0z*^Kv{Pe{?7miV z2ih>3y0AJ&UTa`9NXNzQ9>DG%AiJX}-=45P|K97$@h`7K^%d@KX(AVLTj8A-rX!r!N3Wd^Yh4Ok8%{XzQTh_4XdWi@(nko>Apfxebp@DaY zuko>dOIOv=i?6{D?!w{6=gNQ`Bl>uDtrr?aD@114lG9$%Tqp+AF z1KN^3v?ncyotcSa_Vv(f0%gTi22cEdI(a^flw;mIGqLSw<0Ff1;+m?Z{HEbWws&8+ za_fQqMjR||tX@OWG7q6Dot7t33^m#uZA^0cjZiR8!y8q|4NPqszk`hs`9Zx-C)+cf z%!%B=a&v&6<-lhwqBi{++p;bcO$Sv6O&921K`)WD`w%t94w6olc|&p5+I- zo@AeX9bcXw=DB_O$6s6ZVHS;K(SX~>rd{{5v*-)_QDxx;H#dg|p(lS9npeTSh{fmn zvM;bztl8s&0E*312pa0Mq9K7@iT{X=W_l`&cT$=@t|1DpQ-gk<#xX7?%nz=2=(ecJ*FX zFvK?5OGXG{7k;|{=;8dA>7GM;RlEvX%s`9gx06!h4A?k{d~m1;f#Ol}*`flBiLi>0 zCSA5kQ1KB|FJ8eAEuFs>4NW05hW*29=aPP{d4gMIk+gDz{86I1f)QE7A7Qb#D@UO} zN|~-;C`HsL`)Rg^Xp|xD_Iofim=_3;PG_)mm5?{e97DmdG8`2luJ(E`G=-%BFO6zG zOHff1G*uyF6tLRo!B9*hs!Lobl=*^e>p#f-NicJ1`n@)2`Be>?>X0`V0VrSCT( zoiuH^9P^91H@L0%Rnx5_B%$#4Lh zHX{5F>8Fk~`;Wbk(_ZT+NjBo+ujj91@u$}C_H)nicFFa8Al=DJuXl6Dg3Gu`N%5Zt zkI-CqH4lAoDe0D1`NL-qu;8jiEZX%1|F9v>orN{r-rLJ_U0uBC25}u_I9?gYwVW}r zTY9ludP%*o8vvuW1n-i$_?Fe6M?>hVLWEXbhFTCfzP#8oLGi5Fe3Z=2CbB!5aE9_; z!2&LBUz^V2>~0~myM@ee-o(4K2LJL}yvu4aG&qkx+8GQzu^IEV-P1Bwn2`)7N&d%k z6n_3rjFN)mmJZ{kqE?}zHs4oflaju6hj^z;dLSPYXGW13t9t~20zoh;2p209Rw_h_ z&;9)ynlfp&JX1N|+}hjzt~>7|9uHZ26cdkD7I7p6h6cIei3Fj5s(|a{GhcHy!XLqn zp4LB#3p;#8Jf7n*o;pQ#V3#^ud)v8t{sIh5A?TZtGTbcVWJZ4Lo>(=DieYo_z4A1_k#}&DHug*Q zWPjJOPkbacN);Q$0Xf7 z9sPYQ1_uu@5dCfb|I3$=KJw$?$E%2pH11LgxoP>IbJI9lA&iUp9cLM`llZlAd;)ai zM&3Up2)Lkzb#yhtoT0-!*YOM%NefJ(V~#;C8-rtDKq%IVFuDiF%?O#t5W0fGi2MuRD~m^ zNkH}B$PBLZU^x9GwL(^eYM4JsdhD^x*Rc|~zIGDC*O7Cs#XLIT5efz{A_-EQ_5sT@ zuXgWYPiPHaE%4ISx0$~`GjYRS#~-S4iz+15z^f4-7`TB+chYL?fXUjD@#;u^h@ z4=QJVfojx;5-{=}ukC%v+!!*5RRQ{$_Y9${NK-KODkdYvVZSg55M@SMh$cu8bA zDm6f1nbgVGL(!N+mNT89^V6&grT4hy#MZsoX-?f z$|YM`=W^eNZzNg>VP`SdW`4uQ@Ba$z=zfNrAS?QYKp3pnd_*Tvqc)q4Vm2LR=|F^9cx=E>Mkp;Vh5;-7RuSDG@^OW@p<}H|3%eF+6mqk|W5Eu!*fAN~rJ zzTHVm>qC^RHl|d3)r5!Y(8u}X$Vn%o_lv_z6;IyqQ~Zx()7GBb`TQAuUEcR~Pa4KJxHhB#Xr6C zCL)u6{QW&?KDp>RA_GtIz~QZQ*r5BD@zI5MvCK2XE4%LJO|1$u-b``*rYK%oiVOj?Ke02GTS$IKFZ*s9y zlAb0943M$6`AOX36V>lwAr0K$v;)wXQ+OBO2zT*D-)sEj@B!A%y_*l5^xSv;?;h5# zc|Y@0DxPYE$n}MkrUMv*rT8))>^)ro7Zk=$NT8>8&tcXoce6w`vPo{{ADl8isjg$m z2;ZX`JZ3wP14W=kG}N$$8a(kjPBNeADy_4NS0fV1)gbk{!XeW~xhj#igXw}tE2M~C zvcg9Qn_ih@uNk6BQLx~+8Fav?pjt^|PNIHxuI%5DqLqj6t*IjO_CyXAbz)vGsZ@fb z3}K}A^FX?gJ5PEpXbsRph%1Z&l1dj1mct6wr6rRk;0>H2${I?5aymF-JFHMrG^BH+ zE)?rai%v(S+T+D=(`-v7NFF<=bdR^OFPEgph2Z}EJYf&9M)R=GPEn@DxIrr?D%*HY zx}0A5LkW9O!ubx*YU{%tqX(xj&aKJ|T|?%^C$5i#ejE23)kGhXX{H?SgxRj3h}@92Gqp!#2??u*Z<-heEs;I zg4M}hEa?Ku@$v`(|XX=-q2Xx~^!L3;)l{dOt`N*vJ`mSYWimz&f zwfDZC^{@N~FF*Y--(5SGuisFN2gvm_@UtKMD?d8|EV!9ZuRD97Gt2a1P5BbmlrLfD z(Sy8jWDEOx8_&7z8|^zenu>G%+|@)Ed5FxH*n>8nh(^gOgQHt7Zcwf(8oHvPO-iSg zp*gvM&F*||@r+V>Rlr-M;wcziR-x27xD zZg$x7Iuuu_RLobYs8`XaShO1n1BYyqty3FV^>+V~2YX_CV&(6$NbBa6J@@nA;ZnZ7 z_%1$L)x`bjoA|>;iy3VBKKG|@;!BH`<4?cB4-V|5e8C^_M={uW_@2TmmH7$}w_Dt>yRZmEFoP8+qf~|dp~LJmv(&lW zymYjc(&%cgFT0DV^9avnI(aGCcj|L3*kj+z001BWNklGQVQmMuIkVXacf`$QPa*-VpkSaN#y z;yF-4d9hUwDX5E1S`H#5cEZ6)I&gs^ILZYla8%|7YXF#Ul%M7QWy4cTuxv!Fo*dl4 z@lVqE*Vj(4_zGp=h1`+Z!?&9D(CGxYyJ{ZuJPWxayN7>hK8&e&xuR$(D?DDRi;H>S z=<9sVg@9)cpNNFe6DJ)^i*ZNH&-dD2;(66inW|q{=u<*m7YXpa_LtbKhPWF65)J!~EU%-=VWP#WGPu6pbhezMbnQDs*B>hZhQB;=67=M9&T-3~89a&x;)sapXX-{o)>iFM+ zDnfioh6uiIArEcY$p1RBj30g?f}(rSDoPM<3Q7VM{5C$;opPB7Nj$rQ&ku9Ef6B!aO?j-&CUgQk*fX}>hn9Mte@m@Zc zz%`fSnSbK`nAy?D;ICer!q&YzFq^vRe{d7A-???Fn=;F3ywNqjLR(Hx7kyh>7;4L4 zC9~MM;c<$lqXj$|<;BESR8uh5f2tfl*g?yGY-cDny!q0V)ZbplNZb!(e=9Bjwu{7Y zIN`hMYHF{KqS|TtfAunLjrlhCuDh0b>%#dv{9qsPt&Q|I43O=&kcy646hJNTBI}B9 z%SVze=0bNr%Aq)-GmS_(psEn`BFiJVb%n^%5qX9owjV^@mXAHn>IIk|j$t@M^uKn1 zzJmi~1}!iOsrsF@M5AXpgqbFNsDpuqKGK~-WCtxIpoaW-iVN`9l~Hh63BJ&IKG1W0 zUUr(~o;LdTcl|&1-aN{#tG@I7ocYc}-I^zrO0#4QmSsyemPb5*-7#h|#E@>_CGZ|0 z38B*oNq4&G4$Vp@&P(z-Z#8+HKmvpS#+VR{jg2i~TefW3mMlvu%TlRS^K|Rho$o#4 z`{UGbt5ox(l3bs)YSkUiJ!hYB@BQ7s{r!>a%c19O&@{AIh`==)soWi%c%JeZQYX$4 zKOH9qi>6UJit^MTs@)Xksh$3=0fVVbAaC05u<`9dR zh{{VnoqS}|Ttg?;xZ1cf#aBREe+z%~#f!B5_h0hE|MGkMytA(iI@q54f zKK86x4qQ>}s@%-3%FVQ=dU&npG{^eR5YJsYVekBKCw;jg-c!GajnM|2ngRhaLjA4U ziiocwB8ub+u9C2vQ>MK%1sRMC|LE*M zr^P_0#fd{uyHTcbt3>6x)jL|-`|4%1!T@kmoEz-LSAI7eRe&mXRX6eE#ZCsT?M&Ak zNe-W8z_*Wwq9G7qTlGF7r%rHAZvqs`%l5I$?*)63Xefu+R@UI!7I>X0 z$oZ~gi%&)owsCLcc3!(U{xd-paf&M=?8iK}bCdZr-yC|HxE zP2ptk>D$Ynm2|Q`GCET{@O~Z!5CzH}`ghz1^!)y}a7L1a?3UN@chj{fMUcu| z;nj?%v63?nG|a?IQLpX-qXO)5M!!mIbyU7DWI5?XxDJO-QapptJw`JXZrTwhi7IT) z<3tg+nVtd|L?cB}XHiQ`uf0=48cnsOEVbyFlT&<75vHa!p~7!*V726b;qM z@qN8Wvl?ZasG%5H-n4_<(#((nvk!){VAqfo)SfbBc>kbTFZrYa3Yo!wCH#ob5%} z+=P9g3}?D(PR}8}*oxRTsh?|Ekjx?^vq&wyINO@Aw=jF)wN$czBjQ*^Qonee&Xcp$ z(Y8VEjZ<_#-%WmsE{>JXkxS>uwRSW3jDqjF9n>GJWlC3rDUO$2Ofme#t8|~8wDMw+ zV)p>W?g5hRJ86Dj1DXm}??pNvJ4LE=02%|mJC5ERXZW=aqW@+ebz6PY9}>Gr`sFw2 zesKVOa+}z;F%v1$i4^Hm7w8VgsJwe8l^bVR-wbqTQ?v{XvbC&y0l!}3O6Q6dUqPY% z&QJ3%yKdoMfA}-L`-?X@GXUj{8`-{VHy`@wy}Y+^j-woFtU4M)H8h55cyP;|oEdE8 zwcazl-gkzaF&-_G(Q`c2dW3V4dTyxQNu(l3#a@kuI}N%H6|t8%LPA797G)GkUS`2{ z;Yc06Jq`v12U->~h zA8**kM?-o3G1brS7@#{2RdS451@MbO?iRcG>s%Y(5?#;N`V|Tw6}>8QS?H3_9n&WD z)7Qu!zd-Qby?D0PP58d}P8aE?UPo^qSeb&ZAf9avpehvK?j-Tu=Pq|~-gV?&J&RIb zf&a#Bm%Auy0I&9Sk}r6uJ_OuHI_DK-&*Y z);+Y7P!JF`eA}y0PhNCq24v$T+j2y9`exp=nIn64cAogmg7;ZFY3BuWS#4;b&wkdpFEgj*N$-=7$WqzEP0@(r#G9I@WM4d2BD{*oVFf2$#40&lW=jh_jZqpJ6Lda$YAkvgO+%Fp^lZt(c80_= zEd*-z5}9hYzgZ-8=qMLon`o3PMWgs?1IVH);OE;j?m0}y>HpC&tOxc{yLpytWg1@U z?N}3E-=(ZBrD6eS6&v}`=f1#)K6klGvc__;t-P6S<;{HJn)_%=cJof6op*-XIhVLd z&M0zzxRdk4ofNj*$xU^;Xu8i!s@ieBM1m%k*(6QN4PEy$s?deMU|EV|qsl1)mzCrsCs#apwWbOSOC_&hrZx>Q!VPSoyK3uZEE#=ZtsCC7*JtBf8&YGp%7&6d%bo5>w|4u(@rRt`uDUtIXQ@=m_JjucQX++y z#t2?*F2jH8da{QvEXn$=1jI4%H9gCcBg==h@dR6oOpYX~?sGkBr}?Q_Bm*ddpL-;e z#|(?x6c1;NG-XPZh?L@(V*w%?96#4l;75W%77N4ib30jHA;PDycwETibqrn-M5-K( z4#7qvL5~yW6F59Aq`>ikP{1{sP`J_Yv4tpqQF1G}ccX{jbV@tUrSCO9<<#-1(XX7+ zUZ_AbF}_)PYmN!D8Xvo6GoO3#08&K=G2kKbt>;KSd!Bzw9iOR;Ap2w-wU*CV9zH!; za~4$Y^E7ea0+0J*kSk{PwKKYg82YF)A^8;XUmU0V)QF&( z?I+QiA$)CMQnad#e&!TiCBmz^bu+cMHD9t%PNJ8dAH7a|0I)N}pE!vc+Dm!${Db{Y z4$k5HtZ`McIuwdE)|ewr;aZx)wcOR@dPQDHcF~_r(4QTmGu=yTqKxWj1@*URbUk0h zQzlXzwkZzV*wbWi5fBgs0Z|Y~{@mBAS!^9e_6cYa2{|y2NY|`GX4uWZIve%3Yk0~; z(g~Y^%j{b^7gBMX6VK_i9yi&#U#4cm<$c7(Ppt;=HN?j9YJSprjB~a1Y?JzUv$qW; zbbxXR2B-O1II^AEuGe@uxtseVUUJFj`AOWzo$HzwPzafDpbDk)G;inkQZ9G$e9u{u z_IT{6TZ$nG<%m+d@aQsHZg}yaxHEHRtm|;VF@`TBZcLW{}Q4qA}9ia zEFj4;lTAAv%fT@mtb&a-Y+|NN%%q8xa@TK{L{)g!d7u)+@WPVaNWR&ghb9OrHIfgU z90(G!AdxP{$>76-iEi4Yu^1}ksFhW+j*S86j)+&SWwVr_&$Q6(I4zE!b;~q)MO-5B z6(D%uRtm3mVP#f-0-&W}H1gFNoI`RHNkoc__`LQcaEc2bToDuz6xX}-jFIAmqq0GS zgq5RRj`5&0z+V@$Y*4DXj|`7E7EwV&aZJu&q6$RSmrAR*ZA{D>&fIA?$#%1Ho(88kI&AvFfv1rE%YVMdq zcm)s@v>n@6r{_5T^8qZN*xF0}JrxAJfEFgSJ<348E95$zy`&Qj#44tLzE7|m@Wu!? zO%n7<-dLRjxn&P#`~`a2+_q@`jaE{-qC}&UR$h9%dgEA?>skM?ZSMIgDX+F;2em^< z&L0_Rf5dx9#6<#k+(gs$p^4|f8zOe+4vO7Ji6;PT^6e?C-GPbwmhPwT`SE?yuD_n< z+bX8qe<4~;%>z3zzI)P*v@OONcy)lteYJD)2`;5On_{q#qujHw$k{cnT-Lze0%i^ucf3DHm^RZQ@g=t>wbkmbmh--y2B(txH@ba%Bw!i zCkl`9z1ROM$wHi*{~*7yX+1Ml`HKG_pV*M++h_lbKXSk@y=>d?YfK*8o-4k{LGCSo zl*dl|F+Y~7*j>4qa$~#-5>x>}6>yd_&HWsRpE9Vs#e=8WOY-^Q6-feSrChdtPO;^6ot>g%+l0inEF1LXiED(P^C3?44$@?X$Eqx6ij=3t*`t zUjYQKLg2owB)|9OlC5(!BY50lRrzu#eJip;I;Sb%2fB$9zx9%jTDHP5uE*Z~i!FSyzq*xHWV}Ru2M=tr^=uKc3 zbd>7onjp9W7+r%TAA6DThi<;yMS0hf)C*ip&n6O1jh)Sno4oiu$TL>!BHGq1)Qi;+ z4xm+p(Y)i|c{bMKKawD$1A3g{)(mA8p{e_alPm}1^>tH=k0sje~SH?diAEKpe_uz%ys`>qCv?r&hI?V`JH#W=&QIU?6hjy^3#A+&$pB;j>@o7(yq z+L6?FYdKm+`Sxkfl@=gauMtnUOIt%343i1hir(5mdUTS7znaSHrWRgD5n^>zUf)Uj zkSo@k7kbI0Yp1p|n1z=305{jIoBt2jxT0ATU)Q)Q5k!H;+r6B7EYE1C${UvOhQTU2 z7-V^{eOx<4czKR2zKhNG~_gXTO-{XIzeE3TmIig>}y3C?M ze$Xb}VG?YR@iu$OpU+>`@&Gut<5~_ZA`sWkxyOA$k*|_~=w1CY0p^MrTH5KozMGpU zoamw0a`pLBPG(dDoh^!0@XCk*_c$8^i|}~`1WhVQ3?i~k_V9GEo39Bn2!1}PIQ-mJ zc~H}6(T6!KhPjD;{@ln@CD}AvA?|Wyeku&nf`H>LLtZDF;{At zU5>-o1c@&=5>@!95)%A36#Pis<%FgkU|1@mA3um^R}%n3-#SF$&5;a+j^m1Rg5bUe z?0gY(D1%%UKnnXY7kSJVi(DB+kmoj=!RQ{sN{)oEIgotxCG2F5;N5%h9oUMXDddm0 zE@NqzA2}Apv$F|+)K6ZXb~$S}i=Ed|YRcAZ2v&gX(H6AL^<(E|jg{q0eBpJbs3?fw zilE5^*#U#VOu1gXAws(^^`8b1q7_7%6f$Ssc6+X+m%^S9-l>{P6D$Wbf?K8+E8Rt+ zL}p3MB>BClDin192aHL5uHh`g*yI`or)mmM*isY^PMrq^rXKW^MTw?R7_GZ)!sp&? zbyM#%05*Die7qT|h6&Zro^VR4sKgh(NHOWIqtKngx;8NVG4sXSO?+MBswH-fO7eomz#9{%gG!o!qzQP+Ma-Nl!WtO|XNePZEd`<~poB#H zwG!T#E4-=!0W~BdX#%1Qg6#emOR`qlrh{#PS#T(%9U^I)!mv#tG4g-dp_rOpP_4RN zrEIH$WnOtvuT$~%s|I~-7Q1d!iBztPh&0r)ip1AdfRTNfzdijL_09i|_k~Q(4fR4` z_k_WHIVfLt-&cS{iz~jWwHo>Jd9tae_}XwiUuxLFVuPp?*>m)%8`-+T`5^7wXyohs zJM>a$byz|y6-#M5FiPm5UBv&#FR}Ai_kBMqsLhsrUJARtA#)(LIJ*H^bj8;a{9=SJ zdnZO!etP7THfSRrj#@o8jeO_ibsRIuA5Tbf73L2{tNfAwdmZ0|_fW>)jJ?+Qgi|?T zo6Ff^DEri%Xq#(s@;XD`Iz;iEp7HJ44uT|rC_qWO#q3Wag}jI!718g(&K9Ox^|B*{ z{YcR{qzkug^v?K{l z3D^jUl4qo(!mMpF5vSY(Tq?f$6_s_NFq$MWv3KmlSL>Z#OtlLXdP;&3f)TvaM&Fj8 z`SC_Y5+eaX=3oZH0C~E@77n1za7YDNWZV@{M6K{5&QJ`obk>Y*_a9@fOyHLhyb-{&RUZIbJo zT4Lt z7I1J7Q~_^Hz&pis7t3%+cUj|qJ+3$tsFP@VpWAV6J7r>A=4s$d#qfa5FMm*A*R3i| z*DUX&FF#;mq_2+Swp1v--P~Jqfk)3h!iyG!g9mtM^Cn82Go+vd^1>2AEhVXTS1eMi zmsq58GPER4&{5XJR%K~;vWxTbPY{hz_vjW5kwKEH2t$}V-BQHYNAMC-(?YB z1x-e&DVudU$1pKE2eAv&Uq{&&Td?!G8v(py9gc2ZkrA-kh8mRma_nq@)X(Skd~j?B zy?p?sE`}6Z^8{Q@%)VjLPrpv^uH}wpUt=;0^?L;nD(k7*+r@>KN9q_oMf`~ui2uTe zZ+(nFZ3JIk6klZkX%0;oxuK3=xSK>0AVabxMS13o_`e+DF9sP@}p?PO0sA*zk#-GTV)B|lJLU1;RVKQxmt)MD1im4!#xCBXV0@|4t7v06Dto`*IdWl7P@x%$v zx6Y-#YoeFr4>eN7(Q0{KbZ1ix=ChQ0m%dH9#_DBFd|l(JMi5;A_SE0co`6E~2uL0Q zZNvzCRE)KX4z}T7>nv$>tf&ZxiW}YPEtiOHkqI=)_$n@~%?b&d!jMgV$fgjtDGXWY z83#*u%Vp^f_K0BR;Px>ENkCFTQU$cIh$klEjf!YxBHoyU8We~$$wZn)Jp4w)*w7XQ zL4e*ii^0w-Kk9WdZywee?z7o_yUKFqR7up7L-uL@*FYCpJk-bTukL`@vx>C7+*TVre0 z{d~5p{1P#9F6cc)?4pfa>qoBfVfM_;gHuohq`*Q1FrA)k4?ore!~~rp4mL7g$%D^I zk&zVAdYYUVqFxplHj8A$dOi}4ENK7ciWpK+H!Z-NYYuq!))BZkOy=41%d-B}z?kj8 z4E7*m&^?3Z;Nr5?i<<04cP8-=BX*`h;+xN6^i1K0I4UAf zacrza#!YnPRS^Ro?99pvuu64oR=-lGprd!i=j2P9f4vnPhv=`~g7?}DI7Q>i@_-dZ zyn8nQkbdeIPJVug`HZeOSgH(MA^-p&07*naRQ6gTu4N|u^y_%{Y(TD9p1NU;OG)Yl z+85~e>Y@;M&tBG9C+K`NG4B6b%#mx!k!u-wPKX+To$H8RQ%iWJY4ZLEk<9@Tueyn^ zis!n?-54WSs*9Cc4u~Pbn?uajIugWL#KCEh1d*mtmG&o2 z9Qg$}jX6bQ!82jb3=MK{83F>Z zynJ-y=h-K8@$HL;csfweU07tDDn8wO8x6Uq_?o$eFKpgJ)NJFWtcl@(x=d@z$cibr82f_B5^&({3MBmG|UT6l$VanqT)U0@Am5bMg20^SuBU*)O@qHpFYxK2SwZy%T#u{#U-H!dLh zG{PU)kMF=%9NnaNzGwCyt^&Nfnh*nC^z%JrUv62@I*i@~I1W*%JIj!3SJW+n7VFM3GJ*ZZOe|q~gZ-naDm>=YL z!C=VoaBss#_j^Du4DgMM7kM&OAS0@53{~-|#s+TCM23dm=C`}xffyW3q&ZixX)IsQ zXM;I@&===i-lQzLjxRM<(I}0Vb;`0V=!h+h)KkYO`^23qxW#uji}8CML-rB6<3_ez zJHYVKa}1tIpigd0*hMlY&XPHCmd;o;)pzfpym6}Ml!AY2HQv|Gk+*?lKf@hGf?LOz zEwvmFs;dc=FTa13Uy-R48BdHgRnm{Cey1upFw(XX5N8X&6(wfOBWc?>B~5c-Zpy2> zY-vcSGimDo<;1d${3I@pX-N1ywhw7+IUH=NA|GB8XFq zvh%@HCKB1K5NeXf>;xRgP0$oSV~}byG3O|@mSWouhR&Rg==6-u;3=EIk;G7;CYkDe zDzWVfQkh7s#{Dx580fI*ZL`qxSH`r>xsZz69QkpPefO%A*DbB5W%@FSuWC@lTPfnJ zaP2A-|I94`%W$xCuno68C#oQi*j9)#$X*F=`J~_I4*3C#+<;Afz@o6k$=F1ngrEs- zf~gfCZ(ihr-pV(JP9bBGxAHWoaoPrCwl>5F6bv@_tBFpVzeZ;`pT+O1!Y_gvd=H-u z0@fgb)N#Juc>?Sn`b;mS@%Pz69|^UI4KhHCt(w8%LIwm0zgA6^2!78NwpxeyddD!= zg|FeZa5?@(1OgU1ig-8q@a&9{eWr6xzgdvw0DxT2!{zmJTUH(Bja)yylD6!fZEa_4 znYRFu&+KF9f4+p#d3lo_EeDS74&({y)YpX+ayzP4BD3Ia22CR#_AXx zE5&!iCIYwa03h+LL+GtD_=1i^yiRA0WF@mm|d@ZWL`Rx*n@xCl#&l|U5mY-<1@{oL_It;*;d21!H;&n-eK zlkVV=&LoX>+xcqDL;JvazMd#R8GuduKnq{#hI<=#@#O%Vi(lmH7v3hQ?&QNBz%e;K zILyIKJNT?$q`m(%zt?e*O@S@kET;L+x$``$)$yNqR?%oB`ObxR_*$FFUu~)(0O*AT zN7=!D-X26Beuv*a_cmWCuIHR&Qt?tyX)LQiR!t1c#;`3++eVfoR8d40 zMZB_t9M99{uyh04qKr^d?K`H;T%Y65cu>nK^cic?V^??ONDle2# z-`6$XJ*q60@BBBEQCv+}6Uqny^%C{@Twkrf`C2E@8zy5Ytgw0YFi-GAzd?nSjtnfxf zyk#Q3sNnvOiTKJy0(CNhI(J!1cSyIJq&qBfQ$$!V1f@(t?^&t)R3W6jpI;B}W=uM8 zx_LJ5;0M&Isan^rcr(2nvPs9#FZii`9bc;7h?+Y@NADDiP1C|tMcEZ0l_oy1{$q5c z-{OgZAM=&ed-!tw)&(d1Dt5S0aO##YVnD&p%#t)IAR&5Jpp`5|xHcG>eYwRVfOgI7 zew2$v^s7WZy^o>)c?4@{0dv?^GsZ~QQ@gbJDEJfvRl+eWti9@TlmmJrvJ&EqZ-M_Yi_4A_itNnY3w7CK&Qm@#TsL z)e=-!)N*t%!3zL(fmeny1Y%qHNGw1AsIFd5Z|W_6k;w8ZHSYCQ9jWCGzk4rM`+}6& z!}J<98Ka+PbuS-ju49i!1S)vAW{?*y#yPH6aWjAv;EpoC>*?(c(I_QQV-;+a0Kv}= z#pV}96Wz9FF3S|2;mb+(#nWrz>k4shIKB*P6;W$zsjMA2hqghny_@)pXNh-?w0F!D z1BWjXdT1lw$rqREBe*q6Z+jdEuv$AvC#s3XL`arc4rnnV%`;dSEb%@~m}z2L$bv*j zowhxgSyz=nD1%9id% z#Old6_{NcEiB^7|+cme<Aae4-z~7SNu`?K_2<&^(b8y>2{Oi zunol%{O$2)sonmY+#j4~dX|&o{6HtZ*mi10$|;vA=mW-zB;NAMwS;pQ>9BXRLr8Nf zcLF@SiJ1l$dQ(XCK00!}B%CG?BveeYHekkS$qi#@DiN=rY-W(GQ;v~+k#FZJxYo$y z_eAhhpf%k_hrMZRo4RA-_f!!b?4iTjK~#v-TJ+LT7Jw3+B#}AB(?$~?i0EF zOP{@!=mN(H9K)g5SwySX&~}!Qe`)5d+j80RPpMl;v}?)`=8~vl36LxNL_c#qL;uea z?854cv|K2TIZ|h7mtGrU!0pLeLkshI6=VUyJKtxp!4W;dn<$hy23ZjdTc<-XdAiWg zbB;q!jPk2Wfwyd(=Zbw~wK8nWq}}nb6Pp2YJSqqnh!vz5gOQnrF&XoXX4=p6&74HYZ5(RV35*~NK+&k0dMYg$KbV>Q8FzRJa;DICD* z?ItzYjJI}jdq6~MZXoE5lga~nf^>V1vRDA4vzOe+SgN$X4u5!s6hu*)I0LCz#3 z+swA%4Ej=PiL#6mQlQtZOPp*5-GFH(!Hi=U(UT?WtKW;fTAG#~52}~3@L*#&hh>MD zCMCtP(UVQDiLdV>*2LE}-gRvJpby9`y8x^B1q&Fx6Re#-?Ipg zKdWOJ(7bDLkHx~!@*NB%AQ0W85ZNq``L&t_hk+K8ffkd*#c|=cuuK*ag_J|#lu03P zk&DCGf6CE>o0Luoio~{y#I`G>+f5Sh?BzGK-7~LHzrZg$POvLHF1~^r{c7|tfAp&& z@8Mq0&v`QWzxat|687B1N5vpM?;d)d|64xuLYSE2b)!wia&C-7_(tbH@U-QjUh$&< zm64mdD}R_r&K;)DjBww&>)7F>c)t6`{D&bA+alZ8XC3Ez!|SPwyk~zh51ju79O7x*y`?`IfSX=yiKk=I{cdUL^s+JO3V; zZs$1W`1qt2KsO8~#Ec3O>jZ=6%mMxa2MNeK0%t6PDnx3+<7Kud~-PRx;}fuwHFh#8=U;q14TOPZ`}q*x9A?o=yJnCCY#MezYz1m;)(_ z?<_v5bg9uc*C7VI7+r%DPF`5D^*WA&(G^EsUp>)BaV|^{F=e*bU&Ei(1}=>(wPvym zvC$pplBvv>)YS75OlK&|Wgz?FY1EJ1dbx{nRWn>HkTX}%e_PZDUb~LK@sp&BfL)}J zC_t_6(q)4&qRkqqQ$@fg*P6iCE|NVvYB``0+!AAj#&H1=CE`OO zh3*tf+UgKJc&fZ`cI3PzQxq~bf!St96*J^Y?8)S+@a%%^N}>7j#zaWEifMY|)p#nXx=-5jb z$!A%M6JE8bI2Q3*%sCXYGnXwtXw&+$JY6pqsku?3=6aQyW{Fs>NXOe2gPm8txbW8V zI;sZsTNeIkTn_P7i-<%w%Y>W9#fibQCjDnz(REs!IB&=QlJBS6$jh5J5c@E92g>Ll z`WwD)-oa-ob`cZ|x=Y@Z|0$0R9;IIhQKnXb15p4cPkZvaJeKSNF-V1~U^?~W2W>i2 zHidi(kNn|}IFd*aYC6Dg{MxT_|K8L5r$2v^itE3?J?VCyz3>#TCX*O~kILwc{F}yl z&Yk@+&kv_KbMha_ZTmO}{q8=>F&Se}XU?Wl3&ume?^pOgCbz+r1N_bh?j*cHX6WZb z6x&_#AR4=eKc2!i^wzo$F|oV0k1uW7H~zMA|HzBaa$xi`-#vVJ(z^W75AY|WIia*2 zd|~U31?eu2o$PMacI9fc=^0>`jua8%}!)=k@7 zi|@b|z!end;@2*y?s0aE+3Q;?l}9cQA^1G72oK(=kb>Sh39nWngOyyE1;upeopF*s zdYSNp2k>3L3BA1^r?|Qjsf~KQW|uJPbri?2Fnfkj>Zj?f3vQIDp4G`XxRIl_L3_bO z4*;S{jS4U1^JJXBSY&BN*FjbZ%(!)tfT|HNbF>>aH;hETW(qlmP~B+Q`J9T`%5oW| zC+A;(hu|H1kSoJ0zwvhoi;j9NW=NkMAlH|qU`DCDeH}9eg99LYkUdP8T{I=4hJSlC z>Zyz9fYs4Uy2BYP*&#jEy`(E)N~+EQ3evFYbmE7M}2OYDCng zO1v+o+=OIig5>!Ov5L@)RkztQKyK`GD+C%ttHyQ!(Sxr!iqPuXOfb+#vS%Z{rdis* z**JqQ^+SC%k&RL0MXG5l5(U1-s$sQU{%fqU;xxVAOWnbxtw4R%66@~uQn5=#5CjHK z>b&tcX}XRSmsEJQ7il%%iH!@dg{(t<9v-E|lug@HdEWYFmSmfW>JiwmTV~4*3ZBJe z16n1#{)|pv+row9{1PUh5*2~Uy(&%jddGy<-nUF%`-dE-epHxQcm+(OjRE-%KGXPR z9u69uh(E{qnRd-O&2#ZL@kD={FV=sa_o*qmOm`cF;q?+DMJfBjjVQGBWr1H}{7eKHkpd1Wpj8;=>q3Gj5viTD zzA{H7E0|<~K8j-*sQq|pCd(5@TsKF{f#6+x07yS|9KC&RNjF9loz2BN)hX!Mc^yF% z5PeJ6){!E9l=_NU&zYUqF?thAw%t;)N8YAzx&uK|@a^5OEZbNpa#a+mEQpoJkUMsE zS+-%N^O*7J5{}6m4VXq%gKw4Nr9X_N7!;OK5a#sTe1I^nx2P3uqf_@y#vo-I5_h zD+pGP-&@5uTS-mZ*RUzJw31i`OI@k5mPq}0IdaEaNzZgD^Ks%Yc8y2IhpUOKTTRpJ zMbze60%JwWG5Fj$GBb@A+C|c@o}%Zq3-tW>CC>cqaZ-!CoO{>A*LM|HSMO?#HRehE z?H-hXNZZdAACXkHU7=!^+X2n?T67#LkT|#WjYr#dFcu-a`l>|K(74CzR8|9XA>C%r;1Ay`5M_E6WggGd)yvw z*Xst|uNxDl@63iQZ(?6)7nL$p1`kl1ewhK&Bsk6T1>*wUPCW;GF=PR11J|)G^)g_R zDzs5hu49X$fKbJjz$Stv{pz6S00)Bg1OEmnzj2Qy5)JhdIX~H6s(JhAjkb50pZ9-(`Lk zO#WOtwC!bhcE{Yv!pk&1Bv%I92-v@WmEt?gk!WOPutvmJrMyH)RwV>Y0?Woq&Al!a zR0+Ye$bk((m^(2dA0$Im8gu0tP*d=;q2&n{B@Ma5Ev!@y(W@f*H0<2s6K~0}Aadng;(EdCojR(1sYpNh2A=H= zXj>a7Ug*PICZTt}XzSew`}~R4W!;Y1pG5R%i2h5(j6kS?FVz%yr1Jz1T@-1I)p18C z%d-H8G*)iqtHK4o-hGmXEs)0e%5QGo#5XQpFWbOZ z8>*-lVSZVP_=D}sLEoF+__E$UOMMSYywnQ6O7F;xUYqYY!5MbI0e`gJ4eOc0O75n zc{qA65psagu1fmbd)?bJKS1XXk7M1tgIJ?B-mI|=@^74^?U?~AzYjH^8~1%(imr(q zAbPNw;qQ(d%ValQPX-Y0Z6+`&;jfeIrT1TsGuS)2VUfUf>jzRfI&LBr}!;$DS&3(+4~RB6C-3%z}ftNUv2-nMlPR z6yc=pYx$wMBW&zhGf)~$d@dY0q!6fg@a9->@1;LAl(%-l*O*;>wGFE9Qq8Bft zjaLOl@-mu(d2|`efNajD^RXPoyB_AxA9{}O9{LBqcF~}z`F?&SdM!0GmfsZu^{(a3 z);%4?k%V|+;OdEd1;B9y*ziqZ0{1jd5MQOReARiqjzzs*=D>V0pi=f*?;-W*NwSBR z&IfWOaSA4O!9et=NFm>dxaU3x<|Vv(B!pSAH7^N*%B^ZOlN}sC>K%`1ZC2~}LlvB& z$t}9fEt8i0h%@dDq9ai6MEDaFWHS8Uf`}`%S+pW?qod4XQQ#)28jX5QJ@xwhc1Ig| zy3Qf;6~IpApelms)er1 zl>+?g_5=KC$w#WMfxp@_K6^m*RPfm?6?}GzGL@BW;ajCS*t811x~IgVLiF+Btq1t< zSXpN%%Mu`k{m9i(l!d+c-`G3cFjxvL3T62|fgEGLVP^iv32zk~7% zM;Yt~%nb2=eS!Fs8s4TDzNiL;JjLEPnSn{qAvr|lo$Hx-GJuF@Lmh#aQX^CSN2snP zRC#%3WU0;Th*tKx`wNihrRTf7^hX1ziU`;k!77_4PxQ$KAgj~wT zT0(8q(jDG;JV&NSqv6ScTl3R#CY59!?Wfw@nSvGv96Yhr@WGGZKwCm!wLPfasAyT76wGL6Z?g0lR2St5T}iv^X|Iu4Pkx;73 z5Cd})qU>A|bBR4>rz8F38+dlFN3M>dHdUdwO`k+?B~TkH5j-kJ*C0mc+^i%PgQJ_6 z14-nHiO;x9<|2P|F2VM7TlrMfLnhtF&$1$$sSq^Fg=iI##&cxOjrQq8d|NA- zoNIE$@W!aVZwJNipCVl{E#69GChf0A=)HTXX*TG4spMnRUZTlA3f}AYvR-YW>)8(S zI)Fj05xp$R?1+TFzT)j2O8f(lGL4fu5dkHtobRH^@ADp>U z9B!7WzQGmB66Z`>pUCt7v-jpva#i=e@8^s)S9eu)bybg&THR`?H6jT~$O4RQVFNab z2MpKp0GGt}eYUaRa(r)`yu``65BugBXC=n*K!UM@Nx;}(L;xEx2t&jq2@Oas(SxL( z=c(p1zCWs4YDq1ryVXMp>a$j_uHg*3&altk-~HR)pEfdk9ce?iv8T9s$pOxggfi;I znn~HSDu#Bxo*~|0Qgx#fUsz(mmaxDgPn&PVoh!F&lh#H!bNAbQPR(1!4Aa zEY;6)kDHG8UQU_@mB{!V<;cSaY0}rRULN3Btbv%lYO*DvWAFifIdC1foUEp1LkYFv z0^W|eSXkjgs5dS+sGt<9nDMz!R%DExPeI8&p=c&Z?2l3S{s8_@RiPapLC|yr_1*JZ zrJw`pGU23vBT)|GnRj-P%R`CB&yvD0OM?-X28$8rAX;=biR&7}nGD_WBtw}r z2~)$PC=@!J1RPEZ98QAHb4Bdw(iNYXNI#(wK#xh zSp}ihrMM;=%q+X{EGvc<$3Iv8o}CEgiF8`e)h7aeZA)uj}!T|l5TmwaB& zgY3Y!`ATZn#fcs5V7R%TWM>>LcKSC-1zubwA$+wJ1eVNf;;_y{JTJb!N67J3aGpGK zPq0oQSf|kb$24ubChklImMRpl$u?r!cV}pMVRmc=#xPBL$`4Lwk%%*peKOcKq+&MO z4A=}@j99C|p?^(K{UV70RP&$hcag!wT=ib8<1`ybr*#yxbb`U;;YJhx>mx6}{&Y%#NplHM%=NzPvkD=Ofja z!cp$TRqZ19mE|NJJ&K*Vy#1QTQ+UTxq(JUA`sJvP&^O*k;`t_GPt{*GQLsi=w&ScW zie#t33t*)+Y~wuTmjpyrg3Bd>Toe#pDt5-e)@F7li+l4@kVMjlTPK}l>r}Bu=gHcs zsnvs4G6Nys8RFbzkc$hELsLrt-&-v?G@r|OY zO2$|@!&h*g+(fYLOL2h8GZ*v?XB)Cb1-aXae7BPBx9E5!P474{tZ0=&s4m;+IQe{< zj#p>5qhZ-h$(vOz5O4-0#L<3MCS{XOOg(CLCRluri(TD$PonrNfD^I-a%wV zR@m;@r!n}>`NfV*OBypach`{O6IlBVKW5UT=ilcyqH5LIWG7>ANG# zbHV4A;NBda?_x|Eb0|&xKkG@p-a6k!xj3Rg;Lol^K%n~{eut3yoPV#!^NjeiFGqNAa??x#ry7+?QSXorU#^?ezl`Oy|&yPRo`Dl;F*wOqB`?|YH zOc4EhA@TKWmW7JAzH$*8OUkBHhKAt*{(ARwQ(9*}um@XddGHWfD|0uYTdtzCD&G&! zGdtW;vw}}n*Ufh^^2`DG$k#l1E`T#6Qnk%Z>D3lpZ)CuN!s={es`;rD-EYl)B;KT^ zvJ2oS6mb-aj9GdbI;7(^#!O|3w@$FL{Q;W2U*yg}*`z9url(WrX`8am4ysnkND6c{ zUw#6tma#dsOJn25F5K{%O604rLZyfo+0FD006DI zYtHu#V2;`kyqghZ3D??coXZ!S`fPtsJAXKNjDvk0Grm77G4g(kG!>{w< z1+{#5K`q5@-;9@SDh#I6>}Y<6Kb)AkXM25rANBox)U}*o+u|Bl78Orwy^L`=B;(ad z)t}^44$0zD3d{1sYo6I7ZOm?h$~?J4UVP1yXA(GrA`3s_!Zsi?V)6C^@iU@fXA9G` zu`bY;ksP3SMH~ep!f0@jX+S19Hx>hvq2+}%X4U&7M zbezoL+>E%^TZT|d{kYdH&Wf+2ne7Et%w`gwgM?Z-79PRNM^z71g2iqzMM8GrH)BMk zLOw2<{5q3lKyVPmqRC8CF4`bC*{pb3C5p7^k;hv^;;98XxjFNkrro67`ab*2obz@pdv#j)}_$o_aC-`Y5MMRPqv@9Y@AuAjM z{3|{-T7F8p8+ls;Y>~>Ma%x82;ZZZdauS>r0^AZQpsTNi*EIlznotRq!}a{M+hUzu zz)g}e=SiLHv_W!T6P``AsEeYc1{>#e|600(?>?X5^R-o!AD^GP)5_?WBguEI0PCnJ z!?m{h)F8yGohNwql{$7ss_p&}x!uDk=h`292c$2yeL?)xTk&ai#qNf%7>&tQF zwbwkeNb0f}l*ls^P(w#^y=A&GAKR~)hi%5 zPj_$)JuABE)9@XgZQ6Hd#j?r|IH_7CV`%ne=>c2+xtmKJKeaDA-;z-^G{_#za`Hd4S|g$4TvLpYI}_fz~{Ld-DR^YZo#6 zyVn2^y~->`x}J@~wQ86OD?`2B!!9wv(o^3F2zEc;N*ly1lQqsL@3;E7&lu)cCWIvi zgGMj^%g|ZpEakt88pn)IzGTR}U(o3i3i+07^O!coqZyqxTcJd8QD>z%fQz)pO?#$? zpPFgnh*a1Gd=UpagZzU40Spp|l-mW|F=|mDhkU42QEbB^wSVf#n8pM(D>l8vgZ5bZ zW@YT*C9~QQq|6=T$M~sH6O>4m-0bM*M>ElGbURV41c&2kijx+_VgVnQ=5LyH`oIZ1n`&_^ijdkjx8f^;fZ)g`B+4A0pU77L zb09V)@pYiTp8wG<^37$nY`COTXYj^}{ro_$;Ge1^L}#!Xki!MIuBb*S3jx{4(%-yu zfX3mu@%FV6X{2e0uj6^Ct%;Y~n)qNv4Yw>=jZdAqQnS=Uc1kuj2-4WTvVW4}bQ8d~LC@G| z>C>6n=M1ZzSGw-wHDN1X2ruGr*L^g(uA@{tNV7gdj1cQWw{o2)hzy*3=}jJg@%KF6 z(M4P?V9~-G_-O4lWRqa(#JZp7iG#a1HZ%gx3Tl^pf^F5c_~ybcaFV2A7Dr##sM|bo zT#tB>a35cVbV_(_dQqe8jlA$Wo}PLGJ)LINr?UdArQ7r!I(Gy@2`kv9jnO~55fo!$ zx^}!Dv1OIo83kN4;j1XY$8H4K0SMyG4WN9B?MVS6db74Wk{*xFa#jtxscDJ%^4=Qsv6>!vJ#>g#1U!f zG4TrXW6#oUbaRhx;yu*OhmWjg`M_)3)6mF>W>Xnj$d@98cr$%G)ZW4Vltx@|vu)85 zZgyzA(9z5jBO03MH&;ii_+*8POk*p*y!VGR^$rn`3%SeTp7Zo6R!YN)rx3l9P3b;U$kat^`Ht-% zID;ycv#t{N#_X`lU^>O44f}biZR(NZmx7hdAO&Z}HsJZz243wv$t_D(bNzza8QJDU zoQw_g(*yfBIdZNK_iQqpN%Mc+*v%a)R&55!pzuMde$@2(rrvF zE6Cb5V3AFDVUz8=ih!7%AuGz+Xgfg?kgcqkH&HaDp2_-0jV+|}X`7^%aQ0N{07w+$Sno{RySx!CAbUs3p;|Bik&unCAX+4iT{A>Qb z-p`j-uR$4jhF`t@CcY)N@wLqrr2Agt*@F-8Tjd*kwkn!a6;P^&sZY!I9IMe86K7Rw_( z+_82B65aeJ8RM`J;0|wq!0-{i*EC2}fW_`8D=g;CpGCzcfrC4pAyzl+<{x@O-1XmX zqwI~n>}YP}36GnrV;wYls`&n5FY$N}`%R0kp*Efu%DH=aA>K?6-#gL9es?8av5-4z zm#{(6c;@&!JRdLO7A)eHmoF_@NVV3%_l8vNSh}7%tB;4ehv@YO(2{YMt=Ymidtc?j z^e}rY7dOpWB=~8JfjH`%i?85y`k1M7F@h}N*<6RZI6FZ2?8#$1eC#bU^B~+=$(gk| zN*Wr!Jn|;HJ5TVrW$Rd6Ftg9Dw|ctx;r=(t81rZE^}yQ)=t(5lzHG%g-{qXhWay;Y zM@XH0npHnVA6-c(np;WJ^1M6AN4~yy$R$l9PoA8m{gn(IuT8!ICOL$xAL|8rBNxgA zqi1ZyaqT8U&qlV6{hwcSIz}Gm$y9_JN^Yb|0!9OQ0-i0babz3)0mlM-b|Zs^LCiSF zF>4|34{pNws*L){O?>|2O}zeZduU4566`q4pznQbt6oE~40vwf`jKP&s`YIK7DOq| zp#bAR9KYySfMajyY`F2VVZL`pYjm+yE>=lGmk4d`?X-p6D5)qEiUPj|jR zapWspr>1C0wBdBuQJh0LrFxGVG`KR@(aR z`%DrMWDyJp4oL+)ed@U=6}XY30qnF+x_;_b9#Wwf05d)f%K=$JkR?P#LU4|bCTXB3 z1#AhIQ8^Zx>93=D^yQZFI<}nJfJI|mCh9NYQw0@#YV^~}1#3?&qaE+YQX*7My>v5# zfJbx?5n$j@3x|dqINEgxc_>C)GpH`Gi28%5ZO!~h53(T`-x)I79{pj`8(&*cK9beJDYfW)LhW<7*WqRLkRS2SRkU9OMUDm~F}kFDEi|8BiCl z;%g;^1O?F2{XB5uI6LA7QGbN(MIukM46(6hC7)j$!n3&!slbC~8vOk58@${;e@P&1 z)5JE+tY7jB(lFS|-|YT9x7S_C))|U|?MTG<$$@?ID!h*I)bU0_E*BqJxcH3EQ)Z5N zzRC)!7Z~m0Nr3>K>QX}MD)1KMP{TOSyPBLEl*lt{zA)H6Jm?xHmObyh3mst`fJCHYTRDuRlPj)6hi7$9ae@c7C9 z$>RWjKe~)miCv;GaIlY9-wy75e8-u)^Hvcv$T{(~>$u5ak44}t#ZpoxKB>_wRV0T% zPrX6Iv-6x>OJ2pTm8-I^je7PB9iY~kTjDEZMQYh8u;?0<=mwR{kVR(j-08ZG3MZM? z^sET5r#xTZCE}~(m5AO^f@88-dq*#4Iqan9f36|^Y%B5Kw_+#fxsj-dct2c$_rnzk z%IJmr9uZ#8Mo>f?OT##pp7!pw;u=Oz9J4op(G$l?>5wt7GA4G$z|I&T3J4Av(IF!^ zWCVwV=yxKAJxIkKv0f6R0t3Uz~Y2HNQYFwR;7q93q9Op8YHE0+tV|&*ggtvjV4Q^LY7Ad00aa@ zLX>4l%OI&ZmXv`YOv?*YbUP5ePOvP@p~S^kkVJ&hKP2hYePIK(VPys48N^O&SksKg zok>m!?fp8T6yL78uaEDSob6$1(KXyn%fdRoztD{qZ{@EVnt9Z>iZ6K#o^NU3_hy)HFR!4^ z8s?#s$7wVjyuT!j|08Qb5I8!}!_N=DPJ4X*kLg(C_-yctBX80?+|Pesu@U8b2?ZvB zVcY!pz&_&o{NImb{M(U36uUjFEsmc0EayC5Jz+}!^hQeOyBvAm)1-54P$JK)kr!X{ zpTF=Mv0|tSuXPUgqZUIpNYuqz5vR=g*l!$d%)bE(v zYiUA^gFMpt0>#C*;2U~^J?Rmex*jA|d>dpk7<=sLjS z$QRkH%0P;y-XHS}H}a=NbvVx>oVC2F;Vcv=S)~wJuhOz}g5xKEqtZ#HJu~AL1nOwi zgPEHDD3VJ>Emnx!UW!^W{XFE}>nreFQ%d{~t;GM(3bT|w`9gR;SdRB2<%qty&ZmC) zAbM3)ZxE{HCbPC}S-96NCjR^(jNbVdO3p?VecUSd^GLdl2W^|69OBCYfXHG=p<7RJ zm7?NdOnen76bycmZsl=7CL%bvUUgDn#Q;!7xA(Bt&Z7uKq#$<)0u$xs6BG%xx&%QI z(NFeeMNt4dn+-kt`uz8i92|{$9ZG;TZtzJIvO=#YW`%T7fYI0IWi)~lHO$v0wqu+C zk?P3lsMxbHN2ZqmY_{--4g#IWI2vEeny`zP8yg`QB{#VjUh4e&r$n(N~kI6zPY1UJiFGH;|a#O-qvNU6>+HwUu9w(9g!Ep^hBHb5Qbm4wKe$_lo)R3OB* zP&dDCmvC%c4T8W6tqt7&_Up5LoFENC{x+`4&pM~=rs(Gvei!PVj-kvew*vddiCc!uW7)`%to>b!t^4&XJN3!j3sA$o0ozr z`uI#R#UuZAA3y3&QK&}wnk=I#8ozJc$8QuTQHPfsO8qQVooq{<;ND|x3>Y$NN~$Ew z26g}dAOJ~3K~(vOL*#>=J{~x>4;(>07R8j%Q-i*ca$`vf~ zOJJE;v1Cp};oBJ7WXOaUY}TZ-HOj8EMc*V1URlS<{ZDC>2&3DQsJ zXwpellFkrqRgp6X1;!9Wyo!qV)Ugmy1<-7ZxTz6GWsPHOJ0hhkN+=u54t?xsew#;* z?LT*$^T=4jy4j>HHq7_le2%ZLxrUlR_~I*!AG?Si z;&ZN|R^H2N{m)WTbRCQ35f1nLf}PL4pZ{HX9gEhjWATeG@a)klw$-ko*gVFwuRlUZ z*%!IJwjyUMs^f=rR$Y5$1m2kV>L?V6tj~VeuroufGqDk2c z;s4-RCdC2~WT}ibo`v`XK)sGT7hZR2-BM==;{BxT5qgtt_&lFuxg&(k7Pc?QHn<1P z2rrM+)9WuIpdX=y8m@C(Tu8I6tN?q(=UfDqD5M9i3H@Ion}kb{1oWPnnRe$0Wjlw) zNN%6I3*lboCVG1*!UdASO$RC9py0M@JX_1jygiWpJ2Y_d6{mn>Spdh1AdZ#6yy%+4 zXwBU?S1rJ^c`1qA$1u8w=DSEagXnP}hkV#+4XyP8p18s}FOb821W`CWbzZu(d)T(D z8Px^HyhZ1mvxW8rdXVpb{bQIz35Flvo&C75ntwXSvRLK=6?J^ztWUR8tQhBc3pbDc zzk1wyb;V1#yLj|naRJ`w2JZeuAALV;1r%;_MVN1_SPIeQp6t?SwtbGJ!mLbSKdYJR zT(J-{V8hFC-a4_LuGrDp*y|-RSJ(MqI>p^@JjXY#xP~>wWs_P*w=AA$dS{kPc4-{# z@8kH$FpK;JIHk*EdRv}6bBH58jy#y@Jzox=ZT}Nq|AoDg{9l=sIN3u`l<%d<<)tn0Amy zPJV+&PJOCSYa~Gh1V8fF&$LHq8hV0fh7ZzVWPh9NtO0almVqpu8)6o4t)g`B6%K0~ zS&}?~;k=#&le8Zk=`d+{Eu^s}p@LqyiV%GdQ(>h9h6CL=M>K zOn}jyo%%2N=Vri0^knD$SOdA0kkE{$kRyJgij0;>GGIYe0?Z_@^bLZ)gt}8pi+EKB zUL#41Zn0rB`ZbdJp~Gh} zmxBztW%B*KFLKwKtJzqx;G)a#XnKc{OpeX0nt-=@y0YS{oTJm(^5mIEoKpV2c(0J} z+2qMH0j;~{z9Ey&X}bYHT*%gnzdQY2a8VWdCVxGq?Udim`^POVJ3hph7JlgTdu0_{ zOIES{#Myo=LdaTK;`%Wf&Z}k6*?C6nvsg>XhlNPE6}2 zB}OQgYgpmf$sgl;F*KdZz{M>G#?!G^CsZX7tdc2Oshrn-06_A~xLguiXXcU;aXEw8 z17Tcd;;ZDB2;UOHv%+)ng=Y{!m2j>r!nv-90>Dlgm?JvYu!cFD!5Y@FMl#qINChfl zftvmA&;HMgt(PgLMQUF&YE=~Hib|ZT7m+@2e7;MS6Ud|Dt2ssSRSsv9C7HuXY;!Vo zm`$rO#8I(;t>Sq`wJzW-dnN`)x?AWfsH8gC&S6IxH+asyH?8FOXPd@OEyZHR%YYt3 zRSH=(Pa2x7o0vlhq(Tpp-;FskyVeMToIN&HCbtGzZOy>eEh>XyDtp>_pu3Q-g%nzP zPjGL)!0iPkXDlD|6mf-I&lByPR9A$F8iV|M=OFkNbA>9xOdUqm$40lo1AT*hp!!2x z*?WZV>^x4!&fUl_dmb94KivN^f1#+XEGjwgG9y}s9Zd~$SgPsMm59@qO5&9B&-pxg z&c>C$FWxic&vc$VXVLklMyze_#g<$WU(=}_+}{s3l-x|!9JGhK-_i&zS14F0Q&B6^ zQh)h~T^)_aIpS;4%IpZ{@jq%9>D)Q5=b``x*dQy*sFEIJf4q&_f^uZz2rmw`Q(Cx{ zGh;7wVtN;byoq87uugC|ew-0&5eR-t-Q}c*_j1x-&H{5UPj|hDtLPit><&@sDI?bV zEc@kk+&T%%fwMXOvPQ5y)?$$AJAa2rPy`&6PV`<4y=Us3VnQEsk2YTr;{1l1_T4aO9-V^LdfyYkMXodOHK!#_A22jx%5DNIb zlw_BYrd5+--N^(FY5vI4*4^kC(k(agiYJ7xt~g>XKW1Z z@)3AugVtRc3T~GvsgmgLFi8ww9>-&#%OW;lpGv&ttB^4>216|-o%?gIGd3PsicrFD zc%=0ndP={-b>W+Mw)a7PGz_|B5cF)k}zz{@;2 zxRC9I+xVFNFpr)527{JDalvhT!Ic%?0(D-qg8DbWGwLOb?@X1V>E?lHWa3v*pjrnD}aCa&OSs zPG+FMLo~2}y94J=VGo9u@yHp;#KL^3Hq4hM*j6xD%Y)-JKtW|o)%sKZxEmI(KV?}I ztz0|Kz6g*D`O?Y_+0`Tw|A#-qUl)3KUuy&Rzx_I9Plh-WvXXn21Hi;d#pZydq4AGz zy~JN_*h;b6d(QX!d%NbLRMR74nrNoUIi|mP^5nspAC!2{kU!IT@{FVPr8Gw7QW^$2 zeLYX{i-uP?s<~Jkxt{GcS5v9z^z}Z=L(O~XvjAlwAE^Elt}ArWa`HZY))S;cZ>1?S z0FI4paiusMZ=lz7Q5Cq2PZUJx8T=Q1oer|VZo9y8Wyn@H2L_+vwL}{+TOr_jA6r9P zsN^7zckDuU`iZ5x8ML6-cQYRkEW<~Nmf=TuY`6_XKgFtoZjYM%+bLRxf6J32CrH@} z0rysJ4y`3@k8aPQ(2|5LrGLgIb^29Gtj(bFO^uQ(RiafgO>gD4a53V}_!ne5)LK_AoyUnOe1Cx8jUj|w?YQQ7S0jw8_mg{@@ZY!=&oy;ut$n2S z=T-!)W+!>pkf@lH_q85GgY$5lTOEE2XjtH<9Ojdm5Br}xs;ca$F_qkN~bkaK0M z=`&_Kkc*M8W-^m=9X-#ch3tInKK?OQhi73gPEjM)636rgaL&a|ISuSdTXxJmeW?WZ z9eS1jXXBZsU7d+ICr5_osZ>)(9~H1O#^n*In?~rTH0-UjVGwC`xaj>kZEbTkAFJ$EG28VQGmv9 zO5@s+uk$eu@>s{iydvMmo#mf|_{02iXfGYU8*!l%({!pzFSJ}4zQi-^Ovr34`3qKy z$9bmn5q2f&_`F8}tD9c&20mY2gG+mk`@3G@n6HKv=8HTtqO+;wFW4mav#00B9J908 zdSmh5^4N&N){?(qxzxt4u3xcZq>L~4$Zn6D`Ao$|N@u{Hp!3xXC0D8xm5OvU3Z!C} z#|U|QgL#Jd+TUa{+?E3kOtXQfJ0Ip9Wh)d z$cr2kR`cm;SPqO~88$7iY1C|W5Lhxf@pTNjP)7F4XuTT7fDRW3X7Mc;jePCQUGdek z(o0}#07u2FowYo9E{f-qw%NH@k_5y7ex;Yd{p8RvVTo z#e7+DkT8e1UyIRdgIDr%r{bhu8{{QZBq7LrUL4`ax``Kw&5j}#n|=I5Pm@5TLN4OV zs^j!dY>k)nKK|1%(FBF}DIsnaOn$8m5mBRT6)cWwojfjtxl2lMPbPtiMaQomCcJDV zkX4kU!IT@{H2?=B0`( zI>W<9=yR=SdpJUY7~!UMf5T1abhbS~pL-SCeOb||vS=NZ?R#m-7%Vdsd`bJSxc=VgAk$CTf?qFz>d+9Y{%ujHTxY4S?w!lf2^KCZv+HCmEKh|BD?}* zMl8DbYDCtlL>EdNKa_jZ_$DGgWD)DP@P)Ds^X{X$QEtO%qgUF*r^A~l6*p0Rp5+3* z&vB>kJYUWPW&=;R|1+1s{+~TN z%LRZ03Lkeysj`RpL1vhPlAmTh!)ix4e=gb_)jD~^bn#`y%WlERU8)O=VG=mF(;3RH zXNcVDTEKeJJeclhrxm4YbQj&`5W5KQw{906E5<#UAr2|$uQWB=W|gy)?|rhAKY#2v zK}Q9DpX%lxge0wY0ZY$XUMln;2eOi^F*qH&0f8ztk}a=PJo=fRyTAY**ZP)9w7IPhzoL!rjiZ>Rl;1w(@9^0^IEm zj1_>*j&e3nBR!4$tS649xVbu7#it5oTE?wk zz4Ek5Ty z$YpE`gn2xjPam&maY2YpB?|#~tLO5u8~{cw2f(x}G|NO4b2q_So;-6+-t+anL;g(X z$pdIHo9?}rZuXzlk|4P`d-kuMIqP%Dg_|S^(?B->Q8|4x3JS6?)|nmsbW9tX%yQ-l zUhCh%EAbNyjz;!{$NE2lYuq~7|GEvjl{{nHis;6L4Cutnep+Hb+|tZX9Le`o7f)o z^LGDlcqNs>snl>)=te3t506H^mNPK&1ka4Lk+NmNzMHtQpavuUAdkerM?Y!YguUCi z(H|j|+{upqJq!wdO1;;!S=!6*QZ;N3ufxX(hkJj{+pf=XtM9bEfi*+Z_uBXAR9&kQ zs8OaSzK$YD0!mmJ6=8MsK^=S4a>O_0_u7>^2|xrzz`xOt|LQ{2;`#4L=gBjMRCKP- zaANmSJkb+y_un3@1DgH2t-5|6#}R@C?`RyouS@L(3)=JKLOp=(PWLJc;i_=_)8;Ov3J`NRrdKOuX_b2%LEap$4@9& zLT%SDDiU6F&X!h1uM?#-`;ayV60;IPDM->KML))4E&OcA0NtRvWEq8>Ju_IkOTnhi z7^Yb&;%=vdgc;+YZPU@&$nPUp^P|s4NIdnQJTw$%bTR{ax`#)HoqVZw3DrW99nFnA z;aS3R+h9N}=kD4f)S;t%uYZKA#War&sob%2J#|(e4|NaGs#s^N|4jQ{9%-&)LtiV+ zVt~7yDhV^e!FimjJ|0^$AP2-(*V^px@6MCQ_+xwXJeOwb2;%(P`uzOx8(dLbjzf}Z zjm2hs`$lIQBV87bfDJ=kBP4?StetcsA^t(&68)0yyxqChy0n& zlLzR0V`fAax8epfnYEM@K+m+%X}D1wZit`$95Y1{H-)l{KBN7t6wO1wWiQup=c2m^ z5aV#~kJ)vRR+A#S!O~CVRnqMwDcpd9PYzKP`Yc}vl$}{&nDrdUu04}KfK;DF-`hGx zD-@y&C0gpwiXx5g<`=u3A-Lf$xw$wuvZxCpNTbSn``+vcRXhUvjMye9V5dln*R#F6 zE-Qo%AD}h>h6T07Uu2Wq&Wl~|P#XRQ+Z}pVtWDPN$>1iAA#+1`6H2@RfT6^*9I!WW zXT>^5?c~K|JCV^gu%YecQr8(;3<)C6-%UgrfKsa zfE-egLkecX#2hgwT$;V6bHVS`z1)L$jSue{FM>S(oxePJ&PEBJE56#ALHv)0@!zlx z_mwqRDUFdQ_sm)uG%PeYV>-Vo`uMUl%=&S+O~Oo_v0m206g1$%>Vm{-HOx1a(_XQb zndVo(*y!llwS@`@ssy5heVzxs=u%P2vvs5yOJOEb6E1hD2$wXUTcomRDR&oT-`N?R z92%A)B6(1?K7ML@STFmzR)pqQ8sGX7{4N1UK_y=+fUdp{01~MYj*JZPz4|^>EaI9$ zb%DupL8jW{B`QK(lEF0SNyiyb3#pVr6^gi{5(Wm3p0R$yvRT%v^YLg2YEvUWwOy>2 zy@NuWi$V|3D>=Xl93a6_Kp8$q-gafI5 zbnjUS>(4;O=O{xNK1h?kj`eas$6^h{?3KjQM=;a{q~ovCfRg40osO90uum7Co#7<(Cjw0@kHR0F?m zKY)x*%1BY_PJ*BibS|P;1le}sqKlN#MTZ^C?o)KJKC}(&6ten9_NV))k{TFP>ZqKh z;09B-M+I0Ff8`~Juj7zB5{_b-@@;<15d-;%f*e%l)OtX02)L?TxR-kHT;WCbF#J6=d-fNa)CpBWvADo2}*bG`3x@|8WTcZt`t%3ucIL(&DdP$(w z7~-H%!21Dg8x77#_~a2C1oaH9wvPZB&6Y@|B7+Ga5)fqu%nXC5MC>$A=>}_M1qT)h z8$jczX`r2TyV^!pa1f+(D?-7cpp=IYL;)+2!5o^7-N59yH1YLJaxJlxM=IpoP7g$&n)BHu0f6( zF&@u!vs)?RE=8G>#BLYD*5M)xt>0c$Sr3ax%2RbXF`baeFbWnV1%qXZq+Q zU-&PY-W*K?8D7NV?aOeV(`T4H?EWr#{@BP+YaA_=^;4FMqC{_AMIZ#J-MeXgdDJgH zuz*FMTRyYb`*>nqwEl7**+;O5_xdd?yuy3Q(cV)b>Y2$jka=>Me6KFgd!B*AI+igr z)58?+Cbn1g^NT}&&975B?!xQ%zbY2uR?FDFc$kNdexDaIBlOv2e0FTJmtI=tLK>1PuP9k z8QYm@dg=`-uTt?<%5?9UnJCpzUG`T>ewpwsVIYj&tC4C-k#0(nK9NT6n>q18@<}+# z9XJ=ea4mM@T$uN9&2xDn`P~Rk1v`E2eWADZk$CAao@~MO(;=eRDyr4bJsFX&jMGC^(Z{WFKaZr_|9|%0 zJWh`CzVm-qbyfA5M$J@-92M(98ix{!=ONNZydHV}hvV{by%vAtf$v46Ic<;5#; zyc>tC<75-#tc`6LGrV93o_hELZ$^kXdh%`Dwb7orqKl zrZb2(Ba^ED1hWi@yc~}bud)d}nMMoE{uJT~cgQ?@GgR~|Dq6Wtb7q*+CO2E=1#{kjd0y2?y9*(=XW#ksvtq#0>5t_6j)|k@#uD>6=#Z#W$W^v#hh|!)c z!mEdPxHrW*p961t{P?#I9>!8vfxY7-2X&FHvWGtwg8Z$f5x*qltIpn34?i^AeBbII zFlnoixp1;Go$BE`$9t%+TgJWez}WBmY)KwIevAX&M!sL-nD!d2E9(*M7Tyo`@>)mJ z1?T0m;u5P~%_a%Etf1*S@r+7#au+2#2MT$`iDPL_RWTRJ*Q}v4tg5)pW(uuysNR^z z6_0Fp6RnS(B$3~2*LAeP7?~@ndbxxsvCn1Tjd@&2m?vN7an)n+*lemeWD1Ku!qe*1;R|ASOf}+at+na0~$(R7G$SDdT17ieIrSa+DAhPmr?)#AOJ~3K~&1{ zk;!zDG*#me@;X$eVoHTW^k^CCM2&tmg2n7Z61pax$c#gAkxKTFGy=$}oxGH)X3Yo* zVUf#mYAtl@t5_&TI5E5r95+%rRh}lK8RB4Q4>)gOxp_II;V0OWY2ZTzQ!CmVBqhbA%m4K8CFD_f?PI2ys8@7 z;M@|g0OEQ2E2a}YJdtv9m)Dj@tm(9eIyjtgvSqe2c)<|y2pTV?I{1ws5fIF5Q!Fel zujC^fdXu8d$C5#Q zm$tLfZMkq_*ktEJHH+CK*`_^*XftEErW$}JP9C_hv~-O`cM`G4dC}_23&tEMUjsHL zRW1(>*^FIQu*(V#*^EtA&Im>o*AkpMb%Ya)mK6q3HG#uwoArFnCBkZIgnYFTN+r&H zz&!r*L5nf;X46FC6)<@mC~o(JKGf9$Ne~Ix=9RBk3+Bn!d0f>{BoF5eWWZ07O? zWJsy6v12&I0{>U|nAJuq^$t4*9%Hxs6+Tq@Ir=-F1n<}RnA3@-zRu74-vrm)e5tes z)Yo{b|JOVvdijF48UQVGj1&AJpDh0rnZ#o})cZ^RRol*IO20`_c0Z4Izrbtp20rGH zIT(D5J=v9fwCr9=jZ^F%c#_8lTzsiyBOd(}kH7pFCzs#B|M}iBjy>@N|90TVXwp~N z?gF$R$J+DoWzPTL@F?|+yV4pmUKVFR8^Y|G^>$u-IcPiUl~I*NC^k*+vI(nGT_ zj4N1i8b^7$_cg-0i)(z#@vv`vyI9R?PXjwcKjtR}SmagQ=m;Q9F|JTx-^Ob7c^>b2 zo{;WiePAQzkw%cDtl~!J^Ssvg19oZ}PRA{5KU<$&tY&pV4KDqRZqw=5cjGsR^8wd<94y z?ZC+D*souNbIUSBtC`{7?74(FygblV4NM|Zi3h=EMlNzASNkzJEC{lMq3P(cB-v;Z zJ(eOH%l*}3sadrl5UgfmktQDKNmK7B;TA`lH-b^3fT9#om+9xUYXSE7=3>ZKM2c-JG#KKmT%l%_GPrcq2L z+-3#4WMj#eySV?F424!ZJ;?lP&*53g(*$S<;w{4@F@c=LNC;RKUA*PMC_QFO;zJZV4_k$tv# z%Yk{!8Rp5?d0f>9&Z_G5{GnZD>$FTZLec=MGQB&Ut`PzS6BRgp%SF#F-X3#G>I*E+Owv9U+`AX7_d~!sRno2&+ zqk}<8709GRgtUDeNHnm`v6asjCutvkgvTSTB#llUHMVh^_byfs{$CDQZfBj@3PL%V z!AE%7`gQJh-Nl{q)BG$baii15iNPOpM2(Q)HJ%P7xzV$VTRffozwVz>Ds|DUuj8}j zo3SQe;+f8;2^$*8tU#sDjRnAnaC+zoc0{|-kgzDL*zCKJMdC4@>VB1s*+neXN>|p( z!h%hB)x8{1LuBMtY%jWsZ1fqz;>gNv%oiug6&wHAUdKtp; z2zc%E4iD2Sr)d&>d_)@NSQ^s04zin#em^U$679W!p>a%0;*k7&RMhyb8s>;$0@21c z#lq?I0LOKm)t52glsIBucrjD%XNqhjM<7p>F5Hg34REMxOyo zx@~;9#6f%e0sgEn1-#Ek!+yTIWFc$B7&|&!`PacAdUc6nr=NSPs<_EI%}14uPOu#y z73AU87M_V|6uSa^vQXsd_F*>Pa06cecD(-<1AAH-8c35hNmxt01R4vlD4=!s&~^em z`UPB-ua5851Ct=|b~-k^dTS5sEy_&xiK2!nPG>{0W|l$ZRe7|5#$`;0^&)6m z7fIKr`I4&|Yvwf`4YpG5xgIIJn_;t+w&7izw%>&}@dVGtecV>|dFsSI-tGG_&xQh& z`DD=h2umN~a}@#l!w>QQhW2t}$$flP?qg@qBkWCVWTDG9?WL;`gW=9B?s5~>B9VCa zg{fZ!2?A>_SJP`A^Z5OSQZuz@=47N>`-$$@kK@LrSXa~_mlrbp)Z3`1e$PAN0+<_0 zF*lT8ZYag%&P@jvEi#6xp(i!8t|79+DYBtBS}=wlO`)eUm|PY_mle@v!8G!}=(1oc zuwiMez|xrW6iT-ZjFGY0!0?Q-Cfde*q!md)5dcA=v9OkVT@o=(LlIL9g*$mQEaG!l z<6#&OsViE*eeozwkyidO?Bix(vXT-;#~fvHWUB&P^myY%Vw4EY4$r;1E*nXXr0LF0 zPrvNJgbez$7#)@(zH5=u^av01HS=%IW!zVJ4PR3a@q~E+e_vIA!$|XL^KpKh^6*Cs z>RBr#d9}NRe>mNNcTo+EGf7TQ@k;wCUd;OW){+Vu^!?K4@|@z!h{lMdODMlSfTShpd$XIqb}NG&~@ z4*!}R13tEv{vn$u4fJcwB2k?^#*W@6IjwBtqvdOyd{o*3SOhB`b1`1YN}XZ_!Aq$k(Vk7Baqfz0xIIU{+KNmU zOuiOhXGXGI0WZ}&=J9(7(QZaA_f2a(Fp5l1n8of&aF}|*q0*6)SKe;rZkv5yEQ$`8&OzORl$dx3Si-`@-#<| zckpVwg2tJQM`niE9T!epjdHN*>mKctYCGTh{ZBwjZ3d`oeJV)LBcesaeG-)Tt$T==QrIIjq`eYH;4KM z>5pGrpe)@mh@~?)6dAYK!myg6KapT4l^gDGC^9ayg5P$YVc``gt|d+^BW2TE1l)p& z%GY_!1Auw%m6CbC*Q*Niggj1a)jcNd_k`GDm zqLZeGx?HeLo%Wy4M32v3Zwev+;V=U zG}BLHs8gpBu=+2&6<2)S<%;Ank9qv(fKppLBk~n;q*&y|{n%F5V_8;(>z0)$HAO`K z<2^E6p>v<$l0av#+QVC>V(w;;A7)*AJ1?l0ZB-qPjf*gOa+OlLJ%oC+2lZ$#nf4G; zp$nV^HD`+Lva$jPm|bv8bOi9iP*+c%yq?>>xxMo?I6DU7@6MiSSsX^Py|RDI_XJFM_NnJn@Q1h z>UX?4VT;HLHBEX34Sa5vgdg>N9As!-pu#KUn0pf!R zvKk0>8^7n6&&l7Hsn~o%4y&-$L^v$4F=ZW;}O(fb#mh z=d2|N|7I7R&ABq$x@jYI8(cXnhT$NgeYty-3TH4x8KuaDCE&r;Sbp|=PIc${2N*ih zOSCmiG8jWs0ZB&jI}vl}QXg5+Co(ey?nx874l&8L^(m~Ko#9m(Ixe&T&G(s3QEHmm^`mQp_j*OcXE zDo%xHFC9PMPtImt#IbE7)z>^LNQOqfE2|mB=fP3u$F*>p^hVB+ z-18Pqzm4!^UckKi(>(LnTPRn6SU0at`QJi3qPUVfKd?=^9>YdCkVnkpI_s#v?>1KhfyYT~)l-Tdm?_w!eKM>vw25Ax_g z+{22Q^u3d9{OlWl#rF^Ajx}F<4^RB>4^lhdy_$e|@^v0pEh6ogS9Y4cd~v=;pfM2r zH9r})a&z&WtX8a~GA*=g5+2Elgp7tS~_2RWJ#XI~aJBO;-?y4b^e2v$mNlHD7 zDH7ql#`6UW5)pdR5j3+*IKGoTX*oyAWi>43r7V&5u_wHn^@p#+E5F7Q?;N6F*>zV` zp*5;}9nK5%l+{3*RMD8-BB_v$amimf8K>l>&i83P>nWdj?~Dj3CBgfNlW2HZC|sOMfR=SVc&|T9p$yYU-Q(Ek55gCF(sL-pypJnxpOB-VZ~{3Vl_!5 z^JKr8on5i^gmT68oEpzj=&o zI5zPL>=uMsRJFg1RP>Q*VX11fEU?YS)2oD^>=!8rx# zqsdH;YN3r24H3%IX!YFX!^ytL;GYBSwbX1^VSpj<65Gg>58`u{4vGny4 zOj)pq8C2bdzeXS()6ha;+D}FhEudSA2vkPtd0)roR7u3l*!?1&Fxc+A2g}}_{M})l zU?N1PqXeWvCl-lvvb7u2OUH;!8V@ky z36jliB%8a5Y+g_G8ZRcYs7K$UDCWes6qzJa0h875)sG#Z(mf&)W5D(J-%zpYN2xD}#V3=qyO!ROY zp>?aM+T_1z`-2%lG$AM^Aa^tLbQW|S_1F>GUg$v0zejq8bZ?M!Z;;5rCI*(Tp!()g zrgN(>!oBpre1!hyDNI_l4C($b>HaX0_f8`CiYeZ zKJpCT@l&#W36`1OLtQ1h=Mdd*4v?N)h3Pt4I6^cWA$p{RZl{l;ZA&Stzk~s+^bCpj zj?npfH|pemb#nCG?IrxyaU2^~P_f=WH9Wcxel`H$m-yU!GG8A%njvlq3qm*8)Y zU|qVHvMp6-4HhQK^4K?{CNiXf=!sYO^FM!tmk09q%rMyA#;*1@cD?=z5B>WG`N0GC z@B#mnrv*Um+Q$$7_80u@y~$;GhQXF5cC|FI>!nxtVa+liyvjNTWSwOf`^Hcz~sf%)F%Jg!(!7mN1g^&# zdyF5n-p@n9Q+T|e<6{M7=S_%8@^Uu1yqxa;-`s!t8~h|41yZK*_`~_cox{Zbp{Wm^bcI9+zOcFTU0)_!YdF1OE&lPfhfCZPKxD{Mf+Gj|aaWN1(L|Cf8Bf2P2WZI)gNh;NN#SGn{zvscWAM$oO zgJdeFRCZw%rAg0Q#%pcFlR3x{H3=l?j_sr0w17&j8 zf<;Cy^PyDua$c`#4Xu9|J(WR_O&8=FITehwM(l<68F=71;=4`(U|U&>|H~i7@qr~1 z_BFZYfcz1!?5=}cT?9Zj7@gB}6l*#6FQ}y61p071mv(vKoThm}n1*~+Bpby-n)XzB z%)1vuBc$dnp96|X!GT72bg)DeNJ$9>RcIgVLbS+;nKbES9!slfWYk$ywi-Ig?gXaN zLW&j_V2Q_wrwouSxa;ib!4z_ppP~k5jt~*fFhT~S`{9^&v&lCH{%IVD~J>U`sp z^o*VbggiSg9gAa%O&@@s<4$=Hv9`R~5qgc-@57mQ*=sp-bYp}9xcN49T?4L-yiZV*6kAkHY6x6y< z^6tG6?4{>dZ_{xkG3_}!o}EOznr+zXOYto6WAlxudZPpMym*p$Y|7J2gr*XC^&MK@ zm`J>uJRY1&D)1~V##!kY?-N9W^#5irJtrrPsF+=N*49(Fwgz9LYkZ6V5%Z!d3fI<9 zxVDC(>#K0s&!>LLka%}LtuLQRyqesT-`@p6!(t^FEtwoPiTB@{Mog5wD7ya{rm-hvCuo!MkfmkzsYy=`x5qB_=NqIDNp5ee2TB<%SGgse5QJ3URnV*mVK9v zBZ~`tf64=sVkuRYKEUR&rIp-Pwvsy?BCEdYB%6i3FRI|!z~^q=FyS~)?HBoW?K!S> zmSGv0)0Y_3ClIdsSz1OGuShzoqtCQQGfQyVZ)bb<37+Zs+gva+Y}C1O-mp${1(J3O ztGNuPAR{YYGMP>)EdeaZlsZ@9iM-6a{r|{5J%%Q&A<7LaU#M^*2aof;LGY3yhD4>emizn`+WSxPU~h!9C{gSv z<=%?o5w&ZU!ySis$z0F3ifky_5D%U1q@=tWN3fM0(G;Pq#FEkl{E)CmMw?`UBw;c^{#Pd;V8kPY`b_wicrj;Gh758< z$QW-jUe-tz6q7B!^rIai$!7^H$4R+G~!g~yk#K_3Dw=q0eg{636yJ^B(79C*Vtq^I& zjrWFY2sHY~$i%-4C_MD{kMn#^6pePGnLc2+UB^^eL+K5*xJyTfS6wCc?jbr}9~gOt z35E{`DXK2LBH03ZNKL_t(Xi9$6&?7)${ zeCkBs>mb>l|{S zJe^&OG4y5=iP8Rr=)m{km6SA2nmV715PW$*-AB9WKf6=S2z1iNj?lGloTXJ3EueIB zEzU_Z#f)$-J-^vcZ~)L_1YbCe;#x^z@d)9oIB>09fD16XPm(wuA*lmca9q29lFD=2 zdQ63EdlTKef@1`~P+URD4K);$I~a}iY(&EZU*1p8$s7ZkeD@GNf%TLxIZt(NGRWY6 z93vVZSvGs{ZCOHK$)x9|XGrWjKxc)Kl{5Tb`9HD zar>Qo<<9l2s2m|mvk98t*}-4^^|QP)@;C_D6{byMGH+Saj1-y&7b%UShpUbhpoo~Ix zfzK}E=4q6+B)fU%&99fP~bm}S}%u(9+HS>;tFsJ?pb?J0#IvFOgbYBeW?kX! ztg~3@4*wJXn($I7gc#6*B*jKH7j0*?tkFFD0=r{%%L)#FNn^PLq{rriq=Q=jaw>oc7yTuD?mM^)A-Q5%v!Jl-+Cca#E7naN(9_{X9oqstMN)?{Mk6<1C6(?+)s53z{mBeapph(-z&wGv{ zi3tWWQJl7wEYwcXo`L>!gp}2VMQ~B)`8;15>51y21d7ne9TnrTlr8pq`0ALQfr}+Y z-(sSMYkG`62jx8c3>3FW`R4g?*?G)kwqRXeb3x?mD75}zA}{X8yr2}z;tHffC+^$V z;Jj%W@i&i?JlKLZ7@5T!=MdLbLV}e#0YG7~Xz;qOQ42_Q)wq}TBXlXKhq{RW@^=_% z4U^M~$zw;fkI)_lWMe7xXc8lvHya|Afl=~xC_Yv47X_^^%Fv_ll6t?Jf={l&x~v+L z$3g6s!*fHFUXkRhPFk??X-g5ee0dAcz3?(Go@(GubV8bidlxLCG26}e+WKkol!92m zy$ctxMozP%Hg=mOxH7@3+>PF~n<>98i zJY*Yiwu+4kq*F6UK(ujFWerU&Z9H(O3r?5ushb<|53~SIFxx3wTY`9Gke=5= zWF;9}aRDVu-N@oZVst8)91fh0FavKj6JJzG)dI_zq=_J6Ein^o?x#=E$(o(`t>o0Z zf`qlmLb7v^0YOLA1gw&T5Fa9VEQLuB(1Qsw_A}E4(1U$+o=$_Lqg#s+MGcpwfV&qi zV)yQM=@}a4*C+ZJiW-RFZu9{ij0}`Xa~Bvkn|m-T{Kd3IhS3cJ%^;85(V;g63l_sV z-&j6+V+qn(3l$r$CDZ>pU9GutN^5E(BDyKOa|8YgdBSvgp|G6NZE@niJeDKO^cb=3 z1VzQpyvs99WMAVU;)j{!nOL3lOOtA|>-t)_L4v@4LQ~vQ4cqRt{HrsHlT|q_i zZCXazv2c*su#Rn#GB(}ZLU7FdSj4tzB_+%A)u7{$%4;awmLTJOmT&${=p+xGq<{3eS^boLd={yBfXX;MHsla1O9ck(yi9OjdMv5QWCbQ`-44e;^$iR#k9 zz0dOF*GHAdHg5hO-{fy@pQJ!F*{I!o4}UW}z$gAs&R#%0`XWDkX+8gZM=55Ljcd28 zqV~BLX$A-#;@S5GxOv;z+0==a18#2EvY08{N#?;k`8toQ6sgIC*=2x{ui_B`tnhB+ zV7isn#h+riaEK1Qj{&yxiHfz93a#wy-bvK;Ilk%&pe0}6=Y3DI$NWV$3cGnW*hXd1 zpYj=tO!v^g@QZ<+6qRnrLWXEYV`14>_?Q&pVE;d{Gjxb5PmMqBtci_A8Kl4NrWRrnB{v9RjjLAQL;!YtUQSJJdp{|EqjbiLf`k zhjwjhYEmXcN-yJ<(hpNfD?9Zl7WWsq+hOCx;F|!1<1ca0SjQJCRzY$nuO+$&Tu1{+ z08P(O=f97;g+2Vd=OE6&ef+VwkH-f0(eEs$@)D`I6XD!Fm7OzBuwt_r!E}Z6kmoUv z{{)bV+$gohq?>!sz4J6sPj;i8>_(|B!qQlQR9t}bgDY@;a0Thpy(AB`k~r9kan|{K z7l0{>0&Arc<=SPSy^Pk;L1a%Dr_Y&Fl#Y^+hCw!(!iXg?rlHdY;$XGk~-K$ zaPTz>KD7p=q7ct#Hj{Y!1exyH4PYin`8}$f;`DXV&*x_x5oRu6A|Sx~rZ5lg+DBJ+ z1ea|X5Gl61sFXl4B%CCO84C4gc(J#McYxkx8eiUXv)jB}t9NoBRY-j_hQn1)t=&dr ze=GmcnqsY|h?_h%l+?(4Zpp$Vk@r#kAfVp(+ zH-Mlxxv#cnY`NICkVkwA^Y(CXQ`I%xRCVT=6-x=ghwy-UV*v5Gao*BS$S z4Jf#46Y=&}`HgPi9#N?Zb_f174yNk5OQj{$mF8zy!nv{r=jgI*!MCvi-xSB@!&Fc} z@ydzoidN+Q8V)-iw}LFB2p)-HvN{N?o9ygcFp{Q(cV*7H!m$F(4dpnOjlbJ#iYxg* zSseh@+g9_h2M$6>J*E->_mm{stYd_H{ZLIUFSIm~(X(WAePX9xDuBgjDsMx{6l&H) zQKbu7$K{Wvh6X%kQ!5Y!j~|Ek7|B6^Ea_kZ9p|*ysw}C;TQu=}x7FpWWSk9+tn|Oa z^P|(NMHk-dil_ES70uYHU6_uJSQsP|q!T(!G2MS|A>vrOfP%@y>lkFL3yLwn(}W73 zCrO4fP@G45X$j&d$Ca9RDhQl~cpZgQT}5GS2i+s&s(P}QfB;4rfAjlUb}*?jH2s0iM}4j0JN4~V$o6x+-E=L zVvz0cW~g(t+?H{zsXBvr9fRGE?>ax>7e?Npa6iL6D$e>DiZ7C3hTb3lR;<_7Q!w2W zRZ+&VvL4To{e+`{9wBmS7=N+njAlmuvUBsDd~UX341*qS`y<5&U^3K}a5k*x)`c(f!xI1r z-g*5Potyo+fM91JXE|_eRC!&tnh!6TqX++=0Q2PQJg!QlLYFt#7M#T!bPRINuhX%N zQWI$EQJVEKHrfJ6fMj0ILTNwU=@4Q47$JEnx0!P_ajAVJrIGz~XEkb(aVqsxN`T;{ z)=`ZV>LZ31^iv#+9HPj*48LPLw_Sp3zEG$k9jbGL=kVa=&P@(uwgZ!hd_y;wPVQjw ziDY8u`Tk{l={CHqldT|HS?#+W^j5m3+*!t=ROD1Q21ufpGR4KXz9dC79l>HQ$0~qi z+sbwugfCD`W|69?l&wfv7Y?aB_uFt`rIU-{$psMv2}DWA{T9eg3ltdnXXIWRx$D$2 zIwq@twNRW<(5-@ciNa;`Ua#|*$85u~aS@@5Bwt67ZtW-C+K*i3!(3O4QWHR_D@Lg+ z#(n2H)KfjAPxqm=^pbAwyWn)}q8V>SrNeOIAx$$93$|^*I`lgPyN%?#ag3k|xynD* zaMo3gY(hnkr7(2ktX8N-M#IP&h>C<@k#kDeIYOpuh`}GcO2KE>VOv{^^MltCf9p8v z@iQZ?$0AKU7?fFK%hIIEY$`6nG1SVAG@zzXytQmeH}k0Kq(My5rhB-z%tLpyi#_Q$ zV4_ZPQ88y%a~?1fJeH18w_-D2xoauU{qrx_Gs;E?A`?pbOo&Ij2C1rSJfRxV?0vBA#fmwBMW z#b*szc7=@V3Ce{{>76l*G_N)v;^Axw4=itBwG!j`-S3mK+X!4CRjjVY88|tJk=39m zK*0?2C0djT0qa&4m5&jxzd6y&GpAbTAh$C>Hc3Y~%)&|!+v^&5^3-uO!^lY#OHDD>-C+_MkPH(WP$_WF#q2VjbbJ4}>eX6+yL@_!9cA${ z>ijC0B}_I8l6mIjeKy!nG&s8Cz+U4x_aKYigR9z1_;9WwO0^G>);yT=m^ZI%qIGP^ z%?GwDrhK{+I|`}w0wc|sc{RzRu&S z#Fe0YJtqX~STss4n<6RLunH5mCG`xcYyw2v_{S_*v5**xFfWpI`OtOG5Lb%T0$gy8pEf>_x;t^@M(}tGJ z*;OQiI?4Vl$$>0--Y|dp<||R-J&$?({=>4g8oA6zrYm^voo9$lSCC9s5aG>ZD768U z>HuUkiQ5Rs>aYS z-oZ#@u-~{4`-VjrX>AH}S_Ij}rXn{>`j7K;EWo`EH}%m3?db?dqY2h4B3?%cpD0N4 zL|ZS-35}gG6*r(5X^v$x6wm3^%nWHmBaBSLsv6S4X5MIzpchTOucoI7VPTUZl2(U! zCzgf@apFWO3ksmQop)@N+^;|=(#?yR0`Bsaa-SK#*A}B!&((aHbciR0;RCJ;K6UqP zq#pVYPKOPa30FpYWwrvnO_Kl{%j-DRe1iLa+X8RBMMYf$#Y^MUMti@MFco+xU32~} zykZ_RR_pe0Q$`O`zkc%!{%*7A2D*w^01&6OUu*DYXYdkax@Qh+&+mFXCwO#b^R z+OT-0A<0A&qB1r?8bi~Wwgs!$F;DUZy{&FR-gX&R9szFhI*_MpK1yOLAvy-ptNE#!Mybk0U+-||?!s>)X7(gY}uVU0s4xBa%&@-rgd6{>* zF`vtZLNa46z7Qf&&4qYH|k z#&ZzJAY-=4jP}6PWSV?u7?2|mnk1|_~w zvKjxC(O;N=QKIrnB45Q3MpK&}Y_Dk-w?IEM}L8 zp&Lk65y=X+A`>jmeGAFKEQx*{cddlIWZsNu9`l$h*sov2(Bp5;`gx74j(VyG^;8d{ zML{YqKq@XkF7{yZI>yM@GY>Q{(ppZ5q-qF~2|O8gWCQZ}wt{T`&~U%1sWHe|h#P z{>9tC4Nirp`#L!?#awksE?|p&kcUs~2eX$gUJFn6b#gQ>@Tg)gV2RYrDR%*00n&;@ zZ~Gy>&|{%eu~1)BO`Rz>4M#R9DAD75d3P&y9VaPUvVnWdO>lbZxha<#b56bjirK?` zi`Vg|o325rFXiV)-{qyY6LX&KTtgfQSm(3YxTPlNQUC0z*2_-30(1_AIoLnI@*+RC z*Dc_Y_Xe3DMpe$y#>pSy7DXflOrk*cEKy@8_F2wR3Yuh0dFe0m6|$kE?CiUn<>?7J z@d{|KnJt*kl?{=z&VT?gV#&Oz{uUI^%mfRf-GL%OZVWMl7FEX-wMJS+%Tq&0F7vr* zX;DV;n4$YDwms?hS1fqMQ<$$?yH6OUZ0BTnY=E>K2Ty-!ENJp;# z@>Lv}7d{3F$mCW{D%2&pky`OF4kr3o=n9Zb?c+!`z*@5t4~y{*ALfXJ)QqfDP*@siJUakPAKD>4yn*Dz+%lNYO5T~Nad!5{M@EdVliP-1 zkr8AQf?397o}yEbH83(7*=Q2cBInep!6?BWzDDZ(GpFlcP+rvxMkb4>NQibbdVChW zY9~RE$IG|aDusvu3=-|(c4G<-Zb(zosQ8i7Vx1Fd7fe^;%nDTmeQ7U|A?5czF{@n0qe>-tjlYO zzoRpJ6_Kx_5ZyV`#kR;fL#bc!5EL2FX2v84e5htI7L&y9y8C(RMDyj&+8B1Ww6VO% z&xfk(XzDr1Ve$y?^HE-pgk2W|5NAWNEsm4Gc3I&IOU_YBNa7_IvYsylQM_mcr>|+o19FLJex{(8W?J3 zx){V4j_gG12~m-!CA}{SI%Lz?2`kbA7vR&TpJ|s-Z_jIwnB-}d>N7zqmKgW`HOZJS z*73pQXYH0{6u!QPL4c;W+1av%#f^Ci-3gWhGAnLeMeU^shWC4nE0t@R$2{f?lgYBn zg~MLHYw*Chc6!rlQU49QYYO2uFx&5(^9eh-(xHiH+Rmi}38ggY3~F zgehlh@mfkn=mwnT0O8QT@PE@mlBPyB7d7CQ%h{;zy&7-U;?|kpi9?v{iopWj) zfP!Ku5D-w&;DCxT*ok)R3??St#7=i-Se^9ko7=13+nz_oYm3T1KK!qnd0+YYe}xZ?6v`0Saew)`;SWu`ue|B( zGP12uXl!(ZtC2Iw#SQeNNj@_(*JR;5DcBce1`KjhgXoFEXh&29JWFJ%Z?mDgL}dHI z5%P-^c_-qyaV61TzC35!Gcq}h_5n1;u{#hzkmZ61t4Nr615?X`p2r-XWhxZ`Tz9M? zA4?Ja`TiLbUeER~l|%B_5Z(6K6JJH~0l*g+!^+q z6(6Zv!?tl7R=KZ!SZSf4;EUo*B&O1kX)>5d;P<;{T*Ug+>a|oji%G~} zVCth3O;JRcXhg3ljh$QM3tqhvVCcpefm4|1J?m1-<@1-ROENKxoK`48JmZnC2KiAL z7s9M5uK)&lZ6<6V88DNK4pO{V(SxK8`hG z{%ln@@}7!~;}ph{@j15h5y$rPz8`)v$&1-i`aWD^v?d!%efP7JD}xb%^Rg*FbBHuz zJD^Q1@)baF3Rrw1*~t7yV$TM$LqKtyi*hydkc;Kf;xi|>j%Gxp7u5?7f{`=Pq6Vj* zPI3C_6uw3k-wFl)3iVR;(TWr)GDRHMFC~5G6uB8HzBMh(;lfwi_&M^D+lKR|6#yij zKSpZL%tyBwsVtJmhU{~YABbPlhjyx5EXr}{N3Rn2>@6r&CD=DLklK5EdfTyEATlMH zXI8MSsY4EX$w!lD?bEBu87^tynNT%Vuh?buOHtvM7!bnN4GM z=TOpUPXkXCwGXVq<(OWZD+58M_NL@wD5$D}3WX@tyhb*!0n-#Mh2Ta@F&ef=kr~E)=QZ?yW5;}Vr8@_l!=ETI9OHpqk zIBr-5K(@JUo_hkhQ{Bj=9_*_ZU0vdhZmCFIdX0rqL^eTQpiA(eO^3@Nj@^fz@F2* z*{ou{+s$L&e3Ub~3$fM-XJVLQ4stHU#7!WXYHa1Eh`A~5Lsc&OmydD5Xacw7#C#DT?|tn zZBZs7jDBMvNd>=CqtK=?p(ss*eD>l+bp=@-<)J!5k)Jb(AdLyeF*36hVGAINNY+ss z)3q5nZ#I=x!RhI@Ga9SYjs+-`V9%`p03ZNKL_t)TJ!!;dB*Df`<4xDm_|so-G!Jwi z;@5|x+_c35={{aOYdPTIrY((>ETAB%g-TI;EppY7*A|AzC0=1yUp)0J-|u;aW15D` zx{lj|_p)A<0i8(l8Fmc3#Ial&q!5c-TiNDcOR1QqrSEGzuCHU0{5FSD?erRc)&#b* zJpT&26RmXW3QPU>v)x_G$Z${BkFulVQTC+=L0Q74lKZ*FbYHf9z+7P(U>F6VRglLD zuv4iE;0Q}3@_F>s!Z7LkS{PxI-5=&H?;$Fel+U2mLsjoV5@RQLF!GCgh3 z`TI0oyV3+VS_y5mpn4a$`B;%6R|sld2*>ryNbY%SzPoZ!)cQ~%YH}#W&<|go)otYy znS%K0ccKr(K%cpL`^sUxe^nim#HZAij1bF7ERzmzGfB09C!{B2z~8 zJ5aikWYUn1OE^4fBCQ&-S3%ITq$3)tAfN_)1i~6dB7@6k5`Qy=ZnGeZ2ARPOjv$C7 zVcz?ZTd3auGT+~KnlqY&xU3G*oyAOR5Hm3P1~JWL2mud5tqb$Sn;01ff(_^&#H{uq z%v=!ZW%a?!AtCK zs}Q_aMqVgGW7&f0RiL}@8_akLJrA>EZ!IBtYzU+Z=TtUJEn`D4Aorz|u10UvdA%(Wc4|%-rNq*n;8Mc-SND3F2md^)y-9%Ic zWJN&J&z)1!I8m1q!BHlW=+Mb8@NB*D5JXU10?KgMg`t^b`sYq`9brWD9es^k{2~_L z~fl=4B#g5elvEhPP+CYN59=K$U z3^N`fb*aP)ivwFggyCYxdUu4J7Diqu2@j%zC1iuQhL2!$h*ZqLUV4cgnM)8m)JZa# z2SLKRs0Lr7xJk z(o068_BX%CFJ9^-mIsS>33uN!PQfg-oZD_~O0CwZ4=eW{d7tj z`KYgnQW221vc-9rpC_B?^@aejDyvy-bAbS*)(|$y&T3~JRspPP1%8_8%WG%vNG{uE zwzz6>3E=W>;ZWjfcAt*1wcInRs^|P-45t7|Drm!l9#NdU?Z60vI4r=n=P~AgK09F~ z3s}73S&M<}K%TDl@AHJdkw0=RVfx8yljzGx#O?54K=lZP0puj<+LdAOjT{xX*zh;a z)=aU;Y!Qtaba(4?_2@(*d7@DRePVU(E{V-1;PHqAOJvHzGU1SfGR2oIR}-S$g7p(*^Oh)J;B?!pu(dp(crw64?^Zy@l_=>#(k> zDMX51;A1&4#0B8{YFoDm%hC$WOpe%_Ewo8tzF0fU!YhCvv!SMm4Hx-yrnzlcd|g5O z`9qlL*?sX4(W87V8{@DkvP^OFZXwO185^J1%UL5E3`RTn`k5|XP31swvLRf{r$b)+ zqRzq7hxzARDfcKbb|tfP>#)4Eo==x~@e6>SV8@x0{CF@XC__(KX5%;-O$S3&m zv1VR(SFo(-7_a>DKk1UgxEny|8YDW9L&Ji)X6^j+mfV{CX&aFt2#iS#>&Ox7DTK;3w^JraIOs?J0x6U7oGc3C<0g)1<%ER zi88W~A=YolRg$N7e+O|Jh=CHqRWh#L94|ffEV~XvYSFptQ?SXHCtAs;tf1zhD}`t` zFj|KYsywj&AbFPstfh$8gqiDX`t+zvSr8>Yvvvc&JbsiXTaIH);yUk1rU}?=$dm9# zTjf?c2~4G|hQ;c~Z;cSmq^7Voqf)~Q6RLb9jjn-uF>NiEAle+6LR|1Pakz0+DGUvZ zhI(r^sbm=UrRtICDUzq6=RTJNaE#96l5N;4?9f}-cVcaH+?UhAY}k3xJzsBO>k>cpai?;6xk?%MzXn&?9v)6m;8MO*(1jo7_{SBUXE*& zV7_sd#8*6vc~_I2r(P(W3+?;%&>U?V_GcZ3e3XO#^$WiC%<%cOSYhiu>&9KQa{cve z^dIKAL7?v_FTQ?)ikD6l{wS5R_2wFiW%VY;0+FGL6q!3D%R#h!>0Ig(LvmZ5z*2pN@!F;F9p9EfYcyy6BI!~k*ti^Z7L|pf(_e<3N9$fz`5X2 z1(zB+ySyyA@k=_1Sc;6{!CWA_YoyX%b!7;!ic3HpPQB5S z2I)RyUL(s#3VRxwiRu=x2d6&s$qpH`Jf39W%^cNt+OhZ-&V8fESn_$3mQxy?-8x;} zc@l})d83t1o21iuy1VlnezPE^1cMS~A(`qbnNYAeq`DZ^rdpgguOzYa&H3)i7;LL* zfPx@7R~T6hBauaPT98XUXzc@2Z%hyn&#xGC88Qdk$-Ui+x+I9Lsh0G?srizMZaYGE z1aq!)cZU%q5%(R1!lbEJ_pzg`or5uhe{NIxpJAEj&a|;Rql3lIhpOw@OgDdXsvlJX ze@O!$Qu}$NqnEZkI2~agt}3TG*U6V#2T>)RZbQWHEa&0!64ZD*k97CbmdlZ|g!z13 zIf>5U$XAcfjx#5CEUx3Udby{nmRtIwXlMFRs!DO*u$=gFug~6&FjM>>8>L6`^N$uA zNv=M#2NnPWFP+UBEGrAK_cG8qi2ru&+k~c`W6TD_0#o6C#FPuX8W%;aEWV_^a3BIFC|NBPgDcuU)=Cvo6rmt=epsNnq#jcl#1 zr+OjI1J9TVoD~k%25(}Id z9ymt^NJI?m;qlHDgY3~`^mop~eM_|CToFcn>r6qUj(5{{B!+9##Y97c?9t=&wT<*u z#J)U?b+o7~D%chWP+w0K+D!K`a43TNroi~g5XnCJ_xEw>_t7G1eK}6c0P!q9ivFD^ zaJ|2gi=GljmiTK&=-Quv{io=1l~eP;noA4I(?BXI$6MJ#y3GI#Qio0xU%qPm?dd6^ zueJ{huYk>qr)&~oybdqk1}Bl%3NIV;Eyw9T5}QU zz<;nyzK`3*XZS@tjSU+sO70<;ewv-}b|Qv`%l>ZOA83N?PM#jvPoDuc>n65&{T%Gu zPet$nR-60zQRg%Gf}i6qYmB`;PoVq$h(*~a_*J}>v|u9~elOcC<(xYG2zv}0P{)Rm zU{NzpOX8>O5w>ujbM~WPrQu_tI0URSB$h^xYc!vZQS%-<{*}cj*o8#f8I6|K!hgmL zM7BXXQdU9?3+tma= zK9yii?HaylHE8Z^=0|;AKJSHuW^hgQO1@~#@Z*!Myqd8>-yq@gm3+|&ZA1NZj}n}_ zBW*lyhWW=8L5R2UqoD*F!fur2Hk7K;v(c~2Qbq1aKFwj%!h2N*^@0Gho7?jV-VzI* z{B1)Kx@{po9STq_0hTI0mWlE=0};9dh3q8NTFQ2x9TiZmP8LgDbZ2z1#Mu!wSYA=X zc9#{fa%V*ayPD6iE0JTf2M|Q6Jt3|Ss9^KqFR>uRtawUf5J2&&2<usH;5rTdyZ=3y`R>|jLLs>zIed@$%qM2D8pwBAF z*Z@x)KgFi9AeAl$A6?$W)|xt=IC-1{Jv}5ZvwmMPO~7WwB8~qnTO26iy|s00EUN&R zwtwZc#8(t7H38JUiGl#BN9f;m8rSwZY@<~tLnC$Q2<^}HL1h?wUpJ|%ye z2rlcT{jDrukb3DLU9L5R8r@^XQbQws=ndMQ>E>+gb)bUa@(YDpxuOzp@C?1Zh0p0% z4$x|>pz?-tETewE8SSR~$%72^iKsq_T;vi(w|rqjo7zeIemFw7_Y|!^)2X~?1>W;B z%5n*YoxjyxjKyf^4k5>QJwg1s9~u6R3Z8`a)!3YMXLXx5x3`D|MGp^^gn-u z-qv&32ezhqToVm@1wg^Mt^wbP14JSK8nNHJ%<1%6DmMf!u#M2$PSF13apEHvne4$; z??C`Ig)4#CDLM>Lvi?1Ma?3vcpBGYq#w*|Y7yi5Y=ltzGHMmADvOGK|q9`Ndc4D}&m%^Ic#<40Wa#4!nYmuuCX`y)5FcK-b za0JDRV#eszV(8eAfwUecjT@I}!zbI(Qa!{?@CksaF_;?wX$dX?CU0S?5zqCIHY*BZ zu@NV3Dg-@tsX?nFZ8M@IGH}PDIjM77|8KO}<%y?pXc5Xw0ADi6g&a zkL|;hktQu}F zBaHbZnKU?ZG{@T~bEMM?>)tsuWN_eMmIDW~gn|;w8dR1nE(-Re@!oqqeP4NU*1c6P zizs4kn)|5N5zM@S5ltca9LS{}a*52O)BgoUKI^kNS+d7^$h^^kbyWqnRkfsEdwWXl zh%WoQSP!Vxr8sXc6!b|QIL|J^%+Qt2Tr{ zLG@Jg>EW6qTIV2o_aJiEkK=~rBzMhD)OXIzlM`e@XHCjQ8XQ*CEMOXRXEF@NPxGn$ z=atsBx)?Ml{7yy1d3N|BpbC&P4H9~WK~rYA_1tt(m913E1}Cz);S_Tbry^sKM4+(W zBvn3Jja(2#F!c*Yx<*RFR4nJbv;`4s`S8xO`S6u=(YL3Sc+iC_Y{%}mW3|s-@Pr@; zR900`>-H1RX*_jehD(vp18vbb?a??({9djt3sUZI@u{XlTJgS}{rv0mJzUBVqc@qR z%IyR|88xi31y}KB8#YrpL+=<(OzJ&;YFu7U$1i0@dU2%kDgxDK=o*d^&9@xo#Me%s z25b~uv2?V-6uJ(0%Bi|JOybFN;_IAQz{z%eTUL-BIKV(3peGpk^=<}V4&beKBN;lm zfhd{I7`f5fzwD;uwgz0|37QrUzV%@Sp6(uwXw^u)c97$*AI0LgAOeP#COa&)O0^Ay zs`_Z(H7u--``Z<4>sM2q*vIMpg?qf&cZM_nc81P?4|~XoDrw}R3DTX3!hRjWS4G8* z;aM-xB~>q`{H7SKFAR_e%!3so_&4mDta(PwnMoCIw=EMd91I-CF@h5BvIm$O~y5o8+fl ziE)~ndB_htx?Z6?^a(awWY7=r^UmSVszzsg2hT;{rq|GrmE~+M+0J@ZzM#EQDP1Ug znLo@gyIw%ED72+ubNMG&&tZ1-J=!j_r#*(?0k6_hMHnj4Qmgb{-F(K#eOjz`WZRv%HWe?;+`0lZr~~ox2bje> z1&bb8G>7XE%2gBv#w-cTa0~Y8$DMQnWR>t zmoPJL+Jk5aW#;U5e3H21jdfK6m2^RrQT1`rz*O_J8FdkEHd=lMT+A|`@FpW#i-`T@ zTf{n;k4A4aT#%tiKLwjshY_ii#(v?J58C{+<#FoF$F@diP6WG`xyQ^g-9kDR46809wQRC zhpy&g%8TNWqOLlWL`!$9m-tSuD z>K%yzsDT8A;m%gr`Cw@`TwiAs`NNO$+s7RM_;o0ecZ?-HNHATY$>eQl0|Rk112wLF{eHTSN5z2EUW>_S;f_1z<}PZ1&s?s;`fV2mmc|-3R3ypw)AT+y$fa>(6YC zHYtA7|AAzJ3P3Or9m{W^aL@1+mcK0$!Cn6#G%>|pA9${JS+L%bDaALkcSeHrvKljq zpRa}AqiF+9_dro*mvlXe!4;w?f-*cYkts*=;z&6C)2GPT0gnxwV@i}nln_00<%(-R z&-v8F5q<4$(53QwmWa83$DmLDQDg$uAczNUw!BZ;d%n|;V<1Wlx=I~&AGCUc>ehFM zjELXUaqI1m3Ixz7+f4j_$CM-i7|+B`xF69TKL-%S;-m-$P||&8+Rp=HOpXVfxW7j?b4)(GKmbg1rO|a zvP~bFiy=yZD;N5`@eHcXNN7&r&>-r&lzH*HL`2=47HEWfjos@TiXCFa@%w*FrQGA@rrAQPUQTb>OFO#}D9Y}L z^*Y7nnHQKuDygNOE;1DQnybTh9$j0dQAeXBiXckE*jkJ_b|^_7!ds9|F3G(9W_z3? zoc1kHP;()2;`BClrU@vYV!Q`9BGR_ntxwLq%|CRzWfd$ftXMcNMtXl51)WdSuL`tK zL?}e0EXGEQe~qK*EbC9qx&Gd>cSW+rBv?!(KwqA2ruWQQ83$=iQ`@z6h`(m#){cOB za<#V5Xlwn~gWN^Zfpm~Gz%S9XZ&OWD*9_tA@J3XCQeAi#2-Tmv34?o0>gN?Pd9qJN ztr4Vmu_)MSUFi_lAkb>p3}qV|Tw;X#b6J%AqH*u%*LBaTx3MhdERKJ>>z78OJJNOC z7W=%p=HZyX46RVU-I_Q2&C%C~6OfzTTwU6Lq0K<~zg7XM%0F&My&$1sez7CHD=&NX zpyu$Yq{#s8rsINu&zn$61uea94R7bbbQq|iJv7{^CFfJe?orq%AqKOEnKxjfJNFKH zOCP2ZVQBCR(x2%o`FjfwoGM3jYr?Iw&|wTN*?aew7b2d>Z-7GheRlVSdS1 zP+xn@j3YX}%Lc2QyzN5z2kE!*0=wGCr;nk_T1;me{8BCMm%_wSWe?`pvu&sQi@s?r znhHUZPQc!|!$Fl*=ILnwZ2W{Q*IcY7s@NpY0J1KtPF4F@vA0Avp^X=JS4eq!b@A*N zhCp|C^8>+~=P+;k(&QFN^$kmX+hF|CJ&SJjADtEXvNW>_lKE_pKr~P0>=Y=UH|8G) zLWgu5qNQQ!zQUorsp%bKT%%y!JabDcjomD0(KoM~JJxuy@%f^A{~XF|my* zPbvvvzE0uM4i=3x-5@4!cR25ML88yx4r-|QMU8=${oSCLa9xZYs{O}ND&q%DpO{;G znZ}>2YF5^@R}#SMYhE!bX(z~l$%&`KaijpxXfNEp1(yd2kkxCE-`6=6hAf%Ah}k=w24dD^9L2p`ghu1yb=f?UyP+P*o=< z`4W75JPs_;|Az%A>I@@gcTanNwKHeVUvx5ny?1DuY*n=Y1MgX#NzdlK)vkW2A^j*= z7BXsO@Lo}$YF44v_p3^^+Z^Y8JdBZxk?8RQ`5A*74=6GHl278D zB-Jo+MEG0mS;($F>LFCRhHc;|j~?&V{_3I`U`0G$L@w{t-xAY9-4R2Wu(vCgKFaT& zZx&t?7V8vt%-wF0=Ib+C!PMT|Re=h|r<{nIoz3`KPEhSbdd21WFWC#$b^Dr|cG zw?w4mWD5z9Cdrpco{peUbF}KWW|Q1b1XEH4@;?oov1wZfUN#~&aZjAR?{rl2VP%kS zGUSrp8N}3BjNo_=wB9EmVzCvlY#$^-!=K}AX(%m*d1d1Jx9XFZw!@X?Utl0;kZkG| zuJtlg9-^#zqoLa1l~-IktFgD=Z5r+I{QV5OIb(?pSL#*!IRWq3ILC=Z9Vp{i*wRr~6$^P4S;9gr?aVQ+A& zuXCjlwNkr1S$R%Ad$al_d&7enYuzv+D?&$KR@|AB^t*PqWv#WwYBuAV%ykM#qGaRU zzk8qySx>OQ+O~2~zGaTjX&oMLd}Vz^GWd!s>bRtFP&s&p9x1!-A$ z(fqRSQ)o=y!~2B#r3~L#|FpS*+gt!VzKVheUS%QNo#SURY>DX=ggZOn0*8G$x5k6w##V4#)XN)}jMQdvj+Oiwut3qNN_!`BFUBQwsNy~G)s7FK;@n=$K z!J5E_e0jugstE9r<;UAAJFzWlIzI6Bq<`PW;{1@_k3mSUnzM*Mr5B-~YBqAO6`Kw_N`CeJnmkkq($-~Y(s$DDdae3v& zSN$x+Th$7v1ilTf5;ibRk*AJ-zxJ7z0Jn84Df?~DTtG?QaY_94-j!Wh zJ=mG<+8;hPv#;P;q2 z>Y#~!$KgrE@XZF=%JJuMk0$awo|*bwk|NyrEk`d}ZV5AF5Dr;{U;nNPZ8hNCxvE~~ zj1mDY`Fo9WKz0$WdUE1!k@lC&?QGQvAOiIuM3;|%01AJ4EQ7LNo&LvS&@b!vONj( zy38$@*7uiCPdU1-*Jfvkasz*^T~2Fx>@?K8mTSDakw16$Cv54O&tja#r;?xtmx)Ac zU9QSCnYMK^_)g{gJ_r5Y!ui>@{E(L?{cs1}aYS#MMpYwi!=UeEAQ^ibD&IBKT=6ST z?Mn2N-2+=AM*u)@uu`r2a?Syvka7f*=urM2MIP-k6a3#50RKGx_O(O=o2cD6D zpx6-qI<8|EFnFYrQnNWHG_qPxvS5Ph6#DjUVu;15y8(-KAGu11$>QJv+oyu9YMx}H z9IXw14>uL{+^?@#eA`#!VNlC}|6iysEYJUi>XK%UcaN6dqt|auzK`4ST~7d24fs#7 zGHHM!1-)2)tyv~qje)X_UtI6UUl=c2IQT~;dIDyib{p+AYnp$(4#LRGfgy^h3gA$l z5C)f3-Vko`y9eb~WaoT%CY8W*IjYe7tvVVf&SdgDJw&lJM^iBE(%e(2nyy&lz+Td} z)bf1PLTqiW6;v=WlE2Juw53uVPy{$zaVC&Qh8VwW^OA*xI9rl7upf5WD!P=P)XeJGy9gng&N{}l6@%%>65nmBA*6$2;)&^k#4;!Uy{r_Tj?@c z7p-4cGXR}DomKsKXnDAf|?f zFST1s>QnqbTSzo?B47o<05P0z3Yh|WBIOj~ zXDiFP)(DfW(&Ydzmpv``tj@$gU>G$xl7Erd&wdVUR*uM$xFyTVf(|a;$Ar`q73luM z1uF2;n}lANca`jUd=?mMz=0Jz5 zQ8SPRg$C;h(3D=G`_Dg^xz=34t{u+&OZnp&XU_fAoZ0Z`P$6n*vRA7<5*mEPbMi7j^uq1 zkWcYc?)yq2E${ySDBe%Q!Lw3u>b5R5B=YCI2u8DI5YaL-I>!J zAzn55!U->0ol5r$2SROq6V|p!zS4w!0Gh`pLq;N&2#xnBV%lRX&$!J%a}cP`3~}`U zY{Ma>!BaE(gZT_v(2PtT3J{M?1o^;4s6vWW%Wuj}0t7_dKD&5s2?Pg>8@0X@+#v~RU&vUkBHT1@>(*9Imvj4!-HqNx&QG{%2 zfc<4#{@p5bqX+Z(73r&8WIS}db6FbuZ@&1ySN&xR_5E1=Py}iX{fEczUH&ubVOE+Z zfFi9pP$t0w+E_Nlp)@X8K){X16$-)=-*X6_~o77gA+{B1wXWz=h z;T^QR%Xd2c$iawnCTVHDF)7us$&IT#X+lk~>h4g=?%`iB<7XuO6DC?m3O?WnsKDYH zLe5#mzwR)Yb-=dvkP%IRc}CEpS{L4~s{R z30R^COK`1}0aXaXw13nL(ZPO&X=`E_jQ-_(3PiiNe5B_S)IHuKt- zPLlN{;rvFJt0!yT^QOS}@)tBSKd5~>IQFx)t`G0})F;3-*v4E~5;vdTnKAvTSghLN zV&Dl{$pH-}XdqDdqU?JLC5U3bvrpda+cBw&39xEgj7A>WGaEB&9#A0|%CokFhSYTs z?;1p5h~*|?8g_(4d>m*bT9=if2nwOJ^F$=2W!Rj@9w2Q$Lo_uFy))no+S%i1NAxTs zqXrRF4HM$wY!IfW@UubWBZ7Ky)jbxhzt4O20N>B_9`*Jw(DKOnKK{r;;~G~jH7Uv8O#awHSJ(1Kg7sv61j8cw~oo(xAK0l2{T9~ zK?^kc+XVf4LhL-L$mwl!3Aai8@pkV-p#ji)rP%!_l5E!1SEHyWPaZSq*hlM{YRh)7 z{KvNBO_c8}_IUZXbh+WiD+uxpMTDF+Su=r-+5fnHMSdSWS~itDi<(!zq$ypEJolm+?gS}OmoEO$kx#bq(~xb8rlHQk4%=aW=-vWu#d1)nt&tl@3xQ3LC@sj@YZ z7iZu0?DCBBHa2(?WeC56WbL!m#7yDT3BgrH?-{xG0aqZ66mOoA5H0`R2xtlRU;CcR zv1^n_%rw)s1;w}3Vcy=%zoSS=f7USl9m|{jRIYsd6vo;;r41 zf)}mz+E|1>PK_P%vvfSQ8rIc~0E>pD>wFezS3{Uq%@!C-dX3d+d=ueuWorHt!4ccn zVFEnFiX*v}oX;+(nIO;rHM%6NkB!z6Q0BC9-Q?~^?DFFc%H`J*&_9gMP~X}&-y@3> zx_rOlPB2jQUc2Qip^H-b;C$WJ-0Y{ehJG1(D#X_uKwR_46GT9uf$~GCD``g&%<9_p z;#1?;7JHg<`9T3eo;~D;o)t0#hTDtNITpCWAow3Wx`*6Ag&G-RkUd$a@3q!Cimjzc zql*olBAy5S18K%X00SnFHEOI{gg*Li2PRE@<<~OJQr7 zIeYAbLh}Z3Zl59&HOt}#43;l@H5r=D!$!y*(A)aN+*%?jsFR(Z0Yy zm*I5W^2a)x)_?mEDskd8SB!cl?-eOtgo{p{*?l}F;^0;gbQ0s2{ulnofc39T(yDn$ zVyV!5G#$2)<7Bre^5;)%?|GTorL8~ z-S8VB$9b^n`W{IUPeJX5gGY|vS(JJVPBC5586q;dDYAiU2!-c4ZABI>f0n=yYZ~_f zYz_1x>yt8NrPN?+OACs3Hq*^mO?u-m!fF z7cKKb>v=MMg$Os>o78D%dAc~ABk{VJuC(bWz^bPoWzjjq9UN!+aE^&P&fSG1(S5yr zt;BAnM53WxZ8fn;4@l!K3Ap;rhV#ZAz4?C4_3roQTl(vGI99Y9=)8$xg}i9gB;i$7 zsOy_HE=Wa&OxrcHkDZ>kQPJ?bA)f^VoxS%@`QdwERFf#sY|9))D^Q3`GrV;L-lLGsV$NK_7EcIW^nb?LIArCJ-YARt{1h_ z&`&`y+w4GgT;`uTtVdYX9(Bz=Q&uE=+=iZH0X-pT(&u>L5vQ}XlSUgSsgHb(g7YJ; zrILoQUZ1ZsG3oIg3mHQ^o7WgVhFO%)TPh)epol1$Nd~clP9k6oC@>Zu5h0Hh=r=1G z&n@9!3Z#J4m}1FY(Y&ZNC=wN`fi7?t|3}PxUS&n%oY5ZmLniz!zJ zsv-YTsKfHTw-02%lNt>_Xsa{HRi@lPC(7hR!nn7LAjP2_yk{Hcr9cFr`{FP0@Vp9@T&%xoDEJ=I^MZ0)Z z#^I+odcEpjNRVoK_V-QoKJLK3RzOR8Qz;(BF``DS_Yi5A4JACIL<3%=N|>1J@i14l zs>u77#Kb2}+pT#P-r+Xr)Z3f!oh6TsP?_iuPql@nLpJ~VwoxUe^#;kk^#&`hgcapV zd9CHfzPx7C>GsfZaUvgVR8;xlyP=M@_oBVM6Z#jod>;)E%lkPssuV?t@-uFAl%KL1 ztR=p{@e14bgw@pP7hBe)F{kH`?GB^~nDB#_9j5ckw)#c*OlkWf6-m8U_%U$w(dL?Pu_Ik_{ zx3W!0lD8#pJI1&*hch54Baef0#(6yxD3wy+$dXqklyb@7jLU)&6zn%M;|PviuPj^# zlZl2N{gVm)V=#4L*ajs@JR?zYU zy3Ofd@blKW!Z~!I?pf2m$rcaqr5}w+5bO1y{WF`Y84~8g$YMn(! zAvg+Xp(BIJjRpb|SLqbUK8{lvlk7~;1cUp#8O<|$^}+S?R1CXQB9ZeD@8d+d>(8QN zi=q+yum6=bXcIb~fF60Dy3&K(v(7U1{hp+Mtl`12BbxhW#amvkm*g8toFqU5t=zoc z=iMT0o&5hOsOLu-+v=-^8$$yHO`+whABujfU&?b|^f!XyG3Z=9Q;ZWjE?4BYQ-b?lqMVh)Oz8{^&}*_7!7bt*-#E#KqcUjR^-BbyZU&S+6C=%Z=XWtL{* zl6%7LEX%lDzeJZG)S1zWZ1wdqkCzkv<3wezFLl0+hVTlb^p9*mer?I9(cyXt<-C6VzbMt(!PgbDs}{ej;&&Y$eM!TaBAP~o05 zm34jZo>(D*apr51**l#oA$c4+31UbHB8Fm7^I+J}@BW0p0mLxfiNtkELyazON}&K2 z2#9;0XQ4`pPPwFJX0D#?+&$gw%lpk#&mqT8rHkbS#P=!SB=4;(CvIo-S1JY4G$qy# z%S0UxzvUP`Ayoyb&4{ZpT2czGX@Ym?YpiB}WCary`}v%3)8mg^ zZ0rVom$kq|$?#>9Hk==-BcA2RZ~L)ZRlrM#6c7x0K3UA%jEo^yk45h2s?nKC^Te-l zh2Xq2kKi540mj`OU;!8Igz4=+bP%Fb01*Nnw;Oh(PnUqfWErELZK!H&1al@YO$8+D z@rMjO4wo)Xai9CFQVDU7VKYV+`K_z0B__MtLS5B>FmA>^GZN%Ff#x zOPYV&rN&OTPtkMshDlDl{-UsG<@0Lh_RK#P|7+tz^3{sw&i-XYKd;#2@c6}HMb>;` z#-orEqN(wQnOyRZ4vB}}ESr5(NQ;=!$pcQ;DhsV+0hHuLp_qPWc+A##!3Dd8^ti!r1mrir zw>{pbn%B0w|5X$&0npVuQ4|rW;zI4L1lAPae!aO3Io?S9K1<|fsh>AakL6aW?E3SR zWcE?9Wc+y!n{3uvlXaQgFrGKhn8(Gc`jiCL<@>Pe#_yz+^o}n7fQ9Y^6o~*NzT*=} zAo?p`2glou<5#|(?Pqf27Lb)8tZ@;{5HYTlu8YWz3`1Ai+&H<9MrIJgb6o0(#`wm> zn#PLxw)O^6(LY}MG27PmyO98(V0)72J!*vL%+4>fAeZ)px2D5^wtK9~ti5j9(B1P4 zda&@QYvpwZJ59-t&t#IP{QPe|vnWB$ijP-4$jTrb2jW-s+9OCd@DjEN49P$7;&n{! zOTV-%eM@cIve6>+$epNy@uIeFuA7&rc;u_aYi8bp&FEl|x1FJ+>3dnyMM<8H6nW%r zL~5vsZ$iU=e*)BdJ6#9sEYuUJ(W#G5rvHhTCQL}5(9}#uzgWr0FwB`7x}Ov)G1WR@ zubo;hOwo1Da#)s09=X6H3uDHVhqagHfnNKj3qPTe;ryQLMx;STz>TO8935ng&+AK) zfm|Y5%*-eoZWxjvMc;L<`2mgetzDvze^J^~;dm}@WJ^!)>BSH;MT z5{=r3n)$iIYFGa(jM_*mB-Bmx#!^oWsd7S8Ze|jHx!SV7QF>rQ=KUo4HA0tE*Sni* zA6~=E_qhE^U-S#T1~RqU&Y+6={M<_2syq!z#x%(wj@d42(v!m^&}e;J%p4qVOpwJj zh1ral8)V%=jrRptdlmO23acYaaTJyt)SjDo61O}=$6{HZgW4wMvXZ$H9!PB26l zSTIe26zf&hTW_D5ujd!70sPzVC0^koWq||~8#mxFL=)Rp^;e-f)a*wle|*nGzU+WK zB!!$+Bh4f#0?O4wP4zfI8fcpHY5IjTS*Qjo1bilmIMgE(UPdd1kF754HavlO8a;nz zK@zPTmd)Sfa;2OeFI(MdW{OrIDLfs)ciZ2jI^0|t@szchqjb$uTP0`>%rUDfDQ5)D zY2(#5R%9#Os77~{SN}{%xcbL9ttyh1BWp^K+7_Y-=zJQ;JsXY(WRBR{W$EYzU36)o z#!&gB_!@I})bWIC=m#K2BD*|OR=7v5Id@Te=Uj~J@%my&>Y5gn-crdCbz8dmQY-sW z^njT@je%@xY$oMFMG$o8q|_j8%aNLCaaI1Vj)u&w)>on#x33R+>tnmh|J|WZ{YQe1 z8_yrX&Kh=DE4H>0bOLD{XHBq*px#8}nl>N-+2{}H>~!=C3))x|<{!)rI3j!Vl(Gja zA=k)uPGa8~^tJ=|x^-jGWQouz?v5(@^3sl43L5e6Xd2|DboIufQo`*i3Z-5YV*Tii zdoXU4J>pl~8}dT@+hK`>w>d4TO_1BV07anGbzlS(oFw#-63^Tin3FUy8s9L&fnLVt zQYa`qQ#XAsO5db%zqtH|Pia4=MK@NGN*19qRugT65gYlEpPtq6plkmwHA)50>PRi6 zZOWsHG`maMUK#?FDz}3CyC7AiP@He)Qvx^F32bUftO6wQ7TKi?X~FSc6o}W*@B|GK zcpP;l|98PU^}l)i27cucFKz-8UoF{t6#PMhSU_@aiQq$hItH7o+T>~W*p#boBOf(c z_zbGsVd<{Bl8Q||Vde7?)eHAEIR^ZuchIsEX01AQN~7-?)gK}KS^ec8C&TTm2nh{X+~9WsPhdkJnM_&!|S)yDB%j!q1)mAi4SKiHG289 zYah4f;AwuC1r(ALrnO1JVMH`$a;O{VVlo*BNhwjf|8S5JZ_nMx^p5MPRF;TbJqU_| ziG(e&mqbv`7bqti)QaEMefZTN&OZ>+4nk6Z;Xs)JY>Y(b4OS68-2S=LaU;%ALUPm_ zDQg_hL&B<~Z``e;_3+=X-g!^)Zf*?!8u%RA(-wuw`bkM+?#NLn9Is0ZQ7B{FCAd(Z z_6Kx@6g;m;+no1=1BK~I>fjj)T<DhsP|tth^+WUF9SQ*6%rk3=h%WguB;=-#o&r?Hs2+dbSZ-ORjD zVD=fVj}jmD43eFa@MC&GPaTnFof(cg%&9r?e?17w6$_t?i}5LbvDh-5tSRc@`e!0* zK}^LIQLZ{C%@&a;;orTjFbZWND9#7YGdW_Kzly#y8ky0EJ(pIjd0v;q z;Pd8{mI=@jrcqz}{up}844+ey(M=JxU$(jf`ntSf*LFz8h35FGm<@?K zCKBtDwt&u_3*2!DBHWa^22sYAn=)m_>^pHO&RZ%)WOzZLhEj==CC_TyaK#c3{Nf!I zgdbLcAqJ^wNIe^`K~za@!R`T2txNP_N!Zd4k1g+=U<_VK&D=tlX^{KTBpc5vJmO_ORX}Dnu zg7zJPa>A;^(1ROV4lX0T@2z1?hW=M`%YH=-wM3zi4H0RJ9tr(NVVyCiMx@j(WAY>U zl^i!I`E|R2m?NuyysgfGdG*ca&sQ)HXL0NPI-QxU(&U@F{kymR-hayZI9{pAj97jV zf9FGjT3@#dS$|Kqo6{q1yz)DmUJ8wT_&Z7cM}u5#DH89Ul76_0N8{eUqDAiR?j+uG z=1G;UfHCzfaBh3&nX2m{-aom8h`0Kd+8~aJlz$4a?3-3!(X*>P|I4%PY{Ewu^KfzZ z+L@p}n9V)ud05Y6^cDQeQ#Ap3;5!jrY2<{hc?X1sI_By_)~~96V&TF65Fo@A)taPB z8k>`cQ9RfcNhL`}XhLjceu%aygT!jTG&{O-2n4rJwBHUlH>qZZQZWFZ6hcF3Q2{9l z`oWZtX+V=D0>9-DE-j?mDB^nl6ADqROatO1{pje50jgOZUi0Z@dDTae(~CTgixAYF zMxQ;cdri7LAiZu^*_)x(==!T*V&g<<6vy3Bfa#Bt++P#xo;Q`Bmpjm^jq%p4fIEHN zwHYO%agfJ#Gb-eK+KcjK&EYG-TUQSa^KJ1VmRFr3%bTq{5`6E@8}JODKMP1KVPL*zCewot9 zj}M@{U)+jk6Ad62+ued^D*R5F@RU10+3;AT)EsOi4E2XvxU)|Fl*pK7g(%nCT^bvP z8QA_{Y`dDS-ZX{MqaAF0^u6SozTM<>46&3hIAejk_f)0MAA+mP9B)P6MaJ8CcxKx? z%}lD7fLKX|SZUWZyHQR0!A9PX^df!4eTQn`>skMzme^lBxx2?KY8^x5{2z*v5=6yz zJoY6^;_09L;++RU1d)L6s+bl8KM(>FJE{?JJ=t=g6FJ->wQ z^;ZI|H6y2$;x)X06%tD7aSbDc_;cv$X7Gg7J^6yOP;nf$+oh3MwB2wGJT5 z%DM-#$@35RuU8`XG$Y;LXtz#m_bRaPg?RzaJem4^wu?(`umag`6*yn~Z51M2E5&6{ z^zAQZELW3aU1VY~g}xKSl}gc>F_*H+-K^h<#L|JK+MVxxcdbw9#KHqy@9@Pdowr*^ z562VL20XLfpb>1~)I~EB!CDEVV5)*DrZlEU^~&IqA~d}q*g>+> zT1Y9L^>bWiMAQP=ktk_-m(S)!0aM&{I0@7~D_PVE+0=^J)D4I|%LMHgE9+L07u+2? z`y0p^WdD`=wKlBvC@YYjTZ}Q#V+p*=Y4?ev7(~fGu%QZ-!8}WKN&XjnZ6_lrxNIp> z-$68(dsfwDT>oxc8Ta?N2Iyh&`SLBjcbqDzFndV`8#HL{UDKcgM zo~A5b@l%%=#QIb zVTG!7ZRd!|rk0XLC@~|m6-xP8mBx5jq0I-ed8_foS< zAW%MAq$?&Q+1Qq3f2PMzG%#^pO*tF3V>2a+RDRVlVVP+SNS$kB#Tg_cs)F~Gnmq41 z6aM0rFx5MltFGf-R`GaW6Z`0C&#w5sUn=yS?g)M9AZIY9glh|HBim<=vBi=ykB_WWvd+7%t$(_(w+*9WS2yzet_+)qN+XGjwPj@QB%vXjQ8 z>;7wo?C)x$-<_>g3<(6k%-YzfVNx}ULm9Ugjgnd5)aZ4*S9Kv!FGON?Y$BEv@|$2^ zrAsB%KW2vLj(kcr$}h2Cv`@ig-J@f zO)l3JZ*oo+Nx}N zkrJ0jm9S^YE)b1owq7{a;=!CKz$P9!{#>v6l91dCWdGFUcqD_<@&ezzlkh@Vl<}bbUD46cuII1z0J0RYF&OVAFRU7iW&sneMqeQMC5BNSM;9a`V-0 zxIqN2J;BE<#sP{1Q4l2Is3bp&%pfo{6uf+o^_q>zp=SwU!EFEi}2Y#N^bRN?NK0T>>6Mq~EA&2ODd-_xT9aaDi#zP}cvvXfuN%y}Gc% z=Om){1_^sj8nS!WP+e-)ho}EYS+cl(j-7rpe@T5yB_WGr z`YXaZb2Pqi+o7NGaiTCg;aGuz&(7h;^t^a_jcRk*!lKhjTWV@J4GCZ;O2ax_yq*8J zd;z)^4}aa&!1wOw{kZgC=g-C2!xx*m9~k@n6cWafl5tdY!*Crg+{rvUGJ*Wr$>|r? zgNtuq@8$Szp*@nD8xD@^Yzo^)&mVa}PlvYwvrT?IaPP3J3W&7h4%GL?*e<&kcR}^L z54kIZ7sii|G6!XZ$#*!S(LSx|P_VMt>c-G?I4~kZ| z#Y|Ld21saeFfyam7eS3&Uo_@>G=KavV$+h-OutlScM6wP zpS_ZM{yAlhO3ih&(7Q10oEU9|HnmbO;etVZz1YMChWSv8SFA&!7v157nu~`f?;VSA?8rA&$&_M zNUQtQGy)B&k3!XnMjb?NpJ>QiI|Bb1`$g1IHniDH)C>rEg|E zPxjc~V`WArO2aMlAgwfN5axAhDvVmS#?8(!Xzi7i6!=ex``nv_gOo^WXT zH;pyg$40NeGq6?SbC5AV&$^XU?eS+2q+uL2s!hVX7>w|B;Q#J@sw`i!>zMTOuL^$z z&%fG6uz{>{Dg~iv}u3AHySA}UA2piaQMH3zD zadKM~SE^z%7zjPdtuI(`xm7Z3Sp1%Dq!*{--U5{HIFzlz#jbvHzQev_Y8XL#PR7@o zXGwhR42vd&+opezAC0;zYgBieFhEG}Ge}>zcr^QTI0uu!%b&O}d8^Gk&t-9L$ll*z znR&A~%~b3jcvnId^vAJ*&OYZaTb^C&2w=qlzs9b`6wqdvyC!#!mbuxG<;-8+s;+6* z9IsFm5j1eCMbMnLw>KnwHg!~|)!A#uUhAF4^znUi@jr*QnHI8bdp2f8&y^Qxbkl8; zPOr=!KBEW8kWMfKRO?u4|6Cc%a$J?3db@-KUgMc?!4d5F+5Cz<-wf5WXDVB0?fMvd z5?3qY@}v@< z%AiMzrWQ1vc3ry{w#$?jD-1Lln!m3Qo(g?in3eSWPTEx;@TQo_k?v)7Hhc#k^?6E<|V9yyChLmJ>cPFMzZ+|+ezlSl+t zYF9IDUpM&BFhm`#?*Nk#CgJjY-k3Va|GQtAA|XN>HjOT)<#!B9r8?Et)t1&W@ndv( ztT)!9U_=7_j#YW4WU-biJA?np&~)$w87*qHL4eGt*yTPWG(I+;*qd2x{duk(P|mws16-+SG5QUt=6 zCyEhqD5iu#nM+M=CFPU1?XhBP}nbdf=@`oQ&n#M)<1YKB>Bzc!@>$J47AKUUlkk539r+B--JeXT3H( z$$qRq`-eFu4@%G0620n3_`yr#$}RKa5-IGO=!zyZCeKTI-*E0Uu2MSF*(SD6NA>@l zTLld|q<1{{;PCJaFE$-(^SUU?P2mol*e9flq{TD%SR|Ah_x0ujM*N>+l%0pr)oO}( z71FNFP&9}Cg9(b-3EeBZ83}WZDHulb$pHc^qXx^Mt8}3W>!b>fzHCw)zsLGBO`7bL zEp!?=HjN*>zp~$-W6d7qlCW8b?46`oDF=?`Z8W;)=mCVT{H6%cu z5Q+c_I2bUAqCjHf_cn|oLLCh?ep97W(0O7NG=XN8V5xV^WT@lZrZI-GW}j<;1gYEs z6up%+rum0~s(s5ZA<2u;)iZP3hl&5D9%n7S^6F=|uDjQ^+pE;s*R{B*v+gGc(s7a%@7 zV#qu{vK4cvKd_H1MblC+B7RcHO>nuvHq2MwtLnvv!_Op^Ior-mHihV)`V697#U{9!m_oM-XEkoPu)8_8-DRamI-&p1iW}`AG1^*T}s0AD&lFAckjG{ z8FSAQ>F#k9@d?*2{_B*%vOcMn7QVNhorAY9!Og>?nsRLS6W~CX1g8E=o1K3Eithmb zIY&eZSw^g=wUQl4BFB^iDzJIx=3k{2hHt3)liz4Dsj;(ro#nl9wZl0~{wtw^S;?-eM%U8@;YgpA2CEjKooPHjWu3U~(W5Gli$tJaO!FgsJCQOWFjI5>1 z5KJi%*ZeK^wl>uV(=));&{nr^VP?i)7;qg=`m;U2P)Of<2FQ%m8;{wuU$cEXH!8_n z@$H1+TI=SpBH`&0xcm}jo;~E^4Q0p~N|B3aVodZENNi|LSC*G{Pb$S*V@Jt6b5cI; z;C|xozrm49AX-Wmyi;$i^$6C_kSgsWBS^Ndtqu10sM!YWY}RhhoG$4UQ`5`1;Gqm1f0YBG>1+irOa(A|rOYahM)IFI_@tRT)G5zW2ZXqg+ zly|FNk-}E1kKa;DaI;eD>*z&X+C>MMII9)svGVP<`7OQV28!&>A!L18N(5ZnHKCvR zSX&3L!g|-)HutCcCw2gx!hheue=}^yQaD*7o!Ycq{Y7uOD;YjQPE<*BaNiZ(`l-8N z5N}M2rCR)lgQ}E_oJMo*g$&d7z8x~hpwh%q;8`SKh^6oM#!U%W6Ujrt39&RCYIsaj zHiPG9@@tH=kh!A_ABI@Mzvf538fgMa^So)Gl63$4J-@*?{Pr3F%=2#WCB#?vHeDe~98iV^u=v$J1IM1E`Csep|*?3l?)bXmH;qlowQ~U?b ziO(r`nzns3i^k!72lCa97V<)3v`Ow^vk#g=zO~Dz|wb&`WxaZ2!9MGau9YJ){Mi0tuH&g@PadO z=ffatS2FiBLr|)tjS5RXGo{s(2M<#aMIyhgTOrXj&`!&QCE8?|B#QxZ1V#xHTDL_2 zA)zFb&o)jJ>^}C7)C=EcC?l%*nYXvZ)%kFSR*+FbX(%Hiv9D9a3U=8)@qWm{0G-{A z!}WtdzmA7d%VkkDDq!9`JZ{&sj8mxi^G4YBzEgiGoZqK6P;sd&3`6B$Ydi8Ugx0h{ zaqa*s_GZMhviWm9^1%b1;7|tprAj7* zD~xY1A!0DSp(IgSdupS?vF+_;l`L4^KgyFP>;EaCIc?iErfu7{?e1yY zwr$(Cty}MN*LPN|`gKnI$&AQ|9Xob9Z7zBK$sf@cke{ShIAB$>Q528Hjl`#<`Bwd* zn-)rxN@4*1nx#yti-_-3s|qsZZTPK21%QZ>#B(_S3E0$(k33G2^W z2$%YsfqSkTAjqk#TGLWHaZjxMSA`6g6omyFXLR{mwO4i1&vB=?Bkkf}sU2=P61 zF(Yk5TX^{a?r|*^q(5;-_Bfhsrrf*MHdq$k@rc-MOF8VcL%4LTHal@Dsjs3-&NAX= zX{R2F**A0YTn?tL#!cQ7mB2S!2rP-ew!kB2E}68YU{TBx)L=q^b%*czuRSM;5{X@y znq)nFsUf?qAci4g(_APK3da50a=p_( z-7e6q;IlB_XWNO`XmX~#*=9^JF8t%<7&U(KFR3%PIVB3-liBjWJrD}rJL z{z}*QS66Rm1G9zJi2thO3BP1nwi!i?1QVF+p#xfUWFd!DHKYa0X8C&VcA5a23%>ZO>ah_~jaL!hP7>LR*1mvIlDLchR0059bx6Do8BXTF!B@5yOyykhgv8iUqmdmFeK;Urv9| z`%vn}D!4~gU~#7pJDSf;67vvyN}%3{v5mui(py^v?P0@ARXg za^UEncbJ#XPXep5{IN@|yM4OU2{zuB0Nx#5&%~_!B%Y6Tu5ZZoP%~^D!V`#|6W-oe z!Uv=IGyEjxk0FQ-f}RDj>`Q~a8Kl}-EO#8R7+ldHOcN_o(yS!5s?rdXhwPn??Pu+r zJVL_UYkD8&SGO9!qUq`(uK;)VA*Ilf(q8~>MG^t%hXUv_e~rDtRk>&rWtJ}Ub*>L3 z>4#k8BH3u9OQ2gM4b2Dx3yx@e`YUv&#EKihxN0|frwhHwc6yt!u33@y3ss7alk(in zInyyUM_-Q%A|pN|k{xeTz|iBBX459Gj^#zNOtE$Q#Q0r$? zpkwOr*#+M{eI?9VV0c(OXdX)(-hixXCvtjxYYb7n`y83)`8KLyn?oMRP+M0((*@$Y z#MC~kqodcuVGrmc1xHD)Ab>nWWa^vn8+2TyGr}kG=gy-56-6Y3bmZ=s+tbL zp(_X5Crq=w{RkhKNYYSGmZ%D>#75YbTh@5M%v)*{uyt2!jTCQHA)~yb>MfOn0N*5H zULije3FTFa)UE~3j1^TOp8yvgW%*P|%KoW6m4UwSBO%TKk41zn%X~lWO=e)g0S-O% zhdpg+tY5vk+qQqZ$6YH{lHtWhd*rK2UD0C#SHXvGil~4go^NihBtM7_8#hasjtal0 z`H#&`gle?bN9!n(-9(9=W8oz-Y%CnoOYn?h3{_9x(FqZ)A@Qe7xY>mU*BqJn9$moh zvt**HaHh=93@d9r7LB7T6kXY;A~svPUNKX?{g0MAnWJ%Bykdp%hG~I7?P=bsO9^Eav zI*d{6X!}EmG5J;M_OhW@jli;nioZ&T%5EKIj1TPI|IPPDts`b9{86uDW(=ihr@tyh>1-V~ANOHN%<_X= zW~wXR_+Vr&Tw@6kULA}OY`yur?@_|j35A-ld3V1h>g@lx0C3@I5D!=L;!!X=<6EiB z4!(%`ol5UHhDltbF;&oTDqx5RKjZxaAf8dVtX*Q6Lv(k7 zfZ8sVxfWiKGCUoR)`u_}xS$=kyFR(1mH!&MK-WuE*%xovSr@q;8Y}Zuc3#D%|NE6z%JUxnVfF<7a=u{%<0BmVMGJ)| zB@jTbO=vhYcVd8Cv2eIT^Nd<AAk%G4D{M{4511#8cE5OMx-eNtl)r37 zA>Lp@ZVNZV7{ImL6yz+$GZNTT?FZx{zZG3q$fhE`0x=w(*|orF=V!HLPp?nsul}xP zc2@f!=`bVx0l~D)`ERkWhsdkDkukGEUJoa@We`defDgjzlglP4%@eNn|0B&m4G^-**>l)} zv8?kQr`~zM2!>k!FvIklI^^tS_XbRcyr)c2?E`OU1)?n^RO3b;%V^D5P=zOHVzYm; z^||sGl2YIEq_itNM|tM05}?}9aU?F8lUL0soc__}BC+XC!4pNGe?vjK7x?o=?3=&hO*HI z85(v=LpEZtCe&OP*rEEYGT zq@(+%O``+Z<)#oJuHMCAexL{)tVcGv^K8qN1~o*&gWqSS2W=ucTeZ}5HwKgRK@#E# zC!^-ZOt8tid0CUP4!Px7r^)I2s2d8Cg^7R>YSeU-u8rKUzFS_h(eB6~AOPk`n zdXx~GBTizd`4$O7G z1GM~Uub!0(+{lxG?-hu$CHLxjj2Zf;-!FTVfO-quDhYGm?VxR+$Ka(AH#*O2ON4IT zgoAbuwr&$LT!|+X&$5WdbLtn&^XB=Bd)+lgZtw7G&;9C`2yP}oMSGUddrJ5C@fmDs zx=`GqfZc;!!3b9^q!0(s_1?sNn12J296m^|xu4hw3Ho&R56v!_!b8+mq2bq?DzYmane76klOV}4YImfLh~}{y4ub{T<*UGzd2XM zll#BGaxz8@Eh%2P;D1DK8{f0Ms~xW-di~}MuH){hR_3-{Wc7=eopsXYqy;2k+=lwL z3-#fd`A#2SX&dypv*+ZOp~M=wnb z>W|yBp|L`e#C-@-=x`u=e-8ea6^(;wai#^llbit!PS|ma6X*D1u#lFI4LC-H+Hzt2 z;q>z(XS;8~#Rip>Tee6aVzxlMhj`!aNN1x)0cY)oS>?{0T%fS@A^s+PWx2j0P}TQj zIyxRZwcsG-53xH&@)cc*dz@rSm#KW*>nsMvF=7)}pDvzzO0Mgd6@&Mz3r_bYe`RrC zb;b2g#(NCi*{wfu7$l6MG{&iNCIEE=U0Ryt=U`=A?*yRi3?%NCwKR6c7h@qR@!x(`EN zxW7>k4Bl-B%PfH6Ef2q1$-Z*`=i15zUFyJaAkXh|ffQBC)d&x?Cb$ioTSt0-NYkT{ zE>X$_F;|jx12C0^TcUA%D3bPOZ-vSdLn_A2yMK&BsP{2~wzb(?-rRlHalH3Fk2>&9 zPp`1XT4_9<%<**?e3{5ug%H=6)OauJbKM;F5y5-N$<24cRqf3@ReWAf89a!dMjynm zN2g$z_KOpoqibjHA_fIqJx~&waEvxp50$E8fEdb$dwxStI3x#0e8 zoxw5UCQz6v8(lAn%grGD^pLhI8qM^;CwJdDVqtl7K}9z@m5nKL=Vg#>7*hXaIarY{ z*72zB#hv&~fD&jrJUIGBg$XQ;bW4AZ=)HZ?>k8d{o$H-6?e5bN0dNrpn^-yhPnoQ*Gw& zWr>s!DphX`s1DX7dKaf3v9lA0zyU5%32>|&uf6ho{rSeeO(QT}B;725154*jbE%;j z$5_nx8pEP6LVSH^b$L@Q{?{>F*y{R`N!r9}tld2~_}^hU_~i9VQC7|{24taGSgl$Q z+1YHvc7W~djrtINl-W^ z6LRv?dSa4h2phGM3lx{PPcyTIgTs-P_%W)l$z;eI>OZgkpwurL%iak`c9^u4j|~ec z=t0W>Sbet=B;jy0BL5#&Id=BDgz-ScDU+&Fb?*UYq)g0mO+b>iaz(LwU1l=+qO$b6 zVd^I6BaEf65v9C|3XCdc+m~^M2Gukfo9iEgs~m9}D8pu(pr7b6%>(;MQ9PAgy?m~9 zgumr90(8hzA@)Xszp!jqC(CJpFo)SL9kN{tjhAL*-v#5*fY1n0=fvQCp$Jd{uwFuO z-)Qzx%qJ3YI;fQ`>0NAEY3<-lE-u5tnWT3$4y-yWb*~GZr>V&`Wg^FsG4Fotivn~% zs5TT^8tZ~L!SEf2{7Q74!N6?K=2*v4yg&-26wZj0QRg^I`D$i3A8UUZGai+jRidi~ zymcXpl}&oDvydJqQ8MxrO!503-?O_8{Ww_@bDyfN<8~eY$k4nE=mHtmM#qh7qeQNkj6gBvP?slRV`Ra|Y$NuU)66bnT7w<&(0f#m+m6LL?#ZgM~yiLx~jFznq2J7l!QdniVOH$ge~Q z1)i0hUw?B611$HPH#+=WK0d`^_6jwt!x*#$HWY3hn9$6Zuk)T*2@8QWwB7S_m2fx> zBW;fD4n@L=2d&$C)V;4cCX^BkNgl>6<$Y67>=oMTuelEf&fcerkr@XmlL}tmzVgXm zHRc%tg2Q*$XXdO_3zkY)>{U#zJ5vBXOset;mNjK36X9hb8$3Rpd(E+VY6sG6&tUb$ zB$rQ%P=B6GL!$>5EiU5KWP;rOp z^x|4MbNGNNe&Kbn7Re?jTVFFGWfR}KU>!Sc>nFLpVn-XVzsg_!1>yu8QTl=t%i8@< zB}|3VjFI~gj6=2kd5+UaVfE2IjvU8O{0sHHsZ(JHu?$*% zx0witn5d_2H>HHWtK9d1F1|koT_?=iTl`|;(%2rVt~4{?%HCUfX+)1cikUVpo>KG& z9928MVJDc2K!2+ z5h~+NzhxHfll0+`@*D=gD~)9~N78}Ee&|@EOQpj`-k^<2UZT`0w^-w3xnm=@_C@q5 zvBob;#lxA&xiKxO^s4N(OdfYmK9jH8s<7+PSb#I!E;YYaN~QYTHU`r87u~BTySv=4j?W5L-gBfWYoZxCVV7(D`DY&`b%>J|R?lHj>^Ov}e@FzQm67evd9-(_F-IidBvI6M ze%C{~QO@MfCfL$!3;76iY||0o>ejX=AGyaR+f>pPIjB`wF+l6SYwF|D^yUA!#97FDRBLKLF+`7td}c3$2bFd>rOPjTRJt1ei(K$b%NH0Z*3-a{p3pw zIEHcPMFBPtaHN}8R*rfa9l-5NBTlcc`y-Eae#el&&7}*c$quo`TuTzB52bc(mG#z| z6}2S)SleN~ZI(44OSUWdgb)3AKr#jd9FIjz!WX({4>o<>5!7tD{zu-j(DwgW^_A z2II8|F4s-+WNl(j?DNNBXMZw3nBqiage?H#tq|Tj7b%ggJg-t*YJ7IkbuuQp9POs> zKkB)s72EQ%D$hAr+T6kM%W+NV+nZ)I;sCJ4|6@DH6L&l^X6ZW5e=3CE8U(S=A`9O@ z2wliT7%q&N@mH>V~6*I1)USNSjMyeA~y^ zFRlk%C~a>Dj2vZ{7g(t8K8m!A3y-OcCRQrgzR)8kkWHIK;!h#rYl*34OvxQwvln=# z7vsUI6*uQ)M&k+D@$!x1fl5d*d2G7FA*Z<9f~%Qf)58b>#sxhm$$Nc;-l@=w1xYH? zI_y2;y)dg};dP}jsJf;YlV)7KzuAT%_PFXe_>#VX632{fgR=dzRIJm&cIQuP>g4uF*_FAf~02IU>cl(icO16Jx3urnstLal zzEV!khjGi*Mz$?YSvT@>iO^N|#B)_{ejsWRW6P77lV^7gr^A;-(l%!PqM*uYL`Xw)~+)`bJkdk*-i3*7&t(C(cOD!ec zPPNgS8qV-tC<@ACq#q}p$vCfip@@bID>Tb650N4o>M%`#YKYA5uYR~Bwrzezw0V2{ z`S|q6wYoCK)C=>ne|@`#E(1V4mc5;ORqS}^zi^likNP+xC)n9<=QMlTboBvhG9-b# zmSRxayAX|mP-ol8&C$$$tE4;niG-Fq|6HWoxl<b`4p&FuHE- z?4=dP*jsAR&M%biK-1{TTl^Yv_A8?c0-DqYfa~vX?!QO`ze8iTU*0lg$G#iCs+_BR zn`QC}WcpOecj2_M`3m~U5=>agrq4)*stMUhnL<`j+r?1i4xF1f6FPX@&_d1(73QHz zemYjh6kH-VsZqY^fA_$O&kU*%*pGLhx)W+|_Nb%;IMnJe10vHJx$s&DJ??0E#6-n$ zph2oGT_42p-WYVC@CWtE`IbfOT6iaopKjefQG{o(=FzUGKhesokWBLv$dX%Mcxv_- zF?9RmK*mwK@kIjthABdjYc@G|~ZPkCxu|YF?#cNlh7l;CflmrPGN&_k#aobrh z3bdpdou9zB*j?fpNKsAQ!?iD|?KX|4HWo@|*5c8r+K1yiTy6d3EKj+m8}Xd_>$7WQ zZ76^uf_?daiR}V%x(JO8>umFPs*L~@_fK(H8EbfnNp2LMZ-P?aIiDoY&$MH=B4jLM z5@;P$8M=mVrUx9m%6F@`o*k&bvK+{Xa!I;MyFO z_m)R^in|O$n#9JJH2YEGSG`nm!bO#KFH>byBIo7D}~e-Lh#w{7PhPwDTjyE~$e2A^yw?3e$8;?=<0!WdLYLU+`mY z>@e|iJkwy`%#my_S(Y)&Qzy-i9xMOz2 zKLd3QgHM;}QEohwwH4^;r3u>g6b z!aE#k=iL)C!(XSi<~g&rQ7kQ=Eb8y{Ae*2bzS_XF%{_6q?k>hejAmj>Iy!~tA8<=& zjgda>c=1jxU13DM@-tjJ*vz+EYUVI4Q=okPz{q@VMsj;(KHV2&=iPc~2sRr_Y^lz1 zK0}p{lzW(S;7_vSu7i0dE=LmjDajPp?UgQN;|&1)_IcXk;;6dsnD@NW@IaSSUU2~- zg0|kHQb-h{T@X-DCLNDAXh!99p2H{4CgD!YKA0%rOla_UdnjN!9bi9YBM-x)$G&by zvnnu@1PF(tJcE+}DL@K8U`jgAmb8yzK*apP_HjnY}l+dp}&pLxNpS`!QJ-WBs zu?Bn|e&%ToHnw`#3f8I4Y_x?EMTGM0 zUL6-cEMMhT+&Oy+S6j?8*GdJj-;1{xSrgOEr~W2GPHN>%hewC^bURi#IDe-%_f6i+ z*{OE%0nzX5c#Lpa^*Essm2I{&>nkLktR?hHnjU8UI*f6a?~J_cx5Ply^lYq6BL_n^ zCv-;9D4%(ZpdrRgwr+|c381IggB4&kij&qnD5@o)Sg%mH_eC|DAgsSu__glT72y`8 zxJsh9NTM)ns@qp2_y_~m$;d3_$^FMXJ_-xV4OS482{8{YZwx(Vqr+HF%6<%oJwhmk zKTni=)+!b!H7FI(QgVN_%TOFqktUoQ72zLALva9(tscuSho$RsfP!XNWei8C5Pq|ZTJJFOqwe;yWNqpvFaWFt}(j?as1F3yw6c&hWw!0DS}-K zCvs5c6m*=c>`JH}bwU~Wqft`OFxu&_kWB+|%RKhyQoGnMdUI{p|7|Nif>P~K;znw> z;$udeN3DYgTVT(^W&H$c+nT!%6~5ez2H|G-+4?A?GUdg{gg%c*?t&(?%G&J~J^kPK zs3^|)inea!N-m8V&st6R5MQhh*XK{}(OGs2RY!_t*Oc^xr^*z83UzVY@#ZS=qQjWMX`=si10G6N8dz z;nK&O*h*H4_Fymr^JhcFpWU*QEWIHY^PqAi!p6wL#*Cqj(v0Eh(1p}{>i87E3dG<3 ztfjtWM`Rd^PWY>FYPfQxW%WcNX)Uy#v*Ue|cagsHuk|E+o!an2UqacKZ92|O?AHky zUO1&30OB^rBix}JEPg?5xntppp?5pQa$Y&LNruaAmi!p%VKkvl}a*>KIfrf z3 z1+<@GXScbGH>iN-LE-*kgAO67OCNPXM3}))|Ik-B;v!9Z8n*YmtmNTwlBHzfKWioUaKjfthzoELwN0PO( z`GtV+=ro6%<6(1jjy*y0>U=JrZEC7#BoE!)ZAF};+Z_$M8Gv^c0W8VghA79mR+YvR zqMV@WwJLA)3Q5)aeA=Jozit;iI{N(B%@l9iOD;eQqsg?(APm?<-Eqw2AiyrPnW{i*~cT+cC0u-kkf zcMEr({?=F2465R0fcNQ=?^h>?KVm<0Rx`MInqlH03){YfbqoRy*OdftmE^$g)FW16 z#jk|}a<5*oH(>#R)T9DQfZW<`2M^3ITZ2;!t8E#;2>36RL~xq^z6nA76%qzU-qk3& zVbBlrS2|y6P(N}(10Og~V=1W4jAQ>Fnr26socAMokZFy6-+gNw?rJ#Dv1 z-d8dAW_-&=SMuXfF!&wF+~bp$8SxCL{AjmeM^|7pljp3>! z`7QTjQW;fmzoJoAheSmxFFumE++IplE1v|q<3#G zcAJeIBD{Dk@l(&^ogbaVlKtk!Jk+YgOdPuJM!Y#|@?&G+qtrji8OeCP$VE7sJL(Ee z`d+W_Dz(*BmO0Eyo%S}A0z4exMVN)3EO}d*ybh+G0^H8O!HPBHJ}Lo!!gUARJxHUI z@2Gv2iJ=*XIY(V+vKt2#0Nb1rAMe-5FG-gX_~DZP`Ln0nhj1sZPJR5#TZ+nAv0W2G z-$2&qe!Y2#2pJuy`{acn11B@#8FPbeG{Tt8}e2! zj7;k7(XWze^PSke^8{-o@sk$;(GcYaS!*`h(3-!iJEv8fR;;A9m7?ysNOqBQXLH0! z5J@n2UU_Ps^dZ|38-pec+WwtZ7m8{Td32ZeTT747d5nXR5{-vlkhQMZ7P9S(^Lizk zE%QeIvCFl=wF``jU|6(s8xtqgc6yP;{jZ@e!1@Z!?`)W`qGGLujqATBQrWvqZVI20 z(~$HtM5xyCP*uvY_{%WDAi_p~!9u`js*wExfW4wn5!+s1)I+Y@Bbi*nlF* z4m8?;j*nQTvOGn`YA!|?RGn|3CRSSzg9;N%Lc@`?t2Wg^l!{JNr@!@J?<39g#NQO^$ zA9P)7q^iy;2s?A+Bn=OFi7==;$EKTwb{pE9eudvVy-{ItTd1%A^;%LyF{0h%&dfS_IF&_i@o8;h^~ zcMYFto2M9ITc8$dU%kVe8Ab*o^5Yi~&^*py35tOm2LBfMO~LL>5&CW3?o9#u0h^_el29DvIj(gy5sSI{Dk0(Q9KQ!}FM&SYhrx+& zNdtQySH#g*b*f6bvXO}|>~JuDPBo-j_?x5YPQHCXkV@JAo9vM~>I(s2a@Ueh1+COh zj!|HbzF*#2H2Flpn151$5fx0)h{w`iTR?Mry zEq!*!a#Xg9MDShtoIuUZ!?W6v&i6pGo$eUHC1@gZ^Y)I(w$32&(kpx8@tm?zpbYLa z5(PRE#ob)nif(zkIAk1Wix#GI=_uDY&tEp(0vI^bk0AGU8zU94Kog*anc6G0@$~=U zrx3??da!=t21|_S-gTq4%%{Sy0%izKQh2jsd}|v-G6$+Eo%g^s5OQs~iw?8eoI~gJ zcjet5kQvfN+Qjs=N^y)H-|Dsq42O5zAu4D%`iTCf)Y$jEx+B;GHioAO_*aie zG0EJH+OTvIsyxGrif9VDoeG6{T4X8oYVb6qyXZx9C4ZJZpZ^Bxc6Vp4-7NNg$vzFA z;OhX$9Pg#bOn@m&`h1FTxEIPHf6(1Osan~-)>@q7p)=@pO?G_ZxWPyhhWb}(|MCL| z9raxxKj%dYU@SuH(Uo&BsD~$*5A{hrAKuIw>w1b+1O0fLq zWk~^Bn@b|(F!S^;^H1XMpT&>~nl}p=_^zr+M9ohaREQ+*rylKS#|B9yijR~`#Bkki z$+6DpPDU%q0a&< zR7;7j(tnVNoMBkO2|W+ApnSq*NAIsQxM}^3=k&<#ow`Mc2=$O=pVI8`^vN@WpZ-$~ zdY74H+}``_Gvwozn}1W#9;ltc(>ruprxwMWLI=nA1^rf5UedKX$BvsJ{@(#d>RT+( zr}#_0d0pIigk&oh^?D)91wV0Pv-O?Nb?8t;i50hdy)>zGw@A6JbYVB{nu2_6glS|6@*8zQK$z(is(`2(u1kGZ z26O8_;DjXpc&oCP_@n{`0@<8_Er5Q~p^@1>iI^ z3`rSXqCR4Vov(v>GgM$t=)ETR^%imegCd^KsWjZmjDuT+Om;5`6)bzbX(e}s22@F0 zBHqZsKW7p-D9v#MYPsxQ@R&!q8?I1p7QV}m%86!rQExj z6PEWoWrdmyLY(^Cf(Ew@5BtDeCFSA=IG{(Er?km;Pxvk?^vfpp z`k>jgd9*)#uunqLz}#75{?Yr3SUhsEeKMhqIecj^TLUlqO6?q%QX48g&-BzeZN{NdyDUyC60c9;6|5c(Sx zIJRd8@9*xikJsxL`>x-p`H^MQLWyfUQ+U@m z2(~!V`~<;!DUeyJ(Uj}c(zTWV?Dp^AEuN20_JxO1cC`azM}3d49wC4Rcp7iJ%2G9` zTXdqh#n-D|sGQbf5Z@vyNGonh#aJDRIrRj|PMnk~)I4r4sy-bszT6;O8Y|2(vr+bnr$TgWDhpDad-kf zLo6au&uh-i)$5^M)L$ur5r^arK_{dQCZL1Mm|jlcH_4$SL;6e_F|$j{!Dm015U(Jc z6+7*NPfO}D_8^zzv3dG#i2jjdd*9;cT?bQW?20lvHSA)oZn3R3HjA#xzQiRdYLZI{ z6b?@Vm%1)rpHa57)J|!$|NF~k`}jmRljtWL{>v|2wi`juMrq4!InhQ~2+nmj@4SGk z^ETJrO{QAPn%XqHc1RP0`T@HXi55wlOr3hT-**@y2ooJaaZC(ONXof#gIm9d%7{w+ zFLTTtK)c!mM0LhB3iieoT^AdlU8!}4>10<2GSa-`b0UXUvD;GS*m<547*Inrh3qyo z`mY$F2irZnW5+@^=!D|`PL}!KxbJvICTNceN1M72fM@ESSPt5QHjf+?7u*v|7I& z_ncjDEoCo-#xnaBGW$kOok_9RVgc%es4An5B?*pRitn_7owP0BWsZ}X-9EZTz&@~(+ zE?QrLw<)deE$tm%s}ZXuslp}*UDh+M+U$Fv`+FS`tC}$D#L~d#c)_Tx%;g)$=dt@L z&pjG8Y1Py9zi4a}PUJ@eJt9NlIDA2)l95L20k(0-IBOtj=2jzPb8+5L09vjWVx5bfudcxsx_8?T)?zIx$ z)zfMGy@}dqB*9rzh4aQ$Xf33!!&Bc(HBI+~;dQ4(X4qH6jqfn~=toAn_628r&83tv zzk#yePMY^So(LD`DXX9z{%~rL-{ispJ$yX(Vt|A8qJD_JfrFy8b88dJQsJ!LUmRM8#d{?>=$$G!aRbb{ZPiTx1}lOWG^g%U&}MjGQTD1g@kGm0BVY|XM$1in3lASt~9?XrvK<_ui8o` zAjM}SoA{)t5}qGcE72Xgq6HdwCoiSo8(m^3Hw=4$(YoI!%b58-N{fcr0zYKKp5T(`=)V8m_w$xA`yOJ{l$<>YpC~V@ zP|!2bWI+X?Cc&iR7vrm*<0m&zvGc|bvB799>|ot&GUe8=COp6Pb<`7|90|j2Qvkx^ z-lPL8J*C=zbt}!}8uxS%!Jtf}l$jRL*jcmH!M^}jKHY+^dKG2IIDqppN5j&Ro}V2UehikrfQ z&(kTLIc&NDq9##{+=_QrfDg@&)rz3(=8yE6kJ#sZ#(bwJ&mQR+I=Fwp>cNUm z^M7ZB<&`Z#so6nXy2#e)<<8<0E8Rfy(^={vUtIracAN3j0?U4))#{k>t3l2nEATOZ zgU22akwURcaNQump#E4gQQzG>MZ0+y{`d*4`|pMgEAfUt7sMp2BrIR3Pmwg?Ox?dL z(jSqKyMyzMF)7}^q8Y`hdI0^MV0)sCe`A8+k1uFWK|Svm4EA791c8P_Z$_i{Iu=C1 zK1O!W1bWq8eX9@9k%ZajsYDyxd& zeb)V-)iyq6y&b0rvAwx389LU{=4sRhAYcMSO!m6QIIhYo_5;M|s~sEc>`Q!V1vQ+N zTs^sTmIt!ijs_71hm2)v|9cscwqFne^b=?tz~9!5jg}h2dW_WyeiBB8_3?95O6n8} zpwXw?zG8~D*3z6(*+ zmAXB7fs2tFlXpQZ(_UAo{`dxD)iVi;kQb-i_6T+dx1WQ1yQ&=Lihgq!g7WShK8-h& z*da8wuYRrM%n&s=>|Ca>DR1?hiLcowZ%?;{|BR&l4wkLv?aS#vSklfh+6=dL-|`7j ztBX_kp1TyG6|!q^oFd82<|=pEE=68a^(ciJRZ5|7L_9kF<*Rt{y{x<@yPpckUfgEX=zW^z-2>jaHq7Ho|n{Ux8^?^m>8A3C;ExxZ7C5u2AF1VBQS)9wY6!O$$GMjLqkJHOQ+}ar!58ZTiN6(+G^wHhJ7Syzgt~%i3DCi0r2oJPVkI_ zy+N8h?x!tNd?x&!v^vFek86fT@>bTtxtay27}nd9!gQ)>fyM5x+xE)JJ%=bGhRJ2x z9g*ZKd~(V?*nNcN{}ytIIJN&7i4C`lyQwIg{h-M2tDeP)kX_f8SLbJ5_BzB$52E6f zLksB0txs&1zXMSdiX13zLKU-sc$X1BJrcg0RDHenp7h26U@2>PJuyR-KNz_f{poVm8O*C*-wMJ;K$Fe+MJesaw@ zq;t&i6~H^S3?ZBiXXr|qEXtw?N8R`l>=N6JH8P77|1_f#%+2V{EJ zFve-m?Qb0=2JZjj{qb5G#JNCW1#Hq?#(9%%O?5=Tr#9Zjwa&mvGDdlX zn9}<6;?b1xX*3Qns#qR{p49NaA9CTRIPO8;A92zk-KLJ-8n8zbj>{`h$#4IY+y1xn zG*NA8|5_kJWgQ=`4jjeVoum>JJ#t{xA&-ASet$3~c(N&QZ1ZdOj#pKrb9UQRW9;Yn zb}w3Ft)vLa_mBt4G291i%rf4lg;g85Y_sE!@$r!)sP_?M@3HVIetL08_0SjwL;%1f zV9A%nh6Z>=f6;;6Tg4=gr5fJP>&hZ(N7h?7A^+-@a+AyDbyxOXZ1d@(4l%lV9TBCp z(|Y$roLj|wG18?hR6*>&1xv3FYj@@rbdV#P|D<}~c8if;jj1j{bG(UaOgr^V`n<+B zVn$T>i@$!gE!c>d2NaS?@!}6xFu|t%W|p;np10ds$Ge^)ayu(Q5I!BhKA3GskM6jW zjI0qTfL-E#1W#ul-EDrJ&6U|D;2?-0LJ*D2ELBX^^HE@? zy;v{!+WDz;kfh$$;c>3xDc7$ub#Ilsdv=u|i6yvOKjgQ>o@3GZk~LN;o@)NgMgatL zw8m9VL1hZPz!pUy?w}KAee_mdX<|5;@S?8#}9ow2R9Vqp1|E}C^7pb@gR$JNFoW{||e@0o=V#+7E8IY;gj;qi&h z;eFeTXJb`toj-LOKrY|x9TrnP#%Zy1*P5mlSI}hK=Iaz>tn;ZBmdp?{xILroRFf!ji;~Vh6It<=MR5w05SbF zas64nXGbAg{;{%-&pvrWuulYfGs<@~V;f?(Siu8!_C_s^yY4|{C-xoRlPji*@zZK= zX$3zW{cdXEWZ-hU|2I*LJqJ_IwoBN?dFxxV_%(#TRK4a==L%98^@N61XmbK!QqM0x zPKG0V>83-rD8IcXULXm-1cZp90-ELCEk{aWSsqjGAnqDVHx%CLCKYv5(0${5p$tU!ufzm!oh)l-ykUl>D_!vy-(To;N;=ikJqng_OnCG2oYcj4C%wf4VX=&ZX}|dMN1FOua`n}y54MdF#Y6Q5MG`R!D#OZ*Z`2Jz6tI)u zV8_i*julY(V5VGAPAd#jFz2-J63xhkVlpV*wUjVuQ{eO_qOH`hu#4hXC%vKVmQFyl zyvCV7ZN#WA9x%7Jstuig3+w4b0q!40rYd*+=urC&@X3i2OV!CPapc3`8z?V>i+Qm9 zb-*wAs7OFl6h_d6iFg+%D6A;ujnv9FN4Zbj`@YKHqs(t?Wrs}f;?s_vDCTP%;_=*2 z!iDWf)-%gDg5#Qiz@>E*3ma`zxPFa4#5q1CuhQ~aYGW<8NiJt&y0*c8`xWYSLMK{- z(``r>acv7c^!dn85#wv-z$al7P`G|wfnegc+V_e&jWHcQeYfE%p}*+BrONWu@`0UA z4b)D(W6#!b+l;PCvfOTrzg+H6lBcWx8l_icPdp^_nU&m+zU>aA+ zXB^>oe}rlVa(T(fNuXTpLhVxpoQ903eGANG-i~c+>`;Hac8NjbZRG7UF7Kf*W*JO+ zk%0_#mke@u692rB=e`Y58x&-s|BE{%W5BeLJqmV!ehzcFirK{-$aPls> zT0iL@%=g6x>(;s~Dk!s^an;e}^hwqS-Lj7&SMFbq%Ab+@>GTZ|0XK5v`XPD-2EcNp zj!5e^6nus@Vd-Qh6^nD^HBQgb!Yta(vUYLk=xAlH9GI%rnYfPZtU$82wVNc%H*TC< zGMrqB*S859?HfZzo7K@2TOH>`yJ_cG{pE z%D>SQF!ggw9KrWrzGQ}-7}2>XTXH%51t4+uWaMTtG3WT>|55c#@p(qe*G(EVc4OOY zY};02+qU_}wr!)aZQEAkM0`CokV+ZWIM%(M5JHEU*gwbLVo9q8%L2(|NNhY>h>`qcHKE>VE}x9fR{ULndb(B4$RU+_^^d_|JQ*jkDj*;}<-_#90Z`$*wtUX6p1xkF}8}647lr z%C58O513dW;~su`w7$OuNmt}L$ZbBPB?y-zZfVrFkDs@PSmBQGczyegUiV(RLCw;z z2i0t&y@oa5qm*>X=AA=jUA~o;^GmeOh;Xj5etl1G8`@3f8}~n;Mb!e5V6$xb3JR5q zn2IO3Q^ain><-qjrcRQHu>CwdMp37cM3mW75fcSYPa`ng*RE zD>nKUG@449|LBOj6Hu;-Hq#`hnWpiwom-7V-CvN-|)syPMF5{ z1Jb4=jSHPRL+l(wu&SX8!rICzncmpu-*F8dC-2N=n+!nAkVPIh9zEm4B$kt19>sWF z0RpRR@`CdNSX_}ryD=tNi6PQ)c4P1olKsTtY$+xijiQb7g1*baiVcoO7%MCEKx4Y@ zqf;MWe7%=fUicxVz$Pk}^%~ zPxzDnM!LIfoadLi9bww^cO_Jm17rj3io)ng6oGEM>Pl;aei8~y?z(L%57mLe9|2WR z@G*_7+1IG4>Y|KqJ3Pj{%v8I5Trx40btW&PfUnP29BllfQXjtY;`%Z>{iWA#fu-J& z4;TxQwyyf_+B3ps9=ryPCh*;wyJ>S?e7u~Xrss3}7^Yik%csJQu`4~nPjhPtkxy$9=$fxbiKCu2x znRb??ms>3!vZ0C9f9-HG*mGbYLCc!-2!=XCo9f_31zx7x5z|o9^T%}>vdnC2U?~ZN z4gn5u{Fmt&Zk{NK^_Km*R{4#CWSi0Izi$Rf1cl;0jQoB^j|TgAJsF7{kgu75@2yWR zi);WK%`AV#Z-0tnb9_VXJG4RmsH2`{^ZASLe0HpPLwis2oTt7U)(4^`*<1(0{wffI zGVBnEJJe~QVb|~(P4eTSby+~^e$q4_MIn-{o2RMt3?`zot%Tu$?|u>N^z#L22}q2& z8XQ*@Y6@ay%)#2a$bT_DC9Z2G588ReY4ZxnPUoFsr33mI9tD%^M(qz>|EL6MJxZ@G z86aXVysS!%+j4wLuR5g!#@9|DARstY64$NlPC%>B8j(#yo@PpH-%NavjYTS#3&C3i zz>h_${91mirNO{R>oN^CM-SQ-Ui-~Z%#6bvR&*qYv5d+6{?wV_o5{nKQH(BIBQ#GQ zF;mX%IeYKl(HR7a-2df>uep9nANkZyGG?OTcHST4X^P^1+)V3&0lYv(H3{?|9;+h)XKeq!AZBA@f~v_UEa%p+RcpPrvL*w#32DYkb_)?a{aExyNZE5N(! zB~CiEvx85_cKU8yI4~f${2blG=b}ZoR+eG1Z<}VmukjC4O+-xqRQ@;ML=324BF=ac zf^h&ndXMmQ9=fTI`#a>!WKhkezC$!S)W`*H z7uIuDK;%55SNPQ|e14fgh*F@il92j@*VTNL2b8-c@KD?)DdB4is3>fD;S5Dl&;ovd z2^-WEX*}<`P|{INtTiLZ#?N&Q*moQQCnGy2RH~H_)tAr72$dzA#eGjs zkD8By+Fmn(_s)OJWc&_QuSr+;YqrDb`=Xpz^4EhE%9&y36Q9cMq%t@#+R z@6v-|{9jABjedKG&JHbL&MBvaeB!*O}OkQBZ(wZ%k&SB>FcBl zP}xucvd?j1q2cYFr51=~wtU_(k1RE|L(GsBe#P}T>MExuDn*ehXei_zq48KLp-kF% zlJnT(gc6{-q2k=uQ|)FcRFOelREr|ASd!W-K^v%T#^q9|!1JrhX_hCo#8ke3kMm=2 zNu?_?+5acU-F?pv0bK;v-`WCu{T{x5-UYABjA2aAZg5e;MA^3faYJSeP`Yre-gW1E z0j4-M6|wU%n%Q>SeYL$&_aD`~7E)3tvBzyajZr&9;r*}jUiMqS|KXn<2~7iCsZhGs z7P_suuRpnuT@78cUrO4@0=c6d<;Eg2^?OwdVP(ZDm1DWw-tKE|nt#4AU?v^=jqxXg zKugW^P6?m*-5;Bu#)nMpHjEgIX1Yatk3UFEtk77-VGtJ&HsY!M*mW~j}@p*ZsQ{XBQ4 z3F+(LPq$m9=Sh9!^gkV=(+vgHsqZ(0?V56cMFFZUahY-SLjN3xHs;8nggs|D43M_Ft!e`e0c(9$A8x8?aMp;7l{t;jIF#MU@odXQhYy8 zGdeT$#%GFr-d(+8&~&p7+VE$WHN={P#Ms8mwm!dYt(V2I+y{czLD>>W(Ixb&X~$3| z6_ks(@d%Mj!y%Q@8x-UQmeIW0aJj>hEwn8VknZc67h!FlAtOTG`wXMOWEg zN0@NTX6*>e1*n^xS?xxtva6w*+bH5gqHsW%2v80Pr1P98f`8#R@YtqBWmQSt7(+_LewH>PA+-&Kyl!?zTbN@&y5$mu4<%(1O^QyKF*ZG*}&X* zCyUHTq0Ag+q_)W|6ue5hYPAyI_g$tF!b=p?lY31)sEnYRvSyDnlREeuIGwcy2L zruX*1AzE2!N~!ly|4R)yV>Q(HK6pd*XBbgfzMtL4v&R3&*|{b(^8?fxG%k&8^RY#O zI$M*g<{&dA-=NB)VGmF!3cmVk?=|pTP1tcZBX>0ZZk9%8+4hDSabu*IvYS4)nd`eBQ{Owc-TfX_GTJ(> zcr7B%j}N`Eu#_Q)q(-s@X$yXxh@qne-4N6=TfTvYY)mAkVcy^jSa46DFLQ{ zNMbc{<|IZFy>B5gS=!Vq+7DeFPWT zX_Ggytg{U+KiD^@kR+@uAXr2YQX${ksKwcKnrT~NDFk=#CBk}mLP8s8xNk$fB+TeW zu{4!oLffOI3YI3-;@;RWJa*{+qK65@1^+QeTG#AnEX)0zuVGg=>L0tqyh9C^)%W<3 zz_o)njsrBIx$fMdkQzInH}K@2r|cz#U1iee@01EpyPOwhmN1; zmP!`is&Qw29SsPQ?x)r7TSrIM=R2uHp&fdta#7p2rAribOJyjC78wCXnr6u;yt2JMK`%XE?$lx3rHWVV z*|2q-!9*h4zLvE=yuRIuW_JQQ9N^idNU(CA2*eq<(@BJ2Rqo=(M2?AHbo&p=^T9GmIJn*jSiC!siukG-XX-!KO9KTX;oxuz0Ap=OYLt ze{0YbIT-TRKm`Qr2Qbc$DKYaWg8?B5_XaY_PI8@}p^p9EmgqTFCeK}+c^RCDFbY3j zIsBc`Y!Y(Mc$OrO)|R@kWN3O|jZ!%TRaR$ehKu`2w|lJ;p_o7zd-XjECU`Q@X=;Ex zJeAB4v_)d8mH`$;riEdm&sCU>7FH=warQ;wOGI=LheL_7)5cFo5d-UTH`PF&z1ZeE zLyDpMQ4@fO5HWi%D*x65YyYr(onZ%GGOlSgMC!`tH6dm<&$x zQodq!a?_i^;lh12uw7ca$AOUI6W4C;Rot7pTop`!3UQPC1B&j<%hPS+l*rI1PUNSI zBv;m&#HX|Rk_&P)c(cVY72yk`|!44TO*5EEoo-Xkj zyO&DqypC|wWNR=81PWb*8W=%wLX1m7(p8`MlRd||7!`FdZ8l-T7_z)^eb+U>&ZgMx zHpWKNYpaj7w>@|~k-t~*zys7K&6@gM8J%MUn=AzasDm~MlL|c5%08HZg$ZR!cK3xj z-m)@_Ec|!MZthmn8PGr=pR8}@W^3#lX=NMlNhq&5$Gl*+akFbC)LPHpsGy=IBg0uj zmgk}PIeL_IR;oL_cw9kRm+prR-+WO0pnrkP4B+c^cujE0U|)5#xeB5>zZbh2Xs=s9 z_k3NnFaJcge81N%%-8!TH~<>HEO3(DqJcK|?9l4LBpdh%d^A(iyIwFLAs9qFNGanv+F-SCRFmC5)h3fA%TN$Fjm`yUw*URyv|Mxm0SMpi-? z3QTZ0G`kMy8LOlsr*XWjmQhU|FJd*O0#yXR(+WWj1r%;CBgj&wa3-S@gAV{uZsoJdZ)XOd6TR%Qp-Zys=?{3 z%Z3yuZ{)wRL7po+*7iwq{F=bs$~0hTDa4{&n&?j3{dpwdk*--vnQc<`fvTNz%DH~s z!I}I)t$CE0Bi7F7(u3T(H*TrKj|BZiy~y?U)fPRO6~(jF2n0H5dSI4y%TrSz;f^&o zz*ZLAtq1|PJ@2y6`)GiQt(BYS{9Ef0H*-Nbt z9~q{9WJ5{(E1~X*;-^@XjpOGVFqVr@IQx-havp%r3X48)^VCDooZ7kKp+bvhvTeC6 zvMltr56C8rZSsoBqQ=WiXokm~a=3dSGVQUr#Cbl%e!l)>T>>{ramVR+hSQC`+JV70 z*B^!;H}zC{_l1P8>D~v8JKqu`(Tg6&3E0EB%OYp&x3oJV#)yY?_(9qjPYayQVSJo`rl>8{1nT#%OVsS4TNvloMg>Z<4B(9G5|MVFh2Cw*-TZb1ebn-o6*I1~T#> zC?Hn5@#@8z$H;X`+khxus8Bpo7S@y9K2)Jw&W~ol{ooPu(N+yw5QmLeLZX@koLmv5 zIPYkDU?fEsL8(S8ys%-I#r`JDgIK<$&RL&qZ??TR-L@uGXpC3U$}!f;65I~QcWiC? z`5lwB5m-j&=5JaU`}F-F6;&sk13%||<@T@k&g@)>H3`scOi#*iQQ(sTX{nYr9;fW=qw|LYbQ1eA^3 zAK34UDK7HXawfpe6RtJ-OGP9=%%TIAi}^-oU^blhwQ2z#UDrK~jfXPs)djs_^*` z1v9Pqp?a$n-2jSj?P=sC+Y}TYmPV>xbCG8#7+52ACt19W+5*CJ!%Q#9>6d?uI$i#n zJ`A-#pR^y_QB|*7SORbOQRcP`6COI}fx4m{ckds#VH5?g=QkQcu*T9Pay-4c5{=~2 ztz`VoAKdNJp*8hCN}6;0W2B-A-`z;W%PiyG;go-AqvZtmmgHL6rr_BN~v_#pzRqgYK<7X~cs`R}c(g6+0hpFicj6yxBnd zb9)F5JARdv=0!SyMV(V?R7SQ~K^ua!V%8_VXQ`>ml5n z=Xk}5VH*@?e_8XYmeoIz`wsVx3%Gb)G$^wZX}j%%!{gEIk9PQb1u5)G;Q4&ofS$Iv z-Gj35-f=CsImM^w6*V=ajP1RiN~&!BY26Gho%(3%YlOZWS3*^JXCUTG{%l(PAAK@q zs1aEc-t6u5!snCFrNGwF{Q&v?(jfC}6$@-wGZtggr)$4SU#2l&bnHX^9PGP9vg?3> z4lx(-S|CVE_10F4Fw+39b7ZkVqyyY~h}@++&l@&P^c@>WGHjSS+$`c~;VIr$#hHI* zhK}<|Cg651PBazK_Q}>_wua=ZKvQQw0mmqKZ%V*-Z^k-X&n6G@d7BKDZ56-{c)I)C zAOA~n9k_IBMwVpYxA^MAR%i`JysA#2fc%3^rsGL}*3(!~n~IH7f!n@nnES%vqW&g?j~ z-PJ16ATKIF&`@j){0y&hEoPcUbfU4pK3arVbk2J`1%VW3y?U+j^Vh29^hx{F+r(4L z`6)Q$9|3wWkiW9w%7kTf8u7-fF^2;#+De&5(adQXMw>~MZH|tnRii0w2^%EL`y?@1 z2C?MzR$|ShtMTF$^1;ZSAlM$ZB~K0OA9mm32?UVA;J=M+@zK$JgM90}?x3FX`Fqdn zt3Y*_fn{>)m6K-IUk92rq6#K6EsqmPuyj3i2?n)m zT~6%a6QDNjW?#&j9s%LpOM^B_nQ4uH;_^Mn+{$+M;Z}dn0|tt>uYwK5ApnpH+t+g@apk9ltn06sN5yYPGbwhPZxac8t4i@twD5rvrhh6X1Pc5OIfB`Q_sOph z`c8)8+DobC8wr5ygcPF2w+|uAD%G`qm3X#ZLQ?4 zi3XI9ApZ#D=O;o$on`rMhzGxo31HzhP6S(d!v#Ax`sKAM_9a&@EK5_(z9#)vuN^_G zZXV$QGTEu>X6-g3vdK&S?PF6SrqlDX(aGFH>->JTw&h2{seQNiNrjig@Ui)iCfe34 zYpqPDCyN1_Ku7buiA+!M%U_DKBJ@|~P0A`(v>)0UuX`(ZB)xuN+Zo1pZeYfXE*6_b z+l!#50RmJt1#GWjsY#}&aR;C!SO8KT#x z(ML^WNCtzA3Mth6E)0fpslc!Gw+-oJaeM=pvpw;Ou56mGHpDC!t43>>8>oXw9SqLe z!CTlp+0!p}-5dPrA#9!3>Liv2%>Qz+-5B@4ros-qvhSN6**{%6SJWx5|EqQWvm?&GF7+EMxZZ%N3GYSe4gq%}^%yL9m2mR4-QPFtED#v7>133p72}JmCX`NV7 ziePa<+!{p+T zOsCo*YwfgNLk-+5!~seI4=bxi|Hb#e#-|~byl}ZjzdX#r`~<(S-}Us|kJ}?THLs5N zK0^`ewmP%}8-PfUKJbH+Jf>!XCt(^Z7P~Ov5Q(_))H$Kr zAz>(=%%TcNX6@Z-8qM8bPtOo$G_k*W0G<;^hc>BpH{rRXk%j1w#UJ(1Ip%^ta14Gv zMcCd7+VjYHXxeQRdXH0y;9|@ zR7lPn+8DL)|0=M*==w1vR!vVg6;|_#0|0N~3Msqq>fhc`a`iIr1+|h&=sWuboNJG; z_4*xS{-q>l{g1ylvtZt;q#jEF(zr!SqT0Ir?oNTLGI2QQ^%LoH?`)lAGUf2%NPTW; z1}dB#6;ZN^1Ew0d(VTmN(~^4n0DNy?M{|7HRfCaMzuN)DX|F<1gv>;$zKjyN&W)Y; z9g61@f%lVl#AZdpd;k51_%7G&SOfkLYN*c`{nYbnvn>LeWLU%)Vs%u4mbY%=XhtfT zxBy##P#+Zycb_p`wM+_P*#pZ>8o&QFLd;y&q8n*;!Q7=F>wM;DkXzrmX~9Zgb>BBr z2Z_1oG8!_>5i*6%$EX3w8`a8VOf~=SfjpVYsN6AF*=5j3Sr`T^E`Z~#XsftAg?7ngfPpNh-*^J>tBk8$eNjv0&ZrS#L>VUgP=~8#Ld*i8cDyRIi>t zH$VjB5(V?3q%B;$_=DpE_1ajLv8*5cI<$07@0h2m@ymORE>Ir*@$3r_KA!RZK)lP*}3@vA@%-IGMneln%8ytnw~virOEJ2-7pHG7<7dY8y<;zC_xqgLKN%{6Ek8v!x%=<-+4hlJbH zYAtlWxMN{R|3nHDMJQ;an^XL*>kx$wS&C}xbw+oU(BVdyRnY%MSkBC6$U;9)(lYZ~ zhC!d?bXsiX*gS90%s3(5FqJ!eLm?!|^SQJoJ`-J_TV&oqfnGZT3lYu#6*6;SOX=JpaLk^k^~J)I-Y@`cw;hz&c1DliTw^%j>gxoBX1p;4^ewzFKG73#}omkdjAru2~W7I#~WC!hUbMiFB4 zI-h{s{oYs1L|BbtQq9F)g?qy8XpF_*aPpV&Es7>kry#bQxN_uhILEp(T(1 z5cgl0d-kD{6es&T0~(*QOyZQR?;-Jpj-tV6Mr+h-?rT^(*oKDOZdqJWxh)ZEqafW{ zerCN!yT+e3xMgGLdjG4HtA-#H{*#j4_mW{TvU@w&i=?A3*e(!sfCgMIx_J}H9y?9& zPY`5jrZXPaqiZ55r}*_#Y9|n8gk`j96WO$g^IFoDo}^U=1`oavV-fQ}Sh`Xyut>1* z?G{r|WnwAj{X~>ZmdBj=CIZ#a`=P%i#p$j@p4{Wd{Xs5)ZY24|QVZe6wJPU*BXp6J zFRe{qWZ<76&m3V^9I}V>$F z420qRY;lMYD) zUEByZ%JO)U9wuG?E=!2`eQHazJdlcOxt+to#~hEO&=G>5U;%OzAD_Z<{irfBU)=K% zeGSC!M!KTs!C~I!?}UdMq%Y$~#ir%C)OKsj?UTxUj|H``DMC+Fx#<`#Uq9 zF(Dn9>Rn>+n8PaZ58d)mwGi#9`;)wrebe55O_PeH+NK8UpM`;B9Sv_f6`d$tz)hw zem@zByDG@y9V$7hv}6`WLRf+y4ed@6E=1}NA~k?H@SsZaVB(uQbr2DV2?#A(zdR^~ zP1?I1LfZ+{>Mb60NP^7M#$ezjoqIKX2!kVPN4`HL3g4`pZtLG;MnAX7-LF?uYnkOC`CW2zTy~b<_@t|RJ4;z*Y)F-- z8fa?r@Tk6Nq`V(ZezjA-NDih#aL zqX8Ep$(|qm!O8n=HCBjQqOT6l_Ai5Z5t3LrK8|jp0iKZZY(WBhfPSVVTm;tdD%-G- z;&0#hIDZLn_INGtVVV%(R@1>IQ(^&s#8No+8!lr(-f;DF(oz2`1jBI9FBhv!xr<6; zt&T{yF@kg|TZPIpH}kg&>&0C0+@u=sU6&>`3c~JIs>b)tU&;g?wyJlt|4pZcOw9ka z)&iN4!-ulNj2P=Q(qYTG*808*iU2+WqH)l46QneznUpd-B_iGQB`nxT*z6q7H08NM zB9h(Ph=Y2Vo)@-gMMAno1!Of7;T5|A;d76)Gl=jRlcX6FG@gAjk7Dt9G2%_r+~Z@) zT6K9EO^R|qCm81bMZd5b6|$K;#I-`%pDXpX(vkjKsGG<81BQ`~Mv#`07GgyBddgfa z*fp7NKj3=FG^y8ZU%K#O{|G&GxZfUQ-Wk)7wIl-j;dE>Gi`4Xu0K)?T@)l683%TVp zwKbRmew{W90Lq>E+=tfRY)Ri#iV0>MuQRabLIn`utgB~=mGq#^o_w*`agbPQDtsyq8kBMEq;h88C&Zy)8tD8 z#_9FdwWs&B-5Fm;Y}m97Qb(?tbO1Ba|ClPg*1uxA#;;co7K7P4&QKd+62;%0=e{>4 zG{Q+3q=495O6--DTO?IaZH%^r%+6=zKzF!8QBKt_tn)zLh+F)I9&$->T!YqDf0Mif z?GOCgmg0jYiCEvr;H9rd5Dze=Tt z2Jk7`9J1*Ay=-=g(#(?w6jZvr_W2l%7#NLq{z5M_OD@#JLn%uJxpF{VJ0uPTcz>=P`08{&pjnl=sEb zp^vRq($G6IWNPvnj7*OFIsG2SxAIg1<6&DWxR(dH(fQmUy&5@23!YXPzD%vyq_{_& zTaI{>5>w)&KpwC2E>!WhthVEv3~hDE_fx~k6Gi|4CJX{Q-`Cn($B<29kS>3y0_8>m zCP0v&*WH7wcK3d3pH7v@qRPJ7I5v8^<)yKnBY6_^j%=aT+PQardFG`R+*RDyvvp>2GWsXSZ$fIAI*FRc&w7!!C#}Jp9u?2EOWlQ!@|@)2?(sL zika^qHO@Wazwc|5Nc{l#`Rex>+zQL$Hg;hx`Q8Wpgqek@5i$GaZeVh|1h%eOq%)t_ zZ9Sl(9$$b09`f6o?SLRrUR>kNzkGXB5D4C4UtES`0zYD1?f0k?aca{| z@+caDXRX%q&l5$LDWfB(!qZK{<)g)otAa`dhUN*B9H$QtVH6U)2Kc2kQbk}2%=FP| zU?&9;`IW(ObU_wLi8#S<1dzmvg3dZr<5*e5MP-ncIEOhq#7oAh%iBJPviy>>ZDD**1#0&F!Gdg*;4ha_oCWj};0n-UTN$FJd4P;ca5 zYQj53xqI9)-p^_yWukRyV0=6r4rAm}G&O79x%Y6$=0#w~^M^|ITq9GHMXsPBD;Zxn zKT2|sw%%^o(fNKE-hKNZC$;#iy}l(UCv)fdmaaa3@Y_t0IGZj9ksEJbWB%YzTUFXZ zB>DJKwVl+ET9#o!meVWS4d!&TE!DiaTbJVS=DlC_>} zBZA5gYfWbUriUqhN`chBkY!GDF+vHfC?D6kK4EkZKK;a)Dayfqkc2g=G=NCz!BjaaExoD6~Sq&tU9j~bV@>UR-_1Z;t_S3FiIY~!5r z>Yv{SG^=)S-Ao)QWJ9oLSR_>Eq@wM|Q*IN5((gV zx+kN~Vol?H{KO+`_vcSt1Er5&g4yL6^xTlNGSCQH*GGRWTUx$hM~GlBD>w?|uL$xQdk?(&*LDP3d|i*)RHxnwgA zIt)vFib)YH_&)%Qvg$!K~?5`)~H)mt!QhL%0jC znL%@bILqIp3ft;~V~ohB(+PjY>-!;2FD%G+fW~Mq|4lx;UijZLc?A7$bkvZEhC1D{ zC6j)<>|{5`Pc$~>hIx_EXrsfCpU!t_37y_2UptplQez809d;mu`Q~SX#IN8MM!v?x zsYHUEG4Y=lAb6R7fD>FrAHuztRMB`b-- z$vnn3&>fK1h=j?0;7-SCGyX2g>6BO}LR-BXQ1}E8pT6 z26^m9P(uii$OWo4u{YE%`(}D)Xu0u_#wo(9mmQyu8fk8|t!B?ze=bHBWwG8$(R6F7 z| z62i#x*iq07$Ru)J@%jS`Fs4idGw?|^Fa&FvjOcKFciMu&{9vrjKAYsa^)RY@5Fv}{ z5@9m*!y#*Y6rif$QDfJ;7CC!k3n>w7t+WRMv5L_ypDk*jSAAaiQNR!(@raFnge`iYS6vV2!@%c9!y(vk5sPzLiKJCgiwoQ(pnmXOe7-9IBHwDFG0Dr}E5 z?ch+qu{2;AgOn6*-CP^I?`!6r7I_>Qd#yTBHpGQy2H$37hpOxsA|P+1m^c<=dw`p= zY*(V6A`Y|Y0{84rgP#*Yz+nau7g_O3+K=|lPM6(!jx{(Brxhzy6*nI+ugWYbq$d7o z!@`|dt?%aM3GF>wF6+@H)ZIY-IYmYiL1}=6VAi1ymsC4KzzWD2YL}be3E0iMW=_5) zL#M7UesN?`CwKFFV4rPgU4U?9;;3evD@qV0DB$Z=)q@kgc*Ehu$!kAyUUWO)X6xVHD?70DV$;5dl8+nbx>ysmEcuriL)LvG)eE&aO19HLc0|fk}B{inEX~Aql%d~sTlt(JkSq2OV-fW8zwkUJLn#6xoM+M&*?w4bs@ zm{9U9;*^xURp7)XQ5jQLt9nI55rO{z*PPu8O{D=nDJ1jlD@$Wc3U`|@a_Hk%1;<*e z`I?wypt*aQn{1s|;nfhO)=Yt>{Q)H|NepL`W^~73IHt;p172T@9SSAxgCiOgpe`|( zB!os?_PEU7osg|fYe{8dx|a?iOnl@F!+F?9leRY(W(IeO8~|lFiZmB|rz+Hg>t1s` zDbk{#LU}u2h*w^bat7$%3lo((?i~`Hu75bThbba*R*lF*`tCdI9mJIm07J1pqgh>n zY8wS%Dx*m*;%5|M1Pmxs-TrDK((u#ZmlBzQ1E1B3B`=jfmt@Fgo9#Ykbm${_2`6k^ zK@2Xd)ADF_uzbmL+;>irJ+ZRaS8JIy0!YvDql3R^&kd{fE(+H+eGerMYB6S(B|>$O zs5e9!cztZm@l zhbooeb>)2Ct@(+?O#PWQl8>~#e{HUSyO4IBV1_g$~D!sK^n21+ta6T?`B zhu`KN`!){eIG;4yD#pY95J^1l;hW)4cOj@c1)a}z_~|a(@vV~R|Jvl@%GAGPL@n_kM5=B6Xt+uY7? zuBca%;~vU_Y$Q~?CxUDB*uBrP?|un-YDi>pbWT5Uulj7?LP-*TT}bg7ZYK7d+7_N% zJmrym0RFCQ4NS=m>Utx-!~2HsE^6)%xJpZyq)l+HnGz-3WHYm$m{;we4sDge^FQcX z>_lv?_G&8?LFiP_B#B~>@=Py&4s0OQS2ZJ#V)W7fm9LfT8He(ZN93~fwHPSY-AU~B z=Q{hlm%WdtOZ~4{faZ8GFw`(xUpcPL(wOphiNDcw^tCnXA4AYJs&DZD7ilqkjN<+( zL2rvcHtYWP?-&6_#*9XXsIhk-WD6CoIzuKxIW%5uSpFX~MZtI?;c0x~cxw9}MDaa% zDvvu(?sjf0bHwf>E%+P>gA61j6@JN*e*KY(69wlfv0p<+3|I4F&%F&|5*qr6{H$)& zh&s*<8zBA6L29- zz-G`&&);_7{$B?w+VXi!J}skju3 zAnQvj9}xeSOxpzfhuo*3+%I^|RQPsC0$`}gxc}j|HdV}uKkUBPReG@2_jgij#pm(P zKlbK1rb0JCYqkBpX2oN1d}^lu0xpT_k7p+lT?&7lnLfC0tQcrYiV}CnYNy8&PM{-F z`3o!p-EHMaw{CP+2hKuOvVA-2-D+El+Am85Bv2JJfN=w`Lk~i_;6OIn*k5~31YV?p z1;f^X;6RCH zXd5@{i;ZO7Z$^$HB^}a+veACeO)1BBC?c@$$nc^3Bn5z}@z$k@Y*1g;80*L7?$*yd zOR7m*OZQX+>oTL-reHO_^I=H-^S&WUI~}zbFFOh%S&@NSnz`WM>w|oK#$<{aM5jGR zC@4`7!=vd)g+G77mF$TrkwaWw_KZ*6X*m4$;uHciN>}eGJ}VrYqDS3f`JLrQOv6l_ ze+3)&Wz%rrg0lG@%V1_w)K{aZ!^AQupn4i$`*}`l2DyjLw7@8pA&KsL z56mSDFrf_8qYTWUoD4-i;aBNL0)5gRT&#h?HjAIl_il=DWX!gcd=xvQ>$x2;oHMTZ@O0K#8E?K$H2-q7 z!RDB3446!B-6WDt;pbH8uI1JFE>LS1$~#;lsP-}UNbqLTR&ixga%|(Gdpnk(^>?Zw z$8AAarKH6Ed$_h2V}CcHwU(r>sAn;qJPZ2C)`YoJR=ruLkg*FbR^-SociJ!V$w;^) z8s=dLgxi~T^4n51DIb`E0-d6A$-Nyej-g>&1aKFt&cwI&w%HD&JxgQpzEji@RM=w0 zL+7t6Gs@8_TUUA+K$}+Yv1aGFbBNK_pQPCvQ^S)q0px-%j5Lh+f}8+lnWFhvO|4Po zCyn|leQt-uhaC#RL9zuul-PZdcp;SMwSK5J-C{cF9qopzX5jTCvaUXvqXIdKcX)wN zXxNb>hGLlfiGDNdH5t1#$YQ-12ipTx;HdpwKy0q-cNyo{`Q0b`Pb&b`AqC{Nx4#;f z*yt|#!4|*PBZ}37wkofq222Y!PRw0IjXd)2BIB?Z=>eJY{-PK~n9jT|O!$;P<>t4K zeZt3ZDT@&Go!gZ1YT&nt{QWLT6TK|`5q;%w$YrGx&3wbN%;+jAaZ%7L7jYO|dL#)c z_MQ>i7!WFrahlpzs}!^v{>?9Q91fXWT2C8Zz3z%giEd~1^rlnj91b*M_Q45IL*!1s zDwWKuT;?dML#Kd2!!|_nP1TzKbyBsjZ2QnKJU6af?GZly=*=pZUb%a zh5!V&F18tqd(iYELvf^WUWhf;AGWB!(t2l8PcB}7rylhEdiUQaakowE7D>D=!naH8 znqqTGF*(`q@v2ny^Q~X`8x<%oSr&p~r}KFXeD_a8MPf{ZExO8l}k}T|&Z&QL2)u zY~teHXzfN>tyH1a!)fR{K(g@p6x9IEA<^fmYSl`dUbNG#cQhqE8RYkf77dMM8;e&A zkEh< zK|8}Mq^Z; zl=W*Z28aGdzq|6Fe@PAYeu4C{)Z#bkie_CIwZe~-zu!Eb!QVOw%UhC>>W4#%o*!^e zJQAi?Mc#`BG1*>`w(r0A=)_{WSj}!B`ug~?xUB47v*p^j<>PPp#0Xm>FnzT|P_BD^ z@CQ5Wf_I zeBUp$;UxI4R-8GGW3q~fy#yZcF_8>)wQ1m2q4MFhnqse_a@!wy$3nGrJD7J&BkPk> zbevLf7g^~V@`IWAoVztBtNp6XF%n3ViUM9AzJ-U|AV&MEvFG#V2Y5L=-%{+PY0j8#_>%fAC zE2(QV;qJI?+5n7xbroDw7>N|D_$gIIX!8;BF8~Klo;=JML9eWUg3!o>J`Ue?XT9Zz zW+rK51ddZ2&h^im=KSApBjP4W#jNR9Oi9tMyUyg{@PSs zn(uuy(QFb|{FD2io)=FqXoi0sfQWnQ@AsVmlJUoArx3cQS9hN@b=%W_lwXxJT6{<$ zj{a*CrQ-Y>E-?=cr^tEfM%|SC1=-CEs|-()BsNEqPwBd9-M=d=*v#U(BbNNy#|oar z<4*Y*Po!QUxKI!UcWBoR2a^&tz8Gbur2+CwCXV`~C4f#woWL-RkW+mhqdiPyFN#@6 zo;6fSdECtx`L1k{$H6Jx6nOu<>hP^WDf|z@!T85dqY zNO$LZ0s!Q7VWq_n;BuT|snuA{b?A|5z+CeuZtbRPZJ9aWeK1r@HMNQC=*RbeF9VH$ zozJuhtJ0<%n}Y(&*BD!EtO+YZrIcm_ciprBA0%SLBlz`Rmetu>%ZSST5z0nvL>%oY z8WG6h9!a=!uL+k;MO@1La~~tYoT!m2rBmtS;pAJ?sVgQlwc?{qEB*V_LT9sNgL}NC zs0Y!Z(Lq44Wn`kcG{3#f?!Ks)v_+97M|8h*>}9=KF{|pR5S6!@!M5MD8j~xDzLKoo zvU!!$yR}A?waJNXKNBg_M`qb#cGwO}+d{Z@JlQOBoXcFM7O2U*Pr<8C=i*&(Sy zA)lEQ`n-sIzt4oYUaa07o#qWeTO3UW5UHB#=hy{fPJ5q^{5TiK4V!xFtkSn%E_d{V zosy-|H?v^on&`a~D7L&U~c++-rXU%{!@Q%{PykL>viqPeHjRh z0lu+&va^fySWJIM$0I9$r-b|-i(tz`z~@6&?~2#2eK&RmH4Vdjl1T3U)3r@kf3N?c zoN=yuCwrCydxA{Jrm*zY{HjVTP?lGLu3wl{klJYQT%po!^ufd8d4zYHEKenw7@QtG&)s+^xuovnXVJAwb5fVu6+j7k zhVug*vU#7*-nRi)gZum4TdR?=)*#1W<8-VV8LYA-P@qL;**lL>BcOnoyO-JE^$}F; zIj0g$)rrlwNf=4_!dcZi1lw`KCV|}XXst$ZI44QMzpm(Qc7I)LjNL&4KU?M%y>syg z7{{w@^^A?WfuKwDVU@CYhgB_tU1?1&f|j+a}Cv7^k1#v3$TAX|=c{$=XQC$~Hct-a<IL07QE;bN5*OEM9e4IXJ6pCE*SsRODyi><5To=8rJ zN#X8!v4^x|_l;Sjy(izIpj)grc~k2HxVkr5Mxa)EWv^|2v2@)y;m+Fl12#PH*XvUz z032L1Pjq_G2TU6TN1u;$&-ZfN!#T&0$AMlx{aP710>@4kVfntGWk6y8;y`eLXg1k6 z@AMB)aXWSIfD&ySs^41&BPZQA#rM~4ln0Pbb**v{yVJLTU-M+g3`u*Cc+!Mu6Bp+d zDZqlcFl3eF^?il&NbtM5>0RG(+lGpqBop0CWYcIFpYN?m`pmxIg=hZu+wSVvexN=M ziM{C=(l@f+j7i3i`EOHik^%nTG@O)lENR$-Eq!7#!b(WCaw0VMapzGlg>sm}IYbPT zut_f(Ja|FU@U>s%jicUs*+Ojk1JNTGiT;o~RfQ^Qng~_)DUn4xt+Y{D!ZnfUW1-bM zOlh#fq)H6a`#GE0-s}0Jyp=U^OD2A#9jTVl;TTKqV3xeS1|&C6cr9oLR;l_uE-7oL zGWBVHTkAHMOKp2PRlt+NU%X%DJ=E4t&2o3@#^&sMV(nVXwK04$@OF>c{oSc086M^d z$HM)a$fk5Er!)rP(n`p`DmiA4>8fr`MhS9ebU~|Q?Awv3GN@a`G={68Uki~7wuC;# zH4fJQOKr=FOQD$UMyHnbaIH>?3G$HgcCkscxJ;2)S;Eo5tgA|0;hPe^>qljIqzH%e zYyM_KNR=}KJy{*?%xu-%Y*oUj#{DBYHqIh8!TfBBVC3c5(%;H>^D-v~S5H6JHYv@% zIuN=4@CDnq9{GBm7K_pc^YCpW!-WAIxxYro$;4z$Z?W%p|$2tqDjKXb(;N z*!NoYA&=zF$I7p}lH>-lXXgGDV-Fb6S2Wv}Ek1Uh6T{=O6S%sV=3;;54-fE1b`Rbi z(=Qo3CT0V$4ABaZ>g~DV z?5@eeJ$>Su>dxqGg0woq#lC0lc7VofRqUC+w#6Ds5J#;0r(gfJa}qFWio)ASoZ1aPxkO`P){{8J!DMP%ME)v6=)5%fnr_G(ZF8h<2Q~M0cv4b&Rkp#6pDq zny$4>4uN2(CPn_BH5)tZp0@qjgX|l}R2+@KZcQ5=gNn*sun$pS#66oP^r%KGWh3Ys zI}~G$z+XorQW!^3c@E28Y?xl;-1#VX$cPa){wt;47lTh(KkXx9O%@J@PblZ^P3xHd{G_^u1qr zs2tS6M#G2qFPT7O{a;upOgQY`oid?o*gM4iQY}Z<(lXKGBa3V6J7B|}b^kP_5+k>{ zpiP_^Df*TH_~{4U`o!sY&llp=7z7q5{Csy&3U5U2Gv%-BI}DV%JW4Wr!t=&Um=AGf zYQ!n3uP@NM6uWcwp)rVVuzqF~V-o*Exa$;3d1Q1jUveU!>R`aS;NWE6kQahOh1(iki-6+mhp79KY+@gF>+X)+ zI}rdJ{S6}JLKaPwU=AeT&V4zw zHvZOW5H09QCXP3eh3$kz8y5j?+R{f!nu^W+!!h?Q{rEY@n1iExN;E-?mjWGX(quy) zUYqedULu1u5hA=$lHKyp>HJsY+_h}Kuo@Verl6u!Yi|VY&Yd*aJ27x~*jL2+()J4G zk+voq9_mnEn zV+>s&_c0iyHcef^0p0G?5%+v}mq#xo`Xq_+ zRT5w0z2BwIHrKPh`)kbhpCXIP|2OJ@M*b^`p`~}dWWOt^Uz0e=F^w=e=1d0`1WP+% zA69Kl^Vwett!Ukr}N zqOkU}ePxLFBTfmETz{);8&swJ*TQ|HnuUHXUooqIAP(bM-S!-m`ja}o^d3wcVoP%Z z$@etOm|WchibF&Ztc;qhjCwrPw)T5>EPj$mkBjY#`kuuY1|p-2wY88%`GX>18UJg! zf9yVyL+i#?Bbv?4uMirFS;>uOYfKVFSyK>1oNlU#J8A2~*idt!&2mhC*Kstcc$hJn zw$2NMlGKqq86UiaT0v(GYe!S2SZaNZXB&14gwum4lsa-jovZY@uT!MU1BiudeebQD zvV(du`P&b^FMN~FC*e5O3%>vPFc(;HrjGY*YWpUh$0xMWd0pLu^WSz?99; zWw-=Reoo&prYCZ^X{k^i+lw_En#Ks2&cEEqU$VU z&zk@b(jEyq*qcLio)Bx}k??rzM|EM-j_-MG$Bv@sS6F+)2(>igp62uS{JK8X_J}pn z6hYnWNJcAlh5pvt#T=2b^)$!+ww6tvao zO3hlGT1y-G^oF?Qwkr}pe+<5KrKB;ZHQOe1&4YvP`u9K%J)WHhdfGdUo@*A-&OUvx z#@0G6-prq+KRuJd3%r!fp%WyCx2V8|n$H)2u3VDjUi9 zVlFwd`<2_tffz&5InA2eaZa!D$8H-^(hsbsz}=~SRkn0}(_%A$PCA9HX_zq` z#OQTTQ;7>z5oXWYJ*RHSfz&%eV_H+GmNn%>INAxx-129RZ{)5tQv=WmEHupTxSg(4 z%4&FGEGCpr0;J3^Lk$#*1EBaA&=$5doR_d`udmb&CI!KA{*gcX`gvTmM&xa+&s)>j za@ct)^PdyytLppuZ*LBW1doO8Rpa7?#2QXLKF8Jld~w*uCq$|FPZuD3UI2PEITCHk-s{j^WiJbC7R> za`a^BlJao#K+8^di0^lqk(Q){qGje|6FohQep234lZxXOC;vjM)@Wl9;o=Q;c>{Gc z;%^&KHeH($I97U_)KG`-nJwu;$a==_p)F};cTf+X5GV36ojrDNlKzo{x1?uWq-CNm zgef`0HJTDWsemBLH8dGu&C0xvJusm`;ptdrZg&K4&0ePQCah^FR!{!DjaL2qNCPS9 znEI01#6RVlUhS&XT93D@DFipee8_qiWkMPBRplOfM}rW-EQ!^(iMYPuh3rb0uQ(LM zjS>}|JF(_#VS7WH)viH{ecn~OgFaCY=+72cN#;CSXbp0R9sOS9Vg{uBr-*b?F6ON2 z>roF_Cw>R&l=Zh!+Zce9^?~VQCK^>O9Y>76fZVcr1Zw%tU^)vhV zqszdvN74KQ|89zUzZ{vI(~EQ5kviB1R3*@@ekM+E|n z@Kr3XgFNIINl%W+)f(k;#}-8@mn0F(V zUucGf&#b!LwYkC`NwcoghOA!UOT~;!6Od6^o{29B+oWk7g1qgKZHYf94Kwa15hW%U zkx|GlWI#&qn$61QMxMUXcFzg+qC2A4KY(ZL!*5M}WAk`>?@u|>GR^Xv*!z>`uTgwH zpPrY$C@0E&A562pZt#k7Eq*;O$cHWZBr;r93lX>_b4+!}-8kwOJo@zCtm#qU@^{1^ ziKNE*kUt(9|OsZ+x6Z}&Ic4{p{+E(R7@6~ zbJ4q)u5Rw^j@W)63m{-5k52@M`Zo6paG z)Pp-d7!A}}S!q+YJ>d&o+N4h%M^^6!@6N*wzhd$rEA&x&avL9QYZGQ9Qv!r-#(K;W zsVY-T>FUERnPtV_pO7K-3iKbR_ zq-6}&u2l=h%w+TSN}`hK2Ud|P$%592Bkx$0=rCKcPJ2|ztz7XD4uM_L7*|rriX7>g zHGip6@zXln6%*25siOiQ0#ohACoA`f6NX4yIrTxW+Ro;+qAvwBRn zNxAp~Poa0Ko=B)*PhJ?S=6GM7P{zl8$xIWfb%q_q`$_RSn-~v=FqZcdy4@@^?6?X! zxcD{b$(fsA0mliq-*|eClFcVcp#1JgeF=ByTRe1I*BgROVBpkue>Ac@0O%=$o;7&z%QKtG8v&s4VVm1XcxWyn=#X z?wVe)N?Cgy#)P{A&tzGi$FqDwDuYG+9A-fJibRAuT0ZXj4+7IZ-9=wMVArAtaOKiui{CRy0(nTFF$ z(!HEM+6(KYv6BM`>$~^Y-8PZ0^t#62SsVGMFF(5vK5EfkI-&^8SH`m{loL(u-uOMA zYEQW2w7ny?dIgFFaEI&EyCBM*2vrZoTX`y<@Oi7C#Cblc2z0+(3mq+Uhki&`(7vPH zFV;4{SjOs9(=JT?>HOXk-u#;0G?{1V6e+MD8<&Pki6s4PMLBda=glJjG|AhZsmi_1 zI!3~rEnj}Y_1ErP$$wp)<8RA4tr&=v6^pBg>baifEwjwLk8$$r+9tDnr%F<8RgC_Q z+Wk<(FWhyOu`ZDdl4LU zQEZ1@h}OagGuc|ZKe(2Fb`hxM0P9~zi6=$^ziyZ6qMv!w#IQ)=EdhZ z&WJ0)tQa`?CVqtbO5hG{(dqK>(aw%%)nA@+n?L@_SaZW#O;o0jYIgXtP1bhekCFJC zeXgg@_;^8dGPM1<^ue6>51Vzx+KJnv|7qTz+Fx&BqrG`|j zG$Qu6y{ii=k#fKClf8WL_tFB;q%(u#<>S**hrS~~n+6~910K=LU4ZOUY)tq~!eq$a zl4wIKt+ka?PadgSKCe)QG`DHAIAv>E8t}A`dNdl}{%CsbiwVH*u zb-}+`ulG$arJM!CLn!~$JhRueUgik+2XQnA7CXS7m(LNRm71fy3|2?4Y4cmlk|lBQZ79 z)o6SCo3=Y`HNCb5>O|gwbQFGbGr0rh})W!o6Wk{(!gh_ z49`*3&z@gOLpP$(j;1+r?3Xa<+%@CVj9q)(wWW+wn+rC{9UrsI=yQ>@C)9Y51 zcdD8dT1A=K6gOK!C=oI0&D2VaR^+JM?vB~H?ygL8K!RJ{SlTGB#AJPl>9N=3Hw${C zMiIfW#WhjXNW6a!RSO|(;;OmA$E^*cvdE0Chx9ddHk*jFYwRGkq09tGxX}Bz(T1|l ziPB+F>ElNqKI8trps{(L$Lk!nc7yZBU>hZ zZ=Y2Z|0=$1Qj|3>Oj%+sr|r73y2j&t=l~Jx7e$DnZ5?ILW;J1AHm@hZ!iK7rg}zu4 zJ4RlHjD`kA3pMyV5psWxaT2m9!O}%$3y|;4H6p zf8;RyQfBLa_ps$t_7f+ASc#FY7}djmn;jgwwGP(gK==1nSI7m-AJt3IR_Ek_N-5#? zT(UIZ)PeMFQfLif?9V`8uoPkg2XNHpl8`eaaje%HwpWjNENtwr&+5G=ONnUt-OJX# zXGnry#>^`@?9@-mB!wPGUW+63woFbmLcItm7o2{>=mS<(#E-L2*jSImuV+x~OYx_k ziK}zfC|q_}%aC7~`ful?Zm#wRha_N|HjjKyFqi_*xO(T`Z`_XU3&>;@FNJ{7W@ zQA9z>r%$nJX71DDJDyyRY9cfIyA*D1u*gKP1P zB**sc_W!%oq5lO2d-!F^!7$(lo35>i5qTpm4>RpiMrM%0aTC>-=?Y51D$>(dP@ z3hbruk@N8c^gHyf%AsSTkG@)DSXB5?C6HSNW>wd~mNvk367#0)vk1+gVU{m5zQS=L z{REPA zfU!PwbXbIC_1z6dAD3FYdSC2S|5~MaAD3b%X`h!FjQCTdR1-*&d%iP5^7u{9I(tgC z)A?mZ71|l(a}Cy7UQp=c0&n!Xf4riiJqGY?vJ~H}0s@^q_p-aA;NcF51tr+>$u9c^ z+Fpim@qYzbjs_lJvA5S?UJ>8nH`O<{N;9n}+&%nhR(BFvPMdyO&8o&hk4}E9W%K8J zgh?fQwSs=*XTT53Y#3i#9Y5Ok7I~(Q)P|uqi>I@yM(`IqrI%S!ld83HKlvX^bXQ=VmUg~wx zDZ$+L_31_tyA@%H&NvED)Q@qOKQtp>h(4&IiByC-nQF4HfXM1fzf?J%VoxD<%G0tm z*9v)oD3V>yM)MnZdDw=X#SK|vno9nTro+^q90b+#2tu$CWr$;c+N;*m$1-;pBs!qu zK4WPc^=hlZLM6_Vklah1B5COI^MqxVTkg+Z*3=_YGcJ$A=q6+*AvUE`2{Mjp5_k`Z zE-yz=SN~DU(I(lw7?{1CBW#5$1mk|w)q;5q(B7@PobwQ`21&v;$ z8x&X>1R^Vu-xgwx`Lw}m{rk5}02wiUtVEuQ$lVI6vU z91g%gb9?Uz$X8UFNSG&d0nQ{Cug>{&Z86cZVWXO`6o?fc5ZPZv2woKH65Xzm6K~Co zs87?3tL6t|ggL0~0DN0-r+w?aiOXD;%&e7D123zv64RHRBYDo+c$UX{x5=HeOC z`((}~JhWOYDfgGz#XgrwfGk(NLw7CN&L4~>ghi7;;^Mc#r{ZWVKW|hqPG5YP>a>4~ zPna;5H;o?d!^vkEy6vHX5Ci-ESTqU!OSu_K+^(*B90O#r?gt<49vNV>j~HQQ13XC= zFQ-8}aH)EXr{9rMU^@%mUM_i9DsLV%CQ9G^b>pQlUWZID-{@kBwFe55C0Qr<#uS_a z%3MbqM`zr^?BeggsvWyX0A!v`bFInxkrCMw*rkffy~zRoh^M-ufpgutGQd!bjo`7e zUDqXrEP$IB=Zsd=}5_g&&@)mtkV%V|i+L(aRw@Jf;Z7Aa#kX1ACn)qdMzVn6r>f1m=pFBayMH znJw%UWK{>}IoC7)K*ei_()lYP9@NYk(%wE%3gdtlVa81#O>TDNw~F;pkyI z6EuaGAgZ#w#3l9k$hjp?W5i?EW@mHBu4z@!UVRpSgZ3qZ-3wH+KhS zWK7Q>!4!<(KPHKCvS5hzAiCgi}!AG=sv!@#ahPzC=uSAe#MB#IIj{cZe%lwr&xP9XWq%Z2v!^>{! z>O5`1DTyMRtuf4RP!+gG@VJQ2Z`$Iz;eyvWvTwOyBEu?yx_gk*9ytep$O}>b{!;=!M1NlB zh+(eyXP+y&=an^+ZC{DKHesfklJ1cHb2gGKt1EfONRl`Y^U+P1O!JfJH{$^_8dZ4CoE?Yz$aDxat7IXAo?p}S-lRTZ^0ssyQNwSF zN|SYo06#*gm8YDfCcpNnWwvcbFJ6~r3p`Jejh=#=oR#3G0eYDIy94^zxK7>xuI3s^ z5-(OMS*T@y51qI3coIw38ykx2O{bvc;ls`?g1beMFSC-+-T%Me#nhQyTCSHXDJ%0% z-anpZacAl|0#`;Kb#DELJkZ(|TZA>2%YM^W44j_RNHFziigoIhZF#hGQduO-_!fNk zoszH$=pfriz%S{1AWUhTt4xv4*>~~<56$FJ01sSPacxQQ#lJ{iD#_v>Zk6696Jk5` zNi=itA2`@%v^}UP)P!OGC5C^Tx_$@%js zN|IGsaC6_lwRLg?SCd(mx#)peRmuMO>;Sho1| zuUNQ^f&?z9=`WiJ!d7h%%|fqg*l&>fpid$ShZ`>28m^U1XEH@P!1U{i=5uJE}=pjTzDcb4Y-PYvhcW+i>5t?ltF zB>yjiEy0>Qs6%|xW=O|9h~Ode!asMUiOeb3L(5lU(h<+Z^u&_!8u)c>qEZ~l;NXt$ zy!Gio`G!hq^;A@{ERK)Y5+iwy_&1bV!klkOxeCL}=7J?Kkgr5bv3B279 zya^+=^xsz}yfkL7g{|p-T9*o1Qi)f=*sL`*2b>O2cJ5=kczh#AUyG|4@y|=hH|pkp z+S~od-16-P)W08FS@9I`7=h!yPR`?(g;4COZJlkEbv7JXOwErv-jnL%nXT<(i)&wF z`dMGsR&(tU*b?lyuBrH{>Yj_I7qdN-(K?)lmFZT#k{Zix0tGSz`}$+ZjU4NrXsV0^ zKavT_RUW|NACa=ycm{lh=p#5l~Z=fa7(R&|v&clzT-g6xV<3kbNHw7B;lv6@xPFtn}3C)G*an+yf(mKmX z<*RVB2gD*sA!;FZ&yoiaqQ|-jr67Sp1A`u*sJJq;{tZ&u^5bKX$zjBQdIiy`6n${! zQ9=Zv2T!FUz3-<+wnLT+w1mV8PmhjwQxPLMQ& zy$f<^9wFIXdA+`dvo1id=J|q6u!Xs*ML%1w2x!1 zhQr5pTq0F|d0S{X#=`ML_14sfO*aoZtF~)6fU*%C!sV2}O+9Jnp9%oB5kz|rBFTO> z7W_+;H%i(GX@4wobU{d_hxl@j7toF@D`imL7(@;7Ogq!CeW;Ai?zoA)HJX{_wI3%av(0HhvL#l$7xz3mYKeB0Iy zZC$6#-JB0mpD!GWm@uA;0Vd@tDWf-GCs{k&N$uGmcd>{qZK*QK)waz}XshfoA}Tty zcl1EJnJ=q@N!eNdL$T*FSR1qM!~hsQaMT=`#gut9n~dW(3TGa%KweB@yPA+Y$z(ba z@CFW~0G+kNmQ{QWMIE^I$0CWX#sQ|&R(GYNHLa*;ax7o69=AoL02g0hV=e2Z5iFco zefc1z0NQ4agbDn+O?sTTyIF<5GzOrR^xfvvMvqERjYD%J^8gk%(7L;FcKe%#YR3hAd7-C;mpkG>iBFj7Jd7(T6)q(l3-dc_$nTI* zdW*)c5Y=m0h|tu8Gnl zKf~gyYr0zlQJQn#2MFvvSR>q)t!ap%#-y54PsEima+{Tm?=CrT zPL0t%Vp8&c=rF6mToqkH!zAS8QTmVyPLCHlu&b$2q^nR>@=5OB$8tUNT3c8?Dr+xF zxwil>HehGbGJc6AnC9Lp=utb~j@wk_%$|0up+#Nr+=ZwM&4PIe0o#U4{1q;2&?3d6 zf&oeZtD}w^m&$6h4_QzAD7-7jBm!lGVQ*O~oe2Zk@`&D)rFUVVU;7%{BWUNvqlpRX z&(&^S>t&#epn&I3(ND;r3SNSNt~Q&wa{*o~p|`%SiA@~mNSJG7C03q4B(^iN*X)et z*{a*jy#rEcZ2A1GwhrECOQ=ERs7Ouvcufk0p zVP%Xm@n#y4m)6JmHiUAg(C@g8i+G*s0#wl=!2fJSglVG!C{gC>q%=az6Y0{7of7-V zxj4Xkil7dh-uPMAB`9SX7;>ClQ8&6<8a_-S>>H+0S{*^HzBt_G_!g1%0gj!jd*`sB zUKiG0b$Z}J@kmQ441n4_N&8OnsxzJNNY+rRxfGEEgij@md_N) zn;_xKA!2`y=-800-Q+6U%X`LulgJ#bf9)M*CfQ77g5R9JR8J>Ehz8!ZpfrHCYuCNx zmJQ0SPP93WD|(g(&Q0&H^q94_K{8Fl{c2_#f$4aoFSO=3!{V>)*)Iv}D#2b#Zn@4X zl;7BTYl!P&J%%O+7XASS0V*L$r{q=Wf>6rqwG@syh z2LrfLG~Eg%=%Ak_STQ%i&budfGb}{%Y!93vhPT_^oM^dXa6Hnze~7QlqxGe|!uog} zD!%z5vKwPqi2xWq5%7vP&rDsaGX14}`!rv$7_#4;%RoTbZ$2O3h7ns=+oktks$0wi zs9E^U3^Viog4Dqz=%A^Xi1ug`@7!*Dg=k=q9?9&1;;3 zY?jog6@$y_X>IcGf~zdybgd6RSO%HX0F9W)~Np} z+K`ognd^<4l|90MnJ9uWc8csU_=9QXRB*z$i004SEtRhSr(j5Yic!G?S+niy&M=ML zy`R>`G?0E7@*5M80mJpN6_;3fEC)BtzObfsuQ=$Mmb&8Vqq z#K~G??^#)`!Yd>|AS;^8tF#Vz5VBx2^Zg>cA(}p4O(K$kUP&F$)QTvuRJ0s!I#0*z z;b|wUoN5ZdaFjCNWA@qsMzTHGVhkA(Au-2h6g%vJ1n(#7eh87-$vL=bTG(_$mvZxy z!ns6=rf_Rad|Ib4pABjm(|jx!wlX06<+0KtcH-p4X(T|~Y!WSC1q=KQFu+!hWYh~) zFiQ6CsN2ttVm!}?727hbGYRbgbRc$G&QR@(_iUyZ>74rwpRaehbGph zDVsGYlVEcMShiK)OLxkvt>^m`#go#D782(vA}dhcm4j_CB!SOGtsCza}e z$#&+qkty=qgD32#K8imRQ*2;sDu6*JgaOF_dFgwEso68!>T$W(#H5Eg7`;D=SP6Y< z;o1TOtzZcNZ)9|c$oW1`wpsTwC~1@Avq?V>)8>Om`k!O0`h{sXq~mfxdjPMKui5Tj ztE{RU+5=L_SAG#IERxSEkmO(eA`UXZXyI~??_?8qwL$uK)AC3$&u2S3HB>TU@IC;! z44Eo7;4*4lRQ=^#^cD;e?#FlfV}_4htRtmhK+de?b0Z&N5LLOEQN#7NJvWY^eY1k{ z>e%};B2#7Z8%etb6vfs--{LoN*jl9Ha0Daixm@j%3-d$U#(dabyHn@<>L(gdYOEdO zfQlU9K@1b`Gqrg)!FY#2xuT+XSgD?v=_?>)lk~UVv6>bHk+{w6wu24InU_rs!Cn_i zzewLATvUgoKC6gjVTj24``8BxVX`Dq%3so9UrBi#p*m$WnSCKDpmL*}+1A_HxW@Ixv42bCD`WZf< zzRAgo_=Cgr|12=W*etELXnZ zYYL-?W)O=4oY`yL*S8^p{myz!VmYuE1C4{Jl8#v|F$r{>nx3d|8|=3ao6ef4iKU-o(J1c(J@~V z;Oanz0xi3E<0iX*r2v+EGEpOAxm|n%$N7947jjJu!|lh=P?_G*bGTlUi`dA_Y%ttD zI(-N0JanOyf|{znqMJ-QHvpj_fyd!wuh;Y(z`3l$&o{9VMpSQb&U@H4MIxkZempB; zp30z!Mgpe4&icwc^W1n=N@Qm^K7Yu?rlQ8+l~grFcloPdH(^U3*MMU(gR3p0nRK9c z_Y>`2w{U&_*!od}d{ru;eD%c4bQ9Xa4|G*FZJ&Qv{ulEr19x-#=h}SJnVP!jjq>6R z+ikzC{lo3F<_tVizY5zYLSs&{K3_3#vBA8jHbs2R^F)bPi!Mk}5ei4uDH_Z<58>V& zdEQJ-h{gCh&Bc)&gM7fbvs+VIBsXiKi5a_m??&1HrrkJea;sTXi#hFl*fU4TOng&s zpNQrrX?dm$#Y1RQIf8|o3Us&hZ}K8g@|Qm>1IJ`&Y~kjthGe!VxH-KbVDcnn&iKsD z^zrqqBce>-ct7JD1A2^}`38dORdEM;L_d`^(H;&-!h8kfXqGQ z?A$l^)+2?k9_xo^WJeAyf0MONnV9Lgkd*QN!_+?pNA`E! zopdy@ZQHhO+qP}}d%oB2e(LEu)m_!Ey3X0XvG)3`m3^O<-rS_yuuZCZ!;%>ah_Pt; zN=$h!LJf!)SIon^4^aOS93B<2@|3&s=3pdadq*P6ze0nKH)-K zP{wv?p!LAVXL)gDG{0V@lWzyiN*D!<`}SdPsN5PdSzxlF*ul;LHJnvsPiYKjdG5L! zaYisU<>BIbn85#tXvLprJDkYX$6u_(ctPfIv<_h$<7*MtjT|K#E^dzwgQ^IJf`6y- z!^UgS<~(hWf5q?eQR^?F=k2PYK5wAUm^TY;Hlut%8(8`ie;@AOb%wRR5+?bCvkz$# zyU=G!ORt}2_<@a879*-ce7H>)qUJ;RQw5JmF_qNW8m&(ulKOCDDm*rFlSD&RoliwQ zz-p8{!Q)0nC8zwBG32k0L_oWBT}cUKikCbp_NFmiOPYb}qvOwSgRI5v6F_RJB)~zl zO2?J-w?|)`lIB@l_x1Qh27WIiSZStG323oA^!M!Bm&yYx#n3x=w8;4i&9)X#uEA#K zz$0tU%m0nOkpF8GziVEM-1NMhf6rQC_Py^luyn;qm%E_RG2-PACFSyPS-F1ph!0pL zr&(#3zh)>r4D_pr58?_QY*nEq$YdYrzvlpKQm+3A9}$F+qY=RVG$_OXSM>3$=o*Rm z{EB)HZMgE50~6%b@D2;(*&0v}#~D7@OTYR=<-TO3?9DJ$|0Z?wQ;hZ=fU==Vn2@6H z{y4hfbSVpr#Ox~9UqvmUT$M*nTUgj(Y46XNuz(#Sf`tS|NW`||&RDV()wW?)CM$V0 znmIWqAD6dHSKT%|md;aBVuHgINc%h11G07h*ICV!Sn?|W6Cf{GuxE?*hGY?4g(SgK z>8+`vE8W_zk+0`q2mBBNzfb-vS@PE{@Or;>4=-e71ByC3F1##uWXNwFvYQeNI5Ns8 z^iNd6ARYzo>ZVXdIp83%XhuxQs#oeA+(maxhH99C5{`N$T~XXo`@2=r3B00 zmPfh4WI!^YLSMy=0b4h3*Mgn!=2nl->0r$vygaGLHMGStQ?T+kQBmCR)(ZtMD@|Iq zL_vQ6(!And+Jx*vqUmN_*H*&E`Vb?}5Ryi}1VE+d^xW@7N2TkSXYZ<8PDO@e=P1#y29(!uA%3=C={0{r5SzHLM`ctdQrWe4Lzt>>Z>5hm z62Hy_2eXbraB(3szrwnoM|;URm|XcO=z&pjAf!18Hd6LM z=q@WhRvjxwZ4eGv_0y2ZBQvS?XUrdm69z!!bA(TDR8{!>dwu_Z)#Q3J2&>hG z_f=mqmS4HY)m3ok!!izM=BUI_W)Jfi>v?9w$o=QU!e-Z@?GYcC|B$kdk=R~I$5(Ww zuS&>ZB~NXKkLb|lR&H(mF-d%Xf`SaqSK6hPw$ua8;%iY9Ahg<~P_t-G_l2?xPak^6bSLYr7lIU|Yux&Bc*jvh?x$ z@h)7E_25f`=g-ztf(!o$OTt=Rp8PvfgF6m$0oqpc4*bWtg_Mv9B4SF8cu$^l5QT0oN|=IU6)B(>ZKa83U}jqIU4*A8P(DIUxCnS zx1*HWnqH-2<-w21@9Yd~7CHE9P5Q7f#fZ~2B3b@)S=%B=;Ae0(t@w75i}aq{n_l|7 z+;wz?ECbJkdG#w3`)68I%u*cC=eqROuH={CACF@4i$4l}V~bj9C#%c^w9YERj|x~T zGTbcv{o~;BCt{LJGCjk3sT`JTe-tEaTf}WkK-SfRONW1QU%pW-c(f1TO30=Sln zVuK~ z5+<;S9RelLxTh>3?oL3r_%IJnk3s1!VHK2abzLl^LO{j3)hf6bZX|?*Qk;^3l|}W@ ztJOSo_iWf8xa#2mX3FWMIP(0RjLRnZz1%xJYXg6+5!8QU#;rB)?j7E?HYaxKvb12n zgK1}R&Q8R2!@O{p`2S`2>kyIZrdG7_zQ7bIG@&HXYv{_>-RqF;il@1CT-B|BLcL{4 zsq(46hCf&XCQ5W__0X_@k{?S}p11@>5q0-N!{;d@%23mF za#0J|ZHtp8gv}Y6t)JyCwpvA8_1UMwF5cc5aggHiq3{&NI?Yz$*e zArK|x8AA{y44|}4FK>!`)}Lj%y#*2=zi}aFHy}@MMRNQID{}$}hpx@v@CNH>M=`Kw z9Z3X<-&EQ20z2U*Api?a+NWut7P@w1Q~Y(_*qp}Zk$bg+!1xBcpOta;twOvhA>PRSwKH)~m}r;-IW?~ zsi6e$Os8_?ct+2>1i0c5dxp%U(0|67uUnXQX}NL>u`niexD3^e-+$q>!qQ#eXXXXh zd5@eR2SiTV$Tu1}`CoPgzYnyTbw0<6N)?QEeqblj?c=L6TUgfrRtxB#8AMG#_4vM* zd9G=9~; z$~jd_SatNJVzVN_LSZnyKx%edAZ?e(CAC3y>Fcck782tO*(O0$ZuRFz5HRVjL2vAQ@FPJr?z5Da1@hI8x|1Iqx z{{uZ-!8SVFCbcH5O>uxsH}1wq2~&O~*XC2R=!`dx4Zorg^!0c_?fi}#c8~!=9FMrn z9SK9~-)7mJH?Z@N>m);;JSuSq{^xeFEok5c35Sa+Q2k!Nx7O(c0=oWKzQQQ2sI;WQ z?TtNEBfXPOu|g)}xo7yU*xeR}bJ?aZ2AV*PW|L_jy>7eB<`Oiu;Zoav7uHXSQxZo` zdj{!1?Jx{5A1&+b&YY$8>?;Z}TGu?GswP9(JAAHvjH|Mz;`9v&Kj#p2=(`i_*S5Y- z@4bJSnUkvpzfSbb^lY#yP9q^KE%nJoW1_gi)Y*ui2gLa)|B&*zh_+Lv`fIc%1o9|B z_d*UY;ds8(?0(V%D#~rlz-NL&>ErMXrK}hq=k-Oh|0-E#uPqo zm2pOw!t@+PAbE2ZG{(Ms+|}0JGVUjVJc8cHo8`=_pli!2p&(eu@(NL9lKE5qCHo|w z^hKkK1pRqlKFyMkX~XPqP%F84YFYgX5!mk-|2DNQ@Ht}|xfXn@k(X8_TpOA}@pb$$ zKE-`c^QJU`wlD9;O>WN0v(CHs_5$q-*ixU~PCpXSzip!8^@19)Rx2^MW750zJQw%< zDbk!`MNCB|g>g)GGLtDxN0KtejAHJLOk^qjY8_lLRx61pA&nSeC}MWtVo0zxR{?)6 z#x#ziK!GQkMbCl#7zZR|KKo|K&oK2 z99}l}|Ffj~=PYr^dw*Zn?qGZ&VJL*$&U@pFpD{Ktp0V?~O_)>omH5$#mdCTT^D0Oz zLgcA=ML<%2=fZLB5{>;qHTl#LQnmLh-4xA%;;)CdUq>Z(9FO`Kue1*%z4_&>S(Xdkq0FyL^6!pY&j@TL&UWP70~0;c`>k8Mg8fp? z?^oWNS2KHKybdNGYgCR?p=B>{ z_KX{Sh0mz9`s5;6hO=d25_Gn0MX2l_(T?1unY3nvFZ7Yy%DT^}C}Lhb{FhJ=REQ`>3v&5ltU6RbL>0oY;*T(8rWK`b3O&t70h{pnay|zh4`IXEg zTl@Dv5cTxE#SD6jOKwO^Q^sCpbwz}yoc;2mh&1%gyZKSjto7aMo_ZuD)`wQ;ahD>K zj2Avv_IEiT^mg#NwPk2H)`uGUxG+FZ^;lwEcpU*biCRBdcAe0!jd6Ql*3-<>`HD!c z>VQAx5rPa-eZy6A&BXX9s}8qX&mHT6z;-4x^0~cFsZVD5K41OJih@8sZR!vAH#mNv@cOE9_sVA7Z z+nwW=Z%~9K^GNU6q-|OtMp_s>#`{<00+ido7hX~-GL{XS{}vTtF`h^(Lk=L1Ni`Lh zn@75J_`2=UUu$MNFROirg6Cuvd{cFkq2QMKS>0#XQ#AZOB=- zV4;#Jq+YF-@Hs!K6dOw`D6?_^e0jOPXFi|5ezwPfi*JG|smtz-X{8gEHf>e6uQtvS zD{&wtli9?5Zrm7?U_Yuq%rFdxxP5cNP~M2K037H7&eR zvba?^UQZO=gsiMo=9^=~G8%|)V6&i-3i zfVGdF>iCqe>zF}Pwza0>4cTLSV$V}lnIUX}JHR>y7+Y_tJoE8ftmT&r*=ZQwPC03H z1~nDdqopq^*JuhYpgJ7Qe)dro8)IA4db0K~qR<%l(iR;&MPT9>&?m;0oFP5~atp(pL1i?8mz9JrwPRljN5 z!Vj_$U3r)4xkWEM-Z|kPDxbg+8Qqu#zT*bp@wVad*xN`TAGjG6`@!9Jif`=`ws2$& zYry_+bL@!#Sa8iu@QhT_MC4Wy)5<=tKaXVzGzy1o@ZdMznzlv?Bvv{~q(>(7Ct~)f!TvzhT%4)>m_~wz>750jR^)W~zfyJpqm`!K2x|WKRJn znZtHw^a6Gz)1xfcac6bSXfdcVg?W?@hlK0X4J zD=5i{0cMFP;ouuh{Yw!wxXUUy*?EIOl>&?g!1HQ!PUr}!rQ(H4qdaUr6-L|{dvtV< z^vSA+pJ9(q);@AP0Pg83p+B+*PNf!=XGOVD%+-sVzZ9B@HwE_-P_$&^C=OB;- zT|)zU4weke9l=CZU9Q&u3FqEb>;5M?2rF7BrTt}wVfCH+4!|3u>3s1wOu*SMhR*F9 zj4p=ANHRXj0Q?HqmBGQZ-Cn#3PDDHz>n)7HqKMn+iFcH$B%{;aR11YHidzMH6JlIS zR~_!6Xdb!3sY4uJ1pk;gJa2B*+xZ??j1H^smBNdfdS-+u~cSeOBZ9&NKqXdnQ@*fJhl4fIwIxD5}t3@@#71 zO+A=T0GmS;O=pQw6vJfIaqUQh{lKC{G<0hu?w`BhcUE>Y4Q_tUW*e~ueB|wT0n8wx z1om~~vSgg%@4h;iYAH6WZpwvi#7$T|6L0_UVdX@M68;@Ai)HK1!R*#pRgQ9D;Np_v zFDBl_pg5(l|86oSB!U3BEqbi{OaH9A55 z-|>X|3DB-2l5<4c=yEI|Qcbc>um&8)H4=%42x@|fV4n*&jbPt*PNZiCF5(QWDo9``y&YTQzMd6_TA`~;YZ}IOBGP+a=CA{;`Ro3?9Uknh zIV%1qVOLY*HeU0e%_aEzeFt^Q`XCf&s6zJv28P&See|1%eu%7I_}HPZvGjFDI% zGiqT=t)kTEWZ2GekvfDq7XIZFgM+Q)KlD!3z0)WkL^QFo^xUs;lGD3!`64JMKE4tI z%?7b>t_n@vOEzBG=Fz(*24)l-Q?MjWA_W0ZGi`p$-A|&}L`G6ycyD93l8D}ZXEkv8 zw1{4O?zc{~58B;oFQ78@4MZ56SojNFVuJq(r)&Z{gp&z-MR3(}Ok zT}0MiT}OP4qyq20Ytm{uG57|o!4^|JsywRStB z#K|4%sZ02pvcWzPm!uhv*qz<&R}nZb;87**BteJy35ANEUbE;rPn?%R#<>S|?}t0& zyhnHbw9>ad6JVn=m`A)_=*mw-3oaLGH!&^r?JaIZxpcDP4G*9XGNP zg1AzBME^6@{cD$?fDqPE+ZR)uc>HfQF1;hdOAm4);b`hTc2EPiKgj@W?K7{DJQcQ;iTvC3 z(269jE*JuhwaM_hLa;X^7`Q~WE%OUb$@$5)c}MWQxfO9~IdH#cl+P-S3Bf-H zXMAb9`lpW5lfcK`N^78=D+ zo0GtrpA;3xP@9s36)ah+5p6pn*;9aJApE5*xZiW!j$N`jdHNR|hv$Pj3K~MW*|#c~ z9?vplj}bh*fzhFM0m;oz)eoM+P#VSmCmM6 zV?f^h&$@;q*Ry7oxJOYvw0&;)a>yH}JC9UKI#`q)dH5~%O*BU$quCI)ADVVqr0qJ+ z%1B1Jf)g81Zv~-Wj|dd8n&u)>GDvLxYEXyl2s22R{`fN;1t)v?mGL ziXS0m0c@n*lXHl!6D^yFa%Oo~_xiBoj}CB~?;v0_L>n-L|Ng7f+aX=m*&I*(-SqaP zBP*}7+-zn_y9@2e@#%J)oVib*vF3wGyUUZO$FzM|LWD>$C>@YXJiev{ZOnK^hE3+c z$;VExcPB!{zK%qgD2KJ>Z{Xm-DPr_n&!iw}3a@m(D;<0Nnv=~>L#_(Pck0*O?artW zU!33%nWGj)ma&5oHHg@&4--YF zdrgoIPxD?64&S$+bHTOze2plYzdi!WjjibaQ>oJk{ZEuIT0E`&&KFN0b;@<5aAPlq6Uz}_9FyDG z2X5ADa#A8Ir3!;SHRPuU~3>}NB zOD70pO6-hdwxY?bnri_qdL80e;EPm9Tqd9~&@l@3oMCJqtDZpic@iml;eVPgUAwNn z*}O)Rs|v$(S&!p47b0I%1+Wx4Rt^e1HiqFOVo+`6+4GX!?fXWQ3B(X=6sweF6I<#M z82)P*?~Zl1Xn>Z?u4fdMw(hUUSL!*xGVfKT(~+kb}k?|9NWU&yh0wEA?4-ZlgCsJaVhF)Yh% zK;KuOH~Sl=h1D(bz~?IQyXMf*rJFZp!R^IUAwjaD1#g{NhNayZs%3?LyZJTZmGte) z9{Rb>_3is6{nffCeKTm!3;+9A0y|f!dC4`^dC85Pm8C=NY}Z!O{=f%1t_?I}0>y3J zCQty-g}C_IN|Sk`=ux@4XcaQP-Pe1bX;kKoOth@PLPslbVbGlX6vAXkKOHX&#I~4n zyvSvK7VVa%WolxD*;}I|i}L@t0B)Tg0;_cyZUq*>Fi~j+4F_ekeFxXkG?oBPF_ywP zr-@vkuV2hYh3!eauRN7*KTSFwf^#xwlC`QRBgx)$qY7b+|8tNK=Nu983Q_wsDuzKru!A8iWtJXQXgoeNM$x8=H4NgffFKMfvLB4TEI$loFh808@17Y9!N^IE z$ku~9qyM64`9G=iC=LS6VJ61T7iimd;LI_ZtE#Fwjuv19lac0Q2I4R^_SaSVe7}>_$T!D7B$B++M5OBL8(khXAGu&TIlT8A0wLh3ZT(;9=YWG zF`8EXo-VCcS`h}JdWQUDS?45T-)D4x$RVIodq-~AryD*Imgr{|+n?>|2t)G@%@Mq? z_hkE5s!7Uh{0gVQ!)1T%veWHJv!+z{&N8w2P`jbx)~J~!ZUHPZvc7Ep$uw<|)M^;7 zNJ0F%fZO%i??1xrxI3(tAkY{j<)A@4|#ebv-dRX9#3|l%`?S-1p%q zy#rBU1zD-ch8H(u6{x;+Ba%)pIs1Qe?8t`^uK6_+(pa1Vn|6Mrk>X}o%JxViQq~H= zuPW?xf>qZWvkqwY{WtfH%78eoK7ggl46i== zl2C$TSl%=Qjc`+xAQ|x=ONuBs>lg8Ec{mz9oJ7H(tFo#3Cb$g_5D$lbZ^9BxGX`$K zG@XAXEAMvJF?(9*!e>!5uSnPa!!byfcgrFs3?#p*M_;Hkk{k=DsTn!+;u9aX2An0r zEz}n^F)Ts$yv~XyCbb@lJX{?hVipOoJ}s)AQc{x51EGgdzNIT?5(BXcvJ+*J~DQ#bErSz*(!fvAU&#uOX+~H$* zIqE?y(7U;-M8{qH+&oV=Vr&4$&B6@a+iAzMCL`qONBX5ixkL-%?w}xs5C+FO(l)G& zVw{RprHrNY{)Ias6b|Ntdp$+}l#?QTn#zmz6a5vu6{5`XQ(%#sjce*rTG`8eq&n#2 zEM;(=0Yj@vtj2n41#yhZi`><4=>_B{AfY?q!D?PVSaxP-+qT0ewJBOM&Q9%jYTFc! z%SPxgfAF`>)ynxC7*T$pzBVH-wc__eUe$bn(C?URSCx%?Cy4Qhu+H_$-LrRcl?U~7 z{Uf*mD!coWhlZV55yoR;tXe*NK^P7>&R%vdqGp6iAgP2a5o zcTuwaO=wjQEfwN4m|ZPKiWD86 z`~jO=euiy?orfdepfm& z&lwW0F)=X$>eVD@wJc_}JhE&V^S6-~6*EpOqR1t{R+Pw7fn#2ZaVSH)WH|Qs{8fJ5 z;#9X}=F0l(FN`(OTo5CHT_tuBV~m6_$(wM`!6pCM^^nfGLj=~=;Z za>%_!?9XGc8~LG#LvCy2uc%nOtEvG+6@W$Bl(ZZhd%rgTfA>M{@k_~IcW}=&iC`I+ zJ~5IRatsQDL8+id#ei$n$bPdJ_xGLR-?fDDKT}B3Q5yJ@JI!`Cf1>_aVqY_3oUw>S z6k`@lBJWZn+E;s4QwsBEwxVaZWaKc*c_qOv17|g#^pLrbGapT5E52VKh5|Kr`Mb~O z80Y5nt%5HiWoo`5=+#4x_Q^t8gnfx7%B zNv$J|qp!mn@m{CqPj~)C;PcdA+fBz=UMC+!t@!Dz=w9Q~^`#qLmUkjm;avbcFu{`Z;Em6@ ziMvb8-|u~f^tvtk!` zZ1@R7VC`wxR!bIsr2tRPC7`j2@P9XVS;m5uHR|V*N9dZcD>zhuV0xv;0IOXbQAnbn znXi!=VL1<_L)rC<&_8eUTG2^s9XU&$sW-@@yZk!R9LA8;R(a+i0pvt9?VNqLSE`{e zJiRN3)KzO@-r3vp+}<)hb->xji4t^`&<0@NU&Y5JBhy&7^>;UoLpw{g^+D%WT>kpe zwyFct5oxIFx2uO=%?vR@-#P*9fq7CIRNvMSgQ#WEHND$>qb@>i>lda3NvD9J{yku+ zB7gMASjBCG?N(z6;y9vc#5zfBlxF{7Q%=7nVU1iVD0Q)mp{#!xE8V+eSjH=xQGpg2 z00#U8snd@k?h6LsvEJT(DPITcjY!%#hHgk-d0`}n z!4vMe<``99h87nP7=1ub$)k#Z&nnR4HB(6nsIhwd<-q23q8(ea6l+Gk+)ACvY^55* z{jzTeL$4uKiQoabLK1#|2+0|F^{3ZQvnzK#Kg_1_c4aphPy*BnXZOw)GcWwtb`BjN zyZYlM2(<3+2-4GXJOECcE;aSSb{UBWHf+Mip}3Z}3YRX~*rYZ0t7NtE;C`pke+*jE z4EaqQogKQeiR-`x`Lh|f4P_b-7pi}xtLbd@J!I4Ft3N@_$(%<{t6z{P&AYmo0uzBr zV#Aj53Id?MCX}(M_slad9Vbjr6{F4#T`1O;iid{M)x@v6t<^(YPVP6AeLfi z%rUh8L_IbKIU?BCi5lo zs7#=Fe^=*eMhjPN?PIQvF#`WMu_mr>7D13n2kj`s3|S0CjVIKBGWk>#BjkIuO01#( z=AuXLw066F#7X%)TZ63`c`*l~0-oWzICI2u?sPpiR9Z~o60PL4*~~FH5K@7;eHkQ? zXi9qra=o`11D*w6R4ZxRn5Em9($2%)W9WP^l+8Qa2vSi4QjBO5Wsvr%Ojly_Xz9e1 zD0H|0606gJu=XT3@elVfMz_o=G6$}2;7#n+k47J85Zu}kL*-F)kBF`ErV+#Boi&#` zLCaJ4CV~h)2^@0&gOGt>N&yvuo)Z(6?7fH<|WB>3;}(3;Nv*pRm$qm1EJ;X@6NmrU{*ggITLVqKv3-@lLN zA3T&c6wHL#4;=?)ULO-PkWVIsy4RPcn5 zA$HJ5uOVZKR7&SP`Nboy_DqsCW_MBo?l!D1*#pZip-!DWz|`%5l?K8)80g$*B376NLpGEF=~lgF8m)^GeWsXNQ3d3!9ttt)`LU&SZO zk@UHsh?0GJ+XR@=^&)tiGKkeOSLMVD9qTEAjaA>bcMr(|#4sH{56r{+B0wG&Ufnu* zdV4tez5rH%62v7^79uH2`~lvcD3*9O2sa}<$ms|novx|Cj+UM8(>4S-II zPqER5D8zpwN@wxbVh-9qHFBt?7DwFU0htz|vyQ)lQZFB_GLvaWD9li9yL-s6Imdwq zBGe3pjU=)`Bb~zndGn{7M!jhB&$$Xa&+$J}e%@8#vw3;xvZnLEL-J4)Al=nJP8fbL z{A4#nsZwEAH?n&ug4pRJ^0PSs4#;g!A>)qNByhh`OgX6)YWPDsRxJ>S!!(%YsR8Ul zw`E$Yua8|KTZl{rC|`49V4d}-QzNMr){*}`BkX^CfwZA-N_FfGJ3H#F`wt;dxxcxM z3B`JOMx+{HVCmst#ZaOR=@%-jXF8xjT}MgKih?t7c5Z{V3S7*i+bQ-Q8|IduIa2?6 zjlX+nHoIfENO7sRhdD9??5qz>CMFd>4*N(m++Zw0Y#MN;K@=p0redxrYy>)Je=AAx zjzX;Jj97nP!zF*3>fjjYZs0TMzY~gVs;^6LZitXp-Ft)qxN=P0$y8ZkH4t&V%x6yB zO0M0dpLi!R`CUaXH3Ai7B9E;jS$HQRk1vg^vS_g1_s#XCoU9wJ&5c@9@YBImz`T|G z-)-4SEBA^`1N}q0W<=cS{i?*tSUCOk+-_7}$Vr?Gi^5S>Le?7IUn?UGPkua9w=ItK z2=iS%Ra%|APD}ba@(=MPUGEE8Kt&PVOfYH0-Cw-xhSmti2*88ndIiwommU7@$WqV( z60WSzc?#CAve%oOcN!Xc`+yL2eSDJt*po;h5cPtZTM0VLT>f#p6HNjUhowJe`X)*l zL?recKXfJcH9Ai{WI?4|KUJC9heO*bZXFX!8TMQrz+lXXUN;=^XKV;pP#&AF4K6s_ z{}<<@*ghZgZzinspw>8;g%jiGvWK;=FDJgCj}s|W@)KBviBrt zY;gC(-Z_nQ#T^Mh$_FhWcmR&s>TMsNJ|gzQhXnd~7mr~1!e{qe5INx}s5yhsQ;@fm zN^T6EN2h23)5QMv(#feC`qL+!{LkU!LGryDXCS><>rW)}9*?*1k}iDCqrq?rTg$X3 zh{?nedrcbz&kH_}pUzR~Ee>uK;l3~>*V@W$B+cl?{!@&$Sj>~U{Q`V4hURrpfh-+(@-g31gqe@IwY zRHX~Z9~T2%BVG-d{WX;9uVgq;(drvQirkzm22}VTe`2vwp!un~gMd}TFzweVHCrDc zu#pd%M4x8n5`BBwR2d=hBu6Q(6ke}P5Q5EYjn#FjNNN;k)7n!*S!t-C|B+5RE9ZT5 zbFSM#&?K-=!23f$W52C#Mv^4#{dttRt*isr5()^t4P}}W{HtM0Y!X|J)*EN#aFp?G zi;s943Kx5V7Fbp@Tr-z8o47}5Dv*oItra;Gs;SKCBekzPiiwSkdF;^L2n#J^7Z;!xYUM4^3@7k z(i@RC)3qS=Z(^=d1OI0cbr;OUQQ_c*Lk5fvpsPAFB?GUuEVVUa%p9m>-=BCeL#%o$ zl#f&UFn=^;5PHS9lo}kk2_WFAll>D3qIZ5F%kXwIO)`I0@%5kb36%_z{I~Vz5545{ zT+@Au!M0(KNc&z7R8Yi*Z?PF9h;wFj09$GiBa|3W3Kl8 zWqX(>xNV|DU2YPoE<#VWO^1XY76?SpR4O$FW)Ti-a~9Sj(i^K{_+y|HNCQfuu`*@F zsp03adgh#eS^4dI14_Z|Ab&1+V=LM3M9lA^wKs2QYx*Y8&1Fhkq+dul00)9fb3}ss zN-H%lZ)zElkKW^REhX*G3#Nznxd5?2RE@bT9fB!)rbH9(jI2jWIu8rLdBx2PSHhm( zCzy)xlGjHtks^2om}Z#=x05K*+bMv1K~vb%RS)Ve?E|su8m3@aMOEz&#RNT;xRDvn z+K(FHsj^|~gUlt333GrB$m1g4NShX)>e1pl|NkFxXE28b#?yo)&?&CHMRe-|$*i2! z^$Ajl8%8jay%>T2hy$L*RByb^jnc~(&?KF!OgLBIzyj`a#CN|S@vN=lX7ERlUw23h z(h0}b&2gTu})Xxk{Qs+gX@S|OZjmx_@Ti34dVLZNl6=y7wt zpZ|c(+yYxb6}E67sVz8PNc2JoEGPn&p<4G(*kSpT25MN>!@slCV}ItTLxo_q){^%e z!cLl{k0OZh+7`DEYdBR!oT?+En!5U3?c;M?3BKR(LhP}Pl$<5a7m=#U7~}^O+EPXA zC~HPGq&#{~*E#Q$7pEN$E_xw@xxnWXx^=obN!Xl~wBET_toEg3qKRmHoEP8QI*~{i z!;1|;7=%5oJm_J5eYQY+p1cDUoED93s?|eNM^-*bl0;_DD<5aH4+>~bbAVTNiYB(0 zgBwXhsi|s|LN4cVe@$q0qE*d}+s&Q$%|1hQrX^gz0_e#3J~w4+#|T zjogPwjQyA0nn>Vl1_G!wWF2@yS{>C}rLj^*jbkMC*Xc*)!-$3CM4;Wl&pwp7SKE6Juv=r3>gPAb!wg}PNugK_?3&i{!&sso)T`jgKPhj|rIGogk%aJS)OQVP zQ9*nkTkORccyFrgVTLd1Z&rvm!vN)Y_e@j#u;@R zGedPGo$eX6TboV)my3S>my4j77z&u!TN(Uk5rspe= zGr;(>si}8w;`{w97yqz1)#pa;E~zQPw!QJ>#Gj8|VAvjj^_w9lsgTf(kSk>!1&~P- zo?ryz29&0#VyKpIm*`WV5T~&)_`8q(u^uF=M0FXFG#n!@DIhf ztqRFCwznf6NQhx>D{W^^Xe+seu_WyX zSXD%Ov25De>a?3J(6xqoPGi*iEkwvsut(-X#yx&qyMGzTXmzkcdBw$x`-stE+P(S( zK?E>jB&#KnYsw+AxPnT)YsBAKundh-v~jGzGfdupjiWWODOjIkR=CTu=T(?J)vLrh12+IYVJ3~(zX=oCLKGm(Sk%M)) z$O|`+E-?33=8im*;DVvyGe&D~$c6^GX;lniu={&Nj=2S)<{OgTaf-nRKU`~Xkgk=X z?d!B~GDtB@CqotDgax{3<&{vPZ|ay!oL&5+w?qwtX0HZ$`|xZ#t5MZuFK+KZ%c6NO z?C#+=LQ&BaZZO<^gDN|tZRR>5c#CHn_Bb;kwC)qk5amQ7ZL-!P@KC=r;z69TER0tB0N>ACqzyHPFrr#R(%LYnfHy;@YUif)2e zKIcp4lBjEDL94rUNeAcf`0tqQ$c*8;dl7?IJmI~H`K!_u)1*+P8-AP6j|gob7|G5T zt*yZPE-9Qx*?iyN*8WS>Vt#^8Cu3)H_%*$2K{pv=X^>G9XH53cZd&oOuw-2-WvK_b z%8wWx;_W52imgXXv7SZ+2J8na*j`X_>1f7$ReT1vD8 zKN^O%6KL9zz-0=m4(h;y$GW5m>^!(Kn;Ef48u|C)W^^%iDc#K@U*OSu``Cen4Q2#3 zzBbz3Gn$%)Vq*$ZEJddqQ(Kuck~a+%m7q$@nFpeAk9kxuU$LU81w z{NN15>s~bA==qFf_7|%tY5%xR+@b%iv4}?{*Rx%8(~@H5y~_qD0+wzsEWISOc+Weto6ADAg`}c5_y5>m7DBb<|V_7^ZO^lVZqHanpOBU1YLMO$YP1$GLs8KZJ zQV7kQYOOCU`&~^kLj-Q0sy4dxJc{Kcv3LYgI97C?bNJ3|b-(<2UD9Q@3<0ookKX{t zUR;`|?{5=}_{kMD=a-hQgpJ~acwuV4y-9w+V$(w_(L*B{14FI^Z!J}^%dZ3+Xczw~ zB5Sbdi$pO}Mwc{}63|2z$~ELCWu>7o7um#=y2g~afWIxU^SWNd?9w)r5S>dL?UkR> z9EzB*DH3AloGDaCY6xxEP}6EzUuAn6dO7=6jR+oo?%Ud=BmyC>0f}|GZA|;ZC)M0? z%YnVQR{xI+aEWv+aXP{WdK`{=;AjXeSrf{k@ zHKF@Y_2bZRe5njbELFiyq!Y;GYDnvuR&&S+gDiAnFkZ->EOM*!-MTD@Gc84wH+zf(s#`rxcwi4R>)SVtrH4KkXmcq@EhPv$3HA``OE4Zf}}J-1NPAQ)gJI2 z2d(lGk1Q^4XS{7*rWTHJZsxCneu&J+W(b93% zW3e$5i~iY_fkBxJh05b}bMF#G1f?wcMdcub z52ix^@Cu8ACRg8`nOd0!#|uRV_o&ZYC?lbgU{agvF?&W-`MIlN4?2h3nw?WNY$-5K zP-o?R&B~KZBKFdw=&b#sH1Z-%(~iwDbM`XXp4LGfEV?srEWLT?{_U=Uc!fv$N;rVb z_0}BRB2?V5$-WE4w~!J~1UU%h#~;p)xSDO@i{0@#T_EqR5)I!=3}sII*LC*R`X7KS zo$zCI-{-Oj=iUdoMVCB>bM6OnyyhS{7w!0}_AU9xUp@7=#ENOPKTtoO4iUqrrN;dn zN-v9w)^VXi`Pk;h)fI9|Ja;Lt6|w~~e=Def+DORgTCZOVkqa%R0AwLWms2Y^>)u;C za(l5dt&2l&&zKGS5LEFyfS{sRvuT5mo%Oh;1@7$q7qHjeqST(CW6uIPO9li{Db~31 zz~gNm8ABys=Kpy^BbmGE6k3oYIjYUx;@Z_?3WPTTUX0RT>X6gKi|gdb))%SIUSxC$$gCOm)l?DdTN`{(F7W z*U&Ogzc3K<$41gxdZ`jU9#u}Xapp_XnmsLwI8{y#O-_!KbL+J){Z-ol`lfS+VB;xA z>+dOjhg`q+>lmLd$%lIiL9!ajR^^^{i0HK${kBJ%u};R3yNThBE+0fSVc!5nh5&$A4sL z8u<~IW?ij<0if;KpaF^jzd_CU{pOycvoEuj28Z7-tp{(?_-6l#jh;(0=KkwX(Zpq* z!!(od&K>!AO$qAg8TfsJ?Yq_^vy3&wq|5<0k3V*nZ55IOHn|dz+?5_E-FG6J_qi3>N0;BN4?U9E@%)tX(?W`k3P!4pL9i{Vpp1i zz+YSHa;yh#I%XWvx)?CQl+)&%CU)N~&GgD@U#>eyD%*#ec1ldzHRIZduQi-@E8@O% zydm+W{ZerbzWK`S{^Jk1{u3K?GPBb~L8Xoq+GSxSP2Ya(Jg?`O)G;9TV+8?Itl#$$ zn*61R7x^9g%1AMn*5G%aZameB^8Z0V+LBTAM8(xmYFc7Q63#eD*irns<_g4&lFdd= zri>%Cgy^UkcpKIp8w-QQQ;FJ(uB0wcW(_pq0zVRHQ7otQPO6J39cTV&&Hkt9yt znEWL44@S^7TBbVsk8|DeK7W&g_x=|6D*P({%;|YxhT2#+cf@5$>A!Pw(H)bRN!tM{ z=&XRVm@&bzo-VPAb2dO;<%qje1uew?wqN{+;~#450wZx6$n7iN5%8VYjM429h~+8lllGU-gL!43C>lrZyQyBv3e&YnsJ7O8@0{~y}J zqKKpy^L%5)(6`J-GSAAD)4?XzrWzI%&4a!}ylcKBl#`N%Xz%37$#Dq+prI&Ho2Jp) z+>LhUMG{Nazm-z3d$E{wq?HhaBmAWm+acy9l!7YoZ0k+lXcm&%h#-KEGORqKpqypBrN3F$g}x}XA#~nR)m~|NgEu#)p>4f6UO71q*gW+6_`|Ky z{r%2kUL-@DrNFCh(^L^@OBqD<$ddk7p&lh6yuBmJ0e>rJNHdf4$l#BiuekF^YDd&e z7y8@5ZpzmEY7y?-ceZy^-#iHT{z8JnPWf)Z#7N^;R2 zykPP@WI4`hel}N-GJ68tym>+lVIAa#ga`7|8|K)X39TF5thnv`yHW9I6}v|VijRa|7*S=yoT)P{$&>b0-BK%x8%koddgM!&Y|E;qB{gHCFZl8L`8V=_dPIlPX<@2M zSlgXS{mk%O%<$Hd46;k7QYxq+iDs!11_gbm^w!2zZKhQ}x>tV})-rc*LPdOC)@|yh z$>qI6{n)|#4E6FUgsG`CaMP#CC8W)X#=PU+ajrE)@!h@Ru|oKhR_`u9_V&iVddI$U z+d@%lli=-)zXkI7nN54Y&h?ii-p;gYNqWa5yMKsxlUC=9Kv>wr|$vpp$_nI}z?q+Cc?N6I&H zP`8KSsvtehAy|<-$=EHHcuv|7i4_yuJ=yA#u(?@QQ4gA*bxWwX6**`?ZU;}p^gJ&0 zUV7fC7ORjt7*67kGEu`ys$YW*ra)AMvc~GMvt+?>5Wl`(ileQ-o|jEAQyRETLTok1 zTsavJu|pNGMiub3@0#XG@<-@ zwfuh7*^aW8qof@0dB-K3LDv;hN2M~EB`DDLJh@zxq{gW>hs`9+!*%hu)u=HFjue4c z-W5{`_s7Zl^gT;LhMC2~ZDVM1`&%AV+*2X>t&Lj2{}N zOL2LBv4=K%HQrTvBxG%&-TQ`2(f*aYDq}se!hA@xF(2!-N*JlE*^#=}LZ(MBm_LX1 zPS+QMxW!{6AvAR8eB#`_%-YyF+O@*4pibfAUrp2uZPEne)Z35WyPR1h*-984;=RY% zPW)fL8;@F`y6`1`?=wq0ma{47I&Gu|c8)%ClqCqgTG{(2DP8Bare~xG4f*K!c1vBX z%Iony=kbLg2h1nCfl6D`p)^8_HdvgcAEfmN-aJ+YUJZ9QIQY;!d1~90&(MN0!-Vb> zxLMafIX2VV!o>AD157x|_!9AHzjS8#ZNyJSRkBaN09_WGgA*fLc;ByCqkaU;3w{+{ z&OE)hVD}E`|1GDe(tnAQXrHC-0Ysr&_nZs`HL4ef)+ByA`pPs)jUcJHdG7k4ol|fO z6~1at`1YU}32Z*El#`evSle!y-)0HeY2#35`#8Ac+I_x3_;gK#wk)F;srKMZ`C4WD z=V@JcI(TYQY72(AI926irJpYHmA z94W-coPQ1baewlx0D{2)LhqXB?Ao6*!Po+{T;8`>dk2Ce4)2A6H39H{#}o&<@CEtJ zygkvoQ;WX=nG2Y(gfwEYm8QT*IMtKxYh9Cr;|@16GII2JFQy?AqXWeYd`qr#^E|>Y ziBj4$vgS(qe0sQG73{AhafL)n=eW)tmWQg*lxORCJA$K|;v;)dy1E@l8ox0j1M3swsr|h4&85b0~cdRShg{T&J^V{dP3GH40hjoZcCD4OStEcb;9 zSB@lB5xuVCG%iLJp2$$n+F)6i+gJ`7b@&=(hG!Q!C2+kd4@Z0@GsmKW4?4HRPDF6LiI_$$F#*p;s%N>@wAJ(NIf*s8#?ptvvrub1h7 zA(8IK5ec=u5<82MUw|K)wN2>P`eM)RM~o+dTcu(zv27epi!}Kc#?76N-6AsAf2&yx(*o=dXjG<`jG4G-7dvs#J&h&Y)uD81?X&%` zGD(3`%&b`RY$#X0Jf0lOBITRhySAKN_x(aVR8df21{C*;j0q%93B|jEq?@7Am$bMO zrfMNuY2=rDF)W^8zir9lp1%HV6Era*W40$=JdjKhAI*?2#-@F^BK>|J#N?+zb-dfQ z+#}Ujky7VafK@>Fyv70YaxL#1Xcn;42OgI0V*fe8Ail|*Zqmwp2(+AcnB+UG>XDe% z3@mOyyI!0Z9oX3wH=O9l!xgs9cTQw;5$h{mT9mf=ojf&&*6H~H4{*7+j4sU~1CWGI ziJP{DmtDT$em;HVC5$;b<~o&pqq82SN<)0ry>9R4J$C?`)^Nu&lwqD!9-tq5R8O&p z3p8YRj7fY8ud-!S?MjEuS@vY!{!AeijOWyB=ld^Oe;xSWF~z7wOEpkf`St{$tTaiQ zV#M|5?CNcs5HWW;3o&Q%uDC-1zoyBWe9kXrf-Y}aXFac3`yy}f!WmkE#rB%6Of^%t zWeNk?cm{Y$6J_3?3-L!}Z(b|S^m4e8W8i^aY{Kra5LsuXRsYo8ngnC&5Tg^O*jPG; z)%l;lA4lE)MiMhJ@Z$QGfxr+c$#Y9Q_bbjJ{ns1OR(vuCVPd(G;?vR$QFN)?mMT>w zln&n@Xx&_jrMN=KB_^eCd-6`Ql-A-4u^4qg{TDI|$gd<~`bWY{3W%*8(}osz zcdV^lTeEFr=`(;EZLJj_2>59HrJ@WKoK&_&(0DK0{wbPgjvsib!B{`rD4U z?GAcRFab=$^;*gJdh0D;hj7As&HR%KFCTvWz#o* zBR|6`YkpQQWaAk1e3x&{0&abhJzbB9(B@PDny)-|UA&&(NP5Ebf6uzXwm}8&HMbkY za+awTQDa!U`(~(O_ctW}VIN31$k)!XP(zrNO|^!xTdqHK{_7IKUEk|IFx2&dwmOkL zx$R#Jt6POp}z5(FL=+c1H1B(`ngk~>*QgzL0uW5AcIbS z^nE0+_abb}gbaexSvBHe#$_U>@W1?$$*q-ea3C1tt066%ER{zRl@e|8FWxi)iHx<4MV(%Lv1{dRw^{lvyd4n04M`2A%a zk`+rOqTn=csMa5g6)6y{jXLbelBP!87OPH{S#Ow{pdKepQQDuX^SWVhZCqm#bS zP;5P*A#VwT7|2_#8u;cE$YP7}Ip(ujtbU~nsldYDC;fO^$s(ECtLK@cIFLay=$DF% z5YrygJe+GUaRU zX-~{o_a$7N93PW_0DSXmf8#5VZ1Yv#twpHL?4`Cjyp{Wf)biE;mvv@#_Z@L*y_N)~ z13i5`>yW5wBY0&!>E5GhePqXPh8zKkxg~If>hC7XSg{zp!xv@r+qvgYbj67cEt<^M z;ig2;^5Vl&`FQOWhvhc{z+30N84zEb9QOw}s~=Mc@PV%Nx#6_M~cQfTUoismVKfQPWI zY7VcMo`~E;F0M>BeCar)xOGa2J)KUySk?-QfIi?oKI!MQ8Rt=(vM07DJPE5} z195@EK@>j%`Xewre_jb8@L$!~OyW;Y6TZ-diRs)-h%~B_G2+F$SW-^R=@*@B4ooXT z9i@>2gk5Y}8AN7cW<*P0@u5&q;QaK()d|!>Tac#r>*OQPpG`aAX?VPV(fWivdb4-Vao_DpX_*+&)>nBJI|h<3A7gTOMy z^f`HzZJjPXgz9@!OYYy1o|wMG^Xg zCGg!Jt@W@w^v%sgXyoe`iLl|#K`_Pmem0kdnV}Pk9Ko%H^ib;(2=OHnJz=aSz-n#i z11}9ldwuI2#`ElR92MS{*)~ZD&(ZDOKha2w`pEw9L%b(`<3j(>SyQ6s++BZr3t820 zIi$n5HxtGUe<+C0!i4|1e>e=Vg@!>YM=+>4V&U*I3AOS8BIt2R9aJFJ6SiZHy-R7y zz*iz?lVvv$#HB8Sc0Usueqkz*48DCRCi7C`5UjoTtTM$t@&c2X5EIVCn z6CGXVwGEHepEE`5HOR^oib~DR#?Y(pXd3Y*Qj}C1(vd1)@7ba8{E}OOb02t>la3u8 zo0b?mMa%Z*vEWuBg{MOb{S(8WwQ?pOD1KjcS(Ka>&|tjdj;1kj+c!kUPTCc`cCn`! z|0#WO=HsS*x{62)rjl&|uF$Xe#1)3%pSE`!u@_AKNYmtP(_X$&h$rX$?xAP|xk>FV zefk-&ObeVs$_Re>Mn{Vgjler?MCCa$?ft z!{K@dwX~3s>7Koi&M1>6xXwin5<6!? z(8S7MvlLpjs0&QZ7b&DIY$~J5^vVcPOna&C4i6mIGj$AS15I)3iv?bpMX|1B=QL;Ma5*m7vF! zEoT_N_w(ddfz9b9Z;b`D>@G)mcV9uXiNxIO0$3Eiv)N2|WAl?{JXTx@ z5`__FCWh{Df$eI2n^rT@nT*wKKn6K$;lz7KVf;`i<8uHCD}u_P!Y?gHunAwJxlp{gRBmFB~+C!H|_QW8@$ z2&PoXmf#G$g8ZN}2|6>@4gXO~u_;_+7fEThuGp9e%nn=7#dmyJi?K>VMPZ&PVII?p zvsB&Ax$jN_kgC|c3v~eZJC1jj6bY}Kz5Zc7dvM?Nu|sU6lR9#;pUWG?Qzc4N(| zi0vo7-o=juHhxq1rF~!@N{}JkbHdJ&_oUwa)Z1c>boouW2!^#$=U;Y?R1_l9keM0r zJZ`CE0s;~NW$Ey*r0*{2Z}NTQi~>P7(IL~Ok|5iIlARJ38@To0T?WyEA!DeXwnwSq z+E6gsrDOuXKCG*yRUMY{*q(lTd@5hcwQ#2Yc*86mIK1i?19UE88(C1;Dm)A(pPOrF zw^!3pNOC5LR~~f0v$FB{tJ0WteJsy&5Lp73roXgTb%A`Mh72s!a_dBbI%VJm6v3wVF%`|%^V=r zKBpY52Z6OvntQjh+kV!cZ#i`zFsu_)oZixkCYzvLua7t$rHApq4$bx*NVv)DyT#W3 zNVV8nl|&E6B6wJY<6ZbdANf@2zi*dccsDegga|)axCOR#bkp9Di0oGTREKRQFqhJWp-kY zSm%)qAG;urmNXxxB&Z<)OA(WPfN!`S&HlYxB&oHSbI9eeaF3%(zC?RNsH&1Ycs2G({r(q0>(4b49)jEmcT?+1`q}> zkDZ8y>S5Kd<$6zb@mR|SSiJ^?(WaNbA=hrIfEx5`HAKB(9fDnH`Y9K0UGp94*x$)X}K>((I&;=`(om_1fCE&>}f?sN`xdT`|-Vg!cwRs zTDD$>o^bO~+dy;u=9AmFs0Qp?_v%-mx$7L!ZWVdp3`^1kOGXVnUFelf=8%XO#0p#z zFH2`?VRB!wR(3Tr^^T|PJ~p%|EEi8QN5rr@LjM|`n&78u%qBMv{ObB0=Y^eoBsJ1# zp-L*n2wGOeJWUdCbXEnG*m&Ip?kj<~%weJ)W1CFpjMP2kLxYWKA7=jAGg27$1L@+wDa;#qa{#^rjODn(HR zBWXvBUrKsZfmi+P+-4?3lLIZsO3gdD-5>mQrR{A+*fE+SP4DNyJo|}eFto>tdu*zF z>a1h)cs<))*4FVl4-k9;kG9<;2bwjPkeq_YIXYLLV#Ij}2al+BdJsh4IeYI5H9S9+ zE)mGbUf)Ou45yL38Op8vfQb3U^>@O#8g1^YdMiF{fDNql4U>+WZCrl^0TSLG?}MiF z@Sp#ViqHRAaU_$=#qJb79I)osQ{@vHodpP?(Xh2@V@)h_ei!Zc_LH1x`(6BJx%W&R zf!{X=XH%n?!}vt17Y^|fse^)b{FF*ik%2rLmow%qP|N$?Emer+Suq4!k#0-9dzj7w zumI*r35$PdG4-;sPAY}WMyC7~E0Peaz8Ta^CA&!f6Ty zOhMw`d@~|3;N3eqshLrCR$Wm*Hl-@x0)czWZ?|!==IHII@saDC&Dz)QR3z~5I-X0O zHi9X8Woc=ihW51DC0@kvB#W1X+*AWc&A4WtCZSubiZp-uR-qXJ;C~F{JJR%Ru0kl^ z|G9eSc-OUwR;<3j&x*YE@F}~7QiHn*W{iKOJ?GhM-t39D zZoMzo-nEs`I{QKs(bMH(>~wuoiVhk>(4n~h;ddUad+Hj(ziXiAQ;H1}1FKkj z&V4$93y(tut%5Ii!CAn(6D?7}Kx;08SGdC22^jJc7>kU2S8|;`9xoDe6CEvkadGW3 zbCHuKbnqwIY=XM`B?ohUZ1Hfe%+S(oIg%wmae^Q5OgKu&BUpwL9ZrS|{_0>R0soeA zEr)u9_S=&#Mu~snoC$n1aW}N`3m1)vSSPA5k}BT4C$Usq&(x8b08m1&^-6$ zx&gYrJF|`7A`2<={)k@{0>qk(6jKyXV-K)+dlaJn1xeJ6a3JA}o>3(?OgJP1VDh^2 z`>gdyPgDfJMX(=i$RX_xnluLNewF>!hvIx7iT zKFzF@>Wb2&Onad%>#iI5P){7pq6O9Y!@0u z5zy~uQeM0!Aaccj-^cvW6i{h)3f2S$7iO>)aq45vPETXFyVTB@Gy{K(jUwpDEI3rs zp){GoN-8WgCE2IBPNlT*e2M8eh*F<;z!&UO!VqqVJs9Hq|DG|;8}^q@g* z)~!-E=ld=13{E{=#Gj+Hw82%wZ>0aZ)Pfjgo1>qbrR*BG2LPY)+D~Jk9j-Oa*R z40Omm^0^LZqbsMWs0MfXC;j!u-uZ=zPE`*L4GM`*A|r($-T#+SjnJ2J|@QH z;P5$tO**odD8~aGcvk&HSWb9YWpLIx|9hoS7p~MKIB9rRKceamq+sDv6$PBj?#~#* z4=4IAxHv!Vsr*pGd#SVhGm>}N8oUrZBK+waV0;B8Hg{?C;o?M6*J8=)(H_|sH(fx) z?rdV-92>FC2j%w6O1M|yE#&8?PJalY5=5aR_brsR43NDC%6+S`N zqvleU%$V}ADQ3PC*GtEjs(5FG;IcmHJ~HV1L~l-20h~pn;_3HO(^?m(M_@uC>BPuV zjCNU}q+3rj2(OwExJ8M3z+5e79er`7hGj9Pk{&dg*sZE5^4g`#))lWybIjTE;X<-3 z8b$s0?E(z-8LOiGU!7s{uZuaJZjSPepej3KJ0+ym-M`dm2ZdGBHjM~2(xnPyIwel+;Dg&eGWBMSvX=xOzcI{N+zyD-P z+yNJbuUt7;sj=Ln`zVEMIZiT#(}ppmT5)ch+t2ZZ*&Vq%b0K0nwv~f^El6Aj84Tun z0kfvM;sE{eU1d?YRKAfhE|>>Fx!#I`D#G!5G3pMKV0h)C@TcAp>`6GA<_U@>sHRQr z9WJ10brDs;uK-Qk*n6McutP(AmT%K6Eidt$IcpZIL+>owYu!$n^%DDwrhjC=IpWqOw1K#ACvPDAPz{lUG2QS6_XMqDvxtk(>n z(Lq5NH1};z_;kTXBt(vQtpE|FL+bA@l-EyUcKy`X$7oRQ-owIx)L%q{nR|>e)+yo} z%Peod0k6RA>Z?V?r?69ZzZ|p2^P99rzORRP1L_LJjkYtbv1T}6jZ>vwV@sdt&~o}I zh32}-r%Y8&r8vpfsk2GisHTjsv zfB7-}dS@E??8ZHLAL>y9ml{}#ahQs+Ulil=iPpBPMKHR?eGdbA-{Jkeonw@7?Ai9P7@ciB4w*7~v~o;zqvi zIY&@y&L;jG_tTF>XDMsrPd#+?3_EgI)UD z!;UixE?ZJX69?jk17w*x4F=C>F>2v;kh|l|Y30|HobKz+d^?9HOXG}P{Q^;vLWC%b zq$xZNO%2_bHu;9Yfp11f`KL5tsyY-N)8{tDTcwVrx%yM=pjQL&lP8*~6I&FskaRu_ z!#DF68VxAYQ44#{I{=d99aq@A5l0bqtoWI=5<9D46nT)bz-Vn8^fH6l-%*^XIFoS2 zUUR&$Z}KVU^;|B7nv|JKPgy)=-fvEU@DCb!RrNKcZv!`7Xox^{%C5erAjJYD%r39s z?^phW8@4kB4y(4&uRP6hdK=Q{zv!899e-gJal}yb817f-QQsgb8t`=V3%{6Vox(8i z$-xQX4!Chqyz-=e7fjaupHbsSsE8e_4sE+~^kQko=uYuU%v5{7X|fZvaRT0Z0oUbr z!hPX*c~wTXKWTgjn8AV!Tfb6bF2V{DM-`Gr6>2*vQKf1Fi?B{SRB8&a@bdOtAKyoq zfYK<-#trRykMgY8e}hRJ5tYvt@%a*_A8!*^CY{S{Wk+5;5=HR-D>jg$N&e5xi4NCv zf^ZPwa1T%a-B`Okb21;E4B1Iwd^g5uk=_pB2szy};9YK$0Vp0?(9u~FKg8n9WJEII z0?xU43XGgp+-W+b{CBEn>E+0$`AHR^QJ`a(c;y|ZJ#cbJyzZ)s*_k;t@tK6A>DCYC6R7)9oS!-D+R)OX zI;w!F0~AWOoXobPpuyp631F@)E3U@VdXBMR+zA1aRT`|0Epd#*(lqxbQj_pn!*11& z$1mqZ(fxWPy3jiVhIBhfEmFSrbJv0?dOE)yDRP>aFOF-4o&C8C$g<1buu{!gbBzt{ z6U6T+3@%skW@p7ADfC|WjZTp^_HDJm0c`=+ zQSkHXFS=^eiJQgH^NLIKY2ir6N|}~Kc+1W?af}8l`lN@bzZv44s%ZNggBPi9Zrt2 zU+#Vgy~D}h{jh4AUOYT1V;3)RLXQpmtl7t7jGt{lsjC`8T?)VXvb5~`JFo3I`hP76 zn?j!p7$!!>rKyFOuidp0vps*v`MdQXqJfzXU`lyAH<>(n#8BZ+?v6mG`OqFZ?9f%B-4phRUAyMf zvr{PYCcXg&7G3?|Y1J_;@4jsqkOaauv;=TUcQ*on#7XbXe)@1#FX}}1@3dRqJGI%8pI(kpL<))p%UrgmTJg%suLar zlAam3e(*I1kfo&3dNf_h90JyRk0xRNFQ=`U96h}{8%ZDu?)gyn3Lr+>yIOUjJ?w!Gc#yur6A4647A5w-Qfr#Wimt5m_(f_3h$ zTl_A8cs3D>!4ae__7mdEua!?%4zGk@=2{fdy;`L|qqZpg=sUR4;sE!J!P)4c>L1W3 z1(AeX5Xm4z8WV+rba>Sw77kW6*upSlf$t^JH#Y6EwMM%x2(84F8Rmlx5)Hgl9k9}} zj5XKqJf+Vk*M#jSRaEfJMbl#fevu81mecP#vkvjMKc)4Z%b#>=L9f10ZVn+326DoL zx&p%`YUN>lDuRmAvl9hj9=(|5Tk;ftz*jQkg1=S;5 z(Jsxw;I+Hd7#$((MlVGTpm36o5NMFKJ@L8*4%Cqq3c27BCmtU!o^`kPGN$Rkdk^N! zhn-ymzRXB;Qu5W_X- z`LgY)yx=!3uM=yp2T9&H9A50OPAv#t0x z%TG=2E;L_9uh%FCL}vbM$iJ{TMcrttc*J!=$kTYzjs~@Zab|t`fI_0_mKK=s?85nwyQ7_y3?TU;b1Cjn#eM z$)j*eTr}KL@ViJc18OV_j(}k6= zj8@hVxVLSaBuAkOlan^k*xE_mVyP+|Dzzt?(B*feDE#?vgI%v*k_aY`DHakD!nVS( zPo*{N5cp+Y8ke!~1n{jeJ7L}s6 z1};fA8m(5Z_6fi+7yUw^;&$+BF60KJ1JNw1H2luuw^4kRRwyclRPX2u5 zkrH6Q)!Nw6&`b@#`zw^8PU7Fbk%E+B8GI>MJ_cNEXii-GT?L>u=? zDD!%%cBwEyEF@L>4^1`)lV&jz-AIKT)MR~|1H7e5PUk1Q-0zszdI&)H(ib4R*C&Nd zu+TDpf5deoLN|>ad^W=6qu49k*~L8Fm>?!O3}J$enVq7+-8T}7*|@Go#5sMT(DL2W zFNToJO0)>PXX}f41CC@XQ)Jz)sn-iPp^dJNKIC^X3{(F z$*jD5WEkY`P;k`qLdU~{TE9DYhVyFgzn@o(VqS}`d_UUB3aB?RJ!t#&rV55Vviju=h~XO%qt}J zi(#NsxpQb*6^tauoLj=zI$5X_#Y=lq<7^u)IXK5XJz2wx&`y-4V!A8ya`n8B^zrXH(e_R7QE?!P ztzA{I2x{wm5hP1WuZ^<7=lKw^I40p~JZB+p&1K|&ad7Nha;M1gyQ1(gj2T?b^0q`kvL!PuQYjA#j17x*)&;g znx`IwduBuhqrfnz`8=89+DijJvmtqwb&d)3(%-u+S^eLjw5NunCht7;uKr@wTRE@Hy>Wp zgN@?cURxTae(cT5x?!%ez%v^k$>+xmI+1Yyn$0mhTnyMz9!08QVEBg_oknC;xi?D`nu7_vlw@ceQQyUu$);Zw+xxxST67B*S&0+|NOz^12 zVp^HdnPKyiUD#P4DYNExxk`&=Ik!YL`D+;Ri71c11fbga5XIJOPP&5i^ji+c}4$1M5XTu_sLZ@68GeMw?8dHP(kFTB?o9v{}*Qq z`Y+DLM0a%ddfoQHch|mkl-&B6b2DaRGrhIGJY_-hLBC#e5Sp+^A>OLfdyxVcx@Kwp z!cjWY-8b~vI{WaThw9Dmc7Elbm=b2JRL6b8-V@5wUZ6Nxh9#Cl-_fk5x=~aYCv3f6_Qrv2lIy*yRd7uxf&8_)k^$6LEU*+rQ6;`Vm6{h~9{4w)M_a)0cgSCy--+HE8Krh(J&zzmwpt`3YBM z^jI5d2QpcSu;WyZE%ba}EjZy=`R8=7Pmr&*K^+AB8jndi-HoqXTePSGBzrjWc8Aiz zA=4Yc>3R4JsFuF<%E=GX1#kaAaV`ho!kTn`X*z|)nP7JEnzQy^@d|XB`n(YINX=J> zZ>%Ue*>JgF8RXA(7AoV!cMSI65^$2Rb6IJO*gb1?f_jKu?wMpx@q5nkwjQ``${WLAj_7DJV!0k)G$o437O}xIjwRf5-k2GcO zu$9M-`%4)Tr;FoPFx#TXrsgyg5~f}KtYIn;V1y+G2i?tgyN%;{4fu)M=ATgcQ5s1} zIeMUi`FAqbSEF-E&SV2z`xFJ#^${?qscE(3T3mL9!3q5f9U96>-4-i!NW?~l4qy!e z)wx2X3#Q@6ZsDcf$joNNPn->o6jhS~ygkCUJlk^WYFPxwp3ZM?mWH4*0Q|Y-RG84q zXIkKWE3$caxN&+ewZw%FHA8o;>uWl`v%Z#N9ejuW0KZS8#ZZ1Ve> zrSU&e!dp8*KJHw^qg#7MT4|j{813jGL!Y~`(O)cSd=Xla71MAtehE_YNus0TTUs16 z(UbeoYQ4>QdAyVV7=~qVMdBAgprgXGPUP4|y!plJNn+WBKpa508Gz=0 z&*%Ffb3ItPGv%@Eum$abvHqcTj06e2j1~5j8=Aj&y%_%e4!P^yFTxBA?~xCxTTOsP zFa_Vj^p&vM4VJUH>n_Lp+##;u{_1_thd##k<{9T>!ebtu1FgJ$F# zIBZ31whJ_f^8lYbQqZo-onF%C(eVND2k;Q-C__!`tS>K?(ygs*xWRUIUTU&!utf>y zmIRi7sI2%3%?dBKQJXr%|YHFcdBCNInCYg4#C1sZT0N9*iR`Z-7__(|0XYWy* zYCC!Zj7Ei+?}OXi$395kg)n#Lm*1bw4loIVfvgP844;l9CRvw__F9B?rtI$^`36@H z*6>pizS*T-1qKus_jJN#>jK{Wy>vgK^J*ke>sNn+P`9I->rtCN0ZG_ax)0fa-b}CD zhb-U28bZ!}FHY(bEHv!;!$fo{|0@)sp81mX(dlt`Cbj`MpF&IF`%`xEQzss13n0Yc z85milABr_37GC@X(0ILO0rTwf@~TR8GU)De0AFS`5KkR0-rlu)Ed4(|w)#Il7E+R4 z#FFx?ZJ$_P%vmC2U{#TXK(>4V;m%uCl953v+3;J{%)&~HJsJ&h7&D>VMN~HZ54o(d zGn|NI!eYjWB|_2^<;_go=Tf4>f*?y6Rq+1-PAg?y7Gev)7^1{*>h0;Uw~`vOiHqF< z)67g-+l#E-k+__}|}r z9$n07#(Q*$4y>CaP8-=?)Df80SN-J!$ynu5k6p|OakSW9& zW?8~;8%IJ!6|UC1_^U-GR+njDF?2IjX$x&5cBY083VZB%StLl3&sT|+4K2U^Gs4qzfz%YIo=rzUiWDeo9VsV9 zlgorx)ryw`e)y+O2K%%cJYzvwBJslgEmR!km{Z>aX;s&k<~#U)-o5oFtm+7Rs<{SR z*6`fwbN2tlP(p_et;tK>vpbWMt=7l1yCbUQp2{0Ca2-kS-Fao&67Y}M;%y1X4mhY} zfzEdKe=y|yS|gVLDK1ye3BDSo>zFCoW3sot%s6q7jo$6wdiA!VyVOG}8(P&=>S{zG zT72u=Cyx=v&d&D@Vl%|K@Dxi3D$mD#J%cmVGzwYbqbR z0gCyflb(4AnI{p?%4?tm5S)N6mG93O_EzVBy8gj)XcBXVh&x11F|TF&PHX@9y{QmL ztVQaOJ<%)qE4TXzIqn`X!zbu)xqd8O7$_bW+$So#%cMdvL>1X2C+0KLV7B4i?E|RT zpjkPqq9n(DTvQT)mS{G1JnPxt-^*gO0)!lPXH%=7z-GM`WAj?mGFjG-NRc zL;MY6zNxS%Tlgl|bIB=qb>{=%9w6IJ{AS4_lq&p7<(h8AuWqogla`A;(MX{2)^}{J zxI}oUI7*f>iU4rFb}*;+Bk*C;GR$?eh_dWv{ZksBrd8djusBWjXnZ3??QUn8F1~rt zv!gqwHLSHoropi0v*=pZhhC_fLQ&TXid$D>Xs3h5pM_}}YfTXc}p;dgfWu z4ZzHAl(n^e9VWbakk4~C=U+WTuJ!hACXaYiWN&}^39M7gMDQVX-(Iyg z#LwJ~z17CIqe2DB&TZeDCN3mVmncIgLT8&Ac^Q|J!9(f73#H21ERV!l3lb$v{HXsS zv|XP~`gz%X8=;CtjF$>h2e{KI%3J%y7OYmnSqU1u$!B}Z{NM}t-atlb)ySGWmfHEP z@^JE=4r@ezM|Pt0r61r9@NRm#?Y)N!CB<@+a6OTq873Th3P&QmNiO-zIhz! z=L4=dE;tFy6Yh~uF;7oZaB;JbjE!+&oKbXyuhVoE8o5h|oYx?eRvR1O5eiBRZFQhP z6Ee6sor@qgM$lF3|GE>{ko+8FdxXJ?UAL^N0&j^u){w>_Mc8uji?X$2rl`N~nGV?1PxvhfF4C&_we4W6pSL7h7*+nN4kXBjd_JB#P^XvPXh95D! z_{xgcR!7T|xGm*HbD0jOZ9KkzVm1QwdZElc<^?T|!>$h1C42g~i#N;A$ruHW`Fv$gtNqHPc{FJ0##n%akuU|+%q`r0 zU#@=Vt@t>%x^;Hu5}A1(-$hx1PbHhjbYjk2N|!n@vl?)oGffzAR|8{WN;*;rFFdcJ z4ZyiXm?R#}=vlJp>ikZrK$V=l{ z->w4#L%tndRP8uVL@kznI?;nYex-EW&dv%1e|Al$L@M`{ z+F!@!^ZXi)iBS}BY8bLI7=6xnwzFE^?F@*juL3b@L ze#($mREh8eas-*s`P<7K9VzM$+pG9OI}*k0=1wPgpA3%#R>ukap~1pkBN~>*P9V!9 zUn;T07E)DWBubGDQ^vt-5ViKTYpQkGuWYeF;9Kzk?U-gS8Ys@Spvs^3-j-Kd9qlRj zCIr0hq%v1er0j?~XL!T|d?!xCly+~z1!S6T4>#C>(GRCf0Ogc%uWk%2*Cz%uI$C@V z{a^Ye&-H{|8G~^!oObNR1k`ISUdhj{%kDlHqH5oyt`jwZI!cM<|VrTjSwkG4KXV~5_0#oz$A zr<>TKuC^0{eDzGd9Kf224Sd7u?ZIn;jf;OT{FU0%%{s1%DvV~sDVe^^1NZB{+B1~| z;IF5nnbwW2&o}u}lzN$DzGP)a8t82&`iJ`)WTAvaF^lFasXz_qQAMN^_)$gqqxcO? z9PRm)X10&-8IvP#vKYgzIqN!mHY`0;Ap)A{2K-NAb8jj(ye_;Wop(4~4lkC;h_hs( zG1SwUd2ldEVY0EikhF4hONvw6lvQLE==thQqpLK{mvF{TiCTR!p-9VGag?xWsQGhS zvU@yUxVoJ!{z@{iu;HDs625MZ%fh%G38*dD|3+GF`bWMz;&QyR0iSz7Zk^NuhNV8p zZ~-AUW#S#I6l^d~^noU34wcV7p2p`)#$pFLo|%KG{^7Y32sTcLVL($9 zX*)4{hjhe2K-EoCcV$(t@CmJJ6r9hUuWiX*)@yEPnmqGgIJZQt9?UI4LV$I2fdT`q=YxWIcaM9?w zfj-!aQ&vrL^+Yz1Q14u;OYq1Tj^@XU*X!HyrgSzZ9Q?gbY%WoEVQ-hM#;_k$$ta?vFB%sNHo`+9oAwI=|#%_&OS{c40XYL zsO)r2R6zRI#JnS3c22JB2Aapl2JM1xY%aBpNg%?AwrwDOer`T?gm3C4Nl*m2a&qR^ znqQAR(}RomTO4!lgb}rparI2XqKsCk4QbeB=ahm=(>{lHfM=YBPYJGq9tk5;E^`^Y zy>5*TOYNQb7h-&?gqO2I+DVbnjAs~pt8lW02(3voTPm5dNhfWAM@4Y z*H`!*?33H}5Rn<;Y{MI7WwN;|z9rcuJoE0(lYyVgm#%q&f;-JIj~dHRX&IaBm75bN z1X0~1m&!Qw9E#JGje(YJyp(4=<1p7pJxvmj zU~~c9(U}{5g2T=19pl=Bt?~Y2T5h!I{F764%mgv#1)G1b`8*Ed5R>|5kMDJ|Te3Zx z@M{~1WzJy7(S|-W!NH~I%FY`diEYH5(Y^O5v8{DMVUSUUjSk>%8nL$*`C}w^1~=sW zHly7xRpiPxEP}IdQ}d6)md=pDhiy>83d9|E_UiBGy3($Vcrm5CesYzaggLoP+dc}N zrctaZb|1rSWzqGD2#MrtYxE#R^acSp1FX62!(;z$rTy3`j3-BWb@zz;)~ykihS^&% z_6e%bk3s;m{_@=5v?cV{W1ybzgC%2dC(bVacAYTL}iFnU1?V zn7$7Y%u$~Ttk3DTC<)&SHJon9*9$n`rDc zM55YKi&>earfby_%S~2coo3{)OpqQ#dZavtEKIr-_5KA}tWWr|x`AjDmihGJybJR$ zz8`rZ^Ml$ySC(@6#-|gbbd$Q(E2DdXJYn7M9jtwr%KW&bf#9M{| zeym0CvD>u{67b2y%N_2aOX|LQC{W4n0XP?DZE!&QpI3{ZYQ|Bdyf|W+STcG@D}@pe`>C4dI3@BgR73`@ z9%g9Y%els$ho-R1_-{#fj|c`>^Lh7EzKqH12WeWI3QI68Xr@X~MvNtJ*X5-?NUlv3 zZ-PLqv6L!}8vcfPe-uHr!!$49^i-R&bUGA(KQ74HqPnJsch!vtE#vf<(bWnM{!O0m{~jgso)t^t*ekPii+B zg4w2&#jGilDs1%D@0o?m;bh;S_*wcw^&7+nN-Q;tH5P<9?PM2*8|-WeWY@&=D2k$t zPt>rXRkeO4h^b16s)P{m=m>&rZAvY3&&PqH-|bsoCTzPm%9_8C*@CHSaE~DGAckG@ zzgPbE%itg2kHPin4_5my+ZtGay4vjQxhQ8&vkj@DpA(JSY+Wz-6a?F>j9`1$3&8JZ zp$D#TX}sUI0#MxfAQXlTU+Lc8CGuX3a#1#Y7AS#eNBM6fXsr6L0#!#vY%?EkJ}a3g zc{9AD!LajGVvILK>8tQ6BRX8H*+y>?Fp*xE!||L>uN&HYBt#S?5GjL`zvGuhaJ;x| zlP;|es!f=K5`@UgX{L1*BZ<$A0+J&I2oCSxknUf6mX%bzkBxDm(NCm6tLqZgUja() zhT(x-LyoMm5(e--8zv6?r}!LW?m*rg(aoHlQ6^KYltP;1}yq?ASpKwo46{xiu5gP(&RXT3G9^ zG*hG-mXiPE^yly#^5qAISH~2^IStC6Ye8~Os&&dgvZGu;*e#onY)5^o$3L=>m>de^ zAORa0!FYcN7r~r7FteJrKol168rYbveUdAbCYvHf$pzF#Idn0Lu~;xAQ7g02p9a|% z$t`UtBtxruU10F!3gYHh+MBqbaw4qqyyqNHs{MQEYz*dGLN}36gZ_H|1*@iyBY2EQ z?Xh4#9%~GxE#m(l11JNAPCX1YTv9}d$H@Ztv~pIc(`Jpfgv#K-1eSp)wX*ak#*i@H zzs^GZvh%_?utdk|X^;LF?Psb_q<{BP%X#@`0u|7F7dGIl!2aho{1eH3 z?y&Dk^~IXyKV^7T3a_m1l=FGzSAxOI>-Vw?-;krnoHlSiP`RU{n5k#dGKUr+?8!pJM_42Rq6SGfAR-mNg{c=&Fu$zh4?K zmarF$TS?cpxUp;IqgO6?Z^N(hK9HWQX3RmKIT!@iIoGwyIyBO09RaNeI!IUp?xxw2 z?!*$kf`bzB1&)XHhK+Rz`bsaWjV%UNdAnQSYiw-&!qlA689!O8=Lg7?P#Hdw2B*$b zyC>t{Mx?M^FRN>JaauVQ4;G(a>jBQ3Hd2E&as1(D8T8a*t9O-7c2q`inZwJ4Y6W5>JK>@s*dFIq7V z)y)~els55m>>$Z=!-&S0-A0*;HX*0&!iz5SE0m*%hI8zz-t9K%W2SlAuf=L?2T+PX z`e}>E>VLGq%78;%#SJRdg9lRfWvu3YI1oKWGhdMA_d|_V9W2U&n)xzV7 z$SR;Hv!w!<+W~g|K|A6w5`u;duY}1NLhid*!x#42*r%0|#^sp-%$!o{h)PFJf!W6X zySP#tGuEdYZiBk1AwUNrlAR;SM%vtOf5y|z&r zl+k60A(WAxs(4S{ZI&t@y1ukB=Qr7H4js{$QhuIUz7zfx{RkJMu{R2g53DzX`Z;H1 z2Yq2wZvH5YPchD}Wd4om$)RFLHpLQq>5tyT_E9PAVgxcPWU%TJ$wv-o*2KRJx?tg7 zybkC0aEHxyWY-oalGd=$lZ1w03w<4na%KaGk(;;n$$A+g%YXrZ$ww=^Rbnm?na!z5 z&EGehFw?%8rf=jpClTvBXWU8ANmDaQJJD#@o0~0Z^c2*`>28s1VAp)Q(Ygm@FBbwa zk&_*CCiJMmG=T~&dpxeuTPk26yhHvNO`Bv)ve0N4yc5wP#~L!t0{ zsnp29O!unczlBL(wOm_oEOcm^Vh7~D=c=?PZ0OH8C{V z0s&jrhE#j+wyA+?Tg|kqB1R$EsaiOO-P}8!i!~S=?o-^D9s$xhNjB&Brv-#Ebn+Xo zVweIGbIOn;mZRH0Wxg#10fSJoTocoAg)(|k0s95k^?}^?>k-v*Y^mlXg@8+aVk`M; z=NYOa^Hhe2*12c3(4$t)YgHY)_Dp5$L*N{d7p*DdD39rVC<>kAFr&jpgYN5j;jv*Oi=WY zP#i6xD5HriR^Jrsu-v)9k7(_fV#RC-iyTQNU(Fz2O&h%P=H0`fu}fHQh%#MmnbNh6 zk@e3R|HWU?@amZ&>YZp==C-)71>a07yZ;5B`|astkRzl;B2SqwRb$ z;EKH2G=L|Lxy5T}zgfKIVb^c}lJAon6h8be|L_*mjR5X|?=N1VHSvP-8#;`4h1CY@ z^L;x!Ab9>#m?8YRqfdVAEWt@E$IM}WrBYD6^MvQ0-=c(^TlAjoUd|9oC>4^==R>iR z=$6Pif8F!6Sl%ToVO6JldbX?JtQZ?z0?#oUCQ7U5an$R}y`S3qd)Ij7&qFX=seQ}p`+^kK zD$m&EwevlUH(HJ4i_S%mbqEkf-}Noib>I9`8*mnvn*7$;Od!`mgE&E{G%JNE4WFWs z0N0^PqYK~A7GpO;lgQ&1_o54zi*p~T#8M9j1{$3vs}RgsW&ER5QvNxA>-+sRB-9XQ z2ZOQv)OTWAa`$?Y&PURm4dwxbqsAt4ac(V-KOOdrJ}zPq4RRt)K}2do0))8-u>6IH zKgNGLM!@lHD2-gL_kc#N@9JEt-VWXBt@{)xlK0I$<(=vq63Qd1z&k=0fq5b@382X7 zOX`Q*CH;azC0(+;-CTo_2udI zoUP{k#J?8Uh&a~sLP6hJK$;AASm$Z7cG>k=jU@OFjNGw~rr}s#_%#YjOQ_X%7``W= z=76Wmi39t@;DL_3O*Ee>5V(#R7~8ecT6KW4+OaVEZ=UF4>ee2I#Gmdb#?z*}AcNTU zpl4737k>+-o$P@eS>Ubv)tA;6;#ko1P8bu4D@-|(mG9FiT_bfjMQ>QEJI86`8%=wu z-$fKia|^_3cyJddim=Z zi?mTWp(7ZFIUcxh_lg{sNeMXB>LAJaez+sO@Pbr#(;Nr7IP0`CMMS6|{adWgF6|?> z(j#Ozi5xSQZs!*W$n;-&c&|w9REAROeX_;K3AY)0cPyiWZeK?k25o!@p_X4$>{||1 zdTw0)6aB>>fQsTOMB7z+XMs8)A>k!m%cq*|F5TBwfM0qe+fC-z8Y?04<88Nd>sX&r zwqsVU2M&Xs3Gk_+QU3}|7h%^%$zb)hk`7a-Q|-LBd+lBHouzP$&*00^a%#1VfMX>n zRD!m)^L|+~=)^TJT$`*(RPX&z!sg|soO|;`iY0MWi9}bh-oE=d!pqavVu*-@)zQ{B zj^s(f(f@IY^Yjkk@}KqAu<0fx0?e2&ek~csjV0$a8n)Vd_M$A{5pp_|Z`(evM?l>hWPWnQPqs$_Q>D`Swe62`u?XS;=b3B1PKc%4sOGU*Id@VEnj4L zNZRY1!42${_a8`~m&w}aI=f(1CDO8TC_NgIHT9XKi{?r5Tf+2+yVD^jd3gqU{n`|e zndr^IgIG3Kafa~bBKTLik`7*`m{^P>d(k{B0VlEA=XMiEVD;VWI)PWhe54nSLPKa9;_5VA&lT(yiwL7CU_okKc;}y~G|rKij6uhwCUePY##V z2o_0Xz7(;qKQnKuq$}|IoF3;Vpz=p{Y$1UcSs%8k)e8!uo68=s_E_b*XEy9<3)yl2LuW@#7wjRD@J>iIv_GOuoK*0Jg(;0Is6!Lez<#+3 zYifk2Kb#l_9_-$han_hf(GI>`ZGXJl-S?voa16l3lf3l#*oOz`lbbYNJv(?Or(qat zb8{?c^uC|!bk>}nNrh@0f+*8RHaokK%W4pdIpZ-C&&1T@3p^~iYxX9}uH_^vBrrvX zxvUax28#Xa)b2{Ce5(6MebV*5QZmhXHlVetMcn>4-b+1FVdJX*kUAZ3l9!!wc0R_m zl*>E0pG7{z?N)(5uQoNuZnIG8W_g(r3?KnhOI*fAcFrq_f+eW5LVhi~@$p=`+DU)p z0kONS;iX2&mQi)#K2dNaaJ8Gt<5X7JZ%Q8`Q-co>@`Qf&2MkDJt&`0FO>Kfjs z>>z#f8@C_JEmN|_zimG+yO^ml8)c^-l-1^9Xc(_>3kVKeIHLWro<7*yu4=(EWyoxI z_UX)hAJ(#uH5enSL7-(&$D64)D{ko@3)? zCp!A)n$^SOl~a$ZI(;7?EyE4;R6#o`?AJ1x@{W~ z)$8uzYa(i*x)mX@a`o?634|PAN~qX`>3_znawC4wy<2Ek&DN^*r+o>OhATgl!A3$W z%PPbgffX!C=`9=j?qi1Ghsh#)rH`D%4p)C${w37f7Wo)O_HCKN6yXr*Y2Xr@u?2}F zX41*l)^A-ty(`pe1+Kq(4}~MDF^PIwzJzNXch}G_;?kV)sVVZr z&+>>YWvjZJ9-2!#8E7r)L0P4d!qG^ea4lGL;t6?P5z! z)4So4l_yU4S{-q8XqM3Pk`9>L%b4HRTD5K$Du|B#e8$*Rgw)1fhu5C-a)WC;eEfCqf! zQV{y7F}H?DM^tV^} zduR7_lrRaJqp^X5wm^SNzt6_^=-|Ew+u~r66|F9H7f>2S`2kzi+HG1n0ax8&g&Kseq83n>f!Wv>JK5da1&p3== zEBW}p3S1`{?=B4-^hbH^9kg{R}aW8?&cSb8V+K78r!uBdfUmLMgmKl zqrphbP|_oppn&PUN4?$%cuu6c87n9a@^8l#mG?OBy}*fp*{ za>Y&m^tJG!oZ`A%dDOYakf;B@kW6Wp2D94J?U(PEQN=pU0N40LnkU>2eP8&~E)aB8o%_3<@VO)dcvUc-`_?lgvB!X6{!xr|7>nkpV)lRpgbD`!fsSQOYYkB;5%Yx zeteg%TY23!b4&6F+s#Uotm|nBQn;)sY+Mqts18?HX`_VbaXK-z%2cql5ZD{B0$N?4e);F6U4(mGO>##j8Lm*#V=SrI$Vr4(T!l# zTbD)ET=HJk(sQ!v>U`0jE%f4eV4uDB6%^xFNx5)ZFv*;xge^yICY3ow+SB(%IMYZL zdpEP(%@%&>Ss!`_PA7aBnxRZ$&x~ank+=|573>0A$mw)#?7}!e6)e{}L*^aY?G#h# z%ZZHO9$DUy!ga3y(K-9TQ9BpX?1aH*AIY_z!JmQLHwXjovI@jlH%Cn!)sYu(ja@f{ zDv$WBwP_zLU8u^8wBrvM`Oc5L^MW5OM8IcQMC4!07IiQ4`hAVEz)HI05RHY7&A%#G zik1~L-^gkot9p3r@*Hv)0%a2DGrG8$q7{-~G&PVE(W^Z;y;n9g$9oBKsF}EuEDSq( zpM3*m{U0`D*|l^vQEKLUA`mVZc=Z9GVfj~2F`M3lSWL-dDonB!-3&DR_>C*E@q!hP z9nb5R*r$;C=JH>^1^pH#M6*LFBQ0;8a{yP9*}}exw}37o*6Zg5eBEW z`Sh6ENxT_e%?>fqF0DA>b=53&;??V`RO5$OITjcq9(GRE2gbOeiI5!YVN|+3S2VYW zdObSdgs|cK>Z4VYGw)Ht#y7IC_IygvzV487aJc@_Q-Gk1{l z96v~VpxQ@i0EG5Me);1!H})C1&7(6QT*a_!2xkj zI*{X$At2P0%~#I+P(D$CdpiITQCF0ohx=fHcxk$+Uh&1wO(DLv@v7H%`43vd%I9Sj z+o>Mxd&;J-7}Nk?>!9>}K4XX&isiSC*~2$xbLnQt5J?1Qu0SV_IQsqiXrX-~{mDS5 zb7S0m{SkcGzi}Qp)Pm5}I zplB;dlCgh0D951bAY@UDQ45_XnR$aoOu?#BP*Ku7K}2z+rCn)H#gA^ z%uKiH8vW2~$1;nv7mxBz@pKN6tUKv2it6G9Ua1d#`LZe}M-KuS|8`POP(D|#U9TIc zT$+P?kgEzo=gMBJde`OaDfMMtd0_A7^T*b^ioR^qU9sSoo`1F2%IFd|R~0Q*AeN~u z*SZpvFS^Uv1NASZOGz-=I{|*kU?}Z?Oa_Cf8w5sYqpC>$1c6tWw`;pMvQApVjwjmt z_^eWAou6bpLsddUIa>w6Dp`V`WCN=Rt{#FY3yjXj_qZpP^fk{iS($&VRz4ic5=U_P z?&!UTZB~e&hjJ)M{exfyyy0jUB(7dKM@0id2dbMf#Q{?ZfYxu}IYaz+Fe0zSpBp3s zFy&f+hu9tq(}H9oBmwIInr5TqF8dmvr8Bb3a@=9(XQdgo+)bCWTM-7eB8Dm@9Cza6 znvh!G<%u_wv(zh~U~b8e{XIoHQ;{KHcxHuHO(XbkkCBq+@p_juZlW=gp;P$pSpu>A zoWUEMq5CMLa6C(@gq=Jwn&~6b>B|eOn(jo#6o_(I%iSb~*zXbcbrz-d{A9v)*zM#& ze*U<+Mn!SjMNw;OFm~G$5;H8xV>jM~j&EbGYljqfT^wPf<-D zL|Yvyo6u&BQ~cu|C9RA&Q=j>_NErKsh`Io;qYuK{k}^fq_@MYSo}|}f&OBsH);uq3 zg=(BxzfzBw_A*-?8!?y4o*ypCi29VD$bNPV^!4o^o1R622x$-I2DIj-c`w+<}N!ho=m z)rttuT8|!{D&mQjm&PXsM{gu}n~j)F&!`dYiWMcS^}6FggZ0f($XF$?&vJ`DJ%U>S zUU{BcLFiyAw?+FwvMUip&`MTm)*VEC=A>ozQOMnOD`kTrU=#J{^WkydS2Pax_f~7qqi85 zh@ezAc7_d-Nb}7`;CEn6pH2k{ew0HtW#Byf9(88DoM^l(0LVV4M^?HWP)LDhHxHA8 z7iK&)e+$~(1~q=OCP@+7$Nufa^S})F6uRm_s0Hh=nq$o@C}ipFTZI!m*IUzFv3YrJ zd6nru(}>SKn%cQ3mPq+no?)h?2ehKFhxMMCo%HSz?bWxbnjJ9>r|W=a}h$N z6Kr`nVv4=vgnPm>sGr$A1Dk&kXkREL;uvXKST4eIcIS=+<$=6cH>=SB6K^BJUDu|x z3~Hu4Duxv8(^zvgeO;7K&C72LDx3DFCiu8`%1O|esewchyZU5)BWc;fJ!99+`%NIT zr#29DPcUgsAnj20-XkCfZ0Z;cNo2@)1q8faev_9oxFaH8W5VGe_tD^_{8dC?a>GOu zS>}v$>Xs0wge~Ip&tkO}zk#b}b}@FfnPY2D+k5ZZ=ZB8Ov*6{Hg2?Oy`4s!RD;^pY zZ-uaGM>cMpSP)<;2|8V_g!^$1m3)&LS%6@~;koTvA5vly=yjcshY5af8j(K<_m+z< zJ^{o1q#v_)kcpIiE{nM74$!q4g%F;a#Ko9Fw7h+s*S=ce&AtGqFfgs12nf(98w%pVzX?Sqx

g!;&@bT<1({`D!v~K2#*iF>=dpXA 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 B;fVkM literal 0 HcmV?d00001 diff --git a/docs/tutorials/images/s3.png b/docs/tutorials/images/s3.png old mode 100755 new mode 100644 diff --git a/docs/tutorials/overview.md b/docs/tutorials/overview.md index 63090026..004ef1d7 100644 --- a/docs/tutorials/overview.md +++ b/docs/tutorials/overview.md @@ -1,24 +1,10 @@ -## Case Studies - Topic models can be used in various real-world scenarios in both academia and industry. We provide a number of concrete examples of using Turftopic to gain real insights into the nature of text data. -

+| | | +| - | - | +| | :fontawesome-solid-graduation-cap: [Surveying and Filtering Large Training Datasets with SensTopic](./fineweb_1m.md) | +| | :fontawesome-solid-circle-nodes: [Cluster analysis of machine learning research.](./arxiv_ml.md) | +|| :fontawesome-solid-church: [Discourse analysis of internet forums on morality and religion.](./religious.md) | +| | :fontawesome-solid-compass: [Dimensional analysis of political ideologies and issues.](./ideologies.md) | +| | :fontawesome-solid-car-side: [Dissatisfaction analysis of customer reviews.](./reviews.md) | diff --git a/docs/wiki.md b/docs/wiki.md new file mode 100644 index 00000000..b7813833 --- /dev/null +++ b/docs/wiki.md @@ -0,0 +1,48 @@ +# Wiki Analyzer + +Not all users have access to an LLM API or can afford to run LLMs on their own hardware. +This is why we've added a light-weight analyzer that is retrieval-based, rather than relying on text generation. +This allows the topic analyzer to work with the same language model that was used for fitting the topic model. + +The `WikiAnalyzer` works in the following steps: + + 1. It searches Wikipedia for articles using the top N keywords from a topic model. + 2. For each topic it produces a topic embedding from the average of top 10 keywords and documents. + 3. It retrieves the most similar articles to each topic. + 4. If the similarity crosses a certain threshold, it assigns the article's name to the topic. + +```python +from sklearn.datasets import fetch_20newsgroups + +from turftopic import SensTopic +from turftopic.analyzers.wiki import WikiAnalyzer + +dataset = fetch_20newsgroups(subset="all", categories=["alt.atheism"]) +corpus = dataset.data + +t_model = SensTopic( + random_state=42, + encode_kwargs=dict(show_progress_bar=True), + sparsity=5.0, +) +embeddings = t_model.encode_documents(corpus) +t_model.fit(corpus, embeddings=embeddings) + +analyzer = WikiAnalyzer(t_model, similarity_threshold=0.3) +t_model.rename_topics(analyzer) +t_model.print_topics() +``` + +| | Topic Name | Highest Ranking | +|---:|:-------------------|:--------------------------------------------------------------------------------------------------------------------| +| 0 | Omnipotence | contradictions, contradiction, creationism, creation, omnipotent, belief, believing, contradictory, deity, believed | +| 1 | Capital punishment | genocide, punishments, murder, punishment, killing, punish, deaths, executed, kills, penalty | +| 2 | Morality | morality, morals, moral, morally, ethical, immoral, societal, societally, objectively, justified | +| 3 | | amusing, responses, discussions, discussing, funny, disclaimer, newsgroups, policy, isn, offensive | +| 4 | Agnostic atheism | atheism, atheist, atheists, atheistic, agnostics, agnostic, agnosticism, theists, secular, religious | +| 5 | Gospel | testament, gospel, theological, biblical, bible, verses, revelation, theology, christianity, verses_ | +| 6 | Quran | islamic, muslim, islam, qur, muslims, koran, quran, allah, rushdie, rashid | + +## API Reference + +:::turftopic.analyzers.wiki.WikiAnalyzer diff --git a/mkdocs.yml b/mkdocs.yml index c8ac07b6..97810a67 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -2,24 +2,28 @@ site_name: Turftopic site_description: 'An all-in-one library for topic modeling with sentence embeddings.' repo_url: https://github.com/x-tabdeveloping/turftopic nav: - - User Guide: + - Basic Usage: - Getting Started: index.md - Defining and Fitting Topic Models: model_definition_and_training.md - Interpreting and Visualizing Models: model_interpretation.md + - Modifying and Finetuning Models: finetuning.md + - Saving and Loading: persistence.md + - Using TopicData: topic_data.md + - Advanced Usage: - Seeded Topic Modeling: seeded.md - Dynamic Topic Modeling: dynamic.md - Online Topic Modeling: online.md - Hierarchical Topic Modeling: hierarchical.md - Cross-Lingual Topic Modeling: cross_lingual.md - Late Interaction (Multi-vector) Topic Models: late_interaction.md - - Multimodal Modeling (Experimental): multimodal.md - Concept Induction: concept_induction.md - - Modifying and Finetuning Models: finetuning.md - - Saving and Loading: persistence.md - - Using TopicData: topic_data.md + - Multimodal Modeling (Experimental): multimodal.md + - Model Merging: topic_merging.md + - Distribution Learning: distribution_learning.md - Implement a Wrapper/Custom Model: custom_model.md - - Tutorials: - - Tutorial Overview: tutorials/overview.md + - Examples: + - Turftopic Example Gallery: tutorials/overview.md + - Surveying and Filtering Large Training Datasets with SensTopic: tutorials/fineweb_1m.md - Analyzing the Landscape of Machine Learning Research: tutorials/arxiv_ml.md - Discourse Analysis on Morality and Religion: tutorials/religious.md - Discovering a Data-driven Political Compass: tutorials/ideologies.md @@ -40,7 +44,9 @@ nav: - Concept Vector Projection (Continuous Sentiment Scoring): cvp.md - Embeddings and Encoders
(Transformer Models): encoders.md - Vectorizers
(Term extraction): vectorizers.md - - Topic Analysis and Naming with LLMs: analyzers.md + - Automated Topic Analysis
(Topic names and descriptions): + - Analyzers Overview: analyzers.md + - Wiki Analyzer: wiki.md theme: name: material logo: images/logo.svg diff --git a/turftopic/merging.py b/turftopic/merging.py index ec1a8c85..e2bfbf77 100644 --- a/turftopic/merging.py +++ b/turftopic/merging.py @@ -66,6 +66,34 @@ def symmetric_merge( sim_fn=cosine_similarity, allow_within_model_match=False, ) -> tuple[np.ndarray, MergeHistory]: + """Performs a symmetric merge on a number of topic models. + + Parameters + ---------- + component_matrices: list[np.ndarray] + List of topic representations from all topic models. + weights: Sequence, None + Weight for each of the models in case of a weighted merge. + match_threshold: float, default 0.7 + Similarity threshold above which two topics will be considered a match. + agg: Callable, default np.average + Aggregation method to use for matching topics. + sim_fn: Callable, default cosine_similarity + Function to produce the similarity matrix. + allow_within_model_match: bool, default False + Determines whether matches can happen within models. + + Returns + ------- + ndarray of shape (n_new_topics, n_dims) + New topic representations merged from the old ones. + MergeHistory (list[list[int]]) + Indicates which joint topic the original topics were merged into. + The data structure is a list of lists, where each list contains the indices of the joint topics + each of the original topics were merged into. + e.g. [[0,2,1], [3,2]] would indicate that the topics of the first model were merged into + topics 0, 2 and 1 in the joint model, while the second model's topics were merged into 3 and 2. + """ stacked_components, old_labels = stack_components(component_matrices) similarity = sim_fn(stacked_components, stacked_components) if not allow_within_model_match: @@ -106,6 +134,34 @@ def asymmetric_merge( agg=keep_first, sim_fn=cosine_similarity, ) -> tuple[np.ndarray, MergeHistory]: + """Performs an asymmetric merge on a number of topic models. + + Parameters + ---------- + component_matrices: list[np.ndarray] + List of topic representations from all topic models. + weights: Sequence, None + Weight for each of the models in case of a weighted merge. + match_threshold: float, default 0.7 + Similarity threshold above which two topics will be considered a match. + agg: Callable, default np.average + Aggregation method to use for matching topics. + sim_fn: Callable, default cosine_similarity + Function to produce the similarity matrix. + allow_within_model_match: bool, default False + Determines whether matches can happen within models. + + Returns + ------- + ndarray of shape (n_new_topics, n_dims) + New topic representations merged from the old ones. + MergeHistory (list[list[int]]) + Indicates which joint topic the original topics were merged into. + The data structure is a list of lists, where each list contains the indices of the joint topics + each of the original topics were merged into. + e.g. [[0,2,1], [3,2]] would indicate that the topics of the first model were merged into + topics 0, 2 and 1 in the joint model, while the second model's topics were merged into 3 and 2. + """ merge_history = [] components = np.copy(component_matrices[0]) # First components will just be kept @@ -155,6 +211,7 @@ def asymmetric_merge( def get_merge_fn(merge_method: str | Callable) -> Callable: + """Finds merge method by name, or returns the input argument if it's a function.""" if isinstance(merge_method, str): if merge_method in NAMED_METHODS: return NAMED_METHODS[merge_method]