From 14b449bcfdfe83ce2ac253d207e4e7ef656979f7 Mon Sep 17 00:00:00 2001 From: Ricardo Date: Fri, 10 May 2013 10:32:21 +0100 Subject: [PATCH 01/11] adding FITC to the list --- GPy/models/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPy/models/__init__.py b/GPy/models/__init__.py index 1f94b822..7cacffb1 100644 --- a/GPy/models/__init__.py +++ b/GPy/models/__init__.py @@ -12,4 +12,4 @@ from sparse_GPLVM import sparse_GPLVM from Bayesian_GPLVM import Bayesian_GPLVM from mrd import MRD from generalized_FITC import generalized_FITC -#from FITC import FITC +from FITC import FITC From a91501af565e52920c00f37729cf393f2b57affb Mon Sep 17 00:00:00 2001 From: James Hensman Date: Fri, 10 May 2013 16:39:20 +0100 Subject: [PATCH 02/11] minor modifications to the constraint behaviour --- GPy/core/transformations.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/GPy/core/transformations.py b/GPy/core/transformations.py index be8c3030..e446566e 100644 --- a/GPy/core/transformations.py +++ b/GPy/core/transformations.py @@ -34,6 +34,8 @@ class logexp(transformation): ef = np.exp(f) return (ef - 1.)/ef def initialize(self,f): + if np.any(f<0.): + print "Warning: changing parameters to satisfy constraints" return np.abs(f) def __str__(self): return '(+ve)' @@ -48,6 +50,8 @@ class exponent(transformation): def gradfactor(self,f): return f def initialize(self,f): + if np.any(f<0.): + print "Warning: changing parameters to satisfy constraints" return np.abs(f) def __str__(self): return '(+ve)' @@ -62,6 +66,8 @@ class negative_exponent(transformation): def gradfactor(self,f): return f def initialize(self,f): + if np.any(f>0.): + print "Warning: changing parameters to satisfy constraints" return -np.abs(f) def __str__(self): return '(-ve)' @@ -79,7 +85,9 @@ class logistic(transformation): def gradfactor(self,f): return (f-self.lower)*(self.upper-f)/self.difference def initialize(self,f): - return self.f(f*0.) + if np.any(np.logical_or(fself.upper)): + print "Warning: changing parameters to satisfy constraints" + return np.where(np.logical_or(fself.upper),self.f(f*0.),f) def __str__(self): return '({},{})'.format(self.lower,self.upper) From f6ffbf88d9650a9e33cbf5bad269a473e5147036 Mon Sep 17 00:00:00 2001 From: James Hensman Date: Fri, 10 May 2013 16:49:37 +0100 Subject: [PATCH 03/11] fixed transformations (Sorry Andreas) --- GPy/core/transformations.py | 1 + 1 file changed, 1 insertion(+) diff --git a/GPy/core/transformations.py b/GPy/core/transformations.py index 41d0eaf9..ff821851 100644 --- a/GPy/core/transformations.py +++ b/GPy/core/transformations.py @@ -48,6 +48,7 @@ class logexp_clipped(transformation): return np.log(np.exp(f) - 1.) def gradfactor(self, f): ef = np.exp(f) + gf = (ef - 1.) / ef return np.where(f < 1e-6, 0, gf) def initialize(self,f): if np.any(f<0.): From 6d65e2adf86578b7d2d0e972e351e5e6fafdcf1f Mon Sep 17 00:00:00 2001 From: Ricardo Date: Fri, 10 May 2013 17:46:45 +0100 Subject: [PATCH 04/11] more changes --- GPy/models/FITC.py | 119 +++++++++++++++++++++++++++++++++++++-------- 1 file changed, 100 insertions(+), 19 deletions(-) diff --git a/GPy/models/FITC.py b/GPy/models/FITC.py index 17df03a7..521367c4 100644 --- a/GPy/models/FITC.py +++ b/GPy/models/FITC.py @@ -24,11 +24,18 @@ class FITC(sparse_GP): #ERASEME - #N = likelihood.Y.size - #self.beta_star = np.random.rand(N,1) - #self.Kmm_ = kernel.K(self.Z).copy() - #self.Kmmi_,a,b,c = pdinv(self.Kmm_) - #self.psi1_ = kernel.K(self.Z,X).copy() + N = likelihood.Y.size + self.beta_star = np.random.rand(N,1) + self.Kmm_ = kernel.K(self.Z).copy() + self.Kmmi_,a,b,c = pdinv(self.Kmm_) + self.psi1_ = kernel.K(self.Z,X).copy() + + Haux = np.random.rand(self.M,self.M) + self.matA = np.dot(Haux,Haux.T) + np.eye(self.M)*100. + self.matV = np.random.rand(N,1) + self.H_ = np.dot(Haux,Haux.T) + np.eye(self.M)*3. + self.Hi_, l1,l2,l3 = pdinv(self.H_) + #self.V_star_ = np.random.rand(N,1) sparse_GP.__init__(self, X, likelihood, kernel=kernel, Z=self.Z, X_variance=None, normalize_X=False) @@ -63,28 +70,28 @@ class FITC(sparse_GP): self.Lmi,info = linalg.lapack.flapack.dtrtrs(self.Lm,np.eye(self.M),lower=1) Lmipsi1 = np.dot(self.Lmi,self.psi1) - self.Qnn = np.dot(Lmipsi1.T,Lmipsi1) + self.Qnn = np.dot(Lmipsi1.T,Lmipsi1).copy() self.Diag0 = self.psi0 - np.diag(self.Qnn) #TODO eraseme - """ self.psi1 = self.psi1_ self.Lm = jitchol(self.Kmm_) self.Lmi,info = linalg.lapack.flapack.dtrtrs(self.Lm,np.eye(self.M),lower=1) Lmipsi1 = np.dot(self.Lmi,self.psi1) - #self.true_psi1 = self.kern.K(self.Z,self.X) + self.true_psi1 = self.kern.K(self.Z,self.X) #self.Qnn = mdot(self.true_psi1.T,self.Lmi.T,self.Lmi,self.true_psi1) - self.Kmmi, a,b,c = pdinv(self.Kmm) - self.Qnn = mdot(self.psi1.T,self.Kmmi,self.psi1) + #self.Kmmi, a,b,c = pdinv(self.Kmm) + #self.Qnn = mdot(self.psi1.T,self.Kmmi,self.psi1) #self.Diag0 = self.psi0 #- np.diag(self.Qnn) - self.Diag0 = - np.diag(self.Qnn) + #self.Diag0 = - np.diag(self.Qnn) #Kmmi,Lm,Lmi,logdetK = pdinv(self.Kmm) #self.Lambda = self.Kmmi_ + mdot(self.Kmmi_,self.psi1_,self.beta_star*self.psi1_.T,self.Kmmi_) + np.eye(self.M)*100 #self.Lambdai, LLm, LLmi, self.logdetLambda = pdinv(self.Lambda) - """ #TODO uncomment - self.beta_star = self.likelihood.precision/(1. + self.likelihood.precision*self.Diag0[:,None]) #Includes Diag0 in the precision + #self.beta_star = self.likelihood.precision/(1. + self.likelihood.precision*self.Diag0[:,None]) #Includes Diag0 in the precision + self.true_beta_star = self.likelihood.precision/(1. + self.likelihood.precision*self.Diag0[:,None]) #Includes Diag0 in the precision + self.true_V_star = self.true_beta_star * self.likelihood.Y self.V_star = self.beta_star * self.likelihood.Y # The rather complex computations of self.A @@ -138,7 +145,6 @@ class FITC(sparse_GP): self.dyby_dtheta = dyby_dtheta # dlogB_dtheta : C - #C_B dC_B = -.5*Kmmi C_B = self.kern.dK_dtheta(dC_B,self.Z) #check @@ -176,6 +182,77 @@ class FITC(sparse_GP): self.dlogB_dtheta = C_B + C_AA + C_ABA + C_ABB + C_ABCA + C_ABCB + C_ABCC + # dD_dtheta + + #FIXME + H = self.Kmm + mdot(self.psi1,self.beta_star*self.psi1.T) + H = self.Kmm_ + mdot(self.psi1,self.beta_star*self.psi1.T) + H = self.Kmm_ + mdot(self.psi1,self.true_beta_star*self.psi1.T) + Hi, LH, LHi, logdetH = pdinv(H) + + + self.q1 = .5* mdot(self.V_star.T,self.true_psi1.T,Hi,self.true_psi1,self.V_star) + self.q1 = .5* mdot(self.true_V_star.T,self.psi1.T,Hi,self.psi1,self.true_V_star) + #self.q1 = .5* mdot(self.true_V_star.T,self.true_psi1.T,Hi,self.true_psi1,self.true_V_star) + #self.q2 = 0.5 * np.sum(np.square(self._LBi_Lmi_psi1V)) + + # D_B + gamma_1 = mdot(VVT,self.psi1.T,Hi) #TODO restore + #gamma_1 = mdot(VVT,self.true_psi1.T,Hi) + dD_B = gamma_1 + D_B = self.kern.dK_dtheta(dD_B,self.X,self.Z) #check + + # D_C + #dD_CA = -.5 * mdot(Hi,self.psi1,gamma_1) #TODO restore + dD_CA = -.5 * mdot(Hi,self.true_psi1,gamma_1) + D_CA = self.kern.dK_dtheta(dD_CA,self.Z) #check + + # D_CB + dD_CBA = - mdot(psi1beta.T,Hi,self.psi1,gamma_1) + D_CBA = self.kern.dK_dtheta(dD_CBA,self.X,self.Z) + # D_CBB + pHip = mdot(self.psi1.T,Hi,self.psi1) + gamma_2 = mdot(self.beta_star*pHip,self.V_star) + D_CBBA = .5 * self.kern.dKdiag_dtheta(gamma_2**2,self.X) + + D_CBBB = 0 + for psi1_n,gamma_n,X_n in zip(self.psi1.T,gamma_2,self.X): + dD_CBBB = - gamma_n**2 * np.dot(psi1_n[None,:],Kmmi) + D_CBBB += self.kern.dK_dtheta(dD_CBBB,X_n[:,None],self.Z) + + D_CBBC = 0 + for psi1_n,gamma_n,X_n in zip(self.psi1.T,gamma_2,self.X): + psin_K = np.dot(psi1_n[None,:],Kmmi) + tmp = np.dot(psin_K.T,psin_K) + dD_CBBC = .5*gamma_n**2 * tmp + D_CBBC += self.kern.dK_dtheta(dD_CBBC,self.Z) + + # D_A + pHip = mdot(self.psi1.T,Hi,self.psi1) #TODO remove defined above + gamma_3 = self.true_V_star * mdot(self.true_V_star.T,pHip*self.true_beta_star).T + #gamma_3 = self.V_star * mdot(self.V_star.T,pHip*self.beta_star).T + dD_AA = - gamma_3 + D_AA = self.kern.dKdiag_dtheta(dD_AA,self.X) #check + + D_AB = 0 + #for psi1_n,gamma_n,X_n in zip(self.psi1.T,gamma_3,self.X): + for psi1_n,gamma_n,X_n in zip(self.true_psi1.T,gamma_3,self.X): + dD_AB = 2. * gamma_n * np.dot(psi1_n[None,:],Kmmi) + D_AB += self.kern.dK_dtheta(dD_AB,X_n[:,None],self.Z) #check + + D_AC = 0 + #for psi1_n,gamma_n,X_n in zip(self.psi1.T,gamma_3,self.X): + for psi1_n,gamma_n,X_n in zip(self.true_psi1.T,gamma_3,self.X): + psin_K = np.dot(psi1_n[None,:],Kmmi) + tmp = np.dot(psin_K.T,psin_K) + dD_AC = - gamma_n * tmp + D_AC += self.kern.dK_dtheta(dD_AC,self.Z) #check + + #self.dD_dtheta = D_AA + D_AB + D_AC + D_B + D_CA + D_CBA + D_CBBA + D_CBBB + D_CBBC + self.dD_dtheta = D_AA + D_AB + D_AC + #self.q1 = .5* mdot(self.V_star_.T,self.true_psi1.T,self.Hi_,self.true_psi1,self.V_star_) + + # the partial derivative vector for the likelihood if self.likelihood.Nparams == 0: @@ -194,8 +271,10 @@ class FITC(sparse_GP): def log_likelihood(self): """ Compute the (lower bound on the) log marginal likelihood """ - A = -0.5 * self.N * self.D * np.log(2.*np.pi) + 0.5 * np.sum(np.log(self.beta_star)) - 0.5 * np.sum(self.V_star * self.likelihood.Y) - C = -self.D * (np.sum(np.log(np.diag(self.LB)))) + #A = -0.5 * self.N * self.D * np.log(2.*np.pi) + 0.5 * np.sum(np.log(self.beta_star)) - 0.5 * np.sum(self.V_star * self.likelihood.Y) + #C = -self.D * (np.sum(np.log(np.diag(self.LB)))) + #D = 0.5 * np.sum(np.square(self._LBi_Lmi_psi1V)) + D = self.q1 """ A = -0.5 * self.N * self.D * np.log(2.*np.pi) + 0.5 * np.sum(np.log(self.beta_star)) - 0.5 * np.sum(self.V_star * self.likelihood.Y) #B = -0.5 * self.D * (np.sum(self.likelihood.precision.flatten() * self.psi0) - np.trace(self.A)) @@ -203,7 +282,8 @@ class FITC(sparse_GP): D = 0.5 * np.sum(np.square(self._LBi_Lmi_psi1V)) return A + C + D # +B """ - return A+C + #return A+C + return D def _log_likelihood_gradients(self): @@ -214,8 +294,9 @@ class FITC(sparse_GP): #dL_dtheta = self.dlogB_dtheta #dL_dtheta = self.dyby_dtheta #dL_dtheta = self.dlogbeta_dtheta + self.dyby_dtheta - dL_dtheta = self.dlogB_dtheta - dL_dtheta = self.dlogbeta_dtheta + self.dyby_dtheta + self.dlogB_dtheta + #dL_dtheta = self.dlogbeta_dtheta + self.dyby_dtheta + self.dlogB_dtheta + dL_dtheta = self.dD_dtheta + """ dL_dtheta = self.kern.dK_dtheta(self.dL_dKmm, self.Z) if self.has_uncertain_inputs: From 652b3ce2c6870a2357d537c4b87bfe3d300cbc66 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Fri, 10 May 2013 17:48:11 +0100 Subject: [PATCH 05/11] unified framework for addition and product of kernels, with a tensor flag (boolean) instead of and --- GPy/kern/__init__.py | 2 +- GPy/kern/constructors.py | 18 +-- GPy/kern/kern.py | 115 +++++++--------- GPy/kern/prod.py | 130 +++++++++---------- doc/Figures/tuto_kern_overview_mANOVA.png | Bin 38088 -> 77246 bytes doc/Figures/tuto_kern_overview_mANOVAdec.png | Bin 79486 -> 132944 bytes doc/Figures/tuto_kern_overview_multadd.png | Bin 62861 -> 63026 bytes doc/tuto_kernel_overview.rst | 35 ++--- 8 files changed, 132 insertions(+), 168 deletions(-) diff --git a/GPy/kern/__init__.py b/GPy/kern/__init__.py index 327bf69c..81dce75f 100644 --- a/GPy/kern/__init__.py +++ b/GPy/kern/__init__.py @@ -2,7 +2,7 @@ # Licensed under the BSD 3-clause license (see LICENSE.txt) -from constructors import rbf, Matern32, Matern52, exponential, linear, white, bias, finite_dimensional, spline, Brownian, periodic_exponential, periodic_Matern32, periodic_Matern52, prod, prod_orthogonal, symmetric, coregionalise, rational_quadratic, fixed, rbfcos, independent_outputs +from constructors import rbf, Matern32, Matern52, exponential, linear, white, bias, finite_dimensional, spline, Brownian, periodic_exponential, periodic_Matern32, periodic_Matern52, prod, symmetric, coregionalise, rational_quadratic, fixed, rbfcos, independent_outputs try: from constructors import rbf_sympy, sympykern # these depend on sympy except: diff --git a/GPy/kern/constructors.py b/GPy/kern/constructors.py index 9c2464a7..f2e4b57b 100644 --- a/GPy/kern/constructors.py +++ b/GPy/kern/constructors.py @@ -20,7 +20,6 @@ from periodic_exponential import periodic_exponential as periodic_exponentialpar from periodic_Matern32 import periodic_Matern32 as periodic_Matern32part from periodic_Matern52 import periodic_Matern52 as periodic_Matern52part from prod import prod as prodpart -from prod_orthogonal import prod_orthogonal as prod_orthogonalpart from symmetric import symmetric as symmetric_part from coregionalise import coregionalise as coregionalise_part from rational_quadratic import rational_quadratic as rational_quadraticpart @@ -255,7 +254,7 @@ def periodic_Matern52(D,variance=1., lengthscale=None, period=2*np.pi,n_freq=10, part = periodic_Matern52part(D,variance, lengthscale, period, n_freq, lower, upper) return kern(D, [part]) -def prod(k1,k2): +def prod(k1,k2,tensor=False): """ Construct a product kernel over D from two kernels over D @@ -263,19 +262,8 @@ def prod(k1,k2): :type k1, k2: kernpart :rtype: kernel object """ - part = prodpart(k1,k2) - return kern(k1.D, [part]) - -def prod_orthogonal(k1,k2): - """ - Construct a product kernel over D1 x D2 from a kernel over D1 and another over D2. - - :param k1, k2: the kernels to multiply - :type k1, k2: kernpart - :rtype: kernel object - """ - part = prod_orthogonalpart(k1,k2) - return kern(k1.D+k2.D, [part]) + part = prodpart(k1,k2,tensor) + return kern(part.D, [part]) def symmetric(k): """ diff --git a/GPy/kern/kern.py b/GPy/kern/kern.py index 5075b428..7383ecf4 100644 --- a/GPy/kern/kern.py +++ b/GPy/kern/kern.py @@ -7,7 +7,6 @@ import pylab as pb from ..core.parameterised import parameterised from kernpart import kernpart import itertools -from prod_orthogonal import prod_orthogonal from prod import prod from ..util.linalg import symmetrify @@ -84,96 +83,72 @@ class kern(parameterised): count += p.Nparam def __add__(self, other): - assert self.D == other.D - newkern = kern(self.D, self.parts + other.parts, self.input_slices + other.input_slices) - # transfer constraints: - newkern.constrained_indices = self.constrained_indices + [i+self.Nparam for i in other.constrained_indices] - newkern.constraints = self.constraints + other.constraints - newkern.fixed_indices = self.fixed_indices + [self.Nparam + x for x in other.fixed_indices] - newkern.fixed_values = self.fixed_values + other.fixed_values - newkern.tied_indices = self.tied_indices + [self.Nparam + x for x in other.tied_indices] - return newkern + """ + Shortcut for `add`. + """ + return self.add(other) - def add(self, other): + def add(self, other,tensor=False): """ Add another kernel to this one. Both kernels are defined on the same _space_ :param other: the other kernel to be added :type other: GPy.kern """ - return self + other + if tensor: + D = self.D + other.D + self_input_slices = [slice(*sl.indices(self.D)) for sl in self.input_slices] + other_input_indices = [sl.indices(other.D) for sl in other.input_slices] + other_input_slices = [slice(i[0] + self.D, i[1] + self.D, i[2]) for i in other_input_indices] - def add_orthogonal(self, other): - """ - Add another kernel to this one. Both kernels are defined on separate spaces - :param other: the other kernel to be added - :type other: GPy.kern - """ - # deal with input slices - D = self.D + other.D - self_input_slices = [slice(*sl.indices(self.D)) for sl in self.input_slices] - other_input_indices = [sl.indices(other.D) for sl in other.input_slices] - other_input_slices = [slice(i[0] + self.D, i[1] + self.D, i[2]) for i in other_input_indices] + newkern = kern(D, self.parts + other.parts, self_input_slices + other_input_slices) - newkern = kern(D, self.parts + other.parts, self_input_slices + other_input_slices) - - # transfer constraints: - newkern.constrained_indices = self.constrained_indices + [x+self.Nparam for x in other.constrained_indices] - newkern.constraints = self.constraints + other.constraints - newkern.fixed_indices = self.fixed_indices + [self.Nparam + x for x in other.fixed_indices] - newkern.fixed_values = self.fixed_values + other.fixed_values - newkern.constraints = self.constraints + other.constraints - newkern.constrained_bounded_uppers = self.constrained_bounded_uppers + other.constrained_bounded_uppers - newkern.tied_indices = self.tied_indices + [self.Nparam + x for x in other.tied_indices] + # transfer constraints: + newkern.constrained_indices = self.constrained_indices + [x+self.Nparam for x in other.constrained_indices] + newkern.constraints = self.constraints + other.constraints + newkern.fixed_indices = self.fixed_indices + [self.Nparam + x for x in other.fixed_indices] + newkern.fixed_values = self.fixed_values + other.fixed_values + newkern.constraints = self.constraints + other.constraints + newkern.tied_indices = self.tied_indices + [self.Nparam + x for x in other.tied_indices] + else: + assert self.D == other.D + newkern = kern(self.D, self.parts + other.parts, self.input_slices + other.input_slices) + # transfer constraints: + newkern.constrained_indices = self.constrained_indices + [i+self.Nparam for i in other.constrained_indices] + newkern.constraints = self.constraints + other.constraints + newkern.fixed_indices = self.fixed_indices + [self.Nparam + x for x in other.fixed_indices] + newkern.fixed_values = self.fixed_values + other.fixed_values + newkern.tied_indices = self.tied_indices + [self.Nparam + x for x in other.tied_indices] return newkern def __mul__(self, other): """ - Shortcut for `prod_orthogonal`. Note that `+` assumes that we sum 2 kernels defines on the same space whereas `*` assumes that the kernels are defined on different subspaces. + Shortcut for `prod`. """ return self.prod(other) - def prod(self, other): + def prod(self, other,tensor=False): """ - multiply two kernels defined on the same spaces. + multiply two kernels (either on the same space, or on the tensor product of the input space) :param other: the other kernel to be added :type other: GPy.kern """ K1 = self.copy() K2 = other.copy() - newkernparts = [prod(k1, k2) for k1, k2 in itertools.product(K1.parts, K2.parts)] - slices = [] - for sl1, sl2 in itertools.product(K1.input_slices, K2.input_slices): - s1, s2 = [False] * K1.D, [False] * K2.D + for sl1, sl2 in itertools.product(K1.input_slices,K2.input_slices): + s1, s2 = [False]*K1.D, [False]*K2.D s1[sl1], s2[sl2] = [True], [True] - slices += [s1 + s2] + slices += [s1+s2] + + newkernparts = [prod(k1, k2,tensor) for k1, k2 in itertools.product(K1.parts, K2.parts)] + + if tensor: + newkern = kern(K1.D + K2.D, newkernparts, slices) + else: + newkern = kern(K1.D, newkernparts, slices) - newkern = kern(K1.D, newkernparts, slices) newkern._follow_constrains(K1, K2) - - return newkern - - def prod_orthogonal(self, other): - """ - multiply two kernels. Both kernels are defined on separate spaces. - :param other: the other kernel to be added - :type other: GPy.kern - """ - K1 = self.copy() - K2 = other.copy() - - newkernparts = [prod_orthogonal(k1, k2) for k1, k2 in itertools.product(K1.parts, K2.parts)] - - slices = [] - for sl1, sl2 in itertools.product(K1.input_slices, K2.input_slices): - s1, s2 = [False] * K1.D, [False] * K2.D - s1[sl1], s2[sl2] = [True], [True] - slices += [s1 + s2] - - newkern = kern(K1.D + K2.D, newkernparts, slices) - newkern._follow_constrains(K1, K2) - return newkern def _follow_constrains(self, K1, K2): @@ -469,9 +444,9 @@ class kern(parameterised): return target_mu, target_S - def plot(self, x=None, plot_limits=None, which_functions='all', resolution=None, *args, **kwargs): - if which_functions == 'all': - which_functions = [True] * self.Nparts + def plot(self, x=None, plot_limits=None, which_parts='all', resolution=None, *args, **kwargs): + if which_parts == 'all': + which_parts = [True] * self.Nparts if self.D == 1: if x is None: x = np.zeros((1, 1)) @@ -488,7 +463,7 @@ class kern(parameterised): raise ValueError, "Bad limits for plotting" Xnew = np.linspace(xmin, xmax, resolution or 201)[:, None] - Kx = self.K(Xnew, x, slices2=which_functions) + Kx = self.K(Xnew, x, which_parts) pb.plot(Xnew, Kx, *args, **kwargs) pb.xlim(xmin, xmax) pb.xlabel("x") @@ -514,7 +489,7 @@ class kern(parameterised): xg = np.linspace(xmin[0], xmax[0], resolution) yg = np.linspace(xmin[1], xmax[1], resolution) Xnew = np.vstack((xx.flatten(), yy.flatten())).T - Kx = self.K(Xnew, x, slices2=which_functions) + Kx = self.K(Xnew, x, which_parts) Kx = Kx.reshape(resolution, resolution).T pb.contour(xg, yg, Kx, vmin=Kx.min(), vmax=Kx.max(), cmap=pb.cm.jet, *args, **kwargs) pb.xlim(xmin[0], xmax[0]) diff --git a/GPy/kern/prod.py b/GPy/kern/prod.py index c16d6034..f61906bb 100644 --- a/GPy/kern/prod.py +++ b/GPy/kern/prod.py @@ -4,108 +4,108 @@ from kernpart import kernpart import numpy as np import hashlib -#from scipy import integrate # This may not be necessary (Nicolas, 20th Feb) class prod(kernpart): """ - Computes the product of 2 kernels that are defined on the same space + Computes the product of 2 kernels :param k1, k2: the kernels to multiply :type k1, k2: kernpart + :param tensor: The kernels are either multiply as functions defined on the same input space (default) or on the product of the input spaces + :type tensor: Boolean :rtype: kernel object """ - def __init__(self,k1,k2): - assert k1.D == k2.D, "Error: The input spaces of the kernels to multiply must have the same dimension" - self.D = k1.D + def __init__(self,k1,k2,tensor=False): self.Nparam = k1.Nparam + k2.Nparam self.name = k1.name + '' + k2.name self.k1 = k1 self.k2 = k2 + if tensor: + self.D = k1.D + k2.D + self.slice1 = slice(0,self.k1.D) + self.slice2 = slice(self.k1.D,self.k1.D+self.k2.D) + else: + assert k1.D == k2.D, "Error: The input spaces of the kernels to sum don't have the same dimension." + self.D = k1.D + self.slice1 = slice(0,self.D) + self.slice2 = slice(0,self.D) + + self._X, self._X2, self._params = np.empty(shape=(3,1)) self._set_params(np.hstack((k1._get_params(),k2._get_params()))) def _get_params(self): """return the value of the parameters.""" - return self.params + return np.hstack((self.k1._get_params(), self.k2._get_params())) def _set_params(self,x): """set the value of the parameters.""" self.k1._set_params(x[:self.k1.Nparam]) self.k2._set_params(x[self.k1.Nparam:]) - self.params = x def _get_param_names(self): """return parameter names.""" return [self.k1.name + '_' + param_name for param_name in self.k1._get_param_names()] + [self.k2.name + '_' + param_name for param_name in self.k2._get_param_names()] def K(self,X,X2,target): - """Compute the covariance matrix between X and X2.""" - if X2 is None: - target1 = np.zeros((X.shape[0],X2.shape[0])) - target2 = np.zeros((X.shape[0],X2.shape[0])) - else: - target1 = np.zeros((X.shape[0],X.shape[0])) - target2 = np.zeros((X.shape[0],X.shape[0])) - self.k1.K(X,X2,target1) - self.k2.K(X,X2,target2) - target += target1 * target2 - - def Kdiag(self,X,target): - """Compute the diagonal of the covariance matrix associated to X.""" - target1 = np.zeros((X.shape[0],)) - target2 = np.zeros((X.shape[0],)) - self.k1.Kdiag(X,target1) - self.k2.Kdiag(X,target2) - target += target1 * target2 + self._K_computations(X,X2) + target += self._K1 * self._K2 def dK_dtheta(self,dL_dK,X,X2,target): """derivative of the covariance matrix with respect to the parameters.""" - if X2 is None: X2 = X - K1 = np.zeros((X.shape[0],X2.shape[0])) - K2 = np.zeros((X.shape[0],X2.shape[0])) - self.k1.K(X,X2,K1) - self.k2.K(X,X2,K2) + self._K_computations(X,X2) + if X2 is None: + self.k1.dK_dtheta(dL_dK*self._K2, X[:,self.slice1], None, target[:self.k1.Nparam]) + self.k2.dK_dtheta(dL_dK*self._K1, X[:,self.slice2], None, target[self.k1.Nparam:]) + else: + self.k1.dK_dtheta(dL_dK*self._K2, X[:,self.slice1], X2[:,self.slice1], target[:self.k1.Nparam]) + self.k2.dK_dtheta(dL_dK*self._K1, X[:,self.slice2], X2[:,self.slice2], target[self.k1.Nparam:]) - k1_target = np.zeros(self.k1.Nparam) - k2_target = np.zeros(self.k2.Nparam) - self.k1.dK_dtheta(dL_dK*K2, X, X2, k1_target) - self.k2.dK_dtheta(dL_dK*K1, X, X2, k2_target) + def Kdiag(self,X,target): + """Compute the diagonal of the covariance matrix associated to X.""" + target1 = np.zeros(X.shape[0]) + target2 = np.zeros(X.shape[0]) + self.k1.Kdiag(X[:,self.slice1],target1) + self.k2.Kdiag(X[:,self.slice2],target2) + target += target1 * target2 - target[:self.k1.Nparam] += k1_target - target[self.k1.Nparam:] += k2_target + def dKdiag_dtheta(self,dL_dKdiag,X,target): + K1 = np.zeros(X.shape[0]) + K2 = np.zeros(X.shape[0]) + self.k1.Kdiag(X[:,self.slice1],K1) + self.k2.Kdiag(X[:,self.slice2],K2) + self.k1.dKdiag_dtheta(dL_dKdiag*K2,X[:,self.slice1],target[:self.k1.Nparam]) + self.k2.dKdiag_dtheta(dL_dKdiag*K1,X[:,self.slice2],target[self.k1.Nparam:]) def dK_dX(self,dL_dK,X,X2,target): """derivative of the covariance matrix with respect to X.""" - if X2 is None: X2 = X - K1 = np.zeros((X.shape[0],X2.shape[0])) - K2 = np.zeros((X.shape[0],X2.shape[0])) - self.k1.K(X,X2,K1) - self.k2.K(X,X2,K2) + self._K_computations(X,X2) + self.k1.dK_dX(dL_dK*self._K2, X[:,self.slice1], X2[:,self.slice1], target) + self.k2.dK_dX(dL_dK*self._K1, X[:,self.slice2], X2[:,self.slice2], target) - self.k1.dK_dX(dL_dK*K2, X, X2, target) - self.k2.dK_dX(dL_dK*K1, X, X2, target) + def dKdiag_dX(self, dL_dKdiag, X, target): + K1 = np.zeros(X.shape[0]) + K2 = np.zeros(X.shape[0]) + self.k1.Kdiag(X[:,self.slice1],K1) + self.k2.Kdiag(X[:,self.slice2],K2) - def dKdiag_dX(self,dL_dKdiag,X,target): - target1 = np.zeros((X.shape[0],)) - target2 = np.zeros((X.shape[0],)) - self.k1.Kdiag(X,target1) - self.k2.Kdiag(X,target2) + self.k1.dK_dX(dL_dKdiag*K2, X[:,self.slice1], target) + self.k2.dK_dX(dL_dKdiag*K1, X[:,self.slice2], target) - self.k1.dKdiag_dX(dL_dKdiag*target2, X, target) - self.k2.dKdiag_dX(dL_dKdiag*target1, X, target) - - def dKdiag_dtheta(self,dL_dKdiag,X,target): - """Compute the diagonal of the covariance matrix associated to X.""" - target1 = np.zeros((X.shape[0],)) - target2 = np.zeros((X.shape[0],)) - self.k1.Kdiag(X,target1) - self.k2.Kdiag(X,target2) - - k1_target = np.zeros(self.k1.Nparam) - k2_target = np.zeros(self.k2.Nparam) - self.k1.dKdiag_dtheta(dL_dKdiag*target2, X, k1_target) - self.k2.dKdiag_dtheta(dL_dKdiag*target1, X, k2_target) - - target[:self.k1.Nparam] += k1_target - target[self.k1.Nparam:] += k2_target + def _K_computations(self,X,X2): + if not (np.array_equal(X,self._X) and np.array_equal(X2,self._X2) and np.array_equal(self._params , self._get_params())): + self._X = X.copy() + self._params == self._get_params().copy() + if X2 is None: + self._X2 = None + self._K1 = np.zeros((X.shape[0],X.shape[0])) + self._K2 = np.zeros((X.shape[0],X.shape[0])) + self.k1.K(X[:,self.slice1],None,self._K1) + self.k2.K(X[:,self.slice2],None,self._K2) + else: + self._X2 = X2.copy() + self._K1 = np.zeros((X.shape[0],X2.shape[0])) + self._K2 = np.zeros((X.shape[0],X2.shape[0])) + self.k1.K(X[:,self.slice1],X2[:,self.slice1],self._K1) + self.k2.K(X[:,self.slice2],X2[:,self.slice2],self._K2) diff --git a/doc/Figures/tuto_kern_overview_mANOVA.png b/doc/Figures/tuto_kern_overview_mANOVA.png index f7ff5f503fef6ce878947e5b3c7eff64339ce66d..255a3a80a8e08f43b9b385116299dd28534f0fa9 100644 GIT binary patch literal 77246 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 DcsJ0) literal 38088 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%0A7u-PvQ0A@YCX6wD`k2oRPB^Y33IX?-{qzbqP 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 XS22HY7Lr2NM&NY@Z(>lc?;QJ2pfX6i diff --git a/doc/Figures/tuto_kern_overview_mANOVAdec.png b/doc/Figures/tuto_kern_overview_mANOVAdec.png index 6a1b7b7359d13beaf8a35bc3d1f8968c763942fb..45b7ae2a2c25d7feefc113260345aee14edfceab 100644 GIT binary patch literal 132944 zcmeFY^;cU__cw^U7K#)tTAV_0w?YLe?(XjHPAOKL0D+bwE$(i?Ewsfg!CeCc2r}vS zo#&nRnLl8DnzI&R5$?*pIcJ}JKC*X$hMF=V-U~bw6coaDDvFvYDA+3~D5#=1Sjcy% zLGet;Ul?BU@3e7{BN)dz9{D$}yNZDq3JS5szaP|cnKB0y6h@SHigMci`A4gM!OwN> zhR?w(L4R?gqf?__d=A%6W7NT{iwLiL^-ZqU0#z{@leDgq&I7ft-_Tu2$s`8&3N4c9 zb3BepCX>+Ri}!f@ZE*N73r?G$NK7imO}81J>0*JG?bJI7wVm8uvDo3wb4I5B9x)rQ zj&bAvd*r8(yHk?>*Wf_ITv1Z|ukl$H)$hNqAx&e_=r#GTYZOax{{N3c&dC2Kb2Zkv zwPpP_nRYZuWKBg;5rZf$Y8M#R-Mh;m9h?(%+Law2j}sXcbPZRSI<%E!QZPcTiVS+{%wnN!fjXL)Zlc(+j17(9EgcMog)ytM9fSR&SO8 zLpP9jGM}q7P*hU-{o?~=={|n@?mMb%DTfbIcXX!bN$?3@`n^I zDMxz<;`(>VJF>BCK6Oh=ri6rqA5yHOXTJaee16mb-dPU2*cv6Em(2O` zA^T6MDh*0~LxaOwr`Yy*_AVR}CNr-^K`K_WAF8ET;@;@`Ii9?5PK}gQ49Ed8*^(47 z??n;!IT#=mSqWbQlBOlfSp&$LE8Me@LMsAK2kC=$#h-GB2IGz;e<588cmL~f=kFp%^<2O zut`Bq(U@=*z$Rr*HLYIt&~{NfwMpx+RAqmFhfimf&}{B1p~?sy;cg0jhKIQdhBCTq=R+i)_y)WK}2k5-Ad!!b7v z@=JL>PPZEf+pm&~h1suiOW?KpI|DsuvRZ}uC7LyQ>I%ztgr~EQr#fPSworr zri71Np0Kw@*}Nuue|~(Zn{wHkF8-J=TBl!QFkSc9LShOel2Hr4i1AoeZwIO z{dUHKhoa{&$CO=Rw0*UJ6Ii$VA9>L;(V1NQ&`)JVz&r7iTly?%+|?af_veS|uIIyN z56k?H(im}u@KK>Kw$AfsAMY^^M6T&ixl4{$$44`{M#V$(kD@W^$;d|4RKmki(7u1i zEjJ*0GHmicDDca<*#X!I>4xr17EX4~o7pIMimMtnVP!Lnj*eEEcHPaK0`tv0d))q( zs(%0U{p}A)KqSX#Q%h^Uo0l|X2Y(lmFXFPKhzy=4-z?I02zS9b?@ZnMz)pOR$^h8T zYqvE?Vdn+ebT(BKZ?M5o##Vd4Zh@fv?{A#yk{&h@yMDqlzgkwWS&x_Jt#8hJ?WE?c zQjUA~-{kNYo6EFF1<4O5^Lv*+==&^v+}h3L_saJHworiXd!WnMUCTSP(RL#Jr}N=v zg_9z2>_0Y9*|c#)tvV0cq(^CqU}}Xu`(f5}G>f3`-V&QPl8*}HJ`QrbTEl8**b=!a zT8~kQcxB0DHkZBodyzn=X^7b{v!FRxKi($j=-fxjHy%4!x6sh^D zFG5^xGJbPR`9B8rLl}_ zL>i=jpwQiCHPXcH$X4GUW5*O%4b%-uiemV_#$}aD`^dy#N zsJoQ%*#4tx&2?3!IU&SLLfs(L6+k72!&9E@hcbVh%q(^2dvEg8w{O2K)mDk2??|D=2)hru|jN zsTUUpj)S=dtL~m_SFbKn^goko{a$kmcI=ctv$jibbfzBee#o+F zuw7qlP4kS6;Nm9G`|*CKrtWBsfZ0~ZtIrN!zbRCT$EaEI3c>z^T~ab1nc@QIz)}?SClA*jPvBL^&B@waSWxxV zI4E)aR(KcY((N8PMLoS_fJJ^43cI2-EeiNsy6fqPf`LG2&3_9Vjp1L55!Zc};`cIH zs9c=^>uO)&2%Y%sHiHAD(xj)*$+g?y(3V=`Pgof?CJ(zny>9W86aW!fRP;kpX_o8k zwtMKO{%ex#aYnXMbG~LQEO~A61wy(PFWzfUQla@Rz$-ja(4JK-iyUG7DN-W1*~M** zD^vlY4@5scNKhazJI=AyHV4i_EmiZ?IF3qz41Bx9kFwumOKJq1#+eW_Bjw=Wje-?&|N22W$r5=?qf{C;y$}19{W8Wt!mGz_ z5+JghZ5BG(@|3oDwkVk+PBZ5mk!rr@jk&T+Q|*MAbP&GI%t*K<^Xqsik73mnmM2pk ze*0nlR(<_g>`X(Q%AaN?zP`=;nkSSA54c+b5V1+8#y{k7EcPdn4Q;|6#M7n^VBqu#?agR_0I+0HJm5b|jT4R+F?g@lJxy{p=K{AIfMfyGRza)!2GV3jCpVJ^_ zx-q0C*m*6HLgUaui|K~2a}%Sf_YJm_`Yo;n^XD>8_hjLvtRz&=knk#h@?mFJ1Tq0; z$~O`p)hJ0hI=z~Fc@6M4Wn$dIUT*?K%n11; z2~3uv%w8)g&=SQv*gpn!0(0e_uD$(XAE*$oFT3f7B+;5G86eMdEP9t)lFE1m(Ja@BOsEJv9#xBK(K={;pKCQ<1|bv2yCYKUDE# z=KqS(x}W;Tmt!&z#e5I47-5IjKNcpaJR*sY7M%j;@(0#*&t_D(HA+7664s}bC)z3|xE8`e$F!!X4(A#j9S;MP-Nc`+iq3_uLwdQj;E)9VE$VX3 zRX;O^XJLq>0_L}=jouskjzNeH=SJTD*Ri=)ltxhEwYjJ)j>-|R6c9LoH%;H}t zrGcfbylPA{dN%MJljuI|HQibtP`(}H_rKxszp!|6Ch{U7z%gsDGKNp;Vj7*+s;sC^Cbvpas#?S{Z>ES`Jq(Tp+ndI(f#?b#6FLQ3I zV;xagnF|Y+s$pe`@#Ll+)dlp#-15&FBaclxx!b*bCr>9B~* z4Qz!~jpqu2F;`IU&zTE8jyF5kI|E&8-C1_;RmOc=cGYQFB-2_=N;)gHj7+bRMexoi9x+-8clm(xh`#jnB~*gPjoVP z^WM>{GJRjvi(oR)v`^FZsj#VE%Op58s5KDWO-+lNY$#>wQvlP35~^Ps?BncDo!k8~ z;MB;(mA_=?-N7$z!^U_dl>Br{n=x_CDnYZcVg3*ZgZ$K)?vZ)pZ2#yqgX1_a-2oWy zZ{@{WyT|iAiffl1>jv_+f4hBsg0YoN#jp`Q5R7(m`|dn#y)Z*PHV6;9VrceXZW&Ng zm@wMuWUt0hXTw;YS%L^rqH)S)OePs#c<4)`2X>`~O;){Tep$~c`KI4bh9*}zxpwon za>COFexy-j(P)ZHp^y2BjKJ5QQCOdRrWv16@L2AWsn@QzAL1PUi4or%)~Zeonp!-7 zk=(aEV@u&EJRIeKguv<8)eBiTM(^nsYc0?PZ6{EQj9OeVFfo7kgoQ~z-dOn_Eyzvg z?a*8PV|H#m55g^wP>GuEJ5D4;{a7fOTV>QzZ{8QFi3nCy9Q)bO2C4jAO6c>!oF>ZC zty6CGutw(p9am}@&@2?o8t%seUM9`C=krTqVH}bOUTz4A-kaFmCt!4y$AnxE$ zV9(^jzNfpG#hNFT_lLe}vc1R`FKZ`*0CqL!Y>2+|;P+z^C?fRB*B@7ItO|Y<$m3yQ z`3(j_^lj7R+1_C+cB1AD>fUo-tD-Sp5%Z(HoJJ7I2n$nOcjF3GqsOUU-&|0qX5#8y zHMoMCY{e!3xMVUBvWF7BzfPAc99)-&hImaz)IOFx&QvH~9>#f4gs~bV>C{;%^BT2h zd^ZajtY$AXzp}|DeOU3Dp^|F%9|}An)W6_5TGiijN@$Ub!m4wc=S3j^ncrRRe*{X? zf%xMS6Pd-uU$iVIEguhU-Xh>&2n5IwcAu8UtbDQeJ>~1yukwi$JU1sDr>%F6huL~l z%H5$gV?SXoQ@hK->-YH$8Qt~XJq~3hVa*>rJMn!gztW$|)BSoglzv}8e8^_p+Cy1a zS63;mX$c~wp>ZNJ6&JC}%s^iEhe{oGu>e1%;`kxE_ z5MW5Jl(2A?QYcZD?ULPd9oBG#lJq3(G9?~$L8xoN`pHld^X{VE8ki@26Xj;}A$4K% zT|dZ_Hdb}?GFr*}MlRk*{*!ZxlLeT6PkQnihGxF_@dl<$B}Efi+48Hg(Un!wpN55< zR3ezAQ?ePlTliyPLH`UMw+5H5>99D_JKMl%t**#DejIuA>OlJNwMbujgT+Tbs`Bsu>2He)NukRTnE)$Nee%p5Iys)ktPQxZPa2~eNaxI+EA(^2iIQ6TtbUP%9 z%L1VKN%VxFs#eF;2Cps9!r#oe5l9_9Y1AT^nH&}c=9--1);&EI>unU*yub#Sy&*|9 zR9KmA9Z3{O#b$GqeevO_!TD$|Y2xOlfq{z=S_!YFbo21=C__6~TwJufKi%82@4W}z zUp@i31O&cTXq7!jGHa~vTt7mzduX)LTq0xlHVu?;iQD${)*@6Gnd%96&I(S?xMW! zB&EM&@4Wp??f(=I`Ww6TNL=u5$SRs8JOneB^(ruTBt{N-^5GA}F@&mET5gEZF~24~ zX&dGyecDXnw}>=&|F~$kK15S&*d*xYOo;wdFYd59YTi^3A$>{mg$CQ_pjYBFzoX69 z1sz{c;pc;}g6WHB5CwwsU0F0@o59`BBGn;%y)cPJ1ZvlSfsB;YK|*#}L$%Q#vWejx z0A_!cff!ZXVq~0HYi(ThTAo=e5CTxFFJ3R)2sXCQwoA>QCYqlU^WQ5W^n6`t0YZsa z1>&SLMW~Zm+%Id@3gipSw3EY89J_9ql6EJVZ&PIS|9-f)r5CgV64J0K^t1oBy zr-1UZ{EwQ**V6>sf9l<$K089M-T%;fytF~wNXcGC_834JEP@+qMtpn{=MwbUw<^1% zKSI&J1|_8`P%kd}A#RX!reH zGCf{AM?*Ai!B>uG-@Y3_iqR1e|L+64|J(4mrtcsV28Wj+6f{VG*=5JlEafboEG|y( zNZ;(I^qYN`W4Y`=8{!Vn2>zM^h?f11ceX8!kR~j^dWpr|z`HfRY)3u?Kwd-k3M+?CsJgs%bR#AW<;QCc|=*kPl( zfrO~Spq3Aa5$#SnunSlxG7zRdX+!nPo_v=7HZO$$?tfnqPZowG;LWI5ypBP@oOUAj zW$YFB1Hr7sV$ZWqOSTy&e2dx2Wz=TZNF~^ML>R@v>;_WLse4$Ds}OK!%nrR}o$Bu# z{4{~)I8(F_meKMVA=#i0`eO238CXZz`X4tbqfmUd_^q}B_?!KUnMjCCbk2wMp+5e@ z?0&P&#VPkKmV3K|)6iH{znSnFxI+7+@G%jns0kQllRLMl5h02@47Q66azuSUwwtMh z#>;8g+$Lq@PDNPBo`3f1_P6bmZ*wpv>ht2P6dsJ-9(0FM_rq5R=`z4oOz!K@r|>*ux-*T3 z60?NM68v#SJ2}bUR0Gt%-!CDJzoH@Br)5ulpXFk3H1tk~;Fs6mIdmc%XJ-#fPFfRu zon<4_>`DUt9u!O0W>@f454>2@W^ZoUujg;sbIReYj?+@j6#AKvO~NnoS;aDxw4tFh z)G~!jo5Kx$6I8x34~>y0|8ep>=lbO*E-s|RWl!1hf%~Q+v?nf@H9QkC;}6#dsX3T3 zw9Th~m%yX-6VA(aX0y1~K$l*raB{$rpIN<1zY^xSaEcv!?5E|sfs$Rk7Oow81x-9u3h+rK>cPouc!&Al;00?>im998(^m3uVhqFYL?tkXr2M!L~)CUmpr1K?MChlT8F)V-CHH!5Ebnlb>>=?I+ znXzjdo-ae>tP%cPkJ>AYcJrtdfJXRFF}QPF@XAaUh;fh&S_mW%I0u32c?vM@UDi-0 zZTZw34b9%TFyG8$#wqbjhw`*GFxF>YwHamSxrLg}Er$Nt-#?pWcVAw`0wsgmojfF%b{_v}r>Nmi#^HMP5KyYGX<|MzsFy0<|avWpb(_g>TLI=@=E z{q7e2o#Xa&drh>g^4^=lX4?oMCVCWWA{^wLhs?u8f&8fXjkrSqM1zr;Ab>m{!>Bnx zGRU1u81bFGCK`{YYFUjwR)MQnjq=bpT&6qbM#}x~_v;YPL6<1RBkF6Hb%<8c7payB zJqU?rl%;qE9vp?gM^3oMK27K^pypNb}Xw z&Ly=q)b5kOn)8PNAPJHNU#}1B98X-TlGr!!{a$|#J&QWCojX44j>F3=_QglMt@ql?zP#^hW zkm;jmdlyvB3#MmYhp~X5wv-1_P5jjD$4OMg`vRBy3CHwtm$9*V#?-D7!)8n}Sv=~p zp8%Ei{%>9C7uE_FhOgWjOm?anCQ_Q*8eOq-5NvNcpB>!! z58hI2u$7-;>Z`7%X*pmpRVRPIa z1?wTtK-euS_F7<~cukMmZI-ZGX%?x_+hmrz?d-*YCpygk)B?b2!s^`mqyH2p|0j_e zqeMoTPbrp@;))Q&(n$;ah6Nr3dhx;GVer)&Js*{kXiVYfQp|K%O>|h}0#zb`HEN9K z)?Z`&g7_o+&r)scQaU2mng53+Sja$!__;a#OI@-3@GwML9u<8jqDIDxgLMwCS82>2 z)ZPD@A720My2ZP{V*mI^+usj6HB&jc^j>jrU~P%9DdXjTU|(oLfAnBIO6FR*eVj7_ zejdq1ZuB%QO|4=(b^T5%TX1YL-3Q-$aUb)YkAe-4>v8zq@OHiyW6ZFV@MFwQ3zugW zSs8F4UmF?suV%49zdwxGeT_gKt8f$~K#Oy(Uv#5$2TSATb_83uK3SNlNpsNqR$rK? zg`V>2-z!8kENiv6*)5|JYuqMFlnc00% zQZ{D5Vy{Xc?V3T}#;|`OCN;|eQsaO#gCA>veS~Pd_Ntv=19gepMkebR+(Pq(f7M^u z$^~?UBinwqO`o zuMgNPX1x;#&47!au+fhUB@7znQ%g*wpb~OpeTX3g6xXYA{7~)5abtMXHq}mNeoYBw zKv@l1hKo&Br!jlP#CVJbom%9Ncj0|DsM0enMjlko`|~M{bQ1rSMdR_}+=lw9(a-jJ z@I%+M=0OpPH(SIA=~&d&pS}4}*SK$89`Y;4ywfdy7h}nx95vwl#I~}PW;eoGDQM-X z-$1Q@2TJgpYaDKnv74IhRDZvS6Pnp4^QYr@&n(rG%5hP$XF?@v5ZLGQ&<7SD<*-9L zyEHG?Vu+Qtg77iWw*biSDbD7PTVTqQdCpzC^c!XB*hQM)LgS0IpqZyFGTwk)I>)XH zJY@c2uXNJ;v$^pvw>j0cM%p~*x|nxq@d$nlmOT09Vs!B1n)PhbjpP%ir5nHCno`Mv zzOuLC*0+uG-YDY!nx1|*L?MpohXk|eSp`u#)r0*c|XiR`*6T@ zpkDBqYao#Cu6_(z%pv2$>11hn^UKeT*Qg$2__i}H{Xcmn12^fQcbR#;n-aRDI}IEaL~dRjbGVGYOIdFF^GM#N`}>6!3<7LzC#ThJPofeQ*|_ex zVXR8K@(=hV+N*LiYPX% zi8%bW1RnudT4h-^R@1T%Ouc9cQ%$W{|9GK#s{@4 z^i=bk6F4vG)Oul=VIE$CYNWqrN@&NLm*sA|{)hph%Rv1S>o2gdgmA3+)|yVncdaYf z4X{=o+|##xR?-_F9b%S+!e9#mrYbJWQr8H^#DfBJtQBTJR2cHp27&#oJjLy*z4VMi zn5MzB;!o(}E9MaJ+p(df`^9c44^W&|w~tdEkLkz6tHX-xz3-Sr&FG?NXgCh@$uF3d zJ#UwqjGMhVo=f;xo{saul#iDN2x;E#)LF$8La3R(K@%~NM{bB~^rkZSB#;U1pAz{S z(eo5lRu~!ffPd22&}ipXT4z-p8q&H;KXUe|TS`Wx8LbR`hj+ZE#v;ey<~Du65Lt4+zhDj6#~D*@F3coc>&1f#Nh%KPBjrKg7qB+%e1!} ziT}r`N**zc-r)zj+_(KP32+l`>2O{kVPftB6LacD2VNDq811bgU4v+KnV7Di#4u#q zN(Y7?kh%}stH92WUe8|<7Rf~;SBbqBcV2l3dj*{^YKIp)Y~g6r6>Fs{>fo^zrx#pb z(uvN#NP+6-r>3M4rxV+;%O7ij1YVn?xUKUoj~LfH5eLFxzVs9T^@$$DX0_1i!igjd zr;vKL!)&d>#;(DwA7gG{AhjTW!sbJ^C(&JNSLp!@&4hYoPX0Y`=1clL=W;WIUr=9Ub}rO_rDl4>BO5 zvOn4GcBSjQ)cjpTW=LP{h~*W^r~gEuW1cigXkWdDvXD;X3g}AV++aj)*_J+@%D=z* zh)h#RDH5}{wB(+YAku>bxhp0L=C-#`likAKt5z;==*s)D86Pl1rR~Ix|6-0Ucgp2~ zHqUDhE6Q+^6JFlW8HHR+F(^vi^JiLFEj~h{N{%_9T*Lp_6`DWQ3ZtJMhy$-89cPPl zdG=OmY$y1aY2JjpuA1*@Z3EF2NNosI@1(JjNGt%8R&pe6U!Pd{ynzJf0oJ zH{4rVz;CJf_&`VGzr}ge<5PPY9n#~f18w>4KEd{uW^>ovC+n*45V@yPlr-ojxZ&1` zM}F+Qfbfo6iU^xn31$9ToL0Lbg*n_q0(g4d`i*e8tyZzuAUEuGM@L#A&bq4;>wVq46mk1n8x3L&|Ob3|?IoXfIaxEbS&v+Zi=B~GOQQ9+Pl3y^KU z1)^eDAHBB=lsRmX7)Jx~w{8{qxyMG6h zfsSpyt9Em31QXl8Ip+_2L-4}dw!7z!Gx#iG(QosuXz&8TwBIq_hwOe;5xMVgkvdYU zHbFxFBu(!j2ztEFALj7*aO!{=!JD)3y?s|zr0llW=8m_z$uC>g* zwE+vU4r4sacz6fHqCd8~l$e}9dbS^cot_}^;?P0t>LQBw+*RTx?)JCq)3uIQu_+hM zFUM7)vvcb+Se&x*GJKR7>2=Qe9VjkM6}&NNO%*3&gA!a+zc*aD|NgBUe$rvw?aPDu z`?vGaO0Ef5GKziqPRy%2uQ{C9uJ1Gvx}7#CVUU*iHxCp8Nd@{|?^nVX$V;ksUgS7gJ4mR%cCg0}Owh1S@h^wEiL z5?druX+^mOH@)Ce^?~R!s?V@qBG*eCqndMVSc+a{1^1;-6?nOe!ciEr3{J?8GENC# zSoW!Rm6?1@Aj56H)a-BfooqS1?SKAE{`h=T?D}fn4lZ2rpM##fqw$SD!bOm*%Sc4O zYl)!bbOE*J$(8Nqat~F9n;vlcj1;wH70ay?l}5O?rbiyOW2+mS^nyRw|2NQL=Y>0s z@iHDg9rpgMHc<@~Mu;W!;fHy8iCPk)Jp~$M5o5*bp0+hYh{9&u>6xN1J(0e3n;v7l zA`)fehpkv|UcVO|3)yjKTD3;QqF6R9-JLllu2p#@UQcnaP-N+HD%?Ud#}_?b-9p8s z{1z)%7}K=}n{z?ZXp&h%ELU~4BfTI)u>lxXx*;@AzSp@yzS78{8hR69Sku|Rre|sa zN)q|%F|q>y0DbA!&B&k+31^c}pZ&fuQIh`KRPre@M2GVLM2oVa_CAM`F|U_fNi>H4 zjfJ3^vHsOhg}>tbe}_ZgwmHVh`;%}(+#qFYj8wh8fG@XWVj@ZB!Ujj(XeU@$^og=v z%kwlvEbG1BDm#YJ4dVK2&Xd%{Fcuv&ikq+4>zsHLMOs|Z_3Nk{=VBd&7hz(5e2+Kw z^vph8)eZC04#I&2m6zVlp>R4bNKgt87*@DQEHkky6?mot>8{L?%#CuI-{3u1F2K}o z^K+B0Zi{VwsW9aVVfjy$E(gWvsBKnYfjAPx82dc0G_;W>rjuHdG&LpwA=SHazL&g2 z^Z^)aVUP)b;Op=9;MZO?h#j2xW$aCv$)2ZPE(n~h<%d59c1jX7lZ4HC*d9?T}r^gMn$_k)n?&$FdfU{DcZ3l#=` zEtPpx8H**Xbod<^Z5GP0GZWNS{D9Iyzfy4bYbDuz=U{3oc`W~(RdOgaSYpt8E%Fd~F*Wp8@HWL=d}E_}hNGw62v3n9Lh zVK%Sx!-<5X(gXf5Hi*9*F+@{>^fM#gVJ_%@_>T}Wm2l(?yR|?ronuDsY2MS5V7SXCbVFs3M9(6;jRTM9 z2k1rOQBW8NDv%wONkM(`2?LtaN1yodnq+Lzx)oq#Y5UbrW@_ayD6UkJC0qv+{H2RT z19V5@@6V%Xyc0rezM2AMz{y@ZIz?u~unB@wtfXVa))aWt!szLdh1*yKlq<+#_Lja{ zuXE=GuUS`K5f-6-*l`o>9W<)nY=9ry1ZQj~LTXbitQ1d*O1$p>K!xJ~wq{vNN$BVKYvZnKROr zNa1m{_q&9h?ZRNb`s49JTF7`daF(_bL&WLrtX$N>LqERt5&RQ{-2by|nOu`R91Nig z1dVPGBCXP#?X3@n$h_!PYGC3$h-be-CH>fHKOa~s6CKk#je85Ho2K7!i=|VpTCO38 z!{bHNU+_H8R!&@oX6^SDiANmqD#mt<3xigzw{TT+69jOtsZVsbw*Q?CXl{?uJrs4sQ$u0jDUljYMwu? zj2|KmgPR^S?KuY%y5!RS>&@$s1I#{(Q^dPo?nLs4bOq`6V?dU_^^*}%&d5wYyh~HW z{`%E!NL^*VgtMK^Y4g@9)a>`l?yH&yz+}p-%i4)?OaBUX#g7yb#Rw$zP7T?>NQ1BL zHkgHOJl!Sw88wCmp zGoCyQF=n-h71~~ni;?t@p+y!)DizV2ZyMqdM79%FE_=}eC9-=z@V+d!PyjvzCqO!L zQ^b9kM42M{03u$;ANW2=kJ+wK5P*t8=c^?fJy}iI)U1&`2c0xzp!3#NCNKvdlG)D2 z67NoDaFkFsspb4{u(8nYLqdk0&JOsoqF4O}?!@;&USS<+0NCa7b>qO-@TsY93w>iH zT*H4EAt_*Y^BDIoafng>%yy~`?5M$uoLdSDmm-DLs2vF^n*Mox=#hV0uy#;&vm!m{DRT!)h;p8DT{n|g{uvo#EQMH5cp_x%X%@ZpW)wI{@N_ zGKG1gJ_w{;-F3c_dn1uNJXiwkToyah>naEyMIK zs=o)u5k%`goxDx2e3|dV00GG2m7zP z(^~3s+T@bg`s?7XE@oP3qMl0FDjzpao?@??v}IY+m|Px>?_x$~O>*KxGpe7=*V^um zYY78!JZU z$A29_`$VIn7DZf*>rAv16-yeCmC{;@Tb4h3{&mqz*{)vtPv8~0EXit+RGK*HUSBqh zC~@E;;f2=YU-fkuc=9V87dJ*C?2r2bIrdZTddKN%71aFMedlU>mlun5koh|4X)_xy zHfrxr?$hv~HxaaqNna#&#JF~}S3W|wsD~fC&~~W6#l7kTm_@)$aad8!um626uRNaUZiGSr~|5|l=LLdAWl`C?L zTsivQ6)N=g@p~{$6cRSrK0jH}C7i6k_)CeDf_!}R>%iSzpVTnns=_wgzc#FUCZ&&` zpYeJ3N{N709mD)aYDeAG1!Tl|uKm=d2)3Qk7Lewu1Yk~{8Ss$i$=BmRw%_4PI@k0I z9O|3wvOJ`WEFPeGF}8|NS*TO{;9cD0&TsC zO$V=|jEIjP2`DOu1DKd7xvG$_FoA?U_YC^2$B z*+;sgBQ7wexpu5u*~vvgt1B=5AZ|+y0@wI2tXqRtQUeH#*Vo9TNwJH4D#>D-pHOvp zBQ7k~T+D4-;&dZ@=k;55N5nlMkpxL$OA4-0tiuHi8PD4bdq{loUAX~vJ}h=|yBi}R zR>JfpgfcYW>5(igIKVBKi^;|m*%-CIP`61v-0pMu*4UW#vFfCIcoag#m}lmqC_LeqUxvoIqle%VZ-yxI-#(JcBkC}k#; zf5c8hT=;ja4-lN40cZXzKm|l#m7BzNDD_H7;C^A`=a!C`0co5+8y9o8W`A>FzM7SW zx-2Yrq%e0ZmJBXPWPTN&Dk<{|Gp#mAgu&+^I_&mhrNP~z`27f_;w`66tKV;?QlI^P zE^CKP~+=!3}(fh=hK=3&!DFptzLtm;I z)p5d^kV{eHR2=~cjZ!Os?f@*-`y*xMgG*(C-_Wex%22J%x2IUh0;&8rDRWlv(YWbx zeUl^Ih;tIg1FU9WhZ2QOo>ebU7m&$9R5^Wag8CzFNW+18u}GptfUE_E_jt*|SU3Va z;elW>ckp|Z`YOQ{GC%o2@wMT;3HKU1GDa{DJ7ha6c%12d>Ci(519^)!Wn z8mWkNeEm>bspS@5*jGT1Y<`GaI;c=INq;uBuM_$F;5jS z0v{@aWr9WNQ-%qe^(r*?VE9bsnye?Lwc(tT0GPvkHSKEqRb|aS!*eBTNH^^bIP9#o zijx$1EagLZOA)H1X&XiVljkmsM6ik82o8XU&4a3kk}RfZVS^E&4@E^Osg61^LG7TP zGC9Ncke&r96_uz{XJ5@u>1V#BviXC8lUboe!Ztyoxn*DcMME(*t;_U=+U1nSJebsb zS9^PbvVUOK-4dRKX6;>t2|LpGlVm91u?nXB`VnpQ6~dRl|B?BHHmrjI{}xnd2!Y2k zwA83-*~_jmOy-|4_(EMeA*{(!8j+Q>hhq|25siTd2-ee3C(MQEi>I$g?bLoTxU z=cUrf3z^zLAsV}hqQCfj8tb%>39RU7_uWbZ3}r?B!$(9Ss|tMpB*gk?5rk~lOSFhZ zYJWctEqfr6dXkHav*4z#Umz%jpBBO7BO{D_WwpcP8 z{f}&97uw0&DVS=CUj3&N{{VU2#nByQyMWWtLP?B1iUjfDYq_O&CaixaMj8+q#|Ul#i=GvB^A8H-FH-t(>>38I(=|U_wreNMGW5TP89k5 z$iGk-e)k>E&bA2q*}$hxh8LnKKk^YvCJ`{Zm0!oTVBK@N ziu?FTVldlIr?T9hc|^wk3ew)>!XP0dgW%3QnEigc>PLCE@(rg_KaHLtxOXO*&fs-` zKovGI@1>CR)4i9pj0;~$wCA?U!+g(Yue^UTA`b@)f;W8|5K|KGa$axF)K!Aw-kCIg z9x!MqhaI<2-DWgrBx>^s+t`$XVJxeG0qazrSRvd?27VBv^O~ z;iRmQi3m-Rj0}rGHbo+P6oYtod|*3(NyTp#pdwQ#|Fgb(a0LTlS9Q$1bS(BGvWKI} zyCaw(og&u5ZU~HV0{}ns6O0StE=hX&WlX;m4cuJsUa~8kAK30?&@b37?Rt7@@GD&Z zq~k=>4R4&V{)3Mjje!%r))DUQ93F`|c#%Mu5=gE=F7-L`s$4n7YA_b>b0(XzhDL*| z_4I#g0mwBSZYrWFJ2hffb&oig-#m^;a9%G!xpSM zAQtk^1zKA_mmX@hDoHj7#bdu+Jj?rx@@rhsjH9)KR>L3fUT93C^f=SZ%CG_^% zjTKf)C~_q zNEzn@O-^bDX<^vj-<+3}l{FxHs_8>6KYjlEIY+?e^Ue*mpzUIlo#9;!8)PwMRAyo4Qp64QICDmH~|eUs!u%RH35fkNeuiDWWzt zQB8un&(9PrsBmPNbeLU&_o(|!#@Ah|ia{n^v%wrHhE1!9eaABtD_)ZGM(E5!h1j%e zu{msOBG1XUs?CUHWr+(6--*-SBHXTd4f?OlLKD`}N==;q^vJ9-_=i7Nmwq=+%8cW% z)MyCHG&|A+1|?@c-4bt39SdNhMaVL?LgQgOZR`kuTj#*_=dFi(!7`c0oU`|l6OkV% zd0xMK{W{HcwSD%_XAHym5SS#CJ3`@?>>=WDAN>rL-n&Z~s1q3|iw*7bgRs`S1VELK z06r-nLLmA4sMp8oTH7K{SPF5vQoExb(^tMXCwf#tKiVNN>AD4GW$ya~&)}EP`sA>} zeJ{-s-A7Pw{Nla4w$wb+J8ypK1?`{0*8>(-U2iF-HPA$RJ#;!UQ9f%|>=3HxyH{)g z#3MTzKDz70Z(>qk&~{`&3o+i3y_qKYwd%TX#=a7q-Cl#nF8xTQXYrDd{bRYev5j?E zX}$Z3C{dMhf)wXx;qS_ScVcPm1DdgzDWR?;eoiF%ocj%mY|3VtELB;5AI){m+cG*G!oyCorR86z%z2&0c4keQc6>b>KzeUg% zZ7NUv69Eb=Fi2V7mWUYMA;5csG@60f;{3!uU>F$ZrQ3CU-H?E{?P6P&&P>I_Ch8!K zLHCHS8zM{iK$*gsPYS}1h3kq@YWDX)V+iuq{;jxP{7qbzrgF>Hg$F#Zd2LIhYDi~I z?YAPopg6t2A6lMOI#R}O)ywDiJHHxiZTk>lWYdDXimLZ-B6Z|Z$pl_w1L#z%OuGDQ z-G6^21^>7|o0u8~j!=-Kh)1*JV9Y`CD2~izju92^7)O7D7Zy}f#CAgMuXtDB1e~8h z6Xt_V0(|?UF!lto=VT+7Ty%idi|*1-CmpnFqag1LACtH75o(6&qJBqsfk>#b+2Wn{ zk*&Y-Ir{@{qk_YA*Q8LJo!=|E1$RTV_H09#yR_&63Sk&xa{7uw^{`#B&nx3{ZXUfu zt#jU5zvAyMj6WMOAvRd$G0}vw{crn6iJoG#}s| zdw;+6+J>hj;2kuI;U9i>+1SfaEthz^nJA%B^EYIg+)j|Q-9K=Upo$0tKJ8~=TO2rs zFRB%qVN<60z#Q7Y0~+^w5YkMiZ+#g)^sb`9axNU~h!*?GpZ50SDrS(3hi#Une}B#< zHamc@;Rx>hDn+6qHn;st++#w{mf^zyF^4t6rL#mDZ~giYHk1-{_EpoR(D^i&Ibi%$Qr7` z*zP*d@Q~f^H8EB4e^uN5!KG(w(kAnT!_7RQCJi|p4J;l94X6R}FTL}D|91lWkh81KLmGwILMi+R0s z&Bw-?^NED9kq34$whxlMJYXy}eANMH9EOZ*<@W6b&^NmYfr+pf0ZPViS7n(L|Lzjo zDzv}*;N#T}JPOKR@fae&h$SvA4tPAg27m#&5ezwAAy-#dE5<8-gX+$kiJp%);<8_` zZSE?32jN7zjl&EN>@p-MJQ;9Cbn8cs{yWS=Qpglgh;Q=5{oK%<8(hm5Qv@s_c8Y=c zrMWN)$`Xo-q`+6(&H-b_of{jW9UXq5a2Q_CP*e4#gtbqr z&z}b({oHOgb3$|{Ns7u8^T@mM8oL$?jS4*m0TckV0V@Qv*mXMjlu8c=>m3qYbmjfH;rn^@?|h_Si`;@x91 zl3uhc*-kUEllUHn+BhJQ&x)L+tjNH^f-LN0o_Vo?3~yEU!fObCi>?3|y~~?Y$MkrC zzj6SbSrGYlC5~Rv-u%;HgtN&4MkCx(dJ&L<5TWj3`MsW*Jnk+3Ve*=q8ok*G=nGkmrYy!{QRCRXsNx;*XiV%n%Z{j!lu)jQ6TdEoX|IG?*RWgX~;m-bBQ6x82fRFGTP}TI&em)XfSNmQ_u!uC_YVQPneI zT}k-e1EHe#TMa9onUJv_r?>(D%klD?flsN9HrL6b z!ux=5I|QkCzIND@+m@u->!s$oAbDKM_Q7VMqTk^^TvudueC&3kPvUxO+I`-ZJVWeL zc8<>yJjruW7Ni1CYjF0h&C!Pq zlgqQlLiI+5hf#J6Y~x&`ANa<#qIx+I{t#3_K@7m$TtSt5w8#AshQ!BvSLA05p;Fa` z;f+C9a`<(RPs{ZIk_nqP6LiErJG!p)=*D9qE_8;l$xM?$h3XR>pt7DUdJP9cltQ$G zsjyTM?kgy;u!N473IxhcYBi6+ym z+m+a>1vM;5!nOhlO-eMNgW(VU6wF-E4EWL!>byj~^S>J7n5RD7&26_#L!_2tW0o-Q z`}J^Anfnn1OxvY!RPTKxpNG2V1RueB>8rkI9uXhz(^iP6%Q=$o&_vA1!8iqA7Uk`B z`mIJu5wtzVVWIqIMwcB!z=4t{1et8-q%w?vr(t;l$PepqU0NhXA(8kT(RMribN9?( zi$Gv9c8uztE%UNlj}~Tk1`Uzx)qWnFaM>=gWk5t?W%hK1%M%Z=znde4g2`OrUK1m0 zy+zk_A$+~Zf6Q&v-XOMiBSIkz`8$Ogkr8v)qmOb!b;N1=ttu?aOwik$vrbhYPYEos zSrBt%xaTQI>^N1TBT|jN@LvD zVDaQr2Ui16#kWUA<;=~H^>5*LQ zzpFgXNgw<14m=X8krV6{lXKnL%; zyvA{JlQEi^G2ZG%^>k9HNsk>?T7j?^@afM?MTS86&!y1N$#;jJKaanB`uSXp@C^KbW}ZKuC6Y=ENMx@uqT@%o=b)=<_C)6 zf~TwI$27X7Uj*$^L%Dc`wEWWeGjj$;UjMC#9ETq7#b+M=$zHW6coP`4>LSNwkzG3= z_1KeIEhq@obSpT=rGWnYnI81!{0D_VqJt{y)=m4f+d$0CQm5Z;7U$MnW`iDN)+eIT zx3I84Rx5--oRr|!YXl)XJNmZ+0U$5v-llW0J)@v8J5uZAi8~x#4ZyeD|BQ6bxXy*} z>!j-C_*V#!saB5bJzkP?JFkwPE>VR=vfjMjL}}Fi{mR9)HZ*h;-7}Stn@g0=Jr^~W zw!-3O&+2iHX@4{J5*E7H3$lad^wxB}QM z6nVa+d2?kT_gf@UPbztfjLxhb#I8q?g@W;qT`W`>;6wM3vW?T~lKHe5LX1tnYc|Un z5AEXA0`3F6^bpqNS#}h6Lq8(s8bwA1@AFqaq0D7ydmf^~q#-*5z%(1Qs%|?c)S054 zS+_U+Jc?-Wxl59=WbDz<9Q~85bN{3v^%I3yRyR+~viz8~TJT@YLI@$l6S0LGf4mTv zJD+`dKgfdr%pw+g=7c1UWinizUe>&f=yGO?J>N~{I5uZj~5%SJ}_)Mcs zY{epqE<66=99`@Ham>~L@rwPns2u-u5p;_)mi>~^3NE)Jti}A{Z02p8-Ogq>-6rve zuV<94&iC_n?3x?hcd37%QIpt#%q}Ok#^Osk=p}Ly1=T7j5KKKOCv#=aQn#h&d)Sv+ z2@K18#n4}9zmUjcm1w*8;CvxkeTaVgwi8>D-C&x-BR0es!xx+fN||!lpB=Pn-&%7~(f9cLJvFr~jZ0~6 zea8I?RM|PliDe0>*(zrcqNqB#A zNr+b*#nE9s7>r{8rYRv}_~v8Vy&$WXcFVuVlfS+q1qP)at}cz&POux_?4uCyE`}v* zhZ_yW)Bmhr?vMODV9QC1=3DAV-nBba<;i8aqI&lz=mV;OeXVM~wu4OTCJu4T)boeJ zx12`>if?qLS~U^dn0{j49lYXANcb=KcU!B%OnruCt#WV-QMb3ar<>E9srY>U%}OGX zmD0D)uKXe2JA&hOZq1~(w)i6sf(m67V&jAylNtD<7|G10a))1hUeOwVcwsEyAW>q# z_k=j;K3(ID0bu`M-G(~rgYxlokji@f6Qsp(|Ngl1FN%PFwvxKO;d%t%NObXWORJzQ zzirDJz1APegYjRu0`FiV!GTpaI%?RA)+2;2tR$SEeGP=SSEN-3Im{Mkr>&QZUvY6; zo7W?a!0lr$z(cXqi6wXa@Zz+CSodzZt{%e|=@@4^pn5aWn#1#!oIbz6LGj5{Y;P zchL44Fy}Q8GhB&`U;4tkOGSykSeiUxH+GxBv&3zJ5}@tsmz{!}wNJgI)Yo3LuyOu3 z4fpc2_Vt?=H%)0Nob`#W)qG?Tkp8XqrPG6gROEm=*Zl9HM12&su1ILP;2)e*8!42|xFQf_u!8YlKiUpt#%wr)k+-rkJj z@FWlbdtU|@mphL6JPE~498&h>?7afKN>aoY*0h`sGy*$hfJd_(08c3{BKSa-sL!l& z1|w{1R%d_&rl48OD3LxzXF7ovw5gK zf~NikrlziJ2JPPS$%E|}TMOJLj%qy-s{L^*$(g_NKmiOHAhaEf|3yOjv=`8T8|{x8 z++K79%+79?P+6c7e|lJht?WSIQVEp40Kur1g&1%@KvkMTOCH7A|6E((AZRcViQcX> zhD{*2SOehE9&_R__c?ICq46o{@%%kdQB+oEU?f0Ec8bOHFvX!N&FLg&prHuf8!Nox zH#vd?ojkmfmsm#QU7NM=H6@lc998}sBvP5Q>AOr1&&<615*8Dq7vm3;OwtA$o&61G z{GdWM?*OmtsopS7*^DncrIqHaz|%kY-+?L*E!Q_Wp0{RPwDa_xE?t#r%=|_p6aI$l zDfdzST|Fi2Vcnv?Kk5t~j)~cJ(^}h$4cP@tXS}4_GB^xltF&@+Fs@`E<`mKxW3+Pj z%Vy`_P5U0ajJj(rNL_~tUNK1sIO zX)e7>0)~um)>}%sDCdxVWQYI-9a}~oFuXfx7ZYdpesj3Fbv8vdaG;hintrEz zd&yEEyfY4fg^Yb&v0?KL{@<(Mm;H`DQ%hy+^C2~mnDO}^1_uLlLae9D_0!*E`r2tg zzGWH-BEX#mAVkPThfUvb(%I4a+w1RKCR}n#nQ*Du zAMcIVb{xoY25CB9XU>VI(UIaCM%rvRLB1VWKaiLuSXrciGz~*1HtX*JCA6z3VFx`E z7Z@lYv`eR-ZtQOtyMr~5NVw;0OShdLKhRgfiqYf*^&l*VG+ROnDkO%CfEMna^%^u{ z&fwzWM?4o_s5F`A4nlH&cZWTbcNt_N759!Rvh_!9MN?C3I$NHD4U%cWbCDM2lm{x6?HTB0}4D~7i! zbVi2bGNQgwOEl^X6}Nf7M}~FjH>&Z0Ahgcg@jnJ7*53K$cooVIXsX4<(C3OVhE(!< zFf=)@udh=$?EtX%ZPAjw+3~2GW5aW2W)+K0mC0}r6_3?aP*;~EgWGBQtZ}2?30nj8 zf2mt@Rb52*(D~!7`R%GFc&h4;Q5^7%P5r`)M8H4RFA8t!D4K_1(;O<9R<S!MeXLo9*$WBGGoOMf%~E{Xuc@ohhli?)pQsx0blw z&BH*0mc3>B&`Y9)kleUJGr*LDxj%e{9fbsQG>|PMvS$D1=~n~TBR%Nj?)gNt&RXWB z+Q191QhY+3sLQa{?EdptYqYK+sb{L(5jQv4;U4akzG(zsg+Y*B=gn#^T?!`b-kMAD#yMkJ&UA?H>Ns1`kS_ znhvD&O!EA(-j_miX31dIho4Ftg_^}wont5TfCqV4Wcf{tH`#z=ujBEQ59MZ|W3*EW0k+!^fS($@Op$wYW(r)~KwI5?8ehZg|#w9iav!-$y!MLIsb z=O@t8@hdvs-P<3x5&z1h_174U0Cu{tfNPP_daGN~_^$@b&uW@>&|q1f*YJQdkN#$- zpL7b7pE$ACtuQ_CVEqG&d`62Fl~a3}9r5~9q{6J|y~d5@8Bn!Oc^L)$=xFYDs}z2|-^EHw zZaY!O$zMIMC8-&LQ(5SUT?W{yoET3zv)6o#EYz!U(!*^_$%V3*th(CrhB{TFxNl{u zju6hNu>4yxP?LJrc8kv{r05u-ef9Z+nL}C>ZC#EE6B}VnBaV*-a)j!d*F@eMtWwCx zszpy?X!1BYlJol_j@&oAa3k?fieS*nf7*@YeqY3Ay)YDidauM@|c6fBL`ladlm>ip40)R8dzvg;Ajc^DGJVBL!;07<(uTQ4$Y!8x_4Pe-U z7#oF*Ndsva2!m5e*Aeg?wi>7}+SMZ;$*MyXVYc|b1%oxjR=8Kn3)}5brqOr93CviF zI6LClA<*p|#UKsBGUHJB_3wRRcH8I1`kqb>|LUJ3dX_tY2i6B|zs9z=HM{-fulO@J zQ%xk?!J%4}4BG2Ep7T+6&&z$a&l0oj`ErntD3n!22T_MP+cy)FPj3?$&?7=gbZEEBP}J24=sA79NIoCQ{F^v4K-wUS`w(yXYi0=jNrh@vR z{`Ia%Z~yZ*W9h(&o4mX|=}emrWMKTjea^a~8Oa}Vb7gO`y{Xwp0zOj?ZK1Ls9M z|JJ2FI_H{h+2ulA+fb(@N4jluSjprRCVt0O`DBRxK&YRRYnu0Ip#2}#N_Lj(iyt(F zS9zMNzu~&hRMnr5Ge4cu`XW@zBN^M8;Rb8UzA2_WxuIqgv(R&S;&vF1Ilj=@?_PA+ z{Z5Pp01$svW%zzi@VBE&y?AU!N`QdfTvP}81wli{E#TIRCzZ7~X*Q3*pm9@42|gYI z(CF>babodQ9uuR)2wlQ@uQBN0< z8X?Bpgkf8NHmov5to@dgbb`Aq`&CNb%iK95BECJ(z5cB>Wcv4^Z&P_w$9MWOSgHwk z6Qx0G02ipjr*5mQQKbv+=jXTTI3uHd=CbC5V`gSn_N!6WrDDvu$CBMZ#ZwaC)%nRf zfv5nk8mh9G#LVAY_eVVjk6Q)Of3f2CX;E0@$bEwE->=wL(bF|2i(iGBvpi)zrJR06{BR-2E2VQt5@v%y|_xp7~ ztDdVp+@S<$!k(&<51zubw0i%a7Qi%qkId-j6Xl{rUW)$k3NkJnS!@DA7oV^E^`$J0 z`F$_n4@^6`Fs4<2-N>V&3s#CVUpEC$4kj(C!P^aj-m8{DmYSZfVzn$1=zs`WDC@!| zl65Ur<&S!R&g&Ci!MDl3*om2W|NX0kq5)F<)Y<+0CX3wr^&4~{t0K0t&?Dd{%0RPq zyWKaJNrws-xXFMDM{E1)3J(c$`h}}0C5dijvQSR9ynOF^B;au`dERmz2 zuhMN0BP4|YSkuiJh-<jVd3nK7`QfQ;EH3chq@F-{!9=7`5YF`$s4PdR7>lB(6c^nVHIsv10rvv`mNfD4H1CiS< zS~MY#n5rtaj^`CLV2p1lMR5oHALsl3OAFLlF9H;f#`Wgpy^&h=x*|46*m*veiY}6? zqr$I;D;%LG6)R)sYe~KHn5-5s2K|GnymW|7YphWB1pXPYb6(gOw-zuRXG#xua7jVA z9awtZu6cpTi#epA7QdeGy6ZToc;M?~MN!G1Y9Qc?yD4HY{a4EAlQqIN^?a3{;B zWEH^G@1k%h2BM$nL4_3>BAOlEPUp-DF+T4YjVoip59_7(njQU7@TW5&kpTSvM27*# z;4LZza7ti;?(Q^iFBg;o8$%^3R)CrPy;c^VJJjV6)zzx=3OKi8)z#xp6uSs_3ITIDQCFM9 z#}7a|(yy`kk{n#?1j>^0AAx%4;cldd!iiKWl$`<$=v6$_)fZE}`Tn6sz=FQ%svqC& zVa)}c2`}pPW#hwmyEiPU{h}8be}jj=GRNm}rU#Hj`MEf7Y6$ydX#=fpH?7M+!@^Mv z@ffi~I&&1T!QZ1qhhs2CF*a7^llYG?jleCO8Ov}vH=4?w8O_>g9_L!2)33%&5$Iq` z)@jcutz7TxkID!QWqM(KxEjd$#j&KEkF!HCUwU149q_X=VkBo4ejmYT;EeJR73qX| zYaQY9TvWWMM}pAI7D}uz>DQ_(vlx;T5rBbQOW@~^k?sZ>-6>3H(#5prpM&xHqQLS7 zQ1_MRofqstN~t|OR!yQ8b62QIzEgyZ;w=>+a?#u$d2qE*2+FEe2##Q`o6ib zb0p}95=AEU%k(fJ6q_I*t?}~(2HqC58k1KwsVwH}3fyjv3re}NR^2V2fN26|qhY<} z#)pIBQjwC(eBEv+(EZQF*3Yyf?~BD;tkHqQAJf>Y;0!SVLnAqZ;Hnq|fcuhtwg#so za-vN@#e@ptxmA^XV44W0sqB-`a(I}8C4o>z1b?DDvjXBaJ6;jNIZ0uXi@kK4sS>1D zh({N^lSk^Nc6QwQa7f~H{8D5~?*rb2QxktP1qqmiDK(d{ZRJ9lMs4s`PY8?YBuRe^ zamNbvo8 zqUz3eMz(pn?BI}-0h6G7tmxYHB%C?ExPpQeqYz1v127}ZrGcHu%>n&ut##uoD%?0) zjDUA&WykpDN#(C^_J-j9Piq7O>glI$zR|K|^@gsxhMw3jqp; z>c57)-KsUm&Hz=d(GUJo)w!?LZIL)SmZSG)(5vnz-t5+vI%jM^y)P<0;uKAbu}UH7 z+{CDXXv3GE;dOXTDZd?9+1P!`RyC~jFi6sM={#9eOAp#8B_Uk0LM+423g`v7G-BI+Ggs2lxSY}A}-R8?c@=wNtH=}9LG>WzLoNz zi+~8I6eJsU!T_B`-_l&EmJ{hW+$c5%GZIdhz>pA&=0&+Iey_heG4L3alVut#*!1eQ zlyeKd;E+tXfOi9X)QWXWl=0Y~qw)WUy$j8oah~nmX|C=q+nZ6AzSa+Kc&^ORbeS}% z)=Pil#tm%_MmhurUSO|?G!{-0ls}8-GoADc9*W6e2MV&Uk2d7_a%l>nL>VWeQ#HJr z|7A9sG8LI-9bR;{_b6>yMr_l*6lu3}|IOQzH2~&mpPWcQTlQ;*4KX>nY0T%TPwkJy z1pMID3hQ24_yKDW7V#s{4=N#g)0MI6P@=-49=1O$Ts?51UW8y1{3^o60Un@yPRZ?7;1!9=ji*iQ4{A0$sL$H!nnc%HLAWmtaN<5fRBAn1+&Kz202G7g<+u z@{oso%KlTZ^*fn7G&1;h=a~P~{-LQR|)|z-+&hr8P;F9K_Yb`DVd-l~P6PXSjy8kd5+<5%ePK4{- zoP9On<|HYH%c??eI#;_120EZ0_z`pp0XoP4zD2_FN&6AodkSO$pqOJ04Gom@W(#7G zV5pnRp7y!5iXW?X;^ba0FxQhJu+(3jRQSMgzd=Ai09gY-ujdRQ7pi4y52=xpE%0Sm zv#vT>Flye2VN|~Qg8qsaqf0c6Jerf^hS|8Bo43&-KnKcxel#Hw-y$-l3PZS}d(4_N zUf*a)ng)S7Fub2UAS+#Uee3J^4i1DhRU&PTg~pkDV&T`aU-a@N4$;o;+hbyR&OXrB za_ODA%zC9g1$9582_&y=Iuzn7vkH`BI@jBVv|8?Y%cMv^p#S7m@HZVFM*mX&`(342 zB;l_{8^7Sd6m<|2Frgow%B|8gb=g}NY-pmlA-8E=auOEHLUT>>MWpet%y*q;JL ziY@Tb7ngc02t8=ghIJ?x&=8_bW|OAR;;eo}##eN|CburM!65_88Hac(K3bQ1&zwj6 zJ=jhN;m7&%#A7HK8DlOwKGsX$YA5)~C@F)r+uV=FqoSgWdV-N@tG&w)Mnrb{qbA<` z|HEdSi1+7C*Gnb^&2LJD*gN)NNW1_>mk%C+{(S6lYO?4lj~xvK(bd;O7DGTzH86C# z1doe!S9ur>z_#<2F-a*}!+q(ENIG`>NFrn%uL6r%N?xeudcVDsx|f%}o~)tkcCI(M zCQC{Z#B=LTrCPcm$&t&RuqZWNe9iJzKHcFJY-cfP(NkK9Bwv(sV5@ILywc;9}88TR}L-A&avO z156J4cI;Lq>u0U=o2d9ng{)-0 z861bLI%&2ziH`rEe7;(Z$1&kv!v37~7ZmEgFyU7A0Y4VR^zg%gwVRjBLOVaw{G9ep zqR(1Qn?!`j3^)Z;cQfN2U&&}o#u3iP^|_#vY(Wb^wdaHd91_rkBHG-E5is5xPKqQJ z$kg$E3R=+iIE(an%k((!vSbIwVBG$M4**7yggnkn_PY|;jM}5udn0bwLsV{WcMG4{ zEpY+g>Z0-(K->frSCoi2+>QZ7U^Fz=>{jT*|C%?6cDJmYbW7N4*3?DD#X7)=yJ%Ex zVmj=n?{<7dQL)cgHY6(CgBi#>aEC46eb@=(a+@F6pICA`u+)m1QyKGR-4`(``|QZGWaGKd1wAqG9(O@$E@;UR2|qXgqr0D9iNLzRHU5FF5eioL&1ip8b^?r(BZZf|LgK=OS$ zn|9o%gA0xRdpS#!PT|DJX0EYJkpLVl{QgAN1fk1n7jPp-=G1h?f|2nbpHC`3^EjWT zeq%^ROdbhp@t3-a@p%mhLd1zrP9E?A6ux&0IumjNZ@s`i0CkY9o|Px&e~Fp4poCfC z8g~nj7ee_n(_*ZQ6rFxa06I4UyStpAk9SB-7cE@i`H8DZA1u5Q z2@w{B8ciz{Fji;eOod;0D1CA78~V(vMws}+&|M)ic~g5AOfufohPg@$XgqP|18rZtJLP8E{6(&#$k)WD>0f_lcbVGoZKi$yjUC?PH zVX8V75!LFpWM{HaWofXa*$ntJU79KH_syWwJjtR-t^aa;)3)0_YPnS3|WVg4sTbC=_?tcP3(oeGK zoI=*t3@Z&*J31fFIP7+*!v88Ir`Qq3%GXFDT(}ILg-VB3;4Y@i<%;b7=}Xd^8&L-E z)G-!t3(0{Z^W}m=AmOZn9|K)q|M^zE{q>q05Gg2gty=~w`LL{(VTLjYTgI z<&!z2mOlcbhhGp7y58(#)C$XoI;{a99f1W|bPVE{L|qLCB}twE(Wb<{hTgXteYfL- zs@ig&C~vrkgp{n~&<5?@#E5HOGk50Om9RFwCjzK;tUw?HG>kgy2IlrITsK37BQiNNvNf+tvUXXQWMo+?ttfF zZ1#GettwrW@AjAl-v_}uxN`0XBhy?e2*#XGLkA4?#&ysQ?dbf-w^|LInuvh`mWSOd z{*RN=6b4LoaxK)}Do=I>e!(G?y$JCG*9|1E{uNbIGBnQ)>Jc7j_JXJZ|0^USw|r7$ z{Ga9?GzXC_7tvoR`@88XmE(TT^n{|tCPKZi3cG`;3LLJ(sM^e*Uwno=QPj1U`z{V& zqi+}thaY*PylG*2>F5Ji|x*}6y3$a(58lRj^ST=!-1_Y za~@jW-{iM5jxc_KEXjw};I4A69fqc% zaVaV4N3GlXI6M7>`9E-YVg%MNAx((`iVLr;1u{VP@t4x$07r)$V9LMY*d`qWPb*Swc-97p z6KM=%$kCguHQU>*O-ytK!bbt?@sOCAOW1LcKSOwX%WJruduQm4sank_OmHqbK>%j( zH*cNF&bzmUzdn5mF5nOfRe5*%mEfnS+mYL9f?@f`-vj#zQ?2NXDDYHlqFA1NMwAK0 z5+Q^~qIcVwj)CZrEqL2tvqJu_60vnkqg%n$8iO+JC7orG zJ;doPMZ9dS#hADfZ4oZ~GmuRM(Z26eTL;6Si}RatVr{pDVJFfOo`b0pcJbvGv~Qx= zO6OHdB0g=p%O8Y5J~rCOb={veze)Ykaif4$E9=~|edIk5js+qks@bLT%;-O5gKbyw zky|bQ^>L|1XiV17Y%v|cf+0(%Ke9yOcl7x~w@e&2H8u6^?iDlse3p`q^pi=0P_ORJ zGRdmHydLpBUAF={BKXD*YXT#PP|0}7)9p=;NBsH*8{7YaW}N55?YwEjY--yIz-SM( z?$&yGG)qh0RX)uMLA0kLt(bI1G+`*WHh^G6*Xu~dhK z?*5$bd#UOLU|u6|dB1W3Ai0jiwHFMrnD^jqeJ*TvYfZ>i>&Mrdk{_lpP@UOAmpd`m zKv>%qhgXYq$i_OOqZAY$xLDC6Uad^)n(Ih-fvw{qP22_wlJPF$H>+Km*WXcJx3C_A zEa1<5lSlYsnFOzai5>DX)?C~RXuN#&RqG%@%P{bC`P@MWyh*rg%EuLE66h1b@e zDF1xgPA6c#Kh4Scudys>3$HkHW9(&cwN0Msd99X?&?qY;MANu>4e9ZqdS(6T z{_viXo$UjxhCqOX_3jVHg0*PvCl!&F&a&PsE_^jz`#Ea`{1?(D54Wer$M+#~c>b`i zcnJEEJTi7O@zJ%Q^YZ(s>`NL4@lNweJ0;U4mawpPfz^u3(_x+ro3_CV<>jpm(-}4{ zNl5@al+&LddKZq|T1dq2SVKb^CGA0o4@^eG2w-2njIO#GaMl_VRx*#fovJf%ajj@H zO@CKkl*VIo4=7erQ&d*AHawb9@YbqT;p@<1O^K=+G9b6X1;g;@M10E;$30a}3H?F= zms|(^kcX-8lXP5z5>%-4?iQ5-Pm*Za%82oZCWE$Kts@z(gm~_qsej!UE?syZe4Ka< z(3%VOppftWJ>VM48XD4QXq=v?t6znLFjZ<9+^tAHBS8)H$1C+DUQ-N|zSmO!{|P7g zPiB+ZekEhpjldpJ{Ahxy%Db7|pd_kHQ%C+}=kdknJ5D+^qUkf8R?e`*M0$Xl`z@1p zt%af4sX8zP%xcFglZ(O~NO|rnK znx(6e!@EOwb0dd%P#LOt)2(0N1PM5g67;@Y5=z5)KiUb~JtF1PfN_y~)TfytgQ&l6 z@i#U=0&YpvC~10Ddydi?2v@6y!D8j4Dm%(3lg*H)%eiZ?P_ClKn#9nzVtnqX1UTZ` z;>7>nttyXqPq078M4BUXX#eulX1CIRVbqWGRx2eLmf*6nCSQKw^|(bT7WEwLbTZ8N z{ryTDK~0-0`J!V(Wyc8t%D;J{pvGqWPkmUo@Y|@NO`A&FkJ*!X!hd<0UOU}!|9a+p z?Qr`xWAsPE6{^hbVsu3a4+J>8zY z(D=O7qccI+0cn3Cg0VusH?(rx@D}NlpQ?=Ro9rD6J*9@@#@{V(8)7IPEXprH#Q>n0 zUjV<+7mUHF+4YDKicDubjrBKI_sdX!i+6JpZusT9*YEtlAg<^YE&27s1yS#>+`Da6 z*_?y(wl?DZLeHd59(n3dcSQ|5D~t@$xx0pA?cq=ZeG2IrGVhXS?w3yRL#DlZj;eg} zTodMfT8g=8$N+LK`VV!+#b#v402`2j1)np7H>(a&C*Nt^eD6+TRF^NDfqGi}GvF0{ zzIN97T+(0Ohv4~qWXx_&&-4AS$GZh&Ct#q_`jE+;!d-`7wu0OQUBUnc!y2SQvwRS} zE>zQ_l{!U3gwZ8oshaPf9BV2I_k!u)0uDLFN-h(pJtR!>E*e)}v|yc!Orj9pt)hGK zr30H*6zC&fTLcHYu9xu;%+fe-G~rmTWNYmbUD_<5I2e*I@&A=&#f`f4eAH{0NE1J= z9`<2m#7q--3Vb9Lfis)VZ%F>~uW%R2=u8GuOI|Kh#dj5x>G0iynCXv*ifFChm*=7?PT7TdOsO%mH1`x9+W6l%@&fy ztWSLiQ4RG&okUT1=U~NH)5AX`MA5qKzDKeIQrBR8<}L44=tWz_BDjVrh6b~K@VoZg zmuCtRigO`IoWzcG0$UAdaqjsY`&WUoHnlL&xJHaicGuOot3nIpw4Gs;n3ToaP`tmS z&VUI`C8xgtT2#b3-_|FOfF2?t7xn8@ldf+A1C%M&u7^1x)b#YbKx<>3ki}wN$@4}g zRBZ+5O8%>)pR~2>t5?4AN5zqc(J0~B&&a$0Dvp@*HAvP0@27&A%tz~ND*Gf34u=D4 zU?0(oTNLgz7J;mKJ#z4as(^zahN~Of>5wmb+`3m=0LcKn2SRpvTPx60H+hv1)tX@O zLsiXdZ(9i!BhQiDAQE+`;o6)t?mREvsd#MNr__b}4gHX9F}(8T4^$(v*1@VSt`lJw zC_dis1%0~rH|Hm-81@dEg6QOR3gt5KY8UtStFl)c;?+a9$44fRG{v<+nAXkWUm zKar5pgw3*9fB-Mntp15Kju^M_Y7LEJWxfB}=d&iBTsA;?85bM-Y_|?owKCQ$ET_>? zNv~0pe0r+C_714xpWYrskO=W~%GnU0j6zvV-gflYIOuvdHX_NNoTmgRC?W(tc*|BU z?3$^i4ySta-55mp0-IOWTIA5h(kp6uwU*4aa)jx>GkW8V^sznQxb1gOzmM~ys zWd#>`l*Vz>vE`dPWuQTSw1Ub2UpT64QH`rub+Qx4j*N7o5iKGOJ)FxAtI5yqTb>3)wqru8qPR#x{4%NUAtb4ZXz1ZA z1;gPW>qkbP$1v_w|36c3uF_Ktjdh80_0_mSNt%%xGvNJ^W&<$-=7?BEZ|%A7nH6Fu zEzN?PbcDXJ8(ztS4OSC%6qJ9wpB%0Jo z*0OGQUeZ=Au62J8iv&@$*lkCQi=k{<(kZAkDccyzK=Rg%w=UM~M16$8{%B9V?qj(( z=X}y%9mSn0bOHyR>3(|;XmpLfjrRa!Q`JECwaK-5kpmin_}_~qKatAs#m(4ui_X~b z%KVA{QP+y`ARUdsaxc~7`DRwB!~DMEvYVt#)eVsakAhOpdQjj!ZnWL&I}l|mI{*Qr zf3dEF^)niLNzh^w6%bt%?@Pp=+JCSqctn9?AFfMauYTlA=0VC#t}`H>Kd|1OpM(c} z262Wb^kX$_VFyA~Wzjb)v}XphUY9-MUM2G6`kM*SG-1X^`vhGXbIbQmfb2+B$_VsN zAh>?a5|ih$Sh|UL6|hy1;mX+R2K==Bgb=)6t~bIBx{@8slDo_n+H{O>b7#|AcopzC zAS6*>nN`J?ii;t*-{^+Ga%}jn*%04vEZcbPL|mK z#s`)U*$@0~Fwtv`o#K|f@!u^wX(oT~n{G^T&%KGzm> zlzg%JgL5(^KJgjxT&V9Qsjy-Q+C|)<$O_(sc@G%uedgVG0_CrCmx z5vqiV+b(>0z>dh1&{i$Ta>$ci2}~gm`z(WYV`NQY@7IQjryGW>?wtg4{AUq2SITF# zTORu{#?!D@88iDZ_t)2{t*nN)yzmP7y`-O4`^m@y2Pu9`9yzLvpW1gcX&JQtq}jW< zjy>1cQ6_Q4{1?ENjQej78;nn_Pk<|+J2%^SnoaQ5p()TDYP7%*67*%U=~&Aw%(AAv z@p?AHS$Ct#Wb9}i=h%3}i(<3Wr_(?t<2&#Z)WyJ{YGCFHVfd;$WekdgsV9h9>G9Nk z`fN~+mt9VHI>K~5lgsJ;M*YOx)yB?V^lb;Cn7L~W8fWy|0iGH_!b3irzB@AD!ku>= z4*m`Ok%A`gu6Kee@h(6uHMhXmEK{x;n}zZjrzU8|hBRJI~sx=Foh3UJAPvUB?@?q^v9{ zLXc<-(On8lA^!WjY|*Vr%jN=RsD&hm8bqE z;lTt|LfS9U2<&>g3;E!S_LG3dMnWAQuh9H_OR%4HMPsnUj=3&2ZVj^aKP5v@?oXGK z^b~EgIIFQHcx#&I9yefsZ1SmYICx>%`6F}rKvyq z+(BezA$JGcu7T_)X+uP2`4v(6iATbgJu>^BNjjc%R>mi#}t(_m3_JvLg=3FI^ zxw(N~Z{T$zPP$yk_S_#ENoYx&a<1jsPY^8J4OuV04H7vX6HxTwHsu) z)^dP?;I4B&cdRnV89AP1c7A`cVbJB?itT$?eY+k^nkzGLFm+g(3KNh1t^Qkr1m(@g zOKl^=-5u-g$z(I}@u0y*b*aV(A_jlc3u4_O$F1ON1h0fUG_z2v*p*L%>dl0Di_PSBR)~lgD?JXt#EZNIQdFa?eFf;JG%z^0A(yDsd#WS zjr{}oPw+qdVuVIE&tt14=JIxB10^#FLh3YrRFg`hD8Wx` zve?7d&o4TrzRE(-VTxJRv-%KLNR@m?kjaVgsol!fG>=n_#C@0}OBT}#usKNx@ePJ6 zgVkQAeSTksIPI!a9QJjx0hNZ*DyD!vX$T#qLUL{JL;xD`H>+LF?mSt54!#i6Q1f4= z4QyR+H9FtWwHSP)V}{D+@@iXKd4js6o= zE!R{pUg1!pG3g(m)G1v21r#EC%e5aJRe{5NY*Ie0vlOpVPL$`-pT)L zN*<16H@4Fs!tL)%Kt$BY!L0+-z?y5CPA)q;M$5HkEPMMC>o_A5lZlC}0swl(DUg7? z?L$XQ1FpAJ<}SI_#*P2|49g8m7oW%3_hRvA;^(apfxSHpRx1^oMtj13kIj4Y>HMU6 zYmOY%lEe#3IW{&*MEusBQynLXK~B55wRSBj*ZS)X(r&KJyMwKsL$B-p6i*-Qo$c+x zF!&_T53gN0)tI*}+xp{Eh}IPH=JIW0EK7vD50K=(FtV1di|9^WmF4=IlwZ5w)5TQG zI%DUkVr*D5INXLsh=Qx*@xXD9Mizpa;6R26{wR)6?=OJaXG2u>2xbPzHoGoyf2S!8 z6a4djBs9Q<#O-<-PDLJ4Q7}LWGLp~ERxn&+1VnylMBT`L@(4)Xu(CG)@#8~;LTugb zBg#E{E>S&zFT1nr&EgaK#rhV4Q@k>j&20h`NRb{6An)nx3_S+j!0<13M>f z8c`TD6_K8gYI0q(5uJ=-52Z-pnPs@lIfQZL6P zGB(7?MdO9ieV3b)o8%H#V;Ae5jdY(%V)F4hX~PD+;oB?CU-Zn!Tgz*K`nq^H-rH#+ z2{h5+<^bsT?-CQQ;3|)6XuvfY3} zUl-%dT|Drpeh>KS20+f0%ewvcMezp$NYC*T3p)Lj6}=vDtFgg8~hco zwtD1F7C7`I+uUpvwVNLL2BFQz!GwfnO*nqTJ1vs3;oI8n*#$KioHiL$bMCGIFxf&k5( z&k`l|Iwr(4H=JFn-_rjHO{=`MQaGnyjR|z!D(KzI%3*IY1PHXNAjmjWAW;-SDV`A60LbqUgSnre{X zTA|s{VLsZv!vKuB!4ROzp0;GSY|t*4?0q8FFPKiu2?)sdqgHgMrlQJmJDs8TfO@$P z`5JNe*T>7%9x1h2q~h2)v;HxtqjtbudZr|K(}C=72ju|^RY6-5UO1as z%gc~=r%ebN8u%&9#0==G4ztZpj7UVj*|jELf$cf+%Z{ctiNmcEYl#l;6axNVT4fHs z;qeKek&(r#_?Yn5%3lV6$G&BbRk)9{6m1fikHAD+s^a(+{&;1k)JgVdvk7UmW5jB3 zo3FtPD)Jwxg4`d~9QPomR{NB`AROA2B6jW>#qnk&&5PE>pPX{^mj(pwF2f|?G{UDW z+|7$iNK$l|4_Ukk`e7;wOhG{q50{fdIey^}q_0ha*84Kn5ut{cyDo!%E@b4OHLyrk zeX4*^NBo~AIah+mX@|ErqB>Wrj`-^SUFhuGB2UFHQ2QNLk^dSRpG#lNMCr7I%4%6f zJ{oHQK!0^9KQ}t=H}OX%qZB;ZIz09DwVzptxn0mzoaO45d-HVSEgVN!|94NM2m@EOSbGJB*LG5$BD-e-MlZC zw^SoWP|YV@%s6U?ca325l$l&8Yv56Jk=ctl#mP-%E5eSC-3j=Gs#0Yr=b_Lbv}P*( zI?B+nm^?qjS7Z~x!Z3cQTh!o|BL$sFO&uh!Fr0Olfl}a@zPLU>U^{UC>j6)}uD>|a zjx-}Wp3O(=ygsTrc4Quv|M}W+k2S2UOz?7$A>((6%{7s^y|x*E&TcH$@KWNi8r~8C zeW0(O%m+AZq5Zf1VI7K2U3L4kJ8HG@CJ7ijkg(51B#?)A9cCc`V*0q{x;E!)W4I0< z=KjS;S@W?aabx5C687@mt8JzVoz#I!on*=RwpL&_q^H$w|CM`LL`wKM*k^Dj>{K5e ze$f$nXt75m1jNyWLX_n&Fp~E|q}dT~7aY9v2{nd)MkfeYft?Ds1*b9}Nyc}0Fqf(A zn~PGbaB)zL{V~MFIf;4YwR}Au#Pc$WmFSPhD_~h^`w?=$uIbR&BI2;#O80Xc`es*- zzYwmb>|6Ag*GH4X{r*WpUdM~eu4&u_{ohn2DU7=j#qz`7W6bWV^dJz4{TEG&FPB7C z!V%}5pG+uoYuUh2XW)kK-~eBx&saJK z*rRLf8%sBEaIb!?h=h4+?WbfZ*mn}5p}1XjP-=(h#bM6!GWoMz^Rx zYSyP3S%*c&ppo9TK5k&?#S8coAH4}DE?d7segnG{5nKhrig+ftjp9HyD(tAiZAGTi z;m4)4`nOdmW)&or^lSW28G9xz<3Ak?`gSW*-ZK=9UH4dJ`&r)2aYwGaoE>khvA_ju z{Wp~F(m+k@=4QVcfl#}^3=JY!67*l=7~Dq2$=M-h8TUhOC)EH71(PGeq3e7+g4q3_ zVR7a9?UwNuYY`*0V(j5m-r@0jn_y1B2l9Bv=TJ|G27T8MA**XC`tviddZkSH8t&07 zbfaxhFx*0op7s%>hpM&%A#|w;a+`c%GV&i#Xv{OtgzZko6aorj#v73kN75h$6$FLw z7v&38xLPt2p8*nHrSCSmPn`jxhnscbMj2P;@MdF<%(Y&5xtvINcm-7g9 zoJUZc2Y!NAXr|0B>qwq***``$vY*n}M(=5nGqf9UI$Wszvv{uu(G{<3QkejyxBuYo z8WpoZR&s&F^`okya+in0Kn}lj*28(Zz=oYG9^#kT;yn9VsKcI+OK<-F-?M+G4}Sq7c!A=OpIO|2$*uL(^|zCb zABXN3XLE{ZexoRBlw)-?rp7RNj!GM}0tm&=;hi$EFmxgca^xZ9*?5MDVOyCp4qm2$ z*<@ImKd@j$c&rb@)CYt}WyHusA{7FyWFlI&LKI-oMImJ;1T z0L7{+b!dpf`{4~SS*C}%3&F7OyP?|eo5^dbM6q)9?0W0{VPHN7wskjQkq!Ft#ldk| z3!P%d0qi{Z;oMHEks+)k$Gvi{%faAj^V4vW=xAlWUU3oSR|mpGpD?=6?n7*64d1|0 z)z91zfwKt~dmjY&gZLgVIIHhoksYuv==CL1R0Nl3ZNzS%-$~P{Ad;8#EJt|!$+F^!7C38UpF^Wo_s*YhEh-8wFDP~wGv}3ps2$ui zR=xKueYtbH``c~fDYy_@j;1lCTO3Ds^ zLA(KXsP5U>$;cqUDVdli4%nMZq$H6>&~E>gi%M>NR&PG@_H0VbC!r)3$_+~QuK-A< zh zFPBexQ;wQt0?p-}3P;10Q&#ouia9+s&a}FM$oF6|7j+MX(wT7ZJJ7=#vs`l(3;kO>&}?at4)*Kug3 zg1ypiVHjBk5uPIcF)`mMHN^3~d&;cwilSP;;XT6lhg>JeL zIv3zQJQ!3*2T4)RPETh?GSJpOvtcdVg=e#GI9*&kjoII7Q8s=-?q_DZ0ZhQNQWHdi)BcR9oWy*I)cjN=yuij&@6aKb@hSIRg1e7$M&@Un%SuHyXr`sF|X*xu`+Qtww{r_CB@P+9j$GxrOvnf1{Cr zd=bor&GQ2b5$+DW+zQ5WXq&9D-zOW*KM-DfT_o4z7~~-@{)+Ob{zWbu#M;A;@UdCX zxo3R>@}w~^N#_UT<5jj{!GdIq;z!Q(`)Z?2M5~!>mEW~^5io=~cyd?jdqEF+^_B=1zn?Ka)LQps|dF zd>uAHX#6AC)9m;IUt;mPfGIU$5nLs=FRXZN3kK9I6mUTJHJ!=dXr!v{$W@N0P8wgU z!qhB__JkN%YLMI8l*{0v)WZj34c*<@4-BB)SG6nwOclBnieDVS!ip#b0lKv4FlW$j zjr**(SN`Q&_{`W3b#y8ec4LTyXl(Q*59X2-CQ9Q8f>}Ze*iXO>uhkk8)bAx%Y5q*e zk2fY9o?J3mH0ZKIi-WiEzoYQU$>2`h_s8q@AKJf_(6jU8WI1~vqWC{T>=VJdfv2|i zn1ae&rLEDf=p!xd1ut1#oFhYKZT?#qb84opS|oLITW>P`ev{99aQVRM50EFGo&;_a zAHN3wYBpYcycF0qWHq`c#wM6bg@}Al==myZkf?+ z&f2?ip}1+8w3us@utoWdc$FgTZGO<-{gD5Vi>z17>6gIkYE@T5Yr8wNXelne5n^Bk zYNb_VsjE+!fV{Q9P{~7w@!OPBNPEgG&5vVCGzWmB%6W{SAy%QY&U60sPBlhPtjzoY)^Rl&%`5P^ktM@a&q zY^lo)SihVC zNl}JjB$~N%t;CP;+$0$EMd|O=5oYxSV@HrW+6Y)8oXA4PhPIo2U!`c0MRUc2hyDn4 zMdv9!ffAk^+-}oSQu{y-(w-EI*3-mE1>Rjg0=n13C5Wt#kG5jw(ANHFn)5xKYPG>( znt;#0<5A#oZtQDHQLW!Ga(8AcVY?<30t#-eYYYATee+XlvoWT7GhlG6;RX%rzee>f zH9?Jzf{pDOmH4{FAjhYs6Z606RQUi%T&b;5`r@=RK==IlcI#A8IgZ1!^&!EY+P^`> zN>4*-FpA3hNAA+fo3DEwfrUZfLW5wBIE%aq`ZtAhP`UQAez6dzuBiUqI<&^j&;eFa zNV5ubyi~p`x_S^#Bl`i?pxJw}3Uz%ejB6|FYr6aSo!go!;)m}Ea^Me~W+xSUWPB(s zD@WUo>+!g3km*#zLn;97G#f&htJFpn@M7ha-?s`Io3|b~+l=$6GiSJ1i0R!7FtEyL zqvT?Yp%n0OeyHxkY4_z3>5b5^$;|(Ou(J`61ALM`gGIu?yiN39GfU^PE5X^}%}7ep zoz`FzVPdD}^!tHtyC_u~P~nWHv6{hu`9k&c*!pTON#SfMLB#n_A%iga#=$NZ-1N4$1 zgLwybwLI?@y}~Y6&2=pSW*(^rtfTY*QelM6s86JT?{Y+L~76)V2ail2xC;zk7g3VGGe7ZiJvUIJ`<0If}Ym2t!>OahR>>eJD`eLG9 zz`;$a1!TTEiXiX}wz8A@8N1aR>Q0ydPj@h^kOLQHstCV%=+CGi}yz**aHK})Zwkwa874>}Fk zv1S6evTe6!0pisQYEu3j<~%3dZu6^hkW&}cc%G`m(@O|k!CK|XJoy$7<*V0`UJjVg zR~d+(ecq{dUOku_S<=9N{rdcOG}^DuLc^xwB+>7M9XrPh3YZeFJkJ|mz3u+bSku!% zNz0lTW@O}xj?$ff<@hnVm`d5<1Hb*xiD!hAnkTI*9BCik!2v5Q;?^&TY78Eh)PA!Q zT7V;HD;Af(85JA~;$}t`AJE9G7EU(WX~4kid~a$J0O;hhYo4_Y{BLR^J+%#CI!z-E z)!%})F3xj5W7#ZKWwvbW7@A+{D93`}@p@rAY^o9^k%}^Ms+Nqxcxolmc;8J?FF@Sc z3*s?uzBAWKtDxs%;hiHrQ)GJgRKn0Ouvr!1&Yi+ztK)5&9$IWKK}oRn*{9;FamTx`6qHT%_F zD&>2dMbQ90)t+lpgvQGrmPI{sd|C3jVMJExi!C{{C=%MUqY);ClXAuiEFfraNl*-9 zkmV@(fkjfKgN2lOa;-Rq6j&mhrQA`*#T>D4%OA5KuyTnc^hEJ)(N1Cg-4}{+D14>x zlX(WGS^+7Zm}6G@WYEJoC@xCyer65hDJs#;dU@!7UH6CtL=iKbX$q@qL~Xz|YUj`{ zGBG|gTgx*%Y#VSZ?>_#^Nz&w7>f4j&#KTFL*?Q~K=N-Drw^;oDr_l$}0)bWMjRvwK| zjzOFI{upsUE~5*G(Dl+6ERRcto!WF-Vj7e+W(w(@w#yeK&C(+Mj_O~$Zty_*h>BWa zQK{7E+q2~HybWw#p5WOE$4mBEa*9N=M(3g0Jj^3LCSXoa#p<%q@C9ovIZ-T7h81<& z9=to5Rrvx9&CM}cycxV%HBJqUhNh0#T2@s!u_$?Q(dqJsgiUFKOWlj9c)!%qbVYnu<=&cL@&k9tR10|&cnc06qY4kP)IQ7~@W#BStB$c3#)(FTHzS?&> zWn|!`&jnXf0ghmeP+V+F#>PhYv6PZS)V;!*$UQN-QQUTpaO{D??3T@z@#-5{jg~|E zR5!$b)bGB^;ys_G7%Xi|Pg#-pwXE5z;=@ET`PTz6H1m%KAOOkokA4ZtHFnizd^I26`8=81F898F zTI&q~F0a0`4Lz?zxTnLq$su_TKT9qFs&JFr!_E1pf3sDt)|VaHk7@=aw1_o z0-MF<~xo6+pzduFq|kEVw6*S?k3lEx$K`Gm@dYt*+E9JzAI#H4H( zq9Y8K@1ftGgPJcmPLLFote~#&BkA~q^!_}@!eX)Jf9pg+L;vA`CDrL3lhI(41f==A z9b8Tx>g%8RKCa8C_Jco#hFu$*QoIMeM3#TP^?JnMU8}aapJjdtLGOA~vF`$8B)RjJ zL!C|`rSs*>FE6LQ#29@u8y&UoZu?;-gGcxGi<&&V>bwzA&4AbJ@My|5p9PYP&T1Q; z?EiNjA2&DUMS{X7g)W^8svf5$vy{unz0MmLJp>lIgJLl-k2SkGolzU@bZQ!_xGQ}Z zQHGd9-%I419`7Q?Q-8QwO9$&K)J*qv>Ty-jfVs!h*DdyEYir&jFPgerWIB~_TEr{< zMKZ9xrVP>ps$);7r4-WW9yVt=qWe3^KJ+duv|?z6B`GL!CPdXEDARxXZ#^=-0tZ$Elc!1L(_gmDx2P}0c^eG) z_LCZ4tXaqT_|N~2T3xJYDQN8jBq6~W8R70M%1v*1LvD8WFn1oui`w5qS9W*n9y za}VrILE*jId;C*)nSw_`m{kVh-~qUsM@t$acJP;qU#wf*_h6#`_VPGAvswwWkgT^4 zXCn)4U6y3C5{*K@B}W~Y46q!}P(m^4{|L(>1hNxL{|Ywk>^{#-#!arRX$m@$0E2Ho zBloY8CWphc^)@Gmm3o=Qs_*qN_$~ZKU=7p?eQtB5ZA6N|NmCX$g8f%BGU_ZGZqAz` zo{kD8n%g#Wr1X7!WDmxU2WAzkjn|q{c-?NwA2hSG59;mhdPkDWeh?h1LlQy5hYCXOP?S{l?xzJk~-Mj1C;4usmUMI6X(`q7d;V^3+LL5l})6#myKtQ*wHt zoGQ_S>knDiHRG38R`SkofE772r-sBZjP;6Kk5^wh;6^5`=XaY{@zw4v}e#C zD>}^X?Np@(`+P%B&RQ2}iTxisU_HReyckCpFuSig-i!3f= z>UqPiW)l^&Fb)_3ga2UcAG&NsGh14kxB5N$Tq*|~&sfLlq4LH^1mGAv$G7uA2J`g+ zOjZpG@!!9`7pojVsNL5}^{o@_iBGFh$5(z?ujNBZ*g5rLK+wD5?zrBU{&y1UPZUWJ zi0;VIM~oU=m5p1WwHr6B3^U$$L}kouFa_?3d`sy?}A-7=TTZIoNi!ipemv(U=}W|2KbN2^M~e&1m+(OfH!r&n}K zF0qfAGs3O)ma7{YoDTxmGyR$R-SZ~d-~h6q6k)b47Dr%4{2uqcyG@U87I^_AISjIg zToR4nnWAmOCvN?+%OI~yax}#?O8`G-O6knc`r%T4Arf5-5jWW6a^ne@s3V=z0M~Mo ze-5omOaO|dVX*$Ax*EK?{YG=2&^jJqz<>aQg7$|M^;iO2AC1o=WP+o<2x6-Eoa+9+ z`8$0?>#aRH4kGqUnp(I`vWfbZo8B1aX-C8d;OcZs&dZvPmj^I1cgh#cI1mz#-RWLy z`6z_uW})|uo;8WGx+F1BW}!D!>_+%H&D~zC`R#a?V;o z>9s}Jjps-Qo$)svx{j$BQ#*)Df_N$lK`zG}Af7kio_r7wjN!49cmffXZOBGuNPd|l zRH)8~U=9k*Iuc6Pv`WbZ zUn}78d7|BL;dvHf5HNlZcOo}`z7m$Z{Vm$E^-wn|%w(Ql3n=VFwE5AeFsc(awZQ21 z6!1~Dumt={UEQwEHTTJdO6By7)K$R2)Jj_%!#g<%d!Aq3Nkag;s&-b`+|iSU{4tndBUI-hnf24`Fwb@I%c{ zup1Uh;xto96q&g~RAsVe@KOwL+Nt&+h14L5<+Bw8QJj@UXgyduxa8EOllnJD=4b~` z&#>TsbVIjzbWJm~)y8eL{=ROGpe7^~TC*)~A~ymh${fsp;Q9U^qh9ew+m^B4-vEH7 zxvLspI??lS9qI0@C3L;b1Qz+R@4(tA_rEhL2ZuoN31W_Ca9u#Ug2m?5^`KLQ&Z4P~ z+rQ{x_}+*lV(f^3+ASsp-~ZrpB~T;qT=8gVf#?7ZNJu>Y=Y5E1tSkyz+URa!Y`_|y z5-|1QKPnSIVGj$#Ff}u>a)?u-QnWs6oXu?3ciQ9}_sOf0XqER^eX&JC=JFa+H8T@m zYTNw!4)=BIl6Wvy`CQ3AXiKPXf3%E(qV($V6OxOIqd<}ikie%K*?$~G!thqA6U$f4 zk61@ynW|@_70_@ssSvBy141scgE3OBc`-tPTp&k%9#4bB^Jj~*ICHZ`*lMtk_>%T0 z`C1%N$AE?bArN+%U0=LS#Xvl^>oh5KzVev+>GU?$Z8bdJ zzotSx-`xi79*I91=5D1#Cc%B{=He%aQ?G1xf2tXNhhgYc= zJu^^zqX6{gGT-t3sX=tj$5#|z9|Z3%iJye4HamO-(%H-Uf%n^9?i3tS>Eyv>GF$vZ z#t)wh%EM#HIN$eeBI^sg!v{K_`Wb}u&W^m!!5EKlojE+WvUyXrkKPhG{4(T#$(?(! zomISzQY!-vn{|O{k_e#(C7NB?xIfwyslgUU9_(QxSsZ`bdNkA89(T*y&*e&75z-Qx ztzU0D3ML?gg=0yp$>vjU9L>!LGkdhz6P3EdIRV*{9&E84=b4&wW$4puCHghQacy$E@1icot!w7L(fPe#$OZ$@sV0e=5?x3m6C8(&Vz`Dfg(ef?V z%}o>?@s^ONvOWK*Gz$okgkAvh{wO8O5f1viyFhvcI*a=WEH22$HDyH z?;_H+FCzwvH`*ELrLNY?U3kgf~ZH5KgIXEp)4WlNJ%s zqDxcgwVIwF&xsLVLRiXZHjH>(V^t|Zn!*$etIv4FJ~y1)P>PWE?!X>HJ@{B(CID0C z7bKiG4@r6%x;KHxy0R;f`1h$LnKSb2?nGal#*yC8G!hX>Tyg~3Zc%K(G!qHP81Y2J z(3vcq%zM^bo3RfTD+>ieHS{CO4Cs zvj;=YY2SXDl=BP=E2fw+fJ#hU74RvraoMGK)f1x0WvS$4@jqZOxNYzA;}V3=W8jzV z>rON{;84(d-X*bcf69P>xW5z(Ny))hS7l)FIF|NLUW0z#c zCC9UhY?P!y0A@GsG=Kp0@j?%9A5j5uMDs*|_H2&7&AtDs9~)Y(@q7)pH`O5B{*b0AmX=9k273`2QJ24fOkEHm1`fuo}6@>ekvu>S4B(s)XMS1 zLaK`_$8)rEsuY~z*U$u4ajpBAX5wTPxNynz)#G$D#eo&Aw>d~urmeQZFT)$JVo-~D zYYbS}Ov{BII;f~r?{t3~-R%a5c>9j@+F$^~_SUiVe%Zr`FOJh>7|B_=&ESB}HFDEm z)^xRzhLGUSCo2Yjap@m!68E2lfHZ)E!~)y^IJBTSj1_1(EEiRC*r{>kli7|Z7`koh)_?;RD=e%TR&-fvcUk?#R3y4IfxvGAb|~&sAsc3#I6^~2 z#LBItQ5Jf%Mv9;2RCu8r(w5x9ofV2EnNGdwc74NV?n|h`B!k>^b>%e!8C89?sE9?; z^01WF0|}$nQO$HYzgAsoWI}#k?ztyZ)<45kRfO8S4o!}ko}N~xvS0E-(x$OoeTlEf z0-}60#l`cg5n5s{ZCAX5q>-YQ&=jX7vd?{Ct8wJOu%D=R<*6)7- z_0_zr?2)Sb+LzFUwcgiBcC<)TZ=aBeY@$lDC)sXQuCYi`68(z>5=fRH`@6lX-P*67 z(bUa*{-5UN?EW{>e>Z*N7SO4UcTc<*P2eEHfqY($hl@)7(u2*hffy@IO{vfb4S7dJ z1t{#)D8HZm!LNyw33~^4rk_LO)8(fr>J@rE`dCkU7A6GSNZvi~o_Q(ENp8OB2&nz} zzUa0*b|~8yLFn$9sAe_9$Fgj!%_81uuD9k(yTUq&2_?keXv4wbqS(8JsdsoF;i`J% zLp(HZVGZ}eP>F}m6Crl}g;Oy?tlupp9*ZD9YF7x|qvlGPS zX52T**FO>jTv-qLK$OaVpejp#jZ$yEI5jR0>r>~VJy+lKbQECT&=(9j7^4!s39Hw3 zVpHL;ss9|@uEX`dQf~Xx$F@SG>*uIp6_m~+nyQ>!nc^mhW`Ic7vQ`SRVt1I0BMtrr zFPH%5*WNBS--PT@+jGV-H#CRi8SZL&0i0and^W+eeY)o%m+6S9L>r3uA&#{5RDXbh zBzrY=w+ScBqrwllyFPHcE8BPQwI-XIflB<#QCy0xgDb$|j|l;qjoJlrbr!|CTuzq!S7$bYFHQ`5dE_@VW1O zk3*gY78Jam92-6rj_S2pk%_4u&YO4^n!iv72Ltl%WZoQK(a~mZU!mu{iy1m`gV4q7 zO87g;IgWxF{L3li&w7WF7{Le@+{wB7v+!gqIfHkj88q+96sLByL{g9VpI@VB z3$@W|tnu-df!K#Yun{v}?%zzDkh82RSL&psz2unhshP@jL?udm2A#x~voM+7z4McM z_Y30{+qF$wW7YB2D46^6@k`q0u$9R6R1@rlHiqJVpw?43XaxO3L;%;TC2~niJ~ukX zf!LzS$IV+ATZWDE6{GFluSt4s03F~4$c7GWtM&H`I;{DR{3J?doq$D{SPok$V08xK z;~v|s>*ZtuJbEHCG)?tloB}fV69-vc8gTNNC!?p2PGhrh-syvlB^FYUk%0rmScZT* z90%*i%RP3B6FCrIZKF@VyUsW%u$T!nady*b^2~?TyO_5h9Q@V* zUQ(Cru6x4F#pZ+c4WZ|H!rsl8qBW8ube1f4#4}R%D)N6jDt~pY>)vwuEfMy`D1wR?8pm8eR$f-*Ua_ms^kBw1uz$O$$dTtQpo3VOiA7yTo}8YiF^EZ^*`0Iadyw`ko!_s zFLqVET#vZYco8;3c(-nr7trn4TBC9t> zX<;G0Me@NWNVl&FdhX03R9BJ z;F?+mN>ZNQDKAgU!g8FJuDJ~U_Z=SSoMtpi++cK!7$>{D$a{3(yAFceJitm?`oHZg zk1A(dupnOVu%r%=65HH$VUN{xM~92KBp%!`v=pNgDjSNh>RcJSMy|^}gL#EzO`o{u z{p3xa*gWOWg(uzn*RO;W+yG}{Hqutd3d0?M@4TZyed z_z|JCwH-1DU!9U+q-ta?krgL206?cqKk)i%13~zU<$6wIxRf@`o<~pO-F6_Rlc=0* zHU%@Gkp~X+$m3My+Wa$-dDz7~X}x>qI>Q}ADaRPo5fgZeEJ=pzYa2AcJ) zhXSF9G-FG+Ey2B)Vq#=DK8$XpEZzKymeABS2odE@AGV>xyzYh$@L zhRF3_VlhzyDND6|8$KF+P;_MCN+V2do5UeC@UqINtNe#!q%D_gX?z8`mus6k3`Wyf zN1C!28vzE;L6|phE>q(1!!^IZ!Ix_{TxAPpg$nq52l7>^Ehe2E1`y`ri1vLDi;~cb zKR&o!PeS!FI5p>ghbd`tB-CqbHeqyr;Jl6gt%;n;X+ zVxY4xT07_xXmW0NJW|GLw{>pFkqN9scIoP@y9)dm5pva5=^i1pJ?ZSWG$2GR`5>V! zfT|_crH3@uQvO|p6nO8qHMuAN7m1*M-_$Cm@bbt!c>}=c4TsoLj&$;)Vf-_Lo8Q`Y zD-kB&K3(n6CmpvI4~b68`&w+ZE(o~e+XQGzVI;{(l^yj>HxLlmOB@VjJ3n5iNJ$r- zp4xRN4LI$h$Qk8j>&zRUb258Epto`qzbUooj;SrzS)de1oKsMWQ&;*HZ`mtEV--0% z)efDW{SjfJ`O zAXZ~V0ks{dNmut`xg-cf=MM)&F}HC;LDpR}A88<4zxHg{djFXjL)cZ6jGW~9aA9c* zBm%$j9poe>RcrQ69?A)zvL3;>m`wXxt0+{o6i-TXetvuQ`p0tKdZ+iVCy>q(w@}qT zx0%CgWVFQY+tV?OuaPII%JL-)wo9a7AdJrtHqrw{+A%fW6aM<LYN}F)1TYaZxmZiV!Np|AQgO%Q_+x%D_o~~G9-L#a z5q(`O-@lbtAekqDs6@BVpgkA0P^n?YC}mP5B5YGZaQ1vVnd1GP>}+`sUC#8k+53tF zx9Z5;RtBsh2#2-6W9~5~cMiQ?J02EqrrtT_CUg?DLncEd*ea7Gib8i-`$@f+?sa)k zI#x9+J?)%Ht(SnSsy36()C+3VsV8%Tf)(85h2*OR=;a$>A7dEwu9t5YwQ|6Rw6z*W zv7lh{;~PRYxV+9WkF-NKi#sm3JeOOlTZ?b2Eq^{V$b4V+Tp^+|m zCYPCq`yshXhO?!poH2Ny#_1H_T-g;Tb0pu75`Jl)ER(|E_;?$iT*l2zT(n$%BOww9 z{Ssn$Yi;=n`o;~-WZ=c|m>B=>MMI`zc z9g1tR?sHGIhRj2NC=lturUuhhg@L|Wq~TN8vzFswG(IuD`#21~rNe{S*~H{+wShcW zkFWW1{Nm#s@d0(uSum{&1q?jey~cr#T9FL)!U3roNGblyf{5?U2K@Wxm6KNGdaFsO zk7PGgXsdOg3$yR^U+y;T6a z(P%~|sbJt$iC~_G#hzF5KXzZ@F(q#58O`YD-$SVq134aKyvMCR# z>`N^pGx2NUfIhP=VKQn(s++@{7B+wWMn>(esXTD^N}Yll#%4BgePH)8F_!pnJCU-F z!62577f&@H!1rLR2LN~yXp^4}`cQm4y1T2kwjgAiMDI?YxfDfr?7sfqW+J^#xn*@5 zM?}SP57{&2uv>ZB4{$~Wh7a7GT~!$Pw(Gx(rK*EyMJgl=44>&X-+l*X5!!BK&SRnN zj7Opqvl|QBgfbw@~cX3(u|EFuzRFh65;p4*Y26n9*ck zKcf0YSfjw!t>D!;ij?f=`x_Vu44A~k#1gyhcOZF^+x>{-l+B#Iz_{PIxlL!f#t2ru z`l4?v%?k)v7y*Nrp;J2LD$N(M%S}0?KiDW!9i#acWe0@YTAgc8M1=oob+N!wD-RE7 zb60zN+9mLVXvtK+J=~>;JV$c?ooUx{9m`zK0?uov%->i_kn0C%-1Ah678 z!}zPnfqYsJ9`A>^;XbbQSf^BkeVRGex0b@KI{~CXYK}e5C zAoXlb#$FEu6_xhx+~+(i&BfzfX6xyiqVr{>vfGc0jD!Od4D3db z`TwEm9HTPr-Zq|X8XmX|ii-YBJvI`LFffAF2-?w%x-G-=0O^=aY! z}LO1215=~kKv>q>WsxOpH7;7|%mh$xNf`W- zKNYTZg4_wCp5a;!J}W2%@>X|zn~dJg<&R-8Hn#k8V?TatF+zEOuXXC8S zlyPfV{RsGN*URowX>gIrLWwN~qzVQziJ^n`Q_K)X@=5% zfhaleD=a)#?$JOnUuHJ#*#c=05~1v+L{kRCB@pi^P_3c=)B9eP$&J|6m50Md3k55E zU=QGpO=nD#l0&pPMiK{1*f8mDCcWG@bMjpxMTTl3tY0AAf!ZF{P(NiWI+5@WSAeOa zEKga|YsK+PII1#$f$2cBa3}pkicMO^VQNDggiak3w}h*gVVHBu{-IY$uU&btZ9RdR z?i8m?``3N#em@E_ROU!?<^={)8~z3Q?T4xL&%r-(+#J%U!7Vz9h=z(gqpj9EhiIdG zUqh{VQozT%pKjYvw{k`5*f^0l2rMK}J}#@ztbJ@d6ELAKq`~h-S127$vKZArI`IX+ z6vzd!#tfqzC| z+YpH4BNvoI-X8WJhQj%y5l;#G7