From 0b5e8d895e8234a801bbd43cd90d94373f918564 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Mon, 3 Sep 2018 18:38:21 +0300 Subject: [PATCH 01/23] Changed the place of index_to_slices to more logical place --- GPy/kern/src/ODE_UY.py | 2 +- GPy/kern/src/ODE_UYC.py | 2 +- GPy/kern/src/ODE_st.py | 2 +- GPy/kern/src/ODE_t.py | 2 +- GPy/kern/src/independent_outputs.py | 28 +---------------------- GPy/kern/src/multioutput_kern.py | 2 +- GPy/kern/src/splitKern.py | 2 +- GPy/likelihoods/multioutput_likelihood.py | 2 +- GPy/util/multioutput.py | 27 ++++++++++++++++++++++ 9 files changed, 35 insertions(+), 34 deletions(-) diff --git a/GPy/kern/src/ODE_UY.py b/GPy/kern/src/ODE_UY.py index 19fb1e944..2604773cc 100644 --- a/GPy/kern/src/ODE_UY.py +++ b/GPy/kern/src/ODE_UY.py @@ -2,7 +2,7 @@ # Licensed under the BSD 3-clause license (see LICENSE.txt) from .kern import Kern -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np diff --git a/GPy/kern/src/ODE_UYC.py b/GPy/kern/src/ODE_UYC.py index 57c41767d..413c874a4 100644 --- a/GPy/kern/src/ODE_UYC.py +++ b/GPy/kern/src/ODE_UYC.py @@ -5,7 +5,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices class ODE_UYC(Kern): def __init__(self, input_dim, variance_U=3., variance_Y=1., lengthscale_U=1., lengthscale_Y=1., ubias =1. ,active_dims=None, name='ode_uyc'): diff --git a/GPy/kern/src/ODE_st.py b/GPy/kern/src/ODE_st.py index 0b4fecae5..b7f0358af 100644 --- a/GPy/kern/src/ODE_st.py +++ b/GPy/kern/src/ODE_st.py @@ -4,7 +4,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices class ODE_st(Kern): diff --git a/GPy/kern/src/ODE_t.py b/GPy/kern/src/ODE_t.py index f09ab77da..51a17aeba 100644 --- a/GPy/kern/src/ODE_t.py +++ b/GPy/kern/src/ODE_t.py @@ -2,7 +2,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices class ODE_t(Kern): diff --git a/GPy/kern/src/independent_outputs.py b/GPy/kern/src/independent_outputs.py index db6f9d378..c93d689f2 100644 --- a/GPy/kern/src/independent_outputs.py +++ b/GPy/kern/src/independent_outputs.py @@ -5,34 +5,8 @@ from .kern import CombinationKernel import numpy as np import itertools +from GPy.util.multioutput import index_to_slices -def index_to_slices(index): - """ - take a numpy array of integers (index) and return a nested list of slices such that the slices describe the start, stop points for each integer in the index. - - e.g. - >>> index = np.asarray([0,0,0,1,1,1,2,2,2]) - returns - >>> [[slice(0,3,None)],[slice(3,6,None)],[slice(6,9,None)]] - - or, a more complicated example - >>> index = np.asarray([0,0,1,1,0,2,2,2,1,1]) - returns - >>> [[slice(0,2,None),slice(4,5,None)],[slice(2,4,None),slice(8,10,None)],[slice(5,8,None)]] - """ - if len(index)==0: - return[] - - #contruct the return structure - ind = np.asarray(index,dtype=np.int) - ret = [[] for i in range(ind.max()+1)] - - #find the switchpoints - ind_ = np.hstack((ind,ind[0]+ind[-1]+1)) - switchpoints = np.nonzero(ind_ - np.roll(ind_,+1))[0] - - [ret[ind_i].append(slice(*indexes_i)) for ind_i,indexes_i in zip(ind[switchpoints[:-1]],zip(switchpoints,switchpoints[1:]))] - return ret class IndependentOutputs(CombinationKernel): """ diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index b7feaadb1..2c26d5445 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -1,7 +1,7 @@ from .kern import Kern, CombinationKernel import numpy as np from functools import reduce, partial -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices from paramz.caching import Cache_this class ZeroKern(Kern): diff --git a/GPy/kern/src/splitKern.py b/GPy/kern/src/splitKern.py index 324178d45..43461230f 100644 --- a/GPy/kern/src/splitKern.py +++ b/GPy/kern/src/splitKern.py @@ -4,7 +4,7 @@ import numpy as np from .kern import Kern, CombinationKernel -from .independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices import itertools class DEtime(Kern): diff --git a/GPy/likelihoods/multioutput_likelihood.py b/GPy/likelihoods/multioutput_likelihood.py index 2b4075719..85845dda8 100644 --- a/GPy/likelihoods/multioutput_likelihood.py +++ b/GPy/likelihoods/multioutput_likelihood.py @@ -14,7 +14,7 @@ from ..core.parameterization import Param from paramz.transformations import Logexp from ..core.parameterization import Parameterized -from ..kern.src.independent_outputs import index_to_slices +from GPy.util.multioutput import index_to_slices import itertools class MultioutputLikelihood(MixedNoise): diff --git a/GPy/util/multioutput.py b/GPy/util/multioutput.py index 2233dbb63..912278388 100644 --- a/GPy/util/multioutput.py +++ b/GPy/util/multioutput.py @@ -2,6 +2,33 @@ import warnings import GPy +def index_to_slices(index): + """ + take a numpy array of integers (index) and return a nested list of slices such that the slices describe the start, stop points for each integer in the index. + + e.g. + >>> index = np.asarray([0,0,0,1,1,1,2,2,2]) + returns + >>> [[slice(0,3,None)],[slice(3,6,None)],[slice(6,9,None)]] + + or, a more complicated example + >>> index = np.asarray([0,0,1,1,0,2,2,2,1,1]) + returns + >>> [[slice(0,2,None),slice(4,5,None)],[slice(2,4,None),slice(8,10,None)],[slice(5,8,None)]] + """ + if len(index)==0: + return[] + + #contruct the return structure + ind = np.asarray(index,dtype=np.int) + ret = [[] for i in range(ind.max()+1)] + + #find the switchpoints + ind_ = np.hstack((ind,ind[0]+ind[-1]+1)) + switchpoints = np.nonzero(ind_ - np.roll(ind_,+1))[0] + + [ret[ind_i].append(slice(*indexes_i)) for ind_i,indexes_i in zip(ind[switchpoints[:-1]],zip(switchpoints,switchpoints[1:]))] + return ret def get_slices(input_list): num_outputs = len(input_list) From f4629c89cd37726bbbd92012ce747b0ed9905c91 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 14:11:29 +0300 Subject: [PATCH 02/23] Minor change to updating of gradients in multioutput kernel --- GPy/kern/src/kern.py | 6 ++++++ GPy/kern/src/multioutput_kern.py | 8 ++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/GPy/kern/src/kern.py b/GPy/kern/src/kern.py index 8da3fbfb1..bf0062afb 100644 --- a/GPy/kern/src/kern.py +++ b/GPy/kern/src/kern.py @@ -200,6 +200,12 @@ def update_gradients_full(self, dL_dK, X, X2): def reset_gradients(self): raise NotImplementedError + + def get_gradient(self): + return self.gradient.copy() + + def append_gradient(self,gradient): + self.gradient += gradient def update_gradients_expectations(self, dL_dpsi0, dL_dpsi1, dL_dpsi2, Z, variational_posterior): """ diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index 2c26d5445..bc2a3a8c1 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -94,14 +94,14 @@ def Kdiag(self,X): return target def _update_gradients_full_wrapper(self, cov_struct, dL_dK, X, X2): - gradient = cov_struct['kern'].gradient.copy() + gradient = cov_struct['kern'].get_gradient() cov_struct['update_gradients_full'](dL_dK, X, X2) - cov_struct['kern'].gradient += gradient + cov_struct['kern'].append_gradient(gradient) def _update_gradients_diag_wrapper(self, kern, dL_dKdiag, X): - gradient = kern.gradient.copy() + gradient = kern.get_gradient() kern.update_gradients_diag(dL_dKdiag, X) - kern.gradient += gradient + kern.append_gradient(gradient) def reset_gradients(self): for kern in self.kern: kern.reset_gradients() From d862fc71e25aa50e00c521f6370a3a7233f8101a Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 14:47:11 +0300 Subject: [PATCH 03/23] Added new link-function to enable derivative sign values as in Riihimaki & Vehtari (2010) paper --- GPy/likelihoods/link_functions.py | 32 ++++++++++++++++++++++++++++++ GPy/testing/link_function_tests.py | 8 +++++++- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/GPy/likelihoods/link_functions.py b/GPy/likelihoods/link_functions.py index 0eb05e744..0554bd938 100644 --- a/GPy/likelihoods/link_functions.py +++ b/GPy/likelihoods/link_functions.py @@ -138,6 +138,38 @@ def to_dict(self): input_dict["class"] = "GPy.likelihoods.link_functions.Probit" return input_dict +class ScaledProbit(Probit): + """ + .. math:: + g(f) = \\Phi^{-1} (nu*mu) + """ + def __init__(self, nu=1.): + self.nu = float(nu) + + def transf(self,f): + return std_norm_cdf(f*self.nu) + + def dtransf_df(self,f): + return std_norm_pdf(f*self.nu)*self.nu + + def d2transf_df2(self,f): + return -(f*self.nu) * std_norm_pdf(f*self.nu)*(self.nu**2) + + def d3transf_df3(self,f): + return (safe_square(f*self.nu)-1.)*std_norm_pdf(f*self.nu)*(self.nu**3) + + def to_dict(self): + """ + Convert the object into a json serializable dictionary. + + Note: It uses the private method _save_to_input_dict of the parent. + + :return dict: json serializable dictionary containing the needed information to instantiate the object + """ + + input_dict = super(ScaledProbit, self)._save_to_input_dict() + input_dict["class"] = "GPy.likelihoods.link_functions.ScaledProbit" + return input_dict class Cloglog(GPTransformation): """ diff --git a/GPy/testing/link_function_tests.py b/GPy/testing/link_function_tests.py index 9f41f7360..8f3525b01 100644 --- a/GPy/testing/link_function_tests.py +++ b/GPy/testing/link_function_tests.py @@ -2,11 +2,12 @@ import scipy from scipy.special import cbrt from GPy.models import GradientChecker +import random _lim_val = np.finfo(np.float64).max _lim_val_exp = np.log(_lim_val) _lim_val_square = np.sqrt(_lim_val) _lim_val_cube = cbrt(_lim_val) -from GPy.likelihoods.link_functions import Identity, Probit, Cloglog, Log, Log_ex_1, Reciprocal, Heaviside +from GPy.likelihoods.link_functions import Identity, Probit, Cloglog, Log, Log_ex_1, Reciprocal, Heaviside, ScaledProbit class LinkFunctionTests(np.testing.TestCase): def setUp(self): @@ -123,6 +124,11 @@ def test_probit_gradients(self): link = Probit() lim_of_inf = _lim_val self.check_gradient(link, lim_of_inf, test_lim=True) + + def test_scaledprobit_gradients(self): + link = ScaledProbit(nu=random.random()) + lim_of_inf = _lim_val + self.check_gradient(link, lim_of_inf, test_lim=True) def test_Cloglog_gradients(self): link = Cloglog() From 4988aad0dd2091f15cce2a87b219f907372ec2f7 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 15:28:22 +0300 Subject: [PATCH 04/23] New covariance function for using partial derivatives of covariance functions as kernels --- GPy/kern/__init__.py | 3 +- GPy/kern/src/diff_kern.py | 70 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 GPy/kern/src/diff_kern.py diff --git a/GPy/kern/__init__.py b/GPy/kern/__init__.py index 1fedb3141..1119582d5 100644 --- a/GPy/kern/__init__.py +++ b/GPy/kern/__init__.py @@ -43,4 +43,5 @@ from .src.sde_static import sde_White, sde_Bias from .src.sde_stationary import sde_RBF,sde_Exponential,sde_RatQuad from .src.sde_brownian import sde_Brownian -from .src.multioutput_kern import MultioutputKern \ No newline at end of file +from .src.multioutput_kern import MultioutputKern +from .src.diff_kern import DiffKern \ No newline at end of file diff --git a/GPy/kern/src/diff_kern.py b/GPy/kern/src/diff_kern.py new file mode 100644 index 000000000..8f505b4a1 --- /dev/null +++ b/GPy/kern/src/diff_kern.py @@ -0,0 +1,70 @@ +from .kern import CombinationKernel +import numpy as np +from paramz.caching import Cache_this + +# A thin wrapper around the base kernel to tell that we are dealing with a partial derivative of a Kernel +class DiffKern(CombinationKernel): + def __init__(self, base_kern, dimension): + super(DiffKern, self).__init__([base_kern], 'DiffKern') + self.base_kern = base_kern + self.dimension = dimension + self._gradient_array_ = self.base_kern._gradient_array_ + self.gradient = self.base_kern.gradient + + def parameters_changed(self): + self.base_kern.parameters_changed() + + @Cache_this(limit=3, ignore_args=()) + def K(self, X, X2=None, dimX2 = None): #X in dimension self.dimension + if X2 is None: + X2 = X + if dimX2 is None: + dimX2 = self.dimension + return self.base_kern.dK2_dXdX2(X,X2, self.dimension, dimX2) + + @Cache_this(limit=3, ignore_args=()) + def Kdiag(self, X): + return np.diag(self.base_kern.dK2_dXdX2(X,X, self.dimension, self.dimension)) + + @Cache_this(limit=3, ignore_args=()) + def dK_dX_wrap(self, X, X2): #X in dimension self.dimension + return self.base_kern.dK_dX(X,X2, self.dimension) + + @Cache_this(limit=3, ignore_args=()) + def dK_dX2_wrap(self, X, X2): #X in dimension self.dimension + return self.base_kern.dK_dX2(X,X2, self.dimension) + + def reset_gradients(self): + self.base_kern.reset_gradients() + + def get_gradient(self): + return self.base_kern.gradient.copy() + + def append_gradient(self, gradient): + self.base_kern.gradient += gradient + + def update_gradients_full(self, dL_dK, X, X2=None, dimX2=None): + if dimX2 is None: + dimX2 = self.dimension + gradients = self.base_kern.dgradients2_dXdX2(X,X2,self.dimension,dimX2) + self.base_kern.update_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + + def update_gradients_diag(self, dL_dK_diag, X): + gradients = self.base_kern.dgradients2_dXdX2(X,X, self.dimension, self.dimension) + self.base_kern.update_gradients_direct(*[self._convert_gradients(dL_dK_diag, gradient, f=np.diag) for gradient in gradients]) + + def update_gradients_dK_dX(self, dL_dK, X, X2=None): + if X2 is None: + X2 = X + gradients = self.base_kern.dgradients_dX(X,X2, self.dimension) + self.base_kern.append_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + + def update_gradients_dK_dX2(self, dL_dK, X, X2=None): + gradients = self.base_kern.dgradients_dX2(X,X2, self.dimension) + self.base_kern.append_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + + def _convert_gradients(self, l,g, f = lambda x:x): + if type(g) is np.ndarray: + return np.sum(f(l)*f(g)) + else: + return np.array([np.sum(f(l)*f(gi)) for gi in g]) \ No newline at end of file From 04033c1b324823ecf442562e44305a071448dd98 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 15:38:03 +0300 Subject: [PATCH 05/23] Made RBF-kernel compatible with diff-kernel --- GPy/kern/src/rbf.py | 90 ++++++++++++++++++++++++++++++++++++++ GPy/kern/src/stationary.py | 20 ++++++++- 2 files changed, 109 insertions(+), 1 deletion(-) diff --git a/GPy/kern/src/rbf.py b/GPy/kern/src/rbf.py index c17345d83..cbabcb993 100644 --- a/GPy/kern/src/rbf.py +++ b/GPy/kern/src/rbf.py @@ -6,6 +6,7 @@ from .stationary import Stationary from .psi_comp import PSICOMP_RBF, PSICOMP_RBF_GPU from ...core import Param +from paramz.caching import Cache_this from paramz.transformations import Logexp from .grid_kerns import GridRBF @@ -50,6 +51,27 @@ def to_dict(self): def K_of_r(self, r): return self.variance * np.exp(-0.5 * r**2) + @Cache_this(limit=3, ignore_args=()) + def dK_dX(self, X, X2, dimX): + r = self._scaled_dist(X, X2) + K = self.K_of_r(r) + dist = X[:,None,dimX]-X2[None,:,dimX] + lengthscale2inv = (np.ones((X.shape[1]))/(self.lengthscale**2))[dimX] + return -1.*K*dist*lengthscale2inv + @Cache_this(limit=3, ignore_args=()) + def dK_dX2(self, X, X2, dimX2): + return -self.dK_dX(X,X2, dimX2) + + @Cache_this(limit=3, ignore_args=()) + def dK2_dXdX2(self, X, X2, dimX, dimX2): + r = self._scaled_dist(X, X2) + K = self.K_of_r(r) + if X2 is None: + X2=X + dist = X[:,None,:]-X2[None,:,:] + lengthscale2inv = np.ones((X.shape[1]))/(self.lengthscale**2) + return -1.*K*dist[:,:,dimX]*dist[:,:,dimX2]*lengthscale2inv[dimX]*lengthscale2inv[dimX2] + (dimX==dimX2)*K*lengthscale2inv[dimX] + def dK_dr(self, r): return -r*self.K_of_r(r) @@ -58,6 +80,74 @@ def dK2_drdr(self, r): def dK2_drdr_diag(self): return -self.variance # as the diagonal of r is always filled with zeros + + @Cache_this(limit=3, ignore_args=()) + def dK_dvariance(self,X,X2): + return self.K(X,X2)/self.variance + + @Cache_this(limit=3, ignore_args=()) + def dK2_dvariancedX(self, X, X2, dim): + return self.dK_dX(X,X2, dim)/self.variance + + @Cache_this(limit=3, ignore_args=()) + def dK2_dvariancedX2(self, X, X2, dim): + return self.dK_dX2(X,X2, dim)/self.variance + + @Cache_this(limit=3, ignore_args=()) + def dK3_dvariancedXdX2(self, X, X2, dim, dimX2): + return self.dK2_dXdX2(X, X2, dim, dimX2)/self.variance + + @Cache_this(limit=3, ignore_args=()) + def dK2_dlengthscaledX(self, X, X2, dimX): + r = self._scaled_dist(X, X2) + K = self.K_of_r(r) + if X2 is None: + X2=X + dist = X[:,None,:]-X2[None,:,:] + lengthscaleinv = np.ones((X.shape[1]))/(self.lengthscale) + if self.ARD: + g = [] + for diml in range(X.shape[1]): + g += [-1.*K*dist[:,:,dimX]*(dist[:,:,diml]**2)*(lengthscaleinv[dimX]**2)*(lengthscaleinv[diml]**3) + 2.*dist[:,:,dimX]*(lengthscaleinv[diml]**3)*K*(dimX == diml)] + else: + g = -1.*K*dist[:,:,dimX]*np.sum(dist**2, axis=2)*(lengthscaleinv[dimX]**5) + 2.*dist[:,:,dimX]*(lengthscaleinv[dimX]**3)*K + return g + + @Cache_this(limit=3, ignore_args=()) + def dK2_dlengthscaledX2(self, X, X2, dimX2): + tmp = self.dK2_dlengthscaledX(X, X2, dimX2) + if self.ARD: + return [-1.*g for g in tmp] + else: + return -1*tmp + + @Cache_this(limit=3, ignore_args=()) + def dK3_dlengthscaledXdX2(self, X, X2, dimX, dimX2): + r = self._scaled_dist(X, X2) + K = self.K_of_r(r) + if X2 is None: + X2=X + dist = X[:,None,:]-X2[None,:,:] + lengthscaleinv = np.ones((X.shape[1]))/(self.lengthscale) + lengthscale2inv = lengthscaleinv**2 + if self.ARD: + g = [] + for diml in range(X.shape[1]): + tmp = -1.*K*dist[:,:,dimX]*dist[:,:,dimX2]*(dist[:,:,diml]**2)*lengthscale2inv[dimX]*lengthscale2inv[dimX2]*(lengthscaleinv[diml]**3) + if dimX == dimX2: + tmp += K*lengthscale2inv[dimX]*(lengthscaleinv[diml]**3)*(dist[:,:,diml]**2) + if diml == dimX: + tmp += 2.*K*dist[:,:,dimX]*dist[:,:,dimX2]*lengthscale2inv[dimX2]*(lengthscaleinv[dimX]**3) + if diml == dimX2: + tmp += 2.*K*dist[:,:,dimX]*dist[:,:,dimX2]*lengthscale2inv[dimX]*(lengthscaleinv[dimX2]**3) + if dimX == dimX2: + tmp += -2.*K*(lengthscaleinv[dimX]**3) + g += [tmp] + else: + g = -1.*K*dist[:,:,dimX]*dist[:,:,dimX2]*np.sum(dist**2, axis=2)*(lengthscaleinv[dimX]**7) +4*K*dist[:,:,dimX]*dist[:,:,dimX2]*(lengthscaleinv[dimX]**5) + if dimX == dimX2: + g += -2.*K*(lengthscaleinv[dimX]**3) + K*(lengthscaleinv[dimX]**5)*np.sum(dist**2, axis=2) + return g def __getstate__(self): dc = super(RBF, self).__getstate__() diff --git a/GPy/kern/src/stationary.py b/GPy/kern/src/stationary.py index 9fa3273db..f728e4aeb 100644 --- a/GPy/kern/src/stationary.py +++ b/GPy/kern/src/stationary.py @@ -212,7 +212,6 @@ def update_gradients_full(self, dL_dK, X, X2=None, reset=True): r = self._scaled_dist(X, X2) self.lengthscale.gradient = -np.sum(dL_dr*r)/self.lengthscale - def update_gradients_direct(self, dL_dVar, dL_dLen): """ Specially intended for the Grid regression case. @@ -222,6 +221,10 @@ def update_gradients_direct(self, dL_dVar, dL_dLen): """ self.variance.gradient = dL_dVar self.lengthscale.gradient = dL_dLen + + def append_gradients_direct(self, dL_dVar, dL_dLen): + self.variance.gradient += dL_dVar + self.lengthscale.gradient += dL_dLen def _inv_dist(self, X, X2=None): """ @@ -307,6 +310,21 @@ def gradients_XX_diag(self, dL_dK_diag, X): l4 = np.ones(X.shape[1])*self.lengthscale**2 return dL_dK_diag * (np.eye(X.shape[1]) * -self.dK2_drdr_diag()/(l4))[None, :,:]# np.zeros(X.shape+(X.shape[1],)) #return np.ones(X.shape) * d2L_dK * self.variance/self.lengthscale**2 # np.zeros(X.shape) + + def dgradients_dX(self, X, X2, dimX): + g1 = self.dK2_dvariancedX(X, X2, dimX) + g2 = self.dK2_dlengthscaledX(X, X2, dimX) + return [g1, g2] + + def dgradients_dX2(self, X, X2, dimX2): + g1 = self.dK2_dvariancedX2(X, X2, dimX2) + g2 = self.dK2_dlengthscaledX2(X, X2, dimX2) + return [g1, g2] + + def dgradients2_dXdX2(self, X, X2, dimX, dimX2): + g1 = self.dK3_dvariancedXdX2(X, X2, dimX, dimX2) + g2 = self.dK3_dlengthscaledXdX2(X, X2, dimX, dimX2) + return [g1, g2] def _gradients_X_pure(self, dL_dK, X, X2=None): invdist = self._inv_dist(X, X2) From 936fd1ff7192260484b6d21cc9f99c73ae58a8c8 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 15:39:03 +0300 Subject: [PATCH 06/23] Added tests for DiffKern (using RBF) --- GPy/testing/kernel_tests.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/GPy/testing/kernel_tests.py b/GPy/testing/kernel_tests.py index 1e11f6a6e..60287f315 100644 --- a/GPy/testing/kernel_tests.py +++ b/GPy/testing/kernel_tests.py @@ -7,7 +7,7 @@ import GPy from GPy.core.parameterization.param import Param import numpy as np - +import random from ..util.config import config @@ -482,6 +482,12 @@ def test_standard_periodic(self): k = GPy.kern.StdPeriodic(self.D) k.randomize() self.assertTrue(check_kernel_gradient_functions(k, X=self.X, X2=self.X2, verbose=verbose)) + + def test_diff(self): + k = GPy.kern.RBF(self.D, ARD=True) + k.randomize() + kd = GPy.kern.DiffKern(k, 0 ) + self.assertTrue(check_kernel_gradient_functions(kd, X=self.X, X2=self.X2, verbose=verbose)) def test_symmetric_even(self): k_base = GPy.kern.Linear(1) + GPy.kern.RBF(1) From 101e93b73e4cf7764c5ed94f6674473944dbfceb Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 15:42:40 +0300 Subject: [PATCH 07/23] Made EP faster for Binomial likelihood with Probit or ScaledProbit link functions by adding exact moments --- GPy/likelihoods/binomial.py | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/GPy/likelihoods/binomial.py b/GPy/likelihoods/binomial.py index 61440ec97..122cbcff1 100644 --- a/GPy/likelihoods/binomial.py +++ b/GPy/likelihoods/binomial.py @@ -66,7 +66,6 @@ def logpdf_link(self, inv_link_f, y, Y_metadata=None): np.testing.assert_array_equal(N.shape, y.shape) nchoosey = special.gammaln(N+1) - special.gammaln(y+1) - special.gammaln(N-y+1) - Ny = N-y t1 = np.zeros(y.shape) t2 = np.zeros(y.shape) @@ -177,6 +176,41 @@ def samples(self, gp, Y_metadata=None, **kw): def exact_inference_gradients(self, dL_dKdiag,Y_metadata=None): pass + + def moments_match_ep(self,obs,tau,v,Y_metadata_i=None): + """ + Calculation of moments using quadrature + :param obs: observed output + :param tau: cavity distribution 1st natural parameter (precision) + :param v: cavity distribution 2nd natural paramenter (mu*precision) + """ + #Compute first integral for zeroth moment. + #NOTE constant np.sqrt(2*pi/tau) added at the end of the function + if (isinstance(self.gp_link, link_functions.Probit) or isinstance(self.gp_link, link_functions.ScaledProbit)) and (Y_metadata_i is None or int(Y_metadata_i.get('trials', 1)) == int(1)): #Special case for probit likelihood. Can be found from Riihimaki et Vehtari 2010 + if isinstance(self.gp_link, link_functions.ScaledProbit): + nu = self.gp_link.nu + else: + nu = 1.0 + nu = self.gp_link.nu + mu = v/tau + sigma2 = 1./tau + t = np.asarray(1 + sigma2*(nu**2)) + t[t<1e-20] = 1e-20 + a = np.sqrt(t) + z = obs*mu/a + normc_z = max(self.gp_link.transf(z), 1e-20) + m0 = normc_z + normp_z = self.gp_link.dtransf_df(z) + m1 = mu + (obs*sigma2*normp_z)/(normc_z*a) + #print('tau: {}, v: {}, nu: {}, z: {}, normc_z: {}, normp_z: {}'.format(tau, v, nu.values, z, normc_z, normp_z)) + m2 = sigma2 - ((sigma2**2)*normp_z)/((1./(nu**2)+sigma2)*normc_z)*(z + normp_z/(nu**2)/normc_z) + #print("m0: {}, m1: {}, m2: {}".format(m0,m1,m2)) + #m0a, m1a, m2a = super(Binomial, self).moments_match_ep(obs,tau,v,Y_metadata_i) + #print("m0a: {}, m1a: {}, m2a: {}".format(m0a,m1a,m2a)) + return m0, m1, m2 + else: + return super(Binomial, self).moments_match_ep(obs,tau,v,Y_metadata_i) + def variational_expectations(self, Y, m, v, gh_points=None, Y_metadata=None): if isinstance(self.gp_link, link_functions.Probit): From 0daad96da11e6cd7689bd90203a5aba8ebaa3f4e Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 16:37:40 +0300 Subject: [PATCH 08/23] Added multioutput_gp model and tests for it --- GPy/models/__init__.py | 1 + GPy/models/multioutput_gp.py | 154 +++++++++++++++++++++++++++++++++++ GPy/testing/model_tests.py | 61 ++++++++++++++ 3 files changed, 216 insertions(+) create mode 100644 GPy/models/multioutput_gp.py diff --git a/GPy/models/__init__.py b/GPy/models/__init__.py index f7d80c616..3e788927b 100644 --- a/GPy/models/__init__.py +++ b/GPy/models/__init__.py @@ -30,3 +30,4 @@ from .gp_multiout_regression import GPMultioutRegression from .gp_multiout_regression_md import GPMultioutRegressionMD from .tp_regression import TPRegression +from .multioutput_gp import MultioutputGP diff --git a/GPy/models/multioutput_gp.py b/GPy/models/multioutput_gp.py new file mode 100644 index 000000000..468197cf0 --- /dev/null +++ b/GPy/models/multioutput_gp.py @@ -0,0 +1,154 @@ +# Copyright (c) 2012-2014, GPy authors (see AUTHORS.txt). +# Licensed under the BSD 3-clause license (see LICENSE.txt) + +import numpy as np +import itertools +from ..core.model import Model +from ..core.parameterization.variational import VariationalPosterior +from ..core.mapping import Mapping +from .. import likelihoods +from ..likelihoods.gaussian import Gaussian +from .. import kern +from ..inference.latent_function_inference import exact_gaussian_inference, expectation_propagation +from ..util.normalizer import Standardize +from .. import util +from paramz import ObsAr +from ..core.gp import GP + +from GPy.util.multioutput import index_to_slices +import logging +import warnings +logger = logging.getLogger("GP") + +class MultioutputGP(GP): + """ + General purpose Gaussian process model + :param X: input observations + :param Y: output observations + :param kernel: a GPy kernel, defaults to rbf+white + :param likelihood: a GPy likelihood + :param inference_method: The :class:`~GPy.inference.latent_function_inference.LatentFunctionInference` inference method to use for this GP + :rtype: model object + :param Norm normalizer: + normalize the outputs Y. + Prediction will be un-normalized using this normalizer. + If normalizer is None, we will normalize using Standardize. + If normalizer is False, no normalization will be done. + .. Note:: Multiple independent outputs are allowed using columns of Y + """ + def __init__(self, X_list, Y_list, kernel_list, likelihood_list, name='multioutputgp', kernel_cross_covariances={}, inference_method=None): + #Input and Output + X,Y,self.output_index = util.multioutput.build_XY(X_list,Y_list) + Ny = len(Y_list) + + assert isinstance(kernel_list, list) + kernel = kern.MultioutputKern(kernels=kernel_list, cross_covariances=kernel_cross_covariances) + + assert isinstance(likelihood_list, list) + likelihood = likelihoods.MultioutputLikelihood(likelihood_list) + + if inference_method is None: + if all([isinstance(l, Gaussian) for l in likelihood_list]): + inference_method = exact_gaussian_inference.ExactGaussianInference() + else: + inference_method = expectation_propagation.EP() + + super(MultioutputGP, self).__init__(X,Y,kernel,likelihood, Y_metadata={'output_index':self.output_index, 'trials':np.ones(self.output_index.shape)}, inference_method = inference_method)# expectation_propagation.MultioutputEP()) # expectation_propagation.EP()) + #expectation_propagation.MultioutputEP()) + + def predict_noiseless(self, Xnew, full_cov=False, Y_metadata=None, kern=None): + if isinstance(Xnew, list): + Xnew, _, ind = util.multioutput.build_XY(Xnew,None) + if Y_metadata is None: + Y_metadata={'output_index': ind, 'trials': np.ones(ind.shape)} + return super(MultioutputGP, self).predict_noiseless(Xnew, full_cov, Y_metadata, kern) + + def predict(self, Xnew, full_cov=False, Y_metadata=None, kern=None, likelihood=None, include_likelihood=True): + if isinstance(Xnew, list): + Xnew, _, ind = util.multioutput.build_XY(Xnew,None) + if Y_metadata is None: + Y_metadata={'output_index': ind, 'trials': np.ones(ind.shape)} + return super(MultioutputGP, self).predict(Xnew, full_cov, Y_metadata, kern, likelihood, include_likelihood) + + def predict_quantiles(self, X, quantiles=(2.5, 97.5), Y_metadata=None, kern=None, likelihood=None): + if isinstance(X, list): + X, _, ind = util.multioutput.build_XY(X,None) + if Y_metadata is None: + Y_metadata={'output_index': ind, 'trials': np.ones(ind.shape)} + return super(MultioutputGP, self).predict_quantiles(X, quantiles, Y_metadata, kern, likelihood) + + def predictive_gradients(self, Xnew, kern=None): + if isinstance(Xnew, list): + Xnew, _, ind = util.multioutput.build_XY(Xnew, None) + #if Y_metadata is None: + #Y_metadata={'output_index': ind} + return super(MultioutputGP, self).predictive_gradients(Xnew, kern) + + def predictive_gradients(self, Xnew, kern=None): #XNEW IS NOT A LIST!! + """ + Compute the derivatives of the predicted latent function with respect to X* + Given a set of points at which to predict X* (size [N*,Q]), compute the + derivatives of the mean and variance. Resulting arrays are sized: + dmu_dX* -- [N*, Q ,D], where D is the number of output in this GP (usually one). + Note that this is not the same as computing the mean and variance of the derivative of the function! + dv_dX* -- [N*, Q], (since all outputs have the same variance) + :param X: The points at which to get the predictive gradients + :type X: np.ndarray (Xnew x self.input_dim) + :returns: dmu_dX, dv_dX + :rtype: [np.ndarray (N*, Q ,D), np.ndarray (N*,Q) ] + """ + + if isinstance(Xnew, list): + Xnew, _, ind = util.multioutput.build_XY(Xnew, None) + + slices = index_to_slices(Xnew[:,-1]) + + for i in range(len(slices)): + if ((self.kern.kern[i].name == 'diffKern' ) and len(slices[i])>0): + assert 0, "It is not (yet) possible to predict gradients of gradient observations, sorry :)" + + if kern is None: + kern = self.kern + mean_jac = np.empty((Xnew.shape[0],Xnew.shape[1]-1,self.output_dim)) + for i in range(self.output_dim): + mean_jac[:,:,i] = kern.gradients_X(self.posterior.woodbury_vector[:,i:i+1].T, Xnew, self._predictive_variable)[:,0:-1] + + # gradients wrt the diagonal part k_{xx} + dv_dX = kern.gradients_X(np.eye(Xnew.shape[0]), Xnew)[:,0:-1] + #grads wrt 'Schur' part K_{xf}K_{ff}^{-1}K_{fx} + if self.posterior.woodbury_inv.ndim == 3: + tmp = np.empty(dv_dX.shape + (self.posterior.woodbury_inv.shape[2],)) + tmp[:] = dv_dX[:,:,None] + for i in range(self.posterior.woodbury_inv.shape[2]): + alpha = -2.*np.dot(kern.K(Xnew, self._predictive_variable), self.posterior.woodbury_inv[:, :, i]) + tmp[:, :, i] += kern.gradients_X(alpha, Xnew, self._predictive_variable) + else: + tmp = dv_dX + alpha = -2.*np.dot(kern.K(Xnew, self._predictive_variable), self.posterior.woodbury_inv) + tmp += kern.gradients_X(alpha, Xnew, self._predictive_variable)[:,0:-1] + return mean_jac, tmp + + def log_predictive_density(self, x_test, y_test, Y_metadata=None): + if isinstance(x_test, list): + x_test, y_test, ind = util.multioutput.build_XY(x_test, y_test) + if Y_metadata is None: + Y_metadata={'output_index': ind, 'trials': np.ones(ind.shape)} + return super(MultioutputGP, self).log_predictive_density(x_test, y_test, Y_metadata) + + def set_XY(self, X=None, Y=None): + if isinstance(X, list): + X, _, self.output_index = util.multioutput.build_XY(X, None) + if isinstance(Y, list): + _, Y, self.output_index = util.multioutput.build_XY(Y, Y) + + self.update_model(False) + if Y is not None: + self.Y = ObsAr(Y) + self.Y_normalized = self.Y + if X is not None: + self.X = ObsAr(X) + + self.Y_metadata={'output_index': self.output_index, 'trials': np.ones(self.output_index.shape)} + if isinstance(self.inference_method, expectation_propagation.EP): + self.inference_method.reset() + self.update_model(True) \ No newline at end of file diff --git a/GPy/testing/model_tests.py b/GPy/testing/model_tests.py index 9187f209c..bd4385695 100644 --- a/GPy/testing/model_tests.py +++ b/GPy/testing/model_tests.py @@ -1180,6 +1180,67 @@ def test_posterior_covariance_missing_data(self): with self.assertRaises(RuntimeError): m.posterior_covariance_between_points(np.array([[1], [2]]), np.array([[3], [4]])) + + def test_multioutput_model_with_derivative_observations(self): + f = lambda x: np.sin(x)+0.1*(x-2.)**2-0.005*x**3 + fd = lambda x: np.cos(x)+0.2*(x-2.)-0.015*x**2 + N=10 + M=10 + sigma=0.05 + sigmader=0.05 + x = np.array([np.linspace(1,10,N)]).T + y = f(x) + np.array(sigma*np.random.normal(0,1,(N,1))) + + xd = np.array([np.linspace(2,8,M)]).T + yd = fd(xd) + np.array(sigmader*np.random.normal(0,1,(M,1))) + + # squared exponential kernel: + se = GPy.kern.RBF(input_dim = 1, lengthscale=1.5, variance=0.2) + # We need to generate separate kernel for the derivative observations and give the created kernel as an input: + se_der = GPy.kern.DiffKern(se, 0) + + #Then + gauss = GPy.likelihoods.Gaussian(variance=sigma**2) + gauss = GPy.likelihoods.Gaussian(variance=0.1) + gauss_der = GPy.likelihoods.Gaussian(variance=sigma**2) + + # Then create the model, we give everything in lists, the order of the inputs indicates the order of the outputs + # Now we have the regular observations first and derivative observations second, meaning that the kernels and + # the likelihoods must follow the same order + m = GPy.models.MultioutputGP(X_list=[x, xd], Y_list=[y, yd], kernel_list=[se, se_der], likelihood_list = [gauss, gauss]) + m.randomize() + self.assertTrue(m.checkgrad()) + + m.optimize(messages=0, ipython_notebook=False) + + self.assertTrue(m.checkgrad()) + + def test_multioutput_model_with_ep(self): + f = lambda x: np.sin(x)+0.1*(x-2.)**2-0.005*x**3 + fd = lambda x: np.cos(x)+0.2*(x-2.)-0.015*x**2 + N=10 + sigma=0.05 + sigmader=0.05 + x = np.array([np.linspace(1,10,N)]).T + y = f(x) + np.array(sigma*np.random.normal(0,1,(N,1))) + + M=7 + xd = np.array([np.linspace(2,8,M)]).T + yd = 2*(fd(xd)>0) -1 + + # squared exponential kernel: + se = GPy.kern.RBF(input_dim = 1, lengthscale=1.5, variance=0.2) + # We need to generate separate kernel for the derivative observations and give the created kernel as an input: + se_der = GPy.kern.DiffKern(se, 0) + + #Then + gauss = GPy.likelihoods.Gaussian(variance=sigma**2) + probit = GPy.likelihoods.Binomial(gp_link = GPy.likelihoods.link_functions.ScaledProbit(nu=100)) + + # Then create the model, we give everything in lists + m = GPy.models.MultioutputGP(X_list=[x, xd], Y_list=[y, yd], kernel_list=[se, se_der], likelihood_list = [gauss, probit], inference_method=GPy.inference.latent_function_inference.EP(ep_mode="nested")) + + self.assertTrue(m.checkgrad()) def _create_missing_data_model(kernel, Q): D1, D2, D3, N, num_inducing = 13, 5, 8, 400, 3 From 9a6e645bc678d4b70aca2c17ab52e8ea95905989 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 17:49:33 +0300 Subject: [PATCH 09/23] Added Multioutput derivative kernel for adding derivatives easy and changed it to default kernel in multioutput gp model --- GPy/kern/__init__.py | 1 + GPy/kern/src/multioutput_derivative_kern.py | 81 +++++++++++++++++++++ GPy/models/multioutput_gp.py | 5 +- 3 files changed, 84 insertions(+), 3 deletions(-) create mode 100644 GPy/kern/src/multioutput_derivative_kern.py diff --git a/GPy/kern/__init__.py b/GPy/kern/__init__.py index 1119582d5..0b769e0ae 100644 --- a/GPy/kern/__init__.py +++ b/GPy/kern/__init__.py @@ -44,4 +44,5 @@ from .src.sde_stationary import sde_RBF,sde_Exponential,sde_RatQuad from .src.sde_brownian import sde_Brownian from .src.multioutput_kern import MultioutputKern +from .src.multioutput_derivative_kern import MultioutputDerivativeKern from .src.diff_kern import DiffKern \ No newline at end of file diff --git a/GPy/kern/src/multioutput_derivative_kern.py b/GPy/kern/src/multioutput_derivative_kern.py new file mode 100644 index 000000000..33408a00c --- /dev/null +++ b/GPy/kern/src/multioutput_derivative_kern.py @@ -0,0 +1,81 @@ +from .kern import Kern, CombinationKernel +from .multioutput_kern import MultioutputKern, ZeroKern +import numpy as np + +class KernWrapper(Kern): + def __init__(self, fk, fug, fg, base_kern): + self.fk = fk + self.fug = fug + self.fg = fg + self.base_kern + super(KernWrapper, self).__init__(1, None, name='KernWrapper',useGPU=False) + + def K(self, X, X2=None): + return self.fk(X,X2=X2) + + def update_gradients_full(self,dL_dK, X, X2=None): + return self.fug(dK_dK, X, X2=X2) + + def gradients_X(self,dL_dK, X, X2=None): + return self.fg(dL_dK, X, X2=X2) + + def get_gradient(self): + return self.base_kern.gradient.copy() + + def append_gradient(self, gradient): + self.base_kern.gradient += gradient + +class MultioutputDerivativeKern(MultioutputKern): + """ + Multioutput derivative kernel is a meta class for combining different kernels for multioutput GPs. + Multioutput derivative kernel is only a thin wrapper for Multioutput kernel for user not having to define + cross covariances. + """ + def __init__(self, kernels, cross_covariances={}, name='MultioutputDerivativeKern'): + #kernels contains a list of kernels as input, + if not isinstance(kernels, list): + self.single_kern = True + self.kern = kernels + kernels = [kernels] + else: + self.single_kern = False + self.kern = kernels + # The combination kernel ALLWAYS puts the extra dimension last. + # Thus, the index dimension of this kernel is always the last dimension + # after slicing. This is why the index_dim is just the last column: + self.index_dim = -1 + super(MultioutputKern, self).__init__(kernels=kernels, extra_dims=[self.index_dim], name=name, link_parameters=False) + + nl = len(kernels) + + #build covariance structure + covariance = [[None for i in range(nl)] for j in range(nl)] + linked = [] + for i in range(0,nl): + unique=True + for j in range(0,nl): + if i==j or (kernels[i] is kernels[j]): + covariance[i][j] = {'kern': kernels[i],'K':kernels[i].K, 'update_gradients_full': kernels[i].update_gradients_full, 'gradients_X': kernels[i].gradients_X} + if i>j: + unique=False + elif cross_covariances.get((i,j)) is not None: #cross covariance is given + covariance[i][j] = cross_covariances.get((i,j)) + elif kernels[i].name == 'diffKern' and kernels[i].base_kern == kernels[j]: # one is derivative of other + kern = KernWrapper(kernels[i].dK_dX_wrap,kernels[i].update_gradients_dK_dX,kernels[i].gradients_X, kernels[j]) + covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + unique=False + elif kernels[j].name == 'diffKern' and kernels[j].base_kern == kernels[i]: # one is derivative of other + kern = KernWrapper(kernels[j].dK_dX2_wrap,kernels[j].update_gradients_dK_dX2,kernels[j].gradients_X2, kernels[i]) + covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + elif kernels[i].name == 'diffKern' and kernels[j].name == 'diffKern' and kernels[i].base_kern == kernels[j].base_kern: #both are partial derivatives + kern = KernWrapper(partial(kernels[i].K, dimX2=kernels[j].dimension), partial(kernels[i].update_gradients_full, dimX2=kernels[j].dimension),None, kernels[i].base_kern) + covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + if i>j: + unique=False + else: + kern = ZeroKern() + covariance[i][j] = {'kern': kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + if unique is True: + linked.append(i) + self.covariance = covariance + self.link_parameters(*[kernels[i] for i in linked]) \ No newline at end of file diff --git a/GPy/models/multioutput_gp.py b/GPy/models/multioutput_gp.py index 468197cf0..35c0f3feb 100644 --- a/GPy/models/multioutput_gp.py +++ b/GPy/models/multioutput_gp.py @@ -42,7 +42,7 @@ def __init__(self, X_list, Y_list, kernel_list, likelihood_list, name='multioutp Ny = len(Y_list) assert isinstance(kernel_list, list) - kernel = kern.MultioutputKern(kernels=kernel_list, cross_covariances=kernel_cross_covariances) + kernel = kern.MultioutputDerivativeKern(kernels=kernel_list, cross_covariances=kernel_cross_covariances) assert isinstance(likelihood_list, list) likelihood = likelihoods.MultioutputLikelihood(likelihood_list) @@ -53,8 +53,7 @@ def __init__(self, X_list, Y_list, kernel_list, likelihood_list, name='multioutp else: inference_method = expectation_propagation.EP() - super(MultioutputGP, self).__init__(X,Y,kernel,likelihood, Y_metadata={'output_index':self.output_index, 'trials':np.ones(self.output_index.shape)}, inference_method = inference_method)# expectation_propagation.MultioutputEP()) # expectation_propagation.EP()) - #expectation_propagation.MultioutputEP()) + super(MultioutputGP, self).__init__(X,Y,kernel,likelihood, Y_metadata={'output_index':self.output_index, 'trials':np.ones(self.output_index.shape)}, inference_method = inference_method) def predict_noiseless(self, Xnew, full_cov=False, Y_metadata=None, kern=None): if isinstance(Xnew, list): From ee7f23869bf336d547616a2faf6d5b7030d24835 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 5 Sep 2018 17:58:44 +0300 Subject: [PATCH 10/23] Added copyrights and documentation to new models and kernels --- GPy/kern/src/diff_kern.py | 12 +++++++++++- GPy/kern/src/multioutput_derivative_kern.py | 3 +++ GPy/kern/src/multioutput_kern.py | 3 +++ GPy/models/multioutput_gp.py | 18 ++++++------------ 4 files changed, 23 insertions(+), 13 deletions(-) diff --git a/GPy/kern/src/diff_kern.py b/GPy/kern/src/diff_kern.py index 8f505b4a1..2c141ef50 100644 --- a/GPy/kern/src/diff_kern.py +++ b/GPy/kern/src/diff_kern.py @@ -1,9 +1,19 @@ +# Copyright (c) 2018, GPy authors (see AUTHORS.txt). +# Licensed under the BSD 3-clause license (see LICENSE.txt) from .kern import CombinationKernel import numpy as np from paramz.caching import Cache_this -# A thin wrapper around the base kernel to tell that we are dealing with a partial derivative of a Kernel class DiffKern(CombinationKernel): + """ + Diff kernel is a thin wrapper for using partial derivatives of kernels as kernels. Eg. in combination with + Multioutput kernel this allows the user to train GPs with observations of latent function and latent + function derivatives + + The parameters the kernel needs are: + -'base_kern': a member of Kernel class that is used for observations + -'dimension': integer that indigates in which dimensions the partial derivative observations are + """ def __init__(self, base_kern, dimension): super(DiffKern, self).__init__([base_kern], 'DiffKern') self.base_kern = base_kern diff --git a/GPy/kern/src/multioutput_derivative_kern.py b/GPy/kern/src/multioutput_derivative_kern.py index 33408a00c..0a9692392 100644 --- a/GPy/kern/src/multioutput_derivative_kern.py +++ b/GPy/kern/src/multioutput_derivative_kern.py @@ -1,3 +1,6 @@ +# Copyright (c) 2018, GPy authors (see AUTHORS.txt). +# Licensed under the BSD 3-clause license (see LICENSE.txt) + from .kern import Kern, CombinationKernel from .multioutput_kern import MultioutputKern, ZeroKern import numpy as np diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index bc2a3a8c1..cfb06bb24 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -1,3 +1,6 @@ +# Copyright (c) 2018, GPy authors (see AUTHORS.txt). +# Licensed under the BSD 3-clause license (see LICENSE.txt) + from .kern import Kern, CombinationKernel import numpy as np from functools import reduce, partial diff --git a/GPy/models/multioutput_gp.py b/GPy/models/multioutput_gp.py index 35c0f3feb..a49a7bfe2 100644 --- a/GPy/models/multioutput_gp.py +++ b/GPy/models/multioutput_gp.py @@ -22,19 +22,13 @@ class MultioutputGP(GP): """ - General purpose Gaussian process model - :param X: input observations - :param Y: output observations - :param kernel: a GPy kernel, defaults to rbf+white - :param likelihood: a GPy likelihood + Gaussian process model for using observations from multiple likelihoods and different kernels + :param X_list: input observations in a list for each likelihood + :param Y: output observations in a list for each likelihood + :param kernel_list: kernels in a list for each likelihood + :param likelihood_list: likelihoods in a list + :param kernel_cross_covariances: Cross covariances between different likelihoods. See class MultioutputKern for more :param inference_method: The :class:`~GPy.inference.latent_function_inference.LatentFunctionInference` inference method to use for this GP - :rtype: model object - :param Norm normalizer: - normalize the outputs Y. - Prediction will be un-normalized using this normalizer. - If normalizer is None, we will normalize using Standardize. - If normalizer is False, no normalization will be done. - .. Note:: Multiple independent outputs are allowed using columns of Y """ def __init__(self, X_list, Y_list, kernel_list, likelihood_list, name='multioutputgp', kernel_cross_covariances={}, inference_method=None): #Input and Output From c30698b8dbe6d215c3817b337e0349e4875c2179 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Thu, 6 Sep 2018 12:04:09 +0300 Subject: [PATCH 11/23] Switched to relative package imports --- GPy/kern/src/ODE_UY.py | 2 +- GPy/kern/src/ODE_UYC.py | 2 +- GPy/kern/src/ODE_st.py | 2 +- GPy/kern/src/ODE_t.py | 2 +- GPy/kern/src/independent_outputs.py | 2 +- GPy/kern/src/multioutput_kern.py | 2 +- GPy/kern/src/splitKern.py | 2 +- GPy/likelihoods/multioutput_likelihood.py | 2 +- GPy/models/multioutput_gp.py | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/GPy/kern/src/ODE_UY.py b/GPy/kern/src/ODE_UY.py index 2604773cc..998d823f2 100644 --- a/GPy/kern/src/ODE_UY.py +++ b/GPy/kern/src/ODE_UY.py @@ -2,7 +2,7 @@ # Licensed under the BSD 3-clause license (see LICENSE.txt) from .kern import Kern -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np diff --git a/GPy/kern/src/ODE_UYC.py b/GPy/kern/src/ODE_UYC.py index 413c874a4..1537c1d68 100644 --- a/GPy/kern/src/ODE_UYC.py +++ b/GPy/kern/src/ODE_UYC.py @@ -5,7 +5,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices class ODE_UYC(Kern): def __init__(self, input_dim, variance_U=3., variance_Y=1., lengthscale_U=1., lengthscale_Y=1., ubias =1. ,active_dims=None, name='ode_uyc'): diff --git a/GPy/kern/src/ODE_st.py b/GPy/kern/src/ODE_st.py index b7f0358af..af63c51a5 100644 --- a/GPy/kern/src/ODE_st.py +++ b/GPy/kern/src/ODE_st.py @@ -4,7 +4,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices class ODE_st(Kern): diff --git a/GPy/kern/src/ODE_t.py b/GPy/kern/src/ODE_t.py index 51a17aeba..539330a3f 100644 --- a/GPy/kern/src/ODE_t.py +++ b/GPy/kern/src/ODE_t.py @@ -2,7 +2,7 @@ from ...core.parameterization import Param from paramz.transformations import Logexp import numpy as np -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices class ODE_t(Kern): diff --git a/GPy/kern/src/independent_outputs.py b/GPy/kern/src/independent_outputs.py index c93d689f2..d5c0ba08e 100644 --- a/GPy/kern/src/independent_outputs.py +++ b/GPy/kern/src/independent_outputs.py @@ -5,7 +5,7 @@ from .kern import CombinationKernel import numpy as np import itertools -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices class IndependentOutputs(CombinationKernel): diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index cfb06bb24..61b7a6d53 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -4,7 +4,7 @@ from .kern import Kern, CombinationKernel import numpy as np from functools import reduce, partial -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices from paramz.caching import Cache_this class ZeroKern(Kern): diff --git a/GPy/kern/src/splitKern.py b/GPy/kern/src/splitKern.py index 43461230f..4441a7cf6 100644 --- a/GPy/kern/src/splitKern.py +++ b/GPy/kern/src/splitKern.py @@ -4,7 +4,7 @@ import numpy as np from .kern import Kern, CombinationKernel -from GPy.util.multioutput import index_to_slices +from ...util.multioutput import index_to_slices import itertools class DEtime(Kern): diff --git a/GPy/likelihoods/multioutput_likelihood.py b/GPy/likelihoods/multioutput_likelihood.py index 85845dda8..2bc43fd07 100644 --- a/GPy/likelihoods/multioutput_likelihood.py +++ b/GPy/likelihoods/multioutput_likelihood.py @@ -14,7 +14,7 @@ from ..core.parameterization import Param from paramz.transformations import Logexp from ..core.parameterization import Parameterized -from GPy.util.multioutput import index_to_slices +from ..util.multioutput import index_to_slices import itertools class MultioutputLikelihood(MixedNoise): diff --git a/GPy/models/multioutput_gp.py b/GPy/models/multioutput_gp.py index a49a7bfe2..2c45a0c29 100644 --- a/GPy/models/multioutput_gp.py +++ b/GPy/models/multioutput_gp.py @@ -15,7 +15,7 @@ from paramz import ObsAr from ..core.gp import GP -from GPy.util.multioutput import index_to_slices +from ..util.multioutput import index_to_slices import logging import warnings logger = logging.getLogger("GP") From 37fc39afc2be07f54509750f24972a5d9827b676 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Thu, 6 Sep 2018 12:13:32 +0300 Subject: [PATCH 12/23] Small change in usage of gradients in multioutput kernel --- GPy/kern/src/diff_kern.py | 2 +- GPy/kern/src/kern.py | 2 +- GPy/kern/src/multioutput_derivative_kern.py | 2 +- GPy/kern/src/multioutput_kern.py | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/GPy/kern/src/diff_kern.py b/GPy/kern/src/diff_kern.py index 2c141ef50..df939c579 100644 --- a/GPy/kern/src/diff_kern.py +++ b/GPy/kern/src/diff_kern.py @@ -48,7 +48,7 @@ def reset_gradients(self): self.base_kern.reset_gradients() def get_gradient(self): - return self.base_kern.gradient.copy() + return self.base_kern.gradient def append_gradient(self, gradient): self.base_kern.gradient += gradient diff --git a/GPy/kern/src/kern.py b/GPy/kern/src/kern.py index bf0062afb..20061bc5d 100644 --- a/GPy/kern/src/kern.py +++ b/GPy/kern/src/kern.py @@ -202,7 +202,7 @@ def reset_gradients(self): raise NotImplementedError def get_gradient(self): - return self.gradient.copy() + return self.gradient def append_gradient(self,gradient): self.gradient += gradient diff --git a/GPy/kern/src/multioutput_derivative_kern.py b/GPy/kern/src/multioutput_derivative_kern.py index 0a9692392..4054947a1 100644 --- a/GPy/kern/src/multioutput_derivative_kern.py +++ b/GPy/kern/src/multioutput_derivative_kern.py @@ -23,7 +23,7 @@ def gradients_X(self,dL_dK, X, X2=None): return self.fg(dL_dK, X, X2=X2) def get_gradient(self): - return self.base_kern.gradient.copy() + return self.base_kern.gradient def append_gradient(self, gradient): self.base_kern.gradient += gradient diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index 61b7a6d53..a28d5bbbb 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -97,12 +97,12 @@ def Kdiag(self,X): return target def _update_gradients_full_wrapper(self, cov_struct, dL_dK, X, X2): - gradient = cov_struct['kern'].get_gradient() + gradient = cov_struct['kern'].get_gradient().copy() cov_struct['update_gradients_full'](dL_dK, X, X2) cov_struct['kern'].append_gradient(gradient) def _update_gradients_diag_wrapper(self, kern, dL_dKdiag, X): - gradient = kern.get_gradient() + gradient = kern.get_gradient().copy() kern.update_gradients_diag(dL_dKdiag, X) kern.append_gradient(gradient) From 7bac93e3be1399b47d1837403985e7c2a534fef7 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Thu, 6 Sep 2018 14:54:57 +0300 Subject: [PATCH 13/23] Removed two useless variables --- GPy/kern/src/diff_kern.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/GPy/kern/src/diff_kern.py b/GPy/kern/src/diff_kern.py index df939c579..b8019032c 100644 --- a/GPy/kern/src/diff_kern.py +++ b/GPy/kern/src/diff_kern.py @@ -18,8 +18,6 @@ def __init__(self, base_kern, dimension): super(DiffKern, self).__init__([base_kern], 'DiffKern') self.base_kern = base_kern self.dimension = dimension - self._gradient_array_ = self.base_kern._gradient_array_ - self.gradient = self.base_kern.gradient def parameters_changed(self): self.base_kern.parameters_changed() From 03c2838bb93b1e1dbbffaeae60459cd5820e74b1 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Thu, 6 Sep 2018 16:59:19 +0300 Subject: [PATCH 14/23] Added an example on how to use the derivative observations together with regular observations in GPy --- GPy/examples/regression.py | 50 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/GPy/examples/regression.py b/GPy/examples/regression.py index 19919f97b..4af0f9968 100644 --- a/GPy/examples/regression.py +++ b/GPy/examples/regression.py @@ -581,3 +581,53 @@ def warped_gp_cubic_sine(max_iters=100): m.plot(title="Standard GP") warp_m.plot_warping() pb.show() + + + +def multioutput_gp_with_derivative_observations(): + def plot_gp_vs_real(m, x, yreal, size_inputs, title, fixed_input=1, xlim=[0,11], ylim=[-1.5,3]): + fig, ax = pb.subplots() + ax.set_title(title) + pb.plot(x, yreal, "r", label='Real function') + rows = slice(0, size_inputs[0]) if fixed_input == 0 else slice(size_inputs[0], size_inputs[0]+size_inputs[1]) + m.plot(fixed_inputs=[(1, fixed_input)], which_data_rows=rows, xlim=xlim, ylim=ylim, ax=ax) + f = lambda x: np.sin(x)+0.1*(x-2.)**2-0.005*x**3 + fd = lambda x: np.cos(x)+0.2*(x-2.)-0.015*x**2 + N=10 # Number of observations + M=10 # Number of derivative observations + Npred=100 # Number of prediction points + sigma = 0.05 # Noise of observations + sigma_der = 0.05 # Noise of derivative observations + x = np.array([np.linspace(1,10,N)]).T + y = f(x) + np.array(sigma*np.random.normal(0,1,(N,1))) + + xd = np.array([np.linspace(2,8,M)]).T + yd = fd(xd) + np.array(sigma_der*np.random.normal(0,1,(M,1))) + + xpred = np.array([np.linspace(0,11,Npred)]).T + ypred_true = f(xpred) + ydpred_true = fd(xpred) + + # squared exponential kernel: + se = GPy.kern.RBF(input_dim = 1, lengthscale=1.5, variance=0.2) + # We need to generate separate kernel for the derivative observations and give the created kernel as an input: + se_der = GPy.kern.DiffKern(se, 0) + + #Then + gauss = GPy.likelihoods.Gaussian(variance=sigma**2) + gauss_der = GPy.likelihoods.Gaussian(variance=sigma_der**2) + + # Then create the model, we give everything in lists, the order of the inputs indicates the order of the outputs + # Now we have the regular observations first and derivative observations second, meaning that the kernels and + # the likelihoods must follow the same order. Crosscovariances are automatically taken car of + m = GPy.models.MultioutputGP(X_list=[x, xd], Y_list=[y, yd], kernel_list=[se, se_der], likelihood_list = [gauss, gauss]) + + # Optimize the model + m.optimize(messages=0, ipython_notebook=False) + + #Plot the model, the syntax is same as for multioutput models: + plot_gp_vs_real(m, xpred, ydpred_true, [x.shape[0], xd.shape[0]], title='Latent function derivatives', fixed_input=1, xlim=[0,11], ylim=[-1.5,3]) + plot_gp_vs_real(m, xpred, ypred_true, [x.shape[0], xd.shape[0]], title='Latent function', fixed_input=0, xlim=[0,11], ylim=[-1.5,3]) + + #making predictions for the values: + mu, var = m.predict_noiseless(Xnew=[xpred, np.empty((0,1))]) From 29b9435a8e1fec3630a839515c73ae0ea731630f Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Fri, 7 Sep 2018 21:03:27 +0300 Subject: [PATCH 15/23] Simplified the way how multioutput kernel updates and uses gradients. As a consequense, DiffKern cannot be used as a standalone kernel anymore --- GPy/kern/src/diff_kern.py | 28 +++-- GPy/kern/src/kern.py | 12 +- GPy/kern/src/kernel_slice_operations.py | 123 +++++++++++++++++++- GPy/kern/src/multioutput_derivative_kern.py | 30 ++--- GPy/kern/src/multioutput_kern.py | 32 ++--- GPy/kern/src/stationary.py | 4 - 6 files changed, 179 insertions(+), 50 deletions(-) diff --git a/GPy/kern/src/diff_kern.py b/GPy/kern/src/diff_kern.py index b8019032c..612c06325 100644 --- a/GPy/kern/src/diff_kern.py +++ b/GPy/kern/src/diff_kern.py @@ -1,21 +1,21 @@ # Copyright (c) 2018, GPy authors (see AUTHORS.txt). # Licensed under the BSD 3-clause license (see LICENSE.txt) -from .kern import CombinationKernel +from .kern import Kern import numpy as np from paramz.caching import Cache_this -class DiffKern(CombinationKernel): +class DiffKern(Kern): """ Diff kernel is a thin wrapper for using partial derivatives of kernels as kernels. Eg. in combination with Multioutput kernel this allows the user to train GPs with observations of latent function and latent - function derivatives + function derivatives. NOTE: DiffKern only works when used with Multioutput kernel. Do not use the kernel as standalone The parameters the kernel needs are: -'base_kern': a member of Kernel class that is used for observations -'dimension': integer that indigates in which dimensions the partial derivative observations are """ def __init__(self, base_kern, dimension): - super(DiffKern, self).__init__([base_kern], 'DiffKern') + super(DiffKern, self).__init__(base_kern.active_dims.size, base_kern.active_dims, name='DiffKern') self.base_kern = base_kern self.dimension = dimension @@ -45,11 +45,13 @@ def dK_dX2_wrap(self, X, X2): #X in dimension self.dimension def reset_gradients(self): self.base_kern.reset_gradients() - def get_gradient(self): + @property + def gradient(self): return self.base_kern.gradient - def append_gradient(self, gradient): - self.base_kern.gradient += gradient + @gradient.setter + def gradient(self, gradient): + self.base_kern.gradient = gradient def update_gradients_full(self, dL_dK, X, X2=None, dimX2=None): if dimX2 is None: @@ -65,11 +67,19 @@ def update_gradients_dK_dX(self, dL_dK, X, X2=None): if X2 is None: X2 = X gradients = self.base_kern.dgradients_dX(X,X2, self.dimension) - self.base_kern.append_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + self.base_kern.update_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) def update_gradients_dK_dX2(self, dL_dK, X, X2=None): gradients = self.base_kern.dgradients_dX2(X,X2, self.dimension) - self.base_kern.append_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + self.base_kern.update_gradients_direct(*[self._convert_gradients(dL_dK, gradient) for gradient in gradients]) + + def gradients_X(self, dL_dK, X, X2): + tmp = self.base_kern.gradients_XX(dL_dK, X, X2)[:,:,:, self.dimension] + return np.sum(tmp, axis=1) + + def gradients_X2(self, dL_dK, X, X2): + tmp = self.base_kern.gradients_XX(dL_dK, X, X2)[:, :, self.dimension, :] + return np.sum(tmp, axis=1) def _convert_gradients(self, l,g, f = lambda x:x): if type(g) is np.ndarray: diff --git a/GPy/kern/src/kern.py b/GPy/kern/src/kern.py index 20061bc5d..362ac4180 100644 --- a/GPy/kern/src/kern.py +++ b/GPy/kern/src/kern.py @@ -116,6 +116,12 @@ def _slice_X(self, X): except: return X[:, self._all_dims_active] + def _project_dim(self, dim): + try: + return np.where(self._all_dims_active == dim)[0][0] + except: + return None + def K(self, X, X2): """ Compute the kernel function. @@ -200,12 +206,6 @@ def update_gradients_full(self, dL_dK, X, X2): def reset_gradients(self): raise NotImplementedError - - def get_gradient(self): - return self.gradient - - def append_gradient(self,gradient): - self.gradient += gradient def update_gradients_expectations(self, dL_dpsi0, dL_dpsi1, dL_dpsi2, Z, variational_posterior): """ diff --git a/GPy/kern/src/kernel_slice_operations.py b/GPy/kern/src/kernel_slice_operations.py index 327436e72..8a5dcb81f 100644 --- a/GPy/kern/src/kernel_slice_operations.py +++ b/GPy/kern/src/kernel_slice_operations.py @@ -19,16 +19,26 @@ def put_clean(dct, name, func): class KernCallsViaSlicerMeta(ParametersChangedMeta): def __new__(cls, name, bases, dct): put_clean(dct, 'K', _slice_K) + put_clean(dct, 'dK_dX', _slice_dK_dX) + put_clean(dct, 'dK_dX2', _slice_dK_dX) + put_clean(dct, 'dK2_dXdX2', _slice_dK2_dXdX2) put_clean(dct, 'Kdiag', _slice_Kdiag) put_clean(dct, 'phi', _slice_Kdiag) put_clean(dct, 'update_gradients_full', _slice_update_gradients_full) put_clean(dct, 'update_gradients_diag', _slice_update_gradients_diag) + put_clean(dct, 'update_gradients_dK_dX', _slice_update_gradients_full) + put_clean(dct, 'update_gradients_dK_dX2', _slice_update_gradients_full) put_clean(dct, 'gradients_X', _slice_gradients_X) + put_clean(dct, 'gradients_X2', _slice_gradients_X) put_clean(dct, 'gradients_X_X2', _slice_gradients_X) put_clean(dct, 'gradients_XX', _slice_gradients_XX) put_clean(dct, 'gradients_XX_diag', _slice_gradients_XX_diag) put_clean(dct, 'gradients_X_diag', _slice_gradients_X_diag) + put_clean(dct, 'dgradients_dX',_slice_partial_gradients_list_X) + put_clean(dct, 'dgradients_dX2',_slice_partial_gradients_list_X) + put_clean(dct, 'dgradients2_dXdX2',_slice_partial_gradients_list_XX) + put_clean(dct, 'psi0', _slice_psi) put_clean(dct, 'psi1', _slice_psi) put_clean(dct, 'psi2', _slice_psi) @@ -79,6 +89,20 @@ def handle_return_array(self, return_val): return ret return return_val + def handle_return_list(self, return_val): + if self.ret: + ret = [np.zeros(self.shape) for _ in range(len(return_val))] + if len(self.shape) == 3: + for i in range(len(return_val)): + ret[i][self.k._all_dims_active, :, :] = return_val[i] + #[ret[i].__setitem__((:, :, self.k._all_dims_active), return_val[i]) for i in range(len(return_val))] + elif len(self.shape) == 4: + for i in range(len(return_val)): + ret[i][np.ix_(self.k._all_dims_active, self.k._all_dims_active)] = return_val[i] + #[ret[i].__setitem__((:, :, self.k._all_dims_active, self.k._all_dims_active), return_val[i]) for i in range(len(return_val))] + return ret + return return_val + def _slice_K(f): @wraps(f) def wrap(self, X, X2 = None, *a, **kw): @@ -97,15 +121,15 @@ def wrap(self, X, *a, **kw): def _slice_update_gradients_full(f): @wraps(f) - def wrap(self, dL_dK, X, X2=None): + def wrap(self, dL_dK, X, X2=None, *a, **kw): with _Slice_wrap(self, X, X2) as s: - ret = f(self, dL_dK, s.X, s.X2) + ret = f(self, dL_dK, s.X, s.X2, *a, **kw) return ret return wrap def _slice_update_gradients_diag(f): @wraps(f) - def wrap(self, dL_dKdiag, X): + def wrap(self, dL_dKdiag, X, *a, **kw): with _Slice_wrap(self, X, None) as s: ret = f(self, dL_dKdiag, s.X) return ret @@ -119,6 +143,99 @@ def wrap(self, dL_dK, X, X2=None): return ret return wrap +def _slice_dK_dX(f): + @wraps(f) + def wrap(self, X, X2, dim, *a, **kw): + with _Slice_wrap(self, X, X2) as s: + d = s.k._project_dim(dim) + if d is None: + ret = np.zeros((X.shape[0], X2.shape[0])) + else: + ret = f(self, s.X, s.X2, d, *a, **kw) + return ret + return wrap + +def _slice_dK2_dXdX2(f): + @wraps(f) + def wrap(self, X, X2, dimX, dimX2, *a, **kw): + with _Slice_wrap(self, X, X2) as s: + d = s.k._project_dim(dimX) + d2 = s.k._project_dim(dimX2) + if (d is None) or (d2 is None): + ret = np.zeros((X.shape[0], X2.shape[0])) + else: + ret = f(self, s.X, s.X2, d, d2, *a, **kw) + return ret + return wrap + +def _slice_partial_gradients_X(f): + @wraps(f) + def wrap(self, X, X2, dim): + if X2 is None: + N, M = X.shape[0], X.shape[0] + else: + N, M = X.shape[0], X2.shape[0] + Q1 = X.shape[1] + with _Slice_wrap(self, X, X2, ret_shape=(N, M, Q1)) as s: + ret = s.handle_return_array(f(self, s.X, s.X2, dim)) + return ret + return wrap + +def _slice_partial_gradients_list_X(f): + @wraps(f) + def wrap(self, X, X2, dim): + if X2 is None: + N, M = X.shape[0], X.shape[0] + else: + N, M = X.shape[0], X2.shape[0] + with _Slice_wrap(self, X, X2, ret_shape=(N, M)) as s: + d = s.k._project_dim(dim) + if d is None: + ret = [np.zeros((N, M)) for i in range(s.k.size)] + else: + ret = f(self, s.X, s.X2, d) + return ret + return wrap + +def _slice_partial_gradients_XX(f): + @wraps(f) + def wrap(self, X, X2, dim, dimX2): + if X2 is None: + N, M = X.shape[0], X.shape[0] + Q1 = X.shape[1] + else: + N, M = X.shape[0], X2.shape[0] + Q1, Q2 = X.shape[1], X2.shape[1] + with _Slice_wrap(self, X, X2, ret_shape=(N, M, Q1, Q2)) as s: + ret = s.handle_return_array(f(self, s.X, s.X2, dim, dimX2)) + return ret + return wrap + +def _slice_partial_gradients_list_XX(f): + @wraps(f) + def wrap(self, X, X2, dimX, dimX2): + if X2 is None: + N, M = X.shape[0], X.shape[0] + else: + N, M = X.shape[0], X2.shape[0] + with _Slice_wrap(self, X, X2, ret_shape=(N, M)) as s: + d = s.k._project_dim(dimX) + d2 = s.k._project_dim(dimX2) + if (d is None) or (d2 is None): + ret = [np.zeros((N, M)) for i in range(s.k.size)] + else: + ret = f(self, s.X, s.X2, d, d2) + return ret + return wrap + +def _slice_gradient_derivatives_X(f): + @wraps(f) + def wrap(self, dL_dK, X, X2=None): + with _Slice_wrap(self, X, X2) as s: + ret = s.handle_return_array(f(self, dL_dK, s.X, s.X2)) + return ret + return wrap + def _slice_gradients_X_diag(f): @wraps(f) def wrap(self, dL_dKdiag, X): diff --git a/GPy/kern/src/multioutput_derivative_kern.py b/GPy/kern/src/multioutput_derivative_kern.py index 4054947a1..17da4a13b 100644 --- a/GPy/kern/src/multioutput_derivative_kern.py +++ b/GPy/kern/src/multioutput_derivative_kern.py @@ -4,29 +4,32 @@ from .kern import Kern, CombinationKernel from .multioutput_kern import MultioutputKern, ZeroKern import numpy as np +from functools import partial class KernWrapper(Kern): def __init__(self, fk, fug, fg, base_kern): self.fk = fk self.fug = fug self.fg = fg - self.base_kern - super(KernWrapper, self).__init__(1, None, name='KernWrapper',useGPU=False) + self.base_kern = base_kern + super(KernWrapper, self).__init__(base_kern.active_dims.size, base_kern.active_dims, name='KernWrapper',useGPU=False) def K(self, X, X2=None): return self.fk(X,X2=X2) def update_gradients_full(self,dL_dK, X, X2=None): - return self.fug(dK_dK, X, X2=X2) + return self.fug(dL_dK, X, X2=X2) def gradients_X(self,dL_dK, X, X2=None): return self.fg(dL_dK, X, X2=X2) - def get_gradient(self): + @property + def gradient(self): return self.base_kern.gradient - def append_gradient(self, gradient): - self.base_kern.gradient += gradient + @gradient.setter + def gradient(self, gradient): + self.base_kern.gradient = gradient class MultioutputDerivativeKern(MultioutputKern): """ @@ -58,26 +61,23 @@ def __init__(self, kernels, cross_covariances={}, name='MultioutputDerivativeKer unique=True for j in range(0,nl): if i==j or (kernels[i] is kernels[j]): - covariance[i][j] = {'kern': kernels[i],'K':kernels[i].K, 'update_gradients_full': kernels[i].update_gradients_full, 'gradients_X': kernels[i].gradients_X} + kern = kernels[i] if i>j: unique=False elif cross_covariances.get((i,j)) is not None: #cross covariance is given - covariance[i][j] = cross_covariances.get((i,j)) - elif kernels[i].name == 'diffKern' and kernels[i].base_kern == kernels[j]: # one is derivative of other + kern = cross_covariances.get((i,j)) + elif kernels[i].name == 'DiffKern' and kernels[i].base_kern == kernels[j]: # one is derivative of other kern = KernWrapper(kernels[i].dK_dX_wrap,kernels[i].update_gradients_dK_dX,kernels[i].gradients_X, kernels[j]) - covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} unique=False - elif kernels[j].name == 'diffKern' and kernels[j].base_kern == kernels[i]: # one is derivative of other + elif kernels[j].name == 'DiffKern' and kernels[j].base_kern == kernels[i]: # one is derivative of other kern = KernWrapper(kernels[j].dK_dX2_wrap,kernels[j].update_gradients_dK_dX2,kernels[j].gradients_X2, kernels[i]) - covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} - elif kernels[i].name == 'diffKern' and kernels[j].name == 'diffKern' and kernels[i].base_kern == kernels[j].base_kern: #both are partial derivatives + elif kernels[i].name == 'DiffKern' and kernels[j].name == 'DiffKern' and kernels[i].base_kern == kernels[j].base_kern: #both are partial derivatives kern = KernWrapper(partial(kernels[i].K, dimX2=kernels[j].dimension), partial(kernels[i].update_gradients_full, dimX2=kernels[j].dimension),None, kernels[i].base_kern) - covariance[i][j] = {'kern':kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} if i>j: unique=False else: kern = ZeroKern() - covariance[i][j] = {'kern': kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + covariance[i][j] = kern if unique is True: linked.append(i) self.covariance = covariance diff --git a/GPy/kern/src/multioutput_kern.py b/GPy/kern/src/multioutput_kern.py index a28d5bbbb..6bedeb59e 100644 --- a/GPy/kern/src/multioutput_kern.py +++ b/GPy/kern/src/multioutput_kern.py @@ -21,6 +21,13 @@ def update_gradients_full(self,dL_dK, X, X2=None): def gradients_X(self,dL_dK, X, X2=None): return np.zeros((X.shape[0],X.shape[1])) + @property + def gradient(self): + return np.empty((1,0)) + + @gradient.setter + def gradient(self, gradient): + pass class MultioutputKern(CombinationKernel): """ @@ -65,14 +72,13 @@ def __init__(self, kernels, cross_covariances={}, name='MultioutputKern'): unique=True for j in range(0,nl): if i==j or (kernels[i] is kernels[j]): - covariance[i][j] = {'kern': kernels[i], 'K': kernels[i].K, 'update_gradients_full': kernels[i].update_gradients_full, 'gradients_X': kernels[i].gradients_X} + covariance[i][j] = kernels[i] if i>j: unique=False elif cross_covariances.get((i,j)) is not None: #cross covariance is given covariance[i][j] = cross_covariances.get((i,j)) else: # zero covariance structure - kern = ZeroKern() - covariance[i][j] = {'kern': kern, 'K': kern.K, 'update_gradients_full': kern.update_gradients_full, 'gradients_X': kern.gradients_X} + covariance[i][j] = ZeroKern() if unique is True: linked.append(i) self.covariance = covariance @@ -85,7 +91,7 @@ def K(self, X ,X2=None): slices = index_to_slices(X[:,self.index_dim]) slices2 = index_to_slices(X2[:,self.index_dim]) target = np.zeros((X.shape[0], X2.shape[0])) - [[[[ target.__setitem__((slices[i][k],slices2[j][l]), self.covariance[i][j]['K'](X[slices[i][k],:],X2[slices2[j][l],:])) for k in range( len(slices[i]))] for l in range(len(slices2[j])) ] for i in range(len(slices))] for j in range(len(slices2))] + [[[[ target.__setitem__((slices[i][k],slices2[j][l]), self.covariance[i][j].K(X[slices[i][k],:],X2[slices2[j][l],:])) for k in range( len(slices[i]))] for l in range(len(slices2[j])) ] for i in range(len(slices))] for j in range(len(slices2))] return target @Cache_this(limit=3, ignore_args=()) @@ -96,15 +102,15 @@ def Kdiag(self,X): [[np.copyto(target[s], kern.Kdiag(X[s])) for s in slices_i] for kern, slices_i in zip(kerns, slices)] return target - def _update_gradients_full_wrapper(self, cov_struct, dL_dK, X, X2): - gradient = cov_struct['kern'].get_gradient().copy() - cov_struct['update_gradients_full'](dL_dK, X, X2) - cov_struct['kern'].append_gradient(gradient) + def _update_gradients_full_wrapper(self, kern, dL_dK, X, X2): + gradient = kern.gradient.copy() + kern.update_gradients_full(dL_dK, X, X2) + kern.gradient += gradient def _update_gradients_diag_wrapper(self, kern, dL_dKdiag, X): - gradient = kern.get_gradient().copy() + gradient = kern.gradient.copy() kern.update_gradients_diag(dL_dKdiag, X) - kern.append_gradient(gradient) + kern.gradient += gradient def reset_gradients(self): for kern in self.kern: kern.reset_gradients() @@ -121,14 +127,14 @@ def update_gradients_full(self,dL_dK, X, X2=None): def update_gradients_diag(self, dL_dKdiag, X): self.reset_gradients() slices = index_to_slices(X[:,self.index_dim]) - [[ self._update_gradients_diag_wrapper(self.covariance[i][i]['kern'], dL_dKdiag[slices[i][k]], X[slices[i][k],:]) for k in range(len(slices[i]))] for i in range(len(slices))] + [[ self._update_gradients_diag_wrapper(self.covariance[i][i], dL_dKdiag[slices[i][k]], X[slices[i][k],:]) for k in range(len(slices[i]))] for i in range(len(slices))] def gradients_X(self,dL_dK, X, X2=None): slices = index_to_slices(X[:,self.index_dim]) target = np.zeros((X.shape[0], X.shape[1]) ) if X2 is not None: slices2 = index_to_slices(X2[:,self.index_dim]) - [[[[ target.__setitem__((slices[i][k]), target[slices[i][k],:] + self.covariance[i][j]['gradients_X'](dL_dK[slices[i][k],slices2[j][l]], X[slices[i][k],:], X2[slices2[j][l],:]) ) for k in range(len(slices[i]))] for l in range(len(slices2[j]))] for i in range(len(slices))] for j in range(len(slices2))] + [[[[ target.__setitem__((slices[i][k]), target[slices[i][k],:] + self.covariance[i][j].gradients_X(dL_dK[slices[i][k],slices2[j][l]], X[slices[i][k],:], X2[slices2[j][l],:]) ) for k in range(len(slices[i]))] for l in range(len(slices2[j]))] for i in range(len(slices))] for j in range(len(slices2))] else: - [[[[ target.__setitem__((slices[i][k]), target[slices[i][k],:] + self.covariance[i][j]['gradients_X'](dL_dK[slices[i][k],slices[j][l]], X[slices[i][k],:], (None if (i==j and k==l) else X[slices[j][l],:] )) ) for k in range(len(slices[i]))] for l in range(len(slices[j]))] for i in range(len(slices))] for j in range(len(slices))] + [[[[ target.__setitem__((slices[i][k]), target[slices[i][k],:] + self.covariance[i][j].gradients_X(dL_dK[slices[i][k],slices[j][l]], X[slices[i][k],:], (None if (i==j and k==l) else X[slices[j][l],:] )) ) for k in range(len(slices[i]))] for l in range(len(slices[j]))] for i in range(len(slices))] for j in range(len(slices))] return target \ No newline at end of file diff --git a/GPy/kern/src/stationary.py b/GPy/kern/src/stationary.py index f728e4aeb..888320a06 100644 --- a/GPy/kern/src/stationary.py +++ b/GPy/kern/src/stationary.py @@ -221,10 +221,6 @@ def update_gradients_direct(self, dL_dVar, dL_dLen): """ self.variance.gradient = dL_dVar self.lengthscale.gradient = dL_dLen - - def append_gradients_direct(self, dL_dVar, dL_dLen): - self.variance.gradient += dL_dVar - self.lengthscale.gradient += dL_dLen def _inv_dist(self, X, X2=None): """ From 081d447bc2d48c2af980a3e2b2fe6b199dd16079 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Fri, 7 Sep 2018 21:04:21 +0300 Subject: [PATCH 16/23] Removed the test that tests if DiffKern works as a standalone kernel --- GPy/testing/kernel_tests.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/GPy/testing/kernel_tests.py b/GPy/testing/kernel_tests.py index 60287f315..9b9cd911d 100644 --- a/GPy/testing/kernel_tests.py +++ b/GPy/testing/kernel_tests.py @@ -482,12 +482,6 @@ def test_standard_periodic(self): k = GPy.kern.StdPeriodic(self.D) k.randomize() self.assertTrue(check_kernel_gradient_functions(k, X=self.X, X2=self.X2, verbose=verbose)) - - def test_diff(self): - k = GPy.kern.RBF(self.D, ARD=True) - k.randomize() - kd = GPy.kern.DiffKern(k, 0 ) - self.assertTrue(check_kernel_gradient_functions(kd, X=self.X, X2=self.X2, verbose=verbose)) def test_symmetric_even(self): k_base = GPy.kern.Linear(1) + GPy.kern.RBF(1) From 9cf4b0f33956aef43706f9261a0cb2e22faf16a8 Mon Sep 17 00:00:00 2001 From: Geoffrey Neal Date: Wed, 29 May 2019 16:10:26 -0700 Subject: [PATCH 17/23] Fix clean install of Python 2.7 If using Python 2.7 and don't have numpy installed before hand this error will occur: `NameError: name 'ModuleNotFoundError' is not defined` --- setup.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/setup.py b/setup.py index 749ba0852..523c44330 100644 --- a/setup.py +++ b/setup.py @@ -40,6 +40,11 @@ from setuptools import setup, Extension import codecs +try: + ModuleNotFoundError +except NameError: + ModuleNotFoundError = ImportError + def read(fname): with codecs.open(fname, 'r', 'latin') as f: return f.read() From f8835d0179bafc7afaf8f1dc696d3875799d6b26 Mon Sep 17 00:00:00 2001 From: mzwiessele Date: Mon, 22 Jul 2019 14:29:03 +0100 Subject: [PATCH 18/23] fix: return model on example --- GPy/examples/regression.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/GPy/examples/regression.py b/GPy/examples/regression.py index 4af0f9968..583f12a9c 100644 --- a/GPy/examples/regression.py +++ b/GPy/examples/regression.py @@ -581,6 +581,7 @@ def warped_gp_cubic_sine(max_iters=100): m.plot(title="Standard GP") warp_m.plot_warping() pb.show() + return warp_m @@ -598,7 +599,7 @@ def plot_gp_vs_real(m, x, yreal, size_inputs, title, fixed_input=1, xlim=[0,11], Npred=100 # Number of prediction points sigma = 0.05 # Noise of observations sigma_der = 0.05 # Noise of derivative observations - x = np.array([np.linspace(1,10,N)]).T + x = np.array([np.linspace(1,10,N)]).T y = f(x) + np.array(sigma*np.random.normal(0,1,(N,1))) xd = np.array([np.linspace(2,8,M)]).T @@ -613,7 +614,7 @@ def plot_gp_vs_real(m, x, yreal, size_inputs, title, fixed_input=1, xlim=[0,11], # We need to generate separate kernel for the derivative observations and give the created kernel as an input: se_der = GPy.kern.DiffKern(se, 0) - #Then + #Then gauss = GPy.likelihoods.Gaussian(variance=sigma**2) gauss_der = GPy.likelihoods.Gaussian(variance=sigma_der**2) @@ -621,7 +622,7 @@ def plot_gp_vs_real(m, x, yreal, size_inputs, title, fixed_input=1, xlim=[0,11], # Now we have the regular observations first and derivative observations second, meaning that the kernels and # the likelihoods must follow the same order. Crosscovariances are automatically taken car of m = GPy.models.MultioutputGP(X_list=[x, xd], Y_list=[y, yd], kernel_list=[se, se_der], likelihood_list = [gauss, gauss]) - + # Optimize the model m.optimize(messages=0, ipython_notebook=False) @@ -631,3 +632,5 @@ def plot_gp_vs_real(m, x, yreal, size_inputs, title, fixed_input=1, xlim=[0,11], #making predictions for the values: mu, var = m.predict_noiseless(Xnew=[xpred, np.empty((0,1))]) + + return m From fbd43c4e9b14d9a9d0b497656f0f85cc08deb841 Mon Sep 17 00:00:00 2001 From: mzwiessele Date: Mon, 22 Jul 2019 16:31:38 +0100 Subject: [PATCH 19/23] fix: plotting_test --- GPy/likelihoods/likelihood.py | 2 +- GPy/plotting/matplot_dep/base_plots.py | 91 ++++-------------- .../baseline/bayesian_gplvm_gradient.npz | Bin 10155 -> 0 bytes .../baseline/bayesian_gplvm_inducing.npz | Bin 2233 -> 0 bytes .../baseline/bayesian_gplvm_inducing_3d.npz | Bin 2693 -> 0 bytes .../baseline/bayesian_gplvm_latent.npz | Bin 35834 -> 0 bytes .../baseline/bayesian_gplvm_latent_3d.npz | Bin 10562 -> 0 bytes .../baseline/bayesian_gplvm_magnification.npz | Bin 36631 -> 0 bytes GPy/testing/baseline/coverage_3d_plot.npz | Bin 4599 -> 434 bytes .../baseline/coverage_annotation_interact.npz | Bin 434 -> 27700 bytes GPy/testing/baseline/coverage_gradient.npz | Bin 7183 -> 228 bytes .../baseline/coverage_imshow_interact.npz | Bin 228 -> 27726 bytes GPy/testing/baseline/gp_2d_mean.npz | Bin 84189 -> 87870 bytes GPy/testing/baseline/gp_3d_data.npz | Bin 4257 -> 0 bytes GPy/testing/baseline/gp_3d_inducing.npz | Bin 2702 -> 0 bytes GPy/testing/baseline/gp_3d_mean.npz | Bin 6672 -> 0 bytes GPy/testing/baseline/gp_class_likelihood.npz | Bin 60052 -> 0 bytes GPy/testing/baseline/gp_class_raw.npz | Bin 77997 -> 0 bytes GPy/testing/baseline/gp_class_raw_link.npz | Bin 79655 -> 0 bytes GPy/testing/baseline/gp_samples.npz | Bin 31471 -> 31491 bytes GPy/testing/baseline/gplvm_gradient.npz | Bin 10143 -> 0 bytes GPy/testing/baseline/gplvm_latent.npz | Bin 36261 -> 0 bytes GPy/testing/baseline/gplvm_latent_3d.npz | Bin 10562 -> 0 bytes GPy/testing/baseline/gplvm_magnification.npz | Bin 36284 -> 0 bytes GPy/testing/baseline/kern_cov_2d.npz | Bin 51553 -> 55216 bytes GPy/testing/baseline/kern_cov_3d.npz | Bin 5662 -> 5619 bytes GPy/testing/baseline/kern_cov_no_lim.npz | Bin 48223 -> 51890 bytes .../baseline/sparse_gp_class_likelihood.npz | Bin 22078 -> 0 bytes GPy/testing/baseline/sparse_gp_class_raw.npz | Bin 55898 -> 0 bytes .../baseline/sparse_gp_class_raw_link.npz | Bin 58743 -> 0 bytes GPy/testing/baseline/sparse_gp_data_error.npz | Bin 25292 -> 0 bytes GPy/testing/plotting_tests.py | 25 +++-- travis_tests.py | 2 +- 33 files changed, 36 insertions(+), 84 deletions(-) delete mode 100644 GPy/testing/baseline/bayesian_gplvm_gradient.npz delete mode 100644 GPy/testing/baseline/bayesian_gplvm_inducing.npz delete mode 100644 GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz delete mode 100644 GPy/testing/baseline/bayesian_gplvm_latent.npz delete mode 100644 GPy/testing/baseline/bayesian_gplvm_latent_3d.npz delete mode 100644 GPy/testing/baseline/bayesian_gplvm_magnification.npz delete mode 100644 GPy/testing/baseline/gp_3d_data.npz delete mode 100644 GPy/testing/baseline/gp_3d_inducing.npz delete mode 100644 GPy/testing/baseline/gp_3d_mean.npz delete mode 100644 GPy/testing/baseline/gp_class_likelihood.npz delete mode 100644 GPy/testing/baseline/gp_class_raw.npz delete mode 100644 GPy/testing/baseline/gp_class_raw_link.npz delete mode 100644 GPy/testing/baseline/gplvm_gradient.npz delete mode 100644 GPy/testing/baseline/gplvm_latent.npz delete mode 100644 GPy/testing/baseline/gplvm_latent_3d.npz delete mode 100644 GPy/testing/baseline/gplvm_magnification.npz delete mode 100644 GPy/testing/baseline/sparse_gp_class_likelihood.npz delete mode 100644 GPy/testing/baseline/sparse_gp_class_raw.npz delete mode 100644 GPy/testing/baseline/sparse_gp_class_raw_link.npz delete mode 100644 GPy/testing/baseline/sparse_gp_data_error.npz diff --git a/GPy/likelihoods/likelihood.py b/GPy/likelihoods/likelihood.py index b4f727195..bd84b72ca 100644 --- a/GPy/likelihoods/likelihood.py +++ b/GPy/likelihoods/likelihood.py @@ -296,7 +296,7 @@ def ep_gradients(self, Y, cav_tau, cav_v, dL_dKdiag, Y_metadata=None, quad_mode= elif quad_mode == 'gh': f = partial(self.integrate_gh) quads = zip(*map(f, Y.flatten(), mu.flatten(), np.sqrt(sigma2.flatten()))) - quads = np.hstack(quads) + quads = np.hstack(list(quads)) quads = quads.T else: raise Exception("no other quadrature mode available") diff --git a/GPy/plotting/matplot_dep/base_plots.py b/GPy/plotting/matplot_dep/base_plots.py index d9910f597..567f869bf 100644 --- a/GPy/plotting/matplot_dep/base_plots.py +++ b/GPy/plotting/matplot_dep/base_plots.py @@ -3,6 +3,8 @@ from matplotlib import pyplot as plt import numpy as np +from .util import align_subplot_array, align_subplots + def ax_default(fignum, ax): if ax is None: fig = plt.figure(fignum) @@ -50,73 +52,73 @@ def gradient_fill(x, percentiles, ax=None, fignum=None, **kwargs): kwargs['linewidth'] = 0.5 if not 'alpha' in kwargs.keys(): kwargs['alpha'] = 1./(len(percentiles)) - + # pop where from kwargs where = kwargs.pop('where') if 'where' in kwargs else None # pop interpolate, which we actually do not do here! if 'interpolate' in kwargs: kwargs.pop('interpolate') - + def pairwise(inlist): l = len(inlist) for i in range(int(np.ceil(l/2.))): yield inlist[:][i], inlist[:][(l-1)-i] - + polycol = [] for y1, y2 in pairwise(percentiles): import matplotlib.mlab as mlab # Handle united data, such as dates ax._process_unit_info(xdata=x, ydata=y1) ax._process_unit_info(ydata=y2) - + # Convert the arrays so we can work with them from numpy import ma x = ma.masked_invalid(ax.convert_xunits(x)) y1 = ma.masked_invalid(ax.convert_yunits(y1)) y2 = ma.masked_invalid(ax.convert_yunits(y2)) - + if y1.ndim == 0: y1 = np.ones_like(x) * y1 if y2.ndim == 0: y2 = np.ones_like(x) * y2 - + if where is None: where = np.ones(len(x), np.bool) else: where = np.asarray(where, np.bool) - + if not (x.shape == y1.shape == y2.shape == where.shape): raise ValueError("Argument dimensions are incompatible") - + mask = reduce(ma.mask_or, [ma.getmask(a) for a in (x, y1, y2)]) if mask is not ma.nomask: where &= ~mask - + polys = [] for ind0, ind1 in mlab.contiguous_regions(where): xslice = x[ind0:ind1] y1slice = y1[ind0:ind1] y2slice = y2[ind0:ind1] - + if not len(xslice): continue - + N = len(xslice) X = np.zeros((2 * N + 2, 2), np.float) - + # the purpose of the next two lines is for when y2 is a # scalar like 0 and we want the fill to go all the way # down to 0 even if none of the y1 sample points do start = xslice[0], y2slice[0] end = xslice[-1], y2slice[-1] - + X[0] = start X[N + 1] = end - + X[1:N + 1, 0] = xslice X[1:N + 1, 1] = y1slice X[N + 2:, 0] = xslice[::-1] X[N + 2:, 1] = y2slice[::-1] - + polys.append(X) polycol.extend(polys) from matplotlib.collections import PolyCollection @@ -167,65 +169,6 @@ def fewerXticks(ax=None,divideby=2): ax = ax or plt.gca() ax.set_xticks(ax.get_xticks()[::divideby]) -def align_subplots(N,M,xlim=None, ylim=None): - """make all of the subplots have the same limits, turn off unnecessary ticks""" - #find sensible xlim,ylim - if xlim is None: - xlim = [np.inf,-np.inf] - for i in range(N*M): - plt.subplot(N,M,i+1) - xlim[0] = min(xlim[0],plt.xlim()[0]) - xlim[1] = max(xlim[1],plt.xlim()[1]) - if ylim is None: - ylim = [np.inf,-np.inf] - for i in range(N*M): - plt.subplot(N,M,i+1) - ylim[0] = min(ylim[0],plt.ylim()[0]) - ylim[1] = max(ylim[1],plt.ylim()[1]) - - for i in range(N*M): - plt.subplot(N,M,i+1) - plt.xlim(xlim) - plt.ylim(ylim) - if (i)%M: - plt.yticks([]) - else: - removeRightTicks() - if i<(M*(N-1)): - plt.xticks([]) - else: - removeUpperTicks() - -def align_subplot_array(axes,xlim=None, ylim=None): - """ - Make all of the axes in the array hae the same limits, turn off unnecessary ticks - use plt.subplots() to get an array of axes - """ - #find sensible xlim,ylim - if xlim is None: - xlim = [np.inf,-np.inf] - for ax in axes.flatten(): - xlim[0] = min(xlim[0],ax.get_xlim()[0]) - xlim[1] = max(xlim[1],ax.get_xlim()[1]) - if ylim is None: - ylim = [np.inf,-np.inf] - for ax in axes.flatten(): - ylim[0] = min(ylim[0],ax.get_ylim()[0]) - ylim[1] = max(ylim[1],ax.get_ylim()[1]) - - N,M = axes.shape - for i,ax in enumerate(axes.flatten()): - ax.set_xlim(xlim) - ax.set_ylim(ylim) - if (i)%M: - ax.set_yticks([]) - else: - removeRightTicks(ax) - if i<(M*(N-1)): - ax.set_xticks([]) - else: - removeUpperTicks(ax) - def x_frame1D(X,plot_limits=None,resolution=None): """ Internal helper function for making plots, returns a set of input values to plot as well as lower and upper limits diff --git a/GPy/testing/baseline/bayesian_gplvm_gradient.npz b/GPy/testing/baseline/bayesian_gplvm_gradient.npz deleted file mode 100644 index 1aca64d4689b632977da19c35d320597301cd2b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10155 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 diff --git a/GPy/testing/baseline/bayesian_gplvm_inducing.npz b/GPy/testing/baseline/bayesian_gplvm_inducing.npz deleted file mode 100644 index 01030a1931e4bcb0db52381825d2886cfa84e4f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2233 zcmWIWW@Zs#U|`??Vnv2sCVIuLKvp9VYXEU#MQU-hL9AYKeojtma!F=>9+(@Sm{*dS zn3I`UoSIUsmse0Z`;GW3X@Qd`0*(c&oi{0JPRx?Lr3>OFr>t1Fc)`4B@gYG|W{A&^ zpE8L{sNDOErXOpUc)E(%5~iP0ZC10axVCbMFzC541fV#@?w{U&Z=e$v0I?b#r=+H& zrvjaqUxeEsd6Ux?5_Sle8rUf*%zA8l9yHpbIj8<=vb{eM&Phv5rn++sekAnItxMoX zbCT_!ie@jMlR5~5P)=rEYI$Z#Nd~1M1dXb7k;aY>mZ1kw!6kLuk3g3wFfuSG18H1I zCqFH%IJJaAr?6RZxq)5tglXN}wY{s)z*SNvK3`%&Ng-&4hMZ|cVWIQwt*REzY3 zv%`Ncy=B=~WBaT0zq*;^zo)J5-%h?)KQ;Ts|E=|9hjxGev~BkHY7^_(k^8IC?AOmU zyjF5fwEF3?lTYtN+rPV>pZiMm!S8+bhkxC!{+buJ@xS7g_?sHvF4t9AUhY|PZ1uNN zTeo_?7Q0*b3wwWm{VKoy+x4HtyRYU&X05LX`8?tF{c>o;*N?3|`99EoJm5MJS zGl|G`u3gF|Rl+zbF@v w=@7>C;xP_23!0Nf+kD*ylh diff --git a/GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz b/GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz deleted file mode 100644 index cdd06e7a711574518dffa8de9c6b1c50dc095224..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2693 zcmWIWW@Zs#U|`??Vnv2sCVIuLKvp9VYXEU#MQU-hL9AYKeojtma!F=>9+(@Sm{*dS zn3I`UoSIUsmse0Z`;GW3X@Qd`0*(c&oi{0JPRx?Lr3>OFr>t1Fc)`4B@gYG|W{A&^ zpE8L{sNDOErXOpUc)E(%5~iP0ZC10axVCbMFzC541fV#@?w{U&Z=e$v0I@nAr=+H& zrvjaqUu2wu(-( zDN4*MPRlRK#pf2H%E)65OI9upSnVM9AgO-0UGILs1C5OA3M%}J@^2VX3vlGDhcAdq zi{o?3DU2>y5W#XCBa;X-?ph5PSYXfq%!jyhA$lDb;Eif3dIbeBlYyauu^W%6Xw?-y zLqQP=0}YJQK*!=LFyMxQqZi#wMC$Qi#5NiR2ZZ>+Uf-qZ?6}Q>& zG6vl^^wI%g+y*?xp_UcsW+KNCC|AQk1EUWcZYRR?cz`!6P#FUQHxSMSM!*#?4*=|| BV*&sG diff --git a/GPy/testing/baseline/bayesian_gplvm_latent.npz b/GPy/testing/baseline/bayesian_gplvm_latent.npz deleted file mode 100644 index 2e19707c730767dea5dbd8c2e5dd9c045c5ab0fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35834 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 diff --git a/GPy/testing/baseline/bayesian_gplvm_latent_3d.npz b/GPy/testing/baseline/bayesian_gplvm_latent_3d.npz deleted file mode 100644 index 3424eeb17bbe3b5ff977117c28bcac3ee1d10879..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10562 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 diff --git a/GPy/testing/baseline/bayesian_gplvm_magnification.npz b/GPy/testing/baseline/bayesian_gplvm_magnification.npz deleted file mode 100644 index 0aec4d8745e293acd8e016fa3d23d3fc5901cbea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36631 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 g6t3_I@Fv!j4op+vz6 literal 4599 zcmeI0c{J4BAIHbOgt3n$CLu%!Y3xNph|0dsV;f7Ev1Oa+ku^)6vSi7U5K2+XHc@0L zOf@0Pm<)y)TVpT=Gk!h&&U2pgbn5r}_ji7$d(ZdW@BRMqI_G}R>)!i5A6rWnR$%}D z!1?u&0R+ut$h9#80A(xy0O;$N-=ciOT-DuGF9rnv`^7U#H5d_n=hm_%=A3YE^%FVX zlg^?j7r#L-!}6Pjp>ersSs#s4#C2U;1LT7*1{nkb&%jR&X!XB)%psrWCtg?<6<2lh z5W82RjR6FcElvs#CgcoIcJ{TxRjG(ogLz~}=><`>OuYhpCx%j=t|2ncld0&Yc-=Pn zdbjZ(=PTa_%(f5@TUX&d^<7FT>@RjVjfFOO%`6Ft@gFceAWGoci*12ab0=($qS8J+ zuPr4?dH+^pa~^T{3jZ1XaBGl9R>A--wzj8>v$2af{J{qEZe1>>mnE0$aDAu(jBr429>7WoG<0;r2O<{ zTG;d0TJMXW4b-EEL$b;XRl3!dk5sxIE$z<_nGrO1JUk=OGXTBP>SXuFF`$P%+iLRV zqD}*~krKB(p)4o&xB=G8mv5frxV{_#0*;v82omy~Id2Q2mTaQ$XE>GyNFBZFx>slZ z2y=+%f{(Dm4HYP&j#0Ik$fmqF$t$0!3~^oXgmJocX_KGZ4W5+NbDfY5Rz*NHqY}yn z0?kIIz=V-<{1Z6*)ZE$;6Msxq&QXnI+t%tJ(h4cgY|74i620{c`@7^Zz%_KeT>+5XTAtbg}~gVn231`kU~% zI~Q{7#d<-azX5V>Sx>hCoa=ZMQ>{Xa=6y(RTl)1|_L#aJ*z=I>A+f>Ld!wDAYnaJj@KC8b243CSQ(pl9(&+X8QUuE|V2aOb1 zG|El*u5}M2@)VS&s~iYO8^D_8-RraU>#lySq%oTYfAJ{QX3(m5tE51%v;-o6rmU@p zM>=cau=2fg@v4$_{v4~oItEX+m8w+Sm&0`()<-(8=?R?N%Oia;jYR}IO&;+teMWFA zwz{zcQ(V*rcK|_SAE)#!6oAM~OF{M+8mBEY80b>;REJpt3vD_73!1f^@<2Q1dPVQR^`0D{N6f12c^g`g2UH7#2Bb#0HKr7ce&a1wFp8&6h1RJn&339-r3tDVjOeyM?!2s`+)pZJYO*U#_IJaK20uk8T zs71`S6DztOpFv8=zk&uP>}K6z z!;~y2*^7uB-9-ev+>qWU`mU@F_4GGZpf4yIr>Bu*%9^3j%P>rhOqPA|Nz$u7VZScr zpeZj22wp<3KJg(cn^Z&G7GH)n9CLho;epdzM;CHEOwz+)?Ad&zO9SPvM>*(}L716IL(T&`N3WG%j1Z?L<=V1$=O^XLqhByZp70Spi zF^5Ax6mg8os>m2*c@}(B)<1~q2{kYgCOXf?q}bn!941;AT_v$oyLx*M(Gv*0&7NXZ zA&EX4?Mb*|Hcr18Oa`ybSgtr)9qKrZFsjJg-7Vgc((7M!F6OvxqmP(rKcS3gBePoT z(+Vi;?rF!nWuMAQA01MjG;im|>v!>XYbp=vX_4!bDE#)_CV2VNLTdYTY{(Mir-c+z z>-Nmg`aLT65T5yCRf3N&5Hwkk+@4R7c1@$6XGlYjqd3+*vR%{)-ffg z;>n{sdTQN6PwHb^_Hx!WPnW>aoAJUBzkcW!pZM!r1B38z@Jh#^o~ALrf0^D}J!-|E zP~R}Xv4+pmUYAbA`-H?iBy=qANU470ASJ3ireZ_;Hm3_@H@UP)c!A0MWg~YzR5*2K zVzVCBIt9KM?c@1*Z%?jhJ8Wlf(%J39anFgOJ~nRj+BUQ!PJ|QL2z*LFdk)fu;{sNS zVttix%gPyXrL8UWYPu(p7>yBUd>WmadIlNYE~V>l_+nx*#P(~er-YKmHFQ(^3pMr{ z{6hH|hI*RL`D4>zXG7oE$BCwVriC3UiS5Iyw|NzkGm{?hId&u^M$j5`ki|xezN?zr zDefUb=z+J;NQgu4l}4&YTh}>7l+a-YQ|$`39nR{$j(V7p@v=a|xH5M{Z_NERKNGAo zZv<8CzR{a91YT7roe2KH|ry_3?-f)O-tN2c^( znEcyOS9`p5wLEYpGc*mYsn~MjRjEQ%DDjj)VenQtQIV^#Ua*YFlea=DBdW6(s-lfC zN-EgAlb8@bEq8Eo6=mjKcsxfT5K3eI4+8%<$wvQ`WPeHgOXB|>iJ6#%S$(^)JTr|2g{?H&cij diff --git a/GPy/testing/baseline/coverage_annotation_interact.npz b/GPy/testing/baseline/coverage_annotation_interact.npz index 2f974bcda5dbadc255d13cdf83a0a9f79919897b..114cc334d882a2d093a4bb96cc8034bf65f53c91 100644 GIT binary patch literal 27700 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 g6t3_I@Fv!j4op+vz6 diff --git a/GPy/testing/baseline/coverage_gradient.npz b/GPy/testing/baseline/coverage_gradient.npz index b30ed37e5b020cf12156f3466881ebaa3291fb9a..b9e01e6719220df055cf37d76f0b1a805cbbba57 100644 GIT binary patch delta 157 zcmeCTc*1BD;LXe;!oa}50mO<78qfY|1_4E6Dv}SqYYy9GIJBtA*^`E$p=Jj z&5l`d9h+svwUsM{S&z-&#|C-pUhbL=?#meiycwB9m~ogmd83%58nRh>c?FdL-mGju Ps~8x8&<#j;fH({QECnR_ literal 7183 zcmeI03pAT|AIB4SdWja*>BZDr*Vd&volEIuqial!n$;~sBGnNlT8&E*mrYw+(>2sO znkYs)w-rq(b?s0}Y_Adx!ird3k_sL~Vvp@LjamUQH4Mt3gFa&JUnQGeHXln0jC}~eJ-M~9wuH!e!+o(D8I0PV9akzgbyYx zz$Y-k2a7^tjW8j&)KT@9JCvU^I@LSnQ?9$Gd1hh0P4^}v?-XRFQ*IzmJ12duPDLbL zSK1m5f2!{&dqo}nk8N2}vl^dUeq*V0Ur7~WWCw9tg<^V0@r50TKm@1G8Yn0v8U^A7 zhl&Tmko|A32O?*wr1KjJQrbv_M6I)fh5!kw*CFxu@%vAZ*sUOuGnx6APLwqBiUv5OU*-9?`swFQ}+4N5Qxbp2*gMtrVFUhumHc`v2NXnJbTq= zd%f*|^0CcYB_!?}SPcudPJ*&VC}umqP2&ag8g|e9c4xi4U+D?k&i$D2Y-jeF`pxEb z-t#%y7w5ASe4jb*J$ZhO>|JS z&kmxfzNcVsj(%L^tIzC2KX%R>2g>w+x%mMHc$%+om9ZNJ-)Ux~mA0L#Y_nZR&-H8c zbkHj8*k<%-W*@NqjLrUTt#Jq|hyWc&Y;%0dI8azJtzk_ytf=c5PnGAelqpOri(Fqv zo4j!N#Urm;g+Ewr_*ihPKiUNy6vZ3Z9L1r8Otxnz8as39fW-KegZZN$P4S`aF8i!o z_7f(w+THf-v`C@29hltG?qSfKi346`#5On)ZgTq#%?b)h#tHbOaM!1wsvRXH*9H)_ z?L6c1k)psxtyh^kU>Pq=cH0;3_SW$2iZ+j)Na@MDTPVM{Qrk~UM;unC%y%HY%9IeNng-R_|wEqaV4H`9A29SG}=iQwAf zNWgubG%FU-bWd2&_n?nu)gR>jfc+CIhT7!O^P*=*HDd66%5yYtM>Pki9Z9o(!l@w) zx>A^EcLLE`&zMIU$GLXV6DEFEZ0)maOq_^v!xtA(sifLsFV9v3KF&ECF=b!wxF9p@ zOiBBviGI$}E;adp0$sFxS?;f{O}?e+aG}zq zYqk!_Rw3U)fD6;E*#;zAn|zB3E)I0fHY3?)taM~nvi($F;aa_2? zTjz6Sstl^Bq1?=!lg84IG~+72O=oMj70OITD9owG?S`c<>=_1ZCc|NKWztjX#~#T# zvG(85)vP2)SEk61uxlea`vlG0dD&8e#?03tjh+h=h}AFtN;5K$!^TE8zc{agB?6MMPlc@p-(&v8@pOAm9o&^ zq6h6NSlB~Z?02kpe`6967^SCWWK*I$Np+JiQumm@QIdhIDQlROC-0*wV>HY8%r7sX z`-QUo@uO44hA)k4c(b(@;}@t>7ZXHhZOJ!NcY7|yQ*724?rqijLAsHS*#;!Yso^MB4=B7tAdfj<&tdtJ~ zC7ev;92LOg0k47PfKQX#NE033-7MHMTT73_#-diIQ1v_bF(l{l{`S9^LCgnGe1h4Wv1rKv?~s&l82il}t|{u<2et|q*9@^K@~J?fiPP0{6L)nKC}+}CZ! zY2beCfU;#ZdF5EfR37O~wz7;YG~mxJ7AY zllhRtoLKx|dgrdToQ;#En*=Gxsve|QrMA(}->H&$x&QOIE9sPDGeWf)Z)hGBHsTcv z7+3Sajjq@iSBosHnt}b5wg`Oh|NCvxN-J8wEdr5VJJD+=dhJC2>rP~T!UOvbcnTtd zQ)`XW5H=uUjf_aLuyHB%6bY;j5Y^r|@h^n6LeH>J9}Lz%I5bFnRwWsSQvH#vyO~b8 zM|Sr~iLk896xS-pc`PC@Tx> ziRWAq*oq3S3^x`}6ib5$rLQ6QC%LPruxMPmEbIp!7Q|I_S$O5ASyX!^^kO2jG>A}7 zc?q=tXhcMHS28d54@-jxeOZpECSGo}%ZqBR^o2!# hUK&K`#%6A6^>nx2wC_aR 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 PB+m$hZa}&N#9;sc9}GTT diff --git a/GPy/testing/baseline/gp_2d_mean.npz b/GPy/testing/baseline/gp_2d_mean.npz index 86a72f6149fc030e09dc5dae21a14df0cb0ec3e2..de291d5053b538713db8b60ce447899c5b8e9615 100644 GIT binary patch delta 6719 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 W*-z^{*&#IHzu6-^Jofkyr2Y>BO}$wF delta 5720 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 K3IVN}fBFk{;+`h} diff --git a/GPy/testing/baseline/gp_3d_inducing.npz b/GPy/testing/baseline/gp_3d_inducing.npz deleted file mode 100644 index 082062d3487d2a0d1de04220f056f6caa5e0c10e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2702 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 RfZ#O#F@&E*&a=OK`VUXbFT?-< diff --git a/GPy/testing/baseline/gp_class_likelihood.npz b/GPy/testing/baseline/gp_class_likelihood.npz deleted file mode 100644 index 779ec00864fb84c830139a936dff2cce5a3988f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60052 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 diff --git a/GPy/testing/baseline/gp_class_raw.npz b/GPy/testing/baseline/gp_class_raw.npz deleted file mode 100644 index e85c91035cb6da08530356a5e693862aaf0a42e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77997 zcmeFaWl&$+mhO#1kl;asJHaiug`mOR-Q9w_y9Rd%?(PuWAq01KcYoRE-0n{2$cDO` z+x=GM!>am+g37O+HJD>PV?L85E({EU1ONa4@p$0^)X`H~@jZTWf4oQ@FAX~#D!|11Rn|g{zO4z15=&P2HMv8|F;VM$E^gTwo`}w1tx#06Xg$>u*VDk@%mSlWu~iZ zrDOenO9J`vKkg+MJ-{y{gUss(pB@PifdBx={|$+`#-k#C6u+95nYPZqCQ_9${L?Zg z0_*&Hp+8pF$FCC9HEx{0Pzg#5-+Mj&B9@>508l=O%2vnH+Cb~?U`cWI^gq;YAAIBN zVV#A(lTnZ?+P*7n;1d*e$`4AsWH@?Q(^6fUNM&!!AeU067(4u@)Qn4*shiKYgkfSwJspkF)=1^7gkcv!T%U}r)h-5xCEAZJQ%ZF~ z0%#D?F=7aYSNbHNC?*gE@Yh^~>nYtmJh8DArbPJrJ10|1gh7rSQBG4&VcrtL5-1zn z3E=1s1_uCOuvoq;YJflT=8}6~)W@*4)mj%vc^uc_Bnt_Pa&E<_pI6=+{KH%-iM~Yr<|J;4ub7~n0?h-rI~vFSO9xANbLopWAJSKTuF&c zk&RR&IlAWZ{GxI0=)}o;E{;APbqM|WA7W_52g=~S))Ig^!zq_AMDnLr>v=UG3+v$w zd&ay$fg`!?$>EARf+nyd#umqiK)Ou8AdqB*DQ>K{pY96blH20+Hd7F73&btt=aqh? zU463C<~~kZLp{P|y|;Ux(sXLsp-@kX`c_GfELxD?cL9Wh{2;}P0@jMDQ#l*IY@E-j z_=X_y;hbvk$d*M?*%<52-Vn%?lx~)OT99|=0z2$W0|Ouw3xe};^5A}XjHPl;3y8G? zX%SILsE>Zigt5l#TVKUAolvQ|T>Tv0#mJdui=3T>B4tDoK8j`FnVD~$i@uet`liRy z(gxBAx@Ef1^E*@u{(UgJ-IQb?pUFY zVEA4FV-yBFO(L;pBCi@ze9NS|^4kJnH`_d&c^LC+!fi5Eyne9M-0?c%lhB~nEa9?U z6vm4-i4F|+d(Din_iz&jI-{^s4onI8Rz6F9aydq7RIs*q9YzOuzUni2>ov7dupg5w z6m@l2Ao5vEieiE;xQVB{pY_%axJbaY!8rD!x7p6s<8-*YtE#W@1BN#=Wp_fRXGE(3z2` zQ`gvS@a*hT#L31{%vBd7{&6I90WD_e^)8y6bz#T0g{qAZl0_I@-TDXa0M3f-`^{YZoeZ46#nLteX!BX-i`%n#F_IgD(l%!oR?+Avn$w^wvgsTd< z6Y`a+N6r|8oYKBQK#tU>a3hpeb$SYfV}61$`y#X=GjtLu=6Zto`6 zB^DO-morOSmwE5C^ND#kdGM}mtgq!-J$#&;iNau8DfQ>jXVn0Mu=Vvc-way(Bhv<& zCV{S_;*`av+*o)?B4j-~PIgI9u~`X2 z_uU%+uMzKT%%yFzpen>L1EM!*T7Ba|-K%}N10+z3o(os z(d1o#DOPf6(*dM*C7gkFhv^TE7;JO+ z7#F?yFae+Eux+Jw0fR>@KU>$n4b%R5;U#nqL{Xl|HQ+oaj=Ol=vH!w?F7Hr}v_xw7H@@FCv$?dLPz(W;@1+u|d)V)vmvEMGwVNa@KM z%_#6MpNBT`nlQbv#;#79?A_?PN|`hRn;RLO#!IE zrL&rZhPKZa&elH80>a@_?$9~eLA&_Nj+rqtL(sD!W1+Exwqc(;@KHv4s^5>+<2v#X zspoDhysc}66F0XliVRKgQg(qIZ%fCeCXB71g8S5ZpRO*cxj+p!8Dn_1GeN)VdVB3? zxlVof$)&~Wk`CDW-FIn*F@85$gG9F(K1fA;rQ_VwK8TX$>DbZlLfnwN6iV-q`CGkt z-`e{2UxlG32CXz=gOYtQZKYgu+H`C7>xb!~DLKzgPV#ueNy|=lr+B%BS|gs3mY>iP zYAk!8dck9i`2n=6t5HRWuc(ke#q9N4aL;R&ke#`lZsH>k5~O5+0^-`ap}riFAEP_r zs*50pN@`48ky&Z6jiGPGMu=N)kxjRzC-g}SmTp*W`vprfeI#|1xp)<11k4Sc5X`;X z43zjbb56&w4{%~g)lKAuNtrV7i&Rh+@|sB19ST<3li^slrv_c`8VBfW&Se$XbOGOf zIw?ezGfD=-Rmi_o`!o_R9^PQ&J_Vg)?;LnbAe_pO7Jt|EFzB{iUdsvz{i@BJ2UTF|ZBV2q8xKRQ z6OT!Ez7Nz}a2;f-Yi;&Rxm`4!Tb>lf0iW^eM&KqRwZsr1m_X>>6WAslahA3mwUFv< zSO7Ve?13+@`9zo{Rb-Ao`f8OzR{4xEQi#aDz{W3taQLmz*-DcE*%a;uLG=xwI~D^I zwvA00jd&1d3F#?g0W%F>i%5*_YHp8padt3{%C7j?{ z6GQqseSG(b;&3!ur@)GcIPV z;Gs8Wemi?ulsE=;{?&k!C_f>TtwFsI!fIpoZAXOMW=@$aHpL1wcb>c3X;g-_w35A7&Jo7MYmX2Iwd936fgtWOaCR%mZ3F%8F8i`hFYW-O zL>?kidU~59hrACYp3-bq3LHmRFe9Ot^)p{+x|h$I3mu0ZnoCFa?&Jmyk6Ru%I}aXC z9e_&-^I#W;)Joo~o3z?dwJexP4JOk&P5>VsNQs&>JKX3qwKOkyBcBsE)F3WCRPSA* z5ADIS0^C0=3__^%gc*U`Ia{+Kcv*^*x9ntJcfAkHSO7Y_K5qvZbSf|bvb$s8a5gGn zoq#yJztp}GE8I2$uzQe=M)@RMX8|y;_G2~P#wz{I;@xL!CwhCq67-_ZW7+W@! z)M|0h*|Jk0Wfq zv*0xxUcnjVSEct`c>x2|53)Q3p(H1MZQV4C?boDEg| znvJ=9e{`|aP||m=19yS)WjVSnK8eukj=%6sbZV=k!|JZ*b^;lV-Ec(tLGt1tD}H)? z@T^+UKlGLD7X_<3F$R`S?$wRz+WX59&$?xsnVZ`C9ua3k>bZTk3AMO~!Y1X@TZ)!D zrZpSiZUHBE?q0}EZNS-PW~bsp`9wUo8%I>Vxie0UEP#s#KHB=_5Su%|No=;< zTdms_Wrmjfr52`27RqSglIHF&U!>_+`amaLA#z$MziFV+Y*D}i>^zSudh z#YI;G@0w*6qGK0U?gC9dpiaLdcVzehT*ApxrKma9itP+=lkF)C%4W@X4R|g$q*D93 zSPTYWxA}BbVz!gX6X2%YI-gSY!v$Q+Jp~kmUbQh6;N(I_!0Kz6>5##z=By6(WuM~C z_1iRlvSQ(UYo|fZ?<|oODWRhMSADHJqeWkZv)6C+CR$gP=Ost2?xodZ@k?bibO)QS zN692F-lc_2E|?y$8mM4VE9pJl9t3&{(T1!bA>6ERU3rF%zPl3GO>t%h86!&wZNF!s z$)U8kBXdExIly=M^r398AmsLBBck_Cf+0nBG>5j>&b~F3D?_==LiO)eHCHACFMiiN|AxJ8Ot3?TdTHJ<$D+=9M17Cp8yg=GZ^=zS&}$j zo4Zs+SLrJuGlQ8o*%GgEd{IRMeebGA$XI5(9qd-?)U?AjeLU8tPTA~vBN8{x?RL_b z7hc{_F9zP?^oMt!!$F%3A}LM ztC*Txbhj(P1+A62tNKZR6J)EB{H#j}w3b`GJMmjchHy22lQ`~3e<|J>OMrDImh>Z| zlpJT^*n>?o3c9JRa|HE!{A4p$Jd2epOzhb>RZ~v^{Rz zE4UNl1R9E&)T<7-lUzTZp83OQ9k`SHkZE5Sq6SF6tMP$8;;DhpQ*bB6J#id?8x75H zCp7-xTeReIKY03wKI&LGOJ8l{t{cUi3L$M^Sm3Oi?Vba(z8N%giyb12F=g3?9|NFi zEAx_goo739+)t7=vYcfws!Fg(H<2}Q%{v`*+MyvmBA*+kOQ z|6K@ng{L38jXe=eMx+Mrq^A%JJpNpao~xe)~xE3Cp$p(b^9${z*mW! z{2uq%&@VGRr7J``IP2NFb_sk!ij{CDGR}SATe!Moa3>ReM=ib=gurMGl_14PsOvB&&#FdspS(~b9hRZI|T3c&h8 zlnG$bL^F=t)q7?ZZ3iPq%9h((d=b4@8@C{_#r(~eqz{kY3sfmVO&jJ7SnBs?1FSS}t#SYtZ`?;A3$g-PYXKIpZ)3kF zRiD@*wp>7o(sA4|k}Co4G=cwv@b6OE)|MKkR=Q@ECjUA|`!o*7POi+{ z4Doy}tVN(-Sboks|2sKstkjG@|I5_+Q!xH3wf@hd&QA%^(>%tC{~v_t8|IY5Bpz>1 z>f`mVZqFYme|?C)C|8PW(Vrby_OJ!(m-|G+^lIhfpVZ7BP=8T!9*pI`lKsDs{9G~r zPM-fY3Hd){dHIAqFJ7>R#{a3Bf0af5gXF&w@;~pB{L`}_Px-C-$nu}D{USW9@e_EA zrseWd-Lge8Bsm;CgarF{u$J(c?o zi@hh#i^oHf(~^%{usVz1HP|y&CyoIAQnNq9{<*S`uz$I-PiLL(1VeecuyijVY>`h= z{lfJ_LzC-AiFzZ0J9bCZl-!7;QQ}V@e?9W_Gwh!W`w0723;PV#S}-}+rwdE}0>V=I zxHZb~JM&(+-Y!-=9PDqLQ@dnMPM@Z}?SK7C#r_QY=fXb1{?)=hgVk3r`2Oj_GQ5Pa z?xY=#FbJZ12h8!5d(1bv>_MEq`A!#m6C%F~`!npH3;PKBmkaxJ)+EXunWqcO_yWQf zIcpTZpI*J+6N`_ZI3Vb;1?XJp_^dwAe$9XLO916(*gqHc5%#YZ_8F|v?!FgK7nbQI zg!PgeSPy*ITj1pPWiYN=vT{Uqbzk5f$!GqDrQm1SKNt29_AeLq>8x4lOO;Q5;ClZO z!WzT`Ceygw)joVFFFuX7TnDDU2Oir9F^k6D{k41jO#A1`KGOc>%02^@UmgeI>C!U4 zgtXuZMbivs*Od=l-#mB3%u6ucj=aCjB#M{X*I@tBzka6ub7>!G|8i-c0b5ZcC-fiE zQa##*e|A>-zbp;SA4in`YFtWhmJ98`0IKuI4+qYZHCGcZs1L1a3)M-wVw1lf?fx0} z&+XzLxc`&1?^=0}o+0jwn6P|d#~`hE*Zpcs1d!VTmR(fsTb^68M(|_h;NE zX!`^ZcmyKdOe5ceg_SP{1D8f=Qny@_i}*QLBMbRQt9n(ldZFCB*IKRhV>jQa#} zU%-w%ht@`nPWc()zK9_UtafbLPr2w(-Q8SmcbGA|(Qxt(NjEa)6r29Fa(~8sg19eX z$(}*`DIn_X87uBfm@-PA;5g+z$b)^V__HaO@L3s0RL&{dyWygZhhP6_&d;<@(Dnsf z*)w1*mblHHA?=IUGL(RY2Hv%z-HQ|DxYYBTH1?nrh01NM!& zGu<;*+m|qAl!PZL;OXag^Fya<`%#k`UmiVga1T=-{v7r{Jm3C|`vh%Yz?nUVc7Jv{ z;OTWs`x4Hq2r;zja6r4cqB+=1STnOt%Mn#At=zFkgq7%5@9;D2pKJRE?O$!oo&g&) zSbFgEx}|*yUsgnQQ)MVp`(Xdj)Ypj))7X68c1dhYfAnf%x8zrCf5v@+wlCnzo zp$YShx_uE}7MFo+v~7ZQumCsx##Y|Nojs`e+gd|%+_jnGFW%v2+9zoH629!|u-thC z)X$LiC45ff_*0a6yHPpV=GJ9-w4bKS@^Y;{Y?7=XUz|czggGs(7#$@8kTnYJaAEg0wGT%AO8u8R>}kjMerf zJXw(rvyw{a?p-tIT5y-`V4E?x`fb3J>_Jow*8Z=n?a#PR(Dns9*>h-755K59qi$cs zlVQ2Wc(Kc3?>6TJfDzZbPQtFJeV;L@tG-HO|7ErPnf3|VzJw=xI_x`-v)pIY?Mrwv z%G|4B#zyArg?S>aZ9-Vis>i2Wu+K+r3D=bWP`5whK0(_TFlEo7O;Cj5c}Cs7gexlo z*~x+FljA5|(5!#x+Svwv9Mk~Ui?i3)V4wd|w?ET9LE9H_WzT@E=__e|hO{r?%8DZP zRIn2-Ri~(lMev`>)s1w7d^U=1!fa-SjXOL#I$&k{Z2 zlN9#phcwa5^`$6=bLyt_CDuNrx6QwLvY%<6AnglyvS+}8OnCJ^W3_z=PezHHrG=PR zeOs+|A;E9d1U>`!m`$jTp@j-jnf-OO{TcTO+P;7(dk(EPrO&r#)a{G7GT;rm@0mV*B5)PybrCKjS_@+ZQlp&!M&7CB=P)xG&<$0!j5^0+?NZC}EdJstKbM??Sc3;$b=hW^3w(nmwdEqa9m!2keS9xs%i zlAV7XF#P+wX6*hrn3~jmh5y4IxaFwU*Eu;>NYX1z!-~M0AO$v{7apN)`t3>qDgTGE z=%dL3@+q54C_a+6GpSK4Cxnn&{u&d`A67UzgRDABZ*HN6ZmKWH2bO{wGgz@u+;8Ic zcTm<5g_vZr60Q=4ZKSvEThn5A6uA2r#nqZ0Y8iHTVi!2EY`-8cUkn-TEmVu~EAgMj zZ$Hd^PMPnQr*0B2WtlgBxA&P$mU&KLVUee!H}hUNcuKS*Ilr0HA}7HEIW~rPU@lvI zYJZ56Q$w<3CI+j=Azz|IsoIovZ#A;?GP}p1frqv;H}r}w{8MKU^he|B?}S<{ zvrGl}p;h)I<>MjJG@@-SAA$jWC2ge1O8C$sO}~Ejarad$5GriXS9t1pe$I(Xm{39Q z>VZD(Wf~_#&k=qwEJV)2fFRj+t#1zdtSc^aK74G(i)ZZ7K1~^`sb-&hL;M9wu0iY@%OpE%Smdv@lrbQE$1_ zn$nQ<}eIEr4SK_R-GsNh@XeI zQd)rgV`*BhRa})DrU#o_Yo69Y>1O*5cTeZk`YL%~6h(M5S#>r$3H*zAnOS#kW_94^ zv`Q$W{}mpjDf6~%nkk^Y#Hpi$*gG8J^0y*4R43iEQSX)4XhWd`zuukI@d;!!YvCo3 z^31FndTL+sd|U*0X=HU(GS5+vsvOuI!7 zP`fxAg&qZGV82Ti`N-!X9K!GqDnfebOR*G=UBO?6)uoy=B0C83=;|zMCQX6XILoSq zY%%zcXbr2}=e0JCf25c5E|QdC7#t6WVsf(#GS64YbEM1omTs83@B;0vq%{<1{76ni zl8IpQ5<0S?*`jJnFKD^;I;{2-Xkn0c#o~19MRdFX*Skm)IKcPQ3}mZKwY}~mQKP&M(Y{EOAJ=5jDpNUK%Fm~}4L=U!k+W14 z0cv<08RwvntS(I2+Ruz zbc*_f*3_+BI+5x(soPTKyY8T{)Dh#a&v#A06$mNgSyvx`DA+rWO>0EC@ZodO5LFgy zLb?!&8^PP_8_=`TINVgCx2^4H0p7DYFTe(SE;c>DCf{xsr%GaO@Q}R)N+MNeJtJ;Y zS15eQ(K%DR+aDV+1X#6>dEz6tfc$at_ApJD2*tt}3ia#cIgI(L zZDv69Qym?oB;wZUi?2vh38Y+_m&J7bU){HVm<7hb=mM-t4`>?>0yVY^r|*9PQs0k2 z?GHf#0AHK!LH>q$h)ND6P{Rm5IV;u%*=L2by)CCJkpoAdNOguP2E|Qeg1DmP27zRq zUs?a!zh%b>u?v34{t&l2jk!S!>rligG%^XL1r9flve6z8BEgIsCV`Ku=B}nJQy0Fw zgiNHM|BKu4{J7-&4q<9Fb=lC2I$CV{n4VQf-=g-nH+!f9$cq+=J2ZPskm?7t3rYDT zVDK5)*qeF*+_U*stZ<)zXk9}F%>^RdJhadfZhG?F$d#Pv!pb2H>#4UGj>s0*?riXx zonW9rMVF#MjMO`0%^PDIUymO_YD(R+gc*zn>uZ_^A;^AuSHTld7TLAe!h~pXhw$j7sQ0yV!w zA5CF72^jeK_OsbH1&A78DXyLEK_J-luc|DI!qn%51$Vk82;>t*1*0GDUj%u=+ga%D zl4as7*A0+xjbP+PgUncHjLP$_o#04~ov--g@bO5KxD~iEH{y$2zE%`hxS%1j_uZuj z*)3DPdINMwx#qZ(#+5PL-bNe6&7<9!JY`ZmtKN)cw;2EZrFTE~FN}ZQzsxKR^nUlS z-#zSi5BuH2e)q87J?wv74>N|$@OFlNY+f(`0I2`GhuQzFfkj^6k2}u#n$3D9Ban5G zkfw)3_d;AbjS_r##Ru*!6rLp0Ey07X8Z}WQ5~WE;p6%IY|X{;`qmXn@`Txh z&E2g~6^Dk7m82J(2!!0{3yAkS#ip4BrppF7MY#q0_EVh03jyEnP*+F-7wauM=z4V=)tA zLJ_0vN3=N88B@A|Eol)R-&?BJ#M`%Ag;}Uf2Gz6PyP*VwKY~FK$~P>WTGY1J z&d9@s=YK0FTF+RzbjjRbD2Ld_4FcECkoZ& zpu3Jb{T0f2l(97N9%37vY4ttDSpd{^p%ImIMEhYovc?$3s(mUuu>`6#dBDsT`72?3 z`&6P*kuf2-j(XmAr?+7CB@)qD?52bPzR_>dO=y=rG2@R1z94i6Q)c<6d|LMWk$bOs zBMX1)Tw^OM$b{YQsi+WPfLBw{GaX%o0g7W;E&EWP0a0YW=6F;Q2>=2bjT;_-cWEKz zkNATXNZpB?l5UfD(Z;vI>P;^QHQl9?1&6O&wnEOEHy4oV+PHnE9ST6n&0TbdFv0+h zWfvLBV-S}ImmC*JBcOH`vb3_*I%v=oln+S6R9x%8$#z9;wB{MY4MH&>VZ-!^B%{?J z2qcwl;bd+Qk{QzdafD&xghCs)NN&|f*+}bNaI40`Lh^IG=OZ07&M3t%9_0nlv^om7&lD zJVv0B?K4|%i|37%*B4UNsug+1*)*@q!*`l#8`;(Zmu^nsay0mr|9%rcq7ZW`QRI3) za+_OzT(%;L2($XK(dEq^FpIM3{DFCHJj~^Km6eP=y*c5|>1lj<8V~U_!SN>BWPEqM zJVUAafGN&<&2sg1Dn?0zE)Oc&3k(trJ@t)11+hI-B9R5{x;05+?#gB@mKpC?ohqi~ zvY;y^rh6zUV_MK9{`Gc~yQ?H&6alE=s?ex*i5arws6eLLiqs~_uN$$U6P=>L)sK0j zS{VFZOO_#8e^q6&9l?lGoy{%Hoqkde0*xK2VO-CbgB zzl!h--CUZj={$9p?L&b>w1V8tD-qMYVz~u+aIf)U{k#DR`5|R-_=!aCRxYvc6Gmq6 ztyv0MLMf1hUb8rF)5qi&0+QDh_k^uu zJ$@KQLayA4A`#bK`CY^bmJG$(PQ9P?9rU#bQE(LF(o`yjA2EVZ2$@Lw{t6BJ=8&K1 zwQUH_fL7>`Ku3`K9yts=Lxu%`4DuphGdtv`IQm!fdx9TkY$uxuwLrej6Z`g7i)2*& zIMX;te$AVqnobt{K5#y8I73Pmwv|V}kX^3iBc_cImgrkhMJSD{wfn_pj%^JM zlz*RfjWg<|+oI%+hy)(Sm?+=1ibl2P`Tha%UH;_e{zlci?^f=V6=2w=(i@%3oaypTJcy;nRMtd$U^B zOn#}df}6+~{V7exGpJC>!j%bjY86$Eki-Q{GtgD71|55iO_pRKRvHY%!7Zo&1A9q0 z+UcxR(>%2A+KDbXG`+X^vd(AK6T^Tkl^`Y*0#Qk*i9^6^;*F}a0@cH5J>`to`R9@Q z!e-wy?1wFK%G))oGv@F4mUSuUC%$8u7-}hwzC6h2a@8{@BkIAQC7Yy~S-zGNiwh=) z>a%wJNJ!+w?;;u{9@??%K3mW}!mnEhQ=Ugyo8!YmH=bdY;k|ZGm;G3`psQ?*tT80vxp2gu?M;e;VSGwZOL94LisaxRC^D3N;Z?EErlwMnkz-^!DSEK>M z1C#z>W9+rl%O;|_!C;Sd4kPE&Nn20mQ2^&5K7LGjkLQ<#AxQ*9u*`W&#vmqfPEn6& z3`os>sltk?{ZUUg8RNdZJ1;80jZMa>SC)0D#_|onowZQyHO}2IlRHL)K1m*5SL1pY z&h)23aWu(TeuZSwK`j~H&BynqB`_Yp%Y&OO!EeI;xC8ZGP=R+ehc0(ga%~NQEJ0~Y zUX9-0F5%`PK_@hQYonMD6s2=yS`5K)Hli!c?!(o9qPIlFj$g8>^z8d(M(z2%R^PAz zxBT&yd_;ZeX`N#&d(LARfmz8lPJaSuKd;gw$|wQSso~G2kP2^E$P+|O`T1b^$0=CE zGI|JI!#@cPi9-NGnK;H=+x-@>UqBJH;d19lo)OdaN?8Yj`r!m8=-A? zYNZ9h1*}P|Og_ML z3^Tgj@KvtE_9K2410aILybzV3<(A-TlvQp+K!%$OyTp`5E=4=-JezMo(?_eTN-%Vk ztJnh3`@|G@DPL+t-N-K>S^ z>9v`%(^ho$kq!0yYd}HvtMHFGvtVbVY_W83jk24SUOrF(u8iQv>Vh9c)#dcf z@-b!b)8tly-M+JH^XZG3XS*lF^|{;8>qsnDZ$q9b8$I@IFWCt{lJ9|o!aHjwt-B-l zk?}1j{S2f4mp?gswp@-%q&TR50I$_*!Xw6FA_#3{Wav*gr^B;7Ir)kg5pVoW+~9Gv z-nR^v>G&LRypLy6RKdL(Eu&0O%}uTZnhxK;w~;ELipTOa)yMO-V~NrT%Qj@T)r%V# zfvX@e$|NPJr*r!ryN(w-?ec!RkBoy3q)cz!aNf3A@g^u}bQ+SNpg_N!tiu;|4Dj+F zbn20^jrUc{KgWcY#n-wKm>3*n9^eLFfh*m9hi1i98ci%Z^o^^llq!>0TV$F`@ckx_ zw|~H>gzTO6yL-6_BeV;&SXaw=dYNz!Z$2Ud2fI(eHy>Lxi}67nQHPEyp<{uTI*fGk z43KuCkD2PNt zN;~mE^{8}O{mxBvXd!nfgFDp|Cs%fCQ0$a7j@PE&I#v(_TX9Qc^a=R!dYFGCe;|tB zDgM5!|0Aa*zhW`0`RbM72jgzA&_r`!^!& z558=vc2_A5<2BI9qovs8ESHN+dYTCBihxe)6ppc!ZdCsMRcto6KYkzvUm!!Y8ix-X z84!3R&99wqFyL+08y=M(XwZl|O!vo8b#N&%HL92^1G#5oAaTzjOuikTonONRrFUS* z$x(xJ4Wi|&N)G21yGj(+_J!V0o)1r5f9LDS`TAb!!XMMJ5;3+OhWfCIL6RX`^Ki+L zDIwMX8bMKX@Pd`h4PGMMo>UBw3W0(g6&oq_ph1OLKNJDF_%oyBZIt;u-wqI!+AA}$ zkFqX?5-P>MoVXL~ikGVPG>s@#s8XgRP-WvnbFBh^BWv>THVFei6*raVB zLONZ%Fn5n6{VIDjxk&#}#kN=lV5opRJLGDx?T1*ju1YVO`kmnh%BMsil{>z)$#vje zYPr2(b5tKFH7gRE)z6EU-!=4ue*g+9B}X;xUBj4rp3*08n8b!a$+$)yL(`bcOcX$v z!C8z%N3SddR(QF;X`J)SiQSrAr@z9I*tY<>=od|$#r=|@cnO_OaDOxIe__?V<9|g& z*9H1RjcE9ri*|+=inp~V;Op(m9tPwbiVU$+O2{E=(2;FVk&p$%RB=bB_u?cUe3!?Y z{6tZ3n@ieI@Oj!vEM4YlM+7~V6G(Lu#xlFVr;WypQ}Q7{#0gvzDf?8Nvwq5@U)`ME zM)ab&}s&@WB@tx0uH|VZ#cuEeuv-@m-mW!2f{isE$Qd-6A zzVu&4iWC)8JD|ZU4{e<4cBcGJF1KWLCV{?-7!K^xCh{LAm$9xC>kc=l;?(EbAQ(*L zE^$x>;a)_>oC-7ez&i$4^-ONQ%}cMZx)s^u+F`GtA!W zEu6M{=mcVrsYJ;vSQ5k_Cr%l)Qv&d8dFUl9^xbGnWn6k!e;Z`f|a z_PINd~>vf*K22wtB!WM8zepI z&enZz^qA_3g?g3CT#LJeNiy_>FU4QQgSefup-^gS@w&eHGtWHUE$qMURR4T~$o@Y! zh<d&D|BjUZj+Fn7l>cvvlvmD`F?s#VINslS*xxs|WG-08?l72! z(vo*G?ZkUiwM1Q5!?$^(4Q_TCzgv!DC@51B7FMyS&a2amU4Bs5;b@Lyvc48-r?PfWonPAZa-0fZ62c=COcIgG?XJ7H5 z%xy^QB9AD!XFEmq=Z64jl{J$%dlcbXczv;Jb#}AeiYpuk`^W&DVkNBReR%<4O?=fh zJV6e7B2JriwsXyUzw>Y#Gy@FUitVD;*FjWq#NGfzVqXMW2-Ou=f_$kyN6H#MTKQ^y zU;egDSp8UiqecgW^S(`8gdQ&$%y*tF3?%sK=yG&|5lNq-ZQeB3%Esf?j;Fhb;`IZi zXJ>;spEwk@%dw{873&bP_?z{?{eYFWX2v&hGm^4g+y;VL-vVGSpfo2DJhpH=zf!IH zA1&?p5W%iWZQ`u6$*&C$1cKLN4qF{+yNQcmLOl1%->KrCM4M%5yV&( z`4bRPV^4Vd^c^pQo7xp@)c1mHcjaB&fZ3a?CENJ4I}qKXIkc;iEVjbftRh?#Qfov- z8;P&?crv+`S};xydH`;%LNMuI-F`ZVst$&S>Sg0gudJ_8SBR&w>i+^drC^=L!%sPx zcWYc~qs~1$5pL(NmfsRJ1iLdyBl4>d95v@P@|yl|9vbiVceZ z_;k>4KAa%YBuoR$Rd^*3VnE={S6Z}^vwRn5EkiU1Oqa3uJ#;t|stqN4HfV~=2@*!| zZ%qZk@+Fn^4~v%gRsdyK67|`nxtc3MLbsUtu{c!#b2l0eGAvPW`Bw%vDC)?~&s#rD zp{z;!UDVmV+n=LNEsWPQBqxFUvNtN^OC{9o)ZTCWs1rJx|yZUNz`xEU4Cc1Y-AWw{qh>*fS~@+~ zS$${)(F$fGA5nlE>FG4qG(>?pq6OY}hM2Pf?|8INvcu%>bkuq|wNkYdg{LkI!NO$* zfa+=am%5D9pNaS&r%XO{1xHn`7Ski^7~Tp zwSLs>FbN&wDXCRcN6~eA2nZ3I7RC2-z(E9sNC?<4l_I`skZI1on{~h&#KQWU_u$dp zz&p*Yx$oUS(s}Awv*n*~2$w>M5NQfQO@9gR&oTnFab!)UNYUw`R^uLu6q&1u+Y3AG zxb*=p!0D%^W6R40-L4}Eq?kT4Wg+Wc zkjw}>#QM=@BN?BG2BB7{71o*0MfC6uScM!cAjhC)^Nk`T8ZIp<3odj!UG0jAmMohx zjDLB3a^2U3&oXQ8XZc5cK7S|+oH(`FV7&5W=aEcgqzEr#D0p|jmOCV@ZIU&q8P&zb zn{taF)L|HQ>*(D#@)^yqfKK#!`xvl?qk+79BGP@^j{10m)gu*r>K?Z-$25 z3rdk!k-DZvi_c-$u_?N9q2;;bsP>|mgdezkS(f`z%lmRNnt7(fvr&@17`{T}Xbfrx zx%4-nfc*T+*6Poj_ZS~-dI73Bi@Sb~l49IMH+A(|n(_8#jGI4Xhc zkAIqyNL)JNV5j%m!1}g&rs%dr@KmeGEz`moL8Sq+IfKI-(qwzoVXJ^XWZB>B;eL%S zn24QOkd6UAhgQ!Te?|u^`W@R;hBlj*B0V3Uw#j|!ik`MH9q;vsdE3C z@<3;dZoky2@OgUpKgg^(@gFs(v?Gv)R30+ zZ}182oj@1zhB9caAsw`wBIh%1-WJWF+EPGe;vq%^OU&nU_%Wz#Eim!(G2?0NWHG(w zuA2nQ)=lBdq&k`usk8wRx~X!uLRI)61O~FTOulkhXZLXAU&*Qwdb>TxB-%>sx^teI zO!(t=e{dxuR4>)2IVLU@2F9B+23mhO*%Q9W=u_?<{b{ac(b4BAAn_SQnk@Xj&E-#_ zUeb7=m$X8LYA*60dFm;Pa}1=o+Z%P8k6MwDaxqS)_S^Bg^KF{89U48>W%21k?Wx?s zOnCZu6G9l_nS_x*hq+)UqoW{MJixPfMqT>UUBq}8B;(vea!)&zEmQ#Yl%f$zeWA4z zAA&AByEP87Fvh>@a$6Lf0gvAj`SG=c!>Eq{c)#I&HCnqoiE$41gFX%7 z_hR2{g|1R@XLUY{Zbg?EtpBgQvyQ5&ZTGc+bc52;-6;*y9TL*rA+2<$bP3YkCEZ;j zDV<7}bTzn{w&-OyC(p;_odlKC)u_Q%rd3E&6?Qzwqo3$QOs@1FV8dJwD zALK)&m@^YM7VyELTL~(lRL4(LFMB^Ga45c(*as63qrOO}pvfNf1y`w5*Lv9;0?l5C zz6KGwqj{>`V{KJg{keO@Uz@JQ^W#ugFWYf-vd;VgrGPu?g1(8ZaE1ks#>i074{uai zr4^h^)P7JMMA!1oiMme%1(gi~TB#sjP!^sqqykIiz z@Q!!~Y4C~URI(qF4xHBAv7GP<)6QG5hqu@zTi5Q_lw#*Q95$R zF)0WX?#Ebc;^w$SUzB&rx0S-hV~++gT39$bhlkQs=gHhMlf<$c5R3|}B6nLF*NC(y zZ+1^L$nRSo1O8-Im2|cF{-sB-kB2$);NQ)@a+KC#zd zEF`^wK}{}+-d$a{PH!P-x}q|;@8iimF3@e8j3?}&wrFyqI02KowoSGs2Jmh z4lyO;X%gD>G19w`=uYdX20u)SC(l&(U|Zm8Yi-Pm2!VmHte7__h>~azy028QG1A?1j@A!A z&+rFQ$)jdIGDRS8Dni zEz}$96B{{jLdF($b6LdMYz`Jtg2aOYPENeas^scwVO_YFOzP5L6T{&u}U3QDYh;`?w}o-*eWBPH9696WI$ETdl-Kepp@tONVy5Xngtp#CR9- z%=RhXQ(GtjUrWG{$R;x2bc)O_X<8$M(Eu5P z2@dx}dQh9#<9O0|_hdV7%~_(wqcMC#2-1EPA{t26+O7E`WBe_SUiWOiPhrTLMi?hm z%I+gkUD^wL#+IMftOq?7q$v$n5Jq~l!3ayQ${aa)VWK@@j^Q!56yfNUuP{G8WzDDI zH3*EtVjOg>f4(aNM#`0Ql7)}Hh)6vb3rW9YLVjR2eK5K*n=c`P_AJU&>t~SIoaAu? z1IdvXp6M3i+uS$6>>3Wwbg<|cLt)|sH`*;mScVdDh&*&W6N3ixcxl%r_Xr!cK>DT| zOuzL$dosBeIbiE*-S|RPY`DjBe1l>s>wRG>MVz+F(>eU0E{do<>x|UaOT^BO%m`pNEWcn?*&?9zRmzTMTs^gPWPB zey#E#)m$-_TWFK}0*0g`P-zmDG}C`{-l7gw4Ht8b=n$5`Ue4La*a7QZr=))U=`kUc zLw6xs6;r?-wms{3`1h2-G1D>LC5}`z6`~i1YOnUbs3eY+L=EIDYsP|lda44SojBs; zC+9rpNv-k?KvRJ|;-?>z=9girZVU1CfFiySe(xklj*&lcSp4L<9a{OaB!qMY?7odj zFPPQI!3l^^DuR{`FX$BkBKd{hkLo29M1RT|HndeD!7H)$f}k{Q#;>8inmkDSu81~d zScI$5kZJA)c4Wqmw(m8GH2l>$2>qxfg~N0T#o9y3d@KUfrwV;(ORIa>##Zndf)C}Iyv6ysZ^}M@Ys)hO7zr+} znd5?2{)q<9GaAgp@T1J^8A%lV1?NkajZq1+17;L|gi-P&E@Zf)DFmiU2wK^swv%o{ zjHN!|CtZN|^jspwmy?*l{)SA%ukn#2mM)K3+M>D|;XLHYuDPtnrFBdQwlnGCTT(k= zyX&|a>{yPrw$k@ZCPgXpAZ7`Mn;>7ak}j*$t~q0sP1;=TEzx6okzD*gtMPYRik^vX zCuQr^5A}|Qcn1^D`Z1L;3sbCmtQp|R`n^R*QA*i|>QzKPtC8_}T|6q2kh!3fzQ(A| zR3_&!Pdge_?t=qFGmu9R?lW7J1eAzb;2m2t8$7OvaKZK+|R;E>h215o=@S56~b_=v)TYccVRq z$K%w@J~U?^Rw(c5!B{DRV1sXeP3AtlQkz_EygUQ1eZg<#$B5t%qpI-a@Kn4ep#jNd zcECE?KQeiG##P;b57N6j4> z=)qi^RVI;@1!4u+K!_FX2AVdC?9yxo-!t8<@K&uX<{7A9m_Sie^iy&4Q0+Q3&In!2 zcb(H^JxXA#{yj?zXkeK+AJ|)cX{CR%ua&N%UHqem{B~OX_s+b(((2!HMG=pQ^_W*4Oan-!)XyYn6w%X?fb?{Trb$Hnp<7t8zqZn3<-^6TFtuE*}Y z$L_qx?!3qDyvOdm$L_rUm%8)j$+1d&e%qb*SBCv-lIzVWcce3FgF#2n0KQ0uZ>pa# zVYtv#To79o*hYvzwyk816U`T=4_t>?ciUO_+h(rIc}is{S=X?Hs=5KG{Iu(NPV^-#2Ke~(ixBo2x|Vs7ZDpTY2tmgZP-JwpVyb{Sx=JvDvs3uM#9Hk(%k#d} zJ>0;P>UGJg2q?h~mhlqbz9zqw!f=K1n^mP}40YrvB=EPgtlDv=0%j}r&W&JAkPxQ^ zP)TN(;Pc+vMpg@j`E?H$$%IkwhrXvRpkF8Yurs3+&%#RRwTg}N?JFCS<+@X5eq0g4 z_c8by+DVbN=8bXi0xY2E;ez_4DGB_Y!dLC}&Av4%N5yRrg8@$vhFo$BO)|!lv<63t6P{o)*ybZkew-(9!>m zpQ`pO#?hZun`PLpf_H+bcg^=UX9T$}{2U|;z0f?-!Fj|bKSWz$Y%^0?U_Hw}w0=?T ziqWF+!#vVB9@M0jDL4vNR{AQyxPy%qq{AihioTXiaqrd5((cw!Hi_4kV;i5moR2}{ zXD=geW@(PtXDpHYB0a|lH9l))h%d$HiNi%Y2wPnmkhr~{B_ipG0}-_MMD8pMZZ=i4 zLNM`wJ<_kleCypxtBTfV4W;Y3lsnzJRVZ$VbJ#H0rqkT6B4(=Kx(eEH)~dT;fpRhB ztSQEEN)kDqw(7LbOFggS(aWpS%+vR#!)D|utue8Nvq?5ct4Z!&?$6FS@;7!GVmSzl zB&VYD7_LouK73)A&VjU@9lZn&I&PSmWKVLS4rvqDY2Sx!R{*j{UDF3hzXf?+B|HuFAaPDM*QUsZ|HQj3yy4fTP(Qn#ICdDsMpC) z2s75%i~pt}SVp~vW}xJ#u&8Ny;2e{?GC^Y7!_qUMaBSL+bbKkd_^4L$%d9LvdApMr zrs1UcXgS}juv+Pa7dJU`~a%;7k8Ls`IP78%xUfA38i84A__Q zsi8ZF!PV4Mmxw$aA5KeH<@LF~m~A&!GDQdaM$08yL-l!d&p(sYqC)TVdD(Csi2?p& zlTyLQhH|G8Ys5>)4DS*pVSP0b)Fo_eogrnyup!rWWDz(dhw}RDYub~Xqy*&zIiU_m zu5)5tk&nq@+aHm)>j)PpUt}7$etaug2~gjC9Zs$YwR$20ZUGA|p-<~En$}Y1})h9sI{@Z))?X%Dee8i}I zJFrXPFO|{`-$LSt^?0#9W+K}19b+#X0JZ6ZGrpXO*p+;J>QJ+~zK1jglWtF- zS)xM*&C{$>bX8-kscXBCZwmwMENCKBW@6H8tk$uL6%!=NE3su7Y~-%f>Ww|dH<7)R z!~K@J0Hkie@u1sk!ml#=x_^a+6Tzx_Y_}Q*yh~&9;Qg@X6SGf!@3&4`d3=qKfjD#c zLMh9KQ#y2z-lF;aU~0O6ReFJ`9C9Fm?*qD4(0IY}jB|vW(M}ucd03)E5SMQA3d5U2 z_qVbTKa?jXi@vz)J6Af(#TgBUvJ-TR#d>jB3Cn9=GWx&fGb4E_+mzGzfg-LK7ruV4 zkUkC__lM&fWobIkOiTwuKC)8WHPuveZI%GJhOq(Q1}m+ZKfpcL+zXWE{uU(6gTgI}o zM%PKz#2gMg| zcowDmyjy7U=SFl$w>JOi_w=P1IiS?Yl8jACI(%0pvpVytCsZ+qo0!T~*B>{%yh2G{ z`T7&Tk0R9K-;cOf4T64_8q){Tsz*bc+HV_3*pHMd(VM6=35rJ7;ORs(=7?R+vM6ub z-RWl^PTB9q8uBclf|Np6$4mDz3fCtMVl$J_%egk_=KPRg5n|{6vVRiLq|F_ucq*92 z^6Euv!Sx<{s_hekQQ}Pq%EP9e!B07sA)t+ze1Y%U61D8a?c-FXKR{HlD3|n}(>h&f zkI=anLf9O!)HURN4z-5f2l73zAJ17{pR)JxTEQAwDO`YR=HKhl&p0QHziyw@^8J8t zBn1{?R~cr3IdeJPItTpu3Na>uhOYzqZ5?4@<6P^v60ac+6Z)%3_~ z_j)rRWGYatUx}~qAp!&405U+0ox6MtiaESa|4@I$*(@!Rx?Ji zJbf2e(QX(ly(?8Zvivo($Gg!W+9(tX_J=wePO;Y*_**Q7Vk-poRm+}cY z83rS}2m+Hvo*zEBWmD&eC$e>UiJm<==IN}wT2=08RvGph{Q~uFf8LBV=dSy2`}2N{ zUH1g~>jJWoS{Owmc{D_yGdk{(HB;@$MQ8LP`j*6QsHp+P~Q%qh{V%qz` zsP+9D5}sBmyO} zEr(sHg35A*w!_n6NH2lBt+=z0m!9HK(Zv8WS`3F_wv+OKI)Zdlj-xkeT3GSfA8Im? zV|jgh|EU4#EosLmgv?437&w@gOv)**xpDYp3<{;0nQKHzsqgwesKI<%{L6NqX)wbL zCNQ|A4Q9i;Uo2#INe$?9lQkS|FxY6M#|9}|XgRm%7L2TMjK8GUz~<`o?WXMi)avy_ zPA1U&yCiZ8>hgJ6FStN5#ZNAt8B(7e@WKpMI3%=Qgu;1e3h&h78r-xb-Q*7Gjr8R& zTDj7itl_b_Mr z3`egi|DuuC=<5nCt2x_A7}ildLDehaL>fTm+MwQ&l&p1rWN>2kM4mXz4(Vu}Vp=Zy z)4|xXkkf@uJ=0C99?KzlSk=+|$*0_&a=uzX@lKR08r?~-h0vJ?FM7_T9?hThb4k>BUu5%4-#R%(70FOD_7aAr*MU}cyT7!Zd|OB@ua@@^yU zn|5G_fsyyEK1PIPY20YL@qDrk)gpzhST?rA4CT$Cz7A3tNVyMX61CR>`*z!Y!SRS z5oM534Bl0@tn+V(YOjLWihytwV8nR503_5oz(DhQKOjY+rA8t+!uifc_DuGCz2W z`BOVBC%MEI*K?UPsPzuJLNf1W4Hzdz&xkeX0_0Snj+`S{yhY_S6u8pFaknNc~`5Bu)#&$wm8WcLg=I|nXd)d9%-+mTXfpQNE5dsHz^ zHO^T;svJ=@&MODrqaT&qipjPn=7;gUgz>U!e)>z|t%Y53wIW9(nk)+=uN|M2LoHi&4kHl%~D_+X?)otC~= z;<~4Vsyg_~Kz%Rw-fEynp9Xg@YWBhcF6=3NT@Sn$($-iQpagcXvb&LRCTg)kJ(@K_ z+HC3@jUt3fAdg``nP@;OV@;;*;z$U1QP+(7t)60G2nqe9uI z>)^2AnoF>=e%d`hQDrA7HbI{gj*y%zo%E^bgCh9EjxQa$KqPh<%+;rt72{w;7G`B? zp(^C=>l=(~35_rrD+TTBZBU{0*85yG;y_zbS#2w3-6^A-a+fY2VaU~%on5d)TN1)* zgVd9VG_#uEN4wi-XHsV90zTlKY}sm)ctbRVq6whwdxzp|5{l|U;w~#&;EtA;sBl#` zX2!!SfdpY5$k=^uauq$7fD(sz%z%BAdjXXFc<->24p@6-D$wf;S86mkBTT#w21m|Ty^^_X0b$@PCbxgPG< zV|eV>d%U^r)#`<$9}!Xe!a(jy~lpN$9}!Xe!c&f z`t`ao7sP^o+pqUmhW%^OE9#hF1CI!o%KeSOzbkt*~@<9&4PaH*zNS|2#W%;98){4@oK`K>~)j z{*qw5|L!nsC@N}*vxqE%ht8)*LZR8qD%AAi< z@q{ZX&U2%8-yV)r$vK%+@93-QWvQFK>{9*7%zcF)_=DYC| z!%*Yvy+$V?7Y^y|BoGGApq+6V*)}~??(anmHXTKU=-6CNreu<7vs?6OLf>=Cn(IA2 zos6nNalMV-sLa^__i}DHCHU&;0nH}&fi&R?bnG0s0)y=J4zuW9im!J~Q=D~IB15Y$ zH-?m4`SvDI2vuLdsQ;;jx0E*G=E_-y&H}v1=^L!`^%zSH(E^jUGhRRwETG%I1!3F}fA(v-3?n4- zb>YV(8!NE%qaHGN9Fn=KV;%pt?IA5pjM`Xo(H3*iGsdMe`d0_y=EV}2hz3&<2(bM< z9&WBv@fJvkl^RJD!)|o$Xevd!Bf);$MpuODR1Dx79=RqdNcT>z6+XHvS2vyZN5|^z~cFL@uRgU&_?nX(l+Wrj*1GW*8AlQ+&Zkn~5keXeJQE zPo)kjpy8i=sHv=AwP=!EQ3JO2g61QMrDvKN!;%!HD!Z?>TX2!W|i?LK#3_|zTTDXw#yKfxN?%dUKMWtfvx77}d#>wzj2mUd=sw@@-cuG_EWBisn@si7hI)Zv4X*wo zDd{OYWS&H(ihi;sWxM#|8rtgjk5kl@))>LAEH4IWm|&)2;%9*UWe2V%Wx7d?pFjln zo_8=3^GwS|W}g&-pJ9{?W55t6(^5Alrk)_LGZy}QhK&hc0ad^iJ_Ml@(;1{~+BrL# zk%U@H!QI3;rzXUyCWt3ELvlXbYiEOJcopfr0@3yY2Qk;GP@vNXvoBi}6HMjmG~B8j zCEbp^SK#0!EYwTb6Xi7<{BOn@@Ewg&;*UmVR5z3MdVnc}aif@m*9bI1) zoJdR(hPacb*1)TZY`Tx0gGi=OiQDup1*aGrp<+D`D4`P5#S>RKeYUScg4W(0Ps60~ z3K)|uzWd6iX{q~7OLIg(whQGjd*~rZ#p?wsn`^DKag5VAWs@l$p{c_L>;O+mE~5`i z!j-&{M6L8g!2uQa;28==jC|{*{kgRzcB{PvvRNM&1y5YWw6oVbp;}gT4CRD z@pL}{_8IDw$vI%7#dGKq?nC?>vBoy?4T*_%-s+?UP60nEkyxGVa2DhOyK+9p1z($` z$XF!!4UCMr%{lX1d@ZeyI|jWoy#ARKksPn9I1i zZNY=ljB7`i=ZHUtxU@D6rvj(>OH3GE_H$#;NEKDye*c^_Q4e5>s6kdVug^h4FduW#o1_qE1a?kT|-iC7ew#!-1zgo z0{C4c?`Wvw{|yo$^DOT$(Lqu9j@qf--^K7JKwLsr*6JP z5(;Le9hfgv*J&Nb)5X^x*dCz`dRdP=Y#p4HBId8&!Mxt_tvPLdUF+EA^^cD^2-g={ zHhUovGRj{d930v3kMwq))U0C?$Zj(DbD6q+nnL{^q@Deo-C??O!2OfOP|eayxdT&+ z{k;iGUHWPotKuc-Tm?kLC>AF7)L0sh*CAazd`V@e<-Nq;c;Vk|aMkW}u+NYU zUu8gN=`wm8ET)~l8Zlzja2@R_xFXTik{=Q&VaOIKF{~yY>a_7b4uD0g1WjK+s(WABd1ZmO=}E#>j~`#eAbb{(=AowX^hTODrBJWZo6L zl8Rn>cA0%d+92c+$NGE34Tb*oR<*KOrwu}|e1w;#^xprbfbt}dv&&N7D@4^|L)75Sa)CBO=6IIf>iC5{7~i*3Yy4!!3Q$FZ z3Faq1tG1D<@`o!EOdK)rUkERPdB>HA8D^cz9ns^@8RRdP3NS>4;z+awB1*P!zF*xI zkJe0M2;U!y%M-C{@*A=KNchqr)LK2$$iqvhuAUSu73-iT`<<%jr$CZR=) zN^!XE&|R#Ew!`{Jz4SBnRhbNObQ%=0x^47|z&^FiT%nw>-APH+&~A0X8KOv0uG;JA1irrA<$yq_SW<* z27JzVnK}#^;ap3QC=hHgMRv)^CODIuml!d6@8q>QkIi-d5{Cp*!)eewdt?369<81! z`wt>*wuIPw*Q=6E(-<$SHu?zW>3MvNohF`&lbM=Rb@}*Fuwolvy};Eh|K4w&WeHgo zTRijAjtrl;|4NF2D#-08X_dqK1R`y6UUl}KcaT+KpT`(oB~-MYKj%IYf9deY4WdI=H3~WfwcqpU}~f8*^9E3O+wg z!AK&CZ|zdV-*gU*oyMOIGu-OQ!_(O;=W8aeMVaMF`AL@`)Ip!G{W|u9gK*GrG`7ZR zoT$DsJ@7EEKH0s2Zi5ZyP1`I^Q?~WaJX6+^2`i4E&3O}yQlfXu(<{X=RxZWK1V-QsP%<)1+8PPCfE7ODiScIRJ z#ZJ@wT2Uxqd4OOAGd*RNrZ&@In!@l%;U37vf@#MP96HwzDcE z5O&%EBhcxBV#AJxJL*8dfoJm=w?|iXKq@j>d(E;U!n@8zQ{aT!cItKUO2jVskDLRb zINn?GNHHdM{(v?l2iGq|6_Fpi)9d|2UM|w_7N{z-o51HxGb15dQ7ocR z6-kw_1QSKdlx#)w1k!m{pH8}JB{g#NE$o7G$R^B4CZt4&%%x*8Y6yOkBHheJ>D^03 zm(U1!zbi`0FwDN%Ns-bJ=vrHE`wC5`)K_f}PT#bqPm7PwSnHw4hvSYGqc@ zG3;mk38=-!OPVg0QV0celBm2Hb&qksfy7QNECjp0u(y3wAZn*{8OSTV%Rd#2dxxJx z3~(NOzlO%1?jlb-H;D!JXJCaHrQoUyu0r@8R}Ixy7f*fGZzBCU$#Pk0;hiDH1^-m5 z3V7w0b=V;i-~keqj;$l4mbSITI-X*Ls7AZ*W)Z}|-2O7cz3OzT8ac_sKalxi!X3Q2 zQ6Qb1#ml{qBA$xE8lb~wAfZL|T3X{oyGaCurQ}S583yX<)+_vYLL-*rEG5sZ$+kJl zr<4P`)2&}|04to#c3P`j$p~pEV>)k-f^GMJky2D4dC(<;8v9*RX^-B_yl6rMO& z`MjF<%V+Ec6+z^dah`;%gbLsjs$;eHu|sUxUtD6M^cuh*N555gPATBgDzi14x`F>F z)hCF_fBq^_D%O*!3W2)Q#6_veJ$+)jhTE2gXKbN3E9+!`fGKV>Ig$xF3!`5!$XK#D z4hnUD0a7O!r79?2;~Mg-%;4(a83-=zrwu>U_dFX*K-Vd#L7|37%65yJTt}X$eiZP(q&yJtkD)oWJ{ zIOBy#=L)*2rGr*Bop3OyG+wV4XK1HmzH8wl`_3H{)<;A6)2gbEP&ucnn znmpt_SMf&UdT}DOV}|0x{1YsZ>ue@d!{kCp3)4qI4Q-R!2!8=4qb16ThF-mtlU+Sd zqGe58@EiQ4$jSD^o>qJ;tnMe8G>STE9@g5Pn&@opNW56qoqTmat8kA52Ut+yb~Ei% z!gsK5=?q3lgZI9@S+hO;zRschWvArwiUoDkQo)vOt)1t6?r0iMLee+AOWdi|H!m@& zOAy|b>q5yV1c^ByvHD;fPdjt8VDS1PD;*W2y67?&p*D_A`5>v^+?H8{l2_=N{IiOU zTwmt5IFM^~)U&qnwwg9DuR;X-<+A#?L+5|y_T{647qFM9K+|NUK-B8%9Xr9bw0a#m ztObM)T;cbZ1cF3_^`I39Q&&Z8O!Sw|y7$9t)HCYsr?_Wb^KF=$43Nvbq67t+?oo-0 z3q;|SZ9fn`6he%&#retbg9ON=KN8q@RJnkAZnLa#R6{%gw|7QnJ)L%7C&o@i+=K6G|Q}2{Bi?00`jlt%wR+@1!(?ueY80y%=!90BILlnP1GaQh!1?s@D-X{x~W8q%|+GP zNGSv-Qyk3E{Aki1M{LUB5WB{JG43F=RATEF7u zunW*qzn5b#qViI%UJ5lg0+xoZfa1)pgFqu=BbqCSY`s=x>$tI&eDXwER1rVsxKj_hez`FrxtpAupG% z@bPI1z+NzJFG>gm`RnVbFftA>`DjggkA zk(RZdt~Irpg}t=cU24+%o<7x^zfZo|h;O#PA8tSaH$VQ4s;6t9ck`djt?p%NBLy0% z-~4s*&32bbapU?sroNWW1I+by^aPO`p5K3C_CCNgH8Rt)HPW>)yw@{tq6768GxTO7 zxY_=GxB)2x|K8JFU*B5K=3ZbQ>+-h54F&n;&nf<<-F$ZgT6_R#p>^Z;>$%g=G1t|* z7cBC6;L7XfQ231gZ)J>JInEpKu>i zekrVC&Ht;eHyhp^bm7f^`rQF$ZRBu&1?b(LqYM8R?(XqQcT?=&;cTq5%&hgzt=``I zjNLw7?<&?mziC8-|Tqu&31Rk2Ogk4eDc#V zLoNv3TTDIL-<$q#PyX!(nE%_8--+(`o)4V-eE2~gTK`qdyXPnv{qKQ)c8=a=-#wQ~ z|AhU}xwKpqrl@_dwgv+r?O(^(pR(_2!!rH>`yn(19KV{$5Hedpz zeZzhTJ=p<sV6ZS*sYA^-Y`?XD(0ckS=(7w&StBua`2keKm zeGP)H?$>Syh-LzyeVct(+lm#C_6_?X?F8zd^7m_FvjIZC1fYGJeOJ5tPuLG>e{}af zzF*sx9gsFN0PWlCyV`^tf53i7J0o?j{Qeif0f1;00NS_NcePzO0cqc`AJP_5#D%zD zn}Q1vniYWdZT4O5i9caKq+M2}Ao{oV%{9iqA8tTC+<>&{eqAH~Dg15(Grjr~_(N>U zX1?9~#TNjx0R`o4_+9aE9)RLE@Q1|v=s67kJ}vK7{1q=iHlV1y4ZkbC^+)iB#0%%a z5bm#d93Mb&Kw)_sepg)dW@K^SHUF>Y@LyMJbT{ya#ML+4aPAjB0n7#zm$%_}#j|eS z9RMJH1Aj>TofL!W{o?XBm-GPGfCBS2{I2*@p+A8?Brf3}d3gUZUILg6C^B!u?}}^Q zj2Zz{g4ZkZs_eb!DDo%n3opHZ-una(PK*@Ow`zxOE2B0{gJ#?}}sG%sK+73V`G^I_Ao` zU%V4A8&GoIhTj!`rvXqLz?k#tnAg|)k8ylWfNVg?c^iIL{M#SFA39XLseM}RulTQb zoB=$WfRghz{H{3FO|byO9}#WWO(H!o7l$^KWcg6Yi{{;S!IQVL-)&0l#E?_pGZv-#&8 zh5kMO-GC4~?giajoPVzE{U1v2;C&Q;kh>N3oVXYAyM6k7g*j*c3Ho&z_dl%gKx56AiK>xl%`q#_nufo{>XP-cCUY(vi SvAy|9B7O4Y1RUt*xBml8t&gPu diff --git a/GPy/testing/baseline/gp_class_raw_link.npz b/GPy/testing/baseline/gp_class_raw_link.npz deleted file mode 100644 index c4e876fe361828a63e70290535b31eacd6a6b120..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79655 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 diff --git a/GPy/testing/baseline/gp_samples.npz b/GPy/testing/baseline/gp_samples.npz index f47b14f826dbc46dde1142ab81e2bfd5bb8681e6..1d6fa10154845eaa8addba83b9cf270d4591ebf3 100644 GIT binary patch literal 31491 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 diff --git a/GPy/testing/baseline/gplvm_latent.npz b/GPy/testing/baseline/gplvm_latent.npz deleted file mode 100644 index ebf171e22e6182fa0cac5a387893031dc503ecb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36261 zcmd42WmKHsmahv*aQEPW;1JwBxNC4J+})kv5L|-074A^DySux)6|Oh`eY?*%d*9K! z``&ZA$NsQJReh;?##*y}^Lgi6r6B$B6D9-%1ni$h0@2J$?d+h7T3HzzI+@$r{Ou(`-^R&Y-^yIy(b&k5-p0;7?G)!2A9ZL@prGZFAZDIpmr3y=^8kM1fxN-YQV3&)fUJO9HYUNCnmH+(%jCIr10gu>sU zgZ~5pA^2x~{U_&VYhvPP?DRL3jJQV*d}xRP z<8qIvv7)PBe%uwM9>XXsOTap9Irp}O1k)`6(|)RgPAr~hNorJa-VBh|Qb$(NvW0QL z74x=+tHCsiJGBWNjWkTV)bNhs6ufc(1_M_G0?|K-7exclH|`$y z?)GsRf6`a~5NBNlL1zrE!OZ|a;uko2oenjpQC&~tlnmOE<6gI93H>v$wH}>cS=hw; z0fcvp2fc|W5xxSU(>0SNw;~9%A82_BGWf(o@Kxnnl+#I!WkIJG)xD3*L|)3iq2^qD z3ycMOrk*;D&d+N@K*KN{-+AvotrolOd`PC`JYZJpcHrk5v%dJn<+;265fSbQUuPpT zCF#q<2hg=lC;>tDaGBP;i@5w;{ZdCj1L`(_PIi*-x^s{Ir z8f*GeJJx>adWxI2)e#LBWKMu@Y^t@uGF5QmmpjcjGYVfcZgiZPFm5ahqjbi*Fnufh zx(?eOYvD)G)`ZKnd-B{+>FKFX;L!$F4MiC2M`fg(TNj52=HjL_U$`xozIoCEVyL3; zI*(SgBsNNjB7Dy1fm$uCh~^1?v!fkCYd(UI|=*HCMoc0_w4uKoSJLYj)E9^u3xgw1mn}sfSXMPK)4!0zU9}swxik?MkAqDBN-@!3E}=!PXq~B z4>nd&jey9LV#xL%!Hr*Zm1RGMc-1D$MvxaN{x)n*$0ZR?GM(oilMjr-f}zi%``I9Q zG_cD@UgOzzhHiGo-aqY5{}s_;(xLxX5uLwK z{s%?Jr(zmSUj|?*F}h{-fgl z3+#VJaoC%#jxhcc#rcco?-b{i1rwGa#J)&6KatdcP^k9nY7DzqpM=wK?v7CPHM_2+ z#{391VPvbEJ(CkUJpr5J$#`x)gGJ9bjRl8pyvn7jM4jjESjYEnz7Fq9fWUN)D9P%2ga|7Fu%EJ5xdKLUN4Vz=Y)ZvcS4Aivp5GgEX6493 zi$2xwFVZUc(s7ytw1x8c`ALhW;ktI3VrwBKz`|zPP~!PiysJ~3nJV2+eu9$2|JBTKH&SgDN zbGINdvBH-7ruUJ*|I&OU>G^7zf9gzn#bEGlisky^+O?7YQbt9G)bH0f5Z*>5P+{e* z%z;9mDEHQK5kv{RI?%67tIlDT;KKWDC4%3*{nprX%}8CuSsHEs+vL*FKM0OQ1v$Nh z188erww zj4yH|_t!z+EE8{#2U2i!`ijYuL$&hm7`MhZ7>DX(*7qoa`}xmu$cn0Zt{&}87W>j< zY<(qkMzADv-s&TY<2^WaS9ERI)SnKH+>B5VzjP#}Ow3~Ugf(iB?>FdBNpK08h)d@r z>VMt-acw_|o~Y8ikZrn`Rx)41Wi^+nY*_^G58nOi5eEK{&NE+Ve^ZT_y7^N$o&rTV z{v5<2M5bqoJJ`xS^!;n0lU5j2@UZG$F{(E`e--`pItG0}3r6|P>tZxO$H`GsI{qj5 ziPOHs4k9JmP74tctyQd)+A0mY#mTBHrgkEEwG+ zZL^pS3lPotuJW5N(1-rAanUg$_>vT&_09&DuHNkDYK(#WNu3Y+VV?%&pmRCpA)|(n zjSnc!Zd5yB>TUY^@9>THFw&Uq$Sh5WqkIB%(hEZ`+6o}3N0?itO{~VJ%J3uAgVvkn zqwXj-a$qio?Lrg~>$a29Dk|ML)7u}53dG>|BG=weX%Y;90)`45aVWTBq95+CVVrxt z>j{vUBnWaP+AcICDjRs^Dpms{HkB*IoYXEyh)N2>yYOJKb|!9UTnt7ToWum@Kd|oN zayzHMGrDBnEqqpi)_@{4CH{?!xH>VI9Ra^(E;nZZYl$83>fr7y<<+Qsx^}cZ6R_S~ zQefC`xtS?ewb$>Q<4wpy^H2u+2KD!@Q(vtKR{Xc<{f}JdZ<+Gn<~si#!K(k?6z4Cv ze*wk$3*%o_asGn)mrxw$KOp}ivz)(B{s$FjjcaQ6->)hDBa`?G>Ayj7T3kCj`QZ_D zm%{zJ*q>`n1vexAad`4y@tnWt{%1U=m;C!I;eX;ef6@G%=RERYx)J;ouTU7C`WiWA zWn8Y#)W@CrnC-q>NZC~GcnH@MV3t+j;wdqFj+)q8vzIPgx@3}R9%q|R5P&-n#RD3w zV=?jTpkg)MLE;#&F!MQnJ4`?W~8)&*0566InOnn7fu3 zw0UnDlhYa#y*L#@)c3pMyI@^J;Pl0J7w{T7VF+3yE|$W>V>DMnS3%MG{z$eawb@Yk zD_+6AN}B3m!53FaV7kRl-ir*0aDfP{3QZ{~4=?`JoDb$k@shuxhqF@z21ZbASv@h8 zPhhe0=xF*rBJ+b(t^peeHgcP9%}p1@p^=lkx24?Q3&ndCdqNy;Yr-EYHY=OIM2EmF z9}cTt+#Dv3{fi3MX+oi-fS!susFg^v^FYY-$2uJhVboI-S)C<99G7=O>oda?Qn)X6 zhv9h7Vv1hL)S2YXjbP=;Cu!(!P50LMPkd(GPdEsgA+R@Z*XmU_8Dg{HQL$+y=#A`o zH(vsJMTxwFWQf6Nu(I7x84SmQZ@af;n9=f8K#?QXwIX6`kWU1lKRmm0HD(%^8DjC( zJ+RbT>k_{y$K~i+Ygc;L6^0BhM=g4VT7gJ--U6J}F@_~kI*YC;Xk)|v3A5PL;Uu{S-Lh&2*jyWhl*jhDsD|A70V;4B%^Cx|e z;rm<$Z1dAB@n%aT5BzYBS-mw4aSU{v#yDh7UZX*p>Z$$W&!M$GTLp)tODR)2z9)=* zR%p|AF0ju2&BaqCcvF&`1YnfA$>_LQgt8C<9bCHe!D5f1NT$^C^{fvX>enmFxgi|E zJt!{ofiX0}of3+(ADI)?+7f_RHL105PPkvHVwY6v${xEN)9Q!p1#bMG&ihY_()V;A=QB+i@hDQ)j)2Z-bf{%z%_e3Iu zb1S7@N$}?K|IES63#y+NR8K!Cb}k@xpKZjTGiTPbM8BJ{7WbR^{on>w3z_zdu!p3e zZLsl|-0!f(kKDoU$P~B+&IhmWMe+(eh1OzSj{tKATUl{+g=JOZaf4ljh zv(=h-nExp!dkBcne;)q*E|$5qzUlvcKMU~vui;X9+9N>rVx=!lRElPbH`9HYGGBu= zSE(paDJM*XhCIwnAAJUkOS}|Wnlp1bNxKK)T;`J4WsN-~jOD@Cv{6y2T zO)Yk7_xSLXga(}ieQdGOd>~jMIE=k#bRx8C&g3B|FgWPRN{1M|*?#6d6M%)+9>&}D zwbOKk;yT7$!oD7f8e5G=?D_rKRMU|fe`c?qWavh%DXl1yb{)?JBbVFm&Yd@(sPtn_ z+x~pAB%#c6t<4t4+g9{@n~#6;q#{DvxA47)0yMfK*Oi%R75!*7#Dj*%E+= zr2JI7@R@gB+^az2Xe;2UanIDWW=V=z@fR_2SkzHYGn2a8b1KoOMGel&?Q~E3O^fo{ z?v0(NgV^(nXR~_xOIE83ejkv8AxrZdZVsqm$l?8|c@U_*MCnEPpB$9XCqy^aUPZxLHBb5=g@X zmJa{ghG8Z^a=X}6b>v2W0i$8ZIE$ZPq_*9&cV-hqzhg8^Tzq?@`SK@+Q~rJNl?#!6 z=ShUfx(6-A+umuT!Alq%Phn5$mLT?rR?&uE>qa?Oqje^E4%iK+>&qQHDM2H)w&`~b zMmfjF>CL8q+pTmF^7g*@Ae_8~oGh zoebXe_+m2B%1qV1i2PR6#?xoO&9Y;^hWDv4lohX$^nSaetu%W6sm3{LZR zkK!Dn@t}(mzRBWn7L+uB-t)P>qUXqPSymm^w&r%W?O5bsMC^0v<%$52bG!~;qxIXC z;PE-SNO5ai#Am74a{D6DtZ~Io~vrniKk*-RhzkIl**j_!H>rykYktj0?Hz}?T&N#JF z#7oAyOj&r9%|&Zt@75Mi6_uoj7;Ir_oH|&jVZk7{%y#cYq;9u{zzuo*s`h5#15vpAr+(waTOsTb>sQ68^ zG0Lvm9 zW+p^X1+Jy}X!W0DQAo5ZBtr=%#m|P4@R?c7CQ|`P_ZLJ+k(vds#rTKGKKRJ8@Q5!{ zjr-NFOdquhCzeKdhkLEcWvA=$HPjuKMLm}c*vB6v9-oiws%&0!bndda+`f3Et{$k4=~4`N4^`kXq0MDz_9erYpk*D={d<5xV(SCN4Dj~D`2Ru ze&6vMN%LQNIIG`@YeB=$bJgMpNmP-HrL(EecKiEpN4KboYlIfQRTJ@4Z5o)lx!U=M zVRfyS5@k_>eN$qlt7F3aKKYgRAwUlc(+6^YV$7~(A{VnvhyvOGWjV;EuNID0n#gO9 zCX;23`0T@i>$m>ca_V%|HgjIiSuwv!rEb$}Z3n-@S)>g=&XhRZ43o)@IUlFaW~wLM zWKYYy|F26IolyZrZXWg@INT`6mD;SzNvGvY6*u@~@5`!fP7d?mM`Bl0@q_Ea7&e*# zjw1N3JL?xH=oVjl_dpx32%5)Jq3=!tX1YMHD0n|+{lwy z2IJACTX(MkmZIfzdTWLZ#;1khj`tqtHBU}cbe^So>=COA)PxA0=H8zOxLb7s9+V@! zTa81QrjAC0Y3M7>H?5s5_}fCFR*|>ZxI-XezWaGU^29}VjjQ=PrbrZDt|p>&cc;t= z4RA$S(edhZpRn(DCRTVRe%tI;quadS(%>y}%G!or-6OGcQO)e-AlhA#PiKAH*s&M` z9hJIQaWzTq47<`B*kXNZe$-!=iJqohaEX@1lzTFp#G^@t;%t)aWr4(uYK(45Cp66qH1Rf)m13DzbE%*&( z%Mp1B>_oHuduzk(e$fS&XIsP@#3rbTwf@c-po=6^$Dsl^V;iF>E$UZDOa5HJ(dF8k z1;Pm#(i;N42u`gT<39Ndhf;C0%rjZ}Lg|hDxoE#pudfHEQR0i8V=fT|AI@j@qhpf! zf@a}XDI8|sj5DW&!|gp$UtmuU_oXLrSH}2IZ)s#LBku!YLIWPVkB7{@*6r2B>=)~Y z3vOVw^DlO?buVPCwjT)YXP(Ha6lS^4#NXyiIw4O%~gwD_G-zx@nmh9ovLB3zCC{0WI8s_X5I? z3ujp?nvqPGR0rpRQ`Qs)wK!$St7F{*r-tw>+Jo-xd>fROgWm_6eZ7Ba(>K$1XeW2? zY~5dEt+XFrZSg#S`x52&Rn13VNy_Ov=kl{7**6~a25Qb{m>&)~ixQr#`H2NGFS0bB zQ($68TcwKAc$yv9Q zDQXPPp=_%4b65ORb2P^Ue{UF>ju}8NpAr(Q@Z}q3KY7=M(-LmK7pyl6JFKoWPK-NH zBB6h`Y#2|I6LuJ~TB-&=>1pZMrWllI?coN_kkZT5AH~jgZ4-lL6Eo(5LG_cTz*u(nDDJl8 z#v-V5lXCqwIa#{|!vme<;;?jbLxj>KGr_xYwH<;I zgqmaLHC5qC-16ztwx#ND!ya;cP4{T7N&Baz=0F53+o#WC$u(}EMu>~l$~K9|fq~9p zPTfvS$h${i!pJa!!prHUzYP;)p;^=8H=Es^{DqqNf(kE!gr=I#(!dZPCA7zGf0KkK z(M|qJLilL<0lCIAXL3Umn}a4TzE2?}kDUFY!r89}_OBUGdm2o4&m!t(OV%B&G;v|I z2Z+c-1jd~+TUYm%o}Uj7@sVOO`#U#%K_~_3xdAS7k1wS3gaz>kg*+-VRrLNcXwu>;aFr&fFHS>Ck|?b`TdN(t;ukj2GkKyX zq^Bn$dZ1Q%c21;nhw%l!cm0AT99d^O@L1O>Zuzp=8n8NhULJoc^5y2{%WZ2G-+>MXh);j_XmDm8zSa}NyEBZ1bV=57v zD?#bT`YBI5V)S%1Pe&1`M%#V2E4-AQ?<^i=K)9fR@#8gNTI#Z(3Y{?50gRfc)Pc;Bpo`jL7*K%*Rkd;Rnow3*FcE=D&V!}bn+E=G25Ie z%o;JVh!xWq6NRV+SNxXcRK`Ta_jC^b@lN$!TbYB|p8C~o9i0$+yHa%6>8?s4ZgXT= zQPAt5Vm8=v*Na`w(YI+nGn@hvXc;lyBk#V(Ie{xu3CzV=P21dY^@Cfx&4941sLVPz z7U}Y~SpU@^0uLDWwVLAzJ2Oi z!0D6_vymG3!2d?2c51CV5de^==~}j;XV2R6S>_(>GAYNckCo;coaYlTmcqq#V* z@M5<@@v&rS?(%=)tt~I?r%Uj#K}WGL5&|%rRWEQ;q;`z*tzE}MieD_hD=5Rmu{<(+rZ;Ks3rB8?zke2pn$+XBH1=82$D=!#$0RI3%R1$G8!r_iUSHQ? zY0P((6S*bcb~)~{v3e~l_4818y&cuE5WxxVK&IF`T@cM5h%hTc4f>H9e z-ZxF*)}zIqZ&;lVj%_Wtd@l|@MWBwhicsn#Nqs49YQsKFZVY<0RHw8AXf8T+h zd#(FKflg$6YNkHi9c+ET3O23T!lNygbFNY3czSq$7|t-kp_SyKzSYKee43v(S&0dz>-H zAexGb*R0aw2}3PHVG_tMnOmjNnB^!D)*U2wme?u!0k#|9R0?xleK)h4SjbD{;_HlV zjk~>_otZJA-EFNOR3C&w%gM=o^Th)c6Off8q6@W3s(t>F-579Fw-!!etI4OorR41D zHyIt&wTO@IlH1#Xv@?O1X`CybAEYMza@LKPl$%Nqtr|4{JQErnu1$-W_QNpy*?s3U zf|;9O;xhr*j=~YpIi1kPQf=PlB91$ zqvhLS(LIh_9vN;Cg5sRVWgz5U2zZ?=hUkcUBfsWLau6{OSSSFyW{Q@;u3l|ZuXMSL zYx$L+Ch34OIIso5?D zODJE?#YCcz-a94^J(pxiHJ0PBbT_-jP#bnIYYq17Z@_2iRG?K5SEm_|ZsvXw-x9YY zfnj6IP|J(poP6Ln;k-_cOfSB=M|rNbpHg_9V4!9X%!-P1(lzO#+G>4I#y|k1d$`Ix zj`h;DILggw$egM@s_+W!TQl$aGKb%U&zgD`5XZWocw~MfNbdP*z>2+xGc~lTW)X$H z!78(s4xEwsSfY(M-Z(W$-*E0Xs^xu(sPt02lZOI6ga^i7+}h=8SST6C6OAqu2-KV{ z^br;-t&95VwCcJ#E5Df%{xFdQ?qSfc%+y_*VO(u}Im-Nbi-Nm(ntpYwLewNsJ?mb^ zi5-q>FXw? zD+%;^LwFiJPWRmc?kl4w2{$hM%(B%WSQxnPL!wrht6nQdOTum9Lu8}zrME_ZtzpDS zfPV$ow)k1Ft4EO4VM7Bx=~;AK6yx33t!>Ua@IkC7@V&u795V4+c#T8Hc!>MhvGvA} z$ExT_kCz=-l)G9-fZQO)dZLw&ZAM>E`B=+74p~wU8NaD^`A(;4^Lud(5&`3F0K=`! zmY(T|=y)Bz)#!V>e)OW|G$;-M87QNlXP~*s0Yb;7Td-w|yEW-Ll5SdBE~dNGX{98q zWVv$cBk;60rD%8A?;|2K60~xDOx=6_+z9^STzn-1{ldfl+TxKK=Fb^r;kw}? z-}aQ9nC=J4rcZ^Sh1l@GdC|;htfKPu42i313X^x83hb$o?`+6Vj+g6~uPZZ|+NbL? z`Bqz_J&}}MzQdyrn{N?Hv{Mu>*EFgf)-n(mI!7lS97>H$`y-=e_O;|Y={BvXYto3q(F7Q|rge^ri)bWx*H&}`cX0X_%(AoQX{fSUHbKaqaEkjb zlReXtu;3;@J?mItW7?j*MA}1@2J_l^dp>GjoN~M_27vgPhARJHH%B92&V?rM*t%-igTX&eAixH0#3%Odpx<}9MI$s#s1u0Z?V``| z&i@e`GW)4eSP3raMtDBR(z3D9!*bE4g$xI4X=q!CoPccReKcyLw@dqN3+rP(fU@J! zS)n~8(l^I;F8sb`%Mh@QZ`RqLwH?BMzfsMobGuy8X@o7r?tS$8p!UnjRQlq2Z{UGj zQd2Ak1`nRFT#7GwlbgtXxEkjX0Quyj3-XNpP}SA_k^=Xe=ku`R@)sodm6mwVHgoku zVdKvj{NYS#jf^Ih(a|)*bHo=%UF%LJ^X553zn*nZfLMp!M^gSdU$+V&TQ11=Pc$Ut zwe1%SKjKetr!;tLak-`EROOqY;IPFppA4g1ebHDz-S_kZbzQO9Yth_=nJIITpzDhIOcC(?qSj9 zn+%hoH0`qGF0Db7{q8;u+cz$3oO%6BV{%NtbpySdn)sJCHO@PY_Hx+Bm6RafiV zLv_g}`NwX6dw*gSqM4&x^uu`n=QIh*2 zwd&2yt|kACP4jHwJ6iUx)b+M-3-t?M-cx%;mXP;sS1zsyK){k-z^zp+6qUxXu0STV zLf)PjUZw*XH~o`&Lz5ZhE+xjfS%);8QUpP2&C|=gsL3g7`Jsv3BA}N!ayui~9&Pr~V+Y_)+4Z6@axJF3dq85z~`)qxcH z0oC>SyDSj3Gz)-FO-tsvX^aN^OcH3TRAdtkmGYil7amZD3RQ!4{br4MJ^ZS9y!jm5o2dXiW8G7f$fi4_jhEe&^qPdn-8~m!miq^* z&pt%G@8TY*>0I|3Jj6LH^**K8;2b?et4jBT=)$ny(#KyPs=h6~7mme8hn;#N_$*yA zS+@t9O_!3gw2abVCyxYABcz21?HZ)Xrp)oqVsXvhlb;PD|O|-cZltE-U(~4k5Q-gcJ2NK%oGPrl?%HsAyEear|h6s<8qoCTLAR1)PG zicjuz7y!%gQLlGb!G>KpX?iyIPnuVh$^$xB)v?Ykn)@enbiVfDw=uu zRo7Scvx+3gZJomRgmPzi^t+6g$S6f^s(QFHVXKdpo*i+s0`1xovB>YGL(i164pc&M zzxbHj|4hk+gik$5YAC_)1TPo3SQ~$2h4Sbhj%y-rEH?Z-O)7GF)L#A)F9bV%$Ur8^ z52%eIj9DOSGp$Y66k`ZV+@qu+jwQN%_0-Wa`W&?QylO~eQ~@8`2L#e6SAFilDx0P5 zq&3cS9m4&Po}zu^JFoJy35A%fauQ8%qFNl~9ud6d(m3?SmQuPYIaQa_;-x+QizOfH zx;g@6ru?0rxY9^d`Ni>JQQ=qsa85v62C0#eh4Y|*GdQM9S=nQ`?kr!BW#dKPCU1i7<5DJMaI8T4kF;S zo9<3Bg}SN|yy?So?gn1MF1CUhr<6}q5gh+`-{)%&M~8fSK`{(7?WL%LPuwozPonEjVcNiUGl|_mg|j#waMcTt(L#i z9t&Jf?E{mOm_&cdmV7lt;rc)zBLi~Qmb;d;C^X$vb>NrXA+Oz$ynyfE`FdOh!B7z> zppit^84ci>i8@CW?6B|IJCOb~X;J2YkWSzEXq~5ee|~vo1AO4>Q1NoBe?yk?9_v}K zb>=4;kvN~=on~kq?%QwQROyN*=+&Aju{?tVX*p*V$>Qxu}snHzydS8f#1Bj11{H+a#vj>v^9^ zYlIMo$G|;P5*;Ta_Iy7Qp~c;tKW{D2frcJTTs)RaVuz4ry0tzqC22id#mKsY&+)7? zA8Uimy?~fV4C)aoi@)(5BKoRb51cdEQzL2TS#nR|$1)JMG&lRUl%za-D)wYTQkRuq z&v1aiRF>{}wZj2l$*!~5utO2F3S|pjc}{kJWpx+kAq~%6SjQ5wM+N)QYv8f|!-KrX zzBL?%p40+;PJzPD(v2OU^Xr!InL>)5GXn9(7!8UJ3Ab`R*RpoJ=r{|R&Nal<4lID- z045M)A~MRyfdrhDzlI+|)hTd#Vy7M38yH-Ef(Ky5wr3 zCIO1)KWUYfF4PXaM*4Vj!`iKg&JUc&0AylIp|H=Aw|jpnn~vJ;Ji1NYSPIP3b|K`z zh0Uo_EH()cy}sv#+#W8CXnv?a>F*VrX(5f`4c4E>dq z82%tgIjWIH3AN=>uPpO2TS1_5(~yFgPg5u$2Y&m2M?hi@o4pSymPi`3UQibBEyTlXw=ib znk#c^Eh-2(gH#DNR_H=5S{)~{4zF{yr8~|AsOFaE*toi=+f()`O^xa#{A)XFgf3`8 z3{*DR0Abh(8z4x9m@54 zWYE=wp9l;_Fuu<;)L`mk-_0=U)Y+T$YdHP`EDwqEBW}t@P-+bBI`FX(yt%l;u)E5Q zjt;sY<$tAbVK&4YGAy_nq0m?h1T|pyj%HH-Oqogx8VN(;(Khh*agh4SP{U?P(-F(H z;S(K#$Q*(mRERCq+~CfIAc~k@T*FDMr=X!Rbk*9CEn>KNB*5jp6e{ z8|Q3Sj^8x$33-{DM9BBk{s!r*eXHrQ4xu$kZ>f~@x1pDwRZ66_Zfb3GtvRG^6re@( ztWjum{&_xaGVSG+-D@=hg6UOEX8i$^R%G~VN^O?N45uAnvf=K4mpw6XfgT4i>_2t_ zUZDuh49ck?|NULN%thU0=9WeO zq+iKwn%TUXyxrAWM@j=>s{{vL>11i*lbh=G@Zkl2&BdjO1Kp>Gr!{IWz45u)BqL_>Z0U>G zN2t<_xOKGxLKN`zJ4fS5*bEbTfz2sWw0a+3!>yl2L0Bl{O%#?cRPs%$Ix=SNZjQ~u8*Ou12iu)i~+DmU?N>5u(x|~Ue zkcXu`=u&4mp>+J`W9b8UwECiL7GT6FXkP=A2c}BkefEj07lWt|;spW`1m3Q+8zxss zBt9=X?`G>d*G-8@Z&zPDoRK(L#1jua!l!*5DZqirR~ij(yhlwV7dDB^OBB5?tnq_8 zM(wXzh2`j`uxM>2Qr@$~@QP1E?U-B5=9R(LuTe@xdJ$`lN0M8~uX2xq$U*b{Jax5( zA4WGQ$&KAKe(D}jg)H>~-&-R&rncZOFMAq@qeY;KCYFxRq&Ur!HU_&YaJ*RaFUBHB z7W@uyzMe^-WTtz?fP_STs=QTxw5f(_)S=_7vi>*~Ufke#i3Rx<8EtPx0cH0C1CCQd zQ9{R{Nq0RPdTh01277S_kv0c3i8gM93-<^<`X(M1*fGM~g1=2H{&pkUG;= z1Wq0?dmEWM>yO7F-yfl08-BwXUqdg-zw=Bq26j$Mw7KU+&eM^hci)kh`}9m#j)ZX+II1yll?#hQ8c=^D!6>8qI~;bN3+l zK}@vLD&>cy0_yNZLT{uBU9QdcJABV{RZ-=iy3h+K%i9%&-x^T!Qei|R1qnzP>=0eI zU;8m@hzB*Qm(xh_3-6y_*OL9bQPUWpjYrJY%JAy%rCOR0ML{3HA4)I1D{Q);XeOfR z)dLiwCc&f;e3b0a^vtGNk;I0;@B~Q9A zgQA;T<)iIc{o_;6Zm7!l;(1KO#Q7yp48oD~mznx1;h#%zibQIX6{nRWo))rqFL}`; zaZ+(vmHDflq+uI{?*mm-*cgK2&0L3!O&;8`k47??7xBXzi{EwcbM&kyj_N;HvGWz$ zo##V*eD|64ImQwMJwNxw=M&p_GCVvwK|#H61L|XT>A=MuC(Ln`xf>ZipN8RcE)Ks; z*kk4vzDVnv=AsT~T_1qrxUkgCSEZi61n&4Duox8L2|BYdv?l5Q9EerA$3;N0qq4jw zc|!lV=;fgEG(8FdbW!%x?yko7fu7SqMb5Z5#hk{JyW4&%sd%B@Wh$sXvHAeT*0uOU zahf>uf=&j3vTe-#DHFA?oY$z#a%bqesp>TO2;>`x6hO|eDAv;Spx}BWSjI}seF_IE zUijqZQMWSk#0&LkZ6GynBE-0?|Co82r}_i~b8j`R2C&_5B?pA6b=Q_nW31KDk6|ImYdNEl7s@ZMeRJCfCJq@{ zw^Nf*5ANE^vBqQEkY3xZ!H3izTF;Pb%RHzA*L*=Lt%VqGiV@G0!VbP2U1pn)gn=K| z*%v*~DmZuuzIYfXAG#S1PI>MN1*SV^5jST&U>Z9&bcluSQqqo}pl1*@;0=DBW$N^M zmggJ6!Ob4DPT2V~lvyD}Q{MeJ=oRJR;`6!9-0ZFgQO!$yEosOPO}qUU6j3 z)j6-X`|{34OF5Gio;aYoA{FAs$+72=uGs*wKlP45K84aeBiZ4; z!jtP5^-x@$G^7^Sq0B(dlZZ+ve)jxg1V}_JGyqstVyy4ivWP{(3J@N0elLcGzv`FU z_C~)dzbfa`Y55kYethPfpDF&Z^YJ1+6Z>lK+A&0T{0lW6ZJA_d_T@Cl*V}|)YKSJa zMxTvqIy{!hn zRa8bxEQ2X=fo3oL#M=|p&8H%ukA1Y&@q7DtH_S#2pS6NmiOfgkc5=X`4fQ>-1Fx=) zuGij>G6f+Z|K0t7h*M(Uv8-UqwK@_~JMn@H)zz+YUFcA?^?sdw zJ&3(I+mDoP(8+Vxw1Sa`FJt?*DJWs*#n64b3UM>#N0vTTU${6{&Mrr69NOtQrXS%x zkSvEJq}rU4x5-#dKr(F$Y!hYz$cEhxRZN~b(Cn(I4DyZa=yAH(afw9dcwa(2H9@I2 zkYhl+aaW0R9lq(b){Il&8E;B^rHJo0yhme>F!_6JoAPjywp-DWpm>`6jY&CN*!(a7 z(P|I*ciSxAjM2)69+Kw<6KOPI(NKb*4(z>Nz+L-DDyQ7_?N0Ht+B_=JkixIY={FIl zD|hoLsG8_|?*g$BT}94EuG<)645$S#SJn}EZx&y|LyJ7>_@-5do~TpZqrTG>$@IjD zDhqaS%+y5AI1aO^7d(@}ZHa95)8wf@gL7@)z2oqFqpz)}J<#x$_^<+e5h7N(6us70(; zUNP?j55?FQpF_~E*nEpM_ya?F#^i!K1ZaEP!qtfQNVsTMPTj4C03?{LNj98cr1wqT zmy%ex)Q1-FUY-_(v_Qs!!C~zHD2>5;i6|<3C4UmNn$Q`>E%uStL+E4|V>kmLMUmVZ zVCsMX4tSU+koT_M&iXl45(oIQ&{O(OnhR1+S4Ib?J+=F#=uC9JH)MS6n>V)j4Yn#} z`JLY((lTMd3|XK=`f;Q@fNE4F<#nbuzPlu`r})eBnwT>CU5ETucRW?`9*F8R!|~pD z(zxbbG}7_{bpw!>WvJ>rd7&LmL&7UJKbwEQeb@RZ+lH2%ESlfpHLkP$`CjpAWBK8BtM7LZ~?l_ z%5?2DSc4Frc7rd&HQ+SXp9jzu-1?4R(6n(zL*@1qO+)u8%5R$wxWed0N;-3Tyco>9 z=U{(2JV)OSV0N1c15joqAU}(F2;Dm*1&W|_&oRw|e8BJbp1*sR5)Cou-3pvd)#4o8 ztBfURQ-$^pMDlC{lcM1mP*~fszs%-vice);_Are|qmg?(yfmLx6px3fUFHxLwzzTX zX~;+W4h8|%Lq^Axv=Mb`L7w8T7aNl0V+gK#!uR$+8Z|g!zHM`KTX-}kGe$7vyMwDI zmMB-QV5gD(t^(G>{4hNX8OTiI_#e)~ z_og+sO@BD)soyHqT!47jOqS8xnnE%?3`MsN%QzGzd)2tGF?Ljq_-Fdtl{hk}L^_P9 zS6%WZ+cOet*TYAZJ$K;yp=)6NuhPykD2{b)*GUKvf(O?Lp5X2bf#4q8-5D6%U4lb` zySux)ySuyF;Lc&4s(tpiQ{P%Y_IaneMymR%r>F1fuBlh9Y8RN=2iaTKrYDm=+>PGz z$P94*jmB18_fOVT@BGEuL~~R96B^!6l!E>4`VES#C{I%A7cZ|XA2{oMlPkvW-z?pY zP(v0*ahFXRO0Jaj)LZO?_ZE3^5^ij8qE_(qyc>_u>q-q(jVaQ&*7WQ{T__*SLLQbq zDR!>#JOYP5KZf$aW)KLPhRGTsz=o#~OJSAy~Ii zkLJoA6{R{Ge6Dk-M0G~gun4ICbypAyua{h6CM;1$51v;oi0^E-Pd#11BA?rn!m-n+ z3<~wIgr8|@;|Hy7mBji;oF!^tDcV(}%cGDjW{(O+S7{bOSP30B-1z!)@95#UA+tYk zRrS)vf8X1@om*ra*l|bKCQy3Z3s-ulZ-HJJ?((_KMeF-a!pFBcpeB2W2XC#t+i}@+ zoH|#jV_hsNA@2dY%7E9K#3>`jL)G_t1?Mr+M6L%KQ<)d>d)d#H7A-jl>oMjHHmM`& zV{-(k7@5-T&b?8U#aYPBF7!3qsIfyfO3l|&oE%tBbtTo50=%6_RwHr&T8KrD_76U9 z8hA<{7^l zXN@uG|N7P%>Gl8k;rl$vIySb*C8cUxkutdc8$+s2ic>hF>O}&SuOt^bt(rF1Wc_gW z$iYFtjYK~@q;PqZrz^GuXdD!e^c*Fj5@i7*W5-0{cy8!S$(}(l3h(a{-dr4uZ!1Q% zDRp}+6Scv%of~$yxAs;Ex+3 z{F?Vvz46&K^S0eiGm9>{rpbCZ85UY_)Bi3DYgfo^sC2cnS28k`s=DNY&u#T({0z9S z6^ctnb#RLU=9%Z&CIVbvPTwmQyHW>H_M@F{Y|74*Fr}>CD%&vBOl!(|wjvkE<5dN` z00PLK_Rbp>;;C{``kKK}_SPDqjh{5(R z!n#x9N~XNKtYc6*vc>v*=jXj|)?i)>-`b6DRnH_-CJgEk2vO)SHsTt}L;TEI* zxH|7>WbGkN0dBNC=UcU6I$Bl*mRtqr83A{7`lohoC&isUgl4(fxAyvhi)L$(@oD*O zRl5)?*iqPCxWAGO^Fhw=Up&@9=(b-J1un}i#c2(%(xa&*PMIGw)9Ih2Z5 zn!^-|&r40z3cX66K2YG;Yyf&2Z?^(Nx~C<0?=tk|p*~BkRy-Vjd>?agNL^_IEbc(4 zwj=B~&?0H!K+?asKcTx2P7FOJ&R`*bfu^0(;96sC7x~D05?qmVd zI3%Blw8r1rMI}g0mTxSwR`;CzX`@s^gSp18NZm)|W>R}=MJC+AG%6hfU?X*5yE|Q3 zeh~>T3Z5&p5PNLd6@XIU^xwK4EF07nh|N&~V5yF7e+RApP@F;}96}samW$_}JFI4k zs;EcV&zbRv+18z2?9wNZ!g#|PJQN=Kg_t!;Fn zL7H$3)a!!uWABkHt(YoVk33#d_wFuFgBymNun{8_7fyORImZJ4k;0D3ooUI7s@>lQ zCEBf)!Q4YkEse5D;kO;Fa<%&XOBlROnJ-)ez0WH*qs@dDIzrR;Ks2nhGPB^U;`BG1 z^GtgGG=1}A%gH{H1lBOiS|>WQvBc5~phXJne~f9=s1)oun8#Fu(Y zJtu($Qj-mKm6ZbNMwLczwIm*ikKFI9q#2b?rTUf9iMssVRH?(eKgd`%@&xgn*9kZ{ zh<}a0SiX%OCdbkDAj~JQq3{4)mc_et1>SPPL?}kOCHEroR{OH`-KgSm zs$7@wps@DhD=TvH_t@^)Ez5Gf?IktSbM+~IPA>KN!S)H*=0;Qhx!V;%3fZ|+{-W`dw|4?o#CSTGT(0bDX8y9KO##I#0KU?L2%<);mqP=4qg?%Vo?l`bS2 zR2%HEKV6LHh6XY(mEF6iNqhg~kb5UpyjmLGsHTRswad7s6=m4W9(UB8_(YBjO%2+6 z?Z!Da;5%-BIJ7o{xXXjau_CuVTdyosjV`k9IlFhBi$lRKVbt~p8(H$*CA%-~_I39a zG;XK{s*^q@xL?X*U>U?y6o33#Pv2h?442{fCDz^YYyz`lR0|6>m4@`u!J|oZo0l*} zLSp1BKK)>6CM8AgBCBs8Ul+YexpWQ=0? z9k*{!yGF4DT_0I*leBwNQCug$Qu!p-Khbhml^Z(mOj-SaY-JrSIjP$o0b8|CosbCM zubo&qAx&8nnDup6K*YBm=ORj}qs$emI1aks9YX>Yd*sL|^U-ST6(#Vwovg?+le|_= z)t24QaRSO?)>$#eh@1?E8u(+8z}xP<1C`8KvlQ1e#uJ|#T%Uc!jjpUJ)~d3iOMnGr zMp}@8+3&SWl+j1Mw)jaP8+>u?&tF`YSo?hgp-f!xhD9`IQ*NjCq|P5Q#0QXtzp|z* zia&{l=;+y26_U4vhXTVYd@G@0>4;bK2_!eyM32^{9ZN7n%Vp&=EX#+9>gR`-v(9In`cRhm0NheX%SDHTFfXM-DHCL>TTj$ypL*|Y15`-NZnL#I~ zI~~9@dWb$RY%ptMcCi(?s|&N6%_;%wktu8U&g8r{Dd)-YfOb0*&3vhRh@TPxF<9wD zJ7P(GyY;EfQ(%YhrH=(+$!#FPbXBbP0yePlDRu(2Mg8>_!-H6em7or)$w&w4tfTpH zx@`qNDmG{rhPRh9`-FyHjy>cWQ-J*lrxff>s~z?>+A?-(A6~}Onnk{H*8d9o39ChG zSET=~dA{?ZlMV(Gsas7on~^AjR*x^Sli$848p1`PqAbVlzNGZiGCl*6y+zOZPLpfM z&Sj)$z^-#eeWLZ_4lh6}vd=4Zu>=jgVu_MIdA8Ky84Nu+Q7bO@sn>~}db+q}pKJUgkdO@r7Fe{~x3I7cfhf;VnL_A*E6wrt{0kvl1y}vE z{2Q%on{1_hq&A{yfzNrypFa1{aO(i}*{Xu>Qg2>9X-{_~8wm=Cv_`ls;Y!}_9>xC_ z`wln3<#3-s7O~qI3Zzz-zLk8M`PC2ZxOsTyU^;{Y(+$x$A zxUT9^u@*NH#5cL>Up3AESf{hVL(WqP;H<_SIKGy>&T>n{;|YYsoq5Q?A^=-SP6=l9 z&~66}-|3(-pQBiNf~}tP$scOw1!}^;Th6kaIZK(F=l|xCxq975&&A z>4c-_S58Sxl&==H@3(c_vgVQ$k}Bl@^(k5_hhh8ee9t40#qzC#bqy!8AVLek0|s+U zNwDv75iUSdL*Ff!YJ@FAr_MG0Lu=&TW5CrqY~vmZBCV7QYp~Zo8Idk>DgD`epk70F z0NhMCR!L;E#8N6Mgl8A;HM5vU;E zXtQQ&BCp{Z``x)DdK8>-sQ-`_n%~vymU2^E{L%xhW?(;Lk4#vV(_{@Q*cJ~;VqYx>w3QYiNZ?!x_)E{nok+WA~C z=rVq)7G69zQd8kRi^QB|zn{k0YW7&-3w~sEj>B)D%Lq930VUBp;sryTW$mn!R|(j%rf|dpH?Egab%XL z3I6x&kQoVRYp0cdR(-gKr^R%pq>*|`$eopLMu*Sls(*DhGTt%8>7ge^2PR^t-{P_E z_f~#KFn*lbzV1P)>rwCRWS>LLB-zdd} zBY`|6JUKBY3l+g!`ty-h0@lJ**hb~)M)ccWs+nCQ75bF!}K zb?UZ730#=a+&lnBbNKD;>6N9Gy3BQ!^p(t87}lt^491(TE)mG%1N*K0Pv)?rgsU|v zuX7N$q;`yeOF!W$wSK9`=dagQ9u&SA^pNMewZM$9IlGyQci{KkO+8%RB;k*1pOH;A zB1Y)Sqr^|h4aczCCxq4?F}i`P9U*%FS!s$LJQ_eX6?1TIV+w~jM%rKlNqV}xNiIA- zJ(pbI@6=G>5Nivs^|pT%%1db&TnM@>>A2k2K>IL?OHO{$m`CJQJQ+K9S4oP^E83WG zLepN2g*#XRiqNiVUznwq^}bfhU-IvgGif!ck>e)|0Gbo7)F^u^L){=2NWkSd72WUs zuz0W6S!p13AcWm=ot|_kTqhm;5M-wiA`LL?UwmO~8w9U>nsJ57yRMt6&N=j{-y*v? zFhUJe)+!5g_|z^{OEJF_fuabH9p+--cZ;e3i505rAtrV1J~ad~AH85mqLsJ z_~jpc(QD1L#~nxd^bwsb@+rXrlaW-~+A&*dudx#!G%szV@O%Apx%-a(YA0xkGuQ25 zU7nRu641gVs?SIHV%Y6Y39lDBOrgKUU}ZlaSgTnXhdnZy7Yf$?R=>M(lk)(2#BFTa zJ!PC24L8dtNM#q{CCR+`5)_Q}%&0OV#;yFKpKE6bvFv`4ZSV>R=dLslT3P1X&!rj=3!aNaEXNzco^?6ENAT&+3mlqQ!GB zocY`GZ0Dtd1_*=mS&#S%IeF_W;_1QAOnkrd3Ou&zN2m`zged@>`^LSl2IR3txD>GLEyiYJv{wMr>!>_fizG-O)_q-eZI zPgJ)=qXOFy4>qn!>^uvLk2fqj+IijF4E(X7fR(I=*^V6VmK zZMj`t={{;c9fERE|G&n~Xgh=u!sT|S5o$%a$(kG<# z@>n#&bSZd0jBzjOB_w40GSN+7&*ZCjm1zWT9}ID?vc9UNf(fwGGr(z?^nY=;8Z$}< z>cUD{8iBCZL#8V*`w58FkNDigC5e1#(*f}zwyvr(7oDH8TADbb4Nn514&G1y4C5>;`LDduUyT_GNnPp^aPJFT8#0iXQy#KkI176V1&CK*)j<%jYl2HiYx5jUU+>FD zvQ>rw;3ZW=LLZ!)6fJwG(Bt!3FERc^+_#LZ**C>Ew$;z7M?GseudyNL7BNVe~@E!wp`q z!^~y+D;Eo#+p*O;8a3-nS$~?gQu91UzJJ6SG&EoM(!TRGoK=OFv7_juh2?4#v3&N~ z++oFq;iK!^qFHVbL+D+tGUMbMfY8@dc~&&uxU0Zfh0h%!9Sgo!T7Ge?j@E}ZW<-iN zw}%wHaP(0$4`#siHF07r(RxGxjt*^3^gQ3qjSbeozFR z;le6m_!2cUJWsh1p>~X=DKD%BP>de1O0|{LTXI-csESl*59+t<* zIb z#+xlw32dO z5Jn?|AN5?#C`XDze4txCQ)wWngv6PtYjdOb+iAa_M&3INW2fG}OYb;UHBX(=9{G{w zDPq+yCY;a2!Z};Ul3=b<837N+agKGIO{@2`XzSB7U?6+hnu^RZeYKaLPG#%UO`vr7 zdkvTs4Ul~0LQ%FidmN2IldMaU&x}}5q53Y59T4!#W25; z8ydN{P$Ai9B&lpbhAt0WS_aHzp}k~fiF!ivx2O8I*(9<(w{ln1X@;o`1+gM>BtjuN zZbROToW1YS&bi&tlO-&#*MFYPYlW;=X__2wRriQ!o_DY95WrzF1?4OgJr1p~Dnk}J zK5#VKYkikQTu-1jI-ge!*#nzV>^b6TmmRzHm|8zaxmU9^w|wc?$eWonNaoM#<8`|T z+_EYQDG%*od>e#xn|pc}9*%r+AoM-e>5Ftul^QD04&Qm1fj1G}0*~fp6MzJ2ey9=q z?XG}hsaNdW1w&)>lwUIs>LbWJn8&QNB!BoisnyjHi({8sWfQN=>Hy&m3kV!U4_*}y z!Y&J1;_xVihT`jh7GK=hckD-~Jf@!R?1jCM+OZoitN1K--As&laq$vVbetcT(@@`* zALUg|6+}Knyqh_fJyml@iI&pZNUbhHyQS2pX-Z|(em^MOy}$uFN->_O40A2*g}V;l zFJwR4VH37^8SpBq-a6}pqpdg>%OXH@60ycInr~W5r|O@ne0~E6xx{<&pn0#oaOyEa zi1qD$g7=uQL#uSzT*%c%KzTF9RrnzexZz%`=M19 ztbPE*fD^EyN!zCtTF7`qLm9L$s;C=!upivdCxq_EwM{+1)tb8Al7@baNAcwBJ1S-T z5BUt5ttJV1#%3Yf)o*8yf{O4>rvD)p;%*l` z*-i;l2WcE)=PwGkgTHDxMGY&cGiq_&2EKMV7|kZNl6x9=9ad~(btDQ}062$l*=6xe z8!Q3HCGZ2arS1cMVcn@cQg5-sn2tvYD7YUtmj%M(0Uvhhhrzp!6~CLB+PAj|FjaS4 zFcjk}EpttzAB@f)H;X8lfC2Hw?!D8?Vmk*h@y18YK3>FH_m2dy`*m>!t!i|_$eF0& zC02*VAK)4%dmqHQ_ganXxzs7SPnt7QU#Id9DS)Lm~#B zE-3#Ja|F%3Vsx++f~HY|x0pwr z%5moPN};rRG-VLzv(l$db%=V}Qxi6#)4RS`=6zic6}olNIC8oPc@JM{BIuxm-5JgJ ziRfVv8})eRC8jQ+t(Ja$Df^E6%oIsyIF^O)um&x7e!ge!tGVrc~{m`PNeSXN)vG(y< zD@%gJAK=e@WiX?(uYh!1whp`VP-hiWMm?2z3XWvBx2q=y1wS1U=dl0y zTr`YJ&zlE-;`F196^m2i=&C3v4`GNh`yMD_uqN9ky`XMKp2W@15q?gI59dPaab%WCb>b- z&Q+%vB~Ga#c55DP?-X*ZS?-`_Qt(CwN4mO^ghG}$$J`pD;S7`2>xG>%;S_&#qA%u? zpA8O1+q4=YG?Vv4COP#u_F6Lsx>C2FA9kE|L4SIrcsQyOY(lMQnEw6_`BQ7myeWiR z76D!`)#-H-kj)G8NrL3*~ewE*p4UxRPj>@Zod0Hd!ovolr zyxnLM*NgW=a(az3| zo3*m<24O{Mx!YIx8e^62L}KZzG(?(W$@Xegnu^y5=8JIUW{$yxm05f|pK=SKE?pJd zQKN9DXGpp=F#d2jLNdocDvw>XbUD)ed%Jo#h0>F{86ba0Xu;6ti{NSu!cO} z)|@q0?_ATbLsbFh-IEPBmo&YlcK&oa3^X~d!cjcur{4Fw{U?dDRmyQ1M-SYALrxM| zQ<*$Ih`r;}noyD;Y;ycm7cdj74S9*Ojcjo6xnHDUFrg*t(c0&2Yfspe2bpaFBj6CS zMU`d=g{PWz;cZYA$_`FH6ZsP{(7<(bmsZ6sE~m9Iifj1|`VLg@rGzY5J&%c~3>QSl z;bCC2vWV=LuV(Y>A|f3mv8=}t{y)duEJ5p?O1ee$=SEx95O60CQg#p;;@Qbe{dX(V z`??cGg&Qs{-&QWEW4lT;?`M0hP3etlL$Z^{Mv7bQYlJ!F5yD3y8DRx(F8!p7}#ic^ULiuHT=e#Uh!9ksT2Ut}{ zU-}Yjf9v8D1b-}VNU`xkii4GMZhp=R%^7A>a#I%i9(-~&UajbyHd@`9(w3V!y&k{v zcH>8i106DMHzP{rV1+7k^ySk#uLE($U8e#rG^&2!B>O^!_-#X? zO9plyLUio1DU4%-sOn8zGq4JoJvka4bzM|fWc5g&XaS0wj=TA*=d;%8 zNl>jT{sadJRq04C3v4Mq;znSwQ4dI*y+g1d0^Hdtgj7NpQtzzh50zLVIu8GR?iO6D zlaZGKot(M4NfDrOHY_HAC~ly;*;zL~Nx`Hu&kS)Ee-CA(8JcK@IL`2c57XnP2$C9w z-|TZ%JF)iX>`=={NFktFkeKpbk&A`7;YS1zNG}5dwp9k* z=;wzdncxa^%pXY~g9~Lyu zJn0zAA4OXr*<4ZXgUkI$y;7%J$%|2=m5ojgEk&bgvbRE4*|YH}6s}?%!=ZJw-d>G* z!m_2nmK%?B%Q#&LW-U(MrBxKevOifcIriH46K0gC}djmRXm;t2E-tDuBFhPJlTSUT#BtKUN(6tS^Ub@&I% zRtbbrtxx2Ot3}Z>;wmVPAvSNPQY07IvPj#u$d=$SNj;9Phl?B?1N@U%1_xlx>e+|5 zJj{RMW1aIP4IxM)mGIb>i33N4a@-$&+*o0r9BXQ;wkG*iHhQdrONgEhTm}~8Qv*xd zJ~zKG;wXFQHyTCaLcQztDF$QP;@>2xp^l7qCS=*&Nr##^YS`@+j=EBws5Lkn-OE|F zUsMN+CDAsa1rd&v&UmRi4UA%CE{xgm+>CV!;E{v1j#QiF;77>NBzf^O(*%wLsnn#q zc~(=$gLlU*b*$psmSvEC7^uL4F8B7-Z97epxuNnIq;;_fj6Tc0j($$0L@QDb4~n5C zZ;)Flc#mB^<}ge_Q5*(69RXo?@?gdOdK%}F`}@v5iO04y0V>^oIirW3_E9U;&p;Kj zW+&Kd-_H!pm?Q|g0zx2iF7eV@g>NJw+?ffv{7V)w=cqM7W#$fR6qF78;hls0^AyHe3%^U1iVZ27$6+Z@r&rz#e)ypDkjLFZu=D zn$An`KM-+)fM2Pd%;P__Jor#>4xz8dI1d|lun-Zh%6~;b`G|_9^hG)D%eTA^(agwB zSNUCXYWbvIf5RtRza@0SD)K^!`KyHB+~QN%qmY1?rr-o7iXb0{h16zp9s@n`Excme zw|J-#^ZwER;%B0p8SuOd`6W|W3^KLuhIe=mej+Z+$gZo;ye-U0@b}n6x=a$b^KS}c zpLlE^?uw+&(shRYdj#+GU&8jzmrTQC&UWVpDQKJ;@@y(*V@+q;@1n1k$Z-g4-JB>+ zDrR8Z4odxyGpojUWoVf$Qphps?&Di)MX;QBE$GBK1^Aribn=VM^4VLbOmzx)5GT>Q zwWP53y$)v{L2-iq^F?ig*Ewrv-X6R9I1m^oNQEwXVEBDQ_t_#7Ry0b8%HP>_>f2;gDKI>>}P{R=pmoBM~@xGQw#T1$Qr?Qsa1HMP34y0eol6rRuyIxb8+Wx9ltgk!mS z*$#cVqqqp{IDvL6M)WAVklfCwLEo!n$}k8Ec~!0kb^Lxu$J2P;=G6)hM4xbO6IWyCWC-?EqbH@aD+ua4OyI+ws)o={#3-*Oq3G6xRN3G)?XCq{!(p z5ZkItHDG@vS>30R{|s*-` z`^qv$AYj~3DC36dZ3Rh%+(HdpnW>A}K9j;*B=^cd9=V}j(=eOvV`x{Pms8#$E9=p1uU|!T!bPK-dQ#J*=#QsvuL<#NHI8=ts_;ccSi7?H$&)3*jW(f; zox=4%B^7qmmZTb=v%sFEgk-94daFUP!@dvz0yW2_%l7s+7{VI)=M)8T;Tw+*J<(`q znHF9~-uwud!kZA{K~>6U6;A!1O=;Rc2IVr#i8Pq?#l+;I?bh$p1x{uFJc=XGDWMs$_rUTnMBHlJ-9O&fE;Lbp5fX-Vs-*MP;ZMK(_? z{iU8NpO0(x>)j1fYdI?~B_;uj3hRlO&rR6=qU#5L6^iO(M3Sbb9_}JX9!Np!O>Ox5 ztzXYFKOU=M9q;yKehv((k%r&zI;BAL(^<;eH}+BB&A#0E!EekNt3KR262@O}JLz<8 zSs-B&OgWyh#{_dcu^QnIJI>)ershwH6W%A+QedBM=()F*21R=GUCdS^E%P}Zo%<$; zOxnErBEZ{_uS)9)FRd-_tm#P?ZJ+#>>;0`ci-HQc;f>kq;9Pq6ZSYdja(tkxYxAxA z)eZ{+U3Vh!acPb>>hf z%L^SXlu>GBMhD?++&k-n7?)1=5j@bGo4JnI8 zzaWB2<0+@LoK|y>8GAhDK)a)3?L%ni!tH`Gc7a;H-x7@~GOx#MSHZ@xfo3K1kCvT{ zv8gBAIxq|CJ_OC~1M42}m(5s@c9yV$wSk{+)#B3>5TzD zg|!=-EQ8ZxqB@y0?#Z$|L93Z`9l;fRit6N#+b?z=EIzk&8csr8f-sNoZLniWCAbSq zS1d#vH@dG%am`Pt<#T<>#8xWL(pq*wBFuQN3J#?ac_j42#f`%fo3o~}#{K1Yv@uDK zlZ`dO!J&h_Kntzm&Nn>!^|z?Vm{y2k{kA|*qA#M#iR+Lyr{jd%-Q3fCH&kP{Yo6r! zZzG)Zakl$q$dCh}EasD4gVKPHx5}eL@i)R-g8>@hJZ{qZyiI2kESQ4XU~1yJvQg2% zqfHxB#S0$04kqi9oSji#oSya|Nu+oeTaFKhYQqHeBR!7hT|R5jpb6f_n=t$GUyAM) zJ5{07^uS@d;fJBF>5B>?y~Q|@BNX*YJhEr2#%Ni*fp6mkF_~*51f{E^9y-@5$Rti4 z3YYFFg#6z3tEmj@Y=f_7tK}fvR`e6U_%-f_TUj8Gi^{bn3W^RbehX zd644A6^1sCgNeWQC1qyL(Z=himY!{#EnG` zI&!zeoMrmyCGcv~^^S!HYhU)dM%AW-&_)=_GCii(SW(feIQ+#W2I9&VAZOTmNbvc= zDO6G(UHnZnSIZ9uAj|j62G?q=?^qEwkuUk9fD|ieDJ|VF^fb-Q|=clMJ zHoE;zeSh5Hh;>Qdu&2f}kG8LL!0axrZ>i@a)shEsuty9Zvm6(&RWa`grOPTkYxv(z3h5b}2hr^+vroj&P<|FK(V}RH>{-V|F#f&rF+fb;WZkOgVi9k~l$fN}3UNCF21GK7 zl!a8Nr_~0#9?Egxcxm`!U_ze7HE5~J$x#?BB5L@DpG!5$c=VXINp2`&{V5fl#5CWT zvMOEl&>e5;Y33Dl1Gej;_Bi@?zA^EIc@;1D_xC*wlILmZ+)eWW?qP(Vc4?f54aEG_ zed|sO$e{+Y0n_Jl*tZNf_r(|q5<}M71gGL8qv@w*At^}kCBfnp=DgkfNvD2b8dH$G zUydJoZ`rtZbjI96bSPBr41t*q1-By2=`~xTPus0r{ihBiw!s{MliOjwP%1r_DC&Oc z%NAev56SywP0JYhPd3M%Y8cRcE+gJyqb=L^sfETEjd9VrV!MVzOT1 zZetx9h)Jrk2tYC?d%~@?)@ZXsTq5AyH73t~yT2j161>!>E?3v=v^!-Br47?h}qkrl03DuZ<05O|XAdJ75=to&Em(h7FYvpsC7oaY3fh zbm@+nP!)b@6PCHuuORPB$@0W*A>KKX+FB9q>x^Bh4?``NyXjH|F4TVqWwXk5e--f@ zs6xtO)c!h`^1yF&xlJH3Bt74b3$1q!u%yWKiC4aM8u_dKdJLqXAG|$J&keEyB_QMJ z2pb+-adr0mT4vUnLu2J6ymM!J9P05MFSt`|ogd4?KNz^{5lTW*T7E5ddc+}TUp{j7 zYZd`l{I_$R{L4CuyQH5%Pr~89Tb7tvmu9AVy%#2a4ek5dz!vV?vT0$K#N@Eh=9HtT zuq4ufh#o&{x^thiqqzqjsy%?>=sC|Qtsa@6_Lni?)BTGnUgh+=`zbnErJidBVbMZC~FXCCnS9 zAXa?eLNh&VimE%szqEizGJVJ5R}rrFVOmKwABN&Y0ozQYnRXM$-my<$!q`GP8l|Es zaWV$Lv{oFR?Qv(}=g?G76Go%H?z1V$H_=Sa%XB1G#*z0@BD38gA5;D4e7=rh74ULc zNDGRK>)i-(BCcLgaY=_wS~@I~P39o+FuNaQ>@25cE&xSh4~9JFms=9H%n;Or;s8w{ zJpy|(cvyfVGM8dDXYrEAK)>P)4RnTho6Q52&P5d&(bYPJOi#Z8K=FWZfI~7i>q*i5 zfVaQviek41wJTfs{lL>Ozns`q7XcLYo+>8*8>F3n)*FO{v8%$qDKqd`rmbqVHj~CE~F35*`B$~;c7P;wZ`=Y}Nw21MBcb!yh zKlpx&AmU=ljVb4gsa*}hJATLfWoBi(*7237I7oK==u3cwGBE`M){ zGi?vYX|^JcFI?J0Zd9B#U2|FhzjNIK`w-pRHMj2;v)@zo{UKiJ20_ z^2?`ZJmpkf2Yzg5KBp_xAv_NbL9?j!Jkt1HFrUl`bV!<(YdF>44MH&~mgo zqFpSww%3C8U8l310}xCm93{?*RnU5kw2rpXH#^NG=M5!Qt)Y_@-Op?W<b6sB-f$H30;-d>~sR)z$ad<1#-$?G=J@@mh#s{LumSh0{x!C zg@DH~x;m%lDH@$m5^*#k7mxyj4#$S0y#)mFq0mOg()WxE*=%el0UT&*4+pz1cZ1)S zm$O0^RAE?+1{CVMPyk=<%htlspi;3`Yqkd&=(U(A%J~5yspK3vpBxS_)G2lhL=({szgu{kgL6_xZtJh@NudtlYnMqe?um`ti)IV zR@90scR=M(+sdiuCcb=OZ|TZjrd0*LK&dobeyqA|dq{dPNn0|>&7tILjw}?5^;OAg zf6IwHf|XW{A^~*FJ+cAS6p9*(47aofBE_!!Q_W&Y5Cx<*cCR{5dtTx~E!D7atwH~{ z{ZkrlOsT28oa7JTJKdyUC+fiQBhm7=FE)g0)_UqcO|rVGCu zjeiibm}D-G)jutY5=05f_X8a!1@nSy@8K{$Zm>#R<#6Yw`IJ;Fkp~9-gpTFT#2Tk} zF5n%IkwP9+17FdRtmK~5_P5N2BPA9NHV%r0X$_dEtxH@#bhb^bJZB>4+tz^9T>ZUp zn2i>bNwF4<+|QLuJGwk`1gETkXm+Eq$=(cT$vD|7@E=OmXcg!Qb(qGPXqz*oeg{7L zY#XSb18)KrX48>zluJAex~o7iLES8}MJONKVmrC zIPWhn3AJZ~!+}WE`xzTG_sw{i4UY0Lh0!)aTcw+ON~fg@Wls%;dNskUTL%-f^DnDf zr;_i1(d>s15pB zwH~TAcjt-<_!WsLsA4+{=eCQd7c-QO)&?~v1A_y%02%SO@6e&pU)@Zv{_sC`ghF#v`GHR{L}XMivGXN^KJ7#F#ps2_$Sj{ zBf0tG|8O?`n<@V8@9X>@2FE{vBgAUM{}N{YrD^+D^L!fv^AEuPRoeC^`%k;tzuDZd zf6xAZuC+gL&N=Kze;MWaUbp`|N1gwG`%h=upUnSxj{Y*&|Eqbv)qaie-<|jWr#kx+ z_xFL{{~O$2&e;Dx@V0ROdy#)p|2gn~y5RqP;IJS6p84MfKJ6cv{~Y)~W$gd1lNSE( z>->kn|7l|WH_#jTAAtX#fd`=cJ^Q~1e9k}M{@cKRNB#Q}|BJv6{SEFfRp5Ugc%@JO zdy#)p|2gn~nt}g)-VgqP`QHXU0PXMV{O7>`Y32QQotUpT*8lB_^w+WfL*V}uasC@< z`)X1ATj2j^;Bj#Np8a10KJ6cH|83xTaR0ub$mX;P#!jT4tp*y5OIz$Ad(?LMGK|xvtDFu`eNfks1 zkr4c5d|wgfV@8*c&%3-?XTkh)@mu>o*FM+mqp5;{Ne%!2aAAuPP=AKYNgno>KWv?Z zEn|0cCj%Z3m#Lk#wYjM?*v|IbM?+&>@vHF3 z0bB|I%>yX8t7expU}?8chK)oH%t) zbjnJJ_Y)28T(TzU2DMi~a`fGtLFg$6NKFgUz|-kQ{;6D~+A>-+xsH^CDeQ8g={on~ z>gfFHDs)ULi1fHZU)MkvV|zcp2^EVQ(_6E~Q;!mq!Zl3I__DQg297(decgKTW`=M} zrdKI+H_m6WQ_7)~RaAeJ^mg0V2=%F9Dq=lq-?-0I>z_7X0{eW8-yECJAprH@RlA!2 zBg0o?COD5~)#@7QEwW%kgg##>ctLs`+E_&@sV!^ay-`E`i5h#7S}9@_0D3r>p*|`N zb?9u^3O2#yr(xDvkr#GW;2#FH9rb8uvCuf@P+h*H`+AiE_q}fN0I8(7Ee!|vz|H2* z9s`$dOu4*aIq%YWwa|Uu-#2z*gu!*YrDKy2Zwm-|m3}*sVFSHpMKzR$rsZ*vrJmTE z4?VXf1`{6++ysg(ybMox*qPBpq}iO;xy6;iq-gwtMcG7*`0SUoNsc<2c~RGE(@r&g z6$|-ZW(5JggWC zGk_8>goc2fTb}N9O45rMbE>U zlH#k8lAK#>@|+7{==YVScI>zP(U;goy6xHMv7dJ+SGtl|h{!8ma;02;@;2dOpa9wy zvv1=F6>F!vZLy(j89<{UeCe{&B?ca|vpZ(0SOmSY9m!qJ-Bea zmf?!F8b-*qiX^p2)_kp7ruC^*jIxQALy|ojLD3XATp65x)yi)>XCzq5y&4D;OYr+e zw;%=*+IXwR^>c%iShzK3PPO6-yDvK2eq&k(u+USEeT8#QHTlGaMF*Xe!?DXD$|^k6 z9ARZr8`h^cO7r#Vf)_4W)@cuklPCHTeF`BhW6q0vCrQ)@^(DT#pf#P8w31M&gw=Z5 zwyDyS%ucS|&B84vmc4q=LQafA9BLb-)G6fPS>0NgcQHDCn)7nRjVYgsM~fjAOtmFf zl$NwZjdRv0fmF(`IV0^GeC5zXR4lK>-9`UGaPati%4E=^4{ITru*HR{l{kVe!M4WM zhIJ)HxG`4lJuyeFQ#qvv0qeD9PZjNT5G~J~Bvia8HN@oBOp)i2a19!s+ zF?8%dqEOYy#mUgx?H|58l&90LghO5s*WVHj;V6GwI6T1gk2ldz^Quqr0ErH4PiMjw zvTz7T+VlRO%h2BfPM!n?wXhd9=EMjFg5&m+A#>aTvOiX=pMdRm8!E8>O&}DkTYgLS zlRyYB(}6&^!%vP&6XKAslAFL}LVLD?c`R1&TDy|-yX@(+Wh;VL^!0|Gu+v60sypyH zlXB4rI4wNQ&gHghJ*_wF*g{?MqBH@t-Eza}Yl}paceehOBHah4vPDLNj z%PMz%zW#2;v582zGX&6%6K&eXI9k)Pt-Gt1CwVJNX*D8p+k)R)JBghl?e7SXYgGQy zw3r38!}9dQG~lRSsTg2;J$yUR%J!wH()OZaZF2&eOuE+U(Aj|ZR)e1ByjOV)tuk9_ z=;USzZpw_Uo;MQfIWI=5z`MEj9230DvmlKt;hMoqeQ`}tQsthm)mepJ-~G5Lp|uAzQa0@WPdEplWtrpx{W z8L2q|U7j~CNh!OM6~se4PiWWcnvVkw7sKjuJ^$5BhIZ4=TORED^= zH`rX!8_dNW`dr!aohd4ZEDaYdRE;+uO#3KA6qdHVN#rsZr(!BDw~_49OXNWNjf^%-W*uvPR_v7tK-Yh~oglYX){*@(4oF4gd# zWihg(>S`2yB*T2i*&yuX^~V=y?;iE$k}Ty~nIPi|Y#_V0wlflA2y%APSGnoOy5Kyg zG)*WCk#92-TryI2R4VO5#_s@8uG1!T$aTTl7dlHvCjeDU`JAsp^6 z2!wEqzcvuU;r@z1$Oi-YOQwZzl)o(y9$@-o83*YAb6li<=KHroWPuQl^lt>h2Dj#B zNqoX9FCzRO3T{_eN>4^1&cF8KAq!sz@cvlEihqIbSE3=D?tc>v+gN3u(f%YF!f6gf z!%Z=AcN#y%V$H|>%uzko=J#}Y+eMQ%Gd*VRoT$6!^aigr@M=b$tC!N_rK1UL<+G`3 zg)c19!EtuEG=Wr|(PA}SmHZZL*u0Rh!QQ@JuQFbpEm29A^v6#+(@osbKNFvCW-6At z{Ngy!lt0x$)x^=t5tEgZS0wq1p<8sQ2IGhI_$MUFGoY_8U$zj22=TU>PwjHQtJf)* z8y|2nB9i3x<{ylzeBzWno)A3w*)le(F*atTKZLIRRXeG5(ISl#vd&rjbs$dH$^Bg$Yg^ z+UTu1mP!agoQQXP<2HBykqBSPCex>_Be#tT`rj+Btx1<>Cp%=d zn$grlCYw<4IPU5-T#_(eDD$d(snm?VLeM9cmqcVeq*C1&D*E)rAH)OI&$UqVHia9X z&fnd7ST7^jab}yU$VOH^ptzlLn`ljdYa+t84o`nTmzvy7CW$r5a+C{wA=PcimN6|9 zSZnl7=mff*b+xzVLqH2jA(!sM7%18@{A* zjwAi86$}AF1{2Rp@s3)CU|2iw!_^xAnGfR{nL-&oKxZ~p;W?`u6q-Ia@ihx?g@?k0{q&2CzT?feIAqv z?8zEQD~}J1Jd&UNfS7vqYH+2u&VzF^=Jv@<@_cJh663hr@?A#(fxhin+n)IE1@L{S zv&+!in?e%J8>!_)UugIwYbN^B%s-$Ic@}n-7N`E{gV^R)lTe6Qo7^*_lFOIk$T^f1 zFrOz}S+gJ2($Xx$Cs0fQ75nhwN5<-U9ihc@FJvE$_ZA5_F2pBZQ#B;5o4RnM=u48I$RYb}%GTvgu*NCt~o)0kV+zt-JhtA@M**_QK}* z|C6y_nI6I+|AMdx$M|c*A{_2t35#gxF#cp6It&f~dLwCKR5%zCV6wbAEs>qtHB?=RC z?O|63$lm^5mqC<6yj}Pq_ZfxU!ES-5x&Ix(F9p6oerWM{$PxEUjwpvX+W#R(i+{Kr z{0rvqTQeVp>Yj`KGmJ(=-S78` z_e2i`-T>YN8)Ou8G>3h%@FN?>-iVCJJjJ4w!xj&X6F7wEKtF^e08G{TtTAB||Rv zyVlG@q4^uu<# z4!U3TppASfk%R7u9tw)wnzYA|YofL$;&=QXPAWv9iNczQvHpi39u0EHe`?KQ6xzRG hO#xcusK0B?0Ti11tcisUuNWijryq8L8PLH${U785%18t#|A8!l1ZFk5b8jhhmzLV&s86;RJH0aKqHWpnakj`=s!9D0w%A zYVv;&vi=P6e}ZCUXkzpS&&K{g2CCqV95W5V)%s~0&nva8_5-j_zy_nd@~GM z{{lx50e<^y&MbLGn-5&&Jr;!N~D%DCx0J9Jmml28_zw zBgYD_0{O95e)Iq%(JcV$G-ce|<`PVIcue~#3OX@39>pnMK@e&GFL2Dffzml-A*JA_D z9S+1MjzrkXC!MaDOu3cs1$F~1&jAKsS@1|yu0=T=#aI?}dXe1vNR8#C?CPt})wgcY zq0ZD(rcwBLt?{TCrsFyv+@{rHww(@1e>e@8mbf1L@`+ww{O0`9-Twp!{fw)#k&z7g z_6XK+Efb7~*FEfSqQP@`F_z3X1L~TN!{s?y4o&PD$m~E+=*%B@rq3i6*Iy!)G~huL zdQIP?Zo)g@cJ|zHXqc=yDTJdz`>BR+k&+mDKrWL71LOn6Bu{B6|#Hh2OJg z;ci4;k-u2qaSUW6`*O1TslvvM8`K!tI{Kzr;0bNMs#04!X2rQy zf^Co*9#_&_szlEfIyt6_Ii?wG=T+X5woNN;cKtxs;O9!Y&rZM;PnBJQo=HE8Or)`< zFSTR!3q?PbQ>qX2mUG`c@c|)tp`gx_ zB@L1F4>%D%Clr6JmR2~k_+PW59YSl~pT|SqzB^~aAwrULGk7z?<#MFR*heu2EZZLWsG3$y#S*V=hr~ zHD`>gk)uRaKeo@$BtET+*kl8)*5v@%@6TX>Lp89{^uTbsp4ufJ0-HV=Ye+_KKuXD^P$-|; zsZcINUj<1@GvZK(R0%v<(mhrdYBU9$D4R4X&GVvxd=Tz}P^w7sV~_a}S_^y-O-~ee zl9H|yDtXZw`jv{TYN;of}~A6V~fCEVgJ4qj1y~(Y5rT@rT=HC z#NN!r%v#?P@V^r9e^{IT-Jtj=P#81 zLDBIppGH>s6F*u1B!>P%`d`o4|8WfcyLc;Bb0Cd|hAs@(;oNzsJvi6x@G- z{m&>4d(+hs>VKj*f6@G%;=Hk-LE#126-wtN5*y$P)sU=4vwQYQI3DNh2vuFP>uPGu zk5J)9w945rIik?xu{oTK=j1V%_t0r9*mvVpELA4zymZGne01}5cx3P&jYVDNp4<@(~kV0GdbzA+4CB zz{ad}J4XdAX08Tmb%T9qg0ID{!fVQ4XA);p);k_lgJkfA81|~ zAA|^Ql0lzLW3L8x_`s;N72{|7Dy7{qZVfs}`>JEsk4U_Sc`P{uMO8f)_x2|9eQ8p* zzG7NKD55zp^%2GK9?aS++BOWTuLno2hKO+AIzY)2vlu-gjap>;^*WRiT;GkwrLzyCm)*H(+Tz^S|wGtI$$5e+tKuBPzw6 zH?Rni>X~2%lKghm3ZV=fR^2N?@}lRjq`zKArT1$=ExUbNi~{I5I%rDA{Ukea z+?Uva<3`=ITfDH3UgL1VcViAwWTy)t)D(#psA@aEGQ~@;v!;cf=E#zr!F)wuH~5@@ zrSOBnS8O4ypuKUyPd<01e6a5aR8nsE*y$^ec}LRXd{Vto!=!agFv+Q<-f^EsO~xz5R63eg|K)<$t0YVQ!f=wj7@-#f?x8SZ|h( zyr7X zJ0-&~I%nK3V5vZ8fD@Y#CLqAAP7G#+!)%$!&6z`4VEDb+yE#dDHY%O29c|C}tv46v z1N$vDGsG(Q`kk`9@L8xIOQGJu|K4@#sx)sD|1I_YN3Qd?obuo1I{%)6RsX*!&R=l< z0*dn&#=orM`~~+fp*YNcK>kH~Ie(%24=TL^ z!hUtJztos~-;DUj=E;A>bN-_HpYfbtGQnB=|HO0tqWL?|dE!BH#rr8&$vDF-)+P_n4|^bzr(v*` z#h4s|$>Jlx%g19Qb3>>?I)ncgOcLuTV*k``e4!zbC+%tp3m3?eW+!7{Z*KpUjFyQj zIwaNMj?yuUW>q=&%I;Kec%Q9I(0vz8dJ z`Ct;A-5MRWI2AqrOek8(Q6fBLL7Q)!WTRyGmF1i2hTMR z8of^33^JDen+n%y{BKDCJr%QtRszY+10fUTby`UL$mb@~S_{}%F0c637ltYLFdvK# z;CRnsvR?7jndI&5_llFR(hzh_4_0~4e5T#cn6R2bP`B^b>Xo= zVU-rN{n9MpK0f4KV)LJ;l-!DKK?tj@U?M8D#GjQ&nTFQhuq$-*7WUQDl!_X~$F%xOo&xiJl>^-^h<+BLFG zAr@u6EkM?fO%@$Q`sC-+2may?bH)bajgwOa*4GgPGHS&U;a-yWPEi2;!aHb3=b8-> z!iQ`gZ;$TmF$lKc=@psPtI$@9MWdD!`#P7XduzL*sHji{11p}YQ|`?K6CSPZ0gn&u zT0*rF@5SYd#lg(mP&fZwJ?*5(DWA}7wh@)qj9JeD<$lIW{MSsvqbqpL=hRUA9-{oV z!NyRBHxGz@A{Gv9_AoLi+64LDqpn70=Hd4jHoQ1&wp<` z7~~ode>E)r+HC$u#`CxA^517Xf0vOxAQ=Cjjf?+EbLTI}e*yFP3*%qbeEx#_Z#N&+ z6QN%*W`DxT?$al%KOg^oie+Y{Z}NYiX8{ENYA&TEJpjf(cHZ*okYV6UqGRKO_n|eW zAJv_)iKJPW_sGU4{W(;s0 zc;_uy)j8S5VPSHg``0(fM=vN^%``3Vzo?p>jLogPJepok@qKPVAiTSO+Bl#W7xo++ z5N!7V^BP{ z?o>!+MGs^u&f$2*-kTYIA!t=Xvl`}J<+@yt>r3HPS@CYoahpSE($U0#<;DHehqny# ztj{m_2KV)qRUe9@V1j9EohiH=E0YgAg=8@ORZO_e>MQU5vFJQ>ZZLW#H&QWAU>_zN z1X^ZPb|i<%dnh=Z_N%MnuY-_DN$ifFsbl818+#P2_XCr0gI}C9j5E1-?vP_Doq9c`y)MtbqzSIv{D(tBHu# zbT&C}15ewZA?3C1C^*9%JF9@d)~SO8IFol$csxsBVU;KnKk}NZj)S*r0_WN`b>P?T zk3|S|7gE}ieyk#v1?n`1ts`vSv7gA22|#A6HZ^+Fh*jSr*B+)epLmE zvpQ6ZSE&f}zf^8uss2FhCRM@W+-Z6i(fTxXrLFrBg9#_$=~|n?ksOjMs>M@o1vEHg zxNo))DbQ*|DO;wKam43Mz{?u+ZOGXk!>gL8U_)ce0xU6LryfE}e-G6NKGnK|3ah3rU2fj(t=LK9nsHd+77y!hnl9&qBW^D% zw@-~MUn@O*j-v^1Q*lVB$tQrozH@vq6Eb$@TDkXVv?`=o43guwKA|NowXHA;T3*Id z*E*7jfSkyZiYT|5Zw{9at8!i#+j9iNr-n?(-q(KJGc7W_Y*oCMOJN})9h_S7GDHs# zjdR2$v7djrYzjE3K}Z2cj+ni}yQZl4SEU(4*-F+W;)f!)e+lkPVcU~D;y9Y^2irnf zZDhu;zq3J+0Upjs5Fsu_EtHnFl-{sHShTp-N)g}PEAYj|+$Ys@l5;Yr;5WvzY9sRm zILYUdZhz$9_O*~wX?zfjA}TeuZ+S69{v@UJhw>Gg@OWHH!)(3v>6J#>?i$iEu=dvQw znh@)sUdD)GCKaw))p)59q9z^#I!d*Mx?`uGsD>43)h~=squu+uYx&oT>0&M8Pq{Jj z&BptuOHm)F5o(CaoL7xS5pXHixggp-d-`h}=BSu@EL)d8a(V5DAyY?KFc8cg6!vb6 zY8PYurt`a_Z16cbAJ03t=Q8kC-Bzq`Z3x{6Kh#YQKS4qW=hRyZATa-S!fLzT{&_8N zc(Xd*)n5qqFoVlk>5?Tp0LQ7IbN>jeWQMePB_8HyS+afIJD*pVFK3AE(9;SaaIt3(zAcEHFk#7ix*7PrQ$DsU;n@sDbyD8SSnG@+?MrUN zRJQX5?=;Qf_FLg}BBaMM->VZ=VRl)J_}6^ntZkwIvKm^$!ZTeYw%$cy6(>_wlhW3f~e;eAnN+L z@a9Xqp$?I>Jw8nhP0lsYTKT9zF1KRsO8@PF#VXa zhC)l`xMf;-`@{C46Z1NBYr*X5Q4e{yxdEhd9I7CI!CBvO5DbOlF;?7J3N#s&~Z@;XZGyx~3^Zs%P_KfmRfg$r}OgDe}Z$*M$G`!-B+ahv)rz3bepNZB8F zh3XCO?W$ekX@mj46AF^V_!;^^&p9Aiw*3H%;Io|A(8R(+5-}`Z*hyn^zJqL;i3oZqVf8Zh4FG z#HZ_0$5V>HdtjhRa*wSn;vxFQ$UV=)*1~!&boadXsjj4jzYTuxdr5}Q=`vC8Ac6&G z9Q&89v|EjFCnfO!JmDc7cFzHXRx*MQ1lnz;h&2XFr>aYaqEldqUV0Jv?;oUu@U<22 znR;7I4!>*kf&=zu#8s5E7lZXB!0+R0m;_gjgNjhDLKdx@QLkk8cQ&x`AGnYRY2w**c3MVWxHR{t{!t96=PxTz~Zo^C6k`zW>2{IwF;6Q83bT6Kdn& z#eUQ2zT4Q~Du9?`7iL&1e`A{`0CYY8CjcXyL-T4L7hchxY5he^kfhSauXKJH{p8e~ zBL|IGkue^f$goK?N1RX39To(@#0`BQy^Ow@D}C5hB*18RCUdvi>!Nyd2smXXAjVtH zEE&8~P&c-l-^axi9ZuDC*Euk-F}OT;YiYW))LE~}Nb~cb&nHvEJ&9bf}A*~ z+bb%u-E8>Q=il5DDAwCGZY#|`p0@l@$H*PYe$q*!)-Rj z!ASAombd3~#=V%UJCcJ5T>~c_UwE-wkl(F*hYYNf%xI-Blwf8M!jGm9>WrTeQ1grjn>}?ag|`*aaBfVq^8S8uebJ0&DqaICxx1 z)gn&2Z^8)ex3{m2IlTe1MIM}|J$-42?-dLJo4x>ilDdR#1J!1)jbJXs6_14Q>u$G2 z53{DVwH98(ih5Kl%Y&^+Sm~BlXwSv9=c)IBpHZj-YLfKM+dDl`$~9r1JxjGbDqXfT z_}AZ?De#)Q2e|e*=QF|hxd)siV9u{%D2uC7-=h&jDwC~i2rskU9RSWg(1cE_H~S|x zmsjP21;WG$h!LegH~cNn#^={0uNl9nB^R&qky7FcL^^z3n(J(WGy<=>h#>d~a`XA8 zUET=5?NJg3B8|-{4VuN}H}oGZY;Sy+nlCO!g8}w2IiSokj`Xno8|zf>^({T?>qzBn zE=W5+j3a#~OV`8pr_IKc2<-RtWlS3NLk+L|b-}QJmN-1t;hm&ti3qrTC#Fk=o$gfp z609V?iC52Ce;#r~+dQ;^_| z^amT9J#s&H5cwI_^JqFX>p@2YKAx@Gb^$wUy+N-9i*anA$KWF$2X+SlMmWD_5L`1|XoNGeTe77Xwi^l0RS@&EXS0dpc*b})n;}H)$)(d%c#kwTF zMI@<_)Z2vNWo$M%)J4}b27M)oM*EG2F`!vRvcyXo$}v;i;|k3|+m7yb%jrc}346rW z{r3hZ!Y!>YnHVHWHG-qpk%h%3a9dHWCk=$yB#aR)A9tJ6Ov(@7DKMb$Xw|m zpTqp?w5vJ#$y5&t2#mV44>xSMA|mAF{3LyBsuWwhRdyPnA;D+!NfqHCP3Tm*36n6E-w3F9b7qWN;zC_;1Gw50W@symz7KT=dWVhLEC93WkhzpHY3h_MqZo1 z=BZKEfFdw|<)D_4xPxcl@7j*+`hqtLa-`r4VvOLDY5qD!hxr^vX$yTjA>>H+O~8GC!Yojjc@y3z3=*NcTaO10WW&86Rrn(p z)O1M#oG2MqhP|Fm!^&GbjnD3<1&zjyFrD_!QO9G*oBDUB;8EOP89(e7M`VSAC!q^+ z3b>(T%yQz|ejX~RQigg1h(!XIml5|f12`GqUg9liiT3fPSyNdh{e52i_R&T$x7uPa z0>1;1MW_~V-xfkA3l4W&%xa*>oqyZ3FNS12-fE`$mO)LQ#SR#kVs;gG#CZdWyOqnP zpS+fdwTn4YYNaHY#9RLpOF6(sYm`!;hNge>}S_l0QHKGIbdC}k> zIitg4h7%W!i+yvNqatJLq;Gy6Skb4yqUYG)V$K8F(fe{KlfN4+(;NM)AbEC7zO<=R z+q$e3BZs+=IwIs55Ynuk8kl9Xq^xH+X4bEaxs#1-VMzDeb@8BPOSHe*=skD=%XCmg zInMQTCK)1H+7zI&aV?Ca%DC$HU5!e#)w#6dw~Pm9Ia5J*HmEW#V}AR&1U!K$0D*Z9 zCT-l<6eFEGvn>FcVeM9I&v32lku+HNMq0G|^%5xN-hUu%c{~Hgg;4Eyu(v!eck0+~UR2?ba4sgAvHbA_OcXi60kTLU8Y#ib|cI1mT zFM_$(!scM#q~P0jg}*>h33$&KGalA*hfCtOR_=%X5Dtyr2?~C2#z#PM;{am^64ivr zdi+JoTyd_%Y7-dm)_>7Z)HQ(lZ+z+p3>M?(cA=pHc^ zf9LW33M7MoQL)G(45od`@N|Z=KHPU+AuE7~cx5|t8gI@O6cjMit*PZJA#kNN`b1hl zaQkkyTqpbUbz>ZK&x`)eQjKUtQYBccsIF}2v(RiA3g3;7REE6ezKfRRH6Bp6xgWWs ztX=2z=#nZ&`qlqnMN0H?flw!YlD<2!jY4RCMDfw;@oI9V53QAzzoo1yTd&qxIid#pvvo$D(XG1=5*Cof+jZLe8@kTr-$1t(0&UB z-lf4aKg5EzyC6$tBOrv_?$GKn7a?>*1Je0rj24*Z^O4T%CuDnh6S&tytXxN#LdHve za6Vbnc}$5+U15?xP>QiNmu7SiEktAh&rAyp4N%7|*sa*1>Tc3~|U?zkb^eRK`IqQxK%J+KT$SJ9kaZY=}HE+u8n(MG45Em{Be-&1UqovF$!! z3`hXmpF18wtC!*h9eRpvO<+d&+tHzopEm;9yyLr%)qe2sOHU4ZUE5{}h4i1VZ)<8s z1je-A>YZ!jxcp{+)J_o>zL{?CUDjY_m*KN2efmNIOxcUUcMc9^3-||KU2S?B1A>s(Q?y1(1i%ly?XsZ9v4Zfteoi3B5 zkgz`0R&_P1f?^P;?rQ@0Q)<)%Rv?p#xRqXk997N^u71)_Oo0a%wB+Y=}Yqu;tNX1GZq;B3ZfVHh>ZY` zl4M#+fx7D~D4Wb^TDMr{s9)hiZC3+mNtIkPHM_%%sIc0xXu^PM+a;}?-JUQ@&#QH9 zCOcfn-z#I&r@w9OnmiSU%QfjUqz5w@iFh3HFB-|d>^xQ4KiEi19qhRAnsmfLOxeBl zbRu<^KqwJFYRO=1AKd%N7wrf=PL$flf6)0`8WY^?QODZ6&G{%zglxLivmYsiLCt?; z;NdHiOfYO(g!ehaOd+0sXgg*I*?k(2d*%u_UyM(N4W!g&bH%tzKCGW24K_280PfmT zoy=h1I4s}-f**32oH=e~-J#$E3h(+unON(0KVGFXbFUa4m#r$4aRefyc2uJmGDz+> z_y!N|C@k(l;!_F?3T#QpBDr@B$<1fYW3SW zK8bC)nzdOhSPR&7cYB25sE8Fa*>Y~KWR1m;46ouU;3TuJDD7F&*%CK!U+C{r57v*LpM^ZRCn zX$Vj{WISi>lf$la8dhjpIHTpF&gCcf^&}e-%$9Z8kBRXRk97?M=f+hYOfbG!M1X3s z(~JyGyaRYBJT-#TZOR)nP8qyTrdN%m@GQC6Zlj4`jE9hiX2d5PsxUkGlL zPPX*hTD4j&NC~rXL)m%ck+aHp=IXg`Gt?ug)*oXK zV0!2g6-0QUR-gK2r7h;uK;~#pCGBs3XX_TBmzxR>X{O`V&`yUIkYoeDm!U8IQVJ_n~jX zI2oAyv@kBuV~Y4IIVnxPa~4t%~{;B zz7?f0Lwu+(3m%OlT9TPBQa3!}(-IeH$g{dy^xbqdT9`KNBoljSqhSXGLRf7xctuBO zo!8DyZiNM(7!o(U@2^n_Kc{ZPFpoVRUcy6}7~ga*B&t1)ZyQ(w#^?m9ImC-!ciPjo zezp*8RgE~X5BK+@YgB6tY6?mVBm%qlGu>I|sGFv7r(O zs%a{oPHy;^6se&Z@NYZafi-S&<9r0e?~wr;&Ram$E1juVCVn}9ybZuU<#ddC9i50P z%8cV}$%Z6gGRi@bfM}Hqt;zBL6%l#goytSoow%DRp#;QJ@I(FLcLKLQLx36CPI)Hn z?{C#6GNXi9mqa7ZUD4zbuw5spgfRzhjfNgMKCDwExwWG$Nn+diF%IDnIPS?qpU*`a zT2W7=xj#_WAPEKBc}2r5ClY-n9r^|%yww<{k%hgs?=NTb4ID3a<;>WTgbxgd!!f0M zZ8exMYOJ%dSgiT9YQ$v2haTvPmG=77Px@(J2gtq8v}R7P{SK+pt7gkXcl~T_EOc=q zk|F6V^E^W;YSauznaB_N_O}Y~m;#DcNSqH-w$H2>%Ff{%j_Lj0 zfF=1M8#56Ocnj*NX~xqFTAkmN{k>PqU_dLT_N3)z*VM3V0hfnAH}shH4>(q6nnI9q z`aM?awcxyO8g$;*4e(T@JtsHG#B$zgAb%HNdBHrj%4_u{-5saL&WJH}3#`|y8_))t zDQ&gFI`k%~+Ik3ekUsHD(2pq)^CPNbnkm1;L+rHlSEZ|U`A(5 za%vK+NM{=kaRG|7VRWpC&{5MUEv+*_?SU9ueW9&3)?CDRDb@+>ga?+MkJdEgSZ1T{iQgU&{=F#4C~hJki)V zqBM~}-lDu#FhuFb23eFTe8&+~edT=L8Xkx#v$(GHCUd|K3v;8|{+!V-R;#HvM&N_s zy5ewg&T-I95>ckh7#UPWckza;!W%D_*~@gfCtNGt;n?B(X$cv@C(IgVa6+%mn*)Q0~_;L7|QaTv9VT98!mr87>BYv_6X-A<< z+bFCA>q171AO8xK#Av%0zM#AJ@iEs;ghDF(`aK_1k%10eK`cs%;bcPT*Ws%`rRlG6 zlV3R_>2*D$#XUn2c`Yqc1! zsV_+u+FD&`V2jyJ8yRIlC>VMtaPb*6%MylyopIJl{vuRJP`aAKPx)!C!6TTsrHS=W z&{Z3ikU|JHxgqf?reS}ew{3`*GUM3E^ENe%M(_p=7s^Jmm@eggIOvO38Q=h-ddW7e z#V?&V8GJ;%2lP8cLmeeK^}W$AVs2-ABKa}NkA6Qzx*_<(hYF>1quUSU6|;m%#m|m# z>{bH0B4S$alUoQlGbPgb?&j`T+dc z?&Fr8R(f`b%QRL9j!UDj$JhLBPB^8@GjYBLAMiiC5PJI35KEF}J?EpHYU~4sO5J|xbwPL|B ztnO7v#_`U-D8`a+FRt*+pc5M^-@0i6^)Y_1YOqmhz?A@CU!YfqP zKY}j^sR%Y2`$7-jWyQrJ(+XfN{L!^zKWyG~Gp)^uD$=zwEx#=+aqsk`4P~>cRvnPC z$K1G0N!18P?bb?I^=~1fqs96)Bf3Avc)lCEk;)_s?M2R2U(gJ#d!ICzf-Oxv=mfUE z9U*ULgshGg{SunoF+A{yP0waw#uDH} zU~dtZ?@wc?+A|SVY87yVe>p(sDFCelbG@BqdG-c{^fysvBr5IRPlH_I$sr#wi!(PB z@p^Gg04dYo$3?AmN@=+mJlv0OZM1Hf%A6h=`5_1=;D|T)n!f$K%Zq}{qU*Ki7U6GE z4(0-UdEJEzVE+z`1)vSm7ccre~yc{j+NvG1w zW73>?Md6xk^`nN(m{wuR;o7(<`whUCpnNcyWKKU`&&c23t}L#trevlM#I?G8Iawh* z)ntsof^TPs z%4-a=U0xP~H*W^W`%T4Ojg4|&(XoAiC4~NJLcRoeR~R|Jy_^kvDn9M(NV9^4_`t@N z>MRRfSJ4$dRvc6F*Lt@qq_`(Tg1m~y?)cU1J6Hwof`ejkyQX6}#0o&D<(R?7m$4bPJF7vHh(id`OJyf*Fi5E*!WYmRoT-*?a z=5!bA^SB7jesL=?4`1oX#--241kXs9s8QyFqaUhNaOPVq;>w*ecxuY*4x^BX*6K55jL8VSZDv0p^C zvx6|RbJ(w1L`$K#d%E{+>&=11vsw1!$oU(nDV%!Z>GNdF;Q2 z)g7_MW2EYM+(-7m!oM^iPP5(@j}8`5w3k)$rc4WYz6=j#@g_gkn`ZzQGk_wQ@Fw;d zWWjcd*P|k4ITa7`Wv|LPnOh6u1TGaJ$k|LONz&^M!e?g{F%=7ZfZq!up7eePejg_~ zWBURWpr^1c7Ke`Ysx$x0##F6Y2?CoYkgYB66kDsuaQ4s-gKs8XWk-epr>c_pmcb_; zZaS`kq|?3JY9CA7HB)ujoAs?6QDFWTr$PB*zM6X@emEGQdv42;3PhZ~?gk?(3MltmMb!Z;PE3IFTbdi`|8#08tsedbS_N4|q ziT_A({|VM}G0kA@2n~L6$N6#{z0|&uq1t^>m702WrB806|7ZHR}kgPl&>p$ z?EdW9iK&TxSy*}8wFkSg9M41T8380jD&mAU%0OS+aM}-COajAcT;EdV$I6RQYVOI- zfy|<=9}j+CIS+W;y{FOa`RD{!YOekD`kK9Y1jm69PO0mr8Bo9spF}MrIRphKUQJ9X z{q0KvF+#3|3Yt(O*8Qo*^;Z4os5e$$4Y&!sZmL!6RKkeZcCQ_W*V^ahf0O>}jVdU}_`U-I7z01@}gA1Z6Da)^D-Y{nOs5;A#_L zQ_e(oWg0nHLZEQ$o;&~~H-y-7@P!t!7k*-_!}Wg5_@|9X&kwK%u#p7+8o(OaEZabOp=8;2oYixqemX>E^s$2VsZYw}VIr^B&S^iXjA^Ae=h0LMg8ZYC;lE z^&0bCSL}cQ4)^p8yx)3z9_;23>`fPc0P#gE784bExU(G%+KX-Ez zfzh$$*GjynE2)mc6E(eZ<{OTk`H>Pnb%)lxd8S>vUDdh-D5eDza_?dkqSwvsT~>P^kQ40vxm;d!(z30<0V4QEHLUdnw7eUgj(Px6 zHBE;MbgOgbDZ-hzm3*}Tt1+AZh%7NL36y7r8D)P2-jJzqj!i=CT;p|{f$}-SoQ9)v zxV$)??gyWsJF}vZKL3l(My%@>%GrOZU~@-uQC)A1cIdEx+9?cy;k1)|k!S4~~gC887ber2^IC?vB5 z;77>r-tLO`jLDyyfmB#h)=>vrp{shn#9P!y7m*zdmZY9ee_r^{wnP{|3b$yP>FJ*} z*|O-VU0OUbi71;{47PhUix-Ie5_jk1l?epfl-(`MPCd-h<)nW@{C`UEs` z#G=!W3z&eWgfb7cXoqv!@+SMyaIy3AF~T7EDc58^dZCbA-5((D_h0-tr`Qwp1JMU( zZhHYT4?mbJ2{qr7rChoC2ae=$js|$e&VANi`V`EW9eB{c1p-ELjV_=c%;i@)#&4ss z7|_7@_G8m;R_vMI^i#1~1zOx=CEE)`;t3i}ML0d5r`fJ?47A_dCf#9{w6>0a#K?b4 zntog@>l7sh<}1C*n{~@ZP-?@{^5aOB>6vGVAeon5xFC--WoU^Dv`1NjkOl=zg$ zE0eN;N|8L#hsw3yxyaeAvf(1L+>qesL|ER7-`3SnXR+`w;;x?6Lc;Dk1|-?7hB=hP z3s&*Gc9TJ9b)0sd>)0bU9H~}@?lu#XZ^+!(9v;{$T%UPIg=%nsxG1GZ-E^IbVwtNK zTE$*+`#B}{Ed1z}AALK#LcLHcxgnySMaawI2`~EWIY`D8B{b5Jn~(Tt_)tSz=3JVc zZ88-@i!4k6wb;JN6aksy)$aVp%HCXkKZx|vUqrt4QJ-|WI1MUFT?n4y5S^*qPz*=) zlZ)q{dOFFMD6*7ix(DrjxOhQM*&LJY2yIX7Te~F}vHPc5$Olz0k_mK}>(vYhZNI4A z=V@Mh0MasNlDd8~aZGR58M45Kv~=vS5=>GuYc8>+$vnF3(58MP#NoiiINU{kZ)v02 zeLRO|?Vkv{mwgr6lAqNVRiy`)?ceokc~DHcGwSLeAuaf=x{udzhS8;EA_f{#K^{NV zd~@^VTS9D6OLYEdpyZ> zw*Xt>imlnJ3#Qk2ubmdjL3IITZymZbc`ttqHjufk5$8`Si0B5{jJM)8$Luz()VRRX z_PI{78Hq$ZdRtEz&AjBv?^u~n&{Cv1eka@O5VZH61%4C_aZGN4UabqM^N4tJ=W=mm zdr0)NC;cyf^ahGbn=oYC_3oHCvn^HCynB|!S>E%0Jr z7jFu)wdf-+uks{Q*3H3QwGPI%qIvn7?(NK@2?#}B9^{+7!-5Du){xc5cd|EAforeI z^fEA*nhaYGm1CB_PjS=`2ohxmZ997Uv(|G;3QRG;&{+n|7plKOZF_nM*=rJev3`p= zd?__xtQ6`MoapRnTmdvn)PzdmjF7FSJ&`LpFc8iq&%yf?z*ee{U+mZ8eCCELw^qFS z*21CVF%c+8#F^{iP$*0c_o2CUxJKryGIbutU^&#JOLuWDZGSp8{zQcSL21c0_Mo;R z;a6?9&VEG;Z{ku>8X~gs{3eZK?Km@uZR5DA61Zy(TIwF=5~+wYk-?KdGzn>8lOB{y zp;dS7LpDf*qc@&S39B-xZDh7=!cx_NOm`o2JFItKCCH=gUwUuB&4s3j5a?VzlfC93 z8eH?T!GC%?H(B5t&X3`HJ?YEeG3+4MxF5IA>r(u%s`cT&Dw#;#N5z9_z)*d2EFoLq z;X5Npz4SA5F)jK<0uFx>T0t^H8O|HV`vyAgui?Mk?MS%?W%H(Y2`F3ywm5M;#q^D@1pClL|H?nANlb3fX8z`i zv@IQbV^G*2`A;uimX|dDt5;#+me59A%UcmYCc|@?SEBa*cZMQ8y0DQzmWFb>G<@9h zj!~fVeq~mjK)p~m^8hc;C?_&8xAJ7nLlAW zzq+LR)MkY0yRixrdpfPa0}y%YA>92m`12OkOa+3}NbjT5pv!4O2G)mJvYd2^_`Q;j z#f=LY6YYmguwuUHsz7nPqLlNPmr;LZ^zHHWkr=b;f@H@9!24W<6CQl;i*f}1)ALJt z)|vl-3jPAdy0OBd{ix#YJyk#l$IUSfP!gfSvFv_BhLg!{sEaTZ4WeZr#itFmi*I#x zolN&DXv^vZ9hxKH<5v47ME3ghGTX<)8fGf#p5yH6loN0%cG@`dlX&C@@@NNbrzE-w zVT2KwzdN5Rio(Qz85))M>iB>_UB~ZN0bWBk$6nnH@mm!@Udm!$Utd_wv|NkbR#O+- za8-t%&6Fyg0LZ?QYpGk4JRyQBygpCujW)@XrL9bVSm++R*kK-BiG8K#N6>N{WDcu#4+fx|uf^v$>p%m6v`rgfF`+A;O#b-Li_ z3W_J~D#4wZ5PqU=XDM1fR|Wr01`XvoLS**^8_G7h*O6P@pNWQV8&yhx^TI6%!F4SwR3qRc-%H%3+$H#s* z-0eBJsx&L>;MTa^CfO>m2a9Y*%6QqwiYX9edvtt=j?D+x-Qr*$l9m#x2va^u>Yh<=s+iS1uk_ zE!n(mfUwxDWTpVabhmO*^Ov4uLee8XJS|jA2n?t5hIkC|#wbcuEHMoTd+=4S`dDFw z7fRPhJO+hcm&II=Mg%;i!e&{q?8Y0k)$LT}e;6^m7vDd8PO`t`O#p3IQAbLP5#%mZG|IF3^}UWtgq1jwI-q zl4ynMX0?XA=QZ-4hSyP?N~X=@D^0E+!{I)*3XT^uB_NSH@N4?;$koad5{}ZNsp~Cs<_ki$YSRWD+59|o(p#gVkjMwaafhqZr`I}@lr`zk_vw>*4vhW z?}bGj1i5hm5iQKcjj2nUi!-F27HrX0Hh9T#Jwl6oN09b4-f&CAxazH;Q8MJ`dYNh- zt5uP&wuCA_h?fSsb5x-8Vwx*GOlsl9Dn|o^IR%Si$~xGS5mg!2QiiSf!G_sMMuo>OCghs z9VTi76{?!PR0*z8=ojy|B%Ikx9JiYpJ^DnJ49tMr|$(r;TjYP9gB>zJQML zz^rxD1M*^nL{YOo|3csMKx|(L}I=8%Nyn zai`(TtR4ZzgK$R?2s90Gw5Tyn$qe9_SWj>&HgrXCsEx|jre})fN}VYSv`zR0{9Sd` zu<7+xFbox!jb*gNgi*JFSGOw^3ur`Pw>o0i_fR(J%IcIawZ*iJJnn;m*Sbo&f;3?4 zcgor;xlQ2F4QbvBKZAfFK@Lak9-q%kW!|NomdgIPgH?|Gqcqe_M}`qze@&lMA!31l zl`S)!M(BLQGGR6{)9@owrfFT5YhaLbM)U^&*mBi-;LBb`%j>k>8-2te7!E%s}{g<85nNKQEumotoeYiv;+6Lbn9nCSD2VoC=ej+KAQ{@ZC;uQAc2QM`b0Hk^4Z6@EYDRI?)U*rLx*JXjJB3IWmYZN# ztw5K19sKoU+nIhFYN#bs1Q(PjNj*X@JW?QCe87Ol31uTI(7!BrjzyWpi?LOT#vA4gwe{+F0%Klrt1UiMLEHgslj1+KXD; z03Npm{2?ghb*~lpm{pl<-%RlZOoWZEo``Rp;ydzPZIwn}n56gU64*Vms?F46T~5GZ zCRQ&#VTqmZk13|u>hOhI&ODMbA`gwX*Qtv6Tspor2Z6;uF+~=XeCEZ+zLU1MvWDK; z@eCqmg+`1tf6u+M@g|E%F1P50jqb21eFoUSFx51A&pxG*cBBIdk8U$8kfm+!NGBHg zwwgnV?*<*ZhcwmVj-&`&EMd-FkcGyJuW+~vvcaJ?T5X;mHNfM;dO5cPY`GX}=(I9z z^R@21fHELS1qB|SNMxOTUT0Bgq>$glsFkQj4|Z%q`Br6Oy+g-gjdnJ!H!UC93( z$aiLT+LxPjYcmcoF1Gb&#>kF-jVVcpHyeddh7Y6b%l54|)K~~$EYuC^ef^$(z$8z< z0KT#3G;VpS)1Bogv~xXv7lkGn9z$+c^S)!YM&pb3(i`B}h%{MU14TMZhdYs3=`3c)8_D+>tFoC=zqIeYN#JE0IyeLTHfVnliloURntc- zHO7TkzDHfqaB;=Ti!^mG?w&c@X|d+2xv#6slC?Y7Z<2`kM--wsZ;&B($*(B0?Nf9U zXKMO^?FgY)C*dcwQTx9PCyPtE#UJFK+}7@SzckrR5yx?me9pC|o08-6S7_wwujHid zuItn4-k3&4&Sl|d=9TOkpduv7k0DrP{ndNv!cp?ttt4CNRAR(2*Tk3ro7pucwQEsj+Yu2H1n0C8+ zW)zULXT@5ZV!uDagEv^AMJGBudbbt*Z>nn%CSI)ij~wd6R26;`}Bv(45x>rRQSWhT)?#&ZHOH#7A}YS`18Igq=}K9P=2C zOG0#jhU*VWWB!-Mz2^_s$0>;b7_X9?!oT zP%O!muI#r#zxD<08_ED%4Nb&UHMlcWNBgKK_8cC_aowa~yiudy#+DBft}VE>-ma2+ zT8s<_h$T51hXPhFjPgMOKH<}_Rl)$^kbQV@NS>bnI{M@;ZE7XU?N#8owcWH-^bRSNr2tHwE%%_VK~bP+WHI{`?anY<*;C11pv zIDjIVrTqj?+=XRRKBs&3ULSj6b4Z>OhZi2=cJF~J5fcR6RwG#DQ5vzHtz!e-E~}C? zwS_(Tr=(jXtnIDL$;j7Ss}_jqgXi==S*{YZFZbROaDMI)JQ4@+wlt<*))>Ja@X|W=r{l-JoVJq7ZkUAC*_u)diRivTwRn2nRn{KRb4@ z5I|eOn7uv=`(IlKhwf356G>lLs3i#D3mxmM7t=%fIJ0EhXp0# zVFFuRQRxjEFSj(khQIKG1PJtAx?=`D1PIA@ht0ZhhJ{$Y|Sja!9>>BK%SvDL+Me*^VU$Y1^O=KxYLN8L)amT% zSHJygY)q1Ab+l+hGr^4O{qz?8z78|7>S1fh=^?8qmlg6y+?^THVo_lyiM4@bc|&jH;Kx(c^)H$&oN7kLNMq>|le<7lUyUj!w zdHi%zoB-Ftta8HKD851`CRysftuX#o5PMwIL1d~xD$f;Q@0*R~cw*GK$H>b{h$bx1 z($zb7lUzG#+}{8mu3uP~viX`T4RU3cTD7;Ym;Imwgdh|8ZpH7kki81Cx`hyv-^I#S zk27<#NUr7r?&dQKY<&l+4OIXvwJrYx25>3Z*_@p(f3eCRa`Q;F`dlUkUsFb2;*aEgCEY6b|$l!}A zIH74!2As!Vm`C#Pe^?f5(TfF@^JmOX7=O)ZR6)lX*CX)ukm(GuMeQ(R@#d&WjA-FI z3gy>>&7)lVtYpVdr|KlNcKHX|#~iD|iwFc>8(VAR2QnNGX+y{gV|#0rmijHb-DCCf znCRPc%4Wq&%Ls?62VF*>gUB&F?#`8QWzYq7Hyf+dEd0yja_d|2_5l0hVcvvd!dUjY zPdl0*ti@wy2K+ZR*XrG>uCrD4-O*pn6PWV(6JrmJf8c1`RJZQvq$uEjR#XIMgE;n=iYIB-@0>J*|`L~Knh zBDZ_kL{N`uS4=&Q4RiDjyFh6o;@pw&K1;F51U~@=UeeA6$sl*QZZ$^Eg^8` zQWB>h6N9nK5nId_MFRR487_#kwo8TjjX#JWJG9$e3UmX*?;M5aghFaJ-%}H5bw&B} zb^T4GKbUAbyhw-~%pk*BPj4goNUI&!gn;?<$Z3EJUJVo(q38Gwms0~wOt8fiR&X7+ zq^nu_2Le!=P!(!+yLgDcGO(8p)9P<_d-G*HnE|hBTCpOKOM}SJD&kyyU7EL|e1V_Q zfaOA35!20d*49t;ahq`hV(sdQ8<)Du$@MC_?07;12^{TckB`f(YDQQwiEl`4^f)2x zil~Le*2|1RL*Y^pxPl$$I#A78aQm`b0Nst6M1QcOrMis4G`}B1^9Y(Nfm?|AV-}iO|yb@m>Fz|v_P?2?D_XJ!5RC;<@ zcv?s-q}y=!x0V{9Z06VTxlD!D=XH8FIImQWu*(CX#^0glPmwh9$d#FjYT1*Ts%5kA zef>z@dm0?&v2WiU9bsKY1H-BuWm2iIluo7>0{dz&Z_FlZf+SR341s*&)F}{HdqFmE z??&J6PM6~_y`an327^a0@b?`HPpYyox&|KdP314ln)atPSelc*ZV*%77>vu~=S?gi z+T?u~lcHU=;{F1ezsGyKAA=u@-^h7H4RM3^EETFg@tvb6RDp~63!}OQ&doB>J)j~D zQH#UJo%RH4KtC%WdLQlJqn@91-!;am_9$!9J@>_YA2P5jIj?2>ZfzlYen3x7;ZlY9!cd zraOb{HF>sZN}d?}u)(bYyOt#2Y)}}oSI>SM^?JkrlP0hh)vCW2X}?&a@?`Wtqwnpk z1I6-_fK5t;e=PR0I+GK~Wh%b4lLtREwuO%OMKUoUGS=g<<2l7hVN^ghBf+}`3r^y_ z0a!x9Wh(Y&#JFdoSv71S17)?foo2yPSsd?ohsa^F`~a|B+n-IJ0>Yb*Z9ueyF@lBH zxUHjZj9Zh~Y-dBv9tC4omPwNACi{-wwN#|bl?MG1K__f0B$%^x8pB>@ub+qHS)FD5 zd#HuMmnDQKC;mJ$-^xsqiQhvbf4&sPH?A4!$|Oh#kBgD)8nj2GI;w$-&8~O94e%GA z9A+GRv78;|+QD%;*j#H~K2!Pt&?6cU-moNuJ>7v#()9Esr-5432eX^8Um4txa=47!rbK;7EkvDjpFvNhs+v@%tCqe@txhVjal#eaJKFa)7OGVxZUk+=_{)l3! zNr5f)*e!Jy3>U`s*vS4ccmrnX3-l*eB3gQ^R3qP7rAFmpyESWgH6U0z)K=b9Be}-` zyd$v>e%Ja~OfOf4CNqT?Bk?ZSnI;aZ67!83p?Rg7Z4uwCuIMdq~^Hk++>r zN9}tX4U#^?9t5K?G#Gpf>E+>wiaXUdn_ogCD-x=0FJ4$pcd^i{A+11W&ReGv$?kKr zBC(3Pjv3UGm_4CnXHd10e?(}fj|#~?W+UY!2mkZzY}@908f^t<*NRxrHgRCT0#-0~ zb`m9Sj9w?>V^?aeWDZ=Z9Zto&VK<!Fx~y4lkOcYQC*3 zi_Jn1P@}mjj$8YB1I@Q|C->fFqo43z+-AKT8TWqG>>ly4N5EdhWhTheqZ?_*$*Xk$ z%=w+zZ-@8sagc!YUh?Yd`gpLNPS4kmF{NEwVq!~h;H25t$X=Gwy|9KqZIe7#)6s$j zk7t3^)%#>~hv07g;)seT4K#xoyKQu!@jd+dn0)EvgK|Ld43&4~-S%rnnfCm<_3C{9a@IP$HEBJC_rhR||QaFnx6 zZ1l@U%+W*!tfO#RrzaS*7#y1P^_G|F)8e!%=RYf1;x8EZg zt#@zqYR|JsN}d*%JaRay6X4{B_(`?d@uIw}xu>Ih2F3(VjhqdhRA24A2U`{VgUS;n zy#>-teyx|j;bjJq8soez`)?@YCLL1}-v?aLC>$usb2$(Vqtx%)X474~xs`f;7Ev>o z`Zzi048(uAN}}yjK!a*{*RRsMphNTFpt;Y;snxwbTYB;CBvwa88hk%+6bhcsd>?TVHb5K!5FEGDIVz6?M@h2QqaEx8H)~nz>avaZ+?B|V3E8;9djgoAi@@MY z=&5H_dOKV^m_{}-FYjXPCK@%gnnm4gy)Tht2I$Yng3j0Xb(O^WlpuU54Lj6%0OI-r zgq>Y>iaszuxr0#pa6dlWQ@sSuL#wm4%Ttn3Mtg@Z(F$7!La=Glo5=M?zC*YI#v)`K z2DwXb!_|a?6y1}Lp6r?OlpgXjiwpGu&hDyP>J(H-{9qS4*_(aJ(^9DihN9!6AC68B zR3K@PQb_`gi*#7#7ML6nPb*-h>PCg&?=7xM`0gMi+X${91v{b)&7L(c4`kEc=n-FD zBC`%BM91B_^ad*`2Cb1YgyWKv8zP_~GFRc=2Z=nM%GY`$-Wtgt*|z|S*O(|7XiqT@ zo1}smM}%?v435^YFH`cv8ts`O-VdFfQS}3iG&OH!mA~D zcR~6XjEX{_Iq0|73l|rd%5{3fb#B%X1%}pIqc-hrZ!Fw1T|eM`2XNX1^}hLMTioJccX`}B zc?7v+8@q~2mK_38SE3|xnIAg(qaAm7{N~Q(tMn7pR|mEbO()lnTRiyk}Z$3iwVOA0I?CypmSJ8*FOb621C@oW8p#nqoS1^0+X zHQ%34&5{Ej31iPoU=cYI^SQm&z6bhdJDqoFLyohDG>gy5ZaMLg$TFmUjhlw=lW070 zsog2HOCki7F0bJ0D3M&PbQ%&r*CTKv6UJvq3HVui&S1m5Xe%X7;i}Lb*pS)OInRyF zM(h9^f{+%GG4LEVk91?;wApwpMH6a~*j{Z(`ubF)p>k@6n-GM)OL?}Z=cY*}Px1o{ zVuY4OsL_SYlIykq9D)AgV{l&`z*TnQt(}TBlf78BjZ<$BVdV* z3#}kOHx{5D zh-ptdDuTO#E_xRiu#X46qOoJrtaqqAC0*j~L`Xy8m5|dRw)gNBiTVhfNvA)o)!MSs zt`K2Mb`SiREHxf6p<}90=pZwJoIvL9H`|X(asXGqZt}+d>5OBXnU2?E5|ffmtDhU~ zddw5|rjJg(HQ)euirJl*?+V0igzKEwk$$`GgP@`hc{0Lc39t`ipKuBq`?fXh=)U}< z_V{^77SB|E(jsPKzErf2+RbAn=^M;L`>_J0o7pCM2$_jTmcjnkbwvsk^kY#uY{YVR z@3rU5v3p<=yw@~_E4Oceh03xCX0T?Qb7-QCgaP5On%uNGF&HfVMf<_VPA9E;47=cV z)|io=Cuh?p@3b^JkZ-p2ap+3~0gbt{^t%doZyyisS^X@pX81&DCNA1eSJB=XO9dO8 z1}K`44#F;eTt{<>YiyE8bGp^}&tBX+<7Z&-LARG|8qKC;o3m-j^={MRc?A)<@<`X) zuEcb+54L~!?p(Uoa97ovS$j&OCD-vYV?|?F1pmt+jxn#QEq24;4TBznyV;3EGa`v_ z-l zbssI*78p6Y%&hpf2e6PCnOo;x4gTSw7Z`XPys?*t8G~yqsTjSa=_^gCmrJ~R-V!Ml zGW>QyuMt+)NbpxHo7Eg9(2mtcVx*%YfN8V#?@OI@%3riTiZQu9OVQ`&*e>w}-lC2}Ty!mo|u?FyJ zzp@naw|I%O=`+I+ktXjAQDGu44>_lGO!2+DXUQ`peL7zv9v)$#i|N@v#Wpw8zj+C<6&qYP?`)q@Es77kk%_mNxttGLkJKSg%0^P+*9((NE zl3?GZ#6!((Fxod){Deje@A{l`yg9GwO;dt37fw2k(5CU>xO{_*MvLaY7Q!Psd-EbS z;L)wIV76kx32x6fG|9~)ID2zloL~X82GAw^+;dZj@(aghT~3wjw&%eHNJr=r-ttX* zBoJWP_`QTK01fzDbSh<+lu^&qT2AvmLPAa)k9kp8>8Fw!bVYP1K$(nB_jzNXSMlt; zzPE}7O*CetuLO74tT}zx(#Q8>mabt~0&A$IrMiRoSW|nJylJhHA>7L9RZ8(3Q z&&#-y`DdCQ3t)c-mM>qT`@prQ9~ql5>JJ|;hk96A_1bbYOuuXxsA~~~T&>)12~xZ4 zJqq;qdqn5a*smz(G6sGQcg_;th=NS^)5Z`PGmOBAW<4u zEzL!|iTti5#fR^9xHzS=(9I3&(D67hx@4ks_!(L|*ePB9BFaT^yDX^piImY3do}Rn zbno--Fj!yZDa*nj&QYgFHElRM1J!PFqxVkOWZ_j)XapW_*EBw?Y{Ry`lXg3(k_RQV z_TcOIdE44DeQzl#O7Y_db$?Hh-+r*JNfa{y$Z`P2OfF%;Ha;@|0h;WCH`OsEB;%Cv z%Hd>qq|YH%j*~CsScq@8%I$=eT@FskQ=CfYf*hpnY zein|24Al-#-N6se7-TX@A=s$j_Um&=t`0FcC<Wy_14p2Xeqh&{nUw-tnQf1}A~(D0cxGf-4%5R#15TuG zX3D$5_=?o?>u2<#J|!IJJRA3k`g`5&{z%S}xLipt=y1bi&MLYr#@(iJ{{Z}f`ZLx9 zqz5ep5jlW?fy`|R_!KhB^0@gV)$!6L1FJfx2+97t=x|~?KlUJ&2J=f8;M>!TD7!|I z-}WVSCHA2u*F&<7@|^hP%YxL7bh2f%*5`~hXhT1&kA5C+$}V>Z#|m5|Dp@!l%$Q&! zJ%L@QdzPFF*o-)7UgeQq0Hu!+L8Rm@jvXF39?7*zt&DdwC+J7O!B?TX=_|96r%8Ja z4p>wtrYOXhyW{o~*5~<2TNf{ryk2Sw$iUb#_8sKj4R(z3rc{tH^VS<^D~4S(HE%`C zZ$4ID4=&2R(26byaG6C?J?>G%&$zyRsG4|g4#S=x8i+WG5nl%IwNV<@7+sN5&??e# z=dgT2eQvwo*YSO4?3LF#c!IfWGM}Ybpnuc@c2DNJwJmAj)l_OaQaA0WFA~|)b-`## zxfkd@Z$L*3px}u_=BPNOW$VGa{MJ%NbcRr|^H@-tQ2P!7x4haLmc~^)Jj0 zdAmOt+)TYtEx{7%l3emx2vAn+rS!~c4xP;EKOSvY6zn+@J-}5_;jr_DRus8Dta`;Y zI7RFG?sdFhg^fUx@N_b4SHS={1v%>YL(V3Glu=#=Mm6hmGaL~AQF5iO&|yyobv*Hw z4B|>PNo>aMR#`vyTEnZHSB{i2^U%wJo29K*IR?gYu?Z0{$|)QXF%Vkch#OK2jT`M3u%~pk_7K+1sJ%6sYkB(hLS>RAewiHQ&>s z;yTh-7T6A*dR-LIgV)BS#*Vz6UHv+z0z{l1ymt!fup30m>N(Z3*Z9=p#ku&>G@}q>qYDus3 zbzRp3-jD`qZyU6Q@B|JaQ;T@?wSjO>c}%8Jx(1FhdBzLy$e6&3dXi%f?BFJ}6ws>1 zXX}ra5;W&{G!Iv!S(rp0W|X`F=|kbYR8{{vfeq#h$D4OPO_zEgqpBx*>++}r=f1Em zey=4$5thI%L&stD0Mcgfh-2WQ44=fhi)q**bS#`XlM5mjyi!A*;z(?`hZL!cn}Y0~ z-t(aNPsq4*N+>i|1;Ao{ST$X6p!19h4~f_mfVh)uksukia(uu-UYV}y^2dr+58Ky4 zH!Fl5kFOO=V=ha}jQ9_<_%DwVB%w8U>|g; zk}^JDuAIg1jtbE4*FcUg$09BmD6PLmURv~Ak0eT<1LLj9892O$wU(HM6CiMkdWBU( z=u&eu*r$~*03I`5;(Epj9^wCrCQTXade=N>7QY4+btmxpWu-;Vg?H{)$CFgjWB&29 zZ7Gs7?DPIoQ=`7vY8$gN!}HZrp<)Rc0G>EC*P~A>NYB|#YVt-YH|tEz^d~1R^GRblh?X=6U_O^`?F z5i4H1Fz2$k;YS3{n=%oH2&9K?;8?CP4r-# zuSO!MplSw}#xd-^*}uY2w0P%v3ORHT3pbidHvC^_HMw_-Bxtx_yjalSZh zq2yP5$PP1d?{O%6!upd2<;Fg$U2itX#!#dTwadzmd^b!hj<^?MfkInBPk~9+axwqP z5=lh@uEN0$;^m8b^a@YzLBvIRNXnPW3ar4Osb*QnMvGB+kZ~>+1-TbFb!Um@VBuH<|)N-lA7`f*TYnO9`Sq>s0}0`Ja!1IVZT%-NGY(&5XGQt;0{ON#F<-93Gxw%8dN_ zJ1j?_*T|s%r#mzn74>v}T z5wWdS=ByD&&@x+FgaoTUmi%;J%;pwCRa9!_uRSZSRw2 z8T`iPtpPlFL|VHTZch@YcM9S&p4@@&oEGc$z$TZi&bX2zNFq~;!8=c8ZyVAF(FARV zFbEe9R7N^qz+FKYK|YZOD@rEtb%HA4*6`w9i=Qv_Mp1iJ0TMQIEeC}{Bw)5;*1gXk ztz@`pB(_-b(oJS*{xn~Yw4Bb9UGCv**1FFbXg2wDUBRG>fHTZJpJ2UmSjA>g2$)HU zTvUEI)6Bs`b%P|i<(x)HI%)5lh>WaqyDJ+?cNhe#a7iQ*2s&$fN(b%bGB@?7NpzR- zI}NdLwwIp1Je)PmWQd_0tNB#WF1W7Eo3*g%oCcXmc^yJy2^qO^Qn@Vj$p3RMq%o?O ztccOETAfHBuy3lS^9{;GZqZhmKZpwyOQu@2YuT(@We1CmTme2N5uSaAF$C`&VDLqQ zM7L4xWk$LmJrYlxg6AH9JdqCPPLhVHG z2bm34xWZj_5kmX{gpb!7UO;Zn{%=Fmu&{&JBAH?Zt5(HglDIeGKHy07egx**0b;&?- zJWJTJ{{V|g_4$|0NYV5$wqRuSAqo<>WFnA9LP4ZM89fbdL+&8&xo#yBAWC>t98HE| znc_SbrwJL(8Azalo7YL_mL1DSiqUN4K5?-(n!}{wrB^mcg?g1pp+-fZHv;Jy)yU6y z8DiKAAzPSL@G`)dZG=c+qm?;lDD{T~5BUcK78q@M%VjaM+=34{9Lkbh-Ye;)T(LL0 zw{Xh3wGry z_pagntaVQ-^yTXlso4P3L$d(KSR2Qp)gQYu&gQEm>vlpy!?L##;X`J5g}sc4Ro z9_9E(i=qzqB5Z8e*o)~iOjk4(&vrfcAtu6*_j4`YOPg<$4mS_@9vE+9*%P;aXS0T+ zRTu&pM8ep^J6-4~xAn3b!OkU*XMx(77f3{(j@^8(G=IyRU#vVtjEt~58t^Pl_&5$@ zB*>G|*30`qNDdUDoe!2=-NpogV5i0|f)}G2*brDnM0QAoWe$a%uM0G6y2|{lAN3Mx zIzKNPed6N&lQ6>9LI#?8Jw&0pWN@uXrzmEtRuj%v&b!&&0;2W~Dn#KLR%wogSygN5YI6w)L<43Q2a2A03oygx*rB zmW)?N%-jig<=v(8fn`BJ*FNBqh~uKDU74GyT2MZZP4X9QDReovcHVa#DEW&Zttv9p zpe;YpAnT1sn76Ve5yE@!L2lgjW&=-N*can>s9m^k1k1%N2aE7Lrso!b5gg%OpAyz_ zkX&$Y$JzV1E%ch@x`qxePS~}&45_Fc5<1%#uh-#QvEDYXEv^TB$h<>GETMDhoyvmT zH|<7@Q>khfrgHvnt-H^_GiIW;g*{Sk$CQAh@~~{RUayyf&TFk=k-+ENi9KGMSbFrm zqS)&I=w%wp_d-~PHh!A$qlajOCb1;cyEtf^>PvW^1H-`%-H4Lb*e%6xePXD@TtaWI zX`?r4Y0c-yXITtk1~E$w1rK76NotiEjLd$O9bo8rR*XsYgN9zbj1e1fnSpM^(mn?} zgx1g&3}|4(b^yl> z5}cyq{6)|*lir5lK$2z{xxxj6E;w_>lVKeLed)fpn^Hs-)phpLopFvb4ly$NQ?1HM@$v* zYk{2WlV9|1rde6?^F^A*CNx1UHQhW1XpmQ7-}*37omk3l!&0m)O_QYdM38@weFqlh zn;820+SGer@@Ea^nFYNSvBSilUa!%Nel@=1&qcQw=+K3&RP;$*<`v6Sxt5q96&=pK zb%pc~(tCwRx#YntkBe=X$-M^}oH^ktGWv3-IUu4Y4Pre_CATtJnVajyCuSu#HqhH!{;t!hKR)$3K-Z%s+-AQg zj2>^rkkD(T|mbv!dslDPc}{KsR=IuII(X{CnbZ9O@$gw=7t5hNXu(hPaF}C zc(M|oK#)O^e<_=OY0ZC0)PJ{h|N8L%wjZDVeEN^p$-w5G>whAJ|@_RspY{i%NZPy6vH?AOb`qyD#>@^|JJ?ipH*Uwdc$+Wwn~`>WQ!WB#{X z@^|L%63AcZ|J#0iYX1l3e=8w>XL@O+w?qC9mE&Jb36Q_9^M8mPe+P~eXpH^Gqxq-3 z?LY0ur-ZNn0Q_HFZojjCm#+QA<^ubB_Wx6`{f=`hV1xZrG&lHb`|m#L`3Ky8tJHpH z{?9)8Q)vI6_T!W8uL%ELzyCi2+V8l(5B$;J;Qmy}{`Y7T{z?7k!2hm@|LefP zApf5EZv&t856piK{O^wTzv`rc`ujTnA@IKon*Rd&!utQvW&dzYBx^>i6S+VE)^{2P6G`o&Oy8-(|gj z)rtD+#QMLDNPiytKLq}FKj&XShhK8VzXkq(1|9?B@7ez%@LB(W`?rDT#{Byd|2FWy lyD9(rHv9hv?srqAti+dJXVX9a!2b2X_%&un`2YFt{{WQw^oalf diff --git a/GPy/testing/baseline/kern_cov_2d.npz b/GPy/testing/baseline/kern_cov_2d.npz index 51ee481c1852583c6c6d0b9f76f1e188c1796c38..4b82fa05700160e47291448844af4c2e642610fa 100644 GIT binary patch delta 4925 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 delta 4186 zcmZ8kd0bU>7We*mEKlycJQ>#eKpwH_Gg%_xVkD@c2C*A%`NS0gLC`>uRZXQdM9z%U z;>aQ&ERpr12C})c2oJ6N;8X+Fr>rrRvKeg}$N4QUsPqrM-|sp1_dCCH&b{aNni@@R zmzy-*K=5^?8XmoF1L84JcCpAa!9WESCcG?L=9$Q|6?vTLyge1ROW}~W3tTf@X0bl? z(cHGTDq6vb3xesD)-bNgf%|3;;kLCqyl1I`G%uCx@+Zjz6OFvhF2F?gw!*7;Z-2Cq zt&&lrfPrcOdc4B~pF8*8N$c<2WGJ@HZ!!lzGk+jvm*WCmm*79=W~P& zXyPquH++#~^@+;}sC*z|2_g}wVuvQrRTG5fBmx-9FTWUp+CzUy^$AsJmQq#SaXPXPxv z8`-Ls^&+TEf@I~3zid0?uk?`>O7dnK_&0UgZ(Xji^$ zQB)rh7~S{F|j&d5?w;K;}wU7(1(g7&Due zaGa%?Z9I&}I}q2qkxH;SqoO;$ozOvSYVb<1VYX6`-e?P?en;}xEBY&Jk;J^YHL>N24uT)^953DCzDHpm=K@s5@13tHe$ly3JrAmqE7~ zPg20SPL{@puFI01{O1l%<6I!Rx(mO*@8&YRejFN7Jt(%?#7^nCC66--(X!W;S2;+3 z!$TfVD&Q1=42Q6*Q!U$@;9#oSeQDuQo@n&jCMh1$E{s-s-rIVb$%z$2UAB7r37DJQfw;bcuyZ zaPYQqaLVVQY^Ni&sk4-z-@aIWvhyVz0(MYmMPuSZ!zF^;pPkDo>cWqg(@n~96)<>( zHZ|TX`r2T{XEzERhs@>cIWh;~13Xmhas=Wvy_dDH5n!a`YdQUmYEJP=f^rQFd3c`!g7&SL+I?;$Jo5d2qakyW8F_dg&T~W= z4|a#}7ZdyFhDgA3Vb7s^lU`(tX*GE330Z-x7TWJ%5pwx;WKJNa;#p28Kr%{Mm_}{qqk+q_r7@ipXpZmRNnBYZ6gTAf_wOcR|$gO1;Eo!4Hl0@NSj4XecWP8`2~W*O#z?^+zXxI3(PUi^C`+ zt@#Oqg$vm6hfj-0zld6uvL_6m=0Q3mpqeFAN)BUP@m)BjJ+g$dA}Az1`XmCl2ob(m z!h&GankM5FYG`Yfkb5MBs?!o`V6Ze?fUT!>=!Gb3@qnJwY8d=TM3H& zu_+$MV51LhP+dG-&^LzVErr-P5faa8jdPuZ)5k?V(fX8#CV=6LRMkO-mNv|5t{V}Yk%c;Yfwh;7aC57#6656whLZRIs zS-uAI*V@zJtZ&zvl6k)zs`_lvUndQx+a>h;>IuKbmAGZD>QMKjwC0?IBK1ZO7x=VG zL?gdaeD9>!184YV<8QyVU5OJbM(S;$tXGGQubYs%J0#@0o>FyZAZjCU7X84Hy8;U_ zYy%cG_`V>aFBw#KNhob2Rn_YSD7vIWzc6}iJ?o~=&WmW@CitOiK74kbS9|~N&0e}0 z8{DCwW(HJV5RhvMUFmW+?hFRS9)A>=3Vx{?Na@jtf?yW{S1mRyKWZQuY z5;EIHq4uIbIW}WZW?=fZK>bOvO(@eEF0C6##`4U^kRw8*P6aiy}wcgtl7_6CE?A9)$Z+Q z6~h-Owa@R`_V%QcZpahguzvfRJ#%1Uh5bVzXx+gH`qhwx9!%1)1NZ~gsY5w$Qx9^d zNU|d$FK&Tek|gjq?y+}=$Gp0 z$2@HQL_j`=jnCm5EUu|rIi*d9ttaZ*#3T~Vyc?D_re@^m)%d@4z?3OLK-m8Qo4Qnk diff --git a/GPy/testing/baseline/kern_cov_3d.npz b/GPy/testing/baseline/kern_cov_3d.npz index a631b73019a91c19a3b6b8682ceda46b6fe45946..b8b5776137845f58742dac180679c757638dc7c7 100644 GIT binary patch delta 3211 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 CfQU5! delta 3243 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

bu(F40@FS>>l?2eD=5*9h*J4-6y0XLlMwmW zwEqlyG{|KEXEV96v;zWWI#+FwgOg~p2lsP4h>J09%$Ur{n3L{;Mz9kzZ_HHh#m&{@ z_=_Z|bJf$zn>kL|Y%{l#i|cZ`$Jt4do!r|+wZw_wb;$BX* z^f+}$T&oN+7RULB_5j{krF+M^_5Icn@sEoVxFYbiFI)@#uG4LJ@`ou2mH~0-5aY=~ zSLiw03X2>yuU`2K#XspQnD0win;+s8%8$Z+ diff --git a/GPy/testing/baseline/kern_cov_no_lim.npz b/GPy/testing/baseline/kern_cov_no_lim.npz index 1f399330eeab5be9d0e9b6d17b2cfed0c88ca0e4..a049482bc8a7f1e31acb7288da060ceb9f289d2c 100644 GIT binary patch delta 5034 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 diff --git a/GPy/testing/baseline/sparse_gp_class_likelihood.npz b/GPy/testing/baseline/sparse_gp_class_likelihood.npz deleted file mode 100644 index 9661f3bb14b3a443fe64a2816a45fd9a531823b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22078 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 K8Z343?f(FYNbe;8 diff --git a/GPy/testing/baseline/sparse_gp_class_raw.npz b/GPy/testing/baseline/sparse_gp_class_raw.npz deleted file mode 100644 index 1b730c3573b002b174b5a2961cba5c77491115c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55898 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 diff --git a/GPy/testing/plotting_tests.py b/GPy/testing/plotting_tests.py index b5ae00371..1e9cb6c51 100644 --- a/GPy/testing/plotting_tests.py +++ b/GPy/testing/plotting_tests.py @@ -38,7 +38,7 @@ try: import matplotlib - # matplotlib.use('agg') + matplotlib.use('agg', warn=False) except ImportError: # matplotlib not installed from nose import SkipTest @@ -48,6 +48,7 @@ import numpy as np import GPy, os +import logging from GPy.util.config import config from GPy.plotting import change_plotting_library, plotting_library @@ -98,18 +99,26 @@ def _image_comparison(baseline_images, extensions=['pdf','svg','png'], tol=11, r for num, base in zip(plt.get_fignums(), baseline_images): for ext in extensions: fig = plt.figure(num) - fig.canvas.draw() + try: + fig.canvas.draw() + except Exception as e: + logging.error(base) + raise SkipTest(e) #fig.axes[0].set_axis_off() #fig.set_frameon(False) if ext in ['npz']: figdict = flatten_axis(fig) np.savez_compressed(os.path.join(result_dir, "{}.{}".format(base, ext)), **figdict) - fig.savefig(os.path.join(result_dir, "{}.{}".format(base, 'png')), - transparent=True, - edgecolor='none', - facecolor='none', - #bbox='tight' - ) + try: + fig.savefig(os.path.join(result_dir, "{}.{}".format(base, 'png')), + transparent=True, + edgecolor='none', + facecolor='none', + #bbox='tight' + ) + except: + logging.error(base) + raise else: fig.savefig(os.path.join(result_dir, "{}.{}".format(base, ext)), transparent=True, diff --git a/travis_tests.py b/travis_tests.py index 167139629..bd3f56801 100644 --- a/travis_tests.py +++ b/travis_tests.py @@ -31,7 +31,7 @@ #!/usr/bin/env python import matplotlib -matplotlib.use('agg') +matplotlib.use('agg', warn=False) import nose, warnings with warnings.catch_warnings(): From 40137cc8f7e0794bff55639ec55d4884c72e86b5 Mon Sep 17 00:00:00 2001 From: mzwiessele Date: Mon, 22 Jul 2019 18:05:00 +0100 Subject: [PATCH 20/23] fix: tests --- .../baseline/bayesian_gplvm_gradient.npz | Bin 0 -> 10155 bytes .../baseline/bayesian_gplvm_inducing.npz | Bin 0 -> 2234 bytes .../baseline/bayesian_gplvm_inducing_3d.npz | Bin 0 -> 3616 bytes .../baseline/bayesian_gplvm_latent.npz | Bin 0 -> 35834 bytes .../baseline/bayesian_gplvm_latent_3d.npz | Bin 0 -> 12814 bytes .../baseline/bayesian_gplvm_magnification.npz | Bin 0 -> 36631 bytes GPy/testing/baseline/coverage_3d_plot.npz | Bin 434 -> 6536 bytes .../baseline/coverage_annotation_interact.npz | Bin 27700 -> 434 bytes GPy/testing/baseline/coverage_gradient.npz | Bin 228 -> 7183 bytes .../baseline/coverage_imshow_interact.npz | Bin 27726 -> 228 bytes GPy/testing/baseline/gp_2d_data.npz | Bin 3031 -> 3409 bytes GPy/testing/baseline/gp_2d_inducing.npz | Bin 2233 -> 2234 bytes GPy/testing/baseline/gp_3d_data.npz | Bin 0 -> 5551 bytes GPy/testing/baseline/gp_3d_inducing.npz | Bin 0 -> 3942 bytes GPy/testing/baseline/gp_3d_mean.npz | Bin 0 -> 45273 bytes GPy/testing/baseline/gp_class_likelihood.npz | Bin 0 -> 60055 bytes GPy/testing/baseline/gp_class_raw.npz | Bin 0 -> 77997 bytes GPy/testing/baseline/gp_class_raw_link.npz | Bin 0 -> 79658 bytes GPy/testing/baseline/gp_data.npz | Bin 2489 -> 2492 bytes GPy/testing/baseline/gplvm_gradient.npz | Bin 0 -> 10143 bytes GPy/testing/baseline/gplvm_latent.npz | Bin 0 -> 36261 bytes GPy/testing/baseline/gplvm_latent_3d.npz | Bin 0 -> 12817 bytes GPy/testing/baseline/gplvm_magnification.npz | Bin 0 -> 36303 bytes GPy/testing/baseline/kern_cov_3d.npz | Bin 5619 -> 44147 bytes .../baseline/sparse_gp_class_likelihood.npz | Bin 0 -> 22081 bytes GPy/testing/baseline/sparse_gp_class_raw.npz | Bin 0 -> 55920 bytes .../baseline/sparse_gp_class_raw_link.npz | Bin 0 -> 58740 bytes GPy/testing/baseline/sparse_gp_data_error.npz | Bin 0 -> 25295 bytes GPy/testing/plotting_tests.py | 11 +++++------ 29 files changed, 5 insertions(+), 6 deletions(-) create mode 100644 GPy/testing/baseline/bayesian_gplvm_gradient.npz create mode 100644 GPy/testing/baseline/bayesian_gplvm_inducing.npz create mode 100644 GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz create mode 100644 GPy/testing/baseline/bayesian_gplvm_latent.npz create mode 100644 GPy/testing/baseline/bayesian_gplvm_latent_3d.npz create mode 100644 GPy/testing/baseline/bayesian_gplvm_magnification.npz create mode 100644 GPy/testing/baseline/gp_3d_data.npz create mode 100644 GPy/testing/baseline/gp_3d_inducing.npz create mode 100644 GPy/testing/baseline/gp_3d_mean.npz create mode 100644 GPy/testing/baseline/gp_class_likelihood.npz create mode 100644 GPy/testing/baseline/gp_class_raw.npz create mode 100644 GPy/testing/baseline/gp_class_raw_link.npz create mode 100644 GPy/testing/baseline/gplvm_gradient.npz create mode 100644 GPy/testing/baseline/gplvm_latent.npz create mode 100644 GPy/testing/baseline/gplvm_latent_3d.npz create mode 100644 GPy/testing/baseline/gplvm_magnification.npz create mode 100644 GPy/testing/baseline/sparse_gp_class_likelihood.npz create mode 100644 GPy/testing/baseline/sparse_gp_class_raw.npz create mode 100644 GPy/testing/baseline/sparse_gp_class_raw_link.npz create mode 100644 GPy/testing/baseline/sparse_gp_data_error.npz diff --git a/GPy/testing/baseline/bayesian_gplvm_gradient.npz b/GPy/testing/baseline/bayesian_gplvm_gradient.npz new file mode 100644 index 0000000000000000000000000000000000000000..6da9c5ad7b18e4df46266b1231e574927e4c4c9f GIT binary patch literal 10155 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 literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/bayesian_gplvm_inducing.npz b/GPy/testing/baseline/bayesian_gplvm_inducing.npz new file mode 100644 index 0000000000000000000000000000000000000000..50b6c3ee891cb2ff75b58e08956371a54d49d4af GIT binary patch literal 2234 zcmWIWW@Zs#U|`??Vnv2sCVIuLKvp9VYXEU#MQU-hL9AYKeojtma!F=>9+(@Sm{*dS zn3I`UoSIUsmse0Z`;GW3X@Qd`0*(c&oi{0JPRx?Lr3>OFr>t1Fc)`4B@gYG|W{A&^ zpE8L{sNDOErXOpUc)E(%5~iP0ZC10axVCbMFzC541fV#@?w{U&Z=e$v0I?b#r=+H& zrvjaqUxeEsd6Ux?5_Sle8rUf*%zA8l9yHpbIj8<=vb{eM&Phv5rn++sekAnItxMoX zbCT_!ie@jMlR5~5P)=rEYI$Z#Nd~1M1dXb7k;aY>mZ1kw!6kLuk3g3wFfuSG18H1I zCqFH%IJJaAr?6RZxq)5tglXN}wY{s)z*SNvK3`%&Ng-&4hMZ|cVWIQwt*REzY3 zv%`Ncy=B=~WBaT0zq*;^zo)J5-%h?)KQ;Ts|E=|9hjxGev~BkHY7^_(k^8IC?AOmU zyjF5fwEF3?lTYtN+rPV>pZiMm!S8+bhkxC!{+buJ@xS7g_?sHvF4t9AUhY|PZ1uNN zTeo_?7Q0*b3wwWm{VKoy+x4HtyRYU&X05LX`8?tF{c>o;*N?3|`99EoJm5MJS zGl|G`uLF!CKElL#~JLK_%dV9)@}iMaD2 zdJ!JrjcO`-`3o_VfuVu18;_}|r7^mh=!Gc4OevsSag`YGWDkyCbTg470+dQ%pn-8M z9y3wPM07LJ%QA$S)=aqFiBz(o8;G9O5eDWm<1r9x#z!|BJ+~svW@Eu^Hazd58;73j v5XSZ5F%C5kqML~vN1)6C0}YH?thk*B&pH9#tZX1HoIv;y7y+Asniv=W|I61$ literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz b/GPy/testing/baseline/bayesian_gplvm_inducing_3d.npz new file mode 100644 index 0000000000000000000000000000000000000000..2c5f79109d67a910ca7f28f3f2fedb61d7f1bcb2 GIT binary patch literal 3616 zcmWIWW@Zs#U|`??Vnv4CrH`(z0J0bu85nqhRANPHakN3Kp08eBLFMc>;;*CyPM!!j z7O-~Sq^LPDOY)X3$eWzDaNXhs^QOgz1WlPCK0kiSBrc(H?=zZytX<;iDq>5ReoCoX zajDI+;@ZlU!o1F0n_0PBJbuIVOzx`P%0DOAGK+{D+4@)b|Go=xLBFrapZ`Dm+j}0( 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 literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/bayesian_gplvm_latent_3d.npz b/GPy/testing/baseline/bayesian_gplvm_latent_3d.npz new file mode 100644 index 0000000000000000000000000000000000000000..42e844ff094cbd2e2f2f6255073c810bb3403e78 GIT binary patch literal 12814 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 z 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

F6=|K^+ z{1*=*wmk7(9*iB+Z7LtxB_GHe>2UbC1|Su>j4=e)JGGECCJf8d_0=4!(7d%sYt0-@ z0sr4u6iml@vK7VpU4$aeHGIhOtWc8iuJ^Lj^a8SX>k3S~B7Z-5P9?Po>gTmg3w6ntRWV?62p} z`^quaahTc`5ex>$*HZd|M5?AJ%!*Pd2&GfQx$?22p8|XMTLGCjC)(GY5X6NCa#8=Ns+gOm#hur;;iFK~0qO!c;+ZZD^s(1$_4JHI7nU+Ep^cZ@m+=WmGNZr}qXm z4&i87r}RpVt4Aq#!M}xq&JMU~K>PV#inYqx-Psvlo(fPSbG3e^3dQs%r}7J`CLpo8 zb8^yk#X!8BTsH(oT+beB&+q{TDOD3 z(89@52S$Pe(hphmmI$g98R-(<4=D2OXWqS-L>i!6bo(#`kr2@QgNb(0;HF~z<*fv5 z-JXeowRX|y$PM1*K`{t2N4C1D;Hjr#olD}P63*vCfpe-X!db2H*r#-jUsC%MSrZpO zf94l$3Q4yj>6i@(KXii!@++_G%G3pV*qQ2xTS)On=R2$h+{^F?+iSI#5vOp9lVqx5 zb3$ixu2p(me9ISzA+f{c+$mG$dn zR%NC3jMa*dbin8dm+MXabu~xy|J-gy7*eMB{@YIR&)-$VIZr?0R{hPV*#h{|@}Jr| zR~Bg4TFllQ@vQQ{(&d^BF%{F6t`DlvEkG+wBF*-+hsW1OvJ^m)>{Y6-T{@x!=5)ph zrtj-TRo2xQaS!IL9*$4-TmLf^xyeahSc;WVic-=i?3@r zDyk)t+&X6PD9EQXzA-&-*}^CpKCUEEe_lSI-u=8aXWGw9NF56`+*#o;&nxmViMyL{ zuwmuS5U}|bO^V|b&eN^|uZtAp*DYdX*-k)ursLI=BvGB9q#ke1#-vXx>UcP_CNuA! zYk2C}o_IIC_V$&)a9|w)xFop_cMf5{+24YnvX;|E#>B!^q{~G)%aKI`-8i%1e&xpZ z?r7oq3*a2gk+}7W z=15wLK^9Lvm09s|>eF%&vopTHGbY;iL5<4A7JMi|Q=3A;k{hPZw`R=vOd1B*A%b+~ z9$+i?G+#JTqJ{d{YaZT|z^LjTgMoT64(LURI6=(aq`Tr3N{_1BE1f6o${XzBcSgds zZa5o?RppGqr^`!t8Vpl$Gm?|_oH?G$g<$S3wLL#N|2`2K0K%GLL;^(>v8qSOmxS)K z`2Y5$sO}>7mTtDx`4_i`s`|b)Itg=-T^$zvi#Yt~l`@xuyy%7;g9P3Mv72X1LaK-p z2`qe>(F)%lR)(30xB3NAxb0mN#<@;6KH)$wAdH;AofivD-+eSvxUmm6oY=igVVoyI zia3ew1UEg`_8dt7*=;+iS z8P|?T$wrShS{z=7B@k`g8*SmURJ6@LXND2ygT?Lpw7mktofQ>ROD$bdZwLYrM$>g% z7ij-lxj%0d5kEAFztsCny}#7^pQB#R?j#(QtN!qJlbHC2KGELZK=1#_B`*Eb)t=}E zU~{cqo&!BkPp?V{8ag?~zxLLznEWw3uDteZPW$!L>o)hFi2#5HTG0=w|806-PyW&6 z`rV-ZYj~jXTs`?OhyR*g{qI12uYi9I53~);pMv~V53d7VZ`%I`%D*~-_z9ao_C(iF zu5YFOM$x)D2Kb*S|0~Ep=R`^NQ;>f(r|S#sZ#DyNpo57C_^47iFH5=TQGX{|24#QYI+PQ;~NrV}9hyVix3>p|g g6t3_I@Fv!j4op+vz6 diff --git a/GPy/testing/baseline/coverage_annotation_interact.npz b/GPy/testing/baseline/coverage_annotation_interact.npz index 114cc334d882a2d093a4bb96cc8034bf65f53c91..2f974bcda5dbadc255d13cdf83a0a9f79919897b 100644 GIT binary patch literal 434 zcmWIWW@Zs#U|`??VnqgxXa6*VfUFZhECIxc6{*G12C;gXxrylzR=lHLUP0yTH{!3P z1x}s_I2N#W-lV8GF-!86F36jlws76z1@orGhXhTTAwEBT$|NqKa_=*meym;M=_+DN zn0`tfv*J27%Zh6&R|>Npo57C_^47iFH5=TQGX{|24#QYI+PQ;~NrV}9hyVix3>p|g g6t3_I@Fv!j4op+vz6 literal 27700 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 hUK&K`#%E6Dv}SqYYy9GIJBtA*^`E$p=Jj z&5l`d9h+svwUsM{S&z-&#|C-pUhbL=?#meiycwB9m~ogmd83%58nRh>c?FdL-mGju Ps~8x8&<#j;fH({QECnR_ diff --git a/GPy/testing/baseline/coverage_imshow_interact.npz b/GPy/testing/baseline/coverage_imshow_interact.npz index 28e5cdfa48a9455dff62a3d0682c4129ecc153ce..b9e01e6719220df055cf37d76f0b1a805cbbba57 100644 GIT binary patch literal 228 zcmWIWW@Zs#U|`??VnqgxXa6*VfUFZhECIxc6{*G12C;gXxrylzR=lHLUP0yTH{!3P z1x}s_I2N#W-lV8GF-!86F36jlws76z1@orGhXhTTAwEBT$|NqKa_=*meym;M=_+DN zn0`tfv*J27%Zh6&R|>Npo57C_^47iFH5=TQGX{7wGKnzbb_viiV9>w_qHwt@z?+o~ PB+m$hZa}&N#9;sc9}GTT literal 27726 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 G`u_l4IUyHoXTEJo<*#?oS-u{A@ymSEs+Tj% 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 literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gp_3d_inducing.npz b/GPy/testing/baseline/gp_3d_inducing.npz new file mode 100644 index 0000000000000000000000000000000000000000..26d5ec4f4961a11950d8a7d5cbe83e73dd57abcb GIT binary patch literal 3942 zcmWIWW@Zs#U|`??Vnv2VuSb z1+1MnDQZs4lDwr0@+PM(T(@|^ylL?vK~rXk&ySxniA$*5`;4X^YnOPsir5mSpHga8 zTxzqdxVCboFzX#-{djLrx&E#BW(GW^zjj@p$H*nK&in6)vk_bC|2wT-bBs0m+x^=c z|31FhZ~Zpgf3{pzp!WL*7Y;7UHQ6b-PR=^O@&J$7{|EnG`p15G*Sl3t z>{?n%abZO(EEpI9P`tFuM6cKt=#@qw)iN&cY z#W;N%H#ubmA>X!Hf&D7Npy!6>l>9euwt54dumFhF@i-+lB|R1By!;~L6r3(0CfwVQ z!kul;gJxSa_dNa)mI-pp0bp#a5#t`*0Yj8?*kJB?!lcJ0qmXcPm(S$6{cj3ShRX&% zsVRFS=l9b~^x?nb)%PDw34c_Zp;GbM(64g6?oAtZ{fFD)KQ+DZ|GHDZ;M8W>FI5+R zKDY9#6iyb{(Gx7kWcR?V{v+20J|H zv}F$aa8M2{q(^%KecA!U_|jNTW?pJ}W=cs0g+7I6zGQ#BXUZGHRez1`nd|E){@{Qkt6zw!P>XLgmP zuKUY(U&gcVRpxKB?1NlH=-~^oqRjNnyu_S%c-ci+$u$r~1#+e&%CGR;Nj1OHIdd-Q ze&G+xoQim2w>YyZ6<==1B-jLiSBmTOdw3Gi>*zb>r@lu3?LPs;_zH=VqQt!7wEUu6 ze2yX99s$;i#~hZdTpY04LGFRofxxmIJ?HN=GO{bE@H5K4LCXQi1sJ|CDlLxBDW@zU z;4QoOy080!U6MD@#qLk{h<#3F@!fcK6ZNh^AFfZjAjHx<2IhcGn`=pXXDIu*qbVHF#UQnKZ zfdqUSh)SPX>fGm)AC=msLk5U9R@fd)oFHr$TP$68aOn~fZ(sAm5q#%y?$fwCpK+32M{ z!rkxLal0E{2cR2=UU(ynE9by%9BNUHZYFa4g9=?3XkZlP#BC@J3veg literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gp_3d_mean.npz b/GPy/testing/baseline/gp_3d_mean.npz new file mode 100644 index 0000000000000000000000000000000000000000..6ced99de7f442095904395479f78f96ce961350d GIT binary patch literal 45273 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�Bvyp@f2{>0%xZHD5F0P_~U?o-~ghIip;OGK?{DCCH@Urfb{PP zvY89eS)eJGll`*s6*P0YI4zU7esGci`?8yi=VZ8&TQR@q1*H!KMv=9kPe9=?k4ypDoyuTDkt zW(@SMqpV|YoBsxOt>26MswPvmo`=rtVuGAPDSMa7(-`TcZv|>U!El#-)b;RSoFMFV zMEm&CLKBkuK}@XbN4*(_Y({hHUBDoqjwGQ+qZPi$kis!c#!LA_#R%;{*sbAqv5v!R zo(dvd_hwxpDRl~ht}J$9OWDzAjq9pq;|DvDI!tL!lLEGlxu}neFv?!t#6k|)O`cRQ zsJhgp?aJ#tV>iuHQ)pj8lW|z%ko=&o6s|SBhW)M@zh`Cp8zR)g$mwY*6!+CSe`I?s z`HH(H_i!co_=R|S6}3nNqpL$0f~2nIa$wGhrtvBTK3QwfBxyv{4_ls8XN*wiW@n}H z;=PH#_KpVEj11nAO#b55!fcdB(iAUM3 zy2*?ND0z)2@~8}jE|Y$qp;f3vg8uajM>Et)^9lCYO@bvcSELWal%^6j;?nd1ntt$I zmX3DjamahT5jsxz3F030R2s=LS7J-;{LRAS&8C*D(C!L#P0HWvIDG$utV9_k!i)*yJUMZP}UW45Zx zD1kgC#?4W#ulk+@*B8CFrD*Fc=*3yqQuX)Tb@7Jxw}Y+~g2K^!1xVtC^jO1k<9YaN z^TN8ZwLZpT*I1XU@v3KTJ1GcVd|-%ExtESEhe9k25xBUlu(ew7 z#;ez^=w=Nvgs{fDAzrak=OE;~nZQaaf6ZXB3j6TIlN`PHf_u+SU{FSX%=^c@|2NHh`_4Imuemn>rrZl%|NITP*Ynen6&R_BlXK!9 z<{Z@Ip!;!OL$9+}V7^j1YTy6$rd=qj?<+9jA^cXLXy~YAdwSw!uhR+`SLViuQgl&` zvVq{cv{1c<1HSbo6%vM=g7L75xq^*XMUWbUsj(=Vskq(0ue>NuM*) zw0zURizLWW!EW<~t^Q%|@wt$SS(jO7KN+!g0gS%Ee%)-2rMz2ehd#m9VmSb118$q{ zBZI{ua(YpYL0dl&hF_$H#Pi*Xmdti0hA^}Jp*%3|0|`V?FQP@r|pKr zb1ClQCH&B-IP-+5)7g^97bzIF4!o{mTvCZU_wJiLs8o-y}fJ>I(%nlfXv{8GwPn0`mibU zEx|nDjgd@H)}u|9=BJ=|jHF_Ag2m~#bgx40&pYxz5ROs^l#}+(i#C#sY++Lkp`;ai z(PCOzok~VQNvLc#nwrCI*%*E(59CO^o;n}3+jr|#+*XsS_7nL4^!3i+siE_T(}S_}EJYJmE7DVC z?k*H1NdW*h{}nfmJPar8XP?vVyb2bvUAMDUnJc!oWiQLL@ME5m84@E|BS12axt7eC zK;SXm&Z*R^U6R9O+QUeM;1JCPBF($9k8Ks8A!5JZ{N!@f$iphr+vD|wQwgdu%U@P> zUDdUXWQEhvVn1q(>pBjjc7(#~h4^DyJDDzU|wR(PJTXXfg~S9AqCWXvg3Dpchsj?p|c z{4hw>eZzl8ZeslK;6&g*YT>g3Kh!V(Jn;X5gU=59P)2_Y{Kvq53=G?B8+7aUe?A8X zKQ0E(!JLD?QaWy7IpHqoY+EN|j@7_qIEv0Lj#r2d!9agV_ef8nqFxAjjAr`sQfeCFiY{M$aKhOmpIKGxUGuVwQeBF<{N{&;&xBeu9>ZnxIA~=-|*$95tiXgC=ecjNXV@2tW%P5#46I~nwiL~Df6Cm zF=>2uq6^77hst%7I9a9_#;?DQtO6DJn-$<7k{Bvg5A18xT14IUQO*mfvT1y>38DqjT6QB6g8EI5a6#g>*DT}_L&^#9g`6Vxv##2=(1;b0FD2aZ zL)yD_SI=!f__Njyoo~LH|tcQuSf6RcSzMx4K zXQYXYacGB&_L$YYBZ1tNZ`L{~LGUa#t_MMe6RvflFhorjWv(}iIA`ruRY+$!rNLsH z31;YChS2$oi&jA8!mHORr?fF6?>x9Uy4iUDwyh!iI7@T3*B9Ma&y8MOrO#yd2XtMU z2wUv4?ohftf(O>t-HJoN3eAL8er(r0g zKOX+$;XfXRdEE>8iqn5S6N3f@abVBHUnw1Tu@NoCIXo{ps?HV<{luP`fu7Zb*MgAR z4cEk3qoOypMJX-y%nKgbk;*a#K1MamZQ4Pe**Mf)z=vjj@5g-S6<>5`FDXWg+Wa*Z zhQx>g(fse-CW&dXwr2li>C-$b@UE^0A5$NmJ4!HBeD_YCR1|sZRqxVrAQ$OonmfxH ziCgRavHcVe_-=BA^9yg(n-8Z#dX@&>+ZPdtHA;GZnn{l9v$qsxSfra9)KxQ6Vk-&r z>dICuj31@4TV5c$GB7vK*cOMSBCtb-t0Gmy>G7gx!sL;9*u)A#5w=@x6E20j6)WeL z$zI72)CgVva0x1GOCd#uR^3iMF>w2+k%cxf05ZZ9rE#u*)!AP}LOY6;H+;(H@-6LE zl9y3Ab>~oDKIZPOg#)DA&+Krgn8GO`?wMEZ%DnPX;Z<0b#Jy%#_7`{|Yd3CPr!_BK z6vb6SELKc>^s?_}R2(*24LSQQ&%Iq{{Pg--h|c+^iIyK1ierR6r+*+}D3`udftq4$ zD71OwW8A1>Fu&i&=ZxGRw$h$?d|2+h8sD+c?d+W7{PYGj!6?YWFdBX1McbM&GdX(q z>iaZ@mk);cg^|oFU*MOTtuJYjs(uhy-b1?R-1}Hbf>^F9I-7HzN!(|6Nwll6T1Iy_ zeFw9=%ttPVrSa}~=0`T=_2-yR{g!wY?*n6VYo0gL8ao9c*P(=h-Xc&|A=@yTSoTkt zS6X;-z#`?Y3EoJ*cgdin?F_;kBvTF zmcOy0OGxe}p1K7_(-AIN0%hjV2_R&T5wmr7yqt3<#OS!$?z&&G_0cNjqDC3yyh=** zqDIDIIn3 z|9Tbd=zB=iWoQ&e!a&M`HF-&sdt6RM6-mPNm%RjhmwV+z5A_0~)ecpJ_l4iJtApzh z){VUUM2bvew4G$;KC6S94TRcNMtcm_1}HyZ;Z}ZdcA9e!l89*o5%h(cj5?NnI2hVT z^puUo8QL*l1#;)xr#lU5RDxP~w8625kYI)Yn{cP8N@6sH&;*FlGM6F>Hf25yC&Suu z>hLzW;xb46NabQf^^FYh(2j3Apu~uMSP+~YSK{|n zA#w-T^zGbz3wbRd$7Y%SLhpMBg%l_n#YE9)e4nLgZ)~vZ-TS4x_gr zMS^6@#STVqOSS6t!BidE$W9vI+#E~m0b(jpF9>T#F`_v(c_>!fr_46ZFt}pj{pQQj zQ7ll+LK8~yeFeRaqB+eCj&^J?hsg+@X06PSK?&WEKm%w%2T@6}2B7KTV#JmFoF9Bz2*i` zT7)YVfClN1!-K0?7Tj|K9bC)!TZN9^5bm8_!U)$5G;q|X90nyrm6}~Oy;rq(4qIPN zzI1=o0B6tYLR;HEPh!8&{?ATgP)2{6|DWdnzis|U7d6g~|Ik_qzajpgv8wTE>1Nm@ z%yXh&DIGPyUpo-t&UvL%ci-*365eNKNl9flNW4cuC+Bsov|MDQ)I7c{(ZDi;k2=AQ zCTGW)ZS{I>^Ps= zO#Zn4jEj*4`BiZBtVK{4215yXE0B}byH>;4nt+2msC0o^nSb;yLALQ5g*S&8Iy}a7=DC<`5&J#sqCy&2|1_!uRz4HBsOW|mx5CA!n|F!tsLf%U5iTeP~igR?1j9T?Z@mn-(em^XP^c?L0|vqun{zh zf)o>U0mnhd+}ksT2**e<(sULlQByyhUo+1{@h)K|KS>5fpjI$1E3Nw^sHu>(oti;8 z!pt*R|DKV91HL8`y}$vKBI zjJGYlsiO#kZoSS|_%dAtAE;r3lx$``ztbq%&6)gUMSPh1odoZ6@KCY#8}$b&Y*~4d zYKQud%EKi+U6>{XEi;jMb|@`xlbb(m4|-MUAZ?09wIr5Au9`RbAjVh1jgl~;w}FB# zeTZc~=w1T|!8lJS7@4s0o@_y$-XL+Y3T?MAvg)_8%r|q4(MNG%g2_V zQl(mON7yEj#UX?5oo7bl+-AGx_hOqa-gy3m)t( z?Cx-JkE!^xGy9cBYM9v6tTK{#(1>D7@IJxRU&Qv|_71#n;4Q>6n-?=ayt*c^P26Q(ubLw?kTdD32owoYqc(z%X61;Sa=h2IeaEW+6ec>#J z#}dr#xt^qcXv_(6^o$9_Giu#~?_*Mvwc%$S?Yj?h&vp4z5h&G=n$jpgp^=KMo=ja% zcG5?|9OYg(UwK|bBg^F4oILt<+EjX$a`$cE|Zp%zcV?{KALgCMvg*OgCJBX)GfS%oX{%YU< zc=kQ&-m|w5f2H)tynoF5f8D$=%DqVacG>ME0rCMI{%$#y-33rB_D;nF1#`OtWme9ZyDp(t=oTwbl zb<*ye^OGCw{`*T}v4>o-K<z(q;@JeWF&Ffdh< zv}s1YX`CR?{K4(;1!O(J5Y75Q13N_o07+=P=0444*t&;AOP6S3tQ16Ms|KSDO|mu> zUu@Dr;)>p|EP~NsSJ^{ZqQyb0^BTBtj7lTR11}K@BIpwzMKD~Q+gzvjQuYTeydh?9 zJI4}HUN=XLem9oskf2k;y}kcRx9IJgmU0{oYV<&?Y(OXbli0Vk+ujP~8s%8?BcC{h z?Dac~lU*vp`jL6gd&qIfJSU8}Al7&3)dc3F;e|)(HK5Bp?gr@u^CG>%#+q!XZ1OhS zh}T`-hl$0^VoqW|9sHaxhS1nThdgLBIL{Jr(>~q}{<#;Ze}k61$m5E1I@yyrM&WM8 zx3?_KoJuXZTP}h2&4$H`;cbb1Kocc5C*>C+5(Vb+T};p|2jm3qexVP)h*Oc@8BeFx>$iWv6$3quEXUl<5$T051PiDj1m!oSE)v+Vg#4RoF5db zi@)OM-EhOO3BH}GKqG|rG=5A)7wMVvWeXgn;6PXT%hvQ_?x=(f0g*ic_~RLQ^_Ceg z_MUlITmX7*PEpW#+NIN~ak`>BkKGwn3yqtLdotJ!rgt|+{{}q7g%-OtCrFr?t$Qb*($ObkN`K2b>IkB9$w`2VnnVaUY4rx?l^CayC<7x;xte6ku! zbf6yX8@O|xz`jQ5lmtaBYyQG(`X~anN=6MOH%agd{Ce*&3(dTx^nExebE6DYBRLph zEYis$aJN@oM|eMNfm*{FkBNw?Yup*M?+^=EYb8P+#kuCJ3K#HbrW0e}#`^vDIKivY z^8z+0T^Ob1!peq2=+rc>kbVXYf34g(Cj>GOtAjJgd%CFf$Ue5GC~1ejB>FY(>Y0x`+eCVY}7`IVLX5KAgbFLlz@*lQY_FP_Fr*yBHw=ti~X z`0xUkWN(OH^H%DdF@Mz6X&xLiOOW6BL5=Zp`Gyal@yixh4*0w`>bqBEn643*T2|g1 zPjs&#ZXB5|#(WCG5Qz%e9iPnzS(j;vfAjFl)-~h;Kh!t666%FOh#15 zE&?hFB5vGz(uZ9Q>=~bk#J5M6Lj-Uyq zqTq*zp|7qM$Yp=J#1Vxj!G;uZBRDtLGPv=1_Y<^(&ZxIkTJt67*dju0B!kiYPYH}^ z+#nnj+pZjr=7;i!3p0qjwxHdaw7E^mzRoy<~U+^2O{@@5=1w zaiv?&b!mW7vO}+D1p>T2op+xBLLet!+$*df7rt? zWa9ryL7L0+MQGEokBR@iB8?Mmw;7&Go~e}0BlKWg8%n>CBy*n}n;T6A9_)#bTy=v; zt2Uu8dCP_ahT*0kHVy*Yg%&Mi@4S0G!frh}+5Cu%+@8mK%LD-0-?EN@o|lusbjJ*I@f{X7kd}`;>RS0;f&d#OPU;6373i8F?drr*NuoS zDQDS}sh@u)uOC^SHVofMQin7s$@Q^;*9I8GToX{>A2j-$HK}8Kn7hW%MSIn&j+d7d zuPy63Ax1Axlu0Q$5!uBr)r8KupH|&^`@4#Cji{eQp-3~i-5c2c!1~Mr5#w;@Y?~SXG%X zk(RA)+W826E^`E+yei5ES<9heCAWZc=rf-UuwkZ;WH$EGZJ4}H(1AgS6F1h!fYTNv zsajd@slwmR@9BUVDvdx}wW^(7@8S&~ZbHkSn0M>at*5@;Y;r1Qx>400rVvGD4=jt@%u$Y=Ju4{j6xfscz`e;B~ z&*C+5NTp(BpyWl=2=`VL21?c4ocqhyWG-|M8cm5P-4nkvs>i;DMJr=O9BEWtZAG?@ z-2g;DZuBwKdQ5$Hi9z<+jzPRa0a2gZ9XG)X`p*8wocrK$!hbX={oklcbJW5xhx0EzFV zQwLS7!QIZ4q#c#1d^78zP2DR@A=z9MxBE4LOZ2sO$Wp>Vp=>M!YncmqIQPKaBf;D) zmG8CMDusN4R`TsZIdawpMG(5)0V;>LDZ?y!9nn*t82c+zK1aVq+%W|2a%T^kQby~< zW^@)4JGMis@8=UyM{7S*1wz`Ai&}&?R{)Jp@*#Qlt`K)>x%fN5yP)v*{O!({6?K6w z-5wpwJBkh`w+};Vxl(tRgmH#LO`V^~Pt!IygVfgIa%P2=4@)}^KRVj_RphqLlx>%V z3>~hab+YeR_(6&*jMK~>?#qFzYm#=)vYgz74()M91wuyl(#Fp*5SyLD8 z>@VY3*$q2_+bT-IZ{S0R#@l~FN45&l}=dKzw-FKMW_5&yuQy0yt ze3lF9*71W#Dh+BZg<}tU*_Q+>T14mpm*%^Lb{ugATk`4;rA%V<0ifkB@9l1!p~zUp z_uk{y2^G!#(rTV)*aO8y!vzW@)Hrv$7?jc<1N>|M{2v4S0|UU21Ab4zpfhs7c|#q$Zv~=Z$N?uS2K}BKK$ChSMj~`+ zCH%0}a&M5)0f66a)z5$!xtz0K+}&yxUI?&HnHh@iR#+)30f=!I>eM@T?!=0~r=mF+jbxn$Im)y7&6vlQ%e$bv$W=Dn>Py ze6pF@#Gu0&rD=h%V=Pj4JaBhkb3QZ#GWLqMzt~Qsh}(L4tjHuC3(P$};ApuGA_qlv zY+T>i@mj{=2C=+Vu!?|a6?3o58Eh=i8OttXD09~;&o0;Oyk%%v=5}P=4Ib1lf{28V zJIN|b4Y$ab#>{iG_bX36Ep6!8u>vU}ukte8L|KmH%VH*2&M6+JVP4vs@!DKgsqjY{ zdh=Q@r-m!zvu39vSVV}Blp7s&nA^#0H?Ww}Vi{UH(|G_`Vh9+Vd<&pw&>rN_b^IJ{ zJWzg^l#vk?*)HrrM%GOj;j9GC!89!jBZxBY*!i+o_`V7Wd}EF)L+(0roAOxJaufPO z6S#QTj4rG)Tz%YZo5WXYya$qs<~YQbX!fq6T4`x$Au@H1+k9p{Q7}&czvnK+es@-?QC#XK=2RepR-?E#Z-Q{$H9x(lo~=c81kA$(jkaYw7NOw9 zO1tdtO}3p?h_(~Rd0oW-;=BZ&uIAz6biy#ECZm?s6Qb}MUrFvIPPS24dmR$=rl?XC z&@?u+?~MWqkvUv13-QQ$-s?Y(-~LRoU~kaQF>9DWc$s+_c*qL%g;mkESnR5F% z<3SEk_aKIx+6F+NAOPuLi0jd$Oc#wAV~uE8kYivDv;AD3kR#|ORTA09C;LldL1N1b z52bduv!w_TN<-9$h#dFO>2^d*j^~{~E=`L|HsHa)Z)d4FL}wh)j%J z&KE9F?Lide0I<9RjNSn(0uKAIOKGiQC_9x}3Y85f+mQ)AvELwS4}Rn)Mej!yetsoN zccGhe+Vn|NTPyV(2cGYjwhkss_{`AkmUUC@YL6wuqFA^K)ZNG|h)rFtJBjk1MdytA zC@TFSx!mo~Hz&(kxmTZqCoA)%&A9SXsg~N}5oe+}otE*~RsG}dck{i!sQj!U80x9_e0?N787 z<*<&YY^AEal~Q~)$<_p#R z5V3$}hiZQY8H;pWM~AtPw~bk%0e4x0lbRTou*Msl2LMG@b2AuZv8=lvn#e@C%r?A( z#G)LhX1d3TVx48i_A@r7b!Mx9K5MacONQ$^9UDn063zI^vX?{!8#(e$M_wl79wBplofd)Z=rrCL z9DzoGFZ%sZqW${KUxaktH)vBTB_>`g`Y$iAI znZKyx)NXNoyewTFI#}SsKG2v!R+IP?iK?}VDg8#W3wY@Im*|gOcW-M2)JowdBh!Bl zt{}72U>cNOjid>gKTzm`hxgcpG#jOC4tVSipgRfCr-o{F0a}yF{K8*S+`hHHa5JaQZ7{K z9n(fKkGS{TIUX=iw&&}dcxa1eOISkFq6B(fU7;9wYx>>e%vmPA)=C>&xj}`i1edSI zf12U3oGvhlcVMFwjx+ug{S+lOjY8R%pRuM~+2h%&3%0HKs_U&-bKK8s=m45~heC-YS-=SnJ*a?CrrJF&r8cKp}+%R2h=a>CayKzM*3xwkMN zkAR(ka>R195gP}29`U#Q9E$pWG@HBp9P^gO=14Y1&-~?-|_rz+3uS`F?<;;D-C*;*R2BYnvIdq~p>s#}l^9$%#U(jbR zKo`C=1h9nQ;h){Qcc<7q{?3K_oR9Z8--V0c3<)DF4!c6_2P~I}VmXiVD&pW;9!*1+*bWFB+N~kj&>k{r@{%@6k`hd|aJ0jco40s0{(;1maxpTe0Q8{g zCE+~Up2tCa>^#lhtAlCI38#t5Mw*S6jznvX+@Ih+UHEkI6XHgIrApLV&kE9jLHfZx zn=yFIbb0es@>jK;z6Lc#+4vV6c)*M0t`b+9>1grAZo+Z;E-k$0GMu+h(pH$LJCBu* zh_aJPKPk5x!6AsY6o;_<~#M(=DNp`9-dmee-wQLh%T*kM+ZB#WlqdFSd z6mM&}ss9S%cBWpQjeyFF%d?S?lu(hRr3h-HS=G585f4KP!wDk{Bcp4Vi1)BcRGp>C zT^C;VUz_88ytRDO!(6a(Q1j!Z89Cw4Yl-jT*EC*7hTO%K$+8*N)oVR()9L28ZcCch zGw+)!MCV$~-h@Ja`R?9T{ewF}Nahw|Ps!g>J^^u9I$ClWJf`VE+kWUIVbVhgc>wrG zvxR2&$T>h~2G@@NfDVn8kd}s)`?Ir63;;bqMc|@`i3OjOh<t`1sfs5jS8lqW^ z)NXvnc9G4+$*vj}4Zwxoi?6TP;0F5d0!ZmUnOiAw2sMF-z*x~X(m@@5(&64?QeB^! z#)hin0&_`(cQQ>AUo+5WljY#=Kb*pJtg*Q3N^As&#E!j(4A0^`>a2YaD42cQV$VLoI@yUYA4Rv5K$I6mH`N;83n_@&yT)b9im^0?Rg3CH_!ao%l|z1UWa z2?Q07YAP%B$IrwNsLR=TgCv3e#F0KPoUYv@P9D^j&mQD+FFt%5oJ|m2LQ~R|lOHVl zI5Eq-1<$iFZ)l@JL`U~S{S!f_VIQukkT1(DwfIV!0kugEU-pY`aDOD+LV@sccdBgR zLK+;Zz*SBGDl<2BACCn9S}(LBwxYD6&1iU}N5WIZz%la;tt*H!OrUv~?6jL`R3Yrb zk1s3`0#vSyTQa4f@-@()*XaXMpA&lzt>OzILXru6N}IiImGmWj4(z^_#Iz9J+`rA| zWsjWGr;0{Q>>li#ws3B@+T~pJ2kpp?29Akq+`_dRkJl>+Jv4woK|f4mWThj}O-gK69C>{14q$489!~PiiHl};$~V+*1kEo~2y zC8)NUZZCCA%o9JDa@Xuxw5+mwO*3<4myaMoYzAxhQA~hIIn8ZBDs-_mve3}bp)kKI zueX(Nl_z>Vjxu2>^Ho3#d=`p3zArML#ICjc{7nn(x=@+wo+j7xXNi*p12QfoUV6fL>oZb-wy!-v1@+@PIBlXk9f zvUX&x?~`lIB=oq@vR$6nJ8KeXnic{N>(Gh3O9VHhiYy{|G#LhYg9d0wy9E*s6;)S@ z(@p-4LuLf!fEl>m2g>cnF*dukbINyZRi#4jcV4tWh#Eojv3cOnm+b!5oZ@8^4yQRa z5Nk@BNhkqBKA!uF_LsJIA>q)`*a*(f++Ih=)k!JQ*&qE60m>iZA0O|d5@xT;Ku6eN z&$qRn#ND=zY(%(C7S_y@q!5a7cfGZu$NgVUPX_XYudc+jPX9{|s4r}WAFP>OX}fuR+Qe*g^O zyb}2}O8&dXK}aw%h8AS}0Wex4;ng2Y!GH`SFtkY44}e1pGw=QwxCd5XX!(*K00WDQ zu6%11Ul(t`eO%zIP+(;I_08-bAa8}yvVNm{92w&>tjIt1o;V=^;*XIFVMhM3`H)u@ z zA575h&Dm=FIDZ^n6*-v062%D#qPM9}No#|3Wt zCzvMM+7?=tKLk9vspmT&0R425|5IlKYKQNe+)nl$2nrw--!`XxU6cLxae=#b4Hn>| z8+A@%A0>V78!+^%3!Dok4A}qLmUI&LDCe(blD>VQoUvfQg_ZL0YzM$O3mO_6PS^Pb z2NLKMov*_J3@hmqI^To=`&6Beaz3FmE)2M^Qa+(Gw3B_B>HeoZLqp~1Iv+iT`b2vs zfCU&<(#LgvehUWdQ*}Pd`MAzlw_(8j8Re62mVLL12Q)7ITxV$FI9=zHXB~eBzD^7a zFs!7H>->-m2JBOHKFayH&V8`p{*3a`lMRozXE^9Tf37n$jh?Ra$#X5g>-+{LU|2~X z*O?6}&zYo8)%hsr<2tv%g8MVdr?+PlnzJZFI~AwveDXxU?>e8Sg#{Q^(#LhCXMh3w zRGp7rqRmaz1+C%klW^$pQ;7tfY_YT*?juHcXt4>ny|p z11_wTkL&Ejbr$s3gEUU%e6*bZahEk-{@xp)&6X)YP_rikvGs;K1qQ`Yc ze0&z=uVvCt<$SW@`uDgI0TVE+q>t--2|Bp=d3-)vZTn>Z`6%b(I!C~Q`!mX?$7e+0 zvnWF+1WwoaWM$(cI>Q7EE9v7pH$aETKi3&b`qZ{@l=E?&<-}pYg_ZL0LAJ-!v!K7u zkDM;_(JFY*l=`oa3)~Ipyv)zV_zM|U+Q)795IX;LHu$MhA7yx6ELi#k86#key-s`F82|c1>dr6Edu{k82%c2@CkC zS|4S7Tx&Y$8uA&50ICP9q>pPIYjY;{PX~!7-{ShNHG?fo$gt8ru643KEa0bVeU$Za ztyvvl0sa~3lW$mjS0vr(bnJhz8!JGn#SJ6M|Ecd)z&U#=bB4O4C)33004jk7a~A86OE-H_>&vB z+y@s8TOCU!Iu#l%Gh<^NEh_^v(?5Px(=fF%&@eX8u+-7Eq%k$Oi(186#=X_@S*l4Y zD>hg$S~=M?C0;c|`$Kk8d~BH7GwIL>tT?sMV0bheu{H_`Xm2b%lH19UM>uadB01oT z;4uI+LIA11pqQ<$7Kwoo;=zUN2PnE4S~_4nvlkbGn1<*kTn++H_6LeK6b($}q&xR_ zI0Y(@gpa`(Z!f_yHZaw(G0?Ws|4(uL)CGp_Py^*V82s17y0s8s5-0%R-Vd}f)77=q zvHH(Q$Y40&h5mq+!P+0+s`xQ7y_5k{Tl!uRhqGu`WTAg%eheg9EJ4w`E0*O9$11iEJ^ncJS7 zG@v&tCAJj{D`$3bla6ov-Yd7lZ`6F-Ki<`-)W9^_KoLYX@W`qBB_yE^* z!b@1~P&Z%gRVFCkEVC&T7&o=eAWYTYJHqv*RrphPX?Jh-2?cE@A=T|R#-^@|P)wWX&jqlZYp-h1&m1JbHEY&9G z>2KWF%9i`!*;+Gvi&Vz&6`Y!Tt{(YL9QUgVVZo)r*UQv!K;-C7k&y9HoNV4jkp>>n zj?2`%(i8TIXKh>P(V)4!CdIr!GxJl=LFZ43*mq|kEnyqO zZ2cW4$pf3@*9{mt^A~{c&JX^lR?xODgO~EUOO}6Ua$EM7oCaiBTf#7mcZ2AWCJ7UwDKSR^Epw0CCRiJ}?enT8g zfer}(P=Vk7ZZPwW#9RX$t-p?Qz^iwyu=bm{&pm9@?bD+8^6fW-{iDReI3z-(58GAxMflZq8=7|B%-kKaFAM@hA=F}FK`QwIi8OwC`!U1Mq;Z>U$WjiYmU!V@LJnZyQ8Jv+e>>%Dz zYfMuct8g?aJ^Zl5D}KBG_J*0g#lr<(?_rBE$wwF_XwAOEE|vk|wrg!BvW`)2<+GJn zjNdT;4r~wEvhl4Nu`(FF$UUs6 zbH`y`At9I__`1Mn0KHZRTFiA44=z2JH?xHG^s0!_*EU&wU|p)DB^{hMxc@TcaMI|_ zu-v=qYGZsN)85rAlUScpiGWuI^z)iK-6-fn^f298w6C&QY!;=W>j12dAdGp(lxQCUvc|gn8xOb{7d&p z@)i5B*6f;C+p&(kp~~^pWP;VQPaAf#UN%9$^<4EH43#^1UZE$Ks}pxCPvzwXzHn=6 zVHDz>!Ft1>QhR-%Q+KLnQWDZgrQG8zM++u)|iXqWK`9? zeq8X*~gS8{!i9~j&aO|#`5XS6XmKaIEaG#=ly zUt7v`gK^Eva-yOFX4VL$LyTaIj6`yz$;l_@C{fvDhmrBbCycj`#(0SL{!0~qYsF`$ zWu7Ix-8`C7h34&U&BH5@G_*)O@2Mx^)F-T54)3j@w-OX0__p*QZ>g+m+mOiYmn3C5 zwCn+gQ~P?H{CPyfPvviMIPF(V6v@Y!<>l^7^b~q#*A!&5G00YQ?3U#{MlLCG0jA^} z47{Y+2HIyKs8}sU?w8fSx)V|_w!NcS5$%=BmV;lBqNW}flS|%R5fBA zAB}u~vF6CjXXW19sjMn>t8n&m!URZHdM$m&#w#mhoNLlXffFcN>&>?FXpJAJyrQJl zVdMZR9JUG^(>Zcf%y~uCG*INpLR+~W8brLoiHtopXQ4Fm!dN-3y-K=>``#B$?PAfd zsy4QzvSW%a`V$?#Idg6f!}CIzPZDD%2G-3Oj|B`BQ>_m-1&-$R3JN>h8LJk`7lN!6 z45KXMv-OP3A~(k(Mi~Q&B*SU2O|53V_Ny>&x<{?Ibe|2*YM7-(qzyCs%P-FtaL8Aj z#v|j`*Y9X^6WEoEGw`Z84Euhb*LxLfARHO3A2=r;UuC8x(cY;QYoul*)7Vyj>aqXT z#~%|PSk=q29lhCDutN2GBD|(D&g4L`LQkP*ML&~uxVTj}O#2y4?>dj;^LUri!6J=S zAIUd@!%1=YdrBN?t8wP{(mI5@4R?j4WUQ?rDM$(@eDX1J+Rt{80%-1@;dUpD>JEC#2 z+nmOa<@UwgOK<*Eys}emds=Bb*<(nJrRWsAcc))7?MN=q#eLmRi(0fu zZw_T-luWU5wkx?@uf0{9+ZoaCh2O2_J+F-8uEPRr{&$CS5E|162c5E%w3un8AT0}R z^Rkb^wPNna9@7K(NLZhMF5PFEQfa;P^2T93_Hy|H^3MbG7p9+LPe;}a;l&+M+n+7L zJjHjH1bRhvzRYJGrZ8QblV)1<8mul^sO$4XEUYNR!wqB?S~X@VlKqM_4M9o-eYT`o z;^1RV+Dq3<@UBqPF+FNfZ{#>tf~wJ(cf+=lNf3{1ZZeGX9i@J!HRqnwnDexhXX|Yq zUN0=A(drstr7b(dz-?z#;kkML#oj&<2g?^4d%5h>Yp|{B%G_lBYBCnG?@Fc{EHldO z2eFOF&!j*bN~zwRoJ!;ijXpUg`dFq)cdKQ}lqR0bVHSP$0b<8sQ#psOJJ;D}vVnFF zG-yy7&59*f33N0PPfc5VJ5jhA=R&Ze4R2GkSS#T$%&mhMHsyB?piXum&Q1X!Cjbci zuL}SK0_337uE1^{Lsp&v)CgU32x|whCRb24&j7X{KxGYJ+y$^9>3Tq03&fo~McF)s z*gS>WJcZsoh21>8xp|7Pd5W|N{{JJu<`Kl^5#;6()aKER%_Hc|Bbd!2*v%uj&7+%} zNAR0R2%ATUn@32SN64E;DCSOpQs)nQ@yCh%?#n2(dp9SKQ^2316j3r<00Y9VD{0_Q zIfmRH&LEZJAhIXGpQxB^jJf#|M4ELR||E0E9?c+V9`?h2%G z1=6|#8C`*_u0T##Ag?P>z!fO$3KVk%O1c7NT!HegKqXh8nk!Jt6{uHK-Kz#Q>H@C% zOu0((l(Y7oEhWNXG!ZQUp$|2r=7q}IzEn(4CRH0 zmV}5_gNQauKNUU-UkkOU90D5h!yi}DsLonz0=+FBl zK=w4r5qt6kd(shS@g`!4&0b&jaSO5Wd z2?2*kZp*xjN07ChgaBvoQBrW%NG%|7PaLl71c3Hyz8m44A9qsz%((NvJ?y0Z8K~<~ z=k=)bdenJ6>bxFxUXMDjN1fNB&g)U<|MsYpMMTN+5qMzd3N9DTEPTr={^xTqF#npf z{chmP;EIVY@=t^x<)MGmv66hLYQ?{eD7>p7rL8&?SB58`N)_T>-tSm8`In zz`;d5@jT+?B7zZrw}_V#!iNR2{Jev)lw;iDW zw(#qBGtzi)9BBJ^)9xdxgV%t*>#Y5LZQ6Op%U#ts#{W9vouc`rUy$)iOiQMigRfSk z%lbtD`aI)L$aod5tB%Z zDvS%wyUp$B@of1EPwMlGKOy54IG0Ni3%k{qe?i8purAqza&stgDrY7ajdjj5{)CKI z;9V|7G_+;@S1RHsLd=zz7oQS`>h-vTme>ny^m)dgknt+q%Vmf*YI4WF&>OG9zR>*h z#-R&C%z4J2knsxq%cY3HVWcm9LB=aFFj(Fbl>&3ws~1J;^Nc?s<5f7A%Mf=p27l$+ zcoi0g#y=Bgf-T3f@FE${Gya5(SKwhTMTDvl`IT$qRhSqW(j67p#QoFpi$ctK#-EV! z3S7*khz>6)C4c^;X1EF$lZ_rwz1gl^Q+SaVJkNN!jNcf4w~M(H5t{;zR^gx1SC>a> zhO2Nf*|fl7!zX1RJ6@pq&d6oIAmdf|nC!QQ*x5OXal;qQ9h_(U2^p`z$6Si|*sNCN z7i7E=AM?-K#0M`5GUpk8LdL7`F_$6ku|rb-f{a(;W3qMFl~e*&Pirm;GUpk8LdGlb zF_$7PziplV1sSiz$NY1Lf>rEV@a7eiac&Ub&1Icu{0SMa!pB^ONN-ep{}*Ju3Lit0 zew4#f#eO_-k*hw>_!BZ-fseTqk?2AB=r7246+R~W#>xkzR(YPhiz4-T#-EV!3Vh6^ zh-{=#`xQP%w>q(i5<1SAmdf|81RaYyW@TEdl%-v&olmnj8|Y|E=4p$);9PB8Lz^{ zWXt0wYKw|j4_WV{L&L-Wrqm4+`GexGOj2^p`z#axP5 z-&5l93o>4Xi=n|x(L&ECIVrg)QlDr12^p`z#axQ`feBUM7i7E=7X!7x*ptkfU3`&@ z=NW%O#;b5KmmzWp9a{Z@j91}evg7X|0Z%$X7p_u1&-fEEUV)3b6w%aFaPAjmyb>4V zL!lS$&F*~RwedXTPsn%`F6J`C+faJHFsa3OB`$_GfVtn>!?EC^llna4Psn%`F6J^s zD$%K-U+9fj;$j4hc{Q^Tc`jTbdY03%HoTd z4-5cM3ocma*4cf#LFym-so8$p!7%3Y(Y;^*dB78dPGHFaRr{20 zRT3uwmK*T>`U=)Ox+tq`O4LzQ*UM*1XLSkT{LlH?CZ*JBKxND;{1Fqp1lD1g(+8bK zYZE1s!b-w>k;|Ylo4D~d1-fdfJdSbm2WvKza_nQzCnotDza*cD`3*@l#%9*=T6~Cl zg&7e}-aeM5KD6G+%c~)sI}%RNVxRdmSE!ppu`VDLvqbF-W{A8&Sx( zq=!@si*#X(w1C8yy0cuqo>XHTCfjMD;qf4fbulFl8Of>@Kzq;ID`LzAc|JuRH7^OJ zdSS%k?O@OgOpYP%x7bB3F`2~Z^i|kP)0;4msT5W8DN&DVpE1qv39a6YfV_j!l8Qb`Ink^{_%eTZCR!Y-UYZtw zo~UKE%Ai|vt}w@}t2Xb`3d;Pfo+n~F~<35BaQH2ALc`)wXW?>p2_ zMBb^6QwrV7AfCzlh}k_uwNRq)= z{-Siy6mpI?zeLm;S9puTu-I)}Ytgtju|Qz*em<_jc2@u%A4doKc%cGMqO51$f~m6r z%b1wXNNhWT;{irsbmA+UG3^ql`!IJTYj5=H#%8;(475 z_J=P6& zr4kSCp{8S_t4x;qH>2fL!G5Z!#7RluaaDP@Y-P&;VB>O{K=E^*tOlXPo-F6YOXDr@ zQ{qF$P$+ZmkvFJ6&jNkW*=N0bAao2z<%fbiNWk^kix9#eO0}GQK!{I7VLNuYi$3rP z^+X>Q9dhg#?s)MsI|R*A2=>%n*0{ILMAbE7So^>~|is1QU-Szrf8B^%&dE$=Qb%j-V)ms_Y=(qRjY^ zq68n7o|fh(>!Nx=FC)K{LKMNW_oTw7hDWcoSB zDqLJd-gtU8lL<0<#zgY|fU!*JlTQ*iKHFOfk8R(EfH{c-F(yI~ z(Gri}f!i;bDhhuT@pJApd5X)zjUWv_%qoNA2t?eX{pJGOIr+f=r)W!XOz4B47fPZ*a>*oQ6k?RgPN;o@O~>{l;V@b^ zhtQfh8U}Sv56=)LR!S^m7d%%yci8B4SyJc8yj{YkBEbJ-Q z!ir5}XJd2AKxg|Y$WZ_*r*+-vY;K1JYiwZGpWD#z3xh*wsE%pN3GYT6A-k66>WZBO z1)p11;yc9qMym*z_VqquaODRZy}Az}DzYlSL}E3QI#us+_6yur!#Dd}Q&}p3#>e2=Ca@I)uamXZLXH4o5cP2YO^ymq6tNNRAbJMZd~PN-5e3`J+2np z@^O`;Xn*+9e)P>8H+bxv3f_}L9UFFK#gmQMX||ga!-j*ztj}O#iD_sVK9E#ex_{)b ztj198GpRV+A)hjQPq?oYmB>QkAy-_Grk!v5pz4iC@hDo1;4%w; z`AE)+e898jLz&ae(#_&|X|45mN2y6Qo%Ba9rql=w6zuLSxD}ohF1u1-(QMp#YLXd@ zkVxl9|NJci7W43(s=Jan?Dhjk8bm}i@@bo|OE|vSPa+1Uc zYDwMZTHW}lDnRchTU4bEs74pNi(;E(@VT2St15jrVN_~;a{=T*FRpy|+pbSUq?DMk zyip4dCMDi11@}iqHJ-iwxRGMKtjLF=$b+F){m3I~Rxv?p0Mm;55iJ`C9<#E@QZo%E zyjy;{x9CitGP-P6w71;>J8y2hF*`H4-U}tjt35>Qt&NX3z917+E{)6kdv0PPPmWY> zfKCymu&kY@gV}?Aj?>XUW?`tFT9RX%Ix7 zOB+@`MGz4y+5ejT!8ihYsmEA}^LP`9R=PKuVDQxJ_F7E)Tcg7JP-;yY zoH_Z}Rwv9_dx-MTY&)y#i%gMx#62eBUPh~Tz} zu+>n*Qrw$__u2dQDV}NDHchKeZ0i*(%2p6IWEnqIxhEUU8_p_bOnMeFeFg1 zj>dYSISw#MF?5={@@}sMI6bf7(=>eQFZte&>HaI3yv_9m zcI1-gyY3$w<5H|g3?t}74iw6W3rR_jnaMN^^4J20dtEhIeXWF?hb!S0J;CIRNsq?W31%^`9lqwddO<=ESl#vNHhChV%V)La9|*M)iMm%t(wOA|J>Q9wh^2$mtswG2h#Cd=5v__O zMXz@Jp?J8t4Ks_QgYjZz@w~%_SKD^fHPVOjL5~G>GF7?k-y6eq z(3UOY9THSo&DEd=wZha-S}QIw!Uvbx64No5`3ZAUP>%>Tkd?3I%&;4s#36u=M~?yY z^h!42&MIHwagDxmGu#aTeOcUKHC{~L^tY!CML8(4TOak-fD(33SEwnj=+1Ty!ZIzW zJ2FL#%d=;nG)11tHZ?k$7ihqoHKaoyA}`tdJPaCP?>kTJ-)dy6b=2NYwvR@#9pXZ$LDEnM##{UZBvahy-Ut>258r-j$7S6{s6NBcYJDm^6_MYdtYrxs;qi$_YuJy!bnk$V zs23WyIBJzL1_$DVOf70Ct!SK6acjMT6|&B+VvI7wq4w#Shv85;stA|OGE>1KN-{p@ z-TbXHI*bRepNB9wB#0+|C~&fd8&3Q{_9E{1;f~{NkA>b_ZDuPxALB+*X645!HyB|w zERk!n#SqbR??ZWD*56%a9xtI~a|9UAyuNo238wa>q~J@dlKb74OPw~`;$+H|Pli-y zS#Jat*rv-E@=Dnn1gj7<#M`@f%XSaKs;TapJm=tsY+=QVBNgA{?=$6tuxNccxNuZB z=dDh=8%{9GZW{{i<&OL)8{frM+r_j|)f4I6-n@N%7Zk(C<^uV?X7wR0(eTiIBn9&+ zh01!iTV#cMz78CG%+p_<0b!6!S(aYE_OWq|efc^^j}6v;abxt}s!LAVCcyz^0uV#XoIbyEF6x=FMzX=ct`5bd~ZztL748E^~Qx zmQ^++*-`-AQBpxXq1<{1mK3tGsx zp!p~mUvF220~)UeX5h01ROD)*`bW}AC8Y_XwmUEL5*VUh zo1ov-{MacQh|`Kr%_d$?SLegP@6{J*VUqMdh67v1&v5CPi!{`c9!Y=AE|Hdl%l?N{ z8Rv(2Zkp{6DY0iF=DW*@7p1DSBukg+uy$60V_(sQH*AFn|keG=8nC^bfv=H zj2x!;3QWY!ippMtPM_}5LSK0$9QC7`5xecJN(J3m!k4ElLU)z8;C2nC8&}<#-V_(I z)`PxVhwSIg@>b`Evqt|mEM8Deet2HYB>hg>#96cVDVnupiJOA%;d4C5%jycuN|vsE z+k%>L`lfx~#7L#Dw22KzSDE=vZy;xx9uKi}R91C0sQ%z+&Cc1@*_JnFAY^G?V2@1% z&F8icJtCs_iI;Av%s|(C^1Fn*?5P%WMU1sagL&qP>Rq50&FBe1d{lPYpS|A3W7c$! z_Vx~bR$!Go0QKXT(&zeg<)V(UgVEQaE6TQTUJS+3EZHUhF!Rn8{@Lm@8}u9WTQv1?G6`Ky|r z#`88d*4o(X&cw0NQ9I~6^94ag2Ce0!wd2xRe`Ot*7vUCN770g5&O^-)a=@{PP0+7F zubYtaEbE%Sn^*=@Maxc;Nh6WYp1wVtTG!E`g*YZLWp+lAJ0<7=}$K z!8&MS^gK$jxW(CsHM|{0`;80VB%tT$3yhUxS(Eolg#5rBq(R0#rVF$)og|dBpdscIT z@Wf2GF)BXs>qtyNJ#bbrxZf*X?xUIQf$U>59l~YVfwq;kTbv)|^2pp#CUCPddI&k{ zCWFiJQODQ@S=kOGRxywLWuIc4VLV(Vb_!gcK(GmFEPENsGi#<)4gA{dOw!H#>`evi z6iKf0Zn5K?+g98Bux2-!v#M-hG%y4_@gll{Ytt9NA}gSJYJzf{7#ZJ(fG;uWYRv$L|>cnKL7n@pe1 zek1lZXz&s3-P+UJlsfW4lLvtJ5wnz#<*4fm(h4{Fw|7-HGD!m8r&oLIL;%FdMA;nU z9wrv`_6^cwXa2cx$=>DVx{)wr>2=25Hrr z8slc#DD%{pj`%?XPjAg>CVS=;nB%Zib!=&ga1Ji$mJ^~SUNLfwxboJ?%s~>zf_Ku= z*5VI=ZBc2#Sj|ECpXTwX@Z29Gy5y#>P;YCVxU{O=X)Km0fqpvsboL1Wv6q>n`#drV zC#mnG*ygLOM_XO+tVW#SK@c~rMm~`m>}mxxkXatN4oK}Y_7QwsbQ5i6qywx zBWQ8<67L9%P@C|({k-NhT|9>EK|mO-{NY#ryv1bCCiR5dZfy^G?c(N#j45gfr-et!FKp(UwKMOJ^Q z6>(+fC!UJ~6Qkt45wGA?SH{!E*)ntHnMS&g9p(UbRC_pqtkVCx{glQ(dp`=)A`j3|97?BxBGprSKD2$ zw!2hD2_lU4|i)dzW41CK|=uK=EVQG;Ux8Eg+AR5{D7Np{#wvf%} z6=Z7<1kqq5SQ)!ZXTRkizGFQm%(Skh+>JQwT+`eMJOw#}9GulQIuC${)r1p|R%Yac z@uA`PUdK_a6F``rVQ@1DPRN8Oil*8gAII&b0lOSe$GFcNCVZVaYG+nXUD2(019IfX z%d|Wx?b5s{*+WlgbIithqUchqvFsinPBb!q)I1OlbQTWxEs+}-%!+t;ALCSp#1U%W z6Fvud%>e67tcer`=S%dM`NPdI?nt^eHEsvtdRYSCJ1Th-7K^uCN$bs|`Ic|H-uF$p zG}7h9Z6FP+XS_K@1clynk%nsvOq}?vceAcCGu3Gz{oyLFg5qb2<-`Cx>~2oG%-S%} zP|W*h-s3JS4*sO*RXHO5{7iyItdCQnI-=IOG zh6yclwzoas3=QA|!_w}Z77vYPSU4foT?tI7(_o;Q$B~dPP+hb_j}O?Ne;}b74?JQ; zdNI}&BVEI&653T}Ivvh5r1nML@pSmrB0j9uDzLh=NTqcW;gd}=oP6QIxZYz%cd^O1 zj?pmd10li|uc{%gDma#9coIT5A){=|7E0x5_c;`NIXUl#IS3`+!3nKtijpytE{CumWH2yhk!orsUK73L4i6tNcJ?vT0d*l zLUL~(J6F@DRRjmAN;SVn_!T44ZJrZ#4qvxe6tSDr5)yR>h?op^G;T6oBSP3%xOU2m zFO>oiBI&vtk>3P8AjXrwJ2o*N$u?`mJ~SHS`N$1ZRYD_{ z*i*RdQPITwDNs9<3^rCTYKb3`YZo!v8pOTx}Vb~9A{PN6|v4<72wXvr5 zXs)Ld0~w+1LH4fY%?=oJm=esY^4p%=ZmId&aq4iVQ6adF{FYs!M&sPuUtkZa_x(G` zFx|@(@xC}Lz~{EodL`bD>|>iS<~oT~K;S9&Q!?sN4N%$mY!N8{6|oxTG#N&Z`@~OW zcr339J37)Vt?=oxnYn;)Y$#L$<`XnU(qOJ07@iNyOr56d0O28SY?602ZfdHxOp2-p zpmg(@N7V-QUzypTO}0@00W?#B!#6Q^-IQjYhru5l*CA|=0mXZGUXjLmttFAasI7Ql zy`d|FG|6MH+}k4n3o?VOqrGdY^d59;mn|r(OYoduffcc!0b03z+tB;{KIKIiYx-*6`!rT7)YwUJ z&}p?20v@W}3HmTACN;bD7||$Yn{Ht%yhz+l#?=CPcrpBn;!ZQnP#vb>X2lxQ z9FtrKoepbSDuja!2r*eJ&Vl-zuvLzx~6wERb)=> zHpABZpjXrM_sZPxvm+7ItF{|qW$YFkx{YM(-|@`w_)|=fjtMcc;2O6FPPw_m1dR2F z@CoyEH>hOpPjq(|tUvvag#+HKOWGz16kaRzuqeP2&cvY`&pg zws;f2&d1JIXEWcGNix9wc8)wkMv_yVQ*wj^XK~U1DB*Z@_25PlrkOZOsT-T18kFA)aFGlD>aaJPN<7!{02s z&cN}$fjv8u_C~dAvr02pK!;GRL zmZYBh{lh-bL;v5IyFZ}+^p^iy;6G04e!GeLI;ne|)V)sXUMF?0le*VQ-T&8;x_`v4 zKLhXeHXzsAfLw0_a=i`6^)?{a+kpH}Z3ALqwBUVlQumJ-_Lrotg*ILVuFPX^2BL;} z5%|X)i7#G%%C&B0Gx~xWWX#~qvJ&y{q^>_P{1R3}Ht=neldlDfzxBb^p->3$o>yB;T!s;JM$U{e2WJERmh0V_19pQ{Z^C zHQDEtxC1_N0|-@+g3dv5a^JoOk}< zv@V-EEgCRKf0k_bUL&jUevyx>C8EzvnrXt<7(%B~NkKJE8~Gj;2&cVe<_c;&NVa(h zMz0tj-DkpQ*urYe1B?7-pUD_suIgb)a?(n`yD#+=MnOL)tO(N@SW@3bkqg@vwO<79 z(p4yNhLhXpvad@To`5ob7OU0xknnyOIeJ?chq!dw7dU;tn_DN7I7GSmhXeF`wuO~F zzD=&oicR`#cVpg?m0K0yMct^=tP^KMOV_XagcD~#x(Vz)UFzCOtap+Vt1>FCXX;a_ zjqc4mlTkR`8zrlJjNDNEjWrQao)hK<0tJev=RS{+*S`4b(8G)qG#Yh%xmmT{N!{e_hXj6PzQ1amRR*%`IbQsf9#r z4uD)ir#ZQhg*rhV*IS;KbBtEm%To`n6?u2(G0JjZedJm6cqJ3m62R;B)iG1cU2S*T zIjnd(DS}{74R4@qgtrO-Z`pb1S!OO2$jk`|xHQZ%NLyU(A=mpAG8@~U&B1wJ(p=L+ zbhg?os;+nd7ai-daRj*~%Y%X^X%NSRHSa5}-Wqml(5$@aObS$cjIER$uUwREwo zG=^ql)DrV@tQS+Rk>2-c({RHkeFtHhz^?9Ahu>(H%{ay7`zT{MUn>!H*G$4>8=+H> zDhIeZmf6K`_Rvm`G zV)b?>t=U{7w!OHmo0eauOXZEXqh>?5RX@=AJ+#$eqhxR8LxR-+#<-0x`~^Nq((IJV zo%b*cg;Y$O`w4M6D?`Yo9j+6{L%pyi@k92po;UXkCV3KaGiJf}&7EcB1vla;EDl%o zyz*ve3%HT>sIyI-;J7%(&tp|j-*3oGWnB?L{Zw8IC2hM~SZg3th|;AF$d>&gz!p|~ z!myNECJY4`o6A{=5flG(w|8FtlVD{)+&yXI>27vU>He4KVYLrhPN=F8t#n3=wsd$R zWA+AgbT=8sJvSoa@vyiPsH`aBsv%WTL#I|OyU_NQiC*^R*b=7eaxGZzHu3hx#sO7p zZTpmDtlY(%x;X2f6nShU^riR9ggNQ2xrdTJ-hMTCnn6&FpRLb$vnIxywM#fvz;lUO zzoP$xa#-lC!LkQ+K4zY&V^!Ju_LyrsM*C@l_JyGL?e4pK&rZl&s>9G%h z=IHTy1tPDN2X>k1T|$-2d`=-Pa8h^Q)$VORT&ag1k@C9Rx8d!7`0}AKn^cDX@O~hI`ut3yMVWh`z33WIcxo8?ZZRzWEh>pDD<(yMUySdchjpI! z|K@Z5;QiB9{+@j9Z(#m$D)-wC=+~*->s0P_D)%~-d!5R?PUZf;mdgDje*GD9uT#0# zsod*S?sY2nI+c5!%Ke{8U64F=jsF< z983TY?5aD>R3`>VhN5$eU*5)mLp^*yy@WZ7Dnc(6f5(1BrWf=6_?g=RB(}2^=%Hi| zsG3zT`sVgA(5dUOkn6yN+*p-SczL}k^Ggpgc+kSm7!WIjtS}%E6B6W*!44HPJ8?wz zAqCxpxd?gC=hGQAPTtK^g{Af&Cw$^byrk*UrIAIeg=Rv6F7U4nbdH5s$$xTQ8-7_q zt&GNYtl@}89)4rzW8_<2t@nepyB@|2Uu&JMmkM`!Lg}nhnP%i5aM!Ze2Aw$WoVveD zsm$j&E)Aeh@+pBa-pi?a-lDVUZd1LWnAZjCJx4*pSba0Yw4gVg0nNJoF*u*ANR;b+ zSYqMFR#>?mJs;1k_=W>5P(mm~#eUGg{gry&<2S zzEceV*nXt7v7VWFZ)}v&KBZYWBc;%#y#^X*ED?q6)rR z*SxfFFQxx5(D9b=fs5G@rd?y+M8Q4 zU(KCM-!@tz#J(BlX{sFkbT59ujF(9J3vqln+tZ{$l2xXm8R_{R8TAG=iWi}4A#}8? z70D#2JP^0zS=aHp@nH}8^j3PKeBCl%(yn%v;CMI<9eiw`juDC%7Q3%_T#h2Zi@o0n zPU*rKGb?N)VsgOkEbn8l&x+7ky|BAwdAzJgmtf5n7{UVBp{97D0sZ{63jsRqUT~b_ ztJrxZbo7&al+J>ep#;JQuY9yBtbu7Z?gC>u5r$aSul$gh*7R0}>oixCum!8K4nep# zc^#b3Bp1EjWuOAjx*^B*g=D6KAz>fsv~?W@;TqlJz`Vazok~UofoN z2Q3TmjczUqA?Ka7=|h%-Q@VLM{9o0>r-Lx*&lTx+w9(uv*elgpAQk>q(2y%Ic8#txQbfYAZ{W#Y1@&3-Fb3*R&EX?kc24*cC zA6oT;#Z%5F4YG$+Oe=*{97agXQ){r00emGxmCb@zeRfYcpuLbpFt@PlI`IH7AF z=ZMulYFG$P=)xjnb2tlAVdC$t_RbH?l7bVu4Kl{lUEdPAdx2qf#w{nA)eo#>9Xt-< zQQBLMS415*;lT;r(s(?#*k1JV=uTzm9QZGrh^6{oFn)pd$E=kB&kC>?kiR8#)uO=( z-H44W3j4Ygo<)3(RF3+CZXBx>gI4Fl4!+^9BzAn8&dewi67q%bUr$J+L@nMcNVwM~ zSE!<-O`{|Vx2haA*;p_W70<9fCdE+oW^7?#RgxY_AH*oh82M?ywR5EE*rEWML%BpK zYzyJo+gQs%m2~39UdF?PmztO{^>eXZtQas8>EtZAH1P$oG|W{FG>E|M5J5E3g)V5U z{vkGlkXlmSmQ%(C6cq!Zbiy{_f%J9%emp+bEN*pzL}JJZqnNx~GzYib#zzd*1j~I0 zC{KfQ#@u7e9eVBy%3*YL3PV%dbU#YSiLO2oWyj=fp&{FS!nptaerl5^h>gJ)=61iu zyx*PMz3(c9U(S{{A7qGkytqe4b4Kyru zv@O5w*)1jZ*ILb1SBu2J-;W0uGI06xiqVECmRE8EB(K%6aO`_Ztb@tg#rNXf#3doxk9Ag8hsyobbVhCXpI0##&F{3geiO>{v(0eAQJ~pSFU(M zVUD5s*UXR=qob{;`M*57anECBv|Z-To9e7W)tkShBKw!+h8O;i*>aEDbga#PQ(=y^ z`QJ9%OPWJbMV00spI)*(Ua^z+XznaG(62`+oA*-2hpqL}#;>Q$l(pBH*F;wxZfQqR z;LGOPH+*r0f_IZeocBXyVT)WLQx4tC} zTSLz)Pd3Qfvu7i;z52PGKa|b2Px!Dk?b|!{l*`&%3X!(G+PJMv*<5?d91pgpePqJ- z2W9OZh_+YvwzVmnYp*rouTK(dRc;%-v}x5fS^FP|wpY{E*j)R4v!kVJTdQE(=pgmU zH?nqB5klLmS8Hspea?riO_E79`vO@zG|!}0#9l4h)~0N(eXmJ2$kw!X{C%h()=rsS zg!mRFk3)1xw2$ly=Mmgwo=f+R;2Jyc^WXlE#dGFEHVR4#=i=R7a7{d@?>{4pHQ>u8Dtk>gkKJ_#kGZxTJ6{-nIaW8@ML^ z+$#(J+o|HsS-23gQD9Oy7eDC**TlCy^~80#;z2nSN0CY4Ts*hJ2d;^~(^1eOi)Sz! zg(ih_@%8sZagdsqpZUQt$A>T*#U_Pw@x6&%>UT{tP zwU_6vmZwU46%sE+$w}c{Jhj*du8HT*xh=KMK&j@c+VDV&QpnGa?4cR-~eIj^(?zsuq|4?#9c zP73GZ-Cl65;*|rJrpw}u^+>!7B`1Y*@vB~NP5jhH-yN03I~$-lN=^#r;?*mB;F@?a zd2^F2K8V>UIVqfrw>=ES4O|n?OEsUC#S0&SY?Pc7&c#o9!8P$?{k^+n@n9tsN6AUy zTs(J`4_p)9zhLSzSv-T;C^;#di?3e|#X)jbF2DAYEIx$UC^;#di|>6Dii6K-w{ETb zRTi%`2LtttC_~9f;avQJ7hIbv)5bmPc(dHT28yHPq;M{tYV?6?;`3Gv4#*Yn$840G z6wbw4*Ftdv*TmgN#`7O{v&VX5e4oN}9vQd4ziZxP4&TCLu{oh9p3Tv*;9KWd41b%~ z{=l0;qO;iITbTUQoE#%S;&a+;&|R&U&b^*v{{4ea)G9(;W1_|3HXrP;LD5dfC@Z|-4H4q9v9IMFmnTflXcs|Zap;vt`IxfI zNtt|uM`MBzUg2ID;u@2?!p-m6HqqYEC@Va_Q-ru|>eEMUF z0wKJ@Z|)Z%t}(eQTy?+(MZ0mMtniJ4BE)55f8S-K!hIPLBo>FBddn;P=~og3LU@I@ Z9}yuVW128A^4?{B7Mo+Rb$!uq{{reyqL%;w literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gp_class_raw.npz b/GPy/testing/baseline/gp_class_raw.npz new file mode 100644 index 0000000000000000000000000000000000000000..e85c91035cb6da08530356a5e693862aaf0a42e7 GIT binary patch literal 77997 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 SvAy|9B7O4Y1RUt*xBml8t&gPu literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gp_class_raw_link.npz b/GPy/testing/baseline/gp_class_raw_link.npz new file mode 100644 index 0000000000000000000000000000000000000000..ee8c28c366972eb17c93df38818692b4b3d9212e GIT binary patch literal 79658 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 literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gp_data.npz b/GPy/testing/baseline/gp_data.npz index 31874b2dc2b776380948b082008d3b89c9dbdf49..d74009575bee92943264af41001b7bab08dd00c5 100644 GIT binary patch delta 74 zcmdlfyhnJ$S5{7^Ky{Na1_p)`lMNZ=C(E*h@JH?CViA#%C}42qu}yx!AvJj}rz9I2J5Uz`08&a7IsgCw diff --git a/GPy/testing/baseline/gplvm_gradient.npz b/GPy/testing/baseline/gplvm_gradient.npz new file mode 100644 index 0000000000000000000000000000000000000000..f1b0623fb0036d75a05156803c452825dec178cc GIT binary patch literal 10143 zcmd6sby(C{`^M>38i5%=QbDAW1L z1>e_YookuhpZnXr9IkW0{BzHT@44rB?sFbh1!NQ=1Ox<(lSPeC%f;d#ee##@$+~*7 zK(59PI&8WuU>i$IW3Z#SjrF&;`XFmZbC9Ju$idjifyLU^EoJ%ACjj1yF4YdzXX&xp zsdsa%b2IhgjPeQ}Wu_Tw;r*hQ|BiqZT3UyK1k!43Nb@<$a1QIX;kmWbnW)^bt1MmB zoZckHSkX)#AP^C<1~Rb@#5H|!8@LlQ$Ex`|KJxRiYiOmCX0Kuiv(1hmBjK+(qO}U->EEzPipm%ig zhJv^fU(=?TYJiIZ&i7^=s`|>7@^G#Z`P`v^BzMGuBb(%w<#jJZsM1oX($xGol|JEE zQM67#+>IHEaz`o~KY`ikk(cHWip(KEY(`dT%ITDc@1m3i600NYyAQRY_b@HSHOk9- ztoSAh$P81$;|gk@sRh$zVU^=%HQ?s0uLp7JY!Y?aR$p9 zd}^%;(2ZFuUjhTQDVvh;$~8Ji{p;Mf%b-thZzf#c(LOR`@WvM)xHK3dKx|=@%C-{% zvILYj+O%3p?p00qIuE!#eEXtcd098$<9p&#h7b&7^$S_s&i3IPPij)UF{ho|hiDe5 zQ1irf_bjhbTi?Wy5_Td8(5b7(F^~6s)7>aB;f44*Z5%+1m>qp4wJ6){{^(9LXRO&)k?>gMM%w{BUXrzdW-7DFV z?13$(quF^aSzwt^3uN_0*M+gYK0*R0^lhQ+oieO(mn2Of(%5=}`%YBt~b+ zVD_n$|JXSvOke6zhm%-@)i1CQ(Ggb1+yvDw43eN?RB>Hv#o}{awoCc|u0b%-l8=6m zenT<&%B^KPjjO}a>p}7gY~)NKC8E2Q*LREav}yvEZkg7o4+#+^dSBcQA}FEFjr}BY zu^#G;Yqq2|`|#mLLa`ib>vikKa(6--sdg6=m#ApQ%0Uw;L1H1Ob%b0eubq2kYeDYq z$oN_2yJ0aiUS%(qgG^|ui}d7H)q_EgwnzYE^3%-Wwsqc8NI?pw_hO$QeZ~H<6}+a= z>CygQ-DQDSO6<)|&8YOwI#sRUmSza&6F?&&n{QRLhgj_wER-Tp>!~J zH-=Yv&HqBL`rb70(J&BTFlhBF9kotAzUySc>zj`DAZrH`8+$8wEPttQc8KLXd8Aq( zMmZ(mu!o`k^#Ue38qgGC%>4{mq*D?x`{m*rOpI;SZA zV$ks_9KhE&@lPfk51k_Y_C5RC9{QfWzGaDAVPtYX4>Xj?5o9?2InUguVE<0U;i*~w zNcbla=alA$h;ztEgaHh)%TvfnpfRM7D5D*Z=DF7{=lCgmR-$BsM^9U8=oKSHM7^>d zyCVS$klSJDb#@M`MeB8~Vfz;HqIbm!x(6*W4#zFRjh^ZHqP;4Mjhp*BrP)Zj)97V= zY@-#foE-h#)Z>%kQe4>3jw@~Ih3IOtlC4LZrdQd^iz!sXa@qn{EFA=|5%hQXN!81L zZCuWR+Mv4opy)7FZj=o$Ob;jdTUd{RCUiR?-+OX zkpZ$u$7l0bi3jVWBK<20V}@Nv{hS+X8!pu%pA|K9X?#PkSCPLjf~t-kJ+)^5QD$#L zMyjqr*B3!WDJ5APa{S~EETsS~Ge^~}8*Geud<9W<4@^FT{Q@zmH7=&+^FnRRpUz}! z5XHPL!x(?h^P*R{&aTL_-*C2%yidtg^x5hWAs{WSP}DBoht?neWyET0+oYHZnLdVf z41+ULow1NzpEEw9h*kFwmGQ=BGNYVRZgaB=q zcZP{)mHUPJQK@4l`}QU3b3FoD*U{}uK5-pK0>2EADqmE)ZQ$bmyvAZdfsVU9pV

jtwX<1se4t9U(7^SAu9nyJ9BHp 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 literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gplvm_latent.npz b/GPy/testing/baseline/gplvm_latent.npz new file mode 100644 index 0000000000000000000000000000000000000000..a582336bab44b8c6b33cca95a5f196610b9613bf GIT binary patch literal 36261 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 Q|N6jry=L3{{`Kzv0B}}0-T(jq literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gplvm_latent_3d.npz b/GPy/testing/baseline/gplvm_latent_3d.npz new file mode 100644 index 0000000000000000000000000000000000000000..e551e5d47a612cba245325b5022e74c7950f4abd GIT binary patch literal 12817 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 Pyt04;cn16q0>Xa)zslEA literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/gplvm_magnification.npz b/GPy/testing/baseline/gplvm_magnification.npz new file mode 100644 index 0000000000000000000000000000000000000000..da026c3c43e5e5a33c8bec9b41e45b4c5f425174 GIT binary patch literal 36303 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�te_GsVk$1(l3uiX%;Ih<3Shn> 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 MJ$IntQWxL;4~d%Y82|tP literal 0 HcmV?d00001 diff --git a/GPy/testing/baseline/sparse_gp_class_raw.npz b/GPy/testing/baseline/sparse_gp_class_raw.npz new file mode 100644 index 0000000000000000000000000000000000000000..40357fc7c5be0c6e890fb984474f748cb29da16a GIT binary patch literal 55920 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

^5O}JM}E4nBOJ`K7WP^<|n88p1pHfVGw4wd#A|E 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 XC*xhI2k0^~ThH__B>Cw-dN2UW literal 0 HcmV?d00001 diff --git a/GPy/testing/plotting_tests.py b/GPy/testing/plotting_tests.py index 1e9cb6c51..20032ca6c 100644 --- a/GPy/testing/plotting_tests.py +++ b/GPy/testing/plotting_tests.py @@ -103,7 +103,7 @@ def _image_comparison(baseline_images, extensions=['pdf','svg','png'], tol=11, r fig.canvas.draw() except Exception as e: logging.error(base) - raise SkipTest(e) + #raise SkipTest(e) #fig.axes[0].set_axis_off() #fig.set_frameon(False) if ext in ['npz']: @@ -118,7 +118,7 @@ def _image_comparison(baseline_images, extensions=['pdf','svg','png'], tol=11, r ) except: logging.error(base) - raise + # raise else: fig.savefig(os.path.join(result_dir, "{}.{}".format(base, ext)), transparent=True, @@ -340,10 +340,9 @@ def test_threed(): m.plot_mean(projection='3d', rstride=10, cstride=10) m.plot_inducing(projection='3d') #m.plot_errorbars_trainset(projection='3d') - for do_test in _image_comparison(baseline_images=['gp_3d_{}'.format(sub) for sub in ["data", "mean", 'inducing', - #'error', - #"samples", "samples_lik" - ]], extensions=extensions): + for do_test in _image_comparison(baseline_images=[ + 'gp_3d_{}'.format(sub) for sub in ["data", "mean", 'inducing', + ]], extensions=extensions): yield (do_test, ) def test_sparse(): From 9fdea8ca377f545166ad9006f05a479bd0ddb7fd Mon Sep 17 00:00:00 2001 From: marecabo <23156476+marecabo@users.noreply.github.com> Date: Mon, 5 Aug 2019 10:26:15 +0200 Subject: [PATCH 21/23] fix plotly default marker size property type --- GPy/plotting/plotly_dep/defaults.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPy/plotting/plotly_dep/defaults.py b/GPy/plotting/plotly_dep/defaults.py index 121e0b376..c5b2540c2 100644 --- a/GPy/plotting/plotly_dep/defaults.py +++ b/GPy/plotting/plotly_dep/defaults.py @@ -44,7 +44,7 @@ # Data plots: data_1d = dict(marker_kwargs=dict(), marker='x', color='black') -data_2d = dict(marker='o', cmap='Hot', marker_kwargs=dict(opacity=1., size='5', line=Line(width=.5, color='black'))) +data_2d = dict(marker='o', cmap='Hot', marker_kwargs=dict(opacity=1., size=5, line=Line(width=.5, color='black'))) inducing_1d = dict(color=Tango.colorsHex['darkRed']) inducing_2d = dict(marker_kwargs=dict(size='5', opacity=.7, line=Line(width=.5, color='black')), opacity=.7, color='white', marker='star-triangle-up') inducing_3d = dict(marker_kwargs=dict(symbol='diamond', size='5', opacity=.7, line=Line(width=.1, color='black')), color='#F5F5F5') From e0d214446c7e4cceac9d6505e8097dd293b42efc Mon Sep 17 00:00:00 2001 From: marecabo <23156476+marecabo@users.noreply.github.com> Date: Mon, 5 Aug 2019 10:26:35 +0200 Subject: [PATCH 22/23] fix plotly default marker symbol dict --- GPy/plotting/plotly_dep/plot_definitions.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/GPy/plotting/plotly_dep/plot_definitions.py b/GPy/plotting/plotly_dep/plot_definitions.py index 9b659551f..9572508d2 100644 --- a/GPy/plotting/plotly_dep/plot_definitions.py +++ b/GPy/plotting/plotly_dep/plot_definitions.py @@ -39,7 +39,7 @@ from plotly.exceptions import PlotlyDictKeyError SYMBOL_MAP = { - 'o': 'dot', + 'o': 'circle-dot', 'v': 'triangle-down', '^': 'triangle-up', '<': 'triangle-left', @@ -47,7 +47,7 @@ 's': 'square', '+': 'cross', 'x': 'x', - '*': 'x', # no star yet in plotly!! + '*': 'star', 'D': 'diamond', 'd': 'diamond', } From 204cabb77727980d38fd0d33d358e8367343620a Mon Sep 17 00:00:00 2001 From: Zhenwen Dai Date: Wed, 16 Oct 2019 15:13:42 +0100 Subject: [PATCH 23/23] Bump the version number for release --- GPy/__version__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPy/__version__.py b/GPy/__version__.py index 6394d54e0..5986f1008 100644 --- a/GPy/__version__.py +++ b/GPy/__version__.py @@ -1 +1 @@ -__version__ = "1.9.8" +__version__ = "1.9.9"